Типы памяти встраиваемых систем

11/04/2010 - 20:15

Типы памяти встраиваемых систем
Рисунок 1. Типы памяти, часто встречающиеся во встроенных системах

ТИПЫ ОЗУ (RAM)

   Семейство ОЗУ содержит два важных типа запоминающих устройств: статическое ОЗУ (SRAM) и динамическое ОЗУ (DRAM). Главное различие между ними – это долговечность хранимых ими данных. SRAM сохраняет свое содержимое до тех пор, пока к микросхеме подается энергия. Если же энергия отключена, или временно отсутствует, содержимое чипа будет потеряно навсегда. DRAM, с другой стороны, имеет чрезвычайно короткий период продолжительности работы данных – обычно около четырех миллисекунд, даже если энергия подается непрерывно.

   Словом, SRAM имеет все свойства памяти, с которыми ассоциируется слово RAM. В сравнении с ней, DRAM кажется, как будто бы, бесполезной. Сама по себе, она таковой и является. Однако можно использовать простой элемент конструкции, именуемый контроллером DRAM, для того, чтобы DRAM вела себя скорее как SRAM. Работа контроллера DRAM заключается в периодическом обновлении данных, хранящихся в DRAM. Обновляя данные до того, как они исчезнут, содержимое памяти может сохраняться так долго, как это необходимо. Таким образом, DRAM так же эффективна, как и SRAM.

   Решая, какой тип ОЗУ использовать, разработчик системы должен  учесть время доступа и стоимость. SRAM устройства предлагают чрезвычайно малое время доступа (примерно  в четыре раза быстрее, чем DRAM) но гораздо дороже при производстве. Как правило, SRAM используется только там, где крайне важна скорость доступа. Более низкая цена за байт делает DRAM привлекательной в тех случаях, когда требуется много ОЗУ. Многие встроенные системы включают оба типа: маленький блок SRAM (несколько килобайт) для важных данных и гораздо больший блок DRAM (может быть, даже мегабайты) для всего остального.

ТИПЫ ПЗУ (ROM)

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

   Самые первые ПЗУ были прошитыми устройствами, которые содержали заранее запрограммированный набор данных, или инструкций. Содержимое ПЗУ должно было быть определено до производства чипа, так что фактические данные могли быть использованы для компоновки транзисторов внутри микросхемы. Прошитая память все еще используется, хотя теперь она называется масочным ПЗУ (masked ROMs), чтобы отличать ее от других типов памяти. Главное преимущество масочных ПЗУ - в их низкой стоимости производства. К сожалению, цена низка только тогда, когда требуются большие количества одинаковых ПЗУ.

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

   EPROM (стираемое и программируемое ПЗУ) программируется тем же способом, что и PROM. Однако устройства EPROM могут быть очищены и перезаписаны повторно. Чтобы очистить EPROM, вы просто подвергаете устройство сильному воздействию ультрафиолетового излучения. ( Окно в верхней части устройства позволяет свету попасть на полупроводник.) Поступая таким образом, вы, по существу, возвращаете чип в его первоначальное незапрограммированное состояние. Несмотря на большую стоимость по сравнению с PROM, способность к перепрограммированию, делает EPROM неотъемлемой частью разработки ПО и процесса тестирования.

ГИБРИДЫ (Hybrid)

   По мере развития технологии, в последние годы граница между ОЗУ и ПЗУ стерлась. Теперь некоторые типы памяти сочетают особенности обоих типов. Эти устройства не принадлежат ни к одной из групп и могут быть сообща отнесены к гибридным устройствам памяти. В гибридную память можно записывать информацию и считывать ее оттуда при необходимости, как и в случае с ОЗУ, а сохранять ее содержимое без электроэнергии, точно также как в ПЗУ. Два типа гибридных устройств – EEPROM и Flash происходят от ПЗУ. Их обычно используют для хранения кода.  Третий гибрид – NVRAM, является модифицированной версией SRAM. NVRAM, обычно, содержит постоянные данные.

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

   Флэш-память (Flash memory) сочетает лучшие черты накопительных устройств, описанных выше. Флэш-память имеет высокую плотность, низкую цену, энергонезависимость, скорость (для чтения, но не для записи) и перепрограммирование при помощи электричества. Эти преимущества огромны и, как прямой результат - использование флэш-памяти во встроенных системах резко увеличилось. С точки зрения ПО, технологии флэш и EEPROM очень похожи. Главное различие в том, что флэш-устройства могут быть очищены сразу в пределах целого сектора, а не байт за байтом. Типичные размеры сектора находятся в промежутке от 256 байт до 16 килобайт. Несмотря на этот недостаток, флэш-память намного популярнее, чем EEPROM и быстро вытесняет также многие другие ROM устройства.

   Третий член в семействе гибридной памяти – NVRAM (энергонезависимая RAM). Энергонезависимость также является характеристикой ROM- устройств и гибридных типов памяти, описанных выше. Однако NVRAM физически сильно отличается от этих устройств. NVRAM – это, как правило, SRAM с резервным аккумулятором. Когда питание включено, NVRAM действует как любая другая SRAM. При отключении питания NVRAM берет из батареи ровно столько энергии, сколько требуется для сохранения данных. NVRAM достаточно часто встречается во встроенных системах. Однако она дорого стоит, даже дороже, чем SRAM - из-за наличия батареи, так что ее приложения обычно ограничены способностью хранить несколько сотен байт важной системной информации, которую нельзя сохранить каким-либо другим путем.

Таблица 1 резюмирует особенности каждого типа памяти, описного выше, но имейте в виду, что различные типы памяти служат разным целям. Каждый тип памяти имеет свои сильные и слабые стороны. Сравнение «один к одному» не всегда эффективно.

Типы памяти встраиваемых систем
Таблица 1. Характеристики различных типов памяти.

Barr, Michael. "Memory Types," Embedded Systems Programming, May 2001, pp. 103-104.

Comments   

# alexandershahbazov 2010-04-12 07:29
Вот недавно столкнулся с NVRAM .
Вышла ошибка : "Warning ! NVRAM battery low or not detected"
На модуле , которому принадлежал NVRAM была RTOS система VxWorks . На определенные контакты NVRAM
сверху 4-я ножками крепился пластиковый корпус с кварцевыми часами и батарейкой .
Заменили батарейку , восстановили данные
и все заработало .
# Pashgan 2010-04-12 14:33
alexandershahba zov, а что за девайс такой с операционной системой?

Кстати есть еще FRAM или FeRAM
Кусок из энциклопедии на Академике:
"Сегнетоэлектрическая память FRAM (англ. Ferroelectric RAM) — статическая оперативная память с произвольным доступом, ячейки которой сохраняют информацию, используя сегнетоэлектрич еский эффект («ferroelectric » переводится «сегнетоэлектри к, сегнетоэлектрич еский», а не «ферромагнетик» , как можно подумать). Ячейка памяти представляет собой две токопроводящие обкладки, и плёнку из сегнетоэлектрич еского материала. В центре сегнетоэлектрич еского кристалла имеется подвижный атом. Приложение электрического поля заставляет его перемещаться. В случае, если поле «пытается» переместить атом в положение, например, соответствующее логическому нулю, а он в нём уже находится, через сегнетоэлектрич еский конденсатор проходит меньший заряд, чем в случае переключения ячейки. На измерении проходящего через ячейку заряда и основано считывание. При этом процессе ячейки перезаписываютс я, и информация теряется(требуе тся регенерация). Исследованиями в этом направлении занимаются фирмы Hitachi совместно с Ramtron, Matsushita с фирмой Symetrix. По сравнению с флеш-памятью, ячейки FRAM практически не деградируют — гарантируется до 1010 циклов перезаписи."
# alexandershahbazov 2010-04-14 10:12
Модуль или плата называется SVGM5 от компании Synergy . Этот модуль 2-х процессорный , но
у нас 1 процессор "Synergy vgm5-750" . На
этом модуле память типа MM6494 в 512 M .
Эту плату обслуживает система RTOS VxWorks 5.4 . Данные сохранили через Hyper Terminal , который связывается с VxWorks . VxWorks от компании "Wind River Systems"
перешел в 2009 к Intel . Как плата SVGM ,
так и VxWorks относятся к годам 1998-2002 .
# Pashgan 2010-04-14 20:38
Понятно. Серьезная аппаратура. А вы на микроконтроллер ах RTOS не пользовались?
# alexandershahbazov 2010-04-15 07:19
Этот модуль принадлежит полевой геофизической станции . Там много всего такого . Когда разбирался с неисправностью , оттуда и нахватался про
RTOS и т.п. . Углубленно про RTOS не знаю ,
тем более применительно к МК .
# Guest 2010-04-27 10:32
Что это тут со всеми творится? А где же обновления и новые материалы((((
# alexandershahbazov 2010-04-27 19:56
Хватило бы времени имеющийся материал
переработать . Дайте остальным отдышаться .
# Pashgan 2010-04-27 21:22
CrazySynergetic, не успеваю просто материал генерить. Проекты быстро пишутся, а подготовить статейку - целое дело.
# ruslan 2010-12-07 07:12
Вопрос к автору сайта.
Даташит на Atmega8 гласит "Write/Erase Cycles: 10,000 Flash/100,000 EEPROM"
Выходит, что EEPROM "долгожительнее " чем Flash?
Спасибо за внимание
# Pashgan 2010-12-07 15:33
Думаю да. Вот, например, еще данные на последовательну ю flash (at25) и eeprom (at24) память - 100,000/1000,00 0

У вас недостаточно прав для комментирования.