Особенности современных видеокарт

Современная видеокарта (видеоадаптер) — это, по сути, второй самостоятельный компьютер внутри персонального компьютера. Причем, когда человек играет в любимую 3D-иrpy, процессор видеокарты фактически выполняет большую часть работы, а центральный процессор отступает на второй план. Таким образом реализуется многопроцессорная архитектура, что, если смотреть в корень, есть отступление от основной идеологии персональных компьютеров PC, где центральный процессор выполняет все и вся. Но это итог того, что человек стал требовать от компьютера не просто умения вычислять, а создавать среду общения, где можно комфортно работать и отдыхать.

Ниже показаны два варианта внешнего вида современной видеокарты. Первый вариант ATI Radeon HD 5670 — это не слишком дорогая модель для домашних и офисных компьютеров, а второй ATI Radeon HD 5970— это «навороченная» и сверхмощная система для игрового компьютера. Обе видеокарты используют интерфейс PCI-Express и оборудованы мощными вентиляторами для охлаждения чипов, причем у второй он довольно солидных размеров.

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

видеокарта radeon
ATI Radeon HD 5670
ATI Radeon HD 5970
ATI Radeon HD 5970

Правда если поэкспериментировать с различными видеокартами, приглядываясь к мелким деталям на изображение то легко заметить, что в одном случае картинка нравится, а в другом не очень, тут линии какие-то зазубренные, а здесь ровная поверхность воздушного шарика покрыта некими разводами. Иногда в играх пропадают какие-то детали игрового поля или оружие выглядит совсем по-другому. Причина несоответствия изображений здесь заключается в том, что видеокарта, являясь периферийным устройством, только по интерфейсу должна полностью соответствовать системной плате и монитору, а вот как внутри нее будет моделироваться трехмерное изображение — это остается прерогативой разработчиков. Более мощный (быстрый и с большим набором функций) графический процессор создаст более реалистическое изображение. Соответственно, разработчики графических процессоров, особенно в последнее время, значительно превосходя корпорацию Intel по части внедрения новинок, совершенствуют видеосистему персонального компьютера, превращая ее чуть ли не в самостоятельное устройство, хотя при этом сохраняется старая и архаичная система построения видеоизображения, которая появилась еще в первых компьютерах IBM PC.

Режимы работы видеокарты

Как это и ни странно звучит сегодня, но основной видеорежим у персональных компьютеров— это текстовый режим. В этом режиме графически! элементы — линии и прямоугольники — создаются с использованием псевдографических символов. И лишь по командам операционной системы видеокарта переключается в графический режим. Это хорошо заметно, когда после включения питания компьютер работает под управлением программ BIOS. Во время начальной загрузки вывод информации на экран осуществляется текстовом режиме с разрешением 720×400 (частота строк— 31,5 кГц, частота кадров — 70 Гц). Лишь изредка, во время тестирования самого видеоадаптера, происходит переключение в графический режим с разрешением 640×480 (частота строк— 31,5 кГц, частота кадров — 60 Гц). Отметим, что пользователи используют текстовый режим работы видеоподсистемы только в режиме MS-DOS или, например, в операционной системе Linux в режиме терминала.

Появление двух различных принципов построения изображения на экране монитора возникло исторически. Текстовый режим достался персональному компьютеру IBM PC от вычислительных машин, где графический режим в то время являлся весьма уникальной особенностью, для поддержки которой требовалось необычайно много ресурсов. При этом чтобы рисовать на экране или печатающем устройстве, использовались различные ухищрения, например, создавали изображение с помощью набора символов букв, цифр и знаков препинания. Кстати, тогда активно использовался термин «средства машинной графики». На заре компьютерной эпохи текстовый режим был выгоден тем, что для хранения изображения экрана нужно было всего 4 Кбайт оперативной памяти (80 знаков в строке и 25 строк). Для каждого символа требовалось всего 2 байта видеопамяти (1-й байт— код символа, 2-й байт— яркость, цвет, мигание).

После удешевления микросхем памяти и повышения производительности процессоров текстовый режим перестал пользоваться популярностью у пользователей, которые теперь предпочитают работать в графической оболочке, например, операционной системы Windows. Но в таком случае компьютеру приходится помнить о каждой точке на экране, т. е. один байт управляет не группой точек, как в текстовом режиме, а всего лишь одной. Причем когда требуется выводить на экран монитора более качественное изображение, для хранения информации о цвете и яркости точки необходимо отводить 2, 3 или 4 байта. Так как пользователи после непродолжительного восторга от новейшего компьютера очень скоро снова становятся недовольными возможностями вывода графической информации на монитор, то разработчики компьютерного «железа» систематически вводят все новые и новые стандарты построения изображения.

Вначале человеку приходилось работать за черно-белым монитором, потом появились цветные с довольно скромными характеристиками. Далее последовательно увеличивалось число выводимых на экран точек и количество цветов, которые можно было отобразить на мониторе. Соответственно, каждый стандарт характеризовался своим разрешением и глубиной цвета (одновременно менялись значения кадровой и строчной развертки монитора, а также способ синхронизации изображения). Для того чтобы видеоадаптер и монитор могли корректно работать в любом стандарте, были введены номера режимов, которые однозначно характеризуют разрешение, глубину цветности, частоту развертки, а также режим работы — текстовый или графический (номер режима используется программистами для работы с видеоадаптерами). Для старых стандартов MDA(Monochrome Diaplay Adapter), CGA (Color Graphics Adapter), HGC (Hercules Graphics Card) и EGA (Enhanced Graphics Adapter) предназначены режимы работы видеокарты от 0 до 13h. Для стандарта VGA (Video Graphics Array) используются режимы от 18h до 27h. Для современных режимов работы, согласно стандарту VESA (Video Electronics Standards Association) VGA, определены номера от lOlh до 1 lAh, и это же также относится к режимам SVGA.

Немного нужно сказать об условных обозначениях режимов. После режима VGA следует режим SVGA,точнее, все разрешения выше 640×480 и 16 цветов относят к SVGA (Super VGA). В принципе, для каждой комбинации разрешения и количества цветов существует собственное обозначение, но широко эти аббревиатуры не используются, т. к. фирмы-изготовители присваивают своим новым изделиям названия, чаще всего с учетом рекламной привлекательности. Периодически делаются попытки ввести единую классификацию, но особых успехов пока ни одна международная организация так и не добилась (вопрос осложняется тем, что приходится учитывать и режимы работы дисплеев самых разнообразных устройств, например, дисплеев сотовых телефонов). Для ряда применений, например, LCD-дисплеев и проекторов, популярна следующая классификация:

  • VGA — 640×480;
  • SVGA — 800×600;
  • XGA — 1024×768;
  • SXGA — 1280×1024.

Глубина цвета и разрешение

В настоящее время наиболее популярные режимы для настольных компьютеров это разрешение 1024×768 и 1280×1024, а для ноутбуков и нетбуков — 1024×800. Причем обычно используется самое высокое качество передачи в 32 бита для каждой точки. Также становятся популярными широкоформатные мониторы и HD-панели для телевизоров. Для примера, если посчитать количество пикселов (точек), например, для наиболее простых вариантов, то при разрешении VGA или 800×600 изображение на экране монитора состоит из 480 000 точек, а при 1024×768 из 786 432. Первые компьютерные мониторы оперировали только двумя значениями яркости точки на экране: есть изображение точки и точка погашена, т. е. для хранения информации о точке требовался всего один бит. В дальнейшем, добавили информацию о яркости точки (полутона), а при появлении цвета — информацию о трех основных цветах. В результате последовательной эволюции мониторов количество необходимой информации для каждой точки изображения возросло от одного бита до трех байт (36 бит), и это еще не предел.

В современном мониторе для каждой точки изображения указывается строго определенный цвет, который получается из смеси трех первичных цветов — красного, зеленого и синего (RGB). Общее количество оттенков может достигать миллионов цветов, но для самых простых режимов используется 16 или 256 цветов. Минимальный объем необходимой видеопамяти определяется в зависимости от поддерживаемого разрешения (числа строк, умноженного на число точек в строке) и глубины цвета (необходимого числа байтов для хранения информации о каждой точке). Соответственно, формула, связывающая объем видеопамяти с разрешением и количеством воспроизводимых цветов, выглядит так:

Объем ОЗУ видеопамяти = (число точек в строке) х (число строк) х (число байт на одну точку).

Первые два значения определяются желаемым вами режимом, а число битов (байтов) на одну точку или количество цветов выбирается из таблицы

Соотношение между глубиной цвета и числом битов на один пиксел:

Количество цветов

Число битов

Количество цветов

Число битов

02

1

256

8

04

2

32 768

15

16

4

65 536

16

16 777 216

24

Возможные варианты выбора приведены ниже

Разрешение Количество цветов Объем видеопамяти, Мбайт
800×600 256 1
800×600 65 536 1
800×600 16 777 216 2
1024×768 256 1
1024×768 65 536 2
1024×768 16 777 216 4
1280×1024 256 2
1280×1024 65 536 4
1280×1024 16 777 216 8

На практике, для работы офисных приложений и просмотра видеофильмов вполне хватает 8 Мбайт видеопамяти для разрешения 800×600 или 16 Мбайт для разрешения 1024×768. Вся остальная память, свыше этого, которая имеется сегодня в современных видеоадаптерах, тратится на сторонние нужды, в частности, для поддержки экранной графики операционной системы Windows (особенно в Windows Vista и Windows 7). Использование 128, 256 и 512 Мбайт видеопамяти связано, в первую очередь, с интересами «игроманов», которым даже 512 Мбайт, честно говоря, не так уж и много. Следует сказать, что стремительное увеличение объема видеопамяти в настоящее время не связано с таким же прогрессом повышения разрешения изображения на экране. Практически уже достигнут потолок для традиционных систем отображения видеоинформации. Основная же причина все большего наращивания оперативной памяти видеоадаптера состоит в том, что на плате видеоадаптера теперь находится видеопроцессор (GPU, Graphics Processing Unit, графический процессор), который может самостоятельно. по управляющим командам центрального процессора, строить изображения различных объектов, в том числе и объемные изображения (они же — 3D), а это требует необычайно много ресурсов для хранения промежуточных результатов вычислений и образцов текстур, которыми заливаются условные плоскости моделируемых фигур.

ВНИМАНИЕ! Даже для офисных приложений, сегодня, если в операционной системе Windows используется интерфейс DirectX 9 или DirectX 10, объем памяти видеокарты должен быть не менее 128 Мбайт. Для более продвинутых пользователей желателен объем 256—512 Мбайт, а геймерам лучше ориентироваться на рубеж в 1000 Мбайт.

Аппаратное ускорение графических функций

Стандартная видеокарта VGA персонального компьютера, как и ее предшественники MDA, CGA и EGA, по сути, представляет собой набор жесткой логики и видеопамяти. Все, что записывается центральным процессором в видеопамять, по строго определенным алгоритмам преобразуется в аналоговый видеосигнал, который подается на монитор. Таким образом, центральному процессору необходимо самому рассчитать параметры всех точек, которые должны быть в данный момент отражены на экране, и загрузить все данные в видеопамять. Любое изменение на экране, даже если это след мыши, — это результат работы центрального процессора (если не используется аппаратное ускорение). Соответственно, чем больше используемое разрешение и количество цветов, тем больше процессор затрачивает времени на рас- чет всех точек формируемого растра. Например, в трехмерных играх, если используется простая видеокарта, видно, что экранные герои при повышении разрешения экрана начинают передвигаться рывками, а при изменении размеров окон в Windows заметно запаздывание прорисовки изменяемых экранных областей.

Так как персональный компьютер с течением времени стал неразрывно связываться с графическим интерфейсом Windows (графический интерфейс DirectX) и различными дву- и трехмерными играми, то разработчики «железа» предприняли ряд шагов по совершенствованию стандартной видеокарты, чтобы избавить центральный процессор от лишней работы по прорисовке элементарных изображений. Подобные устройства получили название графических ускорителей, или иначе графических акселераторов. Вначале использовались аппаратные ускорители на отдельных платах (увы, данные устройства появились слишком поздно и не смогли составить конкуренцию современным решениям).

По мере совершенствования полупроводниковой технологии удалось разместить все элементы аппаратных ускорителей на самой плате видеокарты. В настоящее время чип на видеокарте, он же видео или графический процессор (GPU, Graphics Processing Unit), самостоятельно рассчитывает новые параметры точек на экране по командам центрального процессора. Например, переместить окно Windows в другое место на экране, нарисовать и закрасить круг или прямоугольник. Уделим немного внимания терминологии:

  • 2D Graphics — это двумерная графика, которая позволяет рисовать в одной плоскости. Например, пользовательский интерфейс операционной системы Windows является ярким примером двумерной графики;
  • 3D Graphics — это трехмерная графика, которая позволяет создавать визуальное отображение трехмерного объекта на плоскости экрана. При этом видеопроцессор создает (математически рассчитывает) в видеопамяти трехмерный объект.

При описании способов построения дву- и трехмерных изображений используются специальные термины, которые часто являются так называемыми «кальками» с соответствующих английских терминов (заметим, что не для всех английских терминов есть удачные русские варианты). Например, рендеринг (Rendering) — это термин, обозначающий процесс создания изображения на экране с использованием математической модели объекта и формул для добавления цвета и тени. Термин растеризация (Rasterization) обозначает процесс разделения объекта на пикселы. Часто упоминающийся термин текстура (Texture) обозначает двумерное изображение какой-то поверхности, например, бумаги или металла, хранящееся в памяти в одном из стандартных пиксельных форматов. С точки зрения схемотехники графические ускорители двумерной графики представляют собой простые контроллеры, которые принимают от центрального процессора команды и строят те или иные фигуры в видеопамяти.

При работе с трехмерной графикой вначале использовались те же принципы. Но требование повышения качества изображения привело к тому, что постепенно простенький контроллер на видеокарте превратился в мощный специали зированный процессор со своей особой системой команд. Так как расчет трехмерных изображений — это множество математических расчетов с плавающей запятой, то наиболее совершенные видеопроцессоры обзавелись и математическим сопроцессором. В дальнейшем число специализированных сопроцессоров стало стремительно увеличиваться, появилась специализация, когда одна группа сопроцессоров рассчитывает координаты вершин фигур, а другая, например, проверяет видимость точек для двумерной проекции. В результате, в современном видеопроцессоре может быть несколько сотен сопроцессоров, а сама архитектура GPU стала очень сложной и не похожей на традиционные решения для центральных процессоров (процессоров общего назначения). Для примера здесь показана модель конвейеров в GPU GeForce 8800, который имеет относительно простую и понятную архитектуру; маленькие квадратики на блок-схеме, сгруппированные по 8 штук, с надписями SP (Special Processor) — это специализированные сопроцессоры.

3D-конвейер

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

  • Построение геометрической модели— на этом этапе задаются координаты опорных точек и уравнения связывающих их линий, что приводит к созданию каркасной модели объекта (wireframe);
  • Деление поверхности объекта на плоские простейшие элементы — работать со сложным объектом очень трудно, поэтому криволинейные поверхности превращают в набор прямоугольников или треугольников, создаваяграненый объект. Процесс деления называется тесселяцией (tessellation);
  • Трансформация — простые объекты чаще всего необходимо определенным образом изменить или трансформировать (transformation), чтобы по- лучился более естественный объект, или имитировать его перемещение в пространстве. Для этого координаты вершин граней объекта (vertex — вертекс) пересчитывают с использованием операций матричной алгебры и геометрических преобразований. В современных видеокартах для этого интенсивно используется геометрический сопроцессор, а в более старых этим должен заниматься центральный процессор;
  • Расчет освещенности и затенения — для того чтобы объект был виден на экране, нужно рассчитать освещенность (lighting) и затенение (shading) каждого элементарного прямоугольника или треугольника. Причем необходимо имитировать реальное распределение освещенности, т. е. требуется скрыть изменения освещенности между прямоугольниками или треугольниками. Для этого используют различные методы интерполяции, например, Гуро (Gouraud Shading) или Фонга (Phong Shading);
  • Проецирование — трехмерный объект преобразуется в двумерный, но при этом запоминаются расстояния вершин граней до поверхности экрана (координата Z, Z-буфер), на который проецируется объект;
  • Обработка координат вершин — на этапах моделирования объекта все координаты вершин граней получаются в виде чисел с плавающей запя- той, но поскольку в видеопамять возможно занести только целые числа, то необходимо осуществить этап преобразования. На этом же этапе допуска ется проводить сортировку вершин, чтобы отбросить невидимые грани. При расчетах используется субпиксельная коррекция, когда каждый пиксел представляется в виде матрицы субпикселов, например размера 3×3, 4×4 и т. д., с которой проводятся вычисления (т. е. одна точка преобразуется в 9, 16 или большее число субпикселов);
  • Удаление скрытых поверхностей — из двумерной проекции трехмерного объекта удаляются все невидимые поверхности. Этот процесс обычно проводится в несколько стадий на разных этапах ЗD-конвейера;
  • Наложение текстур — т. к. возможности процессора видеокарты не бесконечны, поверхность объекта моделируется с помощью ограниченного количества прямоугольников или треугольников, поэтому, чтобы создать реалистичное изображение, на каждую элементарную поверхность накладывают текстуру (texture), имитирующую реальную поверхность. Текстуры хранятся в памяти в виде растровых картинок. Минимальный элемент растровой картинки носит название тексел (texel — texture element). Этап наложения текстур наиболее трудоемок и сложен, причем здесь возникает множество проблем с совмещением краев текстур соседних плоскостей. Кроме того, при масштабировании изображения имеет место проблема согласования величины разрешения используемой текстуры с разрешением монитора, т.к. при использовании текстуры с малым разрешением изображение на экране получается в виде набора цветных квадратиков, а при использовании текстур с большим разрешением может не хватить памяти для их хранения;
  • Создание эффектов прозрачности и полупрозрачности — на этом этапе проводится коррекция цвета пикселов (альфа-смешение — alpha-blending, затуманивание — fogging) с учетом прозрачности смоделированных объектов и учитывая свойства окружающей объекты среды;
  • Коррекция дефектов — смоделированные линии и границы объектов, если они не вертикальны или горизонтальны, на экране выглядят угловатыми, поэтому проводят коррекцию изображения, называемую антиалиасмг(anti-aliasing);
  • Интерполяция недостающих цветов — если при моделировании объектов использовалось другое количество цветов, нежели чем в текущем режиме видеокарты, то необходимо рассчитать недостающие цвета или удалить избыточные. Этот процесс называется дизеринг (dithering).

После расчета всех точек кадра информация о каждом пикселе перемещается в видеопамять.

Терминов и понятий ЗD-графики очень много, поэтому выше были приведены наиболее важные моменты построения многомерных объектов. Несмотря на все усилия разработчиков, моделирование фотореалистичного изображения до сих пор остается сложной проблемой. В частности, очень трудно моделировать такие, казалось бы, простые элементы, как волосы. Прогресс же в области моделирования можно увидеть, если сравнивать старые и новые кинофильмы, в которых использовалась компьютерная графика.

Графические API

До выхода операционной системы Windows Vista и внедрения интерфейса графического программирования (Application Programming Interface, API) версии DirectX 10 подробно говорить о программах по 3D — графике было не обязательно. Эта тема ранее была более интересна геймерам, которым хотелось иметь самую реалистическую карту виртуального мира. Ныне, увы, все изменилось, ОС Windows Vista и Windows 7 и требуют настолько много ресурсов от всех узлов компьютера, что следует вкратце познакомиться, а что и зачем нужно. Как уже говорилось, само по себе «железо» ничего не может делать, поэтому всегда нужна программа-посредник, которая умеет обращаться с конкретной моделью того или иного устройства. Вот и для видеокарт нужен посредник, который превращает инструкции программиста в изображение на экране (писать программы на уровне машинных кодов очень сложно, утомительно и долго).

Вначале каждый производитель видеокарт предлагал свой вариант набора инструкций (способов обращения к видеопроцессору), что являлось очень неудачным и дорогим решением. В дальнейшем появилось два стандарта, которые в настоящее время и определяют как разработку нового «железа», так и написание игр (да и других программ с «крутой» графикой). Сегодня существуют два общепринятых варианта графических API: OpenGL — международный открытый стандарт, где GL расшифровывается как Graphics Library (графическая библиотека), и Microsoft DirectX, привязанный к операционной системе Windows. Правда, кроме графических функций DirectX описывает дополнительно интерфейсы звука и ввода-вывода. Стандарт OpenGL более консервативен, но более надежен, так как является коллективным трудом многих организаций. Microsoft DirectXочень быстро обновляется, и, как это повелось, часто появляются различные недокументированные функции или обновления без смены номера версии, соответственно, возникают различные коллизии, когда две видеокарты, например поддерживающих DirectX 9, могут работать по-разному, так как одна умеет работать с Pixel Shader 3.0, а вторая только с Pixel Shader 2.0.

По мере совершенствования графических процессоров и увеличения объема памяти на видеокартах совершенствовались и API. В настоящее время для получения более реалистичной графики внедряются варианты DirectX 10, который позволяет создать довольно реальную картину виртуального мира но зато требует очень много ресурсов. Мы не будем останавливаться на новинках теории построения изображения, т. к. лучше посмотреть результирующие рисунки на сайтах корпораций NVIDIA и AMD где на простых примерах показано, как изменяется одно и тоже изображение при смене того или иного стандарта или технологии.

Характеристики современных видеокарт

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

Первый и наиболее важный параметр — это ширина шины видеопамяти, или сколько бит за один раз (цикл) передается по шине видеопроцессор видеопамять (причем речь не идет об оперативной памяти, расположенной на системной плате, так как подобные решения малопроизводительны и в настоящее время для внешних видеокарт практически не используются.) Если первые видеопроцессоры (видеокарты) довольствовались стандартными 8, 16 и 32 битами, то для соответствия современному уровню ширина шины видеопамяти должна быть примерно следующей:

  • бюджетные и офисные варианты — 64 или 128 бит;
  • игровые среднего уровня — 128 или 256 бит;
  • категории High-End — от 512 бит и выше.

Но не следует только смотреть на данный параметр при покупке новой видеокарты. Увы, все характеристики видеокарты должны соответствовать друг другу. Например, на хорошей видеокарте должен быть высокопроизво дительный графический процессор, достаточный объем видеопамяти, большая ширина шины видеопамяти, высокие тактовые частоты видеопроцессора и видеопамяти. Выбирать на основе только одного параметра — большая ошибка. В частности, должно быть оптимальное сочетание частот видеопроцессора/видеопамяти, а также ширины видеопамяти. В качестве мерила данного сочетания чаще всего используют FPS — количество кадров в секунду, измеренную в какой-либо игре, например Quake 4. Как правило, все крупные компании-производители видеокарт предлагают покупателям оптимальные варианты в соответствующем ценовом диапазоне. И, в принципе, их мнению можно доверять (до какой-то степени!).

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

ПРИМЕЧАНИЕ В современных высокопроизводительных видеокартах используется динамическая память стандартов GDDR3, GDDR4 и GDDR5. Причем память GDDR4, только появившись, уже уступает место GDDR5. Заметим, что все эти стандарты не имеют отношения к оперативной памяти компьютера. В частности, для видеопамяти допускаются единичные ошибки в хранении данных, т. к. случайный сбой в работе видеопамяти влияет только на один кадр изображения, что не критично в большинстве случаев.

Мультимониторные системы

Пока не появилась шина PCI, персональный компьютер мог полноценно работать только с одной видеокартой, выводя изображение на один монитор, тогда как вторая видеокарта на шине ISA могла параллельно работать только в текстовом режиме. Шина PCI позволила устанавливать в системе произвольное число видеокарт. Учитывая это, начиная с Windows 98, корпорация Microsoft стала разрабатывать программное обеспечение с поддержкой мультимониторных систем. При установке в персональный компьютер двух видеокарт или одной видеокарты с двумя видеовыходами можно организовать более удобную работу с рядом приложений — чаще всего подобная возможность требуется при работе с графическими редакторами. В этом случае, скажем, на первичном мониторе (на него выводится информация BIOS при старте компьютера) осуществляется редактирование изображения, а на вторичном мониторе располагаются окна, используемые в работе палитр. Но можно применить второй монитор и для дублирования изображения. Кроме того, в системе может быть установлено до 9 видеокарт, что позволяет, например, растянуть одно окно Windows на все мониторы для создания видеостенки. Мониторы разрешается группировать любым образом. Пример использования мультимониторных систем во время игры:
Как правило, все современные видеокарты PCI Express (не низшей ценовой категории) позволяют подключать до двух мониторов. Для подключения большего количества мониторов желательно иметь системную плату с двумя слотами PCI Express х16. В тех случаях, когда нет возможности установить внутрь компьютера вторую видеокарту, можно использовать специальные видеокарты для построения видеостенок. Такая видеокарта может быть выполнена как в виде платы для слотов PCI Express или PCI, так и в виде внешнего блока. Правда, цена подобных решений высока.

Технологии SLI и CrossFire

Неким зеркальным отражением мультимониторных систем является случай, когда две видеокарты работают на один монитор. В частности, корпорация NVIDIA предложила технологию SLI (Scalable Link Interface — масштабируемый интерфейс соединений), когда два видеопроцессора (видеокарты) побратски делят построение картинки на экране монитора; а корпорация AMD — аналогичную технологию CrossFire. Для использования технологии SLIна системную плату с двумя разъемами PCI Express допустимо установить две видеокарты на базе NVIDIA. Соединенные через разъем NVIDIA SLI, обе карты работают с одним монитором, обеспечивая повышенную производительность за счет перераспределения вычислительной нагрузки между двумя видеопроцессорами. Пример использования данной технологии показан ниже.
Аналогично технологии SLI, компания AMD предложила технологию CrossFire, которая позволяет использовать две и более видеокарты (видеопроцессоров) для обработки одного изображения. Для примера, ниже показана блок-схема работы технологии CrossFire.
Обратите внимание, что использование технологии CrossFire или SLI подразумевает повышенные требования к блоку питания компьютера, охлаждению, модулям памяти, кроме того, видеокарты должны быть сертифицированы для работы в таком режиме. Не все видеокарты поддерживают технологию NVIDIA SLI или AMD CrossFire. Проверьте сертификацию перед приобретением видеокарты. При самостоятельной сборке системы с двумя видеокартами следует помнить, что необходимо использовать сертифицированную сис- темную плату и две сертифицированные видеокарты. Кроме того, потребуется блок питания с повышенной мощностью. Для получения реального выигрыша в производительности необходимо использовать высокопроизводительные модули памяти.

ПРИМЕЧАНИЕ. Использование технологий NVIDIA SLI и AMD CrossFire — это дорогостоящее решение, которое нужно только ограниченному кругу пользователей. Соответcтвенно, при желании использовать ту или иную технологию необходимо изучить предлагаемый на сайтах корпораций технический материал и только после этого покупать необходимое железо.
Телевизионный прием

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

Ниже показан TV-тюнер AverTV, предназначенный для установки в слот PCI. Различных версий TV-тюнеров AverTV выпущено очень много, и они являются наиболее доступными по цене для большинства пользователей (от $60 до $100). Это довольно типичные представители устройств, предназначенных для просмотра информационных передач телевидения и записей с аналоговых видеокамер бытового класса. При покупке TV-тюнеров следует обращать внимание на их возможности обрабатывать сигналы телевизионных стандартов, особенно возможность приема российского стандарта SECAM. Не рекомендуется приобретать TV-тюнеры, для которых в комплекте нет русифицированного программного обеспечения, т. к. они вряд ли смогут корректно работать с российскими телевизионными каналами.
Ниже можно увидеть TV-тюнер, выполненный в виде внешнего устройства, подключаемого к интерфейсу USB 2.0. Каких-либо преимуществ или особых проблем внешние TV-тюнеры, по сравнению с РСI-картами, не имеют.
Существует и более удачный способ ввода/вывода телевизионного сигнала в компьютер — это использование современной видеокарты, в которой мощный видеопроцессор дополнительно позволяет обрабатывать ТВ-сигнал. При рассмотрении телевизионных возможностей видеокарт следует учитывать, что есть две функции, которые обеспечивают сопряжение компьютера с телевизором:

  • первая — это формирование телевизионного сигнала для подачи на бытовой телевизор. Проблема достаточно сложная, т. к. ни один современный видеорежим монитора не совместим с телевизионными стандартами, но мощности видеопроцессоров в настоящее время вполне хватает для осуществления преобразования компьютерной картинки в телевизионную. Правда, не все видеокарты могут похвастаться этим свойством;
  • вторая, наиболее интересная функция, — это оцифровка телевизионного изображения. Производители видеокарт, не желая увеличивать габариты печатных плат и заниматься достаточно сложными проблемами, связанными с многочисленными телевизионными стандартами, чаще предпочитают обрабатывать уже частично обработанный телевизионный сигнал. В этом случае на вход видеокарты через 4-контактный разъем DIN подается компонентный сигнал формата S-VHS (раздельная подача сигналов яркости и цветности). Такие выходы есть у ряда видеомагнитофонов и видеокамер. Но, скажем, на платах All-in-Wonder с чипсетом Radeon производства компании ATI (AMD) устанавливается полноценный высокочастотный блок .

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

ПРИМЕЧАНИЕ. В настоящее время для аппаратного ускорения видеопотоков могут использоваться технологии AMD Avivo или NVIDIA PureVideo HD, которые позволяют производить аппаратную декомпрессию HD-видео (разрешение 1920×1080, 30 кадров/сек).

ПРИМЕЧАНИЕ. Сегодня видеокарты и мониторы должны соответствовать марке «HD Ready». Это означает, что поддерживается протокол защиты широкополосных цифровых данных HDCP (High-bandwidth Digital Content Protection). Правда, пока это касается только фильмов, распространяемых на носителях HD DVD и Blu-Ray DVD и передаваемых по интерфейсам DVI и HDMI.

Интерфейсы видеокарт

В настоящее время для подключения мониторов используют три типа интер- фейса: аналоговый VGA (Video Graphics Array) и два цифровых— DVI-I (Digital Video Interactive) и HDMI (High Definition Multimedia Interface). На электронно-лучевых мониторах устанавливается только аналоговый видеоинтерфейс. Разводка стандартного VGA-разъема приведена ниже.

Конт. Сигнал Конт. Сигнал Конт. Сигнал
1 Красный аналог.
2 Зеленый аналог.
3 Синий аналог.
4 Нет
5 Земля
6 Земля
7 Земля
8 Земля
9 + 5 В (DDC)
10 Земля
11 Нет
12 SDA(DDC)
13 Гориз. синх.
14 Верт. синх.
15 Земля

Жидкокристаллические мониторы (панели) выпускаются, как правило, в двух вариантах: с одним VGA-разъемом или с двумя разъемами — VGA и DVI-I. В последнем случае для улучшения качества изображения рекомендуется использовать цифровой интерфейс, что позволяет сразу подавать данные на жидкокристаллическую матрицу, не преобразовывая дважды видеосигнал (сначала в аналоговый, а потом опять в цифровой). Один из вариантов разводки разъема DVI-I приведен ниже. Модификации разъема DVI-I различаются отсутствием ряда контактов, например, могут быть удалены контакты С1-С4, предназначенные для аналогового сигнала, или ряд контактов для второго монитора. Для подключения телевизионной аппаратуры к компьютеру на ряде видеокарт может быть установлен аналоговый разъем S-Video (с различной разводкой и количеством контактов) и новый цифровой интерфейс HDMI (High Definition Multimedia Interface). На рис. 10.13 приведено внешнее сравнение разъемов двух цифровых интерфейсов DVI-I и HDMI.

Конт.Сигнал Конт. Сигнал Конт. Сигнал
1 TMDS data 2-
2 TMDS data 2+
3 TMDS data 2/4 shield
4 TMDS data 4-
5 TMDS data 4+
6 DDC clock
7 DDC data
8 Analog vertical sync
9 TMDS data 1-
10 TMDS data 1 +
11 TMDS data 1/3 shield
12 TMDS data 3-
13 TMDS data 3+
14 +5V power
15 Ground (for sync)
16 Hot plug detection
17 TMDS data 0-
18 TMDS data 0+
19 TMDS data 0/5 shield
20 TMDS data 5-
21 TMDS data 5+
22 TMDS clock shield
23 TMDS clock+
24 TMDS clock-
C1 Analog red
C2 Analog green
C3 Analog blue
C4 Analog horizontal
sync
C5 Analog ground
(Analog R, G, & В
return)

Производители видеокарт и графических процессоров

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

Эти две компании настолько сильно обогнали в развитии своих конкурентов, что их положение на рынке видеочипов практически такое, как у Intel и AMD на рынке процессоров. Поэтому основные сражения в области совершенствования вывода изображения на экран монитора происходят между двумя этими игроками. В частности, смена поколений и архитектур графических процессоров этих двух фирм происходит так часто, что новые, более революционные решения, могут появляться через 6, а то и 3 месяца. Среди производителей видеокарт на базе чипсетов NVIDIA и AMD в России популярны следующие компании, как это указано в списке названий брендов, отсортированных примерно в порядке популярности: