La memoria estática de acceso aleatorio ( RAM estática o SRAM ) es un tipo de memoria de acceso aleatorio (RAM) que utiliza circuitos de enclavamiento (flip-flop) para almacenar cada bit. SRAM es memoria volátil ; los datos se pierden cuando se corta la energía.
El término estático diferencia SRAM de DRAM ( memoria dinámica de acceso aleatorio) que debe actualizarse periódicamente . SRAM es más rápido y más caro que DRAM; normalmente se utiliza para el caché y los registros internos de una CPU, mientras que DRAM se utiliza para la memoria principal de una computadora .
Historia
Semiconductor bipolar SRAM fue inventado en 1963 por Robert Norman en Fairchild Semiconductor. [1] MOS SRAM fue inventado en 1964 por John Schmidt en Fairchild Semiconductor. Era una SRAM de canal p MOS de 64 bits. [2] [3]
En 1965, [4] Arnold Farber y Eugene Schlig, que trabajaban para IBM, crearon una celda de memoria cableada , utilizando una puerta de transistor y un pestillo de diodo de túnel . Reemplazaron el pestillo con dos transistores y dos resistencias , una configuración que se conoció como celda Farber-Schlig. En 1965, Benjamin Agusta y su equipo en IBM crearon un chip de memoria de silicio de 16 bits basado en la celda Farber-Schlig, con 80 transistores, 64 resistencias y 4 diodos.
Aplicaciones y usos
Caracteristicas
Aunque se puede caracterizar como memoria volátil, la SRAM exhibe remanencia de datos . [5]
SRAM ofrece un modelo de acceso a datos simple y no requiere un circuito de actualización. El rendimiento y la fiabilidad son buenos y el consumo de energía es bajo cuando está inactivo.
Dado que SRAM requiere más transistores para implementar, es menos denso y más caro que DRAM y también tiene un mayor consumo de energía durante el acceso de lectura o escritura.
La potencia de consumo de SRAM varía ampliamente dependiendo de la frecuencia con la que se accede.
Uso integrado
Muchas categorías de subsistemas industriales y científicos, electrónica automotriz y sistemas integrados similares contienen RAM estática que, en este contexto, puede denominarse ESRAM . [6] Alguna cantidad (kilobytes o menos) también está incrustada en prácticamente todos los electrodomésticos, juguetes, etc. modernos que implementan una interfaz de usuario electrónica.
SRAM en su forma de puerto dual se usa a veces para circuitos de procesamiento de señales digitales en tiempo real . [7]
En computadoras
SRAM también se utiliza en las computadoras personales, estaciones de trabajo, routers y equipos periféricos: CPU archivos de registro , internos cachés de CPU y externos del modo de ráfaga cachés SRAM, disco duro tampones, enrutador tampones, etc. pantallas LCD y las impresoras también se emplean normalmente RAM estática para mantener el imagen mostrada (o por imprimir). La RAM estática se utilizó para la memoria principal de la mayoría de las primeras computadoras personales, como la ZX80 , TRS-80 Model 100 y Commodore VIC-20 .
Aficionados
Los aficionados, específicamente los entusiastas de los procesadores caseros, [8] a menudo prefieren SRAM debido a la facilidad de interconexión. Es mucho más fácil trabajar con DRAM que con DRAM, ya que no hay ciclos de actualización y los buses de datos y direcciones a menudo son directamente accesibles. [ cita requerida ] Además de los buses y las conexiones de energía, SRAM generalmente requiere solo tres controles: habilitación de chip (CE), habilitación de escritura (WE) y habilitación de salida (OE). En SRAM síncrona, también se incluye Clock (CLK). [ cita requerida ]
Tipos de SRAM
SRAM no volátil
La SRAM no volátil (nvSRAM) tiene una funcionalidad SRAM estándar, pero guardan los datos cuando se pierde la fuente de alimentación, lo que garantiza la preservación de la información crítica. Las nvSRAM se utilizan en una amplia gama de situaciones - redes, aeroespacial y médica, entre muchas otras [9] - donde la preservación de datos es crítica y donde las baterías no son prácticas.
Pseudo SRAM
La RAM pseudoestática (PSRAM) tiene un núcleo de almacenamiento DRAM, combinado con un circuito de actualización automática. [10] Aparecen externamente como una SRAM más lenta. Tienen una ventaja de densidad / costo sobre la verdadera SRAM, sin la complejidad de acceso de la DRAM.
Por tipo de transistor
- Transistor de unión bipolar (utilizado en TTL y ECL ): muy rápido pero con alto consumo de energía
- MOSFET (utilizado en CMOS ): bajo consumo y muy común en la actualidad
Por tipo de flip-flop
- SRAM binaria
- SRAM ternario
Por función
- Asíncrono : independiente de la frecuencia del reloj; La entrada y salida de datos se controlan mediante la transición de direcciones. Los ejemplos incluyen los omnipresentes chips 8K × 8 y 32K × 8 de 28 pines (a menudo, aunque no siempre, con nombres similares a los de 6264 y 62C256, respectivamente), así como productos similares de hasta 16 Mbit por chip.
- Sincrónico : todos los tiempos son iniciados por los flancos del reloj. La dirección, la entrada de datos y otras señales de control están asociadas con las señales de reloj.
En la década de 1990, se solía emplear SRAM asíncrona para un tiempo de acceso rápido. La SRAM asíncrona se utilizó como memoria principal para pequeños procesadores integrados sin caché que se utilizan en todo, desde electrónica industrial y sistemas de medición hasta discos duros y equipos de red, entre muchas otras aplicaciones. Hoy en día, la SRAM síncrona (por ejemplo, DDR SRAM) se emplea de manera similar a la DRAM síncrona: la memoria DDR SDRAM se usa en lugar de la DRAM asíncrona. La interfaz de memoria síncrona es mucho más rápida ya que el tiempo de acceso se puede reducir significativamente mediante el empleo de una arquitectura de canalización . Además, como la DRAM es mucho más barata que la SRAM, la SRAM a menudo se reemplaza por DRAM, especialmente en el caso de que se requiera un gran volumen de datos. Sin embargo, la memoria SRAM es mucho más rápida para el acceso aleatorio (no en bloque / ráfaga). Por lo tanto, la memoria SRAM se usa principalmente para caché de CPU , memoria pequeña en chip, FIFO u otros búferes pequeños.
Por característica
- Cero cambio de bus (ZBT): el cambio es el número de ciclos de reloj que se necesitan para cambiar el acceso a la SRAM de escritura a lectura y viceversa. El tiempo de respuesta para ZBT SRAM o la latencia entre el ciclo de lectura y escritura es cero.
- syncBurst (syncBurst SRAM o SRAM de ráfaga síncrona): cuenta con acceso de escritura de ráfaga síncrona a la SRAM para aumentar la operación de escritura a la SRAM
- DDR SRAM : síncrono, puerto de lectura / escritura único, E / S de velocidad de datos doble
- SRAM de velocidad de datos cuádruple: puertos síncronos, de lectura y escritura separados, E / S de velocidad de datos cuádruple
Integrado en chip
SRAM se puede integrar como RAM o memoria caché en microcontroladores (generalmente desde alrededor de 32 bytes hasta 128 kilobytes ), como cachés primarios en microprocesadores potentes, como la familia x86 , y muchos otros (desde 8 KB , hasta muchos megabytes), para almacenar los registros y partes de las máquinas de estado utilizadas en algunos microprocesadores (ver archivo de registro ), en IC específicos de la aplicación o ASIC (generalmente en el orden de kilobytes) y en la matriz de puerta programable de campo y la lógica programable compleja Dispositivo
Diseño
Una celda SRAM típica se compone de seis MOSFET . Cada bit de una SRAM se almacena en cuatro transistores (M1, M2, M3, M4) que forman dos inversores de acoplamiento cruzado. Esta celda de almacenamiento tiene dos estados estables que se utilizan para indicar 0 y 1 . Dos transistores de acceso adicionales sirven para controlar el acceso a una celda de almacenamiento durante las operaciones de lectura y escritura. Además de este tipo de SRAM de seis transistores (6T), otros tipos de chips SRAM utilizan 4, 8, 10 (4T, 8T, 10T SRAM) o más transistores por bit. [11] [12] [13] La SRAM de cuatro transistores es bastante común en los dispositivos SRAM independientes (a diferencia de la SRAM utilizada para las memorias caché de la CPU), implementada en procesos especiales con una capa adicional de polisilicio , lo que permite una resistencia muy alta resistencias pull-up. [14] El principal inconveniente de utilizar 4T SRAM es el aumento de la potencia estática debido al flujo de corriente constante a través de uno de los transistores pull-down.
Esto a veces se usa para implementar más de un puerto (lectura y / o escritura), lo que puede ser útil en ciertos tipos de memoria de video y archivos de registro implementados con circuitos SRAM multipuerto.
Generalmente, cuantos menos transistores se necesiten por celda, más pequeña puede ser cada celda. Dado que el costo de procesar una oblea de silicio es relativamente fijo, el uso de celdas más pequeñas y así empaquetar más bits en una oblea reduce el costo por bit de memoria.
Son posibles las celdas de memoria que usan menos de cuatro transistores, pero tales celdas 3T [15] [16] o 1T son DRAM, no SRAM (incluso la denominada 1T-SRAM ).
El acceso a la celda se habilita mediante la línea de palabras (WL en la figura) que controla los dos transistores de acceso M 5 y M 6 que, a su vez, controlan si la celda debe conectarse a las líneas de bits: BL y BL. Se utilizan para transferir datos para operaciones de lectura y escritura. Aunque no es estrictamente necesario tener dos líneas de bits, tanto la señal como su inversa se proporcionan normalmente para mejorar los márgenes de ruido .
Durante los accesos de lectura, los inversores de la celda SRAM impulsan activamente las líneas de bits hacia arriba y hacia abajo. Esto mejora el ancho de banda de la SRAM en comparación con las DRAM: en una DRAM, la línea de bits está conectada a los condensadores de almacenamiento y la carga compartida hace que la línea de bits se mueva hacia arriba o hacia abajo. La estructura simétrica de las SRAM también permite la señalización diferencial , lo que hace que los pequeños cambios de voltaje sean más fácilmente detectables. Otra diferencia con DRAM que contribuye a que SRAM sea más rápida es que los chips comerciales aceptan todos los bits de dirección a la vez. En comparación, las DRAM básicas tienen la dirección multiplexada en dos mitades, es decir, bits más altos seguidos de bits más bajos, en los mismos pines del paquete para mantener su tamaño y costo bajos.
El tamaño de una SRAM con m líneas de dirección y n líneas de datos es de 2 m palabras o 2 m × n bits. El tamaño de palabra más común es de 8 bits, lo que significa que se puede leer o escribir un solo byte en cada una de las 2 m de palabras diferentes dentro del chip SRAM. Varios chips SRAM comunes tienen 11 líneas de dirección (por lo tanto, una capacidad de 2 11 = 2048 = 2 k palabras) y una palabra de 8 bits, por lo que se denominan "SRAM 2k × 8".
Las dimensiones de una celda SRAM en un IC están determinadas por el tamaño de característica mínima del proceso utilizado para hacer el IC.
Operación SRAM
Una celda SRAM tiene tres estados diferentes: en espera (el circuito está inactivo), lectura (se han solicitado los datos) o escritura (actualización de contenido). La SRAM que funciona en modo de lectura y en modo de escritura debe tener "legibilidad" y "estabilidad de escritura", respectivamente. Los tres estados diferentes funcionan de la siguiente manera:
Apoyar
Si no se afirma la línea de palabras, los transistores de acceso M 5 y M 6 desconectan la celda de las líneas de bits. Los dos inversores de acoplamiento cruzado formados por M 1 - M 4 seguirán reforzándose entre sí mientras estén conectados a la red.
Leer
En teoría, la lectura solo requiere afirmar la línea de palabras WL y leer el estado de la celda SRAM mediante un transistor de acceso único y una línea de bits, por ejemplo, M 6 , BL. Sin embargo, las líneas de bits son relativamente largas y tienen una gran capacitancia parásita . Para acelerar la lectura, se utiliza en la práctica un proceso más complejo: el ciclo de lectura se inicia precargando ambas líneas de bits BL y BL , a un voltaje alto (lógico 1 ). Luego, la afirmación de la línea de palabras WL habilita los transistores de acceso M 5 y M 6 , lo que hace que el voltaje BL de una línea de bits caiga ligeramente. Entonces las líneas BL y BL tendrán una pequeña diferencia de voltaje entre ellas. Un amplificador de detección detectará qué línea tiene el voltaje más alto y, por lo tanto, determinará si se almacenó 1 o 0 . Cuanto mayor sea la sensibilidad del amplificador de detección, más rápida será la operación de lectura. Como el NMOS es más poderoso, el despliegue es más fácil. Por lo tanto, las líneas de bits se precargan tradicionalmente a alto voltaje. Muchos investigadores también están intentando precargar a un voltaje ligeramente bajo para reducir el consumo de energía. [17] [18]
Escritura
El ciclo de escritura comienza aplicando el valor a escribir a las líneas de bits. Si deseamos escribir un 0 , aplicaríamos un 0 a las líneas de bits, es decir, estableciendo BL en 1 y BL en 0 . Esto es similar a aplicar un pulso de reinicio a un SR-latch , lo que hace que el flip flop cambie de estado. Un 1 se escribe invirtiendo los valores de las líneas de bits. A continuación, se afirma WL y se bloquea el valor que se va a almacenar. Esto funciona porque los controladores de entrada de la línea de bits están diseñados para ser mucho más fuertes que los transistores relativamente débiles de la celda, por lo que pueden anular fácilmente el estado anterior de la celda. inversores de acoplamiento cruzado. En la práctica, los transistores NMOS de acceso M 5 y M 6 tienen que ser más fuertes que los transistores NMOS inferiores (M 1 , M 3 ) o superiores PMOS (M 2 , M 4 ). Esto se obtiene fácilmente ya que los transistores PMOS son mucho más débiles que los NMOS cuando tienen el mismo tamaño. En consecuencia, cuando un par de transistores (por ejemplo, M 3 y M 4 ) se anula solo ligeramente por el proceso de escritura, el voltaje de puerta del par de transistores opuestos (M 1 y M 2 ) también cambia. Esto significa que los transistores M 1 y M 2 pueden anularse más fácilmente, y así sucesivamente. Por tanto, los inversores de acoplamiento cruzado amplían el proceso de escritura.
Comportamiento del autobús
La RAM con un tiempo de acceso de 70 ns generará datos válidos dentro de los 70 ns desde el momento en que las líneas de dirección son válidas. Algunas SRAM tienen un "modo de página" en el que las palabras de una página (256, 512 o 1024 palabras) se pueden leer secuencialmente con un tiempo de acceso significativamente más corto (típicamente aproximadamente 30 ns). La página se selecciona configurando las líneas de dirección superiores y luego las palabras se leen secuencialmente pasando por las líneas de dirección inferiores.
Ver también
- Memoria flash
- Tarjeta en miniatura , un estándar de tarjeta de memoria SRAM descontinuado
Referencias
- ^ "1966: RAM de semiconductores satisfacen las necesidades de almacenamiento de alta velocidad" . Museo de Historia de la Computación . Consultado el 19 de junio de 2019 .
- ^ "1970: RAM dinámica MOS compite con la memoria de núcleo magnético en precio" .
- ^ "Conferencias de memoria" (PDF) .
- ^ "Matriz de memoria no destructiva" .
- ^ Sergei Skorobogatov (junio de 2002). "Remanencia de datos de baja temperatura en RAM estática" . Universidad de Cambridge, Laboratorio de Computación . Consultado el 27 de febrero de 2008 . Cite journal requiere
|journal=
( ayuda ) - ^ Fahad Arif (5 de abril de 2014). "Microsoft dice que la ESRAM de Xbox One es una" gran victoria "; explica cómo permite alcanzar 1080p / 60 FPS" . Consultado el 24 de marzo de 2020 .
- ^ Interfaz de memoria compartida con el DSP TMS320C54x (PDF) , consultado el 4 de mayo de 2019
- ^ "CPU casera" .
- ^ Organización informática (4ª ed.). [Sl]: McGraw-Hill. 1996-07-01. ISBN 978-0-07-114323-3.
- ^ "Memoria PSRAM de página / asíncrono de núcleo de 3,0 V" (PDF) . Micron . Consultado el 4 de mayo de 2019 .
- ^ Kulkarni, Jaydeep P .; Kim, Keejong; Roy, Kaushik (2007). "Un SRAM de subumbral basado en disparador Schmitt robusto de 160 mV". Revista IEEE de circuitos de estado sólido . 42 (10): 2303. Código Bibliográfico : 2007IJSSC..42.2303K . doi : 10.1109 / JSSC.2007.897148 . S2CID 699469 .
- ^ Patente de Estados Unidos 6975532: memoria de acceso aleatorio cuasi estática
- ^ "Optimización de área en celdas SRAM 6T y 8T considerando la variación V en procesos futuros - MORITA et al. E90-C (10): 1949 - Transacciones IEICE en electrónica" . Archivado desde el original el 5 de diciembre de 2008.
- ^ Preston, Ronald P. (2001). "14: Registrar archivos y cachés" (PDF) . El diseño de circuitos de microprocesador de alto rendimiento . Prensa IEEE. pag. 290.
- ^ Patente de Estados Unidos 6975531: celda de ganancia DRAM de 3 transistores 6F2
- ^ Tecnología 3T-iRAM (r)
- ^ Sistema de precarga SRAM para reducir la potencia de escritura
- ^ Reglas de diseño de alta velocidad y baja potencia para la precarga de SRAM y la temporización automática en variaciones de tecnología