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

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



374
Глава 9. Интерфейсу устройств хранения
После выполнения любого сброса или команды Execute Device Diagnostic регистр ошибок содержит диагностический код. Трактовка битов, за исключени¬ем бита 2 (ABRT), может меняться в зависимости от исполненной команды.
Регистр свойств FR (IFlh, 171h) используется в зависимости от команды. В команде Set Features через него задается код подкоманды. Некоторые старые устройства могут игнорировать запись в этот регистр. До принятия спецификации АТА-2 в этот регистр помещали значение рекомендуемого номера цилиндра для предкомпен-сации записи.
Регистр счетчика секторов SC (lF2h, 172h) содержит число секторов, участву¬ющих в обмене. Хост инициализирует этот регистр до подачи команды (нулевое значение соответствует 256 секторам). По успешному завершению операции до¬ступа к данным регистр должен обнулиться. Если команда завершилась с ошиб¬кой, в регистре будет число секторов, которые должны быть переданы для успеш¬ного завершения предыдущего запроса. Команды Initialize Device Parameters или Write Same могут переопределить значение этого регистра. В некоторых ко¬мандах регистр используется для передачи иных параметров.
Регистры номера сектора S N (1 F3h, 173h) и номера цилиндра — младшего С L (1 F4h, 174h) и старшего байта СН (lF5h, 175h) — имеют двоякое назначение в зависимо¬сти от выбранной системы адресации (CHS или LEA). Они инициализируются хост-адаптером, а в случае возникновения ошибки при выполнении операции устройство поместит в них адрес, по которому встретилась ошибка.
Регистр номера устройства и головки D/H (IFGh, 176h) кроме хранения части ад¬ресной информации служит для выбора ведущего или ведомого устройства и ме¬тода адресации.
Назначение битов регистра D/H:

биты 7 и 5 вплоть до АТА-3 должны были быть единичными, в AT A/ AT API -4 их объявили устаревшими;

бит 6 — L — единичным значением указывает на применение режима адреса¬ции LBA, при нулевом значении бита используется режим CHS;

бит 4 — DEV (Device) — выбор устройства, при DEV=0 выбрано ведущее, при DEV=1 — ведомое;

биты [3:0] имеют двоякое назначение в зависимости от выбранной системы
адресации, в режиме CHS они содержат номер головки, в режиме LBA — старшие биты логического адреса.

Hosted by uCoz