《应用程序设计.ppt》由会员分享,可在线阅读,更多相关《应用程序设计.ppt(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、现在学习的是第1页,共39页2022/9/2716.1 FIR6.1 FIR滤波器的滤波器的DSPDSP实现实现 在数字信号处理中,滤波占有极其重要的地位。数在数字信号处理中,滤波占有极其重要的地位。数字滤波是语音处理、图像处理、模式识别、频谱分析等字滤波是语音处理、图像处理、模式识别、频谱分析等应用中的基本处理算法。用应用中的基本处理算法。用DSPDSP芯片实现数字滤波除了芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响等优点外,还具有稳定性好、精确度高、不受环境影响等优点外,还具有灵活性好等特点。具有灵活性好等特点。数字滤波器是数字滤波器是数字滤波器是数字滤波器是DSPDSP的基本
2、应用,分为有限冲激响应的基本应用,分为有限冲激响应滤波器滤波器FIRFIR和无限冲激响应滤波器和无限冲激响应滤波器和无限冲激响应滤波器和无限冲激响应滤波器IIRIIR。本节主要讨论本节主要讨论本节主要讨论本节主要讨论FIRFIR滤波器的基本结构、设计方法和滤波器的基本结构、设计方法和滤波器的基本结构、设计方法和滤波器的基本结构、设计方法和DSPDSP实实实实现方法。现方法。现方法。现方法。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第2页,共39页2022/9/272022/9/272 26.1 FIR6.1 FIR滤波器的滤波器的DSPDSP实
3、现实现 6 6.1 1.1 1 FIRFIR滤波器的基本结构滤波器的基本结构 数字滤波是将输入的信号序列,按规定的算法进行数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列。处理,从而得到所期望的输出序列。一个线性时不变系统的输出序列一个线性时不变系统的输出序列一个线性时不变系统的输出序列一个线性时不变系统的输出序列y(n n)和输入序列和输入序列和输入序列和输入序列x(n n)之之间的关系,应满足常系数线性差分方程:间的关系,应满足常系数线性差分方程:(6.1.1)(6.1.1)x x(n n):):输入序列,输入序列,输入序列,输入序列,y y(n n):):输出序
4、列,输出序列,输出序列,输出序列,a ai i、b bi i:滤波器系数,滤波器系数,滤波器系数,滤波器系数,N N:滤滤滤滤波器的阶数。波器的阶数。波器的阶数。波器的阶数。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第3页,共39页2022/9/272022/9/273 36 6.1 1.1 1 FIRFIR滤波器的基本结构滤波器的基本结构 在式(在式(在式(在式(6.1.1)中,若所有的)中,若所有的ai均为均为0,则得,则得FIRFIRFIRFIR滤波器滤波器滤波器滤波器的差分方程:的差分方程:的差分方程:的差分方程:(6.1.2)(6.1
5、.2)对式(对式(对式(对式(6.1.26.1.2)进行)进行)进行)进行z变换,可得变换,可得FIRFIRFIRFIR滤波器的传递函数:滤波器的传递函数:(6.1.3)第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第4页,共39页2022/9/272022/9/274 46 6.1 1.1 1 FIRFIR滤波器的基本结构滤波器的基本结构 FIRFIRFIRFIR滤波器的结构滤波器的结构滤波器的结构滤波器的结构 :z-1-1z-1-1+x(n)y(n)x(n-1)x(n-N+1)b0b1bN-2N-2bN-1N-1z-1-1第第第第6 6 6 6
6、章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第5页,共39页2022/9/272022/9/275 56 6.1 1.1 1 FIRFIR滤波器的基本结构滤波器的基本结构 在数字滤波器中,在数字滤波器中,FIRFIR滤波器具有如下几个主要特滤波器具有如下几个主要特滤波器具有如下几个主要特滤波器具有如下几个主要特点:点:点:点:FIRFIR滤波器无反馈回路,是一种无条件稳定系滤波器无反馈回路,是一种无条件稳定系统;统;FIRFIRFIRFIR滤波器可以设计成具有线性相位特性。滤波器可以设计成具有线性相位特性。滤波器可以设计成具有线性相位特性。滤波器可以设计成具有线性相位
7、特性。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第6页,共39页2022/9/272022/9/276 66.1 FIR6.1 FIR滤波器的滤波器的DSPDSP实现实现 6 6.1 1.3 3 FIRFIR滤波器的滤波器的MATLABMATLAB设计设计 MATLABMATLAB是一种功能强、效率高、便于进行科学和工是一种功能强、效率高、便于进行科学和工程计算的交互式软件包,它集数值分析、矩阵运算、信程计算的交互式软件包,它集数值分析、矩阵运算、信号处理和图形显示于一体,为用户提供了方便、友好的号处理和图形显示于一体,为用户提供了方便、友好的
8、界面环境。界面环境。MATLABMATLABMATLABMATLAB中的工具箱(中的工具箱(ToolboxToolboxToolboxToolbox)包含了许多实用程)包含了许多实用程序。它提供了多种序。它提供了多种FIRFIR滤波器设计方法。滤波器设计方法。滤波器设计方法。滤波器设计方法。下面以标准频率响应设计法下面以标准频率响应设计法fir1fir1fir1fir1和任意频率响应设和任意频率响应设计法计法fir2fir2fir2fir2为例说明其使用方法。为例说明其使用方法。为例说明其使用方法。为例说明其使用方法。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序
9、设计现在学习的是第7页,共39页2022/9/272022/9/277 76 6.1 1.3 3 FIRFIR滤波器的滤波器的MATLABMATLAB设计设计 用来设计标准频率响应的基于窗函数的用来设计标准频率响应的基于窗函数的FIRFIR滤波器,滤波器,滤波器,滤波器,可实现加窗线性相位可实现加窗线性相位可实现加窗线性相位可实现加窗线性相位FIRFIR数字滤波器的设计。数字滤波器的设计。1 1.fir1fir1fir1fir1函数函数 语法:语法:语法:语法:b=fir1(n,Wn)b=fir1(nb=fir1(n,WWn n,ftype)b=fir1(n,Wn n,Window)Windo
10、w)b=fir1(nb=fir1(n,WWn n,ftype,Window)Window)n n:滤波器的阶数;滤波器的阶数;滤波器的阶数;滤波器的阶数;W W W Wn n n n:滤波器的截止频率;滤波器的截止频率;滤波器的截止频率;滤波器的截止频率;ftypeftypeftypeftype:用来决定滤波器的类型,用来决定滤波器的类型,用来决定滤波器的类型,用来决定滤波器的类型,当当当当ftype=highftype=highftype=highftype=high时,可设计高通滤波器;时,可设计高通滤波器;时,可设计高通滤波器;时,可设计高通滤波器;当当当当ftype=stopftype
11、=stopftype=stopftype=stop时,可设计带阻滤波器。时,可设计带阻滤波器。时,可设计带阻滤波器。时,可设计带阻滤波器。WindowWindowWindowWindow:用来指定滤波器采用的窗函数类型,用来指定滤波器采用的窗函数类型,用来指定滤波器采用的窗函数类型,用来指定滤波器采用的窗函数类型,其默认值为汉明(其默认值为汉明(其默认值为汉明(其默认值为汉明(HammingHammingHammingHamming)窗。)窗。)窗。)窗。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第8页,共39页2022/9/272022/9/
12、278 8 使用使用fir1fir1fir1fir1函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻滤波器。滤波器。滤波器。滤波器。1 1 1 1.fir1fir1fir1fir1函数函数函数函数 (1)采用汉明窗设计低通采用汉明窗设计低通采用汉明窗设计低通采用汉明窗设计低通FIRFIR滤波器滤波器滤波器滤波器 使用使用使用使用b=fir1(nb=fir1(n,WWn)可得到低通滤波。可得到低通滤波。可得到低通滤波。可得到低通滤波。0 0 WWn n 1,1,格式:格式:格式:格式:b=fi
13、r1(n,Wn n)第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第9页,共39页2022/9/272022/9/279 9 使用使用使用使用fir1fir1函数可设计标准的低通、高通、带通和带函数可设计标准的低通、高通、带通和带阻滤波器。阻滤波器。1 1 1 1.fir1fir1函数函数函数函数 (2)(2)采用汉明窗设计高通采用汉明窗设计高通FIRFIR滤波器滤波器 在在在在b=fir1(n,WWn n,ftype)ftype)中,当中,当ftype=highftype=high时时时时,可设可设可设可设计高通滤波器。计高通滤波器。计高通滤波器
14、。计高通滤波器。格式:格式:b=fir1(nb=fir1(n,Wn,high)high)第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第10页,共39页2022/9/272022/9/271010 使用使用fir1fir1fir1fir1函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻函数可设计标准的低通、高通、带通和带阻滤波器。滤波器。滤波器。滤波器。1 1 1 1.fir1fir1fir1fir1函数函数函数函数 (3)(3)采用汉明窗设计带通采用汉明窗设计带通FIRFIR滤波器
15、滤波器 在在b=fir1(nb=fir1(n,WWn n)中,当中,当中,当中,当Wn=W1 W2 时,可得到带通时,可得到带通时,可得到带通时,可得到带通滤波器,其通带为滤波器,其通带为滤波器,其通带为滤波器,其通带为WW1 1 w w W2,W1和和W2分别为通带的下限分别为通带的下限频率和上限频率。频率和上限频率。格式:格式:格式:格式:b=fir1(n,W1 W2 2)第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第11页,共39页2022/9/272022/9/271111 使用使用fir1fir1函数可设计标准的低通、高通、带通和带函数
16、可设计标准的低通、高通、带通和带阻滤波器。阻滤波器。1 1.fir1fir1函数函数函数函数 (4)(4)采用汉明窗设计带阻采用汉明窗设计带阻采用汉明窗设计带阻采用汉明窗设计带阻FIRFIR滤波器滤波器滤波器滤波器 在在b=firb=fir1(1(1(1(n n,WWn,ftype)中,当中,当中,当中,当ftype=stop,Wn n=W=W1 1 W W2 2 时,时,时,时,firfir1 1函数可得到带阻滤波器。函数可得到带阻滤波器。函数可得到带阻滤波器。函数可得到带阻滤波器。格式:格式:b=fir1(n,W W1 W W2 ,stop)第第第第6 6 6 6章章章章 应用程序设计应用
17、程序设计应用程序设计应用程序设计现在学习的是第12页,共39页2022/9/272022/9/2712121 1 1 1.fir1fir1函数函数 (5)采用其他窗口函数设计采用其他窗口函数设计FIRFIR滤波器滤波器滤波器滤波器 使用使用WindowWindow参数,可以用其他窗口函数设计出各种加窗参数,可以用其他窗口函数设计出各种加窗参数,可以用其他窗口函数设计出各种加窗参数,可以用其他窗口函数设计出各种加窗滤波器。滤波器。滤波器。滤波器。WindowWindowWindowWindow参数可采用的窗口函数有:参数可采用的窗口函数有:BoxcarBoxcarBoxcarBoxcar,Han
18、ningHanning,BartlettBartlettBartlettBartlett,BlackmanBlackman,KasierKasier和和和和chebwinchebwin等,其默认时为等,其默认时为HammingHammingHammingHamming窗。窗。窗。窗。例如,采用例如,采用BartlettBartlettBartlettBartlett窗设计带阻滤波器,窗设计带阻滤波器,窗设计带阻滤波器,窗设计带阻滤波器,其格式:其格式:b=fir1(nb=fir1(n,W W1 1 W W2 2 ,stopstop,Bartlett(n+1)Bartlett(n+1)第第第第6
19、 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第13页,共39页2022/9/272022/9/2713131 1 1 1.fir1fir1fir1fir1函数函数 注意:注意:用用fir1fir1fir1fir1函数设计高通和带阻滤波器时,所使用的阶数函数设计高通和带阻滤波器时,所使用的阶数函数设计高通和带阻滤波器时,所使用的阶数函数设计高通和带阻滤波器时,所使用的阶数n n应为偶数,当输入的阶数应为偶数,当输入的阶数应为偶数,当输入的阶数应为偶数,当输入的阶数n n n n为奇数时,为奇数时,为奇数时,为奇数时,fir1fir1函数会函数会自动将阶数增加
20、自动将阶数增加1 1形成偶数。形成偶数。【例例例例6.1.16.1.16.1.16.1.1】采用采用采用采用HammingHamming窗设计一个窗设计一个窗设计一个窗设计一个4848阶阶阶阶FIRFIR带通滤波器,通带为带通滤波器,通带为带通滤波器,通带为带通滤波器,通带为0.35 0.35 w w 0.65EPROM PAGE 0.text:EPROM PAGE 0.text:EPROM PAGE 0.text:EPROM PAGE 0.text:EPROM PAGE 0.text:EPROM PAGE 0.data:EPROM PAGE 0.data:EPROM PAGE 0.data:
21、EPROM PAGE 0.data:EPROM PAGE 0.data:EPROM PAGE 0.data:EPROM PAGE 0.bss:SPRAM PAGE 1.bss:SPRAM PAGE 1.bss:SPRAM PAGE 1.bss:SPRAM PAGE 1.bss:SPRAM PAGE 1.bss:SPRAM PAGE 1 xn:align(8)DARAM PAGE 1 xn:align(8)DARAM PAGE 1 xn:align(8)DARAM PAGE 1 xn:align(8)DARAM PAGE 1 xn:align(8)DARAM PAGE 1 xn:align(8)
22、DARAM PAGE 1 b0:align(8)DARAM PAGE 1 b0:align(8)DARAM PAGE 1 b0:align(8)DARAM PAGE 1 b0:align(8)DARAM PAGE 1 b0:align(8)DARAM PAGE 1 b0:align(8)DARAM PAGE 1.vections:VECS PAGE 0.vections:VECS PAGE 0.vections:VECS PAGE 0.vections:VECS PAGE 0.vections:VECS PAGE 0.vections:VECS PAGE 0 ;在存储器中定义输出段的位置在存储
23、器中定义输出段的位置在存储器中定义输出段的位置在存储器中定义输出段的位置;texttexttexttext段定位在程序存储器段定位在程序存储器段定位在程序存储器段定位在程序存储器 即源程序位于程序存储器即源程序位于程序存储器即源程序位于程序存储器即源程序位于程序存储器;系数区定义在程序存储器系数区定义在程序存储器系数区定义在程序存储器系数区定义在程序存储器 ;bssbssbssbss段定义在暂存器段定义在暂存器段定义在暂存器段定义在暂存器 ;从从从从xnxnxnxn起起起起8 8个单元定义在个单元定义在个单元定义在个单元定义在DARAMDARAMDARAMDARAM;从从从从b0b0b0b0起
24、起起起8 8个单元定义在个单元定义在个单元定义在个单元定义在DARAMDARAMDARAMDARAM;vectionsvectionsvectionsvections定义在定义在定义在定义在VECSVECSVECSVECS区区区区第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第30页,共39页2022/9/272022/9/2730306.1 FIR6.1 FIR滤波器的滤波器的DSPDSP实现实现 6 6.1 1.5 5 FIRFIR滤波器的设计实例滤波器的设计实例 设计一个设计一个FIRFIR低通滤波器,其设计参数:低通滤波器,其设计参数:滤波
25、器阶数:滤波器阶数:N=40N=40;截止频率:截止频率:截止频率:截止频率:wp p=0.35=0.35 ,ws=0.4 。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第31页,共39页2022/9/272022/9/2731316 6.1 1.5 5 FIRFIR滤波器的设计实例滤波器的设计实例 根据给定的设计参数,滤波器系数可由根据给定的设计参数,滤波器系数可由MATLABMATLABMATLABMATLAB中中的的fir2fir2函数产生,函数调用格式:函数产生,函数调用格式:1.1.由给定的设计参数确定滤波器的系数由给定的设计参数确定滤
26、波器的系数 f=0 0.f=0 0.3535 0.4 1;m=1 1 0 0;b=fir2(39,f,m)b=fir2(39,f,m)利用利用freqzfreqz函数可绘制滤波器的幅频、相频特性函数可绘制滤波器的幅频、相频特性,其其格式:格式:freqz(b,512512512512,1000100010001000)第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第32页,共39页2022/9/272022/9/273232滤波器的频率特性滤波器的频率特性:1.1.由给定的设计参数确定滤波器的系数由给定的设计参数确定滤波器的系数由给定的设计参数确定
27、滤波器的系数由给定的设计参数确定滤波器的系数 第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第33页,共39页2022/9/272022/9/273333 采用循环缓冲区实现采用循环缓冲区实现采用循环缓冲区实现采用循环缓冲区实现FIRFIRFIRFIR滤波器的源程序如下:滤波器的源程序如下:滤波器的源程序如下:滤波器的源程序如下:2 2汇编源程序汇编源程序汇编源程序汇编源程序 .title .title .title .title “FIR.ASMFIR.ASMFIR.ASMFIR.ASM”.mmregs .mmregs .mmregs .mmre
28、gs .bss y .bss y .bss y .bss y,1 1 1 1K_FIR_BFFR .set 40K_FIR_BFFR .set 40K_FIR_BFFR .set 40K_FIR_BFFR .set 40PA0 .set 0PA0 .set 0PA0 .set 0PA0 .set 0PA1 .set 1PA1 .set 1PA1 .set 1PA1 .set 1FIR_COFF_TABLE .usect FIR_COFF_TABLE .usect FIR_COFF_TABLE .usect FIR_COFF_TABLE .usect“FIR_COFFFIR_COFFFIR_CO
29、FFFIR_COFF”,40 ;,40 ;,40 ;,40 ;定义数据存储空间定义数据存储空间定义数据存储空间定义数据存储空间D_DATA_BUFFER .usect D_DATA_BUFFER .usect D_DATA_BUFFER .usect D_DATA_BUFFER .usect“FIR_BFRFIR_BFRFIR_BFRFIR_BFR”,40 40 40 40 ;定义数据存储空间定义数据存储空间定义数据存储空间定义数据存储空间 .datadatadatadataCOFF_FIR_STARTCOFF_FIR_STARTCOFF_FIR_STARTCOFF_FIR_START:.wo
30、rd-7*32768/10000,3*32768/10000.word-7*32768/10000,3*32768/10000.word-7*32768/10000,3*32768/10000.word-7*32768/10000,3*32768/10000 ;b b b b0 0 0 0,b b b b1 1 1 1 .word 14*32768/10000,10*32768/10000 .word 14*32768/10000,10*32768/10000 .word 14*32768/10000,10*32768/10000 .word 14*32768/10000,10*32768/1
31、0000 ;b b b b2 2 2 2,b b b b3 3 3 3 .word 3*32768/10000,-7*32768/10000 .word 3*32768/10000,-7*32768/10000 .word 3*32768/10000,-7*32768/10000 .word 3*32768/10000,-7*32768/10000 ;b b b b38383838b b b b39393939第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第34页,共39页2022/9/272022/9/273434 .text.text.text
32、.text .def FIR_INIT .def FIR_INIT .def FIR_INIT .def FIR_INIT .def FIR_TASK .def FIR_TASK .def FIR_TASK .def FIR_TASKFIR_INITFIR_INITFIR_INITFIR_INIT:SSBX FRCT SSBX FRCT SSBX FRCT SSBX FRCT ;设置小数乘法设置小数乘法设置小数乘法设置小数乘法 STM#FIR_COFFSTM#FIR_COFFSTM#FIR_COFFSTM#FIR_COFF,AR5 AR5 AR5 AR5 ;AR1;AR1;AR1;AR1指向指
33、向指向指向b b b b0 0 0 0单元单元单元单元 RPT#K_FIR_BFFR-1 RPT#K_FIR_BFFR-1 RPT#K_FIR_BFFR-1 RPT#K_FIR_BFFR-1 ;设置传输次数设置传输次数设置传输次数设置传输次数 MVPD#COFF_FIR_START,*AR5+MVPD#COFF_FIR_START,*AR5+MVPD#COFF_FIR_START,*AR5+MVPD#COFF_FIR_START,*AR5+;系数系数系数系数b b b bi i i i传输至数据区传输至数据区传输至数据区传输至数据区 STM#D_DATA_BUFFERSTM#D_DATA_BU
34、FFERSTM#D_DATA_BUFFERSTM#D_DATA_BUFFER,AR4 AR4 AR4 AR4;D_DATA_BUFFER;D_DATA_BUFFER;D_DATA_BUFFER;D_DATA_BUFFER缓冲区清缓冲区清缓冲区清缓冲区清0 0 0 0 RPTZ ARPTZ ARPTZ ARPTZ A,#K_FIR_BFFR-1#K_FIR_BFFR-1#K_FIR_BFFR-1#K_FIR_BFFR-1 STL A STL A STL A STL A,*AR4+AR4+AR4+AR4+STM#(D_DATA_BUFFER+K_FIR_BFFR-1)STM#(D_DATA_BUF
35、FER+K_FIR_BFFR-1)STM#(D_DATA_BUFFER+K_FIR_BFFR-1)STM#(D_DATA_BUFFER+K_FIR_BFFR-1),AR4AR4AR4AR4 STM#(FIR_COFF_TABLE+K_FIR_BFFR-1)STM#(FIR_COFF_TABLE+K_FIR_BFFR-1)STM#(FIR_COFF_TABLE+K_FIR_BFFR-1)STM#(FIR_COFF_TABLE+K_FIR_BFFR-1),AR5AR5AR5AR5第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第35页,共39页2022/
36、9/272022/9/273535 STM#-1 STM#-1 STM#-1 STM#-1,AR0 AR0 AR0 AR0 ;设置双操作数减量设置双操作数减量设置双操作数减量设置双操作数减量 LD#D_DATA_BUFFERLD#D_DATA_BUFFERLD#D_DATA_BUFFERLD#D_DATA_BUFFER,DP DP DP DP ;设置页指针设置页指针设置页指针设置页指针 PORTR PA1PORTR PA1PORTR PA1PORTR PA1,D_DATA_BUFFER D_DATA_BUFFER D_DATA_BUFFER D_DATA_BUFFER;输入输入输入输入x(n)
37、x(n)x(n)x(n)FIR_TASKFIR_TASKFIR_TASKFIR_TASK:STM#K_FIR_BFFRSTM#K_FIR_BFFRSTM#K_FIR_BFFRSTM#K_FIR_BFFR,BKBKBKBK RPTZ A RPTZ A RPTZ A RPTZ A,#K_FIR_BFFR-1#K_FIR_BFFR-1#K_FIR_BFFR-1#K_FIR_BFFR-1 ;重复操作重复操作重复操作重复操作 MAC *AR4+0%MAC *AR4+0%MAC *AR4+0%MAC *AR4+0%,*AR5+0%AR5+0%AR5+0%AR5+0%,A A A A;双操作数乘法双操作数乘
38、法双操作数乘法双操作数乘法-累加累加累加累加 STH ASTH ASTH ASTH A,y y y y ;暂存暂存暂存暂存y(n)y(n)y(n)y(n)PORTW y PORTW y PORTW y PORTW y,PA0 PA0 PA0 PA0 ;输出输出输出输出y(n)y(n)y(n)y(n)BD FIR_TASK BD FIR_TASK BD FIR_TASK BD FIR_TASK ;循环循环循环循环 PORTR PA1PORTR PA1PORTR PA1PORTR PA1,*AR4+0%AR4+0%AR4+0%AR4+0%;输入最新样本,并修正输入最新样本,并修正输入最新样本,并修
39、正输入最新样本,并修正AR3AR3AR3AR3 .end .end .end .end第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第36页,共39页2022/9/272022/9/273636 在在在在 C5402DSPC5402DSPC5402DSPC5402DSP硬件系统中,用户可使用的存储器资源:硬件系统中,用户可使用的存储器资源:3 3 3 3汇编源程序的链接命令文件汇编源程序的链接命令文件汇编源程序的链接命令文件汇编源程序的链接命令文件 程序存储空间:片内程序存储空间:片内00800080H H 3FFFH3FFFH3FFFH3FFFH
40、,片外片外片外片外48000480004800048000H H 4FFFFH4FFFFH;数据存储空间:片内数据存储空间:片内数据存储空间:片内数据存储空间:片内0080008000800080H H H H 3FFFFH3FFFFH3FFFFH3FFFFH,片外片外片外片外4000400040004000H H H H7FFFH7FFFH。第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第37页,共39页2022/9/272022/9/273737FIRFIRFIRFIR滤波器源程序的链接命令文件如下:滤波器源程序的链接命令文件如下:滤波器源程序
41、的链接命令文件如下:滤波器源程序的链接命令文件如下:/*SOLUTION FILE FOR FIR.CMD*/*SOLUTION FILE FOR FIR.CMD*/*SOLUTION FILE FOR FIR.CMD*/*SOLUTION FILE FOR FIR.CMD*/vectors.obj vectors.obj vectors.obj vectors.obj fir.obj fir.obj fir.obj fir.obj -o fir.out -o fir.out -o fir.out -o fir.out -m fir.map -m fir.map -m fir.map -m f
42、ir.map -e fir_init -e fir_init -e fir_init -e fir_init MEMORY MEMORY MEMORY MEMORY PAGE 0 PAGE 0 PAGE 0 PAGE 0:EPROMEPROMEPROMEPROM:org=0E000H len=1000Horg=0E000H len=1000Horg=0E000H len=1000Horg=0E000H len=1000H VECS VECS VECS VECS:org=0FF80H len=0080Horg=0FF80H len=0080Horg=0FF80H len=0080Horg=0FF
43、80H len=0080H PAGE 1 PAGE 1 PAGE 1 PAGE 1:SPRAMSPRAMSPRAMSPRAM:org=0060H len=0020Horg=0060H len=0020Horg=0060H len=0020Horg=0060H len=0020H DARAM DARAM DARAM DARAM:org=0080H len=1380Horg=0080H len=1380Horg=0080H len=1380Horg=0080H len=1380H 第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第38页,共39页2022
44、/9/272022/9/273838FIRFIRFIRFIR滤波器源程序的链接命令文件如下:滤波器源程序的链接命令文件如下:滤波器源程序的链接命令文件如下:滤波器源程序的链接命令文件如下:SECTIONS SECTIONS SECTIONS SECTIONS .text .text .text .text:EPROM PAGE 0 EPROM PAGE 0 EPROM PAGE 0 EPROM PAGE 0 .vectors .vectors .vectors .vectors:VECS PAGE 0 VECS PAGE 0 VECS PAGE 0 VECS PAGE 0 .data .dat
45、a .data .data:EPRAM PAGE 0 EPRAM PAGE 0 EPRAM PAGE 0 EPRAM PAGE 0 .bss .bss .bss .bss:SPRAM PAGE1 SPRAM PAGE1 SPRAM PAGE1 SPRAM PAGE1 FIR_BFR FIR_BFR FIR_BFR FIR_BFR:align(128)DARAM PAGE 1align(128)DARAM PAGE 1align(128)DARAM PAGE 1align(128)DARAM PAGE 1 FIR_COFF FIR_COFF FIR_COFF FIR_COFF:align(128)DARAM PAGE 1align(128)DARAM PAGE 1align(128)DARAM PAGE 1align(128)DARAM PAGE 1 第第第第6 6 6 6章章章章 应用程序设计应用程序设计应用程序设计应用程序设计现在学习的是第39页,共39页2022/9/272022/9/273939