VGA | это... Что такое VGA? (original) (raw)

VGA (англ. Video Graphics Array) — стандарт мониторов и видеоадаптеров. Выпущен IBM в 1987 году для компьютеров PS/2 Model 50 и более старших[1]. VGA являлся последним стандартом, которому следовало большинство производителей видеоадаптеров.

Видеоадаптер VGA, в отличие от предыдущих видеоадаптеров IBM (MDA, CGA, EGA), использует аналоговый сигнал для передачи цветовой информации. Переход на аналоговый сигнал был обусловлен необходимостью сокращения числа проводов в кабеле. Также аналоговый сигнал давал возможность использовать VGA-мониторы с последующими видеоадаптерами, которые могут выводить большее количество цветов[2].

Официальным последователем VGA стал стандарт IBM XGA, фактически же он был замещен различными расширениями к VGA, известными как SVGA.

Термин VGA также часто используется для обозначения разрешения 640×480 независимо от аппаратного обеспечения для вывода изображения, хотя это не совсем верно (так, режим 640х480 с 16-, 24- и 32-битной глубиной цвета не поддерживаются адаптерами VGA, но могут быть сформированы на мониторе, предназначенном для работы с адаптером VGA, при помощи SVGA-адаптеров). Также этот термин используется для обозначения 15-контактного D-subminiature разъёма VGA для передачи аналоговых видеосигналов при различных разрешениях.

Содержание

Архитектура видеоадаптера VGA

VGA (так же, как и EGA) состоит из следующих основных подсистем (в народе словом "секвенсер" называли набор регистров управления доступом к плоскостям видеопамяти):

В отличие от CGA и EGA, основные подсистемы располагаются в одной микросхеме, что позволяет уменьшить размер видеоадаптера (EGA тоже был реализован в одном чипе, по крайней мере его тайванские неоригинальные клоны). В компьютерах PS/2 видеоадаптер VGA интегрирован в материнскую плату [2].

Отличия от EGA

VGA полностью аналогичен EGA (включая плоскостную видеопамять в 16цветных режимах и секвенсор для доступа процессора к ней), за исключением нижеследующего:

Текстовые режимы

В стандартных текстовых режимах символы формируются в ячейке 9×16 пикселов, возможно использование шрифтов других размеров: 8—9 пикселов в ширину и 1—32 пиксела в высоту. Размеры самих символов, как правило, меньше, так как часть пространства уходит на создание зазора между символами. Функция для выбора размера шрифта в BIOS отделена от функции выбора видеорежима, что позволяет использовать различные комбинации режимов и шрифтов. Имеется возможность загрузки восьми и одновременного вывода на экран двух различных шрифтов[2][6].

В VGA BIOS хранятся следующие виды шрифтов и функции для их загрузки и активации:

Как правило, эти шрифты соответствуют кодовой странице CP437. Также поддерживается программная загрузка шрифтов, которую можно использовать, например, для русификации[7].

Доступны следующие стандартные режимы:

Используя шрифты меньших размеров, чем стандартный 8×16, можно увеличить количество строк в текстовом режиме. Например, если включить шрифт 8×14, то будет доступно 28 строк. Включение шрифта 8×8 увеличивает количество строк до 50 (аналогично режиму EGA 80×43)[8][9].

В текстовых режимах для каждой ячейки с символом можно указать атрибут, задающий способ отображения символа. Существует два отдельных набора атрибутов — для цветных режимов и для монохромных. Атрибуты цветных текстовых режимов позволяют выбрать один из 16-ти цветов символа, один из 8-ми цветов фона и включить или отключить мерцание (возможность выбора мерцания можно заменить на возможность выбора одного из 16-ти цветов фона), что совпадает с возможностями CGA. Атрибуты монохромных режимов совпадают с атрибутами, доступными у MDA, и позволяют включать повышенную яркость символа, подчёркивание, мерцание, инверсию и некоторые их комбинации[2].

Графические режимы

В отличие от своих предшественников (CGA и EGA) видеоадаптер VGA имел видеорежим с квадратными пикселами (то есть, на экране с соотношением сторон 4:3 соотношение горизонтального и вертикального разрешений было также 4:3). У адаптеров CGA и EGA пикселы были вытянуты по вертикали.

Стандартные графические режимы

Нестандартные графические режимы (X-режимы)

Перепрограммирование VGA позволяло достичь более высоких разрешений по сравнению со стандартными режимами VGA. Наиболее распространённые режимы таковы:

Во всех этих режимах используется плоскостная организация видеопамяти, концептуально похожая на используемую в 16цветных режимах, но использующая для формирования цвета по 2 бита из каждой плоскости, а не по 1 - т.е. биты 0-1 байта 0 в плоскости 0 давали биты 0-1 цвета пиксела 0, те же биты в плоскости 1 - биты 2-3 цвета, и т.д. Следующие биты того же байта давали цвета следующих пикселов, т.е. 4 расположенные "один параллельно другому" по одному адресу байта в 4 плоскостях задавали цвет 4 пикселов.

Такая организация видеопамяти позволяла использовать всю видеопамять карты, а не только плоскость 0 в 64К, для формирования 256цветной картинки, что давало возможность использования высоких разрешений, или же многих страниц.

Для работы с такой памятью использовался тот же секвенсер, что и в 16цветных режимах.

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

Термин «X-режим» (англ. Mode X) был придуман Майклом Абрашем в 1991 году для обозначения нестандартного режима 320×240 с 256 цветами. Этот режим был открыт (путем изучения IBMовской документации на аппаратуру VGA, которая в те времена была защищена на правовом уровне и не ходила в виде файлов в публичном доступе, опубликованы были только вызовы VGA BIOS, которые не умели включать эти режимы) различными программистами независимо друг от друга, но стал известным благодаря статьям Майкла Абраша в журнале «Dr. Dobb’s Journal»[10].

См. также

Примечания

  1. Wilton, Richard IBM Video Hardware and Firmware // Programmer's Guide to PC and Ps/2 Video Systems. — Microsoft Press, 1987. — С. 544. — ISBN 1-55615-103-9
  2. 1 2 3 4 Thompson, Stephen VGA-sign choices for a new video subsystem (англ.). IBM Systems Journal (1988). Архивировано из первоисточника 25 августа 2011. Проверено 15 декабря 2006.
  3. Neal, J. D. VGA Sequencer Operation (англ.). FreeVGA Project (1998). Архивировано из первоисточника 25 августа 2011. Проверено 23 февраля 2007.
  4. 1 2 3 Scott, Michael comp.sys.ibm.pc.hardware.video FAQ (англ.) (1997). Проверено 23 февраля 2007.
  5. Фролов, Александр; Фролов, Григорий Архитектура видеоадаптеров EGA и VGA. Программирование видеоадаптеров CGA, EGA и VGA (1992). Архивировано из первоисточника 25 августа 2011. Проверено 23 февраля 2007.
  6. Neal, J. D. VGA Text Mode Operation (англ.). FreeVGA Project (1998). Архивировано из первоисточника 25 августа 2011. Проверено 15 декабря 2006.
  7. Фролов, Александр; Фролов, Григорий Приложения. Программирование видеоадаптеров CGA, EGA и VGA (1992). Архивировано из первоисточника 25 августа 2011. Проверено 23 февраля 2007.
  8. Dnes, Walter Nicer console textmodes (англ.).(недоступная ссылка — история) Проверено 11 января 2007.
  9. Rollins, Dan INT 10H 11H: EGA/VGA Character Generator Functions (англ.). Tech Help! (1997). Архивировано из первоисточника 25 августа 2011. Проверено 11 января 2007.
  10. Abrash, Michael Mode X: 256-Color VGA Magic (англ.). Graphics Programming Black Book (2001).(недоступная ссылка — история) Проверено 30 марта 2007.

DVI (разъем)

Ссылки

Стандарты видеоадаптеров и мониторов
Видеоадаптеры MDA | Tandy HGC CGA EGA PGC VGA MCGA 8514 XGA Сравнительные размеры
Разрешение экрана QVGA | VGA SVGA XGA XGA+ SXGA SXGA+ UXGA QXGA QSXGA QUXGA HXGA HSXGA HUXGA
Широкоэкранные варианты WVGA | WXGA WSXGA/WXGA+ WSXGA+ WUXGA WQXGA WQSXGA WHXGA WHSXGA WHUXGA WQUXGA