程 帥, 劉興輝, 趙宏亮, 趙 野, 李 博, 趙發(fā)展
(1.遼寧大學(xué) 物理學(xué)院,遼寧 沈陽 110036; 2.中國科學(xué)院 微電子研究所,北京 100029; 3.中國科學(xué)院 硅器件技術(shù)重點(diǎn)實(shí)驗室,北京 100029)
近年來,應(yīng)用于單光子測距電路中的時間相關(guān)單光子計數(shù)(time-correlated single-photon counting,TCSPC)技術(shù)日趨成熟[1]。因為測距系統(tǒng)的靈敏度很高,探測目標(biāo)背景會產(chǎn)生很大噪聲,所以有效地去除噪聲是發(fā)揮單光子測距電路探測能力的關(guān)鍵[2-5]。
目前提出的去噪算法比較單一,本文稱這類算法為傳統(tǒng)去噪算法。在傳統(tǒng)的去噪算法中,利用單光子在某一時間窗口具有時間相關(guān)性、而背景光往往呈均勻分布這一特性[6-8],從統(tǒng)計直方圖中進(jìn)行逐條篩選,篩選出具有一定時間間隔的相對較高的信號作為有效單光子信號,從而完成去噪[9-10],但逐條篩選的方法效率太慢。
本文提出的單光子去噪優(yōu)化算法避免了逐條進(jìn)行篩選,采取先進(jìn)行“粗定位”而后進(jìn)行“細(xì)定位”的原則對單光子進(jìn)行等效篩選,從而在保證準(zhǔn)確性和傳統(tǒng)篩選算法一致的情況下,大幅度地提高了數(shù)據(jù)處理的效率,減少了數(shù)據(jù)處理的時間。本文不但給出了實(shí)現(xiàn)優(yōu)選算法的數(shù)字電路結(jié)構(gòu),解釋了這種結(jié)構(gòu)的原理,同時也給出了一種結(jié)合該算法的單光子測距電路及其仿真結(jié)果,從而在電路層面驗證了算法的有效性和正確性。
對于單光子,因為在某一時間窗口內(nèi)具有時間相關(guān)性,而背景光往往隨時間呈均勻分布,所以在以時間為橫坐標(biāo)、光子數(shù)為縱坐標(biāo)的統(tǒng)計直方圖中,單光子信號往往對應(yīng)著縱坐標(biāo)值相對較高的幾條,可它們又不能靠得太近,靠得太近極有可能同屬于一個光波信號。因此篩選單光子信號的原則如下:在對應(yīng)的統(tǒng)計直方圖中找到縱坐標(biāo)值較高而相距較遠(yuǎn)的若干條,它們被視為單光子信號。
單光子信號在時間窗口里的時間相關(guān)性如圖1所示,在這里單光子都聚積在某一時間窗口內(nèi),而背景光沒有這種聚積性,隨時間均勻分布。因此在這些時間段的光子數(shù)明顯多于其他時間段收集到的光子數(shù),而去噪工作正是找到這些時間段以及它們對應(yīng)的光子數(shù)。在進(jìn)行多次統(tǒng)計后,可生成以時間相關(guān)光子數(shù)為縱坐標(biāo)、時間為橫坐標(biāo)的時間光子數(shù)統(tǒng)計直方圖。單光子的去噪過程實(shí)際上就是在該直方圖中篩選出光子數(shù)最多且相隔一定時間的幾條,這些條的橫坐標(biāo)所對應(yīng)的時刻即為單光子信號的到來時刻。本文在1 024個數(shù)據(jù)的直方圖上進(jìn)行篩選,篩選出3個單光子信號。
圖1 相關(guān)單光子探測原理圖
單光子測距主要利用統(tǒng)計直方圖找出單光子的到來時刻,再結(jié)合已被測量的單光子發(fā)射時刻,兩者做差乘光速的1/2得出被測目標(biāo)距離信息。因此測距的關(guān)鍵在于單光子去噪,找出單光子到來時刻即可完成測距。
整個測距系統(tǒng)分為光子探測部分、相關(guān)光子探測電路、光子計數(shù)模塊、時間數(shù)字轉(zhuǎn)換器以及數(shù)字信號處理電路。光子探測部分的作用是將一個光子的光脈沖信號轉(zhuǎn)變成具有一定持續(xù)時間的方波信號,并將這些信號送入時間相關(guān)光子探測電路中。時間相關(guān)光子探測電路根據(jù)是否有2個或以上的光子方波的上升沿聚集在時間窗口內(nèi)來決定trigger信號是否為1,并將trigger信號分別送入時間數(shù)字轉(zhuǎn)換器以及光子計數(shù)模塊中。時間數(shù)字轉(zhuǎn)換器將trigger信號到來時刻測量出來并以二進(jìn)制數(shù)字的形式輸出,光子計數(shù)模塊則將時間窗口內(nèi)的光子數(shù)全部計入。接下來,將時間數(shù)字轉(zhuǎn)換器的測量結(jié)果以及對應(yīng)光子數(shù)送入直方圖獲取電路中生成以時刻為橫軸、光子數(shù)為縱軸的時間光子數(shù)統(tǒng)計直方圖。最后送入數(shù)字信號處理電路中進(jìn)行單光子去噪,本文著重介紹這一部分的改進(jìn)及優(yōu)化。
本文所提出的單光子去噪算法是對傳統(tǒng)去噪算法的優(yōu)化。相比于傳統(tǒng)算法對單光子統(tǒng)計直方圖的逐條篩選,本文提出的優(yōu)化算法則是首先確定單光子的一個比較大的時間范圍,也就是確定在統(tǒng)計直方圖的某16條內(nèi),當(dāng)確定這個范圍后,然后在選好的這些16條中進(jìn)行細(xì)篩選,并最終確定單光子所在的位置。
傳統(tǒng)的單光子去噪算法是指對光子數(shù)統(tǒng)計直方圖進(jìn)行逐條比較,直至將直方圖的所有條全部比較完為止。但傳統(tǒng)的去噪算法需要對直方圖的所有條都進(jìn)行一次對比,這里以1 024條為例,通過對這1 024條進(jìn)行逐條對比,從中篩選出縱值最高且相距至少16條遠(yuǎn)的3條代表3個單光子信號。因為這種篩選方式嚴(yán)重地拖慢了算法的運(yùn)行速度,所以對算法的優(yōu)化十分必要。
為了避免數(shù)據(jù)的多次比對和判斷,本文提出了一種優(yōu)化的去噪算法。優(yōu)化算法要經(jīng)過先粗去噪再細(xì)去噪2個步驟。粗去噪是指將1 024個數(shù)據(jù)按序存入32階的二維方陣中,其中將每16個光子數(shù)作為一組數(shù)據(jù)在直方圖的先后順序編入一個4階分塊矩陣中,并用有序整數(shù)對(row, col)(row,col在0~7之間,row稱為行,col稱為列)為其進(jìn)行編號。因此整個矩陣被分成64塊,具體的數(shù)據(jù)存儲結(jié)構(gòu)如圖2所示。
圖2 數(shù)據(jù)存儲結(jié)構(gòu)
在對某一分塊矩陣的16個位置存滿后則進(jìn)行求和再進(jìn)行逐塊篩選。具體過程是從編號為(0,0)的矩陣開始,將該分塊矩陣中的16個數(shù)據(jù)進(jìn)行求和。之后列進(jìn)行遞增加1,求和后與前一塊矩陣數(shù)據(jù)和進(jìn)行比較。當(dāng)某塊列為7時則跳轉(zhuǎn)下一行,直至比較到(7,7)為止。此處將當(dāng)前矩陣塊的數(shù)據(jù)和記為r,編號記為(row,col)。在此過程中若某塊的和最高,則將其和定為r1,編號定為(rowt1,colt1)。(rowt2,colt2)有2種產(chǎn)生方式:① 找到與(rowt1,colt1)相差超過一列(下文稱為條件1,若換成(rowt2,colt2)則稱條件2)的塊將其和定為r2,將其序號暫定為(rowt2,colt2)。若在比較過程中發(fā)現(xiàn)滿足條件1且和超過r2的塊,則將該塊序號定為(rowt2,colt2)。② 發(fā)現(xiàn)某塊和超過r1且滿足條件1,則將原(rowt1,colt1)定為(rowt2,colt2)。(rowt3,colt3)的產(chǎn)生方式有如下3種:① 將同時滿足條件1、條件2的塊的和定為r3,序號暫定為(rowt3,colt3),在比較過程中若某塊和超過r3且滿足條件1、條件2,則將其序號定為(rowt3,colt3);② 若某塊和超過r2且滿足條件1、條件2,則將原(rowt2,colt2)定為(rowt3,colt3);③ 若某塊和超過r1且滿足條件1,則將原(rowt2,colt2)定為(rowt3,colt3)。優(yōu)化算法粗去噪的具體流程如圖3所示。
圖3 優(yōu)化算法粗去噪流程
由圖3可知,經(jīng)過這樣的流程找出的3個分塊矩陣中一定存在需被篩選出的3個單光子信號,且每個分塊矩陣中各自存在一個。這是由于2個單光子信號至少需要隔開16條的距離,可一個分塊矩陣中的距離必小于16條,因此一塊中不可能存在2個單光子信號。而依照該選取原則所篩選出的是數(shù)據(jù)和最高的且相距至少一列的3塊,數(shù)據(jù)和最高意味著波峰的位置就在這些塊中,相隔至少一列保證了它們至少相隔16條遠(yuǎn),因此3個單光子信號分別在這篩選出的3個分塊矩陣中。若想確定它們的具體位置,則需進(jìn)行下面的細(xì)去噪過程。
細(xì)去噪過程指的是從已經(jīng)選好的3個分塊矩陣中確定出3個單光子信號的位置。具體原則是從篩選好的3塊中分別進(jìn)行按條篩選并確定出光子數(shù)最大的一條。具體流程是從第1條開始與后一條進(jìn)行對比,留下較大的條,直至比到最后一條(第16條)。每一塊都進(jìn)行這樣的篩選,最終確定的3條即為3個單光子信號在對應(yīng)矩陣中的位置hisfinet1、hisfinet2、hisfinet3。最后,將細(xì)篩選所確定的條數(shù)再加上128倍的相應(yīng)矩陣塊的行數(shù)與16倍的列數(shù)之和所得到的數(shù),就對應(yīng)著3個單光子信號在時間光子數(shù)統(tǒng)計直方圖上的位置TOF1、TOF2、TOF3。
對比文獻(xiàn)[9]傳統(tǒng)算法的逐條篩選機(jī)制,本文的優(yōu)化算法在保證準(zhǔn)確度的同時具有更高的效率。2種算法的篩選機(jī)制的對比示意圖如圖4所示。
圖4 2種算法篩選機(jī)制對比示意圖
從圖4可以看出,傳統(tǒng)算法為將圖4中的細(xì)條進(jìn)行逐條對比判斷,從而篩選出3個用實(shí)心細(xì)條表示的TOF1、TOF2、TOF3。而優(yōu)化算法則是將細(xì)條分組作和(用粗條代表),先進(jìn)行64個和的對比和判斷,篩選出3個用帶有陰影的粗條表示的“粗略位置”,再在這3個“粗略位置”中經(jīng)細(xì)篩選找出與傳統(tǒng)算法找出的相同的3條。
由以上分析可知,算法的數(shù)據(jù)規(guī)模大大縮減。傳統(tǒng)的去噪算法有1 024個數(shù)據(jù),本文提出的優(yōu)化算法只需要對比112個數(shù)據(jù)。而若從算法運(yùn)行次數(shù)的角度上看,傳統(tǒng)算法需運(yùn)行1 023次,而優(yōu)化算法只需運(yùn)行108次。結(jié)合每個算法運(yùn)行時所需步數(shù)可以看到,傳統(tǒng)算法需運(yùn)行11 253步,優(yōu)化算法只需運(yùn)行1 044步。而兩者所篩選的結(jié)果相同,從而保證了優(yōu)化算法在精度與傳統(tǒng)算法一致的前提下,效率超過了傳統(tǒng)算法的10倍。具體指標(biāo)對比見表1所列。
表1 2種算法指標(biāo)對比
本節(jié)將給出實(shí)現(xiàn)優(yōu)化算法的數(shù)字電路的結(jié)構(gòu)圖及其的版圖和后仿波形,用仿真數(shù)據(jù)及波形從電路層面進(jìn)一步說明算法的正確性。
按照優(yōu)化算法的流程,并結(jié)合該算法的結(jié)構(gòu),本文給出了實(shí)現(xiàn)此算法的電路結(jié)構(gòu),如圖5所示。
圖5 去噪算法電路結(jié)構(gòu)
從圖5可以看出,當(dāng)光子數(shù)被記下后就被送入二維矩陣存儲電路中進(jìn)行按塊存儲。接下來,每當(dāng)某塊數(shù)據(jù)被存滿后進(jìn)行作和送至粗比較電路中進(jìn)行比較,直至每塊都存滿后將輸出的(rowt1,colt1)、(rowt2,colt2)、(rowt3,colt3)送至細(xì)比較電路中。
細(xì)比較電路將這3塊內(nèi)的數(shù)據(jù)分別進(jìn)行比較,經(jīng)細(xì)讀出電路選出單光子信號在這3個矩陣中的位置。最后經(jīng)數(shù)據(jù)轉(zhuǎn)換電路將所確定的位置轉(zhuǎn)換成對應(yīng)時間與光子數(shù)統(tǒng)計直方圖上的位置TOF1、TOF2、TOF3。
本文給出噪聲去除算法電路的布局和后仿真結(jié)果,如圖6所示。
從圖6a可以看出,版圖面積為601×1 202 μm2,電路總功耗為12.96 mW;從圖6b可以看出,TOF1的位置應(yīng)為00001000100,TOF2的位置應(yīng)為01001001111,TOF3的位置應(yīng)為01101001011。而后仿結(jié)果正是如此,這說明此電路實(shí)現(xiàn)了優(yōu)化算法的功能,并在統(tǒng)計直方圖中提取TOF1、TOF2、TOF3的正確位置以完成噪聲去除。
圖6 算法電路版圖和后仿結(jié)果
隨著高級駕駛員輔助系統(tǒng)(advanced driver assistance systems,ADAS)中對高分辨率光檢測和測距(light detection and ranging,LIDAR)技術(shù)的需求越來越高,本文引入了一種應(yīng)用于激光測距的去噪算法,該算法可以執(zhí)行與時間相關(guān)的單光子測距和完整的數(shù)字信號處理電路,它包括粗過濾和細(xì)過濾2個過程。在粗濾波中,將每個16個光子作為一個組,并首先編為4×4子陣列,在子陣列塊中,將匯總所有光子,然后逐塊進(jìn)行篩選。在細(xì)濾波中,對來自在粗濾波中選擇的3個子陣列中的每個子陣列的16個數(shù)據(jù)進(jìn)行卷積,然后通過在每個子陣列中逐個地濾波來確定最大數(shù)量的光子。
本文能夠根據(jù)時空相關(guān)事件生成精確觸發(fā)的關(guān)鍵電路。仿真實(shí)驗結(jié)果表明,本文提出的方法大大提高了運(yùn)算速度,同時精度仍然很高,可用于激光雷達(dá)芯片的實(shí)時信號處理。