




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论(xùlùn)
1.1引言1.2DSP芯片概述1.3运算(yùnsuàn)基础共四十二页1.1引言1.数字信号处理概述数字信号处理,或者说对信号的数字处理,是利用计算机或专用的数字设备对数字信号进行采集、变换、滤波、估值、增强、压缩(yāsuō)和识别等加工处理,以得到符合人们需要的信号形式并进行有效的传输与应用,它是20世纪60年代发展起来的并广泛应用于许多领域的新兴学科。数字信号处理系统是以数字信号处理为基础的。图1-1所示为一个典型的DSP系统。共四十二页图1-1数字信号处理系统简化(jiǎnhuà)框图共四十二页DSP系统的输入信号可以有各种各样的形式,例如:声音、图像、温度、压力等。假设我们输入的是语音信号,DSP系统首先对语音信号进行带限滤波和抽样(chōuyànɡ),根据奈奎斯特定理,抽样(chōuyànɡ)频率至少必须是输入带限信号最高频率的2倍,以防止信号频谱混叠,保证语音信息不丢失。共四十二页2.单片机与数字信号处理器单片机是从Z80发展而来的,它将微处理器和部分外围功能(如ROM、RAM及外部串口等)集成在一个芯片上,组成微型计算机。数字信号处理器(DigitalSignalProcessor,DSP)是功能更强大的单片机,是现代电子技术、大规模集成电路、计算机技术和数字信号处理技术相结合的产物,特别适合于数字信号处理运算,主要应用(yìngyòng)于实时快速实现各种数字信号处理算法(如卷积运算、FFT、DFT、矩阵乘法等)。共四十二页DSP芯片与单片机的主要区别在于数值处理和高速控制。DSP有硬件乘法器,存储容量大得多。DSP采用的是改进的哈佛结构并广泛采用流水线技术,多个控制和运算部件并行工作,从而大大提高了运算速度。DSP芯片内有多条数据、地址和控制总线,另外,它还有特殊指令(zhǐlìng):MAC(连乘加指令(zhǐlìng),单周期同时完成乘法和加法运算)、RPTS和RPTB(硬件判断循环边界条件,避免破坏流水线);特殊寻址方式:位倒序寻址(实现FFT快速倒序)和循环寻址。共四十二页1.2DSP芯片(xīnpiàn)概述1.DSP芯片的发展美国(měiɡuó)德州仪器公司(TI,TexasInstruments)成功地推出了DSP芯片的一系列产品。TMS320是包括定点、浮点和多处理器在内的数字信号处理器(DSP)系列,其结构非常适合于做实时信号处理。共四十二页图1-2TMS320系列(xìliè)DSP发展示意图共四十二页2.TMS320系列的典型(diǎnxíng)应用自从20世纪70年代末第一个DSP芯片诞生以来,DSP芯片取得了飞速的发展。在20年里,DSP芯片已经在信号处理、音/视频、通信、消费、军事等诸多领域得到了广泛的应用。随着DSP芯片性价比的不断提高,单位运算量功耗的显著降低,DSP芯片的应用领域将会不断扩大。表1-1列出了TMS320系列DSP的典型应用。共四十二页表1-1TMS320系列DSP的典型(diǎnxíng)应用共四十二页TI作为(zuòwéi)全球DSP的领导者,目前主推三个DSP平台:TMS320C2000、TMS320C5000和TMS320C6000。其中包括多个子系列,数十种DSP器件,为用户提供广泛的选择,以满足各种不同应用的需求。共四十二页TMS320C2000系列DSP主要用于代替MCU,应用于各种工业控制领域,尤其是电机控制领域。TMS320C5000系列DSP是为实现低功耗、高性能而专门设计的16位定点DSP芯片,它主要应用于通信和消费类电子产品,如手机、数码相机、无线通信基础(jīchǔ)设备、VoIP网关、IP电话、MP3等。
TMS320C6000系列的DSP主要应用于高速宽带和图像处理等高端应用,如宽带通信、3G基站和医疗图像处理等。共四十二页1.3运算基础1.3.1数据格式DSP有定点DSP和浮点DSP两种。本书介绍的TMS320C54x是16位定点DSP。在定点DSP中,数据有两种基本的表示(biǎoshì)方法:整数表示(biǎoshì)方法和小数表示(biǎoshì)方法。共四十二页1.整数DSP芯片和所有微处理器一样,以2的补码形式表示有符号数。16位定点DSP整型数格式为:Sxxxxxxxxxxxxxxx,其中最高位S为符号位,0代表正数,l代表负数,其余(qíyú)位为数据位。数的范围为-32768~32767。整数的最大取值范围取决于DSP的字长,字长越长,所能表示的数据范围越大,精度越高。假定一个整数字长为n,则其取值范围为-2n~2n-1。整数的最小分辨率为1。共四十二页【例1】若字长n=8,求以下带符号整数的二进制、十六进制和十进制之间的转换。正整数 01001011B=4BH=26+23+21+20=64+8+2+1=75负整数 11111101B=FDH=-3在本书介绍的TMS320C54xDSP中,整数一般用于控制(kòngzhì)操作、地址计算和其他非信号处理的应用。
共四十二页2.小数在16位定点DSP中,小数表示为:S.xxxxxxxxxxxxxxx,最高位S为符号位,其他(qítā)的各位采用2的补码表示,小数点紧接着符号位,无整数位,数的范围为(-1,1)。小数的最小分辨率为2-15。共四十二页【例2】正小数01010000B=2-1+2-3=0.5+0.125=0.625负小数11010000B=-1+2-1+2-3=-1+0.5+0.125=-0.375对于求负小数的十进制真值,也可先求数值位的原码,即对11010000B求补,然后再求真值,即[11010000B]补=10110000B=-(2-2+2-3)=-(0.25+0.125)=-0.375小数主要用于数字和各种(ɡèzhǒnɡ)信号处理算法的计算。共四十二页3.数的定标显然,定点表示并不意味着就一定是整数表示。在许多情况下,需要(xūyào)由编程来确定一个数的小数点的位置,即数的定标。定点数最常用的是Q表示法或Qm.n表示法。它可将整数和小数表示方法统一起来。其中,m表示数的2补码的整数部分,n表示数的2补码的小数部分,1位符号位,数的总字长为m+n+l位。表示数的整数范围为-2m~2m-1,小数的最小分辨率为2-n。表1-2给出了16种Q表示法及其所表示的十进制数范围。共四十二页表1-2Q表示(biǎoshì)法及其表示(biǎoshì)的十进制数范围共四十二页1)Q15.0格式(géshi)Q15.0格式的字长为16位,其每位的具体表示为:Sxxxxxxxxxxxxxxx。2)Q3.12格式Q3.12格式的字长为16位,其每位的具体表示为:Sxxxyyyyyyyyyyyy。3)Q0.15(或Q.15)格式Q.15格式的字长为16位,其每位的具体表示为:S.xxxxxxxxxxxxxxx。共四十二页4)Q0.31(或Q.31)格式Q.31格式的字长(zìchánɡ)为32位,需要2个16位的存储器字来表示。它实际上是Q.15格式的扩展表示。其每位的具体表示为:Sxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx。共四十二页4.定点数格式的选择在具体应用中,为保证在整个运算过程中数据不会溢出,应选择合适的数据格式。例如,对于Q.15格式,其数据范围(-1,1),这样(zhèyàng)就必须保证在所有运算中,其结果都不能超过这个范围,否则,芯片将结果取其极大值-1或l,而不管其真实结果为多少。共四十二页5.定点格式数据的转换同一个用二进制表示的定点数,当采用不同的Qm.n表示方法时,其代表(dàibiǎo)的十进制数是不同的。例如:用Q15.0表示方法,十六进制数3000H=12288;用Q0.15表示方法,十六进制数3000H=0.375;用Q3.12表示方法,十六进制数3000H=3。共四十二页(1)将十进制数表示成Qm.n格式。首先将数乘以2n,变成整数(zhěngshù),然后再将整数(zhěngshù)转换成相应的Qm.n格式。(2)将某种动态范围较小的Qm.n格式转换为动态范围较大的Qm.n格式。共四十二页1.3.2定点算术运算1.两个定点数的加/减法定点数的加/减法必须保证两个操作数的格式(géshi)一致。如果两个数的Q值不同,可将Q值小的数调整为与另一个数的Q值一样大,但必须在保证数据精度不变的前提下。另外,注意有符号和无符号数加/减运算的溢出问题。共四十二页【例3】若x、y为正数,x=4.125,y=0.125,求x+y。解x=4.125,采用Q3.12格式(géshi)表示的十六进制码为x×212=4.125×212=4200H;y=0.125,采用Q.15格式表示的十六进制码为x×215=0.125×215=1000H。由于Q3.12格式与Q.15格式的整数位相差3位,因此将y的Q.15格式表示的十六进制码1000H右移3位;由于1000H为正数,因此将整数部分补零,得到用Q3.12格式表示的0.125为0200H。将4200H加上0200H得到4400H,该数的格式为Q3.12,x+y=4.25。共四十二页【例4】若x为正数,y为负数,x=5.625,y=-0.625,求x+y。解x=5.625,采用Q3.12格式表示的十六进制码为5A00H;y=-0.625,采用Q.15格式表示的十六进制码为B000H。将y表示为Q3.12格式时,将它右移3位,因为是负数,所以整数部分(bùfen)符号位扩展后结果为F600H。将F600H加到5A00H上,结果为5000H,x+y的Q3.12格式的值等于5。
共四十二页【例5】若x、y为负数,x=-1.625,y=-0.125,求x+y。解x=-1.625,采用Q3.12格式表示的十六进制码为E600H;y=-0.125,采用Q.15格式表示的十六进制码为F000H。将y表示为Q3.12格式后,其十六进制码为FE00H。将FE00H加到E600H上,结果(jiēguǒ)为E40OH,x+y的Q3.12格式的值等于-1.75。
共四十二页【例6】若x为负数,y为正数,x=-4.025,y=0.425,求x+y。解x=-4.025,采用Q3.12格式表示(biǎoshì)的十六进制码为BF9AH;y=0.425,采用Q.15格式表示的十六进制码为3666H。将y表示为Q3.12格式后,其十六进制码为06CCH。将06CCH加到BF9AH上,结果为C666H,x+y的Q3.12格式的值等于-3.6,结果正确。共四十二页2.两个定点数的乘法(chéngfǎ)两个16位定点数的乘法分以下几种情况。1)纯小数乘以纯小数(数据用Q.15表示)Q.15×Q.15=Q.30 Sxxxxxxxxxxxxxxx ;Q.15× Syyyyyyyyyyyyyyy ;Q.15SSzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz ;Q.30共四十二页【例7】0.5×0.5=0.25。0.100000000000000 ;Q.15×0.100000000000000 ;Q.15 00.010000000000000000000000000000=0.25 ;Q.30共四十二页2)整数(zhěngshù)乘整数(zhěngshù)(数据用Q15.0表示)Q15.0×Q15.0=Q30.0【例8】12×(-5)=-60。0000000000001100 (12);Q15.0×1111111111111011 (-5);Q15.011111111111111111111111111000100 (-60) ;Q30.0共四十二页3)混合表示法两个16位整数相乘,乘积总是(zǒnɡshì)“向左增长”,积为32位,难于进行后续的递推运算;两个小数相乘,乘积总是(zǒnɡshì)“向右增长”,且存储高16位乘积,用较少资源来保存结果(这是DSP芯片采用小数乘法的原因)用于递推运算。许多情况下,运算过程中为了既满足数值的动态范围,又保证一定的精度,就必须采用Q15.0与Q.15之间的Q表示法,即混合表示。例如,数值1.0125显然用Q.15格式无法表示,而若用Q15.0格式表示,则最接近的数是1,精度无法保证。因此,数1.0125最佳的表示法是Q1.14格式。共四十二页【例9】1.5×0.75=1.125。01.10000000000000 (1.5) ;Q1.14× 00.11000000000000 (0.75);Q1.140001.0010000000000000000000000000=1.125 ;Q2.13由于Q1.14的最大值不大于2,因此,2个Q1.14数相乘得到(dédào)的乘积不大于4。共四十二页3.两个定点数的除法在通用DSP芯片中,一般不提供单周期的除法指令,为此必须采用除法子程序(chéngxù)来实现。二进制除法是乘法的逆运算。乘法包括一系列的移位和加法,而除法可分解为一系列的减法和移位。下面说明除法的实现过程。设累加器为8位,且除法运算为91除以4。除的过程就是除数逐步移位并与被除数比较的过程。在这过程中,每一步都进行减法运算,如果够减,则将1插入商中,否则补0。
共四十二页除法一般(yībān)用有规律的减法去做,如:10110 商220100 01011011被除数910100 除数(chúshù)4右移3位11010010110011余3被除数位置(wèizhi)不动商位置不动除数右移共四十二页TMS320C54x利用带条件减法SUBC来实现除法运算,除数不动,被除数、商左移。TMS320没有专门的除法指令,但使用条件减法指令SUBC加上重复指令RPT就可以完成有效灵活的除法功能。使用SUBC的惟一限制是两个操作数必须为正。程序员必须事先了解其可能的运算数的特性,如其商是否可以用小数表示及商的精度(jīnɡdù)是否可被计算出来。这里每一种考虑都会影响到如何使用SUBC指令的问题。共四十二页如上(rúsháng)例中:(1)被除数减除数:01011011
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论