Поиск по сайту: |
|
По базе: |
|
Главная страница > Статьи > Микросхемы памяти |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DataFlash –универсальное средство для хранения программного кода и данныхВведение Минула уже четверть века с тех пор, как компания Toshiba первой представила мировой общественности разработку микросхем флэш-памяти, название которых "флэш" было выбрано для выделения их основного отличия от существующих на тот момент перепрограммируемых постоянных запоминающих устройств – быстродействующее стирание блоков памяти или всей памяти в целом. С тех пор эта технология энергонезависимой памяти проникла практически во все сферы микроэлектроники и стала неотъемлемой частью современных микроконтроллеров, сигнальных процессоров и программируемой логики, а производители полупроводниковых ИС предпринимают решительные меры для позиционирования себя как производителей флэш-памяти. Среди прочих мировых лидеров в разработке флэш-технологии особое место занимает корпорация Atmel, которая является ведущим поставщиком флэш-памяти с последовательным интерфейсом, именуемой DataFlash. Семейство DataFlash было представлено в 1997, как микросхемы памяти серии AT45DBxxxx с малым числом выводов и последовательным доступом к данным для хранения программного кода, информации или для замены последовательных ЭСППЗУ. Одной из основных задач, которая стояла перед разработчиками DataFlash, являлась задача устранения недостатка невозможности перезаписи нескольких байт из-за большого размеры страницы флэш-памяти 4…128кбит. Для решения этой проблемы разработчики вынуждены были устанавливать внешнее страничное ОЗУ. У DataFlash эта проблема была решена путем разделения всего массива флэш-памяти на страницы небольшого размера: 264 байт для 8 Мбит памяти и менее, 528 байт для 16Мбит и 32Мбит, 1056 байт для 64Мбит, 128Мбит и 2112 байт для 256Мбит и 512Мбит. За счет этого данная память может использоваться не только для хранения кода программы, но и для энергонезависимого хранения данных с возможностью их модификации. Следующая проблема – большое количество выводов, необходимых для адресации и ввода-вывода данных памяти большого объема – решена путем интегрирования простого последовательного высокоскоростного интерфейса, который за счет малого количества интерфейсных сигналов позволяет существенно упростить разводку печатной платы, повышает уровень системной надежности и уменьшает уровень шумов. Для подключения DataFlash емкостью 1Мбит…128Мбит к микроконтроллеру или цифровому сигнальному процессору требуется всего 4 вывода. Малое число выводов делает также возможным изменение емкости памяти в пределах одной системы без каких-либо изменений печатной платы. Для организации связи на частоте более 33 МГц Atmel разработала пионерский последовательный интерфейс RapidS™. Фактически RapidS – модернизированный SPI, допускающий тактирование шины частотой 40МГц и более. Кроме того, для приложений требующих более высокую производительность Atmel разработала 8-разрядный интерфейс Rapid8™ с последовательным доступом, который интегрирован как альтернативный в память емкостью 64Мбит и 128Мбит. В таблице 1 представлена номенклатура и краткая характеристика памяти DataFlash. Все микросхемы AT45DB выпускаются для коммерческого (0?…+70?С) и промышленного (-40°…+85°С) температурных диапазонов, за исключением версий на 2.5В, которые доступны только в коммерческом исполнении. Микросхема AT45BR3214B и все карты памяти AT45DC выпускаются только для промышленного температурного диапазона. DataFlash выпускаются в виде микросхем в стандартных промышленных корпусах, а также в виде конструктивно завершенных карт памяти. Память DataFlash превосходно подходит для хранения голоса, изображений, программного кода и данных, особенно там, где требуется малое энергопотребление. На рисунке 1 представлены возможные сферы применения DataFlash. Табл 1. Характеристики приборов семейства AT45.
DataFlash Cards
Таким образом, DataFlash может использоваться для замены трех типов памяти: памяти программ, памяти данных пользователя и конфигурационной памяти данных для хранения идентификационных данных, калибровочной информации и др. параметров системы, при этом существенно снижая общую стоимость, размер, уровень шумов, сложность производства и улучшая надежность.
Обзор архитектуры DataFlash В качестве отправной точки для создания DataFlash корпорация Atmel выбрала проверенную технологию NOR (ИЛИ-НЕ) для организации ячеек памяти, представленную на рис. 2. Ячейка памяти в простейшем случае представляет собой полевой транзистор с изолированным затвором (МОП-транзистор), у которого в изолированной области между управляющим затвором и подложкой расположен изолированный со всех сторон электрод, который получил название плавающего затвора – "floating gate" (см. рис. 3). За счет нахождения в изолированной среде плавающий затвор способен хранить свой заряд много лет. Соответственно, наличием или отсутствием заряда кодируется один бит информации: наличие заряда – лог. 0, отсутствие – лог. 1. Запись (заряд плавающего затвора) происходит методом инжекции "горячих" электронов при повышенном напряжении, а стирание (снятие заряда) осуществляются методом квантомеханического FN-туннелирования, названного в честь разработчиков данного метода Фаулера и Нордхейма.
Последним достижением корпорации Atmel является разработка технологии e-STAC, которая реализована в новом представителе семейства DataFlash - AT45DB1282. Данная технология отличается возможностью хранения в одной ячейке двух бит информации за счет установки и распознавания на плавающем затворе многоуровневого заряда. В конечном счете, технология e-STAC позволяет снизить стоимость высокоплотной памяти.
Для оптимизации гибкости массив памяти DataFlash имеет трехуровневую организацию: секторы, блоки и страницы. Нижний уровень образуют страницы, которые состоят из N ячеек памяти (см. рис. 4). В свою очередь каждые восемь страниц образуют блок. Следовательно, общее количество блоков равно M/8. Наконец, 1, 31,32, 63 или 64 блока (зависит от типа DataFlash) образуют сектор. Общее количество секторов зависит от типа DataFlash и в общем случае равно 3…65. Такое разделение обеспечивает высокую гибкость за счет предоставления возможности постраничного стирания небольшого объема данных для приложений с хранением данных и поблочного стирания больших фрагментов памяти для приложений, где DataFlash используется для хранения программного кода. В последнем случае поблочное стирание позволяет реализовать функцию обновления программного обеспечения устройства во время его эксплуатации пользователем. Встроенные буферы для повышения производительности Все представители DataFlash содержат два двунаправленных буфера (AT45DB011B – один буфер), которые позволяют ускорить поток передаваемых данных. Данные буферы выполняют функцию встроенной “псевдо” кэш-памяти и позволяют принимать данные для записи во время выполнения операций программирования/стирания. Каждый буфер характеризуется размером (см. табл. 1) равным размеру страницы флэш-памяти и функционируют независимо друг от друга. Программист может использовать буферы данных как дополнительную оперативную память для временного хранения данных. Таким образом, встроенные буферы могут исключить необходимость применения внешнего ОЗУ, если в рамках решаемой задачи возникла нехватка внутренней оперативной памяти микроконтроллера или процессора. Буферы DataFlash представляют собой статическое ОЗУ, следовательно, сохранность информации в буферах не гарантируется, если напряжение питания становится ниже заданного предела. Однако, статический принцип работы буферов исключает необходимость обновления данных, тем самым, гарантируя сохранность записанных в буфер данных. При выполнении операции записи обновлению подвергаются только адресуемые байты, а остальные остается незатронутыми. Например, если пользователь загружает только 200 байт в буфер размером 264 байта, то остальные 64 байта сохраняют свое предыдущее состояние. Функция сброса. DataFlash поддерживает функцию сброса, которая прекращает выполнение любой операции, находящейся в состоянии выполнения, и принудительно переводит встроенный цифровой автомат микросхемы в состояние холостого хода. Функция сброса инициируется подачей низкого уровня на вход RESET. Данный вход может использоваться совместно с системным супервизором питания для предотвращения повреждения данных при снижении напряжения питания ниже допустимого предела. Если DataFlash сбрасывается до завершения операции программирования/стирания страницы, то правильность результата программирования/стирания не гарантируется. Во избежание этого, функция сброса должна быть инициирована только по завершении операции программирования/стирания, что достигается путем введения задержки на время tEP или tP, опроса состояния вывода RDY/BUSY или опроса регистра состояния. Если системе требуется обработать прерывание с более высоким приоритетом и по этой причине вынуждена сбросить DataFlash до завершения операции программирования/стирания, то программирование страницы флэш-памяти может быть выполнено позже. Операция сброса не влияет на содержимое встроенных буферов ОЗУ. Поэтому, если операция программирования была прервана сбросом, то страница флэш-памяти может быть снова перепрограммирована путем выполнения команды программирования страницы памяти из буфера с автоматическим стиранием. Интерфейс команд пользователя Помимо представленных на рис. 4 функциональных блоков DataFlash содержит интерфейс команд пользователя (ИКП) и цифровой автомат, который отвечает за выполнение внутренних операций. ИКП принимает программные команды, преобразует их в сигналы управления цифрового автомата и определяет результат выполнения команды. В состав цифрового автомата входит регистр состояния, который выполняет функцию обратной связи с памятью DataFlash. Для считывания регистра состояния необходимо загрузить команду чтения регистра состояния (код операции 57H или D7H) в DataFlash, а затем считать 8 бит данных на выводе SO. Запись в данный регистр не возможна. При передаче регистра состояния первым будет выведен разряд 7 (старший разряд). Действительные данные будут следовать до 2-го разряда, а состояние разрядов 1 и 0 будет неопределенным, так как они являются резервными. После передачи разряда 0 состояние регистра статуса может быть опрошено снова, начиная с разряда 7 до тех пор, пока на входе CS будет присутствовать низкий логический уровень, а на SCK присутствуют тактовые импульсы. Данная функция полезна при ожидании окончания программирования/стирания путем опроса разряда 7 RDY/BUSY регистра состояния, т.к. при каждом считывании регистра будет передаваться его обновленное значение. DataFlash поддерживает команду сравнения буфера со страницей памяти (код операции 60Н для буфера 1 и 61Н для буфера 2), при этом для отображения результата сравнения выделен разряд 6 регистра состояния "Compare". Данная функция полезна для установления целесообразности перепрограммирования страницы памяти, например, после сброса DataFlash во время программирования. Разряды 5-2 регистра состояния содержат информацию о емкости памяти используемой DataFlash, предоставляя возможность системе при старте определить размер энергонезависимой памяти и в соответствии с этим планировать ее использование. Программная поддержка Для сокращения сроков проектирования систем компания Atmel разработала DFSS (DataFlash Software Suite - пакет программ для работы с микросхемами памяти семейства DataFlash). DFSS - обширный пакет программ, который содержит исходные тексты программ на языке Си и полный комплект документации, охватывающие весь диапазон системных решений. В частности имеются программные модули базовых драйверов для всех функций DataFlash, файловой системы Flash (с поддержкой форматов FAT12 и FAT16), сжатия и декомпрессии, декодирования и исправления ошибок (ЕСС), равномерного износа ячеек памяти и автоматической перезаписи страниц. DFSS доступен для использования по свободной лицензии.
Выводы Память DataFlash разработана как новый тип энергонезависимой памяти, позволяющей легко и эффективно манипулировать с большим объемом быстроизменяющихся данных. Появление DataFlash является ответом на запросы разработчиков, которые были разочарованы во время использования флэш-памяти с большим размером секторов для хранения и изменения данных. Реализация у DataFlash страничного разделения памяти с малым размером, встройка буферов на ОЗУ, простого последовательного интерфейса и гибкой системы команд позволили, в конечном счете, получить семейство флэш-памяти, которое удовлетворяет как требованиям хранения программного кода, так и хранения данных. В современном состоянии данного семейства памяти можно выделить три тенденции:
Документация:
Главная - Микросхемы - DOC - ЖКИ - Источники питания - Электромеханика - Интерфейсы - Программы - Применения - Статьи |
|
Впервые? | Реклама на сайте | О проекте | Карта портала тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru ©1998-2023 Рынок Микроэлектроники |
|