Перайсці да зместу

VGA

З Вікіпедыі, свабоднай энцыклапедыі

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

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

Афіцыйным паслядоўнікам VGA стаў стандарт IBMXGA,фактычна ж ён быў замешчаны рознымі пашырэннямі да VGA, вядомымі як «Super VGA» (SVGA).

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

Архітэктура відэаадаптара VGA

[правіць|правіць зыходнік]

VGA (таксама, як і EGA) складаецца з наступных асноўных падсістэм:

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

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

Адрозненні ад EGA

[правіць|правіць зыходнік]

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

  • іншы раздым і кабель да манітора (і іншы манітор), аналагавы, а не 2 біты на колер. Гэты раздым і кабель не змяняліся каля 15 гадоў (да з'яўлення лічбавых пакетна-арыентаваных тэхналогій DVI, HDMI і DisplayPort, якія прыйшлі са свету бытавой відэатэхнікі) і ўжываліся ў больш высокіх разрозненнях. Нават стандартныя VGA маніторы былі здольныя паказваць рэжым 800x600 скарыстаныя з болей сучаснай відэакартай (усё залежала ад якасці блокаў разгорткі манітора і іх магчымасці не сарваць генерацыю на такіх высокіх частотах). У цяперашні час (усе сучасныя відэакарты сумяшчальныя з VGA зверху ўніз) слова "VGA" ва ўжытку значыць менавіта гэты тып далучэння манітора, цяпер састарэлы, але яшчэ актуальны.
  • 18-бітныя колеры ў палітры замест 6-бітных, такі багаты набор дазваляў, напрыклад, намаляваць ноч, кепскае надвор'е, «зачараваныя» рэжымы і зіхаценне колеру ў гульнях толькі адной палітрай (як у гульне «Ultima VII»)
  • наяўнасць 256-колерных рэжымаў, стандартны - 320×200, недакументаванымі (на самой справе дакументаванымі, але не ўключанымі ў BIOS і яго дакументацыю) хітрыкамі можна было атрымаць 320×240 (квадратныя пікселі, г.з. «рэжым VGA-X») і вышэй
  • максімальны 16-колерны рэжым - 640×480 (квадратныя пікселі)
  • ва ўсіх 200-радковых графічных рэжымах скан-лінія паўтаралася 2 разы, што давала 400 фізічных радкоў разгорткі манітора, што моцна паляпшала якасць выявы нават у малодшых рэжымах (адсутнасць шчылін паміж радкамі разгорткі).
  • вышыня ячэйкі знакагенератара - 16 скан-ліній, а не 14, як у EGA, што давала тыя ж 400 радкоў разгорткі ва ўсіх тэкставых рэжымах (акрамя рэжымаў сумяшчальнасці са знакагенератарам EGA). Такім чынам, VGA заўсёды ўжываў 400 радкоў разгорткі, акрамя двух старэйшых 16-колерных рэжымаў, дзе іх было 480 і 350. Рэжым VGA-X таксама ўжываў 480 радкоў.
  • усе рэгістры (палітры, секвенсара і г.д.) даступныя на чытанне, EGA меў шэраг рэгістраў «толькі для запісу» (напрыклад, палітра).

Тэкставыя рэжымы

[правіць|правіць зыходнік]

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

У VGA BIOS захоўваюцца наступныя віды шрыфтоў і функцыі для іх загрузкі і актывацыі:

  • 8×16пікселяў (стандартны шрыфт VGA),
  • 8×14(для сумяшчальнасці з EGA),
  • 8×8(для сумяшчальнасці з CGA).

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

Даступны наступныя стандартныя рэжымы:

  • 40×25 сімвалаў,16 колераў, разрозненне 360×400 пікселяў.
  • 80×25 сімвалаў,16 колераў, разрозненне 720×400 пікселяў.
  • 80×25 сімвалаў,манахромны, разрозненне 720×400 пікселяў[4].

Хоць у тэкставых рэжымах VGA адно знакамесца мае шырыню 9 пікселяў, у даных знакагенератара вызначаюцца толькі 8 з іх (8 біт аднаго байта на радок); пікселі правай калонкі сімвальнай матрыцы вызначаюцца аўтаматычна: пустымі (для сімвалаў у дыяпазоне 0x00–0xAF і 0xE0–0xFF) ці такімі ж, як пікселі 8-й калонкі (длясімвалаў псеўдаграфікіў дыяпазоне 0xB0-0xDF).

Ужываючы шрыфты меншых памераў, чым стандартны8×16,можна павялічыць колькасць радкоў у тэкставым рэжыме. напрыклад, калі ўключыць шрыфт8×14,то будзе даступна 28 радкоў. Уключэнне шрыфту8×8павялічвае колькасць радкоў да 50 (аналагічнарэжыму EGA80×43)[8][9].

У тэкставых рэжымах для кожнай ячэйкі з сімвалам можна ўказацьатрыбут,які задае спосаб адлюстравання сімвала. Існуюць два асобныя наборы атрыбутаў — для каляровых рэжымаў і для монахромных. Атрыбуты каляровых тэкставых рэжымаў дазваляюць абраць адзін з 16 колераў сімвала, адзін з 8 колераў фона і ўключыць ці выключыць мігаценне (магчымасць выбару мігацення можна замяніць на магчымасць выбару аднаго з 16 колераў фона), што супадае з магчымасцямі CGA. Атрыбуты монахромных рэжымаў супадаюць з атрыбутамі, даступнымі ў MDA, і дазваляюць уключаць узмоцненую яркасць сімвала, падкрэсленне, мігаценне, інверсію і некаторыя іх камбінацыі[2].

Графічныя рэжымы

[правіць|правіць зыходнік]

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

Стандартныя графічныя рэжымы

[правіць|правіць зыходнік]
  • 320×200 пікселяў,4 колеры.
  • 320×200 пікселяў,16 колераў.
  • 320×200 пікселяў,256 колераў (новы для VGA).
  • 640×200 пікселяў,2 колеры.
  • 640×200 пікселяў,16 колераў.
  • 640×350 пікселяў,манахромны.
  • 640×350 пікселяў,16 колераў.
  • 640×480 пікселяў,2 колеры. Пры разрозненні640×480піксель мае прапорцыі 1:1 (новы для VGA).
  • 640×480 пікселяў,16 колераў (новы для VGA)[4].

Нестандартныя графічныя рэжымы (X-рэжымы)

[правіць|правіць зыходнік]

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

  • 320×200,256 колераў, 4 старонкі. Нічым знешне не адрозніваецца ад рэжыму 13h (320×200, 256 колераў), гэты рэжым меў чатыры відэастаронкі аб'ёмам трошкі меней 64 кБ кожная. Гэта дазваляла рэалізавацьпадвойнуюі наваттрайную буферызацыю.
  • 320×240,256 колераў, 2 старонкі. У гэтым рэжыме старонак меней, затое пікселі маюць прапорцыі 1:1 (квадратныя).
  • 360×480,256 колераў, 1 старонка. Найбольшае разрозненне на 256 колерах, якое дазваляе 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. абвгThompson, Stephen.VGA-sign choices for a new video subsystem(англ.).IBM Systems Journal(21 верасня 1988).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 15 снежня 2006.
  3. Neal, J. D..VGA Sequencer Operation(англ.).FreeVGA Project(21 верасня 1998).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 23 лютага 2007.
  4. абв Scott, Michael.comp.sys.ibm.pc.hardware.video FAQ(англ.)(21 верасня 1997).Праверана 23 лютага 2007.
  5. Фролов, Александр; Фролов, Григорий.Архитектура видеоадаптеров EGA и VGA.Программирование видеоадаптеров CGA, EGA и VGA(21 верасня 1992).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 23 лютага 2007.
  6. Neal, J. D..VGA Text Mode Operation(англ.).FreeVGA Project(21 верасня 1998).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 15 снежня 2006.
  7. Фролов, Александр; Фролов, Григорий.Приложения.Программирование видеоадаптеров CGA, EGA и VGA(21 верасня 1992).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 23 февраля 2007.
  8. Dnes, Walter.Nicer console textmodes(англ.).Архіваваназ першакрыніцы 7 снежня 2003.Праверана 11 студзеня 2007.
  9. Rollins, Dan.INT 10H 11H: EGA/VGA Character Generator Functions(англ.)(недаступная спасылка).Tech Help!(21 верасня 1997).Архіваваназ першакрыніцы 25 жніўня 2011.Праверана 11 студзеня 2007.
  10. Abrash, Michael.Mode X: 256-Color VGA Magic(англ.)(недаступная спасылка).Graphics Programming Black Book(21 верасня 2001).Архіваваназ першакрыніцы 30 верасня 2007.Праверана 30 сакавіка 2007.