《DSP内部结构》PPT课件_第1页
《DSP内部结构》PPT课件_第2页
《DSP内部结构》PPT课件_第3页
《DSP内部结构》PPT课件_第4页
《DSP内部结构》PPT课件_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,天津职业技术师范大学电子工程学院,DSP技术,DigitalSignalProcessor数字信号处理器,于万霞,第二章DSP硬件结构,3,在上一章中。,4,TMS320C54XX硬件结构特点TMS320C55XX硬件结构特点,在这一章中,我们介绍:,5,TMS320系列产品命名,TMS320C5402TGDK()100采用的技术器件代号版本封装温度范围速度C=CMOSE=CMOSEPROMF=CMOSFlashEEPROMLC=低电压CMOS(3.3V)LF=低电压FlashEEPROMVC=低电压CMOS(3.3V)/2.5V核UC=低电压CMOS(3.3V)/1.8V核,2-1C54xDSP硬件结构,7,8,DSP模型,DSP=CPU+总线+存储器+片上外设,9,多总线结构,三组16-bit数据总线和一组程序总线40-bit算术逻辑单元(ALU),包括一个40-bit的桶形移位器和两个独立的40-bit累加器17x17-bit并行乘法器,连接一个40-bit的专用加法器。可用来进行非流水单周期乘/加(MAC)运算,一、C54X的结构特点,10,比较、选择和存储单元(CSSU)用于Viterbi运算器的加/比较选择指数编码器在一个周期里计算一个40-bit累加器值的指数值两个地址发生器中有八个辅助寄存器和两个辅助寄存器算术单元(ARAUS)数据总线具有总线保持特性,11,C54X可访问的存储器空间最大可为192Kx16-bit(64K程序存储器,64K数据存储器和64KI/O存储器)C548,549,5402,5410等具有扩展寻址方式,最大可寻址扩展程序空间为8Mx16-bit支持单指令循环和块循环,存储块移动指令提供了更好的程序和数据管理支持32-bit长操作数指令,支持两个或三个操作数读指令,12,连接内部振荡器或外部时钟源的锁相环(PLL)发生器支持8-或16-bit传送的全双工串口时分多路(TDM)串口缓冲串口(BSP)McBSPs串口8/16-bit并行主机接口(HPI)16-bit定时器,13,软件可编程等待状态发生器和可编程的存储单元转换片内基于扫描的仿真逻辑,JTAG边界扫描逻辑(IEEE1149.1)单周期定点指令执行时间10-25ns,14,TMS320C54x/C54xx主要配置,15,TMS320C54x/C54xx主要配置,二、C54X的内部总线结构,程序总线(PB)数据总线(CB、DB和EB)地址总线(PAB、CAB、DAB和EAB),程序总线(PB)传送从程序存储器来的指令代码和立即数。三组数据总线(CB,DB和EB)。CB和DB总线传送从数据存储器读出的操作数。EB总线传送写入到存储器中的数据。四组地址总线(PAB,CAB,DAB和EAB)传送执行指令所需要的地址。,19,40位算术逻辑运算单元(ALU)2个40位累加器A和B移位-1631位的桶形移位寄存器乘法器/加法器单元比较和选择及存储单元(CSSU)指数编码器CPU状态和控制寄存器,包括,三、C54x芯片的CPU结构,20,21,TMS320C54x内部硬件框图,22,作用结构与位置和的异同,要点,1.累加器A和B,23,24,累加器作用:存放从ALU或乘法器/加法器单元输出的数据,累加器也能输出到ALU或乘法器/加法器中。,累加器A和B的唯一区别是AH可以用作乘法器的一个输入,使用MPYA指令。,可以使用STH、STL、STLM、SACCD等指令将累加器的值存放到数据存储器中。,25,累加器A,累加器B,26,【例】累加器A=FF01234567H,执行带移位的STH和STL指令后,求暂存器T和A的内容。,STHA,8,T;A的内容左移8位,AH存入T,01,23,45,67,00,2345,T=2345H,A=FF01234567H,STHA,-8,T;A的内容右移8位,AH存入T,45,23,01,FF,FF,FF01,T=FF01H,A=FF01234567H,STLA,8,T;A的内容左移8位,AL存入T,01,23,45,67,00,6700,T=6700H,A=FF01234567H,STLA,-8,T;A的内容右移8位,AL存入T,45,23,01,FF,FF,2345,T=2345H,A=FF01234567H,27,ALU如何获取数据ALU输出送往何方溢出怎么办进位位的作用什么是双16位算术运算,要点,2.算术逻辑运算单元(ALU),28,29,TMS320C54x使用40位算术逻辑单元(ALU)和两个40位累加器(ACCA和ACCB)来完成算术运算和逻辑运算,且大多数都是单周期指令。ALU可使用以下输入:16-bit的立即数从数据存储器读出的16-bit字暂存器T中的16-bit值从数据存储器读出的两个16-bit字从数据存储器读出的一个32-bit字从其中一个累加器输出的40-bit值,30,溢出处理:ALU的饱和逻辑能够保证运算结果不产生溢出,方法是根据溢出方向,将结果设置成最大的正数和最小的负数。如果OVM=0,运算结果直接装入目的累加器,不作任何修改。如果OVM=1,目的累加器载入0 x007fffffff或0 xff80000000如果发生溢出,会设置相应的溢出标志OVA/OVB。,31,进位位的作用:进行算术运算时,累加器的第31位向第32位有进位或借位时,反映在C。加法有进位,减法无借位时为1。,在状态寄存器ST1中的C16位置1时,ALU能起两个16-bitALUs的作用,可同时完成两个16-bit运算,32,3桶形移位器的功能,桶形移位器能把输入的数据进行0到31bits的左移和0到16bits的右移。所移的位数由ST1中的移位数域(ASM)或被指定作为移位数寄存器的暂存器(TREG)或由指令决定。,34,结构功能什么是舍入处理数据流向小数和整数乘法区别,要点,4乘法器/加法器,35,17X17乘法,40位加法,乘法器/加法器与一个40-bit的累加器在一个单指令周期里完成17x17-bit的二进制补码运算。乘法器/加法器单元由以下部分组成:乘法器,加法器,带符号/无符号输入控制,小数控制,零检测器,舍入器(二进制补码),溢出/饱和逻辑和暂存器(TREG)。,37,小数相乘方式时,FRCT=1可以使输出自动左移一位,消去多余的符号位。舍入操作:小数乘法在精度允许的情况下,只保留高16位结果。操作:+215,低16位清零。,38,结构功能,5比较、选择和存储单元(CSSU),40,CSSU支专门为通信及模式识别领域经常使用的Viterbi运算中加、比较、选择提供的硬件支持。CSSU完成累加器的高位字和低位字之间的最大值比较,即选择累加器中较大的字并存储在数据存储器中,同时改变状态寄存器ST0中的测试/控制位(TC)和转移寄存器(TRN)的值。,41,6指数编码器,要点,结构功能如何计算指数,42,用于实现定点数到浮点数的转换,把一个定点数分为指数和尾数部分。指数编码器用于支持单周期指令EXP的专用硬件。在EXP指令中,累加器中数的指数值能以二进制补码的形式存储在T寄存器中,范围为-8至31。,43,3个状态寄存器功能位置各bit的作用,要点,6,7,1D,O页存储器,7CPU状态和控制寄存器,44,状态寄存器ST0状态寄存器ST1处理器工作方式寄存器PMST,包括了存储器配置状态和控制信息,45,1状态寄存器0(ST0),主要反映处理器的寻址要求和计算机的运行状态。,ST0的结构:,ARP,ARP:辅助寄存器指针。用来选择使用单操作数间接寻址时的辅助寄存器AR0AR7。,TC,TC:测试/控制标志。用来保存ALU测试操作的结果。,C,C:进位标志位。用来保存ALU加减运算时所产生的进/借位。,OVA/B:累加器A/B的溢出标志。用来反映A/B是否产生溢出。,DP,DP:数据存储器页指针。用来与指令中提供的7位地址结合形成1个16位数据存储器的地址。,46,2状态寄存器1(ST1),BRAF:块重复操作标志位。用来指示当前是否在执行块重复操作。BRAF=0表示当前不进行重复块操作;BRAF=1表示当前正在进行块重复操作。,CPL:直接寻址编辑方式标志位;用来指示直接寻址选用何种指针。CPL=0选用数据页指针DP的直接寻址;CPL=1选用堆栈指针SP的直接寻址。,XF:外部XF引脚状态控制位。用来控制XF通用外部输出引脚的状态。执行SSBXXF=1XF通用输出引脚为1;执行RSBXXF=0XF通用输出引脚为0。,HM:保持方式位;响应HOLD信号时,指示CPU是否继续执行内部操作。HM=0CPU从内部程序存储器取指,继续执行内部操作。HM=1CPU停止内部操作。,INTM:中断方式控制位;用于屏蔽或开放所有可屏蔽中断。INTN=0开放全部可屏蔽中断;INTN=1禁止所有可屏蔽中断。,0:保留位,未被使用,总是读为0。,OVM:溢出方式控制位;用来确定累加器溢出时,对累加器的加载方式。OVM=0将运算的溢出结果直接加载到累加器中;OVM=1当正溢出时,将007FFFFFFFH加载累加器;当负溢出时,将FF80000000H加载累加器。,SXM:符号位扩展方式控制位;用来确定数据在运算之前是否需要符号位扩展。SXM=0数据进入ALU之前禁止符号位扩展;SXM=1数据进入ALU之前进行符号位扩展。,C16:双16位/双精度算术运算方式控制位;用来决定ALU的算术运算方式。C16=0ALU工作在双精度算术运算方式;C16=1ALU工作在双16位算术运算方式。,FRCT:小数方式控制位;用来确定乘法器的运算方式。FRCT=1乘法器的输出左移一位,消除多余的符号位。,CMPT:间接寻址辅助寄存器修正方式控制位;用来决定ARP是否进行修正。CMPT=0在进行间接寻址单操作数时,不修正ARP;CMPT=1在进行间接寻址单操作数时,修正ARP。,ASM:累加器移位方式控制位。为某些具有移位操作的指令设定一个从-1615范围内的移位值。,主要反映处理器的寻址要求、计算初始状态的设置、I/O及中断的控制等。,47,可以使用LD指令修改DP和ASM。例如:,ST0、ST1包括了各种条件和方式的状态,是存储器映射寄存器(使用数据0页数据存储器来当作寄存器用,不专门设计寄存器,可简化设计、增加数据存储器的使用灵活性),因此可以使用数据存储器读写指令,保存、修改它们。对ST0、ST1中单独的一位,可以使用RSBX和SSBX指令修改。例如:,48,3工作方式状态寄存器PMST,主要设定和控制处理器的工作方式和存储器的配置,反映处理器的工作状态。,中断向量指针,CPU工作方式选择位,RAM重复占位标志,地址可见控制位,数据ROM映射选择位,时钟输出选择位,乘法饱和方式位,存储饱和位,49,PMST(处理器工作方式控制及状态寄存器),四、TMS320C54x的存储分配,51,所有C54x芯片都含有片内RAM和ROM。,片内RAM,SARAM,DARAM,单寻址RAM,双寻址RAM,DARAM:由存储器内的一些分块组成。每个DARAM块在单周期内能被访问2次。,SARAM:由存储器分块组成。每个SARAM块在单周期内只能被访问1次。,DARAM和SARAM既可以被映射到数据存储空间用来存储数据,也可以映射到程序空间用来存储程序代码。,片内ROM:主要存放固化程序和系数表。一般构成程序存储空间,也可以部分地映射在数据存储空间。,1C54x的存储空间结构,52,片内存储器的优点:,不需要插入等待状态;与外部存储器相比,成本低;比外部存储器功耗小。,53,第2章TMS320C54x的内部结构,TMS320VC5402存储器配置结构,54,C54x的片内存储器包括DARAM、SARAM和ROM三种。不同芯片的片内存储器配置有所不同。PMST中的MP/MC、DROM和OVLY影响到片内存储器的配置情况。1)MP/MC=0,片内ROM映射到程序存储器空间。MP/MC=1,片内ROM不映射到程序存储器空间。2)OVLY=1,片内RAM同时映射到程序和数据存储器空间。OVLY=0,片内RAM只映射到数据存储器空间。3)DROM=1,部分片内ROM被映射到数据存储器空间。DROM=0,片内ROM都被映射到程序存储器空间。,55,程序执行前数据和程序存储器的值,程序执行后数据和程序存储器的值,执行一段向数据存储单元2000H开始的地址写数据的程序,OVLY=1,56,程序执行前数据和程序存储器的值,程序执行后数据和程序存储器的值,OVLY=0,57,TMS320VC5416存储器空间分配图,58,2程序存储空间的分页扩展,在C54x系列芯片中,有些芯片采用分页扩展的方法,使程序存储空间可扩展到1M8M。,如:C5409和C5416可扩展到8M。C5402有20条外部程序地址总线,其程序空间只能扩展到1M。,59,2程序存储空间的分页扩展,分页扩展技术的特点:有20或23条外部程序地址线,可寻址1M或8M存储空间;有1个额外的存储器映像寄存器程序计数器扩展寄存器XPC;有6条寻址扩展程序空间的指令,用于寻址扩展程序空间。,60,2程序存储空间的分页扩展,当OVLY=0时,内部RAM不允许映射到程序空间,程序空间分成128页,每页64K。,61,2程序存储空间的分页扩展,当OVLY=1时,片内RAM允许映射到程序空间,程序存储器的每一页都由两部分组成:32K字的公共块和32K字的专用块。,公共块可由所有页共享;专用块只能按指定的页号寻址。,当MP/MC=0时,片内ROM只能允许安排在第0页的程序空间,不能映射到其它页。,62,2程序存储空间的分页扩展,公共块:由所有页共享专用块:按指定的页号寻址,63,C54X扩展存储器访问,使用XPC寄存器保存页地址(A16以上)。XPC映射到数据存储器的001EH单元。硬件复位时,XPC被置0。64K页内的PC寄存器保存地址除非修改XPC,否则都是访问当前页利用FBD,FCALL等指令可以访问扩展存储器,如:FB012000H指令,64,C5402共有20条外部程序地址总线,可寻址程序存储空间为1M。整个程序存储空间分成16页,每页共计64K字。,TMS320VC5402扩展程序存储空间结构图,65,5416扩展程序存储器,66,3存储器映像寄存器,在C54x的数据存储空间中,前80H个单元(数据页0)包含有的CPU寄存器、片内外设寄存器和暂存器。这些寄存器全部映射到数据存储空间,称作存储器映像寄存器MMR。,存储器映像寄存器MMR:CPU寄存器特殊功能寄存器;片内外设寄存器;暂存器SPRAM。,67,特殊功能寄存器功能:主要用于程序的运算处理和寻址方式的选择和设定。地址范围:0000H001FH。,C5402的CPU寄存器共有27个,CPU访问这些寄存器时,不需要插入等待时间。,外设寄存器功能:用来控制片内外设电路的状态和存放数据。地址范围:0020H005FH。,包括串行口通信控制寄存器组、定时器定时控制寄存器组、时钟周期设定寄存器组等。,暂存器SPRAM功能:用来暂存变量。地址范围:0060H007FH。,68,第2章TMS320C54x的内部结构,特殊功能寄存器,69,片内外设寄存器存在于一个专用的外设总线结构中,它可以发送数据至外设总线或者从外设中接收数据。设置或清除寄存器的控制位可以激活、屏蔽或者重新配置外设状态。不同型号的芯片具有不同的片内外设寄存器。,70,4I/O空间,C54x除了程序和数据存储空间外,还提供了一个具有64K字的I/O空间。主要用于对片外设备的访问。可以使用输入指令PORTR和输出指令PORTW对I/O空间寻址。,在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOSTRB、IS和R/W控制线。,IOSTRB和IS:用于选通I/O空间;,R/W:用于控制访问方向。,71,五、装入程序代码-BOOTLOADER,BOOTLOADER是一段芯片出厂时固化在ROM中的程序代码,其主要功能是将用户的程序代码从外部装入到片内RAM或扩展的RAM中,以便高速运行。BOOTLOADER一般支持多种程序传递方式,如并行EPROM,串行EPROM,串口,HPI等等。不同型号的DSP,BOOTLOADER不同。,六TMS320VC5402引脚及说明,74,TMS320C5402引脚:,电源引脚时钟引脚控制引脚地址和数据引脚,串行口引脚主机接口引脚通用I/O引脚测试引脚,75,1.电源引脚,C5402采用双电源供电,其引脚有:CVDD(16、52、68、91、125、142),电压为+1.8V,为CPU内核提供的专用电源;DVDD(4、33、56、75、112、130),电压为+3.3V,为各I/O引脚提供的电源;VSS(3、14、34、40、50、57、70、76、93、106、111、128),接地。,76,2时钟引脚,CLKOUT:主时钟输出引脚,周期为CPU的机器周期。,CLKMD1、CLKMD2和CLKMD3:设定时钟工作模式引脚,用来硬件配置时钟模式。,X2/CLKIN:时钟振荡器引脚。若使用内部时钟,用来外接晶体电路;若使用外部时钟,该引脚接外部时钟输入。,X1:时钟振荡器引脚。若使用内部时钟,用来外接晶体电路;若使用外部时钟,该引脚悬空。,77,3控制引脚,用来产生和接收外部器件的各种控制信号,78,79,4地址和数据引脚C5402芯片共有20个地址引脚和16条数据引脚。地址引脚用来寻址外部程序空间、外部数据空间和片外I/O空间。A19A0:可寻址1M的外部程序空间64K外部数据空间64K片外I/O空间,80,4地址和数据引脚,数据引脚:用于在处理器、外部数据存储器、程序存储器和I/O器件之间进行16位数据并行传输。D15D0:组成16位外部数据总线。在下列情况下,D15D0将呈现高阻状态。,当没有输出时,81,5.串行口引脚C5402器件有两个McBSP串行口,共有12个外部引脚。,BCLKR0:缓冲串行口0同步接收时钟信号;BCLKR1:缓冲串行口1同步接收时钟信号;BCLKX0:缓冲串行口0同步发送时钟信号;BCLKX1:缓冲串行口1同步发送时钟信号;BDR0:缓冲串行口0的串行数据接收输入;BDR1:缓冲串行口1的串行数据接收输入;,82,BDX0:缓冲串行口0的串行数据发送输出;BDX1:缓冲串

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论