资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
中原工学院课程设计报告目 录1 概述22 课程设计要求33 设计内容43.1课程设计题目及要求43.1.1 设计题目43.1.2 设计要求4 3.2数字滤波器简介及结构43.3设计方案的确定63.3.1滤波器的设计方法63.3.2 滤波器设计实现方法63.3.3 方案确定63.4设计方案的实现73.4.1利用FDATool工具设计FIR数字滤波器73.4.2 FIR数字滤波器的FPGA实现103.5 仿真测试与分析244 参考文献301 概述我们学生通过这次的课设深入理解和消化了基本理论、进一步提高综合应用能力并且锻炼独立解决问题的能力,我们将数字信号处理、集成电路原理与应用和FPGA系统设计与应用几门课程融合在一起综合应用设计一个实用的数字FIR滤波器。本报告中首先讲解了这次设计的具体内容,以及所要求的数字FIR滤波器的技术指标。然后,数字滤波器的一些设计方法,并具体确定我这次设计所用的设计方案。滤波器在matlab中的设计方法应用。通过matlab得到所需滤波器的具体参数h(n),然后用这些所设计的参数,通过Quartus ii工具编程具体实现滤波器功能。这次滤波器实现过程中,用到以下小模块:延时器,加法器,乘法器,减法器。2 课程设计要求及注意事项1 设计过程以小组为单位,各组设一个组长,负责组织和协调本小组的讨论、任务分工等;2 设计过程必须在本组内独立完成,不得跨组参考或抄袭,避免方案出现雷同;3 设计书一律采用专用报告纸,用统一封面装订;4 课程设计原则上在3周内做完;5 最后一周周五进行优秀设计方案评选,在各组推选代表进行方案介绍的基础上,推选出2-3个优秀设计方案。6 学有余力的学生在完成必做设计内容的基础上,可对内容进一步展开设计,以提高综合应用能力,锻炼独立解决问题的能力。3 课程设计内容3.1 课程设计题目及要求3.1.1 设计题目:基于FPGA的FIR滤波器设计3.1.2 设计要求利用所学知识,采用MATLAB和FPGA相结合完成FIR滤波器的设计仿真。采用直接法或分布式算法实现FIR数字滤波器,了解两种算法的优缺点,选择其中一种算法,得出用它来实现FIR滤波器的硬件结构,对其实现方式进行研究,分别采用合适的方法来设计,最后利用FPGA器件实现FIR数字滤波器的硬件电路,并用Matlab对实现的结果进行仿真分析。设计指标:1)类型:FIR低通2)系统采样频率:Fs=10KHz;3)输入序列位宽为8位的有符号数(最高位为符号位);4)输出结果保留8位5)窗口类型为kaiser窗,=0.5;6)滤波器长度为N=16;3.2数字滤波器简介及结构 3.2.1 简介滤波器是用来进行频率选择或频率分辨操作的线性时不变系统的通称。数字滤波器通常都是应用于修正或改变时域或频域中信号的属性。最为普通的数字滤波器就是线性时间不变量(1inear timeinvariant,LTI)滤波器。一个简单的数字滤波系统如图1-1所示。图中,x(t)为模拟信号,经过A/D转换器后变为一个有着先后顺序的数字序列x(n)。然后x(n)通过数字滤波系统H(z),即得到数字滤波器的输出y(n)。H(z)为该数字滤波系统的单位脉冲响应h(n)的Z变换 (3-1)若h(n)为无限长序列,则得到的数字滤波器为IIR数字滤波器,又称递归滤波器;反之,若h(n)为有限长序列,则得到的数字滤波器为FIR滤波器,也称非递归滤波器。一个线形时不变因果滤波器可表示为: (3-2)其中N为h(n)的长度,即滤波器的长度。滤波器的阶数为N-1。IIR滤波器主要是基于对模拟滤波器如巴特沃斯滤波器、椭圆滤波器等的幅频响应进行逼近,而其相频响应是非线性的。与IIR滤波器不同,FIR滤波器可以把相位特性设计成线性。这使得FIR数字滤波器在信号无失真传输、数据通信、图像传输与处理、语音信号处理等有线性相位要求的领域应用广泛。FIR滤波器的优点是软硬件实现结构简单,不用考虑系统的稳定性问题;缺点是实现较高性能的频率响应需要较高的滤波器阶数。3.2.2结构FIR滤波器的单位抽样响应为有限长度,一般采用非递归形式实现。通常的FIR数字滤波器有横截性和级联型两种。FIR滤波器实现的基本结构有:(1)FIR滤波器的横截型结构表示系统输入输出关系的差分方程可写作: (3-3) 直接由差分方程得出的实现结构如图2-2所示:图3-1 横截型(直接型卷积型)若h(n)呈现对称特性,即此FIR滤波器具有线性相位,则可以简化加横截型结构,下面分情况讨论:图3-2 图3-3图3-2 N为奇数时线性相位结构图 图3-3 N为偶数时线性相位结构图(2)FIR滤波器的级联型结构将H(z)分解成实系数二阶因子的乘积形式: (3-4) 这时FIR滤波器可用二阶节的级联结构来实现,每个二阶节用横截型结构实现。如图所示:图3-4 FIR滤波器的级联结构这种结构的每一节控制一对零点,因而在需要控制传输零点时可以采用这种结构。3.3设计方案的确定3.3.1 滤波器设计实现方法一般有线性相位FIR直接型结构和分布式算法的设计。3.3.2方案确定经过多种方案的比较,本次设计最终的方案是:窗函数法的分布式结构FIR数字滤波器。利用MATLAB提供的FDATOOL滤波器设计工具,采用窗函数法和分布式结构,编写VHDL语言,从而实现FIR数字滤波器的设计。3.4 方案实现3.4.1 利用FDATool工具设计FIR数字滤波器FDATool(Filter Design & Analysis Tool)是MATLAB信号处理工具箱里专用的滤波器设计分析工具,MATLAB6.0以上的版本还专门增加了滤波器设计工具箱(Filter Design Toolbox)。FDATool可以设计几乎所有的基本的常规滤波器,包括FIR和IIR的各种设计方法。它操作简单,方便灵活。FDATool界面总共分两大部分,一部分是Design Filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。Design Filter部分主要分为:Filter Type(滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、 Chebyshev Type II(切比雪夫II型) 法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函数)法。Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify Order(指定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要设计的滤波器的阶数(N阶滤波器,Specify OrderN-1),如果选择Minimum Order则MATLAB根据所选择的滤波器类型自动使用最小阶数。Frenquency Specifications选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。它的具体选项由Filter Type选项和Design Method选项决定,例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带范围内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。本次设计滤波器的系数就是采用FDATool工具设计的滤波器。在MATLAB命令窗口中,执行“FDATool”命令,就会启动FDATool滤波器设计与分析工具,其图形界面如图3-8所示。 图3-5 FDATool界面选择窗函数法设计滤波器:直接使用FDATool工具进行滤波器设计。例如首先滤波器Response type选择低通,选中FIR类型,首先根据滤波器技术指标,选择窗函数的类型、长度、采样频率和截止频率。点击DESIGN FILTER按键,即可得到设计的FIR滤波器的频率响应和滤波器的系数。保存并关闭滤波器设计分析工具回到matlab主窗口,在命令编辑区输入Num可得到工具的计算结果。对FIR滤波器的系数进行调整,做整数化操作,可得到滤波器整数化的系数。FIR滤波器设计系数的确定窗函数法低通滤波器:阶数:15 采样频率:10k 截止频率:1k 滤波器类型:窗函数法FIR滤波器幅频响应滤波器相频响应滤波器系数导出后的系数Num*(26),round(ans)求整3.4.2 FIR数字滤波器的FPGA实现采用分布式算法设计FIR滤波器1)分布式算法基础 分布式算法(Distributed Arithmetic,DA)是一项重要的FPGA技术,广泛地应用于计算乘积和: (3-1)这种算法可用于滤波器、卷积、相关、DFT等凡是有乘累加运算的地方。 一个线性时不变网络的输出可用式(3-1)表示。假设为常量,为变量。对于有符号DA系统,可表示为: (3-2)将式(3-2)代入式(3-1),得 (3-3)其中x(n)为(B+1)位,称为位乘积,其中b=0,B+1。函数的实现方法是利用一个LUT实现映射,预先设定程序的LUT接收一个N位的输入向量,输出为,各个映射都由相应的二次幂加权累加,最后得到一次滤波
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号