1 简介
对于FIR滤波器的理论部分,在本系列博客中不做论述,或许在后续更新的文章中会对其理论进行讨论。
本文为该系列博客的第一篇文章,将以最简单直观的方式让初学者体会到FIR滤波器的作用,采用最傻瓜的方式讲解FIR滤波器的设计与应用。
同时本系列博客将讲解多种FIR滤波器的设计方式,本篇文章就先讲解其中一种。 本系列博客涉及的工具将包括ISE,matlab、system genarator、moslesim、VIVADO等。
2 信号的混叠
滤波器顾名思义就是将不需要的信号滤除掉,留下需要的信号。 在做这个直观的实验之前,讲解一下信号的实验的思路和方案,如下图:
产生有用信号和无用信号进行混频 -> 信号通过滤波器 ->滤除无用信号 ,这就是本次实验的方案与思路。
2.1 0.5Mhz有用信号源
首先,使用ISE和Modlesim搭建一个产生0.5Mhz正弦波的信号源,信号源由XILINX DDS IP核制作的,并仿真如图:
0.5Mhz信号源工程图
0.5Mhz信号源仿真图
2.2 2Mhz无用信号源
与0.5Mhz信号源是相同的,只是频率不同罢了,这里给出工程图和仿真图:
2Mhz信号源工程图
2Mhz信号源工程图
2.3 信号混叠
使用数字合成技术将0.5Mhz与1Mhz的信号进行混频,得到一个混频信号,这里给出工程图和仿真图:
混频信号源工程图
混频信号源仿真图
这样就把两个频率的信号混叠在一起了,这样就模拟了一个实际使用过程中含有干扰的信号,接下来目标就是设计滤波器把无用信号率除掉,留下有用信号。
2 滤波器设计
2.1 使用FDATOOL设计滤波器
使用MATLAB中携带的FDATOOL工具设计滤波器,并将参数导入XILINX FIR 滤波器IP核是一种比较常用的方式,如下图给出FDATOOL设计截图:
FDATOOL参数设计图
导出XILINX FIR IP核需要的参数
这样就完成了FIR滤波器的设计,在设计界面上可以看出FIR滤波器的幅频特性。
2.2 FIR滤波器的验证
2.1节中已完成了滤波器的设计与参数导出,本节就搭建工程验证滤波器设计的正确性,这里给出工程图和仿真图:
FIR滤波器验证工程截图
工程中包含了2节中的混频信号源、FIR滤波器,其中FIR滤波器中导入了2.1节中设计的滤波器参数。
FIR滤波器验证工程仿真截图
仿真图中将所有信号进行了排列对比,仿真图从上至下排列依次是 0.5Mhz信号、2Mhz信号、混频信号、FIR滤波器输出信号,可以看出混频信号经过FIR滤波器以后其中2Mhz的频率成分被滤除掉了,只剩下0.5Mh的频率成分,证明滤波器的设计是成功的。
本篇博客讲解了一种最为直观简单的方式来了解和使用FIR滤波器,在一些简单的应用中是可以采用的,但是这种方式存在很多缺点,比如仿真时也是只能从modlesim中信号的时域去进行分析,其实这是远远不够的,接下来的文章将更加结合matlab的应用来完成FIR滤波器的设计。
本篇博客为粉丝准备了工程源码和视频教程哦!视频课程中手把手教学建立工程、设计滤波器等展露更多细节,如图:
不要急着跑,干货在后面,下一篇文章传送门在此:
使用system generator建立FIR滤波器
本系列博客对应的工程源码和视频教程传送门在此,点击下方链接一: