EDA快速校時數(shù)字鐘程序文檔.docx

EDA快速校時數(shù)字鐘程序文檔.docx

ID:62053172

大小:101.35 KB

頁數(shù):7頁

時間:2021-04-16

EDA快速校時數(shù)字鐘程序文檔.docx_第1頁
EDA快速校時數(shù)字鐘程序文檔.docx_第2頁
EDA快速校時數(shù)字鐘程序文檔.docx_第3頁
EDA快速校時數(shù)字鐘程序文檔.docx_第4頁
EDA快速校時數(shù)字鐘程序文檔.docx_第5頁
資源描述:

《EDA快速校時數(shù)字鐘程序文檔.docx》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、由于要實現(xiàn)快速調(diào)時,所以這就要求在“計數(shù)”時用一個時鐘頻率,在“較時”時有需要一個頻率,這就會出現(xiàn)一個問題,那就是:一個進程(即process)中,不能出現(xiàn)兩個時鐘,否則就會出現(xiàn)error(100028)……,所以如果“較時”和“計數(shù)”在一個process時,就需要避免在一個進程中采用兩個時鐘輸入(即將兩個時鐘頻率作為敏感信號),所以這也就是這里需要解決的問題了,考慮到計數(shù)和調(diào)時不是同時進行的,因此可以考慮在一個進程中,采用一個時鐘輸入進行類似于分時復(fù)用的原理,即計數(shù)時clk信號輸出計數(shù)頻率,校時時輸出計數(shù)頻率頻率。而在設(shè)計時由于采用了EN信號進行計數(shù)和校時的

2、切換(即EN為1時計數(shù),為0時校時),因此可以利用EN信號作為時鐘分頻模塊(即下圖中的CLK_TWO模塊)中的CLK_low輸出的高低頻切換。具體程序如下(主要看一下CLK_TWO模塊中的紅色程序部分即能明白)。頂層原理圖CLK_TWO模塊程序LIBRARYieee;USEieee.std_logic_1164.all;USEieee.std_logic_unsigned.all;ENTITYCLK_TWOISPORT(CLK,CHAG:INSTD_LOGIC;CLK_low,CLK_high:OUTSTD_LOGIC);ENDCLK_TWO;ARCHITEC

3、TUREBEHAVOFCLK_TWOISBEGINPROCESS(CLK,CHAG)VARIABLEA,B:INTEGER:=0;VARIABLEH,L:STD_LOGIC;BEGINIFCLK'EVENTANDCLK='1'THENIFA<10000THENA:=A+1;IFA<5000THENH:='0';ELSEH:='1';ENDIF;ELSEA:=0;ENDIF;ifCHAG='1'thenIFB<24000000THENB:=B+1;------24MHz分頻為1Hz用于計數(shù)IFB<1200000THENL:='0';ELSEL:='1';ENDI

4、F;ELSEB:=0;ENDIF;elseIFB<5000000THENB:=B+1;-----------24MHz分頻,分頻比為5000000。用于校時IFB<250000THENL:='0';ELSEL:='1';ENDIF;ELSEB:=0;ENDIF;endif;ENDIF;CLK_high<=H;CLK_low<=L;ENDPROCESS;ENDBEHAV;DG_CLK模塊程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityDIG_CLOCKis

5、port(CLK,EN,RST1,RST2,RST3,ADD_HOUR,ADD_SEC,ADD_MIN:INSTD_LOGIC;COUT:OUTSTD_LOGIC;DIS_HOUR10,DIS_HOUR1,DIS_MIN10,DIS_MIN1,DIS_SEC10,DIS_SEC1:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDDIG_CLOCK;ARCHITECTUREBEHAVOFDIG_CLOCKISSIGNALCOUNT1,COUNT2:STD_LOGIC:='0';SIGNALLCX:STD_LOGIC;BEGINB1:proce

6、ss(CLK,EN,RST3,ADD_SEC)-----秒校時及計數(shù)模塊VARIABLES10,S1:STD_LOGIC_VECTOR(3DOWNTO0):="0000";VARIABLEu1,v3:INTEGER:=0;BEGINIFRST3='0'THENS10:="0000";S1:="0000";ELSIFCLK'EVENTANDCLK='1'THENIFEN='1'THENIF(S1<9)THENS1:=S1+1;u1:=0;--秒ELSES1:="0000";u1:=1;ENDIF;IF(u1=1)THENIF(S10<5)THENS10:=S10

7、+1;ELSES10:="0000";ENDIF;ENDIF;IF(S10=5)AND(S1=9)THENCOUNT1<='1';--S10:=(OTHERS=>'0');S1:=(OTHERS=>'0');ELSECOUNT1<='0';ENDIF;ELSIFADD_SEC='0'THENIF(S1<9)THENS1:=S1+1;v3:=0;ELSES1:="0000";v3:=1;ENDIF;IF(v3=1)THENIF(S10<5)THENS10:=S10+1;ELSES10:="0000";ENDIF;ENDIF;--IF(S10=5)AND(S1=9

8、)THENS10:=(OTHERS=>

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。