基于FPGA/CPLD的嵌入式VGA顯示系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
VGA(視頻圖形陣列Video Graphics Array)是IBM在1987年隨PS/2機(jī)一起推出的一種視頻傳輸標(biāo)準(zhǔn),具有分辨率高、顯示速率快、顏色豐富等優(yōu)點(diǎn),在彩色顯示器領(lǐng)域得到了廣泛的應(yīng)用。
目前 VGA技術(shù)的應(yīng)用還主要基于 VGA顯示卡的,而在一些既要求顯示彩色高分辨率圖像又不使用計(jì)算機(jī)的設(shè)備上,VGA技術(shù)的應(yīng)用卻很少。本文對基于 FPGA/CPLD的嵌入式 VGA顯示的實(shí)現(xiàn)方法進(jìn)行了研究。
基于 FPGA/CPLD的嵌入式 VGA顯示系統(tǒng),可以在不使用 VGA顯示卡的情況下實(shí)現(xiàn) VGA圖像的顯示和控制。該系統(tǒng)具有成本低、結(jié)構(gòu)簡單、應(yīng)用靈活的優(yōu)點(diǎn)。 1 基于 FPGA/CPLD的嵌入式 VGA顯示系統(tǒng)簡介
通用 VGA顯示卡系統(tǒng)主要由控制電路、顯示緩存區(qū)和視頻 BIOS程序三個(gè)部分組成。其控制電路主要完成時(shí)序發(fā)生、顯示緩沖區(qū)數(shù)據(jù)操作等功能;顯示緩沖區(qū)提供顯示數(shù)據(jù)緩存空間;視頻BIOS作為控制程序固化在顯示卡的 ROM中。在基于FPGA/CPLD的嵌入式VGA顯示系統(tǒng)的設(shè)計(jì)中,可以使用很少的資源,就產(chǎn)生 VGA各種控制信號,達(dá)到顯示彩色高分辨率圖像的要求,而不需用 VGA顯示卡和計(jì)算機(jī)設(shè)備。圖 1是基于 FPGA/CPLD的嵌入式 VGA顯示系統(tǒng)的結(jié)構(gòu)框圖,圖中FPGA采用的是Altera公司Cyclone II系列的EP2C35F672C這款 FPGA.Cyclone II器件采用 90nm、低 K值電介質(zhì)工藝,通過使硅片面積最小化,可以在單芯片上支持復(fù)雜的數(shù)字系統(tǒng)。EP2C35F672C該芯片提供了 33216個(gè)邏輯單元 ,包括了嵌入式 18*18位乘法器、專用外部存儲(chǔ)器接口電路、 4KB嵌入式存儲(chǔ)器件、4個(gè)鎖相環(huán)和高速差分 I/O等功能。該芯片的工作頻率和引腳 IO等資源都能很好的滿足本系統(tǒng)的要求.FPGA的工作時(shí)鐘為 54MHz。
VGA接口芯片采用了 ADV7125,該芯片是美國 ADI公司生產(chǎn)的高速視頻數(shù)模轉(zhuǎn)換芯片,其像素掃描時(shí)鐘頻率有 50MHz、140 MHz、270 MHz、330MHz四個(gè)等級。ADV7125在單芯片上整合了三組 8位高速 D/A轉(zhuǎn)換器,可以分別處理紅、綠、藍(lán)視頻數(shù)據(jù),特別適用于高分辨率模擬接口的顯示終端和要求高速 D/A轉(zhuǎn)換的應(yīng)用系統(tǒng)。 ADV7125的輸入及控制信號非常簡單:3組 8位的數(shù)字視頻數(shù)據(jù)輸入端,分別對應(yīng) RGB視頻數(shù)據(jù),數(shù)據(jù)輸入端采用標(biāo)準(zhǔn) TTL電平接口;4條視頻控制信號線包括復(fù)合同步信號 SYNC、消隱信號 BLANK、白電平參考信號 REF WHITE和像素時(shí)鐘信號 CLOCK;外接一個(gè) 1.23 V數(shù)模轉(zhuǎn)換參考電壓源和 1個(gè)輸出滿度調(diào)節(jié)。只有 4條輸出信號線:模擬 RGB信號采用高阻電流源輸出方式,可以直接驅(qū)動(dòng) 75Ω同軸傳輸線。
2模塊劃分與模塊功能定義
FPGA中包含了四個(gè)工作模塊: VGA時(shí)序發(fā)生器模塊、VGA圖像顯示調(diào)色板模塊、數(shù)據(jù)存儲(chǔ)器和數(shù)據(jù)讀寫控制器。由于 ADV7125內(nèi)部沒有顏色的轉(zhuǎn)換器 ,所以當(dāng)數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)為 YUV信號時(shí),就要把 YUV信號轉(zhuǎn)換成 RGB信號,這一功能就是由 VGA圖像顯示調(diào)色板模塊完成的,當(dāng)顯示數(shù)據(jù)為 RGB信號時(shí),數(shù)據(jù)可以直接傳輸?shù)?ADV7125,不需調(diào)色板進(jìn)行顏色轉(zhuǎn)換。數(shù)據(jù)存儲(chǔ)器和數(shù)據(jù)讀寫控制器解決了顯示數(shù)據(jù)的來源和數(shù)據(jù)的存儲(chǔ)。用 FPGA對圖像進(jìn)行存儲(chǔ)和整理,并產(chǎn)生驅(qū)動(dòng)電路需要的各種控制波形由視頻控制器對顏色緩沖器進(jìn)行掃描,其中視頻控制器可以讀取像素顏色,用這些顏色來控制輸出設(shè)備的亮度。 [!--empirenews.page--]
VGA時(shí)序發(fā)生器模塊產(chǎn)生顯示器所需的時(shí)序,這是完成設(shè)計(jì)的關(guān)鍵,時(shí)序稍有偏差,顯示必然不正常,甚至?xí)p壞彩色顯示器。 3、 VGA時(shí)序分析
顯示器采用光柵掃描方式,即轟擊熒光屏的電子束在 CRT(陰極射線管)屏幕上從左到右(受水平同步信號 HSYNC控制)、從上到下(受垂直同步信號 VSYNC控制)做有規(guī)律的移動(dòng)。光柵掃描又分逐行掃描和隔行掃描。隔行掃描指電子束在掃描時(shí)每隔一行掃一線,完成一屏后再返回來掃描剩下的線,與電視機(jī)的原理一樣。隔行掃描的顯示器掃描閃爍的比較厲害,會(huì)讓使用者的眼睛疲勞。目前微機(jī)所用顯示器幾乎都是逐行掃描。逐行掃描是指掃描從屏幕左上角一點(diǎn)開始,從左向右逐點(diǎn)進(jìn)行掃描,每掃描完一行,電子束回到屏幕的左邊下一行的起始位置,在這期間,CRT對電子束進(jìn)行消隱,每行結(jié)束時(shí),用行同步信號進(jìn)行行同步;當(dāng)掃描完所有行,形成一幀時(shí),用場同步信號進(jìn)行場同步,并使掃描回到屏幕的左上方,同時(shí)進(jìn)行行場消隱,開始下一幀的掃描。
完成一行掃描所需時(shí)間稱為水平掃描時(shí)間,其倒數(shù)稱為行頻率;完成一幀(整屏)掃描所需的時(shí)間稱為垂直掃描時(shí)間,其倒數(shù)為垂直掃描頻率,又稱刷新頻率,即刷新一屏的頻率。常見的有 60Hz、75Hz等。
VGA顯示器要正確顯示圖像關(guān)鍵還是如何實(shí)現(xiàn) VGA時(shí)序。視頻電子標(biāo)準(zhǔn)協(xié)會(huì)( VESA, Video Electronics Standards Association)對顯示器時(shí)序進(jìn)行了規(guī)范。 VGA的標(biāo)準(zhǔn)參考顯示時(shí)序如圖 2、圖 3所示。行時(shí)序和場時(shí)序都需要產(chǎn)生同步脈沖(Sync a)、顯示后沿 (Back porch b)、顯示時(shí)序段(Display interval c)和顯示前沿 (Front porch d)四個(gè)部分。 VGA工業(yè)標(biāo)準(zhǔn)顯示模式要求:行同步、場同步都為負(fù)極性,即同步頭脈沖要求是負(fù)脈沖。
VGA的行時(shí)序如圖 2所示:每一行都有一個(gè)負(fù)極性行同步脈沖( Sync a),是數(shù)據(jù)行的結(jié)束標(biāo)志,同時(shí)也是下一行的開始標(biāo)志。在同步脈沖之后為顯示后沿 (Back porch b),在顯示時(shí)序段(Display interval c)顯示器為亮的過程,RGB數(shù)據(jù)驅(qū)動(dòng)一行上的每一個(gè)象素點(diǎn),從而顯示一行。在一行的最后為顯示后沿(Back porch b)。在顯示時(shí)序段( Display interval c)之外沒有圖像投射到屏幕時(shí)插入消隱信號。同步脈沖(Sync a)、顯示后沿(Back porch b)和顯示前沿(Front porch d)都是在行消隱間隔內(nèi)( Horizontal Blanking Interval),當(dāng)行消隱有效時(shí), RGB 信號無效,屏幕不顯示數(shù)據(jù)。
500)this.style.width=500;" border="0" />
VGA的場時(shí)序與 VGA的行時(shí)序基本一樣,如圖 3所示,每一幀的負(fù)極性幀同步脈沖(Sync a)是一幀的結(jié)束標(biāo)志,同時(shí)也是下一幀的開始標(biāo)志。而顯示數(shù)據(jù)是一幀的所有行數(shù)據(jù)。
500)this.style.width=500;" border="0" />[!--empirenews.page--]
幾種常用的時(shí)序參數(shù)如表 1和表2 所示,首先,根據(jù)顯示器的性能選擇一種合適的VGA模式,然后由象素時(shí)鐘頻率和圖像分辨率計(jì)算出行總周期數(shù),再把表 1和表 2中給出的 a、 b、c、d各時(shí)序段的時(shí)間按照象素計(jì)數(shù)脈沖源頻率折算成時(shí)鐘周期數(shù)。在 FPGA/CPLD中用計(jì)數(shù)器和觸發(fā)器,以計(jì)算出的各時(shí)序段時(shí)鐘周期數(shù)為基準(zhǔn),產(chǎn)生不同寬度和周期的脈沖信號,再利用它們的邏輯組合構(gòu)成圖 2和圖 3中的 a、b、c、d各時(shí)序段以及 ADV7125的空白信號 BLANK和同步信號 SYNC。
一個(gè)示例就是 60Hz時(shí) 1280×1024分辨率顯示的 VESA標(biāo)準(zhǔn),在 60Hz時(shí),屏幕每
16.67毫秒更新一次。這個(gè)標(biāo)準(zhǔn)制定了幀大小,用它來定義分辨率和回掃次數(shù)之間的關(guān)系。對于分辨率大小為 1280×1024來說,幀的大小為 1688×1066,這個(gè)大小與像素時(shí)鐘(Pixel Clock)有關(guān),所謂像素時(shí)鐘就是對像素的刷新頻率。像素時(shí)鐘為 1688×1066×60Hz 或者 108 兆 Hz(MHz)時(shí),每個(gè)像素的刷新頻率也就是大約 9.26納秒,那么行頻就為 60×1066=63960 行/秒,也就是用顯示器的幀率乘以掃描線數(shù)量??梢杂脦笮〉玫娇v向回掃次數(shù),為了得到縱向同步長度(Sync Length),可以從縱向幀大小減去縱向分辨率,也就是 1066-1024=42。這樣,縱向回掃花費(fèi)的時(shí)間和在屏幕上繪出 42 條線的時(shí)間相同,對于縱向回掃來說需要的時(shí)間為 42×1688×9.26 納秒(656 微秒)。
在顯示時(shí)序段( Display interval c),數(shù)據(jù)讀寫控制器從數(shù)據(jù)緩存區(qū)讀取像素顏色,用這些顏色來控制輸出設(shè)備(顯示器)的亮度。一幀圖像就準(zhǔn)確的顯示到 VGA顯示器上。
表 1:VGA行時(shí)序說明
500)this.style.width=500;" border="0" />[!--empirenews.page--]
4、 VGA顯示器在雷達(dá)圖像顯示中的應(yīng)用
最初,雷達(dá)顯示器到重要作用,在于使雷達(dá)接收機(jī)到數(shù)據(jù)以一種可視的形式表現(xiàn)出來.操作員可以輕易而精確地檢測目標(biāo)的出現(xiàn),提取目標(biāo)的位置信息.隨著數(shù)字信號處理和數(shù)字?jǐn)?shù)據(jù)處理的進(jìn)步,越來越多的檢測和信息提取過用電子方法自動(dòng)完成,因此操作員的任務(wù)越來越少.現(xiàn)在雷達(dá)顯示器更像電視監(jiān)視器或計(jì)算機(jī)顯示器,可以顯示完整的連續(xù)場景.
雷達(dá)獲取的信息是徑向圓掃描方式屬極坐標(biāo)方式,所以早期船用雷達(dá)顯示器是一種平面位置顯示器,用極坐標(biāo)表示,采用徑向圓掃描方式,在這種掃描方式中,熒光屏上掃描線線徑向掃描的數(shù)率取決于量程的大小.掃描線選轉(zhuǎn)的速度取決于天線的轉(zhuǎn)速.物標(biāo)回波的亮度取決于回波視頻的信號的幅度.物標(biāo)回波及各種符號視頻在屏上只能是天線每轉(zhuǎn)一圈才能亮一下,在整個(gè)平面上亮度不均,且量程小,回波亮度越低,容易丟失小目標(biāo).精確保存物標(biāo)距離信息非常勉強(qiáng).目標(biāo)分辨力差,在屏上畫其他符號十分麻煩、困難,且符號量有限.
隨著VGA顯示器廣泛應(yīng)用,VGA顯示器也開始應(yīng)用在雷達(dá)顯示上,但VGA顯示起的掃描方式是從左到右到掃描和從上到下的幀掃,屬于直角坐標(biāo)的方式,而雷達(dá)獲取的信息是徑向圓掃描方式屬極坐標(biāo)方式,所以要實(shí)現(xiàn)雷達(dá)數(shù)據(jù)的 VGA顯示首先要將雷達(dá)的極坐標(biāo)信息轉(zhuǎn)換成直角坐標(biāo)信息存入存儲(chǔ)器,再以直角掃描的方式從存儲(chǔ)器中讀出并顯示出來.
VGA顯示器可以將來自其他傳感器得信息 ,例如其他雷達(dá) :空中交通管制雷達(dá)應(yīng)答系統(tǒng) (ATCRBS) 、軍用敵我識(shí)別 (IFF) 、低亮度 TV、前視紅外 (FLIR),避免碰撞系統(tǒng)或來自民用或軍用數(shù)據(jù)鏈的信息 ,都能組合到顯示器上 .除已處理雷達(dá)視頻和原始視頻外 ,雷達(dá)觀測的區(qū)域地圖及文字?jǐn)?shù)字信息和圖形也能添加到 VGA顯示器上.。
5、VGA顯示器在雷達(dá)應(yīng)用中的優(yōu)點(diǎn)與平面位置顯示器相比,VGA顯示器的在雷達(dá)圖像顯示上有了更大優(yōu)勢:
1)克服了平面位置顯示器整個(gè)平面上亮度不均的缺點(diǎn).實(shí)現(xiàn)了高亮度顯示
2)避免顯示器的圖像的閃爍現(xiàn)象,
3)便于彩色顯示
4)便于采用計(jì)算機(jī)顯示終端技術(shù)
5)降低了成本,提高了可靠性
本文作者的創(chuàng)新點(diǎn):在本設(shè)計(jì)中采用了 1280*1024的高分辨率顯示 ,克服了早期低分辨率 VGA顯示器雷達(dá)圖像分裂和定位精度低的缺點(diǎn) .。