基于FPGA的FIR滤波器的设计(毕业设计).doc
《基于FPGA的FIR滤波器的设计(毕业设计).doc》由会员分享,可在线阅读,更多相关《基于FPGA的FIR滤波器的设计(毕业设计).doc(43页珍藏版)》请在三一办公上搜索。
1、本科毕业设计(论文)( 2012届 )题 目: 基于FPGA的FIR滤波器的设计 学 院: 数理与信息工程学院 专 业: 电子信息工程 学生姓名: 学号: 指导教师: 职称: 合作导师: 职称: 完成时间: 成 绩: 大学本科毕业设计(论文)正文目 录摘要1英文摘要11 引言21.1 国内外研究现状21.2 本论文的研究内容及主要工作42 FIR数字滤波器设计42.1 数字滤波器基础42.1.1 数字滤波器简介42.1.2 FIR数字滤波器的结构52.2 FIR数字滤波器设计方法62.2.1 窗函数法72.2.2 频率采样法82.2.3 等波纹最佳逼近法92.2.4 三种设计方法的比较103
2、FPGA 设计优点以及分布式算法103.1 使用FPGA器件进行开发的优点103.2 分布式算法123.2.1 分布式算法基础123.2.2 有符号的DA系统134 基于FPGA的FIR滤波器设计134.1 基于Matlab的FIR数字低通滤波器抽头系数的提取134.1.1 滤波器的设计指标134.1.2 滤波器的具体设计方法144.1.3 参数提取与量化154.2 FIR滤波器的FPGA实现164.2.1 模块划分164.2.2 FIR滤波器各模块的实现164.2.3 FIR滤波器的顶层设计264.3 FIR滤波器的系统仿真验证274.4 系统硬件324.4.1 系统框图324.4.2 部分
3、芯片简介324.4.3 AD、DA电路原理图354.5 测试波形及现场照片354.6 数据误差分析36结 论37参考文献37附 件38基于FPGA的FIR滤波器的设计摘要:本文设计了一个基于FPGA的16阶FIR低通滤波器,使用分布式算法作为滤波器的硬件实现算法,并对其进行了详细的讨论。针对分布式算法中LUT规模过大的缺点,采用多块查找表的方式减小硬件规模。在设计中采用了自顶向下的层次化、模块化的设计思想,将整个滤波器划分为多个模块,利用VHDL语言的描述方法进行了各个功能模块的设计,最终完成了FIR数字滤波器的系统设计。文章采用CycloneII系列器件实现一个16阶的FIR低通滤波器的设计
4、实例,用QuartusII软件进行了仿真,并用Matlab对仿真结果进行了分析,证明所设计的FIR滤波器功能正确。仿真结果表明,本论文所设计的FIR滤波器硬件模较小,采样率达到了10MHz。同时只要将查找表进行相应的改动,就能分别实现低通、高通、带通FIR滤波器,体现了设计的灵活性。关键词:FIR滤波器;FPGA器件;VHDL语言;分布式算法;查找表Design of FIR Filters Based on FPGAAbstract: In this paper, a sixteen tapped low pass FIR filter is designed based on FPGA,
5、a scheme of hardware implementation is worked out using distributed arithmetic algorithm, and is discussed in detail. As the scale of the LUT in the distributed arithmetic algorithm is so large, the thesis reduces it with the using of multiple coefficient memory banks. From the clew of implementing
6、a top-down stratified modular design, the thesis describes the hardware designed of all functional modules and the FIR system with the VHDL and schematic diagram designed methods.In this thesis, A sixteen tapped low-pass FIR filter implemented using CycloneII taken as an example, and the simulation
7、designed carried out using QuartusII. The result of the simulation is analyzed with the use of Matlab, and it proved that the functional of the design if correct.The result of the simulation indicates that the scale of the design is small,and the sample rate of the FIR filter can search 10MHz. Modif
8、ying the LUT can realize the low-pass, high-pass and band-pass FIR filters and respectively and incarnates the flexibility of the design.Key Words:FIR Filter;FPGA;VHDL;Distribute Darithmatic;LUT1 引言滤波技术是信号分析、信号处理技术中的重要分支。无论是信号的获取、传输,还是信号的处理、转换都离不开滤波技术。滤波技术对信号安全可靠和有效灵活的传递至关重要1。在电子系统中,由于滤波器的好坏直接影响系统的性
9、能,所以滤波技术己成为备受关注而热门的课题,滤波器的研制己受到各国研究者越来越多的重视。我国在上世纪50年代后期开始广泛使用滤波器,主要应用在报路和话路滤波。经过半个多世纪的发展,我国滤波器在研制、生产、应用等方面己进入国际发展轨道,但由于缺少专门研制机构,加之集成工艺和材料工业发展步伐的缓慢,使得我国在许多新型滤波器的研制和应用方面与国外仍有较大的差距。数字滤波器是对离散时间信号进行滤波处理以得到期望的响应特性的离散时间系统。数字滤波器一般由寄存器、延时器、加法器和乘法器等基本数字电路来实现。数字滤波器能满足滤波器对幅度和相位特性的严格要求,避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声
10、等问题。随着集成电路技术的发展,数字滤波器性能不断提高而成本却不断降低。数字滤波器在语音信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。随着电子计算机和大规模集成电路技术的发展,数字滤波器可用计算机软件实现,也可用大规模集成数字硬件实时实现,数字滤波器已具备了高精度、高可靠性、可程控改变性或复用、便于集成等众多优点。按照数字滤波器(DF)的特性,可分为线性与非线性、因果与非因果、无限长冲激响应(IIR)与有限长冲激响应(FIR)等类型。在这些滤波器中,线性时不变的数字滤波器是最基本的类型。由于数字系统可以对延时器加以利用,因此若在数字滤波器中引入一定程序的非因果性,就
11、可获得比传统的因果滤波器更灵活强大的特性。相对于IIR滤波器,FIR滤波器具有易于实现和系统绝对稳定的优势,因此得到广泛的应用2。1.1 国内外研究现状在国内外的研究中,设计FIR滤波器所涉及的乘法运算方式有:并行乘法、位串行乘法和采用分布式算法的乘法。并行乘法虽然速度快,同时占用的硬件资源极大。如果滤波器的长度增加,乘法器位数也将变大,硬件规模将变得十分庞大。位串行乘法器的实现方法主要是通过对乘法运算进行分解,用加法器来完成乘法的功能,也即无乘法操作的乘法器。但由于一个8*8位的乘法器输出为16位,为了得到正确的16位结果,串行输入的二进制补码数要进行符号位扩展,即将串行输入的8位二进制补码
12、前补8个0(对正数)或8个1(对负数)后才输入乘法器。如果每一位的运算需要一个时钟周期的话,这个乘法器需要16个时钟周期才能计算出正确结果,这就意味着此类乘法器要完全计算出结果的延迟必将会很大。所以位串行乘法器虽然使得乘法器的硬件规模达到了最省,但是由于是串行运算,使得它的运算周期过长,速度与规模折衷考虑时不是最优的。分布式算法(distributed arithmetic,AD)的主要特点是巧妙的利用ROM查找表将固定系数的乘累加(Multiply-accumulator,MAC)运算转化为查表操作,它与传统算法实现乘累加运算的不同在于执行部分积运算的先后顺序不同。分布式算法在完成乘累加功能
13、时是通过将各输入数据每一对应位产生的部分积预先进行相加形成相应的部分积,然后再对各个部分积累加产生最终结果,而传统算法是等到所有乘积已经产生之后再来相加来完成乘累加运算的。就小位宽来说,AD算法设计的FIR滤波器的速度可以显著的超过基于MAC的设计。相对于前两种方法,DA算法既可以全并行实现,又可以全串行实现,还可以串并行结合实现,可以在硬件规模和滤波器速度之间作适当的折中,是现在被研究的主要方法。FIR数字滤波器的实现,大体可以分为软件实现和硬件实现方法两种。软件实现方法即是在通用的微型计算机上用软件实现。利用计算机的存储器、运算器和控制器把滤波所要完成的运算编成程序通过计算机来执行,软件可
14、由使用者自己编写,也可以使用现成的。国内外的研究机构、公司已经推出了不同语一言的信号滤波处理软件包。但是这种方法速度慢,难以对信号进行实时处理,虽然可以用快速傅立叶变换算法来加快计算速度,但要达到实时处理要付出很高的代价,因而多用于教学与科研。硬件实现即是设计专门的数字滤波硬件,采用硬件实现的方法一般都比采用软件实现方法要困难得多,目前主要采用的方法有以下几种3:(1)采用DSP(Digital Signal Processing)处理器实现DSP处理器是专为数字信号处理而设计的,如TI公司的TMS32OCX系列,AD公司的ADSPZXI,ADSP210X系列等。它主要数字运算单元是一个乘累加
15、器(Multiply-accumulator MAC),能够在一个机器周期内完成一次乘累加运算,配有适合于信号处理的指令,具备独特的循环寻址和倒序寻址能力。这些特点都非常适合数字信号处理中的滤波器设计的有效实现,并且它速度快,成本低,在过去的20多年的时间里,软件可编程的DPS器件几乎统治了商用数字信号处理硬件的市场。(2)采用固定功能的专用信号处理器来实现,适用于过程固定而又追求高速的信号处理任务,是以指定的算法来确定它的结构,使用各种随机逻辑器件组成的信号处理器。它们体积小、保密性好,具有极高的性能,然而灵活性差。二者相比,固定功能的DSP专用器件可以提供很好的实时性能,但其灵活性差,研发
16、周期长,难度也比较大;DSP处理器的成本低且速度较快,灵活性好,但由于软件算法在执行时的顺序性,限制了它在高速和实时系统中的应用。在一些高速应用中,系统性能的要求不断增长,而DSP性能的提高却落后于需求的增长。现在,大规模可编程逻辑器件为数字信号处理提供了一种新的实现方案。分布式算法可以很好地在FPGA(Field Programmable Gate Array)中实现,然而却不能有效的在DSP处理器中实现,所以采用FPGA使用分布式算法实现FIR数字滤波器有着很好的发展前景。采用现场可编程门阵列FPGA来实现FIR数字滤波器,既兼顾ASIC器件(固定功能DSP专用芯片)的实时性、又具有DSP
17、处理器的灵活性。FPGA和DSP技术的结合能够更进一步提高集成度、加快速度和扩展系统功能。用FPGA设计的产品还具有体积小、速度快、重量轻、功耗低、可靠性高、仿制困难、上批量成本低等优点。但是,DA算法中的查找表的规模随着FIR数字滤波器长度的增加呈指数增长,而且随着滤波器系数的位数的增加,查找表的规模也会增加,这将极大的增加设计的硬件规模。所以如何减小查找表的规模成为尚待解决的问题。1.2 本论文的研究内容及主要工作本论文重点研究的是FIR低通数字滤波器的研究与设计,具体内容分为五节:第一节引言主要介绍了本课题的来源及研究意义、国内外现状。第二节主要介绍了FIR数字滤波器的原理以及线性相位F
18、IR滤波器的结构和设计方法。第三节介绍了FPGA设计优点及DA算法优化研究,重点是分布式算法的原理以及DA算法优化的研究与设计,并对具体的分组优化方法做了详细的讨论。第四节首先利用Matlab制定设计指标,提取16阶FIR低通数字滤波器的抽头数并进行量化。然后基于FPGA分模块对其进行研究设计,并进行综合系统仿真和验证。最后介绍了A/D、D/A模块的具体设计方法,给出了电路原理图。文章最后给出了现场测试的一些照片。2 FIR数字滤波器设计2.1 数字滤波器基础数字滤波器在数字信号处理中属于预处理的部分,因而起着基础性的作用,数字滤波器包括IIR和FIR数字滤波器。数字滤波器具有精度高、稳定性好
19、、灵活性强、不要求阻抗匹配,易于修改等特点。下面将首先介绍一下数字滤波器,然后重点讨论FIR数字滤波器的设计原理和结构4。2.1.1 数字滤波器简介一个简单的数字滤波系统如图2-1所示。图中,x(t)为模拟信号,经过A/D转换器后变为一个有着先后顺序的数字序列x(n)。然后x(n)通过数字滤波系统H(z),即得到数字滤波器的输出y(n)。H(z)为该数字滤波系统的单位脉冲响应h(n)的Z变换,即: (2-1)若h(n)为无限长序列,则得到的数字滤波器为IIR数字滤波器,又称递归滤波器;反之,若h(n)为有限长序列,则得到的数字滤波器为FIR滤波器,也称非递归滤波器。一个线形时不变因果滤波器可表
20、示为: (2-2)其中N为h(n)的长度,即滤波器的长度。图2-1 数字滤波系统IIR滤波器主要是基于对模拟滤波器如巴特沃斯滤波器、椭圆滤波器等的幅频响应进行逼近,而其相频响应是非线性的。与IIR滤波器不同,FIR滤波器可以把相位特性设计成线性。这使得FIR数字滤波器在信号无失真传输、数据通信、图像传输与处理、语音信号处理等有线性相位要求的领域应用广泛。FIR滤波器的优点是软硬件实现结构简单,不用考虑系统的稳定性问题;缺点是实现较高性能的频率响应需要较高的滤波器阶数。2.1.2 FIR数字滤波器的结构由于FIR数字滤波器实现算法的不同,我们可以把FIR滤波器的结构划分为直接型、级联型、频率采样
21、型和快速卷积型四种基本形式。本文主要讨论前两种结构。(1)直接型结构由式2-2可直接画出FIR数字滤波器的直接型结构,如图2-2所示。对于直接型结构来说,一个长度为N的FIR滤波器,每产生一个输出数据,要经过N次乘法,N-1次加法。对于使用FPGA开发FIR数字滤波器,这样的结果显然不令人满意。图2-2 直接型结构于是本文做了一下改进,这种改进是基于线性相位的FIR数字滤波器的。以严格线性相位,N为偶数的FIR滤波器为例,如图2-3所示。图2-3 直接型的改进由于关于对称,我们可以将经过延时环节的位置关于对称的数据预先相加,然后可以再乘以相应的滤波器系数进行累加得到最终的输出结果。这样,每产生
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA FIR 滤波器 设计 毕业设计
链接地址:https://www.31ppt.com/p-4141498.html