2022年EDA課設(shè)數(shù)字鐘設(shè)計_第1頁
2022年EDA課設(shè)數(shù)字鐘設(shè)計_第2頁
2022年EDA課設(shè)數(shù)字鐘設(shè)計_第3頁
2022年EDA課設(shè)數(shù)字鐘設(shè)計_第4頁
2022年EDA課設(shè)數(shù)字鐘設(shè)計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計 報 告課程名稱數(shù)字系統(tǒng)與邏輯設(shè)計課題名稱數(shù)字鐘設(shè)計專業(yè)通信工程班級學號姓名指導教師喬匯東胡瑛 譚小蘭2013 年7 月 7 日精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 1 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 1 頁,共 16 頁 - - - - - - - - -湖南工程學院課 程 設(shè) 計 任 務(wù) 書課程名稱數(shù)字系統(tǒng)與邏輯設(shè)計課題數(shù)字鐘設(shè)計專業(yè)班級通信工程 1101 班學生姓名學號指導老師審批喬匯東任務(wù)書下達日期2013

2、年 6 月 29 日任務(wù)完成日期2013 年 7 月 7 日精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 2 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 2 頁,共 16 頁 - - - - - - - - - 數(shù) 字 系 統(tǒng) 與 邏 輯 設(shè) 計 課 程 設(shè) 計 任 務(wù) 書一 、設(shè)計目的全面熟悉、掌握vhdl 語言基本知識,掌握利用vhdl 語言對常用的的組合邏輯電路和時序邏輯電路編程,把編程和實際結(jié)合起來, 熟悉編制和調(diào)試程序的技巧,掌握分析結(jié)果的

3、若干有效方法,進一步提高上機動手能力,培養(yǎng)使用設(shè)計綜合電路的能力,養(yǎng)成提供文檔資料的習慣和規(guī)范編程的思想。二、設(shè)計要求1、設(shè)計正確,方案合理。2、程序精煉,結(jié)構(gòu)清晰。3、設(shè)計報告 5000 字以上,含程序設(shè)計說明,用戶使用說明,源程序清單及程序框圖。4、上機演示。5、有詳細的文檔。文檔中包括設(shè)計思路、設(shè)計仿真程序、仿真結(jié)果及相應(yīng)的分析與結(jié)論。三、進度安排第 十 九 周星期一:課題講解,查閱資料星期二:總體設(shè)計,詳細設(shè)計星期三:編程,上機調(diào)試、修改程序星期四:上機調(diào)試、完善程序星期五:答辯星期六 -星期天:撰寫課程設(shè)計報告附:課程設(shè)計報告裝訂順序:封面、任務(wù)書、目錄、正文、評分、附件(a4 大小

4、的圖紙及程序清單) 。正文的格式 :一級標題用3 號黑體 ,二級標題用四號宋體加粗,正文用小四號宋體;行距為 22。正文的內(nèi)容 :一、課題的主要功能;二、課題的功能模塊的劃分(要求畫出模塊圖);三、主要功能的實現(xiàn);四、系統(tǒng)調(diào)試與仿真;五、總結(jié)與體會;六、附件(所有程序的原代碼,要求對程序?qū)懗霰匾淖⑨專黄?、評分表。精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 3 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 3 頁,共 16 頁 - - - - -

5、- - - -目錄1、 課題的主要功能 . 1 1.1 問題描述 . 1 1.2 功能要求 . 1 2、 課題的功能模塊的劃分. 1 3、 主要功能的實現(xiàn) . 2 3.1 秒定時器 . 2 3.2 分定時器 . 2 3.3 時定時器 . 3 3.4 報時模塊 . 3 3.5 分頻模塊 . 3 3.6 主計數(shù)器 . 4 4、 系統(tǒng)調(diào)試與仿真 . 5 4.1 計數(shù)模塊時序圖. 5 4.2 整點報時時序圖. 6 4.3 置數(shù)時序圖 . 6 4.4 引腳配置 . 6 5、 總結(jié)與體會 . 7 6、 附件 . 8 7、 評分表 . 12 精品學習資料 可選擇p d f - - - - - - - - -

6、 - - - - - 第 4 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 4 頁,共 16 頁 - - - - - - - - -1 1、課題的主要功能1.1 問題描述多功能數(shù)字鐘應(yīng)該具有的功能有:顯示時分秒、整點報時、小時和分鐘可調(diào)等基本功能。 首先要知道鐘表的工作機理, 整個鐘表的工作應(yīng)該是在1hz 信號的作用下進行,這樣每來一個時鐘信號,秒增加1 秒,當秒從59 秒跳轉(zhuǎn)到 00 秒時,分鐘增加1 分,同時當分鐘從59 分跳轉(zhuǎn)到 00 分時,小時增加 1 小時,但是需要注意的是,小時的范圍是

7、從023 時。1.2 功能要求在一個 1khz 系統(tǒng)時鐘的驅(qū)動下完成整個電路的輸出,電路要能正確的輸出時、分、秒,并且根據(jù)用戶的設(shè)定來改變時鐘和分鐘的值,這里假定有兩個按鍵輸入信號 s1,s0,可以分別用來改變時鐘和分鐘的值以達到時間設(shè)定的目的。 同時在整點時分都應(yīng)該輸出一個整點報時信號,信號規(guī)律為 1 秒鐘一個脈沖,持續(xù) 5 秒。2、課題的功能模塊的劃分1. 設(shè)計一個 60 進制的計數(shù)器構(gòu)成的具有清0、置數(shù)和計數(shù)功能秒計時器。2. 設(shè)計一個 60 進制的計數(shù)器構(gòu)成的具有清0、置數(shù)和計數(shù)功能分計時器。3. 設(shè)計一個 24 進制的計數(shù)器構(gòu)成的具有清0、置數(shù)和計數(shù)功能時計時器。4. 報時模塊是整點

8、的前十秒的響五下停五下。5. 時鐘分頻模塊使得1khz的系統(tǒng)時鐘分為 1hz的時鐘。6. 置數(shù)模塊是按下對應(yīng)的按鍵分鐘個位或小時的個位加一。7. 分別采用 60 進制、 24 進制、計數(shù)器構(gòu)成秒、分、時計時器。8. 計時模塊使用 if嵌套語句實現(xiàn)整個計時模塊的計時。下面是功能實現(xiàn)的模塊圖:精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 5 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 5 頁,共 16 頁 - - - - - - - - -2 系統(tǒng)時鐘1

9、khz分頻進程process com計數(shù)進程process reg控制單元復(fù)位信號reset分鐘調(diào)節(jié)load1小時調(diào)節(jié)load2整點報時信號alarm小時顯示24進制分鐘顯示60進制秒鐘顯示60進制動態(tài)掃描數(shù)碼管進程process sta選擇數(shù)碼管進程process smg0分配數(shù)碼管進程process smg1數(shù)字顯示進程process smg23、主要功能的實現(xiàn)3.1 秒定時器秒計時器是由一個60 進制的計數(shù)器構(gòu)成的, 具有清 0、置數(shù)和計數(shù)功能,在秒的個位從0 計數(shù)到 9 時秒的十位開始計數(shù)加一,十位計數(shù)到5 時清零。秒計數(shù)器個位09秒計數(shù)器十位05個位每計數(shù)到9十位加一,十位計數(shù)到5且

10、個位再次加到9時清零3.2 分定時器分定時器和秒定時器相似, 由一個 60進制的計數(shù)器構(gòu)成的, 具有清 0、置數(shù)和計數(shù)功能, 在分的個位從 0 計數(shù)到 9 時分的十位開始計數(shù)加一, 十位計數(shù)到 5 時清零。精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 6 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 6 頁,共 16 頁 - - - - - - - - -3 分計數(shù)器個位09分計數(shù)器十位05個位每計數(shù)到9十位加一,十位計數(shù)到5且個位再次加到9 時清零3

11、.3 時定時器時計時器則是由一個24 進制的計數(shù)器構(gòu)成的, 同樣具有清 0、置數(shù)和計數(shù)功能。其中的時鐘信號由上級分計時器控制。當計數(shù)到23時當分和秒為 59且個位為 3 時清零,重新開始計時。時計數(shù)器個位09時計數(shù)器十位02個位每計數(shù)到9 十位加一十位計數(shù)到2 時,分和秒分都為59,而且個位為3 時,在來一個脈沖清零 3.4 報時模塊整點報時的功能,其工作的狀態(tài)受到秒計數(shù)器所產(chǎn)生的進位信號控制著。整點的前十秒的響五下停五下, 即最后十秒中 1,3,5,7,9秒信號 alarm 為高電平, 2,4,6,8,0為低電平。下面為vhdl 代碼:if(miao1=0101 and fen0=1001

12、and fen1=0101) then if (miao0=0001 or miao0=0011 or miao0=0101 or miao0=0111 or miao0=1001) then speak=1; else speak=0; end if; end if;3.5 分頻模塊使得頻率為 1khz的系統(tǒng)分為 1hz的時鐘信號 clk ,根據(jù) clk 進行計時,下面為起分頻作用的vhdl 代碼。com:process(clk1) begin if clk1event and clk1=1 then if q999 then q=q+1; else q=0; 精品學習資料 可選擇p d f

13、 - - - - - - - - - - - - - - 第 7 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 7 頁,共 16 頁 - - - - - - - - -4 end if; if q500 then clk=1; else clk=0; end if; end if; end process com; 注:采用 1000 分頻,且波形為50%的占空比。 3.6 主計數(shù)器主計數(shù)器采用多重if 語句嵌套的方法進行秒,分,時的計時及之間的進位關(guān)系。用 vhdl 語言描述如下:if miao

14、0=1001 then miao0=0000; if miao1=0101 then miao1=0000; if fen0=1001 then fen0=0000; if fen1=0101 then fen1=0000; if shi0=1001 then shi0=0000; shi1=shi1+1; else shi0=shi0+1; end if; if shi1=0010 and shi0=0011then shi1=0000;shi0=0000; end if; else fen1=fen1+1; end if; else fen0=fen0+1; end if; else mi

15、ao1=miao1+1; end if; else miao0=miao0+1;注:miao0 和 miao1表示秒計時器的個位和十位,fen0 和 fen1 表示分計時器的個位和十位, shi0和 shi1 時計數(shù)器的個位和十位。在23 時 59 分 59 秒時刻清零。精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 8 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 8 頁,共 16 頁 - - - - - - - - -5 4、系統(tǒng)調(diào)試與仿真4.1 計

16、數(shù)模塊時序圖圖 4-1 注:為了方便測試程序的準確性,計時是否準確所以加入了6 個輸出端口, 分別為:hour1,hour0,min1,min0,sec1,sec0f分別表示時的十位和個位,分的十位和個位,秒的十位和個位。從圖4-1 的時序圖中可以看出時間到達23 時 59 分59 秒時,在下一個時鐘到來后各個位都被清零。圖 4-2 注: 此時序圖中可以看出在計時到1 時 59 分 59 秒后,再來一個時鐘沿,時間變?yōu)?2 時 0 分 0 秒。精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 9 頁,共 16 頁 - - - - - - - - -精品

17、學習資料 可選擇p d f - - - - - - - - - - - - - - 第 9 頁,共 16 頁 - - - - - - - - -6 4.2 整點報時時序圖圖 4-3注:此時序圖中的alarm 為整點報時信號,在整點前的最后十秒內(nèi),1,3,5,7,9秒為高電平 0,2,4,6,8為低電平。 4.3 置數(shù)時序圖圖 4-4 注:load1 為分鐘置數(shù), load2 為小時置數(shù)。 load1 為高電平時,每來一個時鐘沿分的個位加 1,load2 為高電平時每來一個時鐘沿時的個位加1. 從圖 4-4 中可以看出 load1 維持了 8 個高電平, load1 拉低后 min0 直接從 8

18、 開始計數(shù); load2持續(xù)了三個高電平,拉低后hour0 直接從 3 開始計數(shù)。4.4 引腳配置精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 10 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 10 頁,共 16 頁 - - - - - - - - -7 圖 4-5 5、總結(jié)與體會為期一周的 eda課程設(shè)計結(jié)束了,通的過這次課程設(shè)計,我對eda設(shè)計的知識有了更深一步的了解。通過這次的課程設(shè)計,我熟悉了quartusii,數(shù)碼管等,這為我以后的類似設(shè)計

19、打了一定的基礎(chǔ)。開始拿到這個課題時感覺沒有什么難的,實際操作起來才發(fā)現(xiàn)并不是想象的那么容易。首先必須搞清楚時鐘的運行方式,小時為 24 進制,分鐘為 60 進制,秒為 60 進制。通過這次課程設(shè)計, 我覺得做任務(wù)不能眉毛胡子一把抓,要學會模塊化實現(xiàn),最后把所有模塊整合起來,一步一步進行仿真,最后在到實驗箱上實現(xiàn)。通過這次實驗我又掌握了一門軟件操作,最重要的是通過這次實驗我將原先學的好多東西整合到一塊了, 不過也得了一些經(jīng)驗: 就是在做系統(tǒng)開始的時候先將系統(tǒng)的大體結(jié)構(gòu)規(guī)劃好, 然后再做每一個小模塊, 對模塊的中的每一個細節(jié)都要全面思考,將問題最好解決在小模塊中;遇到問題,要順藤摸瓜,分析清楚,不

20、可胡亂改動,每做一次改變都要有充分的理由;模塊化設(shè)計方法的優(yōu)點在于其簡潔性,但是在實驗設(shè)計中也發(fā)現(xiàn), 在實驗最終電路確定之前, 要盡量減少模塊重疊嵌套,因為在總的電路敲定之前,電路還不成熟,很多地方需要改進,如果在開始時就進行多層模塊化, 里層模塊電路的修改將影響其外層的全部電路,這樣就是牽一發(fā)動全身,很顯然,這樣將導致電路設(shè)計的低效,所以在設(shè)計過程中,一定要盡量減少超過兩層的模塊。編程過程中在加入置數(shù)信號時出現(xiàn)了錯誤,應(yīng)該把置數(shù)功能加在時鐘的下面,否則程序機會報錯。報警信號編寫時,應(yīng)該注意哪里該寫end,哪里該寫 or 。時鐘部分給的是1khz的系統(tǒng)時鐘,所以只有分頻后的時鐘才能用來計時。數(shù)

21、碼管部分的程序很好寫, 但是這里更重要的是準確的實現(xiàn),特別要注意引精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 11 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 11 頁,共 16 頁 - - - - - - - - -8 腳的配置要準確。在這次實驗中,我學會了如何使用quartus ii 軟件, 如何分層設(shè)計電路,如何編寫 vhdl 程序,如何對實驗程序進行編譯和仿真和對程序進行硬件測試。明白了一定要學會看開發(fā)板資料以清楚如何給程序的輸入輸出信號配

22、置管腳。這次實驗為我今后對eda 和 vhdl 語言的進一步學習奠定了更好的理論基礎(chǔ)和應(yīng)用基礎(chǔ)。6、附件library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity lujia is port(load2,load1,reset,clk1: in std_logic;-置位,復(fù)位,時鐘為輸入信號 alarm:out std_logic; -報警信號 display:out std_logic_vector(7 downto 0); - 用來選通數(shù)碼管 dout:out std_logic_v

23、ector(7 downto 0); - 用來顯示數(shù)字end lujia; architecture behav of lujia is signal q: integer range 0 to 999; signal clk: std_logic; -分頻后的時鐘,用來計時 signal num: std_logic_vector(2 downto 0); signal c: std_logic_vector(3 downto 0); signal miao0:std_logic_vector(3 downto 0); - 秒的個位 signal miao1:std_logic_vector

24、(3 downto 0); - 秒的十位 signal fen0:std_logic_vector(3 downto 0); - 分的個位 signal fen1:std_logic_vector(3 downto 0); - 分的十位 signal shi0:std_logic_vector(3 downto 0); -時的個位 signal shi1:std_logic_vector(3 downto 0); -時的十位 signal speak:std_logic; -報時信號精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 12 頁,共 16

25、頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 12 頁,共 16 頁 - - - - - - - - -9 begin reg:process (clk,reset,load1,load2) -計時進程begin if reset=0 then -復(fù)位信號 miao0=0000;miao1=0000;fen0=0000; shi0=0000;shi1=0000; fen1=0000; elsif clkevent and clk=1 then -時鐘上升沿到達 if(load1=0) then fen0=fen

26、0+1; -分置數(shù) elsif(load2=0) then shi0=shi0+1; -時置數(shù) else -計數(shù)部分 if miao0=1001 then miao0=0000; if miao1=0101 then miao1=0000; if fen0=1001 then fen0=0000; if fen1=0101 then fen1=0000; if shi0=1001 then shi0=0000; shi1=shi1+1; else shi0=shi0+1; end if; if shi1=0010 and shi0=0011then -到達 23 時 shi1=0000;shi

27、0=0000; -時的個位和十位清零 end if; else fen1=fen1+1; end if; else fen0=fen0+1; end if; else miao1=miao1+1; end if; else miao0=miao0+1; end if; end if; end if; 精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 13 頁,共 16 頁 - - - - - - - - -精品學習資料 可選擇p d f - - - - - - - - - - - - - - 第 13 頁,共 16 頁 - - - - - - - - -10 if(miao1=0101 and fen0=1001 and fen1=0101) then -整點報時(秒的十位和分的十位為5,分的個位為 9)if (miao0=0001

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論