基于FPGA的雷達數(shù)字脈沖壓縮技術(shù)
脈沖壓縮技術(shù)是指對雷達發(fā)射的寬脈沖信號進行調(diào)制(如線性調(diào)頻、非線性調(diào)頻、相位編碼),并在接收端對回波寬脈沖信號進行脈沖壓縮處理后得到窄脈沖的實現(xiàn)過程。脈沖壓縮有效地解決了雷達作用距離與距離分辨率之間的矛盾,可以在保證雷達在一定作用距離下提高距離分辨率。
線性調(diào)頻信號的脈沖壓縮
脈沖壓縮的過程是通過對接收信號s(t)與匹配濾波器的脈沖響應(yīng)h(t)求卷積的方法實現(xiàn)的。而處理數(shù)字信號時,脈壓過程是通過對回波序列s(n)與匹配濾波器的脈沖響應(yīng)序列h(n)求卷積來實現(xiàn)的。匹配濾波器的輸出為:
?。?)
依據(jù)式(1)的實現(xiàn)方法叫做時域相關(guān)法。根據(jù)傅里葉變換理論,時域卷積等效于頻域相乘,因此,式(1)可以采用快速傅里葉變換(FFT)及反變換(IFFT)在頻域內(nèi)實現(xiàn),稱為頻域快速卷積法。
用頻域方法實現(xiàn)數(shù)字脈壓,其基本原理是先對外部采樣信號進行快速傅里葉變換(FFT)以求得回波信號頻譜S(w),再將S(w)與匹配濾波器頻譜H(w)進行乘積運算,最后對乘積結(jié)果進行快速傅里葉逆變換(IFFT)得到脈壓結(jié)果Y(n),用公式表示為
?。?)
頻域快速卷積法的原理如圖1所示,存儲器中存儲的是匹配濾波器傳遞函數(shù)H(k)。
圖1 頻域脈沖壓縮原理框圖
依據(jù)匹配濾波理論,數(shù)字匹配濾波器的脈沖響應(yīng)h(n)及傳遞函數(shù)H(k)為
h(n)=s1(-n),H(k)=s1(k) (3)
其中, s(n)為雷達發(fā)射信號序列;S(k)為信號序列頻譜。
數(shù)字脈沖壓縮系統(tǒng)
1 系統(tǒng)構(gòu)成和硬件設(shè)計
本系統(tǒng)是單脈沖雷達信號處理機的一部分,由于單脈沖雷達所需要處理的距離、方位/俯仰兩路信號來自同一發(fā)射信號源的目標反射回波,要求對兩路信號進行同時、同頻ADC采樣和完全相同算法的脈沖壓縮處理。針對這一特點,雷達數(shù)字脈沖壓縮系統(tǒng)將相同的脈沖壓縮處理功能移至兩片FPGA芯片內(nèi)。由于對雷達體積、重量、功耗等指標有特殊要求,本系統(tǒng)采用二個通道的脈沖壓縮處理硬件結(jié)構(gòu),即方位和俯仰兩路信號分時共用一個脈沖壓縮通道。雷達信號處理分系統(tǒng)硬件結(jié)構(gòu)如圖2所示。
圖2 雷達信號處理分機硬件結(jié)構(gòu)圖
系統(tǒng)中,數(shù)據(jù)采樣后分為和路和差路(包括航向差和俯仰差)兩組數(shù)據(jù),分別輸入兩片F(xiàn)PGA單獨進行脈沖壓縮計算,脈沖壓縮后再送入后端的DSP做譜分析,以確定目標的距離、速度、方位等情況。由框圖中我們看到,F(xiàn)PGA不僅要對數(shù)據(jù)做脈沖壓縮計算,還承擔(dān)了對輸入數(shù)據(jù)處理和讀寫狀態(tài)寄存器的任務(wù)。狀態(tài)寄存器存儲了脈沖壓縮計算的控制參數(shù),由后端的DSP根據(jù)分析的結(jié)果對其做相應(yīng)的控制。
2 軟件設(shè)計
根據(jù)位內(nèi)運算結(jié)構(gòu)的特點,針對芯片內(nèi)嵌的塊RAM資源豐富的優(yōu)勢,脈沖壓縮系統(tǒng)采用兩片存儲器的乒乓操作,在FFT的每一級運算中使一片雙口RAM的兩個端口同時處于讀或?qū)憼顟B(tài),達到每個時鐘周期輸出兩個操作數(shù)的需要。而且,數(shù)據(jù)經(jīng)蝶算單元運算結(jié)束后以相同的地址寫入另一片雙口RAM,節(jié)省了寫地址生成的時間,為設(shè)計高速的FFT系統(tǒng)提供了可能。
如圖3所示,采用兩片中間級RAM:RAMA和RAMB,用它們來完成乒乓操作。地址產(chǎn)生模塊生成的讀地址同時與中間級的兩片RAM相連,控制相應(yīng)的RAM讀取所需的操作數(shù),操作數(shù)經(jīng)蝶算模塊運算后以同址方式寫入到另一片RAM的兩個端口。RAM的讀寫由地址產(chǎn)生模塊生成的寫使能信號控制,處于讀狀態(tài)的RAM寫使能置零,而另一片的寫使能端置高,處于寫狀態(tài)。而且,RAM被設(shè)置為寫狀態(tài)時輸出端口不輸出,以減少RAM的讀取次數(shù)。這樣,輸入RAM變?yōu)檩敵鯮AM,輸出RAM變?yōu)檩斎隦AM,如此反復(fù),直到FFT最后一級。
圖3 脈沖壓縮系統(tǒng)的結(jié)構(gòu)框圖
[!--empirenews.page--]
FFT的每一級運算結(jié)束后,兩塊RAM功能互換,寫使能變反,運算結(jié)束。RAM的每次輸出數(shù)據(jù)需經(jīng)過數(shù)據(jù)選擇模塊(datamux),該模塊由地址產(chǎn)生模塊輸出的當前級數(shù)信號Stage控制。本系統(tǒng)采用三種FFT模式:1024點、512點和256點,均采用同一旋轉(zhuǎn)因子ROM。根據(jù)FFT點數(shù)的不同,ROM的讀地址expaddr做相應(yīng)的調(diào)整,這樣的設(shè)計也在很大程度上節(jié)省了芯片內(nèi)的塊RAM資源。
3 系統(tǒng)性能
針對本雷達信號處理機對實時性和高精度的要求,我們設(shè)計研制出具有自主知識產(chǎn)權(quán)的高性能脈沖壓縮處理系統(tǒng),該處理系統(tǒng)具有以下特點:
A 處理系統(tǒng)內(nèi)部采用24位自定制浮點數(shù)據(jù)格式,能夠兼顧處理系統(tǒng)的資源占用和處理精度。數(shù)據(jù)輸入為定點數(shù)據(jù)格式,輸出為標準32位浮點數(shù)據(jù)格式。
B 處理系統(tǒng)工作時,需要依次完成FFT運算、復(fù)數(shù)乘法運算和IFFT運算。在進行FFT和IFFT運算時,蝶形運算/乘法運算單元完成蝶形運算操作;在進行復(fù)數(shù)乘法運算時,該單元完成乘法操作。這兩種操作在實際工程中分時實現(xiàn),并且共享浮點數(shù)規(guī)格化處理硬件電路。
C 處理系統(tǒng)中進行FFT/IFFT運算的長度N(N=2048、1024或512)由雷達信號處理機的控制信號決定。
D 內(nèi)置三組數(shù)據(jù)存儲器(輸入數(shù)據(jù)RAM、同址運算RAM、輸出數(shù)據(jù)RAM),保證處理系統(tǒng)能全速運行,提高該處理系統(tǒng)的處理能力。
E 旋轉(zhuǎn)因子(N=1024時的FFT運算旋轉(zhuǎn)因子)以上電初值的形式存儲在FPGA片內(nèi)存儲器中。當N=512、256時,其旋轉(zhuǎn)因子從N=1024的旋轉(zhuǎn)因子中抽取得到。N點IFFT的旋轉(zhuǎn)因子由N點FFT的旋轉(zhuǎn)因子取共扼得到。實驗結(jié)果
本雷達信號處理機存在三組時間—帶寬指標,分別對其進行理論仿真和實際輸出結(jié)果對照,其結(jié)果如圖4、圖5和圖6所示。
圖4 1024點脈沖壓縮狀態(tài)FPGA計算結(jié)果與MATLAB計算結(jié)果對比圖
圖5 512點脈沖壓縮狀態(tài)FPGA計算結(jié)果與MATLAB計算結(jié)果對比圖
圖6 256點脈沖壓縮狀態(tài)FPGA計算結(jié)果與MATLAB計算結(jié)果對比圖
圖4至圖6分別對應(yīng)時寬為60μs、20μs、6μs,帶寬均為5M的線性調(diào)頻信號。其中,左圖對應(yīng)MATLAB的計算結(jié)果,右圖為FPGA芯片的輸出結(jié)果??梢钥吹?,FPGA芯片的輸出結(jié)果和MATLAB仿真結(jié)果吻合。經(jīng)測試驗證結(jié)果良好,最大誤差不超過-76db,在內(nèi)部時鐘頻率80MHz條件下,完成1024點FFT 運行時間為146μs ,滿足了雷達系統(tǒng)實時處理要求,達到了滿意的效果。