采用FPGA来实现自适应波束形成算法

发布者:ph49635359最新更新时间:2008-11-12 来源: 中电网关键字:FPGA  声纳系统  最小均方自适应算法 手机看文章 扫描二维码
随时随地手机看文章

  1 引 言

  在雷达及声纳信号处理系统中,波束形成算法通常采用DSP软件编程实现,控制逻辑电路采用CPLD来完成,这种方法具有软件编程灵活、功能易于扩展的优点,但对于实时性能要求很高的系统,如雷达、声纳探测和超声成像等系统中为了提高对目标变化实时跟踪和测量,就必须尽量缩短信号处理的时间,过长的运算处理时间会对水下目标的探测性能产生较大的影响。声纳工作环境中总存在着各种干扰(例如本舰辐射噪声、近场其他船只的干扰等),普通波束形成系统是一种预形成波束系统,当他处在各向同性、均匀韵噪声场时,可能具有相当好的检测能力,但是出现近场干扰,或者背景噪声有某种不平稳性,声纳的检测能力就会迅速下降,以至完全失去检测能力,而自适应波束形成技术(ABF)就是声纳能够根据周围环境噪声场的变化,不断地自动调节本身的参数以适应周围环境,抑制干扰并检出有用信号。因此采用FPGA来实现自适应波束形成算法是满足复杂海洋环境超声阵列波束形成的较好途径。

  最小均方自适应算法(Least Mean Square,LMS)较其他自适应算法具有结构简单,计算量小,易于实现等特点。FPGA实现LMS自适应波束形成算法比采用现有DSP来实现可以明显提高信号的处理速度,节约资源,能更好地满足复杂多变的海洋环境,具有广泛的实用价值。

  波束形成系统相当于一个时空滤波器,自适应波束形成系统可采用IIR和FIR两种结构。与IIR滤波器相比,FIR滤波器具有以下优点:可得到严格的线性相位;主要采用非递归结构,从理论上以及从实际的有限精度运算中,都是稳定的;由于冲激响应是有限长度的,因此可以用快速傅里叶变换算法,运算速度快;FIR滤波器设计方法灵活。

  本文采用自适应的FIR滤波器结构,结合时延最小均方(DLMS)算法,充分利用FPGA芯片运算速度快,存储资源丰富等优点设计和实现了基于FIR超声阵列自适应波束形成。主动声纳信号为窄带信号,通常采用复数形式表示,在空间滤波器模块采用了循环移位流水乘加器,使复数乘加运算节约了大量资源,同时用并行乘法器完成了DLMS算法,并给出了系统软、硬件模块和仿真分析。

  2 超声阵列波束形成系统模型及原理

  2.1 系统架构及原理

  自适应波束形成又称自适应空域滤波,他是通过对各阵元加权进行空域滤波,来达到增强有用信号、抑制干扰的目的,而且他可以根据信号环境的变化,来改变各阵元的加权因子。在理想的条件下,自适应波束形成技术可以有效地抑制干扰而保留期望(有用)信号,从而使阵列的输出信号干扰噪声比(SINR)达到最大。自适应过程的实现可以采用任何一种适用于横向结构滤波器的自适应迭代算法,比如Wiener滤波器,或者最小均方(LMS)算法。本设计采用最小均方(LMS)算法,系统结构原理如图1所示。

基于FPGA圆阵超声自适应波束形成的设计

  基于FIR自适应波束形成系统过程如下:一方面,输入信号与表示在n时刻的值可调节权系数ω1(n),ω2(n),…,ωm(n)相乘后相加得到输出;另一方面,将输出信号与期望信号进行对比,所得的误差值通过一定的DLMS自适应控制算法再用来调整权值,以保证空间滤波器处在最佳状态,实现滤波的目的。

  在延时LMS算法(the Delayed LMS Algoritms,DLMS)中,将系数更新延迟几个采样周期,只要延迟小于系统阶数,也就是滤波器长度,则误差梯度▽[n]=e[n]x[n],也就是▽[n]≈▽[n-D],但对于由FPGA实现的乘法器和系数更新需要额外的流水线级,如果引入一个延迟因子D,μ为步长因子,LMS算法就变成:

基于FPGA圆阵超声自适应波束形成的设计

  2.2 系统FPGA软件模块设计

  根据数字自适应波束形成的原理和数学模型,本文设计的基于FPGA数字波束形成系统结构如图2所示。8路输入信号x(n)经过前端信号处理,A/D转换后,在总控模块的控制下进入输入数据存储模块双口RAM,自适应波束形成的具体实现步骤如下:

  第一步:由式(1)得,实际输入的x(n)和调整后的权值w(n)各分量相乘之后累加得到输出y(n);

  第二步:由式(2)得,实际输出的y(n)与期望d(n)相减得到调整误差e(n);

  第三步:由式(3)得,延时后的调整误差P(n)跟步长的2倍相乘,再和延时的输入x(n-D)相乘得到的积与延时的权值相加,得到新的权值向量。

  第四步:新的权值向量再与新的输入向量循环进行第一到第三步实现自适应。

  由此,我们可以将系统分为五大模块:主控模块:主要产生时钟信号,给各模块提供时序信号触发各模块的启动和初始化;双口存储模块(包括输入数据存储模块、权值存储模块、误差信号存储模块等):存储各功能模块所需的数据和参数;自适应权值计算模块,误差计算模块:这两个模块可以合在一起,用于系数更新的白适应算法;空间滤波器乘加模块:完成滤波运算,得到输出结果。

基于FPGA圆阵超声自适应波束形成的设计

  2.2.1 控制模块

  控制模块是整个系统完成功能的控制部件,主要协调各功能模块顺利实现功能,由系统时钟产生时钟脉冲,设计中用分频和有限状态机描述来产生存储器读写信号、滤波运算所用到的控制时钟和复数运算。

  输入信号和权值是8位的复数数据,通过控制模块选择乘法操作的操作数,两个复数信号相乘的4种组合00,11,01,10可以完成实部和虚部之间4个乘法运算,四种情况控制模块输出的控制信号分别为ST0,ST1,ST2,ST3。

  其中,clk_regbt用来控制乘法器完成乘法,counterbt用来控制乘数的位选,clk_reg用来控制运算新数的进入、上次计算的完毕和结果的输出。

  2.2.2 存储模块

  存储模块采用8位和16位双口RAM(如图3所示)作为信号数据和权值数据的存入和读取存储器,分别用来存放输入信号x、权值ω和误差e,分别由控制信号clkregbt,clk_regw和clk_rege来控制信号的写入和读出。其中x_ram用来存放输入信号;w_ram存放权值,其输入为系数更新模块的输出,输出为更新后的权值。

  2.2.3 自适应处理及复数乘加器模块

  数字波束形成器是通过加权因子对空间不同阵元接收信号的加权求和而成的。由于加权因子相当于滤波器系数,而输入的信号为空间位置不同的阵元的接收信号。所以可将数字波束形成器等同于一个空域滤波器来实现。

基于FPGA圆阵超声自适应波束形成的设计

  3 系统仿真与验证

  本文设计核心部分是基于Stratix系列EPlS10芯片设计的分别对I/Q两路原始数据进行DLMS自适应算法和复数乘加运算,在QuartusⅡ环境下用VHDL语言编写了各功能模块,并进行了仿真,共占用了2 703个逻辑单元,同时应用Matlab对数字结果进行波形仿真,以下为仿真验证的结果。

  图5为主控模块的仿真波形,其中ST0,ST1,ST2,ST3为复数乘法的4种组合,clk_regbt用来控制乘法器完成乘法,counter_bt用来控制乘数的位选,clk_reg用来控制运算新数的进入、上次计算的完毕和结果的输出。

基于FPGA圆阵超声自适应波束形成的设计

  图6为复数乘加模块功能仿真结果,dc_out,ds_out,xc_out,xs_out分别是输入信号和期望信号的实部和虚部,ec_out,es_out,yc_out,ys_out分别为误差和滤波输出的实部和虚部。

基于FPGA圆阵超声自适应波束形成的设计

  图7为系统仿真测试结果:系统预形成波束方向为0°方向,干扰从45°传来,通过仿真结果可以看出,主波束在0°方向形成,和预形成主波束吻合,在45°干扰方向形成零陷,并且提高了主波束的增益,满足系统的设计要求。

基于FPGA圆阵超声自适应波束形成的设计

  4 结 语

  自适应DBF是现代声纳阵列信号处理的关键技术之一,本文介绍了利用FPGA芯片实现的自适应BDF结构,给出了相应的硬件设计和仿真验证,采用FPGA结构,硬件成本低,在自适应阵列信号处理系统中具有很好的应用前景。

关键字:FPGA  声纳系统  最小均方自适应算法 引用地址:采用FPGA来实现自适应波束形成算法

上一篇:基于FPGA的mif文件创建与使用
下一篇:基于FPGA的高阶QAM调制器的实现

推荐阅读最新更新时间:2024-05-02 20:43

Lattice:在变换中的FPGA市场抓住成长契机
莱迪思半导体(Lattice Semiconductor)稍早前公布截至2011年4月2日止的第一季财报,营收8,260万美元,较上一季的7,310万美元成长13%,也较去年同期成长17%。该公司表示,瞄准低成本、低功耗市场,以及专注於电源管理市场的策略,是推动稳定成长的主要原因。 在高度竞争的可编程逻辑市场中,一直以来都由赛灵思(Xilinx)和Altera所支配,无论在产量、营收或技术领先方面皆然。这也造成了此一市场尽管不断有新创公司投入,却鲜少有机会能真正与上述业者匹敌的情况。不过,PLD领域的老字号业者Lattice正以回异於领先厂商专注高阶市场及技术领先的策略,在中低阶领域不断拓展PLD产品的势力。 莱迪
[嵌入式]
Stratix II FPGA系统电源设计
0 引言 Stratix II是ALTERA公司生产的一款高性能FPGA器件。它采用TSMC的90 nm低k绝缘工艺技术生产,等价逻辑单元(LE)高达180 k,嵌入式存储器容量达到9 MB。该器件不但具有极高的性能和密度,而且还针对器件总功率进行了优化,同时可以支持高达1 Gbps的高速差分I/O信号,因而是一款超快的FPGA。该芯片中所含的高性能嵌入式DSP块的运行频率高达370 MHz。另外Stratix II还有12个可编程PLL,并具有健全的时钟管理和频率合成能力。能实现最大的系统性能。 MAX1951是MAXIM公司的一款高效的DC-DC电源转换芯片,主要用于DSP、FPGA、ASIC的内核及I/O口供电。其高达9
[应用]
基于DSP+FPGA协处理架构的无线子系统设计
您可以显著提高无线系统中信号处理功能的性能。怎样提高呢?有效方法是利用FPGA结构的灵活性和目前受益于并行处理的FPGA架构中的嵌入式DSP模块。 常见于无线应用中这类处理包括有限冲激响应(FIR)滤波、快速傅里叶变换(FFT)、数字上下变频和前向误差校正(FEC)。Xilinx? Virtex-4和Virtex-5架构提供多达512个并行嵌入式DSP乘法器,这些乘法器的工作频率高于500MHz,最高可提供256 GMAC的DSP性能。 将需要高速并行处理的工作卸载给FPGA,而将需要高速串行处理的工作留给处理器,这样即可在降低系统要求的同时优化整体系统的性价比。 子系统划分选择方案 FPGA可与DSP处理器一起使用,作为独立的预
[嵌入式]
基于DSP+<font color='red'>FPGA</font>协处理架构的无线子<font color='red'>系统</font>设计
FPGA 供电简便易行 -写给采用 FPGA 的数字工程师
作者: Sureena Gupta  德州仪器 我不得不承认,随着时间的推移为  FPGA  供电变得越来越复杂,本文提供一些建议,希望可以帮助简化 FPGA 的电源解决方案,使用户能够创建出快速便捷的解决方案。 在为 FPGA 供电时需要考虑若干电源设计方面的问题,比如: 增加了输出电压轨数量 需要为电轨设置设定点精度 需要优化设计中的无源板面布局才能实现极低的纹波噪声 需要 AC 瞬态响应,以及补偿环路 另外,不要忘了还有排序以及更多所需功能。图 1 显示了 FPGA 开发套件中典型的 FPGA 电源解决方案。设计该方案除了要选择正确的器件和电感器外,还需要具备一些其它的专业知识。例如,需要考虑部件放置和板面布局方面的细节
[电源管理]
为 <font color='red'>FPGA</font> 供电简便易行 -写给采用 <font color='red'>FPGA</font> 的数字工程师
基于FPGA/MCU的光电式滚转角测量仪
  引言   对于智能化弹药而言,弹丸滚转角是执行弹道修正功能、实现精确制导的重要初始参数,可通过安装于弹体的陀螺仪或者磁探测模块进行测量,但在实验室环境下需要有一个外部基准来验证测量结果的准确性。本文设计基于FPGA/MCU的光电式滚转角测量仪,安装于实验转台上,实时输出滚转角度值,为弹体的滚转角测量提供对照基准,并可与上位机进行通信,将数据传送到主机中进行后续处理。   系统整体方案   滚转角测量仪物理架构如图1、2所示。a为滚转体,可沿轴向做360度旋转,在滚转体上某固定位置安装红外发光二极管k,光束方向沿截面径向朝外;b为侧支架,为了减少环境光线的干扰,采用封闭式设计,沿支架周向均匀安装n个光敏接收电路gl-gn,
[单片机]
基于<font color='red'>FPGA</font>/MCU的光电式滚转角测量仪
FPGA在嵌入式系统中的开发方向
  早期的嵌入式系统一般是以通用处理器或单片机为核心,在外围电路中加入存储器、功率驱动器、通信接口、显示接口、人机输入接口等外围接口,再加上应用软件,有些还加上了嵌入式操作系统,从而构成完整的系统。   随着微电子技术的进步,SoC已经在很多应用中取代了传统的以单片机为中心的架构,将很多外设和存储器集成在一个芯片中,使系统的功耗和体积越来越小,而功能却越来越强。   FPGA在嵌入式系统中的应用前景   现在的MCU和DSP的功能已经非常强了,但处理能力毕竟还是有限的,厂商在推出一款器件的时候,其性能就已经固定了。当某一款产品的性能无法满足要求时,就必须选用新的处理器,常常意味着重新进行PCB的设计,重新进行各项软硬件
[嵌入式]
学DSP、FPGA、ARM,哪个更有前途?
  1、这世界真是疯了,貌似有人连 FPGA 原理是什么都不知道就开始来学习 FPGA 了。   2、 DSP 就是一个指令比较独特的处理器。它虽然是通用处理器,但是实际上不怎么“通用”。技术很牛的人可以用 DSP 做一台电脑出来跑windows,而实际上真正这么干的肯定是蠢材。用 DSP 做信号处理,比其他种类的处理器要厉害;用DSP做信号处理之外的事情,却并不见长。而且信号处理的代码一般需要对算法很精通的人才能真正写好。数据结构里面的时间复杂度和空间复杂度在这里是一把很严酷的尺子。   3、 FPGA 只不过披着软件的外衣,实际上是硬件。FPGA内部有两层相对独立的电路。使用者“编码- 编译”后生成一个映像,这个映像
[嵌入式]
SDH中E1接口数字分接复用器VHDL设计及FPGA实现
    摘要: 介绍了SDH系统中的接口电路——数字分接复用器的VHDL设计及FPGA实现。该分接复用器电路用纯数字同步方式实现,可完成SDH系统接口电路中7路(可扩展为N路)E1数据流的分接和复用。该设计显示了用高级硬件描述语言VHDL及状态转移图作为输入法的新型电路设计方法的优越性。     关键词: 分接复用器 状态转移图 VHDL FPGA 为扩大数字通信系统的传输容量,信道上的信号都是在发送端分接,在接收端复接。在通信接口电路中能完成这一功能的电路就叫作分接复用器。 该分接复用器提供了标准的E1接口可供SDH系统方便使用。在点到点通信时,采用该分接复用器可以使系统速率提高到N(N为1、2、3等)
[半导体设计/制造]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved