DSP的FIR设计(低通滤波)C语言编写要点.pdf
《DSP的FIR设计(低通滤波)C语言编写要点.pdf》由会员分享,可在线阅读,更多相关《DSP的FIR设计(低通滤波)C语言编写要点.pdf(14页珍藏版)》请在三一文库上搜索。
1、一、设计目的 低通滤波器设计。 本设计中使用的信号为 信息信号:signal=sin(2*pi*sl*n*T) 高频噪声 1:noise1=0.7*sin(2*pi*ns1*n*T) 高频噪声 2:noise2=0.4*sin(2*pi*ns2*n*T) 混合信号:x=(signal+noise1+noise2) 其中sl=500Hz,ns1=3000Hz,ns2=8000Hz,T=1/20000。混合信号波形为滤波器 输入信号波形, 信息信号波形为输出信号波形, 滤波器的效果为滤除两个高频噪 声。 二、FIR 滤波器基本理论 (1)FIR 滤波器的特点 数字滤波器的功能, 就是把输入序列通过
2、一定的运算变换成输出序列。它的 实现方法有很多,其中比较常用到的是无限长脉冲响应滤波器IIR 和有限长脉冲 响应滤波器 FIR 两种。 在计算量相等的情况下, IIR 数字滤波器比 FIR 滤波器的幅频特性优越,频 率选择性也好。但是,它有着致命的缺点,其相位特性不好控制。它的相位特性 )argH()f( j e是使频率产生严重的非线性的原因。但是在图像处理、数据传 输等波形传递系统中都越来越多的要求信道具有线性的相位特性。在这方面FIR 滤波器具有它独特的优点, 设 FIR 滤波器单位脉冲响应h(n)长度为 N,其系统函 数 H(z)为 1 0 )()( N n n znhzH H(z)是
3、1 z的(N-1)次多项式,它在 z 平面上有 (N-1)个零点,原点 z=0是(N-1)阶重 极点。因此, H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严 格的线性相位。 (2)FIR 滤波器的基本结构 数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的 输出序列, FIR滤波器的差分方程为: 1 0 )()( N k kknxany 对上式进行 Z变换得到 FIR滤波器的传递函数为: 1 0 N i k kz b zX zY zH 由上式可以看出, H(z)是 1 z的N-1次多项式,它在 z平面内有 N-1个零点,同 时在原点处有 N-1个重极点。N阶滤波
4、器通常采用 N个延迟单元、N个加法器与 N+1 个乘法器,取图中 (a)、(b)两种结构。 图 FIR滤波器的一般结构 因为FIR滤波器的单位抽样响应是有限长的,所以它永远是稳定的。另外, 若对 h(n)提出一些约束条件,那么可以很容易地使H(z)具有线性相位,这在信 号处理的很多领域是非常重要的。FIR滤波器的设计任务,是要决定一个转移函 数H(z),使它的频率响应满足给定的要求。这里所说的要求,除了通带频率 p 、 阻带频率及两个带上的最大和最小衰减 p和s外,很重要的一条是保证 H(z)具 有线性相位。 (3)Chebyshev逼近法 窗函数法和频率采样法设计出的滤波器的频率特性都是在不
5、同意义上对所 给理想频率特性 jw d eH的逼近。由数值逼近理论可知,对某个函数f(x) 的逼近 一般有以下三种方法: 插值法 (Interpolating Way) 最小平方逼近法 (Least Square Approaching Way) 一致逼近法 (Consistent Approaching Way) 切比雪夫最佳一致逼近的基本思想是,对于给定区间a ,b 上的连续函数 xf,在所有 n次多项式的集合 n中,寻找一个多项式 p(x) ,使它在 a ,b 上 对xf的偏差和其它一切属于 n的多项式 p(x) 对f(x) 的偏差相比是最小的, 即 xfxpxfxpmaxmin?max
6、 切比雪夫逼近理论, 这样的多项式是存在的, 且是唯一的, 并指出了构造这种最 佳一致逼近多项式的方法,就是有名的“交错点组定理”。 切比雪夫逼近理论解决了p(x) 的存在性、唯一性和如何构造等问题。 J.H.McClellan、T.W.Parks、L.R.Rabiner 等人应用切比雪夫逼近理论提出了一 种设计 FIR滤波器的计算机辅助算法。 这种算法由于是在一致意义上对 jw d eH作 最佳逼近,因而获得了较好的通带和阻带性能,并能准确地指定通带和阻带的边 缘。但它的效率依赖于初始极值频率点的估计,且通带和阻带内波纹数较多,这 是Chebyshev方法的两个主要缺点。 三、FIR 滤波器
7、的 MATLAB 实现 MATLAB 辅助 DSP 实现 FIR ,其总体过程为在DSP中编写处理程序,在 MATLAB 中利用滤波器设计、分析工具 ( FDATOOL) ,根据指定的滤波器性能快速 设计一个 FIR ,再把滤波器系数以头文件形式导入CCS 中,头文件中 MATLAB 辅 助DSP 实现FIR 数字滤波器含滤波器阶数和系数数组,在MATLAB 中调试、运行 DSP 程序并显示、分析处理后的数据。使用该方法,便于采用汇编语言来实现程 序。头文件名不变 ,当MATLAB 中设计的滤波器系数改变时,相应头文件中系数也 改变,方便程序调试、仿真。 (1)输入信号的产生 首先利用 Mat
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP FIR 设计 滤波 语言 编写 要点
链接地址:https://www.31doc.com/p-5196746.html