预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

高速FIR滤波器的设计实现的中期报告 一、设计目标 本设计的目标是设计一种高速FIR滤波器,具有以下特点: 1.支持的采样率:125MSPS 2.支持的滤波器阶数:1024阶 3.支持的滤波器类型:低通滤波器、高通滤波器、带通滤波器、带阻滤波器 4.实现的精度:32位浮点数 5.实现的芯片平台:FPGA 二、设计流程 本设计的流程主要分为以下步骤: 1.确定滤波器的类型、阶数和截止频率等参数 2.选择一种FIR滤波器的设计方法,并完成算法的设计 3.将FIR滤波器算法转换为硬件电路,并进行优化 4.实现FIR滤波器的仿真验证 5.在FPGA平台上进行FIR滤波器的实现和测试 三、算法设计 本设计采用的是基于时域线性卷积的FIR滤波器设计方法,即直接型FIR滤波器设计方法。设计的流程如下: 1.确定滤波器的类型、阶数和截止频率等参数 设计中,我们选用了低通滤波器类型,阶数为1024,截止频率为50MHz。 2.设计滤波器的传递函数H(z) 由于我们需要设计的是低通滤波器,因此需要选择适当的低通滤波器传递函数H(z),这里我们选择了parks-mcclellan算法来设计该滤波器。然后我们通过MATLAB工具箱进行设计,所得到的符合要求的传递函数H(z)如下: H(z)=0.0088+0.0106z^-1+...+0.0106z^-512+0.0088z^-513 3.将传递函数H(z)转换为差分方程 在设计FIR滤波器时,需要使用z域上的差分方程进行计算。通过手动计算,我们将H(z)转换为了如下的差分方程的形式: y[n]=0.0088x[n]+0.0106x[n-1]+...+0.0106x[n-512]+0.0088x[n-513] 4.算法的优化 在实际的FPGA实现中,由于资源受到限制,需要对差分方程进行优化。常见的优化方式包括:递推型式、迭代型式、折叠型式等。本设计采用了折叠型FIR滤波器设计。 如图所示,我们将1024阶的FIR滤波器分为两个512阶的滤波器,共同对输入数据进行滤波。这样可以节省大量的硬件资源,实现低成本、高性能的FIR滤波器。 【图片】 四、硬件电路设计 1.折叠型FIR滤波器电路设计 如图所示,我们将1024阶的FIR滤波器分为两个512阶的滤波器,共同对输入数据进行滤波。这样可以节省大量的硬件资源,实现低成本、高性能的FIR滤波器。 【图片】 2.硬件电路实现 通过使用VHDL语言,我们实现了FIR滤波器的硬件电路,并使用QuartusII工具进行了逻辑综合和布局布线。最终,我们将FIR滤波器的电路实现在了FPGA芯片中,完成了硬件电路的实现。 【图片】 五、仿真实验 通过使用ModelSim工具,我们对设计的FIR滤波器进行了仿真验证。仿真结果表明,设计的FIR滤波器符合预期的设计要求,能够实现对输入信号的有效滤波。 【图片】 六、实际测试结果 最后,我们在FPGA芯片上对FIR滤波器进行了实际测试,并将测试结果进行了分析。实验结果表明,所设计的FIR滤波器能够高速、高效地对输入信号进行滤波,滤波效果良好,具有较高的实际应用价值。