文档介绍:DSP实现自适应滤波
摘要:本文首先简述DSP技术,然后概括介绍自适应滤波算法,并给出如何用DSP实现自适应滤波功能。
关键词: DSP 自适应滤波 LMS
DSP(digital singnal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,源源超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。
自1980年以来,DSP芯片得到了突飞猛进的发展,DSP芯片的应用越来越广泛。从运算速度来看,MAC(一次乘法和一次加法)时间已经从80年代初的400ns(如TMS32010)降低到40ns(如TMS32C40),处理能力提高了10多倍。DSP芯片内部关键的乘法器部件从1980年的占模区的40左右下降到5以下,片内RAM增加一个数量级以上。从制造工艺来看,1980年采用4μ的N沟道MOS工艺,而现在则普遍采用亚微米CMOS工艺。DSP芯片的引脚数量从1980年的最多64个增加到现在的200个以上,引脚数量的增加,意味着结构灵活性的增加。此外,DSP芯片的发展,是DSP系统的成本、体积、重量和功耗都有很大程度的下降。
DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP 指令,可以用来快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下的一些主要特点:
(1) 在一个指令周期内可完成一次乘法和一次加法。
(2) 程序和数据空间分开,可以同时访问指令和数据。
(3) 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。
(4) 具有低开销或无开销循环及跳转的硬件支持。
(5) 快速的中断处理和硬件I/O支持。
(6) 具有在单周期内操作的多个硬件地址产生器。
(7) 可以并行执行多个操作。
(8) 支持流水线操作,使取指、译码和执行等操作可以重叠执行。
在短短的十多年时间,DSP芯片已经在信号处理、通信、语音、图像/图形、自动控制等许多领域得到广泛的应用。本文在此基础上简要探讨了如何利用DSP信号处理功能实现自适应滤波。
一自适应滤波算法
自适应滤波器需要使用自适应算法(LMS算法)的编程与实现,通过对未知系统传递函数的建模,识别该未知系统,并对该系统进行噪声滤波。
实际中,利用信号发生器产生一个或几个带噪声的余弦信号,其信号的频率、幅值以及相位都是变化的,通过自适应算法,实时跟踪该信号的变化,并将噪声滤去。
e(k)=d(k)-y(k)
y(k)=Filter{x(k),w(k)}
w(k+1)=w(k)+e(k)*f{d((k),x(k))}
自适应滤波器结构的一般形式
上图为自适应滤波器结构的一般形式,图中x(k)为输入信号,通过参数可调的数字滤波器后产生输出信号y(k),将输出信号y(k)与标准信号d(k)(或者为期望信号)进行比较,得到误差信号e(k)。e(k)和x(k)通过自适应算法对滤波器的参数进行调整,调整的目的使得误差信号e(k)最小。重复上面过程,滤波器在自己的工作过程中逐渐了解到关于输入信号和噪声的统计规律,并以此为根据自动调整自己的参数,从而达到最佳的滤器效果。一旦输入信号的统计规律发生了变化,滤波器能够自动跟踪上输入信号的变化,自动调整滤波器的参数,最终达到滤波效果,实现自适应过程。下图就是使用自适应滤波器的系统识别原理图。
自适应滤波器的系统识别框图
自适应滤波器的结构可以采用FIR或IIR结构,由于IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构,自适应FIR滤波器结构又可分为三种结构类型:横向型结构(Transversal Structure)、对称横向型结构(Symmetric Transversal Structure)、格型结构(Lattice Structure)。本实验所采用的是自适应滤波器设计中最常用的FIR横向型结构。下图是横向型滤波器的结构示意图。
横向型滤波器的结构示意图
其中x(n) ——自适应滤波器的输入
w(n) ——自适应滤波器的冲激响应: w(n)={w(0),w(1),…,w(N-1)}
y(n) ——自适应滤波器的输出: y(n)=x(n)∗w(n)
最常用的自适应算法是最小均方误差算法,即LMS算法(Least Mean Squar