Интерфейсы ПК

       

Протоколы взаимодействия хоста и устройства


6.4. Протоколы взаимодействия хоста и устройства

Обычный протокол взаимодействия хоста с устройством выглядит следующим образом:

1. Хост читает регистр состояния устройства, дожидаясь нулевого значения бита BSY. Если присутствуют два уст- ройства, хост обращается к ним "наугад" - состояние будет сообщать последнее выбранное устройство.

2. Дождавшись освобождения устройства, хост записывает в регистр DH байт, у которого бит DEV указывает на ад- ресуемое устройство. Здесь кроется причина невозмож- ности параллельной работы двух устройств на одной шине АТА: обратиться к устройству можно только после осво- бождения обоих устройств.

3. Хост читает основной или альтернативный регистр со- стояния адресованного устройства, дожидаясь признака готовности (DRDY=i),

4. Хост заносит требуемые параметры в блок командных регистров.

5. Хост записывает код команды в регистр команд.

6. Устройство устанавливает бит BSY и переходит к испол- нению команды. Дальнейшие действия зависят от прото- кола передачи данных, заданного командой (см. графу "Протокол" в табл. 6.4).

Для команд, не требующих передачи данных (ND):

7. Завершив исполнение команды, устройство сбрасывает бит BSY и устанавливает запрос прерывания (если он не запрещен). К этому моменту в регистрах состояния и ошибок уже имеется информация о результате исполне- ния. Выполнение завершается.

Единичное значение бита BSY может промелькнуть между шагами 6 и 7 так быстро, что хост его не зафиксирует, но для фиксации факта выполнения команды или ее части и предназначен запрос прерывания.

Для команд, требующих чтения данных в режиме PIO (Р1):

7. Подготовившись к передаче первого блока данных по шине АТА, устройство устанавливает бит DRQ. Если была ошибка, она фиксируется в регистрах состояния и оши- бок. Далее устройство сбрасывает бит BSY и устанавли- вает запрос прерывания (если он не запрещен).

8. Зафиксировав обнуление бита BSY (или по прерыванию), хост считывает регистр состояния, что приводит к сбро- су прерывания от устройства.



Содержание раздела