![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Регистры Serial ATA
Каждое устройство, подключенное к адаптеру Serial ATA, представляется тремя блоками регистров, два из которых соответствуют традиционным регистрам АТА (см. п. 9.2.1) и называются «теневыми», третий блок — новый. Привязка адресов блоков к адресному пространству хоста стандартом не регламентируется; для PCI-контроллера блоки задаются регистрами конфигурационного пространства и «теневые» регистры могут располагаться по стандартным адресам АТА. В блоке управляющих регистров, как и в АТА, используется лишь один (AS для чтения, DC для записи). В блоке командных регистров разрядность регистров SC, SN, CL и СН расширена до 16 бит, назначение младших байтов сохранилось. В режиме LBA старшие байты регистров SN, С L и СН несут биты логического адреса [24: 31], [32: 39] и [40: 47] соответственно. В регистре D/H бит DEV игнорируется (при эмуляции пар устройств на одном канале бит DEV используется для выбора устройства). Из спецификации не совсем ясно, используются ли младшие биты D/H для задания бит LBA[27: 24], поскольку эти же биты фигурируют в старшем байте SN. Новый блок регистров SCR (Serial ATA Status and Control registers) состоит из 16 смежных 32-разрядных регистров SCR0-SCR15, из которых пока определены лишь 3 (остальные зарезервированы). Регистр SStatus (SCR0) — регистр текущего состояния интерфейса хост адаптера (только чтение). ♦ Биты [3: 0] — поле DET, подключение устройств: • 0000 — устройство не обнаружено, физической связи нет; • 0001 — устройство обнаружено, но физическая связь не установлена; • ООП — устройство обнаружено, физическая связь установлена; • 0100 — устройство отключено (запретом интерфейса или запуском внутреннего теста). 9.2. Интерфейс АТА/ATAPI (IDE)_______________________________________ 393 ♦ Биты [7: 4] — SPD, скорость: • 0000 — нет согласованной скорости (устройство не подключено или связь не установлена); • 0001 — согласована скорость 1-го поколения. ♦ Биты [11: 8] — поле IPM, состояние энергопотребления интерфейса: • 0000 — устройство не обнаружено, физической связи нет; • 0001 — интерфейс в активном состоянии; • 0010 — интерфейс в состоянии PARTIAL; • 0110 — интерфейс в состоянии SLUMBER. Остальные биты и значения полей зарезервированы. Регистр SError (SCR1) — регистр диагностической информации, относящейся к интерфейсу. В регистре представлены ошибки, накапливающиеся с момента последней очистки регистра. Регистр очищается операцией сброса, отдельные биты можно сбрасывать операцией записи в регистр (единицы в позициях сбрасываемых бит). ♦ Биты [15: 0] — поле ERR, ошибки, обрабатываемые обычным программным • бит 9 — С — устойчивая неисправимая ошибка связи или нарушение целостности данных (может возникать при неправильном подключении, отказе или отключении устройства); • бит 11 — Е — внутренняя ошибка, обнаруженная хост-адаптером (если • бит 0 — I — исправленное нарушение целостности данных (не требует действий со стороны ПО, но может учитываться, например, для принятия решения о снижении скорости); • бит 1 — М — исправленная ошибка связи (может возникать при временном отключении устройства, потере синхронизации, не требует действий со стороны ПО); • бит 10 — Р — протокольная ошибка, требует сброса интерфейса и повтора операции (в случае устойчивости может быть признаком несовместимости устройства и адаптера); • бит 8 — Т — не исправленное нарушение целостности данных, требует повтора операции. ♦ Биты [31: 16] — поле DIAG, используемое диагностическим ПО: • бит 19 — В — ошибка декодирования 10В/8В; • бит 21 — С — ошибка CRC на канальном уровне; • бит 20 — D — ошибка паритета блоков данных (Disparity); • бит 26 — F — неопознанный тип FIS (ошибка, обнаруженная на транспортном уровне при корректном CRC-коде); • бит 17 — I — внутренняя ошибка физического уровня интерфейса; 394________________________________ Глава 9. Интерфейсы устройств хранения • бит 16 — N — сигнал готовности физического уровня менял состояние; • бит 22 — Н — ошибка подтверждения кадров (может возникать как следствие ошибок В, С, D); • бит 23 — S — ошибка последовательности состояний канального уровня; • бит 24 — Т — ошибка на транспортном уровне; • бит 18 — W — обнаружен пробуждающий сигнал Сотт Wake. Остальные биты зарезервированы. Регистр SControl (SCR2) — регистр управления интерфейсом (запись и чтение). ♦ Биты [3: 0] — поле DET, управление обнаружением и инициализацией устройств: • 0000 — нет действий; • 0001 — инициализация и установление соединения (эквивалентно аппаратному сбросу); • 0100 — запрет интерфейса и перевод физического уровня в режим Offline. ♦ Биты [7: 4] — поле SPD, задает ограничение на скорость при согласовании соединений: • 0000 — нет ограничений; • 0001 — скорость не выше 1-го поколения. ♦ Биты [11: 8] — поле IPM, управление энергорежимом интерфейса: • 0000 — нет ограничений; • 0001 — запрет перехода в состояние PARTIAL; • 0010 — запрет перехода в состояние SLUMBER; • 0011 — запрет перехода в состояние PARTIAL и SLUMBER. Остальные биты и значения полей зарезервированы.
|