[EDA]電子時鐘設(shè)計及報告new_第1頁
[EDA]電子時鐘設(shè)計及報告new_第2頁
[EDA]電子時鐘設(shè)計及報告new_第3頁
[EDA]電子時鐘設(shè)計及報告new_第4頁
[EDA]電子時鐘設(shè)計及報告new_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于VHDL的多功能數(shù)字鐘設(shè)計報告題目:多功能數(shù)字鐘姓名:程勝歸學(xué)號:0304811指導(dǎo)老師:廖宇設(shè)計時間:2007-7-8一、 VHDL的發(fā)展硬件描述語言HDL是一種用形式化方法描述數(shù)字電路和系統(tǒng)的語言。利用這種語言,數(shù)字電路系統(tǒng)的設(shè)計可以從上層到下層(從抽象到具體)逐層描述自己的設(shè)計思想,用一系列分層次的模塊來表示極其復(fù)雜的數(shù)字系統(tǒng)。然后,利用電子設(shè)計自動化(EDA)工具,逐層進(jìn)行仿真驗證,再把其中需要變?yōu)閷嶋H電路的模塊組合,經(jīng)過自動綜合工具轉(zhuǎn)換到門級電路網(wǎng)表。接下去,再用專用集成電路ASIC或現(xiàn)場可編程門陣列FPGA自動布局布線工具,把網(wǎng)表轉(zhuǎn)換為要實現(xiàn)的具體電路布線結(jié)構(gòu)。目前,這種高層次

2、(high-level-design)的方法已被廣泛采用。據(jù)統(tǒng)計,目前在美國硅谷約有90%以上的ASIC和FPGA采用硬件描述語言進(jìn)行設(shè)計。早在1980年,因為美國軍事工業(yè)需要描述電子系統(tǒng)的方法,美國國防部開始進(jìn)行VHDL的開發(fā)。1987年,由IEEE(Institute of Electrical and Electro- nics Engineers)將VHDL制定為標(biāo)準(zhǔn)。參考手冊為IEEE VHDL語言參考手冊標(biāo)準(zhǔn)草案1076/B版,于1987年批準(zhǔn),稱為IEEE 1076-1987。應(yīng)當(dāng)注意,起初VHDL只是作為系統(tǒng)規(guī)范的一個標(biāo)準(zhǔn),而不是為設(shè)計而制定的。第二個版本是在1993年制定的,

3、稱為VHDL-93,增加了一些新的命令和屬性。雖然有“VHDL是一個4億美元的錯誤”這樣的說法,但VHDL畢竟是1995年以前唯一制訂為標(biāo)準(zhǔn)的硬件描述語言,這是它不爭的事實和優(yōu)勢;但同時它確實比較麻煩,而且其綜合庫至今也沒有標(biāo)準(zhǔn)化,不具有晶體管開關(guān)級的描述能力和模擬設(shè)計的描述能力。目前的看法是,對于特大型的系統(tǒng)級數(shù)字電路設(shè)計,VHDL是較為合適的。實質(zhì)上,在底層的VHDL設(shè)計環(huán)境是由Verilog HDL描述的器件庫支持的,因此,它們之間的互操作性十分重要。目前,Verilog和VDHL的兩個國際組織OVI、VI正在籌劃這一工作,準(zhǔn)備成立專門的工作組來協(xié)調(diào)VHDL和Verilog HDL語言的

4、互操作性。OVI也支持不需要翻譯,由VHDL到Verilog的自由表達(dá)。二、設(shè)計要求基本要求:1、24小時計數(shù)顯示;2、具有校時功能(時,分) ;附加要求:1、秒表功能(復(fù)位,計時);三、實驗程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CLOCK IS PORT ( CLK1:IN STD_LOGIC; CLK2:IN STD_LOGIC; R1:IN STD_LOGIC; R2:IN STD_LOGIC; scond:IN STD_LOGIC; HOUR:IN STD_LO

5、GIC; MINI:IN STD_LOGIC; RESET:IN STD_LOGIC; DOUT:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); CHOICE:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END CLOCK;ARCHITECTURE behav OF CLOCK IS SIGNAL LED7:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL SLIP:STD_LOGIC_VECTOR(2 DOWNTO 0); SIGNAL a,b,c,d,e,f,g,h:STD_LOGIC_VECTOR(3 DOWNTO 0);

6、BEGIN- PROCESS (CLK2) BEGIN IF CLK2EVENT AND CLK2=1 THEN IF SLIP111 THEN SLIP=SLIP+1; ELSE SLIP CHOICE=00000001;LED7 CHOICE=00000010;LED7 CHOICE=00000100;LED7 CHOICE=00001000;LED7 CHOICE=00010000;LED7 CHOICE=00100000;LED7 CHOICE=01000000;LED7 CHOICE=10000000;LED7CHOICE=00000001;LED7=a; END CASE; END

7、 IF; END PROCESS; PROCESS (CLK1) BEGIN IF CLK1EVENT AND CLK1=1 THEN IF a1001THEN a=a+1; ELSE b=b+1;a=0000; END IF; -0-a IF( a=1001and b=0101)then d=d+1;b=0000;a=0000; end if; IF c=1100THEN c=1101;f=1101; ELSE c=1100; f=1100; END IF; -2-c-f- IF d=1010THEN e=e+1;d=0000; END IF; -3-d IF( d=1001and e=01

8、01)then g=g+1;e=0000;d=0000;end if; IF g=1010THEN h=h+1;g=0000; END IF; -6-g IF (h=0010 and g=0011)THEN a=a+1;h=0000; END IF; -7-h-部分時間可調(diào)開始- IF RESET=1 THEN a=0000; b=0000; c=0000; d=0000; e=0000; f=0000; g=0000; h=0000; END IF; -復(fù)位鍵IF scond=1 THEN a=0000;b=0000; END IF;-精確調(diào)整秒清零 IF MINI=1THEN d=d+1;

9、END IF;-分鐘調(diào)整IF (d=1001 and e=0101)thend=0000;e=0000;g=g;END IF;-59分時小時不加1IF d=1010THEN e=e+1;d=0000; END IF;-分鐘不延時 IF HOUR=1THEN g1000THEN g=0000;h=h+1;END IF;-小時不延時 IF (g=0011 and h=0010)then g=0000;h=0000;END IF;-小時調(diào)整不延遲-部分時間可調(diào)結(jié)束-部分秒表計時開始- IF R1=1 THEN a=0000; b=0000; c=1100; d=0000; e=0000; f=110

10、0; g=0000; h=0000; END IF;-秒表復(fù)位IF R2=1 THEN a=a;else a DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT DOUT=0000000; END CASE; END PROCESS;END behav;四、 實驗仿真效果圖實驗程序通過編譯,無錯誤,設(shè)置CLK和CLK1的寬度為1輸入信號進(jìn)行仿真,得到仿真效果如下圖:五、實驗結(jié)果:1. 實現(xiàn)了基本要求:24小時計時;分鐘小時可調(diào);2. 并在基本要求的基礎(chǔ)上增加了復(fù)位,以及精確調(diào)整時的秒清零功能;3. 解決了調(diào)節(jié)時候的分鐘和小時進(jìn)

11、位時候的延遲現(xiàn)象;4. 分鐘調(diào)整時,當(dāng)調(diào)整至59時,此時的小時不增加,合理化設(shè)計;5. 簡單秒表功能:R1復(fù)位開始秒表,R2計時;以上實驗結(jié)果現(xiàn)象在實驗箱上正常演示,通過老師檢查!六.設(shè)計體會數(shù)字鐘的原有程序是老師編寫的,我只是在原有的基礎(chǔ)上加上了一些程序段實現(xiàn)了時鐘的可調(diào)和簡單的秒表功能,調(diào)整的過程當(dāng)中也發(fā)現(xiàn)不少問題,比如:進(jìn)位的時候有2秒的延遲,小時到達(dá)23的時候有跳轉(zhuǎn)錯誤的現(xiàn)象,通過解決每一個細(xì)節(jié)問題使我學(xué)到了不少東西,弄懂了硬件程序控制語言的基本原理,然后再來修改程序控制的功能就簡單多了,于是我稍做修改,增加了復(fù)位功能,需要精確調(diào)整時候的秒個位和十位的清零功能,當(dāng)我們調(diào)節(jié)時間的分鐘的時候,我們通常希望這個調(diào)節(jié)到59的時候小時不要加1,實際的電子手表也是如此,我就加上了一個句子來控制調(diào)整.秒表功能設(shè)計得很簡單,復(fù)位下來開始工作,簡單地計時,只能記下一個人的時間成績,R2可以的撥動可以繼續(xù)計時.使用秒表時的數(shù)字鐘功能不能恢復(fù),秒表使用完畢后回到數(shù)字鐘的功能時間不再正確,相當(dāng)于復(fù)位了數(shù)字鐘,這是此次設(shè)計的最大失敗的地方,曾請教過多位同學(xué)查詢過很多資料沒

溫馨提示

  • 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

提交評論