VHDL課程設(shè)計報告 頻率計_第1頁
VHDL課程設(shè)計報告 頻率計_第2頁
VHDL課程設(shè)計報告 頻率計_第3頁
VHDL課程設(shè)計報告 頻率計_第4頁
VHDL課程設(shè)計報告 頻率計_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目錄1.前言 32.設(shè)計要求 43.整體設(shè)計 44.設(shè)計原理 45.設(shè)計程序 45.1頂層文件 45.28位是進制計數(shù)器 55.310進制計數(shù)器 65.4測頻控制電路 75.532位鎖存器及其控制器 86.引腳鎖定 97.綜合結(jié)果 97.1RTL電路 97.2測頻控制電路 107.38位十進制計數(shù)器 107.332位鎖存器 108.實驗結(jié)果 117.實驗總結(jié) 11參考文獻 13自適應(yīng)數(shù)字頻率計數(shù)器設(shè)計1.前言傳統(tǒng)的數(shù)字頻率計一般是由分離元件搭接而成,用到的器件較多,連線比較復(fù)雜,而且會產(chǎn)生比較大的延時,造成測量誤差大、可靠性差。后來隨著單片機的大規(guī)模的應(yīng)用,出現(xiàn)了不少用單片機控制的頻率測量系統(tǒng)。相對于以前用分離元件搭接起來的頻率測量系統(tǒng),單片機控制的頻率測量系統(tǒng)在頻率測量范圍、頻率測量精度和頻率測量速度上都有了很大的提高。但由于單片機工作頻率的限制、單片機內(nèi)部計數(shù)器位數(shù)的限制等因素,由單片機控制的頻率測量系統(tǒng)無法在頻率測量范圍、頻率測量精度和頻率測量速度上取得重大突破。若再增加別的器件,以彌補單片機的不足,不僅會大大增加系統(tǒng)的復(fù)雜性,而且不利于系統(tǒng)的集成化。以EDA工具作為開發(fā)平臺,運用VHDL語言,將使整個系統(tǒng)大大簡化,從而提高整體的性能和可靠性。本課題采用的是等精度數(shù)字頻率計,在一片F(xiàn)PGA開發(fā)板里實現(xiàn)了數(shù)字頻率計的絕大部分功能,它的集成度遠遠超過了以往的數(shù)字頻率計。又由于數(shù)字頻率計最初的實現(xiàn)形式是用硬件描述語言寫成的程序,具有通用性和可重用性。所以在外在的條件(如基準頻率的提高,基準頻率精度的提高)的允許下,只需對源程序作很小的改動,就可以使數(shù)字頻率計的精度提高幾個數(shù)量級。同時對于頻率精度要求不高的場合,可以修改源程序,使之可以用較小的器件實現(xiàn),從而降低系統(tǒng)的整體造價。2.設(shè)計要求設(shè)計一個頻率計,頻率測量范圍為1-9999KHZ,量程分別為10、100、1M三檔,要求如下: a.當讀數(shù)大于999時,頻率計處于超量程狀態(tài),下一次測量時,量程自動增大1檔b.當讀數(shù)小于099時,頻率計處于欠量程狀態(tài),下一次測量時,量程自動減小1檔c.當超過頻率范圍時,顯示器自動溢出3.整體設(shè)計當被測頻率進入時候,檔位1、2能自動換擋實現(xiàn)功能,在檔位1中,有一個LED燈亮(表示Hz);檔位2中有2個LED燈亮(表示kHz);當計數(shù)頻率超出9999kHz的時候,顯示“E”而且LED燈全部熄滅,表示溢出功能。在程序代碼中,必須要清晰表示出計數(shù)的運行狀況。檔位1:當被測頻率為0—9999Hz時候,直接顯示fx的值(單位為Hz);檔位2:當被測頻率為10k—9999kHz時候,顯示10-9999(單位kHz);4.設(shè)計原理根據(jù)頻率的定義和頻率測量的基本原理,測定信號的頻率必須有一個脈寬為1秒的輸入信號脈沖計數(shù)允許的信號;1秒計數(shù)結(jié)束后,計數(shù)值被鎖入鎖存器,計數(shù)器清0,為下一測頻計數(shù)周期作好準備。測頻控制信號可以由一個獨立的發(fā)生器來產(chǎn)生。5.設(shè)計程序5.1頂層文件LIBRARYIEEE;--頻率計頂層文件LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYFREQTESTISPORT(CLK1HZ:INSTD_LOGIC;FSIN:INSTD_LOGIC;DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LED:OUTSTD_LOGIC_VECTOR(1DOWNTO0));ENDFREQTEST;ARCHITECTUREstrucOFFREQTESTISCOMPONENTFTCTRLPORT(CLKK:INSTD_LOGIC;--1HzCNT_EN:OUTSTD_LOGIC;--計數(shù)器時鐘使能RST_CNT:OUTSTD_LOGIC;--計數(shù)器清零Load:OUTSTD_LOGIC);--輸出鎖存信號ENDCOMPONENT;COMPONENTCOUNTERPORT(FIN:INSTD_LOGIC;--時鐘信號CLR:INSTD_LOGIC;--清零信號ENABL:INSTD_LOGIC;--計數(shù)使能信號DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));--計數(shù)結(jié)果ENDCOMPONENT;COMPONENTREG32BPORT(LK:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LEDOUT:OUTSTD_LOGIC_VECTOR(1DOWNTO0));ENDCOMPONENT;SIGNALTSTEN1:STD_LOGIC;SIGNALCLR_CNT1:STD_LOGIC;SIGNALLoad1:STD_LOGIC;SIGNALDTO1:STD_LOGIC_VECTOR(31DOWNTO0);SIGNALCARRY_OUT1:STD_LOGIC_VECTOR(6DOWNTO0);BEGINU1:FTCTRLPORTMAP(CLKK=>CLK1HZ,CNT_EN=>TSTEN1,RST_CNT=>CLR_CNT1,Load=>Load1);U2:REG32BPORTMAP(LK=>Load1,DIN=>DTO1,DOUT=>DOUT,LEDOUT=>LED);U3:COUNTERPORTMAP(FIN=>FSIN,CLR=>CLR_CNT1,ENABL=>TSTEN1,DOUT=>DTO1);ENDstruc;5.28位是進制計數(shù)器LIBRARYIEEE;--8位十進制計數(shù)器USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCOUNTERISPORT(FIN:INSTD_LOGIC;--時鐘信號CLR:INSTD_LOGIC;--清零信號ENABL:INSTD_LOGIC;--計數(shù)使能信號DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));--計數(shù)結(jié)果ENDCOUNTER;ARCHITECTUREbehavOFCOUNTERISCOMPONENTCOUNTER10ISPORT(FIN:INSTD_LOGIC;--時鐘信號CLR:INSTD_LOGIC;--清零信號ENABL:INSTD_LOGIC;--計數(shù)使能信號DOUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0);--計數(shù)結(jié)果COUT:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALCLK1,CLK2,CLK3,CLK4,CLK5,CLK6,CLK7:STD_LOGIC;BEGINu1:COUNTER10PORTMAP(FIN=>FIN,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(3DOWNTO0),COUT=>CLK1);u2:COUNTER10PORTMAP(FIN=>CLK1,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(7DOWNTO4),COUT=>CLK2);u3:COUNTER10PORTMAP(FIN=>CLK2,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(11DOWNTO8),COUT=>CLK3);u4:COUNTER10PORTMAP(FIN=>CLK3,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(15DOWNTO12),COUT=>CLK4);u5:COUNTER10PORTMAP(FIN=>CLK4,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(19DOWNTO16),COUT=>CLK5);u6:COUNTER10PORTMAP(FIN=>CLK5,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(23DOWNTO20),COUT=>CLK6);u7:COUNTER10PORTMAP(FIN=>CLK6,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(27DOWNTO24),COUT=>CLK7);u8:COUNTER10PORTMAP(FIN=>CLK7,CLR=>CLR,ENABL=>ENABL,DOUT=>DOUT(31DOWNTO28));ENDARCHITECTUREbehav;5.310進制計數(shù)器LIBRARYIEEE;--10位計數(shù)器USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCOUNTER10ISPORT(FIN:INSTD_LOGIC;--時鐘信號CLR:INSTD_LOGIC;--清零信號ENABL:INSTD_LOGIC;--計數(shù)使能信號DOUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0);--計數(shù)結(jié)果COUT:OUTSTD_LOGIC);ENDCOUNTER10;ARCHITECTUREbehavOFCOUNTER10ISSIGNALCQI:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(FIN,CLR,ENABL)BEGINIFCLR='1'THENCQI<=(OTHERS=>'0');--清零ELSIFFIN'EVENTANDFIN='1'THENIFENABL='1'THENIFCQI<9THENCQI<=CQI+1;ELSECQI<=(OTHERS=>'0');ENDIF;ENDIF;ENDIF;IFCQI="1001"THENCOUT<='1';ELSECOUT<='0';ENDIF;ENDPROCESS;DOUT<=CQI;ENDbehav;5.4測頻控制電路LIBRARYIEEE;--測頻控制電路USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYFTCTRLISPORT(CLKK:INSTD_LOGIC;--1HzCNT_EN:OUTSTD_LOGIC;--計數(shù)器時鐘使能RST_CNT:OUTSTD_LOGIC;--計數(shù)器清零Load:OUTSTD_LOGIC);--輸出鎖存信號ENDFTCTRL;ARCHITECTUREbehavOFFTCTRLISSIGNALDiv2CLK:STD_LOGIC;BEGINPROCESS(CLKK)BEGINIFCLKK'EVENTANDCLKK='1'THEN--1Hz時鐘2分頻Div2CLK<=NOTDiv2CLK;ENDIF;ENDPROCESS;PROCESS(CLKK,Div2CLK)BEGINIFCLKK='0'ANDDiv2CLK='0'THENRST_CNT<='1';--產(chǎn)生計數(shù)器清零信號ELSERST_CNT<='0';ENDIF;ENDPROCESS;Load<=NOTDiv2CLK;CNT_EN<=Div2CLK;ENDbehav;5.532位鎖存器及其控制器LIBRARYIEEE;--32位鎖存器及控制器USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYREG32BISPORT(LK:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LEDOUT:OUTSTD_LOGIC_VECTOR(1DOWNTO0));ENDREG32B;ARCHITECTUREbehavOFREG32BISSIGNALDD:STD_LOGIC_VECTOR(31DOWNTO0);BEGINPROCESS(LK,DIN)BEGINIFLK'EVENTANDLK='1'THENDD<=DIN;ENDIF;ifDD(31DOWNTO28)="0000"thenIFDD(27DOWNTO16)="000000000000"THENDOUT<=DD(15DOWNTO0);LEDOUT<="01";ELSIFDD(27DOWNTO16)/="000000000000"THENDOUT<=DD(27DOWNTO12);LEDOUT<="11";endif;elseDOUT(15DOWNTO0)<="0000000000001110";LEDOUT<="00";ENDIF;ENDPROCESS;ENDbehav;6.引腳鎖定7.綜合結(jié)果7.1RTL電路7.2測頻控制電路7.38位十進制計數(shù)器7.332位鎖存器8.實驗結(jié)果7.實驗總結(jié)經(jīng)系統(tǒng)測試表明,本圖頻率計的各項功能正常,能實現(xiàn)對頻率的0~9999kHz頻率范圍的測量,并通過LED指示和數(shù)碼管顯示,操作簡單,是理想頻率計解決方案。經(jīng)過一個多星期的努力,本

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論