EEPROM vs Flash: resistencia, granularidad y tiempo de escritura
Ambos almacenan datos sin alimentación. La diferencia es con qué frecuencia se puede escribir, cuánto hay que borrar a la vez y cuánto tarda la escritura — y esos tres factores deciden cuál corresponde a tu diseño.
Respuesta rápida
- EEPROM: escritura por byte, 1M+ ciclos, milisegundos por byte, baja densidad. Configuración y calibración.
- NOR flash: borrado por sector (4 KB), ~100k ciclos, escrituras de página en menos de un milisegundo. Firmware y registro moderado.
- NAND flash: borrado por bloque (grande), menor resistencia, necesita ECC y gestión de bloques defectuosos. Datos masivos.
- FRAM / MRAM: escrituras prácticamente ilimitadas, rápidas, costosas. Contadores y registros de alta frecuencia.
1. Los tres ejes
| Tipo | Resistencia | Unidad de borrado | Tiempo de escritura |
|---|---|---|---|
| EEPROM | 1M–4M cycles | Byte/page | ≈ 5 ms per write |
| NOR flash | ≈ 100k cycles | 4 KB sector | Page < 1 ms, erase 50–400 ms |
| NAND flash | 1k–3k (MLC/TLC) | 128 KB block | Page ≈ 0.3 ms, block ≈ 2 ms |
| FRAM / MRAM | 10^12+ | Byte | Microseconds |
2. La granularidad de borrado es la diferencia estructural
Flash no puede sobrescribir un byte en su sitio: borra un sector completo y luego lo reescribe. Eso significa que una actualización pequeña se convierte en un ciclo de lectura-modificación-escritura, y la durabilidad efectiva de ese byte se divide por el número de bytes del sector. EEPROM evita esto a costa de densidad y precio.
NOR y NAND difieren en cómo manejan eso. NOR expone una interfaz de acceso aleatorio y permite ejecución en el lugar (execute-in-place), por lo que el firmware reside allí. NAND está organizada en páginas y bloques, necesita ECC y gestiona bloques defectuosos — más barata por bit, pero el controlador tiene que hacer más trabajo.
3. Cálculo de durabilidad
1M ciclos a 1 escritura/s = 11.6 días 1M ciclos a 1 escritura/min = 1.9 años 1M ciclos a 1 escritura/10 min = 19 años 100k ciclos (NOR) a 1 escritura/min = 69 días
Ese es el cálculo que decide el componente. Un contador actualizado una vez por segundo necesita FRAM o nivelación de desgaste; un bloque de configuración escrito al cambiar está bien en EEPROM; el firmware escrito en producción está bien en NOR.
| Patrón de escritura | Vida útil efectiva | Solución |
|---|---|---|
| 1 byte/s into EEPROM | 11.6 days at 1M | FRAM, or buffer + periodic write |
| 1 write/min into NOR | 69 days at 100k | Wear leveling across sectors |
| Config on change | Decades | No action |
| Firmware at production | Effectively unlimited | Sector erase is fine |
El tiempo de escritura importa para el comportamiento ante pérdida de alimentación: un borrado de sector de 300 ms que se interrumpe puede dejar el sector inválido. Planifique un journal o un segundo sector, no confíe en que "terminará".
4. Elección según la carga de trabajo
| Carga de trabajo | Mejor ajuste | Por qué |
|---|---|---|
| Config, calibration, serial number | EEPROM | Byte writes, high endurance |
| Firmware, bootloader | NOR flash | Execute-in-place, sector update |
| Counter, event log, energy meter | FRAM / MRAM | Unlimited writes, no erase |
| Audio, images, bulk records | NAND | Density per dollar, with ECC |
Para el lado de la memoria flash serie de un diseño, elGuía de layout de W25Q32cubre la interfaz y el desacoplo; para el aspecto de durabilidad de una decisión EOL, laGuía de PCN/EOLcubre las compras de última oportunidad.
4b. Interfaz y encapsulado
| Interfaz | Uso típico |
|---|---|
| I2C EEPROM | Small config, 2-wire bus, many devices |
| SPI EEPROM | Faster byte writes, small density |
| SPI/QSPI NOR | Firmware, execute-in-place, larger density |
| Parallel NOR | Legacy, fast random access, many pins |
| NAND (raw or managed) | Bulk storage; managed parts hide ECC/bad blocks |
5. Lista de verificación
- Estime las escrituras por día y la vida útil del producto en años.
- Divida la resistencia entre el tamaño del sector si la actualización es menor que la unidad de borrado.
- Verifique los tiempos de escritura y borrado frente a la estrategia ante pérdida de energía.
- Confirme la interfaz (I2C, SPI, QSPI, paralelo) y el número de pines.
- Para NAND, prevea ECC y gestión de bloques defectuosos.
- Compruebe la retención de datos a la temperatura de funcionamiento máxima.
6. FAQ
¿Puedo usar flash como EEPROM?
Solo con nivelación de desgaste y un esquema de lectura-modificación-escritura. No es posible escribir un byte en flash sin borrar el sector.
¿Cuántas escrituras puede soportar realmente una EEPROM?
Lo típico son 1M–4M ciclos, pero la resistencia se especifica por byte y a una temperatura. Consulte las condiciones de la hoja de datos.
¿Por qué se desgasta tan rápido mi memoria flash?
Porque cada pequeña actualización reescribe un sector completo. La resistencia efectiva es el número de ciclos nominales dividido por el número de bytes que comparten ese sector.
¿Vale la pena FRAM a ese coste?
Cuando la tasa de escritura es alta o la alimentación puede perderse en cualquier momento, sí. Elimina por completo el ciclo de borrado y la cuestión del desgaste.
¿Necesito ECC en NOR?
Normalmente no para firmware; para registro de larga vida a alta temperatura, un ECC o checksum ligero es un seguro barato.
¿Qué sucede si falla la alimentación durante una escritura?
La escritura de un byte en EEPROM es suficientemente atómica para la mayoría de los diseños; el borrado de un sector de flash no lo es. Utilice un diario o dos sectores alternos si los datos deben sobrevivir a una pérdida de alimentación inesperada.
¿Puedo almacenar datos durante 20 años?
La retención se especifica típicamente a 10–20 años a 85 °C. A temperaturas más altas, reduzca las especificaciones y verifique con el proveedor.
7. Fuentes
- Hojas de datos de memoria — resistencia, retención, tamaño de página/sector/bloque y tiempos de escritura y borrado.
- Notas de aplicación sobre nivelación de desgaste y registro seguro ante pérdida de energía (documentación del proveedor y del MCU).
- Estándares JEDEC para la calificación de memoria y las pruebas de retención.
¿Cómo seleccionar memoria?
Envíe la tasa de escritura, el tamaño de los datos y la vida útil. Le diremos si EEPROM, NOR, NAND o FRAM es la respuesta más económica.