¿ROM / RAM es un circuito combinacional o secuencial?

Hay muchos tipos diferentes de ROM / RAM, algunos de ellos son combinatorios, algunos secuenciales como supone Siddharth Dwivedi. No es cierto que todos los recuerdos estén “sincronizados”. Especialmente, ROM, que puede diseñarse utilizando PLD simples, como PAL, GAL y pequeños FPGA. Pueden llamarse “decodificadores”, pero cumplen la misma función que la ROM. De hecho, en el pasado he usado lógica programable para actuar como ROM en máquinas de estado para ganar velocidad no disponible dentro de las tecnologías PROM / ROM.

La RAM dinámica básica es parcialmente combinatoria, luego secuencial. Depende del diseñador de la aplicación alimentar el chip con las señales de sincronización correctas (RAS y CAS) y demás. Internamente, las señales se usan combinatoriamente para seleccionar las celdas adecuadas para leer o escribir. Luego, las salidas pueden almacenarse en registros hasta que los sistemas externos “desconecten”. Esta es la forma en que funciona Video RAM (ed).

Un circuito lógico combinacional es un circuito cuya salida depende solo de la entrada de corriente. Por ejemplo, circuito sumador con dos bits de entrada y 2 bits de salida. Las entradas 1 y 1 sumarán hasta 2, por lo que la salida será 1 y 0 en binario.

Un circuito lógico secuencial es un circuito cuya salida depende de la entrada de corriente y de muchas entradas anteriores. Por ejemplo, un circuito acumulador que agrega todos los números binarios de entrada y proporciona la salida de corriente como la suma de las entradas hasta ese punto. Primera entrada 01, salida 01
Segunda entrada 00, salida 01
Siguiente entrada 01, salida 10, etc.

Entonces, para ROM , la entrada es solo el selector de ubicación de memoria, y la salida es el byte en la ubicación seleccionada. No depende de entradas pasadas. Este es un circuito lógico combinacional .

Para la RAM , la entrada es el selector de ubicación de memoria y la operación (lectura o escritura) y otro byte (que se puede ingresar para la operación de escritura o salida para la operación de lectura), y la salida es un indicador de éxito (para la operación de escritura) o el byte en la ubicación seleccionada (para la operación de lectura). Depende de las entradas pasadas, o más bien, de las operaciones de escritura pasadas en el byte seleccionado. Este es un circuito lógico secuencial .

Un punto de confusión: a veces se dice que la diferencia entre el circuito lógico combinacional y el circuito lógico secuencial es si tiene memoria o no, pero aquí, tanto la ROM como la RAM son tipos de memorias. Pero el uso de la palabra memoria no es el mismo en estos casos.

Esta es solo una explicación simplista, y la situación se complica para PROM o LookUpTables, etc.

RAM es una combinación de circuito combinacional y secuencial.

RAM utiliza registros registrables para entregar cuando el sistema externo lo registra. Pero dado que los circuitos secuenciales ofrecen una salida basada en múltiples entradas anteriores, los fabricantes dejan cierta cantidad de memoria todavía secuencial, por lo que la memoria utilizada con menos frecuencia se puede extraer de los registros no sincronizables. Esto se hace para ayudarlos a mantener bajos los precios de los carneros de gran capacidad.

Para ROM, la memoria siempre es combinatoria, ya que no es necesario preservar las entradas anteriores y solo es necesaria la ubicación actual.

Todos los recuerdos funcionan en el reloj. Y por lo tanto, secuencial.