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

Шины и карты расширения

Нулевой CSN присваивается картам по программному или аппаратному сбросу и используется как широковещательный адрес.
Конфигурирование карт
Конфигурирование карт выполняется обращениями к регистрам PnP. Обращения к регистрам PnP представляют собой операции записи или чтения портов вво¬да-вывода по адресам WRITE_DATA или READ_DATA соответственно. При этом для указания конкретного регистра PnP используется индекс — номер этого регистра, предварительно записанный в регистр ADDRESS.
Каждая карта имеет стандартный набор регистров PnP, причем часть из них от¬носится к карте в целом, а часть — к каждому логическому устройству, входяще¬му в карту. Архитектура PnP поддерживает концепцию многофункционально¬сти, согласно которой каждая карта может включать в себя несколько логических устройств. В любой момент времени в индексном пространстве регистров PnP ото¬бражаются стандартные регистры управления картой (см. ниже) и регистры толь¬ко одного логического устройства (рис. 6.6). Выбор логического устройства, с ко¬торым производится общение, осуществляется записью в регистр Logical Device Number, входящий в группу управляющих регистров карты.
Все логические устройства карт PnP должны обеспечивать, по крайней мере, мини-мальную функциональность:

регистры ресурсов при чтении должны отражать фактические текущие на¬
стройки;

бит активации при чтении должен отражать реальное состояние активности
устройства на шине ISA;

170

Глава 6. Шины и карты расширения

♦ если программа пытается «навязать» карте конфигурацию, не поддерживаемую устройством, это устройство не должно активироваться и, соответственно, при чтении его флаг активации должен быть сброшен.

Рис. 6.6. Конфигурационные регистры PnP (* — определяется разработчиком)
Для адресации к карте и ее логическим устройствам, а также для чтения конфигу¬рационной информации используются стандартные регистры управления картой (табл. 6.8).
Таблица 6.8. Стандартные регистры управления картой PnP

Имя

Индекс и тип Назначение


Set RD_DATA Port OOh, WO
Serial Isolation 01 h, RO Config Control 02h,WO
03h,WO
Wake[CSN]

Установка адреса порта для чтения. Биты [7:0]задают значение бит [9:2] адреса порта READ_DATA. Только для записи
Чтение этого регистра в состоянии Isolation приводит к побитному анализу идентификатора
Бит [2] — сброс CSN в 0. Бит [ 1 ] — возвращение в состояние Wait for Key. Бит [0] — сброс всех логических устройств и перевод конфигурационных регистров в состояние включения питания, но с сохранением номера CSN.

Hosted by uCoz