CN109683519A - 一种自适应算法的fpga实现方法 - Google Patents
一种自适应算法的fpga实现方法 Download PDFInfo
- Publication number
- CN109683519A CN109683519A CN201811568900.0A CN201811568900A CN109683519A CN 109683519 A CN109683519 A CN 109683519A CN 201811568900 A CN201811568900 A CN 201811568900A CN 109683519 A CN109683519 A CN 109683519A
- Authority
- CN
- China
- Prior art keywords
- matrix
- signal
- vector
- floating
- implementation method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Radio Transmission System (AREA)
- Variable-Direction Aerials And Aerial Arrays (AREA)
Abstract
本发明涉及一种自适应算法的FPGA实现方法,属于数字信号处理技术领域。该方法包括如下步骤:1,计算四个天线阵元组成的均匀线阵的导引矢量;2,计算来波信号的自相关矩阵;3,计算来波信号自相关矩阵的逆矩阵;4,计算权矢量;5,将权矢量与四个阵元的接收信号进行相乘,得到输出信号。本发明能够实现自适应滤波,从而实现自适应天线阵的效果。
Description
技术领域
本发明涉及一种自适应算法的FPGA(现场可编程门阵列)实现方法,属于数字信号处理技术领域。
背景技术
自适应滤波器依靠递归算法进行运算,这样使得它在不能得到有关信号特征完整知识的环境下有可能完成滤波运算。在平稳环境下,递归算法经一些成功迭代后收敛于某种统计意义上的最优维纳解;在非平稳环境下,该算法提高了一种跟踪能力,因为它能够跟踪输入数据统计特性随时间的变化,只要这种变化是足够缓慢的。作为递归算法应用的一个直接结果,自适应滤波器的参数将借此从一次迭代到另一次迭代进行更新,滤波器参数变成与数据相关。
自适应滤波器具有在未知环境下良好运行并跟踪输入统计量随时间变化的能力,使得自适应滤波器成为信号处理和自动控制应用领域强大的设备。它已经成功地应用于通信、雷达、声呐等领域。
自适应滤波器应用的四种基本类型的作用描述如下:
(1)辨识。在这类涉及辨识的应用中,自适应滤波器用来提供一个在某种意义上能够最好拟合未知装置的线性模型。
(2)逆模型。在第二类应用中,自适应滤波器的作用是提供一个逆模型,该模型可在某种意义上最好拟合未知噪声装置。
(3)预测。这里,自适应滤波器的作用是对随机信号的当前值提供某种意义上的一个最好预测。
(4)干扰消除。在最后一类应用中,自适应滤波器以某种意义上的最优化方式消除包含在基本信号中的未知干扰。
自适应天线阵可采用任意的阵元方向图、极化和间距工作。其能自动调整极化,对所需信号的极化衰减最小,能自动将最大接收方向调整到所需信号来波方向,并将零向调向干扰来波方向,故其抗干扰能力极佳。
FPGA(Field Programmable Gate Array,现场可编程门阵列)是在PAL(Programmable Array Logic,可编程阵列逻辑)、GAL(Generic Array Logic,通用阵列逻辑)、CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)的基础上发展出来的一种半定制电路,它不仅弥补了定制电路的不足,同时相较于以前的逻辑器件,其门电路数量又大大增加。
与传统的DSP(Digital signal processor,数字信号处理器)相比,其并行度与实时性较好,因此FPGA广泛应用于高速通信接口设计、高速数据采集、高速数据处理等领域。
发明内容
本发明提出了一种自适应算法的FPGA实现方法,结合了自适应算法和FPGA内部硬件的优势,实现了自适应天线阵的效果。
本发明为解决其技术问题采用如下技术方案:
一种自适应算法的FPGA实现方法,包括如下步骤:
步骤1,计算四个天线阵元组成的均匀线阵的导引矢量;
步骤2,计算来波信号的自相关矩阵;
步骤3,计算来波信号自相关矩阵的逆矩阵;
步骤4,计算权矢量;
步骤5,将权矢量与四个阵元的接收信号进行相乘,得到输出信号。
所述步骤1的具体过程如下:
由天线的方位角、俯仰角及各个天线阵元在同一坐标基下的位置计算天线的复数导引矢量。
所述步骤2的具体过程如下:
四元天线阵列在经过模数转换、数字下变频后得到信号复数列矢量,将该列矢量与其共轭转置相乘得到信号的自相关矩阵。随着信号列矢量的不断输入,将每次求得的自相关矩阵循环累加,当累加次数达到设定值时,将最终得到的自相关矩阵除以累加次数后输出。
所述步骤3的具体过程如下:
对于步骤2中输出的四阶矩阵,先求其所有的余子式,然后根据余子式求其伴随矩阵和行列式,最后将伴随除以行列式得到该四阶矩阵的逆矩阵。
所述步骤4的具体过程如下:
由步骤1得到的复数导引矢量和步骤3得到的信号逆矩阵求得天线阵元的复数权矢量。
所述步骤5的具体过程如下:
对步骤4中的复数权矢量进行共轭转置后,将其与后续经过下变频得到的信号复数列矢量相乘并输。
本发明的有益效果如下:
本发明采用FPGA技术来实现自适应天线阵,根据最后仿真结果画出的方向图,零陷最深处能够超过-80dB达到-80.15dB,说明天线阵对干扰信号的抑制效果较好;而在有用信号方向上的增益也接近最大,说明天线阵的主瓣能够有效地对准有用信号。因此,本发明能够有效地使天线阵接收有用信号、抑制干扰信号,提高信噪比,达到自适应天线阵的效果。
附图说明
图1是本发明的***框图。
图2是复数列矢量和自身的共轭转置相乘的FPGA实现框图。
图3是复数乘法的FPGA实现框图。
图4是FPGA求得的权矢量画出的方向图。
图5是本发明的***流程图。
图6是***的FPGA实现框图。
具体实施方式
下面结合附图对本发明创造做进一步详细说明。
本发明的***框图如图1所示。
步骤一中,天线阵的导引矢量
其中steer表示天线阵的导引矢量,λ为来波波长,d是孔径长度,x是阵元在坐标轴中的x坐标,y是阵元在坐标轴中的y坐标值,φ为天线方位角,θ是天线的俯仰角,即天线与xy平面的夹角。
本发明中数据及结果均是双精度浮点形式的。在进行FPGA程序设计时,对于公式(1)中的乘法、加法、除法运算,分别调用浮点乘、加、除IP核来实现;而对于式(1)中的指数运算,调用Cordic IP核来实现,Cordic核的sin和cos输出即为导引矢量的虚部和实部。
步骤二中,天线阵的来波信号在经过模数转换、数字下变频后变成了复数列矢量,则
Rs=Rs+sample·sampleH (2)
式中Rs为来波信号的复数自相关矩阵,sample是复数列矢量,sampleH是sample的共轭转置。
当第一个复数列矢量计算前,Rs为零,随着采样的进行,来波信号复数列矢量不断更新,Rs不断累加,当累加的次数等于一设定值时,将累加结果除以累加次数后输出,得到来波信号自相关矩阵的均值。
在FPGA程序设计时,对于式(2)中涉及到的复数列矢量和自身的共轭转置相乘,通过调用四个浮点乘法器核、一个浮点加法器核、和一个浮点加法器核来实现。假设为求sample·sampleH结果中的第m行、第n列元素bmn,则浮点乘法器1的两个数据输入分别为复数列矢量sample中第m行元素的实部、第n行元素的实部,浮点乘法器2的两个数据输入分别为复数列矢量sample中第m行元素的虚部、第n行元素的虚部,浮点乘法器3的两个数据输入分别为复数列矢量sample中第m行元素的虚部、第n行元素的实部,浮点乘法器4的两个数据输入分别为复数列矢量sample中第m行元素的实部、第n行元素的虚部,而浮点加法器的数据输入分别为浮点乘法器1和浮点乘法器2的输出,浮点减法器的数据输入分别为浮点乘法器3和浮点乘法器4的输出,这样浮点加法器的输出即为bmn的实部,浮点减法器的输出即为bmn的虚部。图2为复数列矢量和自身的共轭转置相乘的FPGA实现框图。
此外,在调用不同类型浮点IP核进行顺序运算,例如先调用浮点乘法器核进行乘法运算,再调用浮点加法器核对乘法的结果相加时,由于IP核存在延迟时间,不能先计算出一组数据的乘加值后,再将下一组数据输入到乘法器,这样会大大增加数据流延迟时间,应该将所有待处理的数据串行输入到乘法器核,后将乘法器的结果输入到加法器,这样才能提高整个***的处理速度、增加实时性。
步骤三中,若步骤二输出的自相关矩阵为
其中a11,a12,a13,a14,a21……,a43,a44是自相关矩阵Rs对应位置上的元素。
先求得a11,a12,a13,a14,a21……,a43,a44对应的余子式A11,A12,A13,A14,A21……,A43,A44,则Rs的行列式
|Rs|=a11·A11-a12·A12+a13·A13-a14·A14 (4)
Rs的伴随矩阵
则自相关矩阵Rs的逆矩阵
在FPGA程序设计时,调用四个浮点乘法器核、一个浮点加法器核、和一个浮点加法器核来实现复数浮点乘法。假设对于两个复数P、Q,计算P·Q,则浮点乘法器1的两个数据输入分别为P的实部、Q的实部,浮点乘法器2的两个数据输入分别为P的虚部、Q的虚部,浮点乘法器3的两个数据输入分别为P的实部、Q的虚部,浮点乘法器4的两个数据输入分别为P的虚部、Q的实部,而浮点减法器的数据输入分别为浮点乘法器1和浮点乘法器2的输出,浮点加法器的数据输入分别为浮点乘法器3和浮点乘法器4的输出,这样浮点减法器的输出即为P·Q的实部,浮点加法器的输出即为P·Q的虚部。图3为复数乘法的FPGA实现框图。
而对于复数浮点除法,则需要调用四个浮点乘法器核、一个浮点加法器核、一个浮点加法器核、和一个浮点除法器核来实现。假设对于两个复数P、Q,计算则浮点乘法器1的两个数据输入分别为P的实部、Q的实部,浮点乘法器2的两个数据输入分别为P的虚部、Q的虚部,浮点乘法器3的两个数据输入分别为P的虚部、Q的实部,浮点乘法器4的两个数据输入分别为P的实部、Q的虚部,而浮点加法器的数据输入分别为浮点乘法器1和浮点乘法器2的输出,浮点减法器的数据输入分别为浮点乘法器3和浮点乘法器4的输出,然后将浮点加法器、浮点减法器的输出分别寄存,再利用浮点乘法器和浮点加法器计算出Q实部和虚部的平方和,最后利用浮点除法器,将之前寄存的浮点加法器的输出和浮点减法器的输出分别除以Q实部和虚部的平方和即可得结果的实部和虚部。
步骤四中,天线阵的权矢量
式中:w为权矢量,Rs-1是步骤三中求得的自相关矩阵的逆矩阵,steer表示天线阵的导引矢量,steerH是steer的共轭转置,abs表示取模值。
对于该步骤,由于式(7)中被除数和除数均含有Rs-1·steer,故在FPGA程序设计时应先计算出Rs-1·steer,将其作为中间变量寄存,方便以后调用。在实现取模运算时,假如对于复数X,计算abs(X),应调用浮点乘法器核、浮点加法器核和浮点平方根核。先来利用浮点乘法器和浮点加法器计算出X实部和虚部的平方和,再将X实部和虚部的平方和输入到浮点平方根核,即得到abs(X)结果。
当天线参数如表1所示时,运行FPGA程序得到的权矢量画出的方向图如
图4。
来波波长(λ) | 0.143m |
孔径长度(d) | 0.063m |
天线阵的x轴坐标(x) | [0;1;0;1] |
天线阵的x轴坐标(y) | [0;0;1;1] |
天线俯仰角(θ) | ° |
天线方位角(φ) | ° |
表1天线参数
步骤五中,将步骤四求得的复数权矢量进行共轭转置后,与后续经过下变频得到的信号复数列矢量相乘,即加权求和,最后输出。
该步骤中,同样调用浮点乘法器、浮点加法器、浮点减法器来完成FPGA程序设计。
图5是本发明的***流程图。
此外,相对于自相关矩阵等其他模块,导引矢量模块的计算量较小,也不需要重复计算,因此在FPGA顶层状态机流转时,可以将导引矢量模块单独运行,不必先计算完导引矢量再计算自相关矩阵,增加多余的程序运行时间。
图6是***的FPGA实现框图。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,这些改进应视为本发明的保护范围。
Claims (6)
1.一种自适应算法的FPGA实现方法,其特征在于,包括如下步骤:
步骤1,计算四个天线阵元组成的均匀线阵的导引矢量;
步骤2,计算来波信号的自相关矩阵;
步骤3,计算来波信号自相关矩阵的逆矩阵;
步骤4,计算权矢量;
步骤5,将权矢量与四个阵元的接收信号进行相乘,得到输出信号。
2.根据权利要求1所述的一种自适应算法的FPGA实现方法,其特征在于:所述步骤1的具体过程如下:
由天线的方位角、俯仰角及各个天线阵元在同一坐标基下的位置计算天线的复数导引矢量。
3.根据权利要求1所述的一种自适应算法的FPGA实现方法:所述步骤2的具体过程如下:
四元天线阵列在经过模数转换、数字下变频后得到信号复数列矢量,将该列矢量与其共轭转置相乘得到信号的自相关矩阵;随着信号列矢量的不断输入,将每次求得的自相关矩阵循环累加,当累加次数达到设定值时,将最终得到的自相关矩阵除以累加次数后输出四阶矩阵。
4.根据权利要求3所述的一种自适应算法的FPGA实现方法:所述步骤3的具体过程如下:
对于步骤2中输出的四阶矩阵,先求其所有的余子式,然后根据余子式求其伴随矩阵和行列式,最后将伴随除以行列式得到该四阶矩阵的逆矩阵。
5.根据权利要求1所述的一种自适应算法的FPGA实现方法:所述步骤4的具体过程如下:
由步骤1得到的复数导引矢量和步骤3得到的信号逆矩阵求得天线阵元的复数权矢量。
6.根据权利要求1所述的一种自适应算法的FPGA实现方法:所述步骤5的具体过程如下:
对步骤4中的复数权矢量进行共轭转置后,将其与后续经过下变频得到的信号复数列矢量相乘并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811568900.0A CN109683519A (zh) | 2018-12-21 | 2018-12-21 | 一种自适应算法的fpga实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811568900.0A CN109683519A (zh) | 2018-12-21 | 2018-12-21 | 一种自适应算法的fpga实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109683519A true CN109683519A (zh) | 2019-04-26 |
Family
ID=66188632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811568900.0A Pending CN109683519A (zh) | 2018-12-21 | 2018-12-21 | 一种自适应算法的fpga实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109683519A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598271A (zh) * | 2019-08-22 | 2019-12-20 | 中国电子科技集团公司第二十九研究所 | 一种基于fpga实现4辅助天线slc功能的***及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110084879A1 (en) * | 2007-04-09 | 2011-04-14 | Physical Domains, LLC | Retrodirective transmit and receive radio frequency system based on pseudorandom modulated waveforms |
CN103116170A (zh) * | 2013-01-16 | 2013-05-22 | 武汉大学 | Gnss的基于天线阵列干扰抑制模块的室内测试*** |
CN105227227A (zh) * | 2015-10-15 | 2016-01-06 | 宿州学院 | 一种基于小波的智能天线波束形成***和方法 |
CN106646529A (zh) * | 2016-11-11 | 2017-05-10 | 深圳市天弓导航科技有限公司 | 一种基于多波束优选的gnss天线阵抗干扰方法 |
CN107092007A (zh) * | 2017-05-25 | 2017-08-25 | 电子科技大学 | 一种虚拟二阶阵列扩展的波达方向估计方法 |
CN108631851A (zh) * | 2017-10-27 | 2018-10-09 | 西安电子科技大学 | 基于均匀直线阵列零陷加深的自适应波束形成方法 |
-
2018
- 2018-12-21 CN CN201811568900.0A patent/CN109683519A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110084879A1 (en) * | 2007-04-09 | 2011-04-14 | Physical Domains, LLC | Retrodirective transmit and receive radio frequency system based on pseudorandom modulated waveforms |
CN103116170A (zh) * | 2013-01-16 | 2013-05-22 | 武汉大学 | Gnss的基于天线阵列干扰抑制模块的室内测试*** |
CN105227227A (zh) * | 2015-10-15 | 2016-01-06 | 宿州学院 | 一种基于小波的智能天线波束形成***和方法 |
CN106646529A (zh) * | 2016-11-11 | 2017-05-10 | 深圳市天弓导航科技有限公司 | 一种基于多波束优选的gnss天线阵抗干扰方法 |
CN107092007A (zh) * | 2017-05-25 | 2017-08-25 | 电子科技大学 | 一种虚拟二阶阵列扩展的波达方向估计方法 |
CN108631851A (zh) * | 2017-10-27 | 2018-10-09 | 西安电子科技大学 | 基于均匀直线阵列零陷加深的自适应波束形成方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598271A (zh) * | 2019-08-22 | 2019-12-20 | 中国电子科技集团公司第二十九研究所 | 一种基于fpga实现4辅助天线slc功能的***及方法 |
CN110598271B (zh) * | 2019-08-22 | 2023-06-20 | 中国电子科技集团公司第二十九研究所 | 一种基于fpga实现4辅助天线slc功能的***及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110361691B (zh) | 基于非均匀阵列的相干信源doa估计fpga实现方法 | |
WO1998000930A1 (en) | A signal processing method utilizing an eigenvector corresponding to the maximum eigenvalue of an autocorrelation matrix of received signals for an antenna array system | |
JP3885104B2 (ja) | 信号処理装置及び信号処理方法 | |
del Rıo et al. | Comparison between the matrix pencil method and the Fourier transform technique for high-resolution spectral estimation | |
CN112019284B (zh) | 一种低信噪比下的窄带信号时差计算方法及*** | |
CN107124216A (zh) | 一种针对阵列误差的Capon稳健自适应波束形成方法及*** | |
CN113156383B (zh) | 基于fpga的雷达信号抗干扰方法、***及数据处理设备 | |
CN115856767B (zh) | 一种可重构智能超表面辅助的波到达方向估计方法 | |
CN108594166A (zh) | 一种二维波达方向估计方法及装置 | |
Zhao et al. | A division-free and variable-regularized LMS-based generalized sidelobe canceller for adaptive beamforming and its efficient hardware realization | |
CN111580042B (zh) | 一种基于相位优化的深度学习测向方法 | |
CN109683519A (zh) | 一种自适应算法的fpga实现方法 | |
CN114884841A (zh) | 基于高阶统计和非均匀阵列的欠定参数联合估计方法 | |
CN111859278B (zh) | 抗动态干扰的极化波束形成方法、***、存储介质及应用 | |
CN113341371B (zh) | 一种基于l阵和二维esprit算法的doa估计方法 | |
Wang et al. | Hardware implementation of smart antenna systems | |
CN111722178B (zh) | 一种基于指向性模型数值求解的远场窄带信号来波方向估计方法 | |
Ma et al. | Computation-efficient 2-D DOA estimation algorithm with array motion strategy | |
Xu et al. | Low-complexity broadband beampattern synthesis using array response control | |
CN106338743B (zh) | 基于ccd解算的空频联合自适应调零算法 | |
Choi et al. | Real-time design of a smart antenna system utilizing a modified conjugate gradient method for CDMA-Based Mobile Communications | |
Jiang et al. | Space-time Broadband Beamforming Based on Constraint Matrix Reconstruction and Blocking Matrix Preprocessing | |
Ong | Adaptive beamforming algorithms for cancellation of multiple interference signals | |
Liu et al. | Bias analysis of MUSIC in the presence of mutual coupling | |
Kong et al. | A new reduced-dimension GSC for target tracking and interference suppression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190426 |
|
RJ01 | Rejection of invention patent application after publication |