李德明, 胡君輝
(廣西師范大學 物理科學與技術學院, 廣西 桂林 541004)
脈沖信號參數測量儀可以測量脈沖信號頻率、幅度、占空比、上升時間等參數[1]。為了滿足應用需求,本文設計了一種脈沖信號參數測量系統,采用FPGA為主控制器,實現測量精度高、多參數測量、數字化顯示、便攜式的脈沖信號測量儀。
采用FPGA作為主控制器,充分利用FPGA運行速度快、并行運算處理的特點,實現高速A/D采集、數據存儲、邏輯控制等功能[2]。再結合單片機在數據處理、控制靈活方面的優勢,由單片機讀取FPGA的測量數據進行處理,并在LCD1602液晶模塊顯示結果。
系統設計框圖見圖1。由于待測信號的幅度會受到擾動,且有可能幅度太大會損壞器件,從而影響測量,所以系統中對輸入信號分兩路進行處理。一路經過緩沖衰減電路后通過AGC(增益自動控制)電路控制,輸出信號幅值穩定在2 V左右,設置連接AGC電路輸出的兩路TLV3501高速比較器閾值電壓分別為AGC電路輸出電壓的10%和90%,將比較器的輸出信號送到FPGA中測量脈沖的頻率、占空比、上升時間[3];另外一路進入緩沖電路,通過放大、衰減、直通3種量程切換電路將脈沖信號轉換成合適的電壓幅值送入到AD9280模數轉換芯片,由FPGA控制采集實現脈沖信號幅度的精確測量,最后通過單片機從FPGA讀取測量參數,經過轉換處理后在LCD1602液晶模塊顯示測得數據。
校準測試需要用到矩形脈沖信號,通過FPGA設計脈沖信號發生器,由IO口輸出后經放大電路增加驅動能力,輸出脈沖信號是能驅動負載電阻50 Ω、幅度為5 V的脈沖信號。

圖1 脈沖信號參數測量系統框圖
為了滿足AGC電路輸入信號電壓和輸入阻抗50 Ω的要求,采用THS3001芯片設計輸入緩沖衰減電路。該芯片是超高速電流負反饋運算放大器,具有轉換速率高、工作頻帶寬、供電范圍寬、輸出電流大特點,非常適合用于緩沖器、放大器等方面設計[4]。如圖2所示,THS3001構成輸入緩沖器,R2/R3電阻構成分壓衰減電路,將輸入信號經過電阻匹配后輸出幅度為原信號的五分之一。

圖2 緩沖衰減電路原理圖
由于被測信號幅度變化范圍為0.1~10 V,不能直接輸入到FPGA進行測量,因此需要設計AGC自動增益控制電路,將被測信號幅度穩定在合適范圍,然后供給后續比較器電路作為比較輸入信號,經比較器輸出后再提供給FPGA進行脈沖信號的頻率、占空比、上升時間等參數測量。AGC電路模塊采用程控放大器AD603作為核心芯片,框圖如圖3所示。

圖3 AGC電路框圖
AGC電路原理圖如圖4所示。利用比較器和檢波電路構成負反饋自動調節系統,通過可變增益放大器AD603自動調節放大倍數。AD603依靠控制增益控制端電壓GPOS-GNEG控制放大倍數;AD8561構成比較器電路,比較輸入信號是第二級AD603輸出信號(IN+)和閾值電壓(IN-),使用二極管和RC電路對比較器輸出信號進行檢波,檢波的值(VG-)的范圍為0~3.3V,電路設置VG+為固定電壓值1.4 V,將檢波值作為AD603的VG-控制電壓,從而保證控制調節電壓((VG+)-(VG-))在AD603的控制電壓(-500 mV~500 mV)范圍內,確保AD603能正常工作。同時為了降低干擾,在后級連接高速放大器OPA690實現同向放大器,能起到緩沖作用,還能提高放大器的帶負載能力。
比較器的作用是將AGC電路輸出穩定信號轉換成FPGA能夠識別的脈沖信號。利用比較器閾值為AGC輸出電壓90%那路輸出信號可以測量頻率和占空比。而為了測量上升時間需要將兩路比較電路閾值電壓分別設置為AGC的輸出電壓的10%和90%,產生的兩路方波信號同時輸入到FPGA中,利用FPGA計數測出兩路信號相位差就可以計算出上升時間。比較器電路原理見圖5。

圖4 AGC電路原理圖

圖5 比較器電路原理圖
測量脈沖信號幅度需要用到A/D轉換器件,該設計采用AD9280轉換芯片,AD9280是一款單通道、8位、32 MSPS模數轉換器,采用單電源供電,內置一個片內采樣保持放大器和基準電壓源。A/D采集電路原理見圖6。

圖6 A/D采集電路原理圖
系統參數測量設計主要包括基于FPGA設計的頻率、占空比、上升時間數據處理,以及單片機對脈沖信號幅度測量與數據顯示兩部分構成。
頻率測量采用等精度測量法,啟動測量門控信號由被測信號和預置門共同控制,測量精度與被測信號的頻率無關,只與基準信號的頻率和穩定度有關,因此保證在整個測量頻段內測量精度不變[5]。在預置門時間和常規測頻閘門時間相同而被測信號頻率不同的情況下,測量頻率精度不變。等精度頻率測量設計在FPGA中實現,其設計原理圖如圖7所示,被測信號是從比較器模塊輸出的脈沖信號,DFF觸發器是實現測頻開始和停止動作與被測信號上升沿同步的重要器件,從而消除了對被測信號計數所產生±1個字誤差。

圖7 FPGA等精度測頻設計原理圖
占空比=[(高電平計數×時鐘周期)/信號周期]×100%,需要對脈沖信號高電平內對標準時鐘進行計數,乘上時鐘周期就可以得出高電平持續時間[6],而信號周期可以根據已測得信號頻率的倒數計算。將FPGA芯片測量計數值傳出到單片機進行處理,根據公式計算出被測脈沖信號的占空比,顯示在液晶顯示屏LCD1602上。


圖8 上升時間測量示意圖
脈沖信號幅度是指上穩定電平與下穩定電平的差值,一般下穩定電平為0 V,因此脈沖幅度就是要測量脈沖信號的上穩定電平。
因為峰值檢波測量法對脈沖信號幅度測量誤差較大,該設計采用高速數據采樣技術進行幅度測量[9]。方法是設置一個閾值,取大于閾值的采樣數據并存儲;對存儲的采樣數據排序,取其中間值(或去極值去平均)作為幅值。如果被測信號最小脈寬為50 ns,需要在一個周期內取25個數據,則A/D轉換器采樣速率約需500 MHz,器件選擇比較困難,因此可以適度降低采樣速率,然后在多個周期內取數據進行處理[10]。
采用采樣速率為50 MHz(20 ns)的A/D轉換器,則在脈寬為50 ns的被測脈沖信號上,一個周期內至少可以取得2個幅度近似為脈沖幅度的采樣值,采集若干個數據后進行處理計算脈沖幅度。
被測量信號頻率可以達到2 MHz以上,占空比測量范圍是10%~90%,則輸入通道電路帶寬以2 MHz、占空比10%為設計指標,對應的脈寬是50 ns。矩形脈沖信號的能量集中在0~2π/τ,因此0~2π/τ被認為是信號的頻帶寬度[11],如圖9所示。脈沖信號的帶寬與脈沖寬度τ有關,對應的帶寬是fB=1/τ=20 MHz。在設計電路時,為了能真實地再現被測脈沖信號,需要設計輸入通道的帶寬達到100 MHz以上。選擇THS3905作為輸入緩沖器,信號放大通道選擇OPA690電壓反饋型運算放大器,模數轉換采集電壓選擇AD9280。

圖9 周期矩形脈沖信號的時域波形和頻譜
單片機軟件設計實現A/D轉換、測量計算脈沖幅度,并從FPGA中讀取頻率、上升時間、占空比的測量數據,經計算處理后在LCD上顯示測得參數。軟件設計流程圖見圖10。

圖10 單片機軟件設計流程圖
FPGA內部邏輯設計框圖如圖11所示,兩路TLV3501比較器的輸出信號送到FPGA中,用比較器1輸出信號測量頻率,用比較器2輸出信號測量占空比,上升時間需要將兩路信號進行相與整合后測量高電平脈沖時間。

圖11 FPGA內部邏輯設計框圖
在輸入端輸入10 Hz~2 MHz的脈沖信號,分別取0.5、5 V兩種幅度,根據測量顯示得到的頻率值與標稱值計算誤差。測試結果見表1。

表1 頻率測量結果
在輸入端輸入1 V的脈沖信號,分別測試10 Hz、1 kHz、2 MHz頻率下對應的占空比。測試結果見表2。

表2 占空比測量結果
在輸入端輸入占空比為50%的脈沖信號,分別測試10 Hz、1 kHz、2 MHz頻率下對應的信號幅值。測試結果如表3所示。

表3 幅度測量結果
在輸入端輸入頻率為1 000 Hz的脈沖信號,調節不同上升沿時間。測試結果見表4。

表4 上升時間測量結果
根據測試結果可知,脈沖參數測量系統所測頻率、幅度、占空比、上升時間,具有較高的測量精度,其中頻率和占空比測量相對誤差在1%以內,幅度和上升時間測量相對誤差5%以內,達到預期設計指標。
測量誤差來源主要有標準頻率誤差、量化誤差、比較器閾值設置誤差?!?量化誤差對占空比測量誤差的影響隨著被測信號的頻率的增大而增加,頻率越低影響越小[12]。在兩路比較器閾值是根據AGC電路輸出幅度的10%和90%設定,由于AGC電路輸出幅度在測量頻帶范圍內存在誤差,以及兩個比較器傳輸延遲時間的不一致也會引入誤差,因此造成上升時間的測量誤差相對偏大[13]。幅度測量可采用多次采樣測量和提高電路設計信噪比的方法,從而減小測量誤差。
本文設計的脈沖信號參數測量系統,采用 單片機與FPGA相結合的方式實現,充分發揮各自控制特點。通過FPGA并行處理特性實現脈沖信號幅度、頻率、占空比和上升時間的測量,所有測量數據再經過單片機讀取后送到LCD顯示。同時為了滿足測試和系統校準的需要,設計制作了參數可調的脈沖信號發生器。系統經過完整的參數測試達到預期設計指標,證明該設計方案具有可行性,后續可以進一步改善電路設計的信噪比,提高參數測量的一致性和穩定性。設計中采用了模塊化設計方法,提高了設計效率,具有較高的實用性,性價比高,功能拓展靈活。