В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

  • Оптоэлектроника
  • Аналоговые компоненты
  • Интерфейсы
  • Источники питания
  • Средства
    разработки
  • Микроконтроллеры
  • Память
  • Датчики
  • LCD
  • Печатные платы
  • Промышленные контроллеры
  • ПЛИС
  • Компоненты фирмы IR
  • Силовая электроника
  • Транзисторы
  • Телекоммуникация и связь
  • Анонсы, пресс-релизы выставок
  • Освещение
  • Разное
  • Электронный журнал RB
  •  
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации





    Главная страница > Статьи > Микросхемы памяти
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации


    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.

    Тип Ёмкость Vcc Интерфейс Частота Буфер Корпус
    AT45DB011B 1Mbit 2.7 Serial 20MHz 1x264 SO8,CBGA9,TSSOP14
    AT45DB021B 2Mbit 2.7 Serial 20MHz 2x264 SO8,SO28,CBGA9,TSOP28
    AT45DB041B 4Mbit 2.7 Serial 20MHz 2x264 SO8,SO28,CBGA14,TSOP28
    AT45DB081B 8Mbit 2.7 Serial 20MHz 2x264 SO28,CBGA14,TSOP28
    AT45DB161B 16Mbit 2.7 Serial 20MHz 2x528 SO28,CBGA24,TSOP28
    AT45DB321B 32Mbit 2.7 Serial 20MHz 2x528 SO28,CBGA44,TSOP32
    AT45DB321C 32Mbit 2.7 Serial 40MHz 2x528 SO28,CBGA44,TSOP32
    AT45DB642 64Mbit 2.7 Dual-interface 20/5MHz 2x1056 TSOP40
    AT45DB1282 128Mbit 2.7/1.8 Dual-interface 50/40MHz 2x1056  
    AT45DB2562 256Mbit 2.7/1.8 Dual-interface 50/40MHz 2x2112  
    Low Batteryage (2.5V to 3.6V)
    AT45DB041B-2.5 4Mbit 2.5 Serial 15MHz 2x264 SO8,SO28,TSOP28
    AT45DB081B-2.5 16Mbit 2.5 Serial 15MHz 2x264 SO28,CBGA14,TSOP28

    DataFlash Cards

    Тип Ёмкость Vcc Частота Интерфейс
    AT45DCB002 2Mbyte 2.7 20MHz Only Serial interface DataFlash Card
    AT45DCB004 4Mbyte 2.7 20MHz Only Serial interface DataFlash Card
    AT45DCB008 8Mbyte 2.7 20MHz Only Serial interface DataFlash Card

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


    Рисунок 1 – Области применения энергонезависимой памяти DataFlash

    Обзор архитектуры DataFlash

    В качестве отправной точки для создания DataFlash корпорация Atmel выбрала проверенную технологию NOR (ИЛИ-НЕ) для организации ячеек памяти, представленную на рис. 2. Ячейка памяти в простейшем случае представляет собой полевой транзистор с изолированным затвором (МОП-транзистор), у которого в изолированной области между управляющим затвором и подложкой расположен изолированный со всех сторон электрод, который получил название плавающего затвора – "floating gate" (см. рис. 3). За счет нахождения в изолированной среде плавающий затвор способен хранить свой заряд много лет. Соответственно, наличием или отсутствием заряда кодируется один бит информации: наличие заряда – лог. 0, отсутствие – лог. 1. Запись (заряд плавающего затвора) происходит методом инжекции "горячих" электронов при повышенном напряжении, а стирание (снятие заряда) осуществляются методом квантомеханического FN-туннелирования, названного в честь разработчиков данного метода Фаулера и Нордхейма.

    Рисунок 2 – Организация ячеек памяти при NOR-технологии Рисунок 3 – Структура ячейки NOR флэш-памяти

    Последним достижением корпорации Atmel является разработка технологии e-STAC, которая реализована в новом представителе семейства DataFlash - AT45DB1282. Данная технология отличается возможностью хранения в одной ячейке двух бит информации за счет установки и распознавания на плавающем затворе многоуровневого заряда. В конечном счете, технология e-STAC позволяет снизить стоимость высокоплотной памяти.


    Рисунок 4 – Архитектура памяти DataFlash

    Для оптимизации гибкости массив памяти 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 доступен для использования по свободной лицензии.


    Рисунок 5 – Пример использования DataFlash для реализации цифрового диктофона

    Выводы

    Память DataFlash разработана как новый тип энергонезависимой памяти, позволяющей легко и эффективно манипулировать с большим объемом быстроизменяющихся данных. Появление DataFlash является ответом на запросы разработчиков, которые были разочарованы во время использования флэш-памяти с большим размером секторов для хранения и изменения данных. Реализация у DataFlash страничного разделения памяти с малым размером, встройка буферов на ОЗУ, простого последовательного интерфейса и гибкой системы команд позволили, в конечном счете, получить семейство флэш-памяти, которое удовлетворяет как требованиям хранения программного кода, так и хранения данных.

    В современном состоянии данного семейства памяти можно выделить три тенденции:

    • Развитие "классической" памяти DataFlash (AT45DB) в плане увеличения объема памяти с использованием технологии e-STAC.
    • Реализация аналогий с серией AT52BR: DataFlash + отдельное статическое ОЗУ (AT45BR).
    • Реализация оптимизированных DataFlash под хранение программного кода (AT45CS). В данном направлении реализован один представитель AT45CS1282, отличающий от остальных разделением памяти только на страницы и сектора больших размеров с поддержкой стирания последних.

    Документация:

      Rus Микросхемы последовательной Flash памяти семейства AT45 фирмы Atmel
      Rus Применение DataFlash фирмы Atmel