Таблица 7.25. Команды микросхем флэш-памяти Intel первого поколения
Команда |
Число циклов шины |
Первый цикл шины¹ |
Второй (третий) цикл шины¹ |
R/W |
Адрес |
Данные |
R/W |
Адрес |
Данные |
Read Memory |
1 |
W |
X |
00h |
- |
- |
- |
Read ID |
3 |
W |
X |
90h |
R |
0(1) |
M_Id (D_Id) |
Set-up Erase/Erase |
2 |
W |
X |
20h |
W |
X |
20h |
Erase Verify |
2 |
W |
EA |
A0h |
R |
X |
EVD |
Set-up Program/Program 2 |
2 |
W |
X |
40h |
W |
PA |
PD |
Program Verify |
2 |
W |
X |
C0h |
R |
X |
PVD |
Reset |
2 |
W |
X |
FFh |
W |
X |
FFh |
¹ Здесь X обозначает несущественный адрес, M_Id и D_Id — идентификаторы производителя и устройства, EA — адрес ячейки, в которой контролируется стирание, EVD — данные, считанные при верификации стирания (должны быть FFh), PA и PD — адрес и данные программируемой ячейки, PVD — данные, считанные при верификации программирования.
Ниже описано назначение команд.
♦ Read Memory
— команда чтения данных, переводящая микросхему в режим чтения, совместимый по интерфейсу с EPROM.
♦ Read ID
— команда чтения идентификаторов. В последующих шинных циклах чтения по адресу 0 считывается M_Id
(Manufacturer Identifier — идентификатор производителя, 89h), по адресу 1 — D_Id
(Device Identifier — идентификатор устройства, для микросхем 8F256, 28F512, 28F010, 28F020 это B9h, B8h, B4h и BDh соответственно). Из этого режима микросхема выходит по записи любой другой действительной команды. Идентификаторы можно читать и путем подачи высокого напряжения на А9
(как и для EPROM).
♦ Set-up Erase
/ Erase
— подготовка и собственно стирание. Внутренний цикл стирания начинается по подъему сигнала WE#
во втором шинном цикле и завершается по последующему шинному циклу записи или по внутреннему таймеру (Stop Timer). Последующей командой обычно является верификация стирания. Два шинных цикла записи, необходимые для выполнения команды, Снижают вероятность случайного стирания и позволяют отказаться от выполнения стирания посылкой команды Reset
. Наличие внутреннего таймера позволяет не заботиться о точной выдержке времени для стирания, необходимо только выдержать минимальный интервал (около 10 мс). Перед стиранием все биты микросхемы должны быть предварительно запрограммированы в нули.
♦ Erase Verify
— верификация стирания. Отличается от обычного считывания тем, что проверяемая ячейка ставится в более жесткие условия считывания для повышения достоверности контроля стирания. Между шинными циклами команды верификации должна быть пауза не менее 6 мкс. Алгоритм быстрого стирания (Quick-Erase) предусматривает предварительное обнуление всех ячеек (командами программирования) и выполнение команды стирания, сопровождаемой верификацией. Команды верификации последовательно выполняются для каждой ячейки микросхемы. Если результат считывания отличается от FFh, производится повторное стирание (длительностью 10 мс), и последующая верификация может начинаться с первой ранее не стертой ячейки. Если количество повторов стирания превышает 3 000, фиксируется ошибка стирания и микросхема признается негодной. Алгоритм позволяет выполнить полное стирание микросхемы менее чем за секунду.
♦ Set-up Program
/ Program
— подготовка и собственно программирование. Команда выполняется аналогично стиранию, но во втором шинном цикле передается адрес и данные программируемой ячейки, а последующая выдержка должна составлять не менее 10 мкс.
♦ Program Verify
— верификация программирования (аналогично верификации стирания), обычно следующая после команды программирования. Между шинными циклами команды верификации должна быть пауза не менее 6 мкс. Алгоритм быстрого программирования (Quick-Pulse Programming) предусматривает формирование внутреннего цикла программирования длительностью 10 мкс с последующей верификацией. В случае несовпадения результата выполняется повторное программирование (до 25 раз для каждой ячейки), а если и это не помогает — фиксируется отказ микросхемы.
♦ Reset
— команда сброса, прерывающая команду программирования или стирания. Эта команда не меняет содержимое памяти; после нее требуется подача другой действительной команды.
По включении питания внутренний регистр команд обнуляется, что соответствует команде чтения, и микросхема работает как обычная микросхема PROM или EPROM. Это позволяет устанавливать микросхемы флэш-памяти вместо EPROM аналогичной емкости. При подаче на вход V PPнизкого напряжения (0–6,5 В) стирание и программирование невозможны, и микросхема ведет себя как обычная EPROM.
Читать дальше