邢冠培,孟凡利
(上海航天電子技術研究所,上海,201109)
基于Xilinx FPGA lP核的浮點頻域脈沖壓縮算法的設計與實現
邢冠培,孟凡利
(上海航天電子技術研究所,上海,201109)
脈沖壓縮體制雷達的發射信號通常包括多種線性調頻信號,這就要求對回波信號的脈沖壓縮處理適應性要強,如果采用定點脈壓,不同信噪比的回波信號脈沖壓縮結果的截位各不相同,需要分別進行仿真測試,以確定截位的位置,而本文提出一種浮點頻域脈壓的算法及實現,基于Xilinx FPGA IP核,無需考慮截位,對各種信號適應性強,方便易用。
IP核;脈沖壓縮;浮點;頻域
隨著應對各種飛行器的性能提高,雷達也要求作用距離、分辨精度等指標得到相應的提高。雷達的作用距離取決于信號的時寬,即要求信號要有大的時寬,而雷達的分辨精度取決于信號的帶寬,即要求信號要有大的帶寬。但是對于單載頻脈沖信號,時寬和帶寬的乘積近似等于1,所以同時得到大時寬和大帶寬是矛盾的。為了解決這一矛盾,必須采取同時具有大時寬和大帶寬的復雜信號形式,最常用的就是線性調頻信號(LFM),這種信號是在寬脈沖內附加載波線性調頻,從而在大時寬的條件下擴展了帶寬,通過脈沖壓縮技術使寬脈沖變成窄脈沖,以獲得高的距離分辨能力。
FPGA脈沖壓縮處理可采用定點和浮點兩種數據格式。采用定點數據格式,輸入的動態范圍較小,脈壓結果精度不高,不能滿足某些高性能雷達系統的需要。脈沖壓縮包括時域脈壓和頻域脈壓。頻域脈壓處理系統基于高效快速傅立葉變換,在處理大時寬信號時其設備量增加不大,對于帶寬比較大的信號具有明顯的優勢。本文基于Xilinx FPGA IP核,實現了在頻域內的浮點脈沖壓縮的算法處理。
脈沖壓縮實際上就是對接收信號進行匹配濾波處理。由于有多種發射脈沖形式,根據發射波形的不同,脈沖壓縮時選擇不同的匹配濾波器系數。數字脈壓可用時域匹配濾波法或頻域相關法實現。
時域數字脈壓處理系統采用FIR濾波,通過對兩個有限長度序列進行線性卷積而實現脈壓處理,即將回波數據與匹配濾波器進行復卷積。濾波器復相關運算量隨著信號時寬的增加而顯著增加,完成運算所需的芯片量級也隨之增加,因此,時域脈沖壓縮處理較短時寬信號時在實現性及設備量上都具有良好的特點,但隨著信號時寬增加,其設備量將增加。
頻域脈壓處理是基于高效快速傅立葉變換,通過H(f)與線性卷積有限長度序列的FFT相乘,并將其乘積反變換至時域而獲得脈壓輸出,即對回波數據進行FFT后,與匹配濾波器的系數進行復數乘法運算,然后再經過IFFT得到脈壓輸出后的數據。
本文脈沖壓縮采用頻域脈壓方式,為抑制距離旁瓣,采用加窗的方式。假設輸入信號為,則輸出信號為


圖1 頻域脈壓原理框圖

圖2 Floating-point IP核配置圖
通過上述分析,頻域脈沖壓縮具體的工程實現大體分三個步驟:第一步是對輸入脈沖信號進行傅里葉變換得到輸入信號的頻域信號;第二步是輸入信號的頻域值與預先存儲的權系數進行復數相乘;第三步是將復數乘積做傅里葉逆變換得到時域上的輸出信號。
通常脈沖壓縮前的輸入信號多為AD采樣后經過數字下變頻的定點值,如果以定點值經過上述步驟處理會帶來一個問題,定點的位數會不斷增加,以10位定點值,單個脈沖為1024點的輸入信號為例,經過第一級FFT的輸出值為21位,假設權系數為10位定點值,則經過第二級復數相乘的輸出值為32位,再經過第三級FFT逆變換,最終輸出值將達到43位。這樣處理一方面消耗很多硬件資源,另一方面傳輸的帶寬也可能不滿足要求。因此,作定點脈壓必須在每一級處理后進行截位處理,但是截位有可能會造成信號的損失,而且不同的信號可能截取得位置不同,這需要對具體的信號進行仿真驗證,適應性比較差。而采用浮點脈沖壓縮就不存在這個問題,所有的值都是32位,無論怎樣處理都不會增加位數,也無需考慮是何種信號。
采用浮點脈沖壓縮則需先將定點值轉換為浮點值,再進行傅里葉變換和復數相乘等處理。因此,在FPGA實現中主要用到兩個IP核:Floating-point IP核和FFT IP核。
Floating-point IP核可以實現定點轉浮點,浮點運算等多種功能,如圖2
通過選擇“Fixed-to-float”可以實現定點轉浮點的功能。通過選擇“Add/Subtract”以及“Multiply”可以實現浮點數的加減法和與乘法,這個功能在第二級復數相乘中需要用到。
Floating-point IP核主要用到兩個控制信號OPERATION_ND和 OPERATION_RFD,其中輸入控制信號 OPERATION_ND置高表示當前輸入數據有效。輸出控制信號OPERATION_RFD置高表示當前輸出數據有效。
FFT IP核主要實現傅里葉變換和傅里葉逆變換的功能。如圖3
FFT IP核提供了四種不同的數據處理方式:(1)流(Streaming);(2)可變流(Variable Streaming);(3)緩沖突發(Buffered Burst);(4)突發(Burst);可采用基 4 算法或者基2 或者混合基算法;數據包括定點、塊浮點和浮點等表示方法。
頻域脈壓選擇“Pipelined, Streaming I/O”,即流模式,允許持續的數據進行流水處理。選擇“Run Time Configurable Transform length”可是實現變長度脈沖壓縮的功能。該IP 核主要用到的控制信號有如下幾個

表 1 FFT IP核主要控制信號及功能描述
通過Floating-point IP核和FFT IP核,配合FIFO和 ROM,可以完全實現浮點頻域脈壓的處理,具體過程如下圖

圖3 FFT IP核配置圖

圖4 浮點頻域脈壓的處理流程
首先,AD采樣后數字下變頻得到的輸入信號I、Q兩路輸入到定點轉浮點的模塊,通過“OPERATION_RFD”信號控制FFT模塊的“START”信號啟動傅里葉變換,當FFT模塊的“EDONE”信號置高時表明下一個周期將輸出FFT的有效值,這時應將權值的ROM地址置0,則在下一個周期第一個有效數據讀出,第一個權值同時讀出,兩者相乘,并且在“EDONE”為低時,ROM地址是循環加1的,這樣復數相乘就實現了流水運算。同樣通過復數相乘模塊的“OPERATION_RFD”信號控制IFFT模塊的“START”信號啟動傅里葉逆變換,當“DV”置高時表示,脈沖壓縮的有效數據輸出,該數據可以送到MTI、MTD、恒虛警或者成像等后續模塊中繼續處理了。
脈沖壓縮模塊采用Xilinx V5系列 FPGA芯片,將帶寬為5M,時寬為133us的線性調頻信號輸入到系統中,通過Chipscope采集脈壓后的數據并導入到Matlab進行分析,所得結果如圖5所示。
Design and implementation of a floating-point frequency domain pulse compression algorithm based on FPGA IP Xilinx kernel
Xing Guanpei,Meng Fanli
(Shanghai Institute of aerospace electronics technology,Shanghai,201109)
Pulse compression radar transmitting signal usually includes a variety of linear FM signal, which requires the echo pulse compression processing adaptability stronger,if the point pulse pressure and different signal to noise ratio of the echo signal pulse compression results truncate each are not identical,necessary to simulation test,to determine the truncation of the position,and in this paper,a floating-point pulse compression in frequency domain algorithm and implementation, based on Xilinx FPGA IP core,without considering the truncation and adaptability to various signal is strong,easy to use.
IP kernel;pulse compression;floating point;frequency domain