改进型波控算法在FPGA中的研究与实现
2020-03-23郭立俊
郭立俊
(中国电子科技集团公司 第三十八研究所,安徽 合肥 230088)
雷达波束控制是相控阵体制雷达的重要组成部分,波控系统通过波束控制算法或现场查表法实时得出天线控制码值。根据波控时序产生控制信号,实现天线波束的高速电控扫描,充分利用天线波束扫描快速、合理地分配能量,无需天线的机械扫描也可以方便地实现波束方向的改变[1]。
相控阵雷达天线波控系统硬件架构主要有如下2种方式:
(1) 采用处理器+现场可编程门阵列(field-programmable gate array,FPGA)芯片构成,支持浮点运算处理器根据模式、指向角和频率等参数计算出指向系数α、β,再根据单元坐标M、N和补偿系数完成移相器单元控制码的计算[2]。
(2) 采用FPGA芯片完成整个波控系统设计,即将对应的码值提前存储成码表文件,调用时按地址进行读取码值。
第2种方式相对于第1种有如下优势:
(1) 硬件可靠性。纯FPGA芯片可靠性很高,远大于带处理器芯片的硬件架构,而且绝大部分的功能设计都在一个芯片中完成,集成度高,稳定性好,可以很好地满足军事设备的研制及批量生产要求。
(2) 处理的实时性。FPGA虽然不支持浮点运算[3],但是快速并行运算的优势是处理器(CPU)无法达到的,对于要求快速布相要求产品来说,这种方式是最好的选择。
(3) 成本和功耗。航空或航天产品对设备的体积和功耗要求越来越严格,降低设备的功耗等于直接延长了设备有效作战时间。然而,大型阵面雷达波控系统采用单一FPGA查表法方式,存储的码值单元太多,工作量过大,甚至不太适合工程设计。
因此,本文研究一种改进型的设计思路,综合以上2种设计方案,完成工程设计。
1 设计分析
1.1 工作原理
相控阵雷达波束电扫就是波控系统根据方位、俯仰等指向角计算出阵列中每个移相器单元所需要的波控码,从而完成天线波束电扫。相控阵雷达执行任务时,天线波束在预定的空域进行搜索,发现目标后,对目标的位置进行分析并对下一帧目标位置进行预测,并指挥天线波束扫描该位置,完成对目标的跟踪[4]。
在实际工程中,波控系统接收雷达控制系统或者数据处理系统的指向角Φ、θ(方位角、俯仰角),波控系统首先完成指向系数α、β的计算,再根据计算出的指向系数α、β和单元坐标M、N以及数据补偿等完成移相器单元控制码的计算。二维相控阵雷达阵面单元排列框图如图1所示。
图1 二维相控阵天线的单元排列示意图
指向系数α、β的计算公式为:
(1)
其中,dx、dy为相邻天线单元的水平和垂直方向的距离;λ为雷达波长。
天线单元波控码运算公式为:
φ=Mα+Nβ+φ0
(2)
其中,α、β为指向系数;M、N为天线单元的坐标;φ0为天线单元校准补偿值。
数据处理对波控系统的输入为控制指向角Φ、θ,根据相控阵雷达波控算法公式,需要在波控单元中完成α、β的计算,而浮点运算对FPGA来说处理起来比较复杂,而且资源占用较大,因此需要将传统的设计进行改进,采用查表法与FPGA实时计算相结合的处理方式,快速完成波控码值的计算。
1.2 改进模式
在实际的工作中,雷达波控系统的扫描角度和扫描角度步进参数都是确定的,可以提前将对应角度的sin和cos数值计算出来,量化后存储到波控系统flash存储器。
工作时,读取对应的地址信息,完成三角函数参数获取。由(1)式可知,Φ、θ为方位角和俯仰角,λ为发射电磁波的波长,且有λ=c/f,因此只要知道频率和波束指向,就能计算出当前所有移相器的移相量[5]。
当某一时刻的工作频率f确定后,2πd/λ即是一个常量,dx、dy为相邻天线单元的水平和垂直方向的距离,根据雷达工作频点、单元间距和常量按照频点参数计算出对应的数值,并进行量化保存在波控系统码表内存中,读取对应的地址信息,完成工作频点参数的获取。
根据数学模型计算出零点单元的实时码值,因为组件横坐标和纵坐标都是等间距的,所以通过加法逐一计算出其余组件的实时码值;然后将存储器中校正参数叠加到对应的组件,计算出阵列中每个移相器单元所需的控制码值[6],产生波束控制时序信号驱动移相器,实现波束指向指定的空域,改进型雷达波束控制基本流程如图2所示。
图2 改进型雷达波束控制基本流程
2 工程设计
2.1 硬件方案设计
改进型波控系统硬件组成主要由FPGA、接口芯片、Flash存储器、SDRAM内存以及波控芯片等组成。FPGA主要完成算法计算、时序生成以及接口控制任务。Flash存储器和SDRAM内存完成码表文件存储和缓存。波控芯片驱动TR组件,完成雷达布相。系统硬件框图如图3所示。
波控码值综合运算和时序产生由FPGA芯片完成,也是整个波控系统的核心部件。内含具有运算和存储功能,每次将更改后的相关数据通过异步串口写入到Flash存储器中。上电工作时,将Flash存储器中的数据写入到对应的内存空间,从内存中调取参数变量进行波控码值计算,根据波控时序完成雷达布相。
2.2 波控算法处理
从(1)式、(2)式可以看出,Mα和Nβ为线性关系,可以将乘法关系转换成加法运算,匹配FPGA运算优势,通过计算出基准点单元指向系数α和β,逐级叠加可以得出所有的单元指向系数,进而计算出每个单元的波控码值[7]。
FPGA作为波控系统的核心部件,无法完成三角函数计算。查表方式和乘-加法转换方式的结合很好地实现了单一FPGA芯片完成波控扫描任务。由图2可以得出,整个系统共分了5块内存空间、2块三角函数sin和cos对应的角度参数表、2块工作频点对应的参数表、1块通道校正表。所有的参数都根据移相器的位数进行量化并保存到Flash存储器中,每次工作上电,将参数从Flash读取到内存中,方便调用;同时,整个码表的存储空间相比于传统的码值存储方式有1个数量级的减少。
具体算法逻辑示意图如图4所示,根据参数输入及仿真验证,结果如图5所示。
图4 改进型波控算法逻辑示意图
图5 改进型波控算法仿真效果
通过仿真验证了改进性雷达波束控制时序的高实时性。同时,相控阵雷达在多种模式下完全采用波束码值存储,会占用几十兆甚至几百兆存储空间,工程应用查表地址过多,不易操作。然而,采用三角函数存储表,存储空间可减少数个量级,有效地解决了存储单元开销大、工作量大等问题。
3 结 论
本文简述了改进型波控算法原理及实际应用,由浅入深。首先介绍了传统的相控阵雷达波束控制一般查表法和实时计算法2种方式;然后分析了单一FPGA芯片架构工程设计,并得出2种传统方式基于FPGA芯片的局限性。为此,将查表法和实时计算法相互结合,取长补短,规避了FPGA无法完成浮点运算的缺陷,又节约码表存储的内存空间,思路清晰,操作简单,高效实时,稳定可靠。并通过例程仿真验证了该方法的有效性,且已应用于多型相控阵雷达天线波束控制设计,该设计方法对相控阵雷达波束控制技术的发展具有一定的推动作用[8]。