基于FPGA的自適應波束形成算法實現(xiàn)-設計應用_第1頁
基于FPGA的自適應波束形成算法實現(xiàn)-設計應用_第2頁
基于FPGA的自適應波束形成算法實現(xiàn)-設計應用_第3頁
基于FPGA的自適應波束形成算法實現(xiàn)-設計應用_第4頁
基于FPGA的自適應波束形成算法實現(xiàn)-設計應用_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

精品文檔-下載后可編輯基于FPGA的自適應波束形成算法實現(xiàn)-設計應用1引言

在雷達及聲納信號處理系統(tǒng)中,波束形成算法通常采用DSP軟件編程實現(xiàn),控制邏輯電路采用CPLD來完成,這種方法具有軟件編程靈活、功能易于擴展的優(yōu)點,但對于實時性能要求很高的系統(tǒng),如雷達、聲納探測和超聲成像等系統(tǒng)中為了提高對目標變化實時跟蹤和測量,就必須盡量縮短信號處理的時間,過長的運算處理時間會對水下目標的探測性能產(chǎn)生較大的影響。聲納的檢測能力就會迅速下降,以至完全失去檢測能力,而自適應波束形成技術(ABF)就是聲納能夠根據(jù)周圍環(huán)境噪聲場的變化,不斷地自動調(diào)節(jié)本身的參數(shù)以適應周圍環(huán)境,抑制干擾并檢出有用信號。因此采用FPGA來實現(xiàn)自適應波束形成算法是滿足復雜海洋環(huán)境超聲陣列波束形成的較好途徑。

均方自適應算法(LeastMeanSquare,LMS)較其他自適應算法具有結構簡單,計算量小,易于實現(xiàn)等特點。FPGA實現(xiàn)LMS自適應波束形成算法比采用現(xiàn)有DSP來實現(xiàn)可以明顯提高信號的處理速度,節(jié)約資源,能更好地滿足復雜多變的海洋環(huán)境,具有廣泛的實用價值。

波束形成系統(tǒng)相當于一個時空濾波器,自適應波束形成系統(tǒng)可采用IIR和FIR兩種結構。與IIR濾波器相比,F(xiàn)IR濾波器具有以下優(yōu)點:可得到嚴格的線性相位;主要采用非遞歸結構,從理論上以及從實際的有限精度運算中,都是穩(wěn)定的;由于沖激響應是有限長度的,因此可以用快速傅里葉變換算法,運算速度快;FIR濾波器設計方法靈活。

本文采用自適應的FIR濾波器結構,結合時延均方(DLMS)算法,充分利用FPGA芯片運算速度快,存儲資源豐富等優(yōu)點設計和實現(xiàn)了基于FIR超聲陣列自適應波束形成。主動聲納信號為窄帶信號,通常采用復數(shù)形式表示,在空間濾波器模塊采用了循環(huán)移位流水乘加器,使復數(shù)乘加運算節(jié)約了大量資源,同時用并行乘法器完成了DLMS算法,并給出了系統(tǒng)軟、硬件模塊和仿真分析。

2超聲陣列波束形成系統(tǒng)模型及原理

2.1系統(tǒng)架構及原理

自適應波束形成又稱自適應空域濾波,他是通過對各陣元加權進行空域濾波,來達到增強有用信號、抑制干擾的目的,而且他可以根據(jù)信號環(huán)境的變化,來改變各陣元的加權因子。在理想的條件下,自適應波束形成技術可以有效地抑制干擾而保留期望(有用)信號,從而使陣列的輸出信號干擾噪聲比(SINR)達到。自適應過程的實現(xiàn)可以采用任何一種適用于橫向結構濾波器的自適應迭代算法,比如Wiener濾波器,或者均方(LMS)算法。本設計采用均方(LMS)算法,系統(tǒng)結構原理如圖1所示。

基于FIR自適應波束形成系統(tǒng)過程如下:一方面,輸入信號與表示在n時刻的值可調(diào)節(jié)權系數(shù)ω1(n),ω2(n),…,ωm(n)相乘后相加得到輸出;另一方面,將輸出信號與期望信號進行對比,所得的誤差值通過一定的DLMS自適應控制算法再用來調(diào)整權值,以保證空間濾波器處在狀態(tài),實現(xiàn)濾波的目的。

FIR由線性系統(tǒng)理論可知,在某種適度條件下,輸入到線性系統(tǒng)的一個沖擊完全可以表征系統(tǒng)。當我們處理有限的離散數(shù)據(jù)時,線形系統(tǒng)的響應(包括對沖擊的響應)也是有限的。若線性系統(tǒng)僅是一個空間濾波器,則通過簡單地觀察它對沖擊的響應,我們就可以完全確定該濾波器。通過這種方式確定的濾波器稱為有限沖擊響應(FIR)濾波器。

FIR濾波器是在數(shù)字信號處理(DSP)中經(jīng)常使用的兩種基本的濾波器之一,另一個為IIR濾波器。IIR濾波器是無限沖激響應濾波器。

在延時LMS算法(theDelayedLMSAlgoritms,DLMS)中,將系數(shù)更新延遲幾個采樣周期,只要延遲小于系統(tǒng)階數(shù),也就是濾波器長度,則誤差梯度▽[n]=e[n]x[n],也就是▽[n]≈▽[n-D],但對于由FPGA實現(xiàn)的乘法器和系數(shù)更新需要額外的流水線級,如果引入一個延遲因子D,μ為步長因子,LMS算法就變成:

2.2系統(tǒng)FPGA軟件模塊設計

FPGA(Field-ProgrammableGateArray),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。

目前以硬件描述語言(Verilog或VHDL)所完成的電路設計,可以經(jīng)過簡單的綜合與布局,快速的燒錄至FPGA上進行測試,是現(xiàn)代IC設計驗證的技術主流。這些可編輯元件可以被用來實現(xiàn)一些基本的邏輯門電路(比如AND、OR、XOR、NOT)或者更復雜一些的組合功能比如解碼器或數(shù)學方程式。在大多數(shù)的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(Flip-flop)或者其他更加完整的記憶塊。

系統(tǒng)設計師可以根據(jù)需要通過可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來,就好像一個電路試驗板被放在了一個芯片里。一個出廠后的成品FPGA的邏輯塊和連接可以按照設計者而改變,所以FPGA可以完成所需要的邏輯功能。

FPGA一般來說比ASIC(專用集成芯片)的速度要慢,無法完成復雜的設計,而且消耗更多的電能。但是他們也有很多的優(yōu)點比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的FPGA。因為這些芯片有比較差的可編輯能力,所以這些設計的開發(fā)是在普通的FPGA上完成的,然后將設計轉移到一個類似于ASIC的芯片上。另外一種方法是用CPLD(復雜可編程邏輯器件備)。

根據(jù)數(shù)字自適應波束形成的原理和數(shù)學模型,本文設計的基于FPGA數(shù)字波束形成系統(tǒng)結構如圖2所示。8路輸入信號x(n)經(jīng)過前端信號處理,A/D轉換后,在總控模塊的控制下進入輸入數(shù)據(jù)存儲模塊雙口RAM,自適應波束形成的具體實現(xiàn)步驟如下:

步:由式(1)得,實際輸入的x(n)和調(diào)整后的權值w(n)各分量相乘之后累加得到輸出y(n);

第二步:由式(2)得,實際輸出的y(n)與期望d(n)相減得到調(diào)整誤差e(n);

第三步:由式(3)得,延時后的調(diào)整誤差P(n)跟步長的2倍相乘,再和延時的輸入x(n-D)相乘得到的積與延時的權值相加,得到新的權值向量。

第四步:新的權值向量再與新的輸入向量循環(huán)進行到第三步實現(xiàn)自適應。

由此,我們可以將系統(tǒng)分為五大模塊:主控模塊:主要產(chǎn)生時鐘信號,給各模塊提供時序信號觸發(fā)各模塊的啟動和初始化;雙口存儲模塊(包括輸入數(shù)據(jù)存儲模塊、權值存儲模塊、誤差信號存儲模塊等):存儲各功能模塊所需的數(shù)據(jù)和參數(shù);自適應權值計算模塊,誤差計算模塊:這兩個模塊可以合在一起,用于系數(shù)更新的白適應算法;空間濾波器乘加模塊:完成濾波運算,得到輸出結果。

2.2.1控制模塊

輸入信號和權值是8位的復數(shù)數(shù)據(jù),通過控制模塊選擇乘法操作的操作數(shù),兩個復數(shù)信號相乘的4種組合00,11,01,10可以完成實部和虛部之間4個乘法運算,四種情況控制模塊輸出的控制信號分別為ST0,ST1,ST2,ST3。

其中,clk_regbt用來控制乘法器完成乘法,counterbt用來控制乘數(shù)的位選,clk_reg用來控制運算新數(shù)的進入、上次計算的完畢和結果的輸出。

2.2.2存儲模塊

一種存儲模塊,它包括:用于根據(jù)外部指令/地址信號來產(chǎn)生內(nèi)部信號的指令/地址寄存器,且所述的指令/地址寄存器件帶有一個輸出晶體管;被分成和第二兩組的多個存儲器件;用于連接所述的指令/地址寄存器件和所述的存儲器件的布線;和用于安裝所述的指令/地址寄存器件和所述的存儲器件的基板;所述的布線包括:從所述的指令/地址寄存器件延伸至個分支結點的段布線;從個分支結點延伸至第二個分支結點的第二段布線;從個分支結點延伸至第三個分支結點的第三段布線;從第二個分支結點分出延伸至所述的組存儲器件的第四段布線;和從第三個分支結點分出延伸至第二組存儲器件的第五段布線;和所述的指令/地址寄存器件包括:阻抗調(diào)節(jié)器,用于調(diào)節(jié)從所述的指令/地址寄存器件和段布線之間的連接點看去所述的指令/地址寄存器件的輸出阻抗,通過調(diào)節(jié)該阻抗調(diào)節(jié)器,可使所述的輸出阻抗在內(nèi)部信號的工作電壓范圍內(nèi)基本保持不變;和上升時間/下降時間調(diào)節(jié)器,用于將內(nèi)部信號的上升時間和下降時間調(diào)節(jié)至特定值。

存儲模塊采用8位和16位雙口RAM(如圖3所示)作為信號數(shù)據(jù)和權值數(shù)據(jù)的存入和讀取存儲器,分別用來存放輸入信號x、權值ω和誤差e,分別由控制信號clkregbt,clk_regw和clk_rege來控制信號的寫入和讀出。其中x_ram用來存放輸入信號;w_ram存放權值,其輸入為系數(shù)更新模塊的輸出,輸出為更新后的權值。

2.2.3自適應處理及復數(shù)乘加器模塊

數(shù)字波束形成器是通過加權因子對空間不同陣元接收信號的加權求和而成的。由于加權因子相當于濾波器系數(shù),而輸入的信號為空間位置不同的陣元的接收信號。所以可將數(shù)字波束形成器等同于一個空域濾波器來實現(xiàn)。

3系統(tǒng)仿真與驗證

本文設計部分是基于Stratix系列EPlS10芯片設計的分別對I/Q兩路原始數(shù)據(jù)進行DLMS自適應算法和復數(shù)乘加運算,在QuartusⅡ環(huán)境下用VHDL語言編寫了各功能模塊,并進行了仿真,共占用了2703個邏輯單元,同時應用Matlab對數(shù)字結果進行波形仿真,以下為仿真驗證的結果。

圖5為主控模塊的仿真波形,其中ST0,ST1,ST2,ST3為復數(shù)乘法的4種組合,clk_regbt用來控制乘法器完成乘法,counter_bt用來控制乘數(shù)的位選,clk_reg用來控制運算新數(shù)的進入、上次計算的完畢和結果的輸出。

圖6為復數(shù)乘加模塊功能仿真結果,dc_out,ds_out,xc_out,xs_out分別是輸入信號和期望信號的實部和虛部,ec_out,es_out,yc_out,ys_out分別為誤差和濾波輸出的實部和虛部。

圖7為系統(tǒng)仿真測試結果:系統(tǒng)預形成波束方向為0°方向,干擾從45°傳來,通過仿真結果可以看出,主波束在0°方向形成,和預形成主波束吻合,在45°干擾方向形成零陷,并且提高了主波束的增益,滿足系統(tǒng)的設計要求。

4結語

自適應DBF是現(xiàn)代聲納陣列信號處理的關鍵技術之一,本文介紹了利

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論