用DSP快速实现自适应滤波器算法_第1页
用DSP快速实现自适应滤波器算法_第2页
用DSP快速实现自适应滤波器算法_第3页
用DSP快速实现自适应滤波器算法_第4页
用DSP快速实现自适应滤波器算法_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用DSP快速实现自适应滤波器算法王永杰(桂林工学院广西桂林541004)摘要:自适应滤波器可对信号实现最优的滤波效果。简要介绍了自适应滤波器LMS算法,并结合TI公司的C54XDSP特点阐述了算法的实现过程,以及在编程中对程序代码的优化。通过对一段音频信号的仿真实验证明:对自适应滤波器算法的代码优化使得滤波器的整体滤波效率有了很大的提高。关键词:自适应滤波器;LMS算法;DSP;程序代码优化中图分类号:TP273文献标识码:B文章编号:1004373X()ImplementationofProcessor,Guilin,541004,China)Keywords:adaptivefilter;

2、LMSalgorithm;DigitalSignalProcessor;optimizingtheprogramcode1引言在数字信号处理中,滤波技术占有极其重要的地位。数字滤波与模拟滤波相比,具有许多优点,如:可以满足滤波器对幅度和相位特性的严格要求,可以避免模拟滤波器无法克服的电压漂移,温度漂移和噪声等问题。但在一些数字信号处理场合,无法预知信号和噪声的特性,因此就无法使用具有固定滤波器系数的滤波器来对信号实现最优滤波。因此需要一种具有跟踪信号和噪声变化,并且能使得滤波器的动态特性随着信号和噪声的变化而变化的滤波器,以达到最优滤波效果。众所周知,DSP芯片在实现数字滤波上具有稳定性好、精

3、确度高、不n时刻滤波器的估计值,而c(n)的估计值则由v(n)和h(n;k)惟一决定,即:Mc(n)=k=0h(n;k)v(n-k)图1自适应滤波器结构框图自适应算法的目的是调整滤波器的系数h(n;k),然后按照某种准则再来判断误差信号e(n)是否达到最小。在这一过程中,常用的判别准则有最小均方值(LMS)和递归最小平方(RLS)算法,这里是以最小均方值(LMS)算法进行推导的:M受环境影响、灵活性好等特点。因此选择了DSP芯片来完成自适应滤波器的设计并对编程过程进行了代码优化,以提高滤波器的效率。2自适应滤波器算法的引入自适应滤波器算法的特性变化是由自适应算法通过调整滤波器系数来实现和完成的

4、。一般自适应滤波器由两部分组成,一是滤波器的结构,二是调整滤波器系数的自适应算法。其结构框图如图1所示。图中,x(n)为输入值,v(n)为参考信号,h(n;k)表示收稿日期:20060630e(n)=x(n)-c(n)=x(n)-k=0h(n;k)v(n-k)h(n+1;k)=h(n;k)+2e(n)v(n-k)(k=0,1,2,3,M)由上述可知,LMS自适应算法实际上是一种递归运算,因此,就不需要对信号的统计特性有先验知识,只需要使用他的瞬态估计值即可。在这里,通过运算得到的值只是滤波系数的估计值,随着时间的变化,滤波系数也将会逐步被调整,这个估计值也将逐步改善,最终达到收敛,其74收敛条

5、件是:0<<1/max式实现两累加和的运算。RPTZA,#FILTSIZEMAC3COFFP+0%,3DATAP+0%,A上式中,max是输入信号x(n)协方差矩阵的本征值。3基于DSP的自适应滤波算法的快速实现为了提高算法的处理速度及减小系统的硬件规模,在实现滤波器算法时,采用了TI公司的TMS320C54X芯片作为核心芯片。因为其具有高度并行性,同时具有高度专业化的指令系统,可以简化编程过程;模块化结构程序设计可以增强程序的可移植性。芯片自身具有的这些优点,加上在实现算法时对编码的优化,就可使系统的效率得到提高。一个具体的LMS自适应滤波算法的实现,一般由以下几步构成:(1)设

6、置初始滤波系数h(0;k)h(0;k)可设置为任意值,0其中,RPTZ指令将累加器清零初始化,并将立即数N-1(16位)装入到重复计数器,使下一条指令重复执行N次。MAC指令实现将两存储区数据的乘积累加到累加器,再使存储区指针以循环寻址的方式指向下一个存储区。在这里,FILTSIZE,COFF系数缓冲区指针。为了提高算法的效率,DSP中提供的并行指,这使两个周期内完成。在LMS,ST|MPY和,P,DATAP分别表示自适应滤波器抽头数,自适应滤波器系数缓冲区指针和输入样值LMS算法仅仅用以下几条语句就可实现:STA,3COFFP+|MPY3DATAP+0%,ALMS3COFFP,3DATA适的

7、参数随时间n(2)c(n)=k=0h(n;k)v(n-Pk)其中,LMS指令在实现MAC指令功能的同时,实现一个带四舍五入的加法。而将LMS,ST|MPY和RPTB这3条指令合用可以实现在计算当前自适应滤波器输出的同时,更新滤波器的系数。我们将所设计的自适应滤波器算法的DSP快速实现程序,运用到对音频信号的处理过程。在对音频信号处理当中采用的是带有512抽头的LMS算法的自适应滤波器,系统的采样频率为50kHz。对于一个数字滤波器来说,通常需要对每个输入样点进行一次计算,一个普通LMS算法的DSP程序实现,通常每个抽头的计算时间需要3个MAC周期。而在实现LMS算法时,由于采用了单周期乘/累加

8、指令MAC、循环寻址方式和数据的块存储形式,这样就使得滤波器每个滤波样值的计算可以在1个MAC内完成,这就大大提高了程序的执行速度,减少了信号处理的时间。同时,由于在程序中充分利用了DSP所具有的指令执行的并行性特点,使得程序可以实现在计算当前自适应滤波器输出的同时,又更新滤波器的系数。这比利用循环方式来实现这样的操作简单而且高效。验证结果表明:对自适应滤波器算法的代码优化,是可行而且高效的。4结语(3)计算估计误差e(n)=x(n)-c(n)(4)更新滤波器系数h(n+1;k)=h(n;k)+2e(n)v(n-k)(5)循环返回(2)从上述的算法实现步骤不难看出,LMS算法对每一次新的输入和

9、输出采样只需要做大约2(M+1)次乘/加运算。其实现过程比较简单并易于实现,在许多实时系统中广泛应用。利用TMS320C54X实现LMS自适应算法时,存储器中数据的存放形式对DSP指令的有效运用有着特殊的意义。合理的存放形式,可使算法实现起来更加快速和高效。为了实现算法中输入样值x(n)和滤波器系数h(n)的对应项相乘,他们在存储器中的存放形式如图2所示。图2TMS320C54X自适应滤波器的存储器组织在编程过程中,为了充分发挥DSP芯片的自身优点和他在实现信号处理方面的优势,我们对自适应滤波器算法的实现进行了代码优化。并通过对实际音频信号的处理验证了这种代码优化的可行性和高效性。同时这样的代

10、码优化也增强了自适应滤波器算法的实时性和可移植性。这为今后的工作打下一个坚实的基础,也给以后的应用提供了一种很好的借鉴。(下转第78页)在TMS320C54X的指令系统中,单周期乘/累加指令MAC和循环寻址方式可使滤波器每个样值的计算在一个周期内完成。在实现LMS自适应算法时,由于要采用循环寻址的方式,而且要计算两数组对应项乘积的累加和。因此,采用DSP指令中的RPTZ和MAC结合循环寻址方754基带发送端的仿真结果该设计在Quartus510环境下,设计语言使用VHDL。使用FPGA芯片ALTERACycloneEp1c60240c8且对于基带信号进行数字滤波更为方便。选择的成形滤波器是升余

11、弦滚降滤波器,采用分布式算法在时域上直接进行脉冲成形,用FPGA完成所有功能。完成测试与仿真。图7为功能仿真图。图5卷积交织的实现框图图7主要参数:滚降系数a=0135,滤波器冲激响应波形的截短长度L=4,滤波器系数的量化字长Q=14,滤波器的抽样点数M=8。制补码形式。如图6可知FP器、计数器和ROM。应用于微波通信系统降低了数字接收设计的难度和复杂度,充分体现了对性价比的要求,也满足我们设计的初衷。但配合芯片STV0299内部功能时,也要在发送端准确的实现相对应的信道编码和成形滤波方式及参数。参考文献1王新梅,肖国镇.纠错码原理与方法(修订版)M.西安:西安电子科技大学出版社,2002.图

12、6成形滤波器FPGA实现框图2卜天,田日才.用FPGA实现基带信号成形的方案设计D.(1)移位寄存器是由4个带异步复位端的D触发器哈尔滨:哈尔滨工业大学,2004.3汪涛,帅克,吴军.基于单片机控制的微波压控振荡器的设级联而成,数据串行输入,并行输出,共用同一个时钟和异步复位信号。(2)需要一个8位的计数器,要求能够异步清零,在计J.现代电子技术,2005,28(24):56,9.thesisofanMaryTimeSeriesJ.CommunicationsMag224.zine,1989,27(2):15一个时钟的上升沿到来时计数一次,从000计数到111。(3)分布式算法的核心是基于查找

13、表思想,ROM就5UweMeyerBaese,DigitalSignalProcessingwithFieldProgrammableGateArraysM.北京:清华大学出版社,2003.是一个查找表,其中存储了27个数据。作者简介李昌林北京交通大学2004级研究生。主要研究方向为无线通信与个人通信。(上接第75页)参考文献1柯昱,高健,韦巍.二维DCT快速算法的DSP实现J.机电工程,1999(5).2王跃科,叶湘滨.现代动态测试技术M.北京:国防工业出5彭启琮.DSP与实时数字信号处理M.成都:电子科技大版社,2003.3彭秀艳,王凤阳,万博.快速小波变换的定点DSP实现J.自动化技术与应用,2003,22(3):89,29.4刘彤.用DSP实现FIR数字滤波器J.无线通信技术,2000,9(2):5356.学出版社,1995.6曹斌芳,何怡刚,胡惟文,等.一种改进型的FIR数字滤波器设计J.现代电子技术,2006,29(4):35,8.7周金治.基于Matlab与DSP的FIR数字滤波器软硬件实现J.现代电子技术

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论