Адаптер VGA


Адаптер VGA
В настоящее время система VGA стала наиболее распространенной. Она совместима со всеми преды дущими видеосистемами фирмы IBM, т.е. может работать со всеми программами, предназначенными длз адаптеров MCGA, CGA, EGA, фирмы Hercules и другими адаптерами и мониторами.
Первоначально система VGA разрабатывалась для семейства PS/2 и встраивалась в материнскую плат} компьютеров PS/2 моделей 50, 60 и 80. В моделях 25 и 30 применялась младшая ее версия, называема* MCGA (Multi Color Graphics Array). На задней стороне этих компьютеров имеется разъем для подклю чения монитора.
Через некоторое время была выпущена плата с системой VGA. Для работы с шиной микроканала пред назначен адаптер 8514 со специальным монитором. Сейчас разнообразные платы VGA выпускают нес колько фирм.
Типичные режимы VGA. Режимы адаптера VGA приведены в табл. 22.4. При выводе монохроматичес кого текста плата формирует 25 строк по 80 символов в каждой. Для 16-цветного текста предусмотрень форматы 80x25 и 40x25. Кроме этих режимов имеются режимы 132x25 и 132x43.

Адаптер VGA может эмулировать старую графическую плату CGA с разрешающей способностью 320x200 (четыре цвета) или 640x200 (два цвета). Однако в этих режимах число строк удваивается и составляет 400.
В режиме эмуляции монохроматической графики платы Hercules разрешающая способность составляет 720x348. При эмуляции платы EGA разрешающая способность изменяется в диапазоне от 320x200 до 640x350, а число цветов составляет 16.
К естественным режимам VGA относятся режимы 320x200 (256 цветов) и 640x480 (16 цветов). Кроме того, в плату VGA заложены средства расширенной графики, например режим с разрешающей способностью 800x600 (16 цветов), которые варьируются в различных платах. Для расширенной графики требуются специальные программные драйверы и мониторы, например многочастотные мониторы, рассматриваемые в главе 23.
В разных режимах применяются различные символьные матрицы от 8x8 (для разрешающей способности 320x200) до 9x16 (для разрешающей способности 720x400).
Компоненты системы VGA. Основным компонентом системы VGA является сверхбольшая интегральная схема VGA 1С. Видеопамять емкостью 256 Кбайт размещено на плате, а не в основной системной памяти. Остальными компонентами являются генератор точек, контроллер ЭЛТ, секвенсер, графический контроллер, атрибутный контроллер и ЦАП. Имеется также ПЗУ знакогенератора, в котором хранятся символьные наборы.
Микросхема VGA 1С выполняет функции управления и интерфейса между процессором и видеопамятью. Процессор не может записывать непосредственно в видеопамять, так как все данные должны проходить через интерфейс VGA 1С. Такое управление записью необходимо для поддержания правильной синхронизации между процессором и видеопамятью. При нарушении синхронизации на экране появляется мусор.
Видеопамять разделена на четыре секции по 64 Кбайт. Начальный адрес этих секций памяти можно запрограммировать на три различных значения. Благодаря гибкости адресации плата VGA совместима с предыдущими платами, которые она может эмулировать.
В генераторе точек используются два кварца на 25,175 и 28,322 МГц. Частота выбирается при задании режима с помощью BIOS, которая помещает единицу или нуль в регистр секвенсера. Меньшая частота предназначена для символов шириной в восемь битов, а большая — для символов с шириной девять битов.
Контроллер ЭЛТ выполняет следующие функции. В видеопамяти применяются микросхемы динамических ЗУПВ, которые требуют непрерывной регенерации. Контроллер ЭЛТ постоянно адресует их и поддерживает содержимое неизменным. Далее контроллер формирует адреса входных видеоданных. Есть еще две функции синхронизации. Необходимо правильно синхронизировать управление курсором и подчеркиванием, а также генерировать сигналы кадровой и строчной синхронизации.
Схемы секвенсера формируют синхронизацию для циклов VGA. Видеопамять работает в соответствии с частотой символов, выводимых на экран. Необходимо управлять считыванием данных из памяти, которая содержит информацию о символах и атрибутах для текстовых режимов. В этих режимах каждый символ задается двумя байтами, один из которых содержит код символа, а второй — атрибуты символа, например мерцание, негативное изображение, цвет фона и др. Секвенсер осуществляет синхронизацию для этих секций видеопамяти. При нарушении синхронизации на экране наблюдаются помехи.
Секвенсер управляет синхронизацией видеопамяти, а графический контроллер — передачами данных в видеопамять. Когда процессор считывает из видеопамяти или записывает в нее, графический контроллер связывает видеопамять с системной шиной данных. Когда цикл изменяется и информация из видеопамяти выводится на экран, графический контроллер соединяет видеопамять с атрибутным контроллером.
После вывода в атрибутный контроллер, данные обрабатывает цифроаналоговый преобразователь. На экране можно показать несколько атрибутов: мерцания, подчеркивания и цвета символов.
Система VGA имеет цветовую палитру шириной восемь битов. При эмуляции CGA используются только четыре бита, а для эмуляции EGA — шесть битов. В схеме ЦАП имеется таблица преобразования, содержащая 256 адресов. При обращении к элементу таблицы считывается 18-битовое значение. Оно подается в ЦАП, и цифровые биты преобразуются в аналоговый сигнал. 18 бит фактически содержат три 6-битовых значения для трех основных цветов. Затем цветовые сигналы посылаются в монитор. К каждому регистру таблицы преобразования процессор может обращаться непосредственно, благодаря чему BIOS может управлять видеовыводом.
Кроме цветовых сигналов, ЦАП формирует сигнал гашения для выключения растра во время импульсов строчной и кадровой синхронизации, поэтому они не появляются на экране и не вызывают помех.

Текстовые символы формируются с привлечением знакогенератора. В память знакогенератора можно программно загрузить восемь 256-символьных наборов или четыре 512-символьных набора. При задании текстового режима один из шрифтов, хранящихся в ПЗУ, загружается в знакогенератор. Если шрифты в ПЗУ пользователя не устраивают, вместо них можно загрузить другие.
Регистры VGA. Обычно большинство регистров системы VGA, реализованной на материнской плате или на плате адаптера, устанавливает и сбрасывает системная BIOS. Однако допускается считывание из регистров и
запись в них пользователем. Регистры подразделяются на следующих пять групп: атрибутные регистры, регистры контроллера ЭЛТ, регистры секвенсера, графические регистры и регистры общего назначения.
Атрибутные регистры. В эту группу входят 22 регистра. Регистр адреса, допускающий операции считывания и записи, применяется для адресации всех остальных атрибутных регистров, включая и 16 регистров палитры, допускающих считывание и запись. Каждый регистр палитры содержит шесть битов, действующих как указатель для ЦАП.
Регистр выбора цвета (с операциями считывания и записи) содержит данные для изменения кодов цветов на входе ЦАП. Регистр управления режимом позволяет переключаться между монохроматическим и цветным режимами, а также между текстом и графикой. Обычно режим устанавливается с помощью BIOS. Регистр окаймления (с операциями считывания и записи) определяет цвет окаймления в некоторых цветных режимах. Регистр разрешения цветовых плоскостей разрешает или запрещает для отображения цветовые плоскости в видеопамяти.
Наконец, регистр горизонтального пиксельного панорамирования (сдвига) с операциями считывания и записи применяется для панорамирования изображения влево. Регистр определяет число точек, на которое смещается изображение. Одновременно можно передвинуть изображение на семь точек, но в 256-цветном режиме только на три.
Регистры контроллера ЭЛТ. В контроллере ЭЛТ есть 26 регистров, предназначенных для правильного размещения изображения на поверхности экрана. Имеется регистр адреса, от которого отсчитываются все остальные регистры контроллера ЭЛТ. Регистр общего числа символов по горизонтали и регистры начала и конца горизонтального обратного хода определяют временные интервалы обратного хода строчной развертки. Эти регистры содержат точный временной интервал, который на пять меньше числа символов в одной строке развертки плюс интервал обратного хода. Регистр конца разрешения вывода по горизонтали содержит число символов минус единица на строке развертки. Регистр смещения содержит ширину строки дисплея.
Регистры начала и конца горизонтального гашения определяют интервал гашения луча во время обратного хода строчной развертки. Регистры начала и конца вертикального обратного хода управляют интервалом обратного хода кадровой развертки, а регистр общего числа строк содержит общее число строк развертки минус два.
Регистр конца разрешения вывода по вертикали управляет концом выводимого растра. Регистры начала и конца вертикального гашения управляют концом интервала гашения луча во время обратного хода кадровой развертки. Регистр дополнения содержит все лишние биты, которые не помещаются в другие регистры. Например, регистры начала вертикального обратного хода или конца вертикального вывода должны хранить больше битов, чем число имеющихся в них разрядов. Недостающие биты хранятся в регистре дополнения, поэтому биты не теряются и изображение можно правильно разместить на экране.
Регистры старшего и младшего байта начального адреса начинают растр после интервала обратного хода кадровой развертки. Регистр задания строки развертки определяет первую строку развертки после интервала обратного хода кадровой развертки. Регистр максимальной строки развертки формирует 400-строчное изображение. Кроме того, он определяет число строк развертки, приходящихся на символ.
Регистры начала и конца курсора и регистры старшей и младшей позиции курсора управляют позицией курсора на экране. Регистр позиции подчеркивания задает номер строки в матрице отображения символа, который используется в качестве позиции линии подчеркивания на экране. Регистр сравнения строки применяется для скролу_инга изображения. Он позволяет проводить скроллинг части изображения, сохраняя остальное изображение неизменным.
Регистр управления режимом контроллера ЭЛТ выполняет несколько функций. Он позволяет разделить частоту кадровой синхронизацию на два и удвоить разрешающую способность по вертикали. Кроме того, он содержит специальный бит, обеспечивающий совместимость платы VGA со старой платой CGA. Этот же регистр управления применяется для включения обратного хода строчной или кадровой развертки. Наконец, он позволяет выбрать адресацию байта, слова или двойного слова.

Регистры секвенсера. Секвенсер системы VGA имеет шесть регистров. Регистр адреса применяется для адресации всех остальных регистров. Регистр сброса можно установить в один из двух режимов — синхронный и асинхронный. Режим синхронного сброса вызывает отключение секвенсера и очистку всех битов упорядочено. Режим асинхронного сброса предусмотрен как средство защиты и мгновенно отключает секвенсор. Такое действие может вызвать потерю данных в видеопамяти. Когда причина сброса устранена, в секвенсере можно установить оба бита сброса.
Имеется также регистр режима синхронизации, который может выключить изображение. Это удобно при загрузке в видеопамять большого объема данных. Данные можно поместить в видеопамяти намного быстрее, если экран выключен и не требует постоянной регенерации. В выходной регистр секвенсера можно загружать байт, слово или двойное слово на каждый такт синхронизации. Кроме того, регистр режима синхронизации заставляет секвенсер в некоторых текстовых режимах формировать девять точек в символьной позиции вместо восьми.
Регистр маски карты может запретить запись в любую из битовых плоскостей видеопамяти. Регистр режима памяти обеспечивает доступ к видеопамяти емкостью больше 64 Кбайт. В системе VGA емкость
видеопамяти составляет 256 Кбайт. Имеется также регистр выбора символьной карты, который разрешает доступ к используемым символьным картам.
Графические регистры. В графическом контроллере имеются десять регистров. Аналогично регистрам адреса других устройств предусмотрен регистр адреса, который служит указателем остальных графических регистров.
Регистр установки-сброса работает совместно с регистром разрешения установки-сброса и позволяет корректировать записываемые в видеопамять данные. С помощью регистра выбора плоскости считывания задается считываемая битовая плоскость. Регистр сравниваемого цвета используется совместно с регистром маски цвета в операциях чтения видеопамяти для идентификации точек, которые имеют конкретный цвет. Регистр сдвига данных позволяет оперировать данными в видеопамяти. С его помощью осуществляется сдвиг данных от процессора вправо. Кроме того, он задает операции И, ИЛИ и исключающего ИЛИ над данными в видеопамяти.
Регистр графического режима позволяет правильно загрузить регистры сдвига для работы в 256-цветном режиме. Этот же регистр с помощью регистров сдвига обеспечивает совместимость с CGA, когда строки развертки хранятся в двух секциях видеопамяти — в одной четные строки, а в другой нечетные. Он же позволяет процессору считать либо результаты сравнения цвета, либо данные в выбранной карте памяти.
Регистр графического режима выполняет и другие функции, к которым относится управление режимами записи от процессора в систему VGA. Два из четырех режимов записи используют регистр маски битов, который позволяет управлять модификацией отдельных битов плоскостей. Еще в одном из режимов записи осуществляется раздельное размещение в памяти четных и нечетных строк развертки.
Наконец, регистр режима работы адаптера используется для задания текстового или графического режима и для управления отображением видеопамяти на шину адреса компьютера.
Регистры общего назначения. В системе VGA есть пять регистров общего назначения. Регистр управления возможностями рассчитан на будущие применения. Два только считываемых регистра состояния входа содержат данные о состоянии системы VGA. Эти данные сообщают о прерывании ЭЛТ (сигнал обратного хода кадровой развертки ), использовании монохроматического или цветного монитора и о том, выводится ли изображение.
Регистр разрешения видеоподсистемы разрешает декодирование видеосигнала и ввода-вывода. Регистр вспомогательного вывода выбирает полярность сигналов строчной и кадровой синхронизации, что требуется при использовании в дисплее различного числа строк развертки.
Регистр вспомогательного вывода также выбирает частоту синхронизации для работы системы VGA. Можно задавать одну из двух частот, рассчитанных на 640 и 720 точек в строке развертки. Этот же регистр выбирает адреса ввода-вывода для совместимости с CGA и монохроматическим монитором. Наконец, этот регистр может включать и выключать видеопамять.
Система VGA, в общем, работает так же, как ее предшественники, но лучше. Она служит передающей секцией замкнутой телевизионной системы, в которой приемником служит монитор. В нее подаются цифровые данные, а она формирует видеосигнал. Кроме того, система VGA формирует сигнал с информацией о строчной и кадровой развертке. Подробнее о работе принимающей части замкнутой телевизионной системы в главе 23.

 

 Поиск и устранение неисправностей в персональных компьютерах