VGA

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене

VGA (на английски: Video Graphics Array – видео графичен масив) е видео стандарт с аналогов изходен видеосигнал. Стандартът е разработен през 1987 г. от IBM.

Техническа информация[редактиране | редактиране на кода]

Спецификации[редактиране | редактиране на кода]

  • 256 KB Video RAM
  • Режими с 16 цвята и 256 цвята
  • Цветна палитра с 262 144 възможни стойности (по шест бита за червен, зелен и син цвят)
  • Избираема тактова честота 25 MHz или 28 MHz
  • 720 пиксела максимална хоризонтална разделителна способност
  • Максимум 480 линии
  • Опреснителни честоти до 70 Hz
  • Равнинен (на англ. planar) режим: до 16 цвята (4 битови равнини)
  • Режим на пакетирани пиксели (на англ. packed-pixel), също наричен Mode 13h: 256 цвята
  • Поддръжка на хардуерно скролиране
  • Поддръжка на някои команди за растерна графика
  • Еднотактови побитови отмествания
  • Поддръжка на разделянето на екрана

Синхронизация на сигнала[редактиране | редактиране на кода]

Предназначената стандартна стоиност за хоризонтална честота на VGA е точно два пъти по-голяма от тази използвана в NTSC-M видео системите и

благодарение на това VGA успява да предложи оптимални решения за TV изходи или външни VGA-TV конверторни кутии по време на разработката си. Формулата за

хоризонталната честота на VGA е следната: (60 ? 1001) ? 525 kHz = 4500 ? 143 kHz ? 31.4685 kHz.

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

Поради факта че точността на кварцовите осцилатори е лимитирана, в реални условия VGA картите могат да имат малко по различни стойности.

Всички извлечени синхронизации (тези който все още използват 25.2 и 28.3 MHz-ови и 31.5 KHz-ови кристали) могат да бъдат широко променяни със софтуер

който заобикаля фърмуер интерфейса на VGA и комуникира доректно с хардуера му, както много MS-DOS базирани игри са правили. Въпреки това, само

стандартните модове, или модове който използват точно същите H-Sync и почти същите V-Sync тайминги се очаква да работят на оригиналните VGA

монитори от 80-те и 90-те години. Използването на други тайминги всъщност може дори да повреди такива монитори и именно затова тази тема е била избягвана

от софтуерните издатели. По-късно „multisync“ CRT мониторите били обикновенно много по-гъвкави и в комбинация с по-късните SVGA видео карти имали

възможността да възпроизведат много по голям диапазон от резолюции и честоти на опресняване.

За най-често срещания VGA режим (640x480 „60 Hz“) хоризонталните тайминги са:

Параметър Стойност Мерна единица
Тактова честота на пиксела 25.175 MHz[10]
Хоризонтална честота 31.469 kHz
Брой хоризонтални пиксели 640
Полярност на хоризонтална синхронизация Отрицателна
Общо време за всяка линия 31.778 µs

Вертикалните тайминги са:

Параметър Стойност Мерна единица
Вертикални линии 480
Полярност на вертикална синхронизация Отризателна
Вертикална честота 59.94 Hz
Общо време за всеки кадър 16.683 ms

Конектори[редактиране | редактиране на кода]

VGA използва конектор тип DE-15. Този конектор пасва на изхода на разширителна карта ISA.

Алтернативен метод на свързване на VGA устройства, които поддържат високо качество на сигнал са BNC конектори, които обикновено се използват в група от пет конектора, по един за Червен, Зелен, Син, Вертикално синхронизиране, Хоризонтално синхронизиране. С BNC, коаксиалните кабели напълно се предпазват от край до край и външни смущения не са възможни.

Въпреки това, BNC конекторите са сравнително по-големи от конектори тип DE-15 и е нужно повече внимание, за да е сигурно, че всеки кабел е в правилното гнездо. Също така, BNC конекторите не поддържат допълнителни сигнални линии, например +5 V, DDC и DDC2.

Стандартни текстови режими[редактиране | редактиране на кода]

BIOS предлага някои текстови режими за VGA адаптер, които имат 80x25, 40x25, 80x43 или 80x50 текстова решетка. Всяка клетка може да избере един от 16 възможни цвята за своя преден план и 8 цвята за фон; допуснатите осем фонови цвята са онези без висок интензитет на битови слоеве. Всеки знак/атрибут може да се направи мигащ. Знаците/атрибутите, на които е зададено да мигат, ще мигат синхронизирано. Тази опция за целия екран може да бъде заменена с възможността всички 16 цвята да се използват като фон. CGA адаптерът предлага същите опции, както е въведено от IBM.

Подобно на EGA, VGA поддържа до 512 различни едновременно изобразявани символа на екрана, макар и в само 8 цвята на преден план, чрез отделянето на един цветен бит, като най-висок бит от броя на символите. Глифове с разделителна способност 80x25 обикновено се изработват от 9x16 пиксела. Потребителите могат да дефинират собствен набор от символи като заредят персонализиран шрифт върху картата. Тъй като обемът на шината за данни на VGA е само 8 бита, подобно на всички негови предшественици, тя обикновено има празна пикселна колона между всеки два хоризонтални съседни глифа. Въпреки това част от шините за данни се правят и с обем 9 бита като се повтаря тяхната последна колона, вместо да се въвежда празна колона. Девет-битови шини за данни се най-вече онези, които определят хоризонтално свързаните IBM видеосигнали-box-drawing characters.

Функционалността е неразривно свързана с цифровите сигнали C0hex до DFhex, където всички хоризонтално свързващи символи се намират в Codepage 437 и неговите най-често срещани производни функции. Същият трик с повтаряне на последната колона е бил вече използван на по-стария MDA хардуер с неговите 9х14 пикселови глифове. Опцията може да бъде изключвана на VGA, когато се зарежда шрифт, в който тези цифрови сигнали не изобразяват видеосигнали.

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

  • 640×480 с 16 цвята
  • 640×350 с 16 цвята
  • 320×200 с 16 цвята
  • 320×200 с 256 цвята (Mode 13h)

Освен собствените стандартни режими, VGA поддържа и графичните режими на предшествениците си (EGA, CGA и MDA).

Монохромен режим[редактиране | редактиране на кода]

VGA адаптерите обикновено поддържат и монохромен и цветен режим, въпреки че монохромният режим почти никога не се използва и поддръжката на пълният комплект от MDA текстови режим атрибути (подчертаване) често липсва. Черният и бял текст на почти всички модерни VGA адаптери се рисува, използвайки сив на цвят текст върху черен фон, в цветен режим.

Адресиране на паметта[редактиране | редактиране на кода]

Видео паметта на VGA се достъпва чрез основната компютърна памет в адресен прозорец 0xA0000 – 0xC0000 при реален режим. Обикновено това са:

  • 0xA0000 за EGA и VGA графични режими (64 KiB)
  • 0xB0000 за монохромен текстов режим (32 KiB)
  • 0xB8000 за цветен текстов режим и CGA-съвместими графични режими (32 KiB)

Поради използването на различни сегменти от паметта в различните режими на работа, е възможно на една и съща машина да има монтирани монохромен адаптер (т.е. MDA или Hercules) и цветен адаптер като VGA, EGA или CGA. В началото на 1980-те години, това обикновено било използвано за показване на Lotus 1-2-3 таблици в висока резолюция на монохромен дисплей и едновременно с това графики на CGA дисплей с ниска разделителна способност. Много програмисти също използвали монохромна карта за показване на информацията за грешки, докато програмата работи в графичен режим на другата карта. Няколко дебъгери, като Turbo Debugger на Borland, D86 (от Алън Дж Cox) и Майкрософт CodeView можели да работят на два монитора. И Turbo Debugger или CodeView можели да се използват за отстраняване на грешки в Windows. Имало и DOS драйвери на устройства, като например ox.sys, които изпълняват симулация на сериен интерфейс на монохромен дисплей и, например, позволявали на потребителя да получава краш съобщения от Windows, без използване на сериен терминал. Възможно е също така да се използва командата „MODE MONO“ в DOS за пренасочване на изхода към монохромния дисплей.

Цветова палитра[редактиране | редактиране на кода]

VGA цветовата гама е съвместима с EGA (Enhanced Graphics Adapter) и CGA (Color Graphics Adapter) адаптери и добавя ново ниво за поддръжка на 256 8-битови-цвята. CGA може да изобразява 16 фиксирани цвята, а EGA разширява това, с помощта на 16 адресирани палитри, всеки съдържащ цветна стойност от 64-цветни палитри. Стойността на палитрите на EGA по подразбиране са избрани да приличат на цветовете на CGA, но е възможно да се запази всеки цвят. Сигналът от запазените палитрите на EGA пренася група от шест сигнални линии на EGA изхода, с две линии отговарящи на един цвят. VGA допълнително разширява тази система, като добавя 256 адресирани цвята, 3×6 бита всяка за общо 262,144 цвята. Тези цветови адреси са по подразбиране заложени да съвпадат с 64-те цвята по подразбиране на EGA. Стойностите от тези адреси се транспортират до DAC (Digital-to-analog converter), който от своя страна транспортира три сигнала, един за червен, зелен и син.

Както EGA използва цветовите стойности на CGA за да адресира запазена палитра, VGA хардуера използва запазените палитри, но не на сигнално ниво, а като индекс от адресите на цветовете. Затова в 16-цветен-режим, стойността на цвета от РАМ-та (RAM) сочи към адрес на палитра и този адрес избира адрес на цвят.

В 256-цветен-режим, адресите на палитрите са зададени без ефект и DAC е зададен да комбинира две 4-битови цветни стойности в оригиналната 8-битова стойност, от това следва, че 8-битовото число на цвета във видео РАМ-та е точно адресният индекс на цвета, който ще се използва.

Външни препратки[редактиране | редактиране на кода]