Memoria flash

Compartir Imprimir Citar
Una unidad flash USB desmontada. El chip de la izquierda es memoria flash. El controlador está a la derecha.

La memoria flash es un medio de almacenamiento de memoria de computadora electrónico no volátil que se puede borrar y reprogramar eléctricamente. Los dos tipos principales de memoria flash, NOR flash y NAND flash, reciben su nombre de las puertas lógicas NOR y NAND. Ambos usan el mismo diseño de celda, que consta de MOSFET de puerta flotante. Difieren a nivel de circuito dependiendo de si el estado de la línea de bits o de las líneas de palabras es alto o bajo: en NAND flash, la relación entre la línea de bits y las líneas de palabras se asemeja a una puerta NAND; en flash NOR, se asemeja a una puerta NOR.

La memoria flash, un tipo de memoria de puerta flotante, se inventó en Toshiba en 1980 y se basa en la tecnología EEPROM. Toshiba comenzó a comercializar la memoria flash en 1987. Las EPROM tenían que borrarse por completo antes de poder reescribirlas. Sin embargo, la memoria flash NAND se puede borrar, escribir y leer en bloques (o páginas), que generalmente son mucho más pequeños que el dispositivo completo. La memoria flash NOR permite escribir una sola palabra de máquina, en una ubicación borrada, o leerla de forma independiente. Un dispositivo de memoria flash generalmente consta de uno o más chips de memoria flash (cada uno con muchas celdas de memoria flash), junto con un chip controlador de memoria flash separado.

El tipo NAND se encuentra principalmente en tarjetas de memoria, unidades flash USB, unidades de estado sólido (las producidas desde 2009), teléfonos básicos, teléfonos inteligentes y productos similares, para almacenamiento general y transferencia de datos. La memoria flash NAND o NOR también se usa a menudo para almacenar datos de configuración en numerosos productos digitales, una tarea que antes era posible gracias a la EEPROM o la RAM estática alimentada por batería. Una desventaja clave de la memoria flash es que solo puede soportar una cantidad relativamente pequeña de ciclos de escritura en un bloque específico.

La memoria flash se usa en computadoras, PDA, reproductores de audio digital, cámaras digitales, teléfonos móviles, sintetizadores, videojuegos, instrumentación científica, robótica industrial y electrónica médica. La memoria flash tiene un tiempo de acceso de lectura rápido, pero no es tan rápido como la RAM o la ROM estática. En los dispositivos portátiles, se prefiere utilizar la memoria flash debido a su resistencia mecánica a los golpes, ya que las unidades mecánicas son más propensas a sufrir daños mecánicos.

Debido a que los ciclos de borrado son lentos, los grandes tamaños de bloque utilizados en el borrado de la memoria flash le otorgan una ventaja de velocidad significativa sobre las EEPROM que no son flash cuando se escriben grandes cantidades de datos. A partir de 2019, la memoria flash cuesta mucho menos que la EEPROM programable por bytes y se ha convertido en el tipo de memoria dominante dondequiera que un sistema requiera una cantidad significativa de almacenamiento de estado sólido no volátil. Sin embargo, las EEPROM todavía se usan en aplicaciones que requieren solo pequeñas cantidades de almacenamiento, como en la detección de presencia en serie.

Los paquetes de memoria flash pueden usar el apilamiento de troqueles con vías de silicio y varias docenas de capas de celdas 3D TLC NAND (por troquel) simultáneamente para lograr capacidades de hasta 1 tebibyte por paquete usando 16 troqueles apilados y un controlador flash integrado como un troquel separado dentro del paquete.

Historia

Antecedentes

Los orígenes de la memoria flash se remontan al desarrollo del MOSFET de puerta flotante (FGMOS), también conocido como transistor de puerta flotante. El MOSFET original (transistor de efecto de campo de semiconductor de óxido de metal), también conocido como transistor MOS, fue inventado por el ingeniero egipcio Mohamed M. Atalla y el ingeniero coreano Dawon Kahng en Bell Labs en 1959. Kahng desarrolló una variación, el MOSFET de puerta flotante, con el ingeniero chino Simon Min Sze en Bell Labs en 1967. Propusieron que podría usarse como celdas de memoria de puerta flotante para almacenar una forma de memoria programable de solo lectura (PROM) que es no volátil y reprogramable.

Los primeros tipos de memoria de puerta flotante incluían EPROM (PROM borrable) y EEPROM (PROM borrable eléctricamente) en la década de 1970. Sin embargo, las primeras memorias de puerta flotante requerían que los ingenieros construyeran una celda de memoria para cada bit de datos, lo que resultó ser engorroso, lento y costoso, restringiendo la memoria de puerta flotante a aplicaciones de nicho en la década de 1970, como equipo militar y los primeros teléfonos móviles experimentales.

Invención y comercialización

Fujio Masuoka, mientras trabajaba para Toshiba, propuso un nuevo tipo de memoria de puerta flotante que permitía borrar secciones completas de la memoria de forma rápida y sencilla, aplicando un voltaje a un solo cable conectado a un grupo de celdas. Esto condujo a la invención de la memoria flash de Masuoka en Toshiba en 1980. Según Toshiba, el nombre "flash" fue sugerido por el colega de Masuoka, Shōji Ariizumi, porque el proceso de borrado de los contenidos de la memoria le recordaba al flash de una cámara. Masuoka y sus colegas presentaron la invención de NOR flash en 1984, y luego NAND flash en el IEEE 1987 International Electron Devices Meeting (IEDM) celebrado en San Francisco.

Toshiba lanzó comercialmente la memoria flash NAND en 1987. Intel Corporation presentó el primer chip flash tipo NOR comercial en 1988. La memoria flash basada en NOR tiene largos tiempos de borrado y escritura, pero proporciona direcciones completas y buses de datos, lo que permite el acceso aleatorio a cualquier memoria. localización. Esto lo convierte en un reemplazo adecuado para los chips de memoria de solo lectura (ROM) más antiguos, que se utilizan para almacenar código de programa que rara vez necesita actualizarse, como el BIOS de una computadora o el firmware de los decodificadores. Su resistencia puede ser desde tan solo 100 ciclos de borrado para una memoria flash en chip, hasta 10,000 o 100,000 ciclos de borrado más típicos, hasta 1,000,000 de ciclos de borrado. El flash basado en NOR fue la base de los primeros medios extraíbles basados en flash; CompactFlash se basó originalmente en él, aunque las tarjetas posteriores se trasladaron a NAND flash menos costosas.

NAND flash ha reducido los tiempos de borrado y escritura, y requiere menos área de chip por celda, lo que permite una mayor densidad de almacenamiento y un menor costo por bit que NOR flash. Sin embargo, la interfaz de E/S de NAND flash no proporciona un bus de direcciones externo de acceso aleatorio. Más bien, los datos deben leerse por bloques, con tamaños de bloque típicos de cientos a miles de bits. Esto hace que NAND flash no sea adecuado como reemplazo directo de la ROM del programa, ya que la mayoría de los microprocesadores y microcontroladores requieren acceso aleatorio a nivel de byte. En este sentido, NAND flash es similar a otros dispositivos de almacenamiento de datos secundarios, como discos duros y medios ópticos, y por lo tanto es muy adecuado para su uso en dispositivos de almacenamiento masivo, como tarjetas de memoria y unidades de estado sólido (SSD). Las tarjetas de memoria flash y los SSD almacenan datos utilizando varios chips de memoria flash NAND.

El primer formato de tarjeta de memoria extraíble basado en NAND fue SmartMedia, lanzado en 1995. Le siguieron muchos otros, incluidos MultiMediaCard, Secure Digital, Memory Stick y xD-Picture Card.

Desarrollos posteriores

Una nueva generación de formatos de tarjetas de memoria, incluidos RS-MMC, miniSD y microSD, cuentan con factores de forma extremadamente pequeños. Por ejemplo, la tarjeta microSD tiene un área de poco más de 1,5 cm2, con un grosor de menos de 1 mm.

NAND flash ha alcanzado niveles significativos de densidad de memoria como resultado de varias tecnologías importantes que se comercializaron entre finales de la década de 2000 y principios de la de 2010.

La tecnología de celdas multinivel (MLC) almacena más de un bit en cada celda de memoria. NEC demostró la tecnología de celdas multinivel (MLC) en 1998, con un chip de memoria flash de 80 Mb que almacena 2 bits por celda. STMicroelectronics también demostró MLC en 2000, con un chip de memoria flash NOR de 64 MB. En 2009, Toshiba y SanDisk introdujeron chips flash NAND con tecnología QLC que almacenan 4 bits por celda y tienen una capacidad de 64 Gbit. Samsung Electronics introdujo la tecnología de celda de triple nivel (TLC) que almacena 3 bits por celda y comenzó a producir en masa chips NAND con tecnología TLC en 2010.

Relámpago de trampa de carga

La tecnología de flash de trampa de carga (CTF) reemplaza la compuerta flotante de polisilicio, que se intercala entre un óxido de compuerta de bloqueo arriba y un óxido de túnel debajo, con una capa de nitruro de silicio aislante eléctricamente; la capa de nitruro de silicio atrapa electrones. En teoría, CTF es menos propenso a la fuga de electrones, lo que proporciona una mejor retención de datos.

Debido a que CTF reemplaza el polisilicio con un nitruro eléctricamente aislante, permite celdas más pequeñas y mayor resistencia (menor degradación o desgaste). Sin embargo, los electrones pueden quedar atrapados y acumularse en el nitruro, lo que lleva a la degradación. Las fugas se exacerban a altas temperaturas ya que los electrones se excitan más con el aumento de las temperaturas. Sin embargo, la tecnología CTF aún utiliza un óxido de túnel y una capa de bloqueo, que son los puntos débiles de la tecnología, ya que aún pueden dañarse de la forma habitual (el óxido de túnel puede degradarse debido a campos eléctricos extremadamente altos y la capa de bloqueo debido al ánodo). Inyección en agujero caliente (AHHI).

La degradación o el desgaste de los óxidos es la razón por la que la memoria flash tiene una resistencia limitada y la retención de datos disminuye (el potencial de pérdida de datos aumenta) con el aumento de la degradación, ya que los óxidos pierden sus características de aislamiento eléctrico a medida que se degradan. Los óxidos deben aislar contra los electrones para evitar que se escapen, lo que provocaría la pérdida de datos.

En 1991, los investigadores de NEC, incluidos N. Kodama, K. Oyama y Hiroki Shirai, describieron un tipo de memoria flash con un método de trampa de carga. En 1998, Boaz Eitan de Saifun Semiconductors (posteriormente adquirida por Spansion) patentó una tecnología de memoria flash llamada NROM que aprovechaba una capa de captura de carga para reemplazar la puerta flotante convencional utilizada en los diseños de memoria flash convencionales. En 2000, un equipo de investigación de Advanced Micro Devices (AMD) dirigido por Richard M. Fastow, el ingeniero egipcio Khaled Z. Ahmed y el ingeniero jordano Sameer Haddad (que luego se unió a Spansion) demostraron un mecanismo de captura de carga para las celdas de memoria flash NOR. Posteriormente, AMD y Fujitsu comercializaron CTF en 2002. La tecnología 3D V-NAND (NAND vertical) apila celdas de memoria flash NAND verticalmente dentro de un chip utilizando la tecnología 3D charge trap flash (CTP). La tecnología 3D V-NAND fue anunciada por primera vez por Toshiba en 2007, y el primer dispositivo, con 24 capas, fue comercializado por primera vez por Samsung Electronics en 2013.

Tecnología de circuitos integrados 3D

La tecnología de circuito integrado 3D (3D IC) apila chips de circuito integrado (IC) verticalmente en un solo paquete de chip 3D IC. Toshiba introdujo la tecnología IC 3D en la memoria flash NAND en abril de 2007, cuando presentó un chip de memoria flash NAND integrado compatible con eMMC de 16 GB (número de producto THGAM0G7D8DBAI6, a menudo abreviado como THGAM en los sitios web para consumidores)., que se fabricó con ocho chips flash NAND de 2 GB apilados. En septiembre de 2007, Hynix Semiconductor (ahora SK Hynix) introdujo la tecnología IC 3D de 24 capas, con un chip de memoria flash de 16 GB que se fabricó con 24 chips flash NAND apilados usando una oblea proceso de unión. Toshiba también usó un IC 3D de ocho capas para su chip flash TGBM de 32 GB en 2008. En 2010, Toshiba usó un IC 3D de 16 capas para su chip flash TGBM de 128 GB chip flash TGBM2, que se fabricó con 16 chips apilados de 8 GB. En la década de 2010, los circuitos integrados 3D tuvieron un uso comercial generalizado para la memoria flash NAND en dispositivos móviles.

A partir de agosto de 2017, están disponibles tarjetas microSD con una capacidad de hasta 400 GB (400 mil millones de bytes). El mismo año, Samsung combinó el apilamiento de chips IC 3D con sus tecnologías 3D V-NAND y TLC para fabricar su chip de memoria flash KLUFG8R1EM de 512 GB con ocho chips V-NAND de 64 capas apilados.. En 2019, Samsung produjo un chip flash de 1024 GB, con ocho chips V-NAND de 96 capas apilados y con tecnología QLC.

Principios de funcionamiento

Una célula de memoria flash

La memoria flash almacena información en una serie de celdas de memoria hechas de transistores de puerta flotante. En los dispositivos de celda de un solo nivel (SLC), cada celda almacena solo un bit de información. Los dispositivos de celda de varios niveles (MLC), incluidos los dispositivos de celda de triple nivel (TLC), pueden almacenar más de un bit por celda.

La compuerta flotante puede ser conductora (generalmente de polisilicio en la mayoría de los tipos de memoria flash) o no conductora (como en la memoria flash de SONOS).

MOSFET de puerta flotante

En la memoria flash, cada celda de memoria se asemeja a un transistor de efecto de campo (MOSFET) estándar de metal-óxido-semiconductor excepto que el transistor tiene dos puertas en lugar de una. Las celdas pueden verse como un interruptor eléctrico en el que la corriente fluye entre dos terminales (fuente y drenaje) y es controlada por una puerta flotante (FG) y una puerta de control (CG). El CG es similar a la puerta en otros transistores MOS, pero debajo de este, está el FG aislado por una capa de óxido. El FG se interpone entre el CG y el canal MOSFET. Debido a que el FG está eléctricamente aislado por su capa aislante, los electrones colocados sobre él quedan atrapados. Cuando el FG se carga con electrones, esta carga filtra el campo eléctrico del CG, aumentando así el voltaje umbral (VT) de la celda. Esto significa que el VT de la celda se puede cambiar entre el voltaje de umbral FG sin carga (VT1) y el mayor cargado Voltaje de umbral de FG (VT2) cambiando la carga de FG. Para leer un valor de la celda, se aplica al CG un voltaje intermedio (VI) entre VT1 y VT2. Si el canal conduce en VI, el FG debe estar descargado (si estuviera cargado, no habría conducción porque VI es menor que VT2< /sub>). Si el canal no conduce en el VI, indica que el FG está cargado. El valor binario de la celda se detecta al determinar si fluye corriente a través del transistor cuando se afirma VI en el CG. En un dispositivo de celda multinivel, que almacena más de un bit por celda, se detecta la cantidad de flujo de corriente (en lugar de simplemente su presencia o ausencia), para determinar con mayor precisión el nivel de carga en el FG.

Los MOSFET de compuerta flotante se denominan así porque hay una capa de óxido de túnel eléctricamente aislante entre la compuerta flotante y el silicio, por lo que la compuerta "flota" por encima del silicio. El óxido mantiene los electrones confinados en la puerta flotante. La degradación o el desgaste (y la duración limitada de la memoria flash de puerta flotante) se producen debido al campo eléctrico extremadamente alto (10 millones de voltios por centímetro) que experimenta el óxido. Tales densidades de alto voltaje pueden romper los enlaces atómicos con el tiempo en el óxido relativamente delgado, degradando gradualmente sus propiedades de aislamiento eléctrico y permitiendo que los electrones queden atrapados y pasen libremente (fugas) desde la puerta flotante hacia el óxido, lo que aumenta la probabilidad de pérdida de datos. ya que los electrones (cuya cantidad se usa para representar diferentes niveles de carga, cada uno asignado a una combinación diferente de bits en MLC Flash) normalmente están en la puerta flotante. Esta es la razón por la cual la retención de datos disminuye y el riesgo de pérdida de datos aumenta con el aumento de la degradación. El óxido de silicio en una celda se degrada con cada operación de borrado. La degradación aumenta la cantidad de carga negativa en la celda con el tiempo debido a los electrones atrapados en el óxido y niega parte del voltaje de la puerta de control, esto con el tiempo también hace que el borrado de la celda sea más lento, para mantener el rendimiento y la confiabilidad del chip NAND., la celda debe retirarse del uso. La resistencia también disminuye con el número de bits en una celda. Con más bits en una celda, la cantidad de estados posibles (cada uno representado por un nivel de voltaje diferente) en una celda aumenta y es más sensible a los voltajes utilizados para la programación. Los voltajes se pueden ajustar para compensar la degradación del óxido de silicio y, a medida que aumenta el número de bits, también aumenta el número de estados posibles y, por lo tanto, la celda tolera menos los ajustes de los voltajes de programación, porque hay menos espacio entre los niveles de voltaje. que definen cada estado en una celda.

Túnel Fowler–Nordheim

El proceso de mover electrones desde la puerta de control hasta la puerta flotante se denomina túnel Fowler-Nordheim y cambia fundamentalmente las características de la celda al aumentar el voltaje de umbral del MOSFET. Esto, a su vez, cambia la corriente de fuente de drenaje que fluye a través del transistor para un voltaje de puerta dado, que finalmente se usa para codificar un valor binario. El efecto de túnel de Fowler-Nordheim es reversible, por lo que se pueden agregar o quitar electrones de la puerta flotante, procesos tradicionalmente conocidos como escritura y borrado.

Bombas de carga interna

A pesar de la necesidad de voltajes de programación y borrado relativamente altos, prácticamente todos los chips flash actuales requieren solo un voltaje de suministro único y producen los altos voltajes que se requieren usando bombas de carga en el chip.

Más de la mitad de la energía utilizada por un chip flash NAND de 1,8 V se pierde en la propia bomba de carga. Dado que los convertidores elevadores son intrínsecamente más eficientes que las bombas de carga, los investigadores que desarrollan SSD de bajo consumo han propuesto volver a los voltajes de suministro duales Vcc/Vpp utilizados en todos los primeros chips flash, impulsando el alto voltaje Vpp para todos los chips flash en un SSD con un solo convertidor boost externo compartido.

En naves espaciales y otros entornos de alta radiación, la bomba de carga del chip es la primera parte del chip flash que falla, aunque las memorias flash seguirán funcionando, en modo de solo lectura, a niveles de radiación mucho más altos.

NOR flash

Cableado de memoria flash NOR y estructura en silicio

En NOR flash, cada celda tiene un extremo conectado directamente a tierra y el otro extremo conectado directamente a una línea de bit. Este arreglo se llama "NOR flash" porque actúa como una puerta NOR: cuando una de las líneas de palabra (conectada al CG de la celda) se pone alta, el transistor de almacenamiento correspondiente actúa para bajar la línea de bit de salida. NOR flash continúa siendo la tecnología elegida para aplicaciones integradas que requieren un dispositivo de memoria no volátil discreto. Las bajas latencias de lectura características de los dispositivos NOR permiten la ejecución directa de código y el almacenamiento de datos en un solo producto de memoria.

Programación

Programación de una célula de memoria NOR (ajustarla a lógica 0), a través de inyección de electrones calientes
Borrar una célula de memoria NOR (ajustándola a lógica 1), mediante túnel cuántico

Una celda flash NOR de un solo nivel en su estado predeterminado es lógicamente equivalente a un binario "1" valor, porque la corriente fluirá a través del canal bajo la aplicación de un voltaje apropiado a la puerta de control, de modo que el voltaje de la línea de bit se reduzca. Se puede programar una celda flash NOR o establecerla en un "0" binario. valor, por el siguiente procedimiento:

Borrado

Para borrar una celda flash NOR (restablecerla al estado "1"), se aplica un alto voltaje de polaridad opuesta entre el CG y el terminal fuente, tirando del electrones del FG a través de túneles cuánticos. Los chips de memoria flash NOR modernos se dividen en segmentos de borrado (a menudo llamados bloques o sectores). La operación de borrado solo se puede realizar por bloques; todas las celdas en un segmento de borrado deben borrarse juntas. Sin embargo, la programación de celdas NOR generalmente se puede realizar un byte o palabra a la vez.

Cableado de memoria flash NAND y estructura en silicio

Flash NAND

NAND flash también usa transistores de puerta flotante, pero están conectados de una manera que se parece a una puerta NAND: varios transistores están conectados en serie y la línea de bit se baja solo si todas las líneas de palabra se ponen alta (arriba los transistores'VT). Luego, estos grupos se conectan a través de algunos transistores adicionales a una matriz lineal de bits de estilo NOR de la misma manera que los transistores individuales se vinculan en el flash NOR.

En comparación con NOR flash, reemplazar los transistores individuales con grupos enlazados en serie agrega un nivel adicional de direccionamiento. Mientras que NOR flash podría abordar la memoria por página y luego palabra, NAND flash podría abordarla por página, palabra y bit. El direccionamiento a nivel de bits se adapta a las aplicaciones de serie de bits (como la emulación de disco duro), que acceden solo a un bit a la vez. Las aplicaciones Ejecutar en el lugar, por otro lado, requieren que se acceda a cada bit de una palabra simultáneamente. Esto requiere direccionamiento a nivel de palabra. En cualquier caso, tanto los modos de direccionamiento de bit como de palabra son posibles con NOR o NAND flash.

Para leer datos, primero se selecciona el grupo deseado (de la misma manera que se selecciona un solo transistor de una matriz NOR). A continuación, la mayoría de las líneas de palabras se elevan por encima de VT2, mientras que una de ellas se eleva a VI. El grupo en serie conducirá (y bajará la línea de bit) si el bit seleccionado no ha sido programado.

A pesar de los transistores adicionales, la reducción de cables de tierra y líneas de bits permite un diseño más denso y una mayor capacidad de almacenamiento por chip. (Los cables de tierra y las líneas de bit son en realidad mucho más anchas que las líneas en los diagramas). Además, normalmente se permite que la memoria flash NAND contenga una cierta cantidad de fallas (se espera que la memoria flash NOR, como se usa para una BIOS ROM, sea libre de fallas). Los fabricantes intentan maximizar la cantidad de almacenamiento utilizable reduciendo el tamaño de los transistores.

Las celdas NAND Flash se leen analizando su respuesta a varios voltajes.

Escribir y borrar

NAND flash utiliza inyección de túnel para escribir y liberación de túnel para borrar. La memoria flash NAND forma el núcleo de los dispositivos de almacenamiento USB extraíbles conocidos como unidades flash USB, así como la mayoría de los formatos de tarjetas de memoria y unidades de estado sólido disponibles en la actualidad.

La estructura jerárquica de NAND flash comienza en un nivel de celda que establece cadenas, luego páginas, bloques, planos y finalmente un dado. Una cadena es una serie de celdas NAND conectadas en las que la fuente de una celda está conectada al drenaje de la siguiente. Dependiendo de la tecnología NAND, una cadena generalmente consta de 32 a 128 celdas NAND. Las cadenas se organizan en páginas que luego se organizan en bloques en los que cada cadena se conecta a una línea separada llamada línea de bits. Todas las celdas con la misma posición en la cadena están conectadas a través de las puertas de control por una línea de palabras. Un plano contiene un cierto número de bloques que están conectados a través de la misma línea de bits. Un troquel flash consta de uno o más planos y los circuitos periféricos necesarios para realizar todas las operaciones de lectura, escritura y borrado.

La arquitectura de NAND flash significa que los datos se pueden leer y programar (escribir) en páginas, normalmente entre 4 KiB y 16 KiB de tamaño, pero solo se pueden borrar a nivel de bloques completos que constan de varias páginas. Cuando se borra un bloque, todas las celdas se establecen lógicamente en 1. Los datos solo se pueden programar en una sola pasada a una página en un bloque que se borró. Las celdas que se han puesto a 0 por programación solo se pueden restablecer a 1 borrando todo el bloque. Esto significa que antes de que se puedan programar nuevos datos en una página que ya contiene datos, el contenido actual de la página más los nuevos datos deben copiarse en una nueva página borrada. Si hay disponible una página borrada adecuada, los datos se pueden escribir en ella inmediatamente. Si no hay una página borrada disponible, se debe borrar un bloque antes de copiar los datos a una página en ese bloque. La página anterior se marca como no válida y está disponible para borrarla y reutilizarla.

NAND verticales

3D NAND continúa escalando más allá de 2D.

La memoria NAND vertical (V-NAND) o 3D NAND apila celdas de memoria verticalmente y utiliza una arquitectura flash de trampa de carga. Las capas verticales permiten densidades de bit de área más grandes sin requerir celdas individuales más pequeñas. También se vende bajo la marca comercial BiCS Flash, que es una marca comercial de Kioxia Corporation (antes Toshiba Memory Corporation). 3D NAND fue anunciado por primera vez por Toshiba en 2007. V-NAND fue fabricado comercialmente por primera vez por Samsung Electronics en 2013.

Estructura

V-NAND utiliza una geometría flash de trampa de carga (que AMD y Fujitsu introdujeron comercialmente en 2002) que almacena la carga en una película de nitruro de silicio incrustada. Tal película es más robusta contra los defectos puntuales y se puede hacer más gruesa para contener una mayor cantidad de electrones. V-NAND envuelve una celda de trampa de carga plana en una forma cilíndrica. A partir de 2020, las memorias 3D NAND Flash de Micron e Intel usan puertas flotantes; sin embargo, las memorias 3D NAND de Micron de 128 capas y superiores usan una estructura de trampa de carga convencional, debido a la disolución de la asociación entre Micron e Intel. La trampa de carga 3D NAND Flash es más delgada que la puerta flotante 3D NAND. En la NAND 3D de puerta flotante, las celdas de memoria están completamente separadas entre sí, mientras que en la NAND 3D de trampa de carga, los grupos verticales de celdas de memoria comparten el mismo material de nitruro de silicio.

Una celda de memoria individual se compone de una capa plana de polisilicio que contiene un orificio llenado por varios cilindros verticales concéntricos. La superficie de polisilicio del orificio actúa como electrodo de puerta. El cilindro de dióxido de silicio más externo actúa como el dieléctrico de puerta, encerrando un cilindro de nitruro de silicio que almacena carga, encerrando a su vez un cilindro de dióxido de silicio como dieléctrico de túnel que rodea una barra central de polisilicio conductor que actúa como canal conductor.

Las celdas de memoria en diferentes capas verticales no interfieren entre sí, ya que las cargas no pueden moverse verticalmente a través del medio de almacenamiento de nitruro de silicio, y los campos eléctricos asociados con las puertas están estrechamente confinados dentro de cada capa. La colección vertical es eléctricamente idéntica a los grupos enlazados en serie en los que se configura la memoria flash NAND convencional.

Construcción

El crecimiento de un grupo de celdas V-NAND comienza con una pila alterna de capas conductoras (dopadas) de polisilicio y capas aislantes de dióxido de silicio.

El siguiente paso es formar un agujero cilíndrico a través de estas capas. En la práctica, un chip V-NAND de 128 Gibit con 24 capas de celdas de memoria requiere alrededor de 2900 millones de esos agujeros. A continuación, la superficie interna del orificio recibe múltiples recubrimientos, primero dióxido de silicio, luego nitruro de silicio y luego una segunda capa de dióxido de silicio. Finalmente, el agujero se rellena con polisilicio conductor (dopado).

Rendimiento

A partir de 2013, la arquitectura flash V-NAND permite operaciones de lectura y escritura dos veces más rápidas que las NAND convencionales y puede durar hasta 10 veces más, mientras consume un 50 % menos de energía. Ofrecen una densidad de bits física comparable con la litografía de 10 nm, pero pueden aumentar la densidad de bits hasta en dos órdenes de magnitud, dado el uso de V-NAND de hasta varios cientos de capas. A partir de 2020, Samsung está desarrollando chips V-NAND con 160 capas.

Coste

Costo mínimo de NAND 3D de la pared lateral no vertical. La abertura superior se ensancha con más capas, contrarrestando el aumento de densidad de bits.

El costo de la oblea de una NAND 3D es comparable con una NAND Flash plana reducida (32 nm o menos). Sin embargo, con el escalado NAND planar deteniéndose en 16 nm, la reducción del costo por bit puede continuar con 3D NAND comenzando con 16 capas. Sin embargo, debido a la pared lateral no vertical del orificio grabado a través de las capas; incluso una ligera desviación conduce a un costo de bits mínimo, es decir, una regla de diseño equivalente mínima (o densidad máxima), para un número dado de capas; este número mínimo de capa de costo de bits disminuye para un diámetro de orificio más pequeño.

Limitaciones

Borrado de bloques

Una limitación de la memoria flash es que solo se puede borrar un bloque a la vez. Esto generalmente establece todos los bits en el bloque a 1. Comenzando con un bloque recién borrado, se puede programar cualquier ubicación dentro de ese bloque. Sin embargo, una vez que un bit se ha establecido en 0, solo borrando todo el bloque se puede volver a cambiar a 1. En otras palabras, la memoria flash (específicamente NOR flash) ofrece operaciones de programación y lectura de acceso aleatorio, pero no ofrece operaciones aleatorias arbitrarias. -Acceso a operaciones de reescritura o borrado. Sin embargo, una ubicación se puede reescribir siempre que los bits 0 del nuevo valor sean un superconjunto de los valores sobrescritos. Por ejemplo, un valor de nibble puede borrarse a 1111 y luego escribirse como 1110. Las sucesivas escrituras en ese nibble pueden cambiarlo a 1010, luego a 0010 y finalmente a 0000. Esencialmente, el borrado establece todos los bits en 1 y la programación solo puede borrar bits. a 0. Algunos sistemas de archivos diseñados para dispositivos flash hacen uso de esta capacidad de reescritura, por ejemplo, Yaffs1, para representar metadatos de sector. Otros sistemas de archivos flash, como YAFFS2, nunca hacen uso de esta "reescritura" Capacidad: hacen mucho trabajo adicional para cumplir con una 'regla de escritura única'.

Aunque las estructuras de datos en la memoria flash no se pueden actualizar de forma completamente general, esto permite que los miembros se "eliminen" marcándolos como inválidos. Es posible que esta técnica deba modificarse para dispositivos de celdas de niveles múltiples, donde una celda de memoria contiene más de un bit.

Los dispositivos flash comunes, como las unidades flash USB y las tarjetas de memoria, solo proporcionan una interfaz de nivel de bloque o una capa de traducción flash (FTL), que escribe en una celda diferente cada vez para nivelar el dispositivo. Esto evita la escritura incremental dentro de un bloque; sin embargo, ayuda a que el dispositivo no se desgaste prematuramente debido a patrones de escritura intensivos.

Retención de datos

45nm NOR memoria flash ejemplo de retención de datos variable con temperaturas

Los datos almacenados en las celdas flash se pierden constantemente debido a la captura de electrones. La tasa de pérdida aumenta exponencialmente a medida que aumenta la temperatura absoluta. Por ejemplo: para un flash NOR de 45 nm, a las 1000 horas, la pérdida de voltaje umbral (Vt) a 25 grados Celsius es aproximadamente la mitad que a 90 grados Celsius.

Desgaste de la memoria

Otra limitación es que la memoria flash tiene un número finito de ciclos de borrado de programas (normalmente escritos como ciclos P/E). Micron Technology y Sun Microsystems anunciaron un chip de memoria flash SLC NAND clasificado para 1 000 000 ciclos P/E el 17 de diciembre de 2008. Los ciclos P/E más largos de las SSD industriales hablan de su nivel de resistencia y las hacen más confiables para el uso industrial.

El recuento de ciclos garantizado puede aplicarse solo al bloque cero (como es el caso de los dispositivos TSOP NAND) o a todos los bloques (como en NOR). Este efecto se mitiga en algunos controladores de sistemas de archivos o firmware de chips al contar las escrituras y reasignar dinámicamente los bloques para distribuir las operaciones de escritura entre sectores; esta técnica se llama nivelación de desgaste. Otro enfoque es realizar verificación de escritura y reasignación a sectores de repuesto en caso de falla de escritura, una técnica llamada administración de bloques defectuosos (BBM). En el caso de los dispositivos portátiles de consumo, estas técnicas de gestión del desgaste suelen prolongar la vida útil de la memoria flash más allá de la vida útil del propio dispositivo, y es posible que se acepte cierta pérdida de datos en estas aplicaciones. Sin embargo, para el almacenamiento de datos de alta confiabilidad, no es recomendable utilizar una memoria flash que tendría que pasar por una gran cantidad de ciclos de programación. Esta limitación no tiene sentido para 'solo lectura' aplicaciones como clientes ligeros y enrutadores, que se programan solo una vez o, como máximo, algunas veces durante su vida útil.

En diciembre de 2012, los ingenieros taiwaneses de Macronix revelaron su intención de anunciar en la reunión internacional de dispositivos de electrones IEEE de 2012 que habían descubierto cómo mejorar los ciclos de lectura/escritura del almacenamiento flash NAND de 10 000 a 100 millones de ciclos usando un "autocuración" proceso que utilizaba un chip flash con "calentadores integrados que podían templar pequeños grupos de celdas de memoria". El recocido térmico incorporado fue para reemplazar el ciclo de borrado habitual con un proceso local de alta temperatura que no solo borró la carga almacenada, sino que también reparó la tensión inducida por electrones en el chip, dando ciclos de escritura de al menos 100 millones. El resultado fue un chip que podría borrarse y reescribirse una y otra vez, incluso cuando teóricamente debería averiarse. Sin embargo, a pesar de lo prometedor que podría haber sido el avance de Macronix para la industria móvil, no había planes para lanzar un producto comercial con esta capacidad en un futuro cercano.

Leer molestar

El método utilizado para leer la memoria flash NAND puede hacer que las celdas cercanas en el mismo bloque de memoria cambien con el tiempo (se programen). Esto se conoce como perturbación de lectura. El número de umbral de lecturas es generalmente de cientos de miles de lecturas entre operaciones de borrado intermedias. Si lee continuamente desde una celda, esa celda no fallará, sino una de las celdas circundantes en una lectura posterior. Para evitar el problema de perturbación de lectura, el controlador flash normalmente contará el número total de lecturas en un bloque desde el último borrado. Cuando el conteo excede un límite objetivo, el bloque afectado se copia en un nuevo bloque, se borra y luego se libera al grupo de bloques. El bloque original está como nuevo después del borrado. Sin embargo, si el controlador de flash no interviene a tiempo, se producirá un error de alteración de lectura con posible pérdida de datos si los errores son demasiado numerosos para corregirlos con un código de corrección de errores.

Efectos de rayos X

La mayoría de los circuitos integrados flash vienen en paquetes BGA (ball grid array), e incluso los que no vienen a menudo se montan en una PCB junto a otros paquetes BGA. Después del ensamblaje de PCB, las placas con paquetes BGA a menudo se someten a rayos X para ver si las bolas están haciendo las conexiones adecuadas a la almohadilla adecuada o si el BGA necesita volver a trabajar. Estos rayos X pueden borrar bits programados en un chip flash (convertir bits '0' programados en bits '1' borrados). Los bits borrados ("1" bits) no se ven afectados por los rayos X.

Algunos fabricantes ahora fabrican dispositivos de memoria SD y USB a prueba de rayos X.

Acceso de bajo nivel

La interfaz de bajo nivel de los chips de memoria flash difiere de la de otros tipos de memoria, como DRAM, ROM y EEPROM, que admiten la alteración de bits (de cero a uno y de uno a cero) y el acceso aleatorio a través de una dirección accesible desde el exterior. autobuses

La memoria NOR tiene un bus de direcciones externo para lectura y programación. Para la memoria NOR, la lectura y la programación son de acceso aleatorio, y el desbloqueo y el borrado son por bloques. Para la memoria NAND, la lectura y la programación se realizan por páginas, y el desbloqueo y el borrado se realizan por bloques.

NI recuerdos

NOR flash por Intel

La lectura desde la memoria flash NOR es similar a la lectura desde la memoria de acceso aleatorio, siempre que la dirección y el bus de datos estén asignados correctamente. Debido a esto, la mayoría de los microprocesadores pueden usar la memoria flash NOR como memoria de ejecución en el lugar (XIP), lo que significa que los programas almacenados en la memoria flash NOR se pueden ejecutar directamente desde la memoria flash NOR sin necesidad de copiarlos primero en la RAM. El flash NOR se puede programar de una manera de acceso aleatorio similar a la lectura. La programación cambia los bits de uno lógico a cero. Los bits que ya son cero se dejan sin cambios. El borrado debe ocurrir un bloque a la vez y restablece todos los bits en el bloque borrado a uno. Los tamaños de bloque típicos son 64, 128 o 256 KiB.

La gestión de bloques defectuosos es una función relativamente nueva en los chips NOR. En los dispositivos NOR más antiguos que no admiten la gestión de bloques incorrectos, el software o el controlador del dispositivo que controla el chip de memoria debe corregir los bloques que se desgastan, o el dispositivo dejará de funcionar de manera confiable.

Los comandos específicos utilizados para bloquear, desbloquear, programar o borrar memorias NOR difieren para cada fabricante. Para evitar la necesidad de un software de controlador único para cada dispositivo fabricado, los comandos especiales de interfaz de memoria flash común (CFI) permiten que el dispositivo se identifique a sí mismo y a sus parámetros operativos críticos.

Además de su uso como ROM de acceso aleatorio, NOR flash también se puede usar como dispositivo de almacenamiento, aprovechando la programación de acceso aleatorio. Algunos dispositivos ofrecen la función de lectura mientras se escribe, de modo que el código continúa ejecutándose incluso mientras se realiza un programa o una operación de borrado en segundo plano. Para escrituras de datos secuenciales, los chips NOR flash suelen tener velocidades de escritura lentas, en comparación con NAND flash.

El flash NOR típico no necesita un código de corrección de errores.

Memorias NAND

La arquitectura flash NAND fue introducida por Toshiba en 1989. Se accede a estas memorias de forma similar a los dispositivos de bloque, como los discos duros. Cada bloque consta de un número de páginas. Las páginas suelen tener un tamaño de 512, 2048 o 4096 bytes. Asociados con cada página hay unos pocos bytes (normalmente 1/32 del tamaño de los datos) que se pueden utilizar para almacenar una suma de comprobación del código de corrección de errores (ECC).

Los tamaños de bloque típicos incluyen:

Mientras que la lectura y la programación se realizan por página, el borrado solo se puede realizar por bloque.

Los dispositivos NAND también requieren una gestión de bloques defectuosos por parte del software del controlador del dispositivo o de un chip controlador independiente. Algunas tarjetas SD, por ejemplo, incluyen circuitos de controlador para realizar una gestión de bloques defectuosos y nivelar el desgaste. Cuando un software de alto nivel accede a un bloque lógico, el controlador o controlador del dispositivo lo asigna a un bloque físico. Se puede reservar una cantidad de bloques en el chip flash para almacenar tablas de mapeo para tratar con bloques defectuosos, o el sistema puede simplemente verificar cada bloque en el encendido para crear un mapa de bloques defectuosos en la RAM. La capacidad general de la memoria se reduce gradualmente a medida que se marcan más bloques como defectuosos.

NAND se basa en ECC para compensar los bits que pueden fallar espontáneamente durante el funcionamiento normal del dispositivo. Un ECC típico corregirá un error de un bit en cada 2048 bits (256 bytes) usando 22 bits de ECC, o un error de un bit en cada 4096 bits (512 bytes) usando 24 bits de ECC. Si el ECC no puede corregir el error durante la lectura, aún puede detectar el error. Al realizar operaciones de borrado o programación, el dispositivo puede detectar bloques que fallan al programar o borrar y marcarlos como malos. Luego, los datos se escriben en un bloque bueno diferente y se actualiza el mapa de bloques malos.

Los códigos Hamming son los ECC más utilizados para flash SLC NAND. Los códigos Reed-Solomon y los códigos BCH (códigos Bose-Chaudhuri-Hocquenghem) son ECC comúnmente utilizados para flash MLC NAND. Algunos chips flash MLC NAND generan internamente los códigos de corrección de errores BCH adecuados.

La mayoría de los dispositivos NAND se envían de fábrica con algunos bloques defectuosos. Por lo general, se marcan de acuerdo con una estrategia específica de marcado de bloques defectuosos. Al permitir algunos bloques defectuosos, los fabricantes logran rendimientos mucho más altos de lo que sería posible si se tuviera que verificar que todos los bloques son buenos. Esto reduce significativamente los costos de flash NAND y solo disminuye ligeramente la capacidad de almacenamiento de las piezas.

Cuando se ejecuta software desde memorias NAND, a menudo se utilizan estrategias de memoria virtual: primero se debe paginar o copiar el contenido de la memoria en la memoria RAM asignada y ejecutar allí (lo que lleva a la combinación común de NAND + RAM). Una unidad de administración de memoria (MMU) en el sistema es útil, pero esto también se puede lograr con superposiciones. Por esta razón, algunos sistemas usarán una combinación de memorias NOR y NAND, donde una memoria NOR más pequeña se usa como ROM de software y una memoria NAND más grande se divide con un sistema de archivos para usar como área de almacenamiento de datos no volátil.

NAND sacrifica las ventajas de acceso aleatorio y ejecución en el lugar de NOR. NAND se adapta mejor a los sistemas que requieren almacenamiento de datos de alta capacidad. Ofrece mayores densidades, mayores capacidades y menor costo. Tiene borrados más rápidos, escrituras secuenciales y lecturas secuenciales.

Estandarización

Un grupo llamado Open NAND Flash Interface Working Group (ONFI) ha desarrollado una interfaz estandarizada de bajo nivel para chips NAND flash. Esto permite la interoperabilidad entre dispositivos NAND conformes de diferentes proveedores. La versión 1.0 de la especificación ONFI se publicó el 28 de diciembre de 2006. Especifica:

El grupo ONFI cuenta con el respaldo de los principales fabricantes de memoria flash NAND, incluidos Hynix, Intel, Micron Technology y Numonyx, así como de los principales fabricantes de dispositivos que incorporan chips de memoria flash NAND.

Dos importantes fabricantes de dispositivos flash, Toshiba y Samsung, han optado por utilizar una interfaz de su propio diseño conocida como modo alternar (y ahora alternar). Esta interfaz no es compatible de pin a pin con la especificación ONFI. El resultado es que es posible que un producto diseñado para los dispositivos de un proveedor no pueda utilizar los dispositivos de otro proveedor.

Un grupo de proveedores, incluidos Intel, Dell y Microsoft, formó un grupo de trabajo de interfaz de controlador de host de memoria no volátil (NVMHCI). El objetivo del grupo es proporcionar interfaces de programación de software y hardware estándar para subsistemas de memoria no volátil, incluida la "caché flash" dispositivo conectado al bus PCI Express.

Distinción entre flash NOR y NAND

Las memorias flash NOR y NAND difieren en dos aspectos importantes:

NOR y NAND flash obtienen sus nombres de la estructura de las interconexiones entre las celdas de memoria. En NOR flash, las celdas se conectan en paralelo a las líneas de bits, lo que permite que las celdas se lean y programen individualmente. La conexión en paralelo de celdas se parece a la conexión en paralelo de transistores en una puerta CMOS NOR. En NAND flash, las celdas están conectadas en serie, como una puerta CMOS NAND. Las conexiones en serie consumen menos espacio que las paralelas, lo que reduce el costo de NAND flash. Por sí mismo, no evita que las celdas NAND se lean y programen individualmente.

Cada celda flash NOR es más grande que una celda flash NAND (10 F2 frente a 4 F2 incluso cuando se usa exactamente la misma fabricación de dispositivo semiconductor y, por lo tanto, cada transistor, contacto, etc. es exactamente del mismo tamaño, porque las celdas flash NOR requieren un contacto de metal separado para cada celda.

Debido a la conexión en serie y la eliminación de los contactos de la línea de palabras, una cuadrícula grande de celdas de memoria flash NAND ocupará quizás solo el 60 % del área de las celdas NOR equivalentes (suponiendo que la misma resolución de proceso CMOS, por ejemplo, 130 nm, 90 nm o 65 nm). Los diseñadores de NAND flash se dieron cuenta de que el área de un chip NAND y, por lo tanto, el costo, podían reducirse aún más eliminando la dirección externa y los circuitos del bus de datos. En cambio, los dispositivos externos podrían comunicarse con NAND flash a través de registros de datos y comandos de acceso secuencial, que recuperarían y generarían internamente los datos necesarios. Esta elección de diseño hizo imposible el acceso aleatorio de la memoria flash NAND, pero el objetivo de la memoria flash NAND era reemplazar los discos duros mecánicos, no reemplazar las ROM.

AttributeNANDNOR
Aplicación principalAlmacenamiento de archivosEjecución del Código
Capacidad de almacenamientoAltoBaja
Costo por bitBaja
Potencia activaBaja
Potencia de reservaBaja
Escribe velocidadRápido
Velocidad de lecturaRápido
Ejecutar en su lugar (XIP)NoSí.
ConfiabilidadAlto

Resistencia de escritura

La resistencia de escritura de la memoria flash NOR de puerta flotante SLC suele ser igual o mayor que la de la memoria flash NAND, mientras que la memoria flash NOR MLC y la memoria flash NAND tienen capacidades de resistencia similares. Se proporcionan ejemplos de clasificaciones de ciclo de resistencia enumeradas en hojas de datos para NAND y NOR flash, así como en dispositivos de almacenamiento que usan memoria flash.

Tipo de memoria flashValoración de resistencia (esas por bloque)Ejemplos de memoria flash o dispositivo de almacenamiento
SLC NAND100.000Samsung OneNAND KFW4G16Q2M, Toshiba SLC NAND chips Flash, Transcend SD500, Fujitsu S26361-F3298
MLC NAND5.000 a 10.000 para aplicaciones de capacidad media;
1.000 a 3.000 para aplicaciones de alta capacidad
Samsung K9G8G08U0M (Ejemplo para aplicaciones de capacidad media), Memblaze PBlaze4, ADATA SU900, Mushkin Reactor
TLC NAND1.000Samsung SSD 840
QLC NAND?SanDisk X4 NAND tarjetas SD flash
3D SLC NAND100.000Samsung Z-NAND
3D MLC NAND6.000 a 40.000Samsung SSD 850 PRO, Samsung SSD 845DC PRO, Samsung 860 PRO
3D TLC NAND1.000 a 3.000Samsung SSD 850 EVO, Samsung SSD 845DC EVO, Crucial MX300,Memblaze PBlaze5 900, Memblaze PBlaze5 700, Memblaze PBlaze5 910/916,Memblaze PBlaze5 510/516, ADATA SX 8200 PRO (también se vende bajo la marca "XPG Gammix", modelo S11 PRO
3D QLC NAND100 a 1.000Samsung SSD 860 QVO SATA, Intel SSD 660p, Samsung SSD 980 QVO NVMe, Micron 5210 ION, Samsung SSD BM991 NVMe
3D PLC NANDDesconocidaEn desarrollo por SK Hynix (antes Intel) y Kioxia (antes Toshiba Memory).
SLC (floating-gate) NOR100.000 a 1.000.000Numonyx M58BW (Clasificación de resistencia de 100.000 épocas por bloque);
Spansion S29CD016J (Calificación de resistencia de 1.000.000 eras por bloque)
MLC (floating-gate) NOR100.000flash Numonyx J3

Sin embargo, mediante la aplicación de ciertos algoritmos y paradigmas de diseño, como la nivelación de desgaste y el aprovisionamiento excesivo de memoria, la resistencia de un sistema de almacenamiento se puede ajustar para satisfacer requisitos específicos.

Para calcular la longevidad de la memoria flash NAND, se debe tener en cuenta el tamaño del chip de memoria, el tipo de memoria (por ejemplo, SLC/MLC/TLC) y el patrón de uso. Las NAND industriales tienen demanda debido a su capacidad, mayor resistencia y confiabilidad en entornos sensibles.

El rendimiento de 3D NAND puede degradarse a medida que se agregan capas.

A medida que aumenta la cantidad de bits por celda, el rendimiento de NAND flash puede degradarse, aumentando los tiempos de lectura aleatoria a 100 μs para TLC NAND, que es 4 veces el tiempo requerido en SLC NAND y el doble del tiempo requerido en MLC NAND, para lecturas aleatorias.

Sistemas de archivos flash

Debido a las características particulares de la memoria flash, es mejor usarla con un controlador para realizar la nivelación de desgaste y la corrección de errores o con sistemas de archivos flash diseñados específicamente, que distribuyen las escrituras en los medios y se ocupan de los largos tiempos de borrado de la memoria flash NOR. bloques El concepto básico detrás de los sistemas de archivos flash es el siguiente: cuando se va a actualizar el almacén flash, el sistema de archivos escribirá una nueva copia de los datos modificados en un bloque nuevo, reasignará los punteros del archivo y luego borrará el bloque anterior cuando se haya eliminado. tiene tiempo.

En la práctica, los sistemas de archivos flash se usan solo para dispositivos de tecnología de memoria (MTD), que son memorias flash integradas que no tienen un controlador. Las tarjetas de memoria flash extraíbles, los SSD, los chips eMMC/eUFS y las unidades flash USB tienen controladores integrados para nivelar el desgaste y corregir errores, por lo que es posible que el uso de un sistema de archivos flash específico no aporte beneficios.

Capacidad

A menudo se ordenan o apilan varios chips para lograr mayores capacidades para su uso en dispositivos electrónicos de consumo, como reproductores multimedia o GPS. El escalado (aumento) de la capacidad de los chips flash solía seguir la ley de Moore porque se fabrican con muchas de las mismas técnicas y equipos de circuitos integrados. Desde la introducción de 3D NAND, el escalado ya no está necesariamente asociado con la ley de Moore, ya que ya no se utilizan transistores (células) cada vez más pequeños.

Los dispositivos de almacenamiento flash de consumo normalmente se anuncian con tamaños utilizables expresados como una pequeña potencia entera de dos (2, 4, 8, etc.) y una designación de megabytes (MB) o gigabytes (GB); por ejemplo, 512 MB, 8 GB. Esto incluye SSD comercializados como reemplazos de discos duros, de acuerdo con los discos duros tradicionales, que usan prefijos decimales. Por lo tanto, un SSD marcado como "64 GB" es al menos 64 × 10003 bytes (64 GB). La mayoría de los usuarios tendrán un poco menos de capacidad disponible para sus archivos, debido al espacio que ocupan los metadatos del sistema de archivos.

Los chips de memoria flash que contienen tienen un tamaño en múltiplos binarios estrictos, pero la capacidad total real de los chips no se puede utilizar en la interfaz de la unidad. Es considerablemente mayor que la capacidad anunciada para permitir la distribución de escrituras (nivelación de desgaste), repuestos, códigos de corrección de errores y otros metadatos que necesita el firmware interno del dispositivo.

En 2005, Toshiba y SanDisk desarrollaron un chip NAND flash capaz de almacenar 1 GB de datos mediante la tecnología de celdas multinivel (MLC), capaz de almacenar dos bits de datos por celda. En septiembre de 2005, Samsung Electronics anunció que había desarrollado el primer chip de 2 GB del mundo.

En marzo de 2006, Samsung anunció unidades de disco duro flash con una capacidad de 4 GB, esencialmente del mismo orden de magnitud que las unidades de disco duro más pequeñas para computadoras portátiles, y en septiembre de 2006, Samsung anunció un chip de 8 GB producido mediante un proceso de fabricación de 40 nm. En enero de 2008, SanDisk anunció la disponibilidad de sus tarjetas MicroSDHC de 16 GB y SDHC Plus de 32 GB.

Las unidades flash más recientes (a partir de 2012) tienen capacidades mucho mayores, con 64, 128 y 256 GB.

Un desarrollo conjunto de Intel y Micron permitirá la producción de dispositivos flash NAND de 32 capas y 3,5 terabytes (TB) y SSD de tamaño estándar de 10 TB. El dispositivo incluye 5 paquetes de troqueles TLC de 16 × 48 GB, con un diseño de celda de puerta flotante.

Se siguen fabricando chips flash con capacidades inferiores o cercanas a 1 MB (por ejemplo, para BIOS-ROM y aplicaciones integradas).

En julio de 2016, Samsung anunció el Samsung 850 EVO de 4 TB que utiliza su TLC 3D V-NAND de 256 Gbit y 48 capas. En agosto de 2016, Samsung anunció un SSD SAS de 32 TB y 2,5 pulgadas basado en su TLC 3D V-NAND de 512 Gbit y 64 capas. Además, Samsung espera presentar SSD con hasta 100 TB de almacenamiento para 2020.

Tasas de transferencia

Los dispositivos de memoria flash suelen ser mucho más rápidos para leer que para escribir. El rendimiento también depende de la calidad de los controladores de almacenamiento, que se vuelven más críticos cuando los dispositivos están parcialmente llenos. Incluso cuando el único cambio en la fabricación es la contracción por troquel, la ausencia de un controlador apropiado puede resultar en velocidades degradadas.

Aplicaciones

Flash serie

Flash serie: Silicon Storage Tech SST25VF080B

Serial flash es una memoria flash pequeña y de bajo consumo que solo proporciona acceso en serie a los datos; en lugar de direccionar bytes individuales, el usuario lee o escribe en serie grandes grupos contiguos de bytes en el espacio de direcciones. El bus de interfaz de periféricos en serie (SPI) es un protocolo típico para acceder al dispositivo. Cuando se incorpora a un sistema integrado, la memoria flash serial requiere menos cables en la placa de circuito impreso que las memorias flash paralelas, ya que transmite y recibe datos un bit a la vez. Esto puede permitir una reducción en el espacio de la placa, el consumo de energía y el costo total del sistema.

Hay varias razones por las que un dispositivo serie, con menos pines externos que un dispositivo paralelo, puede reducir significativamente el costo total:

Hay dos tipos principales de flash SPI. El primer tipo se caracteriza por páginas pequeñas y uno o más búferes internos de páginas SRAM que permiten leer una página completa en el búfer, modificarla parcialmente y luego volver a escribirla (por ejemplo, Atmel AT45 DataFlash o la tecnología Micron Page Erase NOR Flash). El segundo tipo tiene sectores más grandes donde los sectores más pequeños que se encuentran típicamente en este tipo de flash SPI son de 4 kB, pero pueden llegar a los 64 kB. Dado que este tipo de flash SPI carece de un búfer SRAM interno, la página completa debe leerse y modificarse antes de volver a escribirse, lo que hace que su administración sea lenta. Sin embargo, el segundo tipo es más económico que el primero y, por lo tanto, es una buena opción cuando la aplicación es sombra de código.

Los dos tipos no son fácilmente intercambiables, ya que no tienen el mismo pinout y los conjuntos de comandos son incompatibles.

La mayoría de los FPGA se basan en celdas de configuración SRAM y requieren un dispositivo de configuración externo, a menudo un chip flash en serie, para recargar el flujo de bits de configuración en cada ciclo de encendido.

Almacenamiento de firmware

Con la velocidad cada vez mayor de las CPU modernas, los dispositivos flash paralelos suelen ser mucho más lentos que el bus de memoria de la computadora a la que están conectados. Por el contrario, la SRAM moderna ofrece tiempos de acceso por debajo de los 10 ns, mientras que DDR2 SDRAM ofrece tiempos de acceso por debajo de los 20 ns. Debido a esto, a menudo es deseable ocultar el código almacenado en flash en la RAM; es decir, el código se copia de la memoria flash a la RAM antes de la ejecución, para que la CPU pueda acceder a él a toda velocidad. El firmware del dispositivo puede almacenarse en un chip flash en serie y luego copiarse en SDRAM o SRAM cuando se enciende el dispositivo. El uso de un dispositivo flash en serie externo en lugar de flash en el chip elimina la necesidad de comprometer significativamente el proceso (un proceso de fabricación que es bueno para la lógica de alta velocidad generalmente no es bueno para flash y viceversa). Una vez que se decide leer el firmware como un gran bloque, es común agregar compresión para permitir el uso de un chip flash más pequeño. Desde 2005, muchos dispositivos utilizan la memoria flash NOR en serie para desaprobar la memoria flash NOR paralela para el almacenamiento de firmware. Las aplicaciones típicas para flash serie incluyen el almacenamiento de firmware para discos duros, adaptadores de interfaz de red Ethernet, módems DSL, etc.

Memoria flash como reemplazo de los discos duros

SSD Intel mSATA

Una aplicación más reciente para la memoria flash es como reemplazo de los discos duros. La memoria flash no tiene las limitaciones mecánicas ni las latencias de los discos duros, por lo que una unidad de estado sólido (SSD) es atractiva si se tiene en cuenta la velocidad, el ruido, el consumo de energía y la confiabilidad. Las unidades flash están ganando terreno como dispositivos de almacenamiento secundario para dispositivos móviles; también se utilizan como sustitutos de los discos duros en computadoras de escritorio de alto rendimiento y algunos servidores con arquitecturas RAID y SAN.

Quedan algunos aspectos de los SSD basados en flash que los hacen poco atractivos. El costo por gigabyte de memoria flash sigue siendo significativamente más alto que el de los discos duros. Además, la memoria flash tiene un número finito de ciclos P/E (programar/borrar), pero esto parece estar actualmente bajo control, ya que las garantías de los SSD basados en flash se acercan a las de los discos duros actuales. Además, los archivos eliminados en SSD pueden permanecer por un período de tiempo indefinido antes de que se sobrescriban con datos nuevos; Las técnicas o el software de borrado o trituración que funcionan bien en las unidades de disco duro magnéticas no tienen ningún efecto en las SSD, lo que compromete la seguridad y el examen forense. Sin embargo, debido al llamado comando TRIM empleado por la mayoría de las unidades de estado sólido, que marca las direcciones de bloque lógico ocupadas por el archivo eliminado como no utilizadas para habilitar la recolección de elementos no utilizados, el software de recuperación de datos no puede restaurar archivos eliminados de tales.

Para las bases de datos relacionales u otros sistemas que requieren transacciones ACID, incluso una cantidad modesta de almacenamiento flash puede ofrecer grandes aumentos de velocidad en comparación con las matrices de unidades de disco.

En mayo de 2006, Samsung Electronics anunció dos PC basados en memoria flash, se esperaba que el Q1-SSD y el Q30-SSD estuvieran disponibles en junio de 2006, ambos usaban SSD de 32 GB y, al menos inicialmente, solo estaban disponibles en Corea del Sur. El lanzamiento de Q1-SSD y Q30-SSD se retrasó y finalmente se envió a fines de agosto de 2006.

La primera PC basada en memoria flash que estuvo disponible fue la Sony Vaio UX90, anunciada para pre-pedido el 27 de junio de 2006 y comenzó a distribuirse en Japón el 3 de julio de 2006 con un disco duro de memoria flash de 16 Gb. A fines de septiembre de 2006, Sony actualizó la memoria flash del Vaio UX90 a 32 Gb.

Se ofreció una unidad de estado sólido como opción con el primer MacBook Air presentado en 2008 y, a partir de 2010, todos los modelos se enviaron con una SSD. A partir de finales de 2011, como parte de la iniciativa Ultrabook de Intel, se está enviando un número cada vez mayor de portátiles ultrafinos con SSD estándar.

También existen técnicas híbridas, como la unidad híbrida y ReadyBoost, que intentan combinar las ventajas de ambas tecnologías, usando flash como caché no volátil de alta velocidad para archivos en el disco a los que se hace referencia con frecuencia, pero que rara vez se modifican, como como archivos ejecutables de aplicaciones y sistemas operativos.

Memoria flash como RAM

A partir de 2012, hubo intentos de usar la memoria flash como la memoria principal de la computadora, DRAM.

Archivo o almacenamiento a largo plazo

Los transistores de puerta flotante en el dispositivo de almacenamiento flash mantienen la carga que representa los datos. Esta carga se filtra gradualmente con el tiempo, lo que lleva a una acumulación de errores lógicos, también conocidos como "bit rot" o "un poco de desvanecimiento".

Retención de datos

No está claro cuánto tiempo persistirán los datos en la memoria flash en condiciones de archivo (es decir, temperatura y humedad benignas con acceso poco frecuente con o sin reescritura profiláctica). Hojas de datos de "ATmega" basado en flash de Atmel los microcontroladores generalmente prometen tiempos de retención de 20 años a 85 °C (185 °F) y 100 años a 25 °C (77 °F).

El período de retención varía según los tipos y modelos de almacenamiento flash. Cuando se alimenta y está inactivo, la carga de los transistores que contienen los datos se actualiza de forma rutinaria mediante el firmware del almacenamiento flash. La capacidad de retener datos varía entre los dispositivos de almacenamiento flash debido a las diferencias en el firmware, la redundancia de datos y los algoritmos de corrección de errores.

Un artículo de CMU de 2015 afirma que "los dispositivos flash actuales, que no requieren actualización flash, tienen una edad de retención típica de 1 año a temperatura ambiente." Y ese tiempo de retención disminuye exponencialmente con el aumento de la temperatura. El fenómeno puede ser modelado por la ecuación de Arrhenius.

Configuración de FPGA

Algunos FPGA se basan en celdas de configuración flash que se usan directamente como interruptores (programables) para conectar elementos internos entre sí, usando el mismo tipo de transistor de puerta flotante que las celdas de almacenamiento de datos flash en los dispositivos de almacenamiento de datos.

Industria

Una fuente afirma que, en 2008, la industria de la memoria flash incluye alrededor de 9100 millones de dólares estadounidenses en producción y ventas. Otras fuentes sitúan el mercado de memoria flash en un tamaño de más de 20.000 millones de dólares estadounidenses en 2006, lo que representa más del ocho por ciento del mercado total de semiconductores y más del 34 por ciento del mercado total de memoria de semiconductores. En 2012, el mercado se estimó en $ 26,8 mil millones. Puede llevar hasta 10 semanas producir un chip de memoria flash.

Fabricantes

Los siguientes fueron los mayores fabricantes de memoria flash NAND, a partir del primer trimestre de 2019.

  1. Samsung Electronics – 34,9%
  2. Kioxia – 18.1%
  3. Western Digital Corporation – 14%
  4. Micron Technology – 13,5%
  5. SK Hynix – 10,3%
  6. Intel – 8,7% Nota: SK Hynix adquirió el negocio NAND de Intel a finales de 2021

Samsung sigue siendo el mayor fabricante de memoria flash NAND desde el primer trimestre de 2022.

Envíos

Envíos de memoria flash ()Est. unidades de fabricación
Año(s) Discreta los chips de memoria flash Capacidad de datos de memoria flash (gigabytes) Celdas de memoria MOSFET (millones)
1992 26,000,000 3 24
1993 73,000,000 17 139
1994 112 millones 25 203
1995 235,000,000 38 300
1996 359.000 140 1.121
1997 477,200,000+ 317+ 2.533+
1998 762,195,122 455+ 3,642+
1999 12.800 millones 635+ 5,082+
2000 a 2004 134,217,728.000 (NAND) 1.073.741.824 (NAND)
2005 a 2007 ?
2008 1.226.215.645 (NAND móvil)
2009 1.226.215.645+ (NAND móvil)
2010 7,280.000+
2011 8.700 millones
2012 5.151.515.152 (serial)
2013 ?
2014 ?59.000 millones 118.000.000+
2015 7,692,307,692 (NAND) 85.000 millones 170,000,000,000+
2016 ?100.000 millones 200,000,000,000+
2017 ?148.200 millones 296,400.000+
2018 ?231,640,000,000 463,280,000,000+
2019 ???
2020 ???
1992-2020 45.358.454.134+ chips de memoria 758,057,729,630+ gigabytes 2,321,421,837,044miles de millones de células

Además de los chips de memoria flash individuales, la memoria flash también está integrada en chips de microcontroladores (MCU) y dispositivos de sistema en chip (SoC). La memoria flash está integrada en chips ARM, que han vendido 150 mil millones de unidades en todo el mundo a partir de 2019, y en dispositivos programables de sistema en chip (PSoC), que han vendido 1,1 mil millones de unidades a partir de 2012. Esto suma al menos 151,1 mil millones de chips MCU y SoC con memoria flash integrada, además de los 45,4 mil millones de ventas de chips flash individuales hasta 2015, con un total de al menos 196,5 mil millones de chips que contienen memoria flash.

Flash escalabilidad

Debido a su estructura relativamente simple y a la gran demanda de mayor capacidad, la memoria flash NAND es la tecnología de escalado más agresiva entre los dispositivos electrónicos. La fuerte competencia entre los pocos fabricantes principales solo se suma a la agresividad en la reducción de la regla de diseño MOSFET de puerta flotante o el nodo de tecnología de proceso. Si bien la línea de tiempo de reducción esperada es un factor de dos cada tres años según la versión original de la ley de Moore, esto se ha acelerado recientemente en el caso de NAND flash a un factor de dos cada dos años.

ITRS o compañía201020112012201320142015201620172018
ITRS Flash Roadmap 201132 nm22 nm20 nm18 nm16 nm
ITRS actualizado Flash Roadmap17 nm15 nm14 nm
Samsung
(Samsung 3D NAND)
35–20 nm27 nm21 nm
(MLC, TLC)
19–16 nm
19–10 nm (MLC, TLC)
19–10 nm
V-NAND (24L)
16–10 nm
V-NAND (32L)
16–10 nm12–10 nm12–10 nm
Micron, Intel34–25 nm25 nm20 nm
(MLC + HKMG)
20 nm
(TLC)
16 nm16 nm
3D NAND
16 nm
3D NAND
12 nm
3D NAND
12 nm
3D NAND
Toshiba, WD (SanDisk)43–32 nm
24 nm (Toshiba)
24 nm19 nm
(MLC, TLC)
15 nm15 nm
3D NAND
15 nm
3D NAND
12 nm
3D NAND
12 nm
3D NAND
SK Hynix46–35 nm26 nm20 nm (MLC)16 nm16 nm16 nm12 nm12 nm

A medida que el tamaño de la función MOSFET de las celdas de memoria flash alcance el límite mínimo de 15 a 16 nm, la TLC (3 bits/celda) en combinación con el apilamiento vertical de planos de memoria NAND impulsará más aumentos en la densidad flash. La disminución de la resistencia y el aumento de las tasas de errores de bits no corregibles que acompañan a la reducción del tamaño de las características pueden compensarse mediante mecanismos mejorados de corrección de errores. Incluso con estos avances, puede ser imposible escalar económicamente el destello a dimensiones cada vez más pequeñas a medida que se reduce la cantidad de capacidad de retención de electrones. Muchas nuevas tecnologías prometedoras (como FeRAM, MRAM, PMC, PCM, ReRAM y otras) están bajo investigación y desarrollo como posibles reemplazos más escalables para flash.

Cronología

Fecha de presentaciónChip nameCapacidad del paquete de memoria
Megabits (Mb), Gigabits (Gb), Terabits (Tb)
Tipo de flashTipo de célulaCapas o capas
Estacks of Layers
Fabricante(s)ProcesoZonaRef.
1984??NORSLC1Toshiba??
1985?256 kbNORSLC1Toshiba2.000 nm?
1987??NANDSLC1Toshiba??
1989?1 MbNORSLC1Seeq, Intel??
4 MbNANDSLC1Toshiba1.000 nm
1991?16 MbNORSLC1Mitsubishi600 nm?
1993DD28F032SA32 MbNORSLC1Intel?280 mm2
1994?64 MbNORSLC1NEC400 nm?
1995?16 MbDINORSLC1Mitsubishi, Hitachi??
NANDSLC1Toshiba??
32 MbNANDSLC1Hitachi, Samsung, Toshiba??
34 MbSerieSLC1SanDisk
1996?64 MbNANDSLC1Hitachi, Mitsubishi400 nm?
QLC1NEC
128 MbNANDSLC1Samsung, Hitachi?
1997?32 MbNORSLC1Intel, Sharp400 nm?
NANDSLC1AMD, Fujitsu350 nm
1999?256 MbNANDSLC1Toshiba250 nm?
MLC1Hitachi1
2000?32 MbNORSLC1Toshiba250 nm?
64 MbNORQLC1STMicroelectronics180 nm
512 MbNANDSLC1Toshiba??
2001?512 MbNANDMLC1Hitachi??
1 GibitNANDMLC1Samsung
1Toshiba, SanDisk160 nm?
2002?512 MbNROMMLC1Saifun170 nm?
2 GbNANDSLC1Samsung, Toshiba??
2003?128 MbNORMLC1Intel130 nm?
1 GbNANDMLC1Hitachi
2004?8 GbNANDSLC1Samsung60 nm?
2005?16 GbNANDSLC1Samsung50 nm?
2006?32 GbNANDSLC1Samsung40 nm
Apr-07THGAM128 GbStacked NANDSLCToshiba56 nm252 mm2
Sep-07?128 GbStacked NANDSLCHynix??
2008THGBM256 GbStacked NANDSLCToshiba43 nm353 mm2
2009?32 GbNANDTLCToshiba32 nm113 mm2
64 GbNANDQLCToshiba, SanDisk43 nm?
2010?64 GbNANDSLCHynix20 nm?
TLCSamsung20 nm?
THGBM21 TbStacked NANDQLCToshiba32 nm374 mm2
2011KLMCG8GE4A512 GbStacked NANDMLCSamsung?192 mm2
2013??NANDSLCSK Hynix16 nm?
128 GbV-NANDTLCSamsung10 nm?
2015?256 GbV-NANDTLCSamsung??
2017eUFS 2.1512 GbV-NANDTLC8 de 64Samsung??
768 GbV-NANDQLCToshiba??
KLUFG8R1EM4 TbStacked V-NANDTLCSamsung?150 mm2
2018?1 TbV-NANDQLCSamsung??
1.33 TbV-NANDQLCToshiba?158 mm2
2019?512 GbV-NANDQLCSamsung??
1 TbV-NANDTLCSK Hynix??
eUFS 2.11 TbStacked V-NANDQLC16 de 64Samsung?150 mm2