КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Интерфейсы устройств хранения


Для операций записи данных после шага б для устройства начинается активная фаза записи на носитель, что отмечается установкой бита BSY.
Для команд, требующих записи данных в режиме PIO, процедура после шага 6 про¬должается следующим образом.
7.
Подготовившись к приему первого блока данных по шине ATА, устройство устанавливает бит DRQ (если нет ошибок) и сбрасывает бит B5Y. Если была ошибка, она фиксируется.
8.
Зафиксировав обнуление бита BSY, хост считывает регистр состояния.
9.
Если хост обнаружил единичное значение бита DRQ, он производит запись пер¬вого блока данных в режиме PIO по адресу в регистре данных.
10.
После передачи блока данных возможно одно из следующих действий:

если обнаружена ошибка, устройство сбрасывает бит DRQ, устанавливает за¬прос прерывания и выполнение команды завершается, а переданные по шине данные остаются устройством необработанными (не записываются на носитель);

если ошибка не обнаружена, устройство устанавливает бит BSY и перехо¬дит к следующему шагу.
11.
Устройство обрабатывает принятый блок данных, затем:

если нет ошибок и обработанный блок — последний, устройство сбрасыва¬ет бит B5Y и устанавливает запрос прерывания, на чем выполнение коман¬ды успешно завершается;

если обнаружена ошибка, выполнение команды завершается таким же об¬
разом, но с установкой битов ошибок;

если нет ошибок и требуется передача следующего блока, процедура про¬
должается.
12.
По готовности приема следующего блока устройство устанавливает бит DRQ, сбрасывает бит BSY и устанавливает запрос прерывания.
13.
По обнулении бита BSY (или по прерыванию) хост считывает регистр состояния.
14.
Обнаружив бит DRQ, хост выполняет запись очередного блока в регистр дан¬ных, и последовательность повторяется с шага 11.

382
Глава 9. Интерфейсы устройств хранения
Команды с передачей данных в режиме DMA выполняются похожим образом, но с некоторыми исключениями.

Вместо PIO используется прямой доступ к памяти.

Hosted by uCoz