本科生毕业论文(设计)题目:基于FPGA的FIR滤波器设计学院电子信息工程学院学科门类工学专业电子信息工程学号姓名指导教师2015年05月06日合肥师范学院2015届本科生毕业论文(设计)I摘要随着数字技术的发展,数字滤波器广泛应用于语音与图像处理、模式识别、雷达信号处理、频谱分析等领域,它具有精度高、灵活性大等突出特点,而现场可编程门阵列器件(FPGA)有着规整的内部逻辑阵列和丰富的连线资源,特别适合于数字信号处理任务,通过FPGA实现FIR数字滤波具有实时性高、处理速度快、精度高的特点。本文研究的是基于FPGA实现一个16阶的FIR数字低通滤波器的设计。本次设计首先利用MATLAB中滤波器设计工具FDAtool工具设计FIR滤波器系数,再利用Matlab中的Simulink库文件下的DSPBuilder库中的各个模块搭建FIR滤波器系统,然后在Simulink里进行了仿真,并编译生成VHDL语言,再通过QuartusII软件对生成的VHDL程序进行编译和仿真,并利用Matlab对仿真结果进行了分析,证明所设计的FIR滤波器功能的正确性,最后通过硬件实现时。本次硬件设计中,采用Altera公司的FPGA器件作为核心器件,此外,由于整个系统的输入输出全部是数字信号,因此需要添加AD(模数)转换模块和DA(数模)转换模块。关键词:FPGA;FIR滤波器;FDAtool;Simulink;VHDL合肥师范学院2015届本科生毕业论文(设计)IIAbstractWiththerapiddevelopmentofdigitaltechnology,digitalfilterhadwidelyusedinvoiceandimageprocessingandmodelrecognizingandradarsignalprocessingandfrequencyanalysisfiledandsoon.Itisverypreciseandflexible.ThereareregularlogicalarrayandrichwireresourceinFPGA.Itisverysuitablefordigitalsignalprocessing.AnditisverygoodfordesigningdigitalfilterbyusingFPGA.Inthispaper,thisdesignisthe16orderFIRlow-passfilterbasedonFPGA.First,weuseFDAtooltodesignthevalueoffilter.Then,webuildupthefiltersystembyusingDSPBuilder.Andthenwesimulatethissystemtoverifyit’svalidity.Duringthehardwaredesign,whatweusecoredeviceisfromAlteracompany.Inaddition,weneedaddADandDAmodelforthesystembecausetheinputandoutputofthissystemisdigitalsignal.KeyWords:FPGA;FIRfilter;FDAtool;Simulink;VHDL合肥师范学院2015届本科生毕业论文(设计)III目录摘要............................................................IAbstract........................................................II1.引言..........................................................11.1研究背景及意义...........................................11.2国内外研究现状...........................................11.3本论文的研究内容及主要工作...............................22.FIR数字滤波器设计...........................................22.1数字滤波器基础...........................................22.1.1FIR滤波器简介......................................22.1.2FIR数字滤波器的结构.................................32.2FIR数字滤波器设计方法....................................42.2.1窗函数法............................................42.2.2频率采样法..........................................52.2.3等波纹最佳逼近法....................................63.基于FPGA的FIR滤波器设计.................................73.1基于Matlab的FIR数字低通滤波器抽头系数的提取.............73.1.1基于Matlab的FIR滤波器系数计算.....................73.2DSPBuilder搭建FIR模型..................................123.2.1DSPBuilder及其设计流程.............................123.2利用DSPBuilder设计FIR滤波器...........................123.2.1简单3阶常系数FIR滤波器的设计.....................133.2.216阶FIR滤波器的设计...............................164.FIR滤波器的硬件实现........................................194.1系统硬件................................................194.2硬件调试................................................234.3数据误差分析............................................255.总结..........................................错误!未定义书签。参考文献.......................................................27致谢...........................................................28合肥师范学院2015届本科生毕业论文(设计)11.引言滤波技术是非常重要的一门技术,它在信号的分析和处理过程中都是必不可少的部分。而当今由于数字信号的发展,使得滤波技术更是得到进一步发展,也就产生了数字滤波器,数字滤波器是现代信号处理研究和发展不可或缺的因素,数字滤波器相对模拟滤波器精度高,灵活性大,可靠性好等优点[1]。此外,由于数字信号的发展,它不仅能够处理数字信号,而且能够处理模拟信号。在处理模拟信号时,可以通过AD和DA转换,在信号形式上进行匹配,也就达到了数字滤波器对模拟信号的滤波的功能。1.1研究背景及意义在现代通信信号处理领域中,随着各种精密计算和快速计算的发展对信号处理的实时性、快速性的要求越来越高。以往的模拟滤波器无法克服电压漂移、温度漂移和噪声等问题,从而带来了许多误差和不稳定因素。而数字滤波器具有稳定性高、精度高、设计灵活、实现方便等突出优点。随着数字技术的发展,数字滤波器广泛应用于语音与图像处理、模式识别、雷达信号处理、频谱分析等领域,它有精度高、灵活性大等突出特点。FPGA元器件在高速并行处理和数据传输中有独特优势,FPGA正在前端信号处理中越来越多地代替ASIC和DSP。我们需要的就是这种设计周期短,功能密度高,重组时间短的元器件[2]。1.2国内外研究现状在国内外的研究中,FIR滤波器设计中的乘法算法有并行乘法、串行乘法和采用分布式算法的乘法[3]。其中,分布式算法既可以全并行实现,又可以全串行实现,还可以串并行结合实现,因此是当今研究的主要方法。实现FIR滤波器,主要有软件实现和硬件两种方法来实现。软件实现方法也就是在计算机上通过编程来实现,这种方式简单,可移植性高。硬件实现即是设计专门的数字滤波硬件来实现滤波,可以使用DSP处理器实现,也可以采用固定功能的专用信号处理器来实现。但是在当今,由于大规模集成电路的发展,使可编程的集成电路成为一种新的方案,合肥师范学院2015届本科生毕业论文(设计)2采用现场可编程门阵列FPGA来实现FIR数字滤波器,可以利用FPGA设计的产品具有规模小、速度快、重量轻、可靠性高、成本低等优点,既能兼顾ASIC器件的实时性、又具有DSP处理器的灵活性。1.3本论文的研究内容及主要工作本论文研究的是FIR低通数字滤波器的研究与设计以及硬件实现的方法,具体内容分为五节:第一部分引言主要介绍了本课题的背景及研究意义、国内外现状。第二部分主要介绍了FIR数字滤波器的简介以及线性相位FIR滤波器的结构和设计方法。第三部分首先介绍如何利用Matlab制定设计指标,提取16阶FIR低通数字滤波器的抽头数并进行量化,然后利用DSPBuilder设计滤波器模型,最后生成VHDL语言并利用QuartusII软件进行综合系统仿真和验证。第四部分主要介绍AD(模数)和DA(数模)转换部分电路和原理,以及如何利用硬件实现FIR滤波器。第五部分总结本次设计。2.FIR数字滤波器设计2.1数字滤波器基础所谓数字滤波器,是指输入、输出均为数字信号,通过数值运算来滤除某些频率成分的数字滤波器件或者程序。数字滤波器按照不同的分类方法有许多种类,但总的可以分为两大类:经典滤波器和现代滤波器。本文做研究的属于经典滤波器范畴,经典滤波器从滤波特性上可分为低通、高通、带通、带阻等滤波器。数字滤波器从实现的网络结构或者从单位脉冲响应长度分类,可以分为无限长单位脉冲响应(IIR)滤波器和有限长单位脉冲响应(FIR)滤波器[4]。2.1.1FIR滤波器简介FIR是FiniteImpulseResponse是缩写,是指有限长脉冲响应,也即指经过FIR系统的单位脉冲响应是一个有限长的序列,H(z)为该数字滤波系统的单位脉冲响应h(n)的Z变换,即:合肥师范学院2015届本科生毕业论文(设计)3nnznhzH)()((2-1)若h(n)为无限长序列,则得到的数字滤波器为IIR数字滤波器,又称递归滤波器;反之,若h(n)为有限长序列,则得到的数字滤波器为FIR滤波器,也称非递归滤波器。一个线形时不变因果滤波器可表示为:10)()(NnnznhzH(2-2)其中N为h(n)的长度,即滤波器的长度。FIR滤波器可以把相位特性设计成线性,因此,FIR数字滤波器在信号无失真传输、数据通信、图像传输与处理、语音信号处理等有线性相位要求的领域应用广泛。2.1.2FIR数字滤波器的结构由于FIR数字滤波器实现算法的不同,我们可以把FIR滤波器的结构划分为直接型、级联型、频率采样型和快速卷积型四种基本形式[6]。(1)直接型按照)(zH或者卷积公式直接可以画出结构图如图2-1所示,这种结构我们称之为直接型结构网络或者卷积型结构。这是一种最简单的FIR滤波器结构,即方便理解,也方便搭建其模型。h(0)h(1)h(2)h(N-2)h(N-1)1z1z1