资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第章8086的总线操作和时序,本章内容,最小组态下的基本引脚,最小组态下的总线时序,最小组态下的总线形成,1,概况,1,您的内容打在这里,或者通过复制您的文本后。,概况,2,您的内容打在这里,或者通过复制您的文本后。,概况,3,您的内容打在这里,或者通过复制您的文本后。,+,+,+,整体概况,5.1 概述,时钟周期(T状态),计算机是一个,复杂的时序逻辑电路,,时序逻辑电路都,有“时钟”信号。计算机的“时钟”是由振荡源产生的、幅度和周期不变的节拍脉冲,每个脉冲周期称为,时钟周期,,又称为,T状态,。,计算机是在时钟脉冲的统一控制下,一个节拍一个节拍,地工作的。,总线周期,是指CPU通过总线操作与外部(存储器或I/O端口)进行一次数据交换的过程。,根据总线操作功能的不同,有多种不同的总线周期。如存储器读周期、存储器写周期、I/O读周期、I/O写周期等。,5.1.1 时钟周期(T状态)、总线周期和指令周期,8086的基本总线周期需要4个,时钟周期,4个时钟周期编号为T,1,、T,2,、T,3,和T,4,总线周期中的时钟周期也被称作“T状态”,时钟周期的时间长度就是时钟频率的倒数,当需要延长总线周期时插入等待状态Tw,CPU进行内部操作,没有对外操作时,其引脚就处于空闲状态Ti,指令周期,每条指令的执行包括取指令、译码和执行。,执行一条指令所需要的时间称为指令周期。,指令指令周期是,由,1,个或多个总线周期组合而成,。或者说,指令周期可以被划分为若干个总线周期。,8086,中的指令码最短的只需要一个字节,多的有,6,个字节。多字节指令,取指(存储器读)就需要多个总线周期;在指令的执行阶段,由于各种不同寻址方式,需要的总线周期个数也各不相同。因此,8086,的,指令周期是不等长的,。,对于,8086CPU,来说,在,EU,执行指令的时候,,BIU,可以取下一条指令。由于,EU,和,BIU,可以并行工作,,8086,指令的最短执行时间可以是两个时钟周期,一般的加、减、比较、逻辑操作是几十个时钟周期,最长的为,16,位乘除法约要,200,个时钟周期。,演示,5.2 处理器总线,外部特性表现在其引脚信号上,学习时请特别关注以下几个方面:,指引脚信号的定义、作用;通常采用英文单词或其缩写表示,信号从芯片向外输出,还是从外部输入芯片,或者是双向的,起作用的逻辑电平高、低电平有效上升、下降边沿有效,输出正常的低电平、高电平外,还可以输出高阻的第三态,有效电平,三态能力,信号的流向,引脚的功能,5.2.1 8086的两种组态,当8086 CPU与存储器和外设构成一个计算机的硬件系统时,根据所连的存储器和外设的规模,8086可以有两种不同的组态。,两种组态构成两种不同规模的应用系统,最小组态模式,构成小规模的应用系统,8086本身提供所有的系统总线信号,最大组态模式,构成较大规模的应用系统,例如可以接入数值协处理器8087,8086和总线控制器8288共同形成系统总线信号,两种组态利用MN/MX*引脚区别,MN/MX*接高电平为最小组态模式,MN/MX*接低电平为最大组态模式,两种组态下的内部操作并没有区别,IBM PC/XT采用最大组态,我们以最小组态展开基本原理,通常在信号名称加,上划线(如:,MX,)或星号(如:,MX*,),表示低电平有效,8086的引脚图,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,GND,AD,14,AD,13,AD,12,AD,11,AD,10,AD,9,AD,8,AD,7,AD,6,AD,5,AD,4,AD,3,AD,2,AD,1,AD,0,NMI,INTR,CLK,GND,VCC,A,15,A,16,/S,3,A,17,/S,4,A,18,/S,5,A,19,/S,6,BHE*/S7,MN/MX*,RD*,HOLD (RQ)*/GT0*),HLDA (RQ*/GT1*),WR*(LOCK*),M/IO*(S2*,),DT/R*(S1*,),DEN*(S0,*,),ALE(QS0),INTA(QS1),TEST*,READY,RESET,8086,5.2.2 最小组态的引脚信号,分类学习这40个引脚(总线)信号,数据和地址引脚,读写控制引脚,中断请求和响应引脚,总线请求和响应引脚,其它引脚,1.数据和地址引脚,AD,15,AD,0,(,Address/Data,),(39,216),地址,/,数据,分时复用,引脚,双向、,三态,作为复用引脚,在总线周期的T1状态作为低,16,位地址,线,。,T2、T3、TW状态,作为数据总线。,在DMA方式时,这些引线被置为高阻状态,置为高阻状态。,A,19,/S,6,A,16,/S,3,(,Address/Status,),(3538),地址/状态,分时复用引脚,输出、三态。,在总线周期的T1状态输出高4位地址A,19,A,16。,由于8086/8088对I/0端口的寻址仅用低16位地址线,故A,19,A,16,作为地址总线使用时只能对存储器寻址。,其他时间输出状态信号S,6,S,3,,作用为:,S6:始终为低电平。,S5:输出,指明标志寄存器中中断允许标志IF的当前状态。,S4、S3:编码,指明当前正在使用的段寄存器。,S4,S3,当前正在使用的段寄存器名,0,0,ES,0,1,SS,1,0,CS或未用,1,1,DS,2.读写控制引脚,ALE,(,Address Latch Enable,),(25),地址锁存允许,,输出、高电平有效,是微处理器提供给地址锁存器8282/8283的控制信号,在总线周期的,T,1,状态ALE,引脚高电平有效,,表示当前在地址/数据复用总线上输出的是地址信息,,即,AD,15,AD,0,和,A,19,/S,6,A,16,/S,3,正在传送地址信息,地址锁存器把ALE作为锁存信号,对地址进行锁存。,由于地址信息在这些复用引脚上,出现的时间很短暂,,所以系统可以利用,ALE,引脚将地址锁存起来,注意:ALE没有高阻状态,M/IO*,(,Memory/Input and Output,),(28),I/O或存储器访问,,输出、三态,该引脚输出低电平时,表示CPU将访问I/O端口,这时地址总线A,15,A,0,提供16位I/O口地址,该引脚输出高电平时,表示CPU将访问存储器,这时地址总线A,19,A,0,提供20位存储器地址,DMA方式:高阻状态,WR*,(,Write,),(29),写控制,,输出、三态、低电平有效,T,2,、T,3,、T,W,期间有效时,表示CPU正在写出数据给存储器或I/O端口,RD*,(Read),(32),读控制,,输出、三态、低电平有效,T,2,、T,3,、T,W,期间有效时,表示CPU正在从存储器或I/O端口读入数据,DMA方式:高阻状态,M/IO*、WR*和RD*是最基本的控制信号,组合后,控制4种基本的总线周期,总线周期,M/IO*,WR*,RD*,存储器读,高,高,低,存储器写,高,低,高,I/O读,低,高,低,I/O写,低,低,高,READY,(22),存储器或I/O口就绪,,输入、高电平有效,来自所访问的存储器或I/O设备,有效时表示设备准备就绪,可进行一次数据传输,总线操作周期中(T3状态),CPU会测试该引脚,如果测到高有效,CPU直接进入下一步,如果测到无效,CPU将插入等待周期,等待周期中仍然要监测READY信号,确定是否继续插入等待周期,DEN*,(,Data Enable,),(26),数据允许,,输出、三态、低电平有效。,有效时表示CPU准备好接收和发送数据。,可以用,DEN*,为收发器(8286/8287)提供一选通信号。,DT/R*,(Data Transmit/Receive),(27),数据发送/接收,,输出、三态。,表明当前总线上数据的流向。,高电平时数据自CPU输出(发送),低电平时数据输入CPU(接收),可用DT/R*信号来,控制数据总线上的双向收发器的数据传送方向。,DMA方式:高阻状态,BHE*/S7,(,Bus High Enable/Status,),(34),高8位数据总线允许/状态,,输出,三态,分时复用。,T1状态:输出BHE,*,信号,表示高8位数据线上的数据是否有效。,其他状态:作为S7输出,是一个未定义的状态信号。,BHE,*和低位地址A0配合表示不同的数据传送操作:,读/写操作,BHE*,A0,所用数据引脚,从,偶,地址开始的一个,字,0,0,AD15AD0,偶,地址的一个,字节,1,0,AD7AD0,奇,地址的一个,字节,0,1,AD15AD8,从,奇,地址开始的一个,字,(两个总线周期),0,1,AD15AD8(低8位数据),1,0,AD7AD0 (高8位数据),3.中断请求和响应引脚,INTR,(,Interrupt Request,),(18),可屏蔽中断请求,,输入、高电平有效。,有效时,表示请求设备向CPU申请可屏蔽中断,该中断请求是否响应受控于IF(中断允许标志),可以被屏蔽掉。,CPU在执行,每条指令,的最后一个时钟周期对INTR信号进行采样,若IF=1,且又接收到INTR信号,则CPU在结束当前指令后,响应中断请求,进入一中断处理子程序。,INTA*,(,Interrupt Acknowledge,),(24),可屏蔽中断响应,,输出、低电平有效,有效时,表示来自INTR引脚的中断请求已被CPU响应,CPU进入中断响应周期,NMI,(,Non-Maskable Interrupt,),(17),不可屏蔽中断请求,,输入、上升沿有效,有效表示外界向CPU申请不可屏蔽中断,该中断请求不能被CPU屏蔽,所以优先级别高于INTR(可屏蔽中断),主机与外设进行数据交换通常采用可屏蔽中断,不可屏蔽中断通常用于处理掉电等系统故障,4.总线请求和响应引脚,HOLD,(31),总线保持,(即总线请求),输入高电平有效,有效时,表示总线请求设备向CPU申请占有总线,该信号从有效回到无效时,表示总线请求设备对总线的使用已经结束,通知CPU收回对总线的控制权,HLDA,(,HOLD Acknowledge,),(30),总线保持响应,(总线响应),输出、高电平有效,有效表示CPU已响应总线请求并已将总线释放,此时CPU的,地址总线,、,数据总线,及,具有三态输出能力的控制总线,将全面呈现高阻,使总线请求设备可以顺利接管总线,待到总线请求信号HOLD无效,总线响应信号HLDA也转为无效,CPU重新获得总线控制权,5.其它引脚,RESET,(21),复位请求,,输入、高电平有效,该信号有效,将使CPU回到其初始状态;当再度返回无效时,CPU将重新开始工作,复位时要求该信号至少持续四个时钟周期,若是初次加电,则需要保持至少50S,8086复位后CSFFFFH、IP0000H,所以程序入口在物理地址FFFF0H。其他寄存器清0。,CLK,(,Clock,),(19),时钟输入,系统通过该引脚给CPU提供内部定时信号,8086的标准工作时钟为5MHz,IBM PC/XT机的8086采用了4.77MHz的时钟,其时钟周期约为210ns,Vcc,(40),电源输入,,向,CPU,提供,5V,电源,GND,(1、20),接地,,向,CPU,提供参考地电平,MN/MX*,(,Minimum/Maximum,),(33),组态选择,,输入,接高电平时,8086引脚工作在最小组态;反之,8086工作在最大组态,TEST*,(23),测试,,输入、低电平有效,与,WAIT,指令配合使用,当CPU执行,WAIT,指令时,CPU处于等待状态,并且每隔5个T状态对TEST信号测试一次,如果有效,则结束等待状态,继续执行WAIT指令
展开阅读全文