高频地波雷达实时信号并行处理方案及实现*

2017-02-15 05:26申晋晋
关键词:信号处理线程预处理

牛 炯,申晋晋,陈 倩

(中国海洋大学工程学院,山东 青岛 266100)

高频地波雷达实时信号并行处理方案及实现*

牛 炯,申晋晋,陈 倩

(中国海洋大学工程学院,山东 青岛 266100)

近些年,随着高频地波雷达技术的发展,大量的遥感数据给实时信号处理带来了巨大的挑战。高频地波雷达信号处理机的主流设计方案通常采用DSP+FPGA技术或基于高性能CPU技术来实现信号的实时处理,但DSP+FPGA方案中系统的软硬件耦合较为紧密,开发周期长且不易维护,而高性能CPU技术对计算机性能要求较高,大大增加了硬件成本。在保证信号实时处理的前提下,为了缩短开发周期,提高系统的可维护性和降低开发成本,本文基于CPU+GPU架构设计了的信号处理方案,实现了高频地波雷达实时信号处理的基本流程,获取了目标的距离信息和速度信息。实验结果表明,本文提出的CPU+GPU架构下的信号处理方案与同期中央处理器(CPU)运算平台相比,具有10倍以上的加速比,验证了方案的可行性。

CPU+GPU; 高频地波雷达; 实时信号处理; 协同工作;

高频地波雷达,又称为高频地波超视距雷达,是海上目标大范围、连续探测的主要手段,它利用高频电磁波(3~30 MHz)沿海面绕射传播的特性,实现海上船只和低空飞机等移动目标和海洋动力参数的大范围连续监测[1-3]。因此,高频地波雷达受到了全球研究机构的关注,其主要研究内容涵盖系统设计、信号处理、杂波抑制、目标提取以及海态反演等方面。随着数字技术的飞速发展,雷达正向数字化和软件化的方向发展。一直以来,软件雷达实现的瓶颈问题之一是实时性问题[4]。其中信号处理的实时性尤为突出,因而雷达系统研发过程中,相当一部分工作集中在信号处理的软件化工作上,通常对于高频地波雷达的信号处理机,研究的主流方案有DSP+FPGA板卡方案[5-7]和高性能计算机方案[8]。对于DSP+FPGA方案来说,该方案的软件和硬件耦合较为紧密,虽然计算效率高、可扩展性好,但开发周期通常较长,并且不易维护;高性能计算机方案虽然没有软硬件耦合的缺点,但其为了满足雷达实时信号处理的需求,对硬件性能有较高的要求通常需要花费较高的成本。

GPU(Graphic Processing Unit)在传统上的应用局限在处理图形渲染计算任务,受军事视景仿真与图像处理需求的牵引,GPU的数据处理能力取得了飞速的发展。目前大数据量进行FFT运算时GPU已经是当前CPU处理能力的几十倍,而高频地波雷达数字信号处理的核心就是FFT,在高频地波雷达数据的前端处理过程中,需要进行大量的FFT运算,经实测数据处理可知其耗时最长。目前GPU单精度浮点处理能力超过11TFlops,同时其双精度浮点处理能力也已经超过1.4TFlops。因此将GPU应用于雷达数字信号处理是一种趋势。近些年已经有大量的研究机构将GPU技术用于数字信号处理。文献[9]中将GPU用于合成孔径雷达(SAR)的信号处理,利用GPU通用并行计算,使用CUDA(Compute Unified Device Architecture)实现了SAR成像算法。文献[10]采用CPU-GPU技术设计了微波雷达终端处理系统,数据处理加速比达到5.56 。文献[11]提出一种基于GPU的外辐射源雷达信号处理实时方法,利用GPU的并行处理能力实现了外辐射源雷达信号处理实时处理。GPU在微波雷达领域的应用已经较为广泛,但目前尚未见到将CPU+GPU技术应用于高频地波雷达数字信号处理的相关文献。本文结合高频地波雷达数字信号处理的流程及实时处理要求,提出采用CPU+GPU的并行异构模式对高频地波雷达实测数据进行并行处理。

1 理论方法及数据处理流程

高频地波雷达回波信号的数字化处理主要在信号处理机内完成,前端数据处理流程见图1。获取指定长度的原始数据后,首先需要对原始数据进行预处理,包括去直达波处理、去斜处理和加窗处理,然后对信号进行解距离处理后获得目标的距离信息,最后对解距离后的数据进行解速度处理得到目标的速度信息。

假设高频地波雷达的发射波形采用线性调频断续波(FMICW),发射信号表示为:

(1)

其中:

为了方便分析,不考虑信号在传输过程中幅度的衰减,则接收的回波信号可以表示为:

(2)

(3)

式中:K为单个脉冲重复周期内的采样点数;P为一个调频周期的脉冲个数;m为雷达最大探测距离单元。当解距离后数据的时间长度满足设定的积累周期时,对Y(m)进行第二次FFT处理,即解速度处理,可得到目标的速度信息。高频地波雷达前端信号处理详细的公式推导见文献[5]。

图1 前端数据处理流程图Fig.1 Front-end data processing flowchart

2 基于CPU+GPU架构的协同并行计算方案

本文提出了基于CPU+GPU架构的信号处理方案,本方案采用CPU+GPU协同并行的计算来实现高频地波雷达前端数据的处理。

2.1 基于CPU+GPU架构的系统方案

高频地波雷达的接收站包括接收天线阵列、接收机、信号处理机以及显控终端等。接收天线阵列主要用于接收来自空间的电磁波,并将雷达回波信号通过馈线传输给接收机;接收机主要用于接收来自接收天线阵列的回波信号,并对回波信号进行预处理,同时监测空间的电磁环境。接收机接收到回波数据后,需要对原始回波数据进行放大、滤波、A/D采样以及I/Q信号分离等处理,然后将处理后的数据传输到信号处理机,信号处理机接收到来自接收机的数字化正交信号(I/Q信号)后,在内部对前端数据进行预处理(包括去直达波、去斜和加窗)、解距离、解速度、点迹检测以及杂波抑制等(干扰包括射频干扰、电离层干扰、海杂波以及瞬态干扰)相关处理,并对原始数据、脉冲压缩后数据、频域数据以及点迹数据进行实时存储,最后将点迹数据实时的传送到显控终端,在显控终端对目标点迹进行航迹关联,并实时显示目标运动的事态。基于CPU+GPU架构的信号处理机方案框图见图2。

图2 基于CPU+GPU架构的信号处理机方案框图

在整个系统中,信号处理机采用CPU+GPU架构,CPU与GPU在信号处理机内协同工作,CPU作为主机(Host),GPU作为协处理器。CPU、GPU各自拥有相互独立的存储器地址空间:主机端的内存和设备端的显存。

2.2 基于CPU+GPU架构的并行处理算法

高频地波雷达前端数据在CPU+GPU架构下协同并行处理的方案见图3,其中CPU主要负责逻辑性强的事件处理和串行计算,包括计算需要开辟内存的大小、获取雷达系统参数、截取指定时长的原始数据、清理上一个内核函数、启动下一个内核函数、数据存储以及RD谱显示等;GPU则专注于执行高度线程化的并行处理事务,包括原始数据的预处理、解距离和解速度等处理。

为了保证方案的通用性,系统应该采用模块化和参数化设计。CPU根据系统参数设置,获取了指定长度的高频雷达原始数据后,通过PCIE总线将该数据传输到GPU,假设该批数据的大小为N个字节,则:

N=nfre×nch×nT×TSweep×fs×2×4。

(4)

其中:nfre为雷达载频数;nch为接收天线阵元数;nT为该批数据包含的扫频周期数;TSweep为扫频周期;fs为采样率。

(4)式中乘以2是因为回波数据为复数,包含实部和虚部,乘以4是由于获取的原始数据为float型。在GPU内对该批数据进行预处理和解距离后,获得的数据大小为N1个字节,则:

N1=nfre×nch×m×nT×2×4。

(5)

其中m表示雷达探测的最大距离单元,根据公式4和公式5可以看出,原始数据进行预处理和解距离处理后,数据压缩比为TSweep*fs/m。根据表1中雷达实际的相关参数,做完解距离处理后,数据压缩比约为100∶1,得到的脉压后数据存储在GPU显存中相应的位置,当一个积累周期对应的时域数据全部处理完毕后,对其进行解速度处理,得到频域数据。可见,大量原始数据的复杂处理都在GPU内完成,利用GPU并行处理的特点,极大的提高了数据处理速度,节省了CPU资源,保证了系统的实时性、稳定性和可靠性。

图3 CPU+GPU协同并行处理方案

为了更好的理解并行优化策略,下面针对CPU+GPU架构下数据处理流程的关键技术进行介绍,包括CPU/GPU之间的内存分配和数据传输、GPU中的数据预处理以及GPU中的FFT处理。

2.2.1 CPU+GPU的内存分配与数据传输

CPU与GPU之间通过PCI Express接口进行数据通信。系统所要处理的数据首先要传到Host端的内存中即CPU的内存中,然后通过PCIE总线传输到显存,在GPU内进行数据处理。

首先根据雷达系统相关参数计算需要开辟内存大小,在Host端开辟相应的内存,用来存储原始数据、本振信号数据以及窗函数数据等。系统完成一个积累周期的数据处理需要调用多次数据预处理函数和解距离函数,考虑到GPU显存资源有限,采用在解距离之前一次性开辟出固定大小的内存,供解距离时重复使用,在每次解距离之前需要开辟相应大小的内存,然后在完成最后一次解距离处理时统一释放。在GPU 内开辟内存可以用CudaMalloc函数来实现。GPU每执行一次解距离运算,都需要将nch个接收通道的CIT_base_Num个扫频周期的数据从CPU传输到GPU,我们使用CUDAMemcpy函数来实现CPU与GPU间的数据传输。其中CudaMalloc函数与CudaMemcpy函数均为CUDA的库函数。2.2.2 GPU中的数据预处理

在解距离之前,首先需要对回波数据进行预处理。

对于采用收发共址的模式高频地波雷达系统,发射线性调频断续波,在发射机工作的时候,接收机关闭接收通道,不接收回波信号,但由于发射机发射功率较大,即使接收机关闭了接收通道,发射信号也会泄露进入接收机,而这部分能量通常高于接收机正常工作时接收到的回波信号的能量一个数量级以上,因此必须对直达波进行剔除。去直达波操作就是对每个扫频周期内的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表示用户设置的每次处理数据包含的扫频周期数。

去斜处理是将去除直达波后的回波信号与本振信号进行复乘。去斜处理时,一个线程内执行一个复乘,每个线程执行复乘时需要占用较多的寄存器,而GPU硬件上寄存器的数量是一定的,启动内核时,系统会将寄存器平均分配到每个线程中,操作时应开辟较少的线程以保证每个线程可以分配到足够的寄存器。实际操作中GPU一次启动开辟nTs个线程。

加窗操作是将去斜处理后数据的实部和虚部都与相应的窗加权系数相乘,并行处理方法方法同去斜处理相同,GPU一次启动nTs个线程执行计算。

2.2.3 GPU中的FFT处理

在高频地波雷达信号前端数据的处理过程中,通过解距离和解速度分别得到目标的距离信息和速度信息,而这2个模块的关键技术就是FFT。NVIDIA为开发人员提供了多种库函数,每一类库针对某一特定的应用,CUFFT(CUDA Fast Fourier Transform)则是CUDA专门用于进行快速傅里叶变换的函数库,该函数库是经过充分优化的。该函数库为开发人员提供了完善的用户接口,开发人员可以任意设置FFT的点数、次数以及数据类型。

3 实测数据验证

为验证提出的基于CPU+GPU架构的高频地波雷达信号并行处理技术的加速性能,分别采用CPU+GPU架构和纯CPU架构两种方案对青岛高频地波雷达系统于2015年1月8日录取的实测数据采用脱机处理的方式进行处理,该高频地波雷达为收发共址,发射线性调频断续波,信号处理机内CPU为Intel Corei5-3470,主频3.2 GHz,GPU计算卡采用英伟达的NVIDIA GTX960,其内部有1 024个CUDA core,内置4 096 MB GDDR5显存,单精度峰值处理能力和峰值显存带宽可达到2.6 T Flops和232 GB/s。按照图1构建完整的地波雷达信号处理流程,将获取的地波雷达数据分别在不同的开发平台下进行处理,表1给出了两种方案处理一个积累周期数据时各个模块的耗时结果。采用CPU+GPU架构方案时,处理一个积累周期的数据耗时约8 s,完全能够满足高频地波雷达实时信号处理系统的滑窗需求,同时极大的节省了CPU的资源,使CPU能够可靠的进行指令的上传和下达;而纯CPU方案处理相同量级的数据则耗时较长,无法满足高频雷达实时性处理需求,若要提高其处理速度,则需要提升硬件性能,增加成本。

表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给出了两种方案连续处理10个积累周期耗时的曲线图。从表1和图4中可以看出对高频地波雷达数据进行预处理、解距离和解速度处理时,CPU+GPU方案较纯CPU方案的处理速度提高了10倍以上。

图4 两种方案处理10个积累周期数据耗时对比

图5 GPU+CPU方案处理第一个阵元回波数据的RD谱Fig.5 The RD spectrum of the first element echo data processed by the GPU+CPU scheme

图5所示为采用CPU+GPU方案处理4.7 MHz载频下第一个接收通道回波数据后得到的RD谱,积累时间260 s。对两种方案获得的频域数据的实部和虚部分别做差求模,两种方案频域数据做差后各点数据的相对偏差小于10-7,该偏差不会影响雷达的探测性能,验证了方案的可行性。两种方案处理同批数据产生的数据偏差是由于不同编译软件中数据的精度误差导致。图6表示两种方案获得的第一个阵元的频域数据做差后的结果。

图6 两种方案的频域数据做差的结果Fig.6 The results of the subtraction of the frequency domain data of the two schemes

4 结语

本文设计了基于CPU+GPU架构的高频地波雷达信号处理系统,并在此架构上实现了基于GPU的信号并行处理。实测数据的处理结果表明,基于GPU加速的雷达信号处理系统能够实时完成信号处理,且该方案与纯CPU方案相比,数据加速比达到了10,验证了该方案的可行性,能够很好的满足软件化雷达信号实时处理要求,为软件化雷达的数据快速处理奠定了基础。另外,由于杂波抑制算法涉及到较为复杂的矩阵运算,使用纯CPU处理将无法满足实时性的要求,下一步将在GPU内实现杂波抑制算法。

[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] 周广超.高频雷达信号处理机系统设计及基本信号处理软件研制[D].哈尔滨工业大学,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].哈尔滨工业大学,2011.Wang BaoHua.Designof Signal Processing Board Based on HF Radar[D].Harbin:Harbin Institute of Technology,2011.

[7] 刘霜.基于FPGA的软件雷达脉压处理器的实现[D].哈尔滨工业大学,2006.Liu Shuang.Fpga-Based Implementation of Pulse Compression Processor of Software Radar[D].Harbin:Harbin Institute of Technology,2006.

[8] 曾美艳.高频地波雷达实时信号处理软件的设计与实现[D].哈尔滨工业大学,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软件化雷达终端系统的设计与实现[D].武汉理工大学,2014.Cao ChengZhong.The Design And Implementation of Radar System[D].Wuhan University of Technology,2014.

[11] 李晓波,关欣,仲利华,等.基于GPU的外辐射源雷达信号处理实时实现方法[J].系统工程与电子技术,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

海洋公益性行业科研专项项目(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

牛炯,申晋晋,陈倩.高频地波雷达实时信号并行处理方案及实现[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.

猜你喜欢
信号处理线程预处理
专题征稿启事
——信号处理
求解奇异线性系统的右预处理MINRES 方法
实时操作系统mbedOS 互斥量调度机制剖析
污泥预处理及其在硅酸盐制品中的运用
基于国产化环境的线程池模型研究与实现
基于MATLAB的语音信号处理
基于DSP的电子侦察信号处理技术的探析
一种激光/无线电复合引信信号处理技术
基于预处理MUSIC算法的分布式阵列DOA估计
基于膜过滤的反渗透海水淡化预处理