VGA模式

一種視頻傳輸標準

VGA(Video Graphics Array)是IBM在1987年隨PS/2機一起推出的一種視頻傳輸標準,具有解析度高、顯示速率快、顏色豐富等優點,在彩色顯示器領域得到了廣泛的應用。目前VGA技術的應用還主要基於VGA顯示卡的計算機、筆記本等設備,而在一些既要求顯示彩色高解析度圖像又沒有必要使用計算機的設備上,VGA技術的應用卻很少見到。本文對嵌入式VGA顯示的實現方法進行了研究。基於這種設計方法的嵌入式VGA顯示系統,實現VGA圖像的顯示和控制。系統具有成本低、結構簡單、應用靈活的優點,可廣泛應用於超市、車站、飛機場等公共場所的廣告宣傳和提示信息顯示,也可應用於工廠車間生產過程中的操作信息顯示,還能以多媒體形式應用。

基本簡介


VGA(Video Graphics Array)是IBM於1987年提出的一個使用模擬信號的電腦顯示標準,這個標準已對於現今的個人電腦市場已經十分過時。即使如此,VGA仍然是最多製造商所共同支援的一個低標準,個人電腦在載入自己的獨特驅動程式之前,都必須支援VGA的標準。例如,微軟Windows系列產品的開機畫面仍然使用VGA顯示模式,這也說明其解析度和載色數的不足。
VGA這個術語常常不論其圖形裝置,而直接用於指稱640×480的解析度。VGA裝置可以同時儲存4個完整的EGA色版,並且它們之間可以快速轉換,在畫面上看起來就像是即時的變色。
除了擴充為256色的EGA式色版,這256種色彩其實可以透過 VGA DAC(Digital-to-analog converter),任意的指定為任何一種顏色。這就程度上改變了原本EGA的色版規則,因為原本在EGA上,這只是一個讓程式可以在每個頻道(即紅綠藍)在2bit以下選擇最多種顏色的方式。但在VGA下它只是簡單的64種顏色一組的表格,每一種都可以單獨改變——例如EGA顏色的首兩個bit代表紅色的數量,在VGA中就不一定如此了。
VGA在指定色版顏色時,一個顏色頻道有6個bit,紅、綠、藍各有64種不同的變化,因此總共有262,144種顏色。在這其中的任何256種顏色可以被選為色版顏色(而這256種的任何16種可以用來顯示CGA模式的色彩)。
這個方法最終仍然使了VGA模式在顯示EGA和CGA模式時,能夠使用前所未有的色彩,因為VGA是使用模擬的方式來繪出EGA和CGA畫面。提供一個色版轉換的例子:要把文字模式的字元顏色設定為暗紅色,暗紅色就必須是CGA16色集合中的一種顏色(譬如說,取代CGA默認的7號灰色),這個7號位置將被指定為EGA色版中的42號,然後VGADAC將EGA#42指定為暗紅色。則畫面上的原本的CGA七號灰色,都會變成暗紅色。這個技巧在256色的VGADOS遊戲中,常常被用來表示載入遊戲的淡入淡出畫面。
總結來說,CGA和EGA同時只能顯示16種色彩,而VGA因為使用了Mode13h而可以一次顯示256色版中的所有色彩,而這256種顏色又是從262,144種顏色中挑出的。
VGA中的A指的是“陣列(array)”而非“轉換器(adapter)”,因為它從一開始就被設計為一個單一的整合晶元,用來取代Motorola6845和數十個離散的邏輯晶元組合而成的ISA母版,這種設計是之前的MDA、CGA和EGA所使用的。VGA的這個特性允許它輕易的殖入PC的主板之中,只需要額外的視訊內存、振蕩器和一個RAMDAC,就具備顯示功能。IBM的PS/2電腦系列就是採用將VGA放置於主板上的設計。

規格表


VGA的規格表如下:
*256KiB的VideoRAM
*16色和256色模式
*總共262144種顏色的色版(紅、綠、藍三色各6bit,總共(26)3種)
*選擇性的25.2MHz或28.3MHz處理頻率
*最多720個水平像素
*最多480條線
*最高70Hz的更新頻率
*Vertical Blanking interrupt(不是所有卡都支援)
*平面模式:最多16色(4bit面板)
*Packed-pixel模式:256色(Mode13h)
*順暢捲動畫面的能力
*Some "Raster Ops"support
*Barrel shifter
*支援分割畫面
VGA支援可單獨操控像素的APA(All Points Addressable)模式,也支援字母與數字的文字模式。標準的圖形模式如下:
*640×480×16色
*640×350×16色
*320×200×16色
*320×200×256色(Mode13h)
它也支援用模擬的方式畫出以往規格的解析度:EGA、CGA和MDA。
標準的VGA文字模式使用80×25或40×25個字母或數字組成的平面。每個字元的塊狀區域可以選擇16種前景色和8種背景色;8種背景色來自bit容量較低的集合(以今天的標準來說,例如ffffff或者是000000)。而字元本身也可設定是否閃爍,而字元的閃爍動作都是同時的。畫面的閃爍功能和選擇背景顏色的功能是可交換的,換句話說兩者只能擇一。以上這些選項和IBM先前生產的CGA轉換器是相同的。
VGA雖然支援黑白和彩色的文字模式,但黑白模式很少使用。大多的VGA在顯示黑白模式時使用彩色模式,即是將灰色字畫在黑色背景上。而使用VGA的單色顯示器也能很好的支援這樣的彩色模式。現代顯示器和顯卡若連接不當,偶爾會導致顯卡的VGA部份偵測顯示器為單色的,而這將使BIOS開機顯示為黑白模式。通常在載入操作系統和適當的驅動程序以後,顯卡的設定被覆蓋,顯示器就會變回彩色。
在彩色的文字模式中,每個字元其實由兩個byte代表。較低的一個byte用來顯示字元,而較高的byte就用來代表彩色、閃爍等等屬性。這種成對的byte模式是從CGA就一直傳續下來的。VGA的英文全稱是Video Graphic Array,即顯示繪圖陣列。VGA支持在640X480的較高解析度下同時顯示16種色彩或256種灰度,同時在320X240解析度下可以同時顯示256種顏色。
肉眼對顏色的敏感遠大於解析度,所以即使解析度較低圖像依然生動鮮明。VGA由於良好的性能迅速開始流行,廠商們紛紛在VGA基礎上加以擴充,如將顯存提高至1M並使其支持更高解析度如800X600或1024X768,這些擴充的模式就稱之為VESA(Video Electronics Standards Association,視頻電子標準協會)的Super VGA模式,簡稱SVGA,現在的顯卡和顯示器都支持SVGA模式。不管是VGA還是SVGA,使用的連線都是15針的梯形插頭,傳輸模擬信號。
只有在電腦顯卡驅動異常,進不去桌面的時候選擇這個模式,這個模式會載入系統默認自帶的驅動,以方便用戶操作。

應用


目前大多數計算機與外部顯示設備之間都是通過模擬VGA介面連接,計算機內部以數字方式生成的顯示圖像信息,被顯卡中的數字/模擬轉換器轉變為R、G、B三原色信號和行、場同步信號,信號通過電纜傳輸到顯示設備中。對於模擬顯示設備,如模擬CRT顯示器,信號被直接送到相應的處理電路,驅動控制顯像管生成圖像。而對於LCD、DLP等數字顯示設備,顯示設備中需配置相應的A/D(模擬/數字)轉換器,將模擬信號轉變為數字信號。在經過D/A和A/D2次轉換后,不可避免地造成了一些圖像細節的損失。VGA介面應用於CRT顯示器無可厚非,但用於連接液晶之類的顯示設備,則轉換過程的圖像損失會使顯示效果略微下降。

啟動


主要應用在,顯示解析度設置過高,顯示器黑屏,無法正常顯示了。要修復這個問題,就必須啟動到VGA模式,這樣解析度、刷新率會很低,方便用戶更改到合適的設置。
是Windows系統診斷的一種方式。