基于FPGA的VGA圖象信號發(fā)生器設計
1、引言
本文引用地址:http://dyxdggzs.com/article/191981.htmVGA(視頻圖形陣列)作為一種標準的顯示接口在視頻和計算機領(lǐng)域得到了廣泛的應用。VGA圖像信號發(fā)生器是電視臺、電視機生產(chǎn)企業(yè)、電視維修人員常用的儀器,其主要功能就是產(chǎn)生標準的圖像測試信號。
VGA圖像信號發(fā)生器的設計涉及到圖像數據的處理,對電路的工作速度和性能要求較高,VGA工業(yè)標準要求的時(shí)鐘頻率高達25MHz,使用傳統的電子電路設計方法是難以實(shí)現的。采用專(zhuān)用的視頻處理芯片,其設計技術(shù)難度大、開(kāi)發(fā)成本高。本文采用FPGA+MCU方案,利用了Cyclone系列的FPGA高達上百兆的工作頻率特性為圖像數據處理提供了良好的實(shí)時(shí)性,其內部集成的數字鎖相環(huán)為系統的工作時(shí)鐘提供的良好的穩定性,其內部嵌入的存儲器可以存儲一定容量的圖像信息,豐富的I/O資源可以隨即擴展外接大容量存儲器的特性,因此由 FPGA完成對圖像數據的處理及產(chǎn)生行場(chǎng)掃描時(shí)序信號。很好地實(shí)現了圖象數據處理的實(shí)時(shí)性和穩定性,達到了性能與價(jià)格的完美統一。此外,FPGA的電路可重構性,為系統功能更改和升級以及功能擴展提供了很大的設計空間。由微控制器完成功能設置與控制,如鍵盤(pán)掃描,模式選擇與顯示控制等。
2、系統的工作原理和組成框圖
FPGA是整個(gè)系統的核心,通過(guò)對其編程可輸出RGB三基色信號和HS 、VS行場(chǎng)掃描同步信號。當 FPGA接受單片機輸出的控制信號后,內部的數據選擇器模塊根據控制信號選通相應的圖像生成模塊,輸出圖像信號,與行場(chǎng)掃描時(shí)序信號一起通過(guò)15針D型接口電路送入VGA顯示器,在VGA顯示器上便可以看到對應的彩色圖像。FPGA所需的工作時(shí)鐘由外部高精度有源晶振提供;單片機控制器分析鍵盤(pán)掃描結果,控制液晶顯示模塊顯示相應的功能,由LCD顯示輸出圖象和按鍵控制模式,并送出相應控制信號給FPGA,系統原理框圖如圖1。
3、VGA顯示器原理
工業(yè)標準的VGA顯示模式為:640×468×16色×60Hz。常見(jiàn)的彩色顯示器,一般由CRT (陰極射線(xiàn)管)構成,彩色是由R、G、B(紅、綠、藍)三基色組成,CRT用逐行掃描或隔行掃描的方式實(shí)現圖像顯示,由VGA控制模塊產(chǎn)生的水平同步信號和垂直同步信號控制陰極射線(xiàn)槍產(chǎn)生的電子束,打在涂有熒光粉的熒光屏上,產(chǎn)生R、G、B三基色,合成一個(gè)彩色像素。掃描從屏幕的左上方開(kāi)始,由左至右,由上到下,逐行進(jìn)行掃描,每掃完一行,電子束回到屏幕下一行的起始位置,在回掃期間,CRT對電子束進(jìn)行消隱,每行結束是用行同步信號HS進(jìn)行行同步;掃描完所有行,再由場(chǎng)同步信號VS進(jìn)行場(chǎng)同步,并使掃描回到屏幕的左上方,同時(shí)進(jìn)行場(chǎng)消隱,預備下一場(chǎng)的掃描。行同步信號HS 和場(chǎng)同步信號VS是兩個(gè)重要的信號。顯示過(guò)程中,HS 和VS的極性可正可負,顯示器內可自動(dòng)轉換為正極性邏輯。
行同步信號HS和場(chǎng)同步信號VS的時(shí)序圖如圖2所示, T1為行同步消隱(約為6μs);T2為行顯示時(shí)間(約為26μs);T3為場(chǎng)同步消隱(兩個(gè)行周期);T4為場(chǎng)顯示時(shí)間(480個(gè)行周期)。
行同步信號HS和場(chǎng)同步信號VS與圖象信號R、G、B的時(shí)序關(guān)系如圖3所示。
對于VGA 顯示器的上述五個(gè)信號的時(shí)序驅動(dòng)要嚴格遵循“VGA工業(yè)標準”,即640×480×60HZ模式,否則無(wú)法顯示正確地圖象。
VGA工業(yè)標準要求的頻率:
時(shí)鐘頻率:25.175MHz(像素輸出的頻率)
行頻: 31469Hz
場(chǎng)頻: 59.94Hz(每秒圖像刷新頻率)
圖象信號顯示的顏色種類(lèi)與表示R、G、B三基色的二進(jìn)制數位數有關(guān),表1列出了8種顏色的編碼方式。
4、系統設計
4.1 圖像信號產(chǎn)生模塊的設計
產(chǎn)生圖像信號的核心器件采用Altera公司的Cyclone FPGA芯片EP1C3T144C8N。它具有多達20060個(gè)邏輯單元。最大用戶(hù)I/O數 104個(gè)。器件中M4K存儲塊提供288kbit存儲容量,能夠被配置來(lái)支持多種操作模式,包括RAM、ROM、FIFO及單口和雙口模式。
Cyclone器件具有高級外部存儲器接口,允許設計者將外部單數據率(SDR)SDRAM,雙數據率(DDR)、SDRAM和 DDR FCRAM 器件集成到復雜系統設計中,而不會(huì )降低數據訪(fǎng)問(wèn)的性能。并且還具有兩個(gè)可編程鎖相環(huán)(PLL)和八個(gè)全局時(shí)鐘線(xiàn),能提供時(shí)鐘管理和頻率合成,實(shí)現最大的系統功能。根據VGA顯示原理,圖象信號產(chǎn)生器的主要功能是:產(chǎn)生時(shí)序驅動(dòng)信號HS、VS及VGA彩色圖象編碼信號,同時(shí)在正確的時(shí)序控制下,輸出ROM中的象素數據至顯示器的VGA接口,進(jìn)行圖象顯示。FPGA內部電路原理結構如圖4。本文利用Altera公司QuartusⅡ6.0開(kāi)發(fā)平臺,遵循自頂向下的設計方法,針對各功能模塊,采用VHDL語(yǔ)言對FPGA器件編程,產(chǎn)生HS和VS掃描時(shí)序信號及各種圖象信號。
VGA時(shí)序信號是圖象顯示的關(guān)鍵,行場(chǎng)掃描時(shí)序的產(chǎn)生,是利用邏輯編程的方法實(shí)現的,即用VHDL編寫(xiě)分頻器,計時(shí)器模塊,來(lái)獲得T1、T2、T3、T4時(shí)序。當輸出數字、彩條信號和棋盤(pán)格圖象時(shí),由外部12M有源晶振提供時(shí)鐘輸入,其中行頻HS:12MHZ ÷13÷29=31830Hz、場(chǎng)頻VS:31830Hz÷480×0.93=61.67Hz、T1=1/31830Hz×4/29=25.96us、T2=1/31830Hz×5/29=6.04us、T3為兩個(gè)行周期(T1+T2),T4為480個(gè)行周期。
圖象信號包括數字、彩條、棋盤(pán)格,和ROM中定制的圖形等。數字信號和彩條信號的產(chǎn)生是按行場(chǎng)方向將屏幕各進(jìn)行8等分,相當于一個(gè)8×8的點(diǎn)陣,在對應位置顯示相應顏色即可獲得所需圖像信號;棋盤(pán)格信號是將橫彩條和豎彩條相異或獲得。ROM中定制的較為復雜的彩色圖像,需采用像素點(diǎn)輸出,即將圖像各像素點(diǎn)的信息存儲于ROM中,再以一定的頻率輸出。FPGA器件ROM的定制有兩種方法:第一種方法是利用FPGA器件的嵌入式存儲器定制LPM_ROM,用.MIF文件或.HEX文件對其進(jìn)行初始化,這種方法獲得的ROM最大尋址空間為2 12,可以存儲一幅分辨率為64×64的圖像信息;第二種方法是在FPGA邏輯資源的限度內用VHDL語(yǔ)言定制一個(gè)ROM,采用CASE語(yǔ)句對其進(jìn)行初始化,這種方法獲得的ROM在存儲深度較大時(shí),編譯時(shí)對時(shí)間的開(kāi)銷(xiāo)較大。ROM初始化完成后,在25MHz的時(shí)鐘頻率下輸出存儲的圖像信息。其圖象顏色種類(lèi)的多少取決于存儲空間的大小。
評論