8086的总线操作

上传人:ni****g 文档编号:568635572 上传时间:2024-07-25 格式:PPT 页数:30 大小:2.07MB
返回 下载 相关 举报
8086的总线操作_第1页
第1页 / 共30页
8086的总线操作_第2页
第2页 / 共30页
8086的总线操作_第3页
第3页 / 共30页
8086的总线操作_第4页
第4页 / 共30页
8086的总线操作_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《8086的总线操作》由会员分享,可在线阅读,更多相关《8086的总线操作(30页珍藏版)》请在金锄头文库上搜索。

1、第第5 5章章 8086 8086的总线操作的总线操作第5章 8086的总线操作5.1 概述 5.2 8086的两种模式 5.3 最小模式下的8086时序分析 5.4 最大模式下的8086时序分析第第5 5章章 8086 8086的总线操作的总线操作5.1 概 述5.1.1 时钟周期(T状态)、总线周期和指令周期 1 1时钟周期(时钟周期(T T状态)状态) 计算机是一个复杂的时序逻辑电路,时序逻辑电路都有“时钟”信号。 计算机的“时钟”是由振荡源产生的、幅度和周期不变的节拍脉冲,每个脉冲周期称为时钟周期,又称为T状态。计算机是在时钟脉冲的统一控制下,一个节拍一个节拍地工作的。 2 2总线周期

2、总线周期 当CPU访问存储器或输入输出端口,需要通过总线进行读或写操作。与CPU内部操作相比,通过总线进行的操作需要较长的时间。我们把CPU通过总线进行某种操作的过程称为总线周期(Bus Cycle)。根据总线操作功能的不同,有多种不同的总线周期。如存储器读周期、存储器写周期、I/O读周期、I/O写周期等。 第第5 5章章 8086 8086的总线操作的总线操作基本的总线周期的时序图第第5 5章章 8086 8086的总线操作的总线操作一个典型的总线周期序列第第5 5章章 8086 8086的总线操作的总线操作3 3指令周期指令周期每条指令的执行包括取指令(fetch)、译码(decode)和

3、执行(execute)。执行一条指令所需要的时间称为指令周期(Instruction Cycle)。指令周期是由1个或多个总线周期组合而成。或者说,指令周期可以被划分为若干个总线周期。8086中不同指令的指令周期是不等长的。由于8086中的指令码最短的只需要一个字节,多的有6个字节。多字节指令,取指(存储器读)就需要多个总线周期;在指令的执行阶段,由于各种不同寻址方式,需要的总线周期个数也各不相同。因此8086的指令周期是不等长的。对于8086CPU来说,在EU执行指令的时候,BIU可以取下一条指令。由于EU和BIU可以并行工作,8086指令的最短执行时间可以是两个时钟周期,一般的加、减、比较

4、、逻辑操作是几十个时钟周期,最长的为16位乘除法约要200个时钟周期。第第5 5章章 8086 8086的总线操作的总线操作5.1.2 8086/8088引脚信号第第5 5章章 8086 8086的总线操作的总线操作5.2 8086的两种模式5.2.1 最小模式和最大模式的概念 当把8086CPU与存储器和外设构成一个计算机系统时,根据所连的存储器和外设的规模,8086具有两种不同的工作模式,即最小模式和最大模式。8086到底工作在最大模式还是最小模式,由硬件设计决定。1 1最小模式最小模式 当要利用8086构成一个较小的系统时,在系统中只有8086一个微处理器,所连的存储器容量不大、片子不多

5、,所要连的I/O端口也不多,系统中的总线控制电路被减到最少。系统的地址总线可以由CPU的AD0AD15、A16A19通过地址锁存器8282(或74LS373)构成;数据总线可以直接由AD0AD15供给,也可以通过发送/接收接口芯片8286 (或74LS245)供给(增大总线的驱动能力);系统的控制总线就直接由CPU的控制线供给,这种组态就称为8086的最小组态。第第5 5章章 8086 8086的总线操作的总线操作8088最小模式图第第5 5章章 8086 8086的总线操作的总线操作2 2最大模式最大模式 最大模式是相对最小模式而言的。最大模式用在中等规模的或者大型的8086系统中。若要构成

6、的系统较大,就要求有较强的总线驱动能力,这样8086要通过一个总线控制器8288来形成各种总线周期,控制信号由8288供给。在最大模式系统中,总是包含有两个以上总线主控设备,其中一个就是8086或者8088微处理器,其他的通常是协处理器,它们是协助微处理器工作的。 第第5 5章章 8086 8086的总线操作的总线操作8088最大模式图第第5 5章章 8086 8086的总线操作的总线操作5.2.2 8086 CPU引脚功能1.1.与工作模式无关的引脚功能与工作模式无关的引脚功能 AD15AD0(双向,三态) 为低16位地址/数据的复用引脚线。采用分时的多路转换方法来实现对地址线和数据线的复用

7、。在总线周期的T1状态,这些引线表示作为低16位地址线,在总线周期的T2,T3,T状态,这些引线作为数据总线。可见对复用信号是用时间来加以划分的,所以在T1状态,必须用锁存器将地址加以锁存,这样在随后的T状态,即使这些线用作数据线,而地址信息不变。在DMA方式时,这些引线被浮空,置为高阻状态。 第第5 5章章 8086 8086的总线操作的总线操作 A19/S6A16/S3(输出、三态)为地址/状态复用引脚线,在总线周期的T1状态,这些引线表示为最高4位地址线(在读/写外设端口时,最高4位地址线不用,故这些引线全为低电平),在总线周期的其它T状态(T2,T3,TW和T4)时,这些引线作为状态信

8、息。同样需要锁存器对T1状态出现的最高4位地址加以锁存。状态信息S6总是为低电平。S5反映当前允许中断标志的状态。S4与S3一起指示当前哪一个段寄存器被使用。其规定如表所示。 S4S3当前正在使用的段寄存器名00ES01SS10CS11DS第第5 5章章 8086 8086的总线操作的总线操作 /S7(输出,三态)为高8位数据总线允许状态复用引脚。在T1周期时,为 ,与A0结合使用;在其他T状态为S7,在8086中未赋实际意义。 A0 操作 所用引脚0 0 从偶地址开始读写一个字 AD15AD01 0 从偶地址开始读写一个字节 AD7AD00 1 从奇地址开始读写一个字节 AD15AD8从奇地

9、址开始读写一个字,需两个总线周期:0 1 从奇地址开始读写一个字节 AD15AD81 0 从偶地址开始读写一个字节 AD7AD0 第第5 5章章 8086 8086的总线操作的总线操作 (输出,三态)读信号,当其有效时(低电平)表示正在对存储器或I/O端口进行读操作,若M/ 为低电平,表示读取I/O端口的数据;若M/ 为高电平,表示读取存储器的数据。T2、 T3、TW状态有效。在DMA方式时,此线被浮置为高阻。 READY(输入)为准备就绪信号。是由选中的存储器或I/O端口送来的响应信号,当有效时(高电平),表示被访问的存储器或I/O端口已准备就绪,可完成一次数据传送。CPU在读操作总线周期的

10、T3状诚开始处,采样READY信号,若发现为低电平,则在T1状态结束后,插入等待状态TW。然后在TW开始处,继续采样READY信号,直至变为有效(高电平),才进入T4状态,完成数据传送,以结束总线周期。 第第5 5章章 8086 8086的总线操作的总线操作 (输入)为测试信号,低电平有效。 信号和WAIT指令配合使用。当CPU执行WAIT指令时,CPU处于等待状态,并且每隔5个T对该信号进行一次测试,一旦检测到 信号为低,则结束等待状态,继续执行WAIT指令下面的指令。WAIT指令是使CPU与外部硬件同步的, 相当于外部硬件的同步信号。 INTR(输入) 可屏蔽中断请求信号,高电平有效。CP

11、U在执行每条指令的最后一个T状态时,去采样INTR信号,若发现为有效,而中断允许标志IF又为1,则CPU在结束当前指令周期后响应中断请求,转去执行中断处理程序。 第第5 5章章 8086 8086的总线操作的总线操作 RESET(输入)复位信号,高电平有效。复位时该信号要求维持高电平至少4个时钟周期,若是初次加电,则高电平信号至少要保持50s。复位信号的到来,将立即结束CPU的当前操作,内部寄存器恢复到初始状态,如表所示。当RESET信号从高电平回到低电平时,即复位后进入重新启动时,便执行从内存FFFF0H处开始的指令,通常在FFFF0H存放一条无条件转移指令,转移到系统程序的实际入口处。这样

12、只要系统被复位启动,就自动进入系统程序。 标志寄存器清零指令指针(IP)0000HCS寄存器FFFFH其它寄存器0000H指令队列空第第5 5章章 8086 8086的总线操作的总线操作 CLK(输入)时钟信号,它为CPU和总线控制电路提供基准时钟。 电源和地VCC为电源引线,单一的5V电源。引脚1和20为两条GND线,要求均要接地。 MN/ (输入)为最小最大模式信号。它决定8086的工作模式。将此引线接电源5V,则8086工作于最小模式;若此引线接地,则8086工作在最大模式。 第第5 5章章 8086 8086的总线操作的总线操作2. 最小模式下的引脚功能 (Interrupt Ackn

13、owledge,输出)CPU向外输出的中断响应信号,用于对外部中断源发出的中断请求的响应,中断响应周期由两个连续的总线周期组成,在每个响应周期的T2,T3和TW状态, 均为有效(低电平),在第二个中断响应周期,外设端口往数据总线上发送中断类型号,CPU根据中断向量而转向中断处理程序。 ALE(Address Lock Enable,输出)地址锁存允许信号,高电平有效。在总线周期的T1状态,当地址/数据复用线AD15AD0和地址/状态复用线A19/S6A16/S3上出现地址信号时,CPU提供ALE有效电平,将地址信息锁存到地址锁存器中。ALE下降沿锁存地址。 第第5 5章章 8086 8086的

14、总线操作的总线操作 (Data Enable,输出,三态)数据允许信号,在使用8286或74LS245数据收发器的最小模式系统中,在存储器访问周期,I/O访问周期或中断响应周期,此信号有效,用来作为8286或74LS245数据收发器的输出允许信号,即允许收发器和系统数据总线进行数据传送。T2T4有效。在DMA方式时,此线被浮置为高阻。 DT/ (Data Transmit/Receive,输出,三态)数据发送/接收控制信号。在使用8286或74LS245数据收发器的最小模式系统中,用DT/ 来控制数据传送方向。DT/ 为低电平,进行数据接收(CPU读),即收发器把系统数据总线上的数据读进来。当

15、CPU处在DMA方式时,此线浮空。 第第5 5章章 8086 8086的总线操作的总线操作 M/ (输出,三态)访问存储器或I/O端口的控制信号。若M/ 为高电平,则访问的是存储器;若M/ 为低电平,则访问的是I/O端口。 (输出,三态)写信号。当其有效时(低电平)表示CPU正在对存储器或I/O端口进行写操作,具体对谁进行写操作,由M/ 信号决定。本信号在总线周期的T2T4状态有效。 HOLD(输入)总线保持请求信号。当系统中CPU之外的总线主设备要求使用总线时,通过HOLD引脚向CPU发出请求,如果CPU允许让出总线,则CPU在当前周期的T4状态或下一总线周期的T1状态。,由HLDA引脚向主

16、设备输出高电平信号作为响应。同时使地址总线、数据总线和相应的控制线处于浮空状态,总线请求主设备取得总线的控制权。一旦总线使用完毕,总线请求主设备使HOLD变为低电平,CPU检测到HOLD为低后,把HLDA也置为低电平,CPU重新获得总线的控制权。第第5 5章章 8086 8086的总线操作的总线操作 HLDA(输出)总线保持响应信号。当HLDA有效(高电平)时,表示CPU对总线请求主设备作出响应,同意让出总线,与CPU相连的三态引脚都被浮置为高阻态。 3. 最大模式下的引脚功能 QS1,QS0(输出)指令队列状态(Queue Status)信号。QS1和QS0的组合提供了总线周期前一个T状态中

17、指令队列的状态(队列状态只在队列操作执行以后的时钟周期有效),允许外部设备跟踪8086内部指令队列状况。QS1和QS0的组合所代表的指令队列状态输出如下表所示。 第第5 5章章 8086 8086的总线操作的总线操作QS1QS0含 义00无操作01从指令队列的第一个字节中取走代码10队列空11除第一个字节外,还取走了后续字节中的代码 , , 的组合及其对应的操作如下表所示。当CPU处在DMA传送方式时,这三根引线浮置为高阻。在总线周期的T3和TW状态并且READY为高电平时, , , 都成为高电平,此时,一个总线操作过程就要结束,另一个新的总线周期还未开始,通常称无源状态。 第第5 5章章 8

18、086 8086的总线操作的总线操作操作过程000011110011001101010101发中断响应信号读I/O端口写I/O端口暂停取指令读内存写内存无源状态第第5 5章章 8086 8086的总线操作的总线操作 (输出,三态)总线封锁信号。当本信号有效(低电平)时,封锁了系统中别的总线主设备对系统总线的占有。 输出信号由前缀指令LOCK产生,且保持有效直至LOCK指令的下面一条指令执行后。在8086的中断响应时,在两个连续响应周期之间, 信号亦变为有效,以防止一个完整的中断过程被外部主设备占用总线而破坏。在DMA操作时, 引脚被浮空。 第第5 5章章 8086 8086的总线操作的总线操作

19、 / , / (Request/Grant,双向)总线请求/允许信号。为两个信号端,每个信号端可供CPU以外的一个总线主设来发出使用总线请求信号,以及接收来自CPU的允许总线请求响应信号。类似于最小系统中的HOLD和HLDA信号,但此两个引脚都是双向的,即在同一引脚上送总线请求信号(对CPU为输入),后传送允许信号(对CPU为输出)。 / 的优先权高于 / 。 第第5 5章章 8086 8086的总线操作的总线操作5.3 最小模式下的8086时序图第第5 5章章 8086 8086的总线操作的总线操作5.3.2 最小模式下的写周期时序第第5 5章章 8086 8086的总线操作的总线操作5.3

20、.3 中断响应周期时序 一般外部设备的中断是通过INTR引脚向CPU发出中断请求的,这个可屏蔽中断请求信号的有效电平(高电平),必须维持到CPU响应中断为止。若标志TF1,表示CPU允许中断,则CPU在执行完当前指令后响应中断。第第5 5章章 8086 8086的总线操作的总线操作5.3.5 总线保持请求与保持响应的时序 当系统中CPU之外的总线主设备需要占用总线时,就向CPU发出一个有效的总线保持请求信号HOLD,这个HOLD信号可能与时钟信号不同步,当CPU在每个时钟周期的上升沿检测到该信号时,在当前总线周期的T4后或下一个总线周期的T1后,CPU发出一个有效的保持响应信号HLDA,并让出总线。第第5 5章章 8086 8086的总线操作的总线操作5.4 最大模式下的8086时序分析 关于最大模式下的8088时序,我们只介绍对存储器和外设端口的读/写操作时序。 与最小模式下的读/写操作时序一样,最大模式下的基本总线周期也是由4个T状态组成的。当存储器或外设端口的工作速度较慢时,也需在T3状态后插入一个或几个等待周期TW。与最小模式下时序相比,最大模式不同之处在于:最大模式下的时序,除CPU有关信号外,还要特别考虑总线控制器8288所产生的有关控制信号和命令信号。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 文学/艺术/历史 > 人文/社科

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