¿Cuál es la diferencia entre una celda SRAM y un D-Latch?

1

Ambos parecen idénticos, ambos tienen una "habilitación" y una única entrada. Cuando habilitar es alto, el valor almacenado en el elemento se establece en la entrada. ¿Son funcionalmente diferentes de alguna manera? (Sé que se implementan de manera diferente, pero quiero saber si hay una diferencia en la funcionalidad)

    
pregunta dfg

2 respuestas

1

Una celda SRAM es funcionalmente equivalente a un pestillo D (pero no a un flip-flop maestro-esclavo de tipo D).

Como usted dice, los detalles de la implementación son diferentes: una celda SRAM generalmente se construye de manera que se escribe y lee usando el mismo par de cables ("líneas de bits"). La diferencia es si las líneas de bits se están o no. accionado por los circuitos de control. Por otro lado, un pestillo en D normalmente utiliza cables separados para la entrada y la salida, y la lógica de "habilitación de escritura" está integrada en él.

    
respondido por el Dave Tweed
0

Un latch D típico tendrá una sola entrada de datos junto con una habilitación; la lógica interna los combinará para generar comportamientos de "escritura cero" y "escritura uno". Una celda SRAM tendrá uno o dos cables de datos bidireccionales y una o dos señales de activación (si hay dos, uno controlará cada cable de datos; si es uno, controlará ambos. Para leer una celda de memoria, conduzca una señal de habilitación mientras "flota" el cable de datos; la celda de memoria impulsará el cable con su estado actual. Para escribir una celda de memoria, maneje el cable de datos que debe estar bajo con un transistor que sea más fuerte que el P- transistores en la celda de memoria y controlan su habilitación.

Hacer una matriz SRAM puede admitir dos lecturas independientes simultáneas solo requiere agregar el cable adicional necesario para que cada celda tenga dos habilitaciones independientes. El cable adicional a menudo no es "libre" (puede requerir espaciar las cosas un poco más de lo que sería necesario), pero sigue siendo una forma barata de permitir la capacidad de lectura dual. Sin embargo, realizar una escritura generalmente requiere el uso de ambos cables de datos, ya que uno de ellos solo se puede usar para convertir los ceros en unos, y el otro solo se puede usar para convertir los ceros en ceros. Probablemente sería posible diseñar un sistema de memoria que pudiera escribir unos en los bits seleccionados de la ubicación XX mientras lee YY, o leer la ubicación XX mientras se escriben ceros en los bits seleccionados de la ubicación YY, o escribir unos en los bits seleccionados de la ubicación XX mientras se escriben ceros a un conjunto independiente de bits de ubicación YY, pero no tengo conocimiento de que dichos diseños se utilicen en la práctica, aunque existen muchas situaciones en las que podrían ser útiles.

    
respondido por el supercat

Lea otras preguntas en las etiquetas