2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  本文主要論述了利用FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)進行測頻計數(shù),單片機實施控制實現(xiàn)頻率計的設(shè)計過程。該頻率計利用等精度的設(shè)計方法,克服了基于傳統(tǒng)測頻原理的頻率計的測量精度隨被測信號頻率的下降而降低的缺點。等精度的測量方法不但具有較高的測量精度,而且在整個頻率區(qū)域保持恒定

2、的測試精度。</p><p>  設(shè)計中用一塊FPGA芯片(型號為CycloneⅡ的EP2C5T144C8N)完成各種時序邏輯控制、計數(shù)功能。在QuartusⅡ平臺上,用VHDL語言編程完成了FPGA的軟件設(shè)計、編譯、調(diào)試、仿真和下載。用STC89C52RC單片機作為系統(tǒng)的主控部件,實現(xiàn)整個電路的測試信號控制,數(shù)據(jù)運算處理和控制數(shù)碼管的顯示輸出。系統(tǒng)將單片機的控制靈活性及FPGA芯片的現(xiàn)場可編程性相結(jié)合,不但大大

3、縮短了開發(fā)研制周期,而且使本系統(tǒng)具有結(jié)構(gòu)緊湊、體積小,可靠性高,測頻范圍寬、精度高等優(yōu)點。</p><p>  文章詳細論述了系統(tǒng)自上而下的設(shè)計方法及各部分硬件電路組成及單片機、FPGA的軟件編程設(shè)計。使用杭州康芯KX-7C5T型EDA實驗開發(fā)與電子設(shè)計學(xué)習(xí)板為主的實驗環(huán)境下,配合單片機最小系統(tǒng)對軟硬件進行仿真和驗證,達到了較高的測量精度和測量速度。</p><p>  關(guān)鍵詞:FPGA,

4、VHDL,頻率計,單片機,STC89C52RC</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p><b>  第一章 概 論1</b></p><p>  1.1課題研究的目的和意義1</p>&

5、lt;p>  1.2 測量原理1</p><p>  1.3 系統(tǒng)設(shè)計指標3</p><p>  第二章 硬件電路設(shè)計5</p><p>  2.1 系統(tǒng)頂層電路設(shè)計5</p><p>  2.2 FPGA測頻模塊邏輯設(shè)計5</p><p>  2.3 單片機主控模塊6</p><

6、p>  2.4 外圍電路設(shè)計8</p><p>  第三章 軟件設(shè)計11</p><p>  3.1 Quartus II概述11</p><p>  3.2 VHDL語言簡介12</p><p>  3.3 頻率計FPGA模塊的頂層設(shè)計12</p><p>  3.4 頻率計FPGA模塊的仿真14&

7、lt;/p><p>  3.5 單片機的C語言編程15</p><p>  第四章 系統(tǒng)測試17</p><p>  4.1 測頻精度分析17</p><p>  4.2實驗測試數(shù)據(jù)18</p><p><b>  第五章 總結(jié)19</b></p><p><

8、b>  致 謝21</b></p><p><b>  參考文獻23</b></p><p><b>  第一章 概 論</b></p><p>  1.1課題研究的目的和意義</p><p>  測頻一直以來都是電子和通訊系統(tǒng)工作的重要手段之一。高精度的測頻儀有著廣泛的市場

9、前景。以往的測頻儀都是在低頻段利用測周期的方法、高頻段用測頻率的方法,其精度往往會隨著被測頻率的下降而下降。</p><p>  基于傳統(tǒng)測頻原理的頻率計的測量精度將隨被測信號頻率的下降而降低,在實用中有較大的局限性,而等精度頻率計不但具有較高的測量精度,而且在整個測頻區(qū)域內(nèi)保持恒定的測試精度。所以等精度頻率計有研究的價值。</p><p><b>  1.2 測量原理</

10、b></p><p>  等精度測頻法:其實現(xiàn)方法可用主控結(jié)構(gòu)圖1-1和波形圖1-2來說明。</p><p>  圖1-1 等精度頻率計主控結(jié)構(gòu)圖</p><p>  圖1-2 頻率計測控時序</p><p>  圖1-1中的“預(yù)置門信號”CL由單片機發(fā)出,CL的時間寬度對測頻精度幾乎沒有影響,在此設(shè)其寬度為Tpr。BZH和TF模塊是兩

11、個可控的32位高速計數(shù)器,EN為它們的技術(shù)允許信號端,高電平有效。</p><p>  標準頻率信號從BZH的時鐘輸入端BCLK輸入,設(shè)其頻率為Fs;經(jīng)放大整形后的被測信號從與BZH相似的32位計數(shù)器TF的時鐘輸入端TCLK輸入,設(shè)其真實頻率值為Fxe,被測頻率為Fx。測頻原理說明如下:</p><p>  測頻開始前,首先發(fā)出一個清零信號CLR,使兩個計數(shù)器和D觸發(fā)器清零,同時通過信號E

12、N,禁止兩個計數(shù)器計數(shù)。這是一個初始化操作。如果系統(tǒng)啟動不能正常清零,可以由外部的按鍵強制清零。</p><p>  然后由單片機發(fā)出允許測頻信號,即令預(yù)置門控信號CL為高電平(把圖1-1和圖1-2結(jié)合起來看),這時D觸發(fā)器要一直等到被測信號的上升沿通過時Q端才被置1(即令START為高電平),與此同時,將同時啟動計數(shù)器BZH和TF,進入圖1-2所示的“計數(shù)允許周期”。在此期間,BZH和TF分別對被測信號(頻率為

13、Fx)和標準頻率信號(Fs=100MHz)同時計數(shù)。當Tpr秒后,預(yù)置門信號被單片機置為低電平,但此時兩個計數(shù)器仍沒有停止計數(shù),一直等到隨后而至的被測信號的上升沿到來時,才通過D觸發(fā)器將這兩個計數(shù)器同時關(guān)閉。由圖1-2可見,CL的寬度和發(fā)生的時間都不會影響這樣一個事實,計數(shù)使能信號(START)允許計數(shù)的周期總是恰好等于待測信號TCLK的完整周期數(shù),這正是確保TCLK在任何頻率條件下都能保持恒定精度的關(guān)鍵。而且,CL寬度的改變以及隨機的

14、出現(xiàn)時間造成的誤差最多只有BCLK信號的一個時鐘周期,但是BCLK是倍頻后的100MHz信號,則任何時刻的絕對測量誤差只有億分之一秒。</p><p>  被測頻率值為Fx,標準頻率為Fs,設(shè)在一次預(yù)置門時間Tpr中對被測信號計數(shù)值為Nx,對標準信號的計數(shù)值為Ns,則下式成立:</p><p>  Nx / Fx = Ns / Fs……………………①</p><p>

15、;<b>  由此式可推得:</b></p><p>  Fx = ( Fs×Nx ) / Ns…………………②</p><p>  最后通過控制SEL選擇信號和64位至8位的多路選擇器MUX64-8,將計數(shù)器BHZ和TF中兩個32位數(shù)據(jù)分8次讀入單片機并按式②進行計算和結(jié)果顯示。</p><p>  1.3 系統(tǒng)設(shè)計指標</p

16、><p>  設(shè)計并制作出一種數(shù)字頻率計,其技術(shù)指標如下: </p><p> ?。?)頻率測量范圍: 0.1Hz—128MHz; </p><p> ?。?)輸入電壓幅度: >300mV; </p><p>  (3)輸入信號波形:任意周期方波信號;</p><p> ?。?)顯示位數(shù): 8位LED數(shù)碼管顯示;&l

17、t;/p><p> ?。?)電源: 220V、50Hz。</p><p>  第二章 硬件電路設(shè)計</p><p>  2.1 系統(tǒng)頂層電路設(shè)計</p><p>  等精度數(shù)字頻率計涉及到的計算包括加、減、乘、除,耗用的資源比較大,用一般中小規(guī)模的FPGA芯片難以實現(xiàn)。因此,我們選擇單片機和FPGA的結(jié)合來實現(xiàn)。電路系統(tǒng)原理圖如圖2-1所示,其中

18、單片機完成整個測量電路的測試控制、數(shù)據(jù)處理和顯示輸出;FPGA完成測頻功能。顯示電路采用7段LED動態(tài)顯示,由單片機P2口直接驅(qū)動。</p><p>  圖2-1 系統(tǒng)原理圖</p><p>  等精度頻率計主要由由以下幾個部分構(gòu)成:</p><p> ?、傩盘柗糯笳坞娐罚河糜趯Υ郎y信號進行放大整形,以便作為FPGA的輸入信號。</p><p&

19、gt;  ②測頻電路:是測頻的核心模塊,由FPGA擔(dān)任。</p><p>  ③單片機模塊:用于控制FPGA的測頻操作和讀取測頻數(shù)據(jù),并發(fā)出相應(yīng)數(shù)據(jù)處理。安排單片機的P0口直接讀取測試數(shù)據(jù)??刂泼顝腜1口或是P3的相關(guān)口線發(fā)出。</p><p> ?、?0MHz的標準頻率信號源:本模塊采用倍頻技術(shù),倍頻出一個100MHz標準頻率信號源,產(chǎn)生100MHz的標準頻率給FPGA使用。</

20、p><p> ?、輸?shù)碼管顯示模塊:采用8個7段LED動態(tài)顯示,使用P2口作為段信息的輸出,使用P1口的低四位控制串行移位寄存器的三個輸入及CLK端,實現(xiàn)LED的動態(tài)掃描。</p><p>  2.2 FPGA測頻模塊邏輯設(shè)計</p><p>  根據(jù)圖1-1和圖1-2以及測頻原理說明,可以比較容易地寫出相應(yīng)的VHDL功能描述。圖2-2為VHDL描述的RTL電路圖(圖中s

21、pul為外部清零信號,由按鍵輸入)。</p><p>  與單片機的接口按照如下方式連接:</p><p>  單片機的P0口接8位數(shù)據(jù)DATA[7..0],負責(zé)讀取測頻數(shù)據(jù);</p><p>  START信號輸出到單片機的P3.2口線,通過中斷的方式來判斷計數(shù)是否結(jié)束,以確定何時可以讀取數(shù)據(jù);</p><p>  P1.6,P1.5和P1

22、.4與SEL[2..0]相接,用于控制多路數(shù)據(jù)選擇器,當SEL分別為“000”、“001”、“010”、“011”時,由低8位到高8位讀出標準頻率計數(shù)值;當SEL分別為“100”、“101”、“110”、“111”時,由低8位到高8位讀出待測頻率計數(shù)值。</p><p>  圖2-2等精度頻率計FPGA部分的RTL電路圖</p><p>  P3.3接清零信號CLR,高電平有效。每一個測頻

23、周期開始,都應(yīng)該首先清零。</p><p>  P1.7接預(yù)置門控信號CL,CL是由定時器T0產(chǎn)生的一個周期為2S的方波信號,即每隔1S鐘左右測試一次頻率,頻率低于1Hz后,測頻的間隔會大于1S鐘,特別是待測頻率為0.1Hz時,每隔10S鐘測試一次。</p><p>  2.3 單片機主控模塊</p><p>  STC89C52RC單片機是宏晶科技推出的新一代超強

24、抗干擾/高速/低功耗的單片機,指令代碼完全兼容傳統(tǒng)的8051單片機,12時鐘/機器周期和6時鐘/機器周期可以任意選擇。其封裝有LQFP44,PDIP40,PLCC44及PQFQ44,本設(shè)計中所使用的是PDIP40封裝,圖形如圖2-3所示。</p><p>  圖2-3 STC89C52RC單片機PDIP40封裝圖</p><p>  STC89C52RC單片機特點如下:</p>

25、<p> ?、拧⒃鰪娦?時鐘/機器周期、12時鐘/機器周期任意設(shè)置。</p><p> ?、?、工作電壓:5.5~3.4V(5V單片機)/2.0~3.8V(3V單片機)。</p><p> ?、恰⒐ぷ黝l率:0~40MHz,相當于普通8051單片機;實際使用范圍為0~80MHz。</p><p> ?、?、8KB片內(nèi)Flash程序存儲器,擦寫次數(shù)10萬次以上

26、。</p><p>  ⑸、片上集成512B RAM數(shù)據(jù)存儲器。</p><p>  ⑹、通用I/O口(32/36個),復(fù)位后為: P1、P2、 P3、P4是弱上拉/準雙向口(與普通MCS-51 I/O口功能一樣);P0口是開漏輸出口,作為總線擴展時用,不用加上拉電阻;P0口作為I/O口用時,需加上拉電阻。</p><p> ?、?、ISP在系統(tǒng)可編程,無需專用編程器

27、/仿真器,可通過串口(P30/ P31)直接下載用戶程序,8KB程序3s即可完成一片。</p><p> ?、?、芯片內(nèi)置EEPROM功能。</p><p> ?、?、硬件看門狗(WDT)。</p><p>  ⑽、共3個16位定時器/計數(shù)器,兼容普通MCS-51單片機的定時器,其中定時器T0還可以當成2個8位定時器使用。 </p><p>  

28、⑾、外部中斷4路,下降沿中斷或低電平觸發(fā)中斷,掉電模式可由外部中斷喚醒。</p><p>  ⑿、全雙工異步串行口(UART),兼容普通8051單片機的串口。</p><p>  ⒀、工作溫度范圍:0℃~75℃/-40℃~+85℃。</p><p>  除此之外,STC89C52RC單片機自身還有很多獨特的優(yōu)點:</p><p> ?、拧⒓用?/p>

29、性強, 無法解密。</p><p> ?、?、超強抗干擾。主要表現(xiàn)在:高抗靜電(ESD保護),可以輕松抗御2KV/4KV快速脈沖干擾(EFT測試),寬電壓、不怕電源抖動,寬溫度范圍為-40℃~+85℃,I/O口經(jīng)過特殊處理,單片機內(nèi)部的電源供電系統(tǒng)、時鐘電路、復(fù)位電路及看門狗電路經(jīng)過特殊處理。</p><p>  ⑶、三大降低單片機時鐘對外部電磁輻射的措施:禁止ALE 輸出;如選6 時鐘/

30、機器周期,外部時鐘頻率可降一半;單片機時鐘振蕩器增益可設(shè)為1/2gain;</p><p> ?、?、超低功耗:掉電模式,典型電流損耗<0.1μA;空閑模式,典型電流損耗為2mA;正常工作模式,典型電流損耗4mA~7mA。</p><p>  2.4 外圍電路設(shè)計</p><p><b>  1、電源模塊</b></p>&l

31、t;p>  整個電路的供電電源如圖2-4所示,220V交流經(jīng)變壓、整流、濾波后,由一片78L05三端穩(wěn)壓器向系統(tǒng)提供+5V電壓信號。</p><p><b>  圖2-4 電源模塊</b></p><p>  2、LED數(shù)碼管顯示電路</p><p>  本設(shè)計中采用LED數(shù)碼管動態(tài)顯示。8位數(shù)碼管采用兩個4位一體的共陽型數(shù)碼管組成;段信

32、息使用單片機的P2控制;為了節(jié)約口線,在位的控制上,采用了一片74LS138芯片,把A,B,C三個腳分別用P1.0、P1.1及P1.2控制,此外把6號腳接單片機P1.3腳,用來控制數(shù)碼管的亮滅。電路圖如圖2-5所示。</p><p>  圖2-5 LED數(shù)碼管顯示電路</p><p><b>  3、其他電路</b></p><p>  單片機

33、的時鐘電路由12MHz的晶振提供。FPGA的標準頻率信號由20MHz的有源晶振提供。被測信號經(jīng)過放大整形電路調(diào)理后輸入。</p><p><b>  第三章 軟件設(shè)計</b></p><p>  3.1 Quartus II概述</p><p>  Quartus II是Altera提供的FPGA/CPLD開發(fā)集成環(huán)境,Altera是世界最大可

34、編程邏輯器件供應(yīng)商之一。Quartus II在21世紀初推出,是Altera前一代FPGA/CPLD集成開發(fā)環(huán)境MAX十plus II的更新?lián)Q代產(chǎn)品,其界面友好,使用便捷。在Quartus II上可以完成FPGA開發(fā)的整個流程,它提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,使設(shè)計者能方便地進行設(shè)計輸入、快速處理和器件編程。</p><p>  Altera的Quartus II提供了完整的多平臺設(shè)計環(huán)境,能滿足各種特定設(shè)計的

35、需要,也是單芯片可編程系統(tǒng)(SOPC)設(shè)計的綜合性環(huán)境和SOPC開發(fā)的基本設(shè)計工具,并為Altera DSP開發(fā)包進行系統(tǒng)模型設(shè)計提供了集成綜合環(huán)境。Quartus II設(shè)計工具完全支持VHDL, Verilog的設(shè)計流程,其內(nèi)部嵌有VHDL, Verilog邏輯綜合器。Quartus II也可以利用第三方的綜合工具,如Leonardo Spectrum, Synplify Pro,FPGA Compiler II,并能直接調(diào)用這些工具

36、。同樣,Quartus II具備仿真功能,同時也支持第三方的仿真工具,如ModelSim。此外,QuartusII與MATLAB和DSP Builder結(jié)合,可以進行基于FPGA的DSP系統(tǒng)開發(fā),是DSP硬件系統(tǒng)實現(xiàn)的關(guān)鍵EDA工具。</p><p>  Quartus II包括模塊化的編譯器。編譯器包括的功能模塊有分析/綜合器(Analysis&Synthesis)、適配器(Fitter)、裝配器(As

37、sembler)、時序分析器(Timing Analyzer)、設(shè)計輔助模塊(Design Assistant)、EDA網(wǎng)表文件生成器(EDA Netlist Writer)和編輯數(shù)據(jù)接口(Compiler Database Interface)等??梢酝ㄟ^選擇Start Compilation來運行所有的編譯器模塊,也可以通過選擇Start單獨運行各個模塊。還可以通過選擇Compiler Tool (Tools菜單),在Compil

38、erTool窗口中運行該模塊來啟動編譯器模塊。在Compiler Tool窗口中,可以打開該模塊的設(shè)置文件或報告文件,或打開其他相關(guān)窗口。</p><p>  此外,Quartos II還包含許多十分有用的LPM (Library of Parameterized Modules)模塊,它們是復(fù)雜或高級系統(tǒng)構(gòu)建的重要組成部分,在SOPC設(shè)計中被大量使用,也可在Quartos II普通設(shè)計文件一起使用。Altera

39、提供的LPM函數(shù)均基于Altera器件的結(jié)構(gòu)做了優(yōu)化設(shè)計。在許多實用情況中,必須使用宏功能模塊才可以使用一些Altera特定器件的硬件功能。例如各類片上存儲器、DSP模塊、LVDS驅(qū)動器、PLL以及SERDES和DDIO電路模塊等。</p><p>  Quartus II編譯器支持的硬件描述語言有VHDL(支持VHDL' 87及VHDL' 97標準)、Verilog HDL及AHDL (Alte

40、ra HDL),AHDL是Altera公司自己設(shè)計、制定的硬件描述語言,是一種以結(jié)構(gòu)描述方式為主的硬件描述語言,只有企業(yè)標準。</p><p>  Quartus II允許來自第三方的EDIF文件輸入,并提供了很多EDA軟件的接口,Quartus II支持層次化設(shè)計,可以在一個新的編輯輸入環(huán)境中對使用不同輸入設(shè)計方式完成的模塊(元件)進行調(diào)用,從而解決了原理圖與HDL混合輸入設(shè)計的問題。在設(shè)計輸入之后,Quart

41、us II的編譯器將給出設(shè)計輸入的錯誤報告。Quartus II擁有性能良好的設(shè)計錯誤定位器,用于確定文本或圖形設(shè)計中的錯誤。對于使用HDL的設(shè)計,可以使用Quartus II帶有的RTL Viewer觀察綜合后的RTL圖。在進行編譯后,可對設(shè)計進行時序仿真。在作仿真前,需要利用波形編輯器編輯一個波形激勵文件,用于仿真驗證時的激勵。編譯和仿真經(jīng)檢測無誤后,便可以將下載信息通過QuartusII提供的編程器下載入目標器件中了。</p

42、><p>  3.2 VHDL語言簡介</p><p>  20處紀80年代后期,美國國防部開發(fā)的VHDL語言(VHS工C硬件描寫語言,VHSIC是非常高度迅速綜合的電路的縮寫)是工EEE標準化的硬件描述語言,并且已經(jīng)成為系統(tǒng)描述的國際公認標準,得到眾多EDA公司的支持。</p><p>  VHDL語言覆蓋面廣,描述能力強,能支持硬件的設(shè)計子驗證、綜合和測試,是一種多

43、層次的硬件描述語言。其設(shè)計描述可以是描述電路具體組成的結(jié)構(gòu)描述,也可以是描述電路功能的行為描述。這些描述可以從最抽象的系統(tǒng)級直到最精確的邏輯級,甚至門級。</p><p>  運用VHDL語言設(shè)計系統(tǒng)一般采用自頂向下分層設(shè)計的方法,首先從系統(tǒng)級功能設(shè)計開始,對系統(tǒng)高層模塊進行行為描述和功能仿真。系統(tǒng)的功能驗證完成后,將抽象的高層設(shè)計自頂向下逐級細化,直到與所用可編程邏輯器件相對應(yīng)的邏輯描述。</p>

44、<p>  3.3 頻率計FPGA模塊的頂層設(shè)計</p><p>  在本測頻系統(tǒng)中,對標準頻率信號和被測信號進行測試功能的工作由FPGA來完成。其硬件電路的實現(xiàn)在前面已述,其軟件部分由VHDL語言實現(xiàn)。下面將給出由VHDL語言實現(xiàn)的頂層模塊程序。</p><p>  頻率計測試模塊GW.VHD</p><p>  LIBRARY IEEE;</p

45、><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY GW IS</p><p>  PORT(BCLK:IN STD_LOGIC; --標準頻率時鐘信號</p><p>  TCLK

46、:IN STD_LOGIC; --待測頻率時鐘信號</p><p>  CLR :IN STD_LOGIC; --清零和初始化信號</p><p>  CL :IN STD_LOGIC; --預(yù)置門信號</p><p>  SPUL:IN STD_LOGIC; --清零,由按鍵產(chǎn)生信號</p><p>  START:OUT STD

47、_LOGIC; --起始計數(shù)標識信號</p><p>  SEL: IN STD_LOGIC_VECTOR(2 DOWNTO 0);</p><p>  DATA:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)</p><p><b>  );</b></p><p><b>  END

48、GW;</b></p><p>  ARCHITECTURE behav of GW IS</p><p>  SIGNAL BZQ:STD_LOGIC_VECTOR(31 DOWNTO 0);</p><p>  SIGNAL TSQ:STD_LOGIC_VECTOR(31 DOWNTO 0);</p><p>  SIGNAL

49、 ENA,PUL:STD_LOGIC; --計數(shù)使能、脈寬計數(shù)使能</p><p><b>  BEGIN</b></p><p>  START <=ENA;</p><p>  DATA <=BZQ(7 DOWNTO 0) WHEN SEL="000" ELSE</p><p&g

50、t;  BZQ(15 DOWNTO 8) WHEN SEL="001" ELSE</p><p>  BZQ(23 DOWNTO 16) WHEN SEL="010" ELSE</p><p>  BZQ(31 DOWNTO 24) WHEN SEL="011" ELSE</p><p>  TSQ(7

51、 DOWNTO 0) WHEN SEL="100" ELSE</p><p>  TSQ(15 DOWNTO 8) WHEN SEL="101" ELSE</p><p>  TSQ(23 DOWNTO 16) WHEN SEL="110" ELSE</p><p>  TSQ(31 DOWNTO 24

52、) WHEN SEL="111" ;</p><p>  BZH:PROCESS(SPUL,BCLK,CLR,ENA)</p><p><b>  BEGIN</b></p><p>  IF(SPUL='1')THEN BZQ<=(OTHERS=>'0');</p>

53、<p>  ELSIF(CLR='1')THEN BZQ<=(OTHERS=>'0');</p><p>  ELSIF BCLK'EVENT AND BCLK='1' THEN</p><p>  IF ENA='1' THEN BZQ<=BZQ + 1 ;</p><

54、;p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  TF: PROCESS(SPUL,TCLK,CLR,ENA)</p><p><b>  BEGIN</b>&l

55、t;/p><p>  IF(SPUL='1')THEN TSQ<=(OTHERS=>'0');</p><p>  ELSIF(CLR='1')THEN TSQ<=(OTHERS=>'0');</p><p>  ELSIF TCLK'EVENT AND TCLK='

56、1' THEN</p><p>  IF ENA ='1' THEN TSQ<=TSQ + 1;</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p>

57、<p>  PROCESS(TCLK,CLR)</p><p><b>  BEGIN</b></p><p>  --IF(SPUL='1')THEN ENA<='0';</p><p>  IF CLR='1' THEN ENA <='0';</p&

58、gt;<p>  ELSIF TCLK'EVENT AND TCLK='1' THEN ENA<=CL;</p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  END behav;</p><p>  圖3-1 頻

59、率計測試模塊</p><p>  3.4 頻率計FPGA模塊的仿真</p><p>  對頻率計測試模塊編譯,仿真結(jié)果如圖3-2所示。</p><p>  圖3-2 頻率計測試仿真波形</p><p>  從圖3-2可以看出,CLR一個正脈沖后,系統(tǒng)被初始化。然后CL被置為高電平,但這時兩個計數(shù)器并未開始計數(shù)(start=‘0’),直到此后被

60、測信號TCLK出現(xiàn)一個上升沿,START=‘1’時2個計數(shù)器同時啟動分別對被測信號和標準信號開始計數(shù),其中BZQ和TSQ分別為標準頻率計數(shù)器和被測頻率計數(shù)器的計數(shù)值。由圖可見,在CL變?yōu)榈碗娖胶?,計?shù)器仍未停止,直到TCLK出現(xiàn)一個上升沿為止,這時START=‘0’,可作為單片機了解計數(shù)器結(jié)束的標識信號。仿真波形中TCLK和BCLK的周期分別設(shè)置為10us和500ns。由圖可見,計數(shù)結(jié)果是,對TCLK的計數(shù)值是3,對BCLK的計數(shù)值為6

61、0。通過控制SEL就能按照8個8位將計數(shù)器中的32位數(shù)讀入單片機中進行計算。</p><p>  由公式Fx = ( Fs×Nx ) / Ns=2MHz×3/60=0.1MHz,也就是周期為10us,可以驗證圖1-1描述的等精度測頻的功能完全正確。</p><p>  3.5 單片機的C語言編程</p><p>  單片機在該系統(tǒng)中,主要是完成整

62、個測量電路的測試控制、數(shù)據(jù)處理和顯示輸出。系統(tǒng)啟動后,如不能正常測試,可以由按鍵強制性清零。主程序不斷的掃描顯示程序,并掃描計數(shù)結(jié)束標識START是否為零,一旦為零,立即把FPGA的兩個計數(shù)器技術(shù)結(jié)果取出、計算,把計算的結(jié)果送去顯示。在資源的分配上,除了用于控制FGPA的外,P2口用來進行LED數(shù)碼管段信息的處理;P1口的低四位用來控制LED數(shù)碼管的位(其中P1.0,P1.1,P1.2控制74LS138的三個輸入端A,B,C實現(xiàn)3-8譯

63、碼,P1.3控制74LS138的CLR端,用以實現(xiàn)位的關(guān)和開);P3.5,P3.6,P3.7控制測頻后的單位顯示(P3.5是MHz,P3.6是KHZ)。主程序主要是用來顯示和測頻,流程圖如圖3-3所示。</p><p>  圖3-3 單片機主程序流程圖</p><p><b>  第四章 系統(tǒng)測試</b></p><p>  4.1 測頻精度

64、分析</p><p>  由第一章所述的測量原理可知,本系統(tǒng)的測頻公式為:Fx = ( Fs×Nx ) / Ns</p><p><b>  其誤差分析如下:</b></p><p>  設(shè)所測頻率值為Fx,其真實值為Fxe,標準頻率為Fs。在一次測量中,由于Fx計數(shù)的起停時間都是由該信號的上跳沿觸發(fā)的,在Tpr時間內(nèi)Fx的計數(shù)Nx無

65、誤差;此時內(nèi)的計數(shù)Ns最多相差一個脈沖,即|⊿Ns|≤1則:</p><p>  Fx/Nx=Fs/Ns</p><p>  Fxe/Nx=Fs/(Ns+⊿Ns)</p><p><b>  由此推得:</b></p><p>  Fx=(Fs/Ns)×Nx</p><p>  Fxe=

66、[Fs/(Ns+⊿Ns)] ×Nx</p><p>  根據(jù)相對誤差公式有:</p><p>  ⊿Fxe/Fxe=|Fxe-Fx|/Fxe</p><p><b>  可以得:</b></p><p>  ⊿Fxe/Fxe=|⊿Ns|/Ns</p><p>  ∵|⊿Ns|≤1 ∴|⊿

67、Ns|/Ns≤1/Ns</p><p>  即相對誤差⊿Fxe/Fxe≤1/Ns</p><p>  又Ns=Tpr×Fs</p><p><b>  由此可知:</b></p><p> ?。?)相對測量誤差與頻率無關(guān);</p><p> ?。?)增大Tpr或提高Fs,可以增大Ns,減

68、少測量誤差,提高測量精度;</p><p> ?。?)本測頻系統(tǒng)的測量精度與預(yù)置門寬度和標準頻率有關(guān),與被測信號的頻率無關(guān)。</p><p>  在預(yù)置門時間和常規(guī)測頻閘門時間相同而被測信號頻率不同的情況下,本測頻系統(tǒng)所采用的測量方法的測量精度不變。為了恒定測量精度,可采用高頻率穩(wěn)定度和高精度晶體振蕩器作標準頻率發(fā)生器。本系統(tǒng)選用了20MHz的有源晶振,通過倍頻技術(shù)倍頻到100MHz。&l

69、t;/p><p><b>  4.2實驗測試數(shù)據(jù)</b></p><p>  在系統(tǒng)設(shè)計好后,利用FPGA在不同的引腳上發(fā)出標準的頻率值進行測量,結(jié)果如表4-1所示。</p><p>  表4-1:FPGA發(fā)出的標準信號測量結(jié)果</p><p>  測試由信號源發(fā)出的頻率時,測量值如表4-2所示。測量條件:方波,幅度為Vpp

70、=10V。</p><p>  表4-2:SP1641B型函數(shù)信號發(fā)生器發(fā)出的信號測量結(jié)果</p><p>  從測試結(jié)果看,測量TTL電平的方波時,精度還是很高的。由于放大整形電路沒有實現(xiàn),所以暫時無法測試正弦波。</p><p><b>  第五章 總結(jié)</b></p><p>  該測頻系統(tǒng)經(jīng)過軟硬件設(shè)計,經(jīng)過實驗

71、仿真分析及驗證,各項功能達到預(yù)定的設(shè)計指標。在開發(fā)過程中,綜合運用了QuartusII、Keil、Protel99SE等開發(fā)工具,使用了VHDL及C語言,在論文寫作及作圖時還用到了Word、Visio、畫圖板等軟件。</p><p>  該系統(tǒng)的特點是克服了傳統(tǒng)的測頻法或測周法的不足,能在頻率范圍變化較大時,都有比較高的測量精度。具有以下突出特點:</p><p> ?。?)在系統(tǒng)總體設(shè)計

72、方面,充分利用單片機和FPGA各自的優(yōu)勢,將測控的主體分配給FPGA,既可滿足測頻對速度方面的要求和多I/O口的要求,同時利用單片機具有良好的人機接口和控制運算的功能,可以較簡單地實現(xiàn)顯示控制和數(shù)據(jù)處理運算。</p><p> ?。?)在測頻方面,由于采用了等精度測頻法,使該系統(tǒng)具有以下特點:①相對測量誤差與被測頻率的高低無關(guān);②增大Tpr或Fs可以增大Ns,減少測量誤差,提高測量精度;③本測頻系統(tǒng)的測量精度與預(yù)

73、置門寬度和標準頻率有關(guān),與被測信號的頻率無關(guān)。在預(yù)置門時間和常規(guī)測頻閘門時間相同而被測信號頻率不同的情況下,本測頻系統(tǒng)所采用的測量方法的測量精度不變。</p><p> ?。?)在顯示方面,采用動態(tài)顯示,簡化了驅(qū)動電路的設(shè)計。</p><p>  由于時間和實驗條件所限,本系統(tǒng)只能測試方波信號,且信號的幅度要大于3V,這是因為在硬件上存在不足,需要進一步的完善和提高。</p>

74、<p><b>  致 謝</b></p><p>  在論文完成之際,我首先向關(guān)心幫助和指導(dǎo)我的指導(dǎo)老師許金星表示衷心的感謝并致以崇高的敬意!</p><p>  在論文工作中,我遇到了很多問題,論文的格式,專業(yè)的知識部分,一直得到許金星老師的親切關(guān)懷和悉心指導(dǎo),老師淵博的學(xué)識、嚴謹?shù)闹螌W(xué)態(tài)度、求實的工作作風(fēng)一直感染著我,他敏捷專業(yè)的思維給我留下了深刻

75、的印象,我將終生難忘,再一次向許金星老師表示衷心的感謝,感謝他為學(xué)生營造的濃郁學(xué)術(shù)氛圍,以及學(xué)習(xí)、生活上的無私幫助! 值此論文完成之際,謹向許金星老師致以最崇高的謝意!</p><p>  光陰似箭,默然回首,在學(xué)校的學(xué)習(xí)生活即將結(jié)束,回顧兩年多來的學(xué)習(xí)經(jīng)歷,面對現(xiàn)在的收獲,我感到無限欣慰。為此,我向熱心幫助過我的所有老師和同學(xué)表示由衷的感謝!</p><p>  在我即將完成學(xué)業(yè)之際,我

76、深深地感謝我的家人給予我的全力支持!</p><p>  最后,衷心地感謝在百忙之中評閱論文和參加答辯的各位專家、教授!</p><p><b>  參考文獻</b></p><p>  [1]潘松,黃繼業(yè). EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2005年.</p><p>  [2]朱正偉. EDA技術(shù)及

77、其應(yīng)用[M].北京:清華大學(xué)出版社,2005年.</p><p>  [3]延明,張亦華. 數(shù)字電路EDA技術(shù)入門[M].北京:北京郵電大學(xué)出版社,2006年.</p><p>  [4]譚會生,張昌凡. EDA技術(shù)及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2004年.</p><p>  [5]康華光,陳大欽. 電子技術(shù)基礎(chǔ)數(shù)字部分(第4版)[M].北京:高等教

78、育出版社,1999年.</p><p>  [6]王道憲. CPLD/FPGA可編程邏輯器件編程與開發(fā)[M].北京:國防工業(yè)出版社,2004年.</p><p>  [7]王振紅. VHDL數(shù)字電路設(shè)計與應(yīng)用實踐教程[M].北京:機械工業(yè)出版社,2003年.</p><p>  [8] 趙鑫,蔣亮,齊兆群. VHDL與數(shù)字電路設(shè)計[M].北京:機械工業(yè)出版社, 20

79、05年.</p><p>  [9]黃仁欣.EDA技術(shù)使用教程[M].北京:清華大學(xué)出版社,2006年.</p><p>  [10]褚振勇,齊亮,田紅心,高楷娟.FPGA設(shè)計及應(yīng)用(第二版)[M].西安:西安電子科技大學(xué)出版社,2006年</p><p>  [11]豈興明,唐杰,趙沛等.51單片機編程基礎(chǔ)與開發(fā)實例詳解[M].北京:人民郵電出版社,2008年.&

80、lt;/p><p>  [12]劉夫江.基于單片機和CPLD的等精度數(shù)字頻率計設(shè)計[D] :[碩士學(xué)位論文].山東:山東大學(xué),2007年 </p><p>  [13]李芳.基于VHDL的多功能數(shù)字頻率及的設(shè)計[D] :[碩士學(xué)位論文].北京:北方工業(yè)大學(xué),2009年 </p><p>  [14]包本剛.基于FPGA的全同步數(shù)字頻率計的設(shè)計[D] :[碩士學(xué)位論文].

溫馨提示

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

評論

0/150

提交評論