EEPROM против Flash: ресурс, гранулярность, время записи

EEPROM vs Flash: Endurance, Granularity, Write Time

EEPROM против Flash: выносливость, гранулярность и время записи

Оба хранят данные без питания. Разница в том, как часто можно записывать, сколько нужно стирать за один раз и сколько времени занимает запись — и эти три фактора решают, какой из них подходит для вашего проекта.

Краткий ответ

  • EEPROM: запись побайтно, 1M+ циклов, миллисекунды на байт, малая плотность. Конфигурация и калибровка.
  • NOR flash: стирание сектора (4 KB), ~100k циклов, запись страниц менее чем за миллисекунду. Прошивка и умеренное логирование.
  • NAND-флеш: стирание блоков (крупных), меньшая выносливость, требуются ECC и обработка плохих блоков. Большие объёмы данных.
  • FRAM / MRAM: практически неограниченное число записей, быстро, дорого. Высокочастотные счётчики и журналы.

1. Три оси

Write endurance versus density for EEPROM, NOR, SLC NAND and NAND
Рисунок 1 — Плотность и ресурс тянут в противоположные стороны; проверяйте конкретный компонент, а не среднее по классу.
Тип Ресурс Единица стирания Время записи
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. Гранулярность стирания — это структурное отличие

Erase granularity for EEPROM, NOR sector and NAND block
Рисунок 2 — Обновление одного байта во flash означает цикл чтения-модификации-записи всего сектора или блока.

Flash не может перезаписать байт на месте: он стирает весь сектор, затем перезаписывает его. Это означает, что небольшое обновление превращается в цикл чтения-модификации-записи, а эффективный ресурс этого байта делится на число байтов в секторе. EEPROM избегает этого ценой плотности и стоимости.

NOR и NAND различаются тем, как они с этим справляются. NOR предоставляет интерфейс произвольного доступа и допускает execute-in-place, поэтому там хранится прошивка. NAND организована в страницы и блоки, требует ECC и управляет плохими блоками — дешевле в расчете на бит, но контроллеру приходится выполнять больше работы.

3. Расчет ресурса

Years to one million write cycles at different write intervals
Рисунок 3 — Один миллион циклов — это 11.6 дня при одной записи в секунду и 19 лет при одной записи раз в десять минут.
1M циклов при 1 записи/с   = 11.6 дня
1M циклов при 1 записи/мин = 1.9 года
1M циклов при 1 записи/10 мин = 19 лет
100k циклов (NOR) при 1 записи/мин = 69 дней

Именно этот расчёт определяет выбор компонента. Счётчик, обновляемый раз в секунду, требует FRAM или выравнивания износа; блок конфигурации, записываемый при изменении, подходит для EEPROM; прошивка, записываемая при производстве, подходит для NOR.

Схема записи Эффективный срок службы Исправление
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
Write times for EEPROM byte, NOR page, NOR sector erase and NAND block erase
Рисунок 4 — В бюджете времени доминирует стирание, а не запись страницы.

Время записи важно для поведения при потере питания: прерванное стирание сектора длительностью 300 ms может оставить сектор недействительным. Планируйте журнал или второй сектор, а не рассчитывайте на то, что «оно завершится».

4. Выбор по рабочей нагрузке

Memory selection by workload pattern
Рисунок 5 — Четыре варианта; большинство продуктов используют два из них.
Рабочая нагрузка Оптимальное соответствие Почему
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

Для части схемы, относящейся к последовательной флеш-памяти,Руководство по компоновке W25Q32охватывает интерфейс и развязку; что касается аспекта долговечности при принятии решения об EOL, тоРуководство по PCN/EOLохватывает закупки последней возможности.

4b. Интерфейс и корпус

Интерфейс Типичное применение
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. Контрольный список

  1. Оцените количество записей в день и срок службы продукта в годах.
  2. Разделите ресурс на размер сектора, если объём обновления меньше единицы стирания.
  3. Проверьте время записи и стирания с учётом стратегии обработки потери питания.
  4. Подтвердите интерфейс (I2C, SPI, QSPI, параллельный) и количество выводов.
  5. Для NAND закладывайте ресурсы на ECC и управление плохими блоками.
  6. Проверьте сохранность данных при максимальной рабочей температуре.

6. FAQ

Можно ли использовать flash как EEPROM?

Только с выравниванием износа и схемой чтения-изменения-записи. Запись байта во flash без стирания сектора невозможна.

Сколько записей действительно выдерживает EEPROM?

1M–4M циклов — типичное значение, но ресурс указывается в расчёте на байт и при определённой температуре. Проверяйте условия в даташите.

Почему моя флеш-память так быстро изнашивается?

Потому что каждое небольшое обновление перезаписывает целый сектор. Эффективный ресурс — это номинальное число циклов, делённое на количество байтов, приходящихся на этот сектор.

Оправдывает ли FRAM свою стоимость?

Когда интенсивность записи высока или питание может пропасть в любой момент — да. Это полностью устраняет цикл стирания и вопрос износа.

Нужен ли ECC на NOR?

Обычно не для прошивки; для длительного журналирования при высокой температуре простая ECC или контрольная сумма — недорогая страховка.

Что произойдёт, если питание пропадёт во время записи?

Побайтовая запись в EEPROM достаточно атомарна для большинства проектов; стирание сектора flash — нет. Используйте журнал или два чередующихся сектора, если данные должны пережить неожиданное пропадание питания.

Можно ли хранить данные 20 лет?

Срок хранения обычно указывается как 10–20 лет при 85 °C. При более высоких температурах снижайте допустимые параметры и проверяйте у поставщика.

7. Источники

  • Даташиты памяти — ресурс, сохранность данных, размер страницы/сектора/блока, время записи и стирания.
  • Технические заметки по применению о выравнивании износа и ведении журнала с защитой от потери питания (документация производителя и MCU).
  • Стандарты JEDEC по квалификационным испытаниям памяти и испытаниям на сохранность данных.

Выбор памяти?

Пришлите интенсивность записи, объем данных и срок службы. Мы скажем, что дешевле: EEPROM, NOR, NAND или FRAM.

Отправить BOM Наш процесс прослеживаемости

Check stock by part number

Turn this insight into a sourcing decision.

Need pricing or a drop-in alternative? Submit a BOM / RFQ or talk to our team.