首页> 中文学位 >基于FPGA的高速FIR数字滤波器及多速率滤波器的设计与实现
【6h】

基于FPGA的高速FIR数字滤波器及多速率滤波器的设计与实现

代理获取

目录

摘要

第1章 绪论

1.1 课题背景及研究目的和意义

1.2 国内外研究现状

1.2.1 基于FPGA的FIR滤波器研究现状分析

1.2.2 多速率信号处理研究现状

1.3 本文研究主要内容

第2章 数字滤波器及FPGA的基本理论

2.1 FIR数字滤波器的原理简介

2.2 多速率信号处理基本概念

2.3 多速率信号处理的基本操作

2.3.1 抽取

2.3.2 内插

2.4 FPGA简介

2.5 本章小结

第3章 基于FPGA的DA算法设计与对比

3.1 传统DA算法及其实现方法

3.2 优化DA算法

3.3 MATLAB主要完成内容

3.3.1 输入信号的设计

3.3.2 滤波器系数的设计与提取

3.3.3 基于Matlab检验滤波器设计效果

3.4 传统算法各模块功能及仿真结果

3.4.1 FIR模块

3.4.2 LUTES模块

3.4.3 移位相加模块

3.4.4 控制模块

3.5 优化的分布式算法FIR滤波器的设计与仿真结果

3.5.1 输入延时模块

3.5.2 预相加模块

3.5.3 查找表模块

3.5.4 移位相加模块

3.5.5 控制模块

3.6 两种算法滤波结果及性能分析

3.6.1 滤波结果

3.6.2 两种算法性能对比分析

第4章 基于FPGA的多速率滤波器的设计与实现

4.1 CIC滤波器的基本概念

4.2 高速并行算法的CIC抽取滤波器设计与实现

4.2.1 CIC抽取滤波器的高速并行算法

4.2.2 CIC抽取滤波器的FPGA实现

4.3 高速并行算法的CIC内插滤波器设计与实现

4.3.1 CIC内插滤波器的高速并行算法

4.3.2 CIC内插滤波器的FPGA实现

4.4 本章小结

第5章 总结与展望

参考文献

附录

致谢

声明

展开▼

摘要

本论文分两部分介绍了基于FPGA的数字滤波器的设计与实现,分别是基于FPGA的FIR数字滤波器和基于FPGA的多速率滤波器。
  在FIR数字滤波器部分,介绍了两种算法的FPGA实现,分别是传统DA算法和优化后的DA算法。在这一部分,本设计分为6个小节。首先是简要介绍传统DA算法,这里面会有一些详细的公式推导过程以及查找表举例,并接着介绍DA算法的三种实现结构,分别是全并行结构、全串行结构和串并结合结构;随后,就是介绍优化之后的DA算法,在这部分会简要叙述经优化后的算法的工作过程;第3小节是主要使用Matlab软件完成的,在设计滤波器过程中,一般情况需要使用正弦信号作为输入信号原因有两个,一是制作简单,二是滤波前后对比易观察。因此我设计的输入信号为20Hz、100Hz、300Hz的混合信号,在这部分,需要对输入信号进行一些处理才可以被Quartus调用,后续会详细说明。随后就是在Matlab里面设计滤波器的系数了,本文采用的是低通、汉宁窗,截止频率为30Hz,采样频率为48000Hz的滤波参数,在算法上为了满足数字滤波器的要求,对系数放大512倍并取整,将此设计的滤波器系数导入Quartus以备调用。在设计每个模块之前,我需要对设计的滤波器正确与否进行功能验证,使用的是Matlab中另一个强大的工具Simulink。然后,根据两种算法的特点设计不同的结构图,确定每种算法的模块组成。在传统算法部分,本文设计的模块有4个,分别是FIR模块、LUTES模块、移位相加模块和控制模块;在优化分布式算法部分,本文设计的模块一共有5个,分别是输入延时模块、预相加模块、查找表模块、移位相加输出模块和控制模块,在本设计进行部分积累加时,采用舍取冗余位,主要是根据设计时已对系数进行了放大,而输出时又要将结果相应的缩小,所以在累加时,提前对部分积缩小,从而减少了运算量,从时间和资源上都得到了优化。每个模块都会经过单独编码,单独仿真的过程,编码语言使用的是在FPGA领域应用十分广泛以及十分便利的Verilog语言。仿真软件采用的是Quartus软件进行程序设计,功能测试使用的是Modelsim软件,原因是Modelsim比Quartus在仿真过程中不加时序延迟,而且Quartus仿真有几点缺点,首先是Quartus是根据所选的FPGA器件进行功能和时序的仿真,然后Quartus仿真的波形必须手动画,最重要的一点就是仿真速度特别慢。仿真结束得到滤波结果后,比较两种算法在速度与资源占用率上的差别,证明优化算法的优势。
  在多速率滤波器部分,主要分三节来叙述。第一小节是简述CIC滤波器的基本概念,为后面提到的算法以及仿真打下好的基础。而后两个小节就是本章的主要内容,分别是基于FPGA的CIC抽取滤波器设计与实现和基于FPGA的CIC内插滤波器设计与实现。CIC抽取滤波器采用的是非递归并行结构,而CIC内插滤波器采用的是二路并行结构。这两种算法可以使FPGA加法器和乘法器工作在较低的速度而实现高速滤波。在仿真部分与前一章相同,还是使用Quartus进行编程设计,在Modelsim环境做仿真与验证。最后得到了两种算法的滤波速度与资源占用率结构,可以看到在速度与资源上都有了很大提升。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号