基于FPGA的数字滤波器的设计与实现

上传人:油条 文档编号:39814920 上传时间:2018-05-20 格式:DOC 页数:4 大小:164.50KB
返回 下载 相关 举报
基于FPGA的数字滤波器的设计与实现_第1页
第1页 / 共4页
基于FPGA的数字滤波器的设计与实现_第2页
第2页 / 共4页
基于FPGA的数字滤波器的设计与实现_第3页
第3页 / 共4页
基于FPGA的数字滤波器的设计与实现_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于FPGA的数字滤波器的设计与实现》由会员分享,可在线阅读,更多相关《基于FPGA的数字滤波器的设计与实现(4页珍藏版)》请在金锄头文库上搜索。

1、基基于于 F FP PG GA A 的的数数字字滤滤波波器器的的设设计计与与实实现现在信息信号处理过程中,如对信号的过滤、检测、预测等,都要使用到滤波器 ,数字滤波器是数字信号处理中使用最广泛的一种方法,常用的数字滤波器有无限长单位脉冲响应(IIR)滤波器和有限长单位脉冲响应(FIR)滤波器两种1。对于应用设计者 ,由于开发速度和效率的要求很高,短期内不可能全面了解数数字字滤滤波波器器相关的优化技术 ,需要花费很大的精力才能使设计出的滤波器在速度、资源利用、性能上趋于较优。而采用调试好的IP 核需要向Altera 公司购买。本文采用了一种基于DSP Builder 的 FPGA 设计方法 ,以

2、一个低通的 16阶 FIR滤波器的实现为例,通过生成的滤波器顶层模块文件与A/D 模块文件设计 ,在联星科技的NC-EDA-2000C 实验箱上验证了利用该方法设计的数字滤波器电路工作正确可靠 ,能满足设计要求。1 1 F FI IR R 滤滤波波器器的的参参数数设设计计1 1. .1 1 设设计计要要求求数字滤波器实际上是一个采用有限精度算法实现的线性非时变离散系统,它的设计步骤为先根据需要确定其性能指标,设计一个系统函数H(z)逼近所需要的技术指标 ,最后采用有限精度算法实现。本系统的设计指标为:设计一个16阶的低通FIR 滤波器 ,对模模拟拟信信号号的采样频率Fs 为 48KHz,要求信

3、号的截止频率Fc=10.8kHz,输入序列为宽为 9位 (最宽位为符号位 )。1.2 FIR 滤波器的参数选取 设计频率选择性数字滤波器时,通常希望能有近似恒定的频响幅度,并尽量减小通带内的相位失真,斜率为整数的线性相位对应于时域中简单的延时,他在频域中可将相位失真降低到最小的程度2,用 Matlab 提供的滤波器设计的专门工具箱-FDAtool 仿真设计滤波器,满足要求的 FIR 滤波器幅频特性 ,如图 1所示。2 2 数数字字滤滤波波器器的的D DS SP P B Bu ui il ld de er r 设设计计2 2. .1 1 D DS SP P B Bu ui il ld de er

4、 r 介介绍绍DSP Builer 是 Altera 推出的一个数字信号处理(DSP)开发工具 ,他在Quartus II FPGA 设计环境中集成了Mathworks 的 Matlab 和 Simulink DSP开发软件 3。对 DSP Builder 而言 ,包括 DSP 系统的建模 ,系统级仿真、设计模型向 VHDL 硬件描述语言代码的转换、RTL(Register Transfer Level,逻辑综合 )级功能仿真测试、编译适配和布局布线、时序实时仿真直至对DSP目标器件的编程配置,整个开发流程几乎可以在顶层的开发工具Matlab/Simulink 同一环境中完成。2 2. .2

5、2 F FI IR R 滤滤波波器器算算法法模模型型建建立立根据 FIR 滤波器原理 ,可以利用 FPGA 来实现 FIR 滤波电路 ,DSP Builder设计流程的第一步是在Matlab/Simulink 中进行设计输入 ,即 Matlab 的Simulink 环境中建立一个MDL 模型文件 ,用图形方式调用Altera DSP Builder 和其他的Simulink 库中的图形模块 ,构成系统级或算法级设计框图(或称 Simulink 建模 )。2 2. .3 3 基基于于 D DS SP P B Bu ui il ld de er r 的的系系统统级级仿仿真真输入信号采用频率分别为f

6、1=8KHz 和 f2=16KHz 的两个正弦信号进行叠加,其中的仿真波形如图2所示 ,从 FIR滤滤波波电电路路的仿真结果看出,输入信号通过滤波器后输出基本上变成单频率的正弦信号,至此完成了模型仿真。3 3 基基于于 F FP PG GA A 的的数数字字滤滤波波器器的的实实现现3 3. .1 1 运运用用 M Mo od de el ls si im m 进进行行功功能能仿仿真真在 DSP Builder 中进行的仿真是属于系统验证性质的,是对 MDL 文件进行的仿真 ,并没有对生成的VHDL 代码进行过仿真。事实上,生成 VHDL 描述是RTL 级的 ,是针对具体的硬件结构的,这两者之间

7、有可能存在软件理解上的差异,转换后的VHDL 代码实现可能与MDL 模型描述的情况不完全相符,这就需要针对生成的RTL 级 VHDL 代码进行功能仿真。我们利用Modelsim 来对生成的VHDL 代码进行功能仿真。设置输入输出信号均为模拟形式 ,出现如图 3所示的仿真波形 ,可以看到这与Simulink 里的仿真结果基本一致。即可在Quartus II 环境下的硬件设计4。3 3. .2 2 在在 F FP PG GA A 器器件件中中实实现现F FI IR R 滤滤波波器器用 FPGA 实现的数字滤波器处理的是数字信号,在实际应用中 ,首先就要用A/D 转化器对模拟信号进行采样与量化。传统

8、的方法多数是用CPU 或单片机完成的 ,缺点是控制周期长,速度慢。而利用同步时序状态机来控制A/D 采样是一种既简单可靠,又能显著提高采样周期的行之有效的方法。在 Quartus II 环境通过 VHDL 语言按要求设计该状态机并转换为.bsf 文件;打开 DSP Builder 建立的 Quartus II 项目文件 fir.qpf 及 fir.vhd 并转换为相应的 .bsf 文件 ,由此可以得到对应设计的模块,如图 4所示 ,调用这两个模块建立新的顶层原理图文件,在软件环境里通过时序仿真,指定器件管脚、进行编译、最后下载到实验箱的EP1K10TC100-3器件中。4 4 结结语语用信号发生器产生所要求的两个不同频率的正弦信号,就可以示波器上看到滤波以后的结果,需要设计不同的滤波电路时,仅修改滤波器模型文件就可以实现。可见在利用FPGA 进行数字滤波器的开发时,采用 DSP Builder 作为设计工具能快捷、可靠地设计实用滤波系统。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号