Matrox G400: первый взгляд

Канадская компания Matrox, занимающаяся разработками в области графики и видео уже более 20 лет и производящая графические акселераторы на базе собственных чипов 16 марта 1999 года официально анонсировала шестое поколение своих 2D/3D/Video ускорителей под общим названием G400.

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

Вообще, Matrox всегда славилась умением делать качественные 2D и Video решения, но вот в области 3D графики деятельность компании нельзя назвать очень успешной. Достаточно вспомнить серию G200, для которой до сих пор не сделан полноценный OpenGL ICD, пользователи вынуждены довольствоваться бета драйверами. Будем надеяться, что в случае с G400 Matrox не только предложит нам оригинальные и современные новации в области архитектуры, но и позаботится о соответствующих драйверах и о поддержке со стороны разработчиков приложений. Не секрет, что многие поклонники продукции Matrox потеряли доверие к компании и чтобы вернуть их расположение и привлечь новых сторонников специалистам из Matrox придется выложиться на полную.

Ну что же, посмотрим внимательно на спецификации G400:

  • Чип будет производиться с использованием 0.25 мкм технологического процесса
  • Поддержка AGP x2/x4
  • Symmetric Rendering Architecture (SRA): наложение текстур, загружаемых параллельно из локальной видео памяти и из AGP памяти.
  • 3D Rendering Array Processor: обеспечивает высокую производительность (обещают в три раза выше, чем у G200)
  • 256-бит внутренняя шина DualBus
  • Архитектура VCQ2 (Vibrant Color Quality2): обеспечивает высокое качество воспроизведения графики при использовании мультитекстурирования, за счет добавления блока для точного выполнения операций альфа смешивания (alpha blending). Все операции выполняются с 32-битной точностью.
  • Технология UltraSharp DAC: призвана обеспечить качественное изображение в высоких разрешениях при использовании аналогового сигнала
  • 300 Мгц RAMDAC. На самом деле в спецификации написано до 300 МГц, а в ранних спецификациях фигурирует цифра 280 МГц, поэтому, скорее всего, в младших версиях плат, типа Mystique G400 будет 280 MHz RAMDAC, а в старших типа Millennium G400 будет 300 MHz RAMDAC. Но это всего лишь наши предположения.
  • Поддержка локальной видео памяти от 8 до 32 Мб типа SDRAM/SGRAM
  • Интерфейс памяти имеет разрядность 128-бит
  • разрешения до 2056х1536 в 32-бит цвете
  • внутренние операции с использованием 32-бит представления данных
  • 16/24/32-бит Z-буфер (возможен режим 24+8 бит, когда 8 бит используется для буфера шаблонов, оверлеев и т.д.)
  • 8-бит буфер шаблонов
  • Аппаратное рельефное текстурирование с использованием карт окружающей среды (Поддерживается в DX6)
  • Однопроходное мультитекстурирование
  • Поддержка 32-битных текстур размером до 2048x2048
  • обработка более 5 миллионов треугольников в секунду
  • Скорость закраски примитивов около 300 млн. текселей/сек
  • Поддержка анизотропной и трилинейной фильтрации (по 8 пикселям), 11 уровневый мипмаппинг
  • Полный антиалиасинг сцены и краевой антиалиасинг для полигонов и линий (по векторам и вершинам)
  • Поддержка альфа-смешения, табличного тумана и зеркального освещения.
  • Частичная аппаратная поддержка декодирования DVD потоков: масштабирование, motion compensation (компенсация движения), наложение субтитров
  • Технология DualHead Display, обеспечивающая возможность вывода сразу на два устройства отображения
  • Архитектура Motion Video Rendering (MVR): призвана ускорять применение видео эффектов в приложениях для редактирования и обработки видео; обеспечивает легкое встраивание живого видео в трехмерную среду, например, в игры и системы моделирования.
  • Максимально возможное разрешение в 2D/3D при установленных 32 Мб локальной видео памяти: 65K цветов при разрешении 2048 x 1536 и 16.7M цветов при разрешении 2048 x 1536
  • Поддерждка D3D и OpenGL ICD
  • Ожидается, что в драйверах будет реализована поддержка SSE инструкций Pentium III, поддержка воспроизведения эффектов Chrome, поддержка 3DNow!, а также поддержка DX7, K7 и Windows2000 (последние три в III квартале).

Теперь остановимся подробно на некоторых особенностях.

Архитектура 256-bit DualBus

В основу G400 положена архитектура 128-разрядной двойной шины (128-bit DualBus) чипа G200, при этом в G400 удвоена ширина полосы пропускания графического движка за счет применения первой в промышленности архитектуры 256-разрядной двойной шины (256-bit DualBus).

Тут на память приходят события конца 1996 года, когда в сети на сайтах ATi и Matrox развернулась настоящая информационная война. Уважаемые компании опустились очень низко, поливая друг друга грязью. Каждая заявляла, что ее укоритель лучше, работает быстрее и выводит более качественное изображение. Тогда Matrox немного подумав, заявила, что "На самом деле у Millennium не 64 разрядная, а 256 разрядная шина, просто мы по-другому высчитываем разрядность!". Вот так вот. Прошло три года и Matrox заявляет о первой промышленной 256-рязрядной шине у чипа G400. Ну ладно, будем надеяться, что Matrox не ошиблась в расчетах на этот раз. :-)

Архитектура 256-разрядной DualBus представляет собой объединение двух независимых однонаправленных 128-разрядных шин (unidirectional 128-bit bus), работающих параллельно. Два встроенных буфера хранят инструкции и/или данные. За каждый такт работы чипа, данные пересылаются из входного буфера (input buffer) в графический движок через 128-разрядную внутреннюю шину ввода и в течение того же такта чипа, обработанные данные передаются из графического движка в выходной буфер (output buffer) через 128-разрядную внутреннюю шину вывода. Логика мультиплексирования (уплотнения) данных управляет буферами данных с тем, чтобы обеспечивалось непрерывная передача данных по внутренним шинам, в результате исключаются простои шин. Потенциал двойной шины некоторым образом ограничен пропускной способностью внешней 128-разрядной двунаправленной (bidirectional) шины памяти.

Тем не менее, Matrox уверена, что общая внешняя пропускная способность 256-разрядной DualBus будет возрастать, т.е. хорошо масштабироваться, при использовании более быстрой памяти. При этом, тактовая частота работы локальной памяти может быть намного выше тактовой частоты графического процессора. В то время как явные и самые большие преимущества использование 256-разрядной DualBus оказывает на производительность в 2D, ожидается, что процесс обработки 3D графики будет происходить быстрее.

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

Одним из преимуществ 256-bit DualBus является использование конвейеризации команд. В результате чего исключается возможность существования пустых циклов между командами. Например, в то время, как из входного буфера поступает команда в графический движок, выходной буфер еще заканчивает считывать результаты выполнения текущей команды. В результате, так как следующая порция данных для обработки процессором всегда доступна во входном буфере, они могут быть пересланы в графический движок немедленно. В итоге гарантируется непрерывная передача потока инструкций/команд в графический движок.

Логично предположить, что в скором времени наличие 256-битной шины станет промышленным стандартом, так же, как сегодня это 128-разрядная внутренняя шина у графических акселераторов.

Ядро 3D графики

Matrox использовала несколько причудливых терминов для описания ядра 3D графики. Так, применение "3D rendering array processor" (процессор, работающий с массивами данных для воспроизведения 3D графики) позволяет параллельно осуществлять однопроходное мультитекстурирование и расположение в пространстве нескольких треугольников (см. иллюстрацию справа). Информация из пресс-релиза дает основания предполагать, что в G400 будут применяться два движка определяющих положение полигонов в пространстве (setup engine), которые способны обрабатывать более 5 миллионов треугольников в секунду. Основываясь на этом, есть соблазн предположить, что G400 может воспроизводить на экране два пикселя за один такт. Однако молчание Matrox о такой возможности в официальных заявлениях не дает оснований верить таким предположениям. Другой причудливый термин это архитектура "Vibrant Color Quality2, VCQ2", которая связана с обеспечением внутренней 32-битной точности при текстурировании и работе конвейера рендеринга.

Вообще, VCQ2 означает воспроизведение "живого" цвета, а цифра два говорит, что это уже второе поколение технологии. VCQ1 использовалась в G200. При этом VCQ2 специально разработана, чтобы обеспечить высокое качество изображения и живой цвет при использовании мультитекстурирования. При мультитекстурировании используется комбинирование или смешивание нескольких текстур при наложении на один полигон. При недостаточной точности выполняемых операций, результирующее изображение может быть очень некачественным и изобиловать артефактами. Решает эти задачи механизм VCQ2, обеспечивающий высокую точность операций и буферизацию на всем протяжении 3D конвейера рендеринга. Качество конечного изображения при использовании VCQ2 должно гарантироваться наличием следующих возможностей:

  • Все операции на протяжении всего конвейера 3D рендеринга осуществляются с 32-битной точностью
  • Используются 32-разрядные буферы накопления данных
  • При некоторых операциях может использоваться 64-битная точность, т.е. на каждый из каналов RGBA отводится по 16 бит, а затем происходит преобразование до 8-бит
  • Воспроизведение графики происходит в 32-битном представлении цвета, что гарантирует выполнение всех внутренних операций с 32-битной точностью
  • Имеется возможность работы с 32-битными текстурами. (Текстуры могут иметь размеры до 2048х2048)
  • Поддерживается 16-, 24-, 32- и 24+8-бит Z-буферизация. При этом в режиме 24+8 бит, 8-бит используются под оверлеи, шаблоны и т.д.
  • После выполнения всех операций с 32-битной точностью, воспроизведение графики может осуществляться с 16-битной точностью с использованием растрирования, в результате качество изображения должно повышаться.
  • Все операции могут выполняться на пиксельном и тексельном уровне, что повышает точность и качество конечного изображения
  • 8-разрядные коэффициенты обеспечивают высокое качество билинейной, трилинейной и анизотропной фильтрации.
  • Для качественного преобразования цифрового в аналоговый сигнал применяется технология UltraSharp.

Использование 32-битной точности во всех операциях конвейера 3D рендеринга способствует повышению качества воспроизводимого изображения, которое получается более естественным, с плавными цветовыми переходами. Особенно критично использование 32-битных операций при использовании 32-битных текстур и текстур большого размера, широкое применение которых уже не за горами.


Изображение выведено при 32-битной глубине представления цвета

Использование 32-битной глубины представления цвета позволяет добиться более естественного изображения, за счет наличия большего числа оттенков каждого цвета (по 256) и 256 градаций полупрозрачности. Напротив, при 16-битной глубине представления доступно по 32 оттенка каждого цвета и 32 градации полупрозрачности. В первом случае для использования доступно 16.7 млн. цветов, а во втором 65 тысяч цветов. Особенно сильно разница между воспроизведением с различной точностью заметно, если режим вашего дисплея установлен в 32-бит. Если режим вывода установлен в 16-бит, то все операции осуществляются с 32-битной точностью, а при выводе на экран происходит растрирование до 16 бит точности.

 
При воспроизведении использовалась
32-битная глубина
представления цвета
   При воспроизведении использовалась
16-битная глубина
представления цвета

Несмотря на то, что G400 является полноценным AGP x2 устройством, он также поддерживает режим AGP x4, что обеспечивает возможность использовать полосу пропускания в 1 Гб/сек, которая будет весьма кстати для жадных до скоростных каналов передачи данных графических приложений. Напомним, что полная поддержка AGP x2/x4 означает поддержку DME (хранение/загрузка текстур в оперативной памяти), SBA (адресация по боковой полосе), конвейеризацию процессов и чтение/запись в режиме x4. Более того, G400 обладает уникальным свойством многопоточного захвата управлением шины, что позволяет в режиме прямого доступа к памяти извлекать команды и данные из различных областей системной памяти. Эта возможность уравновешивает потребности нового поколения 3D игр в передаче данных команд, данных о вершинах полигонов в пространстве и текстурных данных, располагающихся в различных областях системной памяти через шину AGP в графический движок. Кроме этого, G400 обладает способностью сокращения длительных временных задержек при получении данных через шину AGP. Большие по емкости буферы внутри G400 позволяют инициировать Extended Bus Transactions (более длительный режим передачи данных по шине) на шине AGP для увеличения оптимизации потоков данных. Комбинация этих возможностей позволяет G400 поддерживать скоростную и эффективную полосу пропускания на шине AGP для достижения лучшей производительности в реальных приложениях. Посмотрим, так ли это обстоит на самом деле, когда появятся первые карты на G400.

Термин "Symmetric rendering architecture" (SRA) описывает наложение текстур, загружаемых параллельно из локальной видео памяти и из AGP памяти. Более того, благодаря SRA, G400 может осуществлять прорисовку и построение изображений непосредственно в системной памяти так, как если бы это была локальная видео память и считывать данные из системной памяти на скоростях AGP x4. Благодаря SRA, G400 использует в полной мере все преимущества параллельного использования локальной видео памяти и системной памяти, в результате чего достигается оптимальная производительность в приложениях.

В чипе G400 сохранилась иерархическая система текстурирования от его предшественника. Наложение маленьких, часто используемых текстур, происходит путем их загрузки из локальной видео памяти или из объемного кэша, расположенного в чипе. В то время как большие (до 2048х2048 пикселей) текстуры или нечасто используемые текстуры, накладываются, загружаясь из системной памяти, т.е. используется AGP текстурирование. Встроенный в G400 специальный контроллер памяти под управлением драйверов управляет оптимальным распределением доступных ресурсов памяти с тем, что их использование было эффективным. Плюс ко всему, SRA дает возможность использовать преимущества больших объемов локальной видео памяти (до 32 Мб), позволяя использовать тройную буферизацию в высоких разрешениях и хранить в локальной памяти текстуры. Двумерные побитовые отображения (bitmaps) используют возможности SRA аналогичным способом, как и 3D текстуры. И в заключение, объем локальной видео памяти с быстрым доступом может быть расширен за счет использования системной памяти на скоростях чтения/записи AGP x4, что является большим преимуществом в приложениях компрессии/декомпрессии видео, требующих интенсивного использования полосы пропускания.

Уникальной возможностью 3D ядра является дополнительная специфическая схема, обеспечивающая рельефное текстурирование с использованием карт окружающей среды (environment mapped bump mapping).

Environment mapped bump mapping

Пользователи хотят от разработчиков все большего реализма создаваемого 3D мира в приложениях. Разработчики аппаратной части идут на встречу пожеланиям пользователей и потребностям создателей игр. Вполне логично, что следующей функцией, которая достойна развития и улучшения стала именно аппаратная реализация рельефного текстурирования. Matrox G400 поддерживает аппаратное ускорение рельефного текстурирования с использованием карт окружающей среды. Environment mapped bump mapping представляет собой комбинирование трех различных текстурных карт для каждого пикселя: карты рельефа (bump map), карты окружающей среды (environment map) и базовой карты (base map), не являющейся обязательной.

Карта рельефной текстуры представляет собой карту высот в форме полутонового черно-белого побитового отображения (grayscale bitmap). Эта информация о высотах преобразуется в рельефную карту. Рельефная карта содержит значения смещений для каждой координаты текселя рельефной текстуры. Эти значения считываются первым блоком обработки текстур (texture unit one) и затем используются блоком обработки рельефной карты (bump map unit) для сдвига координат карты окружения (environment map). Затем происходит выборка текселей по смещенным (или "perturbed", с отклонениями) координатам карты окружения и передаются во второй блок обработки текстур (texture unit two). Карта окружения, показанная справа представляет собой черно-белую карту освещенности с одним источником света. Эта карта может также представлять несколько многоцветных источников света. Тексели карты окружения, имеющие отклонения в координатах хранятся в пиксельном кэше, если таковой имеется. На этом завершается первый проход.

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

Преимущества environment mapped bump mapping

Метод environment mapped bump mapping может обеспечивать наложение текстур с использованием карт освещенности, содержащих несколько статичных источников света за один проход. Однако в случае движущихся источников света, карта окружения должна рассчитываться и обновляться для каждой сцены. Рельефная карта может также изменяться в режиме реального времени для того, чтобы создавать процедурное рельефное текстурирование (procedural bump mapping), т.е. создание рельефа специально заданным методом. За счет добавления базовой текстуры становится возможным применять эффекты искажения. Так как рельеф рассчитывается для каждого пикселя, визуальные артефакты будут менее заметны. Метод environment mapped bump mapping может рассматриваться в качестве более устойчивой техники по сравнению с embossed bump mapping (рельефное текстурирование путем выдавливания), так как нет никаких ограничений относительно угла падения света на поверхность или области рельефа, которую можно воспроизвести. Немаловажным является и тот факт, что рельефное текстурирование с использованием карт окружающей среды поддерживается DX6, т.е. является промышленным стандартом.

Несмотря на эти преимущества, нужно помнить, что метод environment mapped bump mapping часто представляет собой двух проходную процедуру, что влечет за собой потерю производительности.


Рельефное текстурирование с использованием карт окружающей среды

А что же поддержка со стороны разработчиков приложений? Тут пока все обстоит благополучно. Уже анонсировано более десятка игр, в которых будет использоваться рельефное текстурирование с использованием карт окружающей среды. Среди них:

  • Slave Zero от Accolade
  • Heavy Gear 2 demo от Activision
  • Expendable от Rage Software
  • Messiah от Shiny
  • Descent III от Interplay/Outrage
  • Draken от Psygnosis
  • SpeedBusters от Ubisoft
  • Rally Masters от DICE
  • Midnight GT Racing, Hostile Waters и Dispatched от Rage Software
  • ShadowMan от Iguana
  • Team Alligator и Jump Runner от Simis

Ну что же, наличие такого списка не может не радовать. Это значит, что есть вероятность того, что возможности G400 можно будет применить на практике.

Буфер шаблонов

Применение буфера шаблонов (stencil buffer) позволяет улучшить общее качество отображаемой сцены при использовании специальных эффектов, освобождая в тоже время графический движок от лишнего рендеринга. Подобно Z-буферизации, шаблонная буферизация определяет, когда конкретный пиксель должен быть воспроизведен, а когда нет. Тем не менее, в отличие от Z-буфера, который содержит значения глубины, буфер шаблонов содержит шаблон или маску кадра, который воспроизводится. Кабина самолета в авиа симуляторе является простейшим примером того, как можно использовать буфер шаблонов. Внутри кабины самолета в качестве шаблона используется маска сложных сцен, в тоже время внешний ландшафт видим только в областях, определяемых шаблонной маской (см. рис.). Вместо того чтобы воспроизводить весь ландшафт и затем производить перекрытие его кабиной (overlay), 3D движок должен осуществлять обновление ландшафта видимого через блистер.

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

Шаблонная маска минимальной сложности будет представлять собой бинарный стенсель или шаблон (определяемый одним битом). Не смотря на это, Matrox G400 поддерживает до 8-бит стенсельную буферизацию, которая может использоваться для определения масок условий в зависимости от значений в буфере. Другими словами, стенсельная буферизация может использоваться для интересных и потрясающих эффектов таких, как постепенное исчезновение (dissolves) и трансформации (transitions), а также для рендеринга компланарных текстур таких, как плоские и объемные тени, силуэты, следы от заносов, ожогов или кровь. Напомним, что Matrox G400 поддерживает следующие режимы Z-буфера:

  • 16-bit Z-buffer
  • 8-bit стенсель плюс 24-bit Z-buffer
  • 32-bit Z-buffer

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

Технология DualHead Display

Эта технология Matrox позволяет подключать к картам на базе G400 различные типы устройств воспроизведения изображения (аналоговые RGB мониторы, цифровые и аналоговые плоскопанельные мониторы и обычные PAL/NTSC телевизоры). Более того, вы можете подключать одновременно два различных устройства отображения и выводить на них различные изображения. В качестве основного устройства вывода используется стандартный RGB монитор (или аналоговый плоскопанельный монитор) с рабочим разрешением до 2048х1536, а в паре к нему вы можете подключить:

  • Еще один RGB монитор (или аналоговый плоскопанельный монитор) с разрешением до 1280х1024
  • Цифровой плоскопанельный монитор с разрешением до 1280х1024
  • PAL/NTCS/SECAM телевизор с разрешением до 1024х768

Для реализации такого подключения необходимо, чтобы на карте с чипом G400 был установлен дополнительный модуль, который может идти в стандартной комплектации, либо подключаться в виде дочерней карты. Заметим, что формирует изображения для обоих устройств отображения один и тот же чип G400, благодаря двум встроенным CRTC (Cathode Ray Tube Controller). Первый контроллер катодно-лучевой трубки (CRTC1) передает данные во встроенный RAMDAC, после чего, уже в аналоговом виде, данные передаются в основной монитор, где и формируется изображение. Второй CRTC2 подключается к дополнительному модулю, который может быть интегрирован на карту или подключаться в виде дочерней карты. В качестве дополнительных модулей видео вывода (встроенных на карту или внешних) применяются:

  • Чип Matrox MGA-TVO для подключения телевизора или RGB монитора
  • Трансмиттер Matrox Flat Panel для подключения цифровых плоскопанельных мониторов через DFP интерфейс, недавно стандартизированный VESA

Эти два контроллера CRTC могут получать данные независимо из различных мест в буфере дисплея или AGP памяти. Более того, эти CRTC могут считывать одно и тоже изображения с разной частотой обновления.

Чип Matrox MGA-TVO представляет собой высококачественный видео кодировщик, который может выдавать NTSC, PAL или SECAM сигнал на телевизор. Кроме этого, MGA-TVO может выводить RGB поток с разрешением до 1280х1024 при 32-битном представлении цвета с частотой обновления 60 Гц на второй RGB монитор.

Технология DualHead Display поддерживает функцию Windows98, которая позволяет выводить с одной видео карты изображение на два монитора, растягивая рабочий стол (desktop) на два экрана. Эта же возможность будет и в Windows 2000. При этом, например, вы можете развернуть одно окно с игрой на одном мониторе, а второе окно, скажем с браузером в другом и периодически отрываясь от игры проверять, загрузился ли новый драйвер для вашей G400.

Технология DualHead Display позволяет работать с разными видео потоками. Например, на мониторе вы можете запустить FTP клиента и загружать приложение из сети, а на телевизоре вы можете смотреть DVD фильм.

Благодаря тому, что на разные выходы видео поток может передаваться с различной частотой обновления экрана, исчезает проблема с мерцанием на рабочем мониторе, когда вы выводите изображение и на телевизор. В комбинации с уникальной возможностью MGA-TVO по пропорциональному уменьшению масштаба изображения, пользователь может получить на телевизоре изображение рабочего стола Windows или игры с разрешением 1024х768 при 32-бит представлении цвета и с частотой обновления 100 Гц.

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

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

При подключении цифрового плоскопанельного монитора он может быть назначен и как основное устройство отображения.

Если у вас есть старый 14" монитор, который выкидывать жалко, то после покупки G400 он вам еще послужит, так как вы сможете его подключить вторым, к вашему основному 15", 17", 19" и т.д. монитору. Ну что же, аргумент не главный, но наличие такой возможности является явным плюсом. Только не забудьте удостовериться, что предлагаемая вам для покупке карта на G400 уже имеет дополнительный модуль для вывода изображения на второй монитор или телевизор.

Подведем итоги

Чип G400 представляет собой законченное 3D решение с массой новаций. G400 отвечает все современным требованиям к 3D акселераторам и поднимает планку стандартов еще выше. Стоит заметить наличие 256-разрядной DualBus, поддержку 8-битного буфера шаблонов для динамического наложения теней, поддержку 32-битной Z-буферизации, воспроизведение графики при 32-битной глубине представления, внутренний рендеринг с 32-битной точностью, реализацию анизотропной и трилинейной фильтрации и очень интересную вещь — рельефное текстурирование с использованием карт окружающей среды. Прибавьте к этому поддержку AGP x2/x4, до 32 Мб локальной видео памяти типа SGRAM/SDRAM и технологию DualHead Display и перед вами потенциальный лидер рынка 1999. Остается дождаться реальных карт и проверить все обещания на практике.


Графический акселератор на базе G400

Поставки плат на базе G400 должны начаться уже в мае 1999 года в первоначальном варианте 16 Мб SDRAM, AGP x2. Однако, скорее всего мы увидим первые карты на G400 только летом, тем более, что Matrox любит это время года для выпуска новых моделей своей продукции.

Выражаем благодарность Керту Чиэну (Kert Chian) за оказанную помощь




5 апреля 1999 Г.

Matrox G400: первый взгляд

Matrox G400: первый взгляд

Канадская компания Matrox, занимающаяся разработками в области графики и видео уже более 20 лет и производящая графические акселераторы на базе собственных чипов 16 марта 1999 года официально анонсировала шестое поколение своих 2D/3D/Video ускорителей под общим названием G400.

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

Вообще, Matrox всегда славилась умением делать качественные 2D и Video решения, но вот в области 3D графики деятельность компании нельзя назвать очень успешной. Достаточно вспомнить серию G200, для которой до сих пор не сделан полноценный OpenGL ICD, пользователи вынуждены довольствоваться бета драйверами. Будем надеяться, что в случае с G400 Matrox не только предложит нам оригинальные и современные новации в области архитектуры, но и позаботится о соответствующих драйверах и о поддержке со стороны разработчиков приложений. Не секрет, что многие поклонники продукции Matrox потеряли доверие к компании и чтобы вернуть их расположение и привлечь новых сторонников специалистам из Matrox придется выложиться на полную.

Ну что же, посмотрим внимательно на спецификации G400:

  • Чип будет производиться с использованием 0.25 мкм технологического процесса
  • Поддержка AGP x2/x4
  • Symmetric Rendering Architecture (SRA): наложение текстур, загружаемых параллельно из локальной видео памяти и из AGP памяти.
  • 3D Rendering Array Processor: обеспечивает высокую производительность (обещают в три раза выше, чем у G200)
  • 256-бит внутренняя шина DualBus
  • Архитектура VCQ2 (Vibrant Color Quality2): обеспечивает высокое качество воспроизведения графики при использовании мультитекстурирования, за счет добавления блока для точного выполнения операций альфа смешивания (alpha blending). Все операции выполняются с 32-битной точностью.
  • Технология UltraSharp DAC: призвана обеспечить качественное изображение в высоких разрешениях при использовании аналогового сигнала
  • 300 Мгц RAMDAC. На самом деле в спецификации написано до 300 МГц, а в ранних спецификациях фигурирует цифра 280 МГц, поэтому, скорее всего, в младших версиях плат, типа Mystique G400 будет 280 MHz RAMDAC, а в старших типа Millennium G400 будет 300 MHz RAMDAC. Но это всего лишь наши предположения.
  • Поддержка локальной видео памяти от 8 до 32 Мб типа SDRAM/SGRAM
  • Интерфейс памяти имеет разрядность 128-бит
  • разрешения до 2056х1536 в 32-бит цвете
  • внутренние операции с использованием 32-бит представления данных
  • 16/24/32-бит Z-буфер (возможен режим 24+8 бит, когда 8 бит используется для буфера шаблонов, оверлеев и т.д.)
  • 8-бит буфер шаблонов
  • Аппаратное рельефное текстурирование с использованием карт окружающей среды (Поддерживается в DX6)
  • Однопроходное мультитекстурирование
  • Поддержка 32-битных текстур размером до 2048x2048
  • обработка более 5 миллионов треугольников в секунду
  • Скорость закраски примитивов около 300 млн. текселей/сек
  • Поддержка анизотропной и трилинейной фильтрации (по 8 пикселям), 11 уровневый мипмаппинг
  • Полный антиалиасинг сцены и краевой антиалиасинг для полигонов и линий (по векторам и вершинам)
  • Поддержка альфа-смешения, табличного тумана и зеркального освещения.
  • Частичная аппаратная поддержка декодирования DVD потоков: масштабирование, motion compensation (компенсация движения), наложение субтитров
  • Технология DualHead Display, обеспечивающая возможность вывода сразу на два устройства отображения
  • Архитектура Motion Video Rendering (MVR): призвана ускорять применение видео эффектов в приложениях для редактирования и обработки видео; обеспечивает легкое встраивание живого видео в трехмерную среду, например, в игры и системы моделирования.
  • Максимально возможное разрешение в 2D/3D при установленных 32 Мб локальной видео памяти: 65K цветов при разрешении 2048 x 1536 и 16.7M цветов при разрешении 2048 x 1536
  • Поддерждка D3D и OpenGL ICD
  • Ожидается, что в драйверах будет реализована поддержка SSE инструкций Pentium III, поддержка воспроизведения эффектов Chrome, поддержка 3DNow!, а также поддержка DX7, K7 и Windows2000 (последние три в III квартале).

Теперь остановимся подробно на некоторых особенностях.

Архитектура 256-bit DualBus

В основу G400 положена архитектура 128-разрядной двойной шины (128-bit DualBus) чипа G200, при этом в G400 удвоена ширина полосы пропускания графического движка за счет применения первой в промышленности архитектуры 256-разрядной двойной шины (256-bit DualBus).

Тут на память приходят события конца 1996 года, когда в сети на сайтах ATi и Matrox развернулась настоящая информационная война. Уважаемые компании опустились очень низко, поливая друг друга грязью. Каждая заявляла, что ее укоритель лучше, работает быстрее и выводит более качественное изображение. Тогда Matrox немного подумав, заявила, что "На самом деле у Millennium не 64 разрядная, а 256 разрядная шина, просто мы по-другому высчитываем разрядность!". Вот так вот. Прошло три года и Matrox заявляет о первой промышленной 256-рязрядной шине у чипа G400. Ну ладно, будем надеяться, что Matrox не ошиблась в расчетах на этот раз. :-)

Архитектура 256-разрядной DualBus представляет собой объединение двух независимых однонаправленных 128-разрядных шин (unidirectional 128-bit bus), работающих параллельно. Два встроенных буфера хранят инструкции и/или данные. За каждый такт работы чипа, данные пересылаются из входного буфера (input buffer) в графический движок через 128-разрядную внутреннюю шину ввода и в течение того же такта чипа, обработанные данные передаются из графического движка в выходной буфер (output buffer) через 128-разрядную внутреннюю шину вывода. Логика мультиплексирования (уплотнения) данных управляет буферами данных с тем, чтобы обеспечивалось непрерывная передача данных по внутренним шинам, в результате исключаются простои шин. Потенциал двойной шины некоторым образом ограничен пропускной способностью внешней 128-разрядной двунаправленной (bidirectional) шины памяти.

Тем не менее, Matrox уверена, что общая внешняя пропускная способность 256-разрядной DualBus будет возрастать, т.е. хорошо масштабироваться, при использовании более быстрой памяти. При этом, тактовая частота работы локальной памяти может быть намного выше тактовой частоты графического процессора. В то время как явные и самые большие преимущества использование 256-разрядной DualBus оказывает на производительность в 2D, ожидается, что процесс обработки 3D графики будет происходить быстрее.

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

Одним из преимуществ 256-bit DualBus является использование конвейеризации команд. В результате чего исключается возможность существования пустых циклов между командами. Например, в то время, как из входного буфера поступает команда в графический движок, выходной буфер еще заканчивает считывать результаты выполнения текущей команды. В результате, так как следующая порция данных для обработки процессором всегда доступна во входном буфере, они могут быть пересланы в графический движок немедленно. В итоге гарантируется непрерывная передача потока инструкций/команд в графический движок.

Логично предположить, что в скором времени наличие 256-битной шины станет промышленным стандартом, так же, как сегодня это 128-разрядная внутренняя шина у графических акселераторов.

Ядро 3D графики

Matrox использовала несколько причудливых терминов для описания ядра 3D графики. Так, применение "3D rendering array processor" (процессор, работающий с массивами данных для воспроизведения 3D графики) позволяет параллельно осуществлять однопроходное мультитекстурирование и расположение в пространстве нескольких треугольников (см. иллюстрацию справа). Информация из пресс-релиза дает основания предполагать, что в G400 будут применяться два движка определяющих положение полигонов в пространстве (setup engine), которые способны обрабатывать более 5 миллионов треугольников в секунду. Основываясь на этом, есть соблазн предположить, что G400 может воспроизводить на экране два пикселя за один такт. Однако молчание Matrox о такой возможности в официальных заявлениях не дает оснований верить таким предположениям. Другой причудливый термин это архитектура "Vibrant Color Quality2, VCQ2", которая связана с обеспечением внутренней 32-битной точности при текстурировании и работе конвейера рендеринга.

Вообще, VCQ2 означает воспроизведение "живого" цвета, а цифра два говорит, что это уже второе поколение технологии. VCQ1 использовалась в G200. При этом VCQ2 специально разработана, чтобы обеспечить высокое качество изображения и живой цвет при использовании мультитекстурирования. При мультитекстурировании используется комбинирование или смешивание нескольких текстур при наложении на один полигон. При недостаточной точности выполняемых операций, результирующее изображение может быть очень некачественным и изобиловать артефактами. Решает эти задачи механизм VCQ2, обеспечивающий высокую точность операций и буферизацию на всем протяжении 3D конвейера рендеринга. Качество конечного изображения при использовании VCQ2 должно гарантироваться наличием следующих возможностей:

  • Все операции на протяжении всего конвейера 3D рендеринга осуществляются с 32-битной точностью
  • Используются 32-разрядные буферы накопления данных
  • При некоторых операциях может использоваться 64-битная точность, т.е. на каждый из каналов RGBA отводится по 16 бит, а затем происходит преобразование до 8-бит
  • Воспроизведение графики происходит в 32-битном представлении цвета, что гарантирует выполнение всех внутренних операций с 32-битной точностью
  • Имеется возможность работы с 32-битными текстурами. (Текстуры могут иметь размеры до 2048х2048)
  • Поддерживается 16-, 24-, 32- и 24+8-бит Z-буферизация. При этом в режиме 24+8 бит, 8-бит используются под оверлеи, шаблоны и т.д.
  • После выполнения всех операций с 32-битной точностью, воспроизведение графики может осуществляться с 16-битной точностью с использованием растрирования, в результате качество изображения должно повышаться.
  • Все операции могут выполняться на пиксельном и тексельном уровне, что повышает точность и качество конечного изображения
  • 8-разрядные коэффициенты обеспечивают высокое качество билинейной, трилинейной и анизотропной фильтрации.
  • Для качественного преобразования цифрового в аналоговый сигнал применяется технология UltraSharp.

Использование 32-битной точности во всех операциях конвейера 3D рендеринга способствует повышению качества воспроизводимого изображения, которое получается более естественным, с плавными цветовыми переходами. Особенно критично использование 32-битных операций при использовании 32-битных текстур и текстур большого размера, широкое применение которых уже не за горами.


Изображение выведено при 32-битной глубине представления цвета

Использование 32-битной глубины представления цвета позволяет добиться более естественного изображения, за счет наличия большего числа оттенков каждого цвета (по 256) и 256 градаций полупрозрачности. Напротив, при 16-битной глубине представления доступно по 32 оттенка каждого цвета и 32 градации полупрозрачности. В первом случае для использования доступно 16.7 млн. цветов, а во втором 65 тысяч цветов. Особенно сильно разница между воспроизведением с различной точностью заметно, если режим вашего дисплея установлен в 32-бит. Если режим вывода установлен в 16-бит, то все операции осуществляются с 32-битной точностью, а при выводе на экран происходит растрирование до 16 бит точности.

 
При воспроизведении использовалась
32-битная глубина
представления цвета
    При воспроизведении использовалась
16-битная глубина
представления цвета

Несмотря на то, что G400 является полноценным AGP x2 устройством, он также поддерживает режим AGP x4, что обеспечивает возможность использовать полосу пропускания в 1 Гб/сек, которая будет весьма кстати для жадных до скоростных каналов передачи данных графических приложений. Напомним, что полная поддержка AGP x2/x4 означает поддержку DME (хранение/загрузка текстур в оперативной памяти), SBA (адресация по боковой полосе), конвейеризацию процессов и чтение/запись в режиме x4. Более того, G400 обладает уникальным свойством многопоточного захвата управлением шины, что позволяет в режиме прямого доступа к памяти извлекать команды и данные из различных областей системной памяти. Эта возможность уравновешивает потребности нового поколения 3D игр в передаче данных команд, данных о вершинах полигонов в пространстве и текстурных данных, располагающихся в различных областях системной памяти через шину AGP в графический движок. Кроме этого, G400 обладает способностью сокращения длительных временных задержек при получении данных через шину AGP. Большие по емкости буферы внутри G400 позволяют инициировать Extended Bus Transactions (более длительный режим передачи данных по шине) на шине AGP для увеличения оптимизации потоков данных. Комбинация этих возможностей позволяет G400 поддерживать скоростную и эффективную полосу пропускания на шине AGP для достижения лучшей производительности в реальных приложениях. Посмотрим, так ли это обстоит на самом деле, когда появятся первые карты на G400.

Термин "Symmetric rendering architecture" (SRA) описывает наложение текстур, загружаемых параллельно из локальной видео памяти и из AGP памяти. Более того, благодаря SRA, G400 может осуществлять прорисовку и построение изображений непосредственно в системной памяти так, как если бы это была локальная видео память и считывать данные из системной памяти на скоростях AGP x4. Благодаря SRA, G400 использует в полной мере все преимущества параллельного использования локальной видео памяти и системной памяти, в результате чего достигается оптимальная производительность в приложениях.

В чипе G400 сохранилась иерархическая система текстурирования от его предшественника. Наложение маленьких, часто используемых текстур, происходит путем их загрузки из локальной видео памяти или из объемного кэша, расположенного в чипе. В то время как большие (до 2048х2048 пикселей) текстуры или нечасто используемые текстуры, накладываются, загружаясь из системной памяти, т.е. используется AGP текстурирование. Встроенный в G400 специальный контроллер памяти под управлением драйверов управляет оптимальным распределением доступных ресурсов памяти с тем, что их использование было эффективным. Плюс ко всему, SRA дает возможность использовать преимущества больших объемов локальной видео памяти (до 32 Мб), позволяя использовать тройную буферизацию в высоких разрешениях и хранить в локальной памяти текстуры. Двумерные побитовые отображения (bitmaps) используют возможности SRA аналогичным способом, как и 3D текстуры. И в заключение, объем локальной видео памяти с быстрым доступом может быть расширен за счет использования системной памяти на скоростях чтения/записи AGP x4, что является большим преимуществом в приложениях компрессии/декомпрессии видео, требующих интенсивного использования полосы пропускания.

Уникальной возможностью 3D ядра является дополнительная специфическая схема, обеспечивающая рельефное текстурирование с использованием карт окружающей среды (environment mapped bump mapping).

Environment mapped bump mapping

Пользователи хотят от разработчиков все большего реализма создаваемого 3D мира в приложениях. Разработчики аппаратной части идут на встречу пожеланиям пользователей и потребностям создателей игр. Вполне логично, что следующей функцией, которая достойна развития и улучшения стала именно аппаратная реализация рельефного текстурирования. Matrox G400 поддерживает аппаратное ускорение рельефного текстурирования с использованием карт окружающей среды. Environment mapped bump mapping представляет собой комбинирование трех различных текстурных карт для каждого пикселя: карты рельефа (bump map), карты окружающей среды (environment map) и базовой карты (base map), не являющейся обязательной.

Карта рельефной текстуры представляет собой карту высот в форме полутонового черно-белого побитового отображения (grayscale bitmap). Эта информация о высотах преобразуется в рельефную карту. Рельефная карта содержит значения смещений для каждой координаты текселя рельефной текстуры. Эти значения считываются первым блоком обработки текстур (texture unit one) и затем используются блоком обработки рельефной карты (bump map unit) для сдвига координат карты окружения (environment map). Затем происходит выборка текселей по смещенным (или "perturbed", с отклонениями) координатам карты окружения и передаются во второй блок обработки текстур (texture unit two). Карта окружения, показанная справа представляет собой черно-белую карту освещенности с одним источником света. Эта карта может также представлять несколько многоцветных источников света. Тексели карты окружения, имеющие отклонения в координатах хранятся в пиксельном кэше, если таковой имеется. На этом завершается первый проход.

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

Преимущества environment mapped bump mapping

Метод environment mapped bump mapping может обеспечивать наложение текстур с использованием карт освещенности, содержащих несколько статичных источников света за один проход. Однако в случае движущихся источников света, карта окружения должна рассчитываться и обновляться для каждой сцены. Рельефная карта может также изменяться в режиме реального времени для того, чтобы создавать процедурное рельефное текстурирование (procedural bump mapping), т.е. создание рельефа специально заданным методом. За счет добавления базовой текстуры становится возможным применять эффекты искажения. Так как рельеф рассчитывается для каждого пикселя, визуальные артефакты будут менее заметны. Метод environment mapped bump mapping может рассматриваться в качестве более устойчивой техники по сравнению с embossed bump mapping (рельефное текстурирование путем выдавливания), так как нет никаких ограничений относительно угла падения света на поверхность или области рельефа, которую можно воспроизвести. Немаловажным является и тот факт, что рельефное текстурирование с использованием карт окружающей среды поддерживается DX6, т.е. является промышленным стандартом.

Несмотря на эти преимущества, нужно помнить, что метод environment mapped bump mapping часто представляет собой двух проходную процедуру, что влечет за собой потерю производительности.


Рельефное текстурирование с использованием карт окружающей среды

А что же поддержка со стороны разработчиков приложений? Тут пока все обстоит благополучно. Уже анонсировано более десятка игр, в которых будет использоваться рельефное текстурирование с использованием карт окружающей среды. Среди них:

  • Slave Zero от Accolade
  • Heavy Gear 2 demo от Activision
  • Expendable от Rage Software
  • Messiah от Shiny
  • Descent III от Interplay/Outrage
  • Draken от Psygnosis
  • SpeedBusters от Ubisoft
  • Rally Masters от DICE
  • Midnight GT Racing, Hostile Waters и Dispatched от Rage Software
  • ShadowMan от Iguana
  • Team Alligator и Jump Runner от Simis

Ну что же, наличие такого списка не может не радовать. Это значит, что есть вероятность того, что возможности G400 можно будет применить на практике.

Буфер шаблонов

Применение буфера шаблонов (stencil buffer) позволяет улучшить общее качество отображаемой сцены при использовании специальных эффектов, освобождая в тоже время графический движок от лишнего рендеринга. Подобно Z-буферизации, шаблонная буферизация определяет, когда конкретный пиксель должен быть воспроизведен, а когда нет. Тем не менее, в отличие от Z-буфера, который содержит значения глубины, буфер шаблонов содержит шаблон или маску кадра, который воспроизводится. Кабина самолета в авиа симуляторе является простейшим примером того, как можно использовать буфер шаблонов. Внутри кабины самолета в качестве шаблона используется маска сложных сцен, в тоже время внешний ландшафт видим только в областях, определяемых шаблонной маской (см. рис.). Вместо того чтобы воспроизводить весь ландшафт и затем производить перекрытие его кабиной (overlay), 3D движок должен осуществлять обновление ландшафта видимого через блистер.

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

Шаблонная маска минимальной сложности будет представлять собой бинарный стенсель или шаблон (определяемый одним битом). Не смотря на это, Matrox G400 поддерживает до 8-бит стенсельную буферизацию, которая может использоваться для определения масок условий в зависимости от значений в буфере. Другими словами, стенсельная буферизация может использоваться для интересных и потрясающих эффектов таких, как постепенное исчезновение (dissolves) и трансформации (transitions), а также для рендеринга компланарных текстур таких, как плоские и объемные тени, силуэты, следы от заносов, ожогов или кровь. Напомним, что Matrox G400 поддерживает следующие режимы Z-буфера:

  • 16-bit Z-buffer
  • 8-bit стенсель плюс 24-bit Z-buffer
  • 32-bit Z-buffer

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

Технология DualHead Display

Эта технология Matrox позволяет подключать к картам на базе G400 различные типы устройств воспроизведения изображения (аналоговые RGB мониторы, цифровые и аналоговые плоскопанельные мониторы и обычные PAL/NTSC телевизоры). Более того, вы можете подключать одновременно два различных устройства отображения и выводить на них различные изображения. В качестве основного устройства вывода используется стандартный RGB монитор (или аналоговый плоскопанельный монитор) с рабочим разрешением до 2048х1536, а в паре к нему вы можете подключить:

  • Еще один RGB монитор (или аналоговый плоскопанельный монитор) с разрешением до 1280х1024
  • Цифровой плоскопанельный монитор с разрешением до 1280х1024
  • PAL/NTCS/SECAM телевизор с разрешением до 1024х768

Для реализации такого подключения необходимо, чтобы на карте с чипом G400 был установлен дополнительный модуль, который может идти в стандартной комплектации, либо подключаться в виде дочерней карты. Заметим, что формирует изображения для обоих устройств отображения один и тот же чип G400, благодаря двум встроенным CRTC (Cathode Ray Tube Controller). Первый контроллер катодно-лучевой трубки (CRTC1) передает данные во встроенный RAMDAC, после чего, уже в аналоговом виде, данные передаются в основной монитор, где и формируется изображение. Второй CRTC2 подключается к дополнительному модулю, который может быть интегрирован на карту или подключаться в виде дочерней карты. В качестве дополнительных модулей видео вывода (встроенных на карту или внешних) применяются:

  • Чип Matrox MGA-TVO для подключения телевизора или RGB монитора
  • Трансмиттер Matrox Flat Panel для подключения цифровых плоскопанельных мониторов через DFP интерфейс, недавно стандартизированный VESA

Эти два контроллера CRTC могут получать данные независимо из различных мест в буфере дисплея или AGP памяти. Более того, эти CRTC могут считывать одно и тоже изображения с разной частотой обновления.

Чип Matrox MGA-TVO представляет собой высококачественный видео кодировщик, который может выдавать NTSC, PAL или SECAM сигнал на телевизор. Кроме этого, MGA-TVO может выводить RGB поток с разрешением до 1280х1024 при 32-битном представлении цвета с частотой обновления 60 Гц на второй RGB монитор.

Технология DualHead Display поддерживает функцию Windows98, которая позволяет выводить с одной видео карты изображение на два монитора, растягивая рабочий стол (desktop) на два экрана. Эта же возможность будет и в Windows 2000. При этом, например, вы можете развернуть одно окно с игрой на одном мониторе, а второе окно, скажем с браузером в другом и периодически отрываясь от игры проверять, загрузился ли новый драйвер для вашей G400.

Технология DualHead Display позволяет работать с разными видео потоками. Например, на мониторе вы можете запустить FTP клиента и загружать приложение из сети, а на телевизоре вы можете смотреть DVD фильм.

Благодаря тому, что на разные выходы видео поток может передаваться с различной частотой обновления экрана, исчезает проблема с мерцанием на рабочем мониторе, когда вы выводите изображение и на телевизор. В комбинации с уникальной возможностью MGA-TVO по пропорциональному уменьшению масштаба изображения, пользователь может получить на телевизоре изображение рабочего стола Windows или игры с разрешением 1024х768 при 32-бит представлении цвета и с частотой обновления 100 Гц.

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

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

При подключении цифрового плоскопанельного монитора он может быть назначен и как основное устройство отображения.

Если у вас есть старый 14" монитор, который выкидывать жалко, то после покупки G400 он вам еще послужит, так как вы сможете его подключить вторым, к вашему основному 15", 17", 19" и т.д. монитору. Ну что же, аргумент не главный, но наличие такой возможности является явным плюсом. Только не забудьте удостовериться, что предлагаемая вам для покупке карта на G400 уже имеет дополнительный модуль для вывода изображения на второй монитор или телевизор.

Подведем итоги

Чип G400 представляет собой законченное 3D решение с массой новаций. G400 отвечает все современным требованиям к 3D акселераторам и поднимает планку стандартов еще выше. Стоит заметить наличие 256-разрядной DualBus, поддержку 8-битного буфера шаблонов для динамического наложения теней, поддержку 32-битной Z-буферизации, воспроизведение графики при 32-битной глубине представления, внутренний рендеринг с 32-битной точностью, реализацию анизотропной и трилинейной фильтрации и очень интересную вещь — рельефное текстурирование с использованием карт окружающей среды. Прибавьте к этому поддержку AGP x2/x4, до 32 Мб локальной видео памяти типа SGRAM/SDRAM и технологию DualHead Display и перед вами потенциальный лидер рынка 1999. Остается дождаться реальных карт и проверить все обещания на практике.


Графический акселератор на базе G400

Поставки плат на базе G400 должны начаться уже в мае 1999 года в первоначальном варианте 16 Мб SDRAM, AGP x2. Однако, скорее всего мы увидим первые карты на G400 только летом, тем более, что Matrox любит это время года для выпуска новых моделей своей продукции.

Выражаем благодарность Керту Чиэну (Kert Chian) за оказанную помощь