用FPGA實現(xiàn)VGA顯示_第1頁
用FPGA實現(xiàn)VGA顯示_第2頁
用FPGA實現(xiàn)VGA顯示_第3頁
用FPGA實現(xiàn)VGA顯示_第4頁
用FPGA實現(xiàn)VGA顯示_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、用FPGA實現(xiàn)VGA顯示大連遼無二電器有限公司劉碩(船用導(dǎo)航雷達(dá)分會技術(shù)交流論文)摘要:本文介紹了一種用FPGA結(jié)合DDR SDRAM和單片機,在VGA顯示器上顯示 字符、圖形信息的方法。本設(shè)計克服了單片機系統(tǒng)信息輸出功能薄弱的鐵點,為單 片機和其他嵌入式系統(tǒng)的信息輸出提供了 一個解決方案,使得其應(yīng)用范圍更加廣闊。 關(guān)鍵字:FPGA DDR SDRAM VHDL Hsync Vsync1 VGA顯示控制器的實現(xiàn)PC機在VGA的顯示器(通常包括CRT和液晶顯示器)上的信息顯示是通過顯卡完成的。 單片機在VGA顯示器上顯示信息同樣需要類似的模塊來輔助,因此我們設(shè)計了和顯卡功能 相似的VGA顯示控制

2、器來輔助單片機在VGA顯示器上顯示信息。下面介紹640 x 480分辨 率、60HZ刷新率的通用VGA顯示控制器的設(shè)計方法,并說明FPGA如何在VGA接口的顯示 器上顯示信息。1.1 VGA時序產(chǎn)生模塊的設(shè)計要實現(xiàn)VGA顯示控制器的功能,首先需要了解VGA信號的參數(shù)和時序。根據(jù)VCA時 序,本論文研究并實現(xiàn)了 VGA顯示控制器,設(shè)計中用4bit代表一個象素,640 X 480分辨率需 要150K字節(jié)的內(nèi)存。象素時鐘頻率的選擇與VGA監(jiān)視器的刷新頻率和分辨率相關(guān),60HZ 刷新率時,象索時鐘頻率為25MHZ,其計算公式為:時鐘頻率=(行象素數(shù)+行消隱點數(shù))x( 場行數(shù)+消隱行數(shù))x刷新率。圖1.

3、1 VGA時序圖I. I為VGA信號的時序c每一顯示行的時間為800個象素時鐘周期每場包括521 行°行同步脈沖的寬度為96個象素時鐘周期,場同步脈沖的寬度為2行。在行同步信號 Hsync的行同步期可及其前肩(16CLK)和后肩(48CLK),消隱信號blank為低電平,表示消隱 期.在場同步信號Vgynr的場同步期間及其前肩(10行)和后肩(29行).消隱信號blank同樣 為低電平,表示消隱期。1.2視頻同步信號的生成產(chǎn)生同步信號的時鐘應(yīng)當(dāng)是點時鐘經(jīng)分頻而來,分頻數(shù)應(yīng)為2、4、8,按照2的指數(shù)來選 取,這樣對于向串行器傳送視頻數(shù)據(jù)的電路設(shè)計比較方便。行同步計數(shù)器I行同步頭計數(shù)器:

4、決定行同步頭的寬度2行正程計數(shù)器:決定行周期的寬度3這兩個計數(shù)器都采取減計數(shù),當(dāng)同步頭計數(shù)器減到0'時,停1E計數(shù),并帝新裝入預(yù)制 值并使行正程計數(shù)器開始計數(shù),當(dāng)行正程計數(shù)器計到0'時,停止,并重新裝入預(yù)制值,并使 行同步頭計數(shù)器開始計數(shù)。這樣就可以形成連續(xù)的行同步信號。場同步計數(shù)器1場同步頭計數(shù)器:決定場同步頭的寬度2場正程計數(shù)器:決定場正程的寬度3逐行掃描:場同步頭與行同步頭同時開始,也是減計數(shù),當(dāng)同步頭計數(shù)器減到'0,時,停 止計數(shù),重新裝入預(yù)制值,并使場正程計數(shù)器開始計數(shù),當(dāng)場正程計數(shù)器計到0,時,停止,重 新裝人挾制值,并使場同步頭計數(shù)器開始計數(shù)。這樣就可以形

5、成連續(xù)的,與行冋步信號滿足 2.1.3時序中所規(guī)定關(guān)系的場同步信號。顯示有效信號的生成1行有效起始計數(shù)器:決定從行正程開始到行有效開始的區(qū)間。與行正程同時開始減計 數(shù),計到'0'時,重裝預(yù)制值,并啟動行有效計數(shù)器。2行有效計時器:決定以行中有效的現(xiàn)實區(qū)間。在行有效起始計數(shù)器計到'0'后,開始滅 計數(shù),計到時,停止。3場有效信號的生成與行有效信號的生成類似,不同之處在于:含有效對時鐘計數(shù),而場 有效對行同步計數(shù),但是所用時鐘與行有效是一樣的。1.3 VGA視頻信號的輸岀視頻信號只有在行正程和場正程期間才可以輸岀,是具體的要求來確定視頻信號的有效 期,通常小于行正程

6、的時間?!毙?口 口 n 】 口 門 口 門ri 廠f譏小 _JvU fViA打圖1.2船用導(dǎo)航雷達(dá)總第88期12 2視頻存儲器接的實現(xiàn)2I視頻存儲器的時序*林有墳偉號&禾.毛該區(qū)»» (DRAM) I"圖2.】a)由于本設(shè)計采用的是動態(tài)存儲器,所以其刷新時序應(yīng)當(dāng)安排在顯示的無效區(qū),這樣時 序容易實現(xiàn)。b)在顯示的有效區(qū),將預(yù)先輸出到串行器的視頻數(shù)據(jù)在點時鐘的作用下輸岀到視頻D/A 電路,然后在顯示有效期輸出,應(yīng)當(dāng)保證將數(shù)據(jù)從存儲器轉(zhuǎn)移到串行器的速度足夠快。c)在刷新和加載顯示數(shù)據(jù)以外的時間里,可以向存儲器寫入顯示數(shù)據(jù)(圖形、字符等)。d)傳送區(qū)間在行周期

7、內(nèi)的位置:一行數(shù)據(jù)顯示的第一次數(shù)據(jù)傳送應(yīng)發(fā)生在顯示有效開始 之前,隨后的傳送根據(jù)串行器的大小和存儲器的速度來確定。一行傳送1次Cr圖2.2在傳送時間Tt內(nèi).應(yīng)當(dāng)完成整個以行的顯示數(shù)據(jù)的高速傳送,例如:一行要顯示1024點, 每點數(shù)據(jù)4比持,那么,在Ti內(nèi)應(yīng)當(dāng)完成512個字節(jié)的數(shù)據(jù)傳送,如果數(shù)據(jù)線寬度為16比特, 那么需要傳送256個地址的內(nèi)容,假設(shè)存儲器的訪問周期為20ns,那么Tt就應(yīng)當(dāng)大于等于 5.12uso有些情況下,例如串行器的深度不夠存儲一行的顯示數(shù)據(jù),或者存儲器的訪問速度較慢, 訪問時間太長,不能一次傳送一行上所有的數(shù)據(jù)。如圖2.3所示,當(dāng)傳送時間較長時(4Tt),已經(jīng)影響了顯示時

8、序,而采用多次傳送可以解決 這個問題,當(dāng)然也可以采用雙口 FIFO來解決這個問題;當(dāng)串行器的深度小的時候也只能這樣處理了 °I n1“1 ri ni5 V |1圖2.32.2視頻合成:在同步信號作用下產(chǎn)生的數(shù)字視頻時序,并根據(jù)堆終的信號要求進(jìn)行調(diào)整,以形成實際的 輸岀信號,這種調(diào)整通常包括用點時鐘對視頻信號以及視頻同步信號進(jìn)行同步緩沖和延時、脈 寬調(diào)整。2.3傳送期間地址的生成:在傳送數(shù)據(jù)的過程中需要從制定的存儲地址開始將連續(xù)數(shù)個存儲單元的數(shù)據(jù)傳送到 串行器中。這個地址是與當(dāng)前場中所掃描的行的位置相關(guān)的。存儲器的組織如下:一個存儲 單元對應(yīng)屏幕上一點.11 x9點陣顯示的存儲器組織。

9、圖2.4圖2.4所示的存儲器組織方式是可以的,但是通常存儲器中一行的存儲單元數(shù)通常是 2的指數(shù)關(guān)系,像2、4、8、16、128、512等等,這樣方便設(shè)計的實現(xiàn)°而且這種存儲結(jié)構(gòu)所對應(yīng) 船用導(dǎo)航雷達(dá)總第88覇_ 14 _的顯示畫而通常比顯示所能顯示的畫面大,顯示器上的顯示內(nèi)容就像是在大的畫面上用一個 取景框在其上選擇一個矩形的窗LI。下面的圖示就是這種存儲器的組織方式,我們以16x16 點的存儲器對應(yīng)12x9的顯示器作為例子,圖中存儲器結(jié)構(gòu)那部分中,小格子里的數(shù)是16進(jìn) 制的,代表存儲單元的地址c 12x9的屏幕顯示在存儲器(4.2)到(e.d)的位置開了一個窗. 每次傳送顯示數(shù)據(jù)吋是

10、從相應(yīng)行的第3列開始的,傳送12個存儲單元的內(nèi)容。存儲器的地 址排列實際上與5.3.1. 1圖中是一樣的都是線性排列的,這里只是為了解釋屏幕顯示內(nèi)容是 所存儲圖象的一個窗口而將其表示為2維陣列。圖2.5 一個存儲單元內(nèi)對應(yīng)多個點的數(shù)據(jù):這種悄況下,存儲器的整個組織結(jié)構(gòu)類似于上圖的描 述,不同之處在于屏幕上的一個點只對應(yīng)存儲單元的一部分,這就牽涉到如何對應(yīng)的問題。通 常存儲器的寬度為8bit、16bii、32bii等,屏幕上一點所對應(yīng)的數(shù)據(jù)寬度也有1 ibt、2bit、4bit、8bit 等其對應(yīng)方式一般有如下兩種我們以存儲器寬度為點對應(yīng)4bit為例:(GAP 元圖2.6屏第上的點hitbil

11、AFnt圖2.7當(dāng)一個存儲單元對應(yīng)多個點時繪制圖形時地址增懺以及屏蔽模式要相應(yīng)的調(diào)整。以 圖2.6為例,應(yīng)當(dāng)按照每個地址16bit來設(shè)置存儲器寬度,然后按每點4bii來進(jìn)行繪圖時的地 址和位屏蔽模式汁算,最后根據(jù)計算出的位屏蔽模式進(jìn)行擴展,在該地址上進(jìn)行相應(yīng)的存儲訪 問完成圖形的繪制。3實現(xiàn)本設(shè)計用XILINX公司的spartan?系列FPCA來實現(xiàn),采用VHDL語言作為輸入工具。本 文的創(chuàng)新點是用FPGA結(jié)合單片機實現(xiàn)了對VGA顯示器控制.使單片機可以在VGA接口的 顯示器上顯示圖形、文字信息。本設(shè)計克服了單片機控制系統(tǒng)的信息顯示功能薄弱的缺點,使 其在發(fā)揮控制功能優(yōu)勢的基礎(chǔ)上,還具有了實用的顯示功

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論