TMS3Cx芯片的外部接口课件.ppt

上传人:rrsccc 文档编号:9218335 上传时间:2021-02-08 格式:PPT 页数:66 大小:1.58MB
返回 下载 相关 举报
TMS3Cx芯片的外部接口课件.ppt_第1页
第1页 / 共66页
TMS3Cx芯片的外部接口课件.ppt_第2页
第2页 / 共66页
TMS3Cx芯片的外部接口课件.ppt_第3页
第3页 / 共66页
TMS3Cx芯片的外部接口课件.ppt_第4页
第4页 / 共66页
TMS3Cx芯片的外部接口课件.ppt_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《TMS3Cx芯片的外部接口课件.ppt》由会员分享,可在线阅读,更多相关《TMS3Cx芯片的外部接口课件.ppt(66页珍藏版)》请在三一文库上搜索。

1、TMS3Cx芯片的外部接口,1,外部接口(续1),TMS3Cx芯片的外部接口,2,TMS3Cx芯片的外部接口,3,外部接口包括:,系统复位 系统控制接口 两个串行通讯接口 数据、地址总线接口 外部中断接口 外部DMA控制接口 通用I/O 定时器输出 HPI接口(C542),TMS3Cx芯片的外部接口,4,外部总线接口,介绍外部总线操作、存储器控制和I/O通道。 TMS320C54 DSP的外部总线操作包括软件等待、块切换逻辑和保持逻辑。 外部总线 外部总线控制 Hold mode 外部存储器 存储空间,TMS3Cx芯片的外部接口,5,外部总线,外部总线接口包括数据总线、地址总线和一些对外部存储

2、器和I/O口控制信号线。,TMS3Cx芯片的外部接口,6,TMS3Cx芯片的外部接口,7,MSTRB信号控制存储器(程序或数据),IOSTARB信号控制I/O口;R/W信号控制数据方向。 READY 信号和软件等待状态发生器允许处理器与不同速度存储器和I/O设备连接。当与速度慢的外部设备连接时,CPU等待外部设备的准备就绪信号(READY)后才继续执行。 在一般情况下,等待状态只需要在两个不同的存储设备之间切换时插入,在这种情况下,可编程的块切换逻辑单元将自动插入一个等待状态。 在保持模式下,允许一个外部设备控制C54x DSP的外部数据总线,使用它的外部程序、数据和I/O空间。有两种类型的保

3、持模式:正常模式和DMA模式。,TMS3Cx芯片的外部接口,8,当CPU指向内部存储器时,数据总线被自动置为高阻态。但地址总线和存储器选择信号(PS,DS,IS)仍保持原状态。MSTRB, IOSTRB, R/W, IAQ, 和 MSC 信号保持激活状态。 当 PMST中的 AVIS( address visibility mode bit)置1时,内部的程序地址指向外部总线,并且 IAQ 为激活状态。当CPU 指向外部的数据或I/O空间时,外部的地址线被清0。当CPU 指向内部存储器且 AVIS 置1时,外部的地址线也被清0。,TMS3Cx芯片的外部接口,9,外部总线控制(External

4、Bus Control),C54的外部总线是由两个单元控制:等待状态发生器(wait-state generator)和块切换逻辑( bank-switching logic)。 对这两个单元的控制是通过两个寄存器软件等待寄存器(software wait-state register SWWSR)和 块切换控制寄存器(bank-switching control register BSCR)实现。 等待状态发生器(Wait-State Generator) 块切换逻辑Bank-Switching Logic,TMS3Cx芯片的外部接口,10,等待状态发生器,软件可编程的等待状态发生器可以扩展

5、外部的总线周期到7个机器周期,可以方便的支持C54x DSP与速度较慢的外部设备连接。 如果等待时间大于7个机器周期,可以使用硬件的 READY 连线。 如果全部外部设备都是零等待配置,连接到等待状态发生器的内部时钟将关闭。关闭这些时钟可以降低设备的功耗。 软件可编程的等待状态发生器是由16-bit的软件等待寄存器(SWWSR)控制的,内存映射地址在数据空间的0028H。 程序和数据空间是各自的两个32K-word块组成,I/O空间是由1个64K-word块组成,每个块在SWWSR中对应 3bit 的位置,TMS3Cx芯片的外部接口,11,软件等待状态寄存器:,TMS3Cx芯片的外部接口,12

6、,TMS3Cx芯片的外部接口,13,等待状态发生器和外部程序空间的连接工作方式图:,TMS3Cx芯片的外部接口,14,等待状态发生器和外部程序空间的工作方式:,当CPU收到一个外部程序空间地址时,由译码器对地址译码,根据译码结果将寄存器SWWSR中对应的数值装入计数器,如果数值不为零,发送一个等待信号到CPU,等待状态计数器开始工作; 当计数器为减为0时,并且外部的准备就绪信号(READY)为高平时,等待信号(WAIT)变为高电平,等待结束。 在系统复位后,SWWSR 中的数据位全部置1, (SWWSR = 7FFFh),对外部总线的等待周期设置为最大。这个特点保证系统初始化时,CPU能与外部

7、存储器以较慢的速度进行通讯。,TMS3Cx芯片的外部接口,15,块切换逻辑,可编程的块切换逻辑允许C54X DSP 在存储器块之间切换而不需要额外的等待周期。 可编程的块切换逻辑在内部的程序或数据空间跨越存储器块边界时,自动插入一个等待周期。 块切换是通过块切换控制寄存器(BSCR)定义的,内存映射地址是 0029H。,TMS3Cx芯片的外部接口,16,块切换控制寄存器(BSCR),TMS3Cx芯片的外部接口,17,TMS3Cx芯片的外部接口,18,BNKCMP 、比较的位与块尺寸的关系.,TMS3Cx芯片的外部接口,19,外部总线关闭时(EXIO = 1)各个端口的状态:,TMS3Cx芯片的

8、外部接口,20,块切换逻辑,EXIO 和 BH 位是对外部地址和程序总线的控制位,在正常操作模式下设置为0(正常读写状态)。如果不使用外部总线,为了降低系统的功耗,应将 EXIO 和 BH 设置为 1。 当EXIO置1时,对外部总线的操作将失效。如写状态寄存器ST1 的HM位,或写PMST中的OVLY位等。 C54 DSP 有一个内部寄存器保存最后一次操作(读或写)的MSBs ,如果当前的地址高位与其不符,则选通信号 MSTRB保持一个时钟周期的无效状态,即插入一个时钟周期,同时更新此内部寄存器。 如果在一个块内重复操作,则不插入额外的等待周期。当BNKCMP全清0时,将不进行地址比较和插入额

9、外的等待周期的操作 。,TMS3Cx芯片的外部接口,21,以下情况 DSP 将自动插入一个额外的机器周期:,_块之间操作。 _ PS-DS置1。,TMS3Cx芯片的外部接口,22,下图表明了在存储器块切换时插入了等待周期:,TMS3Cx芯片的外部接口,23,下图在程序读操作和数据读操作之间插入了额外的等待周期:,TMS3Cx芯片的外部接口,24,Hold Mode,信号 HOLD 和 HOLDA 允许外部设备控制处理器的总线。 HOLDA信号变为低电平时,处理器认可HOLD方式。 当 C54X DSP 进入hold 模式,它的外部地址总线、数据总线和控制信号线变为高阻态。 HOLD 模式 (H

10、M) 的状态位在 ST1 寄存器 当 HM = 1,C54X DSP处于正常的操作模式。,TMS3Cx芯片的外部接口,25,Hold Mode,当 HM = 0,如果处理器没有执行外部部存储器操作,就进入 HOLD 模式。 进入 HOLD 模式后,处理器内部的操作将继续执行,而外部设备对外部总线的操作也可以执行。 系统操作具有最大的灵活性。 进入HOLD模式后,如果程序需要对外部总线进行操作,进程就被中止。只有当HOLD信号变为无效后,处理器才可以获得对外部总线的控制权,继续执行程序。,TMS3Cx芯片的外部接口,26,外部存储器,ROM RAM,TMS3Cx芯片的外部接口,27,存储器产品与

11、DSP的接口举例1:,程序存储器以Winbond 公司的 W49F102(64K16bit COMS flash memory)为例 : 特点:高速COMS工艺制造,速度40/45ns(MAX) +5V供电电压 保存时间:不少于10年 全静态操作(不需要刷新时钟) 硬件数据保护 输入、输出与TTL电平兼容,TMS3Cx芯片的外部接口,28,W49F102 引脚图:,TMS3Cx芯片的外部接口,29,TMS3Cx芯片的外部接口,30,TMS3Cx芯片的外部接口,31,TMS3Cx芯片的外部接口,32,程序储存器与DSP芯片的连接,TMS3Cx芯片的外部接口,33,存储器产品与DSP的接口举例2:

12、,数据存储器:以Winbond 公司的 W26010A(64K 16High-speed COMS static RAM)为例: 特点:高速COMS工艺制造,速度15/20/25ns +5V供电电压 全静态操作(不许要刷新时钟) 输入、输出与TTL电平兼容 三态输出 数据输出:LB(I/O1-I/O8),UB(I/O9- I/O16),TMS3Cx芯片的外部接口,34,W49F102 器件引脚图:,W49F102 器件引脚图,TMS3Cx芯片的外部接口,35,TMS3Cx芯片的外部接口,36,TMS3Cx芯片的外部接口,37,TMS3Cx芯片的外部接口,38,TMS3Cx芯片的外部接口,39,

13、TMS3Cx芯片的外部接口,40,程序储存器与DSP芯片的连接:,TMS3Cx芯片的外部接口,41,存储空间,C54 DSP 是由三个独立空间组成: 程序空间 数据空间 I/O空间 处理器状态寄存器的三个数据位控制着存储器的配置:MP/MC、 OVLY、DROM 位于处理器状态寄存器 (processor mode status register PMST)中。,TMS3Cx芯片的外部接口,42,C541存储器映射图:,TMS3Cx芯片的外部接口,43,存储空间,程序存储器 数据存储器 I/O空间,TMS3Cx芯片的外部接口,44,程序存储器:,程序储存器的最大地址空间为64K。 片内的ROM

14、、DARAM、SARAM都可以通过软件映射到程序空间。 这些片内储存器映射到程序空间后,程序地址发生器(program address generation unit) 将程序地址总线连接到这些存储器的地址线上。,TMS3Cx芯片的外部接口,45,程序储存器的配置,MP/MC 和 OVLY 位表示使用了哪些片内的程序存储器。 系统复位,MP/MC管脚的当前状态逻辑电平写入PMST寄存器的 MP/MC 位,指示处理器是否使用片内ROM。 MP/MC = 1,器件定义为微处理器模式,屏蔽了片内的 ROM ; MP/MC = 0,器件定义为微机模式,片内ROM 有效。 MP/MC 管脚只有在系统复位

15、时是有效的。可以通过软件设置PMST寄存器中的MP/MC位,屏蔽或使能片内ROM。,TMS3Cx芯片的外部接口,46,片内 ROM 的结构 :,片内的ROM是按照块结构组织的,这样可以提高程序的执行效率。例如,程序可以在一个ROM块中取指令的同时,还可以同时读取另外一个ROM块中的数据。 不同器件的块结构是不同的,一般的块分为2K、4K、8K。对于2K-ROM 的芯片,块结构为2K;对于4K-ROM 和 28K-ROM 的器件,一般块结构为4K;对于16K-ROM 和 48K-ROM 的器件,一般块结构为8K。,TMS3Cx芯片的外部接口,47,TMS3Cx芯片的外部接口,48,数据存储器 :

16、,C54的数据储存器最大为 64K16-bit;数据储存器包括片内(on-chip)储存器和片外(off-chip)储存器。部分的C54X的DSP片内的ROM可以通过软件设置PMST寄存器中的DROM位映射到数据区。 为了提高程序的执行效率,片内的 RAM 被划分为多个块。例如,你可以在一个周期内执行两个数据的读操作和一个数据的写操作。下图为C541片内 RAM 的块结构,5K的片内RAM分为5个块,每个块为1K。,TMS3Cx芯片的外部接口,49,TMS3Cx芯片的外部接口,50,I/O 空间,C54的DSP处理器提供了64K的外部 I/O 空间,地址为 (0000hFFFFh) 。 两条指

17、令 PORTR 和 PORTW 是可以执行I/O空间的数据读写。 I/O 空间主要用于外部的人机接口界面,如键盘输入,指示灯输出等 ,也可以用于程序或数据地址的扩展。,TMS3Cx芯片的外部接口,51,思考题:利用 I/O 空间进行人机接口的设计:用TMS320C541的I/O空间,设计一组16个键盘输入,和对应键的指示灯输出,画出电路框图(或原理图)。,BACK,TMS3Cx芯片的外部接口,52,系统中断 :,中断可以由硬件驱动产生,也可以由软件产生。 中断信号使DSP处理器暂停主程序的执行,转向中断服务程序。,TMS3Cx芯片的外部接口,53,C54x DSP 支持硬件中断和软件中断: 软

18、件中断必须在执行的程序中说明( INTR、TRAP、RESET) 硬件中断由外部或内部的硬件输入端口上的信号触发。 当多个硬件中断被同时触发时,处理器按照中断的优先级别,首先响应高优先级的中断。,TMS3Cx芯片的外部接口,54,中断优先级别表:,TMS3Cx芯片的外部接口,55,中断分类:,所有C54x DSP 的中断分两类: 可屏蔽中断(maskable interrupts) 非屏蔽中断:(Nonmaskable interrupts NMI),TMS3Cx芯片的外部接口,56,可屏蔽中断 :,DSP 支持 16 个用户可屏蔽中断(SINT15SINT0)。对于不同型号的DSP,只可能用

19、到16个中断中的一部分。 C541 使用了其中的 9 个中断: INT3 到 INT0 RINT0、XINT0、RINT1、和 XINT1 (串口中断) TINT (定时器中断),TMS3Cx芯片的外部接口,57,非屏蔽中断 :,C54x DSP 任何时候都响应这种类型的中断并执行中断服务程序 C54x DSP 非屏蔽中断包括所有的软件中断和两个外部的硬件中断 RS (reset)和 NMI。(RS 和 NMI 也可以通过软件控制) RS 是系统复位中断,可以影响全部 C54x DSP 操作模式的非屏蔽中断,将处理器预置到一个已知状态。 NMI 一般用于系统严重错误时,向CPU发出告警。如电源

20、系统告警等。,TMS3Cx芯片的外部接口,58,中断寄存器,中断标记寄存器(Interrupt Flag Register IFR) 中断屏蔽寄存器(Interrupt Mask Register IMR),TMS3Cx芯片的外部接口,59,中断标记寄存器 :,IFR 清楚表明每个中断源的当前状态。如果中断位被设置为 1,表明发生了相应位的中断。,TMS3Cx芯片的外部接口,60,中断屏蔽寄存器 :,如果 在ST1 中的 INTM = 0,将 IMR 中需要开放的中断对应位设置为 1。,TMS3Cx芯片的外部接口,61,C54x DSP 的中断响应,C54x DSP 的中断响应分为三个阶段:,

21、TMS3Cx芯片的外部接口,62,接收中断请求:,暂停主程序的执行,准备响应中断信号。 当中断请求发生时,IFR 中相应的中断标记位被激活。 中断标记位应保持到处理器响应中断。 中断标记在中断响应后自动清除。,TMS3Cx芯片的外部接口,63,中断响应 :,CPU接收到中断请求后,必须决定是否响应中断请求。 对于非屏蔽硬件中断和全部软件中断,CPU会立即响应中断。 对于可屏蔽中断,必须满足预先规定的中断条件,中断响应才被承认有效: CPU响应中断,程序指针 PC 转向中断向量表时,CPU 发出 IACK 信号,同时清除中断标记位。,TMS3Cx芯片的外部接口,64,中断条件,1、 最高优先级:

22、同时有多个中断请求时,首先响应具有最高优先级别的中断。 2、 INTM = 0。(interrupt mode INTM)在 ST1 中: INTM = 0,允许所有可屏蔽中断源的中断请求; INTM = 1,禁止所有可屏蔽中断源的中断请求; 当程序执行中断程序时,INTM 自动设置为 1; 当中断程序执行结束(RETE中断返回指令),INTM自动清除为 0。 3、IMR = 1。每个中断都在 IMR 中都有一个标记位。只有标记位为 1 时,才允许响应该中断。,TMS3Cx芯片的外部接口,65,执行中断服务程序,一旦中断被响应,C54x DSP 跳转到中断表中标记的中断程序入口,开始执行中断服务程序: 1) 存储程序地址(program counter PC)的值(程序的返回地址) 压入堆栈; 2) 中断向量表中的地址装入 PC; 3) 转入中断程序入口 4) 执行中断程序直到结束 5) 根据堆栈指针 SP 的位置,将返回地址数据出栈到 PC; 6)继续执行主程序,TMS3Cx芯片的外部接口,66,BACK,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1