微机原理4章总线周期和时序.ppt
1,第4章处理器总线时序和系统总线,4.1概述4.2处理器总线4.38086典型时序分析4.4 其它总线简介,2,4.1 概述,4.1.1 指令周期、总线周期和T状态 指令周期执行一条指令所需的时间。不同指令的指令周期是不同的。例:最短指令:寄寄,只需要2个时钟周期.最长指令:16位乘、除,约需200个时钟周期.,3,有些指令周期可划分为一个个总线周期。总线周期每当CPU与存储器或I/O端口交换一个字节(或字、双字)数据所需的时间称之为一个总线周期。每个基本总线周期通常包含4个T状态,一个T状态就是一个时钟周期,是CPU处理动作的最小单位。,4,时钟频率一个T状态时间 5M 200ns(0.2s)50M 20ns(0.02s)100M 10ns(0.01s)200M 5ns(0.005s)基本的总线周期有:存储器的读周期或写周期I/O端口的读周期或写周期中断响应周期,5,4.1.2 学习时序的目的,了解和熟练掌握指令的执行过程,有利于在编程时合理选用指令,提高编程质量,少占存储空间,缩短指令执行时间。如编程时完成相同功能的程序,可选用不同的指令,但指令的长度和执行时间可以有很大的不同,所以优选指令有利于提高程序质量。例:MOV AX,0 CLC,XOR AX,AX,6,下面举例了解一条指令的执行过程和所需时间例:ADD MASKBX+DI,AX 执行本指令需要几个总线周期?需要多少时钟周期?ADD 寄存器到内存,访问内存次数:2 所需的时钟周期数为:16(24)+EA EA为12个时钟周期.对8088而言,执行本指令需要36个时钟周期.2.实时控制的要求,当用微机实时监测、控制时,必须估算执行有关程序所需的时间,以便与测控过程相配合。,7,3.了解时序配合,有利于选用芯片和使用芯片。例如选用存储芯片时,要注意和CPU的时序配合;又例在使用液晶芯片时,需编程产生图形,就需读懂液晶芯片的有关时序。如某液晶模块的列驱动器HD61202 的读出时序如下:,8,4.2 处理器总线,4.2.1 8086微处理器的工作模式最小模式:系统中只有一片8086,其存储容量不大,所要连的I/O端口也不多,总线控制逻辑电路被减到最小。最大模式:构成的系统较大,可能包含不只一片微处理器,或要求有较强的驱动能力,带有一个总线控制器8288。,4.2.2 8086的引脚和功能,9,10,11,对应最小组态:M/IO本信号为高,表示CPU与内存进行数据交换 为低,表示CPU与I/O进行数据交换 DMA传送时,M/IO置为高阻 WR 低有效,表示处在存储器写或I/O写 INTA 中断响应信号,低电平有效 ALE 地址锁存允许信号,高电平有效,有效时将 地址信号锁存到地址锁存嚣中,12,HOLD为总线保持请求信号 HLDA为总线保持响应信号 DT/R为数据发送/接收信号,为增加数据总线的驱动能力,采用数据总线收发器(8286/8287)DEN为数据允许信号,作为8286/8287的输出允许信号,13,对应最大组态:S2 S1 S0总线周期状态信号其编码如下S2 S1 S0 性能000 中断响应001 读I/O010 写I/O011 暂停100 取指令101 读内存110 写内存 111 无效状态,14,RQ/GT0总线请求输入/总线请求允许输出 RQ/GT1总线请求/总线请求允许 每一脚为双向,其中RQ/GT0的优先权高于RQ/GT1 LOCK总线封锁信号,当其有效时,别的总线主 设备不能占用总线 QS1,QS0指令队列状态信号,意义如下:QS1 QS0 0 0 无操作 0 1 从指令队列中第一字节中取走代码 1 0 队列空 1 1 除第一个字节外,还取走了后续字节中 的代码.,15,其它引脚:AD15 AD0 地址/数据复用线A19/S6,A18/S5,A17/S4,A16/S3地址/状态复用线 S6 始终为低,表示CPU当前与总线相连 S5 是中断允许标志状态位,为1允许中断 S4和S3指定那一个段寄存器正在被使用.S4 S3 含义00当前正在使用ES01当前正在使用SS10当前正在使用CS或未用 1 1当前正在使用DS,16,NMI非屏蔽中断请求信号,边缘触发 信号,不能由软件加以屏蔽。INTR可屏蔽中断请求信号,高电平有效,为电平触发信号。BHE/S7 高8位数据总线允许/状态复用信号 为0则AD15AD8有效 为1则AD7AD0有效 RESET复位信号,当其有效CPU结束当前操作,对DS,SS,ES,IP及标志寄存器清零,将CS置为FFFFH。于是CPU从FFFF0H开始执行程序,FFFF0H处放有一条JMP指令,转到系统程序入口处,进行初始化,引导到监控程序。,17,RD 读信号,低有效,表示正在进行存储 器或I/O读.TEST 测试信号(输入),本信号与WAIT指 令结合起耒使用,执行WAIT指令时,CPU等待,若TEST有效,结束等待,执 行下面指令.READY准备就绪信号,一般由存储器或I/O 端口送来,当其有效,可进行数据传 送,一般在T3开始时去采样它,若为 低,需插入等待状态Tw。,18,4.2.3 PC/XT总线 总线上的信号除上面介绍过的外,还有:IOR I/O读命令 IOW I/0写命令 MEMR 存储器读命令 MEMW 存储器写命令 IRQ2 IRQ7为中断请求信号,由外设送给中断控制器8259A的后6个引入总线。,19,4.3 最小模式下的8086时序,4.3.1 8086的读周期时序,20,T1 后M/IO变高表示存储器读,变低表示I/O读给出地址,若存储器则给出20位地址,若为I/O端口,则给出低16位地址(高4位为低)ALE变为有效高电平,将复用线上的地址锁存起来 DT/R变低,表示CPU读 BHE信号有效,表示高8位数据线上的数据有效,21,4.3.1 8086的读周期时序,22,T2状态下A19/S6A16/S3 引脚输出状态信号S6S3AD15AD0转为高阻RD变低,允许读出DEN变低,开放总线收发器8286,允许数据传送,23,4.3.1 8086的读周期时序,24,3.在T3状态,被选中的存储单元或I/O端口把数据送到数据总线,以备CPU来读取.经过译码找到指定的存储单元或I/O端口,经过一段延迟,指定单元内容出现在AD15AD0上。4.CPU在T4下降沿采样数据线,获取数据,25,4.3.1 8086的读周期时序,26,5.若到时数据出不来,可用一个产生READY信号的电路,使在T3和T4之间产生一个或几个Tw来解决时序配合,27,28,4.3.2 8086的写周期时序,29,写周期亦由4个T状态组成,与读周期时序类似,不同点为:当A15A0被锁存后,在T2状态CPU要把写入的数据放至AD15AD0上因要写入在T2用WR来代替RDDT/R应为高电平,表示发送 同样当与CPU速度不配时,亦可插入Tw,30,4.3.2 8086的写周期时序,31,初步了解了时序的一些基本概念后,再回过头来看一下前面提到过的液晶摸块中的HD61202 的读出时序:,32,4.4 其它总线简介,4.4.1 总线概念 所谓总线,就是在设备(或模块)与设备(或模块)之间传送信息的一组公用信号线,它是一条公用的信号通路。总线主要包括地址总线、数据总线和控制总线。总线的特点在于它的公用性,它允许多个设备与模块用总线来传输信息。但是两个设备或模块之间的专用信号连线,就不能称为总线。Intel 系列微机系统的主要总线如下:,33,4.4.2 PC/XT总线,XT总线是 IBM PC/XT 个人计算机采用的总线。XT总线有62根线。包括8位数据线、20位地址线、6级中断请求线、DMA通道控制线、动态RAM刷新控制线、时钟信号线和电源线等。4.4.3 ISA总线 ISA(Industrial Standard Architecture)总线是 IBM 公司为推出 PC/AT微机而建立的系统总线标准,多数80286、80386、80486微机都采用这种总线.,34,ISA总线是在原 PC/XT总线的基础上,再扩充36线,ISA总线与 PC/XT 总线兼容,以适应8/16位总线要求,支持 16 M 存储空间。4.4.4 PCI 总线PCI(Peripheral Component Interconnect)总线性能优良,可同时支持多组外设,又不受制于微处理器,并且兼容 ISA、EISA等总线,与它们共存于 PC 系统中,它的规范确保了“即插即用”的实现,极大的方便了用户,从而得到广泛的应用,成为总线的主流。,35,PCI总线的时钟为 33MHz,与CPU时钟无关。它的总线宽度为 32位,支持8位、16位、32位操作。速度快,是 ISA的10倍以上。4.4.5 USB总线 随着PC机的普及,计算机的外部设备也越来越多。但是由于主板上所能提供的外部接口比较少,一般只有一个并口和两个串口,所能连接的设备十分有限,而且拔插设备的时候要关机,传输速度也很慢,在要求高传输率的场合无法满足要求.于是,36,INTEL等七家公司为简化PC与外设之间的互连,而共同开发了一种通用串行总线USB(Universal Serial Bus),这是一种快速的、双向的、同步传输的、廉价的并可进行热插拔的串行接口,支持各种PC与外设之间的连接。当前大部分PC机至少提供2个USB接口,适用于传输大容量数据,例数码相机、数字摄像机等。传输速度从1.5MB到48MB/S,但传输距离短,约5米之内。,