《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的高速高精度頻率測量的研究
基于FPGA的高速高精度頻率測量的研究
摘要: 常用的直接測頻方法在實(shí)用中有較大的局限性,其測量精度隨著被測信號(hào)頻率的下降而降低,并且對被測信號(hào)的計(jì)數(shù)要產(chǎn)生±1個(gè)數(shù)字誤差。采用等精度頻率測量方法具有測量精度,測量精度保持恒定,不隨所測信號(hào)的變化而變化.
關(guān)鍵詞: FPGA 頻率測量 AT89C51 EPF10K10LC84
Abstract:
Key words :

引言

在電子測量技術(shù)中,測頻是最基本的測量之一。常用的直接測頻方法在實(shí)用中有較大的局限性,其測量精度隨著被測信號(hào)頻率的下降而降低,并且對被測信號(hào)的計(jì)數(shù)要產(chǎn)生±1個(gè)數(shù)字誤差。采用等精度頻率測量" title="頻率測量">頻率測量方法具有測量精度,測量精度保持恒定,不隨所測信號(hào)的變化而變化;并且結(jié)合現(xiàn)場可編程門陣列FPGA" title="FPGA">FPGA(Field Programmable Gate Array)具有集成度高、高速和高可靠性的特點(diǎn),使頻率的測頻范圍可達(dá)到0.1Hz~100MHz,測頻全域相對誤差恒為1/1 000 000,

1 測頻原理及誤差分析

常用的直接測頻方法主要有測頻法和測周期法兩種。測頻法就是在確定的閘門時(shí)間Tw內(nèi),記錄被測信號(hào)的變化周期數(shù)(或脈沖個(gè)數(shù))Nx,則被測信號(hào)的頻率為:fx=Nx/Tw。測周期法需要有標(biāo)準(zhǔn)信號(hào)的頻率fs,在待測信號(hào)的一個(gè)周期Tx內(nèi),記錄標(biāo)準(zhǔn)頻率的周期數(shù)Ns,則被測信號(hào)的頻率為:fx=fs/Ns。這兩種方法的計(jì)數(shù)值會(huì)產(chǎn)生±1個(gè)字誤差,并且測試精度與計(jì)數(shù)器中記錄的數(shù)值Nx或Ns有關(guān)。為了保證測試精度,一般對于低頻信號(hào)采用測周期法;對于高頻信號(hào)采用測頻法,因此測試時(shí)很不方便,所以人門提出等精度測頻方法。

等精度測頻方法是在直接測頻方法的基礎(chǔ)上發(fā)展起來的。它的閘門時(shí)間不是固定的值,而是被測信號(hào)周期的整數(shù)倍,即與被測信號(hào)同步,因此,測除了對被測信號(hào)計(jì)數(shù)所產(chǎn)生±1個(gè)字誤差,并且達(dá)到了在整個(gè)測試頻段的等精度測量。其測頻原理如圖1所示。


在測量過程中,有兩個(gè)計(jì)數(shù)器分別對標(biāo)準(zhǔn)信號(hào)和被測信號(hào)同時(shí)計(jì)數(shù)。首先給出閘門開啟信號(hào)(預(yù)置閘門上升沿),此時(shí)計(jì)數(shù)器并不開始計(jì)數(shù),而是等到被測信號(hào)的上升沿到來時(shí),計(jì)數(shù)器才真正開始計(jì)數(shù)。然后預(yù)置閘門關(guān)閉信號(hào)(下降沿)到時(shí),計(jì)數(shù)器并不立即停止計(jì)數(shù),而是等到被測信號(hào)的上升沿到來時(shí)才結(jié)束計(jì)數(shù),完成一次測量過程。可以看出,實(shí)際閘門時(shí)間τ與預(yù)置閘門時(shí)間τ1并不嚴(yán)格相等,但差值不超過被測信號(hào)的一個(gè)周期。

設(shè)在一次實(shí)際閘門時(shí)間τ中計(jì)數(shù)器對被測信號(hào)的計(jì)數(shù)值為Nx,對標(biāo)準(zhǔn)信號(hào)的計(jì)數(shù)值為Ns。標(biāo)準(zhǔn)信號(hào)的頻率為fs,則被測信號(hào)的頻率為

由式(1)可知,若忽略標(biāo)頻fs的誤差,則等精度測頻可能產(chǎn)生的相對誤差為

δ=(|fxc-fx|/fxe)×100% (2)

其中fxe為被測信號(hào)頻率的準(zhǔn)確值。

在測量中,由于fx計(jì)數(shù)的起停時(shí)間都是由該信號(hào)的上升測觸發(fā)的,在閘門時(shí)間τ內(nèi)對fx的計(jì)數(shù)Nx無誤差(τ=NxTx);對fs的計(jì)數(shù)Ns最多相差一個(gè)數(shù)的誤差,即|ΔNs|≤1,其測量頻率為

fxe=[Nx/(Ns+ΔNs)]/fs (3)

將式(1)和(3)代入式(2),并整理得:

δ=|ΔNs|/Ns≤1/Ns=1/(τ·fs)

由上式可以看出,測量頻率的相對誤差與被測信號(hào)頻率的大小無關(guān),僅與閘門時(shí)間和標(biāo)準(zhǔn)信號(hào)頻率有關(guān),即實(shí)現(xiàn)了整個(gè)測試頻段的等精度測量。閘門時(shí)間越長,標(biāo)準(zhǔn)頻率越高,測頻的相對誤差就越小。標(biāo)準(zhǔn)頻率可由穩(wěn)定度好、精度高的高頻率晶體振蕩器產(chǎn)生,在保證測量精度不變的前提下,提高標(biāo)準(zhǔn)信號(hào)頻率,可使閘門時(shí)間縮短,即提高測試速度。表1所列為標(biāo)頻在10MHz時(shí)閘門時(shí)間與最大允許誤差的對應(yīng)關(guān)系。

表1 閘門時(shí)間與精度的關(guān)系

閘門時(shí)間/s 精   度
0.01
0.1
1
10 -5
10 -6
10 -7

 

等精度測頻的實(shí)現(xiàn)方法可簡化為圖2所示的框圖。CNT1和CNT2是兩個(gè)可控計(jì)數(shù)器,標(biāo)準(zhǔn)頻率(fs)信號(hào)從CNT1的時(shí)鐘輸入端CLK輸入;經(jīng)整形后的被測信號(hào)(fx)從CNT2的時(shí)鐘輸入端CLK輸入。每個(gè)計(jì)數(shù)器中的CEN輸入端為時(shí)鐘使能端控制時(shí)鐘輸入。當(dāng)預(yù)置門信號(hào)為高電平(預(yù)置時(shí)間開始)時(shí),被測信號(hào)的上升沿通過D觸發(fā)器的輸出端,同時(shí)啟動(dòng)兩個(gè)計(jì)數(shù)器計(jì)數(shù);同樣,當(dāng)預(yù)置門信號(hào)為低電平(預(yù)置時(shí)間結(jié)束)時(shí),被測信號(hào)的上升沿通過D觸發(fā)器的輸出端,同時(shí)關(guān)閉計(jì)數(shù)器的計(jì)數(shù)。


2 硬件設(shè)計(jì)

在快速測量的要求下,要保證較高精度的測頻,必須采用較高的標(biāo)準(zhǔn)頻率信號(hào);而單片機(jī)受本身時(shí)鐘頻率和若干指令運(yùn)算的限制,測頻速度較慢,無法滿足高速、高精度的測頻要求。采用高集成度、高速的現(xiàn)場可編程門陣列FPGA為實(shí)現(xiàn)高速,高精度的測頻提供了保證。

FPGA是20世紀(jì)90年代發(fā)展起來的大規(guī)模可編程邏輯器件,隨著EDA(電子設(shè)計(jì)自動(dòng)化)技術(shù)和微電子技術(shù)的進(jìn)步,F(xiàn)PGA的時(shí)鐘延遲可達(dá)到ns級(jí),結(jié)合其并行工作方式,在超高速、實(shí)時(shí)測控方面有非常廣闊的應(yīng)用前景;并且FPGA具有高集成度、高可靠性,幾乎可將整個(gè)設(shè)計(jì)系統(tǒng)下載于同一芯片中,實(shí)現(xiàn)所謂片上系統(tǒng),從而大大縮小其體積。

整個(gè)測頻系統(tǒng)分為多個(gè)功能模塊,如信號(hào)同步輸入、控制部件、分頻和計(jì)數(shù)部件、定時(shí)、脈沖寬度測量、數(shù)碼顯示、放大整形和標(biāo)頻信號(hào)等模塊。除數(shù)碼管、放大整形和標(biāo)頻信號(hào)外,其它模塊可集成于FPGA芯片中,并且各邏輯模塊用硬件描述語言HDL來描述其功能,如用VHDL或AHDL來對各功能模塊進(jìn)行邏輯描述。然后通過EDA開發(fā)平臺(tái),對設(shè)計(jì)文件自動(dòng)地完成邏輯編譯、邏輯化簡、綜合及優(yōu)化、邏輯布局布線、邏輯仿真,最后對FPGA芯片進(jìn)行編程,以實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)要求。


圖3所示為測頻主系統(tǒng)框圖。一片F(xiàn)PGA(EPF10K10LC84" title="EPF10K10LC84">EPF10K10LC84)可完成各種測試功能,可利用單片機(jī)完成數(shù)據(jù)處理和顯示輸出。在標(biāo)準(zhǔn)頻率信號(hào)為60MHz的情況下,其測量精度可達(dá)到1.1×10 -8,即能夠顯示近8位有效數(shù)字。其中A0~A7和B0~B7為兩計(jì)數(shù)器的計(jì)數(shù)值輸出。計(jì)數(shù)器是32位二進(jìn)制計(jì)數(shù)器(4個(gè)8位計(jì)數(shù)值)。單片機(jī)通過[R1,R0]數(shù)據(jù)讀出選通端分別從這兩個(gè)計(jì)數(shù)值輸出端讀出4個(gè)8位計(jì)數(shù)值,根據(jù)測頻和測脈寬原理公式計(jì)算出頻和脈沖寬度。STR為預(yù)置門啟動(dòng)輸入;F/T為測頻和測脈寬選擇;CH為自校/測頻選擇;Fa為自校頻率輸入端;Fs為標(biāo)準(zhǔn)頻率信號(hào)輸入端;Fx為經(jīng)過放大整形后的被測信號(hào)輸入端;END為計(jì)數(shù)結(jié)束狀態(tài)信號(hào)。
FPGA中各功能模塊如圖4所示。

圖4中,CH1和CH2為選擇器,CH1進(jìn)行自校/測頻選擇,CH2進(jìn)行測頻和測脈寬選擇。CONTRL1為控制模塊,控制被測信號(hào)fx和標(biāo)頻信號(hào)fs的導(dǎo)通,以及兩個(gè)計(jì)數(shù)器(CONTa和CONTb)的計(jì)數(shù)。CONTa和CONTb為32位計(jì)數(shù)器,分別以4個(gè)8位二進(jìn)制數(shù)輸出。


圖4 FPGA中各功能模塊

FPGA與單片機(jī)AT89C51" title="AT89C51">AT89C51的接口比較簡單。圖3中的輸入/輸出端與單片機(jī)連接:A[7..0]與單片機(jī)P2端口相連接;B[7..0]與單片機(jī)P0口相連接;其它輸入/輸出端與單片機(jī)P3口相連接。

結(jié)語

隨著EDA技術(shù)和FPGA集成度的提高,F(xiàn)PGA不但包括了MCU(微控制器或單片機(jī))特點(diǎn),并兼有串、并行工作方式和高速、高可靠性以及寬口徑適用性等諸多方面的特點(diǎn)。單片機(jī)完成的數(shù)據(jù)處理功能也可集成在FPGA芯片中。基于FPGA的電子系統(tǒng)設(shè)計(jì)僅僅是各種邏輯模塊與IP核的邏輯合成和拼裝。測頻系統(tǒng)的標(biāo)準(zhǔn)信號(hào)頻率的提高,可進(jìn)一步提高測頻的精度或縮短測頻時(shí)間。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 品色堂永久免费| 成人毛片一区二区| 四虎影永久在线观看网址| a级毛片高清免费视频就| 欧美日韩国产58香蕉在线视频| 国产在线高清精品二区色五郎| 两个人一上一下剧烈运动| 欧美视频在线观看网站| 国产国产精品人在线观看| xxx国产精品xxx| 极品馒头一线天粉嫩| 啊轻点灬大ji巴黑人太粗 | 久久精品中文字幕无码| 粉色视频在线播放| 国产精品久久久久一区二区三区 | 精品国产三级在线观看| 国产精品白丝AV网站| 中文永久免费观看网站| 永久黄网站色视频免费直播| 国产农村乱子伦精品视频| av无码av天天av天天爽| 日韩精品久久一区二区三区| 免费在线公开视频| 国产精品真实对白精彩久久| 男人边吃奶边做弄进去免费视频 | 亚洲中文字幕久久精品无码a | 美女一级毛片免费观看| 国产精品刺激好大好爽视频| 久久99精品波多结衣一区| 欧美色aⅴ欧美综合色| 国产一有一级毛片视频| 中国内地毛片免费高清| 欧美日韩另类综合| 嗯好湿用力的啊c进来动态图| 55夜色66夜色国产精品| 成人草莓视频在线观看| 亚洲午夜电影网| 精品国产AV无码一区二区三区| 国产深夜福利在线观看网站| 一区二区三区免费视频播放器| 日韩色在线观看|