資源描述:
《EDA-數(shù)字秒表設(shè)計(jì).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、電子設(shè)計(jì)自動(dòng)化大作業(yè)題目數(shù)字秒表設(shè)計(jì)學(xué)院控制科學(xué)與工程學(xué)院班級(jí)自動(dòng)化0803姓名學(xué)號(hào)二OO一一年五月十二日題目:數(shù)字秒表的設(shè)計(jì)一、設(shè)計(jì)要求:(1)數(shù)字秒表的計(jì)時(shí)精度是10ms;(2)復(fù)位開關(guān)可以在任何情況下使用,計(jì)時(shí)在計(jì)時(shí)過程中,只要按一下復(fù)位開關(guān),計(jì)時(shí)器就清零,并做好下次計(jì)時(shí)的準(zhǔn)備;(3)具有啟/停開關(guān),即按一下啟/停開關(guān),啟動(dòng)計(jì)時(shí)器開始計(jì)時(shí),再按一下啟/停開關(guān)則停止計(jì)時(shí)。(4)數(shù)字秒表的計(jì)時(shí)范圍是0秒~59分59.99秒,顯示的最長時(shí)間為59分59秒二、總體設(shè)計(jì):1、總體結(jié)構(gòu)圖通過3-8譯碼器控制8位數(shù)碼管的亮滅Sel模塊選擇輸入信號(hào)控制選擇模塊輸出的數(shù)據(jù)時(shí)鐘的分秒和毫秒輸入到CHOI
2、CE中通過數(shù)據(jù)的編碼控制數(shù)碼管的顯示2、各模塊功能1)SEL模塊:將掃描信號(hào)輸給選擇(CHOICE)模塊2)選擇模塊:按掃描信號(hào)的指定選擇輸出3)3-8譯碼模塊:通過SEL給的信號(hào)來控制8位數(shù)碼管位的亮滅4)計(jì)時(shí)模塊:分別對(duì)毫秒,秒,分計(jì)時(shí)5)顯示模塊:通過CHOICE模塊的輸出信號(hào)來控制三、單元模塊設(shè)計(jì)1、模塊名:sel模塊設(shè)計(jì)(1)模塊功能:CLK為掃描時(shí)鐘脈沖,SELOUT端不停的發(fā)出掃描到的信號(hào)(2)端口定義:CLK為信號(hào)輸入端SELOUT[2..0]為選擇到的信號(hào)輸出(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.
3、std_logic_unsigned.all;entityselisport(clk:instd_logic;selout:outstd_logic_vector(2downto0));endsel;architectureoneofselissignalcount:std_logic_vector(2downto0);beginprocess(clk)beginifclk'eventandclk='1'thenif(count="101")thencount<="000";elsecount<=count+1;endif;endif;endprocess;selout<=count;en
4、done;(4)仿真結(jié)果說明:來一個(gè)上升沿,SELOUT的值增1,可以證明模塊是正確的。2、模塊名:選擇模塊設(shè)計(jì)(1)模塊功能:按掃描信號(hào)的指定選擇輸出(2)端口定義:a,b,c為控制信號(hào);data1[3..0],data2[3..0],data3[3..0],data4[3..0],data5[3..0],data6[3..0]分別是毫秒的低位,毫秒的高位,秒的低位,秒的高位,分的低位,分的高位的數(shù)據(jù)值;ch_out[3..0]為選擇輸出端。(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigne
5、d.all;entitychoiceisport(a,b,c:instd_logic;data1,data2,data3,data4,data5,data6:instd_logic_vector(3downto0);ch_out:outstd_logic_vector(3downto0));endchoice;architecturebehaveofchoiceissignalch:std_logic_vector(2downto0);beginch(2)<=c;ch(1)<=b;ch(0)<=a;process(ch)begincasechiswhen"000"=>ch_out<=dat
6、a1;when"001"=>ch_out<=data2;when"010"=>ch_out<=data3;when"011"=>ch_out<=data4;when"100"=>ch_out<=data5;when"101"=>ch_out<=data6;whenothers=>null;endcase;endprocess;endbehave;(4)仿真結(jié)果說明:abc的值遞增,ch_out選擇輸出data1,data2,data3,data4,data5,data6的值,證明模塊是正確的3、模塊名:3-8譯碼模塊設(shè)計(jì)(1)模塊功能:通過SEL給的信號(hào)來控制8位數(shù)碼管位的亮滅。(2)端口
7、定義:輸入端SEL[2..0]值大小來選擇輸出Q的值輸出端Q[7..0]來控制燈哪位亮(3)VHDL源程序LIBRARYieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;ENTITYdecode3_8ISPORT(SEL:INstd_logic_vector(2downto0);Q:OUTstd_logic_vector(7downto0));E