黃科文,劉益民,洪遠泉
(韶關學院 物理與機電工程學院,廣東 韶關512005)
數字示波器是隨著數字集成電路技術的發展而出現的新型智能化示波器,已經成為電子測量領域的基礎測量儀器.隨著新技術、新器件的發展,它正向帶寬化、模塊化、多功能和網絡化的方向發展.數字示波器的技術基礎是數據采集,其設計技術可以應用于更廣泛的數據采集產品中.但數字示波器本身存在失真比較大的缺點.由于數字示波器是通過對波形采樣來顯示,采樣點數越少失真越大,通常在水平方向有512個采樣點,受到最大采樣速率的限制,在最快掃描速度及其附近采樣點更少,因此高速時失真更大;測量復雜信號能力差,由于數字示波器的采樣點數有限以及沒有亮度的變化,使得很多波形細節信息無法顯示出來,雖然有些可能具有兩個或多個亮度層次,但這只是相對意義上的區別,再加上示波器有限的顯示分辨率,使它仍然不能重現模擬顯示的效果.
電子系統的飛速發展帶動了信號頻率的增加以及信號變得更加復雜,為了更好地檢測此類復雜信號,寬帶高采樣率數字示波器便成為必須的一種儀器[1-2].另外,當代的電子系統中偶發信號更加普及,而且這類信號通常情況下會成為系統調試的關鍵因素,因此快速準確的獲取此類型的偶發信號,提高測試的效率亦將成為數字示波器必須解決的問題[3].而解決這類問題的關鍵點在于在高采樣率基礎上對高速數據進行實時處理.TIADC(Time Interleaved Analog to Digital Converter)是指時分交替模數轉換.采用TIADC構架便可以使高采樣率得以實現[4].為了完成目前對復雜寬帶信號的實時捕獲及處理,本文設計了基于TIADC架構的20 GSPS(20 G高采樣率)數字示波器系統.
系統的硬件設計方案見圖1,系統主體結構主要包括:調整通道、ADC(4片),FPGA1-FPGA4(用于采集接收到的數據并將采集到的數據進行存儲)、FPGA5(用于波形的三維映射以及TIADC的誤差校準)、DSP(Digital Single Processor,用于調控系統的運行同時會對數據進行后處理)、FPGA6(用于測量并顯示時間)以及TDC(測量時間的電路).另外,DSP芯片上還外掛有USB、LAN、鍵盤以及外設電路.
進行調整后的信號會被分別送到4個ADC中,各個ADC采集到的數據分別送到對應的單獨的FPGA,當數據輸入到FPGA中后要先通過ISERDESE串進行轉換并進行減速,這樣高速數據的接收也就完成了,數據接收完成后數據在輸入到時基電路中進行相應的抽取以及插值操作,然后這些數據將會被存儲到FIFO[5-6],這時數據將會通過總線的形式輸送進FPGA5對數據后處理以及波形三維映射,當數據轉化為圖形后將被寫進FPGA6,這時波形將由顯示與控制模塊呈現到屏幕上.

圖1 系統硬件原理圖
獲取多個FPGA的同步時鐘相位關系后可以使得系統的并行FPGA采樣數據實現準確的重組以及合并,這樣把FPGA1~FPGA4的時鐘輸送到TDC電路[7-8],這樣附屬FPGA時鐘同主FPGA時鐘將會形成窄脈沖信號,然后信號會輸送到時間展寬電路,然后信號將會被輸送到FPGA的時間測量電路中進行計數,這樣便可以得到同步時鐘的相位關系.
系統采樣率是20 GSPS,所以設計可產生低于50 ps延遲步進的鎖相環.擇取ADC為采樣率是5 GSPS的 EV10AQ190[9],其輸入的采樣時鐘頻率為 2.5 GHz.
采樣時鐘抖動對信噪比SNR[10]的擾動:

式中,fin及tjitter分別代表輸入頻率及抖動時間.
根據公式(1)能夠獲知,輸入信號頻率越高,SNR越小,采樣時鐘抖動越大,SNR越小.該設計系統輸入信號頻率區間是0~2.5 GHz,設計目標為低于500 MHz以及正弦輸入時其有效位數ENOB[11]分別是6.5 bit左右以及高于6 bit.

要完成2.5 GHz正弦信號輸入時ENOB高于6 bit,其采樣時鐘的抖動務必要符合:

信納比 SINAD[12]:

式中,ω0代表數字角頻率,△rmax及δTs分別代表最大相對時間誤差以及絕對誤差.
當系統諧波失真相對來說很小時SINAD幾乎等于SNR,所以時間誤差要符合:

根據公式(5),系統運用的ADC要能夠細調采樣時鐘延遲,步進是30 fs.綜上所述,運用PLL完成倍頻生成多路的2.5 GHz采樣時鐘,同時運用其內部的延遲以及ADC內部的采樣時鐘相位調節性能分別完成其采樣延遲的粗略以及精細調整,其采樣時鐘原理圖,見圖2.

圖2 采樣時鐘原理圖
LMK 04806是能夠把系統時鐘的抖動縮減至最小的雙環組成[13].PLL1及PLL2分別輸入48 MHz晶振以及24 MHz的VCXO,同時PLL2的VCO生成的高頻時鐘通過分頻模塊獲得4路2.5 GHz時鐘,然后輸送至延遲單元,4路時鐘分別進行延遲后輸送至4個ADC.2.5 GHz時鐘進至ADC之后運用時鐘BUFFER生成4路1.25 GHz的采樣時鐘,隨之運用相位精細調整后再輸送至4個ADC核.
設定正弦信號:

式中,Ω0代表正弦信號的角頻率,同時為已知量,A1、B1及C1為系數.
將其轉換成標準正弦信號:

設y1,y2,...,yN表示輸入正弦信號時分別在t1,t2,…,tN時刻得到的N個實際采樣點,則:

當處于校準模式時,輸入正弦信號,隨之系統開始采集,當檢測到FPGA中的FIFO存儲器溢出時表示完成一次采集.DSP順次讀取每個通道的采集數據,運用公式(8)~(10)運算獲得參數A1、B1及C1.隨之運用公式(7)運算獲得全部通道的增益及相位,進而獲得增益、偏置以及時間誤差.運用ADC自帶的模擬校準及PLL中的相位調節單元完成對誤差的校正,其流程圖見圖3.
為了確保數據同步,于完成ADC、PLL復位時以及FIFO寫能開始時,恒定每個通道延遲Dk的差值,最終完成對數據的延遲以消除Dk的差值.假定兩個FPGA因保存產生的延遲分別是D1及D2:


圖3 基于正弦擬合的誤差校準流程圖
如果△D>0,那么表示FPGA2因保存產生的延遲低于小于FPGA1,進而需要完成對FPGA2的數據延遲△D.
完成數據延遲后,FPGA1及FPGA2因保存致使的總延遲一致,進而就能夠完成對數據的重組.要得到每個FPGA之間的保存延遲,需完成復位狀況篩選及延遲測量.
(1)復位狀況篩選
復位狀況關鍵呈現于ADC_PCLK間相位關系的改變,故需測量各ADC_RCLK間相位的時間間隔[14],把3個從FPGA中的ADC_RCLK輸送至選擇器,擇取其中一個輸送至脈沖形成電路和主FPGA的ADC_RCLK構成一個窄脈沖,隨之把其進行展寬操作輸送至FPGA6中的時間測量電路完成計數,最后依照計數值獲得相位關系.
完成對ADC以及PLL復位后,運用TDC電路測量ADC_RCLK之間的相位,若其相位等于設定值,則復位成功,否則再一次發送ADC以及PLL復位指令直至相位等于設定值.
(2)延遲測量
保存延遲的測量需輸入快沿信號[15],于DSP中完成每個通道采樣數據上升沿間相位差△D檢測:第一步搜索每個ADC采樣數據經過上升沿中心的采樣點位置,隨之運算其位置差,各采樣點是200 ps,則相位差:

式中,n表示位置差.
設計的20 GSPS數字示波器系統經過全方位的測試,驗證了誤差校準算法運用到實際的系統中可以實現的性能.設置采集板包括ADC(4個)和FPGA(5個).兩對SMA連線將模擬信號傳輸進采集板,模擬信號通過一分二的模擬驅動電路轉化成四路模擬信號分別輸入到4個ADC中.DSP控制系統的運行,DSP控制總線以及數據總線通過連接器連接.另外,采集板上還擁有進行采樣的時鐘電路以及用于數據同步的TDC電路.運用正弦擬合算法來實現校準,進行校準前后的頻譜圖分別見圖4和圖5.

圖4 校準前頻譜圖

圖5 校準后頻譜圖
依照圖5能夠獲知,校準后失真很大程度上得到削減,頻譜失真也基本清除.校準前SNR為37.282 8 dB,校準之后SNR到達4 039 154 dB.SINAD也從35.784 2 dB相應的變成37.712 1 dB.
ENOB隨頻率改變的測試結果見圖6.根據圖6能夠獲知,信號頻率低于500 MHz時,ENOB是6.5 bits左右,其關鍵是受到系統噪聲的限制,500 MHz以及2.5 GHz位置時分別減小至6.446 bits以及6.285 bits,2 GHz至2.5 GHz頻段ENOB減小的速度相對很快,關鍵是受到系統時鐘抖動及校準精度的限制.總之在低于500 MHz以及500 MHz~2.5 GHz正弦輸入時其有效位數ENOB分別是6.5 bit左右以及高于6 bit,符合設計目標.
運用雙脈沖法以完成對系統捕獲能力的評估見圖7.

圖6 系統ENOB隨頻率改變曲線

圖7 雙脈沖法原理
確保脈沖寬度T1及T2全部展現于示波器屏幕,調整觸發電平至可引起正常觸發的合適位置,輸出一次雙脈沖.若兩個脈沖都可以被捕獲,那么縮減減其間隔△T直至第二個脈沖無法被捕獲,進而得到兩個脈沖的最小時間間隔△Tmin,則最高捕獲率WCR:

經過測試該系統能夠得到的△Tmin是0.16μs,WCR=6.25×106wfms/s,滿足要求.
基于TIADC架構設計了20 GSPS的數字示波器,完成了對低抖動、相位可調的采樣時鐘設計、多片ADC間采樣數據保存同步以及誤差校準算法設計.最后對系統進行實驗分析,其結果表明:校準后頻譜失真基本得以消除,校準前后SNR及SINAD分別從37.282 8 dB、35.784 2 dB提升至40.915 4 dB及38.712 1 dB,另外在低于500 MHz以及500 MHz~2.5 GHz正弦輸入時其ENOB分別是6.5 bit左右以及高于6 bit,符合設計目標其表現出良好的性能.不足之處是TIADC系統存在的誤差可能會影響系統的整體性能.