摘 要:文章介紹的方式中主要采用了當前世界上最先進的FPGA芯片,由著名的XILINX公司設計出品。通過該芯片的應用設計出了一種高精度的脈寬測量系統,以此將脈寬測量引入了數字化的方向,并在此基礎上提出了完整的精度分析系統以及仿真結果分析系統。同普通傳統的脈沖計數的方式相比較,該方式能夠將誤差控制在最低的范圍,僅為傳統方式的34.2%。
關鍵詞:脈寬測量;FPGA;數字移相
測量領域以及儀表儀器領域中,對數字信號的測量主要便是對其信號脈沖寬度進行測量。目前使用最多的方式便是脈沖計數的方式,即通過高頻時鐘脈沖在待測信號的低電平處或者高電平處進行計數,然后依照脈沖數量,通過計算的方式得到信號寬度,待測信號獨立于計數時鐘,其信號的上升以及下降沿無法同時鐘邊沿準確的吻合,所以,該方式得到的誤差最大值可以達到一個時鐘周期。例如,若是高頻時鐘為80MHz,那么其最大的誤差量可以達到12.5ns。
脈沖計數法的精度也可以通過有效的方式予以提高,其思路如下:首先可以將計數時鐘的頻率予以提高,其次則是通過時幅轉換技術對誤差予以降低。測量誤差會隨著時鐘頻率的的提高而減小,但是頻率提高,相對便會對芯片的要求有所提高。例如,若測量誤差要求為1ns時,其時鐘頻率必須達到1GHz,一般的計數芯片在這種狀態下無法正常工作,并且電路板布線以及加工和材料選擇都會成為難題。而使用時幅轉換技術就無需對時鐘頻率有所要求,但是該種方式使用了模擬電路,若是待測頻率相對較高,那么測量結果很容易受到噪聲的干擾,并且若要求是對信號脈寬進行連續測量,那么電路能否快速反應是該方式需要解決的一大弊病。
而同上述兩種方式都不相同的是,文章論述了一種新型的方式,通過數字移相的方式,對脈寬測量精度予以提高。該方式采用FPGA芯片,實現了高精度脈寬測量。
1 測量原理
兩路同頻信號以一路作為參考,將另一路以該路信號作為參考,進行滯后或者超前的移動,從而形成相應的相位差,這邊是移相。該種測量方式通常使用延時方法,通過對兩數字信號之間產生的相位差以延時長短進行決定,這種測量原理的基礎即數字移相技術。原始計數時鐘信號CLK0通過移相后得到CLK90、CLK180、CLK270。相位之間依次相差90°,通過這四路時鐘信號對四個相同計數器進行同時驅動,從而完成信號計數。
2 系統實現
計數時鐘之間所具有的相位差是該系統保持正常運行的基礎,原始時鐘頻率通常所具有的頻率一般較高,頻率接近100MHz,而周期也大于10ns而小于20ns,所以即便是存在延遲時間也僅僅只有幾ns;另外,為了避免由于傳送延遲而對電路板芯片造成不利影響,必須保證系統的柔性以及穩定和精度。文章通過對可編程門陣列,對測量方法予以實現。通過下圖的分析可以看出,測量結果最終被送入到FIFO緩存,從而在處理速度上可以有效得以提高,最終通過PLC總線完成數據的傳送。
各個模塊之間的時序需要予以協調控制,而通過邏輯控制則可以有效的得以時間,并使得系統能夠正常運行。而FIFO緩沖模塊是在FPGA芯片中予以實現,另外,邏輯控制也是在該芯片中予以實現的。
SpartanII系列相對于其他的FPGA芯片性價比相對較高。并且運行頻率最高而已達到200MHz,這里芯片選用的是XC2S15-6以此保證時鐘信號不會出現始終外協以及延時傳送;并且在時鐘信號的控制上也相對較為方便,例如時鐘信號的分頻以及倍頻和移相。另外通過DLL功能可以實現移相計數模塊的快速構建,從而實現上述文章中介紹的幾種測量方式。通過DLL處理后的原始時鐘可以得到相差為90°的四組相位,即SLD0、CLK90以及CLK180和CLK270,最后計算出信號脈寬值。
3 仿真分析以及精度分析
通過給出內部的布線,實現芯片的方針結果,其仿真結果用Modelsim實現。在RESET后對計數模塊進行啟動,繼而開始測量待測信號,測量后會產生READY信號,同時將測量后的結果輸出,為后續的測量計算以及分析提供基礎信息,通過仿真實驗可以證明系統可以達到目標要求。
然后進一步對系統進行誤差分析,系統測量脈寬測量會出現誤差的原因主要是因為系統原理誤差TS、時鐘相移誤差Tp和信號延遲誤差Td以及計數時鐘抖晃Tc等多項誤差的存在。通過上面的分析可以看出,若時鐘輸入過程中晶振為80MHz時,得出的誤差量為3.125ns。時鐘相移誤差是四路相位-偏移產生的信號本身,該信號從SLKDLL中分離,依照芯片參數,最大的相移誤差可以達到200ps。
通過分析計算可以得出結果:分別可以得到計數時鐘到各自計數器的延遲時間,控制計數器啟動停止的HF信號到四個計數器的時間。由于需要的是各計數時鐘間相對延遲時間,故還能得到時鐘相對于HF信號到計數器的延遲。
數字移相技術是目前我們應用在脈寬測量上的基礎,在此基礎上文章提出了一種精度更高的測量系統,這種方式不同于脈沖計數的方式,在精度上更是高出脈沖計數數倍。而該種方式的測量精度還能夠繼續予以提升,主要可以通過以下兩方面予以完善:首先將晶振頻率繼續提高,將FPGA芯片的速度提升的更快。著也是因為系統原理誤差會受到晶振頻率的影響,晶振頻率越高,其誤差值就會越小。其次,是對信號延遲誤差予以降低。通過前面的分析可以看出,系統精度會受到信號延遲誤差的影響。通過減少計數器以及技術時鐘的信號延遲差異,能夠將測量精度有效提高。另外在FPGA芯片中,信號延遲的時間能夠方便的得到,所以,設計過程中只需要將內部元件的位置以及連線予以調整便可以對延遲誤差進行調整,或者通過增加一些門電路,從而令信號延遲時間保持一致。
參考文獻
[1]王永新,方忠艷.時幅轉換技術及其在激光測距系統中的應用[J].光學技術,2001,27(2).
[2]盧毅,萊杰.VHDL與數學電路設計[M].北京:科學出版社,2001.
[3]邊計年,薛洪熙譯.用VHDL設計電子線路[M].北京:清華大學出版社,2000.