EDA課程設(shè)計(jì)實(shí)驗(yàn)電子秒表_第1頁(yè)
EDA課程設(shè)計(jì)實(shí)驗(yàn)電子秒表_第2頁(yè)
EDA課程設(shè)計(jì)實(shí)驗(yàn)電子秒表_第3頁(yè)
EDA課程設(shè)計(jì)實(shí)驗(yàn)電子秒表_第4頁(yè)
EDA課程設(shè)計(jì)實(shí)驗(yàn)電子秒表_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上目錄課程設(shè)計(jì)實(shí)驗(yàn)題目:電子秒表的設(shè)計(jì)1.【摘要】電子秒表是生活中大家都很熟悉的事物,在EDA設(shè)計(jì)中也是一個(gè)不錯(cuò)的選題。設(shè)計(jì)首先需要考慮秒表的整體構(gòu)成,主要由分頻器與計(jì)數(shù)器組成。通過(guò)計(jì)數(shù)器進(jìn)位端相聯(lián)系。設(shè)計(jì)好頂層原理圖后,需要用VHDL語(yǔ)言對(duì)各個(gè)模塊進(jìn)行行為描述,完成對(duì)各模塊的設(shè)計(jì)。這應(yīng)該屬于自定向下,模塊化的設(shè)計(jì)方法。2.【實(shí)驗(yàn)?zāi)康摹客瓿删哂卸嘤?jì)數(shù)功能的秒表,并可將結(jié)果逐一顯示在7段數(shù)碼管上,具體要求如下: (1)輸入時(shí)鐘10khz,采用Altera EP1T3C144C8 FPGA;(2)異步、同步復(fù)位,計(jì)時(shí)精度1ms,最大計(jì)時(shí)240秒;(3)至少對(duì)6個(gè)目標(biāo)計(jì)時(shí),并

2、可顯示于7段數(shù)碼管,秒表的顯示范圍是00:00:00-59:59:99;(4)可清零與復(fù)位;3.【實(shí)驗(yàn)原理】3.1秒表功能秒表的顯示范圍是00:00:00-59:59:99,顯示精度為1ms,可控的啟動(dòng)功能(通過(guò)計(jì)數(shù)器的cin端口來(lái)控制計(jì)數(shù)器的啟動(dòng),也即控制數(shù)字秒表的啟動(dòng))及數(shù)字秒表清零功能(通過(guò)控制計(jì)數(shù)器清零端來(lái)實(shí)現(xiàn),當(dāng)清零端為高電平時(shí),計(jì)數(shù)器清零,也即數(shù)字秒表清零,否則秒表正常計(jì)數(shù)),清零時(shí)蜂鳴器報(bào)警。3.2秒表設(shè)計(jì)結(jié)構(gòu)秒表的物理結(jié)構(gòu)比較簡(jiǎn)單,它主要由十進(jìn)制計(jì)數(shù)器、六進(jìn)制計(jì)數(shù)器、數(shù)據(jù)選擇器、顯示譯碼器蜂鳴器等組成。此外,秒表還需有一個(gè)啟動(dòng)信號(hào)、清零信號(hào)及報(bào)時(shí)信號(hào),以便實(shí)現(xiàn)對(duì)秒表的控制和有效

3、應(yīng)用(啟動(dòng)和清零信號(hào)及報(bào)時(shí)信號(hào)由使用者給出,設(shè)計(jì)時(shí)主要任務(wù)是將此外界信號(hào)的功能準(zhǔn)確的通過(guò)數(shù)字秒表體現(xiàn)出來(lái),也即,當(dāng)使用者給出啟動(dòng)信號(hào)時(shí)數(shù)字秒表能夠正常啟動(dòng),上面已經(jīng)給出,啟動(dòng)和清零的功能是通過(guò)將此信號(hào)送給計(jì)數(shù)器來(lái)實(shí)現(xiàn)的)。 3.3秒表設(shè)計(jì)思路 十進(jìn)制計(jì)數(shù)器clk端接石英晶體振蕩器,選擇振蕩頻率為1000HZ。則振蕩一秒鐘之后,十進(jìn)制計(jì)數(shù)器進(jìn)位輸出端輸出100個(gè)高電平信號(hào),每個(gè)高電平信號(hào)表示s,也即10ms。然后將10ms的信號(hào)接到下一個(gè)十進(jìn)制計(jì)數(shù)器的clk端,則10個(gè)此信號(hào)之后,輸出一個(gè)高電平信號(hào),也即每個(gè)高電平信號(hào)表示1010=100ms。依此類推,通過(guò)選擇不同的計(jì)數(shù)器,在進(jìn)位輸出端可分別得

4、到10ms、100ms、1s、10s等進(jìn)位信號(hào)。與此同時(shí),為了使計(jì)數(shù)器記錄的數(shù)字在七段顯示器上顯示出來(lái),計(jì)數(shù)器除了有進(jìn)位輸出端之外還應(yīng)該有BCD碼輸出端,以便連接顯示譯碼器。由于數(shù)字秒表有6塊七段顯示器,那么理應(yīng)要有6塊與之對(duì)應(yīng)的顯示譯碼器。但是在工程中,為了節(jié)約成本一般只用一塊顯示譯碼器,此譯碼器由控制器控制輸入(輸入信號(hào)為各個(gè)譯碼器的BCD碼輸出端),間接控制輸出。也就是說(shuō)數(shù)字秒表各個(gè)顯示器不是一直在顯示著,而是各個(gè)顯示器交替顯示,只是由于控制器掃描頻率足夠大,人眼分辨不出這種交替顯示,誤以為是一直顯示著。3.4系統(tǒng)組成框圖 系統(tǒng)組成框圖如圖3.1所示。數(shù)字秒表計(jì)時(shí)輸入石英晶體振蕩器計(jì)時(shí)電

5、路顯示電路分頻電路計(jì)數(shù)器六進(jìn)制計(jì)數(shù)器掃描電路七段譯碼器十進(jìn)制計(jì)數(shù)器圖3.1 系統(tǒng)組成框圖4.【實(shí)驗(yàn)步驟與內(nèi)容】4.1六進(jìn)制計(jì)數(shù)器將VHDL文本文件在Quartus上編譯仿真(為了仿真,需要將此VHDL文件設(shè)置為工程文件),仿真結(jié)果如下圖所示。然后新建block symbol file,接著選擇菜單filecreate/updatecreate symbol files for current file將VHDL文件轉(zhuǎn)換成symbol文件,以便在頂層文件設(shè)計(jì)中調(diào)用。轉(zhuǎn)換成功后要保存并命名(命名與VHDL文件命名規(guī)則相同,要與實(shí)體名保持一致)。六進(jìn)制計(jì)數(shù)器symbol文件如下圖所示,clk為時(shí)鐘信

6、號(hào)、clr為清零端(clr為高電平時(shí)計(jì)數(shù)器清零)、start為使能信號(hào)(start為1時(shí)計(jì)數(shù)器正常計(jì)數(shù),否則計(jì)數(shù)器不工作)、daout3.0BCD碼輸出端口、cout為進(jìn)位輸出端口。六進(jìn)制計(jì)數(shù)器VHDL語(yǔ)言描述詳見(jiàn)附件。cnt6波形仿真示意圖如下4.2 十進(jìn)制計(jì)數(shù)器將VHDL文本文件在Quartus上編譯仿真,仿真結(jié)果如圖2.4所示。然后按照上述步驟將VHDL文件轉(zhuǎn)換成symbol文件并保存。十進(jìn)制計(jì)數(shù)器symbol文件如下圖所示,端口功能描述參照六進(jìn)制計(jì)數(shù)器。十進(jìn)制計(jì)數(shù)器VHDL語(yǔ)言描述詳見(jiàn)附件。cnt10波形仿真示意圖如下4.3蜂鳴器控制電路將此VHDL文本文件在Quartus上編譯仿真,

7、仿真結(jié)果如圖2.6(表示若接通clk,則當(dāng)I為高電平且clk為上升沿時(shí)q輸出高電平,也即蜂鳴器響一聲,隨后當(dāng)下一個(gè)clk上升沿到來(lái),由于此時(shí)I為零,q輸出低電平,也即蜂鳴器在計(jì)數(shù)達(dá)到一小時(shí)時(shí)報(bào)時(shí)一聲)和下圖(表示若接通clk端,則每一次I輸入高電平,也即每當(dāng)計(jì)數(shù)器計(jì)到一小時(shí)那一刻q都對(duì)應(yīng)一個(gè)高電平,即每當(dāng)計(jì)數(shù)達(dá)到一小時(shí),都會(huì)報(bào)時(shí))所示。然后按照上述步驟將VHDL文件轉(zhuǎn)換成symbol文件并保存。蜂鳴器控制電路symbol文件如圖所示。蜂鳴器控制電路VHDL語(yǔ)言描述詳見(jiàn)附件。蜂鳴器仿真波形圖如下4.4 Pins/引腳綁定4.5頂層文件設(shè)計(jì)為了建立頂層文件調(diào)用子程序模塊,必須建立一個(gè)原理圖編輯窗口

8、。選擇菜單filesnewblock diagram/schematic file,然后將其設(shè)置為新的工程,并將所有的子程序添加到此工程中,然后保存并命名為Timer。建立工程后,在新打開(kāi)的原理圖編輯窗口雙擊鼠標(biāo),添加各個(gè)子模塊,然后將子模塊按照1.1中的設(shè)計(jì)思路連接起來(lái),得到數(shù)字秒表原理圖文件,如下圖所示。5.【實(shí)驗(yàn)箱操作效果】把Timer.sof文件下載到GW48/SOPC實(shí)驗(yàn)箱選擇usb-blaster(0),點(diǎn)擊start,開(kāi)始下載,等待Progress到達(dá)100%;選擇模式5鍵1為Start / Stop鍵2為 Res/復(fù)位clk與clk2時(shí)鐘頻率選擇clk選擇為16.0hz,clk

9、2選擇1024hz最終實(shí)驗(yàn)效果如下圖6.【實(shí)驗(yàn)心得和體會(huì)】通過(guò)這次設(shè)計(jì),首先把課堂上學(xué)習(xí)的硬件描述語(yǔ)言應(yīng)用到了實(shí)際,鞏固了已經(jīng)學(xué)到的東西,并對(duì)它有了更深層次的理解。理論應(yīng)用到實(shí)際總是能讓人學(xué)到很多。其次,實(shí)際操作讓我了解一個(gè)電子系統(tǒng)的實(shí)際開(kāi)發(fā)過(guò)程,這就是學(xué)到了實(shí)際操作方面的東西。還有,這個(gè)設(shè)計(jì)過(guò)程讓我體會(huì)到了模塊化設(shè)計(jì)法的優(yōu)勢(shì)。最后,在設(shè)計(jì)中遇到的各種問(wèn)題讓我產(chǎn)生很多思考,體會(huì)到依靠思考解決實(shí)際問(wèn)題的樂(lè)趣。最后想說(shuō)的是,這雖然是一個(gè)很簡(jiǎn)單的系統(tǒng),但是在設(shè)計(jì)過(guò)程中也稱得上困難重重,歷經(jīng)困惑。一個(gè)看上去挺簡(jiǎn)單的東西,要實(shí)現(xiàn)它卻是另一回事,會(huì)有很多想不到的困難。那么看上去就很難的東西,實(shí)現(xiàn)起來(lái)就更難

10、于上青天了。但是人們卻能把這樣的東西做出來(lái),比如計(jì)算機(jī)系統(tǒng)。這就是人類智慧和現(xiàn)代科技的偉力。7.【參考文獻(xiàn)】1 王金明 數(shù)字系統(tǒng)設(shè)計(jì)與VerilogHDL 電子工業(yè)出版社 2011.12 馬建國(guó) FPGA現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì) 清華大學(xué)出版社 2010.73 王城 AlteraFPGA/CPLD設(shè)計(jì)(基礎(chǔ)篇)人民郵電出版社 2005.114 李洪偉 基于QuartusII的FPGA/CPLD設(shè)計(jì)電子工業(yè)出版社 2006.85 杜慧敏 基于Verilog的FPGA設(shè)計(jì)基礎(chǔ) 西安電子科技大學(xué)出版2006.2附錄各個(gè)模塊的VHDL文件clkgen.VHDLIBRARY IEEE;USE IEEE.STD_

11、LOGIC_1164.ALL;ENTITY CLKGEN IS PORT (CLK :IN STD_LOGIC; NEWCLK : OUT STD_LOGIC);END ENTITY CLKGEN;ARCHITECTURE ART OF CLKGEN IS SIGNAL CNTER: INTEGER RANGE 0 TO 10#;BEGINPROCESS(CLK) ISBEGIN IF CLK' EVENT AND CLK='1'THEN IF CNTER=10#THEN CNTER<=0;ELSE CNTER<=CNTER+1; END IF; END I

12、F;end process;PROCESS(CNTER) ISBEGIN IF CNTER=10# THEN NEWCLK<='1' ELSE NEWCLK<='0' END IF;END PROCESS;END ARCHITECTURE ART;Cnt10.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 IS PORT (CLK,RST,EN : IN STD_LOGIC; CQ : OUT STD_LOGIC_VECT

13、OR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT10;ARCHITECTURE behav OF CNT10 ISBEGIN PROCESS(CLK, RST, EN) VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF RST = '1' THEN CQI := (OTHERS =>'0') ; ELSIF CLK'EVENT AND CLK='1' THEN IF EN = '1' THEN IF CQI <

14、; 9 THEN CQI := CQI + 1; COUT <= '0' ELSE CQI := (OTHERS =>'0'); COUT <= '1' END IF; END IF; END IF; CQ <= CQI; END PROCESS;END behav;Cnt6.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT6 IS PORT (CLK,RST,EN : IN STD_LOGIC; C

15、Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); COUT : OUT STD_LOGIC ); END CNT6;ARCHITECTURE behav OF CNT6 ISBEGIN PROCESS(CLK, RST, EN) VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF RST = '1' THEN CQI := (OTHERS =>'0') ; ELSIF CLK'EVENT AND CLK='1' THEN IF EN = '1&

16、#39; THEN IF CQI < 5 THEN CQI := CQI + 1; COUT <= '0' ELSE CQI := (OTHERS =>'0'); COUT <= '1' END IF; END IF; END IF; CQ <= CQI; END PROCESS;END behav;Beep.vhdLibrary ieee; Use ieee.std_logic_1164.all; Use ieee.std_logic_unsigned.all; Entity aa is Port( clk:in std_logic; beep:out std_logic); end aa; Architecture m1 of aa is signal beep_r:std_log

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論