当前位置:首页 > 电源 > 数字电源
[导读]现场可编程门阵列(FPGA)器件广泛用于数字信号处理领域.而使用VHDL或VerilogHDL语言进行设计的难度较大。提出一种采用DSP Builder实现FIR滤波器的设计方案,按照Matlab/Simulink/DSP Builder/Modelsim/QuartusⅡ的设计流程,设计一个16阶的FIR低通滤波器,并完成了软硬件的仿真与验证。结果表明,该方法简单易行,可满足设计要求,它验证了采用DSP Builder实现滤波器设计的独特优势。

0 引 言
   
FIR数字滤波器在数字信号处理的各种应用中发挥着十分重要的作用,它能够提供理想的线性相位响应,在整个频带上获得常数群时延,从而得到零失真输出信号,同时它可以采用十分简单的算法予以实现。这些优点使FIR滤波器成为设计工程师的首选。在采用VHDL或VerilogHDL等硬件描述语言设计数字滤波器时。由于程序的编写往往不能达到良好优化而使滤波器性能表现一般,而采用调试好的IP Core需要向Al-tera公司购买。在此,采用一种基于DSP Builder的FPGA设计方法,使FIR滤波器设计较为简单易行,并能满足设计要求。

1 FIR滤波器介绍
1.1 FIR滤波器原理

    对于一个FIR滤波器系统,它的冲激响应总是有限长的,最具体的FIR滤波器可用下式表示:
   
式中:r是FIR滤波器的抽头数;x(n-r)是延时,r个抽头的输入信号;b(r)是第r级抽头数(单位脉冲响应);M是滤波器的阶数;y(n)表示滤波器的输出序列。滤波器就是寻求一个可实现的系统函数H(z),使其频率响应H(ejω)满足所希望得到的频域信号,也可以用卷积的形式来表示:
    y(n)=z(n)*h(n)
典型的直接I型FIR滤波器如图1表示,其输出序列y(n)满足下式:

1.2 设计要求
   
数字滤波器实际上是一个采用有限精度算法实现的线性非时变离散系统。它的设计步骤是先根据需要确定其性能指标,设计一个系统函数h(n)逼近所需要的性能指标,滤波器的系数计算可以借助Matlab强大的计算功能和现成滤波器设计工具来完成,最后采用有限的精度算法实现。该系统的设计指标为:设计一个16阶的低通滤波器,选模拟信号的采样频率Fs为5 kHz,要求信号的截止频率Fc=1 kHz,输入序列的位宽为9位(最宽位为符号位)。激励源为幅值为27,频率为800 Hz与1 600 Hz两个信号的混频信号。


2 基于DSP Builder设计FIR滤波器
2.1 DSP Builder介绍
    DSP Builder是美国Al-tera公司推出的一个面向DSP开发的系统级设计工具,它在QuartusⅡ设计环境中集成了Matlab和SimuIinkDSP开发软件。以往使用的Matlab工具仅仅作为DSP算法的建模和基于纯数学的仿真,其数学模型无法为硬件DSP应用系统直接产生实用的程序代码,仿真测试的结果也往往是基于数学的算法结果。而以往的FPGA所需要的传统基于硬件描述语言的设计因考虑了FPGA硬件的延时与VHDL递归算法的衔接,以及补码运算和乘积结果截取等问题,所以相当繁琐。而对于DSP Builder而言,它作为Matlab的一个Simulink工具箱,使得用FPGA设计的DSP系统完全可以通过Simulink的图形化界面进行建模、系统级仿真。设计模型可直接向VHDL硬件描述语言转换,并自动调用QuartusⅡ等EDA设计软件,完成综合、网表生成以及器件适配乃至FPGA的配置下载,使得系统描述与硬件实现有机地融合,充分体现了现代电子技术自动化开发的特点与优势。
2.2 FIR滤波器的设计
2.2.1 FIR滤波器参数选取

    采用Matlab提供的滤波器专用设计工具FDAtool仿真设计的滤波器,可满足要求的FIR滤波器幅频特性,由于浮点小数在FPGA中实现得比较困难,且代价太大,因而需要将滤波器的系数和输人数据转化为整数,其中量化后的系统可以在Matlab主窗口中直接转化,对于输入数据,乘以28的增益用Altbus控制位宽转化为整数输入。
2.2.2 FIR滤波器模型的建立
    根据FIR滤波器原理,可以利用FPGA来实现FIR滤波电路。DSP Builder设计流程的第一步是在Matlab/Simulink中进行设计输入的,即在Matlab的Simulink环境中建立一个MDL模型文件,用图形方式调用DSP Builder和其他Simulink库中的图形模块,构成系统级或算法级设计框图,如图2所示。

[!--empirenews.page--]2.2.3 在Simulink中的仿真并生成VHDL代码
    完成模型设计之后,可以先在Simulink中对模型进行仿真,可以通过Simulink中的示波器模块查看各个步骤的中间结果。输入信号采用800 Hz和1 600 Hz,幅值相同的两个正弦信号的叠加。仿真结果如图3所示。从仿真波形可以看出,通过滤波器之后,1 600 Hz的信号能够被很好地滤除。

    双击SignalCompiler可对以上的设计模型进行分析,选择相应的芯片,将以上设计模块图文件“翻译”成VHDL语言。
2.2.4 Modelsim的RTL仿真
    在Simulink中进行的仿真属于系统验证性质的,是对mdl文件进行的仿真,并没有对生成的VHDL代码进行仿真。事实上,生成VHDL描述的是RTL级的,是针对具体的硬件结构,而在Matlab的Simulink中的模型仿真是算法级的,两者之间有可能存在软件理解上的差异,转化后的VHDL代码实现可能与mdl模型描述的情况不完全相符。这就需要针对生成的RTL级VHDL代码进行功能仿真,仿真结果如图4所示。

    仿真结果说明,在Modelsim中仿真结果和Simulink里的仿真结果基本一致,该滤波器有较好的滤波效果。可以看出,输入正弦波经过数字化过程以后,能够在Modelsim中还原出模拟波形.符合设计的要求,可以在QLtortusⅡ的环境下进行硬件设计。
2.2.5 滤波器在FPGA上的实现
   
在QuartusⅡ环境中,打开DSP Builder建立的QuartusⅡ项目文件,在QuartusⅡ中再进行一次仿真,由此可以看到符合要求的时序波形。然后指定器件引脚,并进行编译,最后下载到FPGA器件中,就可以对硬件进行测试,加上clok信号和使能信号,用信号发生器产生所要求的两个不同频率的正弦信号,就可以在示波器上看到滤波后的结果。需要设计不同的滤波器电路是仅修改FIR滤波器模型文件就可以实现,这样不仅避免了繁琐的VHDL语言编程,而且便于进行调整。

3 结 语
    在利用FPGA进行数字滤波器开发时,采用DSPBuilder作为设计工具,能加快进度。当然,在实际应用中,受精度、速度和器件选择方面的影响,可能对其转化的VHDL进行进一步的优化。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭