APP下载

相关干涉仪测向的定点数矩阵设计及FPGA验证

2023-12-11张承畅杨建鹏王富强

实验室研究与探索 2023年9期
关键词:基线天线向量

张承畅, 杨建鹏, 罗 元, 王富强

(重庆邮电大学光电工程学院,重庆 400065)

0 引 言

相关干涉仪无线电测向算法的FPGA实现中涉及大量的二进制定点数矩阵运算,增加了FPGA 设计的设计复杂度。在FPGA中广泛使用带有专用浮点单元(Float-Point Unit,FPU)的DSP来处理浮点数,浮点数可以在更大的动态范围内提供更高的分辨率,但是运算速度慢,消耗逻辑资源较多;定点数计算相对消耗逻辑设计资源较少,运算速度较快,但限制字长的情况下精度较低,并且在HDL开发方式中不容易发现因为给定字长和小数位不足造成溢出或误差过大的问题[1]。另外FPGA 硬件验证时,使用HDL 代码开发的方法,在没有完整硬件设备的条件下,无法提供复杂的波形输入,难以发现算法中的错误。

针对以上问题,本文使用软硬件联合仿真工具System Generator 来设计和实现相关干涉仪测向的FPGA算法,管理定点数并从Simulink 提供复杂的数字信号[1-3]。

1 相关干涉仪测向原理

平面波进入天线阵时,由于到达2 个天线单元的时间有先后,该时间差使两天线单元的反应波形产生一个射频相位延迟或射频相位差[4]。

图1 所示为基本的相位延迟原理,波长λ 的平面波以入射角θ入射到天线1 上,并在天线1 上产生感应电压U1ejωt,该平面波再经过dcos θ(d称为基线)这段距离的传播到达天线2 并产生感应电压U2ejωt-τ,其相位延迟

图1 相位差产生原理图

因此,θ是τ的函数[5-6]。

图2 所示为五元阵基线示意图,考虑到天线遮挡和互耦效应,天线阵列中靠近的2 个阵元之间会相互影响。因此将五边形的5 条对角线作为低频段测向基线,这种方法与采用相邻线作为测向基线相比,可使天线阵规模即各天线元之间的距离进一步增大,减少了天线之间的互耦影响,并使测向精度得到改善。5 条基线代表的天线对分别为1-3,2-4,3-5,4-1,5-2。在测试高频信号时,为了防止相位模糊,基线代表的天线对切换为1-2,2-3,3-4,4-5,5-1,即采取短基线。这些组合的相位差信息称为标准样本[7-8]。

图2 五元圆阵基线示意图

由式(1)可推导出各基线的阵元之间的相位差[9]

式中:M为测向天线圆阵的阵元个数;R为圆阵的半径;λ为入射电磁波信号的波长;m、n分别为阵元。将5 组相位差组合为一个标准样本向量

所有角度的标准样本向量的组合即为标准样本库。待测来波信号从某一方向入射到天线阵列时,选取与建立样本库时同样的组合方式,以各基线的两天线为1 次双通道输入,测得两通道之间的相位差。5个基线的相位差组合为1 个实测样本向量

得到待测真实入射信号的实测样本向量后,在标准样本库的各角度对应的标准相位差样本中进行搜索,可以找到一组同待测向量相似性最高的样本向量,该样本向量对应的入射角度值即为实测信号的到达方向估计值[10-11]。最相似样本的搜索方式将直接影响测向的准确性,搜索方式一般为二者的相关匹配函数计算,用来评价待测相位差向量与标准相位差向量的相似性函数为代价函数,即

2 相位差矩阵运算建模

2.1 系统设计

图3 所示为测向计算过程及输入输出的System Generator建模,其中输入和参数通过gateway in 模块二进制量化以及转化为在FPGA 中的数据,经过运算后通过gateway out模块回传并转化为Simulink软件数据。

图3 System Generator下相关干涉仪设计模型

将Simulink子系统添加封装(Mask),以便使子系统拥有参数对话框、模块说明、参数提示和帮助文本。在System Generator测向相位差矩阵运算系统建模中,起着自顶向下管理着子系统内模块特定参数或多个模块共同参数的作用,例如定点数字长、定点数二进制小数位数、寄存周期以及CORDIC算法的迭代次数等。

2.2 CORDIC模块设计

坐标旋转数字计算机(Coordinate Rotation Digital Computer,CORDIC)算法在数字信号处理的硬件系统中有着广泛的应用,通过迭代的坐标系旋转来逼近最终结果。通讯领域以及矩阵处理的三角函数、反三角函数、对数、平方根等计算都离不开CORDIC算法[12]。

本文设计的CORDIC算法模型以求取定点数的余弦函数,在旋转模式下使用并行结构的迭代方法实现,并增加流水线以改善性能。由于CORDIC 算法仅对-π/2 ~π/2 范围内的输入角度z收敛,所以必须对范围外的输入角度进行旋转与映射,如图4 所示为CORDIC模块模型设计。首先是周期变换,在输入前经过加减运算后的输入角度范围为-3π ~3π,经过周期变换等价于-π ~π;其次是角度旋转,对于第2 象限的输入角度,通过减去π/2 映射到第1 象限;对于第3 象限的输入角度,通过加上π/2 映射到第4 象限,这就满足了CORDIC算法的收敛要求。角度旋转同时又造成了计算三角函数结果时,与原本三角函数值相比产生了π/2 的相位差,所以应当应用以下三角恒等式进行校正[13-15]:

图4 CORDIC模块的模型设计

若输入角度z>π/2,则有:

若输入角度z<π/2,则有:

3 相关干涉仪的定点数测向仿真结果

System Generator建模中,相位差系数的取值范围为-2π ~2π,设定其定点数字长m=18,二进制小数位数n=14,符号位占用首位,定点数格式表示为SFIX_18_14。以0,5,10,…,360 角度向量为标准角,建立相位差标准库。在System Generator 中进行建立标准库的定点数仿真,得到大小为5 ×73 的定点数矩阵,其中每一行向量,都代表对应一条基线的相位差系数理论值,每一列向量,都代表对应标准角下5 条基线的相位差系数理论值。

将System Generator建模仿真取得的样本库行向量,与理想化的样本库行向量相减,求取误差,如图5所示。由图可知,误差以0 为中心,准确度较好,定点数计算的误差不超过0.01,与相位差系数的取值范围-2π ~2π相比可忽略不计。

图5 样本库定点数仿真误差

在Simulink平台上,设定基带信号频率100 Hz,载波频率100 MHz,构造调制波形,并在仿真中加入了频率偏移。根据调制波形到达5 根天线的距离不同,及天线阵列的形状,计算信号到达5 根天线的延时。以此时延构造5 信道初相不同的数字信号作为测向系统的输入,计算5 条基线两两之间相位差,得到5 ×1 向量。将此向量与样本库5 ×73 矩阵的每一列向量对比,计算相关匹配函数,得到1 ×73 向量,结果如图6所示。相关匹配函数越大,代表该实际相位差与该标准角的理论相位差系数越接近。

图6 相关匹配函数定点数仿真结果

为降低硬件资源消耗,采用的标准库以5°为间隔建表,搜索得到的角度只是粗略估计。为了提高精度,进一步提取相关匹配函数最大值的相邻2 个值,作插值运算,得到角度计算值。输入按时间变化的角度值产生的相位输入,System Generator输出格式为时间序列,时间单位为5 ns,即指定Vivado 的时钟频率和采样频率200 MHz。

将测向功能的定点数仿真的结果与理论角度值的误差,取绝对值,仿真结果如图7 所示,平均误差为1.167°。

图7 角度仿真误差

仿真成功后,将System Generator设计生成Vivado工程,FPGA 仿真结果如图8 所示。进一步生成比特流文件,通过JTAG连接FPGA与上位机,进行软硬件协同运行,在Simulink 中实时产生数字信号代替实际信号,通过AXI总线提供给FPGA硬件,FPGA计算结果再通过AXI总线采样将数据传输至上位机。FPGA测试的角度误差如图9 所示,平均误差为2.609°。

图8 Vivado仿真界面

图9 FPGA测试角度误差

4 结 语

本文设计并完成了相关干涉仪测向系统FPGA算法的建模,使用Simulink可视化FPGA进行了仿真,进一步生成Vivado 工程并完成FPGA 的软硬件协同仿真运行实验。结果表明:定点数仿真的平均误差为1.167°;FPGA测试的平均误差为2.609°,即定点数矩阵的FPGA设计方法,其仿真结果与实测数据接近。该流程为数字信号系统提供可视化的数据流和定点数管理,且可在测向项目场地测试前提供基于Simulink的复杂输入信号用于提前测试,对于FPGA 工程的流程优化的有一定的技术参考价值。

猜你喜欢

基线天线向量
向量的分解
适用于MAUV的变基线定位系统
聚焦“向量与三角”创新题
航天技术与甚长基线阵的结合探索
ETC相控阵天线与普通天线应用对比分析
一种改进的干涉仪测向基线设计方法
ALLESS转动天线射频旋转维护与改造
理论宣讲要上接天线、下接地气
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线