Memoria estática de acceso aleatorio
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 bloqueo (flip-flop) para almacenar cada bit. SRAM es memoria volátil; los datos se pierden cuando se quita la energía.
El término estático diferencia a SRAM de DRAM (memoria de acceso aleatorio dinámica): SRAM mantendrá sus datos de forma permanente en presencia de energía, mientras que los datos en DRAM decaen en segundos y, por lo tanto, debe actualizarse periódicamente. SRAM es más rápido que DRAM pero es más caro en términos de área de silicio y costo; normalmente se usa para el caché y los registros internos de una CPU, mientras que la DRAM se usa para la memoria principal de una computadora.
Historia
La SRAM bipolar de semiconductores fue inventada en 1963 por Robert Norman en Fairchild Semiconductor. MOS SRAM fue inventado en 1964 por John Schmidt en Fairchild Semiconductor. Era una SRAM de canal p MOS de 64 bits.
La SRAM fue el principal impulsor detrás de cualquier nuevo proceso de fabricación de tecnología basada en CMOS desde 1959, cuando se inventó el CMOS. En 1965, Arnold Farber y Eugene Schlig, que trabajaban para IBM, crearon una celda de memoria cableada utilizando una puerta de transistor y un diodo de túnel. Reemplazaron el pestillo con dos transistores y dos resistencias, una configuración que se conoció como la celda de Farber-Schlig. En 1965, Benjamin Agusta y su equipo de 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.
En abril de 1969 Intel inc. presentó su primer producto, Intel 3101, un chip de memoria SRAM destinado a reemplazar los voluminosos módulos de memoria de núcleo magnético; Su capacidad era de 64 bits (solo se podían usar 63 bits debido a un error) y se basaba en transistores de unión bipolar, fue diseñado usando rubylith.
Características
Aunque se puede caracterizar como memoria volátil, SRAM exhibe remanencia de datos.
SRAM ofrece un modelo de acceso a datos simple y no requiere un circuito de actualización. El rendimiento y la confiabilidad son buenos y el consumo de energía es bajo cuando está inactivo.
Dado que SRAM requiere más transistores por bit para implementarse, es menos denso y más costoso que DRAM y también tiene un mayor consumo de energía durante el acceso de lectura o escritura. El consumo de energía de SRAM varía ampliamente según la frecuencia con la que se accede a ella.
Aplicaciones
Uso integrado
Muchas categorías de subsistemas industriales y científicos, electrónica automotriz y sistemas integrados similares contienen SRAM que, en este contexto, puede denominarse ESRAM. Una cierta cantidad (kilobytes o menos) también está incrustada en prácticamente todos los electrodomésticos modernos, juguetes, etc. que implementan una interfaz de usuario electrónica.
La SRAM en su forma de dos puertos se usa a veces para circuitos de procesamiento de señales digitales en tiempo real.
En ordenadores
SRAM también se usa en computadoras personales, estaciones de trabajo, enrutadores y equipos periféricos: archivos de registro de CPU, cachés internos de CPU, cachés internos de GPU y cachés SRAM externos en modo ráfaga, búferes de disco duro, búferes de enrutador, etc. También pantallas LCD e impresoras normalmente emplean SRAM para mantener la imagen mostrada (o para ser impresa). SRAM se usó para la memoria principal de muchas de las primeras computadoras personales, como ZX80, TRS-80 Model 100 y VIC-20.
Aficionados
Los aficionados, específicamente los entusiastas de los procesadores caseros, a menudo prefieren SRAM debido a la facilidad de la interfaz. Es mucho más fácil trabajar con DRAM que con DRAM, ya que no hay ciclos de actualización y los buses de direcciones y datos a menudo son directamente accesibles. Además de los buses y las conexiones de alimentación, la 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 Reloj (CLK).
Tipos de SRAM
SRAM no volátil
La SRAM no volátil (nvSRAM) tiene una funcionalidad SRAM estándar, pero guarda 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) en las que la conservación de los datos es fundamental y las baterías no son prácticas.
RAM pseudoestática
La RAM pseudoestática (PSRAM) es una DRAM combinada con un circuito de actualización automática. Aparece externamente como una SRAM más lenta, aunque con una ventaja de densidad/costo sobre la verdadera SRAM y 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 poder
- Binary SRAM
- Ternary SRAM
Por función
- Asincrónico – independiente de la frecuencia del reloj; los datos dentro y fuera son controlados por la transición de la dirección. Ejemplos incluyen los chips ubicuos 8K × 8 y 32K × 8 (a menudo pero no siempre nombrados algo en las líneas 6264 y 62C256 respectivamente), así como productos similares de hasta 16 Mbit por chip.
- Sincronía – todos los tiempos son iniciados por los bordes del reloj. Dirección, datos en y otras señales de control se asocian con las señales del 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é utilizados 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 más que 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 al emplear una arquitectura de canalización. Además, dado que la DRAM es mucho más barata que la SRAM, la SRAM suele sustituirse por la DRAM, especialmente en el caso de que se necesite 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úfer pequeños.
Por función
- Zero bus turnaround (ZBT) – la vuelta es el número de ciclos de reloj que se necesita para cambiar el acceso al SRAM desde escribir a leído y viceversa. El giro para ZBT SRAMs o la latencia entre el ciclo de lectura y escritura es cero.
- syncBurst (syncBurst SRAM o SRAM de carga sincronizada) – características de ráfaga sincrónica escribir acceso al SRAM para aumentar la operación de escritura al SRAM.
- DDR SRAM – puerto de lectura/escritura sincronizado, doble tasa de datos I/O.
- Datos cuádruples Tasa SRAM – puertos de lectura y escritura sincronizados, separados, tasa de datos cuádruples I/O.
Integrado en chip
La SRAM se puede integrar como RAM o memoria caché en microcontroladores (normalmente desde alrededor de 32 bytes hasta 128 kilobytes), como caché principal en potentes microprocesadores, 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 (consulte el archivo de registro), en circuitos integrados específicos de la aplicación (ASIC) (generalmente en el orden de kilobytes) y en puertas programables en campo matrices (FPGA) y dispositivos lógicos programables complejos (CPLD).
Diseño
Una celda SRAM típica se compone de seis MOSFET y, a menudo, se denomina 6T celda SRAM. Cada bit en la celda 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 6T SRAM, otros tipos de chips SRAM utilizan 4, 8, 10 (4T, 8T, 10T SRAM) o más transistores por bit. La SRAM de cuatro transistores es bastante común en dispositivos SRAM autónomos (a diferencia de la SRAM utilizada para cachés de CPU), implementada en procesos especiales con una capa adicional de polisilicio, lo que permite resistencias pull-up de muy alta resistencia. El principal inconveniente de usar 4T SRAM es el aumento de la potencia estática debido al flujo de corriente constante a través de uno de los transistores desplegables (M1 o M2).
Esto a veces se usa para implementar más de un puerto (de lectura y/o escritura), lo que puede ser útil en ciertos tipos de memoria de video y archivos de registro implementados con circuitos SRAM de múltiples puertos.
Por lo general, 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 el empaquetado de 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; sin embargo, tales celdas 3T o 1T son DRAM, no SRAM (incluso las llamadas 1T-SRAM).
El acceso a la celda está habilitado por la línea de palabra (WL en la figura) que controla los dos transistores de acceso M5 y M6 que, a su vez, controlan si la celda debe estar conectada 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, normalmente se proporciona tanto la señal como su inversa para mejorar los márgenes de ruido.
Durante los accesos de lectura, los inversores en 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 condensadores de almacenamiento y la carga compartida hace que la línea de bits oscile hacia arriba o hacia abajo. La estructura simétrica de las SRAM también permite la señalización diferencial, lo que hace que las pequeñas oscilaciones de voltaje sean más fáciles de detectar. Otra diferencia con la DRAM que contribuye a que la 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 comerciales tienen la dirección multiplexada en dos mitades, es decir, bits más altos seguidos de bits más bajos, sobre 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 son 2m palabras, o 2m × 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 uno de 2m diferentes palabras dentro del chip SRAM. Varios chips SRAM comunes tienen 11 líneas de dirección (por lo tanto, una capacidad de 211 = 2048 = 2k palabras) y una palabra de 8 bits, por lo que son denominado "2k × 8 SRAM".
Las dimensiones de una celda SRAM en un IC están determinadas por el tamaño mínimo de característica del proceso utilizado para fabricar el IC.
Funcionamiento SRAM
Una celda SRAM tiene tres estados diferentes: en espera (el circuito está inactivo), leyendo (se han solicitado los datos) o escribiendo (actualizando los contenidos). La SRAM que funciona en modos de lectura y escritura debe tener "legibilidad" y "estabilidad de escritura", respectivamente. Los tres estados diferentes funcionan de la siguiente manera:
En espera
Si la línea de palabra no se afirma, los transistores de acceso M5 y M6 desconectan la celda de las líneas de bits. Los dos inversores cruzados formados por M1 – M4 seguirán reforzándose mutuamente mientras estén conectados a la alimentación.
Lectura
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, p. M6, BL. Sin embargo, las líneas de bit son relativamente largas y tienen una gran capacitancia parásita. Para acelerar la lectura, en la práctica se utiliza un proceso más complejo: el ciclo de lectura se inicia precargando ambas líneas de bits BL y BL, a alta (lógica 1) tensión. Luego, afirmar la línea de palabras WL habilita tanto los transistores de acceso M5 como M6, lo que hace que el voltaje de la línea BL de un bit 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 hay un 1 o un 0 almacenado. 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 potente, el menú desplegable 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 tratando de precargar a un voltaje ligeramente bajo para reducir el consumo de energía.
Escribir
El ciclo de escritura comienza aplicando el valor que se va a escribir en las líneas de bits. Para escribir un 0, se aplica un 0 a las líneas de bits, como establecer 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. Luego se afirma WL y se bloquea el valor que se va a almacenar. Esto funciona porque los controladores de entrada de línea de bits están diseñados para ser mucho más fuertes que los transistores relativamente débiles en la celda misma para que puedan anular fácilmente el estado anterior de la celda. inversores de acoplamiento cruzado. En la práctica, los transistores NMOS de acceso M5 y M6 tienen que ser más fuertes que cualquiera de los NMOS inferiores (M1, M3) o transistores PMOS superiores (M2, M4). 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, M3 y M4) se anula ligeramente por el proceso de escritura, el par de transistores opuestos (M1 y M2) también se cambia el voltaje de la puerta. Esto significa que los transistores M1 y M2 pueden anularse más fácilmente, y así sucesivamente. Por lo tanto, los inversores de acoplamiento cruzado magnifican 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 celdas SRAM tienen un "modo de página", donde las palabras de una página (256, 512 o 1024 palabras) se pueden leer secuencialmente con un tiempo de acceso significativamente más corto (normalmente, aproximadamente 30 ns). La página se selecciona configurando las líneas de dirección superiores y luego las palabras se leen secuencialmente recorriendo las líneas de dirección inferiores.
Desafíos de producción
Con la introducción de la implementación del transistor FinFET de las celdas SRAM, comenzaron a sufrir crecientes ineficiencias en el tamaño de las celdas. Durante los últimos 30 años (de 1987 a 2017), con un tamaño de transistor (tamaño de nodo) en constante disminución, la reducción de la huella de la topología de celdas SRAM se ralentizó, lo que dificulta el empaquetamiento de celdas más densamente.
Además de los problemas de tamaño, un desafío importante de las celdas SRAM modernas es la fuga de corriente estática. La corriente, que fluye desde el suministro positivo (Vdd), a través de la celda y hacia tierra, aumenta exponencialmente cuando aumenta la temperatura de la celda. El consumo de energía de la celda ocurre tanto en estado activo como inactivo, desperdiciando así energía útil sin realizar ningún trabajo útil. Aunque en los últimos 20 años el problema se solucionó parcialmente con la técnica de voltaje de retención de datos (DRV) con tasas de reducción que oscilaban entre 5 y 10, la disminución en el tamaño del nodo hizo que las tasas de reducción cayeran a aproximadamente 2.
Con estos dos problemas, se hizo más difícil desarrollar memorias SRAM densas y eficientes energéticamente, lo que llevó a la industria de los semiconductores a buscar alternativas como STT-MRAM y F-RAM.
Investigación
En 2019, un instituto francés informó sobre una investigación de un IC fabricado en 28nm para IoT. Se basó en silicio completamente agotado en transistores aislantes (FD-SOI), tenía un riel de memoria SRAM de dos puertos para accesos síncronos / asíncronos y tierra virtual selectiva (SVGND). El estudio afirmó alcanzar una corriente SVGND ultrabaja en un 'sueño'. y modos de lectura ajustando finamente su voltaje.
Contenido relacionado
Aguijón FIM-92
Registro de direcciones de memoria
Nintendo 64