陈彦来,高 星,刘文政
(中国船舶重工集团公司第七二三研究所,江苏 扬州 225101)
舰载一维相控阵雷达方位角采用机械扫描,俯仰角采用相控电子扫描,具备对空对海探测能力,可以提供目标的距离、方位、俯仰三维目标信息,是一种高性价比的三坐标舰载雷达。舰载一维相控阵雷达为了在不降低性能指标的前提下,减少天线阵面重量,提高可靠性,节约成本,通常采用电子稳定平台用以取代传统雷达的机械稳定平台。电子稳定平台根据纵横摇信息,实时计算每个收发波束的控制信息,以达到在舰船纵横摇条件下,保持雷达扫描空域不变。本文介绍了一种舰载一维相控阵雷达电子稳定平台的现场可编程门阵列(FPGA)解算方案,针对该电子稳定平台算法的实现流程、正余弦值计算、反正切值计算、向量乘法、截断处理等方面进行了详细描述,并对该实现方法进行了算法使用资源、波束解算时间、解算精度分析。结果表明:该方法具有使用资源少、波束解算速度快、解算精度高等特点,具有一定的工程应用价值。
定义:甲板坐标系(X轴在舰船中线面内,平行于船的基面,指向船首,Y轴垂直于船的基面,向上为正,三坐标满足右手定则)下的方位角为β″、俯仰角为ε″、横摇为θ、纵摇为φ;稳定甲板坐标系(该坐标系与甲板坐标系共原点,但其X轴保持水平,Y轴保持竖直,三坐标满足右手定则)下的方位角为β、俯仰角为ε;天线阵面坐标系(其原点取在天线阵面中心处,X轴、Y轴位于阵面内,Y轴垂直于阵面与船的基面的交线,向上为正,Z轴取为阵面的法向,向上为正,三坐标满足右手定则)下的俯仰角为ε′。
其具体解算步骤如下:
(1) 计算同一纵横摇、方位角条件下,所有收发波束在天线阵面坐标系下的俯仰角ε′。
(a) 计算稳定甲板坐标系下0°收发波束在甲板坐标系下的俯仰角ε″。计算公式如下:
(1)
(b) 计算稳定坐标系中0°收发波束在天线阵面坐标系下的俯仰角ε′。设天线阵面的倾斜角为α,则:
ε′=ε″-α。
(2)
(c) 计算所有收发波束在天线阵面坐标系的俯仰角。
假设共有n个收发波束,在稳定甲板坐标系下的俯仰角分别为ε1,ε2,…,εn,则它们在天线阵面坐标系下的俯仰角计算方式为:
(3)
(2) 计算所有收发波束在稳定甲板坐标系下的真实方位角和俯仰角
(a) 将极坐标系转换为直角坐标系,转换方式如下:
(4)
式中:x″,y″,z″为第m个收发波束在直角坐标系下的坐标值。
(b)直角坐标系下的坐标旋转,转换公式如公式(5)所示:
在网络平台上设置一个资源拓展库,包括每个知识点和相关拓展知识,学生可以在课前或课后进行观看和学习。教师也可以在课程教学中穿插课外拓展知识,以达到知识迁移的目的。
(5)
(c) 将直角坐标系转换到极坐标系,转换公式:
(6)
式中:βm,εm为第m个收发波束在稳定甲板坐标系下的真实方位角和俯仰角。
该算法在Xilinx FPGA XC6VLX550T平台上实现,结合Xilinx V6系列FPGA的特点,对算法实现流程、正余弦计算、反正切计算、向量乘法、截断处理等进行介绍。
按照电子稳定平台,算法实现可分为2个流水线,一条流水线负责计算同一纵横摇、方位角条件下,所有收发波束在天线阵面坐标系下的俯仰角ε′;另一条流水线负责计算所有收发波束在稳定甲板坐标系下的真实方位角和俯仰角。具体流程如图1所示。
正余弦值计算有查表法和CORDIC算法2种。CORDIC算法使用有限次的移位和加法迭代运算来实现正余弦值计算,在计算精度要求高的情况下,需要迭代次数增加,通常需要几十个时钟周期才能完成1次正余弦值计算,而查表法仅需几个时钟周期即可完成1次正余弦值计算,同时为保证精度,查表法仅需要提高正余弦值表示位数和角度分辨率,而不会造成计算周期的增加。
正余弦函数具有对称性,为了节省FPGA内部块随机存储器(RAM)资源,仅需设计0~π/2的正弦值表,再通过简单的运算,即可得到0~2π的正余弦值,具体逻辑如表1所示。
图1 算法实现流程
计算角度范围正弦查表角度余弦查表角度正弦值余弦值0≤θ≤π/2θπ/2-θΑΑπ/2<θ≤ππ-θθ-π/2Α-Απ<θ≤3/2πθ-π3/2π-θ-Α-Α3/2π<θ<2π2π-θθ- 3/2π-ΑΑ
当0≤θ<2π时,-1≤sinθ≤1。θ采用16位二进制无符号数来表示,角度分辨率为2π/216;sinθ采用16 bit二进制补码来表示,其中最高位b15为符号位,次高位b14为整数位,b13到b0低14 bit为小数位,计算精度为2π/214。
式(1)、(6)中反正切值均使用Xilinx ISE开发软件自带的CORDIC CORE来实现,该CORE只用输入x,y的值,在CLK的驱动下,即可得到θ=arctan(y/x)的值,需要注意的是x,y范围要求为[-1,+1]。
表2 向量乘法计算流水线设计
图2 截断处理算法流程
该截断处理方法在保持固定位宽的情况下,对数据进行动态截断,最大限度地保留了数据原有信息,减小了截断误差,提高了处理精度。
利用Xilinx ISE集成开发环境,采用VHDL语言,在XC6VLX550T平台上实现电子稳定平台算法。
利用Xilinx ISE 14.7自带工具对算法进行了Synthesize、Translate、Map、Place & Route,最后生成Device Utilization Summary报表,根据报表,使用的FPGA主要资源如表3所示。
由表3可知,该算法占用FPGA资源少,主要资源占用量均小于10%。
经过仿真和实测,每更新一次纵摇、横摇、方位输入,计算稳定甲板坐标系下0°收发波束在甲板坐标系下的俯仰角需要65个时钟周期;计算单个收发波束在稳定甲板坐标系下的真实方位角和俯仰角需要480个时钟周期;如果同一纵摇、横摇、方位输入条件下,需要计算多个收发波束,则可以采用流水线操作,在12个收发波束的情况下,共需要623个时钟周期。如果FPGA计算时钟取240 MHz,则需要(65+623)/240≈2.87 μs即可完成同一纵摇、横摇、方位输入条件下,12个收发波束的电子稳定平台解算。
假设天线阵面倾斜角α=10°,分别在横摇θ=-7°、纵摇φ=3°和横摇θ=10°、纵摇φ=5° 2种条件下,针对不同俯仰角和方位角的多个波束,进行了电子稳定平台算法计算。
表3 FPGA资源使用统计
2种纵横摇条件下,甲板坐标系下的俯仰角和稳定甲板坐标下下的方位角、俯仰角计算结果如表4和表5所示,表中数据为取小数点后6位四舍五入。
如表4和表5所示,对计算结果采用小数点后6位,即10-6四舍五入后,甲板俯仰角的FPGA计算误差为零,稳定甲板坐标系下的方位角和俯仰角也均小于0.001°,可以满足后续雷达数据处理的需要。
表4 横摇角-7°,纵摇角3°,倾斜角10°解算结果
表5 横摇角10°,纵摇角5°,倾角10°解算结果
本文论述了一种舰载一维相控阵雷达电子稳定平台的FPGA实现方法,该实现方法可以同时进行多个收发波束的电子稳定平台解算,并且具备解算速度快、计算精度高、使用资源少等特点,该实现方法具有一定的工程应用价值。