Конспект 1-3 (774777), страница 2
Текст из файла (страница 2)
Видеоадаптер отражает на экран одну из них, которая называется видимой, а в это время другие видеостраницы могут подвергаться изменению, что повышает качество изображения. Видеостраница, с которой в данный момент производится работа, называется активной.
Использование видеостраниц позволяет строить последовательности кадров при мультипликации. Для устранения мерцания кадров одна видеостраница (видимая) – это кадр на экране, а следующая (активная, но не видимая) – очищается, и на ней помещается следующий кадр.
ТЕХНИЧЕСКИЕ СРЕДСТВА ОБРАБОТКИ ИЗОБРАЖЕНИЙ
ВИДЕОКАРТА
Видеосистема ПЭВМ состоит из видеокарты и подключенного к ней монитора. Видеокарта обычно содержит следующие блоки (см. рис.4).
Изображение хранится в растровом виде в видеопамяти. Каждая видеокарта содержит собственный BIOS (Basic Input-Output System) для работы с ней и поддержания основных функций платы.
Созданием изображения на мониторе управляет обычно аналоговый видеосигнал, формируемый видеоадаптером, который вырабатывается блоком цифроаналоговых преобразователей (Digital Analog Converter - DAC). Поскольку DAC обычно включает собственную память произвольного доступа (Random Access Memory,
Центральный Процессор
Порты ввода/вывода

видеокарта
Регистры-порты


Графический процессор
Монитор

Видеопамять
DAC
Рис.4
Рис.4
RAMDAC) для хранения палитры цветов, на последнем этапе DAC преобразует цифровые данные в аналоговый сигнал и посылает их на монитор. Эта операция выполняется несколько десятков раз за одну секунду; данная характеристика называется частотой обновления (или регенерации) экрана. Согласно современным эргономическим стан-дартам частота обновления экрана должна составлять не менее 85Гц.
Наиболее распространенными пока являются видеокарты VGA, SVGA. Более поздние видеокарты поддерживают режимы более ранних моделей.
МОНИТОРЫ
Выбор видеоадаптера в первую очередь зависит от типа монитора, с которым он будет работать. Например, если это 14-дюймовый монитор, то оптимальные характеристики видеоадаптера достигаются при разрешении 800х600 пикселей. Это легко вычислить: размер изображения на 14-дюймовом дисплее 27х20см, если при этом расстояние между соседними точками «теневой маски» составляет 0,28мм, то такой монитор способен обеспечить максимальное разрешение 950х712 пикселей. Аналогично можно показать, что 15-дюймовые мониторы способны работать при разрешении не выше 1024х768, а 17-дюймовые при разрешениях 1152х864.
При выборе видеокарты необходимо, чтобы она обеспечивала полосу пропускания, не ниже требуемой для монитора. Полоса пропускания определяет максимальную частоту вертикальной развертки. Она также зависит от разрешения: чем оно выше, тем меньшую частоту вертикальной развертки обеспечивает монитор.
РЕЖИМЫ РАБОТЫ ВИДЕОАПАПТЕРОВ
Каждый видеоадаптер поддерживает несколько режимов, различающихся размерами матрицы пикселей (разрешением) и размером палитры (количеством цветов, которые можно одновременно отобразить на экране). Часто разные режимы даже одного видеоадаптера имеют разную организацию видеопамяти и способы работы с ней.
Доступ из программ к видеоадаптеру осуществляется через программу драйвер, т.е. программу со стандартным интерфейсом, реализующую основные операции адаптера. Например,
-
основная функция определение точки заданного цвета с заданными координатами;
-
построение линий заданного цвета (прямые, дуги) или растровые образы линий;
-
построение сплошных объектов или растровых образов двумерных областей;
-
шрифты;
-
изображения (прямоугольные матрицы пикселей).
Ассоциацией стандартов в области видеоэлектроники VESA (Video Electronic Standard Association) было принято решение о стандартизации набора функций, обеспечивающего получение необходимой информации о видеокарте, установку заданного режима и банка памяти. Введен стандартный набор расширенных режимов. Номер режима является 16-битовым числом, где биты 9-15 зарезервированы и должны быть равны 0, бит 8 для VESA-режимов равен 1, а для «родных» режимов видеокарты – равен 0 (см. рис.5 и табл.1).
Рассмотрим подробнее 16-цветные режимы адаптеров EGA и VGA. Для этих режимов на каждый пиксель нужно выделить 4 бита видеопамяти (24=16). Однако, эти 4 бита выделяются в 4-х разных
блоках (цветовых плоскостях видеопамяти).
I байт II байт
номер режима


15 9 8 7 0
нули VESA-бит
Рис. 5
Таблица 1.
№ режима, 16-ное | Разрешение экрана | Кол-во цветов | Примечания | |
пикселей | бит/пикс | |||
000D | 320х200 | 4 | 16 | основные |
000E | 640x200 | 4 | 16 | EGALO |
000F | 640x350 | 1 | 2 | “родные” |
0010 | 640x350 | 4 | 16 | EGAHI |
0011(VGA) | 640x480 | 1 | 2 | режимы |
0012(VGA) | 640x480 | 4 | 16 | VGAHI |
0013(VGA) | 320x200 | 8 | 256 | SVGA |
0100 | 640х400 | 8 | 256 | SV |
0102 | 800х600 | 4 | 16 | |
0103 | 800х600 | 8 | 256 | S |
0104 | 1024х768 | 4 | 16 | |
0105 | 1024х768 | 8 | 256 | VESA- |
0106 | 1280х1024 | 4 | 16 | |
0107 | 1280х1024 | 8 | 256 | |
010D | 320x200 | 15 | 32K | HiColor режимы |
010E | 320x200 | 16 | 64K | HiColor |
010F | 320x200 | 24 | 16M | True Color |
и т. д. до | | |||
011A | 1280x1024 | 16 | 64K | |
011B | 1280x1024 | 24 | 16M | |
Каждая цветовая плоскость (или цветовой слой) хранит образ экрана монитора в одном из основных цветов (CMYB-представления), причем каждому пикселю ставится в соответствие 1 бит в каждой плоскости, одинаково расположенный относительно ее начала (см. рис.6). Все эти плоскости проецируются на один и тот же участок адресного пространства процессора, начиная с адреса 0хА000:0. При этом все операции чтения и записи видеопамяти опосредуются видеокартой. Механизм этого опосредования определяется логикой видеокарты, но для программиста существует возможность управления этой логикой (при работе одновременно с 8-ю пикселями.
Д
ля работы с пикселем нужно определить адрес байта в видеопамяти, содержащего данный пиксель, и позицию пикселя внутри байта.
Рис. 6
В случае использования RGB-представления цвета могут использоваться 3 цветовых плоскости. Тогда в текстовых режимах в первой цветовой плоскости размещаются ASCII-коды отображаемых символов, во второй – атрибуты символов, а в третьей – знакогенератор.
На видеокарте находится набор специальных 8-битовых регистров. Часть из них доступна только для записи, часть – только для чтения, а некоторые вообще недоступны программисту. Доступ к регистрам осуществляется через порты ввода/вывода процессора.
Порт ввода/вывода в МП – это специальные регистры, которые делятся на 2 группы: регистры управления (индексные) и регистры данных. За каждым портом закреплен определенный номер порта. Напомним, что общее понятие «порт» означает устройство связи ЦВМ или его отдельного блока с внешними по отношению к нему устройствами.
Регистры видеокарты делятся на несколько групп (см. рис.7).
При этом каждой группе соответствует пара после-довательных портов (порт адреса и порт значения). Для записи значения в регистр видеокарты нужно сначала записать номер регистра в порт адреса, а затем – значение в порт данных. Чтение из регистра – аналогично.
Перечислим основные группы регистров видеокарты.
1) Внешние регистры – называются внешними, так как в видеоадаптере EGA они не принадлежат центральной микросхеме, содержащей основные контроллеры. Хотя в видеоадаптере VGA эти регистры находятся на одной микросхеме, название сохранилось.
Внешние регистры обеспечивают основное управление процессом передачи информации, в их число входят:
-
регистр определения различных режимов,
-
регистр состояния 0 (для чтения),
-
регистр управления дополнительным устройством,
-
регистр состояния 1 (для чтения),
-
регистр разрешения работ.
2) Регистры синхронизатора – синхронизатор управляет всеми временными параметрами видеоадаптера и разреше-нием/запрещением доступа к отдельным цветовым плоскостям. Доступ к регистрам производится через индексный порт с адресом 3С4h и через порт данных с адресом 3С5h. В их число входят:
-
регистр сброса синхронизатора,
-
регистр режима синхронизации,
-
регистр разрешения записи цветовой плоскости,
-
регистр выбора знакогенератора,
-
регистр определения структуры памяти.
3) Регистры графического контроллера – графический контроллер поддерживает обмен данными между процессором и видеопамятью. Обращение происходит через индексный порт с адресом 3СЕh и порт 3CFh. Графический контроллер содержит 9 регистров:
-
регистр установки/сброса,
-
регистр разрешения установки/сброса,
-
регистр сравнения цветов,
-
регистр циклического сдвига и выбора читаемой плоскости,
-
регистр режима работы,
-
регистр многоцелевого назначения,
-
регистр маскирования цветовых плоскостей,
-
регистр битовой маски.
4) Регистры контроллера ЭЛТ – управляют сигналами синхронизации, определяют форму курсора, а также формат данных на экране. Назначение и формат ряда регистров у разных фирм-производителей может различаться. Доступ к ним производится через индексный регистр и регистр данных в зависимости от типа монитора (см. таб.2).