數(shù)字定時器的設計與實現(xiàn).docx_第1頁
數(shù)字定時器的設計與實現(xiàn).docx_第2頁
數(shù)字定時器的設計與實現(xiàn).docx_第3頁
數(shù)字定時器的設計與實現(xiàn).docx_第4頁
數(shù)字定時器的設計與實現(xiàn).docx_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

學術誠信聲明 本人聲明:所呈交的報告(含電子版及數(shù)據(jù)文件)是我個人在導師指導下獨立進行設計工作及取得的研究結果。盡我所知,除了文中特別加以標注或致謝中所羅列的內(nèi)容以外,報告中不包含其他人己經(jīng)發(fā)表或撰寫過的研究結果,也不包含其它教育機構使用過的材料。與我一同工作的同學對本研究所做的任何貢獻均己在報告中做了明確的說明并表示了謝意。報告資料及實驗數(shù)據(jù)若有不實之處,本人愿意接受本教學環(huán)節(jié)“不及格”和“重修或重做”的評分結論并承擔相關一切后果。 本人簽名: 日期: 年 月 日沈陽航空航天大學課程設計任務書課程設計名稱XXXX課程設計專業(yè)學生姓名班級學號題目名稱起止日期年月日起至年月日止課設內(nèi)容和要求:參考資料: 教研室審核意見: 教研室主任簽字:指導教師(簽名)年月日學 生(簽名)年月日課程設計總結:經(jīng)過本次課程設計,我學會了好多東西,不僅學會了新的語言,而且學會了計算機硬件上的一些東西,我相信這對我以后的發(fā)展和認識提供了非常大的幫助,不僅可以從軟件方面去分析東西,還可以從硬件方面分析東西,所以我覺得我的收獲是巨大的。這次課程設計是在已學計算機組成原理基礎上進行的一次大型實驗,也是對該課程所學理論知識的深化和提高,能綜合應用所學知識,設計與制造出具有較復雜功能的應用系統(tǒng),并且在實驗的基本技能方面上進行了一次全面的訓練。通過對數(shù)字定時器程序的編寫,使我對計算機組成原理的基本知識的使用更加熟練,同時也增加了我對計算機組成原理的一些認識,培養(yǎng)從資料文獻、科學實驗中獲得知識的能力,在作業(yè)完成過程中通過和同學的交流,也增加了合作的技巧,初步培養(yǎng)了我的工程意識和創(chuàng)新能力。通過查閱以下資料也學到了一些課本上沒有的東西,很多知識從模糊概念到具體的了解,從毫無所知到具體的應用,拓寬了自己的知識面,增加了學好匯編語言的信心。當然,也存在了許多的問題,如編寫程序時沒有注意程序的邏輯性,導致用ModelSim仿真時出現(xiàn)了內(nèi)存過大,軟件奔潰的問題。在以后的學習工作中,我要吸取這次教訓,設計好每一個環(huán)節(jié)后再進行制作與組裝。最后,感謝老師的辛勤解答。目錄1 總體設計方案- 6 -1.1 設計原理- 6 -1.2 設計思路- 6 -1.3 設計環(huán)境- 7 -2詳細設計方案- 8 -2.1 總體模塊設計- 8 -2.2 計時電路與清零電路模塊設計- 8 -2.3 定時電路模塊設計- 10 -2.4 報時電路模塊設計- 11 -3設計仿真- 12 -3.1 清零操作仿真- 12 -3.2 報時操作仿真- 12 -參考文獻- 13 -附錄- 14 -程序代碼- 14 -總體電路圖- 17 -計算機組成原理課程設計報告第一章 總體設計方案1 總體設計方案1.1 設計原理數(shù)字定時器是由計時電路、定時電路,清零電路和報時電路等幾部分組成的。其中,定時電路和計時電路,將時間顯示在七段數(shù)碼管上,定時電路對時、分提供設置并儲存;清零電路作用時,系統(tǒng)的分秒時同時歸零。1.2 設計思路報時電路清零電路計時電路定時電路由于設計為數(shù)字定時器,所以一定會有脈沖發(fā)送部分,但是由于本次課設不需要實際操作,則脈沖發(fā)送部分先不考慮。其次,重點就是計時電路,顧名思義,數(shù)字定時器首先要實現(xiàn)定時的功能,包括時,分,秒的計時,分別類似于模24、模60、模60計數(shù)器的形式,只需要把三個計數(shù)器的信號連接起來就可以實現(xiàn)對時,分,秒的計時功能。在程序中通過3個8位寄存器來保存時,分,秒,已達到輸入輸出。定時電路也是采用寄存器的方法來保存時,分,通過改變寄存器的里的數(shù)據(jù)來定時,然后報時電路通過對比定時電路中的數(shù)據(jù)與計數(shù)器中的數(shù)據(jù)來達到準確報時的目的,清零電路,如果清零開關信號為1,清空所有計時電路寄存器中的數(shù)據(jù),并停止計時。(如圖1.2) 圖 1.2- 26 -1.3 設計環(huán)境設計軟件:Altera公司的綜合性PLD/FPGA開發(fā)軟件Quartus II。仿真軟件:Mentor公司的ModelSim。計算機組成原理課程設計報告第二章 詳細設計方案2詳細設計方案2.1 總體模塊設計數(shù)字定時器是由計時電路、定時電路,清零電路和報時電路等幾部分組成的。模塊設計代碼如下:module x(turn,change,ahour,amin,asec,clk,hour1,min1,k,sec1,stop);input change,turn,stop; output k;output 7:0ahour,amin,asec;reg 7:0ahour,amin,asec;output 7:0hour1,min1,sec1;reg 7:0hour1,min1,sec1;reg counta,countb,fm;input clk;reg minclk,hclk;reg k;2.2 計時電路與清零電路模塊設計由于信號不能在多個并發(fā)進程中賦值,所以將計時電路與清零電路寫在了一起。計時電路包括時,分,秒的計時,分別類似于模24、模60、模60計數(shù)器的形式。所以在代碼實現(xiàn)的時候考慮了三種情況:一,出現(xiàn)59的情況與23的情況;二,出現(xiàn)9,19,23,39,49的情況;三,不存在以上的正常情況;模塊代碼如下:always (posedge clk) /秒 begin if(stop=1) begin sec17:0=0; minclk=1; end else if(sec1=8h59) begin sec1=0; minclk=1; end else begin if(sec13:0=9) begin sec13:0=0; sec17:4=sec17:4+1; end else sec13:0=sec13:0+1; minclk=0; end if(stop=1) begin sec17:0=0; minclk=1; end endalways (posedge minclk) /分 begin if(stop=1) begin min17:0=0; hclk=1; end if(min1=8h59) begin min1=0; hclk=1; end else begin if(min13:0=9) begin min13:0=0; min17:4=min17:4+1; end else min13:0=min13:0+1; hclk=0; end if(stop=1) begin min17:0=0; hclk=1; end endalways (posedge hclk) /時 begin if(stop=1) begin hour17:0=0; end if(hour1=8h23) hour1=0; else begin if(hour13:0=9) begin hour13:0=0; hour17:4=hour17:4+1; end else hour13:0=hour13:0+1; end if(stop=1) begin hour17:0=0; end end2.3 定時電路模塊設計定時電路也是采用寄存器的方法來保存時,分,通過改變寄存器的里的數(shù)據(jù)來定時。Turn是用來調(diào)節(jié)時與分之間的轉換,change則改變數(shù)值的的變化。如果Turn在時位上,則每點一下change則改變時位加1,知道23再加1則清零;如果Turn在分位上,則每點一下change則改變分位加1,知道59再加1則清零。always (posedge turn) begin fm=fm; endalways begin if(fm) begin counta=change; end else begin countb=change; end end always begin asec=8hzz; endalways (posedge counta) begin if(amin=8h59) amin=0; else begin if(amin3:0=9) begin amin3:0=0; amin7:4=amin7:4+1; end else amin3:0=amin3:0+1; end endalways (posedge countb) if(ahour=8h23) ahour=0; else begin if(ahour3:0=9) begin ahour3:0=0; ahour7:4=ahour7:4+1; end else ahour3:0=ahour3:0+1; end2.4 報時電路模塊設計 報時電路是通過對比定時電路中的數(shù)據(jù)與計數(shù)器中的數(shù)據(jù)來達到準確報時的目的。代碼實現(xiàn)如下:always if(hour17:0=ahour7:0)&(min17:0=amin7:0&min1!=0)&stop!=1&sec17:0=1) begin k=1; end else begin k=0; end 計算機組成原理課程設計參考文獻3設計仿真3.1 清零操作仿真設置時鐘為1分鐘,turn按鍵2次,turn按鍵1次,設置完成。打開開關stop開始計時,記到3秒時,關閉開關,停止計時且hour1,min1,sec1清零。 圖3.13.2 報時操作仿真設置時鐘為1分鐘,turn按鍵2次,turn按鍵1次,設置完成。當計時達到1分鐘時,K信號發(fā)出高電平,即發(fā)出響聲,且停止清零。 圖3.2 參考文獻1 李景華. 可編程程邏輯器件與EDA技術M.北京:東北大學出版社,2001 2 范延濱.微型計算機系統(tǒng)原理、接口與EDA設計技術M.北京:北京郵電大學出版社,20063 王愛英.計算機組成與結構(第4版)M.北京:清華大學出版社,20064 王冠.Verilog HDL與數(shù)字電路設計M.北京:機械工業(yè)出版社,2005 5 白中英.計算機組成原理M.科學出版社出版社,20086 胡越明.計算機組成與設計M.北京:科學出版社,2006附錄程序代碼module xxx(turn,change,ahour,amin,asec,clk,hour1,min1,sec1,k,stop);input change,turn,stop;output k;output 7:0ahour,amin,asec;reg 7:0ahour,amin,asec;reg counta,countb,fm;reg start1;input clk;output 7:0hour1,min1,sec1;reg 7:0hour1,min1,sec1;reg minclk,hclk,start2,clr;reg k;always (posedge turn) begin fm=fm; endalways begin if(fm) begin counta=change; end else begin countb=change; end end always begin asec=8hzz; endalways (posedge counta) begin if(amin=8h59) amin=0; else begin if(amin3:0=9) begin amin3:0=0; amin7:4=amin7:4+1; end else amin3:0=amin3:0+1; end endalways (posedge countb) if(ahour=8h23) ahour=0; else begin if(ahour3:0=9) begin ahour3:0=0; ahour7:4=ahour7:4+1; end else ahour3:0=ahour3:0+1; end always (posedge clk) begin if(stop=1) begin sec17:0=0; minclk=1; end else if(sec1=8h59) begin sec1=0; minclk=1; end else begin if(sec13:0=9) begin sec13:0=0; sec17:4=sec17:4+1; end else sec13:0=sec13:0+1; minclk=0; end if(stop=1) begin sec17:0=0; minclk=1; end endalways (posedge minclk) begin if(stop=1) begin min17:0=0; hclk=1; end if(min1=8h59) begin min1=0; hclk=1; end else begin if(min13:0=9) begin min13:0=0; min17:4=min17:4+1; end else min13:0=min13:0+1; hclk=0; end if(stop=1) begin min17:0=0; hclk=1; end endalways (posedge hclk) begin if(stop=1) begin hour17:0=0; end if(hour1=8h23)

溫馨提示

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

最新文檔

評論

0/150

提交評論