一種嵌入式VGA顯示系統(tǒng)實(shí)現(xiàn)
VGA(Video Graphics Array)即視頻圖形陣列,是IBM在1987年隨PS/2機(jī)(PS/2 原是“Personal System 2”的意思,“個(gè)人系統(tǒng)2”,是IBM公司在1987年推出的一種個(gè)人電腦。PS/2電腦上使用的鍵盤鼠標(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ī)畫面仍然使用VGA顯示模式,這也說(shuō)明其在顯示標(biāo)準(zhǔn)中的重要性和兼容性。
本文引用地址:http://m.butianyuan.cn/article/149489.htm目前VGA技術(shù)的應(yīng)用還主要基于 VGA顯示卡的,而在一些既要求顯示彩色高分辨率圖像又不使用計(jì)算機(jī)的設(shè)備上,VGA技術(shù)的應(yīng)用卻很少。
基于 FPGA/CPLD的嵌入式 VGA顯示系統(tǒng),可以在不使用 VGA顯示卡的情況下實(shí)現(xiàn) VGA圖像的顯示和控制。該系統(tǒng)具有成本低、結(jié)構(gòu)簡(jiǎn)單、應(yīng)用靈活的優(yōu)點(diǎn)。
1 基于 FPGA/CPLD的嵌入式VGA顯示系統(tǒng)簡(jiǎn)介
通用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各種控制信號(hào),達(dá)到顯示彩色高分辨率圖像的要求,而不需用 VGA顯示卡和計(jì)算機(jī)設(shè)備。圖 1是基于 FPGA/CPLD的嵌入式 VGA顯示系統(tǒng)的結(jié)構(gòu)框圖,圖中FPGA(Field-Programmable Gate Array),即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。EP2C35F672C該芯片提供了 33216個(gè)邏輯單元 ,包括了嵌入式 18*18位乘法器、專用外部存儲(chǔ)器接口電路、4KB嵌入式存儲(chǔ)器件、4個(gè)鎖相環(huán)和高速差分 I/O等功能。
VGA接口芯片采用了 ADV7125,該芯片是美國(guó) ADI公司生產(chǎn)的高速視頻數(shù)模轉(zhuǎn)換芯片,其像素掃描時(shí)鐘頻率有 50MHz、140 MHz、270 MHz、330MHz四個(gè)等級(jí)。ADV7125在單芯片上整合了三組 8位高速 D/A轉(zhuǎn)換器,可以分別處理紅、綠、藍(lán)視頻數(shù)據(jù),特別適用于高分辨率模擬接口的顯示終端和要求高速 D/A轉(zhuǎn)換的應(yīng)用系統(tǒng)。 ADV7125的輸入及控制信號(hào)非常簡(jiǎn)單:3組 8位的數(shù)字視頻數(shù)據(jù)輸入端,分別對(duì)應(yīng) RGB視頻數(shù)據(jù),數(shù)據(jù)輸入端采用標(biāo)準(zhǔn) TTL電平接口;4條視頻控制信號(hào)線包括復(fù)合同步信號(hào) SYNC、消隱信號(hào) BLANK、白電平參考信號(hào) REF WHITE和像素時(shí)鐘信號(hào) CLOCK;外接一個(gè) 1.23 V數(shù)模轉(zhuǎn)換參考電壓源和 1個(gè)輸出滿度調(diào)節(jié)。
2模塊劃分與模塊功能定義
FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個(gè)部分。 現(xiàn)場(chǎng)可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來(lái)實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來(lái)驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了即可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過(guò)向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來(lái)實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及個(gè)模塊之間或模塊與I/O間的連接方式,并最終決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能, FPGA允許無(wú)限次的編程。
FPGA中包含了四個(gè)工作模塊: VGA時(shí)序發(fā)生器模塊、VGA圖像顯示調(diào)色板模塊、數(shù)據(jù)存儲(chǔ)器和數(shù)據(jù)讀寫控制器。由于ADV7125內(nèi)部沒(méi)有顏色的轉(zhuǎn)換器 ,所以當(dāng)數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)為YUV信號(hào)時(shí),就要把YUV信號(hào)轉(zhuǎn)換成RGB信號(hào),這一功能就是由VGA圖像顯示調(diào)色板模塊完成的,當(dāng)顯示數(shù)據(jù)為 RGB信號(hào)時(shí),數(shù)據(jù)可以直接傳輸?shù)紸DV7125,不需調(diào)色板進(jìn)行顏色轉(zhuǎn)換。用FPGA對(duì)圖像進(jìn)行存儲(chǔ)和整理,并產(chǎn)生驅(qū)動(dòng)電路需要的各種控制波形由視頻控制器對(duì)顏色緩沖器進(jìn)行掃描,其中視頻控制器可以讀取像素顏色,用這些顏色來(lái)控制輸出設(shè)備的亮度。
VGA時(shí)序發(fā)生器模塊產(chǎn)生顯示器所需的時(shí)序,這是完成設(shè)計(jì)的關(guān)鍵,時(shí)序稍有偏差,顯示必然不正常,甚至?xí)p壞彩色顯示器。
3、 VGA時(shí)序分析
顯示器是屬于電腦的I/O設(shè)備,即輸入輸出設(shè)備。它可以分為CRT、LCD等多種。它是一種將一定的電子文件通過(guò)特定的傳輸設(shè)備顯示到屏幕上再反射到人眼的顯示工具。
顯示器采用光柵掃描方式,即轟擊熒光屏的電子束在 CRT(陰極射線管)屏幕上從左到右(受水平同步信號(hào) HSYNC控制)、從上到下(受垂直同步信號(hào) VSYNC控制)做有規(guī)律的移動(dòng)。光柵掃描又分逐行掃描和隔行掃描。隔行掃描的顯示器掃描閃爍的比較厲害,會(huì)讓使用者的眼睛疲勞。目前微機(jī)所用顯示器幾乎都是逐行掃描。逐行掃描是指掃描從屏幕左上角一點(diǎn)開(kāi)始,從左向右逐點(diǎn)進(jìn)行掃描,每掃描完一行,電子束回到屏幕的左邊下一行的起始位置,CRT是一種使用陰極射線管(Cathode Ray Tube)的顯示器,主要有五部分組成:電子槍(Electron Gun),偏轉(zhuǎn)線圈(Deflection coils),蔭罩(Shadow mask),熒光粉層(Phosphor)及玻璃外殼。它曾是應(yīng)用最廣泛的顯示器之一,CRT純平顯示器具有可視角度大、無(wú)壞點(diǎn)、色彩還原度高、色度均勻、可調(diào)節(jié)的多分辨率模式、響應(yīng)時(shí)間極短等LCD顯示器難以超越的優(yōu)點(diǎn),而且現(xiàn)在的CRT顯示器價(jià)格要比LCD顯示器便宜不少。
完成一行掃描所需時(shí)間稱為水平掃描時(shí)間,其倒數(shù)稱為行頻率;完成一幀(整屏)掃描所需的時(shí)間稱為垂直掃描時(shí)間,其倒數(shù)為垂直掃描頻率,又稱刷新頻率,即刷新一屏的頻率。
VGA顯示器要正確顯示圖像關(guān)鍵還是如何實(shí)現(xiàn) VGA時(shí)序。視頻電子標(biāo)準(zhǔn)協(xié)會(huì)( VESA, Video Electronics Standards Association)對(duì)顯示器時(shí)序進(jìn)行了規(guī)范。 VGA的標(biāo)準(zhǔn)參考顯示時(shí)序如圖 2、圖 3所示。行時(shí)序和場(chǎng)時(shí)序都需要產(chǎn)生同步脈沖(Sync a)、顯示后沿 (Back porch b)、顯示時(shí)序段(Display interval c)和顯示前沿 (Front porch d)四個(gè)部分。
VGA的行時(shí)序如圖 2所示:每一行都有一個(gè)負(fù)極性行同步脈沖( Sync a),是數(shù)據(jù)行的結(jié)束標(biāo)志,同時(shí)也是下一行的開(kāi)始標(biāo)志。在同步脈沖之后為顯示后沿 (Back porch b),在顯示時(shí)序段(Display interval c)顯示器為亮的過(guò)程,RGB數(shù)據(jù)驅(qū)動(dòng)一行上的每一個(gè)象素點(diǎn),從而顯示一行。在一行的最后為顯示后沿(Back porch b)。在顯示時(shí)序段( Display interval c)之外沒(méi)有圖像投射到屏幕時(shí)插入消隱信號(hào)。同步脈沖(Sync a)、顯示后沿(Back porch b)和顯示前沿(Front porch d)都是在行消隱間隔內(nèi)( Horizontal Blanking Interval),當(dāng)行消隱有效時(shí), RGB 信號(hào)無(wú)效,屏幕不顯示數(shù)據(jù)。
VGA的場(chǎng)時(shí)序與 VGA的行時(shí)序基本一樣,如圖 3所示,每一幀的負(fù)極性幀同步脈沖(Sync a)是一幀的結(jié)束標(biāo)志,同時(shí)也是下一幀的開(kāi)始標(biāo)志。而顯示數(shù)據(jù)是一幀的所有行數(shù)據(jù)。
幾種常用的時(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)生不同寬度和周期的脈沖信號(hào),再利用它們的邏輯組合構(gòu)成圖 2和圖 3中的 a、b、c、d各時(shí)序段以及 ADV7125的空白信號(hào) BLANK和同步信號(hào) SYNC。
一個(gè)示例就是 60Hz時(shí) 1280×1024分辨率顯示的 VESA標(biāo)準(zhǔn),在 60Hz時(shí),屏幕每16.67毫秒更新一次。這個(gè)標(biāo)準(zhǔn)制定了幀大小,用它來(lái)定義分辨率和回掃次數(shù)之間的關(guān)系。對(duì)于分辨率大小為 1280×1024來(lái)說(shuō),幀的大小為 1688×1066,這個(gè)大小與像素時(shí)鐘(Pixel Clock)有關(guān),所謂像素時(shí)鐘就是對(duì)像素的刷新頻率。像素時(shí)鐘為 1688×1066×60Hz 或者 108 兆 Hz(MHz)時(shí),每個(gè)像素的刷新頻率也就是大約 9.26納秒,那么行頻就為 60×1066=63960 行/秒,也就是用顯示器的幀率乘以掃描線數(shù)量??梢杂脦笮〉玫娇v向回掃次數(shù),為了得到縱向同步長(zhǎng)度(Sync Length),可以從縱向幀大小減去縱向分辨率,也就是 1066-1024=42。
在顯示時(shí)序段( Display interval c),數(shù)據(jù)讀寫控制器從數(shù)據(jù)緩存區(qū)讀取像素顏色,用這些顏色來(lái)控制輸出設(shè)備(顯示器)的亮度。
表 1:VGA行時(shí)序說(shuō)明
4、 VGA顯示器在雷達(dá)圖像顯示中的應(yīng)用
最初,雷達(dá)顯示器到重要作用,在于使雷達(dá)接收機(jī)到數(shù)據(jù)以一種可視的形式表現(xiàn)出來(lái)。操作員可以輕易而精確地檢測(cè)目標(biāo)的出現(xiàn),提取目標(biāo)的位置信息。隨著數(shù)字信號(hào)處理和數(shù)字?jǐn)?shù)據(jù)處理的進(jìn)步,越來(lái)越多的檢測(cè)和信息提取過(guò)用電子方法自動(dòng)完成,因此操作員的任務(wù)越來(lái)越少。
雷達(dá)獲取的信息是徑向圓掃描方式屬極坐標(biāo)方式,所以早期船用雷達(dá)顯示器是一種平面位置顯示器,用極坐標(biāo)表示,采用徑向圓掃描方式,在這種掃描方式中,熒光屏上掃描線線徑向掃描的數(shù)率取決于量程的大小。掃描線選轉(zhuǎn)的速度取決于天線的轉(zhuǎn)速。物標(biāo)回波的亮度取決于回波視頻的信號(hào)的幅度。物標(biāo)回波及各種符號(hào)視頻在屏上只能是天線每轉(zhuǎn)一圈才能亮一下,在整個(gè)平面上亮度不均,且量程小,回波亮度越低,容易丟失小目標(biāo)。
隨著VGA顯示器廣泛應(yīng)用,VGA顯示器也開(kāi)始應(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ǔ)器中讀出并顯示出來(lái)。
VGA顯示器可以將來(lái)自其他傳感器得信息 ,例如其他雷達(dá) :空中交通管制雷達(dá)應(yīng)答系統(tǒng) (ATCRBS) 、軍用敵我識(shí)別 (IFF) 、低亮度 TV、前視紅外 (FLIR),避免碰撞系統(tǒng)或來(lái)自民用或軍用數(shù)據(jù)鏈的信息 ,都能組合到顯示器上 .除已處理雷達(dá)視頻和原始視頻外 ,雷達(dá)觀測(cè)的區(qū)域地圖及文字?jǐn)?shù)字信息和圖形也能添加到 VGA顯示器上。
5、VGA顯示器在雷達(dá)應(yīng)用中的優(yōu)點(diǎn)與平面位置顯示器相比,VGA顯示器的在雷達(dá)圖像顯示上有了更大優(yōu)勢(shì):
1)克服了平面位置顯示器整個(gè)平面上亮度不均的缺點(diǎn)
2)避免顯示器的圖像的閃爍現(xiàn)象
3)便于彩色顯示
4)便于采用計(jì)算機(jī)顯示終端技術(shù)
5)降低了成本,提高了可靠性
本文作者的創(chuàng)新點(diǎn):在本設(shè)計(jì)中采用了 1280*1024的高分辨率顯示 ,克服了早期低分辨率 VGA顯示器雷達(dá)圖像分裂和定位精度低的缺點(diǎn) .。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)led顯示器相關(guān)文章:led顯示器原理
鎖相環(huán)相關(guān)文章:鎖相環(huán)原理
評(píng)論