文獻標識碼: A
文章編號: 0258-7998(2014)09-0004-03
MIMO雷達是近十年來發展起來的新體制雷達,與普通相控陣雷達相比,MIMO雷達具有低截獲概率、高速度分辨能力、高角分辨力、可同時識別多個目標等優點[1]。國內外學者們在MIMO雷達技術的諸多方面進行了深入而全面的理論研究,其中以美國麻省理工學院林肯實驗室和貝爾實驗室的研究尤為深入[1],但涉及工程實現方面的文獻很少。
由于軟硬件發展水平的限制,MIMO雷達理論的研究領先于雷達系統的應用[2],而普通的雷達信號處理機的設計相對比較成熟,這方面的文獻中實現的具體途徑主要有兩種方式,一種是基于FPGA+DSP的架構[3-4],另一種是基于FPGA+PowerPC的架構[5],以第一種的應用為主流。MIMO雷達信號處理需要接收多個通道的數據,在多波束采集后的雷達回波數據量非常大,實現多波束雷達回波數據信號處理的關鍵是并行同步和實時處理。近幾年來,DSP生產商紛紛采用多核架構來滿足日益增長的系統實時處理性能要求,實現更快速的數據信號處理。TI公司于2010年推出了基于KeyStone架構的、集成了RISC和8核DSP的高性能信號處理器TMS-
320C6678(簡稱C6678),初始設計背景為圖像領域的應用,現在已經推廣到視頻處理、語音識別等領域[6-7]。
本文以C6678為平臺,研究了MIMO雷達信號處理的實現方法。首先,介紹了MIMO雷達信號處理的基本原理以及基于C6678多核芯片的系統架構和編程開發特點,并基于算法給出了并行實現中的關鍵技術及解決方法,然后給出實驗評估并進行了測試性能等方面的對比分析,最后得出基于多核DSP的MIMO雷達信號處理方法,實現了在降低成本和提高性能等方面的有效性。
1 MIMO雷達信號處理的原理
本設計的MIMO雷達是基于正交波形雙基地集中式MIMO而構建,發射端各子通道發射相互正交的信號,形成低增益寬波束;對于接收端,為恢復出各個發射端子通道內由單個發射信號形成的回波,需對每個發射波形進行匹配濾波,再根據發射陣列的陣元布置,進行接收端等效發射波束形成,最后進行動目標檢測、點跡提取[8]。根據參考文獻[8]的分析,先DBF再匹配濾波處理的方式較先匹配濾波再DBF的方式更節約計算資源,因此本文采用了先進行DBF再匹配濾波的處理方式,如圖1所示。
2 MIMO雷達信號處理的硬件架構
2.1 核心平臺介紹
C6678是基于KeyStone構架的高性能多核DSP,片內集成了8個C66x處理器核,每個核都支持定點和浮點處理功能。其主要性能指標是單核最高工作頻率1.25 GHz,基于C66x 定點/浮點處理器核,累計處理速率高達10 GHz,單核最高可達40 GMAC的定點計算能力和20 GFLOPS的浮點運算能力;存儲器空間為每個核32 KB L1P、32 KB L1D、512 KB L2、4 096 KB多核共享存儲區MCSM、8 GB可尋址的DDR3存儲地址空間;在處理器內部支持高效EDMA3傳輸方式,可在處理器內部存儲空間L2、共享MCSM、外部DDR3之間進行高效的數據傳輸;集成了x4 Serial RapidIO、x2 PCIe、x4 Hyperlink、x2 ethernet等眾多高速通信接口,允許與其他處理器節點進行高效的數據交換;支持多種基于信號量的通信機制進行核間通信[9]。C6678的多核結構不僅縮小了硬件規模,而且還降低了整體功耗,其核間任務調度及高性能程序優化器、8級并行流水指令集[10]等條件為實現并行信號處理算法提供了有效支撐。
2.2 硬件架構設計
本文設計了基于VPX總線的數據采集板和信號處理板組成的信號處理系統平臺,核心芯片均為C6678芯片。數據采集板集成了Xilinx Virtex-7系列的高性能FPGA和1片C6678,接口設計為光纖、網絡等多種方式,用于數據的接收和預處理。信號處理板采用8片C6678構成計算密集型結構,用于完成MIMO多通道并行的信號處理算法。系統結構示意圖如圖2所示。
3 算法的并行實現
3.1 算法映射模型
3.1.1 基本模型介紹
應用多核處理器的第一個步驟就是確定任務并行性,并選擇一種最合適的處理模型。兩個最主要的模型分別是主/從模型和數據流模型。主/從模型是集中控制,分布式執行,主核負責把任務分配到其他核,從核之間沒有通信;數據流模型就是分布式控制和執行,任務分級流水執行,核之間有相互通信[10]。本系統采用了兩種方式結合的方式,其中各個板卡內部采用了主/從處理模型,板卡之間采用了數據流模型。
3.1.2 算法分割及映射
本實驗系統采用8個發射天線和8個接收天線分置的結構,接收波束為7個方位,發射波束為7個方位。數據量為4K點,相干處理周期為8,動目標處理時的FFT點數為16,脈沖重復周期為2 ms。功能模塊實現接收波束形成、匹配濾波、等效發射波束形成、動目標處理、目標搜索和目標跟蹤的處理功能,進而獲得目標的距離、角度和速度信息。圖3為處理流程框圖。
任務的分解是:Task A為公共數據收發和準備及同步控制觸發;Task B為數據格式的預處理及接收DBF;Task C為公共數據收發和準備及同步控制觸發;Task D為匹配濾波、發射DBF雜波抑制、相參積累、目標搜索或者目標跟蹤。
具體的算法映射如圖4所示,數據采集板上DSP的所有核加載同樣的一個工程 ,完成Task A和Task B;信號處理板所有的核加載同樣的一個工程,完成Task C和Task D。數據流向是數據采集板的DSP0-Core0完成Task A,Core1~Core7 分別完成Task B,然后通過板間IPC把數據傳送到信號處理板的DSP0~DSP6,通過Task C之后進行Task D,然后再把數據送回數據采集板的Core0。
3.2 關鍵技術及方法
3.2.1 通信與同步
在進行接收DBF和發射DBF之前需要進行多核同步。TI提供了多種成熟的IPC接口,本設計中采用了效率比較高的Notify Module 進行同步。Core0循環接收外部傳輸過來的原始數據存儲到DDR3之中,每次接收到的數據分別向Core1~Core7發送一個Notify消息,Notify消息并不在多核之間進行數據的拷貝,僅進行共享內存數據的所有權轉移,極大地節省了多核間通信的時間。每個Core的TaskB任務收到Notify消息后,直接從對應的DDR3共享內存地址中讀取數據即可。
在板間傳輸數據需要進行板間的通信和同步,TI沒有提供DSP節點之間的IPC,因此在本系統中自行開發了DSP間IPC。首先開發了RapidIO底層驅動,然后通過RapidIO接口進行系統路由配置,之后完成IPC驅動的搭建,它完成的功能是進行DSP的DDR3之間的數據拷貝。
3.2.2 核內數據傳輸
每個核內部采用了DMA方式實現MCSM存儲區和DDR3之間的通信,這種方式傳輸速率比較穩定。C6678處理器內部集成了3個高速的EDMA控制器,允許在處理器內部的存儲區之間進行不需要處理器參與的高速數據傳遞。本信號處理算法中,每個核啟動獨立的EDMA3傳輸通道分次將DDR3中的數據傳輸到MCSM/L2中進行計算,之后再將計算結果通過EDMA3傳輸通道從MCSM/L2傳輸給DDR3。
L2、MCSM和DDR3之間的EDMA3通信性能在采用查詢方式下的測試結果如表1所示,測試結果為100個周期的平均值。
3.2.3 高速緩存一致性考慮
C6678處理器核設計了二級Cache。當處理器核訪問內存中的一段地址時,存在兩種可能,即Cache命中或Cache缺失。Cache命中時處理器核可以快速直接從Cache中獲取內存數據進行處理。Cache缺失時,處理器核就需要花費較長的時間先將數據從內存調入到Cache中,再從Cache中獲取數據進行處理。處理器的這種內存訪問機制就帶來了Cache和內存的數據一致性問題。在本信號處理算法中,Cache一致性問題發生在以下情況:(1)多處理器核對MCSM或DDR3中一段數據進行共享訪問;(2)有EDMA3參與的對MCSM或DDR3中一段數據的訪問。當發生此兩種情況時,需要執行Cache一致性操作,以確保數據訪問的正確性。
3.2.4 基于平臺的算法優化
設計中除了采用了通常的代碼優化準則外,基于平臺的優化主要包括以下幾個方面:數據存儲區采用兵乓結構,使得數據傳輸和算法計算可以同時進行;算法模塊采用細粒度設計,通過CCSV5提供的高性能編譯優化參數,并告訴編譯器更多關于數據的信息;使用內聯指令做SIMD的處理;存儲區和Cache 優化設計。這些優化方法的綜合利用比不進行優化的效率提高達約50倍。
4 實驗評估及分析
ADSP-TS201S幾乎是ADI公司的最高性能信號處理器,也是當前雷達信號處理領域主流的硬件平臺的核心,采用其搭建的平臺(1塊帶有4個DSP的預處理板,8塊帶有8個DSP的信號處理板)與TMS320C6678的搜索處理關鍵算法的測試性能對比如表2所示,測試結果為100個周期的平均值。首先是TMS320C6678降低了硬件規模從而降低了成本,其次提高了效率,還有就是共享存儲區的運用減少了傳輸延遲。整體時間比為4.5:1。
由實測結果可見,TMS320C6678平臺由于其高性能的多核處理方式,適合MIMO雷達信號處理這類需要同步進行并且實時處理的場合應用,但也應注意到C6678的存儲區較小,對于大數量的使用(大于4K點)可能達不到預期的加速比,還有待于進一步驗證。該MIMO雷達信號處理系統在工程樣機中運行良好,通過小規模硬件系統和較低的功耗達到了信號實時處理和運算快速準確的要求。
參考文獻
[1] Li Jian.STOICA P.MIMO radar signal processing[M].John Wiley & Sons,Inc.,2009.
[2] 陳浩文,黎湘,莊釗文.一種新興的雷達體制—MIMO雷達[J].電子學報,2012,40(6):1190-1198.
[3] 高廣坦.基于TS201平臺的雷達信號處理機設計[J].信息化研究,2010,36(11):17-19.
[4] 周濱,謝曉霞,傅其祥,等.基于多DSP的高速通用并行處理系統研究與設計[J].電子設計工程,2012(17):175-178.
[5] 史鴻聲.基于PowerPC的雷達通用處理機設計[J].雷達科學與技術,2011,9(2):140-149.
[6] 彭益智,霍家道,徐偉.一種基于TMS320C6678的JPEG編碼算法并行實現方法[J].指揮控制與仿真,2012,34(1):119-122.
[7] 吉立新,劉偉偉,李邵梅.基于TMS320C6678的語種識別并行算法設計與實現[J].電子技術應用,2012,38(10):37-40.
[8] 葉勝輝.正交波形MIMO雷達技術及其在雙基地雷達中的應用[D].成都:電子科技大學,2006.
[9] Texas Instrument.TMS320C6678 multicore fixed and floating-point digital signal processor[Z].2011.[10] Texas Instrument.Multicore programming guide[Z].2009.