资源描述:
《基于vhdl的fir数字滤波器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于VHDL语言与MATLAB设计的FIR数字滤波器的研究报告报告人:马晓博B11020108唐欢B11020206插入语:因为要参加电赛,选的也是通信类的题目,需要用到数字滤波器,刚好老师也要求我们做一个关于数字电路的应用于研究,我们就对数电中关于VHDL语言的章节进行了研究,并借助网上的资料能使用quarters2进行电路设计并下载到相应板子上进行实验。借助之前的一些对FPGA器件以及VHDL语言,quarters2的研究,基本实现了FIR数字滤波器的设计。摘要本报告分两部分:1由matla
2、b计算FIR数字滤波器的滤波系数;2用VHDL语言设计逻辑电路,再通过QUARTUSII软件,将各个模块的电路封装成期间,在顶层设计中通过连线,完成整个系统。第一部分:FIR数字滤波器的系数计算关于数字信号处理中的东西,我们尝试自学了,结果发现看不懂,就去网上查了一些简便的方法来计算滤波器的系数,通过MATLAB的工具箱来实现,这样即便不懂原理,也可以计算出滤波器的系数。我们通过MATLAB的Fdatool软件实现。输入数据S(n)为9位,输出y(n)为10位的低通滤波器数据:各个参数如下:Li
3、lterTyperlowpassFIRWindowkaiser阶数:15,Beta=0.5,Fs=48kHz,Fc=10.8kHZ滤波类型为:直接型FIRFIR滤波器的幅频响应相频响应FIR滤波器的冲击响应滤波器系数对系数进行调整,整数化:Num=-0.07420.02340.11330.0117-0.1758-1.09770.35940.82810.82810.35940.0977-0.17580.01170.11330.0234-0.0742Num*(2^8)ans=Columns1thro
4、ugh10-18.99525.990429.00482.9952-45.0048-281.011292.0064211.9936211.993692.0064Columns11through1625.0112-45.00482.995229.00485.9904-18.9952第二部分FIR数字滤波器的VHDL实现由于我们之前就对VHDL语言有研究,所以在网上查了相关资料之后实现起来并不算困难,其实就是加法器以及乘法器的设计,采用原理图与VHDL语言相结合的方法,VHDL语言进行底层设计,原理图
5、进行顶层连接。软件使用quarters29.0,硬件使用EPM240最小系统板。不过由于这个板子便宜,40块,内部资源数目不多,而且是CPLD板子,更加资源紧缺,而要设计的加法器还好,乘法器相当占用资源,本次滤波器要用8个(16/2),所以最后并没有下载到板子上时失败的,不过仿真时正确的。基本达到我们的目标。具体过程如下:根据上述要求,S(n)为9位,y(n)为10位的低通滤波器。数据:-19,6,29,3,-45,-25,92,212,212,92,-25,-45,3,29,6,-19阶数:1
6、5,Beta=0.5,Fs=48kHz,Fc=10.8kHZ滤波类型为:直接型FIRFIR滤波器的原理图设计如下:设计原理:一概要我们的原理说明是根据上面原理图的设计顺序逐步进行的。1寄存器(延时器)。原理图上标有dff9的器件。输入9位数据,通过dff9的D触发寄存器,达到延时的作用。2第一级加法器数据通过add9910,就是9位数字输入,10位数字输出加法器,完成第一级相加运算,因为本题是16阶FIR数字滤波器,它的滤波系数有对称的关系,所以采用上面的第一级加法器,达到简化运算的效果。3乘法
7、器乘法器用来将数据乘以由matlab计算得到的滤波系数,本题的系数分别为:-19,6,29,3,-45,-25,92,212。在乘法器设计时暂时没有考虑符号,符号问题由下面的减法器实现。即:若系数符号为负,那么在下一级用减法器减去乘法器所得的数据。所有的乘法器为:mult19,multmult6,mult29,mult3,mult45,mult25,mult92,mult212。4第二级加,减法器第二级加法器主要有add111414,add151415,add161717。add111414就是
8、说11位数据加14位数据输出14位数据,说有的都是相同的命名规则。减法器的作用是反映乘法器的负号的,对于负的滤波系数,在此相当于经过减法器相减。5第三级加,减法器与上一级大体相同的原理。6输出输出通过add141710,将上一级得到的14位和17位数据相加,再拿出相加结果的高十位作为输出。到此,整个FIR数字滤波器设计完毕,下面详细说明各个部分的具体实现。二详细说明我们的说明是根据上面的概要逐一展开的。我们的设计是先编写各个功能的vhdl源文件,再生成功能模块,最后在顶层用原理图的设计方法连线,