SOPC技术基础教程 第5章 基于fpga的dsp开发(三)

SOPC技术基础教程 第5章 基于fpga的dsp开发(三)

ID:37582371

大小:1.17 MB

页数:40页

时间:2019-05-25

SOPC技术基础教程 第5章 基于fpga的dsp开发(三)_第1页
SOPC技术基础教程 第5章 基于fpga的dsp开发(三)_第2页
SOPC技术基础教程 第5章 基于fpga的dsp开发(三)_第3页
SOPC技术基础教程 第5章 基于fpga的dsp开发(三)_第4页
SOPC技术基础教程 第5章 基于fpga的dsp开发(三)_第5页
资源描述:

《SOPC技术基础教程 第5章 基于fpga的dsp开发(三)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、5.4FIR数字滤波器设计应用Matlab/DSPBuilder可以对多种类型的电子线路模块和系统进行建模、仿真和硬件实现。使用Matlab/DSPBuilder进行DSP开发可以快速、高效地完成从算法模型的验证到硬件实现的完整的流程。最终在FPGA中的硬件实现可以独立地成为一个功能模块,也可以成为SOPC系统的一个组成部分,成为NiosII嵌入式系统的自定制指令或者硬件加速模块。FIR(FiniteImpulseResponse,有限冲激响应)滤波器在数字通信系统中有广泛的应用,如低通滤波、通带选择、抗混叠、抽取和内插等。DSPBuilder中FIR滤

2、波器可以使用FIR的Megacore,即FIR的IP来设计,也可以使用模块来自己构建,重点介绍基于FIR的IP来设计FIR滤波器的方法。5.4.1FIR滤波器原理FIR系统的冲激响应h(n)在有限个n值处不为零,设FIR的冲激响应为一个N点序列,0≤n≤N−1,则滤波器系统函数为:N−1−nH(z)=∑h(n)z(5-1)n=0系统的差分方程表达式为N−1y(n)=∑h(m)x(n−m)(5-2)m=0x(n)是输入采样序列,h(n)是滤波器系数,y(n)是滤波器的输出序列,N-1是滤波器的阶数。首先看一个直接I型的3阶FIR滤波器,如图5-42所示,其

3、输出序列y(n)满足下式:y(n)=h(0)x(n)+h(1)x(n−1)+h(2)x(n−2)+h(3)x(n−3)图5-423阶FIR滤波器结构在这个滤波器中,存在3个延时单元,4个乘法器,一个4输入的加法器。如果采用数字信号处理器,如TI或AD公司的DSPProcessor来实现,只能用串行的方式顺序地执行延时、乘加操作,要用多个指令周期才能完成。采用FPGA来实现,则是并行的运算,在一个时钟周期就能得到FIR滤波器的输出。5.4.216阶FIR滤波器的设计对于直接I型的16阶或更高阶的FIR滤波器通常低阶的滤波器节进行级联而构成。这里设计一个4阶

4、FIR滤波器节,然后通过将其级联来构成16阶的FIR滤波器。直接I型4阶FIR滤波器节的结构如图5-43所示,可以看到,其结构相对于上图的3阶FIR滤波器是在输入信号插入了一个延时单元,从而将3阶滤波器编程4阶的,但h(0)的值为0。将h(0)的值设成零,目的是为了在组成高阶的FIR滤波器时,进行滤波器节的级联。图5-434阶FIR滤波器的结构图由于浮点小数在FPGA中实现比较困难,需要很多的资源。这里采用定点计算,为了省去小数点定标,使用整数运算来实现,如同5.2节正弦波发生器的情况一样,正弦查找表存储的是整数值。为了使滤波器参数可变,将FIR滤波器系

5、数h(1)、h(2)、h(3)和h(4)也作为输入端口。图5-44为直接I型4阶FIR滤波器在Simulink中的模型。图5-44直接I型4阶FIR滤波器节图5-44中的各模块的参数设置如下:xn、h1、h2、h3、h4模块:Altbus库:AlteraDSPBuilder中的IO&Bus子库BusType:SignedIntegerNodeType:InputPortNumberofbits:9yn模块:Altbus库:AlteraDSPBuilder中的IO&Bus子库BusType:SignedIntegerNodeType:OutputPortN

6、umberofbits:20xn4模块:Altbus库:AlteraDSPBuilder中的IO&Bus子库BusType:SignedIntegerNodeType:OutputPortNumberofbits:9ParallelAdderSubtractor模块:ParallelAdderSubtractor库:AlteraDSPBuilder中的Arithmetic子库Add(+)Sub(-):++++Pipeline:选中ClockPhaseSelection:1Delay、Delay1、Delay2和Delay3模块:Delay库:Altera

7、DSPBuilder中的Storage子库Depth:1ClockPhaseSelection:1Product、Product1、Product2和Product3模块:Product库:AlteraDSPBuilder中的Storage子库Pipeline:0ClockPhaseSelection:1UseLPM:不选中利用直接I型4阶的FIR滤波器节可以方便地构成4×n阶的直接I型FIR滤波器(h(0)=0)。这里利用4个4阶直接I型的FIR滤波器来构建一个16阶的直接I型FIR滤波器。为了设计的方便,将上面设计的4阶FIR滤波器生成一个子系统,双

8、击即可打开生成的子系统,生成的子系统相对于上面的模型文件只是多了5个输入端口和两

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。