洪鵬飛 楊 磊 付廷巖 祁 中 任忠國,2 李東倉
1 (蘭州大學(xué)核科學(xué)與技術(shù)學(xué)院 蘭州 730000)
2 (中國工程物理研究院 綿陽 621900)
反卷積技術(shù)主要用于求解信號復(fù)原和系統(tǒng)辨識問題,在光學(xué)、光譜學(xué)、能譜學(xué)以及圖像復(fù)原等領(lǐng)域得到廣泛應(yīng)用。隨著計算機技術(shù)的發(fā)展,提出了多種數(shù)值反卷積算法,如反演法、遞歸法、直接求解法、傅立葉變換法、Z變換法等[1,2]。
傳統(tǒng)的核電子學(xué)信號處理系統(tǒng),一般需核輻射探測器、前置放大器、主放大器(線性放大,基線恢復(fù)、堆積拒絕等)、多道分析器等[3]。其中大部分均為硬件電路,需手動調(diào)節(jié)。我國對數(shù)字核信號處理的研究,大部分采用模擬式核信號的處理理論和方法,進行硬件的軟化工作[4]。
本文將盲目反卷積法應(yīng)用于核脈沖信號處理,舍棄了硬件軟化過程,提出將核信號的數(shù)字處理提前至核輻射探測器的前置放大器輸出端,利用PFGA和LabVIEW的強大功能,將信號采集、傳輸和處理一體化,組成一套數(shù)字化數(shù)據(jù)獲取系統(tǒng)。
核脈沖信號通過測量儀器的過程,即為核脈沖信號與儀器沖擊響應(yīng)的卷積過程:
將式(1)的連續(xù)信號變成離散序列,即為:
式中,*為卷積符號,xn為輸入信號,ωn為系統(tǒng)的特性或沖擊響應(yīng),yn為輸出信號,ξn為零均值白噪聲。對于一維數(shù)據(jù)處理,我們把卷積模型看成一個白噪聲序列xn通過線性系統(tǒng)ωn;而反卷積就是輸出信號序列yn經(jīng)過一個白化濾波器pn,使輸出εn為白噪聲,此時,εn就是xn的一個估計[2],盲目反卷積算法的主要工作就是求pn。
本文采用自回歸(Auto regressive, AR)模型,考慮yn的q步預(yù)測,q≥1時,希望找到一組a(i),i=1,2,L,M,使yn的q步預(yù)測值(式(3))與實際值y(n+q)的誤差(式(4))的均方值E{ε2(n)}最?。?/p>
根據(jù)正交原理,這必須使誤差正交于數(shù)據(jù),即:
化簡得:
為確定a(i)值,需解M個方程,式(5)寫成矩陣形式為:
式(8)稱為Toeplitz方程,將a(i)移至左邊,得式(9),上標(biāo)?1為矩陣的逆。
得到y(tǒng)n后,由式(7)計算r(0)→r(q+M?1)及逆矩陣的值,即可算出a(i),具體過程在圖 3中的MatLAB算法中給出。此時白化濾波器表示為:p(n)={1, 0,L, 0,a(1),a(2),L,a(M)},式中有q?1個 0,濾波器的長度為(M+q),則輸入序列xn的估計:
將高速ADC和USB芯片連接到FPGA上,F(xiàn)PGA提供USB芯片和ADC工作的時鐘,并通過硬件電路對其控制,USB芯片的接口連接到PC機上,用于高速數(shù)據(jù)傳輸。ADC采集前,須用前置放大器調(diào)節(jié)核探測器的輸出信號,以滿足 ADC模擬輸入電壓的范圍。
電路原理如圖1,clk為FPGA主時鐘輸入端口,ADCclk為ADC采樣時鐘,Analog_in為模擬信號輸入端口,ADCdata[7..0]為ADC采樣數(shù)據(jù)總線,F(xiàn)Ddata[7:0]為寫入USB數(shù)據(jù),ifclk為USB外部時鐘輸入信號,slwr為 USB同步寫使能信號,F(xiàn)IFOadr[1..0]為USB FIFO端點選擇信號,slcs:USB FIFO數(shù)據(jù)輸入引腳使能,pktend:USB FIFO內(nèi)數(shù)據(jù)上傳信號,F(xiàn)IFO_EMPTY、FIFO_FULL:USB FIFO空、滿標(biāo)志位,DPLUS、DMINUS:USB接口至PC機信號端口。
圖1 系統(tǒng)硬件連接接口圖Fig.1 Schematics of the hardware connection interface.
FPGA作為USB的控制器,用狀態(tài)機來實現(xiàn),采用USB的Slave FIFO從機方式下的同步寫模式;FPGA對ADC的控制只需提供采樣時鐘MCLK[5,6]。
美國 Cypress公司為簡化和加速用戶使用EZ--USBFX2芯片進行USB外設(shè)的開發(fā),提供了完整的固件程序的架構(gòu)。用戶只需提供一個USB描述符表,修改其他端點接收和發(fā)送數(shù)據(jù)的通信代碼,控制外圍電路的程序代碼[6]。
本文中修改USB外設(shè)功能程序periph.c文件中的TD_Init()函數(shù),使端點2為批量傳輸IN端點,接收LabVIEW上位機的指令,自動提交IN包,即工作于AUTO IN狀態(tài),端點大小為512字節(jié),2倍緩沖,數(shù)據(jù)接口為 8位;修改設(shè)備描述符文件dacr.a51中的HighSpeedConfigDscr下Endpoint Descriptor參數(shù),即修改端點描述符參數(shù)。
將固件程序下載至USB后,打開美國NI公司NI-VISA4.0版本的 Driver Wizard程序,直接在LabVIEW環(huán)境下通過NI-VISA開發(fā)驅(qū)動用戶USB系統(tǒng)的應(yīng)用程序,避開了以前開發(fā)USB驅(qū)動程序的復(fù)雜性,降低了開發(fā)難度[7]。
LabVIEW上位機程序用于USB數(shù)據(jù)的獲取、處理及顯示,版本為LabVIEW 2009,程序的框圖見圖2。
整個應(yīng)用程序的主框架使用 WHILE循環(huán)不斷的查詢,并使用NI-VISA類的函數(shù)包括:打開、關(guān)閉VISA設(shè)備;設(shè)定VISA設(shè)備的屬性節(jié)點參數(shù)(指定端點和傳輸方式);讀寫USB RAW(設(shè)定字節(jié)數(shù));盲目反卷積子VI(數(shù)據(jù)處理)。
將讀取的USB數(shù)據(jù)連接到盲目反卷積子VI(圖2中的BLIND DCONV),進行顯示和處理,反卷積子VI中使用LabVIEW的MathScript節(jié)點,其中包含盲目反卷積的Matlab程序,其代碼見圖3。y表示輸入的數(shù)組,即USB接收的數(shù)據(jù);n為反卷積濾波器的長度,對于不同信號系統(tǒng),n不同;x即為反卷積序列。
圖2 LabVIEW上位機程序框圖Fig.2 Block diagram of the LabVIEW host computer.
圖3 盲目反卷積MatLab代碼Fig.3 Blind deconvolution MatLab code.
在 LabVIEW 中仿真反卷積方法能否復(fù)原脈沖信號、去除信號的堆積。用 LabVIEW 產(chǎn)生隨機脈沖信號 a,其時間間隔、幅度均不同,與卷積參數(shù)b(沖擊響應(yīng))進行卷積。設(shè)置卷積參數(shù)b= num*x*exp(-num*x),num為隨機信號序列的索引號,x是用于調(diào)整信號上升時間的常數(shù),令x=0.1,上升時間約為10 ns。將a與b進行數(shù)值卷積,得到卷積信號y。這樣仿真的是核脈沖信號經(jīng)核探測器、電荷靈敏前置放大器、CR-RC成形網(wǎng)絡(luò)的模擬脈沖信號[8],該信號同時有峰堆積和尾堆積,盲目反卷積結(jié)果見圖4。
圖 4(a)為沖擊響應(yīng)曲線,圖 4(b)為原始隨機脈沖信號。圖4(c)為無噪聲卷積信號(1)和盲目反卷積脈沖信號2,信號2與圖4(b)圖中的原始隨機脈沖信號在時間上符合的相當(dāng)好,幅度上線性擴大約10倍。圖4(d)為基線偏移10%的無噪聲卷積信號1和盲目反卷積脈沖信號2,信號2并未出現(xiàn)基線的偏移,故盲目反卷積可去除基線偏移,在時間上符合的相當(dāng)好。圖4(e)為信噪比55 dB的卷積信號1和盲目反卷積脈沖信號2,信號2的峰值清晰可見,其他信號的幅值比小于 1%。圖 4(f)為信噪比為 30 dB的卷積信號1和盲目反卷積脈沖信號2,峰值并不明顯,其他信號的幅值比已大于20%。故信噪比對盲目反卷積有著很大影響,信噪比越大,盲目反卷積越好。
模擬結(jié)果表明,信噪比大于40 dB時,無需對輸入信號預(yù)處理,盲目反卷積信號和原始脈沖信號符合得相當(dāng)好,且能去除被反卷積信號的堆積問題,基線偏移問題也可消除。在時間上反卷積脈沖信號與原始脈沖信號完全一致,在幅度上存在一個線性關(guān)系,只需給計算結(jié)果一個合適增益,原始的輸入信號即可完美的被還原。
與真實核探測器信號不同的是,信號發(fā)生器的波形信號頻率和幅度是相同的。編輯信號發(fā)生器的信號為雙峰雙指數(shù)信號,對其進行實驗采集和盲目反卷積處理。
實驗硬件的核心為美國ALTER公司cyclone系列的EP2C7F896C6N芯片;ADC芯片為美國TI公司的超高速8位ADC TLC5540;USB芯片為美國CYPRESS公司的 EZ-USB FX2LP系列的cy7c68013a;信號發(fā)生器為美國 Tektronix公司的AFG3102系列產(chǎn)品。
信號發(fā)生器信號幅度:高電平為4.0 V,低電平為0 V。設(shè)置反卷積濾波器的長度n=2。當(dāng)信號發(fā)生器頻率為12 kHz,ADC的采樣時鐘為12 MHz時。實驗計算的ADC數(shù)值由0?255,盲目反卷積的結(jié)果為1?2,我們將其數(shù)值擴大100倍,放在一張圖中便于顯示,得到實驗結(jié)果見圖5。
圖5(a)為尾堆積雙峰指數(shù)信號1和反卷積信號2,盲目反卷積有效去除尾堆積,得到幅度為150 div和300 div兩個峰值,其他信號的幅值比小于5%。圖5(b)為峰堆積雙峰指數(shù)信號1和反卷積信號2,盲目反卷積有效去除峰堆積,得到幅度均為150 div的兩個峰,其他信號的幅值比小于 5%。圖 5(a)和5(b)的指數(shù)信號第一個峰的幅度相等,故反卷積得到相同的150 div。
圖4 盲目反卷積的仿真Fig.4 The simulation by blind deconvolution.
圖5 雙峰指數(shù)信號與反卷積信號比較Fig.5 The input bimodal exponential signal and output deconvolution signal.
實驗結(jié)果表明,盲目反卷積能將信號發(fā)生器的雙峰指數(shù)信號反卷積為脈沖信號,可清晰分辨出峰的大小和位置。由于ADC采樣得到的是8位的2進制數(shù),僅能表示0?255的整數(shù),并非仿真時用的LabVIEW默認的6位浮點數(shù),故反卷積除了明顯的兩個峰,還有其他的小信號。因此,ADC的分辨率對盲目反卷積的效果有一定影響。
在FPGA控制下,利用USB2.0接口芯片和高速AD轉(zhuǎn)換器,對信號進行實時采集和傳輸,并利用可視化工具 LabVIEW 作為數(shù)據(jù)處理和顯示的平臺。通過對信號發(fā)生器指數(shù)信號的采集,驗證了盲目反卷積算法在核脈沖信號分析上的良好應(yīng)用,以及在核數(shù)據(jù)數(shù)字化處理方面的廣泛前景。
1 文德智, 李正宏, 蔣世倫. 時幅連續(xù)信號數(shù)值反卷積方法及其應(yīng)用[J]. 原子能科學(xué)技術(shù), 2008, 42(5): 385–389 WEN Dezhi, LI Zhenghong, JIANG Shilun. Numerical deconvolution method for continuous signals processing and its appl ication[J]. Atomic Energy Science and Technology, 2008, 42(5): 385–389
2 鄒謀炎. 反卷積和信號復(fù)原[M]. 北京: 國防工業(yè)出版社, 2007 ZHOU Mouyan. Deconvolution and signal recovery[M].Beijing: National Defence Industry Press, 2007
3 王芝英. 核電子學(xué)技術(shù)原理[M]. 北京: 原子能出版社,1989 WANG Zhiying. Nuclear electronics principle[M].Beijing: Atomic Energy Press, 1989
4 張軟玉. 數(shù)字化核能譜獲取系統(tǒng)的研究[D]. 四川大學(xué),2006 ZHANG Ruanyu. On the study of digital nuclear spectrum system[D]. Sichuan University, 2006
5 馬俊濤, 李振宇. SlaveFIFO模式下 CY7C68013和FPGA的數(shù)據(jù)通信[J]. 中國傳媒大學(xué)學(xué)報自然科學(xué)版,2009, 16(2): 38–44 MA Juntao, LI Zhenyu. Data transmission between CY7C68013 and FPGA based on slaveFIFO[J]. Journal of communication university of China(Science and Technoloy), 2009, 16(2): 38–44
6 錢 峰. EZ-USB FX2單片機原理、編程及應(yīng)用[M]. 北京: 北京航空航天大學(xué)出版社, 2006 QIAN Feng. Principles of programming and application of the EZ-USB the FX2 microcontroller[M]. Beijing:Beijing University of Aeronautics and Astronautics Press,2006
7 余志榮, 楊 莉. 基于NI-VISA與LabVIEW的USB接口應(yīng)用設(shè)計[J]. 單片機與嵌入式系統(tǒng)應(yīng)用, 2007, (1):66–69 YU Zhirong, YANG Li. The applications of USB interface with LabVIEW based on NI-VISA[J]. Microcontroller and Embedded System Applications, 2007, (1):66–69
8 張軟玉, 周清華, 羅小兵, 等. 核信號數(shù)值仿真方法的研究及應(yīng)用[J]. 核電子學(xué)與探測技術(shù), 2006, 24(4):421–424 ZHANG Ruanyu, ZHOU Qinghua, LUO Xiaobing,et al.The research and application of digital simulation in nuclear signal[J]. Nuclear Electronics & Detection Technology, 2006, 24(4): 421–424