Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4.b._Konspekt2.doc
Скачиваний:
115
Добавлен:
22.08.2013
Размер:
5.43 Mб
Скачать

5. Видеоадаптеры и видеомониторы

Графические (видео) адаптеры ПЭВМ прошли путь развития от MDA до SVGA; на последнем названии, похоже, произошла длительная остановка, поскольку оно довольно всеобъемлюще.

Сделаем предварительно некоторые замечания, которые помогут глубже понять функции современных видеоадаптеров:

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

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

3.Все современные видеоадаптеры являются графическими ускорите-лями

4. Первые графические ускорители были предназначены для работы с двухразмерной графикой (2D). Они обеспечивали аппаратное ускорение типичных задач: прорисовки и перемещения окон, масштабирование шрифтов и т.д. 2D-ускорители работают с экраном как с плоским (двухмер- ным) пространством. Хотя одно окно может перекрывать другое, их порядок всегда известен.

5. 3D-ускорители, напротив, расширяют экран в глубину.

Краткая характеристика адаптеров в хронологическом порядке их появления дана в Приложении 1.

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

Контроллер ЭЛТ. Поскольку видеоадаптер предназначен (в первую оче- редь) для подключения монитора, его обязательным элементом будет контроллер ЭЛТ (CRT Controller - КЭЛТ). В его задачу входит согласованное формирование сигналов сканирования видеопамяти (адрес и строб чтения) и сигналов вертикальной и горизонтальной синхронизации монитора. КЭЛТ должен обеспечивать требуемые частоты развёртки (строчной и кадровой) и частоты сканирования видеопамяти, которые зависят от режима отображения (графический или текстовый) и организации видеопамяти. Опорной частотой для работы КЭЛТ является частота вывода пикселей (DotCLC) в графиче- ских режимах или точек разложения символов в текстовых режимах.

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

Требуемые объёмы памяти для одной страницы различных видеорежимов приведены в таблице 5.1.

Таблица 5.1 Разрешение и требуемый объём видеопамяти

Бит/

пиксель

Количество

Цветов

640х480

800х600

1024х768

1280х1024

4

16

150 Кб

234 Кб

384 Кб

640 Кб

8

256

300 Кб

469 Кб

768 Кб

1,25 Мб

15

32768

600 Кб

978 Кб

1,5 Мб

2,5 Мб

16

65536

600 Кб

978 Кб

1,5 Мб

2,5 Мб

24

16777216

900 Кб

1,37 Мб

2,25 Мб

3,75 Мб

32

16777216

1,172 Мб

1,83 Мб

3,0 Мб

5,0 Мб

Трактовка данных видеопамяти зависит от используемого видеорежима. В текстовых режимах каждому знакоместу экрана (матрице символа) соответ- ствует слово видеопамяти, расположенное по чётному адресу в текстовом файле. При этом младший байт слова (байт с чётным адресом) содержит ASCII-код символа, а старший байт – его атрибуты. Организация памяти в этом случае является линейной: цепочка слов соответствует собранной в цепь последовательности строк символов.

В видеопамяти используется и многоплоскостная модель памяти (см. рис.6.1). При этом в зависимости от режима работы адаптера плоскости (банки или слои) памяти используются по-разному ( от всего одного слоя до всех 4-х) На рис.5.1 слой 2 видеопамяти выполняет функции знакогенератора (ЗнГ).

Графический контроллер (ГК). Видеоадаптер с ускорителем не требует от центрального процессора, чтобы тот самостоятельно подготавливал все кадры и переправлял их в буфер. Такой адаптер должен обязательно иметь графический контроллер (процессор), оптимизированный для выполнения низкоуровневых функций обработки изображений, таких как копирование растров, выполнение различных заливок, масштабировании шрифтов, изме- нение размеров и положения окон, а также прорисовка линий, многоугольников и других графических примитивов. Видеоадаптер с ускори-телем требует передачи гораздо меньших объёмов данных по системной шине. Например, чтобы нарисовать на экране окружность с адаптером без ускорителя, центральный процессор должен создать растровое изображение этой окружности, а затем передать его адаптеру. Графический ускоритель сам может построить эту окружность, получив от процессора лишь координаты центра окружности и его радиус.

Контроллер атрибутов (КА). Это устройство управляет трактовкой цветовой информации, хранящейся в видеопамяти.

В текстовых режимах он обрабатывает информацию из байтов атрибутов знакомест (откуда и пошло его название - контроллер атрибутов).

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

Контроллер атрибутов позволяет увязать объём хранимой цветовой информации с возможностями монитора.

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

В адаптере EGA применены уже настоящие программируемые регистры палитр, позволяющие каждому из 16 возможных кодов, задаваемых четырьмя битами цветовых слоёв, поставить в соответствие один из 64 возможных цветов, отображаемых монитором EGA.

На рис. 5.2 приведена схема преобразования цветов через регистры палитр и контроллер атрибутов (RAMDAC).

Левая часть схемы (16 регистров палитры) реализует преобразование битов с условными названиями R, G, B и I в сигналы интерфейса монитора EGA. Названия битов условны потому, что в регистры палитр могут быть загружены произвольные значения реальных выходных цветов, кодируемых интерфейсными сигналами Rr, Gg, Bb.

С появлением адаптеров VGA, способных задавать большое (256 и более) количество цветов, схему цветообразования усложнили. Теперь на плату графического адаптера из монитора «переехали» ЦАП,ы (DAC) сигналов базисных цветов, и появилась возможность отображать огромное количество цветов (цветовых оттенков, т.е. цветовых полутонов), кодируемых аналого- выми сигналов. Однако, реальное количество цветов ограничивается разрядностью ЦАП базисных цветов, которая поначалу составляла 6 битов на каждый канал, что позволило задать 32768 цветовых оттенков. Чтобы отобразить 256 кодов цвета (8 битов на пиксель), в эти 32768 цветовых оттенков ввели программируемые регистры ЦАП, с помощью которых каждому из 256 кодов ставится в соответствие свой набор битов, посылаемых на схемы ЦАП базисных цветов. Функционально оказалось целесообразным объединить эти регистры, представляющие собой небольшие быстродействующие ОЗУ (RAM), вместе с преобразователями DAC (Digital-Analog Converter ЦАП). Эта функциональная сборка в настоящее время ис-полняется в виде микросхемы RAMDAC. Схему преобразования с использо- ванием RAMDAC иллюстрирует правая часть схемы на рис. 5.2.

Номера регистра RAMDAC, из которого цвет текущего отображаемого пикселя, в режиме 256 цветов задают 8-битным кодом цвета пикселя (в видеопамяти). При работе в 16-цветном режиме EGA и 2-4 цветном режиме адаптер VGA использует регистры палитр, на выходе ко- торых получается 6-битный код цвета. Старшие 2 бита добавляются из регистра цвета, с помощью которого можно переключать палитру сразу для всех цветов. В этих режимах регистры RAMDAC функционально дублируют регистры палитр. Лишнюю ступень косвенности можно сгладить, беря на вход RAMDAC только 4 биты с выхода регистра палитр, из регистра цвета брать уже 4 бита. Тогда в сами регистры палитр целесообразно загрузить их номера, что обеспечит линейное преобразование (4 бита из слоёв пройдут через регистры палитр без изменений). Графические адаптеры имеют возможность переключения режима преобразования – использование в общем-то лишних регистров палитр требуется только для совместимости с ПО, ориентированным на адаптеры EGA.

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

Знакогенератор (ЗнГ). Знакогенератор предназначен для формирования растрового изображения символов в текстовом (и графическом) режимах эк-рана монитора. Знакогенераторы адаптеров обычно размещаются во втором слое (банке) видеопамяти (EGA, VGA) и поэтому программно доступны. (Знакогенераторы MDA, HGC и CGA программно недоступны: они выполняются в виде микросхем ПЗУ, никак не отображаемых в адресном пространстве процессора).

При инициализации адаптера они (знакогенераторы) загружаются из образов, хранящихся в ПЗУ расширения BIOS, установленных на платах графических адаптеров.

Адаптер EGA позволяет одновременно хранить до 4-х таблиц по 256 символов в каждой, а VGA – до 8 таблиц. Активной (используемой для отображения) таблицей может быть одна из них, либо сразу две. В последнем случае набор одновременно отображаемых символов расширяется до 512, а одна из 2-х таблиц, используемых для конкретного символа, определяется битом 3 его байта атрибута. Таблицы имеют 32-байтную развёртку каждого символа в формате 16 х 16, из которой в EGA используется матрица 8 х 14, а в VGA - 9 х 16.

Программная доступность ЗнГ снимает необходимость аппаратной русси- фикации адаптера, но при желании можно переписать руссифицированные шрифты в BIOS графического адаптера. Алгоритм работы ЗнГ будет рас-смотрен ниже (текстовый режим работы дисплея).

Синхронизатор (CLC) появился в адаптере EGA; он позволяет синхрони- зировать циклы обращения процессора к видеопамяти с процессом регенера- ции изображения. Адаптеры имеют собственные кварцованные генераторы синхронизации (иногда и несколько). От внутреннего генератора вырабаты-вается частота вывода пикселей (DotCLC), относительно которой строятся все временные последовательности сканирования видеопамяти, формирова- ния видеосигналов и синхронизации монитора. В то же время процессор об- ращается к видеопамяти асинхронно относительно процесса регенерации. В задачу CLC входит согласование этих асинхронных процессов.

Внешний интерфейс (ВИ) связывает адаптер с одной из шин компьютера. Современные графические адаптеры используют, в основном, высокопроиз-водительные шины PCI и канал AGP.

Интерфейс монитора (ИМ) формирует выходные сигналы соответству-ющего типа – RGB TTL, RGB Analog, композитный видео или S-Video. Этот же блок отвечает и за диалог с монитором: в простейшем случае – чтение бит идентификации (для VGA), а в более сложном – обмен данными по каналу DDC (интерфейс обмена данными с монитором).

Пример работы адаптера, поясняющий процедуру вывода текста на экран будет рассмотрен ниже.

Соседние файлы в предмете Системы ввода и вывода данных