1、第5章 TMS320C54x的引脚功能、流水线结构和外部总线结构,5.1 TMS320C54x的引脚和信号说明 5.2 流水线结构 5.3 外部总线结构,5.1 TMS320C54x的引脚和信号说明,TMS320C54x DSP基本上都采用超薄的塑料或陶瓷四方扁平封装(TQFP),也有其他封装形式。图5-1所示是TMS320C541的引脚图。本节重点描述TMS320C541芯片的引脚功能。,图5-1 TMS320C541的引脚图,4振荡器及定时信号CLKOUT、TOUT:主时钟输出信号、定时器输出信号。CLKMD1CLKMD3:3个外部/内部时钟工作方式输入信号,可以预置DSP的时钟比。X2/
2、CLKIN、X1:晶振到内部振荡器的输入引脚、内部振荡器到外部晶振的输出引脚。,5主机接口(HPI)信号(TMS320C542/545/548等具有) HD0HD7:HPI双向并行数据总线。 HCNTL0、HCNTL1:HPI控制信号。 HBIL:HPI字节确认输入。,6串口信号CLKR0、CLKR1:接收时钟。CLKX0、CLKX1:发送时钟。DR0、DR1:串行口数据接收端。DX0、DX1:串行口数据发送端。FSR0、FSR1:用于接收输入的帧同步脉冲。FSX0、FSX1:用于发送的帧同步脉冲。7电源信号CVDD、DVDD、VSS:CPU内核电源电压、I/O引脚的电源电压和器件地。,8IE
3、EE 1149.1测试引脚,5.2 流 水 线 结 构,1流水线概述指令流水线包括执行指令时发生的一系列总线操作。TMS320C54x的流水线有6个独立的阶段:程序预取指、取指、指令译码、寻址、读和执行指令。由于这6个阶段是独立的,因此这些操作有可能重叠。在任意给定的周期里,可能有16条不同的指令是激活的,每一条指令都处于不同的阶段。图5-2说明了对于单字、单周期指令,在没有等待状态情况下6级流水线的操作。,图5-2 6级流水线的操作,图5-2 6级流水线的操作这6级流水线的功能如下:预取指(Prefetch):将所要取指的地址放在程序地址总线(PAB)上。取指(Fetch):从程序总线(PB
4、)上取指令字,并装入指令寄存器(IR)。译码(Decode):对IR中的内容译码,产生执行指令所需要的一系列控制信号。,寻址(Access):数据地址产生单元(DAGEN)在数据地址总线(DAB)上输出读操作数的地址。如果还需要第二个操作数,则在另一个数据地址总线(CAB)上也装入适当的地址,同时更新间接寻址方式中的辅助寄存器和堆栈指针(SP)。读(Read):从数据总线(DB)和控制总线(CB)上读操作数。执行(Execute):从数据总线(EB)上写数据。 6条单字、单周期指令的流水线操作如图5-3所示。,图5-3 6条指令的流水线的操作,2双寻址存储器和流水线TMS320C54x片内的双
5、寻址存储器(DARAM)分成若干独立的存储器块,允许CPU在单个周期内对其访问两次。下列情况下访问DARAM不会带来时序上的冲突: 在单周期内允许同时访问DARAM的不同块。 当流水线中的一条指令访问某一存储器块时,允许流水线中处于同一级的另一条指令访问另一个存储器块。 允许处于流水线不同级上的两条指令同时访问同一个存储器块。,表5-1 访问DARAM块,3单寻址存储器和流水线 TMS320C54x片内有两种形式的单寻址存储器: 单寻址读/写存储器(SARAM)。 单寻址只读存储器(ROM或DROM)。,4流水线延时TMS320C54x流水线允许CPU多条指令同时访问CPU资源。由于CPU的资
6、源是有限的,因此当一个CPU资源同时被一个以上流水线级访问时,就会发生冲突。有些冲突可以由CPU通过延迟寻址的方法自动消除,但有些冲突是不能防止的,需要由程序重新安排指令顺序,或者插入NOP(空操作)指令加以解决。对于下列存储器映像寄存器,如果在流水线中同时对它们寻址,就有可能发生不能消除的冲突:, 辅助寄存器(AR0AR7); 重复块长度寄存器(BK); 堆栈指针(SP); 暂存器(T); 处理器工作方式状态寄存器(PMST); 状态寄存器(ST0和ST1); 块重复计数器(BRC); 存储器映像累加器(AG、AH、AL、BG、BH和BL)。,5.3 外部总线结构,5.3.1 外部总线接口信
7、号TMS320C54x具有很强的系统接口能力,其总线分为内部总线和外部总线。TMS320C54x的内部总线有1条PB,3条CB、DB和EB及4条PAB、CAB、DAB和EAB。片内总线采用流水线结构,可以允许CPU同时寻址这些总线。TMS320C54x DSP在片内可实现一个周期内6次操作。,TMS320C54x的外部总线由数据总线(D0D15)、地址总线(A0A15)和控制总线(11条)组成(参见5.1节)。其中,TMS320C548、TMS320C549具有23条地址总线。外部总线对外部存储器的访问最快只能达到每周期进行一次寻址。下面介绍控制信号的功能。,5.3.2 外部总线控制性能1等待
8、状态发生器当希望TMS320C54x与外部慢速器件相互接口时,必须要有等待状态。在CPU读/写外部存储器或端口时,通过增加等待状态,可以加长CPU等待响应的时间。具体地说,对每个等待状态,CPU等待一个附加的周期(一个CLKOUT周期)。,TMS320C54x有两种可选择的等待状态: 软件可编程等待状态发生器。利用它能够产生07个等待状态。 READY信号。利用该信号能够由外部控制产生任何数量的等待状态。,1) 软件可编程等待状态发生器软件可编程等待状态发生器能够延迟外部总线最多至7个周期与外部存储器或I/O设备接口。软件可编程等待状态发生器不需要任何外部硬件设备。软件可编程等待状态发生器的工
9、作受到软件等待状态寄存器(SWWSR)的控制,它是一个16位的存储器映像寄存器,在数据空间的地址为0028H。将程序空间和数据空间分成两个32 K字块,I/O空间由一个64 K字块组成。这5个字块空间在SWWSR中都相应地有一个3位字段,用来定义各个空间插入等待状态的数目。SWWSR的结构如图5-4所示。,图5-4 SWWSR的结构,上述SWWSR的各3位字段规定的插入等待状态的最小数为0(不插入等待周期),最大数为7(111B)。其中:Low Prog:定义对0000H7FFFH的程序空间访问时插入的等待状态数。Hi Prog:定义对8000HFFFFH的程序空间访问时插入的等待状态数。,L
10、ow Data:定义对0000H7FFFH的数据空间访问时插入的等待状态数。Hi Data:定义对8000HFFFFH的数据空间访问时插入的等待状态数。I/O:定义对0000HFFFFH的I/O空间访问时插入的等待状态数。,2) 利用READY信号产生等待状态TMS320C54x的系统有各种各样,仅有软件等待状态是不够的。如果外部器件要求插入7个以上的等待周期,则可以利用硬件READY线来接口。READY信号由外部慢速设备驱动控制,对DSP来说是输入信号。当READY信号为低电平时,表明外部设备尚未准备好,TMS320C54x将等待一个CLKOUT周期,并再次校验READY信号;在READY信
11、号变为高电平之前,TMS320C54x将不能连续运行,一直处于等待状态。因此,如果不用READY信号,应在外部访问期间将其上拉到高电平。,2分区转换逻辑可编程分区转换逻辑允许TMS320C54x在外部存储器分区之间切换时,不需要外部为存储器插入等待状态。当跨越程序或数据空间内部存储器分区界线时,可编程分区转换逻辑会自动地插入一个周期,这个额外周期的作用是防止总线冲突,保证在其他设备驱动总线之前,存储器设备可以结束对总线的占用。存储器块的大小在块切换控制存储器(BSCR)中定义。,图5-5 BSCR的结构,分区转换逻辑由分区转换控制寄存器(BSCR)定义,它是一个16位的存储器映像寄存器,在数据
12、空间的地址为0029H。BSCR的结构如图5-5所示。表5-2(略)列出了TMS320C54x分区转换控制寄存器各字段功能的详细说明。,5.3.3 外部总线接口时序图1存储器寻址定时图图5-6是存储器读读写操作定时图。在此图中,虽然外部存储器写操作要花两个机器周期,但每次在同一分区中来回读( 保持低电平)都是单周期寻址。,图5-6 存储器读读写操作定时图,图5-7给出了存储器写写读操作定时图。注意,图中 由低变高后,写操作的地址线和数据线继续保持约一个半周期有效。每次存储器写操作要花两个机器周期,而紧跟其后的读操作也要两个机器周期。,图5-7 存储器写写读操作定时图,2I/O寻址定时图对I/O
13、设备读/写操作要持续两个机器周期,在此期间,地址线变化一般都发生在CLKOUT的下降沿(若I/O寻址前是一次存储器寻址,则地址变化发生在上升沿)。 低电平有效是从CLKOUT的一个上升沿到下一个上升沿,持续一个机器周期。图5-8是并行I/O口读写读操作定时图,图中I/O读/写操作都是两个机器周期。,图5-8 并行I/O口读写读操作定时图,3外部总线复位定时图图5-9是TMS320C54x外部总线复位定时图。当TMS320C54x进行复位和对硬件初始化时,复位输入信号 至少必须保持两个CLKOUT周期的低电平。复位响应时,CPU终止执行当前的程序,并强迫程序计数器PC置为FF80H,且以FF80H驱动地址总线。复位后,外部各总线的状态如图5-9所示。,图5-9 外部总线复位定时图,4保持方式定时图TMS320C54x有两个信号 和 ,这两个信号允许外部设备控制处理器片外资源,以便进行直接数据传输(DMA)操作。DMA可以承担数据传输任务而无需运算控制单元干预,从而提高了程序执行效率。TMS320C54x进入保持状态后有两种工作方式,方式的确定由ST1中的HM位决定。,(1) 正常保持方式。当 为低电平时,处理器停止执行程序。(2) 并行DMA操作方式。处理器可以通过片内存储器(ROM或RAM)继续执行程序。,图5-10 保持方式定时图(HM=0),