Смекни!
smekni.com

Видеоадаптеры 2 (стр. 3 из 4)


Рис. 1. Схема вывода графического изображения на монитор.

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

Рассмотрим подробнее этапы следования данных от центрального процессора системы до монитора.

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

2. Ключевой момент, влияющий на производительность видеоподсистемы, вне зависимости от специфических функций различных графических процессоров - это передача цифровых данных, обработанных графическим процессором, в видеопамять, а оттуда в RAMDAC. Самое узкое место любой видеокарты - это видеопамять, которая непрерывно обслуживает два главных устройства видеоадаптера: графический процессор и RAMDAC, которые вечно перегружены работой. В любой момент, когда на экране монитора происходят изменения (иногда они происходят в непрерывном режиме, например, движение указателя мыши, мигание курсора в редакторе и т.д.), графический процессор обращается к видеопамяти. В то же время, RAMDAC должен непрерывно считывать данные из видеопамяти, чтобы изображение не пропадало с экрана монитора. Поэтому, чтобы увеличить производительность видеопамяти, производители применяют различные технические решения. Например, используют различные типы памяти с улучшенными свойствами и продвинутыми возможностями, например, VRAM, WRAM, MDRAM, SGRAM, или увеличивают ширину шины данных, по которой графический процессор или RAMDAC обмениваются информацией с видеопамятью, используя 32-разрядную, 64-разрядную или 128-разрядную видеошину.

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

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


5. RAMDAC (Random Access Memory Digital to Analog Converter).

5.1. Принципы работы и параметры.

RAMDAC имеет два режима работы. В первом режиме чипсет оперирует данными цветовой гаммы или палитры (palletized data). В этом режиме 8 битные данные конвертируются в RGB цвета. Каждому из 256 возможных значений цвета соответствует положение в цветовой палитре, которая размещается в DAC (цифро-аналоговый преобразователь). Цветовая палитра формируется и хранится в RAM (память с произвольной выборкой) - отсюда и название RAMDAC - и может быть загружена с любой комбинацией цветов. Каждый раз, когда новый пиксель передается в DAC для отображения на экране, значение передаваемых данных используется в качестве указателя на положение в палитре, информация из палитры, используется в качестве значения цвета для DAC. Палитра, хранящаяся в RAM, имеет 256 позиций, каждая из которых хранит 24 бита данных о цвете, по 8 бит для каждого из трех основных составляющих цветов Red, Green и Blue. Емкость RAM соответствует значению 256 х 24 = 6144 бит или 768 байт. Для RAM используется стандартная память, изготовленная по технологии DRAM и интегрированная вместе с графическим контроллером и DAC в одну микросхему, иначе говоря - в один силикон (кремний).

Кстати, технология включения RAM для DAC в графический чипсет не имеет никакого отношения к так называемой Embedded RAM (Встраиваемая память). Последняя используется в качестве локальной памяти (Local Memory), так же называемой буфером кадра.

Во втором режиме RAMDAC оперирует цветовыми данными. В этом режиме (при 16, 24 или 32 бит представлении цвета) данными является RGB цвет. Например, при 16 битном представлении цвета, 5 бит определяют красный (Red), 6 бит зеленый (Green) и 5 бит синий (Blue) цвета. Для зеленого цвета используется больше бит, так как человеческий глаз более чувствителен к зеленому. При 24 или 32 бит представлении цвета, для каждого из цветов используется по 8 бит данных. В этом режиме данные, определяющие цвет, передаются непосредственно в DAC без использования RAM, т.е. не используются загружаемые палитры и данные передаются напрямую из видеопамяти. Так как RAM не задействована, то нет и ограничения в 205 MHz для частоты, на которой работает DAC. Единственным ограничением является максимально возможная скорость работы DAC.

Выбор режима работы RAMDAC происходит так: операционная система Windows95/98/NT или приложение сообщает о требуемом режиме драйверу видеоадаптера, который и переводит RAMDAC в один или другой режим работы. Утилита управления режимами монитора (Display Control Panel) в Windows предоставляет возможность выбора между 8, 16 или 24/32 бит представлением цвета. Это и есть способ, с помощью которого Windows выбирает режим работы RAMDAC. Приложение, которое запускается на полный экран, может устанавливать любой, требуемый ему режим, главное, чтобы этот режим поддерживался видеоадаптером.

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

Выбор режима работы RAMDAC никак не связан с типом используемой видеопамяти.

Выбор режима, в котором работает RAMDAC, зависит от количества возможных цветов. DAC имеет разрядность 8*8*8 бит, т.е. по 8 бит на каждый RGB цвет, что соответствует способности отображать 16777216 (16М) цветов. При 8 битном представлении цвета, для палитры может использоваться 256 из 16 миллионов возможных цветов. При использовании данных цветовой гаммы (палитры), активными являются только 256 цветов, которые могут отображаться на экране в любой произвольно выбранный момент времени. Впрочем, палитра может быть изменена приложением в любой момент. При 8 битной глубине представления цвета, за загрузку палитры отвечает каждое приложение. При 16 битном цвете, имеется фиксированный набор цветов и для отображения могут использоваться любые цвета из 65536 (64К) доступных. При 24 или 32 битном цвете, DAC может отображать любой из 16 миллионов (16М) возможных цветов.

Каждый пользователь может заметить, что при 8 битном цвете любое графическое изображение выглядит не так хорошо, как при 16 битном представлении цвета. Однако, большинство пользователей не могут заметить разницы при просмотре хорошо сделанного графического изображения в режиме 16 битного и 32 битного представления цвета. Фраза "хорошо сделанное графическое изображение" означает растрирование (dithering – дизеринг) - процесс смешивания двух соседних цветов, для получения третьего с одновременным обеспечением плавных переходов между элементами изображения. В результате использования технологии растрирования получаются изображения, которые смотрятся практически одинаково в режимах с разной глубиной представления цвета.

Для 16 битного представления цвета требуется в два раза больше памяти, чем для 8 битного, а для 32 битного представления цвета требуется в два раза больше памяти, чем для 16 битного. В связи с тем, что графические адаптеры имеют ограниченные объемы памяти, экономия этого ресурса становится одной из приоритетных задач. Ко всему прочему, отображение 32 битных данных зачастую происходит дольше, чем отображение 16 битных данных. А это уже относится к проблеме производительности, о чем тоже не стоит забывать. Именно поэтому обычному пользователю стоит использовать 16 битное представление цвета в Windows95/98/NT.

Пользователь или приложение выбирают тот режим представления цвета, который для них наиболее удобен. Текстовый процессор, электронная таблица и 2D игры могут прекрасно работать в режиме 8 битного представления цвета. Видеофильмы, 3D игры и 3D приложения обычно используют 16 битный режим представления цвета, в качестве компромисса между качеством изображения и производительностью. При использовании программ для просмотра высококачественных фотографий, их редактирования, а так же приложений для создания графики лучше всего использовать 24/32 битное представление цвета.