劉靜寒 胡 虹
(中國電子科技集團公司第三十八研究所 合肥 230088)
合成孔徑雷達[1](synthetic aperture radar,SAR)成像技術,具有全天候、全天時的工作能力,作用距離遠,抗干擾能力強,使其在軍事目標探測和識別方面發揮著巨大的作用。SAR和慣導的組合即可用于導彈的末段制導,也可為導彈的中段導引控制提供信息。SAR成像過程中,雷達平臺與成像區域的相對高度是影響斜地幾何校正精度的重要參數,高度誤差會引起明顯的幾何形變并影響景象匹配過程[2]。彈載雷達測得高度值來確定導彈的空間高度,結合景象匹配提供的導彈平面二維坐標,來進行彈目位置定位完成對慣導數據的修正。因此導引頭系統相對地面目標的精確高度獲取對導彈中末段制導精度有著重要意義。彈載雷達受到空間和重量等因素的限制,對雷達設備量的限制極為苛刻,高集成度的雷達信號處理系統顯得極為重要。實際工作中,對于大帶寬、高精度及高實時性的信號處理系統的需求,基于單核DSP器件已不能滿足其系統性能要求,多核DSP已經成為數字信號處理發展的必然選擇。基于美國德州儀器(Texas Instrument)推出的TMS320C6678八核DSP平臺,在其KeyStone[3-5]架構下,分析和研究了彈下點OCOG測高算法及其實現方法,然后對測高回波數據在多核DSP上進行算法實現以驗證算法并行實現的可行性,最后對該方法的準確性和實時性進行了驗證,結果表明能夠滿足系統指標的要求。
彈下點測高幾何關系如圖1所示。

圖1 彈下點測高幾何關系
導彈沿AC方向飛行,AC方向即合速度方向V方向,天線波束中心指向AO方向,波束中心指向和合速度的夾角為θ。
彈下點測高采用線性調頻信號能夠提高測高精度并且保證作用距離,發射信號模型為
(1)
其中t為快時間,Tp為脈沖寬度,Kr>0為調頻率,“rect[·]”為矩形窗函數
(2)
雷達接收到彈下點所在距離單元回波之后,將其進行混頻和正交相干檢波成為正交雙通道信號,其回波信號為
(3)
其中,A為與天線增益、地面垂直散射系數和距離分辨單元面積有關的常數,c為自由空間中的電磁波傳播速度,R(ta)為ta時刻雷達到該點目標的高度信息。
雷達以一定脈沖重復頻率發射線性調頻信號,收到回波后處理流程如圖2所示。

圖2 測高算法處理流程
1)距離向匹配濾波:距離向參考匹配濾波函數H(t)為
(4)
2)方位匹配濾波:方位匹配濾波在時域表達式為
(5)
其中fdc=2vcosθ/λ為該距離單元對應的多普勒中心頻率,Ka=-2v2sinθ/(λR)為多普勒調頻率,R為距離單元,fdc,Ka可以從慣導參數和幾何關系中進行估計。
3)OCOG法估計回波半功率點:
方位向匹配濾波后提取零頻附近的回波,即圖中O點對應多普勒的回波進行前沿估計;其中OCOG回波前沿[6]提取方法為:計算波束中心點方位波束寬度覆蓋范圍內斜距差對應距離窗寬,在重心基礎上向前取該窗寬一半的位置用于計算實際斜距。重心計算公式為
(6)
(7)
其中,G為回波重心,n為采樣點序號,pn為回波信號幅度,W為等效矩形脈沖寬度;回波前沿半功率點為ΔN=G-W/2,H為估計高度,Rτ為距離單元長度,ΔN為回波半功率點,Rmin為距離波門。
H=(Rmin+ΔN·Rτ)
(8)
隨著作用距離、分辨率等系統指標要求越來越高,系統運算量也越來越大,同時彈上系統受到體積和重量的限制,傳統信號處理器ADSPTS201已經不能滿足系統實時性要求,該測高算法主要采用TI公司提供的多核DSP芯片TMS320C6678實現。該DSP芯片擁有八核處理器,運算能力非常強。
1)一片C6678擁有8個CPU核,每個核內部有32KB L1D、32KB L1P、512KB L2RAM,共享4MB L3SRAM,每塊板卡外掛4GB DDR3 SDRAM。
2)C6678單片處理能力:內核主頻1.25GHz,浮點運算能力達到160GFlops。
3)C6678具有豐富的外設接口,支持1×、2×、4×模式的SRIO接口,2×模式的PCIe接口,芯片之間通過HyperLink接口互聯,支持千兆以太網GbE等接口,具備大帶寬數據傳輸能力[7]。
針對OCOG測高算法,硬件單板設計如圖3所示,該板卡由兩片TMS320C6678和一片XCVX7690T組成的運算處理核心,DSP和FPGA之間通過高速SRIO實現高速互聯。

圖3 硬件平臺架構
導彈在飛行過程中速度非常快,要求沿航向每25m網格出一次測高結果,因此對系統的實時性要求非常高。本系統采用兩塊板卡,四塊DSP 的架構,每片DSP處理一個CPI的回波數據,四片DSP乒乓操作,處理不同CPI的回波數據。在一個CPI內方位處理脈沖數為Azmlength,每片DSP八個核按照方位脈沖處理數分配任務,每個核都處理1/8Azmlength的回波數據。
實時回波數據本身比較大,先存放在DDR3上,再通過EDMA把回波數據從DDR3搬到L3上,其他計算變量和緩沖都放在片內的RAM上。
L3有4MB,待處理的回波和一些共用的變量存放在L3地址上,內存分配如表1所示。

表1 L3內存分配
L2有512KB,主要存儲處理過程中的緩存數據,由于L2是每個核獨有的,每個L2可以處理一個方位脈沖的回波數據,內存分配如表2所示。
在本設計中,將內部的L1存儲器作為Cache使用,用以加速程序執行效率,程序和內部數據緩沖區放置在每個核的L2存儲器中,將接收到的回波數據按矩陣格式放置在外部存儲器DDR3中。具體處理流程如圖4所示。

圖4 OCOG測高算法在C6678上處理流程
1)0核通過SRIO接收到一幀回波,進行系統參數解析;
2)0核每次通過EDMA將FPGA通過SRIO發送過來的回波搬移到DDR3上進行存儲,同時進行慣導參數的解析;
3)0核在L3地址上構造匹配濾波函數,并通過FFT將匹配濾波函數從時域轉換到頻域;
4)0核再通過EDMA將DDR3上的回波數據搬移到L3地址上,通過將回波數據格式轉換浮點數形式的函數可以將回波從L3地址搬移到L2地址上,此時八核可以同時進行距離向匹配濾波處理,即每個核處理一條方位脈沖的回波,回波通過FFT從時域轉到頻域,然后跟匹配函數相乘再通過IFFT轉到時域,完成匹配濾波;濾波處理完成以后,八核之間進行同步操作,八條距離線數據通過存儲方案存儲在DDR3矩陣里面;
5)0核在L3地址上構造方位向匹配濾波函數,0核從DDR3矩陣中一次讀出八條方位線數據,八核同時進行解交織操作將方位線數據存在L2地址上,然后進行方位向匹配濾波;
6)方位向數據匹配濾波結束以后,0核抽取零頻附近的脈沖數據進行回波前沿估計;
7)0核利用OCOG法估回波的半功率點,進行高度的解算。
利用某型號的實測數據進行分析,輸入的距離向點數為4096點,方位向點數為128點;完成方位向匹配濾波后的結果如圖5所示,零頻的數據如圖6所示,測高結果的誤差如圖7所示;八核并行處理的情況下,TMS320C6678運行頻率為1.25GHz,收數和距離向脈沖壓縮消耗18447777個時鐘周期,測高模塊消耗1145452個時鐘周期,則整個測高處理時間為10.67ms,傳統的ADSPT201處理同樣大小的回波數據則需要45.6ms,對于測高模式,系統要求每個CPI處理流程應小于20ms,因此本文提出的八核并行處理方法能夠大大節約時間滿足實時性要求,并且測高結果與實際高度一致。

圖5 實測數據斜距多普勒圖

圖6 零通道的剖面圖

圖7 測高結果和實際高度的差值
本文首先介紹OCOG測高算法和C6678的基本特征,接著分析OCOG測高算法的任務規劃和具體實現過程,并給出了DSP處理的流程圖,最后通過實測數據處理說明,本文提出的OCOG測高算法并行處理方案的并行處理效率符合期望,能夠滿足系統的指標要求。