蒲鶴升,譚澤富,譚璦軍,燕曼君
(重慶三峽學院, 重慶 404000)
本文所采用的邊坡監(jiān)測雷達是一種以FMCW信號為發(fā)射波形的地基SAR系統(tǒng),其核心控制和數字信號處理模塊架構為DSP+FPGA的異構模式。因DSP的浮點計算能力和大量函數庫等優(yōu)勢,所以傳統(tǒng)的雷達信號處理是在DSP中進行,但這就造成大量未經處理的回波數據在FPGA和DSP之間流動,導致二者之間的數據傳輸壓力巨大;而FPGA除了采集和控制之外,其大部分資源處于閑置狀態(tài)。若FPGA能同時承擔部分信號處理任務,便可均衡下位機之間的工作量,從而提高整體的運算速度。
針對該問題,本文借助Xilinx ISE14.7開發(fā)平臺所帶有的RAM/ROM、Divider、FFT IP核[1],對FPGA內剩余的硬件資源進行有效利用,完成回波數據的任意數量PRT數據相干積累、漢寧加窗濾波、距離向壓縮三項實時預處理功能,從硬件的角度減小了數據傳輸壓力并完成了距離向高分辨處理。
邊坡監(jiān)測雷達系統(tǒng)主要有雷達系統(tǒng)、位移臺伺服系統(tǒng)、穩(wěn)壓電源系統(tǒng)三大部分組成。當邊坡監(jiān)測雷達開始運行之前,首先由上位機配置數字處理系統(tǒng)參數并通過以太網網口將參數包傳送至下位機中,其數字系統(tǒng)參數如表1所示。在FPGA和DSP成功接收各自所需的采樣、成像等參數,并反饋給上位機后,邊坡監(jiān)測雷達系統(tǒng)開始正常運行。
在雷達工作過程中,位移臺伺服系統(tǒng)驅動雷達在位移臺上作重軌勻速直線運動以實現合成孔徑的效果[2]。FMCW雷達發(fā)射波形由雷達發(fā)射機產生,經接收天線接收原始雷達回波,并在雷達接收機中完成差拍處理、信號放大濾波等操作,將回波信號降低至穩(wěn)定可被數字處理的中頻信號。此后,數字板的FPGA負責整個系統(tǒng)的初始化、FMCW產生、AD采樣、距離向降采樣、數據打包以及高速傳輸等控制任務,而DSP執(zhí)行數據存儲傳遞以及方位向成像算法。
對于FPGA部分,根據系統(tǒng)參數配置,在100 MHz采樣率、0.5 ms脈寬、距離向分辨率以及截取位置的限定下,AD采樣經動態(tài)調相后將在一個慢時間內采集48 000點16 bit實時數據,同時由2 m合成孔徑和軌道移動速度決定了方位向將會采集128 000個PRT回波,AD采樣之后,數據會以差分方式傳送至FPGA內部。
表1 數字系統(tǒng)參數
由邊坡雷達系統(tǒng)的工作原理和表1所示的數字系統(tǒng)參數可知,FPGA和DSP所組成的下位機之間將會產生巨大的數據傳輸壓力,即存在128 000×48 000×16 bit的數據量,FPGA除了采集和控制之外并沒有進行任何有效的數據處理,而是直接將原始回波數據傳給DSP。面對如此龐大的數據量,DSP不僅不能減少計算量,而且還會因為后續(xù)的成像算法擴大計算量,這又加大下位機的數據運算壓力。再加上此時的FPGA還存有一定未被利用的內部硬件資源,所以在硬件上就有了實現數據實時預處理的可能性。
綜上,若充分利用FPGA剩余的硬件資源來進行數據預處理,實現雷達信號處理中的任意倍數相干積累、漢寧加窗濾波以及距離向壓縮三項功能,那么經過數據預處理后,系統(tǒng)的數據運算和傳輸壓力不僅會大大降低,而且均衡了下位機之間的任務量,由此可顯著提高系統(tǒng)的運算速度。此外,也實現了回波信號的實時數字處理,在傳入至DSP之前就可得到高信噪比、低旁瓣、距離向高分辨的新回波信號。
在精確測量雷達領域內,為滿足距離向高分辨需求,雷達發(fā)射信號通常采用FMCW體制。因FMCW是一種常用的寬帶信號,該信號的大帶寬特性決定了其具有較高的距離向分辨率,同時由于雷達發(fā)射機的峰值功率限制,該信號往往采用大時寬設計[3]。
因此對于邊坡雷達系統(tǒng)這類發(fā)射功率有限且又需精確測量的SAR來說,FMCW的大時寬帶寬特性尤其適用,這不僅降低發(fā)射機功耗,同時也滿足距離向高分辨需求;另一方面,由于FMCW系統(tǒng)不存在距離盲區(qū),更適用于遠近場兼顧的地基SAR系統(tǒng)。
(1)
(2)
在邊坡雷達系統(tǒng)中,通常采用針對FMCW而提出的解線調頻技術即去斜處理來獲得距離向高分辨,這也是本系統(tǒng)需要實現的關鍵功能[4]。
圖1 去斜處理框圖
對于本系統(tǒng)而言,由于中頻信號的頻率遠遠超出FPGA 的處理能力,所以將差拍處理放置在雷達接收機中進行,因此去斜處理在FPGA中只需進行FFT即可。
本系統(tǒng)采用了FPGA與DSP相結合的異構處理平臺[6],其整體架構如圖2所示。
系統(tǒng)上電后,回波信號先經雷達接收機完成射頻信號的差拍處理,并以IQ兩路信號方式輸出至AD,經FPGA的EDK軟核配置與AD采樣將IQ模擬信號轉化為-I,+I,-Q,+Q兩對差分數字信號,之后將兩對數據接入至FPGA中進行合成,生成虛實兩路數字信號。接著分虛實兩路同時進行實時預處理操作,最后將處理之后的數據通過SRIO(Serial Rapid I/O)輸出至DSP進行目標反投,其中的GPIO(General Purpose I/O)與EMIF(External Memory Interface)協(xié)議實現DSP與FPGA的控制與反饋,使下位機之間產生交互作用,以達到可靠傳輸的要求。
圖2 系統(tǒng)結構框圖
FPGA作實時處理主要依靠其硬件的可重構性、并行性與高速性,以及內部查找表(LUT)的高效性,但要保證本系統(tǒng)實時處理的優(yōu)良效果,其關鍵在于保證高相干性采樣、最小截斷效應影響以及大點數FFT精度。根據預處理流程將FPGA除頂層外分為相干積累、加窗濾波和去斜FFT三個子模塊[7]。
3.2.1 實時預處理頂層模塊
實時預處理模塊是以總分結構為基礎,通過頂層來實例化調用各功能模塊,實現各子模塊之間的物理連接和數據傳遞。各模塊均在100 MHz的同步時鐘控制下運行,保持嚴格的同步性,同時頂層還包括將AD采樣之后的數據差分接入FPGA和處理完成之后的數據輸出至DSP,其頂層結構圖如圖3所示。
圖3 頂層結構圖
為了保持數據在各模塊之間的連續(xù)流入狀態(tài),所以當積累的最后一次開始時,逐點完成數據的相干積累、加窗和向FFT傳輸數據,又FFT采用的是流水線結構,所以每幀輸出結果互不影響。于是對于整個處理過程而言,數據就能自然流入流出各模塊,即實現模塊間流水狀態(tài)。
3.2.2 相干積累模塊
相干積累就是將一定數量的存在確定相位關系的回波信號求和并平均,其信噪比就會提高積累個數倍。但信噪比提高的根本原因是,存在于雷達系統(tǒng)中的噪聲大都服從高斯分布,所以在積累求平均后噪聲信號的能量相對之前就降低了積累個數倍,相對于信號能量而言信噪比就提高了積累個數倍。本文為了得到較高信噪比與較大數據壓縮比,因此以128個PRT為積累倍數。
由于數據是自然流入,要想實現積累的功能,就必須有能夠緩存一個PRT回波數據的空間,同時為了抑制定點除法的量化效應,就采用先積累再求平均的方法,所以相干積累模塊是利用到ISE開發(fā)平臺的雙口RAM IP核,開辟出能夠緩存128個48 000點16 bit數據累加后的內存空間。在該模塊中,需要利用雙口RAM和Divider IP核來實現數據緩存和累加求平均功能,其中數據緩存就是能夠緩存一個PRT的回波數據,而循環(huán)累加就是將下一個PRT與緩存PRT相同距離門的點相加,并將結果又存在緩存的原RAM地址處。在累加完成后,通過除法器讓原始回波數據縮小了128倍,這樣就使累加后的數據與原始回波在一個數量級,同時也減小了后續(xù)實時處理數據溢出的風險,其FPGA內部結構圖如圖4所示。
圖4 FPGA內部結構圖
值得注意的是,雙口RAM其數據寫入時序特點是在時鐘上升沿觸發(fā)寫操作時,寫入的數據和寫入地址要在當前時刻的前一個時鐘保持穩(wěn)定即數據和地址數值確定,而數據讀出時序特點是在時鐘上升沿觸發(fā)讀操作時,所需要讀出地址上的數據必須在當前時刻的前一個時鐘已經存入該地址即讀出數據穩(wěn)定。只有滿足上述兩個時序特點才能確保輸出正確波形,而對于Divider來說,本文選擇的是24 bit被除數和16 bit除數,所以在片選CE信號有效26個時鐘周期后才會開始連續(xù)輸出正確數據。
在累積過程中,存在對RAM相同存儲位置的讀寫操作,若寫入讀出的數據不是積累所需,則會嚴重降低相鄰PRT之間相干性甚至積累錯誤,所以參與積累的PRT起始位置一定要對齊。在積累之前,利用混合時鐘管理模塊 (MMCM)的動態(tài)調相能力來相參觸發(fā)AD采樣使能信號,從而嚴格控制采樣起始點,以同樣的初始相位來保證積累前每個PRT數據都是相干的;而積累時相干則通過同步有限狀態(tài)機(FSM)來精確控制RAM的讀寫使能和讀寫地址寄存器,以每一點為單位進行逐點操作,當累加到最后一個PRT時,逐點依次進行累加、除法、加窗、向FFT中傳輸,直至最后一個PRT處理完畢,任意倍數相干積累RAM、Divider ModelSim波形圖如圖5和圖6所示。
圖5 RAM-ModelSim波形圖
圖6 Divider-ModelSim波形圖
3.2.3 加窗濾波模塊
當回波數據積累滿128次時,就應該對數據進行加窗處理,其目的是抑制距離向壓縮結果的旁瓣,使目標能量更為集中在主瓣。本系統(tǒng)所選擇的窗為漢寧窗即升余弦窗,其數學表達式如式(3)所示:
(3)
本設計為了加快處理速度,節(jié)約FPGA中LUT(Look-Up-Table)資源,就不在FPGA中進行較難實現的余弦計算,改為由Matlab直接生成加窗系數初始化文件即.COE文件,將該文件載入ROM IP核即可立即實現加窗功能。又在FPGA中進行浮點運算將會消耗大量硬件資源,同時又要確保加窗系數的精度,所以將Matlab生成的小數加窗系數擴大2的16次冪并取整,即間接保留原有的6位小數,由此用定點計算代替浮點計算,并通過擴大倍數的方式來減小截斷效應的影響,減少能量的損失[8]。當加窗操作完畢之后,將加窗后的數據右移16 bit即可消除因擴大倍數而引入的溢出風險,同時成功加窗,其ROM-ModelSim波形如圖7所示。
圖7 ROM-ModelSim波形圖
3.2.4 FFT距離壓縮模塊
在經過相干積累和加窗處理后,數據得到了有效壓縮和優(yōu)化,之后將IQ數據輸入至FFT之中,進行最重要的距離壓縮處理。為了保證高精度FFT輸出結果,本模塊采用的是16 bit 65 536點全精度定點FFT計算,即在FFT處理過程中保留每一位有用數據,不壓縮輸出數據,并使用Pipelined-Streaming I/O結構。其核心算法是基于DIF抽取的基2算法,對一系列基2蝶形計算單元采用流水線設計。當FFT輸入點數不滿足65 536點時即當輸入只有48 000點時,必須在后面繼續(xù)補零至65 536點,這樣才能開始進行FFT計算。
對于FFT全精度計算,其輸出位數大于其輸入位數,這就要將原有的寄存器數據位數擴展至預定位數,即輸入位數與點數位數之和再加1,以達到防止數據溢出的效果。又FFT模塊是分虛部實部兩路輸出,所以當虛部實部同時縮小相同的倍數將不影響整體所攜帶的信息,因此為了減小數據的輸出位,在輸出數據截取虛部實部的高16 bit,利于后續(xù)的數據打包和SRIO傳輸,其FFT-ModelSim波形圖如圖8所示[9]。
圖8 FFT-ModelSim波形圖
根據系統(tǒng)硬件架構搭建實驗平臺,并以200 kHz正弦波為系統(tǒng)輸入。利用Chipscope實時抓包軟件觀測到,其積累后去直流波形圖、原始波峰圖和積累后求平均波峰圖分別如圖9、圖10和圖11所示。由圖9可知,積累完畢后其波形仍為正弦波,充分證明其實時預處理模塊完成了相干積累功能,并由圖10和圖11可明顯看出,積累后的波形比不積累的要平滑很多,證明其顯著地提高了信噪比。又由積累后加窗波形圖和去斜FFT處理結果圖即圖12和圖13可知,實時預處理模塊正確的對積累后波形進行加窗和FFT操作,實現了距離向壓縮和旁瓣抑制,并由圖14去斜處理波形圖可明顯看出所加的200 kHz正弦信號在100 MHz采樣率下準確地出現在相對直流分量的橫坐標131點處即N≈200 kHz/(100 MHz/65 536),與理論值吻合,且直流分量在理論量級下[10]。另外,將預處理后的數據提出至Matlab中,可觀測旁瓣降低至預期的-31.54 dB處,其Matlab仿真圖如圖15所示。
圖9 積累后去直流波形(ADC量化值與參考電壓和量化精度有關,采樣點與采樣頻率和回波信號頻率有關)
圖10 原始波峰圖
圖11 積累后求平均波峰圖
圖12 積累加窗波形圖
圖13 去斜FFT處理結果
圖14 去斜處理波形圖
圖15 Matlab仿真圖
本文所設計的FPGA系統(tǒng)實現了回波數據在到達DSP之前的預處理,其一次處理過程即128PRT數據采樣至FFT輸出所需時間為(128×48 000+26+65 536×3)×10 ns≈37.25 ms,且數據壓縮率可達(128 000-1 000)/128 000×100%≈ 99.2%,距離向壓縮結果的旁瓣降低至 -31.54 dB。
由以上數據可得,本系統(tǒng)有效地減輕了下位機之間的數據傳輸和運算壓力,極大地提升了地基SAR系統(tǒng)的數據處理效率,使得該系統(tǒng)能夠更好地滿足邊坡監(jiān)測的實時性需求。