Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по интерфейсам ИС 2.doc
Скачиваний:
37
Добавлен:
20.11.2019
Размер:
2.33 Mб
Скачать

Интерфейс agp

Магистральный интерфейс AGP. Шина AGP

Все знают, что Accelerated Graphics Port (AGP) - особая высокоскоростная шина, предназначенная специально для видеокарты, в отличие от универсальных PCI и ISA. Она появилась одновременно с чипсетами для процессоров семейства Intel Pentium-II и теперь используется повсеместно.

Сначала видеокарты с 3D-ускорителями работали с памятью по шине PCI, закачивая текстуры в свою набортную (локальную) память, к которой и обращался конвейер рендеринга в ходе работы. С ростом сложности трехмерных сцен и повышением качества и размера текстур возникли две проблемы: 1) нужна обширная локальная видеопамять; 2) нужно обеспечить максимальную скорость подачи данных на конвейер. Шина PCI с задачей скорости не справлялась, так как на ней работает много других устройств. Видеопамять дорога, возможности ее расширения в общем случае отсутствуют. В итоге фирма Intel разрабатывает новую локальную шину на основе все той же PCI, но с учетом специфических требований видеокарт с 3D-ускорителем.

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

DMA и DME

Есть две причины, по которым видеочип обращается к основной (системной, оперативной) памяти. Первое - загрузить оттуда в свою видеопамять необходимые для работы данные (например, текстуры для очередной трехмерной сцены). Это - обычный режим DMA (Direct Memory Access), который используют, например, контроллеры жестких дисков. Не ради этого была задумана новая шина. Режим DME (Direct in Memory Execution) позволяет видеочипу использовать основную память как источник данных для конвейера, добавляя (подключая) основную память к своей локальной видеопамяти при необходимости. Так как основная память выделяется под нужды прикладных программ страницами по 4 Кб, нужно обеспечить имитацию непрерывного блока памяти. Был выбран метод трансляции адресов по таблице, причем то, как строится эта таблица и как обеспечивается переадресация, остается на совести разработчика чипсета и драйвера GART (Graphic Aperture Remapping Table). Апертура - это тот диапазон адресов, при обращении к которому включается механизм переадресации на реальные страницы памяти. Таким образом, конвейер рендеринга может обращаться за данными прямо к основной памяти, а не к своей локальной - это часто называют AGP-текстурированием.

SBA

Перед тем, как начать перекачку данных (транзакцию), нужно подать запрос и указать адрес блока основной памяти. Шина AGP предусматривает два механизма передачи адреса контроллеру AGP. Первый - передача по тем же каналам, по которым передаются данные. Адрес - 64-битный, передается за два приема (шина AGP - 32-битная, как и PCI). Второй способ - передача по отдельной боковой шине, адрес - 48-битный, боковая шина - 8-битная. Этот режим называется Sideband Addressing, SBA. Основной канал полностью отдается под данные, адреса по нему не передаются, в итоге загрузка шины более полная.

Четыре скорости передачи

Тактовая частота шины AGP в два раза выше частоты PCI и составляет 66 МГц. Таким образом, мы получаем 66x4=264 Мб/c. Этого было мало уже при проектировании шины AGP, поэтому была добавлена возможность передавать по два 4-байтных блока за один такт (добавлен еще один тактовый сигнал с частотой 133 МГц). Первый режим назвали 1x, второй - 2x. Однако и 528 Мб/с (133x4=528) для работающего в режиме DME конвейера недостаточно. Режим 4x подымает вдвое частоту дополнительного тактового сигнала, таким образом уже четыре блока передается за один такт. Рост частоты потребовал снижения диапазона изменения напряжения, поэтому видеочип, работающий в режиме 4х, ориентируется на 1.5В, а не на 3.3В. Вот откуда появились перемычки на некоторых видеокартах, поддерживающих этот режим работы.

Он стал достаточно мощным для высококачественной 3D-графики. Он стал достаточно мультимедийным для "живого" интерактивного видео и объемного звучания. В этом году на рынке будут господствовать системы на базе процессоров класса Pentium II и программы с такими возможностями представления информации, о которых пару лет назад и не догадывались пользователи персональных компьютеров.

Конструкция персональных компьютеров следующего поколения обеспечит производительность, требуемую для аркадного качества графики, интерактивных информационных 3D-систем, интерактивного видео, улучшенных приложений моделирования для систем CAD/CAM, захватывающей 3D-визуализации данных и новых трехмерных виртуальных миров VRML.

Однако появляющиеся уже сегодня приложения 3D-графики предъявляют к платформе РС целый букет жестких требований, которые для нее еще вчера были непосильны. Эти требования связаны с более быстрыми геометрическими вычислениями, более изощренными методами визуализации и более детализированными текстурами. Причем если новейшие процессоры, по производительности равные Pentium II, вполне способны справиться с возросшим объемом геометрических расчетов, а новое поколение чипов графических ускорителей поддерживает множество разнообразных эффектов визуализации, то растущий размер текстурных карт становится проблемой № 1.

Один из аспектов этой проблемы связан с объемом локальной видеопамяти, используемой графическим контроллером. Обычно на графической плате имеется 2 - 4 мегабайта такой памяти, в то время как уже появились 3D-приложения, использующие текстурные карты размером под 20 мегабайт. Видеопамять можно расширить, чтобы она удовлетворяла таким требованиям, но в результате компьютеры станут страшно дорогими и немасштабируемыми.

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

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

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

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

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

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

Локальная видеопамять обычно намного дороже, чем системная, и не может быть использована операционной системой для других целей, когда не востребована на графические нужды выполняемых приложений. Графическому контроллеру необходим как можно более быстрый доступ к локальной видеопамяти для обновления экрана, ее использования под Z-буферы и пиксели (буферы выводимого на экран и формируемого кадров). По этим причинам при использовании AGP программисты могут рассчитывать на получение большего объема текстурной памяти из общей памяти системы. Хранение текстур вне кадрового буфера обеспечивает поддержку больших разрешений экрана или Z-буферизацию для больших трехмерных сцен. Большинство новых 3D-приложений рассчитано на использование для хранения текстур от 2 до 16 мегабайт памяти. В случае AGP они могут ее получить.

Режимы передачи данных в AGP

Если максимальная скорость передачи данных по шине PCI составляет 132 мегабайта в секунду, AGP по той же частоте в 66 мегагерц способна пропустить 528 мегабайт в секунду. Столь значительное повышение скорости достигается, во-первых, за счет передачи данных как на передних, так и на задних фронтах 66-мегагерцевых тактовых импульсов, а также путем использования более эффективных режимов передачи данных. (Действительная скорость может отличаться для различных систем и приложений, но обычно она составляет 50 - 80% от пиковых значений при установившихся реальных процессах передачи данных.)

AGP предоставляет графическому контроллеру два режима для прямого доступа к текстурным картам в системной памяти: конвейеризацию и побочную адресацию. При конвейеризации AGP перекрывает время доступа к памяти или шине для запроса (n) выдачей последующих запросов (n+1, n+2 и т.д.). У шины PCI запрос n+1 не может начать выполняться, пока не будет закончена передача данных по запросу n. И если обе шины - и PCI, и AGP - способны передавать данные пакетами (передавать множество объектов данных последовательно в ответ на единственный запрос), это только частично скрывает неконвейерную сущность PCI. Глубина конвейеризации AGP зависит от ее реализации и остается невидимой для прикладных программ.

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

Распределение AGP-памяти

Так называемая AGP-память на деле является просто динамически выделяемой областью основной системной памяти, к которой организуется быстрый доступ графического контроллера. Высокая скорость обращения обеспечивается аппаратными средствами, встроенными в поддерживающие AGP чипсеты 440LX от Intel и Apollo VP3 от VIA.

Чипсет берет на себя трансляцию адресов, позволяя графическому контроллеру и его программному обеспечению "видеть" последовательную область в основной памяти, когда на самом деле она организована постранично и страницы не всегда являются смежными. Благодаря этому контроллер может обращаться к большим структурам данных, таким как растровые текстуры (обычно от 1 до 128 килобайт), как к единственному объекту (графическому примитиву). Встроенное в чипсет аппаратное обеспечение называется таблицей преобразования графических адресов (Graphics Address Remapping Table, GART) и работает подобно устройству страничного доступа к памяти, входящему в состав центрального процессора. Процессорные "линейные" виртуальные адреса преобразуются этим устройством в физические адреса. Эти физические адреса и используются для доступа к системной памяти, локальному кадровому буферу и AGP-памяти. Причем центральный процессор обращается к локальному кадровому буферу и AGP-памяти, используя такие же адреса, как и графический контроллер. Операционная система, следовательно, конфигурирует страничное устройство центрального процессора для прямого, один к одному, бестрансляционного преобразования виртуальных адресов в физические. Для доступа к AGP-памяти и графический контроллер, и процессор используют непрерывную "дыру" в адресном пространстве памяти размером в несколько мегабайт. В свою очередь GART транслирует эти виртуальные адреса в различные, возможно несмежные, 4-килобайтные страничные адреса в системной памяти. Устройства PCI, которые обращаются к области AGP-памяти (например, для оцифровки "живого" видео), также попадают туда через GART.

Преимущества AGP

Ключевые преимущества новой технологии AGP.

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

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

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

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

Что дает AGP разработчикам программ

Что могут сделать разработчики прикладного программного обеспечения с интерфейсом AGP? Тут есть две возможности: первая - ничего не делать; вторая - оптимизировать свои продукты под AGP. И в том, и в другом случае большое преимущество AGP заключается в большем количестве и большем размере текстур, обеспечивающем большую реалистичность 3D-графики без потерь в производительности.

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

Полностью поддерживающее AGP аппаратное обеспечение действительно способно сделать приложения более простыми. Однако устройства для РС с AGP могут создаваться по трем направлениям, и программное обеспечение, вполне возможно, должно будет поддерживать все три.

Тип 1. Эти устройства имеют интерфейс AGP, но не эксплуатируют его текстурные функции. Они просто передают данные быстрее, чем это позволяет шина PCI. Возможно, они не используют и конвейерные способности AGP или побочную адресацию.

Тип 2. Данные устройства визуализируют текстуры из AGP-памяти, поэтому приложения не нуждаются в свопинге текстур в локальную графическую память. Устройства могут также как иметь, так и не иметь возможности обрабатывать текстуры из локальной памяти. При этом, не работая с текстурами в локальной памяти, они могут функционировать быстрее, поскольку возможны конфликты при доступе к локальной памяти для записи пикселей, обновления экрана, чтения текселов и Z-значений.

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

DOS-приложения

Прямая обработка текстур в основной памяти требует использования GART, поскольку в современных операционных системах применяется схема виртуальной адресации. Но для приложений, работающих под управлением вчерашних операционных систем (таких как MS-DOS) без виртуальной адресации, использование GART в таких случаях бессмысленно.

Старые приложения, выполняемые под DOS, способны получить выигрыш от большей скорости AGP, но потребуется разработка новых драйверов, которые позволили бы им воспользоваться возможностью графического контроллера напрямую обращаться к текстурам, хранящимся в системной памяти.

Windows-приложения

Немодифицированные Windows-приложения получат пользу от ее AGP, поскольку операционная система и DirectDraw после незначительной доработки будут поддерживать ее по умолчанию. Сегодня AGP уже поддерживается DirectX пятой версии.

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

В системах на базе процессоров Pentium II эта некэшируемая графическая память может быть помечена операционной системой как память с "комбинированной записью" (Write Combining, WC), что обеспечивает существенно более быстрый доступ по записи, чем обычный атрибут "некэшируемая" (Uncacheable, UC). Области памяти WC разрешают центральному процессору "скомбинировать" несколько дискретных обращений по записи в пакет записи для передачи по шине, когда та станет доступна. Для этого используются встроенные в чип специально выделенные буферы записи. За исключением большей скорости, механизм WC остается невидимым для приложений.

Если обращения процессора по чтению для WC не быстрее, чем для UC, то использование UC-памяти может заставить процессор Pentium II перейти к большей степени последовательным вычислениям, что существенно замедлит его работу. То, что несколько обращений по записи могут быть собраны вместе перед выходом за пределы центрального процессора, способно повлиять на работу драйверов аппаратных устройств, которые могут оказаться чувствительными к многочисленным последовательным обращениям по записи к одному месту в памяти, и выстраивает их строго по очереди.

Распределение памяти

в DirectDraw

Если приложение специально не потребует иначе, Microsoft DirectDraw по умолчанию выделяет память под текстуры в следующем порядке:

- локальная графическая память контроллера;

- основная AGP-память;

- системная память.

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

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

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

Без MIP-текстурирования чип должен пропустить множество байтов большой текстурной карты (с единым разрешением), чтобы найти правильные текселы для каждого выводимого на экран пикселя. Адреса памяти изменяются на большую величину, и ее пропускная способность падает.

Что дает AGP пользователям

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

Они сулят множество преимуществ. Станет возможным использование текстурных карт неограниченного размера, детальности и реалистичности. 3D-приложения будут выполняться намного быстрее, когда отпадет необходимость в упреждающей выборке текстур в локальную память графического контроллера. Насколько? Тест Ziff-Davis 3D WinBench 97 показывает, что при применении AGP скорость вывода 3D-изображений (в кадрах в секунду) может возрасти в 12.6 раза! По шине AGP поток видеоданных без задержек пройдет от процессора к экрану монитора, поэтому качество "живого" видео на РС будет ничуть не хуже телевизионного.

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

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

Это, скорее всего, связано с тем, что большинство приложений и операционных систем, так же как и тестовых программ, еще не "научились" использовать мощь новой технологии. В частности, при небольших 3D-сценах (640 х 480 пикселей) иногда PCI-версии графических ускорителей даже оказываются чуть быстрее, чем их AGP-аналоги. Впрочем, уже сегодня при переходе на большие 3D-сцены (800 х 600 или 1,024 х 768 пикселей) и текстуры высокой реалистичности отрыв по производительности систем на базе AGP становится очевидным.

AGP на практике

Однако жизнь показала несостоятельность ключевых идей, лежащих в основе AGP. Конечно, было бы хорошо вообще выкинуть большую часть памяти из состава видеокарты, оставив только буфер кадра (в котором каждому пикселю на экране соответствует 16 или 32 бита) и Z-буфер, а все текстуры поставлять прямо из основной памяти. Но режим DME современными видеочипами практически не используется! Причина - пропускная способность системной памяти. Например, память PC100 позволяет получать данные со скоростью 8x100=800 Мб/с (шина памяти - 64-битная), половину этой пропускной способности займет процессор (хорошо еще, что у него есть кэш, который позволяет обращаться к памяти только в 5% случаев) и контроллеры, работающие в режиме DMA. В итоге имеем всего 400 Мб/с. Сравните - локальная видеопамять, которая работает на частоте около 200 МГц, имеет шину шириной (на современных видеокартах) 256 бит - 16х200=3200 Мб/c. Какой тогда смысл использовать канал AGP? Лучше нарастить память на борту видеокарты.

Выход есть, конечно. Первое - сжимать текстуры. Этот способ одинаково подходит и для основной, и для локальной памяти. Первой до этого додумалась S3 - для ее чипов это было наиболее актуально, потому что "Саваджи" имели узкую шину локальной памяти - 64 бита. Теперь сжатие текстур используют все современные ускорители. Второй трюк - тайловая архитектура (чипы серии PowerVR), текстурирование только тех треугольников, которые не будут закрыты другими на экране. Третий способ - передача данных на удвоенной скорости. Это - память DDR, скоро она будет использоваться в качестве не только локальной видеопамяти, но и обычной системной. Но к тому времени требования к скорости обмена данными между чипом и памятью поднимутся еще выше, так что постоянный рост объемов памяти на борту видеокарт будет продолжаться.

Решаем проблемы

Итак, вместо облегчения жизни новая шина приносит новые проблемы. Заставить работать AGP-видеокарту удается далеко не каждому. Особенно если используется материнская плата на чипсете не от "автора" самой шины (я имею в виду Intel, конечно), что усугубляется "умелым" производителем вроде Acorp или Zida. Особенно если производитель видеокарты настолько скромен, что не решается обозначить себя.

Проблемы именно с AGP диагностируются просто. Видеокарта нормально работает в обычном режиме Windows (GUI), а при попытке запустить любую 3D-игру намертво зависает либо сразу же либо через весьма непродолжительный промежуток времени.

Первое, что нужно сделать - зайти в BIOS Setup и проверить следующие вещи:

Assign IRQ to VGA = Enabled, PCI/VGA Palette Snoop = Disabled

AGP Aperture Size = 64M

Можно также Shadow Video BIOS = Disabled, Video RAM Cacheable = Disabled, Video ROM Cacheable = Disabled

Кроме того, Windows должна иметь версию не ниже 95OSR2.1 с usbsupp-патчем, установлен DirectX 7 и последний видеодрайвер, а для не-Intel-чипсетов - последний AGP-драйвер.

Если все это соблюдается, то причину неработоспособности AGP-шины нужно искать в невозможности одной из сторон - чипсета или видеочипа - правильно работать в установленном драйверами режиме. Причем в случае с чипсетами от VIA, ALi или AMD причина, скорее всего, будет в чипсете.

Посмотреть текущий режим работы AGP и спланировать свои дальнейшие действия можно с помощью большого количества утилит. Например, Sisoft Sandra показывает в модуле "Motherboard Information" пункт "AGP Bus", можно использовать программу PCIList или PowerStrip, или WCPUID.

Апертура. Этот параметр в BIOS Setup не означает, как думают некоторые, количество видеопамяти. Это диапазон адресов для работы механизма DME. Размер апертуры должен соответствовать половине основной памяти, но не быть меньше 64. Если ее уменьшить до минимума, шина AGP будет работать только в режиме PCI, проблемы сразу исчезнут - вместе с изрядной долей производительности.

SBA. Очень часто этот режим нормально не работает, поэтому всегда есть смысл попробовать его отключить. Как это делать - смотрите ниже. При этом вы потеряете около 10% производительности.

AGP 1x, 2x, 4x. Если проблема не решается, нужно понижать скорость работы шины AGP - до 1х. Особенно это помогает при разгоне процессора поднятием частоты шины процессора (FSB), так как вместе с ней поднимается частота шины AGP. Для дешевых видеокарт - особенно актуально.

Управление режимом AGP со стороны чипсета

Если есть возможность установить режим в BIOS Setup - хорошо, но часто такой возможности нет, поэтому придется полазить в реестре.

Режимом работы чипсета с шиной AGP управляет тот же драйвер, что осуществляет табличную переадресацию. Называется он VGARTD.VXD - для чипсета Intel, VIAGART.VXD для VIA, AGARTD.VXD для ALi и т.п.

ALi. Для этих чипсетов все просто - с AGP-драйвером идет утилита.

VIA. Найдите в реестре раздел "HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Services\VxD\VIAGART", в нем будут ключи "Sideband" (0-выкл., 1-вкл.) и "Turbo" (0-AGP1x, 1-AGP2x/4x).

Intel. Управление отсутствует, хотя точно есть возможность принудительного включения AGP1x (если знаете как - сообщите).

Управление режимом AGP со стороны видеочипа

Очень часто производители видеокарт поставляют вместе со своими драйверами утилиты (пример - Creative AGP Wizard), которые позволяют управлять режимом AGP. Фирма AOpen изготовила BIOS с возможностью установки всех параметров с помощью вызываемого при загрузке Setup. ASUS предоставляет возможность заменить VideoBIOS с отключенным Sideband на BIOS с включенным. Но это - только частные случаи.

nVidia. Референсные драйверы (т.н. Detonator) имеют возможность управлять скоростью обмена данными по шине AGP. В реестре есть ключи по адресу "HKEY_LOCAL_MACHINE\Software\NVIDIA Corporation\Global\System":

ReqAGPRate (тип dword) - 1=1x, 2=2x, 3=3x

EnableIrongateSBA (тип dword) - режим Sideband для чипсета AMD750

Super7Compat (тип dword) - для материнских плат под Socket7 может помочь установка значения 1.

S3. Есть утилитка S3Tweak - она все и решает.

Matrox. Совсем недавно появилась утилита Matrox Tweak.

С другими видеокартами не сталкивался, либо для них нет подобной возможности. Для них есть кое-что другое.

Утилита PowerStrip, разработка фирмы Entech, универсальное средство настройки частоты развертки монитора и режима работы видеокарты. В последних версиях появилась возможность изменять режим работы AGP "на лету". Для этого есть параметры командной строки:

/AGP:xx - где хх может быть 1х, 2х или 4х

/SBA:xx - где хх принимает значения on или off.

Вообще-то не каждая видеокарта позволит PowerStrip сменить режим. RivaTNT2 работает, а вот ATI Rage128 вешается намертво.

Проблемы с питанием

С современными видеокартами (особенно GeForce и более новые) может случиться и такая проблема. Особенно на старых материнских платах (на чипсете LX, например) или питаемых от блока питания не-ATX. Симптомы - зависание через определенный (постоянный) промежуток времени либо в играх, либо прямо в Windows (самый тяжелый случай). При наличии аппаратного мониторинга срабатывает "сирена", которая отключается через пару секунд.

AGP-слот может получать напряжение (3.3 В) либо непосредственно от блока питания, либо через стабилизатор на материнской плате. В последнем случае питание видеокарты получается очень стабильным, но в случае "прожорливого" GeForce или Voodoo3 наверняка возникнут проблемы. Кстати, Voodoo5 использует обычный разъем питания, как CD-ROM или винчестер. У плат Gigabyte есть возможность переключиться на режим питания от БП - перемычки называются "Voodoo3 enable". В других случаях нужно либо менять БП на более мощный, либо материнскую плату - на более современную.

Проблемы с перегревом

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

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

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

_________________

Заключение

Сегодня владельцы новых РС могут наслаждаться впечатляющей трехмерной графикой и видео, уровень качества которых раньше был доступен только на рабочих станциях с очень большой стоимостью. И достичь этого удалось во многом благодаря разработкам корпорации Intel, новые процессоры Pentium которой в сочетании с созданным ею специальным ускоренным графическим портом (Accellerated Graphics Port, AGP) сделали реалистичную 3D-графику и "живое" видео доступными массовому пользователю.

Эти передовые разработки открывают возможности дальнейшего развития архитектуры персональных компьютеров платформы РС и позволяют перейти от ограниченных пропускной способностью шины PCI машин к "визуальным" компьютерам будущего (Visual Connected PC). Время сделать это уже настало.