- 相關(guān)推薦
基于數(shù)字移相的高精度脈寬測(cè)量系統(tǒng)及其FPGA實(shí)現(xiàn)
摘要:采用XILINX公司的SpartanII系列FPGA芯片設(shè)計(jì)了一種基于數(shù)字移相技術(shù)的高精度脈寬測(cè)量系統(tǒng),同時(shí)給出了系統(tǒng)的仿真結(jié)果和精度分析。與通常的脈沖計(jì)數(shù)法相比,該系統(tǒng)的最大測(cè)量誤差減小到原來(lái)的34.2%。在測(cè)量與儀器儀表領(lǐng)域,經(jīng)常需要對(duì)數(shù)字信號(hào)的脈沖寬度進(jìn)行測(cè)量。這種測(cè)量通常采用脈沖計(jì)數(shù)法,即在待測(cè)信號(hào)的高電平或低電平用一高頻時(shí)鐘脈沖進(jìn)行計(jì)數(shù),然后根據(jù)脈沖的個(gè)數(shù)計(jì)算待測(cè)信號(hào)寬度,如圖1所示。待測(cè)信號(hào)相對(duì)于計(jì)數(shù)時(shí)鐘通常是獨(dú)立的,其上升、下降沿不可能正好落在時(shí)鐘的邊沿上,因此該法的最大測(cè)量誤差為一個(gè)時(shí)鐘周期。例如采用80MHz的高頻時(shí)鐘,最大誤差為12.5ns。
提高脈沖計(jì)數(shù)法的精度通常有兩個(gè)思路:提高計(jì)數(shù)時(shí)鐘頻率和使用時(shí)幅轉(zhuǎn)換技術(shù)。時(shí)鐘頻率越高,測(cè)量誤差越小,但是頻率越高對(duì)芯片的性能要求也越高。例如要求1ns的測(cè)量誤差時(shí),時(shí)鐘頻率就需要提高到1GHz,此時(shí)一般計(jì)數(shù)器芯片很難正常工作,同時(shí)也會(huì)帶來(lái)電路板的布線、材料選擇、加工等諸多問(wèn)題。時(shí)幅轉(zhuǎn)換技術(shù)雖然對(duì)時(shí)鐘頻率不要求,但由于采用模擬電路,在待測(cè)信號(hào)頻率比較高的情況下容易受噪聲干擾,而且當(dāng)要求連續(xù)測(cè)量信號(hào)的脈寬時(shí),電路反應(yīng)的快速性方面就存在一定問(wèn)題。
區(qū)別于以上兩種方法,本文提出另一種利用數(shù)字移相技術(shù)提高脈寬測(cè)量精度的思路并使用FPGA芯片實(shí)現(xiàn)測(cè)試系統(tǒng)。
1 測(cè)量原理
所謂移相是指對(duì)于兩路同頻信號(hào),以其中一路為參考信號(hào),另一路相對(duì)于該參考信號(hào)做超前或滯后的移動(dòng)形成相位差。數(shù)字移相通常采用延時(shí)方法,以延時(shí)的長(zhǎng)短來(lái)決定兩數(shù)字信號(hào)間的相位差,本文提出的測(cè)量原理正是基于數(shù)字移相技術(shù)。如圖2所示,原始計(jì)數(shù)時(shí)鐘信號(hào)CLK0通過(guò)移相后得到CLK90、CLK180、CLK270,相位依次相差90°,用這四路時(shí)鐘信號(hào)同時(shí)驅(qū)動(dòng)四個(gè)相同的計(jì)數(shù)器對(duì)待測(cè)信號(hào)進(jìn)行計(jì)數(shù)。設(shè)時(shí)鐘頻率為f,周期為T,四個(gè)計(jì)數(shù)器的計(jì)數(shù)個(gè)數(shù)分別為m1、m2、m3和m4,則最后脈寬測(cè)量值為:
w=[(m1 m2 m3 m4)/4]×T (1)
可以看到,這種方法實(shí)際等效于將原始計(jì)數(shù)時(shí)鐘四倍頻,以4f的時(shí)鐘頻率對(duì)待測(cè)信號(hào)進(jìn)行計(jì)數(shù)測(cè)量,從而將測(cè)量精度提高到原來(lái)的4倍。例如原始計(jì)數(shù)時(shí)鐘為80MHz時(shí),系統(tǒng)的等效計(jì)數(shù)頻率則為320MHz,如果不考慮各路計(jì)數(shù)時(shí)鐘間的相對(duì)延遲時(shí)間誤差,其測(cè)量的最大誤差將降為原來(lái)的四分之一,僅為3.125ns。同時(shí),該法保證了整個(gè)電路的最大工作頻率仍為f,避免了時(shí)鐘頻率提高帶來(lái)的一系列問(wèn)題。
2 系統(tǒng)實(shí)現(xiàn)
系統(tǒng)實(shí)現(xiàn)的最關(guān)鍵部分是保證送入各計(jì)數(shù)器的時(shí)鐘相對(duì)延遲精度,即要保證計(jì)數(shù)時(shí)鐘之間的相位差。由于通常原始時(shí)鐘頻率已經(jīng)相對(duì)較高(通常接近100MHz),周期在10~20ns之間,因此對(duì)時(shí)鐘的延遲時(shí)間只有幾ns,使用普通的延遲線芯片無(wú)法達(dá)到精度要求;同時(shí)為了避免電路板內(nèi)芯片間傳送延遲的影響,保證測(cè)試系統(tǒng)的精度、穩(wěn)定性和柔性。本文采用現(xiàn)場(chǎng)可編程門陣列(FPGA)來(lái)實(shí)現(xiàn)所提出的測(cè)量方法。系統(tǒng)結(jié)構(gòu)如圖3所示。晶振產(chǎn)生原始輸入時(shí)鐘,通過(guò)移相計(jì)數(shù)模塊后得到脈寬的測(cè)量值,測(cè)量結(jié)果送入FIFO緩存中,以加快數(shù)據(jù)處理速度,最后通過(guò)PCI總線完成與計(jì)算機(jī)的數(shù)據(jù)傳輸。邏輯控制用來(lái)協(xié)調(diào)各模塊間的時(shí)序,保證系統(tǒng)的正常運(yùn)行。為提高測(cè)試系統(tǒng)的靈活性和方便性,系統(tǒng)建立了內(nèi)部寄存器,通過(guò)軟件修改寄存器的值可以控制測(cè)試系統(tǒng)的啟動(dòng)停止,選擇測(cè)量高電平或低電平等。移相計(jì)數(shù)模塊、FIFO緩沖以及邏輯控制均在FPGA芯片內(nèi)實(shí)現(xiàn),芯片使用XILINX公司的SpartanII系列。
SpartanII系列是一款高性能、低價(jià)位的FPGA芯片,其最高運(yùn)行頻率為200MHz,這里選用其中的XC2S15-6(-6為速度等級(jí))。芯片提供了四個(gè)高精度片內(nèi)數(shù)字延遲鎖定環(huán)路(Delay-Locked Loop,即DLL),可以保證芯片內(nèi)時(shí)鐘信號(hào)的零傳送延遲和低的時(shí)鐘歪斜(Clock Skew);同時(shí)可以方便地實(shí)現(xiàn)對(duì)時(shí)鐘信號(hào)的常用控制,如移相、倍頻、分頻等。在HDL程序設(shè)計(jì)中,可以使用符號(hào)CLKDLL調(diào)用片內(nèi)DLL結(jié)構(gòu),其管腳圖如圖4所示。主要管腳說(shuō)明如下:
CLKIN:時(shí)鐘源輸入,其頻率范圍為25~100MHz。
CLKFB:反饋或參考時(shí)鐘信號(hào),只能從CLK0或CLK2X反饋輸入。
CLK?眼0|90|180|270?演:時(shí)鐘輸出,與輸入時(shí)鐘同頻,但相位依次相差90°。其內(nèi)部定義了屬性DUTY_CYCLE_CORRECTION,可以用來(lái)調(diào)整時(shí)鐘的占空比,值為FALSE時(shí),輸出時(shí)鐘占空比和輸入時(shí)鐘一致,值為TRUE時(shí)將占空比調(diào)整為50%。
CLK2X:時(shí)鐘源倍頻輸出,且占空比自動(dòng)調(diào)整為50%。
CLKDV:時(shí)鐘源分頻輸出,由屬性 CLKDV_DIVIDE控制N分頻,N可以為1.5、2、2.5、3、4、5、8或16。
LOCKED:該信號(hào)為低電平時(shí),
【基于數(shù)字移相的高精度脈寬測(cè)量系統(tǒng)及其FPGA實(shí)現(xiàn)】相關(guān)文章:
數(shù)字下變頻技術(shù)的研究及其FPGA實(shí)現(xiàn)03-07
基于FPGA的IPV6數(shù)字包配置實(shí)現(xiàn)03-07
基于FPGA的實(shí)時(shí)SAR成像系統(tǒng)轉(zhuǎn)置存儲(chǔ)的實(shí)現(xiàn)03-07
基于模糊控制的遲早門同步器及其FPGA實(shí)現(xiàn)03-20
基于FPGA的HDLC通信模塊的實(shí)現(xiàn)05-14
基于FPGA的直接數(shù)字頻率合成器的設(shè)計(jì)和實(shí)現(xiàn)03-19
基于FPGA的TS over lP的設(shè)計(jì)與實(shí)現(xiàn)03-21