Лекция 7. Лекция 7 Видеосистемы пэвм
Скачать 1.19 Mb.
|
РЕЖИМЫ РАБОТЫ ДИСПЛЕЯСуществуют два основных режима вывода информации на экран монитора – графический и текстовый (символьный). В графическом режиме имеется возможность индивидуального управления свечением каждой точки экрана монитора независимо от остальных. Этот режим обозначают как Gr (Graphics) или APA (All Point Addressable – все точки адресуемы). В графическом режиме каждой точке экрана – пикселю – соответствует ячейка видеопамяти, которая сканируется схемами видеоадаптера. Процесс постоянного сканирования видеопамяти называется регенерацией изображения. Этого сканирования достаточно для регенерации информации в микросхемах динамической памяти, применяемой в видеопамяти (VRAM). Для программно-управляемого построения изображения в VRAM должен обеспечиваться доступ со стороны системной магистрали компьютера, причём как в режиме записи, так и в режиме чтения. Количество бит видеопамяти, отводимое на один пиксель, определяет возможное число состояний пикселя – цветов, градаций яркости или иных атрибутов (например, мерцания символа). Это количество в различных адаптерах колеблется от 1 до 24. Логическая организация VRAM может быть разная, в зависимости от количества бит на один пиксель. В случае одного или двух бит на пиксель каждая ячейка (байт) соответствует 8 или 4 соседним пикселям строки. При сканировании ячейка считывается в регистр сдвига, из которого информация о соседних точках последовательно поступает на выходные цепи адаптера. Такой способ отображения называется линейным – последовательности пикселей соответствует линейная последовательность бит (или группы бит) видеопамяти. В качестве примера, на Рис. 8 показан вариант, при котором количество бит на пиксель составляет 4 и видеопамять разбита на четыре области (слоя, банка), называемых также цветовыми плоскостями. При этом в каждой плоскости используется линейная организация, где каждый байт содержит по одному биту восьми соседних пикселей. Слои сканируются (считываются в сдвигающие регистры) одновременно. В результате параллельно формируются по 4 бита на каждый пиксель. Такое решение позволяет снизить частоту считывания ячеек памяти за счет распараллеливания. Ячейки слоёв памяти, отвечающие за одни и те же пиксель, имеют совпадающий адрес. Это позволяет производить параллельную запись информации сразу в несколько цветовых плоскостей (запись для каждого слоя разрешается индивидуально), что экономит время. Считывание со стороны магистрали конечно возможно только послойное. В режимах 8, 16 и 24 бита на пиксель также используется линейная организация, но каждый байт (слово или три байта) отвечает уже за цвет одного пикселя. Рис. 8. Четырехслойное линейное отображение Формат хранения изображений, при котором биты так или иначе отображают пиксели, называют битовой картой (Bit Map). Формирование битовой карты изображения в видеопамяти графического адаптера производится под управлением программы, исполняемой центральным процессором. Сама по себе задача формирования процессору вполне по силам, но при её решении требуется пересылка большого объёма информации в видеопамять, а для многих построений ещё и чтение видеопамяти со стороны процессора. Видеопамять большую часть времени занята выдачей информации схемам регенерации изображения в довольно напряжённом режиме. Таким образом, канал связи процессора с видеопамятью представляет собой «узкое горлышко», через которое необходимо протолкнуть поток данных, причём, чем больше цветов (бит на пиксель), тем этот поток должен быть интенсивнее. Выходов из этого затруднения несколько: 1. Повышение быстродействия видеопамяти. 2. Расширение разрядности шин графического адаптера. 3. Кэширование видеопамяти. В этом случае данные будут записаны, как в видеопамять, так и в ОЗУ (или в КЭШ), а при считывании из этой области обращение будет только к быстродействующему ОЗУ. 4. Значительно сократить текущий объём информации, передаваемой графическому адаптеру, но для этого графический адаптер должен быть наделён «интеллектом». Под «интеллектом» графического адаптера подразумевается наличие на его плате собственного процессора, способного формировать растровое изображение в видеопамяти (BipMap), по командам, полученным от центрального процессора. Команды ориентируются на наиболее часто используемые методы описания изображения, которые строятся из отдельных графических элементов более высокого уровня, чем пиксели: а) Команды рисования – построение графических примитивов: точки, отрезки прямой, прямоугольники, дуги, эллипсы. б) Копирование блокас одного места на другое для «прокрутки» изображения экрана в разных направлениях. в) Команды работы со спрайтами (Sprite)– небольшими прямоугольными фрагментами изображения, которые могут перемещаться по экрану как единое целое. г) Аппаратная поддержка окон – упрощает и ускоряет работу с экраном в многозадачных (многооконных) системах. д) Команды панорамирования – отображение заданной области изображения. е) Команды ускорения построений – сокращение объёма передачи, освобождение центрального процессора от построений. Графический сопроцессор представляет собой специализированный процессор с соответствующим аппаратным окружением, который подключается к шине компьютера и имеет доступ к его оперативной памяти. В процессе своей работы сопроцессор пользуется оперативной памятью, конкурируя с центральным процессором по доступу и к памяти, и к шине. Графический акселератор работает автономно и может не выходить на системную шину. Акселераторы являются составляющей частью практически всех графических адаптеров – 2D-и 3D-акселераторы. Текстовый режимВ текстовом (символьном) режиме изображение на экране образуется несколько иначе. Если в графическом режиме, каждой точке экрана соответствует своя ячейка видеопамяти, то в текстовом режиме ячейка видеопамяти хранит информацию о символе, занимающем на экране знакоместо определённого формата. Знакоместо представляет собой матрицу точек, в которой может быть отображён один из символов определённого набора (алфавита). В ячейке видеопамяти хранится код и атрибуты символа, определяющие вид его отображения на экране. К атрибутам символа относятся: цвет символа, цвет фона, инверсия, мигание и подчёркивание символа. В текстовом режиме экран организуется в виде матрицы знакомест, образованной горизонтальными линиями и вертикальными колонками. Этой матрице отвечает аналогичным образом организованная видеопамять. Адаптер, работающий в текстовом режиме, имеет дополнительный блок – знакогенератор. Во время сканирования экрана, выборка данных из очередной ячейки видеопамяти происходит при подходе электронного луча ЭЛТ к соответствующему знакоместу (или подачи соответствующих напряжений на шины ЖК – матрицы). Считанные данные из очередной ячейки видеопамяти будут попадать в знакогенератор, который вырабатывает изображение соответствующего символа в текстовой строке на экране. Знакогенератор представляет собой запоминающее устройство – ОЗУ или ПЗУ. На его старшие адресные входы поступает код текущего символа (ASCI-код), а на младшие – номер текущей строки в отображаемой линии знакомест. Выходные данные содержат побитную развёртку текущей строки матрицы разложения символа (в графическом режиме эти данные поступали из видеопамяти). Необходимый объём памяти знакогенератора определяется форматом (размером) знакоместа и количеством отображаемых символов. Если знакогенератор выполнен на микросхемах ПЗУ, то набор отображаемых символов оказывается жёстко фиксированным (в лучшем случае переключаемым, для чего может использоваться несколько выбираемых банков знакогенератора). Если знакогенератор выполнен на микросхемах ОЗУ, то, естественно, он обеспечивает и режим, в котором его содержимое можно, по крайней мере, загрузить программно. Адаптеры с загружаемым знакогенератором русифицируются чисто программными средствами. Каждому знакоместу в видеопамяти кроме кода символа соответствует ещё и поле (байт) атрибутов. Это поле задаёт цвет и интенсивность воспроизведения символа и его фона. Рис 9. Формат слова, задающего символ и упрощенная схема адаптера На Рис. 9, а приведён формат слова, задающего символ в цветном мониторе в ПЭВМ типа IBM PC. Байт атрибута несёт следующую информацию:
Текстовый адаптер имеет также аппаратные средства управления курсором. Знакоместо, на которое указывают регистры координат курсора, оформляются особым образом. Обычно его выделяют мигающей полоской, размер и положение которой относительно знакоместа программируется. Следует отметить, что к такому выделению байт атрибутов не имеет отношения, хотя возможен неудачный выбор атрибутов (сочетание цветов), когда курсор перестаёт быть различимым на экране. Поскольку в текстовом режиме в адаптер передают только коды символов, заполнение всего экрана займёт в десятки раз меньше времени, чем построение того же изображения в графическом режиме. Программный код вывода символов в текстовом режиме проще и компактнее, чем при программном формировании его растрового изображения. По этим причинам графические адаптеры имеют знакогенератор, дающий возможность работы и в текстовом режиме, а при переходе в графический режим знакогенератор отключается. Интеллектуальные адаптеры позволяют выводить символы (формировать их растровое изображение с заданным форматом знакоместа) и в графическом режиме. При этом адаптер получает только команду с указанием координат отображаемых символов и сам поток кодов символов, после чего строит их изображение, не отвлекая центральный процессор. Рассмотрим конкретный пример – работу видеоадаптера дисплея в текстовом режиме при выводе символа «1» (Рис. 9). В данном примере видеопамять организована следующим образом: Слой 0 (Банк 0) – содержит коды символов всех алфавитов, которыми располагает дисплей. Слой 1 (Банк 1) – содержит информацию об атрибутах символов. Слой 2 (Банк 2) – знакогенератор. Слой 3 (Банк 3) – слой не используется в данном режиме. Последовательность работы видеоадаптера такова (упрощенная схема адаптера приведена на Рис. 9): 1. Из текстового файла, поступающего из памяти компьютера, считывается двухбайтовое слово. 2. Нечётный байт поступает в ячейку нулевого слоя видеопамяти. Адрес этой ячейки определяется кодом символа. 3. Содержимое ячейки адресует к ячейке знакогенератора, в которой хранится матрица цифры «1». 4. Байт атрибута поступает в слой 1 видеопамяти (в ту ячейку, в которой закодированы атрибуты символа). Цвет символа, цвет фона и др. 5. Атрибуты и матрица символа построчно считываются из видеопамяти и поступают в блок преобразователь последовательности (ПП), а затем в контроллер атрибутов (КА). Затем символ выводится на экран. ВИДЕО BIOS И ВИДЕОСЕРВИС BIOSБазовая система ввода-вывода (BIOS), включает в себя обширный набор программ ввода-вывода, благодаря которым операционная система и прикладные программы могут взаимодействовать с различными устройствами, как самого компьютера, так и с устройствами, подключёнными к нему. Большинство современных видеоадаптеров (а также контроллеры накопителей) имеют собственную систему BIOS, которую иногда называют расширением BIOS или Video BIOS и которая дополняет основную BIOS. Вызов программ BIOS, как правило, осуществляется через программные или аппаратные прерывания. Дисплейный адаптер, как важный компонент персонального компьютера имеет поддержку основных функций в BIOS. Эти функции выполняются через вызов посредством программного прерывания видеосервиса BIOS. Видеосервис позволяет: 1. Устанавливать и переключать режимы работы дисплея. 2. Выполнять вывод символов и пикселей. 3. Очищать и прокручивать экран универсальными способами без оглядки на установленный режим и другие функции. Видеосервис BIOS необходим, по крайней мере, до загрузки операционной системы, которая в дальнейшем может работать с графическим адаптером и напрямую, через собственные загружаемые драйверы, специфические для конкретного адаптера. Программная поддержка всех графических адаптеров, размещенных на системной плате, встроена в системную структуру BIOS. Все остальные адаптеры имеют собственный модуль расширения BIOS (Video BIOS), в котором хранятся коды драйверов видеосервиса и таблицы знакогенераторов. Этот модуль обеспечивает возможность установки любой карты, не задумываясь о проблемах программной совместимости. Первичной задачей BIOS графического адаптера является управление видеорежимом, определяющим формат экрана. В рамках установленного видеорежима видеосервис предоставляет возможности отображения информации на различных уровнях. Простейший для программиста телетайпный режим позволяет посылать поток символов, которые будут построчно отображаться на экране с отработкой символов возврата каретки, перевода строки, обеспечивая «прокрутку» изображения при заполнении экрана. Есть функции и для полноэкранной работы с текстом, при которой доступны и атрибуты символа. В графическом режиме имеется возможность чтения и записи пикселя с заданными координатами. Однако этим режимом программисты пользуются редко, поскольку работает он довольно медленно. ИНТЕРФЕЙСЫ ДИСПЛЕЕВНазначение дисплейного адаптера обязывает его иметь, по крайней мере, два интерфейса – один для связи с монитором, другой – для связи с процессором (ЦП) и памятью компьютера (ОЗУ). Интерфейс для связи с ЦП и ОЗУ принято называть магистральным или внешним интерфейсом адаптера. В качестве магистральных интерфейсов использовались шины ISA/EISA и MCA, но их производительности оказалось недостаточно для того, чтобы справиться с большим потоком данных, требуемых для графических построений. Ради ускорения обмена с дисплейным адаптером была разработана и стандартизована локальная шина VLB. Однако она ушла вместе с процессором 486. Современное решение проблемы магистрального интерфейса, работающее на широком спектре процессоров – шина PCI. Однако и этого оказалось мало, и на базе шины PCI для процессоров х86 класса Pentium и выше был разработан специальный интерфейс AGP, имеющий производительность в 2 раза большую, чем PCI. Для вывода графических изображений с высоким разрешением ни одна из традиционных вещательных систем телевидения (PAL, SECAM или NTSC) не подходит, поскольку они имеют существенно ограниченную полосу пропускания цветовых сигналов. Для графики низкого разрешения, при которой частоты синхронизации были близки к стандартам телевидения, использовался интерфейс Composite Video. По коаксиальному кабелю (75 Ом) передавался полный стандартный видеосигнал с размахом по амплитуде около 1,5 вольт. Для мониторов с высоким разрешением можно использовать только прямую подачу сигнала на входы видеоусилителя базовых цветов – RGB-вход. В настоящее время в качестве интерфейсов видеоадаптер-видеомонитор используются: 1. Дискретный интерфейс RGB TTL; 2. Аналоговый интерфейс RGB; 3. Комбинированный интерфейс EVC; 4. Цифровой интерфейс DVT. Более подробно интерфейсы рассматриваются в электронном курсе профессора Ю.А.Чернышева. |