Memoria dinámica de acceso aleatorio
Memoria dinámica de acceso aleatorio (RAM dinámica o DRAM) es un tipo de memoria semiconductora de acceso aleatorio que almacena cada bit de datos en una celda de memoria, que generalmente consta de un pequeño capacitor y un transistor, ambos basados generalmente en tecnología de semiconductores de óxido de metal (MOS). Si bien la mayoría de los diseños de celdas de memoria DRAM usan un capacitor y un transistor, algunos solo usan dos transistores. En los diseños donde se usa un capacitor, el capacitor puede cargarse o descargarse; estos dos estados se toman para representar los dos valores de un bit, convencionalmente llamados 0 y 1. La carga eléctrica en los capacitores se escapa gradualmente; sin intervención, los datos del condensador pronto se perderían. Para evitar esto, DRAM requiere un circuito externo de refresco de memoria que reescribe periódicamente los datos en los capacitores, restaurándolos a su carga original. Este proceso de actualización es la característica definitoria de la memoria dinámica de acceso aleatorio, en contraste con la memoria estática de acceso aleatorio (SRAM), que no requiere que se actualicen los datos. A diferencia de la memoria flash, la DRAM es una memoria volátil (frente a la memoria no volátil), ya que pierde sus datos rápidamente cuando se desconecta la alimentación. Sin embargo, la DRAM muestra una remanencia de datos limitada.
La DRAM suele adoptar la forma de un chip de circuito integrado, que puede constar de decenas a miles de millones de celdas de memoria DRAM. Los chips DRAM se usan ampliamente en la electrónica digital donde se requiere una memoria de computadora de bajo costo y alta capacidad. Una de las mayores aplicaciones de DRAM es la memoria principal (coloquialmente llamada "RAM") en las computadoras y tarjetas gráficas modernas (donde la "memoria principal" es denominada memoria gráfica). También se utiliza en muchos dispositivos portátiles y consolas de videojuegos. Por el contrario, la SRAM, que es más rápida y más costosa que la DRAM, se usa típicamente donde la velocidad es más importante que el costo y el tamaño, como las memorias caché en los procesadores.
La necesidad de actualizar la DRAM exige circuitos y tiempos más complicados que la SRAM. Esto se compensa con la simplicidad estructural de las celdas de memoria DRAM: solo se requiere un transistor y un capacitor por bit, en comparación con cuatro o seis transistores en SRAM. Esto permite que la DRAM alcance densidades muy altas con una reducción simultánea del costo por bit. Actualizar los datos consume energía y se utilizan una variedad de técnicas para administrar el consumo total de energía.
La DRAM tuvo un aumento del 47 % en el precio por bit en 2017, el aumento más grande en 30 años desde el aumento del 45 % en 1988, mientras que en los últimos años el precio ha estado bajando. En 2018, una "característica clave del mercado DRAM es que actualmente solo hay tres proveedores principales: Micron Technology, SK Hynix y Samsung Electronics" que están 'manteniendo un control bastante estricto de su capacidad'. También está Kioxia (anteriormente Toshiba Memory Corporation después de la escisión de 2017). Otros fabricantes fabrican y venden DIMM (pero no los chips DRAM que contienen), como Kingston Technology, y algunos fabricantes que venden DRAM apilada (utilizada, por ejemplo, en las supercomputadoras a exaescala más rápidas), por separado, como Viking Technology. Otros los venden integrados en otros productos, como Fujitsu en sus CPU, AMD en GPU y Nvidia, con HBM2 en algunos de sus chips de GPU.
Historia
La máquina criptoanalítica con nombre en código "Aquarius" utilizada en Bletchley Park durante la Segunda Guerra Mundial incorporó una memoria dinámica cableada. Se leyó la cinta de papel y se recordaron los caracteres en ella en una tienda dinámica... La tienda usó un gran banco de condensadores, que estaban cargados o no, un condensador cargado que representaba la cruz (1) y un condensador sin carga. punto condensador (0). Dado que la carga se fue perdiendo gradualmente, se aplicó un pulso periódico para recargar los que aún estaban cargados (de ahí el término "dinámico").
En 1964, 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. Ese año presentaron un cierre de invención, pero inicialmente fue rechazado. 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. El Toshiba "Toscal" La calculadora electrónica BC-1411, que se introdujo en noviembre de 1965, utilizaba una forma de DRAM capacitiva (180 bits) construida a partir de celdas de memoria bipolares discretas.
Las primeras formas de DRAM mencionadas anteriormente usaban transistores bipolares. Si bien ofrecía un rendimiento mejorado con respecto a la memoria de núcleo magnético, la DRAM bipolar no podía competir con el precio más bajo de la memoria de núcleo magnético dominante en ese momento. Los condensadores también se habían utilizado para esquemas de memoria anteriores, como el tambor de la computadora Atanasoff-Berry, el tubo Williams y el tubo Selectron.
En 1966, el Dr. Robert Dennard del Centro de investigación Thomas J. Watson de IBM estaba trabajando en la memoria MOS e intentaba crear una alternativa a la SRAM que requería seis transistores MOS para cada bit de datos. Mientras examinaba las características de la tecnología MOS, descubrió que era capaz de construir capacitores, y que almacenar una carga o no cargar en el capacitor MOS podía representar el 1 y el 0 de un bit, mientras que el transistor MOS podía controlar la escritura de la carga en el capacitor. condensador. Esto lo llevó al desarrollo de la celda de memoria MOS DRAM de un solo transistor. Presentó una patente en 1967 y obtuvo la patente de EE. UU. número 3.387.286 en 1968. La memoria MOS ofrecía un mayor rendimiento, era más barata y consumía menos energía que la memoria de núcleo magnético.
Los chips MOS DRAM fueron comercializados en 1969 por Advanced Memory Systems, Inc de Sunnyvale, CA. Este chip de 1024 bits se vendió a Honeywell, Raytheon, Wang Laboratories y otros. El mismo año, Honeywell le pidió a Intel que hiciera una DRAM utilizando una celda de tres transistores que habían desarrollado. Este se convirtió en el Intel 1102 a principios de 1970. Sin embargo, el 1102 tuvo muchos problemas, lo que llevó a Intel a comenzar a trabajar en su propio diseño mejorado, en secreto para evitar conflictos con Honeywell. Esta se convirtió en la primera DRAM comercialmente disponible, la Intel 1103, en octubre de 1970, a pesar de los problemas iniciales de bajo rendimiento hasta la quinta revisión de las máscaras. El 1103 fue diseñado por Joel Karp y presentado por Pat Earhart. Las máscaras fueron cortadas por Barbara Maness y Judy García. La memoria MOS superó a la memoria de núcleo magnético como la tecnología de memoria dominante a principios de la década de 1970.
La primera DRAM con líneas de dirección de fila y columna multiplexadas fue la DRAM Mostek MK4096 de 4 kbit diseñada por Robert Proebsting e introducida en 1973. Este esquema de direccionamiento utiliza los mismos pines de dirección para recibir la mitad inferior y la mitad superior de la dirección de la celda de memoria a la que se hace referencia, cambiando entre las dos mitades en ciclos de bus alternos. Este fue un avance radical, reduciendo a la mitad la cantidad de líneas de dirección requeridas, lo que le permitió caber en paquetes con menos pines, una ventaja de costo que creció con cada salto en el tamaño de la memoria. El MK4096 demostró ser un diseño muy robusto para las aplicaciones de los clientes. Con la densidad de 16 Kbit, la ventaja de costos aumentó; la DRAM Mostek MK4116 de 16 Kbit, presentada en 1976, logró más del 75 % de participación en el mercado mundial de DRAM. Sin embargo, a medida que la densidad aumentó a 64 Kbit a principios de la década de 1980, Mostek y otros fabricantes estadounidenses fueron superados por los fabricantes japoneses de DRAM, que dominaron los mercados estadounidenses y mundiales durante las décadas de 1980 y 1990.
A principios de 1985, Gordon Moore decidió retirar a Intel de la producción de DRAM. Para 1986, todos los fabricantes de chips de Estados Unidos habían dejado de fabricar DRAM.
En 1985, cuando los chips de memoria DRAM de 64K eran los chips de memoria más comunes utilizados en las computadoras, y cuando más del 60 por ciento de esos chips eran producidos por empresas japonesas, los fabricantes de semiconductores en los Estados Unidos acusaron a las empresas japonesas de dumping de exportaciones por la propósito de sacar a los fabricantes de los Estados Unidos del negocio de los chips de memoria básicos. Los precios del producto 64K se desplomaron hasta 35 centavos cada uno desde $3,50 en 18 meses, con consecuencias financieras desastrosas para algunas empresas estadounidenses. El 4 de diciembre de 1985, la Administración de Comercio Internacional del Departamento de Comercio de los Estados Unidos falló a favor de la denuncia.
La memoria dinámica sincrónica de acceso aleatorio (SDRAM) fue desarrollada por Samsung. El primer chip SDRAM comercial fue el Samsung KM48SL2000, que tenía una capacidad de 16 Mb, y se introdujo en 1992. El primer chip de memoria DDR SDRAM (SDRAM de doble velocidad de datos) comercial fue Chip DDR SDRAM de 64 Mb de Samsung, lanzado en 1998.
Más tarde, en 2001, los fabricantes japoneses de DRAM acusaron a los fabricantes coreanos de DRAM de dumping.
En 2002, los fabricantes de computadoras de EE. UU. afirmaron que fijaban el precio de DRAM.
Principios de funcionamiento
La DRAM generalmente se organiza en una matriz rectangular de celdas de almacenamiento de carga que consta de un capacitor y un transistor por bit de datos. La figura de la derecha muestra un ejemplo simple con una matriz de celdas de cuatro por cuatro. Algunas matrices DRAM tienen muchos miles de celdas de alto y ancho.
Las largas líneas horizontales que conectan cada fila se conocen como líneas de palabras. Cada columna de celdas se compone de dos líneas de bits, cada una conectada a todas las demás celdas de almacenamiento de la columna (la ilustración de la derecha no incluye este importante detalle). Generalmente se les conoce como "+" y "−" líneas de bits.
Un amplificador de sentido es esencialmente un par de inversores conectados entre sí entre las líneas de bits. El primer inversor está conectado con la entrada de la línea de bits + y la salida de la línea de bits −. La entrada del segundo inversor es desde la línea de bits − con salida a la línea de bits +. Esto da como resultado una retroalimentación positiva que se estabiliza después de que una línea de bits está completamente en su voltaje más alto y la otra línea de bits está en el voltaje más bajo posible.
Operaciones para leer un bit de datos de una celda de almacenamiento DRAM
- Los amplificadores del sentido están desconectados.
- Las líneas de bits son precargadas a voltajes exactamente iguales que están entre niveles de lógica alta y baja (por ejemplo, 0,5 V si los dos niveles son 0 y 1 V). Las líneas de bits son físicamente simétricas para mantener la capacitancia igual, y por lo tanto en este momento sus voltajes son iguales.
- El circuito de precarga está apagado. Debido a que las líneas de bits son relativamente largas, tienen suficiente capacitancia para mantener el voltaje precargado por un breve tiempo. Este es un ejemplo de lógica dinámica.
- La línea de palabras de la fila deseada es entonces conducido alto para conectar el condensador de almacenamiento de una célula a su bit-line. Esto hace que el transistor realice, transfiriendo carga desde la célula de almacenamiento a la línea de bits conectada (si el valor almacenado es 1) o desde la línea de bits conectada a la célula de almacenamiento (si el valor almacenado es 0). Dado que la capacitancia de la línea bit es generalmente mucho mayor que la capacitancia de la célula de almacenamiento, el voltaje en la línea bit aumenta muy ligeramente si el condensador de la célula de almacenamiento se descarga y disminuye muy ligeramente si la célula de almacenamiento se carga (por ejemplo, 0,54 y 0,45 V en los dos casos). Como el otro bit-line tiene 0,50 V hay una pequeña diferencia de tensión entre las dos líneas de bits torcidas.
- Los amplificadores del sentido ahora están conectados a los pares de bit-lines. La retroalimentación positiva ocurre entonces desde los inversores conectados cruzados, amplificando así la pequeña diferencia de tensión entre las líneas de bits impares e incluso filas de una columna particular hasta que una línea de bits esté completamente al voltaje más bajo y la otra está al máximo de alta tensión. Una vez que esto ha sucedido, la fila es "abierto" (los datos de células deseados están disponibles).
- Todas las celdas de almacenamiento en la fila abierta se perciben simultáneamente, y las salidas de amplificador de sentido se detienen. A continuación, una dirección de columna selecciona qué bit de cierre para conectarse al bus de datos externo. Las lecturas de diferentes columnas en la misma fila se pueden realizar sin un retraso de apertura de fila porque, para la fila abierta, todos los datos ya se han sentido y se han desprendido.
- Mientras la lectura de columnas en una fila abierta está ocurriendo, la corriente está fluyendo hacia atrás hacia arriba las líneas de bits de la salida de los amplificadores del sentido y recargar las células de almacenamiento. Esto refuerza (es decir, "refreshes") la carga en la célula de almacenamiento aumentando el voltaje en el condensador de almacenamiento si se carga para comenzar, o manteniendo descargado si estaba vacío. Tenga en cuenta que debido a la longitud de las líneas de bits hay un retraso de propagación bastante largo para que la carga sea transferida de nuevo al condensador de la célula. Esto lleva un tiempo significativo más allá del fin de la amplificación sensorial, y así se superpone con una o más lecturas de columna.
- Cuando se hace con la lectura de todas las columnas en la fila abierta actual, la línea de palabras se apaga para desconectar los condensadores de la célula de almacenamiento (la fila está "cerrada") de las líneas de bits. El amplificador de sentido se apaga, y las líneas de bits se recargan de nuevo.
Para escribir en la memoria
Para almacenar datos, se abre una fila y el amplificador de detección de una columna determinada se fuerza temporalmente al estado de voltaje alto o bajo deseado, lo que hace que la línea de bits cargue o descargue el capacitor de almacenamiento de la celda al estado deseado. valor. Debido a la configuración de retroalimentación positiva del amplificador de sentido, mantendrá una línea de bit a un voltaje estable incluso después de que se elimine el voltaje forzado. Durante una escritura en una celda en particular, todas las columnas en una fila se detectan simultáneamente al igual que durante la lectura, por lo que aunque solo se cambia la carga del capacitor de la celda de almacenamiento de una sola columna, se actualiza toda la fila (se vuelve a escribir), como se ilustra en la figura de la derecha.
Frecuencia de actualización
Normalmente, los fabricantes especifican que cada fila debe actualizarse cada 64 ms o menos, según lo define el estándar JEDEC.
Algunos sistemas actualizan cada fila en una ráfaga de actividad que involucra todas las filas cada 64 ms. Otros sistemas actualizan una fila a la vez escalonadamente a lo largo del intervalo de 64 ms. Por ejemplo, un sistema con 213 = 8192 filas requeriría una frecuencia de actualización escalonada de una fila cada 7,8 µs, lo que equivale a 64 ms divididos por 8192 filas. Algunos sistemas en tiempo real actualizan una parte de la memoria en un momento determinado por una función de temporizador externo que rige el funcionamiento del resto del sistema, como el intervalo de borrado vertical que ocurre cada 10 a 20 ms en los equipos de video.
La dirección de fila de la fila que se actualizará a continuación se mantiene mediante una lógica externa o un contador dentro de la DRAM. Un sistema que proporciona la dirección de la fila (y el comando de actualización) lo hace para tener un mayor control sobre cuándo actualizar y qué fila actualizar. Esto se hace para minimizar los conflictos con los accesos a la memoria, ya que dicho sistema conoce tanto los patrones de acceso a la memoria como los requisitos de actualización de la DRAM. Cuando la dirección de la fila es proporcionada por un contador dentro de la DRAM, el sistema renuncia al control sobre qué fila se actualiza y solo proporciona el comando de actualización. Algunas DRAM modernas son capaces de actualizarse automáticamente; no se requiere lógica externa para indicarle a la DRAM que se actualice o que proporcione una dirección de fila.
Bajo algunas condiciones, la mayoría de los datos en DRAM se pueden recuperar incluso si la DRAM no se ha actualizado durante varios minutos.
Tiempo de memoria
Se requieren muchos parámetros para describir completamente el tiempo de funcionamiento de la DRAM. Estos son algunos ejemplos de dos grados de temporización de DRAM asíncrona, de una hoja de datos publicada en 1998:
"50 ns" | "60 ns" | Descripción | |
---|---|---|---|
tRC | 84 ns | 104 ns | Tiempo de lectura o escritura aleatoriamente (de un ciclo completo /RAS a otro) |
tRAC | 50 ns | 60 ns | Tiempo de acceso: /RAS datos bajos a válidos |
tRCD | 11 ns | 14 ns | /RAS bajo a /CAS bajo tiempo |
tRAS | 50 ns | 60 ns | /RAS ancho de pulso (mínimo /RAS tiempo bajo) |
tRP | 30 ns | 40 ns | /RAS tiempo de recarga (mínimo /RAS hora alta) |
tPC | 20 ns | 25 ns | Tiempo de lectura o escritura del ciclo de página (/CAS a /CAS) |
tAA | 25 ns | 30 ns | Tiempo de acceso: Dirección de columna válida para datos válidos (incluye tiempo de configuración de direcciones antes /CAS bajo) |
tCAC | 13 ns | 15 ns | Tiempo de acceso: /CAS datos bajos a válidos |
tCAS | 8 ns | 10 ns | /CAS ancho de pulso bajo mínimo |
Por lo tanto, el número que se cita generalmente es el tiempo bajo mínimo de /RAS. Este es el momento de abrir una fila, permitiendo que los amplificadores de los sentidos se asienten. Tenga en cuenta que el acceso a los datos durante un bit en la fila es más corto, ya que eso sucede tan pronto como el amplificador de detección se ha asentado, pero la DRAM requiere tiempo adicional para propagar los datos amplificados para recargar las celdas. El tiempo para leer bits adicionales de una página abierta es mucho menor, definido por el tiempo de ciclo de /CAS a /CAS. El número citado es la forma más clara de comparar el rendimiento de diferentes memorias DRAM, ya que establece el límite más lento independientemente de la longitud de la fila o el tamaño de la página. Los arreglos más grandes resultan forzosamente en una capacitancia de línea de bit más grande y demoras de propagación más largas, lo que hace que este tiempo aumente ya que el tiempo de estabilización del amplificador de detección depende tanto de la capacitancia como de la latencia de propagación. En los chips DRAM modernos, esto se contrarresta integrando muchos arreglos DRAM más completos dentro de un solo chip, para acomodar más capacidad sin volverse demasiado lento.
Cuando se accede a una memoria RAM de este tipo mediante una lógica de reloj, los tiempos generalmente se redondean al ciclo de reloj más cercano. Por ejemplo, cuando se accede a ella mediante una máquina de estado de 100 MHz (es decir, un reloj de 10 ns), la DRAM de 50 ns puede realizar la primera lectura en cinco ciclos de reloj y lecturas adicionales dentro de la misma página cada dos ciclos de reloj. Esto generalmente se describió como "5‐2‐2‐2" sincronización, ya que eran comunes las ráfagas de cuatro lecturas dentro de una página.
Al describir la memoria síncrona, el tiempo se describe mediante recuentos de ciclos de reloj separados por guiones. Estos números representan tCL‐tRCD‐tRP‐tRAS en múltiplos del tiempo de ciclo del reloj DRAM. Tenga en cuenta que esto es la mitad de la velocidad de transferencia de datos cuando se utiliza señalización de doble velocidad de datos. El tiempo PC3200 estándar de JEDEC es 3‐4‐4‐8 con un reloj de 200 MHz, mientras que el PC3200 DDR DRAM DIMM de alto rendimiento y precio premium podría funcionar en 2‐2‐2‐5 sincronización.
PC-3200 (DDR-400) | PC2-6400 (DDR2-800) | PC3-12800 (DDR3-1600) | Descripción | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Típico | Rápido | Típico | Rápido | Típico | Rápido | ||||||||
ciclos | tiempo | ciclos | tiempo | ciclos | tiempo | ciclos | tiempo | ciclos | tiempo | ciclos | tiempo | ||
tCL | 3 | 15 ns | 2 | 10 ns | 5 | 12,5 n | 4 | 10 ns | 9 | 11.25 ns | 8 | 10 ns | /CAS datos bajos a válidos (equivalente a tCAC) |
tRCD | 4 | 20 ns | 2 | 10 ns | 5 | 12,5 n | 4 | 10 ns | 9 | 11.25 ns | 8 | 10 ns | /RAS bajo a /CAS bajo tiempo |
tRP | 4 | 20 ns | 2 | 10 ns | 5 | 12,5 n | 4 | 10 ns | 9 | 11.25 ns | 8 | 10 ns | /RAS tiempo de recarga (precargo mínimo a tiempo activo) |
tRAS | 8 | 40 ns | 5 | 25 ns | 16 | 40 ns | 12 | 30 ns | 27 | 33.75 ns | 24 | 30 ns | Fila tiempo activo (mínimo activo para el tiempo de recarga) |
El tiempo mínimo de acceso aleatorio ha mejorado de tRAC = 50 ns a tRCD + tCL = 22,5 ns, e incluso la variedad premium de 20 ns es solo 2,5 veces mejor en comparación con el caso típico (~2,22 veces mejor). La latencia de CAS ha mejorado aún menos, de tCAC = 13 ns a 10 ns. Sin embargo, la memoria DDR3 logra un ancho de banda 32 veces mayor; Debido a la canalización interna y a las amplias rutas de datos, puede generar dos palabras cada 1,25 ns (1600 Mword /s), mientras que EDO DRAM puede generar una palabra por tPC = 20 ns (50 Mword/s).
Abreviaturas de tiempos
|
|
Diseño de celdas de memoria
Cada bit de datos en una DRAM se almacena como una carga eléctrica positiva o negativa en una estructura capacitiva. La estructura que proporciona la capacitancia, así como los transistores que controlan el acceso a ella, se denominan colectivamente como celda DRAM. Son el bloque de construcción fundamental en las matrices DRAM. Existen múltiples variantes de celdas de memoria DRAM, pero la variante más utilizada en las DRAM modernas es la celda de un transistor, un capacitor (1T1C). El transistor se utiliza para admitir corriente en el condensador durante las escrituras y para descargar el condensador durante las lecturas. El transistor de acceso está diseñado para maximizar la potencia de la unidad y minimizar las fugas de transistor a transistor (Kenner, pág. 34).
El condensador tiene dos terminales, uno de los cuales está conectado a su transistor de acceso, y el otro a tierra o VCC/2. En los DRAM modernos, este último caso es más común, ya que permite una operación más rápida. En DRAMs modernos, un voltaje de +VCC/2 a través del condensador se requiere para almacenar una lógica; y un voltaje de -VCC/2 a través del condensador se requiere para almacenar una lógica cero. La carga eléctrica almacenada en el condensador se mide en coulombs. Para una lógica, la carga es: Q=VCC2⋅ ⋅ C{textstyle Q={V_{CC}cdot C}, donde Q es el cargo en coulombs y C es la capacitancia en farads. Una lógica cero tiene una carga de: Q=− − VCC2⋅ ⋅ C{textstyle Q={-V_{CC} over 2}cdot C}.
Leer o escribir uno lógico requiere que la línea de palabra sea impulsada a un voltaje mayor que la suma de VCC y el voltaje de umbral del transistor de acceso (VTH). Este voltaje se llama VCC bombeado (VCCP). El tiempo requerido para descargar un condensador depende de qué valor lógico se almacena en el condensador. Un capacitor que contiene uno lógico comienza a descargarse cuando el voltaje en la terminal de puerta del transistor de acceso está por encima de VCCP. Si el capacitor contiene un cero lógico, comienza a descargarse cuando el voltaje del terminal de la puerta está por encima de VTH.
Diseño de condensadores
Hasta mediados de la década de 1980, los capacitores en las celdas DRAM eran coplanares con el transistor de acceso (estaban construidos en la superficie del sustrato), por lo que se los denominaba capacitores planares.. El impulso para aumentar tanto la densidad como, en menor medida, el rendimiento, requería diseños más densos. Esto estuvo fuertemente motivado por la economía, una consideración importante para los dispositivos DRAM, especialmente las DRAM comerciales. La minimización del área de la celda DRAM puede producir un dispositivo más denso y reducir el costo por bit de almacenamiento. A partir de mediados de la década de 1980, el condensador se movió por encima o por debajo del sustrato de silicio para cumplir con estos objetivos. Las celdas DRAM con capacitores sobre el sustrato se conocen como capacitores apilados o de placa plegada. Aquellos con condensadores enterrados debajo de la superficie del sustrato se denominan condensadores de trinchera. En la década de 2000, los fabricantes estaban muy divididos por el tipo de condensador utilizado en sus DRAM y el costo relativo y la escalabilidad a largo plazo de ambos diseños han sido objeto de un amplio debate. La mayoría de las DRAM, de fabricantes importantes como Hynix, Micron Technology, Samsung Electronics, utilizan la estructura de condensadores apilados, mientras que los fabricantes más pequeños, como Nanya Technology, utilizan la estructura de condensadores de trinchera (Jacob, págs. 355–357).
El capacitor en el esquema de capacitores apilados se construye sobre la superficie del sustrato. El capacitor está construido a partir de un dieléctrico de óxido-nitruro-óxido (ONO) intercalado entre dos capas de placas de polisilicio (la placa superior es compartida por todas las celdas DRAM en un IC), y su forma puede ser un rectángulo, un cilindro o alguna otra forma más compleja. Hay dos variaciones básicas del capacitor apilado, según su ubicación en relación con la línea de bits: capacitor-over-bitline (COB) y capacitor-under-bitline (CUB). En una variación anterior, el capacitor está debajo de la línea de bits, que generalmente está hecha de metal, y la línea de bits tiene un contacto de polisilicio que se extiende hacia abajo para conectarlo al terminal fuente del transistor de acceso. En la última variación, el condensador se construye sobre la línea de bits, que casi siempre está hecha de polisilicio, pero por lo demás es idéntica a la variación COB. La ventaja que posee la variante COB es la facilidad de fabricar el contacto entre la línea de bits y la fuente del transistor de acceso, ya que está físicamente cerca de la superficie del sustrato. Sin embargo, esto requiere que el área activa se coloque en un ángulo de 45 grados cuando se ve desde arriba, lo que dificulta garantizar que el contacto del capacitor no toque la línea de bits. Las celdas CUB evitan esto, pero tienen dificultades para insertar contactos entre líneas de bits, ya que el tamaño de las características tan cercanas a la superficie es igual o cercano al tamaño mínimo de característica de la tecnología de proceso (Kenner, pp. 33–42).
El condensador de trinchera se construye grabando un agujero profundo en el sustrato de silicio. El volumen de sustrato que rodea el orificio se dopa fuertemente para producir una placa n+ enterrada y para reducir la resistencia. Se cultiva o deposita una capa de dieléctrico de óxido-nitruro-óxido y, finalmente, el orificio se llena depositando polisilicio dopado, que forma la placa superior del condensador. La parte superior del capacitor está conectada al terminal de drenaje del transistor de acceso a través de una correa de polisilicio (Kenner, pp. 42–44). La relación entre la profundidad y el ancho de un condensador de trinchera en DRAM de mediados de la década de 2000 puede superar los 50:1 (Jacob, p. 357).
Los capacitores de trinchera tienen numerosas ventajas. Dado que el capacitor está enterrado en la mayor parte del sustrato en lugar de estar sobre su superficie, el área que ocupa se puede minimizar a lo que se requiere para conectarlo al terminal de drenaje del transistor de acceso sin disminuir la capacidad del capacitor. tamaño y, por lo tanto, capacitancia (Jacob, págs. 356-357). Alternativamente, la capacitancia se puede aumentar grabando un agujero más profundo sin aumentar el área de la superficie (Kenner, pág. 44). Otra ventaja del capacitor de trinchera es que su estructura está debajo de las capas de interconexión de metal, lo que permite que sean planares más fácilmente, lo que permite integrarlo en una tecnología de proceso lógicamente optimizada, que tiene muchos niveles de interconexión por encima del sustrato.. El hecho de que el condensador esté bajo la lógica significa que se construye antes que los transistores. Esto permite que los procesos de alta temperatura fabriquen los condensadores, que de otro modo degradarían los transistores lógicos y su rendimiento. Esto hace que los capacitores de trinchera sean adecuados para construir DRAM integrada (eDRAM) (Jacob, p. 357). Las desventajas de los capacitores de trinchera son las dificultades para construir de manera confiable las estructuras del capacitor dentro de orificios profundos y para conectar el capacitor al terminal de drenaje del transistor de acceso (Kenner, pág. 44).
Diseños de celdas históricas
Los circuitos integrados DRAM de primera generación (aquellos con capacidades de 1 kbit), de los cuales el primero fue el Intel 1103, usaban una celda DRAM de tres transistores y un capacitor (3T1C). Para la segunda generación, el requisito de reducir los costos colocando la misma cantidad de bits en un área más pequeña condujo a la adopción casi universal de la celda DRAM 1T1C, aunque un par de dispositivos con capacidades de 4 y 16 Kbit continuaron usando la 3T1C. celular por razones de rendimiento (Kenner, p. 6). Estas ventajas de rendimiento incluían, más significativamente, la capacidad de leer el estado almacenado por el capacitor sin descargarlo, evitando la necesidad de volver a escribir lo que se leyó (lectura no destructiva). Una segunda ventaja de rendimiento se relaciona con que la celda 3T1C tiene transistores separados para lectura y escritura; el controlador de memoria puede explotar esta función para realizar lecturas, modificaciones y escrituras atómicas, donde un valor se lee, modifica y luego se vuelve a escribir como una sola operación indivisible (Jacob, p. 459).
Diseños de celdas propuestos
La celda DRAM de un transistor y cero capacitor (1T) ha sido un tema de investigación desde finales de la década de 1990. 1T DRAM es una forma diferente de construir la celda de memoria DRAM básica, distinta de la celda DRAM clásica de un transistor/un capacitor (1T/1C), que a veces también se denomina "1T DRAM", particularmente en comparación con 3T y 4T DRAM que reemplazó en la década de 1970.
En las celdas DRAM de 1T, el bit de datos aún se almacena en una región capacitiva controlada por un transistor, pero esta capacitancia ya no la proporciona un capacitor separado. 1T DRAM es un "sin condensador" diseño de celda de bits que almacena datos usando la capacitancia de cuerpo parásito que es inherente a los transistores de silicio sobre aislador (SOI). Considerado una molestia en el diseño lógico, este efecto de cuerpo flotante se puede utilizar para el almacenamiento de datos. Esto le da a las celdas DRAM 1T la mayor densidad y permite una integración más fácil con circuitos lógicos de alto rendimiento, ya que están construidas con las mismas tecnologías de proceso SOI.
La actualización de las celdas sigue siendo necesaria, pero a diferencia de la DRAM 1T1C, las lecturas en la DRAM 1T no son destructivas; la carga almacenada provoca un cambio detectable en el voltaje de umbral del transistor. En cuanto al rendimiento, los tiempos de acceso son significativamente mejores que los de las DRAM basadas en capacitores, pero ligeramente peores que los de las SRAM. Existen varios tipos de DRAM 1T: la Z-RAM comercializada de Innovative Silicon, la TTRAM de Renesas y la A-RAM del consorcio UGR/CNRS.
Estructuras de matrices
Las celdas DRAM están dispuestas en un patrón regular rectangular similar a una cuadrícula para facilitar su control y acceso a través de líneas de palabras y líneas de bits. El diseño físico de las celdas DRAM en una matriz generalmente está diseñado para que dos celdas DRAM adyacentes en una columna compartan un solo contacto de línea de bits para reducir su área. El área de la celda DRAM se proporciona como n F2, donde n es un número derivado del diseño de la celda DRAM y F es el tamaño de característica más pequeño de una tecnología de proceso determinada. Este esquema permite la comparación del tamaño de la DRAM en diferentes generaciones de tecnología de proceso, ya que el área de la celda DRAM se escala a tasas lineales o casi lineales con respecto al tamaño de la característica. El área típica de las celdas DRAM modernas varía entre 6 y 8 F2.
El cable horizontal, la línea de palabra, está conectado a la terminal de puerta de cada transistor de acceso en su fila. La línea de bits vertical está conectada a la terminal fuente de los transistores en su columna. Las longitudes de las líneas de palabra y de bits son limitadas. La longitud de la línea de palabras está limitada por el rendimiento deseado de la matriz, ya que el tiempo de propagación de la señal que debe atravesar la línea de palabras está determinado por la constante de tiempo RC. La longitud de la línea de bits está limitada por su capacitancia (que aumenta con la longitud), que debe mantenerse dentro de un rango para una detección adecuada (ya que las DRAM funcionan al detectar la carga del capacitor liberado en la línea de bits). La longitud de la línea de bits también está limitada por la cantidad de corriente operativa que puede consumir la DRAM y por cómo se puede disipar la energía, ya que estas dos características están determinadas en gran medida por la carga y descarga de la línea de bits.
Arquitectura de línea de bits
Se requieren amplificadores de detección para leer el estado contenido en las celdas DRAM. Cuando se activa el transistor de acceso, la carga eléctrica en el capacitor se comparte con la línea de bits. La capacitancia de la línea de bits es mucho mayor que la del capacitor (aproximadamente diez veces). Por lo tanto, el cambio en el voltaje de la línea de bits es mínimo. Se requieren amplificadores de detección para resolver el diferencial de voltaje en los niveles especificados por el sistema de señalización lógica. Las DRAM modernas utilizan amplificadores de sentido diferencial y están acompañadas de requisitos sobre cómo se construyen las matrices de DRAM. Los amplificadores de sentido diferencial funcionan impulsando sus salidas a extremos opuestos en función de los voltajes relativos en pares de líneas de bits. Los amplificadores de detección funcionan de manera efectiva y eficiente solo si la capacitancia y los voltajes de estos pares de líneas de bits coinciden estrechamente. Además de garantizar que las longitudes de las líneas de bits y la cantidad de celdas DRAM conectadas a ellas sean iguales, han surgido dos arquitecturas básicas para el diseño de matrices para satisfacer los requisitos de los amplificadores de sentido: matrices de líneas de bits abiertas y plegadas.
Abrir matrices de líneas de bits
Los circuitos integrados DRAM de primera generación (1 kbit), hasta la generación de 64 kbit (y algunos dispositivos de generación de 256 kbit) tenían arquitecturas de matriz de líneas de bits abiertas. En estas arquitecturas, las líneas de bits se dividen en varios segmentos y los amplificadores de detección diferencial se colocan entre los segmentos de líneas de bits. Debido a que los amplificadores de detección se colocan entre segmentos de línea de bits, para enrutar sus salidas fuera de la matriz, se requiere una capa adicional de interconexión colocada encima de las que se usan para construir las líneas de palabras y las líneas de bits.
Las celdas DRAM que están en los bordes de la matriz no tienen segmentos adyacentes. Dado que los amplificadores de detección diferencial requieren capacitancia y longitudes de línea de bits idénticas de ambos segmentos, se proporcionan segmentos de línea de bits ficticios. La ventaja de la matriz de línea de bits abierta es un área de matriz más pequeña, aunque esta ventaja se ve ligeramente disminuida por los segmentos de línea de bits ficticios. La desventaja que provocó la casi desaparición de esta arquitectura es la vulnerabilidad inherente al ruido, que afecta la eficacia de los amplificadores de detección diferencial. Dado que cada segmento de línea de bits no tiene ninguna relación espacial con el otro, es probable que el ruido afecte solo a uno de los dos segmentos de línea de bits.
Matrices de líneas de bits plegadas
La arquitectura de la matriz de líneas de bits plegadas enruta las líneas de bits en pares a lo largo de la matriz. La proximidad de las líneas de bits emparejadas proporciona características de rechazo de ruido de modo común superiores a las de las matrices de líneas de bits abiertas. La arquitectura de matriz de línea de bits plegada comenzó a aparecer en los circuitos integrados de DRAM a mediados de la década de 1980, comenzando con la generación de 256 Kbit. Esta arquitectura se ve favorecida en los circuitos integrados DRAM modernos por su superior inmunidad al ruido.
Esta arquitectura se denomina plegada porque se basa en la arquitectura de matriz abierta desde la perspectiva del esquema del circuito. La arquitectura de matriz plegada parece eliminar las celdas DRAM en pares alternos (porque dos celdas DRAM comparten un solo contacto de línea de bits) de una columna, luego mueve las celdas DRAM de una columna adyacente a los vacíos.
La ubicación donde se tuerce la línea de bits ocupa un área adicional. Para minimizar la sobrecarga del área, los ingenieros seleccionan el esquema de torsión más simple y con el área mínima que sea capaz de reducir el ruido por debajo del límite especificado. A medida que la tecnología de proceso mejora para reducir los tamaños mínimos de las características, el problema de señal a ruido empeora, ya que el acoplamiento entre alambres metálicos adyacentes es inversamente proporcional a su paso. Los esquemas de plegado de matriz y torsión de línea de bits que se utilizan deben aumentar en complejidad para mantener una reducción de ruido suficiente. Los esquemas que tienen características deseables de inmunidad al ruido para un impacto mínimo en el área es el tema de la investigación actual (Kenner, p. 37).
Futuras arquitecturas de matrices
Los avances en la tecnología de procesos podrían dar lugar a que se favorezcan las arquitecturas de matriz de líneas de bits abiertas si es capaz de ofrecer mejores eficiencias de área a largo plazo; ya que las arquitecturas de matrices plegadas requieren esquemas de plegado cada vez más complejos para adaptarse a cualquier avance en la tecnología de procesos. La relación entre la tecnología de procesos, la arquitectura de arreglos y la eficiencia del área es un área activa de investigación.
Redundancia de filas y columnas
Los primeros circuitos integrados DRAM no tenían redundancia. Se descartaría un circuito integrado con una celda DRAM defectuosa. A partir de la generación de 64 kbit, las matrices DRAM han incluido filas y columnas adicionales para mejorar el rendimiento. Las filas y columnas de repuesto brindan tolerancia a los defectos de fabricación menores que han causado que una pequeña cantidad de filas o columnas no funcionen. Las filas y columnas defectuosas se desconectan físicamente del resto de la matriz activando un fusible programable o cortando el cable con un láser. Las filas o columnas de repuesto se sustituyen mediante la lógica de reasignación en los decodificadores de filas y columnas (Jacob, págs. 358–361).
Detección y corrección de errores
La interferencia eléctrica o magnética dentro de un sistema informático puede hacer que un solo bit de DRAM cambie espontáneamente al estado opuesto. La mayoría de los errores únicos ('suaves') en los chips DRAM se producen como resultado de la radiación de fondo, principalmente los neutrones de los rayos cósmicos secundarios, que pueden cambiar el contenido de una o más celdas de memoria o interferir con el circuitos utilizados para leerlos/escribirlos.
El problema se puede mitigar mediante el uso de bits de memoria redundantes y circuitos adicionales que usan estos bits para detectar y corregir errores de software. En la mayoría de los casos, la detección y corrección las realiza el controlador de memoria; a veces, la lógica requerida se implementa de forma transparente dentro de los chips o módulos DRAM, lo que permite la funcionalidad de memoria ECC para sistemas que de otro modo no serían compatibles con ECC. Los bits de memoria adicionales se utilizan para registrar la paridad y permitir que los datos faltantes se reconstruyan mediante el código de corrección de errores (ECC). La paridad permite la detección de todos los errores de un solo bit (en realidad, cualquier número impar de bits erróneos). El código de corrección de errores más común, un código Hamming SECDED, permite corregir un error de un solo bit y, en la configuración habitual, con un bit de paridad adicional, detectar errores de doble bit.
Estudios recientes arrojan índices de error muy variados con más de siete órdenes de magnitud de diferencia, que van desde un error de 10−10−10−17 /bit·h, aproximadamente un error de bit, por hora, por gigabyte de memoria a un error de bit, por siglo, por gigabyte de memoria. Schroeder et al. El estudio de 2009 informó un 32% de probabilidad de que una computadora dada en su estudio sufriera al menos un error corregible por año, y brindó evidencia de que la mayoría de estos errores son errores intermitentes duros en lugar de errores suaves y que trazan cantidades de material radiactivo que había entrado en el paquete del chip emitía partículas alfa y corrompía los datos. Un estudio de 2010 en la Universidad de Rochester también mostró evidencia de que una fracción sustancial de los errores de memoria son errores graves intermitentes. Los estudios a gran escala sobre la memoria principal sin ECC en PC y portátiles sugieren que los errores de memoria no detectados representan una cantidad sustancial de fallas del sistema: el estudio de 2011 informó una probabilidad de 1 en 1700 por cada 1,5 % de la memoria probada (extrapolando a aproximadamente 26 % de probabilidad para la memoria total) que una computadora tendría un error de memoria cada ocho meses.
Seguridad
Remanencia de datos
Aunque la memoria dinámica solo está especificada y garantizada para retener su contenido cuando se alimenta y se actualiza cada breve período de tiempo (a menudo 64 ms), los condensadores de las celdas de memoria a menudo retienen sus valores durante mucho más tiempo, especialmente a bajas temperaturas. Bajo algunas condiciones, la mayoría de los datos en DRAM se pueden recuperar incluso si no se han actualizado durante varios minutos.
Esta propiedad se puede utilizar para eludir la seguridad y recuperar datos almacenados en la memoria principal que se supone que se destruyen al apagarse. La computadora podría reiniciarse rápidamente y leer el contenido de la memoria principal; o quitando los módulos de memoria de una computadora, enfriándolos para prolongar la remanencia de datos y luego transfiriéndolos a una computadora diferente para leerlos. Se demostró que un ataque de este tipo elude los sistemas populares de cifrado de disco, como TrueCrypt de código abierto, BitLocker Drive Encryption de Microsoft y FileVault de Apple. Este tipo de ataque contra una computadora a menudo se denomina ataque de arranque en frío.
Corrupción de memoria
La memoria dinámica, por definición, requiere una actualización periódica. Además, leer la memoria dinámica es una operación destructiva, que requiere una recarga de las celdas de almacenamiento en la fila que se ha leído. Si estos procesos son imperfectos, una operación de lectura puede causar errores leves. En particular, existe el riesgo de que parte de la carga se filtre entre las celdas cercanas, lo que provoca que la actualización o lectura de una fila provoque un error de perturbación en una fila adyacente o incluso cercana. La conciencia de los errores de perturbación se remonta a la primera DRAM disponible comercialmente a principios de la década de 1970 (Intel 1103). A pesar de las técnicas de mitigación empleadas por los fabricantes, los investigadores comerciales demostraron en un análisis de 2014 que los chips DRAM DDR3 disponibles comercialmente fabricados en 2012 y 2013 son susceptibles a errores por perturbaciones. El efecto secundario asociado que condujo a los cambios de bit observados se ha denominado martillo de fila.
Embalaje
Módulo de memoria
Los circuitos integrados de RAM dinámicos generalmente se empaquetan en cajas de epoxi moldeadas, con un marco de conductor interno para las interconexiones entre la matriz de silicio y los conductores del paquete. El diseño original de IBM PC usaba circuitos integrados empaquetados en paquetes duales en línea (DIP), soldados directamente a la placa principal o montados en zócalos. A medida que la densidad de la memoria se disparó, el paquete DIP ya no era práctico. Para mayor comodidad en el manejo, se pueden montar varios circuitos integrados de RAM dinámicos en un solo módulo de memoria, lo que permite la instalación de memoria de 16, 32 o 64 bits de ancho en una sola unidad, sin necesidad de que el instalador inserte múltiples módulos individuales. circuitos integrados. Los módulos de memoria pueden incluir dispositivos adicionales para verificación de paridad o corrección de errores. A lo largo de la evolución de las computadoras de escritorio, se han desarrollado varios tipos estandarizados de módulos de memoria. Las computadoras portátiles, las consolas de juegos y los dispositivos especializados pueden tener sus propios formatos de módulos de memoria que no son intercambiables con las piezas de escritorio estándar por razones de empaque o de propiedad.
Incrustada
(feminine)La DRAM que está integrada en un circuito integrado diseñado en un proceso de lógica optimizada (como un circuito integrado de aplicación específica, un microprocesador o un sistema completo en un chip) se denomina DRAM integrada (eDRAM). La DRAM integrada requiere diseños de celdas DRAM que se puedan fabricar sin impedir la fabricación de transistores de conmutación rápida utilizados en la lógica de alto rendimiento y la modificación de la tecnología de proceso básica optimizada por lógica para adaptarse a los pasos del proceso necesarios para construir estructuras de celdas DRAM.
Versiones
Dado que la matriz y la celda DRAM fundamentales han mantenido la misma estructura básica durante muchos años, los tipos de DRAM se distinguen principalmente por las muchas interfaces diferentes para comunicarse con los chips DRAM.
DRAM asíncrona
La DRAM original, ahora conocida por el retrónimo "DRAM asíncrona" fue el primer tipo de DRAM en uso. Desde sus orígenes a fines de la década de 1960, fue un lugar común en la informática hasta alrededor de 1997, cuando fue reemplazada en su mayoría por DRAM síncrona. En la actualidad, la fabricación de RAM asíncrona es relativamente rara.
Principios de funcionamiento
Un chip DRAM asíncrono tiene conexiones de alimentación, cierto número de entradas de dirección (normalmente 12) y unas pocas (normalmente una o cuatro) líneas de datos bidireccionales. Hay cuatro señales de control activo-bajo:
- RASLa dirección de la fila Strobe. Las entradas de la dirección se capturan en el borde de caída RAS, y seleccionar una fila para abrir. La fila se mantiene abierta mientras RAS es bajo.
- CAS, la Columna Dirección Strobe. Las entradas de la dirección se capturan en el borde de caída CAS, y seleccionar una columna de la fila actual abierta para leer o escribir.
- NosotrosEscribir Enable. Esta señal determina si un borde de caída dado CAS es una lectura (si alta) o escribir (si baja). Si es bajo, las entradas de datos también se capturan en el borde de caída de CAS.
- OE, Activación. Esta es una señal adicional que controla la salida a los pines I/O de los datos. Los pines de datos son impulsados por el chip DRAM si RAS y CAS son bajos, Nosotros es alto, y OE es bajo. En muchas aplicaciones, OE puede ser conectado permanentemente bajo (output siempre habilitado), pero conmutación OE puede ser útil al conectar múltiples chips de memoria en paralelo.
Esta interfaz proporciona un control directo de la temporización interna. Cuando RAS está bajo, no se debe intentar un ciclo CAS hasta que el sentido los amplificadores han detectado el estado de la memoria y RAS no debe devolverse alto hasta que las celdas de almacenamiento se hayan actualizado. Cuando RAS se eleva, debe mantenerse alto el tiempo suficiente para que se complete la precarga.
Aunque la DRAM es asíncrona, las señales generalmente las genera un controlador de memoria cronometrado, que limita su temporización a múltiplos del ciclo de reloj del controlador.
Actualizar solo RAS
La DRAM asíncrona clásica se actualiza abriendo cada fila por turno.
Los ciclos de actualización se distribuyen a lo largo de todo el intervalo de actualización de tal manera que todas las filas se actualizan dentro del intervalo requerido. Para actualizar una fila de la matriz de memoria utilizando RAS solo actualización (ROR), se deben realizar los siguientes pasos:
- La dirección de fila de la fila para ser refrescado debe ser aplicada en los pines de entrada de la dirección.
- RAS debe cambiar de alto a bajo. CAS Debe permanecer alto.
- Al final del tiempo necesario, RAS Debe volver alto.
Esto se puede hacer proporcionando una dirección de fila y pulsando RAS low; no es necesario realizar ningún ciclo CAS. Se necesita un contador externo para iterar sobre las direcciones de fila a su vez. En algunos diseños, la CPU manejó la actualización de RAM, entre estos, el Zilog Z80 es quizás el ejemplo más conocido, alojando un contador de filas en un registro del procesador, R, e incluyendo temporizadores internos que sondearían periódicamente la fila en R y luego incrementarían el valor. en el registro Las actualizaciones se intercalaron con instrucciones comunes como lecturas de memoria. En otros sistemas, especialmente en las computadoras domésticas, la actualización a menudo la manejaba el circuito de video, ya que a menudo tenía que leer grandes áreas de memoria y realizaba actualizaciones como parte de estas operaciones.
CAS antes de la actualización de RAS
Para mayor comodidad, el contador se incorporó rápidamente a los propios chips DRAM. Si la línea CAS baja antes de RAS (normalmente una operación ilegal), luego, la DRAM ignora las entradas de dirección y usa un contador interno para seleccionar la fila para abrir. Esto se conoce como actualización CAS-before-RAS (CBR). Esta se convirtió en la forma estándar de actualización para DRAM asíncrona y es la única forma que se usa generalmente con SDRAM.
Actualización oculta
Dada la compatibilidad con CAS-antes-RAS actualizar, es posible para desactivar RAS mientras mantiene CAS bajo para mantener la salida de datos. Si RAS se afirma nuevamente, se realiza un ciclo de actualización de CBR mientras las salidas de DRAM siguen siendo válidas. Debido a que la salida de datos no se interrumpe, esto se conoce como actualización oculta.
DRAM en modo página
DRAM de modo de página es una modificación menor a la interfaz DRAM IC de primera generación que mejoró el rendimiento de lecturas y escrituras en una fila al evitar la ineficiencia de precargar y abrir la misma fila repetidamente para acceder una columna diferente. En DRAM de modo de página, después de abrir una fila manteniendo RAS bajo, la fila se podía mantener abierta y se podían realizar varias lecturas o escrituras en cualquiera de las columnas de la fila. El acceso a cada columna se inició afirmando CAS y presentando una dirección de columna. Para las lecturas, después de un retraso (tCAC), los datos válidos aparecerían en los pines de salida de datos, que se mantuvieron en Z alto antes de que aparecieran los datos válidos. Para las escrituras, la señal de activación de escritura y los datos de escritura se presentarían junto con la dirección de la columna.
La DRAM del modo de página se mejoró posteriormente con una pequeña modificación que redujo aún más la latencia. Las DRAM con esta mejora se denominaron DRAM de modo de página rápida (DRAM FPM). En el modo de página DRAM, CAS se afirmó antes de proporcionar la dirección de la columna. En FPM DRAM, la dirección de la columna podría proporcionarse mientras CAS todavía no estaba confirmado. La dirección de la columna se propagó a través de la ruta de datos de la dirección de la columna, pero no generó datos en los pines de datos hasta que se afirmó CAS. Antes de que se afirmara CAS, los pines de salida de datos se mantenían en Z alto. FPM DRAM redujo la latencia tCAC. La DRAM de modo de página rápida se introdujo en 1986 y se usó con Intel 80486.
Columna estática es una variante del modo de página rápida en el que no es necesario almacenar la dirección de la columna, sino que las entradas de la dirección se pueden cambiar con CAS mantenido bajo, y la salida de datos se actualizará en consecuencia unos nanosegundos más tarde.
Modo Nibble es otra variante en la que se puede acceder a cuatro ubicaciones secuenciales dentro de la fila con cuatro pulsos consecutivos de CAS. La diferencia con el modo de página normal es que las entradas de dirección no se utilizan para los bordes del segundo al cuarto CAS; se generan internamente a partir de la dirección proporcionada para el primer borde CAS.
DRAM de salida de datos extendida
La DRAM de salida de datos extendida (EDO DRAM) fue inventada y patentada en la década de 1990 por Micron Technology, quien luego otorgó licencias de tecnología a muchos otros fabricantes de memoria. EDO RAM, a veces denominada DRAM habilitada para modo de hiperpágina, es similar a la DRAM de modo de página rápida con la característica adicional de que se puede iniciar un nuevo ciclo de acceso mientras se mantiene activa la salida de datos del ciclo anterior. Esto permite una cierta cantidad de superposición en la operación (canalización), lo que permite un rendimiento algo mejorado. Es hasta un 30 % más rápido que FPM DRAM, que comenzó a reemplazar en 1995 cuando Intel presentó el conjunto de chips 430FX con compatibilidad con EDO DRAM. Independientemente de las ganancias de rendimiento, los SIMM FPM y EDO se pueden usar indistintamente en muchas (pero no en todas) las aplicaciones.
Para ser precisos, EDO DRAM comienza la salida de datos en el borde descendente de CAS, pero no detiene la salida cuando CAS vuelve a subir. Mantiene la salida válida (extendiendo así el tiempo de salida de los datos) hasta que se desactive RAS, o se desactive una nueva CAS el flanco descendente selecciona una dirección de columna diferente.
El EDO de ciclo único tiene la capacidad de realizar una transacción de memoria completa en un ciclo de reloj. De lo contrario, cada acceso secuencial a la RAM dentro de la misma página toma dos ciclos de reloj en lugar de tres, una vez que se ha seleccionado la página. El rendimiento y las capacidades de EDO crearon una oportunidad para reducir la inmensa pérdida de rendimiento asociada con la falta de caché L2 en las PC básicas de bajo costo. Esto también fue bueno para las computadoras portátiles debido a las dificultades con su factor de forma limitado y las limitaciones de duración de la batería. Además, para los sistemas con caché L2, la disponibilidad de la memoria EDO mejoró la latencia de memoria promedio vista por las aplicaciones en comparación con las implementaciones anteriores de FPM.
La EDO DRAM de ciclo único se volvió muy popular en las tarjetas de video a fines de la década de 1990. Era de muy bajo costo, pero casi tan eficiente para el rendimiento como la VRAM mucho más costosa.
DRAM EDO de ráfaga
Una evolución de EDO DRAM, burst EDO DRAM (BEDO DRAM), podría procesar cuatro direcciones de memoria en una ráfaga, para un máximo de 5‐1‐1‐1, ahorrando tres relojes adicionales sobre la memoria EDO diseñada de manera óptima. Se hizo agregando un contador de direcciones en el chip para realizar un seguimiento de la siguiente dirección. BEDO también agregó una etapa de canalización que permite dividir el ciclo de acceso a la página en dos partes. Durante una operación de lectura de memoria, la primera parte accedió a los datos de la matriz de memoria a la etapa de salida (segundo pestillo). La segunda parte condujo el bus de datos desde este pestillo al nivel lógico apropiado. Dado que los datos ya están en el búfer de salida, se logra un tiempo de acceso más rápido (hasta un 50 % para grandes bloques de datos) que con EDO tradicional.
Aunque BEDO DRAM mostró una optimización adicional sobre EDO, cuando estuvo disponible, el mercado había realizado una inversión significativa en DRAM síncrona o SDRAM. Aunque BEDO RAM era superior a SDRAM en algunos aspectos, esta última tecnología desplazó rápidamente a BEDO.
RAM dinámica síncrona
La RAM dinámica síncrona (SDRAM) revisa significativamente la interfaz de memoria asíncrona y agrega una línea de reloj (y una de habilitación de reloj). Todas las demás señales se reciben en el flanco ascendente del reloj.
Las entradas RAS y CAS ya no actúan como luces estroboscópicas, sino en cambio, junto con NOSOTROS, parte de un comando de 3 bits controlado por una nueva luz estroboscópica baja activa, selección de chip o CS:
CS | RAS | CAS | Nosotros | Dirección | Comando |
---|---|---|---|---|---|
H | x | x | x | x | Inhibición del comando (sin operación) |
L | H | H | H | x | Sin operación |
L | H | H | L | x | Burst Terminate: detenga una lectura o escriba estallar en progreso. |
L | H | L | H | Columna | Lea desde la fila actualmente activa. |
L | H | L | L | Columna | Escribe a fila activa actualmente. |
L | L | H | H | Row | Activar una fila para leer y escribir. |
L | L | H | L | x | Precarga (desactivar) la fila actual. |
L | L | L | H | x | Refrigerio automático: refrescar una fila de cada banco, utilizando un contador interno. |
L | L | L | L | Modo | Registro del modo de carga: dirección bus especifica el modo de operación DRAM. |
La función de la línea OE se amplía a un "DQM" señal, que controla la entrada de datos (escrituras) además de la salida de datos (lecturas). Esto permite que los chips DRAM sean más anchos que 8 bits y aún admitan escrituras de granularidad de bytes.
Muchos parámetros de temporización permanecen bajo el control del controlador DRAM. Por ejemplo, debe transcurrir un tiempo mínimo entre la activación de una fila y un comando de lectura o escritura. Se debe programar un parámetro importante en el propio chip SDRAM, a saber, la latencia CAS. Este es el número de ciclos de reloj permitidos para operaciones internas entre un comando de lectura y la primera palabra de datos que aparece en el bus de datos. El "registro de modo de carga" El comando se utiliza para transferir este valor al chip SDRAM. Otros parámetros configurables incluyen la longitud de las ráfagas de lectura y escritura, es decir, el número de palabras transferidas por comando de lectura o escritura.
El cambio más significativo, y la razón principal por la que la SDRAM reemplazó a la RAM asíncrona, es la compatibilidad con varios bancos internos dentro del chip DRAM. Usando algunos bits de "dirección bancaria" que acompañan a cada comando, se puede activar un segundo banco y comenzar a leer datos mientras se está realizando una lectura del primer banco. Al alternar los bancos, un dispositivo SDRAM puede mantener el bus de datos continuamente ocupado, de una manera que la DRAM asíncrona no puede.
DRAM síncrona de velocidad de datos única
SDRAM de velocidad de datos única (SDR SDRAM o SDR) es la generación original de SDRAM; hizo una sola transferencia de datos por ciclo de reloj.
DRAM síncrona de doble velocidad de datos
SDRAM de doble velocidad de datos (DDR SDRAM o DDR) fue un desarrollo posterior de SDRAM, utilizado en la memoria de PC a partir de 2000. Las versiones posteriores se numeran secuencialmente (DDR2, DDR3, etc). DDR SDRAM realiza internamente accesos de doble ancho a la velocidad del reloj y utiliza una interfaz de doble velocidad de datos para transferir la mitad en cada borde del reloj. DDR2 y DDR3 aumentaron este factor a 4x y 8x, respectivamente, ofreciendo ráfagas de 4 y 8 palabras en 2 y 4 ciclos de reloj, respectivamente. La tasa de acceso interno prácticamente no ha cambiado (200 millones por segundo para memoria DDR-400, DDR2-800 y DDR3-1600), pero cada acceso transfiere más datos.
DRAM Rambus directa
Direct RAMBUS DRAM (DRDRAM) fue desarrollado por Rambus. Soportado por primera vez en placas base en 1999, estaba destinado a convertirse en un estándar de la industria, pero fue superado por DDR SDRAM, lo que lo hizo obsoleto técnicamente en 2003.
DRAM de latencia reducida
La DRAM de latencia reducida (RLDRAM) es una SDRAM de doble velocidad de datos (DDR) de alto rendimiento que combina un acceso rápido y aleatorio con un gran ancho de banda, destinada principalmente a aplicaciones de redes y almacenamiento en caché.
RAM de gráficos
Las RAM de gráficos son DRAM asíncronas y síncronas diseñadas para tareas relacionadas con gráficos, como la memoria de textura y los búferes de cuadros, que se encuentran en las tarjetas de video.
DRAM de vídeo
La DRAM de vídeo (VRAM) es una variante de la DRAM con dos puertos que antes se usaba habitualmente para almacenar el búfer de fotogramas en algunos adaptadores gráficos.
DRAM de ventana
Window DRAM (WRAM) es una variante de VRAM que alguna vez se usó en adaptadores de gráficos como Matrox Millennium y ATI 3D Rage Pro. WRAM fue diseñado para funcionar mejor y costar menos que VRAM. WRAM ofreció hasta un 25 % más de ancho de banda que VRAM y aceleró las operaciones gráficas de uso común, como el dibujo de texto y el relleno de bloques.
DRAM multibanco
La DRAM multibanco (MDRAM) es un tipo de DRAM especializada desarrollada por MoSys. Está construido a partir de pequeños bancos de memoria de 256 kB, que funcionan de forma intercalada, proporcionando anchos de banda adecuados para tarjetas gráficas a un menor costo para memorias como SRAM. MDRAM también permite operaciones en dos bancos en un solo ciclo de reloj, lo que permite que ocurran múltiples accesos simultáneos si los accesos fueran independientes. MDRAM se utilizó principalmente en tarjetas gráficas, como las que cuentan con los conjuntos de chips ET6x00 de Tseng Labs. Las placas basadas en este conjunto de chips a menudo tenían la capacidad inusual de 2,25 MB debido a la capacidad de MDRAM para implementarse más fácilmente con tales capacidades. Una tarjeta gráfica con 2,25 MB de MDRAM tenía suficiente memoria para proporcionar color de 24 bits con una resolución de 1024 × 768, una configuración muy popular en ese momento.
RAM de gráficos sincrónicos
La RAM de gráficos sincrónicos (SGRAM) es una forma especializada de SDRAM para adaptadores de gráficos. Agrega funciones como enmascaramiento de bits (escribir en un plano de bits específico sin afectar a los demás) y escritura en bloque (llenar un bloque de memoria con un solo color). A diferencia de VRAM y WRAM, SGRAM tiene un solo puerto. Sin embargo, puede abrir dos páginas de memoria a la vez, lo que simula la naturaleza de puerto dual de otras tecnologías de RAM de video.
Gráficos doble velocidad de datos SDRAM
La SDRAM de doble velocidad de datos para gráficos es un tipo de SDRAM DDR especializada diseñada para usarse como la memoria principal de las unidades de procesamiento de gráficos (GPU). GDDR SDRAM es distinto de los tipos básicos de DDR SDRAM como DDR3, aunque comparten algunas tecnologías centrales. Sus características principales son frecuencias de reloj más altas tanto para el núcleo DRAM como para la interfaz de E/S, lo que proporciona un mayor ancho de banda de memoria para las GPU. A partir de 2020, hay siete generaciones sucesivas de GDDR: GDDR2, GDDR3, GDDR4, GDDR5, GDDR5X, GDDR6 y GDDR6X.
RAM pseudoestática
La RAM pseudoestática (PSRAM o PSDRAM) es una RAM dinámica con circuitos integrados de actualización y control de direcciones para que se comporte de manera similar a la RAM estática (SRAM). Combina la alta densidad de DRAM con la facilidad de uso de SRAM real. PSRAM se utiliza en el iPhone de Apple y otros sistemas integrados como la plataforma XFlar.
Algunos componentes de DRAM tienen un "modo de actualización automática". Si bien esto involucra gran parte de la misma lógica que se necesita para la operación pseudoestática, este modo a menudo es equivalente a un modo de espera. Se proporciona principalmente para permitir que un sistema suspenda la operación de su controlador DRAM para ahorrar energía sin perder los datos almacenados en DRAM, en lugar de permitir la operación sin un controlador DRAM separado como es el caso de los PSRAM mencionados.
MoSys vendió una variante integrada de PSRAM con el nombre 1T-SRAM. Es un conjunto de pequeños bancos de DRAM con un caché de SRAM en el frente para que se comporte como una verdadera SRAM. Se utiliza en las consolas de videojuegos Nintendo GameCube y Wii.
La HyperRAM de Cypress Semiconductor es un tipo de PSRAM compatible con una interfaz HyperBus u Octal xSPI de 8 pines compatible con JEDEC.
Contenido relacionado
Gama dinámica
Submarino tipo XXI
Serie Coleco Telstar