詳解如何利用FPGA實現(xiàn)寬帶多普勒測速聲納數(shù)字系統(tǒng)
摘 要: 針對多普勒測速聲納的高精度要求,采用寬帶發(fā)射信號和相控陣波束形成技術(shù),并利用FPGA在數(shù)據(jù)處理方面高速、并行、實時的特點,在以Altera StratixII EP2S60F484I4 FPGA為核心的系統(tǒng)上設(shè)計了寬帶多普勒測速聲納數(shù)字系統(tǒng),實現(xiàn)了采樣控制及帶通濾波、波束形成、相關(guān)運算等信號處理算法。測試結(jié)果顯示,寬帶信號能夠更好地滿足聲納系統(tǒng)高精度要求。
關(guān)鍵詞: FPGA;寬帶信號;多普勒測速;聲納
21世紀(jì)是一個船舶工業(yè)飛速發(fā)展的時代,無論從經(jīng)濟層面還是從軍事層面,都對船舶和水下潛器的定位與導(dǎo)航技術(shù)提出了新的要求。從經(jīng)濟層面來講,從事海洋運輸行業(yè)的艦船航行中需要高精度的速度信息,對高性能定位導(dǎo)航設(shè)備需求迫切;從軍事層面來講,水下潛器需要合適的速度測量設(shè)備保障水下保密航行。因此,開發(fā)依據(jù)聲學(xué)原理的水下測速設(shè)備具有積極的意義[1]。
在水聲定位與導(dǎo)航領(lǐng)域,目前主要依賴于多普勒計程儀實現(xiàn)定位導(dǎo)航功能。多普勒計程儀是利用聲波測量艦船絕對運動速度的設(shè)備。在已知艦船起始位置和航向信息的情況下,能夠通過推算為艦船提供位置信息。寬帶發(fā)射信號相對于窄帶發(fā)射信號具有更高的頻率分辨率,回波能夠攜帶更多的頻移信息,從而更有利于速度信息的測量。面對大量數(shù)據(jù)的高速處理,使用FPGA(Field Programmable Gate Array)代替?zhèn)鹘y(tǒng)DSP(Digital Signal Processor)可以更好地完成接收信號的實時處理,這也是本論文研究的出發(fā)點。
1 多普勒測速聲納原理
當(dāng)收發(fā)合置換能器相對于海底運動時,換能器接收到的反射信號頻率將會高于或者低于發(fā)射信號的頻率,這種由于相對運動所引起的接收頻率改變的現(xiàn)象叫做多普勒效應(yīng)[2]。設(shè)聲速為c,收發(fā)合置換能器發(fā)射頻率為fT的脈沖,艦船在海面上以水平速度分量vx向前運動,經(jīng)過推導(dǎo),接收信號相對發(fā)射信號的多普勒頻移為:
由式(1)可知,在fT、α、c已知的前提下,就可以根據(jù)多普勒頻移fdI計算出艦船運動速度vx。
2 數(shù)字系統(tǒng)設(shè)計與實現(xiàn)
2.1 系統(tǒng)總體設(shè)計框架
在以FPGA為核心的系統(tǒng)上完成多普勒測速聲納數(shù)字系統(tǒng)的設(shè)計,實現(xiàn)帶通濾波、波束形成、相關(guān)運算等信號處理算法。系統(tǒng)由4個模塊組成,包括A/D(Analog to Digital)采樣控制模塊、帶通濾波模塊、波束形成模塊和相關(guān)運算模塊,系統(tǒng)的結(jié)構(gòu)框圖如圖1所示。
2.2 采樣控制模塊
FPGA控制4片模數(shù)轉(zhuǎn)換芯片ADS8361完成8路數(shù)據(jù)采集,每片ADS8361包含左右兩個通道。結(jié)合ADS8361時序設(shè)計A/D采樣控制模塊,在采集數(shù)據(jù)完成后,8路數(shù)據(jù)輸出至帶通濾波模塊。
2.3 帶通濾波模塊
帶通濾波器的中心頻率為40 kHz,帶寬為70 kHz。濾波器通帶內(nèi)的波動為3 dB,阻帶內(nèi)衰減為30 dB。中心頻率為280 kHz的偽隨機信號通過濾波器,低于5 kHz和高于75 kHz的頻率分量通過濾波器之后被過濾掉,實現(xiàn)了帶通濾波。
2.4 波束形成模塊
根據(jù)相控陣波束形成的特點,可設(shè)計出如圖2所示的FPGA波束形成接收框圖。信號乘“-1”實現(xiàn)“相控陣移相π相位”,希爾伯特(Hilbert)變換實現(xiàn)“移相π/2”,這種相移方式下信號相位的移動不受頻率的影響,適合處理寬帶信號。采用ModelSim進(jìn)行功能仿真,得到波束1和波束2兩路輸出,如圖3所示。波束1輸出信號上得到了同相疊加,而波束2輸出的信號被反相抑制。
2.5 相關(guān)運算模塊
為了準(zhǔn)確檢測回波信號的到達(dá),需對波束形成模塊輸出的數(shù)據(jù)進(jìn)行相關(guān)處理。為保證實時性,四個乘法器并行運算,控制模塊將數(shù)據(jù)存入RAM,讀取ROM中數(shù)據(jù)和RAM輸出數(shù)據(jù)進(jìn)行乘加運算,ROM輸出數(shù)據(jù)順序調(diào)整由交叉開關(guān)完成,運算結(jié)構(gòu)圖如圖4所示[3]。ModelSim進(jìn)行功能仿真如圖5所示,輸入信號datain_a輸入3 200個數(shù)據(jù)后,輸出的相關(guān)運算值sum出現(xiàn)最大值。