第9章c54x综合应用系统设计内容摘要:

.word 4*32768/10。 .text x(n4) x(n5) x(n6) x(n7) AR4 x(n) x(n3) x(n2) x(n1) AR3 x_new x_old 47 FIR滤波器的 DSP实现 begin: LD x_new, DP SSBX FRCT STM x_new, AR3。 AR3指 向新缓冲区第一个单元 STM x_old+(size1), AR4。 AR4指 向老缓冲区最后 1个单元 STM size, BK。 循 环缓冲区长度 STM 1, AR0 PORTR PA1,# x_new。 输 入 x[n] FIR: ADD *AR3+ 0%,*AR4+ 0%, A。 AH=x[n]+x[n7] (第一次 ) RPTZ B, (size1)。 让 B=0, 下条 指令执 行 size(4)次 FIRS *AR3+0%,*AR4+ 0%, COEF。 B=B+AH * h0,。 AH=x[n1]+x[n6], (RC)1→RC, (PAR + 1)→PAR STH B, @y。 保存结果 x(n4) x(n5) x(n6) x(n7) AR4 x(n) x(n3) x(n2) x(n1) AR3 x_new x_old 1 2 3 4 5 AR3 AR4 ;以上程序执行完毕后, AR3和 AR4指向位置如图 48 + PORTW @y, PA0 ; 输出结果 MAR * +AR3(2)% ; 修正 AR3, 指向 新缓冲区最老数据 MAR * AR4+% ;修正 AR4, 指向 老缓冲区最老数据 MVDD *AR3, *AR4+0%。 新 缓冲区向老缓冲区传送一个数 BD FIR PORTR PA1, * AR3。 输 入新数据至新缓冲区 .end x(n4) x(n5) x(n6) x(n7) AR4 x(n) x(n3) x(n2) x(n1) AR3 新 旧 ;前页程序执行完毕后,AR3和 AR4指向位置如图 AR3 AR4 AR4 49 FIR滤波器的 DSP实现 + ( +1 数字滤波器的 DSP实现 FIR滤波器在 C54x上的 simulator实现 举 例 例 1目标 : 设计一个 15阶 FIR低通滤 波 器 , 截止频率 (指数字频率,对应采样频率一半的数字频率为 1)。 解题思路步骤: ① 借助 MATLAB求出滤波器系数; ② 用 CCS编程实现 FIR滤 波; ③ 用 MATLAB产生验证数据文件 (输入波 形 ), 用 CCS观察输入输出波形。 51 ① 用 MATLAB编程得出滤波器系数 ; f = [0 1]。 %书中 f = [0 1] 对应截止频率约 m = [1 1 0 0]。 b=fir2(15, f, m) freqz(b,1,1000)。 传递函数分母为 1,ωc= 20log10(Hc)=6db 数字滤波器的 DSP实现 FIR滤波器在 C54x上的实 现 举 例 例 1目标 : 设计一个 15阶 FIR低通滤 波 器 , 截止频率 . 或者 用 Matlab 中的 Filter Design and Analysis Tool (FDATool)设计滤波器 52 ① 用 MATLAB编程得出滤波器系数 ; f = [0 1]。 %书中 f = [0 1] 对应截止频率约 m = [1 1 0 0]。 b=fir2(15,f,m) freqz(b,1,1000) 数字滤波器的 DSP实现 FIR滤波器在 C54x上的实 现 举 例 目标:设计一个 15阶 FIR低通滤 波 器,截止频率 或者 用 Matlab 中的 Filter Design and Analysis Tool (FDATool)设计滤波器 b = 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 1 5 0 0 1 0 0 0 5 0 00N o r m a l i z e d Fr e q u e n c y (   r a d / s a m p l e )Phase (degrees)0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 1 0 0 5 00N o r m a l i z e d Fr e q u e n c y (   r a d / s a m p l e )Magnitude (dB)53 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 1 0 0 0 5 0 00N o r m a l i z e d Fr e q u e n c y (   r a d / s a m p l e )Phase (degrees)0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 1 050N o r m a l i z e d Fr e q u e n c y (   r a d / s a m p l e )Magnitude (dB) FIR滤波器在 C54x上的实现举例 目标:设计一个 15阶 FIR低通滤 波 器,截止频率 ② 用 CCS编程实现 FIR滤 波; a) 打开 CCS,新建立一工程文件。 b) 建立 汇 编源文件 ,中 断向量 表 和 链接命令文件 ,并添 加到。 c) 在 project菜单下选择 rebuild all选项。 d) 在 file 菜单下,选择 load program 选项,将生成的 文件装载到 DSP中。 54 FIR滤波器在 C54x上的实现举例 b) 建 立 汇 编源文件 , .mmregs CIR_BFFR_LENGTH .set 16。 滤波器系数个 数 ,循 环缓冲区长度 K_FIR_INDEX .set 1。 循环缓冲区步长 K_FRAME_SIZE .set 256。 输入数据缓 冲 区大小 FIR_COFF_START .sect fir_coff。 16个 FIR滤 波器系数 .word 9*32768/10000 .word 5*32768/10000 .word 65*32768/10000 .word 224*32768/10000 .word 509*32768/10000 .word 879*32768/10000 .word 1235*32768/10000 .word 1455*32768/10000 .word 1455*32768/10000 .word 1235*32768/10000 .word 879*32768/10000 .word 509*32768/10000 .word 224*32768/10000 .word 65*32768/10000 .word 5*32768/10000 .word 9*32768/10000 FIR_COFF_END 55 15阶 FIR低通滤波器 .word 879*32768/10000 .word 509*32768/10000 .word 224*32768/10000 .word 65*32768/10000 .word 5*32768/10000 .word 9*32768/10000 FIR_COFF_END FIR滤波器在 C54x上的实现举例 用 循环缓冲区实现 FIR滤波器 FIR滤波 器输入数据 循 环缓冲区 存储器图 数 据存储器 滤波器系数缓冲区 input 输 入数据缓冲区( 256个) AR6 output 输 出 数据缓冲区( 256个) AR7 56 ← AR7 ← AR7 58 FIR滤波器在 C54x上的实现举例 coff_data .usect “fir_bfr”,20。 滤 波器系 数缓冲区 d_data_buffer .usect “fir_bfr” ,40。 滤波运算输入循环缓冲区 input .usect fir_bfr,256。 输入数据缓冲区 output .usect fir_bfr,256。 输出数据缓冲区 .def fir_init。 初始化 FIR滤波 器程序地址标号 .def fir_task。 执行 FIR滤波程序地 址 全 局 标号。 下 面程 序段的功能是 为 循环缓 冲 区 数 据和系数初始 化。 .sect .fir_prog fir_init: STM input, AR6。 输入数据缓冲区首址装入 AR6 STM output, AR7。 输出数据缓冲区首址装入 AR7 STM coff_data, AR5。 系数缓冲 区首 址装入 AR5 RPT CIR_BFFR_LENGTH1。 161 MVPD FIR_COFF_START,*AR5+。 将 FIR系数从程序区移到数据区 STM K_FIR_INDEX,AR0 STM d_data_buffer,AR4。 循环缓冲区首地址装入 AR4 RPTZ A,CIR_BFFR_LENGTH STL A,*AR4+。 复位缓冲区 STM (d_data_buffer+CIR_BFFR_LENGTH1),AR4 STM coff_data,AR5。 下面的子程序的功能为使用 MAC指令执行 FIR滤波。 累加器 A(滤波器输出 )=h(i)*x(ni),i=0,1,2,3.....15。 因为。 fir_task: NOP NOP NOP STM K_FRAME_SIZE1,BRC。 重复 256次,滤波256个输入数据 RPTBD fir_filter_loop1 STM CIR_BFFR_LENGTH,BK。 设置 FIR循环缓冲区大小 LD *。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。