1 引 言
雷達、聲納探測和超聲成像等系統中為了提高對目標變化實時跟蹤和測量,就必須盡量縮短信號處理的時間,過長的運算處理時間會對水下目標的探測性能產生較大的影響。聲納的檢測能力就會迅速下降,以至完全失去檢測能力,而自適應波束形成技術(ABF)就是聲納能夠根據周圍環境噪聲場的變化,不斷地自動調節本身的參數以適應周圍環境,抑制干擾并檢出有用信號。因此采用FPGA來實現自適應波束形成算法是滿足復雜海洋環境超聲陣列波束形成的較好途徑。
最小均方自適應算法(Least Mean Square,LMS)較其他自適應算法具有結構簡單,計算量小,易于實現等特點。FPGA實現LMS自適應波束形成算法比采用現有DSP來實現可以明顯提高信號的處理速度,節約資源,能更好地滿足復雜多變的海洋環境,具有廣泛的實用價值。
波束形成系統相當于一個時空濾波器,自適應波束形成系統可采用IIR和FIR兩種結構。與IIR濾波器相比,FIR濾波器具有以下優點:可得到嚴格的線性相位;主要采用非遞歸結構,從理論上以及從實際的有限精度運算中,都是穩定的;由于沖激響應是有限長度的,因此可以用快速傅里葉變換算法,運算速度快;FIR濾波器設計方法靈活。
本文采用自適應的FIR濾波器結構,結合時延最小均方(DLMS)算法,充分利用FPGA芯片運算速度快,存儲資源豐富等優點設計和實現了基于FIR超聲陣列自適應波束形成。主動聲納信號為窄帶信號,通常采用復數形式表示,在空間濾波器模塊采用了循環移位流水乘加器,使復數乘加運算節約了大量資源,同時用并行乘法器完成了DLMS算法,并給出了系統軟、硬件模塊和仿真分析。
2 超聲陣列波束形成系統模型及原理
2.1 系統架構及原理
自適應波束形成又稱自適應空域濾波,他是通過對各陣元加權進行空域濾波,來達到增強有用信號、抑制干擾的目的,而且他可以根據信號環境的變化,來改變各陣元的加權因子。在理想的條件下,自適應波束形成技術可以有效地抑制干擾而保留期望(有用)信號,從而使陣列的輸出信號干擾噪聲比(SINR)達到最大。自適應過程的實現可以采用任何一種適用于橫向結構濾波器的自適應迭代算法,比如Wiener濾波器,或者最小均方(LMS)算法。本設計采用最小均方(LMS)算法,系統結構原理如圖1所示。
基于FIR自適應波束形成系統過程如下:一方面,輸入信號與表示在n時刻的值可調節權系數ω1(n),ω2(n),…,ωm(n)相乘后相加得到輸出;另一方面,將輸出信號與期望信號進行對比,所得的誤差值通過一定的DLMS自適應控制算法再用來調整權值,以保證空間濾波器處在最佳狀態,實現濾波的目的。
FIR由線性系統理論可知,在某種適度條件下,輸入到線性系統的一個沖擊完全可以表征系統。當我們處理有限的離散數據時,線形系統的響應(包括對沖擊的響應)也是有限的。若線性系統僅是一個空間濾波器,則通過簡單地觀察它對沖擊的響應,我們就可以完全確定該濾波器。通過這種方式確定的濾波器稱為有限沖擊響應(FIR)濾波器。
FIR濾波器是在數字信號處理(DSP)中經常使用的兩種基本的濾波器之一,另一個為IIR濾波器。IIR濾波器是無限沖激響應濾波器。
在延時LMS算法(the Delayed LMS Algoritms,DLMS)中,將系數更新延遲幾個采樣周期,只要延遲小于系統階數,也就是濾波器長度,則誤差梯度▽[n]=e[n]x[n],也就是▽[n]≈▽[n-D],但對于由FPGA實現的乘法器和系數更新需要額外的流水線級,如果引入一個延遲因子D,μ為步長因子,LMS算法就變成:
2.2 系統FPGA軟件模塊設計
FPGA(Field-Programmable Gate Array),即現場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。它是作為專用集成電路(ASIC)領域中的一種半定制電路而出現的,既解決了定制電路的不足,又克服了原有可編程器件門電路數有限的缺點。
目前以硬件描述語言(Verilog 或 VHDL)所完成的電路設計,可以經過簡單的綜合與布局,快速的燒錄至 FPGA 上進行測試,是現代 IC 設計驗證的技術主流。這些可編輯元件可以被用來實現一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復雜一些的組合功能比如解碼器或數學方程式。在大多數的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發器(Flip-flop)或者其他更加完整的記憶塊。
系統設計師可以根據需要通過可編輯的連接把FPGA內部的邏輯塊連接起來,就好像一個電路試驗板被放在了一個芯片里。一個出廠后的成品FPGA的邏輯塊和連接可以按照設計者而改變,所以FPGA可以完成所需要的邏輯功能。
FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復雜的設計,而且消耗更多的電能。但是他們也有很多的優點比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的FPGA。因為這些芯片有比較差的可編輯能力,所以這些設計的開發是在普通的FPGA上完成的,然后將設計轉移到一個類似于ASIC的芯片上。另外一種方法是用CPLD(復雜可編程邏輯器件備)。
根據數字自適應波束形成的原理和數學模型,本文設計的基于FPGA數字波束形成系統結構如圖2所示。8路輸入信號x(n)經過前端信號處理,A/D轉換后,在總控模塊的控制下進入輸入數據存儲模塊雙口RAM,自適應波束形成的具體實現步驟如下:
第一步:由式(1)得,實際輸入的x(n)和調整后的權值w(n)各分量相乘之后累加得到輸出y(n);
第二步:由式(2)得,實際輸出的y(n)與期望d(n)相減得到調整誤差e(n);
第三步:由式(3)得,延時后的調整誤差P(n)跟步長的2倍相乘,再和延時的輸入x(n-D)相乘得到的積與延時的權值相加,得到新的權值向量。
第四步:新的權值向量再與新的輸入向量循環進行第一到第三步實現自適應。
由此,我們可以將系統分為五大模塊:主控模塊:主要產生時鐘信號,給各模塊提供時序信號觸發各模塊的啟動和初始化;雙口存儲模塊(包括輸入數據存儲模塊、權值存儲模塊、誤差信號存儲模塊等):存儲各功能模塊所需的數據和參數;自適應權值計算模塊,誤差計算模塊:這兩個模塊可以合在一起,用于系數更新的白適應算法;空間濾波器乘加模塊:完成濾波運算,得到輸出結果。
2.2.1 控制模塊
輸入信號和權值是8位的復數數據,通過控制模塊選擇乘法操作的操作數,兩個復數信號相乘的4種組合00,11,01,10可以完成實部和虛部之間4個乘法運算,四種情況控制模塊輸出的控制信號分別為ST0,ST1,ST2,ST3。
其中,clk_regbt用來控制乘法器完成乘法,counterbt用來控制乘數的位選,clk_reg用來控制運算新數的進入、上次計算的完畢和結果的輸出。
2.2.2 存儲模塊
一種存儲模塊,它包括:用于根據外部指令/地址信號來產生內部信號的指令/地址寄存器,且所述的指令/地址寄存器件帶有一個輸出晶體管;被分成第一和第二兩組的多個存儲器件;用于連接所述的指令/地址寄存器件和所述的存儲器件的布線;和用于安裝所述的指令/地址寄存器件和所述的存儲器件的基板;所述的布線包括:從所述的指令/地址寄存器件延伸至第一個分支結點的第一段布線;從第一個分支結點延伸至第二個分支結點的第二段布線;從第一個分支結點延伸至第三個分支結點的第三段布線;從第二個分支結點分出延伸至所述的第一組存儲器件的第四段布線;和從第三個分支結點分出延伸至第二組存儲器件的第五段布線;和所述的指令/地址寄存器件包括:阻抗調節器,用于調節從所述的指令/地址寄存器件和第一段布線之間的連接點看去所述的指令/地址寄存器件的輸出阻抗,通過調節該阻抗調節器,可使所述的輸出阻抗在內部信號的工作電壓范圍內基本保持不變;和上升時間/下降時間調節器,用于將內部信號的上升時間和下降時間調節至特定值。
存儲模塊采用8位和16位雙口RAM(如圖3所示)作為信號數據和權值數據的存入和讀取存儲器,分別用來存放輸入信號x、權值ω和誤差e,分別由控制信號clkregbt,clk_regw和clk_rege來控制信號的寫入和讀出。其中x_ram用來存放輸入信號;w_ram存放權值,其輸入為系數更新模塊的輸出,輸出為更新后的權值。
2.2.3 自適應處理及復數乘加器模塊
數字波束形成器是通過加權因子對空間不同陣元接收信號的加權求和而成的。由于加權因子相當于濾波器系數,而輸入的信號為空間位置不同的陣元的接收信號。所以可將數字波束形成器等同于一個空域濾波器來實現。
3 系統仿真與驗證
本文設計核心部分是基于Stratix系列EPlS10芯片設計的分別對I/Q兩路原始數據進行DLMS自適應算法和復數乘加運算,在QuartusⅡ環境下用VHDL語言編寫了各功能模塊,并進行了仿真,共占用了2 703個邏輯單元,同時應用Matlab對數字結果進行波形仿真,以下為仿真驗證的結果。
圖5為主控模塊的仿真波形,其中ST0,ST1,ST2,ST3為復數乘法的4種組合,clk_regbt用來控制乘法器完成乘法,counter_bt用來控制乘數的位選,clk_reg用來控制運算新數的進入、上次計算的完畢和結果的輸出。
圖6為復數乘加模塊功能仿真結果,dc_out,ds_out,xc_out,xs_out分別是輸入信號和期望信號的實部和虛部,ec_out,es_out,yc_out,ys_out分別為誤差和濾波輸出的實部和虛部。
圖7為系統仿真測試結果:系統預形成波束方向為0°方向,干擾從45°傳來,通過仿真結果可以看出,主波束在0°方向形成,和預形成主波束吻合,在45°干擾方向形成零陷,并且提高了主波束的增益,滿足系統的設計要求。
4 結 語
本文介紹了利用FPGA芯片實現的自適應BDF結構,給出了相應的硬件設計和仿真驗證,采用FPGA結構,硬件成本低,在自適應陣列信號處理系統中具有很好的應用前景。
評論
查看更多