梁東飛蘇淑靖梁文科邢震震周廣興
(中北大學(xué)省部共建動(dòng)態(tài)測(cè)試技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,山西 太原 030051)
脈沖延時(shí)發(fā)生器作為時(shí)序控制部件在諸多領(lǐng)域中發(fā)揮了重要的作用,如在測(cè)量子彈飛行參數(shù)的超高速分幅相機(jī)中[1-2],脈沖延時(shí)發(fā)生器用于設(shè)定高分辨率的快門延時(shí)時(shí)間,首先接收現(xiàn)場(chǎng)發(fā)出的外部觸發(fā)信號(hào),然后依次產(chǎn)生增強(qiáng)器的選通信號(hào)。在此過(guò)程中觸發(fā)抖動(dòng)影響系統(tǒng)的分辨率,降低拍攝的質(zhì)量,是分幅相機(jī)普遍面臨的問(wèn)題之一。因此當(dāng)脈沖延時(shí)發(fā)生器工作在外觸發(fā)模式下時(shí),觸發(fā)信號(hào)與時(shí)序電路時(shí)鐘的同步問(wèn)題是提高脈沖質(zhì)量的關(guān)鍵。
文獻(xiàn)[3]分析了脈沖延時(shí)發(fā)生器觸發(fā)抖動(dòng)的產(chǎn)生機(jī)理,采用時(shí)鐘約束方法設(shè)計(jì)高頻計(jì)數(shù)延時(shí)電路來(lái)抑制抖動(dòng),但并沒(méi)有消除觸發(fā)信號(hào)與系統(tǒng)時(shí)鐘的抖動(dòng)。文獻(xiàn)[4]中提出了一種基于FPGA 精細(xì)調(diào)節(jié)單元IODELAY 級(jí)聯(lián)實(shí)現(xiàn)低抖動(dòng)同步脈沖技術(shù),這種方法避免了時(shí)序電路時(shí)鐘與觸發(fā)不同步問(wèn)題,但是由于FPGA 內(nèi)的延遲單元有限且不可調(diào)節(jié),導(dǎo)致脈沖延時(shí)的范圍小且分辨率低。文獻(xiàn)[5-6]中使用電容充放電技術(shù)實(shí)現(xiàn)抖動(dòng)消除,其抖動(dòng)測(cè)量穩(wěn)定性和準(zhǔn)確性由恒流源的輸出精度和穩(wěn)定性、開(kāi)關(guān)的開(kāi)通速度、電壓損耗穩(wěn)定性和電容容量穩(wěn)定性決定,該方法電路復(fù)雜且影響系統(tǒng)穩(wěn)定性的因素較多,不易設(shè)計(jì)。
針對(duì)脈沖延時(shí)發(fā)生器的外部觸發(fā)信號(hào)與時(shí)鐘信號(hào)不同步問(wèn)題,提出了消抖方法。該方法采用數(shù)字時(shí)間轉(zhuǎn)化(Time-to-Digital Converter,TDC)原理對(duì)隨機(jī)抖動(dòng)進(jìn)行高精度實(shí)時(shí)測(cè)量,延時(shí)電路進(jìn)行相應(yīng)的隨機(jī)抖動(dòng)補(bǔ)償。測(cè)量電路使用全數(shù)字電路實(shí)現(xiàn),補(bǔ)償只需要在原有延時(shí)上增加一個(gè)補(bǔ)償量,就可使其性能穩(wěn)定且不影響時(shí)序電路對(duì)脈沖的延時(shí)功能。該方法對(duì)高精度寬范圍的脈沖延時(shí)發(fā)生器研制有重要意義。
圖1 為四通道脈沖延時(shí)發(fā)生器的原理框圖,各通道原理相同,硬件主要有觸發(fā)信號(hào)整形模塊、數(shù)據(jù)產(chǎn)生模塊、并串轉(zhuǎn)化模塊、脈寬和延時(shí)粗調(diào)模塊、脈寬和延時(shí)精調(diào)模塊、驅(qū)動(dòng)電路模塊、抖動(dòng)處理模塊、時(shí)鐘處理模塊、嵌入式全控單元和控制單元。其中數(shù)據(jù)產(chǎn)生模塊、并串轉(zhuǎn)化模塊、脈寬和延時(shí)粗調(diào)模塊、控制單元和抖動(dòng)處理模塊在FPGA 內(nèi)部實(shí)現(xiàn)。在FPGA 接收到嵌入式全控單元下發(fā)的通道延時(shí)、脈沖參數(shù)和脈沖類型的指令并對(duì)系統(tǒng)各個(gè)模塊進(jìn)行相應(yīng)的配置后,脈沖類型的數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)產(chǎn)生模塊中,通過(guò)并串轉(zhuǎn)化模塊生成相應(yīng)的脈沖。控制單元在接收到外部觸發(fā)信號(hào)或自生成觸發(fā)信號(hào)后,延時(shí)粗調(diào)電路開(kāi)始工作,完成延時(shí)后啟動(dòng)并串轉(zhuǎn)化模塊生成相應(yīng)的脈沖。設(shè)計(jì)了脈寬粗調(diào)電路將生成脈沖扇出兩路經(jīng)過(guò)延遲單元進(jìn)行脈寬粗調(diào),兩路脈沖再經(jīng)過(guò)脈寬精調(diào)的延時(shí)電路后合成設(shè)定脈寬的脈沖信號(hào),此脈沖寬度為兩路信號(hào)的相對(duì)延時(shí)。最后脈沖經(jīng)過(guò)延時(shí)精調(diào)模塊后通過(guò)驅(qū)動(dòng)電路模塊生成幅值可調(diào)的脈沖。
圖1 脈沖延時(shí)發(fā)生器原理框圖
脈沖延時(shí)發(fā)生器可在內(nèi)觸發(fā)或外觸發(fā)方式下工作,當(dāng)工作在內(nèi)觸發(fā)方式時(shí),觸發(fā)信號(hào)由內(nèi)部控制單元在系統(tǒng)時(shí)鐘驅(qū)動(dòng)下產(chǎn)生,時(shí)鐘和觸發(fā)信號(hào)是同步的。當(dāng)工作在外部觸發(fā)方式時(shí),系統(tǒng)時(shí)鐘通過(guò)上升沿同步由外部輸入的觸發(fā)信號(hào)時(shí)會(huì)產(chǎn)生抖動(dòng),抖動(dòng)會(huì)降低脈沖延時(shí)的分辨率和精度。所以針對(duì)此問(wèn)題,本文提出了一種隨機(jī)抖動(dòng)的消除方法。
外觸發(fā)模式下隨機(jī)抖動(dòng)產(chǎn)生機(jī)理如圖2 所示。如果設(shè)定觸發(fā)信號(hào)和T0通道的延時(shí)時(shí)間為Td=NT+t,其中T為系統(tǒng)的時(shí)鐘周期,t為小于T的細(xì)延時(shí)時(shí)間。由圖2 可知未補(bǔ)償?shù)腡0通道的延時(shí)會(huì)比設(shè)定值Td大一個(gè)隨機(jī)抖動(dòng)時(shí)間Tj,Tj的值在(0,T)隨機(jī)分布。如果將觸發(fā)信號(hào)造成的Tj測(cè)出并送給控制單元,在系統(tǒng)粗延時(shí)完成后再額外增加一個(gè)補(bǔ)償時(shí)間Tc滿足公式(1),使得Td=(N-1)T+Tc就可以消除隨機(jī)抖動(dòng),其中(N-1)T為粗延時(shí)時(shí)間,Tc作為細(xì)延時(shí)時(shí)間。
圖2 隨機(jī)抖動(dòng)產(chǎn)生
隨機(jī)抖動(dòng)的消除原理如圖3 所示,該電路主要由抖動(dòng)測(cè)量模塊和抖動(dòng)補(bǔ)償模塊組成。其中抖動(dòng)測(cè)量模塊采用抽頭延時(shí)鏈技術(shù),當(dāng)外觸發(fā)信號(hào)輸入時(shí),通過(guò)控制單元啟動(dòng)脈沖產(chǎn)生電路進(jìn)行延時(shí)粗調(diào)。同時(shí)抖動(dòng)測(cè)量模塊對(duì)400 MHz 時(shí)鐘同步外觸發(fā)產(chǎn)生的隨機(jī)抖動(dòng)進(jìn)行測(cè)量,并將測(cè)量結(jié)果通過(guò)控制單元發(fā)送至抖動(dòng)補(bǔ)償模塊進(jìn)行補(bǔ)償輸出。
圖3 隨機(jī)抖動(dòng)消除硬件電路結(jié)構(gòu)
抖動(dòng)測(cè)量電路原理如圖4 所示,由三輸入三鏈TDC 組成。觸發(fā)信號(hào)經(jīng)過(guò)處理后生成脈沖間隔為5T,脈沖個(gè)數(shù)為3 的觸發(fā)脈沖,將觸發(fā)脈沖送給3 條輸入路徑。輸入路徑和延時(shí)鏈用開(kāi)關(guān)矩陣進(jìn)行相互連接,切換開(kāi)關(guān)矩陣的狀態(tài)使每條延時(shí)鏈分別連接3 條輸入路徑。在觸發(fā)脈沖的上升沿到來(lái)時(shí),3 條延時(shí)鏈開(kāi)始同時(shí)測(cè)量,測(cè)量完成后改變開(kāi)關(guān)矩陣狀態(tài),等待觸發(fā)信號(hào)的第二個(gè)脈沖上升沿到來(lái)時(shí)再次進(jìn)行測(cè)量,3 次測(cè)量完成后進(jìn)行編碼發(fā)送給FIFO。TDC 選用400 MHz 的時(shí)鐘信號(hào),該信號(hào)由超低相位噪聲的模擬鎖相環(huán)芯片ADF4356 倍頻得到,ADF4356 的時(shí)基選用IQD 公司的10 MHz 的銣時(shí)鐘LFRBXO059244Bulk,具有±1.5×10-9的頻率穩(wěn)定度,有助于更精確的測(cè)量[7]。
圖4 TDC 測(cè)量原理
在測(cè)量過(guò)程中,隨機(jī)抖動(dòng)大小由輸入單元,開(kāi)關(guān)矩陣和延時(shí)鏈3 個(gè)部分的總延時(shí)組成。路徑B和路徑C的輸入單元延時(shí)時(shí)間定義為tB和tC,開(kāi)關(guān)矩陣的延時(shí)定義為tk,3 條延時(shí)鏈中延遲單元的時(shí)間分別定義為τ1、τ2、τ3。第一條延時(shí)鏈測(cè)量的隨機(jī)抖動(dòng)Tj表示為:
式中:Δτa、Δτb和Δτc為A、B、C三條路徑經(jīng)過(guò)第一條延時(shí)鏈的測(cè)量誤差,a、b和c為三條路徑經(jīng)過(guò)第一條延時(shí)鏈的延遲單元個(gè)數(shù)。第二條延時(shí)鏈測(cè)量的隨機(jī)抖動(dòng)Tj為:
式中:Δτe、Δτf和Δτg為A、B、C三條路徑通過(guò)第二條延時(shí)鏈的測(cè)量誤差,e、f和g為三條路徑經(jīng)過(guò)第二條延時(shí)鏈的延遲單元個(gè)數(shù)。第三條延時(shí)鏈測(cè)量的隨機(jī)抖動(dòng)Tj為:
式中:Δτm、Δτn和Δτh為A、B、C三條路徑經(jīng)過(guò)第三條延時(shí)鏈的測(cè)量誤差,m、n和h為三條路徑經(jīng)過(guò)第三條延時(shí)鏈的延遲單元個(gè)數(shù)。由式(2)、式(3)和式(4)可知,測(cè)量結(jié)果可用S(a,b,c,e,f,g,n,m,h)表征隨機(jī)抖動(dòng)Tj,測(cè)量結(jié)果中的9 個(gè)變量表示對(duì)延時(shí)鏈的延遲單元進(jìn)行了9 次的分割,為簡(jiǎn)化分析,圖5 為該TDC 的第一個(gè)觸發(fā)脈沖測(cè)量時(shí)的時(shí)間分割原理。由于輸入單元的延時(shí)不同和延時(shí)鏈中延遲單元的差異性,導(dǎo)致每一個(gè)延遲單元的開(kāi)始和結(jié)束位置相互錯(cuò)位。當(dāng)?shù)谝粋€(gè)觸發(fā)脈沖輸入到三輸入三鏈TDC 時(shí),假設(shè)測(cè)量時(shí)間的停止點(diǎn)落在A點(diǎn)時(shí),延時(shí)鏈1 經(jīng)過(guò)的延遲單元個(gè)數(shù)為a,測(cè)量結(jié)果的誤差范圍為第a個(gè)延遲單元的延時(shí)時(shí)間,單條延時(shí)鏈的測(cè)量結(jié)果的精度由延遲單元的延時(shí)決定。延時(shí)鏈2 和3 經(jīng)過(guò)的延遲單元個(gè)數(shù)分別為f和h,測(cè)量結(jié)果落在時(shí)間分割后的第i(a,f,h)個(gè)延遲單元。測(cè)量結(jié)果的誤差范圍為三條延時(shí)鏈的測(cè)量交集(分割后的第i個(gè)延時(shí)單元),測(cè)量精度相比于單鏈進(jìn)一步提高,擺脫了延時(shí)單元的延時(shí)大小對(duì)測(cè)量精度的束縛。由于輸入單元和每個(gè)延遲單元的延時(shí)時(shí)間不確定性,完整的三輸入三鏈TDC 的精度由TDC 碼密度校正的結(jié)果決定。
圖5 并行延時(shí)線時(shí)間分割示意圖
延時(shí)鏈選用FPGA 的CARRY4(超前快速進(jìn)位邏輯結(jié)構(gòu))級(jí)聯(lián)構(gòu)成。為了減小延遲單元的差異性,將CARRY4 整個(gè)邏輯單元分割為兩個(gè)延遲單元,如圖6所示。在400 MHz 的工作頻率下,Xilinx 的Artix-7系列FPGA 平均每個(gè)延遲單元為33 ps,至少需要76個(gè)延遲單元才能滿足測(cè)量需求??紤]到溫度對(duì)延時(shí)鏈的影響,為TDC 的測(cè)量范圍留有一定的裕量,設(shè)計(jì)每條測(cè)量鏈包含80 個(gè)延遲單元[8-10]。
圖6 CARRY4 分割方案
由式(1)可知,補(bǔ)償時(shí)間的范圍為0~5 ns。5 ns的延時(shí)范圍比較容易實(shí)現(xiàn),而更好的補(bǔ)償精度需要更高分辨率的延時(shí)控制,選用MC100EP196 延時(shí)芯片,借助其數(shù)字控制和壓控功能可實(shí)現(xiàn)高達(dá)1 ps 的分辨率,其延時(shí)電路原理如圖7 所示。抖動(dòng)補(bǔ)償模塊的粗延時(shí)電路通過(guò)控制延時(shí)陣列實(shí)現(xiàn)10 ps 到5 ns 的延時(shí),分辨率為10 ps。細(xì)延時(shí)電路使用外部輸入電壓調(diào)節(jié)壓控延時(shí)實(shí)現(xiàn)0~10 ps 的延時(shí),分辨率為1 ps。
圖7 MC100EP196 延時(shí)電路原理
數(shù)字控制延時(shí)電路的實(shí)現(xiàn)比較簡(jiǎn)單,將鎖存器的使能信號(hào)清零,就能夠?qū)崟r(shí)地通過(guò)FPGA 給MC100EP196 發(fā)送十位的二進(jìn)制的延時(shí)指令。壓控延時(shí)電路的控制電壓由20 位的DACMAX5719 產(chǎn)生,并且通過(guò)電壓跟隨器將其輸出和MC100EP196隔離來(lái)增強(qiáng)驅(qū)動(dòng)能力和抗干擾能力。DAC 的4.096 V參考電壓由高精度基準(zhǔn)電壓源LT1461 產(chǎn)生,保證了參考電壓的精度和穩(wěn)定性。由于MC100EP196 的輸入信號(hào)是差分信號(hào),所以選擇SN65EPT22D 將FPGA 產(chǎn)生的單端脈沖信號(hào)轉(zhuǎn)化為差分信號(hào)。
通過(guò)對(duì)實(shí)際芯片的測(cè)試,得出延時(shí)指令Data 和設(shè)定的延時(shí)時(shí)間td(ps)之間的關(guān)系為:
由于工藝不同導(dǎo)致每個(gè)延遲單元的時(shí)間存在差異,因此需要對(duì)每一個(gè)延遲單元進(jìn)行校準(zhǔn)。使用隨機(jī)脈沖作為TDC 的輸入信號(hào),隨機(jī)脈沖與時(shí)鐘信號(hào)的時(shí)間間隔在(0,T)范圍內(nèi)隨機(jī)分布,當(dāng)樣本容量足夠大時(shí),認(rèn)為輸入的隨機(jī)脈沖均勻分布。如果某一級(jí)的延遲單元的延時(shí)時(shí)間越長(zhǎng),則測(cè)量結(jié)果落入該延遲單元的次數(shù)越多。統(tǒng)計(jì)測(cè)量結(jié)果中每一級(jí)延遲單元的次數(shù),次數(shù)越多則延遲時(shí)間越大,若第k個(gè)延遲單元的次數(shù)為nk,則第k個(gè)延遲單元的的延遲時(shí)間Tk為式(6)所示[11-12]。
通過(guò)碼密度校正,得到三輸入三鏈TDC 經(jīng)過(guò)分割后的每一級(jí)延遲單元的延時(shí)時(shí)間估計(jì)值,如圖8所示。其橫坐標(biāo)為所有分割后的延遲單元按時(shí)間先后排列的序號(hào),縱坐標(biāo)為每個(gè)延遲單元的延遲時(shí)間。
圖8 延遲單元延遲時(shí)間測(cè)試圖
假設(shè)測(cè)量結(jié)果落在第m個(gè)延遲單元,則可以求出所測(cè)量時(shí)間間隔Tm的范圍為:
由式(7)可知,Tm需要一個(gè)值Ti(Ti∈Tm)來(lái)表示,使測(cè)量誤差最小,測(cè)量的標(biāo)準(zhǔn)方差可以表示為:
對(duì)式(8)求導(dǎo)可知,測(cè)量結(jié)果的最后一個(gè)延遲單元選取Ti=(Ti+Ti-1)/2 時(shí)方差最小。
對(duì)所設(shè)計(jì)的三輸入三鏈TDC 的精度進(jìn)行測(cè)試,時(shí)間間隔的測(cè)量精度定義為單次測(cè)量精度,用固定的時(shí)間間隔測(cè)量結(jié)果的標(biāo)準(zhǔn)差來(lái)表示。當(dāng)輸入時(shí)間間隔為2 ns 時(shí),測(cè)量30 次的結(jié)果如圖9 所示,RMS精度為18.9 ps。
圖9 時(shí)間間隔測(cè)量結(jié)果
為了消除延時(shí)補(bǔ)償模塊的固有延時(shí)對(duì)測(cè)試的影響,使用脈沖碼型發(fā)生器81134A 生成兩路同步信號(hào)channel 1 和channel 2,頻率設(shè)置為300 MHz,占空比50%,輸出電平1.5 V,用延時(shí)補(bǔ)償模塊對(duì)channel 1 進(jìn)行2.997 ns 的延時(shí),對(duì)channel 2 進(jìn)行3 .000 ns 的延時(shí)。使用帶寬為20 GHz 的DCA-X 86100D 示波器測(cè)試兩路延時(shí)后的脈沖,測(cè)試結(jié)果如圖10 所示。從測(cè)試結(jié)果可以看出,兩個(gè)通道的相位差為0.3°~0.8°,計(jì)算可得延時(shí)補(bǔ)償電路對(duì)應(yīng)3 ns延時(shí)的抖動(dòng)最大為4.2 ps。
圖10 實(shí)驗(yàn)結(jié)果圖
本文介紹了一種延時(shí)脈沖發(fā)生器消除抖動(dòng)的方案,對(duì)其主要的模塊進(jìn)行了詳細(xì)的論述。通過(guò)TDC測(cè)量出隨機(jī)抖動(dòng)的值,然后通過(guò)延時(shí)電路來(lái)補(bǔ)償時(shí)鐘與觸發(fā)不同步造成的抖動(dòng)。分別對(duì)測(cè)量模塊和延時(shí)補(bǔ)償模塊進(jìn)行測(cè)量,實(shí)驗(yàn)結(jié)果表明:測(cè)量模塊造成脈沖的抖動(dòng)為18.9 ps,抖動(dòng)補(bǔ)償模塊的抖動(dòng)為4.2 ps,最終系統(tǒng)的抖動(dòng)為19.3 ps,有效地抑制了抖動(dòng),對(duì)研制低抖動(dòng)高精度延時(shí)脈沖發(fā)生器具有一定的參考和應(yīng)用價(jià)值。