牛 炯,申晉晉,陳 倩
(中國海洋大學工程學院,山東 青島 266100)
高頻地波雷達實時信號并行處理方案及實現(xiàn)*
牛 炯,申晉晉,陳 倩
(中國海洋大學工程學院,山東 青島 266100)
近些年,隨著高頻地波雷達技術的發(fā)展,大量的遙感數(shù)據(jù)給實時信號處理帶來了巨大的挑戰(zhàn)。高頻地波雷達信號處理機的主流設計方案通常采用DSP+FPGA技術或基于高性能CPU技術來實現(xiàn)信號的實時處理,但DSP+FPGA方案中系統(tǒng)的軟硬件耦合較為緊密,開發(fā)周期長且不易維護,而高性能CPU技術對計算機性能要求較高,大大增加了硬件成本。在保證信號實時處理的前提下,為了縮短開發(fā)周期,提高系統(tǒng)的可維護性和降低開發(fā)成本,本文基于CPU+GPU架構設計了的信號處理方案,實現(xiàn)了高頻地波雷達實時信號處理的基本流程,獲取了目標的距離信息和速度信息。實驗結果表明,本文提出的CPU+GPU架構下的信號處理方案與同期中央處理器(CPU)運算平臺相比,具有10倍以上的加速比,驗證了方案的可行性。
CPU+GPU; 高頻地波雷達; 實時信號處理; 協(xié)同工作;
高頻地波雷達,又稱為高頻地波超視距雷達,是海上目標大范圍、連續(xù)探測的主要手段,它利用高頻電磁波(3~30 MHz)沿海面繞射傳播的特性,實現(xiàn)海上船只和低空飛機等移動目標和海洋動力參數(shù)的大范圍連續(xù)監(jiān)測[1-3]。因此,高頻地波雷達受到了全球研究機構的關注,其主要研究內(nèi)容涵蓋系統(tǒng)設計、信號處理、雜波抑制、目標提取以及海態(tài)反演等方面。隨著數(shù)字技術的飛速發(fā)展,雷達正向數(shù)字化和軟件化的方向發(fā)展。一直以來,軟件雷達實現(xiàn)的瓶頸問題之一是實時性問題[4]。其中信號處理的實時性尤為突出,因而雷達系統(tǒng)研發(fā)過程中,相當一部分工作集中在信號處理的軟件化工作上,通常對于高頻地波雷達的信號處理機,研究的主流方案有DSP+FPGA板卡方案[5-7]和高性能計算機方案[8]。對于DSP+FPGA方案來說,該方案的軟件和硬件耦合較為緊密,雖然計算效率高、可擴展性好,但開發(fā)周期通常較長,并且不易維護;高性能計算機方案雖然沒有軟硬件耦合的缺點,但其為了滿足雷達實時信號處理的需求,對硬件性能有較高的要求通常需要花費較高的成本。
GPU(Graphic Processing Unit)在傳統(tǒng)上的應用局限在處理圖形渲染計算任務,受軍事視景仿真與圖像處理需求的牽引,GPU的數(shù)據(jù)處理能力取得了飛速的發(fā)展。目前大數(shù)據(jù)量進行FFT運算時GPU已經(jīng)是當前CPU處理能力的幾十倍,而高頻地波雷達數(shù)字信號處理的核心就是FFT,在高頻地波雷達數(shù)據(jù)的前端處理過程中,需要進行大量的FFT運算,經(jīng)實測數(shù)據(jù)處理可知其耗時最長。目前GPU單精度浮點處理能力超過11TFlops,同時其雙精度浮點處理能力也已經(jīng)超過1.4TFlops。因此將GPU應用于雷達數(shù)字信號處理是一種趨勢。近些年已經(jīng)有大量的研究機構將GPU技術用于數(shù)字信號處理。文獻[9]中將GPU用于合成孔徑雷達(SAR)的信號處理,利用GPU通用并行計算,使用CUDA(Compute Unified Device Architecture)實現(xiàn)了SAR成像算法。文獻[10]采用CPU-GPU技術設計了微波雷達終端處理系統(tǒng),數(shù)據(jù)處理加速比達到5.56 。文獻[11]提出一種基于GPU的外輻射源雷達信號處理實時方法,利用GPU的并行處理能力實現(xiàn)了外輻射源雷達信號處理實時處理。GPU在微波雷達領域的應用已經(jīng)較為廣泛,但目前尚未見到將CPU+GPU技術應用于高頻地波雷達數(shù)字信號處理的相關文獻。本文結合高頻地波雷達數(shù)字信號處理的流程及實時處理要求,提出采用CPU+GPU的并行異構模式對高頻地波雷達實測數(shù)據(jù)進行并行處理。
高頻地波雷達回波信號的數(shù)字化處理主要在信號處理機內(nèi)完成,前端數(shù)據(jù)處理流程見圖1。獲取指定長度的原始數(shù)據(jù)后,首先需要對原始數(shù)據(jù)進行預處理,包括去直達波處理、去斜處理和加窗處理,然后對信號進行解距離處理后獲得目標的距離信息,最后對解距離后的數(shù)據(jù)進行解速度處理得到目標的速度信息。
假設高頻地波雷達的發(fā)射波形采用線性調(diào)頻斷續(xù)波(FMICW),發(fā)射信號表示為:
(1)
其中:
為了方便分析,不考慮信號在傳輸過程中幅度的衰減,則接收的回波信號可以表示為:
(2)
(3)
式中:K為單個脈沖重復周期內(nèi)的采樣點數(shù);P為一個調(diào)頻周期的脈沖個數(shù);m為雷達最大探測距離單元。當解距離后數(shù)據(jù)的時間長度滿足設定的積累周期時,對Y(m)進行第二次FFT處理,即解速度處理,可得到目標的速度信息。高頻地波雷達前端信號處理詳細的公式推導見文獻[5]。
圖1 前端數(shù)據(jù)處理流程圖Fig.1 Front-end data processing flowchart
本文提出了基于CPU+GPU架構的信號處理方案,本方案采用CPU+GPU協(xié)同并行的計算來實現(xiàn)高頻地波雷達前端數(shù)據(jù)的處理。
2.1 基于CPU+GPU架構的系統(tǒng)方案
高頻地波雷達的接收站包括接收天線陣列、接收機、信號處理機以及顯控終端等。接收天線陣列主要用于接收來自空間的電磁波,并將雷達回波信號通過饋線傳輸給接收機;接收機主要用于接收來自接收天線陣列的回波信號,并對回波信號進行預處理,同時監(jiān)測空間的電磁環(huán)境。接收機接收到回波數(shù)據(jù)后,需要對原始回波數(shù)據(jù)進行放大、濾波、A/D采樣以及I/Q信號分離等處理,然后將處理后的數(shù)據(jù)傳輸?shù)叫盘柼幚頇C,信號處理機接收到來自接收機的數(shù)字化正交信號(I/Q信號)后,在內(nèi)部對前端數(shù)據(jù)進行預處理(包括去直達波、去斜和加窗)、解距離、解速度、點跡檢測以及雜波抑制等(干擾包括射頻干擾、電離層干擾、海雜波以及瞬態(tài)干擾)相關處理,并對原始數(shù)據(jù)、脈沖壓縮后數(shù)據(jù)、頻域數(shù)據(jù)以及點跡數(shù)據(jù)進行實時存儲,最后將點跡數(shù)據(jù)實時的傳送到顯控終端,在顯控終端對目標點跡進行航跡關聯(lián),并實時顯示目標運動的事態(tài)?;贑PU+GPU架構的信號處理機方案框圖見圖2。
圖2 基于CPU+GPU架構的信號處理機方案框圖
在整個系統(tǒng)中,信號處理機采用CPU+GPU架構,CPU與GPU在信號處理機內(nèi)協(xié)同工作,CPU作為主機(Host),GPU作為協(xié)處理器。CPU、GPU各自擁有相互獨立的存儲器地址空間:主機端的內(nèi)存和設備端的顯存。
2.2 基于CPU+GPU架構的并行處理算法
高頻地波雷達前端數(shù)據(jù)在CPU+GPU架構下協(xié)同并行處理的方案見圖3,其中CPU主要負責邏輯性強的事件處理和串行計算,包括計算需要開辟內(nèi)存的大小、獲取雷達系統(tǒng)參數(shù)、截取指定時長的原始數(shù)據(jù)、清理上一個內(nèi)核函數(shù)、啟動下一個內(nèi)核函數(shù)、數(shù)據(jù)存儲以及RD譜顯示等;GPU則專注于執(zhí)行高度線程化的并行處理事務,包括原始數(shù)據(jù)的預處理、解距離和解速度等處理。
為了保證方案的通用性,系統(tǒng)應該采用模塊化和參數(shù)化設計。CPU根據(jù)系統(tǒng)參數(shù)設置,獲取了指定長度的高頻雷達原始數(shù)據(jù)后,通過PCIE總線將該數(shù)據(jù)傳輸?shù)紾PU,假設該批數(shù)據(jù)的大小為N個字節(jié),則:
N=nfre×nch×nT×TSweep×fs×2×4。
(4)
其中:nfre為雷達載頻數(shù);nch為接收天線陣元數(shù);nT為該批數(shù)據(jù)包含的掃頻周期數(shù);TSweep為掃頻周期;fs為采樣率。
(4)式中乘以2是因為回波數(shù)據(jù)為復數(shù),包含實部和虛部,乘以4是由于獲取的原始數(shù)據(jù)為float型。在GPU內(nèi)對該批數(shù)據(jù)進行預處理和解距離后,獲得的數(shù)據(jù)大小為N1個字節(jié),則:
N1=nfre×nch×m×nT×2×4。
(5)
其中m表示雷達探測的最大距離單元,根據(jù)公式4和公式5可以看出,原始數(shù)據(jù)進行預處理和解距離處理后,數(shù)據(jù)壓縮比為TSweep*fs/m。根據(jù)表1中雷達實際的相關參數(shù),做完解距離處理后,數(shù)據(jù)壓縮比約為100∶1,得到的脈壓后數(shù)據(jù)存儲在GPU顯存中相應的位置,當一個積累周期對應的時域數(shù)據(jù)全部處理完畢后,對其進行解速度處理,得到頻域數(shù)據(jù)??梢?,大量原始數(shù)據(jù)的復雜處理都在GPU內(nèi)完成,利用GPU并行處理的特點,極大的提高了數(shù)據(jù)處理速度,節(jié)省了CPU資源,保證了系統(tǒng)的實時性、穩(wěn)定性和可靠性。
圖3 CPU+GPU協(xié)同并行處理方案
為了更好的理解并行優(yōu)化策略,下面針對CPU+GPU架構下數(shù)據(jù)處理流程的關鍵技術進行介紹,包括CPU/GPU之間的內(nèi)存分配和數(shù)據(jù)傳輸、GPU中的數(shù)據(jù)預處理以及GPU中的FFT處理。
2.2.1 CPU+GPU的內(nèi)存分配與數(shù)據(jù)傳輸
CPU與GPU之間通過PCI Express接口進行數(shù)據(jù)通信。系統(tǒng)所要處理的數(shù)據(jù)首先要傳到Host端的內(nèi)存中即CPU的內(nèi)存中,然后通過PCIE總線傳輸?shù)斤@存,在GPU內(nèi)進行數(shù)據(jù)處理。
首先根據(jù)雷達系統(tǒng)相關參數(shù)計算需要開辟內(nèi)存大小,在Host端開辟相應的內(nèi)存,用來存儲原始數(shù)據(jù)、本振信號數(shù)據(jù)以及窗函數(shù)數(shù)據(jù)等。系統(tǒng)完成一個積累周期的數(shù)據(jù)處理需要調(diào)用多次數(shù)據(jù)預處理函數(shù)和解距離函數(shù),考慮到GPU顯存資源有限,采用在解距離之前一次性開辟出固定大小的內(nèi)存,供解距離時重復使用,在每次解距離之前需要開辟相應大小的內(nèi)存,然后在完成最后一次解距離處理時統(tǒng)一釋放。在GPU 內(nèi)開辟內(nèi)存可以用CudaMalloc函數(shù)來實現(xiàn)。GPU每執(zhí)行一次解距離運算,都需要將nch個接收通道的CIT_base_Num個掃頻周期的數(shù)據(jù)從CPU傳輸?shù)紾PU,我們使用CUDAMemcpy函數(shù)來實現(xiàn)CPU與GPU間的數(shù)據(jù)傳輸。其中CudaMalloc函數(shù)與CudaMemcpy函數(shù)均為CUDA的庫函數(shù)。2.2.2 GPU中的數(shù)據(jù)預處理
在解距離之前,首先需要對回波數(shù)據(jù)進行預處理。
對于采用收發(fā)共址的模式高頻地波雷達系統(tǒng),發(fā)射線性調(diào)頻斷續(xù)波,在發(fā)射機工作的時候,接收機關閉接收通道,不接收回波信號,但由于發(fā)射機發(fā)射功率較大,即使接收機關閉了接收通道,發(fā)射信號也會泄露進入接收機,而這部分能量通常高于接收機正常工作時接收到的回波信號的能量一個數(shù)量級以上,因此必須對直達波進行剔除。去直達波操作就是對每個掃頻周期內(nèi)的PulseNum個脈沖的直達波對應位置的采樣點置零,即將每個脈沖前nTpp*fs個采樣點置零。實際操作中GPU啟動Nthread個線程,如公式(6)所示:
Nthread=nTpp×fs×PulseNum×nch×nfre×BaseNum。
(6)
其中,包含Setzero_block個線程塊,每個塊包含Setzero_thread個線程,表達式如下:
Setzero_block=nTpp×fs×PulseNum×nch,
(7)
Setzero_thread=nfre×Base_Num,
(8)
其中Base_Num表示用戶設置的每次處理數(shù)據(jù)包含的掃頻周期數(shù)。
去斜處理是將去除直達波后的回波信號與本振信號進行復乘。去斜處理時,一個線程內(nèi)執(zhí)行一個復乘,每個線程執(zhí)行復乘時需要占用較多的寄存器,而GPU硬件上寄存器的數(shù)量是一定的,啟動內(nèi)核時,系統(tǒng)會將寄存器平均分配到每個線程中,操作時應開辟較少的線程以保證每個線程可以分配到足夠的寄存器。實際操作中GPU一次啟動開辟nTs個線程。
加窗操作是將去斜處理后數(shù)據(jù)的實部和虛部都與相應的窗加權系數(shù)相乘,并行處理方法方法同去斜處理相同,GPU一次啟動nTs個線程執(zhí)行計算。
2.2.3 GPU中的FFT處理
在高頻地波雷達信號前端數(shù)據(jù)的處理過程中,通過解距離和解速度分別得到目標的距離信息和速度信息,而這2個模塊的關鍵技術就是FFT。NVIDIA為開發(fā)人員提供了多種庫函數(shù),每一類庫針對某一特定的應用,CUFFT(CUDA Fast Fourier Transform)則是CUDA專門用于進行快速傅里葉變換的函數(shù)庫,該函數(shù)庫是經(jīng)過充分優(yōu)化的。該函數(shù)庫為開發(fā)人員提供了完善的用戶接口,開發(fā)人員可以任意設置FFT的點數(shù)、次數(shù)以及數(shù)據(jù)類型。
為驗證提出的基于CPU+GPU架構的高頻地波雷達信號并行處理技術的加速性能,分別采用CPU+GPU架構和純CPU架構兩種方案對青島高頻地波雷達系統(tǒng)于2015年1月8日錄取的實測數(shù)據(jù)采用脫機處理的方式進行處理,該高頻地波雷達為收發(fā)共址,發(fā)射線性調(diào)頻斷續(xù)波,信號處理機內(nèi)CPU為Intel Corei5-3470,主頻3.2 GHz,GPU計算卡采用英偉達的NVIDIA GTX960,其內(nèi)部有1 024個CUDA core,內(nèi)置4 096 MB GDDR5顯存,單精度峰值處理能力和峰值顯存帶寬可達到2.6 T Flops和232 GB/s。按照圖1構建完整的地波雷達信號處理流程,將獲取的地波雷達數(shù)據(jù)分別在不同的開發(fā)平臺下進行處理,表1給出了兩種方案處理一個積累周期數(shù)據(jù)時各個模塊的耗時結果。采用CPU+GPU架構方案時,處理一個積累周期的數(shù)據(jù)耗時約8 s,完全能夠滿足高頻地波雷達實時信號處理系統(tǒng)的滑窗需求,同時極大的節(jié)省了CPU的資源,使CPU能夠可靠的進行指令的上傳和下達;而純CPU方案處理相同量級的數(shù)據(jù)則耗時較長,無法滿足高頻雷達實時性處理需求,若要提高其處理速度,則需要提升硬件性能,增加成本。
表1 一個積累周期下兩種方案耗時對比
Note:①Memory development;②Data preprocessing and resolving Distance (16 Times);③Time consuming for the first call program;④Time consuming for each subsequent call program;⑤Total time-consuming;⑥Resolving speed;⑦Total time-consuming
圖4給出了兩種方案連續(xù)處理10個積累周期耗時的曲線圖。從表1和圖4中可以看出對高頻地波雷達數(shù)據(jù)進行預處理、解距離和解速度處理時,CPU+GPU方案較純CPU方案的處理速度提高了10倍以上。
圖4 兩種方案處理10個積累周期數(shù)據(jù)耗時對比
圖5 GPU+CPU方案處理第一個陣元回波數(shù)據(jù)的RD譜Fig.5 The RD spectrum of the first element echo data processed by the GPU+CPU scheme
圖5所示為采用CPU+GPU方案處理4.7 MHz載頻下第一個接收通道回波數(shù)據(jù)后得到的RD譜,積累時間260 s。對兩種方案獲得的頻域數(shù)據(jù)的實部和虛部分別做差求模,兩種方案頻域數(shù)據(jù)做差后各點數(shù)據(jù)的相對偏差小于10-7,該偏差不會影響雷達的探測性能,驗證了方案的可行性。兩種方案處理同批數(shù)據(jù)產(chǎn)生的數(shù)據(jù)偏差是由于不同編譯軟件中數(shù)據(jù)的精度誤差導致。圖6表示兩種方案獲得的第一個陣元的頻域數(shù)據(jù)做差后的結果。
圖6 兩種方案的頻域數(shù)據(jù)做差的結果Fig.6 The results of the subtraction of the frequency domain data of the two schemes
本文設計了基于CPU+GPU架構的高頻地波雷達信號處理系統(tǒng),并在此架構上實現(xiàn)了基于GPU的信號并行處理。實測數(shù)據(jù)的處理結果表明,基于GPU加速的雷達信號處理系統(tǒng)能夠實時完成信號處理,且該方案與純CPU方案相比,數(shù)據(jù)加速比達到了10,驗證了該方案的可行性,能夠很好的滿足軟件化雷達信號實時處理要求,為軟件化雷達的數(shù)據(jù)快速處理奠定了基礎。另外,由于雜波抑制算法涉及到較為復雜的矩陣運算,使用純CPU處理將無法滿足實時性的要求,下一步將在GPU內(nèi)實現(xiàn)雜波抑制算法。
[1] Headrick J M,Skolnik M I.Over-the-Horizon radar in the HF band[J].Proceedings of the IEEE,1974,62(6):664-673.
[2] Ponsford A M.Surveillance of the 200 nautical mile Exclusive Economic Zone (EEZ) using High Frequency Surface Wave Radar (HFSWR)[J].Canadian Journal of Remote Sensing,2001,27(4):354-360.
[3] 韓樹宗,王海龍,郭佩芳,等.高頻地波雷達反演海浪的海上對比驗證方法研究[J].青島海洋大學學報:自然科學版,2002,32(5):687-694.Han ShuZong,Wang HaiLong,Guo Peifang,et al.A technological study of sensing ocean hydrological parameters with High Frequency Ground Wave Radar[J].Journal of Ocean University of Qingdao,2002,32(5):687-694.
[4] 秦華,周沫,察豪,等.基于GPU加速的雷達信號處理并行技術[J].艦船科學技術,2013,35(7):77-82.Qin Hua,Zhou Mo,Cha Hao,Sheng Kuo.Research on the Parallel Technology of GPU Acceleration on Radar Signal Processing[J].Ship Science and Technology,2013,35(7):77-82.
[5] 周廣超.高頻雷達信號處理機系統(tǒng)設計及基本信號處理軟件研制[D].哈爾濱工業(yè)大學,2006.Zhou Guang Chao.System Design of HFRadar Signal Processor and Developing of Basal Signal Processing Software[D].Harbin:Harbin Institute of Technology,2006.
[6] 王報華.基于高頻雷達的信號處理板設計[D].哈爾濱工業(yè)大學,2011.Wang BaoHua.Designof Signal Processing Board Based on HF Radar[D].Harbin:Harbin Institute of Technology,2011.
[7] 劉霜.基于FPGA的軟件雷達脈壓處理器的實現(xiàn)[D].哈爾濱工業(yè)大學,2006.Liu Shuang.Fpga-Based Implementation of Pulse Compression Processor of Software Radar[D].Harbin:Harbin Institute of Technology,2006.
[8] 曾美艷.高頻地波雷達實時信號處理軟件的設計與實現(xiàn)[D].哈爾濱工業(yè)大學,2008.Zeng MeiYan.Design And Realization of Real-Time Signal Processing Software in High Frequency Ground Wave Radar[D].Harbin Institute of Technology,2008.
[9] 俞驚雷,柳彬,王開志,等.一種基于GPU的高效合成孔徑雷達信號處理器[J].信息與電子工程,2010,08(4):415-419.Yu JingLei,LiuBin,WangKaiZhi,LiuXinZhao,Yu WenXian.A high Efficient GPU-Based Signal Processor of Synthetic Aperture Radar[J].Information And Electronic Engineering,2010,08(4):415-419.
[10] 曹成忠.基于GPU+CPU軟件化雷達終端系統(tǒng)的設計與實現(xiàn)[D].武漢理工大學,2014.Cao ChengZhong.The Design And Implementation of Radar System[D].Wuhan University of Technology,2014.
[11] 李曉波,關欣,仲利華,等.基于GPU的外輻射源雷達信號處理實時實現(xiàn)方法[J].系統(tǒng)工程與電子技術,2014,36(11):2192-2198.Li Xiao Bo,Guan Xin,Zhong Li Hua,et al.Real-time implementation of signal processing for passive radars Based on GPU[J].Systems Engineering and Electronics,2014,36(11):2192-2198.
責任編輯 陳呈超
Real-Time Signal Parallel Processing Scheme and Realization of HF Ground Wave Radar Based on CPU+GPU Architecture
NIU Jiong,SHEN Jin-Jin,CHEN Qian
(College of Engineering,Ocean University of China,Qingdao 266100,China)
With the development of High Frequency Surface Wave Radar(HFSWR) technologies in recent years,the huge amount of remote sensing data brings challenges for real-time imaging processing.The mainstream design scheme of High frequency ground wave signal processor is usually DSP+FPGA technology or based on high performance CPU technology to achieve real-time signal processing,but the hardware and software of system using DSP+FPGA is more compact ,it is difficult to maintain because of long development cycle.High performance CPU technology requires high performance on the hardware,it greatly increasing the cost of hardware.In order to shorten the development cycle,improve the maintainability of the system and reduce the development cost under the premise of guaranteeing signal real-time processing,this paper designs a signal processing scheme based on CPU+GPU architecture,realizes the basic flow of real-time signal processing of HF Ground wave Radar,including data pre-processing,the distance information and speed information of the aim are acquired.Experiment results shows that the proposed signal processing scheme under CPU+GPU architecture has a speedup of 10 times compared with the CPU platform of the same period,which verifies the feasibility of the scheme.
CPU+GPU; HFSWR; real-time signal processing; cooperative work
海洋公益性行業(yè)科研專項項目(201505002);國家自然科學基金重點項目(61132005)資助
Supported by the Public Science and Technology Research Funds Projects of Ocean(201505002); National Natural Science Foundation of China(61132005)
2016-09-15;
2016-11-20
牛炯(1982-),男,工程師。E-mail:niu_buaa@163.com
TN957.74
A
1672-5174(2017)02-056-06
10.16441/j.cnki.hdxb.20160238
牛炯,申晉晉,陳倩.高頻地波雷達實時信號并行處理方案及實現(xiàn)[J].中國海洋大學學報(自然科學版),2017,47(2):56-61.
NIU Jiong,SHEN Jin-Jin,CHEN Qian.Real-time signal parallel processing scheme and realization of HF ground wave radar based on CPU+GPU architecture [J].Periodical of Ocean University of China,2017,47(2):56-61.