Eeprom что это
Перейти к содержимому

Eeprom что это

  • автор:

Eeprom что это

Итак, что такое EEPROM и как правильно понимать суть этого слова, встречая его в тексте и говоря при этом про программирование блоков управления?

Для начала обратимся к истории. В старых блоках управления микросхемы памяти EEPROM использовались для записи адаптаций, а также уникальных сведений об автомобиле (VIN, синхронизация иммобилайзера и т.д.). Грубо говоря, в EEPROM записывалось всё, что не относится к самой прошивке. Программа управления двигателем (прошивка) при этом хранилась в отдельной микросхеме Flash-памяти.

Данные хранимые в микросхеме EEPROM тоже называли просто «EEPROM», иногда даже опуская слово «данные» (технически грамотно было бы говорить хотя бы «данные EEPROM», но некоторые мастера этим попросту пренебрегали).

Спустя некоторое время, когда ЭБУ стали куда более современными, а технологии изготовления Flash-памяти значительно шагнули вперед, когда даже процессоры сами по себе стали содержать внутреннюю Flash-память достаточного объема, от микросхем памяти EEPROM начали отказываться. А данные, которые раньше приходилось хранить в EEPROM, стало принято хранить во Flash-памяти, вместе с основной микропрограммой. Эту область Flash-памяти, куда записываются «данные EEPROM», стали называть «виртуальный EEPROM» (Virtual EEPROM), что с технической точки зрения вроде бы некорректно, но настолько укоренилось в лексиконе, что и спорить уже бесполезно.

Таким образом, догадываться о смысле термина приходится исключительно исходя из контекста. В каких-то случаях, EEPROM это просто микросхема, в каких-то случаях это данные, а в каких-то случаях речь может, вовсе, идти про область (определенное адресное пространство) Flash-памяти.

Eeprom что это

Эта статья содержит краткое описание популярных семейств микросхем энергонезависимой памяти, т.е. памяти, способной хранить информацию в отсутствие электропитания. Довольно часто, в качестве обобщенного названия этого класса микросхем используют аббревиатуру «ПЗУ» — Постоянное Запоминающее Устройство (по англ. ROM — Read Only Memory — память только для чтения). Следует заметить, что это не совсем корректно. Первые, наиболее старые представители энергонезависимой памяти, действительно использовались в аппаратуре только в режиме чтения, а их запись (программирование) осуществлялась либо в процессе изготовления кристалла, либо перед установкой в аппаратуру с помощью довольно сложного прибора — программатора. В дальнейшем, по мере совершенствования технологии производства и упрощения методов и алгоритмов записи, их современные модификации все чаще стали использовать в приборах и устройствах в режимах записи, стирания и перезаписи. Например, в модулях фискальной памяти кассовых аппаратов, в них заносится итоговая информация о дневной выручке и количестве покупок. В телевизорах ПЗУ используют для хранения различных настроек, а в телефонных аппаратах — для хранения и быстрого набора часто используемых телефонных номеров (записная книжка). Все эти применения противоречат самому смыслу понятия «память только для чтения». Попытки устранить это противоречие привели к обрастанию аббревиатуры «ПЗУ» уточняющими приставками: ППЗУ — программируемые ПЗУ, СППЗУ — стираемые ППЗУ, РПЗУ — репрограммируемые ПЗУ (PROM — Programmable ROM, EPROM — Erasable PROM, EEPROM — Electrically Erasable PROM) и т.д. Однако, наиболее точным обобщающим названием этого класса приборов является «энергонезависимая память». Этого понятия, применяя сокращение ЭП, мы и будем придерживаться в данной статье.

MaskROM — Масочные ПЗУ

Это наиболее старое семейство микросхем ЭП. Информация в такую память заноситься в процессе изготовления кристалла и в дальнейшем не может изменяться. Многолетняя популярность MaskROM обуславливалась низкой ценой при крупносерийном производстве. В настоящее время, в связи с резким снижением цен на программируемую и перепрограммируемую память, применяются редко. Наиболее распространенные микросхемы этого семейства — серия 23xxx.

PROM — Программируемые ПЗУ

Первыми программируемыми ПЗУ, пришедшими на смену MaskROM, стали микросхемы памяти на базе плавких перемычек (например, распространенные десять лет назад отечественные серии К556 и К1556). Возможность самостоятельной записи информации в них делало их пригодными для штучного и мелкосерийного производства. Наиболее существенными недостатками были большой процент брака и необходимость специальной длительной термической тренировки, без которой надежность хранения данных была невысокой. В настоящее время, также почти не применяются.

Различные источники по разному расшифровывают аббревиатуру EPROM — Erasable Programmable ROM или Electrically Programmable ROM (стираемые программируемые ПЗУ или электрически программируемые ПЗУ). Обычно, так называют популярные микросхемы серии 27xxx (отечественный аналог — серия К573).
Основу этой серии составляют ПЗУ, стираемые ультрафиолетовым излучением. Корпуса таких микросхем имеют окно из кварцевого стекла. Данные хранятся в виде зарядов плавающих затворов МОП-транзисторов, упрощенно говоря, представляющих собой конденсаторы с очень низкой утечкой заряда.
Многие производители памяти выпускают серию 27xxx также в исполнении «OTP» — One Time Programmable — однократно программируемые (те же кристаллы, но в дешевом пластиковом корпусе без кварцевого окна).
В последнее время получили широкое распространение электрически стираемые модификации EPROM производства фирм Winbond и SST, также выпускаемые в пластиковых корпусах.

Главной отличительной особенностью Flash (FlashROM, Flash-memory, Flash-память) и EEPROM (Electrically Erasable Programmable ROM — электрически стираемые ППЗУ) от других микросхем ЭП является возможность их перепрограммирования при подключении к стандартной системной шине микропроцессорного устройства. Для Flash перед записью требуется выполнить стирание (полное или поблочное), а для EEPROM стирание каждой ячейки выполняется автоматически при записи в нее новой информации, т.е. можно изменить данные в любой ячейке, не затрагивая остальных.
Существуют микросхемы Flash-памяти с автоматическим постраничным автостиранием и очень мелкой разбивкой на страницы, что приближает их по возможностям к EEPROM.
Широко применяются также Flash и EEPROM с доступом к информации по последовательному каналу (Serial Flash, Serial Data Flash, Serial EEPROM или SEEPROM). В этом случае, адреса, данные и управляющие команды передаются последовательно побитно по одному проводу и синхронизируются импульсами на тактовом входе. При этом используются различные последовательные шины (2-х, 3-х и 4-х проводные), как стандартные, так и нестандартные, чаще всего I2C, Microwire, SPI и др. Преимущество последовательных микросхем в малых габаритах и минимальном количестве линий ввода-вывода, необходимых для их подключения к микропроцессору или микроконтроллеру, хотя скорость обращения к ним значительно ниже. Подавляющее большинство последовательных EEPROM выполнены в 8-выводных корпусах.
Самые распространенные серии Flash — 28Fxxx, 29F/C/EExxx, 39SFxxx (параллельные), 45Dxxx (последовательные), EEPROM — 28Cxxx (параллельные), 24Cxxx, 93Cxxx, 25Cxxx (последовательные).

Non-volatile RAM (NVRAM), FRAM

Понятие «Энергонезависимое ОЗУ» (Non-volatile RAM или NVRAM) включает в себя несколько подсемейств памяти. Все они отличаются от других видов ЭП моментальной записью. Поэтому, вместо термина «программирование», по отношению к этим микросхемам обычно применяют термин «запись».
Первая разновидность NVRAM представляет собой обычные статические ОЗУ со встроенным элементом питания (чаще всего литиевым) и усиленной защитой от искажения информации в момент включения и выключения питания. Важным преимуществом этих микросхем является неограниченное количество циклов перезаписи (для EPROM, Flash и EEPROM оно обычно составляет от одной тысячи до 100 миллионов). Мировым лидером производства такой памяти является фирма Dallas Semiconductor.
Другой разновидностью NVRAM являются микросхемы, содержащие на одном кристалле энергозависимое ОЗУ (RAM) и резервную EEPROM-память, с возможностью сохранения (копирования) содержимого ОЗУ в EEPROM и обратного восстановления данных из EEPROM в ОЗУ. Многие из этих микросхем имеют функцию автоматического восстановления данных из EEPROM в ОЗУ при включении питания. Подразделяются на последовательные и параллельные.
Новое поколение NVRAM, при изготовлении которых используются самые современные технологии с применением материалов — ферроэлектриков (FRAM), не требуют для хранения информации никакого элемента питания, сохраняя все остальные свойства обычных ОЗУ. Часто выпускаются в виде микросхем, полностью совместимых по расположению выводов, алгоритмам и протоколам, и даже совпадающие по маркировке с последовательными и параллельными EEPROM. Примером может служить серия 24Cxx фирмы Ramtron. Количество циклов перезаписи для FRAM обычно составляет 10 миллиардов.

Внутренняя память микроконтроллеров

Большинство современных микроконтроллеров имеют встроенную энергонезависимую память программ (MaskROM, OTP EPROM, Flash или EEPROM), а многие — также дополнительную память данных (EEPROM или Flash). Все вышеописанные свойства этих видов ЭП относится и к встроенной памяти микроконтроллеров.
Фирма Atmel использует для своих программируемых в процессе производства и однократно программируемых пользователем микроконтроллеров термин QuickFlash. По своим свойствам такая память полностью соответствует MaskROM или OTP EPROM.
Понятие FlexROM используется фирмой Microchip для обозначения программируемых в процессе изготовления PIC-контроллеров. Аналогично MaskROM.

Кратко о EPROM, EEPROM и Flash

После успешной реанимации флешки-зайца я заинтересовался темой флэш-памяти. Всеми этим загадочным аббревиатурами типа LLF, ECC и т.д. Так что это хоть и не моя тема (я занимаюсь веб-программированием и программированием на языках высокого уровня), но все равно интересно – для развития кругозора. Так что начинаю новую серию статей, в которой буду делиться полученными знаниями. В этой серии статей будут рассмотрены различные аспекты флэш-памяти, начиная с историями, устройством и различиями между NOR Flash и NAND Flash.

В начале 1980-х годов, еще до появления таких удивительных вещей, как сотовые телефоны, планшеты или цифровые камеры, ученый по имени Фудзио Масуока работал на Toshiba в Японии над ограничениями чипов EPROM и EEPROM. EPROM (стираемая программируемая память только для чтения) – это тип чипа памяти, который, в отличие от ОЗУ, например, не теряет свои данные при потере питания — на техническом жаргоне он энергонезависим. Он делает это путем хранения данных в ячейках, состоящих из транзисторов с плавающим затвором.

В EPROM могут быть загружены данные, но эти данные также могут быть стерты с помощью ультрафиолетового света, чтобы можно было записать новые данные. Этот цикл программирования и стирания известен как цикл стирания программы (или цикл PE) и важен, потому что это может произойти только ограниченное количество раз на устройстве. Однако, хотя перепрограммируемый характер EPROM был полезен в лабораториях, он не был решением для встраивания в потребительскую электронику – в конце концов, включение ультрафиолетового источника света в устройство сделало бы его громоздким и коммерчески нежизнеспособным.

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

Прибытие Flash

Идея Масуоки, представленная как патент США 4612212 в 1981 году, брала преимущества EPROM и EEPROM и откидывала их недостатки. Он использовал только один транзистор на ячейку (увеличивая плотность, т. е. объем данных, который он мог хранить) и все еще позволял перепрограммировать их электричеством.

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

Однако число ячеек, затронутых одной операцией стирания, отличается – и намного больше — чем число ячеек, затронутых одной операцией программирования. И именно этот факт, прежде всего, приводит к поведению, которое мы видим от устройств, построенных на флэш-памяти. В следующих постах мы рассмотрим, что именно происходит, когда происходят операции программирования и стирания, прежде чем перейти к рассмотрению типов доступных flash (SLC, MLC и т. д.) и их поведения.

Тем временем, мы все должны поблагодарить нашего хорошего друга доктора Масуоку за флэш-память, которая позволяет нам носить с собой телефоны и планшеты в карманах и SD-карты в наших цифровых камерах. Кстати, популярная легенда гласит, что название флэш (Flash, англ ”вспышка») пришло от одного из коллег доктора Масуоки, потому что процесс стирания данных напомнил ему вспышку камеры.

Автор этого материала — я — Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML — то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

заметки, Flash, история, флешки

EEPROM

EEPROM от англ. Electrically Erasable Programmable Read-Only Memory — это электрически стираемое перепрограммируемое ПЗУ (ЭСППЗУ), один из видов энергонезависимой памяти таких, как PROM и EPROM. Память такого типа может стираться и заполняться данными до миллиона раз. Данные, записанные в эту память не исчезают при отключении питания.

Использование

Электроника большинства 3D принтеров поддерживает хранение некоторого объема настроек в своей внутренней памяти. Прошивка Marlin использует EEPROM для хранения настроек принтера и загружает при подаче питания на контроллер. Внимание! Изменение исходного кода и перепрошивка микропрограммы контроллера не изменяет содержимое EEPROM.

Включение / отключение EEPROM

В прошивке Marlin можно как включить использование EEPROM, так и отключить эту возможность. За включение использования EEPROM отвечает строка #define EEPROM_SETTINGS если эта строчка закомментирована, то использование EEPROM отключено. Для включения использования возможности EEPROM требуется расскоментировать строку #define EEPROM_SETTINGS. Данная строка находится в файле Configuration.h

На данный момент, по умолчанию, разработчики Repository версии Marlin отключили использования EEPROM. Это чтобы избежать «непредсказуемые действия / последствия» работы принтера.

Учтите, что если у вас EEPROM включена, то вы всегда можете сбросить на «Установки по умолчанию» (исходя из исходного кода), используя команды M502 с последующим M500.

EEPROM G-коды

  • M500 Сохранение текущих параметров в EEPROM.
  • M501 Чтение всех параметров из EEPROM.
  • M502 сбросить текущие настройки по умолчанию, как указано в Configurations.h (не забудьте потом сохранить изменения командой M500)
  • M503 Печать текущих настроек — Выводит на экран хранящиеся в EEPROM настройки.

Настройки в EEPROM

Когда вы делаете M503 команду она выводет отчет , как это, который будет отличаться в зависимости от конфигурации Marlin :

‘>>> M503 S0’ M92 X80.00 Y80.00 Z4000.00 E1258.14

M203 X500.00 Y500.00 Z2.25 E45.00 M201 X9000 Y9000 Z100 E300 M204 P1500.00 R1500.00 T3000.00 M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00 M206 X0.00 Y0.00 Z0.00 M145 M0 H180 B70 F0 M145 M1 H240 B110 F0 M301 P20.83 I1.04 D104.71 C1.00

Если вы не изменили эти параметры, то они соответствуют содержимому EEPROM.

Очистка EEPROM

EEPROM clear.png

Ссылки

  1. Это авто перевод статьиhttps://github.com/MarlinFirmware/Marlin/wiki/EEPROM с частичными правками человека 🙂

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

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