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

       

А.7. Спецификация РпР для шины ISA


А.7. Спецификация РпР для шины ISA

Для изоляции карт ISA, программного распределения сис- темных ресурсов, конфигурирования и передачи параметров ОС и прикладному ПО компаниями Intel и Microsoft была выработана спецификация "Plug and Play ISA Specification";

версия l.Oa была опубликована в мае 1994 года. Рассмотрим реализацию РпР с точки зрения аппаратных средств.

Конфигурирование в системе РпР состоит из следующих шагов:

Производится изоляция одной карты от всех остальных. Карте назначается CSN (Card Select Number).

С карты считываются данные о сконфигурированных и поддерживаемых ресурсах.

Эти шаги повторяются для всех карт, после чего:

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

каждая карта конфигурируется согласно выбранному рас- пределению ресурсов и переводится в рабочий режим.

Все шага конфигурирования выполняет POST, если BIOS име- ет поддержку РпР, или ОС при загрузке. РпР BIOS может ограничиться конфигурированием и активацией устройств, участвующих в загрузке. BIOS без поддержки РпР может ис- пользовать необходимые для загрузки устройства, сконфигу- рированные с параметрами по умолчанию, а всем остальным занимается ОС. Конфигурирование выполняется в специаль- ном состоянии плат, в которое их можно программно переве- сти специальным ключом инициализации, защищающим кон- фигурационную информацию от случайного разрушения.

Для конфигурирования карт РпР необходимы три 8-битных системных порта (табл. А.4), с которыми процессор обща- ется по инструкциям ввода/вывода с однобайтной передачей данных. Карты РпР должны использовать 12-битное декоди- рование адреса ввода/вывода, а не 10-битное, как в тради- ционных картах ISA.

Порт ADDRESS используется для адресации регистров РпР, запись в него производится перед обращением к портам WRITE_DATA и READ_DATA. Он же применяется для записи последовательности кодов ключа инициализации. Выбор ад- реса для него обусловлен тем, что "разумные" карты рас- ширения не будут использовать для записи адрес регистра состояния стандартного LPT-порта.




Порты WRITEJDATA и READ_DATA используются для обмена данными с регистрами РпР. Адрес порта WRITEJDATA тради- ционными картами с 10-битным декодированием будет вос- приниматься как адрес предыдущего порта, так что конф- ликт исключен. Перемещаемому адресу порта READJDATA ПО РпР во время протокола изоляции может легко найти бес- конфликтное положение. Адрес этого порта сообщается всем картам записью в их управляющий регистр РпР.

Имя порта

Адрес

Тип доступа

ADDRESS

0279h (Printer status port)

Только запись

WFIITEDATA

OA79h (Printer status port + 0800h)

Только запись

READDATA

Перемещаемый в диапазоне 0203h- 03FFh

Только чтение

В конфигурационный режим логика РпР переводится клю- чом инициализации {Initiation key). Ключ представляет со- бой предопределенную последовательность записей в порт ADDRESS. Аппаратная логика карты, проверяющая ключ, основана на сдвиговом регистре с обратными связями LFSR (Linear Feedback Shift Register), схема которого приведена на Рисунок А.3. Во время проверки ключа на вход С1 подается уро- вень логического 0, а на вход С2 - стробы записи в порт ADDRESS. Логика, не показанная на Рисунок А.3, сравнивает код в сдвиговом регистре с текущей записью и при несовпаде- нии сбрасывает LFSR в исходное состояние (код 6Ah). В это же состояние регистр переводится двумя последовательны- ми записями нулей в порт ADDRESS. Сдвиг в регистре про- исходит при каждой записи в порт ADDRESS. Если ключ (последовательность из 32 записей требуемых байт) будет приложен верно, после последней записи логика карты пе- рейдет в режим конфигурирования и подготовится к отра- ботке протокола изоляции. Точная последовательность байт ключа в hex-формате выглядит следующим образом:

6А. В5. DA, ED. F6. FB. 7D. BE. DF. 6F. 37. IB. OD. 86, СЗ. 61. ВО. 58. 2С, 16. 8В. 45. А2. Dl. E8. 74, ЗА. 9D. СЕ. Е7. 73. 39.


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