脈沖壓縮原理及FPGA實現(xiàn)
摘要:為解決雷達作用距離和距離分辨力的問題,分析了線性調(diào)頻脈沖壓縮的原理及工程實現(xiàn)方法,并利用Matlab軟件對加權前后的線性調(diào)頻信號脈沖壓縮波形進行對比。簡述了分布式(DA)算法的基本原理,給出一種基于FPGA分布式算法的時域脈沖壓縮實現(xiàn)結構,利用QuartusⅡ軟件完成脈沖壓縮處理模塊設計以及波形仿真。通過分析可以得出基于分布式算法實現(xiàn)的脈沖壓縮可以減少資源利用率,大大節(jié)省硬件資源。
關鍵詞:脈沖壓縮;匹配濾波器;分布式算法;FPGA
0 引言
隨著現(xiàn)代科技的發(fā)展,對雷達的作用距離、距離分辨力等性能提出了越來越高的要求。根據(jù)雷達理論,距離分辨力取決于信號的帶寬,探測距離取決于信號的時寬,所以理想的雷達信號應具有大時寬帶寬積。單載頻脈沖信號的時寬帶寬積近似為1 ,因此作用距離與距離分辨力存在矛盾。采用脈沖壓縮可以有效解決上述矛盾,這樣既提高了雷達的作用距離,又保證了較高的距離分辨力。用數(shù)字方式實現(xiàn)的脈沖壓縮具有可靠性高,靈活性好,可編程、便于應用。因此,這里介紹一種在FPGA上用分布式算法實現(xiàn)時域脈沖的壓縮,它是一種基于查找表的計算方法,與傳統(tǒng)算法(乘累加)相比,分布式算法可以極大地減少硬件電路地規(guī)模,易于實現(xiàn)流水線處理,從而提高電路的執(zhí)行速度。
1 脈沖壓縮原理及Matlab仿真
1.1 線性調(diào)頻信號脈沖壓縮原理
大時寬帶寬信號的實現(xiàn)是通過脈沖壓縮濾波器實現(xiàn)的。這時雷達發(fā)射信號是載頻按一定規(guī)律變化的寬脈沖,即具有非線性相位譜的寬脈沖。然而,脈沖壓縮濾波器具有與發(fā)射信號變化規(guī)律相反的延遲頻率特性,即脈沖壓縮器的相頻特性應該與發(fā)射信號實現(xiàn)相位共軛匹配。所以,理想脈沖壓縮濾波器就是匹配濾波器。匹配濾波器的實現(xiàn)是通過對接收信號si(t)與匹配濾波響應h(t)求卷積得到的,即:
數(shù)字脈沖壓縮的實現(xiàn)方式有兩種。一是時域卷積法;二是頻域FFT法。時域處理方法比較直觀、簡單,運算量相對較少。另外,由于FPGA等器件的迅速發(fā)展,時域卷積法得到了更大程度的應用。頻域FFT法是先經(jīng)過FFT的運算,再進行IFFT運算,然后得到脈壓結果,其處理在本質(zhì)上是與時域卷積法一樣的。通常脈沖壓縮用數(shù)字濾波器來實現(xiàn),這時輸入信號si(t)需要通過A/D轉換器將其轉換為數(shù)字信號si(n)。此時,脈沖壓縮匹配濾波器的輸出為:
其實現(xiàn)框圖如圖1所示。本文的設計就是按圖1的原理而實現(xiàn)的。
1.2 線性調(diào)頻脈沖壓縮的Matlab仿真
線性調(diào)頻信號經(jīng)過匹配濾波器直接得到的脈沖壓縮輸出信號并不理想,主副瓣比只有13.2 dB,這在多數(shù)情況下是不能滿足要求的。因為大的副瓣會在主瓣周圍形成虛假目標,而且大目標的副瓣也會掩蓋其鄰近距離上的小目標,造成小目標丟失,所以必須降低輸出信號的副瓣。常用的方法就是加權方法。如何選擇加權函數(shù),應根據(jù)應用場合的需要,依據(jù)最佳準則在副瓣抑制、主瓣展寬、信噪比損失、副瓣衰減速度以及技術實現(xiàn)的難易等幾個方面考慮。
下面,給出仿真信號模型,并在Matlab下進行仿真,以分析加權前后的影響。仿真模型:脈沖寬度為150μs,調(diào)頻帶寬為2 MHz,采樣周期為0.1μs,加權方式為海明加權。圖2給出了采用加權函數(shù)前和采用海明加權函數(shù)后的脈沖壓縮波形圖。
通過海明加權,主副瓣比大大改善,即副瓣得到了顯著的抑制。雖然海明加權后帶來了一定的信噪比損失,但匹配濾波器的性能得到了大大的提高。
2 分布式算法原理及4階FIR濾波器的設計
2.1 分布式算法原理
分布式算法(DA)是一種以實現(xiàn)乘累加運算為目的的運算方法,它與傳統(tǒng)乘加運算的不同在于執(zhí)行部分積運算的先后順序不同。傳統(tǒng)算法是在完成乘加功能時,等到所有乘積產(chǎn)生之后,再進行相加來完成乘加運算的。而分布式算法則是通過將各輸入數(shù)據(jù)的每一對應位產(chǎn)生的部分積預先進行相加,形成相應部分積,然后對各部分積進行累加,形成最終結果的。與乘累加算法相比,分布式算法可極大地減少硬件電路規(guī)模,降低設計的復雜度,極大地提高可靠性和可操作性。分布式算法由串行、并行和串并結合而構成的分布式算法。串行分布式算法是逐位的執(zhí)行,每個時鐘周期只能執(zhí)行1位,速度比較慢;并行分布式算法是1個時鐘周期完成1個字的運算,速度比較快;串并結合的分布式算法
1次可以執(zhí)行多位,但是需要多個時鐘周期才能完成1個字的運算,控制起來比較復雜。
根據(jù)分布式算法的原理得出采用FPGA實現(xiàn)分布式算法的硬件結構,如圖3所示。
圖3中寄存器完成數(shù)據(jù)寄存,查找表完成數(shù)據(jù)查找運算,加權累加器完成查表之后的加法。為了保證信號的完整性,即減少輸出毛刺,在數(shù)據(jù)輸出前用寄存器寄存一個時鐘周期然后輸出。
2.2 4階FIR濾波器的設計
本文的脈沖壓縮是通過并行分布式算法來實現(xiàn)的。從圖3可以得出,4階的FIR濾波器主要由移位寄存器、查找表和累加器組成。4為模塊的濾波器階數(shù),那么查找表中應有24個存儲單元,如果濾波器階數(shù)過多,查找表規(guī)模隨階數(shù)的增加成指數(shù)遞增,因此階數(shù)較大時要分割查找表,分割查找表可以節(jié)省存儲資源,有利于成本和資源的節(jié)約。
要使4階FIR濾波器完成數(shù)據(jù)的輸入、串/并轉換、查表和加權累加,因為是有符號數(shù)的運算,所以要考慮累加最高位運算符號。FIR濾波器是線性濾波器,低階濾波器的輸出集合相加,形成一個高階FIR濾波器的輸出。因此,在設計低階FIR時,必須有2個輸出,一個用于FIR運算的輸出,另一個輸出數(shù)據(jù)用于下一個FIR濾波器的運算。為了保證信號的完整性,在程序設計時,對輸入/輸出數(shù)據(jù)進行了寄存處理。
下面給出一個4階的FIR濾波器設計實例。輸入數(shù)據(jù)為12位有符號數(shù),匹配濾波系數(shù)為12位有符號數(shù),4階FIR的仿真波形如圖4所示。仿真結果與Matlab仿真結果完全一致,說明設計是完全正確的。
3 64階匹配濾波器設計及仿真
由于匹配濾波器就是有限脈沖響應濾波器,具有線性特性,所以通過低階濾波器的直接級聯(lián)相加就可以實現(xiàn)高階濾波器,前一個濾波器的移位數(shù)據(jù)y_out作為下一個濾波器模塊信號的輸入,每個濾波器模塊都與4階FIR設計相同,只需根據(jù)不同系數(shù)更改查找表中的數(shù)據(jù)。
在64階匹配濾波器設計中,先用16個4階的FIR濾波器級聯(lián)成一個64階的FIR濾波器,然后再用4個64階的FIR濾波器組成一個64階的匹配濾波器,即64階的脈沖壓縮濾波器。64階脈沖壓縮濾波器的邏輯設計如圖5所示。
邏輯設計是以Altera公司的cycloneⅡ系列EP2C70為平臺,在QuartusⅡ軟件中利用VHDL語言和原理圖進行邏輯設計,頂層為原理圖,底層為VHDL文件。圖5中,fir64模塊為匹配濾波器實部對應的64階濾波器,fir64I模塊為匹配濾波器虛部對應的64階濾波器,輸出為16 位的I、Q兩路信號。由Matlab軟件仿真出來的匹配濾波器的系數(shù)全部是小數(shù),然后進行歸一化處理后得到匹配濾波系數(shù)。脈沖壓縮加權不涉及硬件規(guī)模的增加,只是對其系數(shù)乘以一個適當?shù)募訖嗪瘮?shù),在實際的編程實現(xiàn)過程中與不加權的處理方法是完全一致的。
對該匹配濾波器進行波形仿真,輸入為12位的有符號數(shù)據(jù),系數(shù)為12位有符號數(shù)據(jù),輸出為16位有符號數(shù)據(jù)。由于匹配濾波器做的是64×64點的卷積,所以輸出數(shù)據(jù)為64+64-1=127個。由于仿真數(shù)據(jù)較多,只給出了部分仿真結果,如圖6所示。
4 結語
仿真分析表明,脈壓輸出的實際值與Matlab仿真值十分接近,其誤差是由量化所產(chǎn)生的,系統(tǒng)具有很高的精度。通過仿真分析整個設計,可得出利用基于分布式算法能夠大大減少數(shù)字脈沖壓縮的運算量,減少FPGA的資源消耗。另外還可以根據(jù)不同的需求,增加脈沖壓縮階數(shù),更高階數(shù)的脈沖壓縮實現(xiàn)方法與64階的完全一致。由于匹配濾波器的系數(shù)對稱,所以可采用線性相位FIR濾波器在FPGA中的實現(xiàn)算法,這樣同等性能的濾波器設計可減小一半的硬件規(guī)模,這樣就會節(jié)省更多的邏輯單元,實現(xiàn)更多的功能。