陳 洋, 肖國(guó)堯,*, 全英匯, 任愛(ài)鋒, 別博文, 邢孟道
(1. 西安電子科技大學(xué)電子工程學(xué)院, 陜西 西安 710071;2. 西安電子科技大學(xué)前沿交叉研究院, 陜西 西安 710071)
調(diào)頻連續(xù)波(frequency modulated continuous wave, FMCW)合成孔徑雷達(dá)(synthetic aperture radar, SAR)結(jié)合了FMCW技術(shù)和SAR技術(shù),推動(dòng)了小型化、輕量化、低功率高分辨率成像雷達(dá)的誕生,使其易于安裝在無(wú)人機(jī)等小型設(shè)備上[1]。與傳統(tǒng)的脈沖式SAR相比,FMCW SAR降低了傳感器的峰值傳輸功率,對(duì)SAR發(fā)射機(jī)的要求較低[2]。近年來(lái),FMCW SAR成像研究得到了更多關(guān)注,國(guó)內(nèi)外也研制出多款FMCW SAR信號(hào)處理系統(tǒng)。
基于傳統(tǒng)的SAR成像算法,結(jié)合FMCW SAR特征,目前已經(jīng)提出了一系列FMCW SAR成像算法。文獻(xiàn)[3]研究了正弦非線性函數(shù)對(duì)FMCW SAR系統(tǒng)的影響,提出了相位誤差修正算法來(lái)檢測(cè)目標(biāo);文獻(xiàn)[4]基于壓縮感知技術(shù),提出了一種用于恢復(fù)FMCW SAR原始數(shù)據(jù)的稀疏重建方法;文獻(xiàn)[5]提出了星載方位中斷FMCW SAR信號(hào)模型,并利用廣義正交匹配追蹤算法重構(gòu)信號(hào);文獻(xiàn)[6-7]基于改進(jìn)的波數(shù)域成像算法實(shí)現(xiàn)了最優(yōu)成像;文獻(xiàn)[8]提出了一種考慮傳感器運(yùn)動(dòng)的方法,解決了在發(fā)送/接收過(guò)程中由連續(xù)路徑造成影響問(wèn)題;文獻(xiàn)[9-12]基于改進(jìn)的距離多普勒(range-Doppler, RD)算法實(shí)現(xiàn)了FMCW SAR數(shù)據(jù)聚焦。文獻(xiàn)[13]提出了一種改進(jìn)的逆線性調(diào)頻Z變換算法來(lái)處理距離-方位耦合項(xiàng);文獻(xiàn)[14-16]提出了FMCW SAR稀疏成像方法,可以校正實(shí)際機(jī)載FMCW SAR數(shù)據(jù)中的運(yùn)動(dòng)誤差。
SAR成像的數(shù)據(jù)量大,對(duì)實(shí)時(shí)性有較高的要求。這種情況下,高性能、靈活的處理SAR信號(hào)是目前面臨的挑戰(zhàn)之一。傳統(tǒng)的單核數(shù)字信號(hào)處理器(digital signal processor, DSP)計(jì)算能力有限,難以滿足工程應(yīng)用的要求,FT-M6678是國(guó)防科學(xué)技術(shù)大學(xué)研制的八核高性能浮點(diǎn)數(shù)字信號(hào)處理芯片,具有超高的運(yùn)算能力和傳輸性能。目前,已經(jīng)有許多科研人員利用DSP處理器進(jìn)行SAR成像算法的實(shí)現(xiàn)。文獻(xiàn)[17]采用多核DSP設(shè)計(jì)了聚束SAR成像系統(tǒng);文獻(xiàn)[18-20]基于多核DSP提出了大斜視機(jī)載SAR的實(shí)時(shí)成像處理架構(gòu);文獻(xiàn)[21]提出了一種混合異構(gòu)并行加速技術(shù),結(jié)合現(xiàn)場(chǎng)可編程門(mén)陣列(field programmable gate array, FPGA)和DSP的優(yōu)點(diǎn),實(shí)現(xiàn)了機(jī)載SAR的實(shí)時(shí)處理。文獻(xiàn)[22-23]針對(duì)機(jī)載前斜視SAR成像的特點(diǎn),建立了高性能的SAR實(shí)時(shí)處理系統(tǒng);文獻(xiàn)[24]設(shè)計(jì)了一種虛擬單節(jié)點(diǎn)并行處理方法,采用8個(gè)DSP實(shí)現(xiàn)SAR成像處理的大容量分布式存儲(chǔ);文獻(xiàn)[25]提出了一種基于多核DSP的星載SAR欺騙式干擾實(shí)時(shí)產(chǎn)生算法優(yōu)化方法;文獻(xiàn)[26-28]基于FMCW SAR提出了一種實(shí)時(shí)成像的軟件體系結(jié)構(gòu)。
目前,面向雙基地FMCW SAR成像的研究不斷增加,但針對(duì)天基平臺(tái)的研究較少[29]。這是因?yàn)樾l(wèi)星運(yùn)動(dòng)速度遠(yuǎn)大于載機(jī)飛行速度,在高分辨或超高分辨成像條件下使用傳統(tǒng)的FMCW SAR成像算法,會(huì)導(dǎo)致成像效果不佳。本文在此背景下進(jìn)行改進(jìn)研究,建立起一種適宜星載雙基FMCW SAR的頻域算法,并選用實(shí)驗(yàn)室自主研發(fā)的以FT-M6678處理器為主的國(guó)產(chǎn)化信號(hào)處理平臺(tái)構(gòu)建適用于星載雙基SAR成像算法的并行處理架構(gòu),完成軟硬件設(shè)計(jì)實(shí)現(xiàn)。
同航線雙基FMCW SAR成像幾何模型如圖1所示,收發(fā)衛(wèi)星以相同的速度v飛行,沿航線兩衛(wèi)星距離為dx,高度為H。以零時(shí)刻星下點(diǎn)為原點(diǎn)建立坐標(biāo)系。此坐標(biāo)系中,由星下點(diǎn)指向基線中點(diǎn)和衛(wèi)星運(yùn)動(dòng)的方向分別為z軸和y軸,然后根據(jù)二者叉乘確定出x軸。對(duì)于任意一個(gè)目標(biāo)p=(xn,yn,zn),收發(fā)衛(wèi)星與它的瞬時(shí)斜距記作Rt(ta)和Rr(ta)。
對(duì)收發(fā)衛(wèi)星的瞬時(shí)斜距進(jìn)行分析,當(dāng)采用2階瞬時(shí)斜距表達(dá)式時(shí),斜距近似精度滿足成像要求。在零點(diǎn)對(duì)瞬時(shí)斜距Rt(ta)和Rr(ta)進(jìn)行泰勒展開(kāi),并且保留到二次項(xiàng),得:
(1)
式中:(xT,yT,zT)為參考點(diǎn)的坐標(biāo);[x0,t,vx,t,ax,t],[y0,t,vx,t,ax,t],[z0,t,vx,t,ax,t]分別為發(fā)射衛(wèi)星軌跡的三維運(yùn)動(dòng)參數(shù);[x0,r,vx,r,ax,r],[y0,r,vx,r,ax,r],[z0,r,vx,r,ax,r]分別為接收衛(wèi)星軌跡的三維運(yùn)動(dòng)參數(shù);[k0,t,k1,t,k2,t]和[k0,r,k1,r,k2,r]分別為發(fā)、收平臺(tái)到參考點(diǎn)的瞬時(shí)斜距泰勒展開(kāi)系數(shù)。
FMCW SAR發(fā)射連續(xù)的線性調(diào)頻信號(hào),其信號(hào)模型為
(2)
式中:tr為快時(shí)間;ta為慢時(shí)間;Tp為發(fā)射信號(hào)的脈寬;fc為載波頻率;γ為調(diào)頻斜率。則
可以確定R(tr,ta)處接收的回波為

(3)
式中:td是回波時(shí)延。需要注意的是,對(duì)傳統(tǒng)脈沖SAR而言,發(fā)射信號(hào)的脈寬較小,在進(jìn)行近似處理時(shí)主要采用“走-停-走”方法,但FMCW SAR是在整個(gè)脈沖重復(fù)間隔內(nèi)發(fā)射信號(hào),需要考慮雷達(dá)平臺(tái)連續(xù)運(yùn)動(dòng)引起的距離偏移[30]。為了避免收發(fā)平臺(tái)移位帶來(lái)的相位誤差,提高成像精度,不再對(duì)回波時(shí)延進(jìn)行近似,可表示為
(4)
傳統(tǒng)的脈沖體制SAR需要構(gòu)造參考函數(shù)去斜,而FMCW通常采用接收時(shí)去斜,具體的實(shí)現(xiàn)方式為,將回波信號(hào)與參考信號(hào)共軛相乘。設(shè)置參考距離為Rref,其對(duì)應(yīng)的回波信號(hào)的共軛設(shè)為參考信號(hào),表達(dá)式為
(5)
式中:tref=2Rref/c=(k0,t+k0,r)/c;k0,t和k0,r分別為發(fā)、收平臺(tái)到參考點(diǎn)的瞬時(shí)斜距泰勒展開(kāi)系數(shù)。若RΔ=R(tr,ta)-Rref,則去斜之后的信號(hào)為

(6)
式中:A是復(fù)常數(shù),最末的指數(shù)項(xiàng)是視頻殘余相位(residual video phase, RVP),該指標(biāo)對(duì)成像質(zhì)量會(huì)造成明顯的影響,因而去斜處理后,應(yīng)該先將RVP去除,之后只需要對(duì)距離維進(jìn)行相應(yīng)的傅里葉變換就能實(shí)現(xiàn)距離脈壓。
本文通過(guò)分析雷達(dá)在信號(hào)發(fā)射期間運(yùn)動(dòng)所帶來(lái)的距離徙動(dòng)影響,以及去斜所帶來(lái)的RVP影響,介紹了一種適于星載雙基的FMCW SAR成像算法,具體操作流程如圖2所示。

圖2 星載雙基FMCW SAR成像處理流程Fig.2 Spaceborne bistatic FMCW SAR imaging processing process
步驟 1對(duì)距離維回波信號(hào)做傅里葉變換,將二維時(shí)域信號(hào)轉(zhuǎn)換為距離頻域信號(hào)進(jìn)行距離脈壓。
步驟 2與補(bǔ)償函數(shù)H_rep相乘,在距離維頻域去除RVP。
步驟 3與補(bǔ)償函數(shù)H_fdc相乘,在距離維頻域進(jìn)行多普勒中心補(bǔ)償。
步驟 4在距離多普勒頻域和補(bǔ)償函數(shù)Hrcm相乘,實(shí)現(xiàn)距離徙動(dòng)校正。
步驟 5利用匹配濾波函數(shù)H_az在二維頻域?qū)崿F(xiàn)方位脈壓。
步驟 6將信號(hào)轉(zhuǎn)換到方向維時(shí)域,得到聚焦后的SAR圖像。
本文用于實(shí)現(xiàn)星載雙基FMCW SAR成像算法的硬件平臺(tái),是基于全國(guó)產(chǎn)化芯片研發(fā)的處理平臺(tái),在滿足百分百?lài)?guó)產(chǎn)化要求的基礎(chǔ)上,可以實(shí)現(xiàn)多種應(yīng)用場(chǎng)景下的任務(wù)需求。其整體架構(gòu)如圖3所示。系統(tǒng)采用虛擬路徑交叉連接(virtual path cross-connect, VPX)標(biāo)準(zhǔn)架構(gòu),可以劃分成5個(gè)功能模塊,各模塊間采用高速數(shù)據(jù)總線進(jìn)行信息傳輸。

圖3 全國(guó)產(chǎn)化信號(hào)處理平臺(tái)硬件架構(gòu)Fig.3 Domestically produced signal processing platform hardware architecture
信號(hào)采集模塊的職責(zé)是采集外部模擬信號(hào),實(shí)現(xiàn)多通道模數(shù)轉(zhuǎn)換功能。采集到的數(shù)字信號(hào)在經(jīng)過(guò)預(yù)處理后,可以通過(guò)高速串行接口(serial rapid I/O, SRIO)傳輸?shù)叫盘?hào)處理模塊進(jìn)行成像算法。
信號(hào)回放模塊可以按照一定的脈沖重復(fù)頻率放出回波信號(hào),然后經(jīng)過(guò)SRIO接口傳輸?shù)叫盘?hào)采集模塊進(jìn)行預(yù)處理。
主控模塊負(fù)責(zé)監(jiān)管每個(gè)處理器的工作狀態(tài),為其他模塊分配任務(wù)以控制整個(gè)系統(tǒng)的工作流程,并可以通過(guò)以太網(wǎng)與上位機(jī)進(jìn)行信息傳輸,是整個(gè)系統(tǒng)的控制核心。
數(shù)據(jù)交換模塊可以通過(guò)配置交換芯片的相關(guān)參數(shù)控制SRIO接口進(jìn)行數(shù)據(jù)路由,這極大提高了系統(tǒng)內(nèi)通信的靈活性。
信號(hào)處理模塊由FPGA和DSP組成。其中,FPGA作為控制芯片,負(fù)責(zé)時(shí)序控制、數(shù)據(jù)交互和通信等功能,其內(nèi)部大量可編程資源和豐富的接口也可以提高系統(tǒng)的擴(kuò)展性。DSP作為主算法處理器,負(fù)責(zé)對(duì)輸入數(shù)據(jù)進(jìn)行實(shí)時(shí)處理,可以完成大規(guī)模高精度的數(shù)字信號(hào)處理。
本文采用國(guó)防科大的FT-6678系列8核DSP芯片。此芯片主頻最高為1.25 GHz,單核浮點(diǎn)運(yùn)算能力可達(dá)10 GFLOPS,每個(gè)核包含32 KB的一級(jí)存儲(chǔ)器,512 KB的二級(jí)存儲(chǔ)器,核外集成4 MB的多核共享存儲(chǔ)器,外部掛載8 GB擴(kuò)展存儲(chǔ)空間,用來(lái)儲(chǔ)存成像算法中大量的中間數(shù)據(jù)。綜上所述,FT-M6678在運(yùn)行速率和存儲(chǔ)空間具有較大優(yōu)勢(shì),可以實(shí)現(xiàn)大規(guī)模實(shí)時(shí)信號(hào)處理。
2.2.1 多核多任務(wù)并行處理設(shè)計(jì)
SAR成像算法復(fù)雜,實(shí)時(shí)性要求高,需要進(jìn)行多核并行處理以提高代碼的執(zhí)行效率。鑒于算法各模塊之間存在數(shù)據(jù)依賴(lài)現(xiàn)象,本文采用主從方式進(jìn)行并行運(yùn)算,0核是主核,負(fù)責(zé)與外設(shè)互聯(lián),任務(wù)分配和匯總。非0核是從核,從核之間地位相等,不直接進(jìn)行數(shù)據(jù)交互與通信,負(fù)責(zé)子任務(wù)執(zhí)行。DSP工作時(shí),0核先初始化外設(shè),當(dāng)接收到FPGA通過(guò)SRIO總線傳輸?shù)拈T(mén)鈴信息后就開(kāi)始執(zhí)行星載雙基FMCW SAR成像算法。為了最大限度地使用硬件資源,需要在DSP的8個(gè)核內(nèi)合理分配任務(wù)與數(shù)據(jù)。為避免多核之間不同步導(dǎo)致的數(shù)據(jù)錯(cuò)誤,本文將采用信號(hào)量的方式控制8個(gè)核同步執(zhí)行算法的各個(gè)模塊,圖4是通過(guò)信號(hào)量進(jìn)行核間通信的流程框圖。

圖4 核間通信流程Fig.4 Intercore communication flow
2.2.2 算法功能與硬件映射
FPGA將預(yù)處理后的數(shù)據(jù)傳輸?shù)紻SP,可以獲得一個(gè)2 048×8 192的復(fù)數(shù)矩陣,其中8 192是距離維點(diǎn)數(shù),2 048是方向維點(diǎn)數(shù),該矩陣按照距離維的順序連續(xù)儲(chǔ)存在雙倍率同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(double data rate, DDR)內(nèi)部,作為后續(xù)算法模塊的輸入數(shù)據(jù)。算法處理過(guò)程中使用的一些雷達(dá)參數(shù)是不變的,這些不變參數(shù)可以只進(jìn)行一次計(jì)算,之后采用查表的方式獲得相應(yīng)的數(shù)據(jù),避免重復(fù)計(jì)算的時(shí)間消耗。星載雙基FMCW SAR成像算法的軟件處理流程如圖5所示。

圖5 星載雙基FMCW SAR成像算法軟件處理流程Fig.5 Software processing flow of spaceborne bistatic FMCW-SAR imaging algorithm
(1) RVP補(bǔ)償和多普勒中心補(bǔ)償
星載雙基FMCW SAR成像算法中有四種補(bǔ)償因子,需要通過(guò)雷達(dá)參數(shù)構(gòu)造,每個(gè)補(bǔ)償因子的計(jì)算結(jié)果需要與相應(yīng)的距離維或方向維快速傅里葉變換(fast Fourier transformation, FFT)、快速傅里葉逆變換(inverse fast Fourier transform, IFFT)結(jié)果復(fù)乘,才能完成補(bǔ)償操作,考慮到算法的實(shí)時(shí)性,本文在進(jìn)行RVP補(bǔ)償和多普勒中心補(bǔ)償時(shí)只計(jì)算一次補(bǔ)償因子,并將其結(jié)果存儲(chǔ)在共享內(nèi)存(multicore shared memory controller, MCMC)中,從而有效地減少了補(bǔ)償因子的計(jì)算時(shí)間,具體的軟件處理流程如圖6所示。

圖6 RVP補(bǔ)償和多普勒中心補(bǔ)償?shù)能浖幚砹鞒蘁ig.6 Software processing flow of RVP compensation and Doppler center compensation
由圖6可知,需要先將數(shù)據(jù)按照距離維劃分成8份到每個(gè)內(nèi)核。因?yàn)閮?nèi)核對(duì)L2的存取速率高于DDR,所以需要通過(guò)直接存儲(chǔ)器訪問(wèn)(direct memory access, DMA)將每一組距離維的數(shù)據(jù)搬移到L2,存放在動(dòng)態(tài)變量temp1中。DMA可以在后臺(tái)進(jìn)行批量數(shù)據(jù)的傳輸,避免了資源競(jìng)爭(zhēng),從而實(shí)現(xiàn)DDR與其他讀取速度更快的存儲(chǔ)器之間的數(shù)據(jù)交換。隨后對(duì)temp1進(jìn)行距離維FFT處理并將結(jié)果存放在動(dòng)態(tài)變量temp2中,將temp2與查表所得的RVP補(bǔ)償函數(shù)H_rep和多普勒中心補(bǔ)償函數(shù)H_fdc復(fù)數(shù)點(diǎn)乘后,再次存放在temp1中,此操作可有效節(jié)省空間開(kāi)銷(xiāo),提升空間利用率。然后對(duì)temp1進(jìn)行距離維IFFT操作并將結(jié)果再次放在temp2中,最后基于DMA將temp2搬移到DDR中,按照地址順序合并8個(gè)內(nèi)核中的數(shù)據(jù),方便后續(xù)模塊執(zhí)行。
(2) 轉(zhuǎn)置
RVP補(bǔ)償和多普勒中心補(bǔ)償處理完成之后,需要對(duì)數(shù)據(jù)進(jìn)行方向維FFT處理,與仿真實(shí)驗(yàn)中提供的抽象機(jī)制不同,在DSP中對(duì)按照距離維順序儲(chǔ)存的數(shù)據(jù)進(jìn)行方向維處理時(shí)要進(jìn)行地址跳變,這會(huì)浪費(fèi)時(shí)間,因此在距離徙動(dòng)校正之前需要進(jìn)行轉(zhuǎn)置操作。待轉(zhuǎn)置矩陣大小為2 048×8 192,本文采用矩陣分割拼接法進(jìn)行處理,步驟如下。
步驟 1將待轉(zhuǎn)置矩陣橫向均分成8個(gè)子矩陣,大小為256×8 192。
步驟 2將每個(gè)256×8 192大小的子矩陣縱向均分,使得每個(gè)小正方形子矩陣的大小為256×256。
步驟 38個(gè)內(nèi)核同步使用EDMA從源地址按序讀取一個(gè)256×256的子矩陣緩存在L2,對(duì)每個(gè)正方形小矩陣進(jìn)行轉(zhuǎn)置。
步驟 4每個(gè)內(nèi)核將轉(zhuǎn)置后的子矩陣縱向拼接,可以得到大小為8 192×256的矩陣。
步驟 5將8個(gè)8 192×256大小的子矩陣橫向拼接即可得到轉(zhuǎn)置后的矩陣,大小為8 192×2 048。
其中拼接過(guò)程是通過(guò)EDMA按順序?qū)懟啬康牡刂穼?shí)現(xiàn)的。在后續(xù)算法流程中還涉及到方向維順序儲(chǔ)存的數(shù)據(jù)進(jìn)行距離維處理的轉(zhuǎn)置操作,與上述方法相同,圖7是使用矩陣分割拼接法實(shí)現(xiàn)轉(zhuǎn)置的示意圖。

圖7 矩陣轉(zhuǎn)置示意圖Fig.7 Schematic representation of matrix transpose
(3) 距離徙動(dòng)校正
距離徙動(dòng)校正是對(duì)回波數(shù)據(jù)的方向維進(jìn)行處理,方位向處理模塊參照上述補(bǔ)償操作,將數(shù)據(jù)按方向維均勻劃分成8個(gè)區(qū)域到所有內(nèi)核進(jìn)行并行運(yùn)算。首先,通過(guò)EDMA將每一組方向維的數(shù)據(jù)搬移到L2的動(dòng)態(tài)變量temp1中,隨后對(duì)temp1進(jìn)行方向維FFT處理并將結(jié)果存放在動(dòng)態(tài)變量temp2中,將temp2與距離徙動(dòng)補(bǔ)償函數(shù)H_rcm復(fù)數(shù)點(diǎn)乘后,將結(jié)果再次存放在temp1中。最后通過(guò)EDMA將temp1從L2搬移到DDR中。距離徙動(dòng)校正的軟件處理流程如圖8所示。

圖8 距離徙動(dòng)校正軟件處理流程Fig.8 Software processing flow of range migration correction
(4) 方位脈壓
方位脈壓與距離徙動(dòng)校正模塊一樣都是對(duì)信號(hào)進(jìn)行方向維處理,具體實(shí)現(xiàn)流程大致相同,不同的是方位脈壓模塊將動(dòng)態(tài)變量temp1與H_az相點(diǎn)乘后,在方向維進(jìn)行IFFT操作,即可得到最終結(jié)果。其中,H_az是方位匹配濾波函數(shù)。方位脈壓的軟件處理流程如圖9所示。

圖9 方位脈壓軟件處理流程Fig.9 Software processing flow of azimuth pulse pressure
需要注意的是,H_rcm和H_az的構(gòu)造方式與H_rep和H_fdc不同,前者是在算法處理過(guò)程中按照方向維一組一組構(gòu)造的,存放在L2中,后者是在進(jìn)行算法處理之前構(gòu)造的,放在共享內(nèi)存中。這是因?yàn)镠_rcm和H_az所占的內(nèi)存空間很大,只能儲(chǔ)存在DDR中,但內(nèi)核對(duì)L2的存取速率高于DDR,所以采用在L2中按組構(gòu)造補(bǔ)償因子的方法提高算法執(zhí)行效率。
2.2.3 性能優(yōu)化
在完成成像算法的軟件設(shè)計(jì)后,為了加快代碼的運(yùn)行效率,提高程序性能,本文采用了以下2種方法進(jìn)行優(yōu)化。
(1) 編譯器優(yōu)化
C/C++編譯器在應(yīng)用過(guò)程中可進(jìn)行高級(jí)和低級(jí)優(yōu)化,其中前者主要是針對(duì)變量、寄存器、函數(shù)相關(guān)的對(duì)象進(jìn)行優(yōu)化。后者則是在代碼生成器內(nèi)處理,主要負(fù)責(zé)調(diào)整代碼尺寸,優(yōu)化代碼。最簡(jiǎn)單的激活優(yōu)化的方法是使用編譯程序,在編譯器命令行可以指定優(yōu)化級(jí)別控制優(yōu)化的類(lèi)型和程度,本文主要采用O3優(yōu)化對(duì)編譯器進(jìn)行處理。
(2) 內(nèi)聯(lián)函數(shù)與循環(huán)展開(kāi)
在DSP軟件實(shí)現(xiàn)過(guò)程中,為更好地滿足代碼的可移植性要求,常采用C語(yǔ)言進(jìn)行編程,然而C語(yǔ)言編譯器無(wú)法將DSP的處理性能充分發(fā)揮。匯編語(yǔ)言可以直接對(duì)芯片內(nèi)部寄存器進(jìn)行操作提高代碼運(yùn)行效率,但是編程難度大,開(kāi)發(fā)效率低。與線性匯編類(lèi)似,內(nèi)聯(lián)函數(shù)可以充分利用DSP芯片大位寬、并行處理的性能,同時(shí)又可以像C語(yǔ)言一樣實(shí)現(xiàn)參數(shù)的傳遞增強(qiáng)代碼的可讀性與復(fù)用性。因此,在底層函數(shù)編寫(xiě)過(guò)程中,先使用C語(yǔ)言進(jìn)行功能實(shí)現(xiàn),再通過(guò)內(nèi)聯(lián)函數(shù)優(yōu)化程序。德州儀器(Texas instruments, TI)提供的庫(kù)函數(shù)可以執(zhí)行FFT、IFFT和四則運(yùn)算等處理,基本滿足使用需求,但是TI庫(kù)中并沒(méi)有提供SAR成像算法中常用的復(fù)數(shù)點(diǎn)乘、求指等函數(shù),這就需要手動(dòng)實(shí)現(xiàn)對(duì)應(yīng)的運(yùn)算。本文中,復(fù)數(shù)點(diǎn)乘、求指、頻譜搬移等運(yùn)算都使用了內(nèi)聯(lián)函數(shù)進(jìn)行優(yōu)化,以復(fù)數(shù)點(diǎn)乘為例,在運(yùn)算處理時(shí)合并了4次32位乘法和2次32位加法,轉(zhuǎn)換為1次64位乘法運(yùn)算,減少了時(shí)間開(kāi)銷(xiāo)。此外,還在for循環(huán)中執(zhí)行展開(kāi)處理,即一個(gè)循環(huán)可以計(jì)算多組數(shù)據(jù),這可以減少循環(huán)次數(shù)提升資源利用率。
系統(tǒng)測(cè)試環(huán)境如圖10所示,整個(gè)系統(tǒng)綜合化設(shè)計(jì),采用統(tǒng)一的軟件進(jìn)行管理及控制,人機(jī)交互友好。采用圖形化用戶(hù)界面工具編寫(xiě)上位機(jī)軟件可以控制整個(gè)系統(tǒng)的啟止,還可以通過(guò)以太網(wǎng)口與硬件平臺(tái)進(jìn)行數(shù)據(jù)交互,實(shí)現(xiàn)回波數(shù)據(jù)下發(fā)與成像結(jié)果顯示等功能。

圖10 系統(tǒng)測(cè)試環(huán)境示意圖Fig.10 Schematic diagram of system test environment
為了說(shuō)明星載雙基FMCW SAR成像算法工程化實(shí)現(xiàn)的正確性,在對(duì)算法的性能進(jìn)行仿真分析時(shí),應(yīng)用了點(diǎn)目標(biāo)仿真數(shù)據(jù),其主要參數(shù)如表1所示。

表1 仿真參數(shù)Table 1 Parameter of simulation
圖11(a)和圖11(b)分別是仿真結(jié)果和DSP處理結(jié)果。對(duì)比分析可發(fā)現(xiàn),DSP處理結(jié)果與仿真結(jié)果基本一致,為進(jìn)一步分析成像效果,圖12和圖13給出了圖像中心點(diǎn)的二維剖面對(duì)比圖。

圖11 成像結(jié)果對(duì)照?qǐng)DFig.11 Comparison of imaging results

圖12 距離向剖面對(duì)比圖Fig.12 Distance direction profile contrast diagram

圖13 方位向剖面對(duì)比圖Fig.13 Azimuth direction profile contrast diagram
對(duì)圖像中心點(diǎn)的二維剖面圖進(jìn)行評(píng)估分析,可以得到距離維和方向維的峰值旁瓣比(peak side lobe ratio, PSLR)和積分旁瓣比(integrated sidelobe level ratio, ISLR),如表2所示。

表2 點(diǎn)目標(biāo)性能指標(biāo)Table 2 Point target performance indicator dB
由表2可知,相對(duì)于仿真結(jié)果,DSP處理結(jié)果中的PSLR和ISLR性能指標(biāo)有所下降,這是因?yàn)榉抡嬗?jì)算在處理數(shù)據(jù)時(shí)默認(rèn)為雙精度浮點(diǎn)型,但DSP中采用單精度浮點(diǎn)型數(shù)據(jù)進(jìn)行成像處理,這會(huì)導(dǎo)致數(shù)據(jù)精度下降,但最終成像效果差距很小,可以滿足實(shí)際應(yīng)用中的成像需求。
在經(jīng)過(guò)對(duì)點(diǎn)目標(biāo)仿真數(shù)據(jù)的處理驗(yàn)證后,需要更接近實(shí)際目標(biāo)場(chǎng)景的回波數(shù)據(jù)來(lái)驗(yàn)證成像算法工程化實(shí)現(xiàn)的有效性。但實(shí)驗(yàn)所需的回波數(shù)據(jù)需要基于衛(wèi)星載體飛行采集,目前尚無(wú)法獲得實(shí)際數(shù)據(jù),因此本文主要采用模擬機(jī)載數(shù)據(jù)進(jìn)行驗(yàn)證,實(shí)驗(yàn)所需參數(shù)配置如表3所示。

表3 SAR回波模擬參數(shù)配置Table 3 SAR echo simulation parameter configuration
將模擬得到的回波數(shù)據(jù)傳輸?shù)紻SP端進(jìn)行成像處理,并將最終成像結(jié)果發(fā)送到上位機(jī)顯示,圖14(a)、圖14(b)和圖14(c)分別是目標(biāo)場(chǎng)景圖、仿真結(jié)果和DSP處理結(jié)果。

圖14 成像結(jié)果對(duì)照?qǐng)DFig.14 Comparison of imaging results
由圖14可知,目標(biāo)場(chǎng)景中的建筑、車(chē)輛等信息被成功分辨出來(lái),驗(yàn)證了算法的準(zhǔn)確性,此外,基于國(guó)產(chǎn)化信號(hào)處理機(jī)實(shí)現(xiàn)的成像算法結(jié)果與理論仿真結(jié)果是一致的,充分驗(yàn)證了基于FT-M6678多核DSP的成像處理架構(gòu)的有效性與可靠性。
本文主要采用了編譯器優(yōu)化和內(nèi)聯(lián)函數(shù)循環(huán)展開(kāi)的方式對(duì)代碼進(jìn)行優(yōu)化。優(yōu)化完成后,使用DSP內(nèi)部計(jì)時(shí)函數(shù)對(duì)算法各模塊的運(yùn)算時(shí)間進(jìn)行統(tǒng)計(jì),表4給出了優(yōu)化前后各模塊處理時(shí)間。

表4 優(yōu)化前后各模塊耗時(shí)統(tǒng)計(jì)Table 4 Time statistics of each module before and after optimization s
由表4可知,優(yōu)化后算法各模塊加速效果顯著。在輸入回波數(shù)據(jù)大小為8 192×2 048(方位向×距離向)的情況下,該軟件處理架構(gòu)能夠在3 s內(nèi)獲得一副8 192×2 048的SAR圖像,可以滿足實(shí)時(shí)處理需求。
本文基于FT-M6678多核DSP設(shè)計(jì)適用于星載雙基FMCW SAR成像算法的并行處理方案,并對(duì)算法流程中的補(bǔ)償處理、轉(zhuǎn)置、距離徙動(dòng)校正和方位脈壓模塊進(jìn)行流程設(shè)計(jì)與資源分配,然后通過(guò)編譯器優(yōu)化和內(nèi)聯(lián)函數(shù)循環(huán)展開(kāi)的方式優(yōu)化代碼,提高程序性能。最后,對(duì)比仿真結(jié)果與調(diào)試結(jié)果驗(yàn)證該軟件架構(gòu)可以滿足星載FMCW SAR成像的準(zhǔn)確性與實(shí)時(shí)性需求。后續(xù)可以將單片F(xiàn)T-M6678處理器拓展至多片協(xié)同處理,提高系統(tǒng)成像效率。