verilog matlab fir 滤波器设计

FPGA FIR滤波器设计

最近课程项目中需要用到低通滤波器,对已调信号进行低通滤波。之前用altera的fir ip核来做,但是fir ip核的仿真实在是太难了,一直找不到库,弄了好久也没搞好。直接上板用signaltap抓信号的话由于电脑太垃圾编译一次时间太长,调试的心累。只好先暂时不用ip核。这两天看到用matlab软件生成verilog语言的fir滤波器,感觉挺有意思,记录一下。

matlab滤波器设置界面

先进入matlab输入fdatool进入滤波器设置界面。

设置想用的窗函数和滤波器类型,设置采样率和截止频率(理论上采样率不低于奈奎斯特频率)。这里我的测试波形选用的是一个4Mhz的正弦波和一个0.04Mhz的正弦波的混叠波形。于是我将截止频率设置为1M。

同时在生成滤波器的时候要注意一点就是最好在设置的时候结合自己生成的波形的位宽来设置滤波器的输入输出位宽,否则后续处理会比较麻烦。

在这里插入图片描述

点击design fiter之后再点Targets–Generate HDL,选择语法为verilog,生成filter文件和tb_filter文件。

生成的filter文件有五个信号,我没有具体研究,我将clk_enable使能信号直接置1,reset信号直接置0。剩下的2个信号连接我的用来测试的正弦波文件的时钟引脚和混叠信号引脚,一个输出引脚用来观察滤波之后波形。

最终效果不错,滤波非常成功。

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值