彭若晨,閆 妍
(西北工業(yè)大學(xué) 陜西 西安 710072)
FPGA填補了數(shù)字系統(tǒng)設(shè)計的卡空白,是對微處理器的補充。盡管微處理器能用于許多場合,但是它們依靠軟件才能實現(xiàn)其功能,因此比起定制芯片,它們一般運行速度比較慢而且功耗大。同樣的,F(xiàn)PGA也不是定制芯片,它們無法像那些為某一應(yīng)用而設(shè)計的定制芯片那樣擅長完成特定功能。FPGA一般也比定制邏輯芯片的運行速度慢而且功耗大,同時相對較貴;所以人們認為定制芯片更便宜。然而,由于它們是標準期間,因而能夠彌補定制芯片的一些不足。從完成設(shè)計到取得一個可工作的芯片之間不用等待,可以吧程序?qū)懭隖PGA并立即進行測試;同種類的FPGA可以用于不同類型的設(shè)計中,以降低庫存費用。
根據(jù)以上設(shè)計背景,利用QuartusⅡ軟件編寫verilog HDL硬件描述語言程序以實現(xiàn)數(shù)碼管循環(huán)顯示學(xué)號以及根據(jù)鍵盤切換輸出波形并在VGA上顯示。
1)顯示學(xué)號
①采用數(shù)碼管顯示。
②循環(huán)顯示2個人的學(xué)號后四位。
2)根據(jù)鍵盤切換輸出波形
①按鍵盤一次,在VGA顯示輸出當前的溫度。
②按鍵盤兩次,在VGA顯示輸出當前的時間。
③按鍵盤三次,在VGA顯示輸出學(xué)生姓名。
用模塊PCF8591進行溫度采集,PCF8591資料如圖1所示。
本電路總共分為分頻模塊、PS/2鍵盤輸入模塊、字符碼轉(zhuǎn)換模塊、VGA驅(qū)動模塊。各模塊之間的關(guān)系如圖2所示。
圖1 PCF8591編碼圖Fig.1 PCF8591
圖2 各模塊關(guān)系圖Fig.2 The relationship between the various modules
1)顯示學(xué)號部分
只要將CLK信號分頻之后再送入數(shù)碼管即可顯示。如圖3所示。
2)鍵盤控制部分如圖4所示。
圖3 學(xué)號數(shù)碼管圖Fig.3 Student ID digital
圖4 電腦鍵盤接線圖Fig.4 Computer keyboard wiring
接口的6個腳中,接口示意圖如圖4所示。只有4個腳有意義,分別是:時鐘腳、數(shù)據(jù)腳、電源腳、電源地。其余為保留腳。PS/2靠系統(tǒng)的PS/2端口提供+5 V電源。這里需要用到的即是:時鐘腳和數(shù)據(jù)腳。這兩個腳都是集電極開路,所以必須接大阻值的上拉電阻。它們平時保持高電平,有輸出時才被拉到低電平,之后自動上浮到高電平。
此模塊的功能說明:當按下一個鍵時,F(xiàn)PGA在時鐘信號下接受來自PS/2鍵盤的數(shù)據(jù)(8個數(shù)據(jù)位),接收完畢后鎖存并轉(zhuǎn)化為十六進制數(shù)據(jù),例如4’ha。當按鍵放開時,發(fā)出信號change。這時開始識別按鍵,如果接收到8’d102,則表示接收到按鍵Backspace,則清空顯示數(shù)據(jù)??傮w來說,此部分分為接收數(shù)據(jù)模塊、數(shù)據(jù)判斷與鎖存模塊、鍵值轉(zhuǎn)化模塊。模塊電路圖如圖5所示。
圖5 模塊電路圖Fig.5 Module circuit diagram
3)VGA顯示部分
VGA時序控制模塊是整個顯示控制器的關(guān)鍵部分,最終的輸出信號行、場同步信號必須嚴格按照VGA時序標準產(chǎn)生相應(yīng)的脈沖信號。對于普通的VGA顯示器,其引出線的共含 5 個信號:G,R,B(三基色信號),HS(行同步信號)VS(場同步信號)。在5個信號時序驅(qū)動時,VGA顯示器要嚴格遵循“VGA 工業(yè)標準”, 即 640×480×25 MHz模式或 800×600×40 MHz模式,本次字符顯示試驗采用800×600×40 MHz模式。VGA接頭焊接方法如圖6所示。
VGA顯示模塊如下
1)顯示溫度
圖6 VGA接頭焊接方法圖Fig.6 VGA connector welding method
溫度要用PCF8591進行采集,采集到的溫度進行AD轉(zhuǎn)換后經(jīng)選擇通道送入VGA控制電路,進而實現(xiàn)VGA顯示溫度。溫度模塊電路圖如圖7所示。
圖7 溫度模塊電路圖Fig.7 Temperature module circuit diagram
2)顯示時間
這實際上是一個計數(shù)器。CLK被分頻后用來計數(shù),并且數(shù)據(jù)要經(jīng)過寄存器寄存下來才能夠被送入VGA控制模塊。
時間模塊電路圖如圖8所示。
3)顯示姓名模塊電路圖如圖9所示。
圖8 時間模塊電路圖Fig.8 Time module circuit diagram
圖9 顯示姓名模塊電路圖Fig.9 Shows the name of the module circuit diagram
1)運行Quartus II軟件,新建工程和命名頂層文件。
2)建立文件Verilog HDL File。命名為ps2.v。在文件中寫入程序,保存,編譯。
3)分配管腳。保存,編譯。
4)觀察數(shù)碼管的學(xué)號顯示
5)在鍵盤上分別輸入1、2、3,觀察VGA顯示屏的變化
6)若不相同或不完全相同,則分模塊調(diào)試。
調(diào)試現(xiàn)象:
1)分別輸入 1、2、3, VGA 均正確顯示。
2)輸入其他的鍵值,VGA顯示0。
3)數(shù)碼管循環(huán)顯示學(xué)號后四位。
通過本次課程設(shè)計,對FPGA有了進一步的了解,雖然只做了一些最底層、最基本的設(shè)計,也只接觸了那么一些小小的內(nèi)容,但通過整個設(shè)計過程了解了FPGA的強大功能,認識了一些單元的工作原理。
多模式顯示器在VGA上顯示不同的內(nèi)容,在了解結(jié)構(gòu)和原理后對FPGA器件設(shè)計數(shù)字邏輯系統(tǒng)的方法和流程進行了討論。傳統(tǒng)的自下而上的設(shè)計方法已經(jīng)取代當今技術(shù)的發(fā)展,不能滿足大規(guī)模復(fù)雜電路[8]設(shè)計的需求,取而代之的是自上而下的設(shè)計。硬件描述語言采用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,用于描述大規(guī)模的電子系統(tǒng)的設(shè)計尤為方便。
[1]楊海鋼,孫嘉斌,王慰.FPGA器件設(shè)計技術(shù)發(fā)展綜述[J].電子與信息學(xué)報,2010, 32(3):714-727.YANG Hai-gang,SUN Jia-bin,WANG Wei.Summary of development of design technology FPGA devices[J].Electronics&Information Technology,2010,32(3):714-727.
[2]羅萍,李肇基,甄少偉.一種基于負載狀態(tài)的分段式PSM調(diào)制模式[J].電工技術(shù)學(xué)報,2006(21):101-105.LUO Ping,LI Zhao-ji,ZHEN Shao-wei.PSM modulation mode segmented based on the status of load[J].China Electrotechnical Society,2006(21):101-105.
[3]何學(xué)宇.一種電流模式PWM開關(guān)電源芯片的研究與設(shè)計[D].沈陽:遼寧大學(xué),2011.
[4]王紅,彭亮,于宗光.FPGA現(xiàn)狀與發(fā)展趨勢[J].電子與封裝,2007,7(7):32-37.WANG Hong,PENG Liang,YU Zong-guang.FPGA status quo and development trend[J].Electronics and Packaging,2007,7(7):32-37.
[5]熊文彬,蔣泉,曲建軍,等.基于FPGA實現(xiàn)的視頻顯示系統(tǒng)[J].液晶與顯示,2011,26(1):92-95.XIONG Wen-bin,JIANG Quan,QU Jiang-jun,et al.FPGA-based realization of video display system[J].LCD display,2011,26 (1):92-95.
[6]余紅娟,潘松.FPGA技術(shù)的應(yīng)用與發(fā)展[J].杭州電子科技大學(xué)學(xué)報,2006,26(3):17-20.YU Hong-juan,PAN Song.Applications with FPGA technology[J].Hangzhou University of Electronic Science and Technology,2006,26(3):17-20.
[7]劉國棟,陳伯孝,陳多芳.FFT處理器的FPGA設(shè)計[J].航空計算技術(shù),2004,34(3):101-104.LIU Guo-dong,CHEN Bo-xiao,CHEN Duo-fen.FFT processor, FPGA Design[J].Aeronautical Computing Technique,2004,34(3):101-104.
[8]宋巖,杜繼業(yè),宋顧周,等.像增強器程控電路設(shè)計[J].現(xiàn)代應(yīng)用物理,2013(4):356-360.SONG Yan,DU Ji-ye,SONG Gu-zhou,et al.Design of as intensifier program control circuit[J].Modern Applied Physics,2013(4):356-360.