基于FPGA的點陣漢字顯示.doc_第1頁
基于FPGA的點陣漢字顯示.doc_第2頁
基于FPGA的點陣漢字顯示.doc_第3頁
基于FPGA的點陣漢字顯示.doc_第4頁
基于FPGA的點陣漢字顯示.doc_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于FPGA的點陣漢字顯示摘要:本課程設計主要研究基于FPGA的點陣漢字動態(tài)顯示。首先介紹了LED點陣顯示漢字的原理,然后通過編程控制可以顯示中英文字符、圖形及視頻動態(tài)圖形。LED顯示以其組構方式靈活、亮度高、技術成熟、成本低廉等特點在證券、運動場館及各種室內外顯示場合得到廣泛的應用。本實驗結合實例運用基于FPGA的VHDL語言編程使其循環(huán)顯示“武漢理工大學信息工程學院龐錦”這幾個字。論文描述了基于現(xiàn)場可編程門陣(FPGA)的硬件電路,以及點陣顯示漢字的原理;然后介紹在單個16X16 LED點陣上滾動漢字的原理;最后給出了描述其功能的VHDL語言程序設計方法。通過編程、調試、仿真、下載正確地實現(xiàn)了漢字滾動顯示掃描結果,其硬件系統(tǒng)的實驗驗證也獲得了與軟件模擬仿真結論相吻合的結果。關鍵詞:FPGA VHDL語言 點陣漢字顯示The dot matrix characters display based on FPGAAbstract: This course design is primary research based on VHDL of the dot-matrix characters displayed. Firstly introduces the principle of LED dot-matrix display characters, Then through the programming control can show Chinese and English characters, graphics and video dynamic graphics. LED displaywith itsgroupstructureflexible,high brightness,mature technologyand low cost characteristics widely used in thesecurities,sports venuesand a variety ofindoor and outdoorshow occasion. In this study,with examplesusingVHDL language programmingof FPGA-based make the cyclic display wu han university of science and technology information engineering college Pang Jin” the words. The papers first described based on field programmable gate array (FPGA) hardware circuit, as well as the principle character dot matrix display; and then in a single 16X16 LED scrolling LED dot matrix on the principles of Chinese characters; Finally, the VHDL description language program of its functions design. Through programming, debugging, simulation, download the correct character scroll achieved scan results, the experimental verification of its hardware and software are also obtained findings consistent with simulation results.Keywords: FPGA; VHDL language; Dot matrix characters display;一、引言隨著世界和我國經(jīng)濟的高速發(fā)展,在公共場所動態(tài)顯示信息已相當顯眼,利用LED點陣滾動顯示漢字的出現(xiàn)正好適應了這一市場需求,已經(jīng)成為信息傳播的一種重要手段。采用傳統(tǒng)方法設計的漢字滾動顯示器盡管有單片機軟件的支持較為靈活,但是由于受硬件資源的限制,未來對設計的變更和升級,總是難以避免要付出較多研發(fā)經(jīng)費和較長投放市場周期的代價。隨著電子設計自動化技術的進展,可編程FPGA器件進行系統(tǒng)芯片集成的新設計方法,也正在快速地取代基于PCB板的傳統(tǒng)設計方式。因此,本文主要闡述 VHDL語言實現(xiàn)在16*16點陣上的漢字滾動顯示問題。目前,國內從事LED顯示屏生產(chǎn)的企業(yè)眾多,同時,受到外資企業(yè)LED顯示屏價格過高的影響,在中國LED顯示屏市場上多以本土企業(yè)為主。目前,本土LED顯示屏生產(chǎn)企業(yè)除供應國內需求外,還不斷把產(chǎn)品出口到國外市場。因此,本設計的研究是很有必要的,之所以基于FPGA設計是因為現(xiàn)場可編程門陣列(FPGA)設計周期小,靈活度高,適合用于小批量系統(tǒng),提高系統(tǒng)的可靠性和集成度,并且采用編寫靈活的VHDL語言編寫主程序。二、FPGA與Quartus軟件的簡介1、可編程門陣列FPGAFPGA是現(xiàn)場可編程門陣列(Field Programmable Gate Array)的簡稱,與之相應的CPLD是復雜可編程邏輯器件(Complex Programmable Logic Device)的簡稱,兩者的功能基本相同,只是實現(xiàn)原理略有不同,有時可以忽略這兩者的區(qū)別,統(tǒng)稱為可編程邏輯器件或CPLD/PGFA。 FPGA具有掩膜可編程門陣列的通用結構,它由邏輯功能塊排成陣列,并由可編程的互連資源連接這些邏輯功能塊來實現(xiàn)不同的設計。FPGA一般由3種可編程電路和一個用于存放編程數(shù)據(jù)的靜態(tài)存儲器SRAM組成。這3種可編程電路是:可編程邏輯模塊(CLB-Configurable Logic Block)、輸入/輸出模塊(IOB-I/O Block)和互連資源(IRInterconnect Resource)。FPGA 的主要特點是: 寄存器數(shù)目多, 采用查找表計數(shù),適合時序邏輯設計。 但是互連復雜, 由于互連采用開關矩陣,因而使得延時估計往往不十分準確。FPGA 也有其自身的局限性, 其一就是器件規(guī)模的限制,其二就是單元延遲比較大。 所以, 在設計者選定某一FPGA器件后, 要求設計者對器件的結構、性能作深入的了解, 在體系結構設計時, 就必須考慮到器件本身的結構及性能, 盡可能使設計的結構滿足器件本身的要求. 這樣就增加了設計的難度。2、Quartus軟件的簡介QuartusII 是Altera 公司的第四代可編程邏輯器件開發(fā)軟件, 它除承接原來MAX+ PLUSII 軟件的全部設計功能和器件對象外, 還增加了許多新功能和新的FPGA 器件系列。QuartusII 軟件提供了一種與結構無關的全集成化環(huán)境, 將設計、綜合、布局和布線、系統(tǒng)的驗證都整合到一個無縫的環(huán)境中, 使設計者能方便地對Altera 公司的PLD 系列產(chǎn)品進行設計輸入、快速處理和器件編程。QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設計的復雜性、加快了設計速度。對第三方EDA工具的良好支持也使用戶可以在設計流程的各個階段使用熟悉的第三方EDA工具。三、點陣漢字顯示的設計1、系統(tǒng)設計思路根據(jù)系統(tǒng)設計的要求,設計主要由:時鐘模塊、分頻器模塊、計數(shù)器模塊、并置模塊、存儲器模塊等構成(如圖3.1所示)。其中時鐘模塊主要用于提供時鐘信號,讓電路工作。分頻器主要將時鐘進行分頻,產(chǎn)生比原來時鐘小得多的另一信號。 計數(shù)器模塊主要在時鐘的驅動下為存儲器提供掃描地址,實現(xiàn)對點陣模塊的控制。并置模塊主要用于將兩個時鐘信號并置,從而實現(xiàn)漢字間的循環(huán)顯示。存儲器模塊主要用存儲漢字的字型碼,可通過改變字型碼實現(xiàn)不同漢字的顯示。圖3.1 系統(tǒng)模塊圖2、點陣漢字的存儲和顯示模塊用動態(tài)分時掃描技術使LED點陣模塊顯示圖像,需要進行兩步工作。第一步是獲得數(shù)據(jù)并保存,即在存貯器中建立漢字數(shù)據(jù)庫。第二步是在掃描模塊的控制下,配合行掃描的次序正確地輸出這些數(shù)據(jù)。獲得圖像數(shù)據(jù)的步驟是,先將要顯示的每一幅圖像畫在一個如圖3-2所示的被分成1616共256個小方格的矩形框中,再在有筆劃下落處的小方格里填上“1”,無筆劃處填上“0”,這樣就形成了與這個漢字所對應的二進制數(shù)據(jù)在該矩形框上的分布,再將此分布關系以3216的數(shù)據(jù)結構組成64個字節(jié)的數(shù)據(jù),并保存在只讀存貯器ROM中。以這種方式將若干個漢字的數(shù)據(jù)貯存在存貯器內,就完成了圖像數(shù)據(jù)庫的建立工作。 如圖3.2所示為點陣模塊的實例,3.3所示為整體的點陣顯示模塊。圖3.2 點陣仿真模塊實例圖3.3 整體的點陣顯示模塊3、分頻電路模塊因為本試驗箱使用的時鐘頻率20MHZ,而我們的設計顯示漢字時需要分頻,這樣才能完整的把所需要的漢字顯示出來,也就是將20MHz時鐘信號分頻出1KHz, 1Hz的二種時鐘信號;(1)1Hz的時鐘信號主要作為所有漢字顯示的掃描調變頻率。(2)1KHz主要用作于每一個漢字所顯示的掃描頻率。1Hz的分頻模塊如圖3.4所示,1KHz的分頻模塊如圖3.5所示:圖3.4 1Hz分頻模塊 圖3.5 1KHz分頻模塊4、VHDL語言程序軟件設計4.1掃描頻率控制的部分關鍵程序p1:process( clk )-分頻器variable count1:integer range 0 to 10000;variable count2:integer range 0 to 20000000;beginif(clkevent and clk=1)thenif(count1=10000)thencount1:=00000;smclk=not smclk;else count1:=count1+1;end if;if(count2=20000000)thencount2:=00000000; if (on_off2=1)then number=number; elsif (on_off1=1)then number=0000; else number=number+1; end if; else count2:=count2+1;end if;end if;end process p1;sel=a;line0_15doutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdout=x2020;end case; end process p3;end ar_dianzhenxin1;4.3 漢字滾動速度控制的部分關鍵程序p2:process (smclk,on_off)beginif(on_off=1)thena=0000;elsif(smclkevent and smclk=1)thenif(a=1111)thena=0000;else a=a+1;end if;end if;end process p2;四、系統(tǒng)調試與仿真1、創(chuàng)建工程在Quartus II 中新建一個VHDL File文件,將VHDL代碼輸入這個文件,并保存到工作目錄,名為dianzhenxin1.vhd。利用new preject wizard 工具創(chuàng)建一個工程,工程名為dianzhenxin1,頂層文件實體名為dianzhenxin1,并將上面創(chuàng)建的dianzhenxin1.vhd文件加入到工程中。2、全程編譯設置好前面的內容之后,就可以進行編譯了。選擇Processing菜單中start compilation,在窗口的下方processing欄中顯示編譯信息。完成后在工程管理窗口左是角顯示了工程dianzhenxin1的層次結構和其中結構模塊耗用的邏輯宏單元數(shù)。此欄的右邊是編譯處理流程,包括數(shù)據(jù)網(wǎng)表建立、邏輯綜合、適配、配置文件裝配和時序分析等。3、管腳綁定軟件仿真實現(xiàn)之后,要進行硬件仿真,即硬件實現(xiàn)。硬件實現(xiàn)簡單明了,可以清楚的看到實驗的成功與否,而且真實可靠。管腳綁定可以實現(xiàn)硬件和軟件的完美結合,使實驗清楚明白。圖5.1為管腳綁定的大致圖形。圖5.1管腳綁定對應圖4、時序仿真新建一個矢量波形文件,同時打開波形編輯器。設置仿真時間為50us,保存波形文件為dianzhenxin1.vwf。仿真器參數(shù)設置。選擇菜單Assignment中的Settings,在Settings窗口下選擇Simulator,在右側的simulation mode項下選擇timing,即選擇時序仿真,并選擇仿真激勵文件名dianzhenxin1.vwf。選擇simulation options欄,確認選定simulation coverage reporting; 檢測Glitch detection 為1ns 寬度;選中Run simulation until all vector stimuli 全程仿真?,F(xiàn)在所有設置進行完畢,在菜單processing項下選擇start simulation,直到出現(xiàn)simulation was successful,仿真結束 。仿真文件simulation report 通常會自動彈出,否則選擇processingsimulation report 。仿真圖形如下:圖5.2 仿真波形輸出五、實驗總結通過對數(shù)字集成電路課程設計的學習,我對VHDL語言有了更加深刻的認識。VHDL是超高速集成電路的硬件描述語言,它能夠描述硬件的結構、行為與功能。另外,VHDL具有并發(fā)性,采用自上而下的結構式設計方法,適合大型設計工程的分工合作。在編寫程序的時候,我才發(fā)現(xiàn)能看懂程序和能自己寫程序是兩個完全不同的概念,自己一開始寫程序時,即便是一個很簡單的功能模塊,在編譯時也可能產(chǎn)生很多錯誤,在不斷的改錯過程中,自己對VHDL語言的語法結構有了深刻的理解,對編譯過程中常見的錯誤也有了全面的認識。通過這十三周的課程設計,我在熟悉了基于FPGA設計的同時,也學到了很多在學習課本知識時所體會不到的東西。完成此次設計后,我不僅能對Quartus II 開發(fā)仿真軟件熟練操作,能達到學以致用,同時還掌握

溫馨提示

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

評論

0/150

提交評論