数字信号课程设计之FIR滤波器设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FIR 数字滤波器设计

一、摘 要

数字滤波器是一种具有频率选择性的离散线性系统,在信号数字处理中有着广泛的应用。其中FIR 滤波器是一种常用的滤波器,它在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性,在语音分析、图像处理、雷达监测等对信号相位要求高的领域有着广泛的应用,能实现IIR 滤波器不能实现的许多功能。

二、关键词: FIR 窗函数 系统函数 MATLAB

三、设计要求

设计理想特性FIR 线性数字相位数字滤波器

⎩⎨⎧≤≤-≤≤-=其他

0,1)(ππw w w w e H c c iw d (1)求单位冲激响应)(n h

(2)设4π

=c w ,)(n h 的长度N=21,编写求)(n h 的Matlab 程序,并上

机输出矩形窗设计和海明窗设计的)(n h 。

四、 设计目的

1、学会MATLAB 的使用,掌握MATLAB 的程序设计方法;

2、掌握数字信号处理的基本概念、基本理论和基本方法;

3、掌握MATLAB 设计FIR 线性数字相位数字滤波器的方法;

4、学会用MATLAB 对信号进行分析和处理。

五、设计意义

数字滤波器是数字信号处理的重要组成部分,可作为应用系统对信号的前置处理。同时用DSP 芯片实现数字滤波除了具有稳定性好、精确度高、

不受外界影响等优点外,还具有灵活性好的特点,可对DSP芯片编程来实现数字滤波的参数修改,进而十分方便地修改滤波器的特性。因此基于数字信号处理的数字滤波被广泛应用于语音、图像、软件无线电等领域,具有广阔的发展空间。

FIR滤波器具有严格的线性相位,可以具有任意的幅度特性,且是可物理实现的因果系统,因此被广泛地应用在现代通信技术当中,如解调器中的位同步和位定时提取、自适应均衡去码间串扰以及话音的自适应编码等。可见对FIR滤波器的研究是具有非常重要的现实意义的。

六、设计原理

1、MATLAB概述

MATLAB是美国MathWorks公司开发的一种功能极其强大的高技术计算语言和内容极其丰富的软件库,集数值计算、矩阵运算和信号处理和显示于一身。该软件最初是由美国教授Cleve Moler创立的。1980年前后,他在教线性代数课程时,发现用其他高级语言编程时极不方便,便构思开发了MATLAB,即矩阵实验室(Matrix Laboratory)。该软件利用了当时代表数值线性代数领域最高水平的EISPACK和LINPACK两大软件包,并且利用Fortran语言编写了最初的一套交互式软件系统,MATLAB的最初版本便由此产生了。

最初的MATLAB由于语言单一,只能进行矩阵的运算,绘图也只能用原始的描点法,内部函数只有几十个,因此功能十分简单。1984年该公司推出了第一个MATLAB的商业版,并用C语言作出了全部改写。现在的MATLAB 程序是MathWorks公司用C语言开发的,第一版由steve Bangert主持开发

编译解释程序,Steve Kleiman完成图形功能的设计,John Little和Cleve Moler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。接着又添加了丰富的图形图像处理、多媒体功能、符号运算和和其它流行软件的接口功能,使MATLAB的功能越来越强大。

MTALAB系统主要由以下五个部分组成:

(1)MATALB语言体系。 MATLAB是高层次的矩阵/数组语言,具有条件控制、函数调用、数据结构、输入输出、面向对象等程序语言特性。利用它既可以进行小规模端程,完成算法设计和算法实验的基本任务,也可以进行大规模编程,开发复杂的应用程序。

(2)MATLAB工作环境。这是对MATLAB提供给用户使用的管理功能的总称。包括管理工作空间中的变量据输入输出的方式和方法,以及开发、调试、管理M文件的各种工具。

(3)图形句相系统。这是MATLAB图形系统的基础,包括完成2D和3D数据图示、图像处理、动画生成、图形显示等功能的高层MATLAB命令,也包括用户对图形图像等对象进行特性控制的低层MATLAB命令,以及开发GUI 应用程序的各种工具。

(4)MATLAB数学函数库。这是对MATLAB使用的各种数学算法的总称。包括各种初等函数的算法,也包括矩阵运算、矩阵分析等高层次数学算法。

(5)MATLAB应用程序接口(API)。这是MATLAB为用户提供的一个函数库,使得用户能够在MATLAB环境中使用C程序或FORTRAN程序,包括从MATLAB中调用于程序(动态链接),读写MAT文件的功能。

2、数字滤波器概述

数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算机来执行。数字滤波器,输入输出均为数字信号,通过一定的运算关系,改变输入信号中所含频率成分的相对比例,或则滤除某些频率成分的器件。

对于数字滤波器而言,若系统函数为H(z),其脉冲响应为h(n),输入时间序列为x(n),则它们在时域内的关系式如下:

y(n)=h(n)﹡x(n)

在Z 域内,输入和输出存在如下关系:

Y(z)= H(z)X(z)

式中,X(z)、Y(z)分别为x(n)和y(n)的Z 变换。

在频域内,输入和输出则存在如下关系:

Y(j ω)=H(j ω)X(j ω)

式中,H(j ω)是数字滤波器的频率特性;X(j ω)Y(j ω)分别为x(n)和y(n)的频谱,而ω为数字角频率。

3、FIR 数字滤波器的基本结构及设计流程

(1)FIR 数字滤波器的基本结构

在讨论任何一种滤波器时,都要着重分析其系统函数,FIR 滤波器

的系统函数为:n N n z n h z H ∑-==1

0)()( 。 从该系统函数可看出,FIR 滤波器有以下特点:

相关文档
最新文档