Video Graphics Array

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

VGA (англ. Video Graphics Array) — відеоадаптер та відповідний стандарт дисплеїв вперше введений на комп'ютерах IBM PS/2 у 1987 році[1], але через його розповсюджениість також став означати і 15-контактний D-subminiature VGA connector та роздільність 640×480. Наразі ця роздільність витіснена з ринку персональних комп'ютерів, але набуває популярності на ринку мобільних пристроїв.[2] VGA був останнім стандартом, якому слідувала більшість виробників відеоадаптерів.

Відеоадаптер VGA підключається як до кольорового, так і до монохромного монітору, при цьому доступні всі стандартні відеорежими. Частота оновлення екрану у всіх стандартних режимах, крім 640×480, — 70 Гц, у режимі 640×480 — 60 Гц. Відеоадаптер має можливість одночасно виводити на екран 256 різних кольорів, з палітри в 262 144 кольорів (по 6 біт на червоний, зелений і синій компоненти). Обсяг відеопам'яті VGA — 256 КБ.

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

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

Технічні характеристики[ред.ред. код]

Палітра VGA[ред.ред. код]

See also the List of monochrome and RGB palettes article — 18-bit RGB section, and the List of 16-bit computer hardware palettes article — MCGA and VGA section.
VGA 256 color palette

Архітектура відеоадаптера VGA[ред.ред. код]

VGA складається з таких основних підсистем:

  • Графічний контролер (англ. Graphics Controller), за допомогою якого відбувається обмін даними між центральним процесором і відеопам'яттю. Має можливість виконувати бітові операції над даними, що передаються.
  • Відеопам'ять (Display Memory), в якій розміщуються дані, що відображаються на екрані мотітора. 256 кБ DRAM розділені на чотири кольорових пласти по 64 кБ.
  • Послідовний перетворювач (Serializer або Sequencer) — перетворює дані з відеопам'яті в потік бітів, що передається контролеру атрибутів[4].
  • Контролер атрибутів (Attribute Controller) — за допомогою палітри перетворює вхідні дані в кольрові значення.
  • Синхронізатор (Sequencer) — керує часовими параметрами відеоадаптера і перемиканням кольорових пластів.
  • Контролер ЕПТ (CRT Controller) — генерує сигнали синхронізації для ЕПТ[5][6].

На відміну від CGA і EGA, основні підсистеми розташовуються на одній мікросхемі, що дозволяє зменшити розмір відеоадаптера. В комп'ютерах PS/2 відеоадаптер VGA інтегрований в материнську плату [3].

Текстові режими[ред.ред. код]

В стандартних текстових режимах символи формуються в комірці 9×16 пікселів, можливе використання шрифтів інших розмірів: 8—9 пікселів в ширину і 1—32 пікселі в висоту. Розміри самих символів, як правило, менше, так як частина простору йде на створення простору між символами. Функція для вибору розміру шрифту в BIOS відділена від функції вибору відеорежиму, що дозволяє використовувати різноманітні комбінації режимів і шрифтів. Є можливість завантаження восьми і одночасного виводу на екран двох різноманітних шрифтів[3][7].

У VGA BIOS зберігаються такі види шрифтів і функції для їхнього завантаження й активації:

  • 8×16 пікселів (стандартний шрифт VGA),
  • 8×14 (для сумісності з EGA),
  • 8×8 (для сумісності з CGA).

Як правило, ці шрифти відповідають кодовій сторінці CP437. Також підтримується програмне завантаження шрифтів.[8].

Доступні такі стандартні режими:

  • 40×25 символів, 16 кольорів, роздільність 360×400 пікселів.
  • 80×25 символів, 16 кольорів, роздільність 720×400 пікселів.
  • 80×25 символів, монохромний, роздільність 720×400 пікселів[5].

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

В текстових режимах для кожної комірки з символом можна вказати атрибут, що задає спосіб відображення символу. Існує два окремих набори атрибутів — для кольорових режимів і для монохромних.

Атрибути кольорових текстових режимів дозволяють обрати один з 16-ти кольорів символу, один з 8-ми кольорів фону і ввімкнути чи вимкнути моргання (можливість вибору моргання можна замінити на можливість вибору одного з 16-ти кольорів фону), що збігається з можливостями CGA.

Атрибути монохромних режимів збігаються з атрибутами, доступними у MDA, і дозволяють вмикати підвищену яскравість символу, підкреслення, моргання, інверсію та деякі їх комбінації[3].

Графічні режими[ред.ред. код]

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

Стандартні графічні режими[ред.ред. код]

  • 320X200 пікселів, 4 кольорів.
  • 320X200 пікселів, 16 кольорів.
  • 320X200 пікселів, 256 кольорів.
  • 640X200 пікселів, 2 кольори.
  • 640X200 пікселів, 16 кольорів.
  • 640X350 пікселів, монохромний.
  • 640X350 пікселів, 16 кольорів.
  • 640X480 пікселів, 2 кольори. При роздільності 640×480 пікселів має пропорції 1:1.
  • 640X480 пікселів, 16 кольорів[5].

Нестандартні графічні режими (X-режими)[ред.ред. код]

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

  • 320×200, 256 кольорів, 4 сторінки. Нічим зовні не відрізняється від режиму 13h (320×200, 256 кольорів), цей режим мав чотири відеосторінки. Це дозволяло реалізувати подвійну і навіть потрійну буферизацію.
  • 320×240, 256 кольорів, 2 сторінки. В цьому режимі сторінок менше, зате пікселі квадратні.
  • 360×480, 256 кольорів, 1 сторінка. Найбільша роздільність при 256 кольорах, що дозволяє VGA.

У всіх цих режимах структура графічної пам'яті не лінійна, і адреса пам'яті, котра відповідає пікселю з координатами (x, y), обчислюється за складними формулами. Зате через особливості контролера відеопам'яті копіювання даних в відеопам'ять відбувається вчетверо швидше, ніж в режимі 13h.

Термін «X-режим» (англ. Mode X) вигадав Майкл Абраш в 1991 році для позначення нестандартного режиму 320×240, 256 кольорів. Цей режим відкрили різні програмісти незалежно один від одного, він став відомий завдяки статтям Майкла Абраша в журналі «Dr. Dobb's Journal»[11].

Порівняльна таблиця[ред.ред. код]

Назва x
(ширина)
y
(висота)
Пікселів
(×1 мільйон)
Співвід-
ношення
сторін
Percentage of difference in pixels Широкоекранна
версія
Типовий розмір
екрану
VGA SVGA XGA XGA+ SXGA SXGA+ UXGA QXGA
VGA 640 480 0,31 1,33 0% −36% −61% −69% −77% −79% −84% −90% WVGA
SVGA 800 600 0,48 1,33 56% 0% −39% −52% −63% −67% −75% −85% WSVGA
XGA 1024 768 0,79 1,33 156% 64% 0% −21% −40% −47% −59% −75% WXGA 15" / 38 см
XGA+ 1152 864 1,00 1,33 224% 107% 27% 0% −24% −32% −48% −68% WXGA+ 17" / 43 см
SXGA 1280 1024 1,31 1,25 327% 173% 67% 32% 0% −11% −32% −58% WSXGA 17–19" / 43–48 см
SXGA+ 1400 1050 1,47 1,33 379% 206% 87% 48% 12% 0% −23% −53% WSXGA+
UXGA 1600 1200 1,92 1,33 525% 300% 144% 93% 46% 31% 0% −39% WUXGA 20" / 51 см
QXGA 2048 1536 3,15 1,33 924% 555% 300% 216% 140% 114% 64% 0% WQXGA 30" / 76 см

Див. також[ред.ред. код]

Примітки[ред.ред. код]

  1. «Chronology of IBM Personal Computers». Архів оригіналу за 2013-06-27. 
  2. «Windows Mobile 6 phone boasts VGA display». Архів оригіналу за 2012-05-30. 
  3. а б в г Thompson, Stephen (1988). «VGA-sign choices for a new video subsystem». IBM Systems Journal (англійською). Архів оригіналу за 2011-08-25. Процитовано 2006-12-15. 
  4. Neal, J. D. (1998). «VGA Sequencer Operation». FreeVGA Project (англійською). Архів оригіналу за 2011-08-25. Процитовано 2007-02-23. 
  5. а б в Scott, Michael (1997). «comp.sys.ibm.pc.hardware.video FAQ» (англійською). Процитовано 23 февраля 2007. 
  6. Фролов, Александр; Фролов, Григорий (1992). «Архитектура видеоадаптеров EGA и VGA». Программирование видеоадаптеров CGA, EGA и VGA. Архів оригіналу за 2011-08-25. Процитовано 2007-02-23. 
  7. Neal, J. D. (1998). «VGA Text Mode Operation». FreeVGA Project (англійською). Архів оригіналу за 2011-08-25. Процитовано 2006-12-15. 
  8. Фролов, Александр; Фролов, Григорий (1992). «Приложения». Программирование видеоадаптеров CGA, EGA и VGA. Архів оригіналу за 2011-08-25. Процитовано 2007-02-23. 
  9. Dnes, Walter. «Nicer console textmodes» (англійською). Процитовано 2007-01-11. 
  10. Rollins, Dan (1997). «INT 10H 11H: EGA/VGA Character Generator Functions». Tech Help! (англійською). Архів оригіналу за 2011-08-25. Процитовано 2007-01-11. 
  11. Abrash, Michael (2001). «Mode X: 256-Color VGA Magic». Graphics Programming Black Book (англійською). Процитовано 2007-03-30. 

Further reading[ред.ред. код]

Посилання[ред.ред. код]

Шаблон:AVconn