版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、課程設計說明書1引言隨著科學技術的日益發(fā)展,電子計算機的出現(xiàn),使得人們的學習生活變得更加方便,而其中電子設計方面更是受益不淺。20世紀90年代,國際上電子和計算機技術較先進的國家,一直在積極探索新的電子電路設計方法,并在設計方法、工具等方面進行了徹底的變革,取得了巨大成功。EDA技術就是以計算機為工具,設計者在EDA軟件平臺上,用硬件描述語言VHDL完成設計文件,然后由計算機自動的完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。EDA設計可分為系統(tǒng)級、電路級和物理實現(xiàn)級。EDA技術的出現(xiàn),極大地提高了電路設計的效率和可操作性,減
2、輕了設計者的勞動強度。在電子技術設計領域,可編程邏輯器件(如CPLD、FPGA)的應用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設計帶來了極大的靈活性。這些器件可以通過軟件編程而對其硬件結構和工作方式進行產(chǎn)品重構,從而使得硬件的設計可以如同軟件設計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設計方法、設計進程和設計觀念,促進了EDA技術的迅速發(fā)展。EDA技術的應用引起電子產(chǎn)品及系統(tǒng)開發(fā)的革命性變革。同時減少了設計芯片的數(shù)量、縮小了體積、降低了功耗、提高了設計的靈活性、可靠性和可擴展性?,F(xiàn)在對EDA的概念或范疇用的很寬。包括在機械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學、軍事等各個領域,都
3、有EDA的應用。目前EDA技術已在各大公司、企事業(yè)單位和科研教學部門廣泛使用。例如在飛機制造過程中,從設計、性能測試及特性分析直到飛行模式,都可以設計到EDA技術。本文所指的EDA技術,主要針對電子電路設計、PCB設計和IC設計。2 VHDL/Quartus2簡介2.1 VHDL介紹在電子電路設計領域中,電子設計自動化(EDA)工具已成為主要的設計手段,而VHDL語言則是EDA的關鍵技術之一。VHDL是一種硬件描述語言,它可以對電子電路和系統(tǒng)的行為進行描述?;谶@種描述,結合相關的軟件工具,可以得到所期望的實際電路與系統(tǒng)。VHDL采用自頂向下的設計方法,即從系統(tǒng)總體要求出發(fā),自上而下地將設計任
4、務分解為不同的功能模塊,最后將各功能模塊連接形成頂層模塊,完成系統(tǒng)硬件的整體設計。電子設計自動化技術EDA的發(fā)展給電子系統(tǒng)的設計帶來了革命性的變化,EDA軟件設計工具,硬件描述語言,可編程邏輯器件(PLD)使得EDA技術的應用走向普及。CPLD是新型的可編程邏輯器件,采用CPLD進行產(chǎn)品開發(fā)可以靈活地進行模塊配置,大大縮短了產(chǎn)品開發(fā)周期,也有利于產(chǎn)品向小型化,集成化的方向發(fā)展。2.2 Quartus2介紹Quartus2, 在21世紀初推出,由著名的FPGA廠商Altera 公司提供。它提供了一個與結構無關的設計環(huán)境,使設計者能方便的進行設計輸入、快速編程和器件編程。在Quartus2中,可以
5、完成設計輸入、HDL綜合、布線布局(適配)、仿真、下載和硬件測試等流程。FPGA/CPLD開發(fā)集成環(huán)境,屬于平臺化設計工具,用戶可以在Quartus2中實現(xiàn)整個數(shù)字電路的FPGA設計流程。Quartus2提供了多平臺的設計環(huán)境,能滿足各種特定設計的需要,也是單芯片可編程系統(tǒng)設計的綜合環(huán)境和SOPC開發(fā)的基本設計工具,并為Altera DSP開發(fā)包進行系統(tǒng)模型設計提供了綜合環(huán)境。Quartus2設計工具內(nèi)部嵌有VHDL、Verilog邏輯綜合器。Quartus2也可利用第三方的綜合工具,例如:Leonardo Spectrum、Synplifiy Pro、FPGA Complier2,并能直接調(diào)
6、用這些工具。同樣,Quartus2具有仿真功能,同時也支持第三方的仿真工具,如:ModelSim。3智力競賽搶答器設計3.1設計內(nèi)容:(1)設計一個四組(人)參加的智力競賽搶答計時器,它具有四路搶答輸入,主持人按下復位鍵后,系統(tǒng)復位進入搶答狀態(tài),計時顯示初始值; (2)某組首先按下?lián)尨疰I,該路搶答信號,競賽搶答器能夠設別最先搶答的信號,鎖定該信號,同時揚聲器響起,參賽小組的序號在數(shù)碼管上顯示;(3)主持人對搶答結果進行確認,給出倒計時計數(shù)允許信號,開始回答問題,計時顯示器從初始值開始以秒為單位倒計時,計數(shù)至0時,停止計數(shù),揚聲器發(fā)出超時報警信號,以中止繼續(xù)回答問題;(4)參賽者在規(guī)定時間內(nèi)回答
7、完問題,主持人給出倒計時計數(shù)禁止信號,以免揚聲器鳴叫,按下復位鍵,又可開始新一輪的搶答;3.2功能分析搶答信號判別電路在系統(tǒng)復位后,對A,B,C,D四路搶答信號進行判別,輸出端A1D1與AD一一對應,優(yōu)勝者對應為“1”,其余為“0”,且將結果鎖存。完成搶答判別的同時,輸出端SET輸出有效信號,對揚聲器進行選通。分頻電路用于產(chǎn)生倒計時電路所需的周期為1s的時鐘脈沖,分頻系數(shù)視輸入時鐘clk的頻率而定。臺號顯示控制電路將輸入信號LIGHT接入LED數(shù)碼管對應電路,以驅動數(shù)碼管,顯示臺號。倒計時及時間顯示控制電路有stop信號控制,由復位信號RESET將答題時間作為初值給倒計時計數(shù)器;由計數(shù)允許信號
8、jishi啟動計數(shù)。輸出信號為count1,count2,music與music1,其中music與music1為蜂鳴器選通控制信號。揚聲器控制電路系統(tǒng)只在兩種情況下輸出驅動揚聲器的脈沖信號:一種是倒計時計數(shù)處于禁止計數(shù)狀態(tài),并且完成初始化,開始對搶答信號進行判決,當某參賽組搶先按下按鍵,系統(tǒng)在輸出該組臺號信息的同時,輸出脈沖信號;一種是確認優(yōu)先搶答的參賽組后,啟動倒計時計數(shù)器計數(shù),當計數(shù)到“0”時,輸出脈沖信號。3.3整體設計思想當主持人宣布開始搶答時,四個選手誰先按下他面前的控制開關,他的燈就會亮,同時會有警報聲響起,而且這時其他的人再怎么按,也就不會亮,說明已經(jīng)鎖住。當有一個指示燈亮了,
9、等待主持人確定,主持人確定以后計數(shù)器就開始從10開始倒計時,到0時還要警告聲,直到主持人按下復位鍵為止。在選手答題過程中,如果在規(guī)定時間內(nèi)答完,主持人按下暫停鍵,倒計時停止顯示當前時間,待主持人按下復位鍵以后開始下一輪搶答,這樣計數(shù)器開始工作就是在選手搶答以后在主持人的控制下工作。所以可以設四個人分別為輸入端A,B,C,D;因為四個輸入端在VHDL中,要求四個輸入端應該是相等優(yōu)先級別,但只要有一個輸入端接入高電平時,就給其他信號一個反饋,使得他們的輸入無效,及他們對應的指示燈不亮;所以我們可以設置并行語句,讓他們分為四個進程(process),同時也要求每個進程中都有反饋信號傳給其他進程語句中
10、,這樣就可以完成搶答器基礎部分。其次就是計數(shù)器部分,當有人開始進入答題部分,指示燈亮,同時警報器開始工作,當主持人確定以后計時開始并要求是倒計時方式用七段數(shù)碼管顯示出來,通過這些消息,我們可知,主持人確定鍵即是計數(shù)器開始倒計時的信號,本設計中采用了元件例化(component)語句,在搶答器中某個選手已經(jīng)開始回答了信號插口,給計數(shù)器中的置零輸入端,這樣就基本上完成了設計,計數(shù)器采用倒計時方式,實現(xiàn)方式也很簡單,只要給他們最初賦值為10,而后在每個上升沿來到減一,具體設計情況看程序設計部分。本設計由于蜂鳴器是在脈沖控制下才會發(fā)出明顯聲響,因此在此加了一個分頻器,具體看程序部分。3.4分頻模塊設計
11、此程序實現(xiàn)了64HZ的脈沖信號64分頻,得到1HZ的脈沖信號,給倒計時提供脈沖信號。if(RISING_EDGE(CLK)then temp:temp+1; if(temp=64 and ena='1')then temp:=0;其仿真圖如下圖所示:圖34脈沖信號仿真波形圖3.5復位模塊設計此程序將所有信號初始化,通過ean使數(shù)碼管也初始化為初值10。if (RESET='1')thenLIGHT<="1111110" SET<='0'SET<='0'A0<='0'B0&
12、lt;='0'C0<='0'D0<='0'ean<='1'其仿真圖如下圖所示:圖3-5復位仿真波形圖3.6搶答模塊設計begin A2<=not A1; B2<=not B1; C2<=not C1; D2<=not D1; L1:process (A0) begin A1<=(A0 and B2 and C2 and D2 ); end process L1; L2:process (B0) begin B1<=(B0 and A2 and C2 and D2 ); end
13、process L2; L3:process (C0) begin C1<=(C0 and A2 and B2 and D2 ); end process L3; L4:process (D0) begin D1<=(D0 and A2 and C2 and B2 ); end process L4;搶答模塊仿真圖如下圖所示:圖3-6搶答模塊仿真波形圖3.7倒計時模塊設計begin C1:process(SET,CLK,MUSIC1,ena) variable temp:integer range 0 to 255; begin if (SET='0')then M
14、USIC1<='0'HIGH<="0001"LOW<="0000" elsif(RISING_EDGE(CLK)then temp:=temp+1; if (temp=64 and ena='1')then temp:=0; if(LOW="0000")then LOW<="1001" if(HIGH="0000")then HIGH<="0001" else HIGH<=HIGH-1; end if; el
15、se LOW<=LOW-1; end if; end if; end if; if(HIGH="0000" and LOW="0000")then MUSIC1<=CLK; end if; end process C1;倒計時仿真圖如下圖所示:圖3-7-1倒計時為零時仿真波形圖圖3-7-2主持人按下暫停鍵仿真波形圖此程序主要功能是實現(xiàn)倒計時功能,當有人搶答以后蜂鳴器響起,在主持人確認以后開始倒計時10秒,如果在規(guī)定時間內(nèi)回答完畢,主持人則按下暫停鍵,停止計數(shù)顯示當前時間,如果超出規(guī)定時間則蜂鳴器響起,知道主持人按下復位鍵為止。所有信號初始化,
16、數(shù)碼管顯示10等待下一輪搶答??偨Y:由以上仿真圖可知,該設計基本實現(xiàn)了原先的設計要求,并將選手的序號用數(shù)碼管顯示出來。3.8引腳鎖定引腳鎖定如下圖:圖3-8引腳鎖定圖4 心得體會實踐是檢驗真理的唯一標準。為期幾天的課程設計在緊張的氛圍中,接近尾聲,時間不長,但是對于我們起到了很大幫助。這次的EDA課程設計,掌握了基本的編寫系統(tǒng)模塊的知識以及編譯仿真的操作,雖然其中也遇到了很多困難,但經(jīng)一次次的改進,最后成功后的喜悅溢于言表。理論要聯(lián)系實踐,當然實踐也離不開理論。日常的學習中,我們只掌握簡單的模塊代碼,當看到任務書時,開始覺得無從下手。在認真看完設計內(nèi)容后,明白了智能競賽搶答的整個流程。再根據(jù)流
17、程把各個模塊的輸入輸出,以及要實現(xiàn)的功能,需要用到的變量、信號做些整理,然后又通過上網(wǎng)以及查閱相關書籍,進行一遍一遍的整理、修改代碼,程序。模塊功能的實現(xiàn)并為易事。在設計VHDL語言編程的時候,總是不能完成硬件模塊的連接,編譯時總是有錯誤,在自己以及同學們的幫助下一遍一遍仔細檢查糾錯,將程序全部重新封裝,以及重新連接,最后通過了編譯。在仿真過程中,也出現(xiàn)了問題。倒計時模塊是以10秒倒計時的,在仿真過程中,在倒計時顯示到09秒后,數(shù)碼管不再繼續(xù)倒計時顯示。而后,又重新調(diào)整了程序,原來把COUT2只顯示了0和1兩個數(shù)字。后來添加了其它幾個數(shù)字后,數(shù)碼管終于可以從10倒計到0,并且到計到0后,警報聲
18、響起。由于一開始搶答模塊設計時,設計為哪位選手搶先按,他的指示燈就先亮。后來,仔細看設計內(nèi)容,要求為其序號在數(shù)碼管中顯示出來。所以,又重新將LIGHT進行了修改,最終完成了設計。通過這次課程設計,我們不但進一步掌握了數(shù)字電路設計的基礎知識以及一門專業(yè)仿真軟件的基本操作,還提高了自己的設計能力及動手操作能力,同時對于智能搶答器的設計有了深刻的認識,更讓我明白了凡事需要耐心,端正自己的態(tài)度。在此,感謝學校能夠為我們提供良好的教育平臺,感謝老師的淳淳教導,以及同學們的幫助。參考文獻1.Voknei A.Pedroni.VHDL數(shù)字電路設計教程.電子工業(yè)出版社,2008.52.潘松,黃繼業(yè).EDA技術
19、實用教程(第二版).科學出版社,2005.23.焦素敏.EDA應用技術.清華大學出版社,2002.44.曹昕燕,周鳳臣,聶春燕.EDA技術實驗與課程設計.清華大學出版社5.譚會生,張昌凡.EDA技術A.西安電子科技大學出版社附錄-頂層頭文件library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity aaa is port(A,B,C,D,CLK,RESET,jishi,stop:in std_logic; MUSIC,MUSIC0:out std_logic; COUT1:out std_log
20、ic_vector(6 downto 0); COUT2:out std_logic_vector(6 downto 0); LIGHT:out std_logic_vector(6 downto 0); end aaa; architecture aaa of aaa is component COUNTER is port(ean,SET,jishi,stop,CLK:in std_logic; MUSIC, MUSIC0:out std_logic; COUT1:out std_logic_vector(6 downto 0); COUT2:out std_logic_vector(6
21、downto 0); end component COUNTER; component qiangda is port(A,B,C,D,RESET:in std_logic; CLK:in std_logic; ean,SET:out std_logic; LIGHT:out std_logic_vector(6 downto 0); end component qiangda; signal ean,SET:std_logic; begin U0:COUNTER port map(ean,SET,jishi,STOP,CLK,MUSIC,MUSIC0,COUT1,COUT2); U1:qia
22、ngda port map (A,B,C,D,RESET,CLK,ean,SET,LIGHT); end aaa; -qiangdaqimokuaichengxu library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity qiangda is port(A,B,C,D,RESET:in std_logic; CLK:in std_logic; ean,SET:out std_logic; LIGHT:out std_logic_vector(6 downto 0); end qiangda;
23、architecture qiangda of qiangda is signal A0,B0,C0,D0:std_logic; signal A1,B1,C1,D1:std_logic; signal A2,B2,C2,D2:std_logic; begin A2<=not A1; B2<=not B1; C2<=not C1; D2<=not D1; L1:process (A0) -qiangda begin A1<=(A0 and B2 and C2 and D2 ); end process L1; L2:process (B0) begin B1<
24、;=(B0 and A2 and C2 and D2 ); end process L2; L3:process (C0) begin C1<=(C0 and A2 and B2 and D2 ); end process L3; L4:process (D0) begin D1<=(D0 and A2 and C2 and B2 ); end process L4; L5:process(A1,B1,C1,D1,A,B,C,D,RESET) begin if(RESET='1')then -fuwei LIGHT<="1111110" A
25、0<='0'B0<='0'C0<='0'D0<='0'ean<='1'SET<='0' else ean<='0' if(A='1')then A0<='1' end if; if(B='1')then B0<='1' end if; if(C='1')then C0<='1' end if; if(D='1')t
26、hen D0<='1' end if; if(A1='1')then LIGHT<="0110000" elsif(B1='1')then LIGHT<="1101101" elsif(C1='1')then LIGHT<="1111001" elsif(D1='1')then LIGHT<="0110011" else LIGHT<="1111110" end if; -qian
27、g da xiang guan deng SET<=(A1 or B1 or C1 or D1); end if; end process L5; end qiangda; -daojishimokuailibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity COUNTER is port(ean,SET,jishi,stop,CLK:in std_logic; MUSIC, MUSIC0:out std_logic; COUT1:out std_logic_vector(6 down
28、to 0); COUT2:out std_logic_vector(6 downto 0); end COUNTER; architecture COUNTER of COUNTER is signal MUSIC1,MUSIC2,ena,jishiqi,stop1:std_logic; signal HIGH:std_logic_vector(3 downto 0 ):="0001" signal LOW:std_logic_vector(3 downto 0 ):="0000" begin C1:process(SET,CLK,MUSIC1,ena)
29、 variable temp:integer range 0 to 255; begin if (SET='0')then MUSIC1<='0'HIGH<="0001"LOW<="0000" elsif(RISING_EDGE(CLK)then temp:=temp+1; if (temp=64 and ena='1')then temp:=0; if(LOW="0000")then LOW<="1001" if(HIGH="000
30、0")then HIGH<="0001" else HIGH<=HIGH-1; end if; else LOW<=LOW-1; end if; end if; end if; if(HIGH="0000" and LOW="0000")then MUSIC1<=CLK; end if; end process C1; C2:process(stop,jishi,SET,ean,HIGH,LOW) begin if(stop='1')then stop1<='1'
31、 if(stop1='1')then ena<='0' end if; end if; if(jishi='1' and SET='1')then ena<='1' end if; if(ean='1')then ena<='0'stop1<='0' end if; if(HIGH="0000" and LOW="0000")then ena<='0' end if; end pro
32、cess C2; C3:process(jishi,SET) begin if(jishi='1')then jishiqi<='1' end if; if(SET='0')then MUSIC2<='0'jishiqi<='0' else MUSIC2<=CLK; if(jishiqi='1')then MUSIC2<='0' end if; end if; end process C3; MUSIC<=MUSIC1; MUSIC0<=MUSIC2; process(LOW) begin case LOW is when "0000"=> COUT1 <="1111110" when "0001"=> COUT1 <="0110000" when "0010"=> COUT1 <="1101101" when "0011"=> CO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度遠程英語教育兼職外教合同3篇
- 二零二五年酒店員工福利待遇轉讓合同示例3篇
- 二零二五版寄賣合同范本:農(nóng)產(chǎn)品寄售協(xié)議書3篇
- 二零二五版植物營養(yǎng)肥料試驗與研究服務合同3篇
- 二零二五年度酒類批發(fā)市場租賃銷售合同2篇
- 二零二五年度耕地承包與農(nóng)村土地承包權登記發(fā)證合同2篇
- 二零二五年度紅色文化遺址保護與修復合同3篇
- 二零二五版躉購電合同:電力批發(fā)市場交易合同2篇
- 二零二五版高端社區(qū)地下車庫經(jīng)營權轉讓合同3篇
- 二零二五年度智能化辦公大樓安全防范系統(tǒng)合同2篇
- 【傳媒大學】2024年新營銷
- 乳腺癌的綜合治療及進展
- 【大學課件】基于BGP協(xié)議的IP黑名單分發(fā)系統(tǒng)
- 2025屆廣東省佛山市高三上學期普通高中教學質(zhì)量檢測(一模)英語試卷(無答案)
- 自身免疫性腦炎課件
- 人力資源管理各崗位工作職責
- 信陽農(nóng)林學院《新媒體傳播學》2023-2024學年第一學期期末試卷
- 2024建筑公司年終工作總結(32篇)
- 信息安全意識培訓課件
- 2024年項目投資計劃書(三篇)
- 配電安規(guī)課件
評論
0/150
提交評論