Рубрики
Компоненты

Flash или EEPROM — какую память выбрать для своего проекта

Память – незаменимая часть многих современных электронный устройств. Современные виды памяти можно  разделить на множество различных категорий, но в основном они сужаются до двух их типов, т.е.  энергозависимых и энергонезависимых, которые затем классифицируются еще на несколько типов.

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

Когда была представлена ​​EEPROM ( электрически стираемая программируемая постоянная память ), ее можно было очистить только в большом объеме и использовать в схеме только для операции чтения. Позже некоторые улучшения обеспечили возможность стирания меньших областей, почти что отдельных байтов, а также возможность ее использования для операций записи, а не только чтения. Хотя флэш-память появилась после EEPROM, она по-прежнему использовалась, когда возникала необходимость стереть большие фрагменты информации, а не на уровне отдельных байтов. Было предусмотрено стирание большого количества данных, поскольку оно позволяет компактно хранить информацию, что было невозможно в EEPROM. При этом, хотя Flash — это тип EEPROM, единственное существенное различие между ними — это логика чтения/записи/стирания.

Глубинные различия между EEPROM и флэш-памятью

EEPROM — это тип энергонезависимой памяти, данные которой не стираются даже при отсутствии питания. Сегодня около 99% микросхем EEPROMS имеют протокол последовательной связи, такой как I2C или SPI. В EEPROM используется вентиль NOR, который работает значительно быстрее, чем вентиль NAND, используемый во флэш-памяти. Во многих таблицах данных отмечается, что мы можем иметь до 1 миллиона операций чтения/записи на ячейку, прежде чем память будет повреждена. Кроме того, обычно требуется около 5 мс чтобы сделать вновь перезаписанные данные энергонезависимыми.

Изначально EEPROM был спроектирован так, чтобы считывать больше, чем записывать. EEPROM не подходит для хранения носителей, на которых данные записываются и считываются очень часто. В то время как флэш-память используется в носителях данных размером до сотен ГБ. Как было сказано ранее, EEPROM была разработана преимущественно для большого числа операций чтения, поэтому данная память обычно  предназначена для постоянного хранения кода в микросхемах.

Многим устройствам EEPROM требуется 1–10 мс для записи байта и 5–50 мс для стирания. В то время как флэш-устройствам потребуется менее 100 мкс для записи, но около сотен миллисекунд для стирания.

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

Архитектура EEPROM

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

А когда далее мы посмотрим архитектуру флэш-памяти, мы увидим что в ней байты расположены поблочно.

Архитектура флэш-памяти

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

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

Краткие выводы

  1. EEPROM и флэш-память поддерживают одни и те же команды: операции стирания, записи и чтения.
  2. Циклы записи во Flash памяти выполняются быстрее, чем в EEPROM.
  3. Циклы чтения в EEPROM выполняются быстрее, чем во Flash.
  4. Циклы стирания во Flash выполняются быстрее, чем в EEPROM.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *