Catto / Mapa de Temas · Dispositivos Electrónicos 3er nivel
Dispositivos Electrónicos · 120 h · Contenido 7 de 9

Memorias CMOS

Un bit de la memoria principal son unos 150 000 electrones en un capacitor que pierde. Si nadie los repone, en menos de un segundo el 1 se lee como 0.

SRAM DRAM Flash Refresco Reparto de carga

01Tres maneras de guardar un bit

Toda la memoria de una computadora actual está hecha con transistores MOS, pero de tres maneras muy distintas, cada una con un compromiso diferente entre velocidad, densidad y permanencia:

SRAMDRAMFlash
Cómo guarda el bitDos inversores realimentadosCarga en un capacitorCarga atrapada en la compuerta de un transistor
Transistores por bit61 más un capacitor1, y varios bits por transistor
Área de la celdaUnos 120 a 150 F²6 a 8 F²4 F² y menos, apilada en 3D
Al cortar la alimentaciónSe pierdeSe pierde, y además hay que refrescarlaSe conserva por años
AccesoMenos de un nanosegundoDecenas de nanosegundosMicrosegundos para leer, más para escribir
Dónde estáRegistros y cachés, dentro del procesadorLa memoria principalDiscos de estado sólido, pendrives, memoria de programa

\( F \) es la dimensión mínima de la tecnología: medir las celdas en \( F^2 \) permite compararlas entre generaciones. La página de la tecnicatura sobre memorias y dispositivos programables presenta los tipos desde el uso; acá se mira la celda.

02SRAM: dos inversores que se sostienen

La celda SRAM de seis transistores son dos inversores CMOS conectados en anillo, cada uno alimentando al otro, y dos transistores de acceso que conectan los dos nodos a un par de líneas de bit cuando se activa la línea de palabra. El anillo tiene dos estados estables, y mientras haya alimentación se sostiene solo, sin refresco.

El diseño de la celda es una puja entre leer y escribir con los mismos transistores:

  • Estabilidad de lectura: al leer, el nodo que guarda un 0 se conecta a una línea de bit precargada en \( V_{DD} \) y sube un poco. Si sube demasiado, la celda se da vuelta sola. Por eso el NMOS de abajo se hace más ancho que el de acceso, en una relación de 1,2 a 2.
  • Escritura: para cambiar el estado, el transistor de acceso tiene que vencer al PMOS de arriba, que se hace el más angosto de los tres.

El margen de ruido estático de la celda se mide superponiendo las dos transferencias, una reflejada: el gráfico que resulta se llama «mariposa», y el lado del mayor cuadrado que entra en sus alas es el margen. Con cada generación la variación entre transistores lo achica, y hoy la SRAM es de lo más difícil de escalar.

03DRAM: un capacitor que pierde

La celda DRAM es un transistor y un capacitor. El bit es la carga del capacitor: lleno a \( V_{DD} \) es un 1, vacío es un 0. Para leer, la línea de bit se precarga a \( V_{DD}/2 \) y se abre el transistor: el capacitor de la celda comparte su carga con la capacidad, mucho mayor, de la línea de bit, que se mueve apenas:

\[ \Delta V = \left( V_{\text{celda}} - \frac{V_{DD}}{2} \right) \frac{C_s}{C_s + C_{BL}} \] Con \( C_s = 20 \) fF, \( C_{BL} = 80 \) fF y \( V_{DD} = 1{,}2 \) V, la línea se mueve ±120 mV. Un amplificador sensor la lleva a 0 o a \( V_{DD} \).

La lectura es destructiva: después de compartir la carga, la celda quedó en un valor intermedio, y el amplificador sensor la reescribe en el mismo ciclo. Además, el capacitor pierde carga por las fugas de la juntura y del transistor apagado. Cada celda se lee y se reescribe periódicamente, el refresco: la norma JEDEC pide refrescar cada celda al menos cada 64 ms, y cada 32 ms por encima de 85 °C, porque la fuga se duplica cada unos diez grados.

Una celda de 20 fF a 1,2 V guarda unos 150 000 electrones. Mantener esa capacidad mientras la celda se achica obligó a construir capacitores con forma de cilindros altísimos, con dieléctricos de alta constante.

Laboratorio · cuánto tiempo recuerda una celda DRAM

Una celda escrita con un 1 que pierde carga por una fuga constante. Se grafica la señal que la celda le entregaría a la línea de bit si se la leyera en cada instante; el amplificador sensor necesita al menos 30 mV para decidir. Elegís la capacidad de la celda, la de la línea de bit y la corriente de fuga.

04Flash: carga atrapada

Una celda flash es un MOS con una segunda compuerta, flotante, aislada por completo dentro del óxido (o, en las versiones actuales, una capa de nitruro que atrapa carga). Los electrones que se logran meter ahí quedan presos por años, y su carga negativa sube la tensión umbral del transistor. Leer es preguntar si el transistor conduce con una tensión de compuerta de referencia.

OperaciónMecanismo
Programar en NORInyección de portadores calientes: electrones acelerados en el canal saltan la barrera del óxido
Programar y borrar en NANDEfecto túnel de Fowler-Nordheim a través del óxido, con 15 a 20 V
Varios bits por celdaSe programan 4, 8 o 16 niveles de umbral para guardar 2, 3 o 4 bits (MLC, TLC, QLC)
DesgasteCada ciclo de escritura daña un poco el óxido: de unos 100 000 ciclos en celdas de un bit a pocos miles en las de cuatro

Cuando la celda plana no pudo achicarse más, la flash NAND se hizo vertical: hoy se apilan más de doscientas capas de celdas en el mismo chip. El controlador del disco reparte las escrituras, corrige errores y reserva bloques de repuesto: sin él, una flash de muchos bits por celda no sería confiable.

05Cómo se organiza un arreglo

Las celdas forman una matriz: un decodificador de filas activa una línea de palabra, todas las celdas de esa fila vuelcan su contenido sobre sus líneas de bit, y los amplificadores sensores al pie de cada columna detectan diferencias de decenas de milivolts. Un decodificador de columnas elige cuáles de esos bits salen. Precargar, activar, detectar y reescribir es la secuencia de cada acceso, y sus tiempos son los que aparecen en las hojas de datos de las memorias como latencias.

06Dónde aparece en la electrónica

CasoLa memoria y por qué
MicrocontroladorFlash para el programa, SRAM para las variables
ComputadoraSRAM en las cachés, DRAM en los módulos, flash NAND en el disco
FPGALa configuración en celdas SRAM, que se pierde al apagar
Equipos que no pueden perder datosMemorias no volátiles rápidas (FRAM, MRAM) que escriben como una SRAM
Cámaras y teléfonosFlash NAND de varios bits por celda, con su controlador

07En el laboratorio

Actividad 1 · Una SRAM con dos inversores

Con dos inversores de un 74HC04 conectados en anillo, forzar el estado con una resistencia de 1 kΩ a cada nodo y verificar que queda memorizado al retirarla. Medir la tensión mínima de alimentación a la que el anillo todavía retiene el dato.

Actividad 2 · Una celda DRAM de laboratorio

Cargar un capacitor de 1 nF a través de un MOSFET de señal usado como llave, abrir la llave y medir con un osciloscopio de alta impedancia cuánto tarda en perder la mitad de la tensión. Estimar la corriente de fuga.

Actividad 3 · La memoria de un microcontrolador

En un microcontrolador, leer el mapa de memoria de la hoja de datos, ubicar la flash y la SRAM, y después de compilar un programa comparar cuánto ocupa de cada una.

08Errores frecuentes

  • Pensar que la DRAM es «RAM que no se borra» mientras hay alimentación. Sin refresco se pierde en fracciones de segundo.
  • Confundir no volátil con eterna. La flash tiene un número finito de ciclos de escritura y la retención baja con el desgaste y la temperatura.
  • Creer que leer una DRAM no la altera. La lectura es destructiva y hay que reescribir.
  • Comparar memorias por capacidad sin mirar la latencia. Una DRAM tarda cien veces más en responder que una caché SRAM.
  • Escribir la flash del microcontrolador en un bucle. Se gasta en horas.

09Autoevaluación

¿Por qué la SRAM no necesita refresco y la DRAM sí?

La SRAM guarda el dato en dos inversores realimentados que se sostienen mientras haya alimentación; la DRAM lo guarda como carga en un capacitor que pierde por fugas.

Con \( C_s = 25 \) fF, \( C_{BL} = 100 \) fF y \( V_{DD} = 1{,}1 \) V, ¿cuánto se mueve la línea de bit al leer un 1?

\( 0{,}55 \times 25/125 = 110 \) mV.

¿Por qué el NMOS de abajo de una celda SRAM es más ancho que el de acceso?

Para que al leer, el nodo que guarda un 0 suba poco y la celda no cambie de estado.

¿Cuántos niveles de umbral necesita una celda TLC?

Ocho, porque guarda tres bits.

¿Por qué la DRAM se refresca más seguido a temperatura alta?

Porque la corriente de fuga crece con la temperatura, y la celda pierde la carga antes.

10Para ampliar

  • Bruce Jacob, Spencer W. Ng y David T. Wang. Memory Systems: Cache, DRAM, Disk. Morgan Kaufmann, 2008. La referencia sobre cómo funcionan por dentro las memorias de una computadora, de la celda al sistema.
  • Jan M. Rabaey, Anantha Chandrakasan y Borivoje Nikolić. Digital Integrated Circuits: A Design Perspective. 2.ª ed., Prentice Hall, 2003. El capítulo de memorias: celdas, amplificadores sensores y organización del arreglo.
  • Rino Micheloni, Luca Crippa y Alessia Marelli. Inside NAND Flash Memories. Springer, 2010. La celda flash, sus mecanismos de programación y los problemas de confiabilidad.
Desarrollo del contenido «Memorias CMOS» de Dispositivos Electrónicos (tercer nivel), según el diseño curricular de Ingeniería Electrónica, Plan 2023 — Ordenanza N° 1849 del Consejo Superior de la UTN. Volver al Mapa de Temas · catto.ar