资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,DSP原理及应用,*,第6章,内容提要,数字信号处理主要面向密集型的运算,包括乘法-累加、数字滤波和快速傅里叶变换等。,C54x,具备了高速完成上述运算的能力,并具有体积小、功耗低、功能强、软硬件资源丰富等优点,现已在通信等许多领域得到了广泛应用。,本章结合数字信号处理和通信中最常见、最具有代表性的应用,介绍通用数字信号处理算法的,DSP,实现方法,主要包括:,有限冲激响应(,FIR,),数字滤波器,无限冲激响应(,IIR,),数字滤波器,快速傅里叶变换(,FFT),正弦信号发生器。,在简要介绍上述内容的基本原理、结构和算法之后,重点介绍设计方法和,DSP,实现的方法。,2024/11/18,1,DSP原理及应用,第6章 内容提要 2023/9/141DSP原理及应用,一,二,请在这里输入您的主要叙述内容,整体,概述,三,请在这里输入您的主要,叙述内容,请在这里输入您的主要叙述内容,一二请在这里输入您的主要叙述内容整体概述三请在这里输入您的主,第6章 应用程序设计,6.,1,FIR,滤波器的,DSP,实现,6.2,IIR,滤波器的,DSP,实现,6.3,快速傅里叶变换(,FFT),的,DSP,实现,6.4,正弦波信号发生器,2024/11/18,3,DSP原理及应用,第6章 应用程序设计 6.1 FIR滤波器的DSP实现 20,第6章 应用程序设计,6.1,FIR,滤波器的,DSP,实现,在数字信号处理中,滤波占有极其重要的地位。数字滤波是语音处理、图像处理、模式识别、频谱分析等应用中的基本处理算法。用,DSP,芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响等优点外,还具有灵活性好等特点。,数字滤波器是,DSP,的基本应用,分为有限冲激响应滤波器,FIR,和无限冲激响应滤波器,IIR。,本节主要讨论,FIR,滤波器的基本结构、设计方法和,DSP,实现方法。,2024/11/18,4,DSP原理及应用,第6章 应用程序设计6.1 FIR滤波器的DSP实现,第6章 应用程序设计,6.1,FIR,滤波器的,DSP,实现,6,.,1,.,1,FIR,滤波器的基本结构,数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列。,一个线性位移不变系统的输出序列,y,(,n,),和输入序列,x,(,n,),之间的关系,应满足常系数线性差分方程:,(6.1.1),x,(,n,):,输入序列,,y,(,n,):,输出序列,,a,i,、,b,i,:,滤波器系数,,N,:,滤波器的阶数。,2024/11/18,5,DSP原理及应用,第6章 应用程序设计6.1 FIR滤波器的DSP实现 6.1,第6章 应用程序设计,6,.,1,.,1,FIR,滤波器的基本结构,在式(,6.1.1,)中,若所有的,a,i,均为,0,,则得,FIR,滤波器的差分方程:,(6.1.2),对式(,6.1.2,)进行,z,变换,可得,FIR,滤波器的传递函数:,(6.1.3),2024/11/18,6,DSP原理及应用,第6章 应用程序设计6.1.1 FIR滤波器的基本结构,第6章 应用程序设计,6,.,1,.,1,FIR,滤波器的基本结构,FIR,滤波器的结构:,z,-1,z,-1,+,x,(,n,),y,(,n,),x,(,n,-1),x,(,n,-,N,+1),b,0,b,1,b,N-2,b,N-1,z,-1,2024/11/18,7,DSP原理及应用,第6章 应用程序设计6.1.1 FIR滤波器的基本结构,第6章 应用程序设计,设低通滤波器的截止频率为,f,c,,,采样频率为,f,s,,,则系数表达式:,2,.,滤波器的设计,(,6.1.14,),(1),低通滤波器的设计,2024/11/18,8,DSP原理及应用,第6章 应用程序设计 设低通滤波器的截止频率为fc,采,第6章 应用程序设计,高通滤波器可以由一个幅度为1的响应减去一个低通滤波的响应来获得,如图所示。,2,.,滤波器的设计,(,n,),响应,(2),高通滤波器的设计,1,1,f,c,1,f,0,0,f,0,f,f,c,(,n,),函数的表达式:,低通滤波,高通滤波,(,n,)=,1,n,=,0,0,n,0,高通滤波器的系数:,2024/11/18,9,DSP原理及应用,第6章 应用程序设计 高通滤波器可以由一个幅度为1的响,第6章 应用程序设计,带通滤波器可以由两个截止频率不同的低通滤波器获得,如图所示。,2,.,滤波器的设计,低通滤波,2,(3),带通滤波器的设计,1,1,f,c1,1,f,0,0,f,0,f,f,c1,低通滤波,1,带通滤波,带通滤波器的系数,等于两个低通滤波器的系数之差:,f,c2,f,c2,f,c1,和,f,c2,为低通滤波器的截止频率,,f,s,为采样频率。,2024/11/18,10,DSP原理及应用,第6章 应用程序设计 带通滤波器可以由两个截止频率不同,第6章 应用程序设计,带阻滤波器可由,(,n,),和带通滤波器相减获得,如图所示。,2,.,滤波器的设计,(,n,),响应,(4),带阻滤波器的设计,1,1,f,c1,1,f,0,0,f,0,f,f,c1,带通滤波,带阻滤波,带阻滤波器的系数:,f,c2,f,c2,2024/11/18,11,DSP原理及应用,第6章 应用程序设计 带阻滤波器可由(n)和带通滤波,第6章 应用程序设计,6.1,FIR,滤波器的,DSP,实现,6,.,1,.,4,FIR,滤波器的,DSP,实现,FIR,滤波器的输出表达式:,y,(,n,)=,b,0,x,(,n,)+,b,1,x,(,n,-,1)+,+,b,n,-,1,x,(,n,-,N,+1),(,6.1.18,),b,i,为滤波器系数,,x,(,n,),为滤波器在,n,时刻的输入,,y,(,n,),为,n,时刻的输出。,基本算法:,采用乘法累加运算。即,不断地输入样本,x,(,n,),,,经过,z,-1,延时后,再进行乘法,-,累加,最后输出滤波结果,y,(,n,),。,2024/11/18,12,DSP原理及应用,第6章 应用程序设计6.1 FIR滤波器的DSP实现 6.1,第6章 应用程序设计,6,.,1,.,4,FIR,滤波器的,DSP,实现,1.,z,-1,算法的实现,常用的方法:,线性缓冲区法,循环缓冲区法。,(1),线性缓冲区法,又称延迟线法。,特点:,在数据存储器中开辟一个,N,单元的缓冲区(滑窗),用来存放最新的,N,个输入样本;,从最老样本开始取数,每取一个数后,样本向下移位;,读完最后一个样本后,输入最新样本并存入缓冲区的顶部。,2024/11/18,13,DSP原理及应用,第6章 应用程序设计6.1.4 FIR滤波器的DSP实现 1,第6章 应用程序设计,1.,z,-1,算法的实现,(1),线性缓冲区法,缓冲区:,数据存储器,顶部为低地址单元,存放最新样本;,缓冲区顶部,最新样本,底部为高地址单元,存放最老样本;,缓冲区底部,最老样本,指针,ARx,指向缓冲区底部。,ARx,2024/11/18,14,DSP原理及应用,第6章 应用程序设计1.z-1算法的实现(1)线性缓冲,第6章 应用程序设计,(1),线性缓冲区法,最新样本,数据存储器,最老样本,ARx,求,y(n),的过程:,算法:,x(n),x(n-1),x(n-2),x(n-3),x(n-4),x(n-5),x(n-6),x(n-7),取数、移位和运算:,以,ARx,为指针,按,x,(n-7),x(n),的顺序取数,每取一次数后,数据向下移一位,并完成一次乘法累加运算;,当经过8次取数、移位和运算后,得,y(n);,求得,y,(n),后,输入新样本,x,(n+1),,,存入缓冲区顶部单元;,修改指针,ARx,,,指向缓冲区的底部。,2024/11/18,15,DSP原理及应用,第6章 应用程序设计(1)线性缓冲区法最新样本数据存储器最,第6章 应用程序设计,(1),线性缓冲区法,最新样本,数据存储器,最老样本,ARx,求,y(n),的过程:,算法:,x(n),x(n-1),x(n-2),x(n-3),x(n-4),x(n-5),x(n-6),x(n-7),ARx,x(n-7),ARx,x(n-6),y(n)=y7=b,7,x(n-7)+0,x(n-6),ARx,x(n-5),y(n)=y6=b,6,x(n-6)+y7,x(n-5),ARx,x(n-4),y(n)=y5=b,5,x(n-5)+y6,x(n-4),ARx,x(n-3),y(n)=y4=b,4,x(n-4)+y5,x(n-3),ARx,x(n-2),y(n)=y3=b,3,x(n-3)+y4,x(n-2),ARx,x(n-1),y(n)=y2=b,2,x(n-2)+y3,x(n-1),ARx,x(n),y(n)=y1=b,1,x(n-1)+y2,x(n),y(n)=b,0,x(n)+y1,PORTR,x(n+1),ARx,结果:,y(n),2024/11/18,16,DSP原理及应用,第6章 应用程序设计(1)线性缓冲区法最新样本数据存储器最,第6章 应用程序设计,(1),线性缓冲区法,求,y(n+1),的过程:,算法:,数据存储器,ARx,x(n+1),x(n),x(n-1),x(n-2),x(n-3),x(n-4),x(n-5),x(n-6),结果:,y(n),取数顺序:,x(n-6)x(n+1),x(n-5),x(n-4),x(n-3),x(n-2),x(n-1),x(n),x(n+1),最新样本:,x(n+2),x(n+2),y(n+1),y(n+2),y(n+3),y(n+4),y(n+5),y(n+6),y(n+7),数据存储器,x(n+8),x(n+7),x(n+6),x(n+5),x(n+4),x(n+3),x(n+2),x(n+1),ARx,2024/11/18,17,DSP原理及应用,第6章 应用程序设计(1)线性缓冲区法求y(n+1)的过程,第6章 应用程序设计,(1),线性缓冲区法,Z,-1,的运算是通过执行存储器延时指令来实现的。,即将数据存储器中的数据向较高地址单元移位来进行延时。,其指令:,DELAY Smem,;,(Smem),Smem+1,DELAY,*,AR3-,;,AR3,指向源地址,将延时指令与其他指令结合使用,可在同样的机器周期内完成这些操作。例如:,LD+DELAY LTD,MAC+DELAY MACD,2024/11/18,18,DSP原理及应用,第6章 应用程序设计(1)线性缓冲区法 Z-1的运算,第6章 应用程序设计,(1),线性缓冲区法,注意:,用线性缓冲区实现,z,-1,运算时,缓冲区的数据需要移动,这样在一个机器周期内需要一次读和一次写操作。因此,线性缓冲区只能定位在,DARAM,中。,优点:,在存储器中新老数据的位置直观明了。,2024/11/18,19,DSP原理及应用,第6章 应用程序设计(1)线性缓冲区法注意:用线性缓冲区实,第6章 应用程序设计,6,.,1,.,4,FIR,滤波器的,DSP,实现,2.,FIR,滤波器,(,线性缓冲区法,),的实现,C,54,x,提供的乘法,-,累加指令,MAC,,可使,FIR,数字滤波器在单周期内完成每个样值的乘法,-,累加计算。而每个样值的乘法,-,累加计算,可采用,RPTZ,和,MACD,指令来实现。,为了实现对应项乘积运算,输入的样值,x,(,n,),和滤波系数,b,i,必须合理的存放,并正确初始化存储块和块指针。,2024/11/18,20,DSP原理及应用,第6章 应用程序设计6.1.4 FIR滤波器的DSP实现 2,第6章 应用程序设计,2.,FIR,滤波器的实现,(1),用线性缓冲区实现,FIR,滤波器,设,N=7,,,FIR,滤波器的算法:,y,(,n,)=,b,0,x,(,n,)+,b,1,x,(,n
展开阅读全文