vga時(shí)序標(biāo)準(zhǔn)詳解
VGA(Video Graphics Array)即視頻圖形陣列,是IBM在1987年隨PS/2(PS/2 原是“Personal System 2”的意思,“個(gè)人系統(tǒng)2”,是IBM公司在1987年推出的一種個(gè)人電腦。PS/2電腦上使用的鍵盤(pán)鼠標(biāo)接口就是現(xiàn)在的PS/2接口。因?yàn)闃?biāo)準(zhǔn)不開(kāi)放,PS/2電腦在市場(chǎng)中失敗了。只有PS/2接口一直沿用到今天)一起推出的使用模擬信號(hào)的一種視頻傳輸標(biāo)準(zhǔn),在當(dāng)時(shí)具有分辨率高、顯示速率快、顏色豐富等優(yōu)點(diǎn),在彩色顯示器領(lǐng)域得到了廣泛的應(yīng)用。這個(gè)標(biāo)準(zhǔn)對(duì)于現(xiàn)今的個(gè)人電腦市場(chǎng)已經(jīng)十分過(guò)時(shí)。即使如此,VGA仍然是最多制造商所共同支持的一個(gè)標(biāo)準(zhǔn),個(gè)人電腦在加載自己的獨(dú)特驅(qū)動(dòng)程序之前,都必須支持VGA的標(biāo)準(zhǔn)。例如,微軟Windows系列產(chǎn)品的開(kāi)機(jī)畫(huà)面仍然使用VGA顯示模式,這也說(shuō)明其在顯示標(biāo)準(zhǔn)中的重要性和兼容性。
vga時(shí)序標(biāo)準(zhǔn)完成一行掃描的時(shí)間稱(chēng)為水平掃描時(shí)間,其倒數(shù)稱(chēng)為行頻率;完成一幀(整屏)掃描的時(shí)間稱(chēng)為垂直掃描時(shí)間,其倒數(shù)稱(chēng)為場(chǎng)頻率,即刷新一屏的頻率,常見(jiàn)的有60Hz,75Hz等等。標(biāo)準(zhǔn)的VGA顯示的場(chǎng)頻60Hz,行頻31.5KHz。
顯示與時(shí)序
通用VGA顯示卡系統(tǒng)主要由控制電路、顯示緩存區(qū)和視頻BIOS(Basic Input Output System即基本輸入輸出系統(tǒng))程序三個(gè)部分組成??刂齐娐啡鐖D1所示??刂齐娐分饕瓿蓵r(shí)序發(fā)生、顯示緩沖區(qū)數(shù)據(jù)操作、主時(shí)鐘選擇和D/A(Digital to Analog即將數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào))轉(zhuǎn)換等功能;顯示緩沖區(qū)提供顯示數(shù)據(jù)緩存空間;視頻BIOS作為控制程序固化在顯示卡的ROM(Read-Only Memory即只讀存儲(chǔ)器)中。
VGA時(shí)序分析
通過(guò)對(duì)VGA顯示卡基本工作原理的分析可知,要實(shí)現(xiàn)VGA顯示就要解決數(shù)據(jù)來(lái)源、數(shù)據(jù)存儲(chǔ)、時(shí)序?qū)崿F(xiàn)等問(wèn)題,其中關(guān)鍵還是如何實(shí)現(xiàn)VGA時(shí)序。 VGA的標(biāo)準(zhǔn)參考顯示時(shí)序如圖2所示。行時(shí)序和幀時(shí)序都需要產(chǎn)生同步脈沖(Sync a)、顯示后沿(Back porch b)、顯示時(shí)序段(Display interval c)和顯示前沿(Front porch d)四個(gè)部分。幾種常用模式的時(shí)序參數(shù)如表1所示。
VGA時(shí)序?qū)崿F(xiàn)
首先,根據(jù)刷新頻率確定主時(shí)鐘頻率,然后由主時(shí)鐘頻率和圖像分辨率計(jì)算出行總周期數(shù),再把表1中給出的a、b、c、d各時(shí)序段的時(shí)間按照主計(jì)數(shù)脈沖源頻率折算成時(shí)鐘周期數(shù)。在CPLD中利用計(jì)數(shù)器和RS觸發(fā)器,以計(jì)算出的各時(shí)序段時(shí)鐘周期數(shù)為基準(zhǔn),產(chǎn)生不同寬度和周期的脈沖信號(hào),再利用它們的邏輯組合構(gòu)成圖2中的a、b、c、d各時(shí)序段以及D/A轉(zhuǎn)換器的空白信號(hào)BLANK和同步信號(hào)SYNC。
VGA參考時(shí)序
SRAM地址
主時(shí)鐘作為像素點(diǎn)計(jì)數(shù)脈沖信號(hào),同時(shí)提供顯存SRAM的讀信號(hào)和D/A轉(zhuǎn)換時(shí)鐘,它所驅(qū)動(dòng)的計(jì)數(shù)器的輸出端作為讀SRAM的低位地址。行同步信號(hào)作為行數(shù)計(jì)數(shù)脈沖信號(hào),它所驅(qū)動(dòng)的計(jì)數(shù)器的輸出端作為讀SRAM的高位地址。由于采用兩片SRAM,所以最高位地址作為SRAM的片選使用。由于信號(hào)經(jīng)過(guò)CPLD內(nèi)部邏輯器件時(shí)存在一定的時(shí)間延遲,在CPLD產(chǎn)生地址和讀信號(hào)讀取數(shù)據(jù)時(shí),讀信號(hào)、地址信號(hào)和數(shù)據(jù)信號(hào)不能滿(mǎn)足SRAM讀數(shù)據(jù)的時(shí)序要求??梢岳糜布娐穼?duì)讀信號(hào)進(jìn)行一定的時(shí)序調(diào)整,使各信號(hào)之間能夠滿(mǎn)足讀SRAM和為DAC輸入數(shù)據(jù)的時(shí)序要求。
數(shù)據(jù)如果VGA顯示真彩色BMP圖像,則要R、G、B三個(gè)分量各8位,即24位表示一個(gè)像素值,很多情況下還采用32位表示一個(gè)像素值。為了節(jié)省顯存的存儲(chǔ)空間,可采用高彩色圖像,即每個(gè)像素值由16位表示,R、G、B三個(gè)分量分別使用5位、6位、5位,比真彩色圖像數(shù)據(jù)量減少一半,同時(shí)又能滿(mǎn)足顯示效果。