SAR回波模拟中回波信号多普勒相位计算方法在FPGA上的实现

作者:赵红 徐寅晖 曾大治 王惠 周超 北京理工大学信息与电子学院

摘 要:多普勒相位作为被测目标信息获取的重要来源,其计算精度成为基于FPGA实现合成孔径雷达实时回波模拟技术的关键要素。本文针对多普勒相位计算过程中存在的数值开方运算以及FPGA中专用开方器件的缺失性问题,在保证原始数据的仿真精度以及满足大位宽数据的仿真需求基础下,以Xilinx Virtex6 sx315t 为硬件平台,使用两种FPGA常用的近似方法——泰勒级数展开和CORDIC算法,对于多普勒相位的定点求解进行了程序设计与实现,并将仿真结果与MATLAB双精度理论数据进行对比,验证了精度的有效性。

1 引言
合成孔径雷达(Synthetic Aperture Radar ,简称SAR)作为一种高分辨微波成像雷达[1],是地面信息获取的重要手段,它在国土测量、军事等领域发挥着重要作用。为确保所设计的SAR系统能够满足各个用户的具体需求,原始数据仿真和成像处理以及图像指标的评估已经成为SAR系统研制前的必需步骤。除此之外,在SAR实时成像系统研制以及地面处理的过程中,我们同样需要大量的模拟回波数据[2]。因此,SAR回波模拟技术能够为我们提供基本的研究手段和研究工具,它在SAR的发展和应用中,具有及其重要的作用。

作为雷达与目标相对运动的直观反映,多普勒相位是SAR回波模拟的原理依据,同样也是回波模拟精度的重要影响因素。在多普勒相位计算过程中存在数值开方运算,这使得其在FPGA(现场可编程门阵列)实现中存在两种主要限制因素:其一,FPGA硬件中不存在专门的开方器件;导致了开方运算在FPGA实现中的复杂性。其二,为了保证原始数据的仿真精度及适应大斜距数据的仿真,导致SAR回波模拟对FPGA定点运算中的斜距动态范围要求大[3]。

因此,本文针对SAR回波模拟中回波信号多普勒相位在FPGA实现中存在的限制,采用泰勒级数展开和CORDIC算法两种常用方法对其进行实现与仿真。

2 SAR回波模拟信号中的多普勒相位
SAR的空间几何关系如图1,其中SAR飞行路径的地面航迹方向称为方位方向,与其垂直的方向称为距离方向[4]。

图1 SAR的空间几何关系

图1 SAR的空间几何关系

SAR在运动过程中,以特定的脉冲重复周期
(Pulse Repetition Time,简称PRT)发射并接收脉冲串,雷达天线波束照射到地面以后,照射区域内的各个点目标(又被称作散射元)对入射波进行后向散射。发射信号经过目标和天线方向图的调制,成为携带目标信息和环境信息的SAR回波。

SAR的发射脉冲串一般为线性调频(chirp)信号,设定SAR的发射脉冲串:





表1 SAR回波模拟的主要仿真参数

在本文中,要求斜距的近似误差最大为1/8波长,由表格1可见,目标点到SAR平台的斜距量级为106,动态范围很大;由于FPGA内部没有专用开方器件,使得多普勒相位运算过程复杂、速度低,在此使用泰勒级数展开与CORDIC算法。

3 基于泰勒级数展开的多普勒相位计算方法
泰勒级数是幂级数的一种,如果有了某一函数的幂级数展开式,则我们就可用它进行近似计算,即在展开式有效的区间范围上,我们可按照已知精确度要求,利用这个幂级数展开式将该函数值近似地计算出来。




4 基于CORDIC算法的多普勒相位计算方法
由于Xilinx的CORDIC IP核对输入输出位宽的限制要求,对于斜距计算的通用方法来说,使其变得不可取。因此我们采用结合了IP核思想的CORDIC算法,CORDIC算法是一种数值型逼真计算方法,其FPGA实现模块主要由各级寄存器、移位器、符号标志寄存器以及加法器组成,它在硬件电路实现上只用到了位移操作和加/减操作,这大大节约了FPGA资源。

图2 泰勒级数展开设计框图

图2 泰勒级数展开设计框图

 假设SAR平台与目标点的相对位置坐标为(x,y,z),经过两次CORDIC 算法运算即可得出目标点到SAR平台的斜距值:

为了更方便地说明CORDIC算法,我们在此只针对sqrt1的求解过程进行详细的展开介绍。本文中,CORDIC IP核采用向量化模式,通过将任意方向的输入向量旋转一系列的预定角度最终达到与x轴的对齐。故而此算法的最终结果即所有旋转角度的累加值,以及输入向量定标后的幅值(结果在x分量中),同时y分量的符号决定着下一次旋转的方向。在此模式中角度累加器初值为零,整个迭代运算结束后,结果为最终旋转角度[8]。于是以sqrt1为例,CORDIC算法中存在差分方程:

n次旋转后最终达到与x轴的对齐,此时


图3 CORDIC算法设计框图

图3 CORDIC算法设计框图

由上图,输入信号x0,y0通过一系列移位操作与加减法操作最终得到xn,即sqrt1,同样可求出sqrt2即斜距值,最后斜距乘以波长系数4π/λ即可得到多普勒相位。

5 仿真验证与性能分析
本文以Xilinx Virtex6sx315t为硬件平台,对两种多普勒相位计算方法进行了仿真验证与性能分析。

泰勒级数展开与CORDIC算法的斜距误差仿真结果如下图4:

图4 斜距误差仿真结果图(左为泰勒级数展开法,右为CORDIC算法)

图4 斜距误差仿真结果图(左为泰勒级数展开法,右为CORDIC算法)

图5 多普勒相位对比图(左为泰勒级数展开法,右为CORDIC算法)

图5 多普勒相位对比图(左为泰勒级数展开法,右为CORDIC算法)

图6 脉冲压缩仿真图(左为泰勒级数展开法,右为CORDIC算法)

图6 脉冲压缩仿真图(左为泰勒级数展开法,右为CORDIC算法)

 两种方法的性能分析包括资源消耗,FPGA时序约束,以及斜距误差对脉压精度的影响。资源消耗如下:

表2 资源消耗比较表

由上表知,较泰勒级数展开法,CORDIC算法能够节省更多的资源,甚至在乘法器资源上是泰勒级数展开法的四分之一。

在FPGA时序约束上,CORDIC算法最高能达到110MHz,泰勒级数展开法略高些:150MHz。

斜距误差对脉压精度的影响如下:

表3 脉压精度比较表

显然,在脉压精度上,两种方法均能满足精度要求,且泰勒级数展开法分辨率略高些。

6 结论
本文针对SAR回波模拟中回波信号多普勒相位在FPGA实现中存在的主要限制因素:FPGA硬件中不存在专门的开方器件;SAR回波模拟对FPGA定点运算中的斜距动态范围要求大。采用了两种常用的近似计算方法:泰勒级数展开以及CORDIC算法。并对其进行FPGA仿真与验证,两种方法不仅很好的解决了斜距开方运算,仿真结果同时证明了其精度有效性,并在FPGA资源消耗,时序约束,以及脉压精度上作出了具体评估与比较,在SAR回波模拟中具有良好的应用前景。

文章来源:信号处理第29卷第11期