Микросхемы flash-памяти фирмы Intel. Элементы памяти типа FLASH-файл, страница 4

Для работы с микросхемой 28F020 предусмотрено семь команд: чтение памяти, чтение идентификаторов, установка стирания/стирание, верификация стирания, установка программирования/программирование, верификация программирования и RESET. Для записи команды и ее выполнения требуется от 1 до 3 циклов шины. Первый цикл — это запись команды, передаваемой по шине данных. Наиболее часто выполняется команда "чтение памяти"; после включения питания микросхема автоматически устанавливается в режим "чтение памяти". Она может быть переведена в этот режим и командой с кодом ООН. Это осуществляется за один цикл шины. Последующее обращение к микросхеме со стороны центрального процессора приводит к чтению содержимого соответствующей адресу ячейки (байта) накопителя. Устройство остается в режиме чтения, пока не будет записана в регистр команды другая команда.

Команда "чтение идентификаторов" выполняется за 3 цикла шины: запись кода команды 90Н, чтение по адресу ООООН кода производителя 89Н, чтение по адресу 0001Н кода устройства BDH.

Команда "установка стирания/стирание" устанавливается двумя циклами записи с одинаковым кодом команды 20Н. Первая запись готовит устройство для стирания, а вторая — запускает процесс стирания массива; процесс начинается на фронте импульса записи WE#. Стирание заканчивается на фронте следующего импульса WE# — обычно это запись команды "верификация стирания".


После каждой операции стирания все байты памяти должны быть проверены. Выполнение команды "верификация стирания" инициируется записью кода ОАН в регистр команды. Адрес проверяемого байта фиксируется на спаде WE#. Чтение кода FFH (все единицы) во втором цикле шины показывает, что биты в адресованном байте стерты.

Выполнение команды "установка программирования/программирование" запускается двумя циклами записи от центрального процессора. В 1 -м — запись кода команды 40Н, во втором цикле записи задаются адрес байта памяти и данные для программирования. Программирование начинается на фронте импульса WE# и заканчивается на фронте следующего импульса WE#, соответствующем команде "верификация программирования".

После записи команды СОН ("верификация программирования") следующий цикл — чтение данных от программируемой ячейки памяти (байт). Адрес ячейки не задается. Верификация как при программировании, так и при стирании осуществляется при внутренне генерируемом граничном напряжении, т.е. условия чтения при верификации отличаются от условий при-обычном чтении памяти. Успешное сравнение данных верификации и исходных данных означает, что программирование завершено и можно перейти к ' программированию другого байта.

Команда RESET (код команды FFH) введена для безопасного прекращения последовательности команд стирания и программирования. Если после записи команды установки стирания или установки программирования дважды записать код FFH (все единицы), команда установки сбрасывается. Именно это и осуществляется командой RESET. Далее следует записать нужную команду, например "чтение памяти".

Стирание и программирование микросхемы 28F020 осуществляются под управлением центрального процессора. INTEL предлагает алгоритмы "быстрого стирания" и программирования "короткими импульсами". При использовании именно таких алгоритмов гарантируется число циклов стирания/записи 100000. Идея алгоритмов заключается в том, что подбираются такие длительности импульсов программирования и стирания, которые являются предельными (короткими) и уже не гарантируют уверенное выполнение операции за один импульс. При этом сводятся к минимуму необратимые изменения в полупроводниковой структуре (аналогичный алгоритм полезен и для микросхем со стиранием ультрафиолетовым излучением, например К573РФ2).