【正文】
五、主要參考文獻《CPLD數(shù)字電路設(shè)計》清華大學(xué)出版社《LD/FPGA應(yīng)用開發(fā)技術(shù)》人民郵電出版社《VHDL硬件描述語言與數(shù)字邏輯電路設(shè)計(第三版)》西安電子科技大學(xué)出版社《VHDL簡明教程》清華大學(xué)出版社《EDA技術(shù)及應(yīng)用》電子科技大學(xué)出版社《VHDL的編程實例(第四版)》電子工業(yè)出版社《VHDL設(shè)計實例與仿真》機械工業(yè)出版社《數(shù)字電子技術(shù)基礎(chǔ)(第五版)》高等教育出版 指導(dǎo)教師審閱簽字: 年 月 日附錄3 中期報告燕 山 大 學(xué)信息科學(xué)與工程學(xué)院本科畢業(yè)設(shè)計(論文)中期報告課題名稱。另外,EDA軟件的功能日益強大,原來功能比較單一的軟件,現(xiàn)在增加了很多新用途。如PCB的制作、電子設(shè)備的研制與生產(chǎn)、電路板的焊接、ASIC的制作過程等??蒲蟹矫嬷饕秒娐贩抡婀ぞ撸╩ultiSIM或PSPICE)進行電路設(shè)計與仿真;利用虛擬儀器進行產(chǎn)品測試;將CPLD/FPGA器件實際應(yīng)用到儀器設(shè)備中;從事PCB設(shè)計和ASIC設(shè)計等。主要是讓學(xué)生了解EDA的基本概念和基本原理、掌握用HDL語言編寫規(guī)范、掌握邏輯綜合的理論和算法、使用EDA工具進行電子電路課程的實驗驗證并從事簡單系統(tǒng)的設(shè)計。四、存在問題EDA在教學(xué)、科研、產(chǎn)品設(shè)計與制造等各方面都發(fā)揮著巨大的作用。目前,VHDL滲透了電子技術(shù)及其相關(guān)的各個工業(yè)領(lǐng)域,在工業(yè)設(shè)計中發(fā)揮著日益重要的作用。它經(jīng)過十幾年的發(fā)展、應(yīng)用和完善以其強大的系統(tǒng)描述能力、規(guī)范的程序設(shè)計結(jié)構(gòu)、靈活的語言表達風格和多層次的仿真測試手段在電子設(shè)計領(lǐng)域受到了普遍的認同和廣泛的接受成為現(xiàn)代EDA領(lǐng)域的首選硬件描述語言。VHDL是超高速集成電路硬件描述語言(Very High Speed Integrated Circuit Hardware Description Language)的縮寫在美國國防部的支持下于1985年正式推出是目前標準化程度最高的硬件描述語言。EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。這些器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。三、發(fā)展趨勢:20世紀90年代,國際上電子和計算機技術(shù)較先進的國家,一直在積極探索新的電子電路設(shè)計方法,并在設(shè)計方法、工具等方面進行了徹底的變革,取得了巨大成功。EDA市場日趨成熟,但我國的研發(fā)水平還很有限,需迎頭趕上。EDA技術(shù)的應(yīng)用廣泛,現(xiàn)在已涉及到各行各業(yè)。據(jù)最新統(tǒng)計顯示,中國和印度正在成為電子設(shè)計自動化領(lǐng)域發(fā)展最快的兩個市場,年復(fù)合增長率分別達到了50%和30%。中國華大集成電路設(shè)計中心,也提供IC設(shè)計軟件,但性能不是很強。但各國也正在努力開發(fā)相應(yīng)的工具。二、研究主要成果中國自1995年以來加速開發(fā)半導(dǎo)體產(chǎn)業(yè),先后建立了幾所設(shè)計中心,推動系列設(shè)計活動以應(yīng)對亞太地區(qū)其它EDA市場的競爭。在ASIC和PLD設(shè)計方面,向超高速、高密度、低功耗、低電壓方向發(fā)展。開展“數(shù)控化工程”和“數(shù)字化”工程。要大力推進制造業(yè)信息化,積極開展計算機輔助設(shè)計(CAD)、計算機輔助工程(CAE)、計算機輔助工藝(CAPP)、計算機機輔助制造(CAM)、產(chǎn)品數(shù)據(jù)管理(PDM)、制造資源計劃(MRPII)及企業(yè)資源管理(ERP)等。為了與臺灣和美國的設(shè)計工程師形成更有力的競爭,中國的設(shè)計隊伍有必要購入一些最新的EDA技術(shù)?!?7周,總結(jié)畢業(yè)設(shè)計體會,撰寫論文,準備答辯。~12周,根據(jù)各個模塊狀態(tài)機圖,編寫相應(yīng)的VHDL程序,并進行調(diào)試。搜集課題資料,消化理解相關(guān)內(nèi)容,確定設(shè)計方案,撰寫開題報告。在圖書館借閱、查閱相應(yīng)技術(shù)文獻、請教老師相關(guān)問題。方法:參考相應(yīng)設(shè)計文獻,計算機模擬。4,寫出各個模塊的VHDL編程,并逐一進行試驗箱調(diào)試。2,構(gòu)建設(shè)計出租車計價器的總體設(shè)計思路,形成大體模塊機構(gòu)圖。具體的基本要求如下:1.基本計費功能:,以半公里提前計費;2.白天/夜晚22:00-5:00 :起步費5元/2公里,3.帶數(shù)據(jù)輸出功能,便于和微型打印機通信;4.具有停車計費功能,;5.總里程超過12km,即2元/公里;三、研究步驟、方法及措施 本課題是通過硬件和軟件兩方面來實現(xiàn)多出租車計價器的設(shè)計,先在計算機上利用MUX+PLUS II進行VHDL編程和模擬仿真再在試驗箱上進行調(diào)試。在實際生活中出租車計價器具有很強的實用性,是加強行業(yè)管理、減少司機與乘客糾紛的重要系統(tǒng)設(shè)備,被廣泛應(yīng)用到出租車行業(yè),設(shè)計出租車計價器只需要用較少的硬件和適當?shù)能浖嗷ヅ浜暇涂梢?,通過軟件編程就可以完成計價器的更多附加功能,具有很大的應(yīng)用價值。附錄1 開題報告 燕 山 大 學(xué)本科畢業(yè)設(shè)計(論文)開題報告課題名稱:基于VHDL的出租車計價器學(xué)院(系):信息科學(xué)與工程學(xué)院年級專業(yè):學(xué)生姓名指導(dǎo)教師:完成日期:2012年3月一、綜述本課題國內(nèi)外研究動態(tài),說明選題的依據(jù)和意義VHDL硬件描述語言是一種用于電路設(shè)計的高級語言,它主要用來描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。在設(shè)計過程中,雖然遇到了很多問題,但是黃老師的精心指導(dǎo)和耐心的講解讓我獲益匪淺,而且在論文的撰寫過程中老師的細心深深的感染了我,才使的論文在多次修改下最終完成。在實驗箱上得到了程序正確的驗證,把輸入輸出端口在電路圖中分配好引腳,并在實驗箱把端口的線連好后,下載程序到實驗箱里,最后得到了正確的結(jié)果和所需要的功能。每個模塊均通過了功能仿真和時序仿真,生成了正確的波形圖,實現(xiàn)了其正確的邏輯功能。課題主要完成的任務(wù)如下:成功的完成了各個模塊的編寫:計費模塊、掃描模塊、譯碼顯示器、防抖模塊、分頻模塊和時間模塊等。結(jié)論本課題完成了基于VHDL的出租車計價器的整個設(shè)計,并在實驗箱上驗證了其功能。當計時到達五分鐘后,計費器將在原基礎(chǔ)上加1元。圖34 起步兩公里后狀態(tài)圖如圖35所示,可以看出圖中夜晚指示燈已經(jīng)亮起,表示已經(jīng)進入夜晚計費模式,圖中即為切換到計費模式后的圖片。圖中為初始計費5元。如圖33所示,為啟動出租車計價器后的狀態(tài),當將開始按鍵,打到高電平時,數(shù)碼管顯示自動切換到計費狀態(tài),圖中為白天初始計費狀態(tài),已經(jīng)顯示出白天起步費5元。圖32 計價器未工作狀態(tài)圖由圖中可以看出,計價器現(xiàn)在處于未工作狀態(tài),顯示的是數(shù)字電子鐘,它可以作為出租車上的正常電子鐘使用,試驗箱左側(cè)的夜晚指示燈并未亮起,顯示目前處于白天,只有當數(shù)字電子鐘處于22:00—5:。 EDA試驗箱仿真結(jié)果如圖32所示,為出租車計價器未運營期間,數(shù)碼管顯示出來的是正常的電子鐘,它們從左向右依次為小時、分鐘、秒的顯示。9. 20位條形發(fā)光二極管;高電平點亮。7. 20位的按鈕輸入;常態(tài)輸出為高電平,按下輸出為低電平;其上方是對應(yīng)的一排插座。5. 9個發(fā)光二極管,它們對應(yīng)的輸入端分別是右邊的RD1—3(紅色),GR1—3 (綠色),YE1—3(黃色) ;高電平點亮。3. 時鐘源及其變頻跳線()。其中,CLK1—2用于時鐘輸入,CLRn用于系統(tǒng)清零,OE1n用于系統(tǒng)“使能”控制。下圖31即為EDA試驗箱結(jié)構(gòu)圖:圖31 EDA試驗箱結(jié)構(gòu)圖1. 核心部件FLEX10K10(在系統(tǒng)可編程邏輯器件)。并通過波形仿真圖和程序代碼將它們實現(xiàn)功能的邏輯關(guān)系進行了詳盡的解說。波形仿真圖如圖225所示:圖225 QIEHUAN模塊波形仿真圖由圖中可以看出,當change被置為高電平時,q輸出m的值;當change被置為低電平時,q輸出n的值。波形仿真圖如圖223所示:圖223分位模塊波形仿真圖由圖中可以看出,輸入的34被分為了十位的3和個位的4,并分別輸出。 end if。 else numa=0。 elsif numin=10 then numa=1。 elsif numin=20 then numa=2。 elsif numin=30 then numa=3。 elsif numin=40 then numa=4。 elsif numin=50 then numa=5。 elsif numin=60 then numa=6。 elsif numin=70 then numa=7。 elsif numin=80 then numa=8。process(numin) begin if numin=90 then numa=9。程序中sel為掃描電路輸出的掃描信號。由于,計費顯示中,元的顯示要帶有小數(shù)點,如:,元。 end case。 when 9 =display=11110110。 when 7 =display=11100000。 when 5 =display=10110110。 when 3 =display=11110010。 when 1 =display=01100000。 end case。 when 9 =display=11110111。 when 7 =display=11100001。 when 5 =display=10110111。 when 3 =display=11110011。 when 1 =display=01100001。程序中,HH2為小時的十位和個位; MM2為分鐘的十位和個位; SS2 為秒的十位和個位;3 譯碼顯示模塊圖221 譯碼顯示部分模塊譯碼顯示模塊是受sel控制,將輸入的四位二進制碼,譯碼為可以驅(qū)動數(shù)碼管顯示的八位二進制碼。 when others=p1=0000。 when110=p1=H2。 when011=p1=S1。程序中,numa:計時顯示十位; numb:計時顯示個位; numc:里程顯示十位; numd:里程顯示個位; d1:計費顯示角位; d2:計費顯示個位; d3:計費顯示十位; d4:計費顯示百位;(2) XUAN1模塊 case sel is when000=p1=M1。 when others=p=0000。 when110=p=numc。 when100=p=numa。 when010=p=numd。相關(guān)程序代碼如下所示:(1) XUAN模塊 case sel is when000=p=numb。從而控制各個數(shù)值顯示的位置。位選sel為三位二進制代碼,可以對八個數(shù)碼管進行輪選。 end if。 else sel=sel+1。1 掃描模塊圖217 掃描模塊掃描模塊為,全局脈沖clk控制位選sel,讓sel進行循環(huán)選擇,從而達到數(shù)碼管掃描顯示的功能。即:試驗箱上電后,顯示的僅有時間鐘,其中小時占兩位,分鐘占兩位,秒占兩位;當出租車開始運行后,即出租車計價器開始啟動,開始按鍵start被置1后,數(shù)碼管即隨之切換到計價模式下:計時顯示占兩位,里程顯示占兩位,總費用顯示占四位。 譯碼顯示部分譯碼顯示部分是出租車最后一部分,它將前面所計算出來的,時間鐘、里程數(shù)、計時數(shù)、總費用都通過數(shù)碼管顯示出來。計費部分是在基本計費功能的基礎(chǔ)上,添加了各種計費模式,在一定的條件下,可以自動切換這種模式,來滿足各種條件下的計費要求。計費器接收暫停信號,即暫停按鍵pause被置1,然后切換到停車計時計費模式,這時半公里里程脈沖是失去作用的,計費器開始接收五分鐘計時脈沖信號,并以此脈沖信號驅(qū)動基本計費功能。3 五分鐘停車計時計費功能功能要求:停車5分鐘,按半公里計費。 end if。 else d2=d2+1。 else d3=d3+1。 else d4=d4+1。 if d