(此文档为word格式,下载后您可任意编辑修改!)
学士论文
基于FPGA的FIR数字滤波器设计
摘 要
随着公元的第二十一个世纪的到来,今天我们进入了一个科技日新月异的时代。在现代电子数字系统中,滤波器都以一个不可缺少的身份出现。其中,FIR数字滤波器又以其良好的线性特性被广泛和有针对性的大量使用。众所周知,灵活性和实时性是工程实践中对数字信号处理的基本要求。在以往使用的各种滤波器技术中,不难发现有许许多多的问题。但是,随着现代计算机技术在滤波问题上的飞跃,派生出一个全新的分支——数字滤波器。利用可编程逻辑器件和EDA技术,使用FPGA来实现FIR滤波器,可以同时兼顾实时性和灵活性。基于FPGA的FIR数字滤波器的研究势在必行。
本论文讨论基于FPGA的FIR数字滤波器设计,针对该毕业设计要做的基本工作有如下几点: (一)掌握有限冲击响应FIR(Finite Impulse Response, FIR)的基本结构,研究现有的实现方法。对各种方案和步骤进行比较和论证分析,然后针对目前FIR数字滤波器需要的特点,速度快和硬件规模小,作为指导思想进行设计计算。
(二)基于硬件FPGA的特点,利用Matlab软件以及窗函数法设计滤波器。对整个FPGA元件,计划采用模块化、层次化设计思想,从而对各个部分功能进行更为详细的理解和分工设计。最终FIR数字滤波器的设计语言选择VHDL硬件编程语言。
(三)设计中的软件仿真使用Altera公司的综合性PLD开发软件Quartus II,并且利用Matlab工具进行对比仿真,在仿真的过程中,对比证明,本论文设计的滤波器的技术指标已经全部达标。
关键词:数字滤波器 Matlab 可编程逻辑元件 模块化算法
Based On FPGA Design Of FIR Digital Filters
Major:Electronic And Information Engineering Department( Information Engineering)
Abstract
As we the modern electronic digital systems, filters are indispensable. Among them, the FIR digital filters are widely used with the excellent linear characteristic. As is well-known to us all, flexibility and real-time quality are the basic requirements in digital signal processing of engineering practice. Since we the past, it is not difficult for us to find many problems in it. Moreover, with the development of modern computer technology in filter, a new branch - digital filter the FIR filter, which is real-time and flexible. In a nutshell, it is imperative to do the research in the FIR digital filters based on the technology of FPGA.
This thesis is focused on the design of the FIR digital filters based on the technology of FPGA. Several points are worth mentioning method,to use various solutions to compare and analyze the steps and demonstrations; then, to do the self design and correction concerning the characteristics of the present FIR digital filters, that is, fast in speed and small scale in FIR filter based on the characteristics of FPGA the design process, ready to use of Matlab software and window function method design filter. As far as the whole FPGA components are concerned, we plan to carry on the modularized and , in order to of each part and make a division of design. Eventually, FIR digital filters will adopt the VHDL the design of the software simulation. And we will use of the Matlab tools for the simulation 。In the simulation process, contrast our filter technology index whether you ),使频率响应函数H(e)满足指标。数字滤波器正在用直接的电子计算机规范和算法进行分析的方式来逐渐代替传统的模拟滤波器的RLC元器件和放大电路。 2.1.2 FIR数字滤波器的基础
首先介绍FIR数字滤波器基本原理,在如下表格中对FIR和IIR数字滤波器进行了全面的比较:
表2-1两种滤波器特点比较分析
设计 方法 阶数 稳定性 结构 运算误差 FIR数字滤波器 在一般的情况下,FIR数字滤波器没有设计公式。它的设计需要借助计算机程序完成 高 在稳定性方面(稳定),极点全部在原点 非递归系统 一般情况下不存在反馈,运算的误差递归系统 存在反馈,由于运算中的特殊运算方法会低 存在一定的稳定性问题,需要注意 IIR数字滤波器 可以利用AF的设计成果,可简单、有效地完成设计
比较小 产生极限环
通常情况下一般数字滤波器的N阶FIR数字滤波器基于输入信号x(n)的表达式为:
y(n)??h(i)x(n?i) (2)
i?0n?1这个公式给我们了一个非常明了的直接型网络结构,该结构表现出N个乘法器,每次采样y(n)的内容是n次乘法和n-1次加法,然后做乘累加之和。如图2-1所示:
图2-1 FIR滤波器直接型网络结构
从DSP的介绍中,第一类线性相位对h(n)的约束条件:
H(e)??h(n)e?j?n?Hg(?)e?j?? (3)
j?n?0N?1?h(n)(cos?n?jsin?n)?Hn?0N?1g(?)(cos???jsin??) (4)
由公式(3),(4)我们可以推出:
?h(n)cos?nsin????h(n)sin?ncos?? (5)
n?0n?0N?1N?1移相并利用三角公式化简得到:
(6)
从数字信号处理学科中知道函数关于求和区间的中心(N-1)2奇对称,于是我们要求和h(n)满足如下条件:
其中对应的有 (7)
图2-2 线性相位FIR滤波器结构
若h(n)呈现对称特性,即此具有线性相位的滤波器是FIR数字滤波器。滤波器的基础网络结构可以相互进行转换。
在前面本文已经讨论过, FPGA的实现中将对各种方法进行比较,找出最优设计方式。从而达到减少资源占有和提高系统作业速度的目的,更好的体现实时性的数字滤波器优势。 2.1.3数字滤波器的设计原理
在数字信号处理技术的研究中,一般是使用的三种设计方法:窗函数法,FDATool直接设计法,程序编译法。本文首先使用窗函数和Matlab软件共同进行设计。
随着软件技术的不断发展,Matlab软件能给设计者带来的数字信号处理工作已经非常的完善和多样了,设计者可以利用Matlab软件进行数字滤波器的设计和仿真,而且还可以用这款软件进行设计的优化。数字滤波器的一般设计步骤如下: 1.指标的确定
做任何工程或者设计,设计者都必须要有一个期望的指标用来限制设计范围。在很多的实际应用中,设计者常常都是使用数字滤波器做选频的工作。因此,指标的形式一半在频域中给出相位响应和幅度。相位响应的指标形式,一半是指系统在通频带中药有线性相位。幅度指标:绝对指标,它给出对幅度响应函数的要求,一般用于FIR滤波器的设计。相对指标,以分贝值的形式给出具体限制。 2.逼近目标
设计者做高频的时候大概都有一个模式,就是首先得到技术指标,然后利用我们的技术和工具让我们的产品去逼近这个指标。同理我们首先建立以个目标的数字滤波器模型。一般情况下都是采用理想的数字滤波器模型,然后去逼近我们想要的目标数字滤波器参数。 3.计算机仿真和性能优化分析
在工作中我们发现通过(1)、(2)之后本文会得到以差分、系统函数或者冲击响应这三种方式描述的滤波器。这个时候设计者可以利用计算进行仿真,在系统中分析技术指标和滤波结果是否是希望得到的结果。
图2-3各种理想数字滤波器的幅度频率响应
2.1.4 FIR数字滤波器的理论计算方式与参数转换思想
在理论上掌握了FIR数字滤波器的基本原理之后,本文需要对设计思想进行一个多方位的论证和尝试。首先设计者设计滤波器要有一个硬性的指标,这个指标可以是直接给出最基本的数据,也有多重表现形式。于是我例举两种特殊的指标形式然后加以解决设计。然后我们分别用2种方式来设计不同指标的滤波器。接下来我首先用程序的方式来实现滤波器: 1.逼近法转换与思想
使用remez函数设计FIR低通滤波器 设计滤波器,使逼近低通滤波特性||。 ||=
要求通带波纹,阻带衰减,并用最小阶数实现。
绘出设计的FIR数字滤波幅频特性曲线,检验设计指标。 这个指标我们可以以如下计算方法来得出详细指标:
从给出的低通滤波特性||。我们可以看出设计参数f=[14,516],m=[1,0]; dev的计算根据公式:Rp=-20>0 于是有Rp=20,
相关推荐: