基于FPGA的数字低通滤波器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
泉州师范学院
毕业论文(设计)
题目基于FPGA的数字低通滤波器
物理与信息工程学院电子信息科学与技术专业07级学生姓名周志凯学号*********
指导教师吴志伟职称讲师
完成日期2011年4月
教务处制
基于FPGA的数字低通滤波器
物理信息工程学院电子信息科学与技术专业 070303025 周志凯
指导老师:吴志伟讲师
【摘要】:低通滤波器是让某一频率以下的信号分量通过,而对该频率以上的信号分量大大抑制的电容、电感与电阻等器件的组合装置。数字滤波器能够满足对于相位特性跟幅度的严格要求,能够改善模拟滤波器无法解决的电压和温度漂移还有噪声等问题。利用FPGA,在QUARTUSⅡ平台上使用VHDL银剑描述语言改变滤波器的系数和阶数,通过结合MATLAB工具软件的辅助设计,使低通滤波器具有快速、灵活硬件资源损耗少。
【关键词】:FPGA;MATLAB;数字滤波器;QUARTUSⅡ
目录
1引言 (4)
2 EDA技术的主要内容 (4)
2.1大规模可编程器件 (4)
2.2硬件描述语言 (4)
2.3软件开发工具 (4)
2.4实验开发系统 (5)
3 FPGA简介 (5)
4 MATLAB简介 (5)
5 数字滤波器的工作原理 (6)
6低通滤波器的基本特性 (6)
7用MATLTAB设计低通滤波器 (7)
7.1在MATLAB中进行仿真设计 (7)
7.2运用QuatusⅡ检验滤波效果 (9)
7.3结果记录 (12)
8结束语 (12)
致谢 (13)
参考文献: (13)
附录: (15)
1引言
随着现在科学技术的高速发展,高精度集成电路的使用,生产力有了大幅度的发展,快捷的EDA工具,使用集成化设计环境,需要更快的速度来开发出质量一流性能优良的电子产品,这对于EDA技术有了更高的要求了。未来的EDA技术将在仿真、时序分析、集成电路自动测试、高速印刷电路板设计及开发操作平台等方面取得新的突破,向着功能强大、简单易学、使用方便的方向发展[1]。
本次设计的基于FPGA的数字低通滤波器是围绕EP2C8Q208C8芯片添加输入和输出电路而成的。用户通过QuartusⅡ进行编程、仿真、下载到芯片实现相应的功能,简单方便,具有很高的实用价值。
2 EDA技术的主要内容
EDA (Electronic Design Automation)是指利用计算机完成电子系统的设计,以计算机和微电子技术为先导,汇集了计算机图形学、逻辑学、微电子工艺和结构学以及计算数学等多种计算机应用学科最新成果的先进技术。
EDA技术一般包括以下四个方面:1.大规模可编程逻辑器件;2硬件描述语言;3软件开发工具;4实验开发系统。
2.1大规模可编程器件
可编程逻辑器件(PLD)是一种由用户变成以实现某种逻辑功能的新型逻辑器件。FPGA 和CPLD器件的应用广泛,随着EDA技术的发展成为电子设计领域的重要角色。FPGA包括可编程逻辑单元,可编程输入/输出单元和可编程连线三个部分;而CPLD则包括可编程逻辑宏单元,可编程输入/输出单元和可编程内部连线。他们的最明显特点是高集成度、高速度和高可靠性[2]。
2.2硬件描述语言
VHDL:在电子科技工程领域里,作为IEEE的工业标准硬件描述语言,已成为通用的硬件描述语言。
Verilog:比较使用RTL级和门电路级的描述,综合过程比VHDL简单一点,在高级描述语言方面没有VHDL好。
2.3软件开发工具
当前比较流行的EDA软件工具有Altera公司的quartusⅡ、Lattice 公司的ispexpert、Xilinx公司的foundation Series。本次设计所用的软件是quartusⅡ。
Quartus II:支持原理图、VHDL和Verilog 语言文本文件以及波形与EDIF等格式的文件作为设计输入,并支持这些文件的任意形式混合设计。它具有门级仿真器,可以进行功能
仿真和时序仿真,能够产生精确的仿真结果。在适配之后,Quartus II生成供时序仿真用的EDIF、VHDL和Verilog这三种不同格式的网表文件[3]。它使用便捷,是最易学易用的EDA 软件,并支持主流的第三方EDA工具,支持除APEX20K系列之外所有的Altera公司的FPGA/CPLD大规模逻辑器件[4]。
2.4实验开发系统
提供芯片下载电路及EDA实验/开发的外围资源,供硬件验证用。一般有以下几个:
①在实验中或者开发所需要的各种类型的基本信号发生模块;
②CPLDFPGA输出信息显示模块,例如发光管的显示、数码的显示还有声响指示;
③监控的程序模块,提供电路重构软配置;
④目标芯片适配座。
3 FPGA简介
FPGA(Field-Programmable Gate Array)是现场可编程门阵列的简称,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。
FPGA的基本特点一般有以下几个方面:
①采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片;
②FPGA可做其它全定制或半定制ASIC电路的中试样片;
③FPGA内部有丰富的触发器和I/O引脚;
④FPGA是ASIC电路中设计周期最短、风险最小、开发费用最低的器件之一;
⑤FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
一般来说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一[5]。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA 功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。
4 MATLAB简介
MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数