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.