• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于FPGA的VGA顯示系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      2016-03-29 05:34陳啟武白天蕊
      電子產(chǎn)品世界 2016年2期

      陳啟武 白天蕊

      摘要:針對(duì)VGA(視頻圖形陣列)接口顯示器的檢測(cè)需求,設(shè)計(jì)了一種基于Altera FPGA的VGA顯示系統(tǒng)。詳細(xì)介紹了VGA顯示的原理,采用硬件描述語(yǔ)言Verilog完成了VGA顯示所需的驅(qū)動(dòng)時(shí)序和圖像存儲(chǔ)相關(guān)模塊的設(shè)計(jì),并對(duì)整個(gè)系統(tǒng)進(jìn)行了綜合仿真,驗(yàn)證了設(shè)計(jì)的正確性。仿真與測(cè)試結(jié)果表明,該設(shè)計(jì)可以在簡(jiǎn)單的情況下實(shí)現(xiàn)圖像或字符顯示,節(jié)約了硬件成本,還可以滿足不同顯示標(biāo)準(zhǔn)的需要。

      關(guān)鍵詞:VGA;圖像顯示;FPGA;設(shè)計(jì)實(shí)現(xiàn)

      DOI:10.3969/j.issn.1005-5517.2016.2.013

      引言

      VGA(Video Graphics Array)是IBM公司在1987年隨PS/2機(jī)一起推出的一種視頻傳輸標(biāo)準(zhǔn),具有分辨率高、顯示速率快、顏色豐富等優(yōu)點(diǎn),在顯示器領(lǐng)域得到了廣泛的應(yīng)用。隨著電子設(shè)計(jì)自動(dòng)化(EDA)技術(shù)的發(fā)展,近年來(lái)FPGA(現(xiàn)場(chǎng)可編程邏輯門(mén)陣列)在大規(guī)模嵌入式系統(tǒng)設(shè)計(jì)中得到了廣泛應(yīng)用。本文對(duì)基于FPGA的VGA顯示系統(tǒng)進(jìn)行了研究,利用了Altera CycloneⅣ系列的FPGA高達(dá)上百兆的工作頻率特性為數(shù)字圖像處理提供了良好的實(shí)時(shí)性,其內(nèi)部集成的數(shù)字鎖相環(huán)為系統(tǒng)的工作時(shí)鐘提供的良好的穩(wěn)定性,其內(nèi)部嵌入的存儲(chǔ)器可以存儲(chǔ)一定容量的圖像信息,其豐富的I/O口資源可以擴(kuò)展外接大容量的顯示接口。此外,F(xiàn)PGA電路的可重構(gòu)性,為系統(tǒng)功能的優(yōu)化和升級(jí)以及功能拓展提供了很大的設(shè)計(jì)空間。因此,由FPGA完成VGA圖像的顯示和控制,較好的實(shí)現(xiàn)了圖像數(shù)據(jù)處理的實(shí)時(shí)性和可靠性,具有成本低、結(jié)構(gòu)簡(jiǎn)單、應(yīng)用靈活的優(yōu)點(diǎn),可以廣泛應(yīng)用于視頻和計(jì)算機(jī)的顯示技術(shù)領(lǐng)域。

      1 VGA顯示原理

      計(jì)算機(jī)顯示器的顯示有許多標(biāo)準(zhǔn),如VGA、SVGA等。VGA作為一種標(biāo)準(zhǔn)的顯示接口得到廣泛的應(yīng)用。常見(jiàn)的彩色顯示器,一般由CRT(陰極射線管)構(gòu)成,彩色是由R、G、B(紅、綠、藍(lán))三基色組成。顯示器中的陰極射線槍通過(guò)發(fā)出電子束打在涂有熒光粉的熒光屏上,產(chǎn)生RGB三基色,合成一個(gè)彩色像素。掃描從屏幕的左上方開(kāi)始,從左到右,從上到下,進(jìn)行掃描,每掃完一行,電子束回到屏幕的左邊下一行的起始位置,在這期間,CRT對(duì)電子束進(jìn)行消隱,每行結(jié)束時(shí),用行同步信號(hào)進(jìn)行行同步;掃描完所有行,用場(chǎng)同步信號(hào)進(jìn)行場(chǎng)同步,并使掃描回到屏幕的左上方,同時(shí)進(jìn)行場(chǎng)消隱,預(yù)備下一場(chǎng)的掃描.

      VGA接口電路如圖1所示,VGA采用15 pin的接口,用于顯示的接口信號(hào)主要有5個(gè):1個(gè)行同步信號(hào)(HSY);1個(gè)場(chǎng)同步信號(hào)(VSY)、以及3個(gè)顏色信號(hào)(VGA_G、VGA_R、VGA_B。

      VGA的接口時(shí)序如圖2所示,場(chǎng)同步信號(hào)VSYNC在每幀開(kāi)始的時(shí)候產(chǎn)生一個(gè)固定寬度的低脈沖,行同步信號(hào)HSYNC在每行開(kāi)始的時(shí)候產(chǎn)生一個(gè)固定寬度的低脈沖,數(shù)據(jù)DATA在某些固定的行和列的交匯處有效。

      對(duì)于VGA接口信號(hào)的時(shí)序驅(qū)動(dòng),要嚴(yán)格遵循VGA顯示工業(yè)標(biāo)準(zhǔn).在不同分辨率下,VGA驅(qū)動(dòng)時(shí)序中的行、列同步信號(hào)的格式是完全一致的,都由同步段、后廊段、激活段和前廊段組成,只是對(duì)應(yīng)每段的高低電平的保持時(shí)間不同。本文采用刷新頻率為60Hz,分辨率為800×600的VGA顯示標(biāo)準(zhǔn),其驅(qū)動(dòng)時(shí)序表如表P所示。按照800×600×60Hz的顯示標(biāo)準(zhǔn)時(shí)序,一個(gè)列像素掃描需要25ns,要完成一行的掃描,需要1056個(gè)列像素,也就是說(shuō)需要1056×25ns的時(shí)間。如果要完成所有行的掃描的話,需要628×1056×25ns的時(shí)間。但不是所有時(shí)間都用來(lái)VGA圖像顯示,有一部分的時(shí)間用來(lái)時(shí)序同步操作.

      2 FPGA的設(shè)計(jì)與實(shí)現(xiàn)

      設(shè)計(jì)采用Altera公司的Cyclone Ⅳ系列FPGA(EP4CE6F17C8)作為主控制器,該芯片具有多達(dá)16272個(gè)LE、P79個(gè)用戶I/O口。器件中M9K存儲(chǔ)塊提供240 KB存儲(chǔ)容量,能夠被配置來(lái)支持多種操作模式,包括ROM、RAM、FIFO以及單口和雙口模式。器件具有3個(gè)可編程鎖相環(huán)(PLL)和9個(gè)全局時(shí)鐘線,能提供時(shí)鐘管理和頻率合成,實(shí)現(xiàn)最大的系統(tǒng)功能。VGA圖像顯示器是一個(gè)較大的數(shù)字系統(tǒng)。本設(shè)計(jì)采用模塊化的設(shè)計(jì)方法,遵循自頂向下的程序設(shè)計(jì)思想,進(jìn)行功能劃分并按層次設(shè)計(jì)。采用硬件描述語(yǔ)言Verilog設(shè)計(jì)了各個(gè)功能模塊并進(jìn)行仿真,使頂層VGA顯示模塊實(shí)體仿真綜合得以順利通過(guò)。VGA圖像顯示器的邏輯結(jié)構(gòu)框圖如圖3所示。根據(jù)VGA顯示的原理,VGA圖像顯示器的工作原理是:時(shí)鐘分頻模塊負(fù)責(zé)為系統(tǒng)提供驅(qū)動(dòng)的基準(zhǔn)時(shí)鐘,VGA時(shí)序發(fā)生模塊負(fù)責(zé)產(chǎn)生時(shí)序驅(qū)動(dòng)信號(hào)、行列地址信號(hào)和有效區(qū)域信號(hào),同時(shí)在正確的時(shí)序控制下,由圖像顯示控制模塊讀取圖像信息存儲(chǔ)模塊中的像素?cái)?shù)據(jù)并產(chǎn)生R、G、B三基色信號(hào)至顯示器的VGA接口,進(jìn)行圖像顯示。

      2.1時(shí)鐘分頻模塊設(shè)計(jì)

      設(shè)計(jì)驅(qū)動(dòng)VGA采用800×600×60Hz顯示標(biāo)準(zhǔn),該顯示標(biāo)準(zhǔn)需要的最小單位也就是列像素所占用的時(shí)間周期為25ns。也就是說(shuō),至少需要頻率為40MHz的時(shí)鐘為VGA驅(qū)動(dòng)提供基準(zhǔn)時(shí)鐘,利用FPGA器件的嵌入式鎖相環(huán)(PLL)對(duì)FPGA源時(shí)鐘(頻率為50MHz)進(jìn)行倍頻(四倍頻后五分頻得到40MHz)。PLL是FPGA的重要硬件資源,其主要的功能是對(duì)源時(shí)鐘編程、倍頻、分頻等。

      2.2 VGA時(shí)序發(fā)生模塊設(shè)計(jì)

      VGA時(shí)序發(fā)生模塊接口信號(hào)包括:行同步信號(hào)HSYNCSignal、場(chǎng)同步信號(hào)VSYNC Signal、有效區(qū)域信號(hào)Ready_Sig、行地址信號(hào)Column_Addr_Sig、列地址信號(hào)Row_Addr_Sig。行同步信號(hào)是根據(jù)行像素計(jì)數(shù)寄存器Count_H的計(jì)數(shù)值來(lái)產(chǎn)生,場(chǎng)同步信號(hào)產(chǎn)生是根據(jù)列像素計(jì)數(shù)寄存器Count_V的計(jì)數(shù)值來(lái)產(chǎn)生,而有效區(qū)域信號(hào)Ready_Sig用來(lái)確定串行輸出的顯示器的紅、綠、藍(lán)信號(hào)線上電平的高低.

      經(jīng)過(guò)PLL分頻后的時(shí)鐘每過(guò)25ns,Count_H就會(huì)累加計(jì)數(shù),當(dāng)其計(jì)到1056個(gè)列像素時(shí),Count_V加1,Count_V最大計(jì)到628。VSYNC Signal在同步段保持低電平,之后就會(huì)拉高輸出,同步段保持低電平的時(shí)間是掃描4個(gè)列像素的時(shí)間.而HSYNC Signal在同步段即剛開(kāi)始的128個(gè)行像素保持低電平,之后輸出高電平。有效區(qū)域信號(hào)Ready_Sig發(fā)生在HSYNCSignal和VSYNC Signal的激活段交集處,輸出為高電平有效.為了精確地控制圖像顯示在屏幕的位置,VGAI]寸序發(fā)生模塊有義務(wù)輸出當(dāng)前的行地址信號(hào)(Column_Addr_Sig)和列地址信號(hào)(Row_AddLSig)。行地址的計(jì)數(shù)是發(fā)生在128個(gè)Count_H之后,而列地址計(jì)數(shù)是27個(gè)Count_V之后開(kāi)始計(jì)數(shù).

      VGA時(shí)序發(fā)生模塊sync_module.v的部分代碼如下:

      2.3圖像信息存儲(chǔ)模塊設(shè)計(jì)

      圖像信號(hào)包括數(shù)字彩條、棋盤(pán)格和ROM中定制的圖形等。要在屏幕上顯示圖像,除VGAI]寸序之外,還需要設(shè)計(jì)底層存儲(chǔ)器以建立圖像信息庫(kù)。FPGA定制ROM一般有兩種方法:第一種方法是利用FPGA器件的嵌入式存儲(chǔ)器定制LPM-ROM,用.mif文件或,hex文件對(duì)其對(duì)其進(jìn)行初始化,這種方法獲得的ROM最大尋址空間為2P2,可以存儲(chǔ)一幅分辨率為64×64的圖像信息;第二種方法是在FPGA邏輯資源的限度內(nèi)利用硬件描述語(yǔ)言Verilog HDL定制一個(gè)ROM,采用case語(yǔ)句對(duì)其進(jìn)行初始化,這種方法獲得的ROM在存儲(chǔ)深度較大時(shí),編譯時(shí)對(duì)時(shí)間的開(kāi)銷較大且浪費(fèi)FPGA的邏輯資源。ROM初始化完成后在40M Hz的時(shí)鐘頻率下輸出存儲(chǔ)的圖像信息,其圖像顏色種類的多少取決于ROM存儲(chǔ)空間的大小。

      本設(shè)計(jì)需要顯示一副64(寬)×64(高)×1(顏色)像素點(diǎn)陣的“比卡丘”卡通圖像。要存放這一副圖像,可采用FPGA嵌入的存儲(chǔ)器定制數(shù)據(jù)線寬64位、地址線寬6位的LPM-ROM,其初始化文件如圖4所示。這樣的配置使得設(shè)計(jì)簡(jiǎn)單化,通過(guò)對(duì)行信號(hào)和列信號(hào)的有效組合對(duì)存儲(chǔ)器的地址進(jìn)行訪問(wèn)而來(lái)輸出圖像像素點(diǎn)陣從而顯示圖像。

      2.4圖像顯示控制模塊設(shè)計(jì)

      該部分設(shè)計(jì)的思路是在前三步的基礎(chǔ)上實(shí)現(xiàn).有關(guān)RGB三基色信號(hào)的控制、行與列地址的控制、圖像顯示控制、幀控制,都是在這個(gè)模塊中完成操作。首先,通過(guò)讀取當(dāng)前的行和列地址信號(hào)對(duì)ROM進(jìn)行尋址,讀取圖片像素信息從而完成整個(gè)圖片信息的掃描。其次,當(dāng)有效區(qū)域信號(hào)產(chǎn)生時(shí),通過(guò)RGB三基色信號(hào)實(shí)現(xiàn)圖像的正確顯示。

      圖像顯示控制模塊vga_controI_module.v的部分代碼如下:

      endmodule

      2.5VGA顯示頂層模塊設(shè)計(jì)

      在各模塊功能實(shí)現(xiàn)的基礎(chǔ)上,通過(guò)實(shí)例化的方式把它們有機(jī)地整合在一起,即為VGA顯示頂層模塊vga_moduoe.v,對(duì)其編譯后生成的RTL級(jí)網(wǎng)表如圖5所示。

      3仿真與測(cè)試結(jié)果

      利用modeIsim對(duì)VGA顯示頂層模塊進(jìn)行功能仿真,所得到的時(shí)序驅(qū)動(dòng)信號(hào)和RGB圖像信號(hào)的關(guān)系如圖6所示。HSYNC_Sig在前P28個(gè)時(shí)鐘周期內(nèi)保持低電平,后面保持高電平的時(shí)間為928個(gè)CLK,而VSYNC_Sig在HSYNC_Sig第5個(gè)下降沿到來(lái)時(shí)由低電平變?yōu)楦唠娖?,可以說(shuō)明VGA模塊工作是正確的。利用VGA適配器將FPGA板載的VGA接口與液晶顯示器接口連接好,利用Quartus Ⅱ軟件將程序下載到FPGA中驗(yàn)證,硬件測(cè)試結(jié)果如圖8所示。最終,VGA輸出的圖像與圖像源是一致的。

      本文基于FPGA設(shè)計(jì)了VGA圖像顯示器,采用LPM-ROM完成圖像信息的存儲(chǔ),在FPGA中合成了對(duì)VGA圖像顯示所需的各種時(shí)序控制信號(hào)和圖像接口信號(hào),用較省邏輯資源的方式,完成了VGA顯示模塊的設(shè)計(jì),為圖像運(yùn)算節(jié)省了更多的邏輯資源。經(jīng)過(guò)仿真驗(yàn)證,設(shè)計(jì)是正確可行的。該設(shè)計(jì)可以很好的實(shí)現(xiàn)我們?cè)诤?jiǎn)單應(yīng)用系統(tǒng)中對(duì)圖像或字符顯示的需要。

      本設(shè)計(jì)還可以做一些擴(kuò)展,當(dāng)顯示的圖像信息量較大時(shí),可對(duì)FPGA內(nèi)部邏輯結(jié)構(gòu)的數(shù)字圖像處理實(shí)用算法進(jìn)行深入研究,如添加CCD攝像頭圖像采集模塊[3];還可以外接大容量的存儲(chǔ)器,采用8位的二進(jìn)制數(shù)據(jù)表示RGB三基色,實(shí)現(xiàn)256色輸出,使顯示的圖像色彩更加豐富。

      义乌市| 河西区| 泾阳县| 阿拉尔市| 镇沅| 绥滨县| 绿春县| 内丘县| 邵阳县| 马公市| 湘潭市| 莱州市| 峨眉山市| 若羌县| 清水河县| 玉山县| 平江县| 米林县| 玛沁县| 稷山县| 闵行区| 灌阳县| 潞西市| 玛多县| 孟村| 富川| 正宁县| 和静县| 邹城市| 天全县| 武穴市| 余干县| 区。| 马龙县| 华容县| 宁夏| 沛县| 朝阳区| 贞丰县| 宣城市| 古浪县|