引言
視頻圖形陣列顯示接口是微機(jī)系統(tǒng)使用的一種通用顯示接口,廣泛應(yīng)用于智能控制系統(tǒng)中,作為系統(tǒng)的顯示終端.對(duì)于由嵌入式微處理器構(gòu)成的圖像處理系統(tǒng)來(lái)說(shuō),采用VcA顯示輸出具有兼容性強(qiáng).顯示內(nèi)容豐富的優(yōu)勢(shì).同時(shí),VGA顯示接口具有結(jié)構(gòu)簡(jiǎn)單.性能可靠.兼容性強(qiáng).時(shí)序容易控制的特點(diǎn).因此,結(jié)合FPGA的VGA圖像控制器,在嵌入式的圖像處理系統(tǒng)中有廣泛的應(yīng)用前景.
目前大多數(shù)計(jì)算機(jī)與外部顯示設(shè)備之間都是通過(guò)模擬VGA接口連接,計(jì)算機(jī)內(nèi)部以數(shù)字方式生成的顯示圖像信息,被顯卡中的數(shù)字/模擬轉(zhuǎn)換器轉(zhuǎn)變?yōu)镽.G.B三原色信號(hào)和行.場(chǎng)同步信號(hào),信號(hào)通過(guò)電纜傳輸?shù)斤@示設(shè)備中.
1 VGA顯示
常見(jiàn)的VGA接口的彩色顯示器,一般由cRT(陰極射線管)構(gòu)成,色彩由R.G.B(紅:Red,綠:Green,藍(lán):Blue)三基色組成.顯示采用逐行掃描的方式進(jìn)行,即當(dāng)掃描完一行時(shí),再進(jìn)行下一行的掃描,直到最后一行掃描完為止.VGA接口為顯示器提供兩類(lèi)信號(hào),一類(lèi)是數(shù)據(jù)信號(hào),一類(lèi)是控制信號(hào).
數(shù)據(jù)信號(hào)包括紅.綠.藍(lán)信號(hào),簡(jiǎn)稱(chēng)RGB信號(hào).控制信號(hào)包括水平同步信號(hào)(HSYNC)和垂直同步信號(hào)(VsYNc).向顯示器輸出不同的分辨率時(shí),水平同步信號(hào)和垂直同步信號(hào)的頻率也不同.但是水平同步信號(hào)和垂直同步信號(hào)時(shí)序分析相同,在掃描時(shí)均需要經(jīng)過(guò)同步信號(hào).同步后信號(hào).行同步信號(hào).同步后信號(hào)四個(gè)時(shí)段.僅以水平同步信號(hào)為例,其結(jié)構(gòu)如圖1所示.
VGA接口的顯示器原理其實(shí)就相當(dāng)于點(diǎn)陣,通過(guò)控制器的控制,點(diǎn)亮所在的行和列.所以水平同步信號(hào)是針對(duì)列像素而言的,而垂直同步信號(hào)是針對(duì)行像素而言的.
以顯示800×600的圖片大小為例,根據(jù)VGA的時(shí)序標(biāo)準(zhǔn),選擇6hz的刷新頻率.水平同步信號(hào)的同步信號(hào)包含128個(gè)列像素,同步后沿信號(hào)為88個(gè)列像素,同步前沿信號(hào)為40個(gè)列像素,而屏幕顯示部分為800個(gè)列像素,所以一共需要1 28+88+40+800=1 056個(gè)列像素.場(chǎng)同步信號(hào)的同步信號(hào)包含4個(gè)行像素,同步后沿信號(hào)包含23個(gè)行像素,同步前沿信號(hào)包含1個(gè)行像素,而屏幕顯示部分為600個(gè)行像素,所以一共需要4+23+l+600=628個(gè)行像素,由此,液晶顯示器顯示一幅800×600的圖像,需要的行列像素分別為1056和628.
2系統(tǒng)總體框架設(shè)計(jì)
本系統(tǒng)以FPGA EP2C8Q208C8為核心芯片,通過(guò)對(duì)VGA接口的控制,實(shí)現(xiàn)彩色圖像的顯示,系統(tǒng)結(jié)構(gòu)框圖如圖2所示.
2.1鎖相環(huán)PLL
鎖相環(huán)路是一種反饋控制電路,簡(jiǎn)稱(chēng)鎖相環(huán)(PLL),一種輸出一定頻率信號(hào)的振蕩電路,也稱(chēng)為相位同步環(huán)(回路).該回路利用使外部施加的基準(zhǔn)信號(hào)與PLL回路內(nèi)的振蕩器輸出的相位差恒定的反饋控制來(lái)產(chǎn)生振蕩信號(hào).在網(wǎng)絡(luò)領(lǐng)域中,PLL用于從接收的信號(hào)中分離出時(shí)鐘信號(hào),可以通過(guò)實(shí)際電路或軟件的方式實(shí)現(xiàn).
由于FPGA的系統(tǒng)時(shí)鐘為50MHz,而控制VGA的時(shí)鐘為40MHz,所以在對(duì)VGA接口的控制時(shí)需要進(jìn)行時(shí)鐘轉(zhuǎn)換,通??梢酝ㄟ^(guò)分頻或者是調(diào)用IP核的方式實(shí)現(xiàn)轉(zhuǎn)換,但是由于通過(guò)自己寫(xiě)的分頻程序假如在數(shù)據(jù)上處理不得當(dāng),容易產(chǎn)生毛刺,而調(diào)用quanersII軟件自帶的PLL內(nèi)核,不僅可以做到與系統(tǒng)時(shí)鐘同相,而且時(shí)鐘穩(wěn)定,能夠?qū)崿F(xiàn)對(duì)VGA時(shí)序的嚴(yán)格控制,與硬件電路來(lái)實(shí)現(xiàn)鎖相環(huán)相比,調(diào)用PLJ.內(nèi)核不僅可以做到操作簡(jiǎn)單,而且也節(jié)約了設(shè)計(jì)成本.
2.2存儲(chǔ)模塊ROM
只讀存儲(chǔ)(Read一0nly Memory,ROM)是一種只能讀出事先所存數(shù)據(jù)的固態(tài)半導(dǎo)體存儲(chǔ)器圈.在系統(tǒng)框圖中的三個(gè)ROM均用來(lái)存儲(chǔ)顏色信息,由于本設(shè)計(jì)中使用圖片的大小為128×128,即一共有128×128=16384個(gè)像素點(diǎn),所以ROM的大小設(shè)置為16384.這里通過(guò)quanerII軟件調(diào)用FPGA的ROM內(nèi)核,將MATLAB提取的紅.綠.藍(lán)三基色數(shù)據(jù)經(jīng)quanusII軟件的處理,分別存入FPGA的ROMl.ROM2.ROM3中.在控制模塊中寫(xiě)入ROM的地址,在分頻后的時(shí)鐘控制下,將數(shù)據(jù)讀到vGA的RGB三個(gè)引腳,實(shí)現(xiàn)液晶顯示器的圖片顯示.
2.3 MATLAB的數(shù)據(jù)提取
MATLAB作為強(qiáng)大的數(shù)據(jù)處理工具,其基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)工程中常用的表達(dá)形式十分相似,故用MATLAB來(lái)解算問(wèn)題要比用c,FORTRAN等語(yǔ)言簡(jiǎn)捷得多。在新的版本中也加入了對(duì)C,FORTRAN,C++,JAVA的支持,可以直接調(diào)用,用戶也可以將自己編寫(xiě)的實(shí)用程序?qū)薓ATIAB函數(shù)庫(kù)中方便自己以后調(diào)用,此外許多的MATLAB愛(ài)好者都編寫(xiě)了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用,非常的方便.
由于MATLAB軟件中默認(rèn)的圖片格式為。JPc和。BNP,因此在使用MATLAB前需將原始圖片通過(guò)Photo sh叩軟件進(jìn)行格式轉(zhuǎn)換,轉(zhuǎn)換后保存圖片為。BMP格式,在彈出的位寬選擇對(duì)話框選擇24位,然后再通過(guò)MATLAB提取紅基色數(shù)據(jù),程序如下所示,結(jié)果被保存在Red.mif文件里:
由于本設(shè)計(jì)所使用的VGA是三位的數(shù)據(jù)接口,因此藍(lán)基色和綠基色數(shù)據(jù)也按照此方法提取.Red.mif中的數(shù)據(jù)是24位的,所以還需要對(duì)提取到的紅基色數(shù)據(jù)進(jìn)行轉(zhuǎn)換.在MATLAB中做如下判斷將24位數(shù)據(jù)轉(zhuǎn)換為3位數(shù)據(jù).
3結(jié)果分析
圖像的顯示如圖3所示,顯示結(jié)果表明,由于原圖像是24位,即224種顏色,而FPGA控制的VGA只有3位即23種顏色,相比之下,以24位的圖像作為標(biāo)準(zhǔn),VGA顯示的3位圖像有明顯失真的現(xiàn)象.
如果希望顯示的圖像更加清晰,那么需要將vGA的顯示接口重新作出電路修改,這樣才能達(dá)到清晰顯示的效果.
4結(jié)束語(yǔ)
在許多圖像處理系統(tǒng)中,需要將經(jīng)過(guò)處理的圖像顯示出來(lái),如果采用傳統(tǒng)的辦法將圖像數(shù)據(jù)傳回電腦并通過(guò)顯示器顯示出來(lái),那么在傳輸?shù)倪^(guò)程中就需要嵌入式系統(tǒng)的CPU不斷的對(duì)所傳輸?shù)膱D像數(shù)據(jù)信號(hào)進(jìn)行控制,這樣就造成了CPU資源的浪費(fèi),同樣系統(tǒng)還需要依賴(lài)電腦,降低了系統(tǒng)的靈活性.如果采用FPGA對(duì)顯示器的VGA接口進(jìn)行設(shè)計(jì),數(shù)據(jù)流只需要在整個(gè)系統(tǒng)的內(nèi)部流動(dòng),而不需要依靠計(jì)算機(jī),實(shí)現(xiàn)了系統(tǒng)的最小化,大大減少了電路板的尺寸,增強(qiáng)了系統(tǒng)的可靠性和設(shè)計(jì)的靈活性.
VGA接口同樣也是LCD液晶顯示設(shè)備的標(biāo)準(zhǔn)接口,通過(guò)VGA控制LCD可以使整個(gè)系統(tǒng)變得小巧,攜帶方便,使得應(yīng)用的范圍大大擴(kuò)展.作者所在的全景視覺(jué)圖象處理項(xiàng)目中,正是需要把經(jīng)過(guò)處理的圖像實(shí)時(shí)地直接地顯示出來(lái),撇開(kāi)對(duì)計(jì)算機(jī)的需求,以滿足各種不同應(yīng)用環(huán)境的需要.
通過(guò)FPGA對(duì)VGA接口的控制,不僅實(shí)現(xiàn)了FPGA對(duì)任一圖像的顯示,而且其內(nèi)部時(shí)鐘可調(diào)性為設(shè)計(jì)帶來(lái)了很大的方便,節(jié)約了硬件成本.此方案可以廣泛應(yīng)用于數(shù)字視頻系統(tǒng).高分辨率的彩色圖片圖像處理.視頻信號(hào)再現(xiàn)等各種領(lǐng)域.
-
FPGA
+關(guān)注
關(guān)注
1643文章
21952瀏覽量
613782 -
顯示器
+關(guān)注
關(guān)注
21文章
5058瀏覽量
141326 -
控制系統(tǒng)
+關(guān)注
關(guān)注
41文章
6752瀏覽量
111758 -
VGA
+關(guān)注
關(guān)注
5文章
571瀏覽量
64136
發(fā)布評(píng)論請(qǐng)先 登錄
基于FPGA實(shí)現(xiàn)VGA的彩色圖片顯示

利用可編程器件CPLD/FPGA實(shí)現(xiàn)VGA圖像控制器的設(shè)計(jì)方案

基于FPGA的Uart發(fā)送圖像數(shù)據(jù)到VGA顯示
VGA圖形控制器的FPGA實(shí)現(xiàn)

基于FPGA的串口通訊與VGA顯示

基于FPGA的VGA圖像控制器的設(shè)計(jì)與實(shí)現(xiàn)
基于Zedboard FPGA的VGA圖像信號(hào)采集系統(tǒng)的設(shè)計(jì)
VGA顯示與基于FPGA的VGA彩色圖片顯示設(shè)計(jì)

應(yīng)用于彩色顯示器的VGA時(shí)序信號(hào)和彩條圖像信號(hào)的設(shè)計(jì)與實(shí)現(xiàn)

FPGA入門(mén)系列實(shí)驗(yàn)教程之VGA彩色信號(hào)顯示的詳細(xì)資料說(shuō)明
如何使用FPGA實(shí)現(xiàn)VGA圖像控制器的設(shè)計(jì)論文免費(fèi)下載

評(píng)論