第9章Cx综合应用系统设计.ppt
- 文档编号:2121966
- 上传时间:2022-10-27
- 格式:PPT
- 页数:32
- 大小:807KB
第9章Cx综合应用系统设计.ppt
《第9章Cx综合应用系统设计.ppt》由会员分享,可在线阅读,更多相关《第9章Cx综合应用系统设计.ppt(32页珍藏版)》请在冰豆网上搜索。
本章本章属于综合知识应用,涉及到系统的属于综合知识应用,涉及到系统的需求调研、系统整体方案的分析论证、需求调研、系统整体方案的分析论证、硬件设计、软件编程及开发仿真等多方硬件设计、软件编程及开发仿真等多方面的知识和技术。
本章首先以卷积运算面的知识和技术。
本章首先以卷积运算为例,讨论数字信号处理算法的为例,讨论数字信号处理算法的DSP实实现。
然后通过一个基于现。
然后通过一个基于TMS320C5402DSP的数字音频处理系统设计实例,讨的数字音频处理系统设计实例,讨论论DSP应用系统的设计步骤。
应用系统的设计步骤。
第第9章章C54x综合应用系统设计综合应用系统设计目录:
目录:
9.1数字信号处理算法的数字信号处理算法的DSP实现实现9.2C54x应用系统设计实例应用系统设计实例9.3DSP系统的调试与抗干扰措施系统的调试与抗干扰措施第第9章章C54x综合应用系统设计综合应用系统设计9.1.1卷积运算的结构卷积运算的结构函数函数f(t)与与h(t)的卷的卷积积分,用符号分,用符号“”表示,即:
表示,即:
第第9章章C54x综合应用系统设计综合应用系统设计连续形式形式离散形式离散形式9.1.2卷积运算在卷积运算在C54x上的实现上的实现#defineMAX(a,b)(ab)?
(a):
(b)/取最大值宏定义取最大值宏定义#defineMIN(a,b)(ab)?
(a):
(b)/取最小值宏定义取最小值宏定义#defineNH3/卷积核长度卷积核长度#defineNX5/输入向量长度输入向量长度intmain(intargc,char*argv)/主函数主函数shorthNH=1,3,5;/卷积核卷积核shortxNX=2,4,6,8,10;/输入向量输入向量shortrNH+NX-1=0;/输出向量输出向量inti,j;/临时变量临时变量for(i=0;iNH+NX;i+)/外层循环外层循环for(j=MAX(0,i+1-NX);j=MIN(i,NH-1);j+)/内层循环内层循环ri+=hj*xi-j;/卷积计算主体卷积计算主体第第9章章C54x综合应用系统设计综合应用系统设计1.根据卷积定义直接根据卷积定义直接C语言实现语言实现9.1.2卷积运算在卷积运算在C54x上的实现上的实现2.利用利用C54x自带的自带的dsplib库函数实现库函数实现TI公司提供了以公司提供了以C54x系列芯片为基础的系列芯片为基础的DSPLIB库函数,在库函数,在CCS开发系统内包含开发系统内包含DSPLIB库函数。
库函数。
这些库函数均为经过优化处理的符合这些库函数均为经过优化处理的符合C语语言标准的函数。
言标准的函数。
第第9章章C54x综合应用系统设计综合应用系统设计oflag=shortconvol(DATA*x,DATA*h,DATA*r,ushortnr,ushortnh)其中参数其中参数x为指针型变量,指向实数输入序列;为指针型变量,指向实数输入序列;h也是指针型变量,指向卷积核系数序列;也是指针型变量,指向卷积核系数序列;r为指针为指针变量,指向输出序列;变量,指向输出序列;nr是输出序列长度;是输出序列长度;nh是是卷积核系数长度,卷积核系数长度,oflag是函数的返回值,表示运是函数的返回值,表示运算过程中是否存在溢出。
算过程中是否存在溢出。
第第9章章C54x综合应用系统设计综合应用系统设计9.1.2卷积运算在卷积运算在C54x上的实现上的实现2.利用利用C54x自带的自带的dsplib库函数实现库函数实现其算法为:
其算法为:
0=j=nr通常我们将分段后的待滤波数据放于通常我们将分段后的待滤波数据放于X数组中,而将数组中,而将滤波器冲激响应序列放于滤波器冲激响应序列放于h数组。
按前述方法,数组。
按前述方法,x长长度为度为L+M-1,h长度为长度为M,则,则nr应为应为L+M-1。
计算得。
计算得到结果后,舍弃到结果后,舍弃r的前的前M-1个值。
个值。
第第9章章C54x综合应用系统设计综合应用系统设计2.利用利用C54x自带的自带的dsplib库函数实现库函数实现9.1.2卷积运算在卷积运算在C54x上的实现上的实现#includedsplib.h/包含包含dsplib头文件头文件#defineNH3/卷积核长度卷积核长度#defineNX7/输入向量长度输入向量长度#defineNRNX/输出向量长度输出向量长度main()/主函数主函数shorthNH=1000,3000,5000;/卷积核卷积核shortxNX=0,0,2000,4000,6000,8000,10000;/输入向量输入向量shortrNR;/输出向量输出向量convol(x,h,r,NR,NH);/卷积运算卷积运算第第9章章C54x综合应用系统设计综合应用系统设计9.1.2卷积运算在卷积运算在C54x上的实现上的实现2.利用利用C54x自带的自带的dsplib库函数实现库函数实现3.卷积运算的汇编语言程序设计卷积运算的汇编语言程序设计C54x指令集内提供了单周期乘累加指令指令集内提供了单周期乘累加指令MAC和循环和循环寻址方式,使每个样值的乘累加计算可以在一个周期寻址方式,使每个样值的乘累加计算可以在一个周期内完成。
内完成。
卷积运算就是实现两组数对应项乘积的累加和。
可卷积运算就是实现两组数对应项乘积的累加和。
可采用采用RPTZ和和MAC指令,结合循环寻址方式去方便指令,结合循环寻址方式去方便地实现这一运算:
地实现这一运算:
RPTZ累加器,累加器,N-1MAC(双访问数据),(双访问数据),累加器(双访问数据),(双访问数据),累加器第第9章章C54x综合应用系统设计综合应用系统设计9.1.2卷积运算在卷积运算在C54x上的实现上的实现其中,其中,RPTZ指令将累加器清零初始化,并将指令将累加器清零初始化,并将立即数立即数N-1(16位)装入到重复计数器,使下位)装入到重复计数器,使下一条指令重复执行一条指令重复执行N次。
次。
MAC指令实现将两存储区数据的乘积累加到指令实现将两存储区数据的乘积累加到累加器,再通过存储区指针以循环寻址的方式累加器,再通过存储区指针以循环寻址的方式指向下一个存储区。
指向下一个存储区。
第第9章章C54x综合应用系统设计综合应用系统设计9.1.2卷积运算在卷积运算在C54x上的实现上的实现程序设计的要点简要分析如下:
程序设计的要点简要分析如下:
为了能高效的利用为了能高效的利用DSP流水线,待卷积的两组流水线,待卷积的两组数据都应存放在数据都应存放在DARAM中中如果使用双操作数指令,辅助寄存器只能用如果使用双操作数指令,辅助寄存器只能用AR2AR5,在此我们选择,在此我们选择AR3和和AR4作为双操作为双操作数寻址辅助寄存器作数寻址辅助寄存器汇编语言的代码设计要充分考虑到资源的优化汇编语言的代码设计要充分考虑到资源的优化等等第第9章章C54x综合应用系统设计综合应用系统设计图图9-1线性缓冲区法计算卷积示意图线性缓冲区法计算卷积示意图第第9章章C54x综合应用系统设计综合应用系统设计卷积计算流程卷积计算流程如下:
如下:
第第9章章C54x综合应用系统设计综合应用系统设计
(1)在数据存储器中开辟一个在数据存储器中开辟一个N单元的缓冲区单元的缓冲区x,用来存放最新的,用来存放最新的N个输入样本,个输入样本,
(2)以以ARx为指针,取为指针,取x(0),数据指针向下移一位。
,数据指针向下移一位。
(3)以以ARy为指针,取为指针,取h
(2),系数指针向上移位。
,系数指针向上移位。
(4)进行乘累加运算进行乘累加运算A=A+x(0)h
(2)。
(5)循环进行循环进行
(2)(4),实现乘累加运算,实现乘累加运算A=A+x
(1)h
(1)以及以及A=A+x(0)h
(2)。
(6)将计算结果存入将计算结果存入r(0)。
(7)以以x
(1)为起始,重复进行为起始,重复进行
(2)(6)步,将计算结果分别存入步,将计算结果分别存入r
(1)-r(7)中。
中。
(8)更新缓冲区更新缓冲区x,重复进行,重复进行
(1)(8)步。
步。
.mmregs.def_c_int00.dataX:
.word0.word0.word2.word4.word6.word8.word10.word1.word3H:
.word5第第9章章C54x综合应用系统设计综合应用系统设计程序清单程序清单.text_c_int00:
RSBXFRCT;清清FRCT标志,准备整数乘标志,准备整数乘STMX,AR1;设置输入数据指针初值设置输入数据指针初值STM#4,BRC;设置外层循环次数设置外层循环次数RPTBLOOP;进行外层循环进行外层循环SUBA;A清零清零MVMMAR1,AR2;更新输入数据指针初值更新输入数据指针初值STMH,AR3;设置卷积核指针初值设置卷积核指针初值RPT#2;设置内层循环次数设置内层循环次数MAC*AR2+,*AR3-,A;进行乘累加运算,结果存入进行乘累加运算,结果存入ASTLMA,*+AR4;将计算结果将计算结果A存入存入AR4指向的内存单元指向的内存单元LOOP:
LD*AR1+,A;外层循环指针自增外层循环指针自增1.end第第9章章C54x综合应用系统设计综合应用系统设计程序清单(续)程序清单(续)9.2.1DSP应用系统的设计过程应用系统的设计过程第第9章章C54x综合应用系统设计综合应用系统设计图图9-2DSP应用系统的设计过程示意图应用系统的设计过程示意图9.2.2基于基于DSP的数字音频处理系统设计实例的数字音频处理系统设计实例1.系统设计要求系统设计要求2.系统总体设计方案系统总体设计方案3.音频编解码器(音频编解码器(CODEC)与)与DSP的接口设计的接口设计4.DSP主控系统软件设计主控系统软件设计5.MP3解码算法简介解码算法简介第第9章章C54x综合应用系统设计综合应用系统设计1.系统设计要求系统设计要求设计一种基于设计一种基于TMS320C5402DSP的数字音频处理系统,主要实现的数字音频处理系统,主要实现下列功能:
下列功能:
1)本系统配置功能齐全的音频编解码器()本系统配置功能齐全的音频编解码器(CODEC)芯片,并具有)芯片,并具有立体声输入或话筒输入、立体声输出或耳机输出功能。
立体声输入或话筒输入、立体声输出或耳机输出功能。
2)本系统配置海量存储器和)本系统配置海量存储器和USB接口,可以接收接口,可以接收PC机传送的机传送的MP3压缩码流,存储在本系统的海量存储器中,然后经过压缩码流,存储在本系统的海量存储器中,然后经过MP3解码程序解码程序进行解码,恢复为音频进行解码,恢复为音频PCM信号,再经信号,再经CODEC的的D/A转换及放大转换及放大器完成音频信号的回放,从而实现器完成音频信号的回放,从而实现MP3音频播放器的功能。
音频播放器的功能。
3)扩展功能:
基于)扩展功能:
基于DSP强大的数字信号处理能力和丰富的嵌入式强大的数字信号处理能力和丰富的嵌入式功能,本系统非常易于性能扩展。
功能,本系统非常易于性能扩展。
第第9章章C54x综合应用系统设计综合应用系统设计9.2.2基于基于DSP的数字音频处理系统设计实例的数字音频处理系统设计实例2.系统总体设计方案系统总体设计方案数字音频处理系统总体结构如图数字音频处理系统总体结构如图9-3所示。
所示。
系统采用系统采用TMS320C5402(以下简称以下简称C5402)DSP作为中央处作为中央处理单元,通过理单元,通过CODEC芯片完成模拟音频信号的采集、滤波、芯片完成模拟音频信号的采集、滤波、A/D、D/A转换及模拟音频信号输出。
转换及模拟音频信号输出。
DSP完成数字音频信号的接收和发送,并进行各种算法处理完成数字音频信号的接收和发送,并进行各种算法处理(如实现(如实现MP3解码算法)等。
解码算法)等。
系统配置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Cx 综合 应用 系统 设计