Шина AGP

Шина AGP

Контрольная работа по дисциплине: «Архитектура ЭВМ»

2005 

Назначение шины AGP

Пристегните ремни безопасности! Ожидается, что новая графическая шина фирмы Intel повысит производительность видеосистемы и обеспечит реалистичную передачу трехмерных изображений. Однако тесты первых моделей AGP-плат показали, что путешествие по дороге AGP можно назвать каким угодно, но только не безоблачным. 

Cначала были модемы на 56 кбит/с, затем DVD, а теперь притчей во языцех стал ускоренный графический порт (Accelerated Graphics Port - AGP) фирмы Intel. Список "полуфабрикатов" новых технологий, навязываемых покупателям компьютеров, непрерывно растет. Спустя почти четыре года с того времени, когда шина PCI стала стандартом в настольных ПК, корпорация Intel объявила о новой, предназначенной исключительно для графики, шине, которую усиленно рекламирует как архитектуру, способную повысить производительность даже самых требовательных к ресурсам видео-, 2D-, 3D-приложений. Шина AGP - вместе с новым, специальным разъемом расширения - разгрузит шину PCI от потока видеоданных и предоставит им собственный скоростной путь к центральному процессору. Возникает лишь одна проблема: новая шина скорее запутает покупателей, нежели реально повысит быстродействие операций с двух- и трехмерной графикой. 

Почему Intel решила пойти на такие сложности, связанные с введением соединения нового типа? Если ответить коротко, то из-за 3D-графики. Преимущества шины AGP в полной мере могут проявиться в 3D-играх, развлекательных программах и пакетах, написанных с учетом ее возможностей. Она позволит им стать более реалистичными, использовать богатые графические возможности для оформления сцен. Кроме того, как уже упоминалось, новая шина должна уменьшить нагрузку на шину PCI, к разъемам которой помимо видеоадаптера сегодня подключается почти вся периферия - от сетевых адаптеров до звуковых плат. 

Не для всякого ПК

Не торопитесь! Не стоит тут же срываться с места и бросаться покупать AGP-плату. Чтобы получить преимущества от новой технологии, вам нужен либо ПК, оснащенный шиной и разъемом AGP, либо видеосистема AGP должна быть встроена в системную плату. Эти компоненты начали появляться в системах с процессором Pentium II только с сентября 1997 г. По секрету сообщаем необходимые ингредиенты: набор микросхем Intel 440LX и Microsoft Windows 95 OEM Service Release 2.1. Набор 440LX не только имеет поддержку AGP, но и допускает использование в машинах на базе Pentium II быстродействующей памяти SDRAM, которая обеспечивает более высокую производительность, чем ОЗУ типа EDO DRAM, применяемое в машинах Pentium II со старым набором микросхем 440FX. На всех новых ПК с процессором Pentium II, поставляемых с предустановленной Windows 95, должна быть инсталлирована версия OSR 2.1 этой операционной системы. Кроме того, нужно убедиться, что OSR 2.1 имеет дополнение для шины USB, включающее и 32-разрядный драйвер для поддержки шины AGP (таким дополнением комплектуются далеко не все машины на базе Pentium II). 

Так как аппаратные требования существенно ограничивают число ПК, которые можно модернизировать для поддержки AGP, изготовители видеоадаптеров пока не видят большого смысла в том, чтобы немедленно приступать к поставкам AGP-плат. Поэтому вполне вероятно, что пройдет еще четыре-шесть месяцев, прежде чем на полках магазинов появится богатый выбор видеоакселераторов для шины AGP. 

Чтобы выяснить, способна ли новая шина повысить производительность и обеспечить более реалистичный вывод трехмерной графики, мы протестировали пять первых серийных моделей AGP-плат. Наш вывод: возможно, видеоадаптеры для шины AGP улучшат визуальное восприятие программ, написанных специально с учетом AGP, но при использовании сегодняшних популярных приложений AGP если и дает преимущества, то весьма незначительные. Так, применение новой шины не приводит к заметному повышению производительности при работе с насыщенными 2D-графикой пакетами, например с PowerPoint, и даже в играх с поддержкой AGP скорость будет почти такая же, как и при использовании видеоадаптеров для шины PCI. 

Еще важнее то, что далеко не все графические платы AGP обладают равноценными функциональными возможностями. У некоторых из них отсутствует основная функция AGP-текстурирования, благодаря которой повышается производительность и улучшается визуальная детализация оптимизированных для AGP трехмерных графических программ. Причина? Опубликованная Intel спецификация AGP не требует от изготовителей обязательной поддержки большинства ее функций. 

В настоящий момент оптимизированные для AGP приложения найти не легче, чем дешевые дома в Сан-Франциско. Однако есть надежда, что во второй половине 1998 г. пользователям, мечтающим о высококачественной графике, будет предложена масса игр и несколько деловых 3D-пакетов, включая Caligari TrueSpace и Virtus ConceptCAD, способныe воспользоваться уникальными "талантами" шины AGP. 

Все пять протестированных плат имели микросхемы-ускорители 3D-графики и поддерживали некоторые новейшие графические технологии. Мы испытали OEM-версии плат ATI Xpert@Work, Diamond Viper V330, Matrox Millennium II AGP, Number Nine Revolution 3D и STB Velocity 128 AGP. Чтобы оценить производительность этих AGP-устройств, мы также протестировали версии тех же плат для шины PCI. Поскольку сегодня AGP-платы в основном доступны лишь как часть нового ПК, звание "Лучший выбор" присуждать было нельзя, но порекомендовать один видеоадаптер можно - это ATI Xpert@Work. 

Действительно ли AGP быстрее, чем PCI?

Если вы хотите заменить ваш графический адаптер PCI на AGP-плату только ради ускорения повседневной работы, то на прирост производительности можете не рассчитывать, по крайней мере сейчас, при использовании ныне доступных офисных Windows-приложений. Пять видеоплат были протестированы на оснащенной портом AGP машине Dell Dimension XPS D266 с процессором Pentium II. Модели обеих версий - AGP и PCI - проходили серию тестов, построенных на офисных и мультимедийных приложениях, включая 2D-графику, воспроизведение видео и 3D-игры. Результат? При работе с этими программами разницы в производительности между PCI- и AGP-вариантами плат практически не было. К примеру, показатели PC WorldBench у AGP- и PCI-версий четырех плат отличались не более чем на один балл, т. е. абсолютно несущественно. 

Тест с воспроизведением видеоклипа в формате MPEG-2 также не выявил никаких особых преимуществ AGP. Здесь было лишь одно исключение: плата STB Velocity 128 AGP продемонстрировала скорость вывода на 3 кадра в секунду более высокую, чем ее PCI-версия, также показавшая очень хороший результат - 30 кадров в секунду. И даже в тесте с не оптимизированной для AGP версией игры G-Police фирмы Psygnosis быстродействие большинства плат было практически одинаковым. 

Что же из этого следует? По мнению старшего аналитика журнала Microprocessor Report Питера Глазковского, нынешним 3D-программам, не оптимизированным для AGP, эта технология ничего предложить не может, так как качество 3D-вывода, определяемое количеством и видом многоугольников, не превосходит возможностей передачи данных шины PCI. Другими словами, пока еще не существует задач, для решения которых потребовалась бы шина AGP, ведь большая часть операций по выводу графики и видео не использует всей полосы пропускания современных плат PCI. Все это напоминает расширение и так свободной автомагистрали: появление дополнительных рядов не приведет к повышению скорости, потому что машины [существующих марок] и раньше беспрепятственно двигались с максимально возможной скоростью. 

Впрочем, на некоторых ПК преимущества новой шины можно ощутить и сегодня. Речь идет о системах с периферийными PCI-устройствами, например SCSI-адаптерами жестких дисков и PCI-версиями звуковых плат, которые могут настолько близко подойти к пределу пропускной способности шины PCI, что это отрицательно скажется на быстродействии видеосистемы. 

Еще одна причина равной производительности PCI- и AGP-версий плат заключается в том, что в них используются одни и те же микросхемы-акселераторы. В действительности значительно большая разница в быстродействии наблюдалась между платами этих пяти марок, а не между версиями одного продукта для PCI и AGP. 

AGP 3D: не скорость, но вид

Ну хорошо, мы выяснили, что AGP не может ускорить выполнение существующих программ. А как насчет игр и приложений, использующих возможности AGP по выводу трехмерной графики? В большинстве случаев AGP позволяет запускать насыщенные текстурами игры с реалистичными трехмерными сценами, которые "поставят на колени" шину PCI. 

Для подтверждения этого мы испытали AGP- и PCI-версии тех же пяти плат с помощью синтетического теста Final Reality, разработанного компанией VNU Labs на базе игрового ядра фирмы Remedy Entertainment. В этом тесте для создания сложных трехмерных сцен, способных сполна нагрузить графические платы так, чтобы им потребовалось задействовать основную память ПК, использовались текстуры общим объемом 16 Мбайт. Результат? Видеоадаптеры для шины PCI, а также AGP-версии плат, не поддерживающие текстурирование, просто "захлебнулись", выводя примерно 1 сцену в секунду. Платы AGP, поддерживающие текстурирование, продемонстрировали высокую скорость вывода - в среднем более 66 сцен в секунду. 

При запуске оптимизированной для AGP версии игры G-Police платы AGP и PCI показали примерно одинаковую скорость смены кадров. В случае, когда использовалась PCI-плата, G-Police, как все хорошо написанные AGP-игры, автоматически переключалась из режима с богатыми текстурами в "облегченный" режим. Поэтому разницы в скорости не наблюдалось, а вот качество изображения было различным. 

Ожидается, что с приходом технологии AGP наступит конец программам с уродливыми, чересчур упрощенными трехмерными изображениями. Запуская одну и ту же игру в двух разных версиях (с оптимизацией для AGP и без нее), мы воочию убедились, что значительно улучшилась детализация картинки. При тестировании с помощью оптимизированной для AGP версии игры G-Police мы заметили, что изображение взрывов уже не имеет острых углов, столь раздражающих в PCI-версии, а статичные вывески превратились в ослепительные знаки с быстрым видео. Причина улучшений в следующем: шина AGP способна передавать данные о 3D-объекте в процессор графической платы в несколько раз быстрее, чем шина PCI. 

Более качественное изображение, однако, не всегда означает более плавную игру. Протестированная модель STB Velocity в оптимизированной для AGP игре G-Police показала самую высокую скорость смены кадров за исключением тех случаев, когда приходилось отображать сцены, перегруженные текстурами. Каждый раз перед появлением на экране одной из таких сцен происходила раздражающая задержка из-за загрузки необходимых текстур. 

Удивительно, но две протестированные AGP-платы - Number Nine Revolution 3D и Matrox Millennium II AGP - имели почти такое же невысокое быстродействие, как и платы для шины PCI, причем и по визуальной оценке AGP-версии игры G-Police, и по производительности в контрольной задаче Final Reality. В тесте с G-Police обе эти платы выводили такие же несложные текстуры, что и платы PCI. В тесте Final Reality видеоадаптер Millennium II AGP выводил 1 сцену в секунду, а у модели Revolution 3D этот результат ненамного лучше - 1,6 сцены в секунду. В обоих случаях скорость вывода этих устройств была практически такой же, как и у их версий для шины PCI. 

Как выяснилось, Revolution 3D и Millennium II AGP в отличие от трех других плат не имеют поддержки функции текстурирования. Поэтому, хотя эти платы и работают на шине с частотой 66 МГц, их быстродействие почти такое же, как у плат для шины PCI с тактовой частотой 33 МГц. Когда тест требовал от платы извлечь данные с текстурами непосредственно из системной памяти, информацию сначала приходилось копировать в графический кадровый буфер, т. е. операция растягивалась на две стадии, что вызывало временные задержки. 

Представители фирм Matrox и Number Nine заявили, что их платы в основном предназначены для деловой аудитории, использующей 2D-приложения, а не для заядлых компьютерных игроков и пользователей, увлекающихся 3D-анимацией. Но тут сразу же возникает вопрос: почему в платах, официально именуемых AGP-совместимыми, может отсутствовать самая важная функция AGP? 

Спросим об этом Intel. Как разъяснил менеджер компании по маркетингу AGP Джим Нуччи, любая графическая плата, устанавливаемая в разъем AGP, считается платой AGP, причем не важно, работает ли она в режиме 1X, 2X, использует ли протокол PCI, имеет или не имеет высокопроизводительные функции. По мнению Intel, это всегда AGP. Другими словами, когда фирма Intel разрабатывала AGP, она не включила текстурирование в число обязательных функций для графических плат AGP. 

Текстуры и проблемы

В результате испытаний выяснилось, что плата может не иметь четырех различных функций AGP, но все равно будет называться "AGP-совместимой". Наиболее заметная характеристика плат - стандарты AGP 1X и AGP 2X. Платы 1X работают на частоте 66 МГц и обеспечивают скорость передачи данных 264 Мбайт/с, тогда как платы 2X имеют вдвое более широкую полосу пропускания - 528 Мбайт/с. Платы стандарта 2X при той же частоте 66 МГц передают данные быстрее, чем платы 1X, благодаря выполнению двух операций за один такт. 

Все это хорошо звучит и, может быть, в будущем будет не хуже работать. А пока тесты с оптимизированной для AGP версией G-Police выявили лишь небольшую разницу в частоте смены кадров для плат AGP и PCI. Единственной платой стандарта AGP 2X из числа протестированных была ATI Xpert@Work. В отличие от четырех других плат стандарта 1X, игра G-Police шла на AGP-изделии фирмы ATI чуть быстрее, чем на версии той же платы для шины PCI. Все платы 1X имели перед своими PCI-версиями либо совсем небольшое преимущество в скорости смены кадров, либо не имели его вовсе. 

Наиболее важная функция, по крайней мере при использовании оптимизированных для AGP трехмерных игр и ПО, - AGP-текстурирование, также называемое Intel режимом Direct Memory Execute (выполнение при непосредственном обращении к памяти). Благодаря этой функции графические платы AGP могут получать данные 3D-текстур прямо из системного ОЗУ, что позволяет включать в будущие игры трехмерные сцены с многомегабайтными текстурами для достижения высокой степени реалистичности. Как уже упоминалось, две из пяти протестированных плат AGP не имели этой функции и поэтому в AGP-версии G-Police выводили сцены с теми же "легкими" текстурами, что и платы PCI. 

Говоря об AGP, следует отметить еще две функции. Адресация по боковой полосе (sideband addressing) способствует ускорению передачи информации, изымая адресные и командные инструкции из потока данных и направляя их по боковой полосе в системный набор микросхем. Эта дополнительная дорожка снимает часть нагрузки со "скоростной автострады" AGP, что позволяет расширять полосу пропускания для передачи графических данных. 

Также повышает эффективность командного трафика функция конвейеризации (pipelining). Обычно графическая плата, отдав команду, ждет ответа, прежде чем приступить к следующей команде. В результате плата тратит массу времени перед "красным сигналом светофора". Функция конвейеризации позволяет ей отдавать в быстрой последовательности несколько команд, не ожидая ответа, - поток команд AGP не прерывается. 

Основная сложность для покупателя заключается в том, что он не знает, обладает ли данная AGP-плата четырьмя названными функциями или нет. Так, одна модель может соответствовать стандарту 1X и вместе с тем поддерживать текстуризацию, адресацию по боковой полосе и конвейеризацию, тогда как у другой, удовлетворяющей стандарту 2X, остальные три функции могут отсутствовать. Но, по мнению Intel, это не имеет значения, ведь считается, что все платы соответствуют стандарту AGP. 

Почему же Intel допустила возникновение такой путаницы с функциями? Видимо, чтобы ускорить появление продуктов для новой шины. Как считает Питер Глазковский, "Intel была озабочена тем, что большинство поставщиков графических плат не смогут обеспечить микросхемы стандарта 2X, и в этом она права. Конвейеризация, адресация по боковой полосе - все это достаточно трудно реализуемые вещи". 

Но это еще не все. Ожидается, что в 1998 г. Intel выпустит спецификацию AGP 4X, которая увеличит пропускную способность шины до 1 Гбайт/с или более. Пока компания отказывается обсуждать детали новой технологии, но, по мнению Глазковского, тактовая частота шины AGP 4X составит 133 МГц, т. е. будет вдвое выше нынешней, а графические платы станут выполнять по две операции за один такт. Не стоит рассчитывать, что вам удастся модернизировать сегодняшнюю AGP-систему, установив плату стандарта 4X, скорее всего, это будет невозможно. 

"Поскольку уровни сигналов будут другими, платы AGP 4X не станут работать ни с какой из реализаций AGP первого поколения", - отмечает Джон Латта, промышленный аналитик издания Wave Report. 

К выбору графической платы AGP нужно подходить очень ответственно, иначе велика вероятность приобрести модель, которая ничем существенным не будет отличаться от платы для шины PCI даже при запуске программ, оптимизированных для AGP. По словам Глазковского, большинство пользователей могут остаться разочарованными покупкой первых моделей графических адаптеров, системных плат и ПО с поддержкой AGP.