基於fpga的sar成像方法
2023-05-17 08:47:21 3
專利名稱:基於fpga的sar成像方法
技術領域:
本發明屬於數位訊號處理技術領域,涉及雷達成像方法,可應用於雷達實時信號處理系統設計和遙感、飛彈等領域。
背景技術:
合成孔徑雷達SAR具有二維距離和方位高解析度,能對場景作高解析度的二維成像。可以全天候、全天時、遠距離對目標進行檢測和定位,在軍用和許多民用領域發揮著重要作用。常見的SAR成像算法有距離-都卜勒R-D算法、線頻調變標CS算法等。距離-都卜勒成像算法作為合成孔徑雷達成像的一種主要算法,在合成孔徑雷達成像領域佔有重要作用。目前常用的雷達成像平臺多採用FPGA+DSP形式,利用FPGA並行度高和DSP靈活性強的特點,兩種開發工具協作完成雷達成像任務。FPGA作為主處理器,DSP作為從處理器的設計方法既可以滿足運算量巨大的信號處理任務,又可以一定程度上減輕散熱問題。在這種形式中,DSP雖然有完成複雜運算的能力,但是它是基於串行性實現的,其並行度較低,資源利用率不足,運算速度慢。並且FPGA+DSP的複雜多板卡形式對系統空間和散熱條件要求高,而彈載SAR系統環境空間和散熱條件有限,不能滿足FPGA+DSP多板卡成像平臺的要求。
發明內容
本發明的目的在於針對上述已有技術的不足,提供一種基於現場可編程門陣列FPGA的SAR成像方法,以簡化系統結構,降低功耗,提高雷達成像的信號處理速度。為實現上述目的,本發明包括如下步驟:(I)用Matlab軟體產生16384點的hamming窗,並將其量化成9bit有符號定點數存入ROM中,將雷達回波距離向數據與ROM中的hamming窗相乘,以實現對距離向數據的加窗;(2)對加窗後的距離向數據進行FFT運算,完成距離脈壓;(3)根據雷達前端慣導的斜距、斜視角、飛行速度,計算成像場景中心所在位置,並以此為中點左右各截取1024點共2048點數據作為成像數據,當產生地址越界時從特殊點O或14337開始截取;(4)對雷達回波數據在方位向上按雷達發射脈衝的重頻積累512個脈衝,得到512列數據作為一個子孔徑數據,將子孔徑數據轉置後存儲;(5)分別對步驟(4)中子孔徑數據的每行方位向數據計算,得到2048個都卜勒中心值,將得到的2048個方位向都卜勒中心值求和取平均作為該子孔徑的都卜勒中心;(6)根據雷達前端慣導的載機速度、斜視角和斜距計算都卜勒調頻率;(7)根據步驟(5)得到的都卜勒中心,得到都卜勒頻移函數,根據步驟(6)得到的都卜勒調頻率,得到都卜勒調頻率函數;並用Matlab軟體產生512點的hamming窗,並將其量化成16bit有符號定點數存入ROM中;(8)將步驟(4)中子孔徑數據的每行方位向數據分別與步驟(7)中的都卜勒頻移函數、都卜勒調頻率函數、hamming窗數據相乘,完成方位Dechirp前期處理;(9)對經過步驟(8)處理後的子孔徑數據按其方位向作FFT運算,得到子孔徑數據的方位頻域,對方位頻域的每個數據求模值,得到最終成像數據。本發明具有如下優點:第一,本發明採用FPGA作為核心處理晶片,由於FPGA有豐富的內部資源,在數據處理過程中可調用FPGA內部的IP核實現數據的讀入、復乘、相位計算等功能,運算速度快;且FPGA並行處理度高,處理速度快,提高了雷達成像的信號處理速度。第二,傳統成像算法實現採用FPGA+DSP複雜多板卡形式處理數據,其中,用FPGA實現對雷達回波距離向數據的加窗及距離脈壓,用DSP實現對雷達回波方位向數據的加窗和方位Dechirp,而在本發明中,FPGA不僅用來處理距離向數據,並且處理方位向數據,這樣整個系統中信號處理僅使用了 FPGA —種晶片,使系統結構簡化,功耗降低,可靠性增加。
圖1是本發明的流程圖;圖2是本發明處理雷達回波數據成像的結果圖。
具體實施方案下面結合附圖對本發明做進一步的描述。參照圖1,本發明的具體實施步驟如下:步驟1.距離脈衝壓縮1.1)加窗處理:1、Q兩路數據是雷達回波數據的實虛部,調用兩個FPGA內部的乘法IP核,分別將雷達回波數據的1、Q兩路數據乘以窗函數。其中,窗函數是用Matlab軟體產生的16384點的hamming窗,將其歸一量化成9bit有符號數後存入FPGA的ROM中;1、Q兩路數據是雷達AD採集到的回波數據,均為12bit,前端補零後拼接成16bit數據,乘法器輸出結果為25bit,由於後續FFT要求數據位數是2的冪次方,所以將25bit數據截取成16bit,截取時取乘法器輸出數據的第24位作為截取後的數據的符號位,第6位到第20位作為該數據的數據位;1.2)調用FPGA內部FFT核,對上一步乘法器輸出後經截位的數據做FFT處理,設置FFT核輸入數據寬度和相位位寬均為16bit,採用Scaled模式,使輸出數據也為16bit。步驟2.截取距離向數據根據雷達慣導提供的斜距、斜視角、飛行速度計算場景中心所在位置X,以X為中點左右各截取1024點共2048點數據作為距離向有效場景數據,當X小於1023或大於15360時,就不能在X左右兩邊各截取1023點,當X小於1023時以場景首個點開始截取;當X大於15360時則以14337為起點開始截取。步驟3.數據積累及轉置。FPGA外掛2組IGB的DDRII,步驟2完成距離向數據截取後,將每列2048點數據存入DDRII中,積累512列後作為一個子孔徑的數據,根據DDRII快速轉置算法實現數據轉置,使子孔徑數據按方位向512點排列,以便進行後續方位向數據處理。步驟4.估計子孔徑都卜勒中心和都卜勒調頻率。4.1)估計都卜勒中心值:4.1.1)調用FPGA內部的複數乘法IP核,將一行方位向數據錯位共軛點乘,得到自相關向量,複數乘法IP核輸入為兩路實虛部分別為16bit的複數,輸出為一路實虛部分別為16bit的複數;4.1.2)對自相關向量求和取平均值得到自相關值,調用FPGA內部的CORDIC IP核計算自相關值的相位角α,這裡CORDIC IP核的輸入為自相關值的實虛部,輸出即為該自相關值的相位角;4.1.3)根據上一步得到的自相關值相位角α,通過如下公式計算都卜勒中心fd。:fdc = a XPRF/2/ π ,其中,PRF是雷達發射信號的重頻。這裡都卜勒中心的計算是調用FPGA內部的乘法器實現的,乘法器的一路輸入為自相關值相位角α,另一路是PRF/2/π,這裡需要先在Matlab軟體裡將其量化成與自相關值R相角具有相同位寬的有符號定點數,再作為乘法器的輸入。4.1.4)重複步驟4.1.1)到步驟4.1.3)的三個步驟,直至得到所有方位向的都卜勒中心值,將得到的2048個方位向都卜勒中心值求和取平均作為該子孔徑的都卜勒中心;4.2)調用FPGA內部的乘法器,根據雷達前端慣導的載機速度V、斜視角Θ和斜距Rs,通過如下公式計算都卜勒調頻率ka:ka = -2v2cos2 Θ / λ /Rs,其中,λ是雷達發射信號的波長。步驟5.方位向Dechirp操作。5.1)加窗處理將經過步驟I到步驟3處理後數據的1、Q兩路數據分別乘以窗函數。其中,1、Q兩路數據分別是指數據的實部和虛部;窗函數是用Matlab軟體產生的512點的hamming窗,將其歸一量化成16bit有符號數後存入FPGA的ROM中;調用兩個FPGA內部的乘法IP核,從ROM中讀出16bit的hamming窗數據作為乘法IP核的一路輸入,方位向512點16bit數據的實部、虛部分別作為兩個乘法IP核的另一路輸入,相乘後得到32bit數據,即完成了加窗操作;5.2)構造都卜勒頻移函數都卜勒頻移函數是根據步驟4.1)中估計出的都卜勒中心構造的,具體步驟如下:5.2.1)用FPGA內部的always模塊產生從-255到256間隔為1,長度為512的向量,其中每個數據的位寬設置為IObit ;5.2.2)用Matlab軟體將2X π X fdc/PRF量化成IObit有符號定點數,存入FPGA的ROM中,其中fd。是步驟4.1)中估計出的都卜勒中心;5.2.3)調用FPGA內部乘法IP核,將步驟5.2.1)得到的向量和步驟5.2.2)得到的定點數作為乘法IP核的兩組輸入,輸出為長度為512的向量;5.2.4)調用FPGA的CORDIC IP核,將步驟5.2.3)中得到的向量量化成IObit有符號數據作為CORDIC IP核的輸入,輸出為一個複數向量,其中輸出向量的實部為輸入向量的三角函數cos,虛部為CORDIC IP核輸入向量的三角函數sin,輸出向量即為都卜勒頻移函數。5.3)構造都卜勒調頻率函數都卜勒調頻率函數是利用步驟4.2)中估計得到的都卜勒調頻率構造的,具體步驟如下:5.3.1)用Matlab軟體產生從-255到256的間隔為1,長度為512的向量,向量中的每個元素均除以雷達發射信號重頻PRF後求平方,然後將該數據量化成16bit有符號數,存儲至Ij FPGA的ROM中;5.3.2)調用FPGA乘法IP核,將步驟5.3.1)得到的向量作為乘法IP核的一路輸入,將步驟4.2)中估計得到的ka截取成位寬為16bit的數據後,作為乘法IP核的另一路輸入,乘法IP核的輸出為一組位寬為32bit的新向量;5.3.3)調用FPGA的CORDIC IP核,將步驟5.3.2)中得到的向量作為CORDIC IP核的輸入,輸出為一個複數向量,其中輸出向量的實部為輸入向量的三角函數cos,虛部為CORDIC IP核輸入向量的三角函數sin,輸出向量即為都卜勒調頻率函數;5.4)方位向數據配置調用兩次FPGA複數乘法IP核,第一次複數乘法IP核將雷達回波的方位向數據與步驟5.2)得到的都卜勒頻移函數相乘,輸出為48bit複數;將第一次複數乘法的輸出作為第二個複數乘法IP核的一路輸入,另一路輸入為步驟5.3)中估計得到的都卜勒調頻率函數,輸出為64bit的數據,經數據截位成實虛部均為32bit的數據。5.5)方位向數據FFT調用FPGA內部的FFT IP核,將步驟4.4)產生的結果向量作為FFT IP核的輸入,FFT IP核輸出位寬為32bit的數據即為最終的成像數據,至此,雷達回波數據的處理全部完成。本發明的效果可以通過以下實測進一步說明:仿真內容,將機載雷達照射某地區的一組回波數據作為本發明待處理的雷達回波數據,用本發明方法處理該數據,用處理後的數據畫灰度圖,如圖2所示。圖2中可以清晰的看出橋梁、河流、公路以及農田,成像效果良好,可見本發明提供的基於FPGA的SAR成像方法合理可行。
權利要求
1.一種基於FPGA的SAR成像方法,包括如下步驟: (1)用Matlab軟體產生16384點的hamming窗,並將其量化成9bit有符號定點數存入ROM中,將雷達回波距離向數據與ROM中的hamming窗相乘,以實現對距離向數據的加窗; (2)對加窗後的距離向數據進行FFT運算,完成距離脈壓; (3)根據雷達前端慣導的斜距、斜視角、飛行速度,計算成像場景中心所在位置,並以此為中點左右各截取1024點共2048點數據作為成像數據,當產生地址越界時從特殊點0或14337開始截取; (4)對雷達回波數據在方位向上按雷達發射脈衝的重頻積累512個脈衝,得到512列數據作為一個子孔徑數據,將子孔徑數據轉置後存儲; (5)分別對步驟(4)中子孔徑數據的每行方位向數據計算,得到2048個都卜勒中心值,將得到的2048個方位向都卜勒中心值求和取平均作為該子孔徑的都卜勒中心; (6)根據雷達前端慣導的載機速度、斜視角和斜距計算都卜勒調頻率; (7)根據步驟(5)得到的都卜勒中心,得到都卜勒頻移函數,根據步驟(6)得到的都卜勒調頻率,得到都卜勒調頻率函數;用Matlab軟體產生512點的hamming窗,並將其量化成16bit有符號定點數存入ROM中; (8)將步驟(4)中子孔徑數據的每行方位向數據分別與步驟(7)中的都卜勒頻移函數、都卜勒調頻率函數、hamming窗數據相乘,完成方位Dechirp前期處理; (9)對經過步驟(8)處理後的子孔徑數據按其方位向作FFT運算,得到子孔徑數據的的方位頻域,對方位頻域的每個數據求模值,得到最終成像數據。
2.根據權利要求1所述的基 於FPGA的SAR成像方法,其中步驟(3)所述的根據雷達前端慣導的斜距、斜視角、飛行速度,計算成像場景中心所在位置,通過如下公式計算: X = 2XNX y XR/c/fs, 其中,X是場景中心,N是雷達回波距離向數據點數,Y是雷達發射線性調頻信號的調頻率,R是雷達到目標的距尚,c是光速,fs是米樣頻率。
3.根據權利要求1所述的基於FPGA的SAR成像方法,其中步驟(5)所述的分別對步驟(4)中子孔徑數據的每行方位向數據計算,得到2048個都卜勒中心值,按如下步驟進行: 首先,調用FPGA內部的複數乘法IP核,將一行方位向數據錯位共軛點乘,得到自相關向量; 然後,對自相關向量求和取平均值得到自相關值,調用FPGA內部的CORDIC IP核計算自相關值的相位角a ; 最後,根據得到的自相關值相位角a,通過如下公式計算都卜勒中心:fdc = a XPRF/2/ji, 其中,fdc是都卜勒中心,PRF是雷達發射信號的重頻。
4.根據權利要求1所述的基於FPGA的SAR成像方法,其中步驟(6)所述根據雷達前端慣導的載機速度、斜視角和斜距計算都卜勒調頻率,通過如下公式計算:ka = -2v2cos2 0 / A /Rs, 其中,ka是都卜勒調頻率,V是載機速度,0是斜視角,Rs是斜距,\是雷達發射信號的波長。
全文摘要
本發明公開了一種基於FPGA的SAR成像方法,主要解決現有系統結構複雜、數據處理速度慢的問題。其實現方法是,調用FPGA中乘法器,將每列距離向數據與量化後的hamming窗數據相乘後進行FFT運算,完成距離脈壓;由慣導參數計算距離向場景中心位置,進行距離向數據截取;將截取得到的數據轉置,實現子孔徑數據按方位向存儲;根據慣性導航參數估計出都卜勒中心值和都卜勒調頻率;根據估計出的都卜勒中心值和都卜勒調頻率構造都卜勒頻移函數、都卜勒調頻率函數和方位hamming窗函數;將做完距離脈壓後的每行方位向數據與上述三個函數相乘後進行FFT運算,得到最終成像數據。本發明簡化了SAR成像系統結構,提高了處理速度,可用於在彈載模式下的SAR成像。
文檔編號G01S13/90GK103197317SQ20131010104
公開日2013年7月10日 申請日期2013年3月26日 優先權日2013年3月26日
發明者全英匯, 陳露露, 邢孟道, 李亞超, 李豔紅, 何振 申請人:西安電子科技大學