Конфигурирование устройств с интерфейсом AGP выполняется так же, как и обычных устройств PCI, — через обращения к регистрам конфигурационного пространства (см. п. 6.2.12). При этом AGP-устройства не требуют внешней линии IDSEL
— у них внутренний сигнал разрешения доступа к конфигурационным регистрам соединен с линией AD16, так что обращение к конфигурационным регистрам AGP обеспечивается при AD16
=1.
В процессе инициализации процедура POST только распределяет системные ресурсы, но операции AGP оставляет запрещенными. Работу AGP разрешает загруженная ОС, предварительно установив требуемые параметры AGP: режим обмена, поддержку быстрой записи, адресации свыше 4 Гбайт, способ подачи и допустимое число запросов. Для этого параметры устройств считываются из регистра состояния AGP, а согласованные параметры записываются в регистр команд AGP, расположенный в конфигурационном пространстве. Параметры настройки порта задаются через конфигурационные регистры чипсета системной платы (главного моста).
Регистр состояния AGP сообщает свойства порта: допустимое число запросов в очередях, поддержку внеполосной адресации, быстрой записи, адресации свыше 4 Гбайт, режимы 1х, 2х, 4х. В конфигурационном пространстве устройства AGP регистр, на который указывает CAP_PTR
, содержит CAP_ID
=02 (биты [7:0]) и номер версии спецификации AGP (биты [23:20] — старшая цифра, биты [19:16] — младшая).
Регистр состояния AGP (адрес CAP_PTR
+4) содержит следующие поля:
♦ биты [31:24] — RQ
, допустимое суммарное число запросов, находящихся в очередях: 0–1 команда, 255–256 команд;
♦ биты [23:10] — резерв (0);
♦ бит 9 — SBA
, поддержка внеполосной подачи команд;
♦ биты [8:6] — резерв (0);
♦ бит 5 — 4G
, поддержка адресации памяти свыше 4 Гбайт;
♦ бит 4 — FW
, поддержка быстрой записи;
♦ биты 3 — резерв (0);
♦ биты [2:0] — RATE
, поддерживаемые режимы обмена по AD и SBA: бит 0–1 x, бит 1 — 2х, бит 2 — 4х.
Регистр команд AGP служит для разрешения этих свойств. Регистр команд AGP (адрес CAP_PTR
+8) содержит следующие поля:
♦ биты [31:24] — RQ_DEPTH
, глубина очереди команд;
♦ биты [23:10] — резерв (0);
♦ бит 9 — SBA_ENABLE
, установка внеполосной подачи команд;
♦ бит 8 — AGP_ENABLE
, разрешение операций AGP;
♦ биты [7:6] — резерв (0);
♦ бит 5 — 4G
, разрешение адресации памяти свыше 4 Гбайт (двухадресных циклов и посылок 4-го типа по SBA);
♦ бит 4 — FW_Enable
, разрешение быстрой записи;
♦ биты 3 — резерв (0);
♦ биты [2:0] — DATA_RATE
, установка режима обмена: бит 0 — 1х, бит 1 — 2х, бит 2 — 4х (должен быть установлен лишь один бит).
Графический адаптер с интерфейсом AGP может быть встроен в системную плату, а может располагаться и на карте расширения, установленной в слот AGP . Внешне карты с портом AGP похожи на PCI (рис. 6.13), но у них используется разъем повышенной плотности с «двухэтажным» (как у EISA) расположением ламелей. Сам разъем находится дальше от задней кромки платы, чем разъем PCI.
Рис. 6.13. Слоты AGP: а — 3,3 В, б — 1,5 В, в — универсальные
Порт AGP может использовать два возможных номинала питания интерфейсных схем: 3,3 В и 1,5 В (уровни сигналов RST#
и CLK
всегда равны 3,3 В). Снижение напряжения питания буферных схем позволяет повысить достижимую частоту переключений. Для режимов 1х и 2х может использоваться любой из номиналов питания буферов, для режима 4х — только 1,5 В. Для работы в режимах 2х и 4х приемникам требуется опорное напряжение Vref. Его номинал для 3,3 В составляет 0,4×Vddq, для 1,5 В — 0,5×Vddq. Опорное напряжение для приемников генерируется на стороне передатчиков. На контакт А66 (Vrefgc) графическое устройство подает сигнал для порта, на контакт B66 (Vrefcg) порт (чипсет) подает напряжение для устройства AGP.
По уровню питания буферов карты и порты AGP могут быть трех типов: 3,3 В, 1,5 В и универсальные, причем имеются механические ключи, предотвращающие ошибочные подключения. Слот и карта 3,3 В имеют ключи на месте контактов 22–25 (перегородка в слоте, см. рис. 6.13, а, вырез на разъеме карты); слот и карта 1,5 В — на месте контактов 42–45. Универсальный слот не имеет перегородок, а универсальная карта имеет оба выреза. Универсальная системная плата узнает о номинале питания буферов установленной карты по сигналу TYPEDET#
— на картах 3,3 В контакт свободен, на картах 1,5 В и универсальных — заземлен. Универсальная карта узнает о номинале питания буферов по уровню напряжения на контактах Vddq (3,3 или 1,5 В). Таким образом и обеспечивается согласование.
Читать дальше