97 votos

¿Cuál es la diferencia entre la memoria Flash y la EEPROM?

El almacenamiento de memoria Flash y la EEPROM utilizan ambos transistores de puerta flotante para el almacenamiento de datos. ¿Qué difiere entre los dos y por qué Flash es mucho más rápido?

8 votos

80voto

Alex Andronov Puntos 178

Los primeros dispositivos ROM tenían que tener información colocada en ellos a través de medios mecánicos, fotolitográficos u otros (antes de los circuitos integrados, era común usar una rejilla en la que se podían instalar u omitir selectivamente diodos). La primera mejora importante fue una "fuse-PROM" -un chip que contenía una rejilla de diodos fundidos, y transistores de fila que eran lo suficientemente fuertes como para seleccionar una fila y forzar el estado de la salida, lo que permitía quemar los fusibles en los diodos no deseados. Aunque dichos chips eran eléctricamente escribibles, la mayoría de los dispositivos en los que se usarían no tenían la potente tecnología de circuitos necesaria para escribir en ellos. En su lugar, se escribirían utilizando un dispositivo llamado "programador", y luego se instalarían en el equipo que necesitaba ser capaz de leerlos.

La siguiente mejora fue un dispositivo de memoria de carga implantada, que permitía que las cargas fueran implantadas eléctricamente pero no eliminadas. Si estos dispositivos se empaquetaban en envases transparentes a la luz ultravioleta (EPROM), podían borrarse con unos 5-30 minutos de exposición a la luz ultravioleta. Esto permitió reutilizar dispositivos cuyos contenidos no se consideraban valiosos (por ejemplo, versiones con errores o incompletas de software). Poner los mismos chips en un envase opaco permitía venderlos más económicamente para aplicaciones de usuarios finales en las que era poco probable que alguien quisiera borrarlos y reutilizarlos (OTPROM). Una mejora posterior permitió borrar los dispositivos eléctricamente sin la luz UV (EEPROM temprana).

Los dispositivos EEPROM tempranos solo podían borrarse en masa, y la programación requería condiciones muy diferentes a las asociadas con la operación normal; por lo tanto, al igual que los dispositivos PROM/EPROM, generalmente se utilizaban en circuitos que podían leer pero no escribir en ellos. Las mejoras posteriores a EEPROM hicieron posible borrar regiones más pequeñas, si no bytes individuales, y también permitieron que fueran escritos por la misma tecnología que los utilizaba. Sin embargo, el nombre no cambió.

Cuando una tecnología llamada "Flash ROM" apareció, era bastante normal para los dispositivos EEPROM permitir que los bytes individuales fueran borrados y reescritos dentro de un circuito de aplicación. El Flash ROM era en cierto sentido un retroceso funcional ya que el borrado solo podía tener lugar en grandes bloques. Sin embargo, restringir el borrado a grandes bloques permitió almacenar información de manera mucho más compacta de lo que era posible con EEPROM. Además, muchos dispositivos Flash tienen ciclos de escritura más rápidos pero ciclos de borrado más lentos que los típicos dispositivos EEPROM (muchos dispositivos EEPROM tardarían de 1 a 10 ms en escribir un byte, y de 5 a 50 ms en borrar; los dispositivos flash generalmente requerirían menos de 100 µs para escribir, pero algunos requerían cientos de milisegundos para borrar).

No sé si hay una línea clara que divida el flash y el EEPROM, ya que algunos dispositivos que se llamaban "flash" podían ser borrados por byte. Sin embargo, la tendencia actual parece ser utilizar el término "EEPROM" para dispositivos con capacidades de borrado por byte y "flash" para dispositivos que solo admiten borrado en bloques grandes.

0 votos

¿Qué quieres decir con "la memoria Flash almacena la información de forma mucho más compacta de lo que era posible con una EEPROM" y por qué los ciclos de borrado en la memoria Flash pueden ser mayores que los ciclos de escritura?

1 votos

@Frankenstein: Los diseños de circuitos EEPROM generalmente requerían dedicar espacio a los circuitos de borrado en las mismas capas del chip que los circuitos de programación y lectura. Aunque existen una variedad de diseños de circuitos flash, generalmente evitan tal requisito.

0 votos

Gracias +1, pero ¿por qué debería importar esto? ¿Es por esta única razón: la memoria FLASH es más rápida que la EEPROM?

41voto

Nebeli Puntos 31

¡Spoiler: EEPROM en realidad es Flash!

Como brillantemente señaló la respuesta de supercat, EEPROM es una evolución de las antiguas EPROM borrables por rayos UV (las "EE" de EEPROM significan "Electrically Eraseable"). Sin embargo, a pesar de ser una mejora de su antiguo compañero, la forma en que la EEPROM de hoy mantiene la información es exactamente la misma que la memoria flash.

La ÚNICA diferencia principal entre las dos es la lógica de lectura/escritura/borrado.

  • NAND Flash (flash regular):

    Solo puede ser borrado en páginas, es decir, bloques de bytes. Puedes leer y escribir (sobre los no escritos) bytes individuales, pero borrar requiere deshacerse de muchos otros bytes.

    En microcontroladores, generalmente se usa para almacenamiento de firmware. Algunas implementaciones admiten el manejo de flash desde el firmware, en cuyo caso puedes usar esa flash para almacenar información siempre y cuando no interfieras con las páginas utilizadas (de lo contrario, borrarás tu firmware).

  • NOR Flash (también conocida como EEPROM):

    Puede leer, escribir y borrar bytes individuales. Su lógica de control está diseñada de manera que todos los bytes sean accesibles individualmente. Aunque es más lenta que la flash regular, esta característica beneficia a dispositivos electrónicos más pequeños o más antiguos. Por ejemplo, los antiguos televisores y monitores CRT utilizaban EEPROMs para almacenar configuraciones de usuario como brillo, contraste, etc.

    En microcontroladores, eso es lo que generalmente se utiliza para almacenar configuraciones, estados o datos de calibración. Es mejor que la flash para eso, ya que para borrar un solo byte no es necesario recordar (en la RAM) el contenido de la página para reescribirlo.

**Dato Curioso**
Existe la idea errónea común de que *NOR Flash* utiliza *puertas NOR* mientras que *NAND Flash* utiliza *puertas NAND* (y de hecho parece obvio). **Sin embargo, eso no es cierto.** La razón del nombre es el parecido de la lógica de control de cada tipo de memoria con los símbolos esquemáticos de la puerta NAND y la puerta NOR.

1 votos

Gran comentario. Ahora entiendo mejor por qué un SDK de MCU proporcionaría un controlador para emular una EEPROM en su flash.

0 votos

Como lo leí en otras fuentes en línea, "La memoria Flash escribe en 'páginas' y borra en 'bloques'". Sin embargo, creo que el tamaño de las páginas y los bloques pueden ser iguales, es decir, teniendo solo 1 página en cada bloque.

24voto

RelaXNow Puntos 1164

Flash es un tipo de EEPROM (memoria de solo lectura programable y borrable eléctricamente). "Flash" es más un término de marketing que una tecnología específica. Sin embargo, este término ha convergido en significar un tipo de EEPROM optimizado para un tamaño y densidad grandes, generalmente a expensas de bloques de borrado y escritura grandes y una menor resistencia.

10 votos

Por qué todavía lo llaman memoria de solo lectura, ¿no es un poco tonto si se lee y se escribe?

4 votos

@skyler: Es en parte histórico, y en parte tiene sentido. La ROM original (memoria de solo lectura) estaba programada en máscara, lo que significa que se hacía como parte de la construcción del chip. Luego estaban los enlaces fusibles que ponían la P en PROM. La EEPROM de hoy sigue siendo principalmente memoria de solo lectura. El proceso de escritura es mucho más complicado y lento que la lectura, y en este caso desgasta el chip. Este tipo de celdas de memoria de compuerta flotante solo pueden ser borradas y escritas tantas veces antes de que físicamente fallen.

0 votos

¿Puedes escribir un disco duro magnético o un transistor de compuerta flotante más veces?

4voto

dsummersl Puntos 132

La memoria flash es una variación de la EE-PROM que está ganando popularidad. La diferencia principal entre la memoria flash y la EE-PROM está en el procedimiento de borrado. La EE-PROM se puede borrar a nivel de registro, pero la memoria flash debe borrarse ya sea en su totalidad o a nivel de sector.

0 votos

¿Cómo mejoró tu respuesta sobre la que ya estaba aceptada? No me parece que hayas añadido ninguna información o perspectiva a lo que ya se ha dicho.

2voto

Neel Puntos 21

"Almacenamiento Flash" es un término general para almacenamiento dentro de chips de memoria (Memoria No Volátil), en lugar de discos giratorios como disquete, CD, DVD, disco duro, etc.

NOR y NAND son los chips de memoria Flash originales, y fueron inventados por Fujio Masuoka mientras trabajaba para Toshiba alrededor del año 1980. "NOR" y "NAND" se utilizan en la mayoría de las unidades de memoria USB.

El almacenamiento Flash también incluye tanto EEP-ROM (memoria de solo lectura programable eléctricamente borra-escrituras) como NV-RAM (Memoria de Acceso Aleatorio No Volátil). EEP-ROM es más económico, y se utiliza para almacenamiento en la mayoría de los System-on-Chips y dispositivos Android. NV-RAM es más caro, y se utiliza para unidades de estado sólido y almacenamiento en dispositivos Apple.

Los nuevos chips NV-RAM son mucho más rápidos que EEP-ROM y otras tecnologías Flash.

Para más información, visita: http://www.crifan.com/___flash_memory_nand_eeprom_nvram_and_others_zt/

0 votos

¿También se incluyen MRAM, FeRAM y PCRAM en el término "para todo"?

2 votos

DIMMs serán DIMMs independientemente de si son de RAM dinámica o de RAM no volátil. MRAM, FeRAM y PCRAM utilizados como unidades de almacenamiento entran dentro del término general de "almacenamiento Flash".

1 votos

¡Gracias! Desde que descubrí que la memoria Triple Level Cell NAND FLASH tiene ocho niveles en lugar de tres, me he vuelto más consciente (¿cauteloso?) de la terminología.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X