用VHDL语言编程实现FIR滤波器.

上传人:我** 文档编号:114486749 上传时间:2019-11-11 格式:DOC 页数:48 大小:2.02MB
返回 下载 相关 举报
用VHDL语言编程实现FIR滤波器._第1页
第1页 / 共48页
用VHDL语言编程实现FIR滤波器._第2页
第2页 / 共48页
用VHDL语言编程实现FIR滤波器._第3页
第3页 / 共48页
用VHDL语言编程实现FIR滤波器._第4页
第4页 / 共48页
用VHDL语言编程实现FIR滤波器._第5页
第5页 / 共48页
点击查看更多>>
资源描述

《用VHDL语言编程实现FIR滤波器.》由会员分享,可在线阅读,更多相关《用VHDL语言编程实现FIR滤波器.(48页珍藏版)》请在金锄头文库上搜索。

1、摘要本课题是基于VHDL的数字滤波器的设计与实现,要求完成数字滤波器的VHDL语言的模块描述,通过MAX+PLUSII进行各模块及顶层的仿真,并下载实现数字滤波器功能。本设计采用窗函数法实现线性FIR数字滤波器的设计,并以一个十六阶低通FIR数字滤波器的实现为例说明了设计过程。首先,根据FIR数字滤波器的基本原理设计出系统总体框图;其次,用窗函数法计算出特性参数;接着用VHDL语言编写各模块的程序并仿真;最后,按照系统总体框图连接各模块实现数字滤波器的功能。实现滤波器的关键乘加运算,给出了将乘加运算转化为移位相加的算法,并采用了CSD码与并行加法结构来提高速度。设计的电路通过软件进行了验证,结

2、果表明:电路工作正确可靠,速度快,能满足设计要求。关键词:FIR滤波器,VHDL,窗函数,CSD码AbstractThis subject is design and realization of digital filter based on VHDL. It requires to complete the description of digital filter module which is based on VHDL language , simulate each module and the top layer using MAX+PLUSII and download to

3、realize function of digital filter. This design uses window function method to realize the design of linear FIR digital filter and illustrate the design process according to the realization of a 16 steps low pass FIR digital filter. Firstly, design the total system diagram according to the basic pri

4、nciple of FIR digital filter; Secondly, use window function method to calculate characteristic parameters; Then compile and simulate the program of each module using VHDL language; Finally, connect the modules according to the whole system diagram to realize function of digital filter. The key of re

5、alizing FIR filtermultiply and add operation, an operation of changing multiply and add operation to shift add will be given, besides, canonic signal digital and parallel add structure will be adopted to increase speed. The circuit that is designed is proved through the software. The result shows th

6、at the circuit works correctly, reliably and quickly, meeting the designing requirement.Keywords: FIR digital filter, VHDL, Window Function, Canonic Signal Digital (CSD)目录第一章 绪论1一、课题的提出1二、国内外的研究情况2第二章 课题的初步设计4一、FIR滤波器的基本原理4(一)FIR滤波器的概述与结构4(二)FIR滤波器的线性相位条件5(三)FIR滤波器的幅度特性6(四)FIR滤波器的零点特性8二、窗函数设计法8三、系统框

7、图13四、设计特点13第三章 用VHDL语言编程实现FIR滤波器16一、参数设计16二、CSD码19(一)传统的CSD码介绍19(二)本设计中所使用的CSD码20三、设计框图21第四章 程序实现及调试过程24一、MAX+PLUSII软件介绍24二、VHDL语言介绍24三、VHDL的实现及各模块仿真结果25(一)VHDL的实现25(二)各模块仿真结果25第五章 结果分析28第六章 结论及改进32致谢33参考文献33附录35扬州大学本科生毕业设计第一章 绪论一、 课题的提出(一) 课题的任务及内容本课题的任务是完成数字滤波器的VHDL语言的模块描述,并通过MAX+PLUSII进行各模块及顶层的仿真

8、,并下载实现数字滤波器功能。主要内容有:(1)完成基于VHDL的并行FIR数字滤波器的设计。 (2)用MAX-PLUSII编程实现。 (3)完成数字滤波器算法的仿真。(二) 课题实现的可行性数字滤波器在需要进行数字信号处理的许多系统中起着重要作用,实际上,语音处理设备、图像处理设备和数字通信系统中都使用数字滤波器。数字滤波器能满足对幅度和相位特性的严格要求,避免了模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。模拟滤波器是数字滤波器的基础,而现在,更多的利用数字滤波器代替模拟滤波器作为频率选择性滤波器。从滤波器的单位冲激响应来看,滤波器可分为无限长单位冲激响应的IIR滤波器和有限长单位冲

9、激响应的FIR滤波器。有限冲激响应(FIR)滤波器能在设计任何频率特性的同时保证严格的线性特性相位。目前FIR滤波器的实现方法有三种:利用单片通用数字滤波器集成电路、DSP器件和可编程逻辑器件实现。单片通用数字滤波器使用方便,但由于字长和阶数的规格较少,不能完全满足实际需要。使用DSP器件实现虽然简单,但由于程序顺序执行,执行速度必然不快。FPGA有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好。但长期以来,FPGA一直被用于系统逻辑或时序控制上,很少有信号处理方面的应用,其原因主要是因为在FPGA中缺乏实现乘

10、法运算的有效结构。现在这个问题得到了解决,使FPGA在数字信号处理方面有了长足的发展。当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)。是现代电子工程师的必备工具。现场可编程门阵列FPGA(F

11、ield Programmable Gate Array) 是一种常见的高密集度可编程逻辑器件,它的特点是速度快,功耗低,通用性好,适应性强,不仅可以代替传统的数字集成电路,而且还可以代替一般的PLD器件和半定制的ASIC,特别是用于复杂系统的设计。使用FPGA可以非常大的减小硬件规模,降低设计成本,缩短设计周期,提高系统的可靠性、灵活性和保密性。FPGA已经成功的用于计算机硬件、工业控制、遥感遥测、雷达声纳、数据处理、智能仪表、广播电视和医疗电子等领域中。在现代通信中,FPGA已经成功的用作程控交换、数字复接、编码译码和调制解调等。ALTERA公司的FLEX10K是工业界第一个嵌入式的PLD

12、,具有高密度、低成本、低功率等优点。器件的主要结构特点是除主要的逻辑阵列块(LAB)之外,首次采用了嵌入阵列块(EAB),每个阵列块包含8个逻辑单元(LE)和一个局部互连。嵌入阵列块(EAB)是FLEX10K系列器件在结构设计上的一个重要部件,它是一个输入端口和输出端口都带有寄存器的一种灵活的RAM块,嵌入阵列块(EAB)组成的规模和灵活性对比较多的内存是合宜的。功能包括乘法器、向量的标准和误差校正电路等。在应用中,这些功能又能够联合完成数字滤波器和微控制器的功能。二、国内外的研究情况FIR滤波器的实现方法有三种:利用单片通用数字滤波器集成电路、DSP器件和可编程逻辑器件实现。在国际上,用FP

13、GA实现FIR滤波器的方法也有很多种,如用传统的乘累加结构、DA(分布式)算法、查表法、位串行法等等。当FIR滤波器的阶数为N时,传统的累加结构需要进行N次乘法和N-1次加法操作来实现累加之和,可以发现,当N很大时,每计算一个点,则需要很长的延迟时间。由于FPGA具有查找表结构,分布式算法在滤波器的设计方面显出了很高的效率,可大大提高信号的处理效率,对于位宽较小的数据来说,分布式算法的执行速度远高于乘累加运算,但是如果抽头系数N过多,则DA表的规模将十分庞大,这是因为LUT的规模随着地址空间的变化(也就是N的增加)而呈指数增加,当N过大时,一个FPGA器件就不够用了。一种巧妙利用FPGA的查找

14、表,将乘法转化为查找表的DA算法,并用ALTERA的FLEX10K器件分别实现了一个8位16阶的穿行于并行FIR滤波器,系统频率分别达到63MHz与101MHz,采样速度分别达到7MSPS与101MSPS。而DSP实现的FIR滤波器只能达到5MSPS,明显低于FPGA。用传统的位串行方法实现的一个8阶8位FIR滤波器,也只能达到5MSPS,明显低于串行式DA方法。如果利用整数的CSD的表示和最优表示,可以用较小的代价和与加法器级数无关的处理速度实现整数乘法运算,能比DA方法用更少的逻辑资源实现FIR滤波器。随着FPGA集成规模的不断提高,许多复杂的数字运算已经可以用FPGA实现系统的设想即将变

15、为现实。第二章 课题的初步设计一、FIR滤波器的基本原理(一) FIR滤波器的概述与结构从滤波器的单位冲激响应来看,滤波器可以分为无限长单位冲激响应的IIR滤波器和有限长单位冲激响应FIR滤波器。由于IIR滤波器的传递函数存在零之外的零点,所以单位冲激响应是无限持续的。而有限长单位脉冲响应(FIR)滤波器的系统函数只有零点,除原点外,没有极点,因而FIR滤波器总是稳定的。如果它的有限长单位脉冲响应是非因果的,总能够方便的通过适当的移位得到因果的单位脉冲响应,所以FIR滤波器不存在稳定性和是否可实现的问底题。它的另一个突出的优点,是在满足一定的对称条件下,可以实现严格的线性相位,这一点IIR滤波器是难以做到的。由于线性相位特性在工程实际中具有非常重要的意义,如在数据通信、图像处理等应用领域,往往要求信号在传输和处理过程中不能有明显的相位失真,因而线性相位FIR滤波器得到了广泛的应用。IIR滤波器设计中可以利用模拟滤波器的设计结果,采用各种变换法,这些对FIR滤波器设计是不适用的,这是因为IIR滤波器的系数函数是有理分式的形式,而FIR滤波器的系统函数只是Z-1的多项式。FIR滤波器的单位冲激响应h(n)是一个有限长序列。它的传递函数和差分方程有如下形式: (2-1)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号