Магистральный интерфейс AGPВ
настоящее время самой быстрой универсальной шиной расширения является
PCI, имеющая при тактовой частоте 33 МГц пиковую пропускную способность
132 Мб/с (локальную шину VLB, как устаревшую, в расчет не берем). Одним
из главных потребителей пропускной способности шины является графический
адаптер. По мере развития возможностей графической системы я увеличения
разрешения как по количеству пикселов, так и по глубине цвета я
требования к пропускной способности шины, связывающей дисплейный адаптер
с памятью и центральным процессором компьютера, повышаются. Параллельно
повышению пропускной способности шины применяют меры по уменьшению
потока данных, передаваемых по этой шине при графических построениях.
Для этих целей графические платы снабжают акселераторами и увеличивают
объем буферной памяти (видеопамяти), которой пользуется процессор
акселератора при выполнении построений. В результате высокоинтенсивный
поток данных в основном циркулирует только внутри графической карты,
относительно несильно нагружая шину. Однако на новом витке "гонки
функциональных возможностей" графический акселератор занимается и
трехмерными построениями, в результате чего ему становится тесно в
ограниченном объеме встроенной памяти графического адаптера, и его поток
данных снова выплескивается на внешнюю шину. Фирма Intel на базе шины
PCI 2.1 разработала новый стандарт подключения графических адаптеров я
AGP (Accelerated Graphic Port я ускоренный графический порт). Этот порт
представляет собой 32-разрядную шину с тактовой частотой 66 МГц (точнее,
66.66...), по составу сигналов напоминающую шину PCI. Место AGP в
архитектуре компьютера иллюстрирует рис. 1.
Рис. 1. Архитектура шин PC
Из рисунка видно, что чипсет связывает AGP с памятью и системной
шиной процессора, не натыкаясь на ставшую уже "узким горлом" (ну и
аппетиты!) шину PCI. "Ускоренность" порта обеспечивается тремя
факторами:
- Конвейеризацией операций обращения к памяти
- Сдвоенными передачами данных.
- Демультиплексированием шин адреса и данных
Конвейеризацию
обращений к памяти иллюстрирует рис. 2, где сравниваются обращения к
памяти PCI и AGP. При неконвейеризированных обращениях PCI во время
реакции памяти на запрос шина простаивает. Конвейерный доступ AGP
позволяет в это время передавать следующие запросы, а потом получить
плотную пачку ответов (самих передаваемых данных). Спецификация AGP
предусматривает возможность постановки в очередь до 256 запросов, но при
конфигурировании PnP уточняются реальные возможности конкретной системы
(у памяти, все-таки, "не десять рук"). AGP поддерживает две пары
очередей для операций записи и чтения памяти с высоким и низким
приоритетом. В процесс передачи данных любого запроса может вклиниваться
следующий запрос, в том числе и запрос в режиме PCI.
Рис. 2. Циклы обращения к памяти PCI и AGP
Сдвоенные передачи данных обеспечивают при частоте тактирования шины
в 66 МГц пропускную способность до 532 Мб/с, что для 32-битной шины (4
байта) несколько неожиданно: 66.6*4=266. В AGP кроме "классического"
режима, называемого теперь "x1", в котором за один такт синхронизации
передается один 4-байтный блок данных, имеется возможность работы в
режиме "x2", когда блоки данных передаются как по фронту, так и по спаду
сигнала синхронизации (как и в шине ATA Ultra DMA-33). Управление
передачей в таком режиме названо SideBand Control (сокращенно я
приставка SB к имени сигнала). Заказать режим x2 может только
графическая карта, если, конечно, она его поддерживает. В перспективе
ожидается переход на тактовую частоту 100 МГц, и, следовательно,
повышения пропускной способности до 800 Мб/с. Демультиплексирование
(разделение) шины адреса и данных сделано несколько необычным образом. В
идеале демультиплексирование подразумевает наличие двух полноразрядных
шин я адреса и данных. Однако реализация такого варианта была бы слишком
дорогой. Поэтому шину адреса в демультиплексированном режиме
представляют 8 линий SBA (SideBand Address), по которым за три такта
синхронизации передается четыре байта адреса, длина запроса (1 байт) и
команда (1 байт). За каждый такт передается по два байта я один по
фронту, другой по спаду тактового сигнала. Поддержка
демультиплексированной адресации не является обязательной для карты с
портом AGP, но хост-контроллер, естественно, должен ее поддерживать.
Альтернативой такому способу подачи адреса является обычный я по
мультиплексированной шине AD. Таким образом, AGP может реализовать
всю пропускную способность 64-битной основной памяти компьютера на
процессоре Pentium и старше. При этом возможны конкурирующие обращения к
памяти как со стороны процессора, так и со стороны мостов шин PCI. Порт
AGP может работать как в своем "естественном" режиме с конвейеризацией и
сдвоенными передачами, так и в режиме шины PCI. В конвейеризированном
режиме возможны только обращения к памяти. В режиме PCI обращения
возможны как к пространству памяти, так и пространству ввода-вывода и
конфигурационному пространству. Слот AGP является достаточным для
подключения дисплейного адаптера (это не расширение, как, например,
VLB). Кроме собственно AGP, в него заложены и сигналы шины USB, которую
предполагается заводить в монитор. Внешне карты с портом AGP похожи на
PCI, но у них используется разъем повышенной плотности с "двухэтажным"
(как у EISA) расположением ламелей, и сам разъем располагаентся
несколько дальше от задней кромки платы, чем разъем PCI. Фирма Intel
ввела поддержку AGP в чипсеты для процессоров Pentium Pro и PentiumяII,
поскольку его конвейерный режим близок по духу режиму системной шины
этих процессоров. Однако нет противопоказаний и против применения AGP
для процессоров класса Pentium. AGP строился исключительно исходя из
нужд графического акселератора. Порт позволяет работать в двух режимах я
режиме DMA и режиме исполнения (Executive Mode). В режиме DMA
акселератор при вычислениях рассматривает свой локальный буфер
(видеопамять) как первичную память, а когда его объема недостаточно,
подкачивает данные из основной памяти, используя быстрый канал AGP. При
этом для трафика порта характерны длительные последовательные (блочные)
передачи. В режиме исполнения локальный буфер и основная память для
акселератора равнозначны и располагаются в едином адресном пространстве.
Такой режим работы акселератора с памятью называется DIME (DIrect Memory
"Execute"). Для этого режима трафик порта будет насыщен короткими
произвольными запросами. Надо заметить, что многие преимущества AGP
носят потенциальный характер, и могут быть реализованы лишь при
встречной поддержке как со стороны аппаратных средств графического
адаптера, так и со стороны программного обеспечения. Пиковая пропускная
способность AGP на самом деле не вершина я в графических адаптерах с
WRAM или RDRAM внутренняя скорость обмена данными акселератора с
видеопамятью достигает 1.6 Гб/с, так что DIME привлекает только объемом
доступной памяти. Станет ли AGP популярной шиной, покажет время.
|