TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章

上传人:E**** 文档编号:89350515 上传时间:2019-05-23 格式:PPT 页数:61 大小:1.85MB
返回 下载 相关 举报
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章_第1页
第1页 / 共61页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章_第2页
第2页 / 共61页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章_第3页
第3页 / 共61页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章_第4页
第4页 / 共61页
TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章》由会员分享,可在线阅读,更多相关《TMS320C54X DSP原理及应用 第二版 教学课件 ppt 作者 乔瑞萍 第5-8章 第5章(61页珍藏版)》请在金锄头文库上搜索。

1、第5章 TMS320C54x的引脚功能、流水线 结构和外部总结结构,5.1 TMS320C54x的引脚和信号说明 5.2 流水线结构 5.3 外部总线结构,5.1 TMS320C54x的引脚和信号说明 TMS320C54x DSP基本上都采用超薄的塑料或陶瓷四 方扁平封装(TQFP),也有其他封装形式。图5-1所示是TMS320C541的引脚图。本节重点描述TMS320C541芯片的 引脚功能。,图5-1 TMS320C541的引脚图,1地址、数据总线及其控制信号 A15A0:16位地址总线,用于对片外数据、程序存储器及I/O进行寻址。 D15D0:16位数据总线,在CPU内核、片外数据、程序

2、存储器或I/O器件之间传送数据。,CNT:I/O电平选择引脚。当CNT为低电平时,为5 V工作状态,所有输入和输出电平均与TTL电平兼容;当CNT为高电平时,为3 V工作状态,I/O接口电平与CMOS电平兼容。,3多处理器信号 :控制分支转移的输入信号。 XF:外部标志输出端(软件可控信号),可用于指示DSP状态和同其他CPU握手。,4振荡器及定时信号 CLKOUT、TOUT:主时钟输出信号、定时器输出信号。 CLKMD1CLKMD3:3个外部/内部时钟工作方式输入信号,可以预置DSP的时钟比。 X2/CLKIN、X1:晶振到内部振荡器的输入引脚、内部振荡器到外部晶振的输出引脚。,6串口信号

3、CLKR0、CLKR1:接收时钟。 CLKX0、CLKX1:发送时钟。 DR0、DR1:串行口数据接收端。 DX0、DX1:串行口数据发送端。 FSR0、FSR1:用于接收输入的帧同步脉冲。 FSX0、FSX1:用于发送的帧同步脉冲。,7电源信号 CVDD、DVDD、VSS:CPU内核电源电压、I/O引脚的电源电压、器件地。 8IEEE 1149.1测试引脚 TCK:测试时钟。 TMS:测试方式选择端。 :测试复位信号。 TDI、TDO:测试数据输入/输出端。,EMU0、EMU1/ :仿真器中断0引脚、仿真器中断1引脚/关断所有的输出端。 以上各类信号中,凡是输出信号,如果设计系统时不用,引脚

4、可空着;凡是输入信号,如果不用,则会受外界干扰, 电平下拉,引起非可屏蔽中断,因此,要将信号通过电阻 (10 k)接+5V。,5.2 流 水 线 结 构 1流水线概述 指令流水线包括执行指令时发生的一系列总线操作。 TMS320C54x的流水线有6个独立的阶段:程序预取指、取指、指令译码、寻址、读和执行指令。图5-2说明了对于单字、单周期指令,在没有等待状态情况下6级流水线的操作。,图5-2 6级流水线的操作,这6级流水线的功能如下: 预取指(Prefetch):将所要取指令字的地址放在程序地址总线(PAB)上。 取指(Fetch):从程序总线(PB)上取指令字,并装入指令寄存器(IR)。 译

5、码(Decode):对IR中的内容进行译码,产生执行指令所需要的一系列控制信号。,寻址(Access):数据地址产生单元(DAGEN)在数据地址总线(DAB)上输出读操作数的地址。如果还需要第二个操作数,则在另一个数据地址总线(CAB)上也装入适当的地址,同时 更新间接寻址方式中的辅助寄存器和堆栈指针(SP)。 读(Read):从数据总线(DB)和控制总线(CB)上读操作数。 执行(Execute):向数据总线(EB)上写数据。,6条单字、单周期指令的流水线操作如图5-3所示。,图5-3 6条指令的流水线的操作,流水线在程序产生调用、跳转和中断时会产生清除,通过延迟操作可将浪费掉的周期利用起来

6、。延迟操作指令后面只有2个字的空隙,因此,不能在此空隙中安排任何一类分支转移指令或重复指令,在CALLD或RETD的空隙中也不能安排PUSH或POP指令。在调试延迟型指令时,直观性稍差一些,因此希望在大多数情况下还是采用非延迟型指令。,2双寻址存储器和流水线 下列情况下访问DARAM时不会带来时序上的冲突: 在单周期内允许同时访问DARAM的不同块。 当流水线中的一条指令访问某一存储器块时,允许流水线中处于同一级的另一条指令访问另一个存储器块。 允许处于流水线不同级上的两条指令同时访问同一个存储器块。,在单周期内允许CPU对DARAM访问两次,第一次访问是在前半周期,再次访问是在后半周期。访问

7、DARAM块的情况如表5-1所示。,由于两种类型的访问都要按时进行,而每半个周期仅能执行一次访问,因此有可能会发生时序上的冲突。例如,同时从同一存储器块中取指和取操作数(都在前半周期),或者同时对同一存储器块进行写操作和读(第二个数)操作(都在后半周期),都会造成时序上的冲突。CPU可以通过重新排列访问次序,或者将写操作延迟一个周期,又或者通过插入一个空周期的办法,自动地消除这些冲突。,3单寻址存储器和流水线 TMS320C54x片内有两种形式的单寻址存储器: 单寻址读/写存储器(SARAM)。 单寻址只读存储器(ROM或DROM)。 这两种单寻址存储器也是分块的,CPU可以在单个周期内对每个

8、存储器块访问一次。,4流水线延时 TMS320C54x流水线允许CPU多条指令同时访问CPU资源。由于CPU的资源是有限的,因此当一个CPU资源同时被一个以上流水线访问时,就会发生冲突。有些冲突可以由CPU通过延迟寻址的方法自动消除,但有些冲突是不能消除的,需要由程序重新安排指令顺序,或者插入NOP(空操作)指令加以解决。,对于下列存储器映像寄存器,如果在流水线中同时对它们 进行寻址,就有可能发生不能消除的冲突: 辅助寄存器(AR0AR7)。 重复块长度寄存器(BK)。 堆栈指针(SP)。 暂存器(T)。, 处理器工作方式状态寄存器(PMST)。 状态寄存器(ST0和ST1)。 块重复计数器(

9、BRC)。 存储器映像累加器(AG、AH、AL、BG、BH和BL)。 但是,如果插入合适的延时周期,某些指令也可以无冲 突地访问这些寄存器。详细内容可查阅TMS320C54x DSP Reference SetCPU and Peripherals一书。,5.3 外部总线结构 5.3.1 外部总线接口信号 TMS320C54x的内部总线有PB、CB、DB和EB及PAB、CAB、DAB和EAB各1条。片内总线采用流水线结构,可以允许CPU同时寻址这些总线。TMS320C54x DSP在片内可实现一个周期内6次操作。,TMS320C54x的外部总线由数据总线(D0D15)、地址 总线(A0A15)

10、和控制总线(11条)组成(参见5.1节)。其中,TMS320C548、TMS320C549具有23条地址总线。外部总线对外部存储器的访问最快只能达到每周期进行一次寻址。,单独的外部空间选择引脚 、 和 用于选择不同存储空间的外部存储器; 用于访问外部程序或数据存储器, 用于访问I/O设备;读/写信号(R/ )则控制数据传送的方向。,使用外部数据准备输入信号(READY)与片内软件可编程等待状态发生器,可以使处理器与各种速度的存储器以及I/O设备接口。当与慢速器件通信时,CPU处于等待状态,直到慢速器件完成了它的操作并发出READY信号后才继续运行。 外部总线接口的保持方式(HOLD和HOLDA

11、)允许外部设备占用TMS320C54x的外部总线,这样,外部设备就可以达到控制TMS320C54x外部资源的目的。,当CPU访问片内存储器时,外部数据总线置高阻状态,而地址总线以及存储器选择信号 、 和 均保持先前的状态。此外, 、 、R/ 、 以及 信号均保持在无效状态。 如果处理器工作方式状态寄存器(PMST)中的地址可见位(AVIS)置1,那么CPU执行指令时的内部程序存储器的地址就出现在外部地址总线上,同时 信号有效。,5.3.2 外部总线控制性能 1等待状态发生器 当希望TMS320C54x与外部慢速器件相互接口时,必须要有等待状态。在CPU读/写外部存储器或端口时,通过增加等待状态

12、,可以加长CPU等待响应的时间。具体地说,对每个 等待状态,CPU等待一个附加的周期(一个CLKOUT周期)。,TMS320C54x有以下两种可选择的等待状态: 软件可编程等待状态发生器。利用它能够产生07个等待状态。 READY信号。利用该信号能够由外部控制产生任何数量的等待状态。,1) 软件可编程等待状态发生器 软件可编程等待状态发生器最多能够将外部总线延迟7个周期,不需要附加任何外部硬件设备。 软件可编程等待状态发生器的工作受到软件等待状态寄存器(SWWSR)的控制,它是一个16位的存储器映像寄存器,在数据空间的地址为0028H。,将程序空间和数据空间分成两个32 K字块,I/O空间由

13、一个64 K字块组成。这5个字块空间在SWWSR中都相应地 有一个3位字段,用来定义各个空间插入等待状态的数目。SWWSR的结构如图5-4所示。,图5-4 SWWSR的结构,上述SWWSR的各3位字段规定的插入等待状态的最小数为0(不插入等待周期),最大数为7(111B)。 其中: Low Prog:定义对0000H7FFFH的程序空间进行访问时插入的等待状态数。 Hi Prog:定义对8000HFFFFH的程序空间进行访问时插入的等待状态数。,Low Data:定义对0000H7FFFH的数据空间进行访问时插入的等待状态数。 Hi Data:定义对8000HFFFFH的数据空间进行访问时插入

14、的等待状态数。 I/O:定义对0000HFFFFH的I/O空间进行访问时插入的等待状态数。,也就是说,通过软件为以上5个存储空间分别插入07个等待状态。 例如,利用指令: STM #2009H,SWWSR ;0 010 000 000 001 001 就可以为程序的高32 K字和低32 K字空间分别插入1个等待状态,为I/O空间插入2个等待状态。,复位时,SWWSR=7FFFH,所有的空间都被插入7个等待状态,这一点确保处理器初始化期间CPU能够与外部慢速器件正常通信;复位后,再根据实际情况,用STM指令进行修改。 当插入27个等待状态,且执行到最后一个等待状态时, 信号将变成低电平。利用这一

15、特点,可以再附加插入硬件等待状态。,2) 利用READY信号产生等待状态 TMS320C54x的系统多种多样,仅有软件等待状态是不够的。如果外部器件要求插入7个以上的等待周期,则可以利用硬件READY线来接口。READY信号由外部慢速设备驱动控制,对DSP来说是输入信号。,当READY信号为低电平时,表明外部设备尚未准备好,TMS320C54x将等待一个CLKOUT周期,并再次校验READY信号;在READY信号变为高电平之前,TMS320C54x将不能连续运行,一直处于等待状态。因此,如果不用READY信号,应在外部访问期间将其上拉到高电平。,硬件等待状态是在27个软件等待状态的基础上插入的,它是利用 和READY信号以及外部电路形成的。当只插入27个软件等待状态时,将 和READY引脚相连;当需要同时插入硬件和软件等待状态时, 和外部的READY信号通过一个“或”门加到TMS320C54x的READY输入端。,2分区转换逻辑 可编程分区转换逻辑允许TMS320C54x在外部存储器分区之间切换时,不需要外部为存储器插入等待状态。当跨越程序或数据空间内部存储器分区界线时,可编程分区转换逻辑会自动地插入一个周期,这个额外周期的作用是防止总线冲突,保证在其他设备驱动总线之前,存储器设备可以结束对总线的占用。存储器块的大小在分区转换控制寄存器(BSCR)中定义。,分区转换逻辑由分区转

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号