多功能數(shù)字鐘的設(shè)計EDA課程設(shè)計_第1頁
多功能數(shù)字鐘的設(shè)計EDA課程設(shè)計_第2頁
多功能數(shù)字鐘的設(shè)計EDA課程設(shè)計_第3頁
多功能數(shù)字鐘的設(shè)計EDA課程設(shè)計_第4頁
多功能數(shù)字鐘的設(shè)計EDA課程設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2008級學(xué)生EDA課程設(shè)計 EDA課程設(shè)計報告書課題名稱 多功能數(shù)字鐘的設(shè)計姓 名王興俊學(xué) 號 081220138院 系物理與電信工程系專 業(yè)電子信息工程指導(dǎo)教師周來秀講師2011年 6月13日 一、 設(shè)計任務(wù)及要求:設(shè)計任務(wù):利用Quartus II軟件設(shè)計一個多功能數(shù)字鐘設(shè)計要求:所設(shè)計數(shù)字鐘是基于現(xiàn)實基礎(chǔ)上的多功能數(shù)字鐘,基本上能實現(xiàn)一般多功能數(shù)字鐘的功能,包括翻頁顯示時間和日期,調(diào)整時間及日期等等,利用Quartus II強大的編程功能以及完整的仿真系統(tǒng)進(jìn)行仿真設(shè)計,通過仿真設(shè)計校正達(dá)到設(shè)計要求 指導(dǎo)教師簽名: 年 月 日 二、指導(dǎo)教師評語:指導(dǎo)教師簽名: 年 月 日 三、成績驗收蓋

2、章 年 月 日 多功能數(shù)字鐘的設(shè)計王興?。ê铣鞘袑W(xué)院物理與電信工程系電子信息工程專業(yè),湖南益陽,41300)1設(shè)計目的 EDA是電子設(shè)計自動化的縮寫,在20世紀(jì)如年代初從計算機輔助設(shè)計、計算機輔助制造、計算機輔助測試和計算機輔助工程的概念發(fā)展而來的。傳統(tǒng)意義上或者狹義上的EDA技術(shù)是指可編程技術(shù),是以計算機為工具,融合了應(yīng)用電子技術(shù)、計算機技術(shù)、智能化技術(shù)的最新成果而開發(fā)出的電子EDA通用軟件包,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。利用

3、EDA技術(shù)進(jìn)行電子系統(tǒng)的設(shè)計,具有以下幾個特征:用軟件的方式設(shè)計硬件;用軟件方式設(shè)計的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)的開發(fā)軟件自動完成的;設(shè)計過程中可用有關(guān)軟件進(jìn)行各種仿真;系統(tǒng)可現(xiàn)場編程,在線升級;整個系統(tǒng)可集成在一個芯片上,體積小、功耗低、可靠性高。因此,EDA技術(shù)是現(xiàn)代電子設(shè)計的發(fā)展趨。利用EDA設(shè)計電子產(chǎn)品已經(jīng)是勢在必得了。2設(shè)計的主要內(nèi)容和要求 a.數(shù)字鐘能夠顯示年、月、天、小時、分鐘、秒。在數(shù)字鐘正常工作時可以 對數(shù)字鐘進(jìn)行快速校正,即撥動開關(guān)可對其進(jìn)行校正,在數(shù)字鐘正常工作 情況下,可以對其進(jìn)行不斷電復(fù)位,以使時、分、秒顯示回零。 b.對數(shù)字鐘采用層次化的方法進(jìn)行設(shè)計,要求設(shè)計層次

4、清晰、合理,構(gòu)成整個 設(shè)計的功能模塊既可采用原理圖輸入法實現(xiàn),也可采用文本輸入法實現(xiàn)。 c.對設(shè)計電路進(jìn)行功能仿真。 d.將仿真通過的邏輯電路下載到EDA實驗系統(tǒng),對其功能進(jìn)行驗證。3 整體設(shè)計方案基本設(shè)計方案:多功能數(shù)字鐘具有時間顯示和日歷顯示的功能,而時間模塊和日歷模塊有很多相似的地方,如果再進(jìn)行細(xì)分,則他們都著類似的模塊。所以采用模塊設(shè)計將大大簡化多功能數(shù)字鐘的程序設(shè)計。 圖3.1數(shù)字鐘整體設(shè)計方框圖4 硬件電路的設(shè)計4.1分頻器模塊的設(shè)計 圖4.1 分頻器模塊 因為試驗箱上晶振為20MHz,對于秒表的計時和進(jìn)行數(shù)碼管的動態(tài)掃描來說,頻率都太大了,因此要將20MHz進(jìn)行分頻處理,本次設(shè)計

5、將分成1KHz和1Hz兩個頻率。4.2計數(shù)器模塊的設(shè)計 圖4.2 計數(shù)器模塊 在數(shù)字鐘的設(shè)計中,計數(shù)器模塊是最常見和最為通用的,在本次設(shè)計中用到了模為24,60,99,12和31五個計數(shù)器。因為他們都是大同小異的,所以這里只列出了模為24的計數(shù)器(即小時計數(shù)器)4.3動態(tài)掃描模塊的設(shè)計 圖 4.3 動態(tài)顯示模塊 因為本次課程設(shè)計有多組數(shù)據(jù)要顯示,顯示方式為數(shù)碼管動態(tài)顯示。比之于靜態(tài)顯示,動態(tài)顯示有著不可替代的優(yōu)點:占用數(shù)據(jù)線少,功耗小等特點。4.4開關(guān)選擇模塊的設(shè)計 圖4.4開關(guān)選擇模塊 因為本次課程設(shè)計要實現(xiàn)兩個功能:時間顯示和日歷顯示,通過開關(guān)KEY來切換。4.5譯碼器模塊的設(shè)計 圖4.5

6、 譯碼器模塊 要想將時間或日歷在數(shù)碼管上顯示出來,譯碼器模塊必不可少,本次課程設(shè)計使用的事共陰數(shù)碼管。5 軟件設(shè)計 5.1分頻器模塊的設(shè)計的源程序LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FREQ IS PORT( CLK : IN STD_LOGIC; -時鐘輸入CLK1KHZ,CLK1HZ : BUFFER STD_LOGIC); END FREQ; ARCHITECTURE BEHAVE OF FREQ I

7、S SIGNAL CLK1MHZ : STD_LOGIC; -中轉(zhuǎn)量 SIGNAL Q:STD_LOGIC_VECTOR(4 DOWNTO 0);SIGNAL Q1:STD_LOGIC_VECTOR(9 DOWNTO 0); SIGNAL Q2:STD_LOGIC_VECTOR(9 DOWNTO 0);SIGNAL DIR_FLAG : STD_LOGIC; -方向標(biāo)志 BEGIN PROCESS(CLK) -把20MHZ的頻率變?yōu)?MHZBEGIN IF(CLKEVENT AND CLK=1)THEN IF(Q=10011)THEN Q=00000; CLK1MHZ=1; ELSE Q=Q+

8、1; CLK1MHZ=0; END IF; END IF; END PROCESS;PROCESS(CLK1MHZ) IS -把1MHZ的頻率變?yōu)?KHZBEGIN IF(CLK1MHZEVENT AND CLK1MHZ=1)THEN IF(Q1=1111111111)THEN Q1=0000000000; CLK1KHZ=1;ELSE Q1=Q1+1; CLK1KHZ=0; END IF; END IF; END PROCESS; PROCESS(CLK1KHZ) IS -把1KHZ的頻率變?yōu)?HZBEGIN IF(CLK1KHZEVENT AND CLK1KHZ=1)THEN IF(Q2=

9、1111111111)THEN Q2=0000000000; CLK1HZ=1; ELSE Q2=Q2+1; CLK1HZ=0; END IF; END IF; END PROCESS; END BEHAVE;5.2計數(shù)器模塊設(shè)計程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY HOUR IS -實體,定義輸入和輸出PORT(CLK,EN:IN STD_LOGIC; -輸入時鐘/高電平有效的使能信號CO :OUT STD_LOGIC; H1,H0:OUT STD_LOGIC_

10、VECTOR(3 DOWNTO 0); -時高位/低位END HOUR;ARCHITECTURE HOUR_ARC OF HOUR IS -結(jié)構(gòu)體BEGINPROCESS(CLK)VARIABLE CNT1,CNT0:STD_LOGIC_VECTOR(3 DOWNTO 0); -記數(shù)BEGINIF CLKEVENT AND CLK=1 THEN -上升沿觸發(fā)IF EN=1 THEN -同時“使能”為1IF CNT1=0010 AND CNT0=0011 THENCNT1:=0000; -高位/低位同時為0時CNT0:=0000;CO=1;ELSIF CNT01001 THEN -低位小于9時,

11、低位記數(shù)累加CNT0:=CNT0+1;CO =0;ELSECO =0;CNT0:=0000;CNT1:=CNT1+1; -高位記數(shù)累加END IF;END IF;END IF;H1=CNT1;H0=CNT0;END PROCESS;END HOUR_ARC;5.3動態(tài)掃描模塊設(shè)計程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY SELTIME IS PORT( CLK:IN STD_LOGIC; SEC1,SEC0,MIN1

12、,MIN0,H1,H0:IN STD_LOGIC_VECTOR(3 DOWNTO 0); DAOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SEL:OUT STD_LOGIC_VECTOR(2 DOWNTO 0); END SELTIME;ARCHITECTURE FUN OF SELTIME IS SIGNAL COUNT:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN SEL=111) THEN COUNT=000; ELSE COUNTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUT=SEC0; END

13、 CASE; END PROCESS;END FUN;5.4開關(guān)選擇模塊的設(shè)計程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SWITCH IS -實體,定義輸入和輸出 PORT(SECOND,DAY:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);SELS,SELD:IN STD_LOGIC_VECTOR(2 DOWNTO 0);SELOUT:OUT STD_LOGIC_VECTOR(2

14、 DOWNTO 0);KEY: IN STD_LOGIC);END SWITCH;ARCHITECTURE BEHAVE OF SWITCH IS -結(jié)構(gòu)體BEGINPROCESS(KEY)BEGINIF (KEY =1)THEN DOUT= SECOND;SELOUT = SELS;ELSEDOUT= DAY;SELOUT QQQQQQQQQQQ”“”“”“”完成節(jié)點選擇,點擊OK完成節(jié)點添加。選擇仿真時間:視電路實際要求確定仿真時間長短。在當(dāng)前主菜單“Edit”的下拉菜單中選中“End Time”,彈出結(jié)束時間對話框,在提示窗“Time”中輸入仿真結(jié)束時間,即可修改仿真時間。本次設(shè)計仿真時

15、間設(shè)置為1ms,用同樣的方法設(shè)置網(wǎng)格的大小,本次設(shè)計仿真設(shè)置為200ns。對有關(guān)的初值進(jìn)行設(shè)置,設(shè)置完成后保存文件后進(jìn)行波形仿真直到本實驗電路的仿真結(jié)果報告中無錯誤、無警告。最后仿真效果如圖6.2所示,圖6.1為電路原理圖。 圖6.1多功能數(shù)字鐘電路原理圖 圖6.2數(shù)字鐘仿真結(jié)果7 使用說明 本人設(shè)計的數(shù)字鐘電路主要由譯碼顯示器、“年”,“月”,“日”,“時”,“分“秒”計數(shù)器等組成,其中clk為晶振(頻率為20M)輸入端,clrsecond為秒清零開關(guān),setmimute為分鐘調(diào)節(jié)開關(guān),sethour為小時調(diào)節(jié)開關(guān),setday為日調(diào)節(jié)開關(guān),setmonth為月調(diào)節(jié)開關(guān),setyear為年調(diào)

16、節(jié)開關(guān),key為日歷顯示和時間顯示切換開關(guān)。dout6.0為數(shù)碼管段選輸出端,selout2.0為數(shù)碼位選輸出端。8 設(shè)計總結(jié)對于此次多功能數(shù)字鐘的設(shè)計,我感慨頗多。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,我學(xué)到很多很多的東西,同時不僅可以鞏固以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。在實驗中,通過查閱數(shù)字邏輯設(shè)計實驗與EDA技術(shù)、VHDL程序?qū)嵗认嚓P(guān)資料,不僅對這種語言更加了解,也提高了自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到了很多問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,對程序中出現(xiàn)的錯誤如何修改,怎樣生成元件還不是很熟為了這次課程設(shè)計,相當(dāng)于把以前所學(xué)過的知識重新溫習(xí)了一遍。在這兩個星期的學(xué)習(xí)中,通過自己的學(xué)習(xí)和與同學(xué)的討論,學(xué)會了如何來設(shè)計一個電路和元件有了深刻的理解,并鞏固了對Quartus軟件的應(yīng)用,也終于覺得平時所學(xué)的知識有了實用的價值,達(dá)到了理論與實際相結(jié)合的目的,不僅學(xué)到了不少知識,而且鍛煉了自己的能力,使自己對以后的路有了更加清楚的認(rèn)識,同時,對未來有了更多的信心,也感謝

溫馨提示

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

最新文檔

評論

0/150

提交評論