TMS320C54x的硬件结构.ppt_第1页
TMS320C54x的硬件结构.ppt_第2页
TMS320C54x的硬件结构.ppt_第3页
TMS320C54x的硬件结构.ppt_第4页
TMS320C54x的硬件结构.ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

第二章:TMS320C54x的硬件结构2.1TMS320C54x硬件结构框图2.2总线结构2.3中央处理单元(CPU)2.4存储器和I/O空间2.5中断系统,2.1TMS320C54x硬件结构框图1.TMS320C54x内部结构(3大块)(1)CPU:包括算术逻辑运算单元(ALU)、乘法器、累加器、移位寄存器、各种专门用途的寄存器、地址生成器及内部总线。(2)存储器系统:包括片内程序ROM、片内单访问的数据RAM和双访问的数据RAM、外接存储器接口。(3)片内外设与专用硬件电路:包括片内定时器、各种类型的串口、主机接口、片内锁相环(PLL)、时钟发生器及各种控制电路。,2.TMS320C54x主要特性C54x是一款低功耗、高性能的定点DSP芯片(1)CPU部分先进的多总线结构(1条程序总线、3条数据总线和4条地址总线)。40位算术逻辑运算单元(ALU),包括1个40位桶形移位寄存器和2个独立的40位累加器。17位并行乘法器,与40位专用加法器相连,用于非流水线式单周期乘法/累加(MAC)运算。,(1)CPU部分(续)比较、选择、存储单元(CSSU):用于加法/比较选择。指数编码器:可以在单个周期内计算40位累加器中数值的指数。双地址生成器:包括8个辅助寄存器和2个辅助寄存器算术运算单元(ARAU)。,(2)存储器系统192K字可寻址存储空间:64K字程序存储空间、64K字数据存储空间及64K字I/O空间,对于C548、C549、C5402、C5410和C5416等可将其程序空间扩展至8M。片内双寻址RAM(DARAM)。C54x中的DARAM被分成若干块。在每个机器周期内,CPU可以对同一个DARAM块寻址(访问)2次,即CPU可以在一个机器周期内对同一个DARAM块读出1次和写入1次。DARAM可以映射到程序空间和数据空间。但一般情况下,DARAM总是映射到数据空间,用于存放数据。片内单寻址RAM(SARAM)。如C548、C5402、C5416等。,(3)片内外设软件可编程等待状态发生器。可编程分区转换逻辑电路。片内锁相环(PLL)和时钟发生器。可编程串行接口(4种)可编程定时器16位(12个)8位或16位主机接口(HPI)。多种节电模式:软件控制片外总线、CLKOUT、器件电压等。,(4)指令系统单指令重复和块指令重复操作。用于程序和数据管理的块存储器传送指令。32位长操作数指令。同时读入2或3个操作数的指令。可以并行存储和并行加载的算术指令。条件存储指令。从中断快速返回的指令。,2.2总线结构TMS320C54X总线结构是围绕8组16比特总线建立的。一组程序总线PB:传送从程序存储器来的指令代码和立即数;三组数据总线(CB、DB):传送从数据存储器读出的操作数;(EB):传送写入到数据存储器中的数据;四组地址总线(PAB、CAB、DAB、EAB):传送执行指令所需的地址;,2.3中央处理单元(CPU)C54X的CPU由运算部件、控制部件和各种寄存器组成。1.CPU状态和控制寄存器C54xDSP有三个状态和控制寄存器:(1)状态寄存器0(ST0);(2)状态寄存器1(ST1);(3)处理器工作模式状态寄存器(PMST)。ST0和ST1中包含各种工作条件和工作方式的状态,PMST中包含存储器的设置状态及其他控制信息。,(1)状态寄存器(ST0)功能:反映寻址要求和计算中的状态;ST0的结构图:,含义:ARP辅助寄存器指针TC测试/控制标志位C进位位。OVA/OVB累加器A/B的溢出标志位DP数据存储器页指针,(2)状态寄存器(ST1)功能:反映寻址要求、计算初始状态、I/O终端控制,含义:BRAF块重复操作标志位。CPL直接寻址编辑方式位XFXF引脚状态位。HM保持方式位INTM中断方式位。OVM溢出方式位SXM符号位扩展方式位。C16双16位/双精度算术运算方式位FRCT小数方式位。CMPT修正方式位ASM累加器移位方式位,(3)工作方式寄存器(PMSTProcessorModeStatus)功能:设定并控制处理器的工作方式,反映处理器工作状态;,含义:IPTR中断向量指针。微处理器/微型计算机工作方式位OVLYRAM重复占位位。AVIS地址可见位,2.运算部件(6个)(1)算术逻辑单元(ALU)功能:C54X使用40bit的ALU和2个40bit累加器(A、B)完成二进制补码的算术运算:ALU可完成布尔运算;同时完成两个16bit运算(具有两个16位的ALU)组成:ALU组成框图见下图,ALU组成框图,(2)累加器功能:存放参加运算的数据或存放运算的结果(ALU或MAC)组成:三个部分(保护位作用:数据位余量,防止溢出,迭代运算),累加器A和B的差别仅在于累加器A的3116位可以作为乘法器的一个输入。,(3)桶形移位器功能:能把输入的数据进行031bit左移和016bit右移移位数可以用以下方式定义:用一个立即数(-1615)表示。用状态寄存器ST1的累加器移位方式(ASM)位表示,共5位,移位数为-1615。用T寄存器中最低6位的数值(移位数为-1631)表示。用途:位提取、数字定标、扩展算术和溢出保护等,如:桶形移位器和指数译码器,可把A/B中的值在一个周期内进行归一化。,(4)乘/加单元组成:1717bit乘法器、40bit加法器、符号控制、小数控制、零检测器、舍入器、溢出/饱和逻辑、暂存器;功能:一个单指令周期内完成1717bit的二进制补码运算;用途:卷积、相关、滤波(LMS)、欧氏距离等运算;,(5)比较、选择和存储单元功能:从累加器(32bit)选择出较大的字(16bit)并存储在数据M;用途:在数据通信、模式识别等领域,经常要用到Viterbi(维特比)算法。C54xDSP的CPU的比较、选择和存储单元(CSSU)就是专门为Viterbi算法设计的进行加法/比较/选择(ACS)运算的硬件单元。,(6)指数编码器组成:完成EXP单周期指令的专用硬件;功能:将累加器中的指数值能以二进制补码的形式存储在T中;指数值含义:累加器中为消除非有效符号位所需移动的位数;计算:累加器的冗余位数-8;范围:813,超过32位,该操作产生负值;用途:累加器内容归一化;,3.特殊功能寄存器(P41)(1)第一类(26个)功能:主要用于程序的运算处理和寻址方式的选择及设定含义:辅助寄存器AR0-AR7:产生16bit数据空间,通用R;暂存器TREG:乘(加)法指令存放一乘数、EXP指令结果;过渡寄存器TRN(状态转移寄存器):用来得到新的度量值存放中间结果Viterbi(用于在Viterbi算法中记录转移路径);堆栈指针寄存器SP:指示栈顶在数据M位置,向下生长;,缓冲区大小寄存器BK:在循环寻址中确定缓冲区中数据的大小;块循环寄存器BRC:确定一代码循环的次数;块循环起始地址RSA:循环的开始地址;块循环结束地址REA:循环的结束地址;中断标志寄存器IFR:指明各中断源的状态;中断屏蔽寄存器IMR:独立的屏蔽特定的中断;其它:累加器A、B,方式控制R:PMST,状态R:ST0/ST1等。,(2)第二类(17个)功能:用于控制片内外设(串口、定时器、机器周期设定等)串口控制:,缓冲串口,ABU收发地址:,定时器:,其它:,小结(CPU):DSP的内部控制逻辑完成各种具体流水线指令操作,它对于使用者是保密的。使用DSP实质上就是掌握上述特殊功能寄存器的功能及用法。对SFR功能的了解程度,直接关系到所设计程序的质量(运行速度、运算精度、代码效率、可靠性等)学习DSP硬件结构,很大程度上是掌握SFR的正确使用。本章首先掌握ST0;ST1;PMST,2.4存储器和I/O空间C54x的总存储空间为192K字存储器的组成(分为3个可选择的存储空间):,C54x片内有随机存储器(RAM)和只读存储器(ROM)。RAM有两种类型:单寻址RAM(SARAM)和双寻址RAM(DARAM)。C54x片内有26个映像到数据存储空间的CPU寄存器和外围电路寄存器。C54结构上的并行性及在片RAM的双寻址能力,使它能够在任何一个给定的机器周期内同时执行4次存储器操作,即1次取指、读2个操作数和写1个操作数。,1.存储空间的分配在C54x中,片内存储器的形式有DARAM、SARAM和ROM3种,取决于芯片的型号。RAM总是安排到数据存储空间,但也可以构成程序存储空间,ROM一般构成程序存储空间,也可以部分地安排到数据存储空间。C54x通过PMST的3个状态位(MP/MC、OVLY、DROM),可以很方便地“使能”和“禁止”程序和数据空间中的片内存储器。以C5402为例给出了数据和程序存储区图,并说明了与MP/、OVLY及DROM3个状态位的关系。,说明:(1)DSP的工作方式控制寄存器中的OVLY(D5)位控制00003FFFH存储空间的片内/片外分配;(2)DSP的工作方式控制寄存器中的MP/MC(D6)位控制4000FFFFH存储空间的片内/片外分配;(3)TMS320C5402的23条程序地址线可扩展外部程序储存器到1M字。共16页,每页64k字。,2.程序存储器多数C54xDSP的外部程序存储器可寻址64K字的存储空间。它们的片内ROM、双寻址DARAM以及单寻址SARAM,都可以通过软件映像到程序空间。当存储单元映像到程序空间时,处理器就能自动地对它们所处的地址范围寻址。如果程序地址生成器(PAGEN)发出的地址处在片内存储器地址范围以外,处理器就能自动地对外部寻址。,(1)程序存储器-片内程序存储器片内存储器是否作为程序存储器,取决于软件对PMST的状态位MP/MC和OVLY的编程。表27。TMS320C54X片内ROM容量范围2K48K字;为了增强处理器的性能,对片内ROM再细分为若干块,这样就可以在片内ROM的一个块内取指的同时,又在别的块中读取数据。图2.14。,片内高2K字ROM中的内容是由TI公司定义的,这2K字程序空间(F800hFFFFh)中包含的内容。如图2.15。自举加载程序。从串行口、外部存储器、I/接口自举加载。256字A律压扩表。256字律压扩表。256字正弦函数值查找表。中断向量表。自举加载程序,可以将用户代码调入到程序存储器的任何一个位置。MP/MC硬件复位时=0,CPU从FF80H单元(通常存放转移指令自举加载程序)开始执行。,(2)程序存储器-片外程序存储器最多可扩展到1M,分为015页,23位地址线代替16位的地址线(C5402为20位的地址总线,C5420为18位),扩展程序存储器的页号由XPC寄存器设定。为了通过软件切换程序存储器的页面,有6条专用的影响XPC值的指令。,3.数据存储器(1)片内数据存储器C54X片内数据存储器容量范围10K200K字节组成:片上ROM、DARAM、SARAM(表28)空间分配:,为了提高处理器的性能,片内RAM也细分为若干块。分块以后,用户可以在同一周期内从同一DARAM中取出两个操作数,将数据写入另一块DARAM中。图2.18,(2)片外数据存储器TMS320C54X片外数据存储器容量范围最大为48K根据CPU产生的地址自动寻址,4I/O空间C54X器件除了程序和数据存储空间外,还提供了64K字的I/O空间,位于器件外部:有两条指令用来访问此空间(输入指令PORTR和输出指令PORTW)对I/O空间寻址;访问I/O空间是对I/O映射的外部器件进行访问,而不是访问存储器;所有C54xDSP只有两个通用I/O,即和XF。为了访问更多的通用I/O,可以对主机通信并行接口和同步串行接口进行配置,以用作通用I/O。,2.5中断系统2.5.1中断系统概述中断:CPU终止正在执行的程序,转去执行一个请求中断的内部或外部的中断服务程序,待处理完毕后,又返回到被终止的源程序处继续执行。这一过程称为中断;中断系统:为实现中断功能而设置的各种硬件和软件。C54xDSP既支持软件中断,也支持硬件中断。当同时有多个硬件中断出现时,C54xDSP按照中断优先级别的高低对它们进行服务。,1.中断分类C54xDSP的中断可以分成两大类:第一类是可屏蔽中断。这些都是可以用软件来屏蔽或开放的硬件和软件中断。C5402只使用14个可屏蔽中断。;RINT0、XINT0、RINT1和XINT2(串行口中断)。TINT0、TINT1(定时器中断)。HPINT(主机接口)DMAC0DMAC5。(2)第二类是非屏蔽中断。这些中断是不能够屏蔽的,C54x对这一类中断总是响应,并从主程序转移到中断服务程序。C54xDSP的非屏蔽中断包括所有的软件中断,以及两个外部硬件中断:(复位)和。,非屏蔽中断:不能由用户用软件来屏蔽的中断。特点:一旦有非屏蔽中断请求,CPU必须予以响应。用途:用于某些十分重要的事件发生,如:掉电;可屏蔽中断:用户根据需要可用软件开放或禁止CPU响应中断。特点:软件指令控制,灵活方便。用途:一般事件处理。,2.中断处理一般过程:中断源请求中断;中断标志寄存器(IFR)CPU响应中断;预定义条件的满足保护现场;转中断服务;恢复现场;中断返回;,2.5.2中断标志寄存器(IFR)和中断屏蔽寄存器(IMR)1.中断标志寄存器(IFR)当一个中断出现的时候,IFR中相应的中断标志位置1,直到中断得到处理为止。,(1)共14个有效标志位(可屏蔽中断):外部中断4个(INT0-INT3)定时器中断2个(TINT0-TINT1)串口定时器4个(两发/两收)DMA中断3个(DMAC0.4.5)HPI中断1个;,(2)IFR的操作置位:当硬件或软件中断发生时,相应位置“1”(挂起)。识别:CPU通过读IFR来识别挂起的中断。清除:,四种方法:,(3)串口中断:应在中服程序中清除IFR相应位,以免串口的重复中断(每接收/发送一个字符,产生一次),2.中断屏蔽寄存器(IMR)是一个存储器映像的CPU寄存器,主要用来屏蔽外部和内部中断,说明(1)共14个有效位(与IFR对应)(2)当IMRi=0屏蔽该中断;IMRi=1不屏蔽该中断,(3)IMR的操作,3.中断方式控制位(INTM)说明:a)INTM是CPU状态寄存器ST1中的1位(第11位),b)功能:,c)操作:,d)该控制位不影响不可屏蔽中断RS,NMI。e)该控制位不能用存储操作命令设置。,2.5.3接收、应答及处理中断1.接收中断请求产生一个中断请求时,IFR中相应的中断标志位被置位。不管中断是否被处理器应答,该标志位都会被置位。当相应的中断响应后,该标志位自动被清除。一个中断由硬件器件或软件指令请求。(中断源说明如表2-10所示。)(1)硬件中断请求硬件中断有外部和内部两种。,(2)软件中断请求软件中断都是由程序中的指令INTR、TRAP和RESET产生的。,注:PC=中断向量地址指针+中断向量号该指令允许执行任何可屏蔽中断该指令不影响IFR标志位不允许中断嵌套,a)INTRK;,b)TRAPK;除INTM不变外,其它同上。注:可实现中断嵌套可用软件指令在TRAP中服中置位INTMc)RESET注:功能:使处理器返回一个预定状态;复位指令:可在程序的任何时候产生;该指令影响ST0,ST1,不影响PMST,2.应答中断硬件或软件中断发送了一个中断请求后,CPU必须决定是否应答中断请求。软件中断和非屏蔽硬件中断会立刻被应答;屏蔽中断仅仅在如下条件被满足后才被应答。(1)优先级别最高(当同时出现一个以上中断时)。(2)状态寄存器ST1中的INTM位为0。(3)中断屏蔽寄存器IMR中的相应位为1。CPU响应中断时,让PC转到适当的地址取出中断向量,并发出中断响应信号,清除相应的中断标志位。,3.执行中断服务程序(ISR)(1)将PC值(

温馨提示

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

最新文档

评论

0/150

提交评论