一种通用化二维数字波束形成技术的IP核及生成方法

文档序号:30993781发布日期:2022-08-03 02:46阅读:274来源:国知局
一种通用化二维数字波束形成技术的IP核及生成方法
一种通用化二维数字波束形成技术的ip核及生成方法
技术领域
1.本发明属于信号处理技术领域,具体涉及一种通用化二维数字波束形成技术的ip核及生成方法。


背景技术:

2.当多个不同位置的天线接收同一位置的信号时,信号到达天线的时候会出现相位差。数字波束形成(digital beam forming,dbf)技术在阵列雷达领域应用十分广泛,是数字阵列雷达理论的重要组成部分。dbf技术的原理就是通过生成权系数将同一信号到达不同位置天线时将因为路程不同而导致的相位差进行补偿,让所有不同位置天线形成的波束都指向同一个方向,让其在期望方向的能量接收最大。dbf技术可以通过改变权值让阵列波束指向不同的方向,实现波束扫描,并且可以选用合适的窗函数来降低副瓣。
3.然而,dbf技术对于阵列天线的排布等因素的影响较大,所以在工程实现中一般都是通过fpga的verilog语言配合乘法器等ip核进行算法实现。但是该方法具有可移植性差、通用性低的缺点。


技术实现要素:

4.为了解决现有技术中存在的上述问题,本发明提供了一种通用化二维数字波束形成技术的ip核及生成方法。本发明要解决的技术问题通过以下技术方案实现:本发明实施例提供了一种通用化二维数字波束形成技术的ip核生成方法,包括步骤:配置阵列天线的天线行数、天线列数、天线行间距、天线列间距和相位零点,并计算所述阵列天线中各阵元距离所述相位零点的水平间距和竖直间距;通过载频系数配置载频本振,并利用期望波束形成方向、所述载频本振、所述水平间距和所述竖直间距计算期望方向的空域导向矢量;利用所述天线行数、所述天线列数和高斯窗输出点数、高斯窗口宽度参数计算目标高斯窗;将所述空域导向矢量与所述目标高斯窗相乘,计算得到波束形成权系数;对上述步骤所形成的程序进行综合与时序优化,并将优化后的程序生成可调用的通用化ip核。
5.在本发明的一个实施例中,计算所述阵列天线中各阵元距离相位零点的水平间距和竖直间距,包括:利用所述天线行数、所述天线列数、所述天线行间距、所述天线列间距计算各阵元距离所述相位零点的所述水平间距和所述竖直间距。
6.在本发明的一个实施例中,所述相位零点包括所述阵列天线的中心位置或者所述阵列天线的左下角天线。
7.在本发明的一个实施例中,当所述相位零点为所述阵列天线的中心位置时,所述
水平间距和所述竖直间距为:水平间距和所述竖直间距为:其中,表示各阵元距离相位零点的水平间距,表示各阵元距离相位零点的竖直间距,表示天线列数,表示天线行数,表示天线列间距,表示天线行间距。
8.在本发明的一个实施例中,当所述相位零点为所述阵列天线的左下角天线时,所述水平间距和所述竖直间距为:述水平间距和所述竖直间距为:其中,表示各阵元距离相位零点的水平间距,表示各阵元距离相位零点的竖直间距,表示天线列数,表示天线行数,表示天线列间距,表示天线行间距。
9.在本发明的一个实施例中,通过载频系数配置载频本振,并利用期望波束形成方向、所述载频本振、所述水平间距和所述竖直间距计算期望方向的空域导向矢量,包括:通过所述载频系数配置所述载频本振:其中,表示射频本振,表示基底射频,表示载频系数,表示步进频率;利用所述载频本振、所述水平间距、所述竖直间距和所述期望波束形成方向计算期望方向在方位向的空域导向矢量和期望方向在俯仰向的空域导向矢量:导向矢量和期望方向在俯仰向的空域导向矢量:其中,表示期望方向在方位向的空域导向矢量,表示期望方向在俯仰向的空域导向矢量,,,表示各阵元距离相位零点的水平间距,表示各阵元距离相位零点的竖直间距,表示利用载频本振计算出的发射波波长;
将所述方位向的空域导向矢量和所述俯仰向的空域导向矢量进行罗内克积,得到所述期望方向的空域导向矢量:其中,表示期望方向的空域导向矢量。
10.在本发明的一个实施例中,利用所述天线行数、所述天线列数和高斯窗口宽度参数计算目标高斯窗,包括:将所述高斯窗输出点数分别取所述天线行数和所述天线列数,并利用所述高斯窗口宽度参数计算出第一高斯向量和第二高斯向量,计算公式为:其中,表示高斯窗点数,表示高斯窗口宽度参数,,取值次;将所述第一高斯向量和所述第二高斯向量进行克罗内克积,计算出个高斯窗点数,得到所述目标高斯窗。
11.在本发明的一个实施例中,其特征在于,所述ip核生成方法利用vivado-hls工具采用c++语言实现。
12.本发明的另一个实施例提供了一种通用化二维数字波束形成的ip核,由上述任一实施例所述的通用化二维数字波束形成技术的ip核生成方法生成得到,包括:天线阵列生成模块,用于配置阵列天线的天线行数、天线列数、天线行间距、天线列间距和相位零点,并计算所述阵列天线中各阵元距离所述相位零点的水平间距和竖直间距;期望方向导向矢量生成模块,用于通过载频系数配置载频本振,并利用期望波束形成方向、所述载频本振、所述水平间距和所述竖直间距计算期望方向的空域导向矢量;高斯窗生成模块,用于利用所述天线行数、所述天线列数和高斯窗口宽度参数计算目标高斯窗;波束形成权系数生成模块,用于将所述空域导向矢量与所述目标高斯窗相乘,计算得到波束形成权系数;ip核生成模块,对上述步骤所形成的程序进行综合与时序优化,并将优化后的程序生成可调用的通用化ip核。
13.与现有技术相比,本发明的有益效果:1、本发明的ip核生成方法可以自定义相位零点,通过进行天线排布自定义并计算各阵元距离相位零点的距离可以实现阵列天线排布自定义,通过载频系数配置载频本振可以实现载频自定义,有效提高了该方法对于不同阵列天线排布的适用性,提高了该方法的通用性;结合天线行数、天线列数、高斯窗口宽度计算目标高斯窗可以实现窗函数自定义,
有效提高了天线的综合性能,形成高增益的窄波束;另外,生成可调用的通用化ip核,可以提高该方法的可移植性,并且操作简单,方法实现简单易懂。
14.2、本发明的ip核生成方法利用vivado-hls工具采用c++语言实现,并对算法进行并行优化与时序优化,在保证计算精度的前提下,有效减小资源占用,提高了实时性要求。
附图说明
15.图1为本发明实施例提供的一种通用化二维数字波束形成技术的ip核生成方法的流程示意图;图2为本发明实施例提供的一种通用化天线阵列排布图;图3为本发明实施例提供的一种交叉天线阵列排布图。
具体实施方式
16.下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
17.实施例一请参见图1,图1为本发明实施例提供的一种通用化二维数字波束形成技术的ip核生成方法的流程示意图。该通用化二维数字波束形成技术的ip核生成方法利用vivado hls工具,采用c++语言编写将波束形成方法进行通用化设计,具体包括步骤:s1、配置阵列天线的天线行数、天线列数、天线行间距、天线列间距和相位零点,并计算阵列天线中各阵元距离相位零点的水平间距和竖直间距。
18.请参见图2,图2为本发明实施例提供的一种通用化天线阵列排布图。
19.步骤s1具体包括步骤:s11、获取阵列天线的配置参数,配置参数包括:天线行数、天线列数、天线行间距、天线列间距和相位零点。
20.具体的,相位零点可以为阵列天线中的任意位置,即相位零点可以为某个天线所在的位置上,也可以为无天线设置的位置上。优选的,相位零点包括阵列天线的中心位置或者阵列天线的左下角天线这两种模式。
21.s12、利用天线行数、天线列数、天线行间距、天线列间距计算各阵元距离相位零点的水平间距和竖直间距。
22.在一个具体实施例中,当相位零点为阵列天线的中心位置,即坐标为(m/2,n/2)的位置为相位零点时,水平间距和竖直间距为: (1)其中,表示各阵元距离相位零点的水平间距,表示各阵元距离相位零点的竖直间距,表示天线列数,表示天线行数,表示天线列间距,表示天线行间
距。
23.在一个具体实施例中,当相位零点为阵列天线的左下角天线,即坐标为(1,1)的天线为相位零点时,水平间距和竖直间距为:
ꢀꢀ
(2)其中,表示各阵元距离相位零点的水平间距,表示各阵元距离相位零点的竖直间距,表示天线列数,表示天线行数,表示天线列间距,表示天线行间距。
24.s2、通过载频系数配置载频本振,并利用期望波束形成方向、载频本振、水平间距和竖直间距计算期望方向的空域导向矢量。具体包括步骤:s21、通过载频系数配置载频本振。
25.具体的,获取载频系数,通过载频系数配置载频本振,计算公式如下:
ꢀꢀ
(3)其中,表示射频本振,表示基底射频,表示载频系数,表示步进频率。
26.本实施例中,通过配置载频系数的大小可以实现射频本振的频率在基底射频的基础上步进达到使用者的射频要求,其中,基底射频与步进频率是在形成ip核前设置好的固定参数。通过该方法有效实现了载频可调,可调范围的最低值为,最高值可通过载频系数与步进进行设置。例如,本实例中设置基底射频为14.5ghz,步进频率为50mhz,则可以通过配置载频系数f为30使射频本振达到16ghz。
27.s22、利用载频本振、水平间距、竖直间距和期望波束形成方向计算期望方向在方位向的空域导向矢量和期望方向在俯仰向的空域导向矢量。
28.具体的,获取期望波束形成的方位角与俯仰角,利用载频本振、发射波波长、水平间距、竖直间距、期望波束形成的方位角、俯仰角计算期望方向在方位向的空域导向矢量和期望方向在俯仰向的空域导向矢量。
29.期望方向在方位向的空域导向矢量为:
ꢀꢀ
(4)期望方向在俯仰向的空域导向矢量为: (5)其中,表示期望方向在方位向的空域导向矢量,表示期望方向在俯仰向的
空域导向矢量,,,表示步骤s12计算出的各阵元距离相位零点的水平间距,表示步骤s12计算出的各阵元距离相位零点的竖直间距,表示利用步骤s21配置出的载频本振计算出的发射波波长。
30.s23、将方位向的空域导向矢量和俯仰向的空域导向矢量进行罗内克积,得到期望方向的空域导向矢量。
31.具体的,将与进行克罗内克积(kronecker积)便得到了期望方向的空域导向矢量,用表示期望方向的空域导向矢量: (6)其中,表示期望方向的空域导向矢量。
32.具体的,期望方向的空域导向矢量的点数为。
33.s3、利用天线行数、天线列数和高斯窗口宽度参数计算目标高斯窗。具体包括步骤:s31、将高斯窗输出点数分别取天线行数和天线列数,并利用高斯窗口宽度参数计算出第一高斯向量和第二高斯向量。
34.计算第一高斯向量:具体的,首先获取高斯窗输出点数k:将高斯窗输出点数k取值为天线行数m,此时输出为m个值,计算m个数的离散程度得到m个数的标准差;然后获取高斯窗口宽度参数,高斯窗口宽度参数与m个数的标准差的倒数成正比,与窗宽成反比;最后,利用高斯窗计算第一高斯向量:
ꢀꢀ
(7)其中,表示高斯窗点数,表示高斯窗口宽度。
35.上式中,的取值范围为:
ꢀꢀ
(8)其中,取值次。
36.在一个具体实施例中,n取值为取值范围的最小值依次加1得到。例如,k=5,则n取值范围为-2到2,此时n取值为-2、-1、0、1、2;k=6,则n取值范围为-2.5到2.5,此时n取值为-2.5、-1.5、-0.5、0.5、1.5、2.5。
37.计算第二高斯向量:具体的,首先获取高斯窗输出点数k:将高斯窗输出点数k取值为天线列数n,此时输出为n个值,计算n个数的离散程度得到n个数的标准差;然后获取计算第一高斯向量时所
用的高斯窗口宽度参数,高斯窗口宽度与n个数的标准差的倒数成正比,与窗宽成反比;最后,利用式(7)和式(8)计算第二高斯向量。
38.s32、将第一高斯向量和第二高斯向量进行克罗内克积,计算出个高斯窗点数,得到目标高斯窗。
39.具体的,将两组高斯向量进行克罗内克积,计算出个的高斯窗点数,得到目标高斯窗。
40.需要说明的是,步骤s3中,窗函数的输出点数需要与阵列的行数列数相对应,例如阵列天线排布的行数为m,列数为n,则需要将k值分别取m与n计算出两组高斯点组成的向量,将这两组向量进行克罗内克积,得到个点。
41.本实施例中,如果高斯窗可以较好的与阵列排布相匹配,且当不需要高斯窗函数时可以设置宽度参数为0,则输出高斯窗值全为1,相当于对步骤s2计算的空域导向矢量没做加窗处理。
42.s4、将空域导向矢量与目标高斯窗相乘,计算得到波束形成权系数。
43.具体的,将步骤s2计算得到的个点的空域导向矢量与步骤s3计算得到的个点的目标高斯窗分别点乘得到点数为的波束形成权系数,该波束形成权系数为降低副瓣的波束形成权系数。
44.s5、对上述步骤所形成的程序进行综合与时序优化,并将优化后的程序生成可调用的通用化ip核。具体包括步骤:s51、对各阵元距离相位零点的水平间距和竖直间距的计算进行优化。
45.具体的,在计算各阵元距离相位零点的水平间距和竖直间距时,多次使用for循环,可用pipeline指令对循环进行流水线设计,减少循环使用时间,因为该方法用到行数与列数内嵌for循环,所以可以通过unroll指令对内循环进行展开,降低for循环消耗时间,使得水平间距和竖直间距的计算可以分别进行,降低计算时间。
46.s52、对执行步骤的顺序进行优化。
47.具体的,对于步骤s3计算高斯窗点数组成的向量时,除了输入点数以外参数都相同,则可将高斯窗生成模块写为函数体,重读调用两次,实现并行运算,可降低时间,或者利用循环分时复用同一模块减小资源消耗。
48.本实施例中,通过上述步骤,可以使得步骤s2和步骤s3并行,从而降低计算时间,减小资源消耗。
49.s53、对输入输出接口进行接口优化。
50.具体的,对输入输出接口进行接口优化,在计算结果精度保证的前提下尽可能的减小寄存器的使用,极大了节省了fpga的资源消耗。
51.s54、将优化后的程序生成可调用的通用化ip核。
52.具体的,将上述优化形成的程序生成可以被verilog直接调用的ip核,便于使用者直接使用,避免了开发者重复劳动,并且ip核使用方便简单易懂,可移植性高更有助于缩短算法开发周期。
53.进一步的,生成的通用化ip核可用于对不同排布的天线阵列计算波束形成权系
数,从而进行相位补偿,便于后续对目标的测角测速。
54.请参见图3,图3为本发明实施例提供的一种交叉天线阵列排布图。当天线排布为一类非全部占满个天线位置的情况时,同样可以通过本实施例的通用化ip进行计算生成权系数。具体实现方法是同样设置天线行数为m,天线列数为n,计算出个点数的权矢量,因为输出结果为一组向量,该向量中每个元素的位置与天线阵列上每一个天线的位置为一一对应关系,所以对于特殊排布的阵列天线只需选取输出数组中天线对应位置的元素再重新组合成一个新的权矢量向量即可。
55.具体的,对每个天线接收到的数字信号乘以一个复数以进行相位补偿,该复数即为补偿值,多个补偿复数形成权矢量;每个天线所对应的补偿值不一样,计算m*n个点数的矩阵,得到补偿值所组成的矩阵,每个值在矩阵中的位置代表某个天线,从而可以通过把某个补偿值去掉的方式,组合成新的天线阵列。
56.本实施例的ip核生成方法具有以下优点:1)可以实现载频可调。对于不同的发射波形,其载频有可能存在一定差异,会导致一般波束形成方法对于不同载频波形的通用性较差,本实施例的载频可调极大地提高算法对于不同在的适用性。2)实现阵列天线排布自定义。对于不同排布的阵列天线,波束形成算法求权系数的过程存在差异,本实施例可以自定义天线的行数、列数、行间距、列间距与相位零点,能满足各式各样的不同排布方式的阵列天线,极大地提高了本实施例方法对于不同阵列天线排布的适用性。3)自定义配置窗函数。波束形成方法中添加窗函数可以有效降低副瓣,本实施例的自定义配置窗函数有效提高了天线的综合性能,形成高增益的窄波束。4)本实施例基于xilinx的vivado hls工具采用c++语言编写,并对方法进行并行优化与时序优化,在保证计算精度的前提下,有效减小资源占用和提高实时性要求;基于xilinx的vivado hls工具可以生成适用于vivado工程的ip核,提高了算法的可移植性。5)本实施例技术成本低,算法耗时短,有效提高了实时性能。
57.综上,本实施例的本发明的ip核生成方法可以自定义相位零点,通过计算各阵元距离相位零点的距离可以实现阵列天线排布自定义,通过载频系数配置载频本振可以实现载频自定义,有效提高了该方法对于不同阵列天线排布的适用性,提高了该方法的通用性;结合天线行数、天线列数、高斯窗口宽度计算目标高斯窗可以实现窗函数自定义,有效提高了天线的综合性能,形成高增益的窄波束;另外,生成可调用的通用化ip核,可以提高该方法的可移植性,并且操作简单,方法实现简单易懂。本实施例的ip核生成方法利用vivado-hls工具采用c++语言实现,并对算法进行并行优化与时序优化,在保证计算精度的前提下,有效减小资源占用,提高了实时性要求。
58.实施例二在实施例一和实施例二的基础上,本实施例提供了一种通用化二维数字波束形成的ip核,该ip核由实施例一或者实施例二的生成方法生成得到,包括天线阵列生成模块、期望方向导向矢量生成模块、高斯窗生成模块、波束形成权系数生成模块和ip核生成模块组成。
59.具体的,天线阵列生成模块用于配置阵列天线的天线行数、天线列数、天线行间距、天线列间距和相位零点,并计算阵列天线中各阵元距离相位零点的水平间距和竖直间距。期望方向导向矢量生成模块用于通过载频系数配置载频本振,并利用期望波束形成方
向、载频本振、水平间距和竖直间距计算期望方向的空域导向矢量。高斯窗生成模块用于利用天线行数、天线列数和高斯窗口宽度参数计算目标高斯窗。波束形成权系数生成模块用于将空域导向矢量与高斯窗相乘,计算得到波束形成权系数。ip核生成模块用于对上述步骤所形成的程序进行综合与时序优化,并将优化后的程序生成可调用的通用化ip核。
60.上述各个模块中的执行步骤请参见实施例一,本实施例不再赘述。
61.本实施例的ip核由天线阵列生成模块、期望方向导向矢量生成模块、高斯窗生成模块、波束形成权系数生成模块和ip核生成模块组成,有效提高了该方法的通用性,其通用性主要包括,载频可自定义、天线阵列排布可自定义、相位零点可自定义、窗函数可自定义;并且在进行约束与优化之后,可以有效降低该核资源消耗与时间占用。本实施例生成可被调用的ip核既能提高可移植性,并且操作简易,方法实现简单易懂。
62.以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1