脈沖與數(shù)字電路課程設計報告--基于fpga的數(shù)字鐘_第1頁
已閱讀1頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  計算機與信息工程系</b></p><p><b>  《脈沖與數(shù)字電路》</b></p><p><b>  課程設計報告</b></p><p>  專業(yè) ______ ____________</p><p>  班級 _____ _____

2、_________</p><p>  學號 _______________</p><p>  姓名_______________</p><p>  報告完成日期 ________</p><p>  指導教師 ____ ___________</p><p>  基于FPGA的數(shù)字鐘</p><

3、;p><b>  摘 要</b></p><p>  鐘表是現(xiàn)代人類日常生活中必不可少的工具,數(shù)字鐘更是現(xiàn)代社會時鐘發(fā)展的一個重要方向。數(shù)字鐘具有其突出的可隨時控制調節(jié)時間、計時精確等優(yōu)勢和特點,被廣泛地應用于社會生活的各個方面。本設計就是通過應用生活生產中常見的邏輯電路元件設計出具有計時和調時功能的數(shù)字鐘。</p><p>  本文主要從數(shù)字鐘的設計原理、設計

4、方案入手詳細地介紹了數(shù)字時鐘的硬件設計、軟件設計和下載調試。在設計過程中要處理好以下幾個關鍵方面:各種計數(shù)器、調節(jié)控制電路、顯示器程序設計。計數(shù)器的設計關系到時鐘計時的進位與精確度,調節(jié)控制電路是調節(jié)時間的關鍵。最后,利用QUARTUSⅡ仿真設計軟件和設計開發(fā)板的特點和優(yōu)勢,結合實踐,設計出具有基本調節(jié)控制功能的數(shù)字時鐘。</p><p>  關鍵詞:數(shù)字鐘,計數(shù)器,開發(fā)板,VHDL語言</p>&

5、lt;p>  Based on FPGA digital clock</p><p><b>  Abstract</b></p><p>  Clocks and watches is the modern human daily life essential tools, a digital clock is the development of moder

6、n society clock an important direction. A digital clock has its outstanding may at any time control regulation time, accurate timing advantages and characteristics, and is widely used in various aspects of their life. Th

7、is design is through the application in production of the common life logic circuit components design has the function of the timing and when a digital clock.</p><p>  This article is mainly from the digital

8、 clock design principle, and the design of digital clock is introduced in detail the hardware design, software design and download debugging. In the design process to handle the following a few key aspects: all kinds of

9、counter, adjust control circuit, monitor the program design. The design of the counter in relation to the clock binary and accuracy, adjust the control circuit is the key to regulating time. Finally, using QUARTUS Ⅱ simu

10、lation design softwar</p><p>  Key words: a digital clock, counter, development board, VHDL language</p><p><b>  目 錄</b></p><p><b>  前 言1</b></p><

11、;p>  第1章 設計任務及要求2</p><p>  1.1設計任務及要求2</p><p>  1.1.1設計任務2</p><p>  1.1.2設計要求2</p><p>  第2章 設計原理3</p><p>  2.1 設計原理及結構框圖3</p><p>  2.

12、1.1設計原理3</p><p>  2.1.2系統(tǒng)結構框圖3</p><p>  第3章 系統(tǒng)設計4</p><p>  3.1 VHDL硬件描述語言4</p><p>  3.1.1VHDL硬件描述語言簡介4</p><p>  3.1.2VHDL硬件描述語言特點4</p><p&g

13、t;  3.2 用VHDL語言完成整個電路設計5</p><p>  3.2.1用VHDL硬件語言完成設計5</p><p>  3.3 系統(tǒng)功能及整體電路圖7</p><p>  3.3.1系統(tǒng)功能7</p><p>  3.3.2整體電路圖7</p><p>  第4章 各個模塊設計8</p>

14、;<p>  4.1 計時模塊8</p><p>  4.1.1計時原理8</p><p>  4.1.2計時模塊的相應程序8</p><p>  4.2 校時模塊9</p><p>  4.2.1校時原理9</p><p>  4.2.2校時模塊的相應程序10</p><

15、p>  4.3 顯示模塊10</p><p>  4.3.1顯示模塊原理10</p><p>  4.3.2顯示模塊相應程序11</p><p>  第5章 系統(tǒng)調試及性能分析13</p><p>  5.1 仿真波形13</p><p>  5.1.1 仿真波形13</p><p

16、>  5.2 引腳分配13</p><p>  5.2.1 引腳分配14</p><p>  5.3 下載和調試14</p><p>  5.3.1 下載驗證15</p><p>  5.3.2 調試15</p><p>  5.3.3 設計過程中遇到的問題及解決方案15</p><

17、;p><b>  結 論16</b></p><p><b>  謝 辭17</b></p><p><b>  參考文獻18</b></p><p><b>  前 言</b></p><p>  數(shù)字鐘是20世紀50年代才開始出現(xiàn)的新型計時

18、器,隨著社會經濟的高速發(fā)展,人類生活節(jié)奏不斷加快,數(shù)字鐘自發(fā)明以后越來越廣泛的應用于人類的社會生活中。</p><p>  本設計是利用基本的邏輯電路元件設計的利用六位數(shù)碼管顯示出當前時間,并具有基本調節(jié)控制功能的簡易數(shù)字時鐘。本設計的意義和目的旨在加深對所學課程的理解,掌握數(shù)字系統(tǒng)的工作原理和設計方法,熟練應用仿真軟件和實驗開發(fā)板,提高獨立分析問題、解決問題、綜合設計和創(chuàng)新能力,培養(yǎng)實事求是、嚴肅認真的科學作風

19、和良好的實驗習慣,且最終能夠設計成功基本的可控時鐘功能。</p><p>  本課題從數(shù)字時鐘的設計原理、設計方案入手詳細地介紹了數(shù)字時鐘的硬件設計、軟件設計和下載調試。在設計過程中要處理好以下幾個關鍵方面:各種計數(shù)器、調節(jié)控制電路、顯示器程序設計。計數(shù)器的設計關系到時鐘計時的進位與精確度,調節(jié)控制電路是調節(jié)時間的關鍵。重點應用到了各種不同功能的計數(shù)器的設計、計數(shù)器控制電路的設計以及顯示器程序VHDL硬件描述語言

20、的設計。設計過程中解決了數(shù)字時鐘的硬件設計的計時、調時和顯示等功能的實現(xiàn)。</p><p>  第1章 設計任務及要求</p><p>  1.1設計任務及要求</p><p><b>  1.1.1設計任務</b></p><p><b>  設計題目:數(shù)字鐘</b></p><

21、;p>  功能:具有時、分、秒計數(shù)顯示,以24小時循環(huán)計時的時鐘電路,帶有清零和校準功能。</p><p><b>  1.1.2設計要求</b></p><p>  在QuartusⅡ開發(fā)環(huán)境下,用原理圖或verilog HDL或 VHDL語言完成各模塊電路設計,并進行編譯,成功后先調出正確波形,進行分析。在接下來的時間,針對KH-3100的相關資料,進行引腳

22、分配,并下載到實驗板上進行驗證。</p><p>  在整個課程設計的過程中,需要截取相關的圖,比如仿真波形,引腳分配,并且畫出系統(tǒng)結構框圖、整體電路圖。</p><p><b>  第2章 設計原理</b></p><p>  2.1 設計原理及結構框圖</p><p><b>  2.1.1設計原理<

23、/b></p><p>  計數(shù)器在正常工作下是對1Hz的頻率計時,在調整時間狀態(tài)下是對調整的時間模塊進行計數(shù)??刂瓢存I用來選擇是正常計數(shù)還是調整時間,并決定調整時、分、秒。如果對小時進行調整,顯示時間的LED數(shù)碼管將閃爍,當置數(shù)按鍵被按下時,相應的小時顯示要加1。時間顯示的LED數(shù)碼管均用動態(tài)掃描顯示來實現(xiàn)。</p><p>  2.1.2系統(tǒng)結構框圖</p><

24、;p>  系統(tǒng)結構框圖如下圖所示:</p><p>  圖1 數(shù)字鐘原理圖</p><p><b>  第3章 系統(tǒng)設計</b></p><p>  3.1 VHDL硬件描述語言</p><p>  3.1.1VHDL硬件描述語言簡介</p><p>  VHDL的英文全名是Very-Hi

25、gh-Speed Integrated Circuit Hardware Description Language,誕生于1982年。1987年底,VHDL被IEEE和美國國防部確認為標準硬件描述語言。</p><p>  VHDL主要用于描述數(shù)字系統(tǒng)的結構,行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風格與句法是十分類似于一般的計算機高級語言。VHDL的程序結構特點是將一項工程設

26、計,或稱設計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,及端口)和內部(或稱不可視部分),既涉及實體的內部功能和算法完成部分。在對一個設計實體定義了外部界面后,一旦其內部開發(fā)完成后,其他的設計就可以直接調用這個實體。這種將設計實體分成內外部分的概念是VHDL系統(tǒng)設計的基本點。</p><p>  3.1.2VHDL硬件描述語言特點</p><p>  VHDL語言

27、能夠成為標準化的硬件描述語言并獲得廣泛應用,它自身必然具有很多其他硬件描述語言所不具備的優(yōu)點。歸納起來,VHDL語言主要具有以下優(yōu)點:</p><p>  VHDL語言功能強大,設計方式多樣。VHDL語言具有強大的語言結構,只需采用簡單明確的VHDL語言程序就可以描述十分復雜的硬件電路。同時,它還具有多層次的電路設計描述功能。此外,VHDL語言能夠同時支持同步電路、異步電路和隨機電路的設計實現(xiàn),這是其他硬件描述語

28、言所不能比擬的。VHDL 語言設計方法靈活多樣,既支持自頂向下的設計方式,也支持自底向上的設計方法;既支持模塊化設計方法,也支持層次化設計方法。</p><p>  VHDL語言具有強大的硬件描述能力。VHDL語言具有多層次的電路設計描述功能,既可描述系統(tǒng)級電路,也可以描述門級電路;描述方式既可以采用行為描述、寄存器傳輸描述或者結構描述,也可以采用三者的混合描述方式。同時,VHDL 語言也支持慣性延遲和傳輸延遲,

29、這樣可以準確地建立硬件電路的模型。VHDL 語言的強大描述能力還體現(xiàn)在它具有豐富的數(shù)據(jù)類型。VHDL 語言既支持標準定義的數(shù)據(jù)類型,也支持用戶定義的數(shù)據(jù)類型,這樣便會給硬件描述帶來較大的自由度。</p><p>  VHDL語言具有很強的移植能力。VHDL語言很強的移植能力主要體現(xiàn)在:對于同一個硬件電路的 VHDL 語言描述,它可以從一個模擬器移植到另一個模擬器上、從一個綜合器移植到另一個綜合器上或者從一個工作平

30、臺移植到另一個工作平臺上去執(zhí)行。</p><p>  VHDL 語言的設計描述與器件無關。采用VHDL語言描述硬件電路時,設計人員并不需要首先考慮選擇進行設計的器件。這樣做的好處是可以使設計人員集中精力進行電路設計的優(yōu)化,而不需要考慮其他的問題。當硬件電路的設計描述完成以后,VHDL語言允許采用多種不同的器件結構來實現(xiàn)。</p><p>  VHDL 語言程序易于共享和復用。VHDL 語言

31、采用基于庫 ( library) 的設計方法。在設計過程中,設計人員可以建立各種可再次利用的模塊,一個大規(guī)模的硬件電路的設計不可能從門級電路開始一步步地進行設計,而是一些模塊的累加。這些模塊可以預先設計或者使用以前設計中的存檔模塊,將這些模塊存放在庫中,就可以在以后的設計中進行復用。   由于VHDL語言是一種描述、模擬、綜合、優(yōu)化和布線的標準硬件描述語言,因此它可以使設計成果在設計人員之間方便地進行交流和共享,從而減小硬件電路設計的工

32、作量,縮短開發(fā)周期。</p><p>  3.2 用VHDL語言完成整個電路設計</p><p>  3.2.1用VHDL硬件語言完成設計</p><p>  在Quartus2開發(fā)環(huán)境下,用VHDL語言完成各模塊電路設計。具體設計過程如下:</p><p>  引腳分配,設置輸入端及輸出端;</p><p>  設置

33、變量,用于整個設計過程;</p><p>  對1kHz的頻率進行分頻,用于掃描數(shù)碼管地址;</p><p>  對2Hz分頻,用于數(shù)碼管閃爍;</p><p>  模塊轉換,狀態(tài)控制;</p><p>  秒、分、小時計數(shù)的十進制轉BCD碼;</p><p>  數(shù)碼管動態(tài)掃描及計數(shù);</p><

34、p><b>  7段譯碼。</b></p><p>  下圖是整個設計的開始,用VHDL語言描述實現(xiàn)的。</p><p>  3.3 系統(tǒng)功能及整體電路圖</p><p>  3.3.1系統(tǒng)功能 </p><p>  信號發(fā)生器(即晶振產生的clk)產生穩(wěn)定的脈沖信號,作為數(shù)字鐘的計時基準。</p>

35、<p>  具有“時”、“分”,“秒”的十進制數(shù)字顯示。</p><p>  小時計以一晝夜為一個周期(即24小時),分和秒計時為60進制。</p><p>  具有校時功能,可以在任何時候將其調至標準時間或者指定時間,并且可以實現(xiàn)清零、暫停的功能。</p><p>  3.3.2整體電路圖</p><p>  該電路圖是描述整個電

36、路設計,用protues做出來的,如下圖所示:</p><p><b>  圖2 整體電路圖</b></p><p>  第4章 各個模塊設計</p><p><b>  4.1 計時模塊</b></p><p>  4.1.1計時原理 </p><p>  可控數(shù)字時鐘的“

37、分”和“秒”均為模60的計數(shù)器,其計數(shù)器規(guī)律為00→01→…→58→59→00…</p><p>  可控電子時鐘的“時”計數(shù)器為模24的計數(shù)器,其計數(shù)規(guī)律為00→01→…→22→23→00…即當數(shù)字鐘運行到23時59分59秒時,在下一個脈沖作用下,數(shù)字鐘顯示00時00分00秒。具體說明如下:</p><p>  小時是一個模為24的計數(shù)器;分鐘和秒鐘都是一個模為60的計數(shù)器。</p

38、><p>  在正常計數(shù)時,當秒鐘從0遞增到59后進行清0,并且產生進位,使分鐘加1;分鐘和秒鐘達59:59時,進行清0,同時也會產生進位,使小時加1;當“時”,“分”,“秒”達到23:59:59時,全部清0。</p><p>  4.1.2計時模塊的相應程序 </p><p>  下圖是整個設計的狀態(tài)控制中關于正常計時的相應程序:</p><p&g

39、t;<b>  4.2 校時模塊</b></p><p>  4.2.1校時原理 </p><p>  當數(shù)字鐘出現(xiàn)誤差時,必須對時間進行校正,通常稱為“校時”。校時是電子時鐘應該具備的基本功能,一般要求能對時、分進行校正,并能進行復位,即清零。</p><p>  校時電路的設計要求是:在進行“時”校正時,不影響“分”和“秒”的正常計數(shù);在進

40、行“分”校正時,不影響“時”和“秒”的正常計數(shù);在進行“清零”操作時,時、分、秒全部歸零。為此可以設置CLR、EN和INC 3個開關作為清零、暫停和置數(shù)的校時控制開關。</p><p>  根據(jù)時間誤差的大小,校時方法為:采用單脈沖進行手動校時,撥動相應的校時開關后,每按一次單脈沖按鈕相應的計數(shù)器增1。具體如下:</p><p>  1 在校正小時時,每按一次調節(jié)按鈕,小時會在當前基礎上加

41、1,當小時達到23 時,小時會清0。</p><p>  在校正分鐘時,每按一次調節(jié)按鈕,分鐘會在當前基礎上加1,當分鐘達到59時,分鐘會清0。</p><p>  在校正秒時,每按一次調整按鈕,秒會在當前基礎上加1,當秒達到59時,秒會清0.</p><p>  4.2.2校時模塊的相應程序 </p><p>  下圖是整個設計的狀態(tài)控制中

42、關于校時的相應程序:</p><p><b>  4.3 顯示模塊</b></p><p>  4.3.1顯示模塊原理 </p><p>  該設計是由數(shù)碼管顯示的,共需要六個數(shù)碼管,其中兩位顯示時,兩位顯示分,最后兩位顯示秒。該部分同樣是由VHDL語言操作的,分為三個部分:計數(shù)的十進制轉BCD碼、數(shù)碼管動態(tài)掃描及計數(shù)和數(shù)碼管7段譯碼。<

43、/p><p>  在這個環(huán)節(jié)中,要特別分清楚數(shù)碼管的段選和位選,并對它們進行相應轉換,并理解其中的轉換方式。</p><p>  4.3.2顯示模塊相應程序 </p><p>  1.計數(shù)的十進制轉BCD碼</p><p>  下圖是其中關于秒計數(shù)的十進制轉BCD碼的程序:</p><p>  數(shù)碼管動態(tài)掃描及計數(shù)<

44、/p><p>  下圖為數(shù)碼管動態(tài)掃描及計數(shù)的相關程序:</p><p><b>  3.數(shù)碼管7段譯碼</b></p><p><b>  程序如下:</b></p><p>  第5章 系統(tǒng)調試及性能分析</p><p><b>  5.1 仿真波形</b&g

45、t;</p><p>  5.1.1 仿真波形</p><p>  在Quartus2開發(fā)環(huán)境中,進行波形仿真。由于對系統(tǒng)時鐘分頻系數(shù)較大,在軟件中的仿真不易實現(xiàn),故將分頻系數(shù)適當改小來仿真其邏輯功能。</p><p>  正常計數(shù)時state為“00”,此時的功能仿真結果如下圖所示:</p><p><b>  圖3 仿真波形圖&

46、lt;/b></p><p><b>  5.2 引腳分配</b></p><p>  5.2.1 引腳分配</p><p>  硬件選用ALTERA公司的Cyclone系列的EP1C6Q240CB,引腳分配如下圖所示:</p><p><b>  圖4 引腳分配圖</b></p>

47、<p><b>  5.3 下載和調試</b></p><p>  5.3.1 下載驗證</p><p>  下載驗證:選QUARTUSⅡ菜單Tools→Programmer→Hardwave Setup→USB-Blaster→Program/Configure復選框→Start,如圖4-5所示。當點擊Start后,便進行下載到KH-3100試驗箱中,

48、下載完畢即可看到實驗的結果。</p><p><b>  圖5 下載驗證</b></p><p><b>  5.3.2 調試</b></p><p>  進行下載驗證之后,發(fā)現(xiàn)實驗結果有錯誤,則進行調試環(huán)節(jié)。在此環(huán)節(jié)需要分析實驗錯誤原因,再進行相應修改,重復下載驗證的步驟,直到實驗結果成功為止。</p>&

49、lt;p>  5.3.3 設計過程中遇到的問題及解決方案</p><p>  1.在進行仿真波形時,出現(xiàn)這樣的情況:仿真時點擊“Start”后,直接進度為49%,接著就進行得很慢,等很長時間,還是沒有進度。</p><p>  解決方案:將仿真的“end time”調得相對短些,另外將設計中分頻系數(shù)適當改小,則可以解決該問題。</p><p>  2.在進行最

50、后一步下載驗證后,出現(xiàn)的數(shù)碼管顯示比較混亂,通過仔細觀察,發(fā)現(xiàn)是數(shù)碼管段選設置顛倒了,經引腳重新分配之后,再重新下載驗證,實驗成功。</p><p>  結 論: 通過本次試驗,我了解到VHDL硬件描述語言的相了解到h編程環(huán)境和QUARTUSⅡ仿真環(huán)境。</p><p>  在實驗的過程中出現(xiàn)仿真速度過慢經過與同學的探討,將endtime調得相對短些,并且將設計程序中的分頻系數(shù)適當改小,再

51、進行仿真,進度加快了很多。 </p><p>  通過此次的課程設計,我對FPGA有了更深的了解,并且具有了實驗過程中發(fā)現(xiàn)問題、分析問題和解決問題的科學研究態(tài)度。我理解了數(shù)字鐘系統(tǒng)各模塊的工作原理。并在設計過程中我認識到了理論與實際相結合,基礎實驗與綜合技能訓練相結合的學習方法,但操作能力有待提高,在以后的實踐中,我會努力的有意提高自己的提高自己的動手操作能力。 參考文獻:周潤景、

溫馨提示

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

評論

0/150

提交評論