首页 DSP天津大学课件\dsp\数字信号处理器(DSP)及其应用(1-4)

DSP天津大学课件\dsp\数字信号处理器(DSP)及其应用(1-4)

举报
开通vip

DSP天津大学课件\dsp\数字信号处理器(DSP)及其应用(1-4)数字信号处理器(DSP)及其应用胡晓东xdhu@tju.edu.cn参考书与相关网址DSP芯片的原理与开发应用(第3版),张雄伟编著,电子工业出版社,2003DSP基础与应用系统设计,王念旭编著,北京航空航天大学出版社,2001www.ti.com教学大纲概述介绍DSP的特点、典型应用DSP芯片的基本结构和特征基本定点、浮点算术运算的编程实现DSP芯片的软硬件设计方法开发调试环境的介绍介绍C编译器、汇编语言工具、系统集成调试工具(simulator,codecomposer,c/assemblysourcedebu...

DSP天津大学课件\dsp\数字信号处理器(DSP)及其应用(1-4)
数字信号处理器(DSP)及其应用胡晓东xdhu@tju.edu.cn参考书与相关网址DSP芯片的原理与开发应用(第3版),张雄伟编著,电子工业出版社,2003DSP基础与应用系统设计,王念旭编著,北京航空航天大学出版社,2001www.ti.com教学大纲概述介绍DSP的特点、典型应用DSP芯片的基本结构和特征基本定点、浮点算术运算的编程实现DSP芯片的软硬件设计方法开发调试环境的介绍介绍C编译器、汇编语言工具、系统集成调试工具(simulator,codecomposer,c/assemblysourcedebugger等)基本DSP系统设计第1章概述第一章概述数字信号处理是一门涉及许多学科而又广泛应用于许多领域的新兴学科微积分、概率统计、随机过程、数值分析网络理论、信号与系统、控制论、通信理论、故障诊断人工智能、模式识别、神经网络以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理DSP芯片的诞生及发展对近30年来通信、计算机、控制等领域的技术发展起到十分重要的作用,它是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法(离散傅立叶变换DFT)DSPDigitalSignalsProcessing数字信号处理(方法、技术)以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理DigitalSignalsProcessor数字信号处理器是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法信号处理方式的比较比较因素模拟方式数字方式修改设计的灵活性修改硬件设计,或调整硬件参数改变软件设置A/D的位数和计算机字长算法精度元器件精度可靠性和可重复性受环境温度、湿度、噪声、电磁场等的干扰和影响大不受这些因素的影响大规模集成尽管已有一些模拟集成电路,但品种较少、集成度不高、价格较高DSP器件体积小、功能强、功耗小、一致性好、使用方便、性能/价格比高实时性除开电路引入的延时外,处理是实时的由计算机的处理速度决定高频信号的处理可以处理包括微波毫米波乃至光波信号按照奈准则的要求,受S/H、A/D和处理速度的限制数字信号处理的实现方法在通用的计算机(如PC机)上用软件(如Fortran、C语言)实现,速度慢在通用计算机系统中加上专用的加速处理机实现,速度快,应用受限制用通用的单片机(如MCS-51、96系列等)实现,仅限于简单算法用通用的可编程DSP芯片实现,广泛应用用专用的DSP芯片实现,速度最快,应用受限制复杂算法复杂算法简单算法复杂算法复杂算法适应性好嵌入式较快专用指令通用DSP中等嵌入式快硬件+专用指令专用DSP较好嵌入式慢汇编语言编程单片机中等非嵌入式快硬件+专用指令PC机+高速处理较好非嵌入式中等高级语言编程PC机性价比应用场合速度实现方法DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电数字滤波卷积相关希尔伯特变换FFT自适应滤波加窗波形产生DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电三维旋转机器人视觉图像传输/压缩同态处理模式识别工作站动画/数字地图DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电频谱分析函数发生器模式匹配地震信号处理数字滤波锁相环DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电声码器语音识别语音增强语音合成DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电磁盘控制数值控制声控伺服控制机器人控制激光打印机控制发动机控制自适应驾驶DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电雷达处理声纳处理图像处理导航导弹制导高频调制解调器保密通讯DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电回声对消ADPCM代码转换器数字交换机线路转发器解调器通道多路复用1200至19200bps调制自适应均衡传真扩频通讯DSP芯片的主要应用领域(1)信号处理(2)图像处理(3)仪器(4)声音/语言(5)控制(6)军事应用(7)电信(8)无线电全球定位导航数字无线电/TV微处理器将无处不在DSP系统构成抗混叠滤波A/DD/ADSP芯片平滑滤波输入输出存储器通讯及人机接口控制处理器监护仪视频会议系统视频接口CPU时钟网络接口1394存储器音频接口电源专用接口PCI总线视频会议系统数字式家庭影院显示器CPU存储器多路通用接口电源L/R音箱D/AD/A低音家庭影院家庭网络电机控制器功率因数校正I/V测量CPU稳压源电源存储器功率转换电机驱动器传感器电机控制器POS机存储器CPU数据传输接口网络接口银行锁磁卡音频键盘显示打印机POS机雷达存储器主CPU内部测量数据转换信号调理专用电路通讯接口控制器D/A电机雷达从CPU存储专用电路医学图像监视系统医学图像监视系统存储器主CPU视频存储数据转换信号调理专用电路从CPU从CPU显示驱动显示器从CPU控制通讯接口专用电路图像处理输入输出数码相机MPEG-4压缩DSP芯片主要特点在一个指令周期内可完成一次乘法和一次加法程序和数据空间分开,可以同时访问指令和数据片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问具有低开销或无开销循环及跳转的硬件支持快速的中断处理和硬件I/O支持具有在单周期内操作的多个硬件地址产生器可以并行执行多个操作支持流水线操作,使取指、译码和执行操作可以重叠执行DSP的优缺点优点:大规模集成性稳定性好,精度高可编程性高速性能可嵌入性接口和集成方便缺点:成本较高高频时钟的高频干扰功率消耗较大等DSP技术更新速度快,开发和调试工具不尽完善硬件实现非实时的数字信号处理;高速实时数字信号处理高速实时数字控制DSP芯片的发展世界上第一个单片DSP芯片应当是1978年AMI公司发布的S28111980年,日本NEC公司推出的μPD7720是第一个具有乘法器的商用DSP芯片美国德州仪器公司为世界上最大的DSP芯片供应商,三大系列,其DSP市场份额占全世界份额近50%AD公司的ADSP2101,ADSP2111,ADSP2171,ADSP21000等系列;Motolora公司的MC56001,MC96002等DSP芯片的发展(续)完成乘加操作的时间下降到10ns以下乘法部件占模片区从40%下降到5%引脚数从64增加到200以上重量和体积大大下降采用低电压,功耗大大下降DSP分类通用专用定点(Fixed)浮点(Floating,多种格式)按基础特性:按数据格式:按用途:静态(在某时钟频率上工作)一致性(兼容性)TIDSP芯片发展比较表年份1982年1992年1999年2002年制造工艺4mNMOS0.8mCMOS0.3mCMOS0.18mCMOSMIPS5MIPS40MIPS100MIPS160MIPSMHz20MHz80MHz100MHz160MHz内部RAM144字1K字32K字64K字内部ROM1.5K字4K字16K字32K字价格$150.00$15.00$5.00~$25.00$5.00~$25.00功耗250mW/MIPS12.5mW/MIPS0.45mW/MIPS0.05mW/MIPSTMS320系列主要芯片发展DSP芯片的选择DSP芯片的运算速度指令周期:即执行一条指令所需的时间TMS320VC5402-100,100MHz,10nsMAC时间:即一次乘法加上一次加法的时间大部分DSP芯片在一个指令周期完成FFT执行时间:即运行一个N点FFT程序所需的时间衡量DSP运算能力的一个指标MIPS:即每秒执行百万条指令MOPS:即每秒执行百万次操作MFLOPS:即每秒执行百万次浮点操作BOPS:即每秒执行十亿次操作MIPS(MillionInstructionpersecond)是一种评估DSP速度的一个指标。DSP运行频率也是评估DSP的一个指标,他们二者之间的联系需要考虑到DSP体系结构(是否多路并行结构、是执行定点还是浮点运算)。DSP芯片的选择(续)DSP芯片的价格DSP芯片的硬件资源片内RAM,ROM,外扩空间,I/O接口…DSP芯片的运算精度,一般16,有些24DSP芯片的开发工具DSP芯片的功耗其他:选择DSP芯片还应考虑到封装的形式(DIP、PGA、PLCC、PQFP)、质量 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 、供货情况、生命周期等一般而言,定点DSP芯片的价格较便宜,功耗较低,但运算精度稍低。而浮点DSP芯片的优点是运算精度高,且C语言编程调试方便,但价格稍贵,功耗也较大。相应档次的DSP:商业级、工业级、军品、航空级等。依据运算量选择DSP芯片按样点处理DSP算法对每一个输入样点循环一次例如,一个采用LMS算法的256抽头的自适应FIR滤波器,假定每个抽头的计算需要3个MAC周期,则256抽头计算需要256×3=768个MAC周期。如果采样频率为8kHz,即样点之间的间隔为125s,DSP芯片的MAC周期为200ns,则768个MAC周期需要153.6s的时间,显然无法实时处理,需要选用速度更高的DSP芯片。依据运算量选择DSP芯片(续)按帧处理每隔一定的时间间隔(通常称为帧)循环一次中低速语音编码算法通常以10ms或20ms为一帧,每隔10ms或20ms语音编码算法循环一次。所以,选择DSP芯片时应该比较一帧内DSP芯片的处理能力和DSP算法的运算量。假设DSP芯片的指令周期为p(ns),一帧的时间为(ns),则该DSP芯片在一帧内所能提供的最大运算量为/p条指令。TMS320LC549-80的指令周期为12.5ns,设帧长为20ms,则一帧内所能提供的最大运算量为160万条指令DSP总体设计框图系统需求 说明书 房屋状态说明书下载罗氏说明书下载焊机说明书下载罗氏说明书下载GGD说明书下载 定义技术指标选择DSP芯片及外围芯片软件设计说明书硬件设计说明书软件编程与测试硬件电路与调试系统集成系统测试,样机、中试与产品编写C语言源程序优化ANSIC编译器汇编语言汇编器生成目标文件链接器生成TMS320汇编文件编写TMS320汇编源程序宏汇编源文件文档管理器宏汇编库输出执行文件调试器TMS320目标系统写EEPROM软件仿真软件开发系统评测模块EVM系统仿真XDS软件系统设计框图确定硬件 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 器件选型原理图设计PCB板设计硬件调试硬件系统设计框图器件选型器件选型A/D,D/A内存,逻辑控制通信,总线人机接口小结算法是DSP系统中最为关键的因素在进行DSP系统设计的前期,了解系统的需求并制定出相应的技术指标是后续工作的必要指导硬件设计与嵌入式软件设计在DSP系统中是同等重要的第2章DSP芯片的基本结构和特征DSP芯片的基本结构DSP芯片是一种具有特殊结构的微处理器,为了达到快速进行数字信号处理的目的,一般都具有程序和数据分开的总线结构、流水线操作功能、单周期完成乘法的硬件乘法器以及一套适合数字信号处理的指令集。TMS320系列DSP芯片的基本结构哈佛结构流水线操作专用的硬件乘法器特殊的DSP指令快速的指令周期冯·诺曼(VanNeuman)结构CPU程序存储器数据存储器控制命令地址线数据线依据指令计数器提供的地址来区分指令和数据通用处理器(GPP)采用冯.诺依曼结构,程序和数据的存储空间合二而一8086/286/386/486/Pentium/PentiumII/PentiumIIIPentiumⅣPowerPc64-bitCPU(SUNSparc,DECAlpha,HP)CISC复杂指令计算机,RISC精简指令计算机采取各种方法提高计算速度,提高时钟频率,高速总线,多级Cashe,协处理器等SingleChipComputer/MicroControllerUnit(MCU)除通用CPU所具有的ALU和CU,还有存储器(RAM/ROM)寄存器,时钟,计数器,定时器,串/并口,有的还有A/D,D/A大多数型号的单片机遵循着冯.诺依曼体系的设计思路INTELMCS/48/51/96(98)哈佛结构不同于传统的冯·诺曼结构的并行体系结构主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线两条总线,从而使数据的吞吐率提高了一倍,取指和执行能完全重叠运行TMS320系列DSP芯片在基本哈佛结构的基础上作了改进,一是允许数据存放在程序存储器中,并被算术运算指令直接使用,增强了芯片的灵活性;二是指令存储在高速缓冲器(Cache)中,当执行此指令时,不需要再从存储器中读取指令,节约了一个指令周期的时间。冯.诺依曼指令流的定时关系哈佛结构CPU程序存储器控制命令地址线程序总线数据存储器控制命令地址线数据总线TMS320C5000高级多总线结构:3个数据总线,1个程序总线,1个地址总线40位ALU,包括一个40位桶型移位器和两个独立40位累加器17x17位并行乘法器流水线TMS320系列处理器的流水线深度从2~6级不等多个指令重叠进行,理想情况下,K段流水能在K+N-1个周期内,处理N条指令四级流水线操作C54x的6级流水线P(Prefetch):预取指,通过程序地址总线找到指令代码的存储单元F(Fetch),取指,程序总线取出指令操作码至指令寄存器D(Decode):译码A(Address):寻址操作数,可能同时对数据地址总线DAB和CAB操作,对辅助寄存器或堆栈指针修正R(Read),分别从总线DB和CB读数据至指令指定寄存器X(Execute):执行。专用的硬件乘法器在通用的微处理器中,乘法指令是由一系列加法来实现的,故需许多个指令周期来完成TMS320系列中,由于具有专用的硬件乘法器,乘法可在一个指令周期内完成MPY特殊的DSP指令在数字信号处理中,延迟操作非常重要,这个延迟就是由DMOV(在存储器中移动数据以实现延迟)来实现的TMS32010,LTD,它在一个指令周期内完成LT、DMOV和APAC三条指令MACD——LT、DMOV、MPY、APACRPTK——重复执行考虑一个数字信号处理的实例,比如有限冲击响应滤波器(FIR)。用数学语言来说,FIR滤波器是做一系列的点积。取一个输入量和一个序数向量,在系数和输入 样本 保单样本pdf木马病毒样本下载上虞风机样本下载直线导轨样本下载电脑病毒样本下载 的滑动窗口间作乘法,然后将所有的乘积加起来,形成一个输出样本。类似的运算在数字信号处理过程中大量地重复发生,使得为此设计的器件必须提供专门的支持,促成了了DSP器件与通用处理器(GPP)的分流1对密集的乘法运算的支持GPP不是设计来做密集乘法任务的,即使是一些现代的GPP,也要求多个指令周期来做一次乘法。而DSP处理器使用专门的硬件来实现单周期乘法。DSP处理器还增加了累加器寄存器来处理多个乘积的和。累加器寄存器通常比其他寄存器宽,增加称为结果bits的额外bits来避免溢出。同时,为了充分体现专门的乘法-累加硬件的好处,几乎所有的DSP的指令集都包含有显式的MAC指令。2存储器结构传统上,GPP使用冯.诺依曼存储器结构。这种结构中,只有一个存储器空间通过一组总线(一个地址总线和一个数据总线)连接到处理器核。通常,做一次乘法会发生4次存储器访问,用掉至少四个指令周期。DSP采用了哈佛结构,将存储器空间划分成两个,分别存储程序和数据。它们有两组总线连接到处理器核,允许同时对它们进行访问。这种安排将处理器存贮器的带宽加倍,更重要的是同时为处理器核提供数据与指令。在这种布局下,DSP得以实现单周期的MAC指令。3零开销循环如果了解到DSP算法的一个共同的特点,即大多数的处理时间是花在执行较小的循环上,也就容易理解,为什么大多数的DSP都有专门的硬件,用于零开销循环。所谓零开销循环是指处理器在执行循环时,不用花时间去检查循环计数器的值、条件转移到循环的顶部、将循环计数器减1。与此相反,GPP的循环使用软件来实现。某些高性能的GPP使用转移预报硬件,几乎达到与硬件支持的零开销循环同样的效果。4定点计算大多数DSP使用定点计算,而不是使用浮点。虽然DSP的应用必须十分注意数字的精确,用浮点来做应该容易的多,但是对DSP来说,廉价也是非常重要的。定点机器比起相应的浮点机器来要便宜(而且更快)。为了不使用浮点机器而又保证数字的准确,DSP处理器在指令集和硬件方面都支持饱和计算、舍入和移位。5专门的寻址方式DSP处理器往往都支持专门的寻址模式,它们对通常的信号处理操作和算法是很有用的。例如,模块(循环)寻址(对实现数字滤波器延时线很有用)、位倒序寻址(对FFT很有用)。这些非常专门的寻址模式在GPP中是不常使用的,只有用软件来实现。DSP其他特点主频较一般比MCU要高许多。从指令周期来看:低档DSP一般为50ns;中档DSP一般为10ns;高档DSP一般为5ns。从处理能力来看:低档DSP一般为20MIPS;中档DSP一般为100MIPS;高档DSP一般为1600MIPSMIPS代表每秒执行百万个指令片内具有软件插等待寄存器,方便与慢速器件接口片内具有PLL(数字锁相电路),使片内高频、片外低频工作,有利于系统稳定JTAG(JointTestActionGroup)标准测试接口(IEEE1149标准接口)便于对DSP作片上的在线仿真和多DSP条件下的调试DSP的种类定点与浮点DSP芯片定点DSP,运算速度快、精度低、动态范围小:TMS320C1X/C2X/C5X/C5XX/C620X,MC56000,ADSP21XX浮点DSP,运算精度高,动态范围大:TMS320C3X/C4X/C8X/C67XX,MC96000,ADSP21XXX通用与专用DSP芯片通用DSP:TMS320专用DSP:MC56200静态DSP芯片与一致性DSP芯片:指令类型和工作时钟TMS320系列主要芯片一览表TMS320系列主要芯片发展TMS320系列部分芯片介绍TMS320C2xx包括C20x和C24X两个系列处理能力强,指令周期为25ns,运算能力达40MIPS片内含有较大的闪存,成本低,体积小功耗低。3.3V工作时,每个MIPS消耗1.1mA资源配置灵活,现有10多种具有不同资源配置的芯片,为数字控制系统进行了优化设计TMS320C2XX系列芯片的资源配置TMS320C2XX指令周期(ns)片内ROM(字)片内RAM(字)片内FLM(字)同步串行口异步串行口C20325/35/5054411C20425/35/504K54411C20525/35/504.5K11F20625/35/504.5K32K11F20725/35/504.5K32K21C20935/504K4.5KC2405016K54411F2405054416K11C241508K54411F241505448K11C242504K54411F243505448K11C24x系列TMS320C240X系列芯片的资源配置TMS320C240X指令周期(ns)片内ROM(字)片内RAM(字)片内FLM(字)A/DA/D转换时间LF2407255K64K16ch/10bit500nsLF2406255K64K16ch/10bit500nsLF2403252K32K8ch/10bit500nsLF2402252K16K8ch/10bit500nsLF2401252K16K5ch/10bit500nsLC24062564K5K16ch/10bit375nsC28x系列TMS320C28X系列芯片的资源配置TMS320C28X指令周期(ns)片内RAM(字)片内FLM(字)12bitA/D串行口PWMR28126.6720K16ch216R28116.6720K16ch216F28126.6718K128K16ch216F28116.6718K128K16ch216F28106.6718K64K16ch216F28081018K64K16ch216定点DSPTMS320C54x为实现低功耗、高性能而专门设计的定点DSP芯片为无线通讯用的高性能价格比的芯片。运算速度快,指令周期为25/20/15/12.5/10ns优化的CPU结构。1个40位的算术逻辑单元、2个40位的累加器、2个40位的加法器、1个17×17乘法器和40位的桶型移位器,有4条内部总线和2个地址产生器低功耗,可在3.3V或2.5V、1.8V、甚至1.2V电压下工作,三个低功耗方式智能外设,除标准的串行口和时分复用串行口外,还含有自动缓存串行口(2kbuffer)和外部处理器并行口HPITMS320C54X的资源配置TMS320C54X指令周期(ns)工作电压(V)片内RAM(字)片内ROM(字)串行口BSPHPIC54120/255/3.3/3.05K28K2个标准口C54220/255/3.3/3.010K2K1个TDM口11C54320/253.3/3.010K2K1个TDM口1C54520/253.3/3.06K48K1个标准口11C54620/253.3/3.06K48K1个标准口1C54815/20/253.3/3.032K2K1个TDM口21LC/VC54910/12.5/153.3/2.532K16K1个TDM口21VC5402103.3/1.816K4K21TMS320系列部分芯片介绍TMS320C5x+RISCC5471集成54xCPU和ARM7TDMI™RISCMCU16bitDSP,100MHz时钟,72K16bit片内RAM2K16bit的共享RAM,做为DSP与MCU的接口47.5MHz的MCU,16KB片内RAM10/100Mb/sIEEE803.2以太网控制器及UART36个通用I/O接口、2个通用定时器、可编程锁相环(PLL)时钟产生器其它接口TMS320系列部分芯片介绍54xDSP共享RAMMCUTMS320VC5471结构示意图DSP部分共享RAMMCU部分定点DSPTMS320C62xTI公司1997年开发的新型定点DSP芯片,用于无线基站,无线PDA,Modem,GPS等。速度快,指令周期为3.3ns,运算能力为2400MIPS内部结构不同,同时集成有2个乘法器和6个算术运算单元,一个周期内可执行8条32bit指令使用超长指令集,在一个周期内可并行执行几个指令大容量片内存储器(片内有512K程序和数据存储器)和大范围寻址空间多种外设,4个DMA,2个多通道缓存串口,2个计时器浮点DSPTMS320C3x并行浮点处理器。275mops,320Mbyte/s数据吞吐量6个高速通讯接口,每个口的最大数据吞吐量可达20Mbyte/s的异步传输速率6个DMA通道实现了I/O操作与CPU操作的并行化分开的数据和地址总线,16G连续的程序和数据存储空间片内分析模块支持高效的并行处理调试片内程序高速缓冲存储器浮点DSPTMS320C67X可同时执行8条指令,其运算能力可达1GFLOPS运行速度快。指令周期为6ns,峰值运算能力为1336MIPS,对于单精度运算可达1GFLOPS,对于双精度运算可达250MFLOPS集成了32×32比特的乘法器,其结果可为32或64比特指令集为在TMS320C62x指令集基础上增加了浮点执行能力多处理器DSPTMS320C8x多处理器DSP芯片,用于多媒体,视频图象,保密和雷达等。4个并行DSP芯片,可并行和单独执行,都由高速Cashe和专用数据RAM;通过传输控制器实现400M/s的数据传输;含有32位的RISC主控制器,用以实现高效C语言和作为操作系统的平台存储器Crossbar结构,将50K的SRAM分成小块,通过Crossbar开关机构实现并行访问,速度高达4.5GByte/s视频控制器,用于任何捕获和显示的组合中小结TI公司目前比较流行的定点DSP芯片是TMS320C2XX、TMS320C54X、TMS320C62X等流行的浮点DSP芯片是TMS320C3X、TMS320C67X等即使是同一系列的DSP芯片,某些芯片也已过时,因而建议不要使用第3章DSP芯片的定点运算§1数的定标在定点DSP芯片中,采用定点数进行数值运算,其操作数一般采用整型数来表示DSP芯片的数以2的补码形式表示处理各种小数,数的定标数的定标有Q表示法和S表示法两种16进制数2000h=8192,用Q0表示16进制数2000h=0.25,用Q15表示对定点数而言,数值范围与精度是一对矛盾,一个变量要想能够表示比较大的数值范围,必须以牺牲精度为代价浮点数与定点数的转换关系浮点数转换为定点数定点数转换为浮点数浮点数x=0.5,定标Q=15,则定点数=0.5*32768=16384Qqx2x(int)*=Qqx-*=2)float(x0000000000000100Q0表示为8192Q15表示为0.25Q表示法16进制数2000H小数点的位置0000000000000100小数点的位置符号位Q表示S表示十进制数表示范围Q15S0.15-1≤X≤0.9999695Q14S1.14-2≤X≤1.9999390Q13S2.13-4≤X≤3.9998779Q12S3.12-8≤X≤7.9997559Q11S4.11-16≤X≤15.9995117Q10S5.10-32≤X≤31.9990234Q9S6.9-64≤X≤63.9980469Q8S7.8-128≤X≤127.9960938Q7S8.7-256≤X≤255.9921875Q6S9.6-512≤X≤511.9804375Q5S10.5-1024≤X≤1023.96875Q4S11.4-2048≤X≤2047.9375Q3S12.3-4096≤X≤4095.875Q2S13.2-8192≤X≤8191.75Q1S14.1-16384≤X≤16383.5Q0S15.0-32768≤X≤32767溢出及处理方法两种情况:上溢,下溢一般DSP芯片中可设置溢出保护功能32766(0111111111111110b)+3=?舍入与截尾舍入:将该数加0.5,之后再将小数部分去除截尾:直接将小数部分去除§2高级语言:从浮点到定点为了DSP程序调试的方便及模拟定点DSP实现时的算法性能,在编写DSP汇编程序之前一般需将高级语言浮点算法改写为高级语言定点算法inti;floatpi=3.14159;floathamwindow[256];for(i=0;i<256;i++)hamwindow[i]=0.54-0.46*cos(2.0*pi*i/255);高级语言:从浮点到定点取整操作:i=int(f1);i=int(f1+0.5);先放后缩:f1=(y1+y2)*x;f1=f1/x;加法/减法运算的C语言定点模拟floatx,y,z;z=x+y;两个操作数的定标值一样如果加法/减法的结果超出16位的表示范围,则必须保留32位结果,以保证运算的精度z=x+y==定点加法intx,y,z;longtemp;/*临时变量*/temp=y<<(Qx-Qy);temp=x+temp;z=(int)(temp>>(Qx-Qz)),若Qx≥Qzz=(int)(temp<<(Qz-Qx)),若QxQ≤z设x=0.5,y=3.1,则浮点运算结果为z=x+y=0.5+3.1=3.6;Qx=15,Qy=13,Qz=13,则定点加法为:x=16384;y=25395;temp=25395<<2=101580;temp=x+temp=16384+101580=117964;z=(int)(117964L>>2)=29491;验算:z=29491/8192=3.6定点减法设x=3.0,y=3.1,则浮点运算结果为z=x-y=3.0-3.1=-0.1;Qx=13,Qy=13,Qz=15,则定点减法为:x=24576;y=25395;temp=25395;temp=x-temp=24576-25395=-819;因为QxQy,加法结果z的定标值为Qz,则定点加法为:intx,y;longtemp,z;temp=y<<(Qx-Qy);temp=x+temp;z=temp>>(Qx-Qz),若Qx≥Qzz=temp<<(Qz-Qx),若Qx≤Qz例子:设x=15000,y=20000,则浮点运算结果为z=x+y=15000+20000=35000,显然z>32767;Qx=1,Qy=0,Qz=0,则定点加法为:x=30000;y=20000;temp=20000<<1=40000;temp=temp+x=40000+30000=70000;z=70000L>>1=35000;结果超过16位的定点加法乘法运算的C语言定点模拟floatx,y,z;z=xy;intx,y,z;longtemp;temp=(long)x;z=(temp×y)>>(Qx+Qy-Qz);z=xy==定点乘法设x=18.4,y=36.8,则浮点运算值为z=18.4×36.8=677.12;Qx=10,Qy=9,Qz=5,所以x=18841;y=18841;temp=18841L;z=(18841L*18841)>>(10+9-5)=354983281L>>14=21666;因为z的定标值为5,故定点z=21666即为浮点的z=21666/32=677.08除法运算的C语言定点模拟floatx,y,z;z=x/y;intx,y,z;longtemp;temp=(long)x;z=(temp<<(Qz-Qx+Qy))/y;z=x/y=定点除法设x=18.4,y=36.8,浮点运算值为z=x/y=18.4/36.8=0.5;Qx=10,Qy=9,Qz=15;所以有x=18841,y=18841;temp=(long)18841;z=(18841L<<(15-10+9))/18841=308690944L/18841=16384;因为商z的定标值为15,所以定点z=16384即为浮点z=16384/215=0.5程序变量的Q值确定程序中参与运算的都是变量,那么如何确定浮点程序中变量的Q值呢?确定变量的Q值实际上就是确定变量的动态范围某变量的值在-1至+1之间,即<1,因此n=0,Q=15-n=15确定变量的绝对值的最大值理论分析法:三角函数、汉明窗、FIR卷积……统计分析法(依据足够多的采样值)§3DSP定点算术运算通常的是全部以Q15格式表示的小数或以Q0格式表示的整数来工作定点乘法定点加法定点除法定点乘法小数乘小数Q15×Q15=Q300.5*0.5=0.250.100000000000000;Q15×0.100000000000000;Q1500.010000000000000000000000000000=0.25;Q30LTOP1;OP1=4000H(0.5/Q15)MPYOP2;OP2=4000H(0.5/Q15)PACSACHANS,1;ANS=2000H(0.25/Q15)定点乘法(续)整数乘整数Q0×Q0=Q017×(-5)=-850000000000010001=17×1111111111111011=-511111111111111111111111110101011=-85定点乘法(续)混合表示法1.5×0.75=1.12501.10000000000000=1.5;Q14×00.11000000000000=0.75;Q140001.0010000000000000000000000000=1.125;Q28定点加法乘的过程中可不考虑溢出而只需调整运算中的小数点加法运算必须用相同的Q点表示或者允许其结果有足够的高位以适应位的增长,或者必须准备解决溢出问题保留32位结果调整小数点保留16位结果LACOP1ADDOP2SACHANSHISACLANSLOXXXXXXXXXXXXXX00XXXXXXXXXXXXXX00XXXXXXXXXXXXXX10XXXXXXXXXXXXXX10定点加法无溢出有溢出被加数加数被加数加数定点加法XXXXXXXXXXXXXX10XXXXXXXXXXXXXX00XXXXXXXXXXXXXX00XXXXXXXXXXXXXX10可能溢出可能溢出被加数加数被加数加数定点除法在通用DSP芯片中,一般不提供单周期的除法指令,为此必须采用除法子程序来实现二进制除法是乘法的逆运算。乘法包括一系列的移位和加法,而除法可分解为一系列的减法和移位。定点除法00001010-0001100011110010例如:10÷3=3余1000010100000001100001010+1110100011110010得数为负,舍去第一次运算除数的最低有效位对齐被除数的最高有效位定点除法00010100-000110001111110000010100+1110100011111100被除数左移一次得数为负,舍去第二次运算定点除法00101000+1110100000010000被除数左移一次得数为正,左移加一00101000-000110000001000000100001第三次运算定点除法00100001-0001100000001001余数商00100001+111010000000100100010011得数为正左移加一第四次运算定点除法00001010-000110001111001000010100-000110001111110000101000-000110000001000000100001-0001100000001001舍去舍去左移加一左移加一00010011余数商§4非线性运算的定点快速实现非线性运算:对数、开方、指数、三角函数等调用DSP编译系统的库函数,#include查表法在实时DSP应用中实现非线性运算,一般都采取适当降低运算精度来提高程序的运算速度。查表法是快速实现非线性运算最常用的方法。混合法查表+少量运算提高查表法的精度扩大自变量范围扩大查表法的范围第4章DSP芯片的浮点运算浮点数的格式指数和尾数的形式x=m×2eIEEE的4种浮点格式,单精度浮点数格式,x=(-1)s2e-127(1.f)TMS320单精度浮点数格式,x={(-2)s+(.f)}2e短浮点格式:4位指数,1位符号,11位分数(16位)单精度浮点格式:8位指数,1位符号,23位分数(32位)扩展精度格式:8位指数,1位符号,31位分数(40位)fes30-2322-0fse31-2422-0IEEE单精度浮点数格式TMS320浮点数格式短浮点格式:4位指数,1位符号,11位分数(16位)fse0101112150111011111111111TMS320浮点数格式短浮点格式:4位指数,1位符号,11位分数(16位)fse0101112151001000000000000TMS320浮点数格式短浮点格式:4位指数,1位符号,11位分数(16位)fse0101112151001111111111111TMS320浮点数格式短浮点格式:4位指数,1位符号,11位分数(16位)fse0101112150111100000000000TMS320浮点数格式短浮点格式:4位指数,1位符号,11位分数(16位)fse0101112151000000000000000TMS320浮点数格式单精度浮点格式:8位指数,1位符号,23位分数(32位)fse02223243101111111011111111111111111111111TMS320浮点数格式单精度浮点格式:8位指数,1位符号,23位分数(32位)fse02223243110000001000000000000000000000000TMS320浮点数格式单精度浮点格式:8位指数,1位符号,23位分数(32位)fse02223243110000001111111111111111111111111TMS320浮点数格式单精度浮点格式:8位指数,1位符号,23位分数(32位)fse02223243101111111100000000000000000000000TMS320浮点数格式单精度浮点格式:8位指数,1位符号,23位分数(32位)fse02223243110000000000000000000000000000000TMS320浮点数格式扩展精度格式:8位指数,1位符号,31位分数(40位)fse030313239浮点数的表示与格式转换表示范围3.4028234×1038~-3.4028236×10380的特殊表示IEEE浮点格式与TMS320浮点格式的转换硬件方法软件方法基本的浮点运算浮点乘法和加减法芯片提供单周期指令相乘:尾数相乘、指数相加,归一化处理加减法反而更复杂:涉及对其中一操作数归正浮点的除法子程序实现对被除数利用迭代法取倒数与除数进行相乘e[i]=e[i-1]×(2.0-ye[i-1]),e[0]=1.0×2-e-1迭代次数越多,精度越高2、运算方法浮点加减法2、运算方法浮点乘法尾数相乘:m1×m2指数相加:e1+e2乘积处理:2、运算方法浮点除法除法指令:直接应用无除法指令:若求z=x/y,先用迭代法求1/y,再乘x迭代公式可选用:e[i]=e[i-1]×(2.0-y×e[i-1])需选初始估值!非线性浮点运算的实现对数、指数、三角函数等丰富的库函数,C语言程序可直接调用汇编语言必须遵循调用规约快速实现的方法,查表法浮点和定点运算的比较浮点精度较高,动态范围更大定点运算效率高
本文档为【DSP天津大学课件\dsp\数字信号处理器(DSP)及其应用(1-4)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_060107
暂无简介~
格式:ppt
大小:4MB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2018-09-06
浏览量:23