基于FPGA的FIR数字滤波器设计

来源 :科学时代·上半月 | 被引量 : 0次 | 上传用户:thiscf
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要] 数字信号处理技术是现今信号处理技术中运用最为广泛的,其中很重要的一方面是数字滤波器。本文介绍了FIR滤波器的原理,并以一个16阶的FIR低通滤波器为例,介绍了利用MATLAB和Altera公司的FPGA开发软件Quartus II及DSPbuilder设计数字滤波器的方法和过程。首先,利用MATLAB下滤波器设计工具FDAtool设计FIR滤波器的原型,确定该滤波器的系数;其次,利用Simulink和DSPbuilder软件平台构建滤波器模型,先设计出一个系数可变的4阶直接I型FIR滤波器节;然后调用该4阶滤波器节,将其级联成16阶滤波器,然后,将其转化为VHDL文件,并在Quartus II下完成RTL级的功能仿真和逻辑综合;最后将设计的滤波器应用于一个混合正弦波信号,以验证滤波器的性能。
  [关键词] Matlab Simulink FIR滤波器 FPGA Quartus II
  
  引言
  数字信号处理(digital signal processing)是从20世纪60年代以来,随着信息学科和计算机学科的高速发展起来的一门新兴学科。数字信号处理是研究用数字方法对信号进行分析、变换、滤波、检测、调制、解调以及快速算法的一门技术学科,随着数字电路与系统技术以及计算机技术的发展,数字信号处理技术也相应地得到发展,其应用领域十分广泛。其中很重要的一方面就是数字滤波,FIR(Finite Impulse Response1滤波器是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,加之其单位抽样响应长度有限,达到稳定的系统。
  本文通过一个16阶FIR低通滤波器的设计和仿真实例,介绍了基于Matlab/DSP Builder/Quartus II工具软件联合设计的流程和一般方法如图1。
  
  图1 基于MATLAB、DSP Builder和Quartus II等工具完成设计的流程
  设计流程有自动流程和手动流程两种,本文采用手动设计流程的方法。关于工具软件,Matlab是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。DSP Builder是一个系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级(算法仿真建模)和RTL级(硬件实现)两个设计领域的设计工具连接起来,都放在了Matlab/Simlink图形设计平台上,而将Quartus II作为底层设计工具置于后台,最大程度地发挥了对种工具的优势。Quartus II是Altera推出的EDA设计工具。
  1.FIR滤波器的基本结构和设计方法
  1.1 FIR滤波器的基本原理
  FIR(Finite Impulse Response:有限冲击响应)滤波器在数字通信系统中,被大量用于以实现各种功能,如低通滤波、同代选择、抗混叠、抽取和内插等。
  
  图23阶FIR滤波器结构
  对于一个FIR滤波器系统,它的冲激响应总是有限长的,其系统函数可以记为:
   (1-1)
  最基本的FIR滤波器可用下式表示:
  (1-2)
  其中是输入采样序列,是滤波器系数,L是滤波器的阶数,表示濾波器的输出序列。也可以用卷积来表示输出序列与、的关系。
  (1-3)
  图2中显示了一个典型的直接I型3阶FIR滤波器,其输出序列满足下列等式:
   (1-4)
  在这个FIR滤波器中,总共存在3个延时结,4个乘法单元,一个4输入的加法器。
  1.2使用FDATool工具设计滤波器
  设计滤波器时,通常借助Matlab来进行辅助设计,FDATool是Matlab工具箱里专用的滤波器设计和分析工具,采用交互式的设计环境,可以很方便的设计出几乎所有常规滤波器。利用FDATool工具设计一滤波器,参数如下:
  ○低通滤波器。
  ○采样频率Fs为48KHz,通带截止频率Fc为10.8KHz。
  ○输入输出位宽均为9位(最高位为符号位)。
  (1)打开Matlab的FDATool工具
  点击Matlab主窗口下方的“Start”开始按钮,选择“ToolBox”“Filter Design”→ “Filter Design & Analysis Tool”(FDATool),打开FDATool。
  (2)选择 Design Filter
  选择其中的按钮进入设计滤波器界面,再选择:
  滤波器类型(Filter Type)为低通(Lowpass);设计方法(Design Method)为 FIR,采用窗口法(Window);滤波器阶数(Filter Order)定制为15;窗口类型为Kaiser,Beta为0.5;Fs 为48kHz,Fc10.8kHz。
  计算出滤波器系数
  (3)系数量化
  计算出来的FIR滤波器系数是有符号的小数,在DSP Builder下建立的FIR滤波器模型需要一个整数(有符号整数类型)作为滤波器系数。所以必须进行量化,并对得到的系数进行归一化。
  1.3阶FIR滤波器节设计
  以下将设计一个系数可变的4阶FIR滤波器。对于直接I型的FIR滤波器(结构见图3)是可以级联的。也就是说,在滤波器系数可变的情况下,可以预先设计好一个FIR滤波器节,在实际应用中通过不断调用FIR滤波器节,级联起来,用来完成多阶FIR滤波器的设计。
  
  图3 直接I型FIR滤波器结构
  图4是一个直接I型的4阶FIR滤波器节的结构。为了使该滤波器节的调用更为方便,xin输入后插入了一个延时单元,3阶滤波器演变成4阶的,在由不过常数系数项z(系数项)恒为0.由于在通信应用中,FIR滤波器处理的往往是信号流,增加一个延时单元不会影响FIR滤波器处理的结果,只是系统延时增加了一个时钟周期。对于该FIR滤波器节,其系统函数可以用下式来表示:
   (3-2)
  由于浮点小数在FPGA中实现比较困难,实现的资源带价太大。DSP Builder中不妨在使用整数运算来实现,最后用位数舍取的方式得到结果。
  
  图4 直接I型4阶FIR滤波器结构图
  2.使用DSP Builder设计FIR滤波器
  使用DSP Builder可以很方便的在图形化的环境中进行FIR滤波器的设计。图5是一个4阶FIR滤波器节的设计模型。
  
  图5 直接I型4阶FIR滤波器模型图
  利用以上设计好的4阶FIR滤波器节可以方便的搭成阶直接I型FIR滤波器,如要实现一个16阶的低通滤波器,可以调用4个4阶FIR滤波器节来实现。如图6所示是一个16阶FIR滤波器模型。
  
  图6 16阶直接I型FIR滤波器模型
  3. Simulink 模型仿真
  在Matlab的Simulink中进行仿真验证。用DSP Builder设计好的模型,可以直接在Simulink进行功能级的仿真验证。图7是FIR滤波器仿真模型fir16tap.mdl,由一个10KHz和一个160KHz的正弦波作为输入,通过加法模块合成一激励源,作为16阶FIR低通滤波器的输入。
  图8是仿真波形,由图可见,滤波器很好的滤除了160KHz的高频率信号,还原成10KHz的低频率信号,与输入的10KHz低频率信号相仿。
  由仿真结果可知,16阶FIR低通滤波器的设计达到了设计要求。
  
  图7设计好的16阶低通滤波器
  4. Quartus II编译及仿真
  将16阶FIR滤波器模型文件(*.MDL)转换为VHDL文件,再在Quartus II下进行编译、仿真及下载到FPGA器件中。
  5.结束语
  本文通过16阶FIR滤波器的设计也仿真,简单的介绍了使用Matlab/DSP Builder等工具软件设计滤波器的流程、方法和要点。借助Matlab/Simulink等工具,设计者无需通过繁琐的VHDL变成,而可以是一个复杂的电子系统设计变得容易直观。通过DSP Builder将Matlab和Quartus II相结合,互补不足,同时增强Quartus II的设计效率,为实际问题的处理提供捷径。
  
  图8 simulink 仿真结果(系统级)
  参考文献:
  [1] 潘松, 黄继业. EDA技术与VHDL(第2版)[M]. 北京: 清华大学出版社, 2007.
  [2] 黄科, 艾琼龙, 李磊. EDA与数字系统设计案例实践[M]. 北京: 清华大学出版社, 2010.
  [3]Arthur B. Williams, Fred J.Taylor. 宁彦卿, 姚金科译. 电子滤波器设计[M]. 北京: 科学出版社, 2008.
  [4]Miroslav D.Lutovac DejanV.Tosic Brian L.Evans著. 朱义胜, 董辉等译. 信号处理滤波器设计[M]. 北京: 电子工业出版社, 2004.
  [5]黄红, 林德焱. FIR数字滤波器的FPGA实现[J]. 江汉大学学报(自然科学版), 2004 Vol.32 No.4:24-27.
  [6]刘欲晓, 方强, 黄苑宁等编著. EDA技术与VHDL电路开发应用实践[M]. 北京: 电子工业出版社, 2009.
  
  “本文中所涉及到的图表、公式、注解等请以PDF格式阅读”
其他文献
通过对中国知网数据库(CNKI)中收录的相关文献进行可视化分析,以2006—2019年间发表的199篇学前融合教育相关期刊论文为研究对象,利用CiteSpace软件绘制可视化图谱,展现我国
目的:研究抽动障碍患儿的发病因素,测定患儿血清多巴胺(DA)、去甲肾上腺素(NE)、谷氨酸(Glu)及γ-氨基丁酸(GABA)含量,探讨影响抽动症状严重程度的相关因素. 方法:根据耶
会议
目的:观察辨证分型治疗儿童多动症的临床疗效. 方法:将120例患几按照3∶1比例随机分成二组,中药辨证分型治疗组(心肝火旺型、肝肾阴虚型、心脾两虚型)及西药对照组.中药治
会议
看到这题目,你会想,难道我们活到现在,连“呼吸”都不会吗?不过,你真的会呼吸吗?  健康呼吸的作用  肺是人体主要的呼吸器官,保护肺是身体保健的首要任务,人体每时每刻都通过肺吸入氧气,呼出二氧化碳。自然界中的病菌、微生物、粉尘、金属微粒及废气中的有毒物质,很容易通过呼吸进入肺脏,刺激气管、支气管和肺组织。这些物质积聚在肺组织上,既损害了肺脏,又会通过血液影响到体内其他脏器的健康。因此,要想让肺部时
5月 2 1日 ,国家广电总局以广发技字 [2 0 0 3 ]462号文批复同意成都市作为全国有线数字电视第一批试点城市 ,建立有线数字电视示范网。主要任务有 :1、由四川省广播电视所属
旅游形象不但影响着景区的市场竞争力,还能帮助景区进行可持续发展的管理.本文对晋江市的旅游形象进行研究,帮助晋江市进行旅游定位和景区设计.
陶行知先生曾说过:“活的乡村教育要用活的环境,不用死的书本.”吉林省乡土地域资源极其丰富,开发利用其材料对于农村学校美术教学有着重要作用.2008年,通化师范学院为吉林省
本文研究了中医辨证治疗小儿呼吸道感染后咳嗽,治疗小儿呼吸道感染后慢性咳嗽必须首先根据咳嗽的性质及患儿的体质,分清其导致咳嗽的病因,针对病因进行治疗才能收到好的临床疗效
通过盆栽试验探讨东莞桥头农科园赤红壤中Cu、Zn对菜心BrasicaparachinensisBailey生长的影响,结果表明:土壤Cu、Zn施用量同时增加,菜心地上部产量随之下降,Cu或Zn含量变化则表现为促进与抑制共存的混合过程;单施Cu或Zn均可抑
目的:评价儿童多动症中医临床路径的实施效果. 方法:根据儿童多动症中医临床路径方案,选择2012年4月~2012年12月在9家协作组医院儿科门诊就诊的270例患儿,依照方案辨证施治
会议