Шина AGP (Accelerated Graphic Port)
Все хорошее когда-нибудь кончается. Обидно - но истинно. Сколько писали
про то, что шина PCI наконец-то устранила "узкое место" РС - обмен с
видеокартами - но не тут-то было! Прогресс, как известно, не стоит на
месте. Появление разных там 3D ускорителей привело к тому, что ребром
встал вопрос: что делать? Либо увеличивать количество дорогой памяти
непосредственно на видеокарте, либо хранить часть информации в дешевой
системной памяти, но при этом каким-нибудь образом организовать к ней
быстрый доступ.
Как это практически всегда бывает в компьютерной индустрии, вопрос
решен не был. Казалось бы, вот вам простейшее решение: переходите на
66-мегагерцовую 64-разрядную шину PCI с огромной пропускной способностью,
так нет же. Intel на базе того же стандарта PCI R2.1 разрабатывает новую
шину - AGP (R1.0, затем 2.0), которая отличается от своего "родителя" в
следующем:
шина способна передавать два блока данных за один 66 MHz цикл (AGP
2x);
устранена мультиплексированность линий адреса и данных (напомню, что
в PCI для удешевления конструкции адрес и данные передавались по одним и
тем же линиям);
дальнейшая конвейеризация операций чтения/записи, по мнению
разработчиков, позволяет устранить влияние задержек в модулях памяти на
скорость выполнения этих операций.
В результате пропускная способность шины была оценена в 500 МВ/сек, и
предназначалась она для того, чтобы видеокарты хранили текстуры в
системной памяти, соответственно имели меньше памяти на плате, и,
соответственно, дешевели.
Парадокс в том, что видеокарты все-таки предпочитают иметь БОЛЬШЕ
памяти, и ПОЧТИ НИКТО не хранит текстуры в системной памяти, поскольку
текстур такого объема пока (подчеркиваю - пока) практически нет. При этом
в силу удешевления памяти вообще, карты особенно и не дорожают. Однако
практически все считают, что будущее - за AGP, а бурное развитие
мультимедиа-приложений (в особенности - игр) может скоро привести к тому,
что текстуры перестанут влезать и в системную память. Поэтому имеет смысл,
особо не вдаваясь в технические подробности, рассказать, как же это все
работает.
Итак, начнем с начала, то есть с AGP 1.0. Шина имеет два основных
режима работы: Execute и DMA. В режиме DMA основной памятью является
память карты. Текстуры хранятся в системной памяти, но перед
использованием (тот самый execute) копируются в локальную память карты.
Таким образом, AGP действует в качестве "тыловой структуры",
обеспечивающей своевременную "доставку патронов" (текстур) на передний
край (в локальную память). Обмен ведется большими последовательными
пакетами.
В режиме Execute локальная и системная память для видеокарты логически
равноправны. Текстуры не копируются в локальную память, а выбираются
непосредственно из системной. Таким образом, приходится выбирать из памяти
относительно малые случайно расположенные куски. Поскольку системная
память выделяется динамически, блоками по 4К, в этом режиме для
обеспечения приемлемого быстродействия необходимо предусмотреть механизм,
отображающий последовательные адреса на реальные адреса 4-х килобайтных
блоков в системной памяти. Эта нелегкая задача выполняется с
использованием специальной таблицы (Graphic Address Re-mapping Table или
GART), расположенной в памяти.
При этом адреса, не попадающие в диапазон GART (GART range), не
изменяются и непосредственно отображаются на системную память или область
памяти устройства (device specific range). На рисунке в качестве такой
области показан локальный фрейм-буфер карты (Local Frame Buffer или LFB).
Точный вид и функционирование GART не определены и зависят от управляющей
логики карты.
Шина AGP полностью поддерживает операции шины PCI, поэтому AGP-траффик
может представлять из себя смесь чередующихся AGP и PCI операций
чтения/записи. Операции шины AGP являются раздельными (split). Это
означает, что запрос на проведение операции отделен от собственно
пересылки данных.
Такой подход позволяет AGP-устройству генерировать очередь запросов, не
дожидаясь завершения текущей операции, что также повышает быстродействие
шины.
В 1998 году спецификация шины AGP получила дальнейшее развитие - вышел
Revision 2.0. В результате использования новых низковольтных электрических
спецификаций появилась возможность осуществлять 4 транзакции (пересылки
блока данных) за один 66-мегагерцовый такт (AGP 4x), что означает
пропускную способность шины в 1GB/сек! Единственное, чего не хватает для
полного счастья, так это чтобы устройство могло динамически переключаться
между режимами 1х, 2х и 4х, но с другой стороны, это никому и не нужно.
Однако потребности и запросы в области обработки видеосигналов все
возрастают, и Intel готовит новую спецификацию - AGP Pro (в настоящее
время доступен Revision 0.9) - направленную на удовлетворение потребностей
высокопроизводительных графических станций. Новый стандарт не видоизменяет
шину AGP. Основное направление - увеличение энергоснабжения графических
карт. С этой целью в разъем AGP Pro добавлены новые линии питания.
Предполагается, что будет существовать два типа карт AGP Pro - High
Power и Low Power. Карты High Power могут потреблять от 50 до 110W.
Естественно, такие карты нуждаются в хорошем охлаждении. С этой целью
спецификация требует наличия двух свободных слотов PCI с component side
(стороны, на которой размещены основные чипы) карты.
При этом данные слоты могут использоваться картой как дополнительные
крепления, для подвода дополнительного питания и даже для обмена по шине
PCI! При этом на использование этих слотов накладываются лишь
незначительные ограничения.
При использовании слотов для подвода дополнительного питания:
Не использовать для питания линии V I/O;
Не устанавливать линию M66EN (контакт 49В) в GND (что вполне
естественно, так как это переводит шину PCI в режим 33 MHz).
При использовании слота для обмена по шине:
Подсистема PCI I/O должна разрабатываться под напряжение 3.3V c
возможностью функционирования при 5 V.
Поддержка 64-разрядного или 66 MHz режимов не требуется.
Карты Low Power могут потреблять 25-50W, поэтому для обеспечения
охлаждения спецификация требует наличия одного свободного слота PCI.
При этом все retail-карты AGP Pro должны иметь специальную накладку
шириной соответственно в 3 или 2 слота, при этом карта приобретает вид
достаточно устрашающий.
При этом в разъем AGP Pro можно устанавливать и карты AGP.
В общем, как представлю себе графическую станцию с двумя процессорами
Xeon и видеокартой AGP Pro High Power... Можно здорово сэкономить на
отоплении... Закрадывается крамольная мысль, что в спецификацию PC 200?
будет заложено жидкостное охлаждение. Опять-таки поживем - увидим.
|