Фирмой AMD выпускается несколько семейств микросхем флэш-памяти. Первые из них были близки по характеристикам к флэш-памяти Intel первого поколения(Bulk Erase, стирание и программирование 12 В): это D6, который при каждом шинном цикле считывания во время выполнения операции меняет свое значение на противоположное. По окончании операции он остановится в каком-либо состоянии, при этом об успешности можно судить по биту 7. Единичное значение бита D5 — Exceeded Timing Limits — указывает на превышение допустимого времени выполнения операции.
Таблица 7.28. Команды флэш-памяти Am29F010
| Команда | Reset/Read | Autoselect | Byte Program | Chip Erase | Sector Erase | |
|---|---|---|---|---|---|---|
| Количество циклов | 3 | 3 | 4 | 6 | 6 | |
| 1-й цикл | Addr | 5555h | 5555h | 5555h | 5555h | 5555h |
| Data | AAh | AAh | AAh | AAh | AAh | |
| 2-й цикл | Addr | 2AAAh | 2AAAh | 2AAAh | 2AAAh | 2AAAh |
| Data | 55h | 55h | 55h | 55h | 55h | |
| 3-й цикл | Addr | 5555h | 5555h | 5555h | 5555h | 5555h |
| Data | F0h | 90h | A0h | 80h | 80h | |
| 4-й цикл | Addr | - | XX00h/XX01h | PA¹ | 5555h | 5555h |
| Data | - | 01h/20h | PD² | AAh | AAh | |
| 5-й цикл | Addr | - | - | - | 2AAAh | 2AAAh |
| Data | - | - | - | 55h | 55h | |
| 6-й цикл | Addr | - | - | - | 5555h | SA³ |
| Data | - | - | - | 10h | 30h | |
¹ PA = адрес программируемой ячейки.
² PD = данные для записи в программируемую ячейку.
³ SA = адрес стираемого сектора (значимы биты A16, A15 и А14).
Микросхемы семейства
В командах значение бит A15, A16 существенно только при задании адреса ячейки. Ниже описано назначение команд.
♦ Reset/Read — сброс и перевод в режим считывания массива. Производится автоматически по включении питания и при получении некорректной команды (или адреса) в цепочке.
♦ Autоsеlесt — чтение кодов идентификации производителя (А=0), устройства (А=1) или состояния защиты сектора (биты A16-А14 задают адрес сектора, A2=1, остальные биты адреса — нулевые). Результат считывания состояния защищенного сектора — 01h, незащищенного — 00h. Идентификаторы и состояние защиты могут быть считаны и путем подачи высокого напряжения на вход А9 в шинном цикле считывания.
♦ Byte Program — программирование байта. После четвертого цикла шины начинается внутреннее выполнение программирования, при этом чтение по адресу программируемой ячейки выводит биты состояния.
♦ Chip Erase — стирание всех незащищенных секторов. На время выполнения стирания чтение по любому адресу (кроме адресов, принадлежащих защищенным секторам) выводит биты состояния.