秦 華,周 沫,察 豪,沈 括
(1.海軍工程大學海洋電磁環境研究所,湖北 武漢 430033;2.中國人民解放軍92823部隊,海南 三亞 527000)
目前,雷達正在向數字化和軟件化的方向發展,軟件雷達采用開放式、標準化、通用化的硬件平臺,通過現場加載的模塊化軟件實現雷達的各種功能,使軟件雷達擁有多功能、多模式的發展潛力,同時具有研制和改進周期短、費用低、維護方便等諸多優勢。因而,近年來成為相關領域的研究熱點。
一直以來,軟件雷達實現的瓶頸問題之一是實時性問題。其中信號處理的實時性更為突出,因而相當一部分工作都是集中在信號處理的軟件化工作上,研究的主流方案一般都采用軟件和硬件耦合緊密的多DSP+FPGA板實現[1-3]。近年來,基于通用計算機平臺的計算機圖形處理器 (graphic process unit,GPU)運算能力的提升逐漸可為軟件雷達的實現提供硬件支持[4-6]。目前,GPU的主要用途由圖形渲染已經過渡到通用計算方面,其含義也已由圖形處理器演變為通用處理器。GPU屬于眾核架構,擁有數以百計的計算單元,單精度浮點處理能力已超過1 TFlops,同時其雙精度浮點處理能力也得到了加強,最高可達到600 GFlops。針對基于GPU架構的并行計算研究也成為熱點。在GPU加速雷達信號處理領域,文獻[7]提出基于GPU對軟件雷達體系的設計,主要工作集中在信號的下變頻和I和Q兩路的分解。文獻 [8]提出利用GPU硬件加速來提高連續波雷達的頻譜分析和譜峰搜索實時性,將頻譜分析和譜峰搜索移植至GPU進行運算,有效地縮短了系統的整體響應時間。
本文首先針對GPU的設備架構設計雷達信號處理的執行配置,然后利用GPU細粒度線程并發執行的特點,設計雷達信號處理各個模塊在GPU上的任務映射和信號處理并行算法,最后仿真和實驗結果證明了該方案的可行性。
軟件化雷達的硬件平臺由天線系統、變頻組件、A/D采樣組件、通用處理計算機和雷達終端設備組成,如圖1所示。

圖1 軟件雷達系統組成框圖Fig.1 Composition diagram of software radar system
雷達接收信號在變頻組件內經下變頻轉換為中頻信號,送到高速A/D采樣器件,轉換為數字信號送通用處理計算機進行信號處理,雷達信號的檢測和處理由軟件來實現。由于雷達信號處理過程呈流水線模式,數據采樣率高,通用處理計算機利用CPU完成預處理并控制信號處理的任務調度和負載分配,按照雷達信號處理流程,將數據通過PCI-E總線分塊傳輸至顯存,利用GPU特有的 SIMT(Single Instruction Multiple Thread)方式實現線程并行化計算。每個脈沖重復周期 (PRF)所包含的采樣數據處理的方式相同,利于發揮GPU多線程、細粒度并行處理的優勢。處理過程通過創建流來異步執行,使得前一個脈沖重復周期數據的計算與下一個周期數據流的傳輸并行進行,最大程度地重疊通信與計算的時間,如圖2所示。

圖2 雷達信號處理并行執行過程Fig.2 Parallel execution of radar signal processing
訪存優化是提高GPU多線程并行計算的重要途徑[9]。為提高數據傳輸帶寬,在本文研究過程中,對采樣點開辟頁鎖定內存,通過GPU的zero-copy功能將主機端指針映射到GPU地址空間,信號處理模塊中的內核函數可直接進行主機和設備端的通信,減少分配顯存和數據拷貝的時間;采用紋理存儲器來保存低通濾波器系數,使用紋理內核函數來讀取紋理存儲器。紋理存儲器的存儲方式為只讀,可以通過緩存加速訪問以優化空間局部行為[10];共享存儲器的訪存速度幾百倍快于全局存儲器,應用于雷達信號處理中的矩陣轉置,脈沖積累及恒虛警檢測,把采樣數據分批劃分到共享內存,通過共享存儲器合作計算可獲得更好的加速性能[11]。
雷達信號處理包括正交相位檢波、脈沖壓縮、動目標顯示 (MTI)/動目標檢測 (MTD)、積累和恒虛警處理等。利用GPU進行信號處理并行運算中的重要部分就是將計算映射到抽象的線程,即合理安排當前線程所負責的計算和充分利用各種存儲單元的優勢。
正交相位檢波的目的是把中頻信號轉換成零中頻的I和Q兩路正交信號,這里采用直接中頻采樣的數字下變頻技術。雷達接收機接收的中頻數字信號可表示為

式中:fIF為中頻信號的中心頻率;A(iTs)和φ(iTs)分別為信號的幅度和相位;Tr為脈沖寬度;Ts為采樣時間間隔。采樣頻率fs根據帶通采樣定理確定,Ts=1/fs。S(iTs)與內核函數產生的正交混頻信號cos(2πifIFTs)和sin(2πifIFTs)點乘,低通濾波,得到零中頻復包絡信號

執行內核函數的每個線程按合并訪問條件,訪問全局存儲器中的中頻信號采樣點。每個采樣點作為一個處理單元依次映射到線程中,通過線程和塊的索引來計算該線程所需要處理數據的地址。每個線程的索引號與當前子任務的信號采樣值一一對應,并根據所對應的全局索引號并行執行,以取代CPU算法中關于復數點乘、內插和濾波的循環。數字低通濾波器的系數可通過仿真計算得到。因為紋理存儲器有高速片上緩存,可以利用紋理緩存提高數據讀取速度,所以濾波器系數以權庫的形式保存在紋理存儲器,在計算正交相位檢波模塊時讀取。
當時寬帶寬積較大時,采用頻域FFT法進行脈沖壓縮遠小于時域相關法的運算量,線性調頻的脈壓系數為復包絡信號s(iTs)的共軛翻轉,濾波器的單位脈沖響應表達式為

每個線程獨立維護采樣點數值和濾波器系數,線程之間并行執行傅離葉變換和復數點乘。采樣數據長度為i點,需要將信號和匹配濾波器系數做2N≥i點離散傅離葉變換(DFT)。將雷達回波與匹配濾波器頻域響應系數相乘,再經過IFFT變換,得到脈沖壓縮處理結果。
工程中應用較多的是由2個固定一次對消器級聯的固定二次對消器,實現方式如圖3所示。
其時域表達式為

式中x(iTs,m)為第m個脈沖重復周期上第iTs時刻的I和Q兩路數字信號。

圖3 雙延遲對消器結構Fig.3 Composition of the double canceller
根據對消器設計,開辟的顯存空間尺寸為輸入回波信號尺寸的級聯倍數,用以存放脈沖壓縮后連續的回波數據。每個脈沖壓縮后的回波數據以“先進先出”的方式依次存放在顯存中。利用線程索引號并發執行脈沖重復周期內數字信號的迭代運算,每個線程分別維護采樣值經延遲線加權與相同距離分辨單元采樣點隔周期相減。
動目標檢測的原理是在MTI后串接一窄帶濾波器組來覆蓋整個重復頻率的范圍,實質是對不同通道進行相參積累。從運算量角度考慮,可采用FFT濾波器組進行濾波處理。在進行MTD運算時,將相鄰m個重復周期的數據作為一維數組存儲起來,采用棋盤劃分的方式實現矩陣轉置,對其相同距離單元即矩陣每行的數據進行DFT運算。
視頻積累在包絡檢波器后完成,常用的幅度檢波器是線性檢波器。利用回波脈沖間的相關性進行累加,提高目標的信噪比,其時域表達式為

式中M為回波脈沖積累數。這里可以利用共享存儲器的線程通信,將網格劃分為二維數組結構,運算時將M個脈沖重復周期的i個采樣點轉置成一個i×M的矩陣,整個線程網格劃分成i個block,M個相同距離單元采樣點從顯存拷貝至線程塊中的共享存儲器,采用并行規約算法求和,每個線程塊處理1行數據,最后調用_syncthreads()函數進行柵欄同步,將每個block的結果寫回全局存儲器。通過合理地利用共享存儲器做中間數據的訪存和線程通信,可以減少對全局存儲器重復讀取次數,避免全局數據訪問延遲,有效提高算法效率。
均值類恒虛警檢測算法需要求取每個距離單元兩側各n/2(n=4,8,16…)點的數據和,對于被檢測單元其前面或者后面序列數不足n/2點的,則取被檢測單元兩側距離單元的共同均值,實現原理如圖4所示。

圖4 均值類恒虛警原理圖Fig.4 Composition diagram of the mean-CFAR
為避免頻繁地從全局存儲器中讀取數據,將數據從全局存儲器分段拷貝至線程塊內的共享存儲器。但是相鄰的線程塊之間前線程塊的后n/2個數據元素與后一個線程塊的前n/2個數據元素的區域重疊。為了避免線程之間訪問競爭,本文在這里采用共享存儲器數據復用,通過復制檢測點前后n/2個數據,讓每個線程塊單獨計算一個元素前后對應點數的序列和,這樣每個線程塊完成序列中一段連續區域的求均值運算,其結果作為門限值與檢測點作比較。
為驗證提出的基于GPU的雷達信號處理并行算法的加速性能,構建上述完整的雷達信號處理流程,獲得雷達中頻信號在不同采樣頻率下的執行時間,并與CPU運算結果進行比較,計算過程采用2套GPU計算運算平臺,GPU平臺1為NVIDIA Tesla C2050,GPU平臺2為NVIDIA GT9400,基于Fermi架構Tesla C2050,擁有448個CUDA核心,最高可實現1 Tflops單精度峰值性能。
CPU平臺為Intel Core i7@2.67 GHz處理器,CPU和GPU的運算模型和運算參數相同。要強調的是,基于CPU的信號處理算法中的循環和迭代利用OPENMP展開并行執行,并且利用英特爾數學核心函數庫 (MKL)實現傅立葉變換。
算例設計的雷達信號形式是線性調頻信號,動目標顯示和動目標檢測是雙延遲線對消器和8點FFT多普勒濾波器組。由于進行脈沖對消的頭2個重復周期的回波信號只有在第3個脈沖回波信號到達時才能使用,因此以脈沖重復周期為單位完成一次完整的中頻信號處理過程,需要進行10次正交相位檢波和脈沖壓縮、8次動目標顯示及1次動目標檢測、脈沖積累和恒虛警檢測。由于工程上脈沖重復周期在1.5 ms左右,各種雷達工作機制差別大,這里設雷達中頻信號的中心頻率30 MHz,中頻帶寬4 MHz,根據帶通采樣定律,采樣點范圍取1×104~1×105。表1給出了仿真算例執行時間結果。

表1 三種計算平臺的執行時間Tab.1 Processing time of three computing platform
其中,GPU計算平臺數據包含了采樣數據在內存和顯存之間的傳輸時間。由表1可以看出,CPU平臺無法在10個脈沖重復周期內完成中頻信號實時處理。GPU平臺2雖然在運算速度上與CPU平臺相比最高提升了1.5倍左右,計算執行時間仍然超出15 ms,而且在10000個采樣點的情況下,GPU計算平臺與CPU計算平臺相差不大。這是因為采樣點數量較少時,不能最大發揮GPU多線程細粒度的并行計算能力,且數據的傳輸時間在整體執行時間中的比例提高,GPU計算的“存儲墻”凸顯出來,并且GT9400屬于低端圖形處理器,內部只有16個核處理器,并行運算能力有限。GPU計算平臺1采用專用科學計算圖形處理器,隨采樣點數量增加,與經過優化的CPU程序的執行速度比r1不斷提高,執行速度比最高達到20倍 (見圖5)。
GPU計算平臺1在完成100000個采樣點的信號處理后,其執行時間略大于15 ms。為避免混頻,設采樣頻率為50 MHz,采樣點數量為75000點的情況下,GPU計算平臺1能夠實時完成雷達的整個信號處理流程。

圖5 GPU計算平臺與CPU計算平臺的執行速度比Fig.5 Speed rate of GPU computing platform compared with the CPU computing platform
利用某型雷達脈壓后提供的采樣數據進行功能驗證和分析,實測數據的方位距離分辨單元為4096×10000個采樣點,驗證結果如圖6~圖7所示。

圖6 一個脈沖重復周期原始數據Fig.6 One pulse repetition period of raw data

圖7 脈沖周期信號處理后數據Fig.7 Pulse repetition data after signal processing

圖8 原始數據P顯視頻Fig.8 Radar display of raw data

圖9 信號處理后P顯視頻Fig.9 Radar display of signal processed data
從原始數據中連續抽取10個脈沖重復周期的信號仿真,圖6是其中一個脈沖重復周期原始數據,由圖7可得到,依次經過MTI/MTD、脈沖積累和恒虛警檢測后,雜波和噪聲得到了有效的抑制,目標回波的信噪比提高。圖9是表示原始采集數據經過信號處理的P顯效果。可以看出,雷達回波中的海雜波,噪聲、地物雜波和云雨雜波強度減弱,并且通過相參積累和恒虛警檢測后,噪聲所淹沒的遠處小目標也能被發現。實測數據經過信號處理的結果證明了設計流程較好地達到雷達信號處理的功能。
本文設計了基于CPU-GPU的雷達信號處理構架,并在此架構上實現了基于GPU的信號處理并行算法。仿真和實驗結果證明,基于GPU加速的雷達信號處理能夠實時完成信號處理的整個流程。軟件雷達信號處理模型、并行線程的映射和訪存的優化等方面都在本文所提出的加速信號處理算法中得以實現,而且其模塊化、通用性和可移植性與傳統的硬件設計相比有著很大的優勢,從而使GPU加速軟件雷達信號處理運算進入工程應用階段奠定了基礎。
[1]DEBATTY T.Software defined RADAR-A state of the art[C].In:Gini F.Proceedings of 2nd International Workshop on congnitive Information Processing.Elba Island:IEEE PRESS,2010:253 -257.
[2]ZHANG Hui,LI Lin,WU Ke,Software-defined six-port radar technique for precision range measurements[J].IEEE Sensors Journal,2008,8(10):1745 -1751.
[3]DENG Yi,HU Shan-qing,LONG Teng.A miniaturized universal architecture for radar signal processing systems[C].In:Lesturgie M.Proceeds of International Conference on Radar.Guilin:IEEE PRESS,2009:1 -4.
[4]LI Zhong-zhi,WANG Xue-gang,YU Xue-lian.Orthogonal software architecture design for radar dataprocessing system with object-oriented component and com interface[J].WSEA Transaction on Computers,2011,10(2):61 -70.
[5]MALANOWSKI M,PORCZYK K J,et al.Real-time software implementation of passive radar[M].Radar Conference,2009:33-36.
[6]ESSEN S S,et al.Synthetic aperture radar for all weather penetrating UAV application(SARAPE)-project presentation[C].Synthetic Aperture Radar,2012,EUSAR,9th European Conference,290 -293.
[7]SONG J P,ROSS J A,SHIRES D R.Hybrid core acceleration of UWB SIRE radar signal processing[J].IEEE Transactions on Parallel and Distributed Systems,2011,22(1):46 -57.
[8]熊超.基于GPU的連續波雷達頻譜分析與譜峰搜索技術研究[D].長沙:國防科學技術大學,2011.XIONG Chao.Research on spectral analysis and peak search of continuous wave radar based on GPU hard ware[D].Changsha:National University of Defense Technology,2011.
[9]肖漢.基于CPU+GPU的影像匹配高效能異構并行技術研究[D].武漢:武漢大學,2011:91-92.XIAO Han.Research on high efficiency heterogeneous parallel computing based on CPU+GPU in image matching[D].Wuhan:Wuhan University,2011:91 -92.
[10]張保,董曉社,白秀秀,等.GPU-CPU系統中基于剖分的全局性能優化方法[J].西安交通大學學報(信息科學版),2012,46(2):17 -23.ZHANG Bao,DONG Xiao-she,BAI Xiu-xiu,et al.Profiling based optimization method for CPU-GPU heterogeneous parallel processing system[J].Journal of Xi'an Jiaotong University,2012,46(2):17 -23.
[11]楊靖宇,張永生,李正國,等.遙感影像正射糾正的GPUCPU協同處理研究[J].武漢大學學報(信息科學版),2011,36(9):1043 -1046.YANG Jing-yu,ZHANG Yong-sheng,LI Zheng-guo,et al.GPU-CPU cooperate processing of RS image orthorectification[J].Geomatics and Information Science of Wuhan University,2011,36(9):1043-1046.