第二章80X86微处理器_第1页
第二章80X86微处理器_第2页
第二章80X86微处理器_第3页
第二章80X86微处理器_第4页
第二章80X86微处理器_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 8086/80888086/8088微处理器微处理器 本章学习目标本章学习目标 8086/80888086/8088微处理器的功能结构及指令执行的微处理器的功能结构及指令执行的操作过程操作过程 8086/80888086/8088系统存储器组织和堆栈系统存储器组织和堆栈 8086/80888086/8088在最大和最小模式下引脚功能在最大和最小模式下引脚功能 8086/80888086/8088在最大和最小模式下的系统组织在最大和最小模式下的系统组织 8086/8088CPU8086/8088CPU的操作时序的操作时序2.1 8086/8088微处理器的功能结构微处理器的功能结构

2、8086:Intel系列的系列的16位微处理器,位微处理器,16条数据线、条数据线、20条地条地址线,可寻址地址范围址线,可寻址地址范围220=1MB,时钟频率为时钟频率为5MHz5MHz 。8088:内部与:内部与8086兼容,也是一个兼容,也是一个16位微处理器,只是位微处理器,只是外部数据总线为外部数据总线为8位,所以称为准位,所以称为准16位微处理器。位微处理器。8086/8088的的内部结构内部结构从功能上分成两个单元:从功能上分成两个单元:总线接口单元总线接口单元BIU管理管理CPU与系统总线的接与系统总线的接 口,口,负责负责CPU对存储器和对存储器和I/O接口进行访问接口进行访

3、问执行单元执行单元EU负责指令的译码、执行负责指令的译码、执行两个单元相互独立,分别完成各自操作;它们可以两个单元相互独立,分别完成各自操作;它们可以并并行执行行执行,实现指令取指和执行的,实现指令取指和执行的流水线流水线操作操作AH ALBH BLCH CLDH DL SP BP DI SI通通用用寄寄存存器器运算寄存器运算寄存器ALU标志寄存器标志寄存器执行部分执行部分控制电路控制电路1 2 3 4 5 6 CS DS SS ES IP 内部寄存器内部寄存器I/O控制控制电路电路地址加地址加法器法器20位位16位位指令队列缓冲器指令队列缓冲器外外部部总总线线执行部件执行部件EU总线接口部件

4、总线接口部件BIU8086CPU结构图结构图1、总线接口部件、总线接口部件BIU1)功能:)功能:(1)从存储器取指令送到指令队列。)从存储器取指令送到指令队列。(2)CPU执行指令时,到指定的位置取操作数,或者执行指令时,到指定的位置取操作数,或者将其送至要求的位置单元中。将其送至要求的位置单元中。2)组成:)组成:(1)四个)四个16位段地址寄存器:存放段地址位段地址寄存器:存放段地址 CS:代码段寄存器;:代码段寄存器;DS:数据段寄存器;:数据段寄存器; ES:附加段寄存器;:附加段寄存器;SS: 堆栈段寄存器。堆栈段寄存器。(2)16位指令指针寄存器位指令指针寄存器IP(PC):用来

5、控制):用来控制CPU的指令执行顺序,它和代码段寄存器的指令执行顺序,它和代码段寄存器CS一起可以确定一起可以确定当前所要取的指令的内存地址。顺序执行程序时,当前所要取的指令的内存地址。顺序执行程序时,CPU每取一个指令字节,每取一个指令字节,IP自动加自动加1,指向下一个要读,指向下一个要读取的指令字节取的指令字节 。(3)20位的地址加法器:产生位的地址加法器:产生20位地址。位地址。CPU内无论内无论是段地址寄存器还是偏移地址量都是是段地址寄存器还是偏移地址量都是16位的,通过地位的,通过地址加法器产生址加法器产生20位地址。位地址。(4)指令队列缓冲器:)指令队列缓冲器:8086:六字

6、节、:六字节、8088:四字节,:四字节,在执行指令的同时,将取下一条指令,并放入指令队在执行指令的同时,将取下一条指令,并放入指令队列缓冲器中。列缓冲器中。CPU执行完一条指令后,可以执行下一执行完一条指令后,可以执行下一条指令(流水线技术),提高条指令(流水线技术),提高CPU效率。效率。2、执行部件、执行部件EU1)功能:)功能:(1)从指令队列中取出指令)从指令队列中取出指令(2)对指令进行译码,发出相应的控制信号)对指令进行译码,发出相应的控制信号(3)接收由总线接口送来的数据或发送数据至接口)接收由总线接口送来的数据或发送数据至接口(4)进行算术逻辑运算)进行算术逻辑运算2)组成:

7、)组成:(1)四个)四个16位通用数据寄存器:位通用数据寄存器:AX、BX、CX、DX,可以存放可以存放16位的操作数,也可分别分为两个位的操作数,也可分别分为两个8位的寄存位的寄存器(器(AL、AH;BL、BH;CL、CH;DL、DH)来使)来使用。其中用。其中AX称为累加器,称为累加器,BX称为基址寄存器,称为基址寄存器,CX称称为计数寄存器,为计数寄存器,DX称为数据寄存器。称为数据寄存器。(2)指针和变址寄存器:存放地址指针。)指针和变址寄存器:存放地址指针。SP堆栈指针寄存器:指示当前堆栈段顶部的偏移地址堆栈指针寄存器:指示当前堆栈段顶部的偏移地址BP基址指针寄存器:指示堆栈段中一些

8、特殊数据的起基址指针寄存器:指示堆栈段中一些特殊数据的起始地址始地址DI目的变址寄存器:存放待传送的字符串的目的首地址目的变址寄存器:存放待传送的字符串的目的首地址SI 源变址寄存器:存放待传送的字符串的源首偏移地址源变址寄存器:存放待传送的字符串的源首偏移地址当当SI、DI和和BP不作指示器和变址寄存器使用时,也可将不作指示器和变址寄存器使用时,也可将它们当作一般数据寄存器使用,用来存放操作数或运算它们当作一般数据寄存器使用,用来存放操作数或运算结果。而结果。而SP只能作堆栈指示器,不能作数据寄存器使用。只能作堆栈指示器,不能作数据寄存器使用。(3)算术逻辑单元)算术逻辑单元ALU 完成完成

9、8位或者位或者16位二进制算术和逻辑运算。位二进制算术和逻辑运算。(4)数据暂存寄存器)数据暂存寄存器 协助协助ALU完成运算,暂存参加运算的数据。完成运算,暂存参加运算的数据。(5)执行部件的控制电路)执行部件的控制电路从总线接口的指令队列取出指令操作码,通过译码电路从总线接口的指令队列取出指令操作码,通过译码电路分析,发出相应的控制命令,控制分析,发出相应的控制命令,控制ALU数据流向。数据流向。(6)标志寄存器)标志寄存器FR:用来存放:用来存放8086/8088CPU在工作在工作过程中的状态。过程中的状态。16位寄存器,其中有位寄存器,其中有7位未用。位未用。D15D0 OF DF I

10、F TF SF ZF AF PF CF进进借借位位标标志志奇奇偶偶标标志志半半进进借借位位标标志志零零标标志志符符号号标标志志单单步步中中断断中中断断允允许许方方向向标标志志溢溢出出标标志志1-有进、借位有进、借位0-无进、借位无进、借位1-低低8位有偶数个位有偶数个10-低低8位有奇数个位有奇数个11-低低4位向高位向高4位有进、借位位有进、借位0-低低4位向高位向高4位无进、借位位无进、借位1-结果为结果为00-结果不为结果不为0PF:例例 5439H+456AH=?求运算后的各个状态标志。?求运算后的各个状态标志。2.2 8086/8088CPU执行程序的操作过程执行程序的操作过程(1)

11、20位地址的形成,并将此地址送至程序存储器指位地址的形成,并将此地址送至程序存储器指定单元,从该单元取出指令字节,依次放入指令队列定单元,从该单元取出指令字节,依次放入指令队列中。中。(2)每当)每当8086的指令队列中有的指令队列中有2个空字节(个空字节(8088指令指令队列中有队列中有1个空字节)时,总线接口部件就会自动取指个空字节)时,总线接口部件就会自动取指令至队列中。令至队列中。(3)执行部件从指令队列首取出指令代码,执行该指)执行部件从指令队列首取出指令代码,执行该指令。令。(4)当队列已满,执行部件又不使用总线时,总线接)当队列已满,执行部件又不使用总线时,总线接口部件进入空闲状

12、态。口部件进入空闲状态。(5)执行转移指令、调用指令、返回指令时,先清空)执行转移指令、调用指令、返回指令时,先清空队列内容,再将要执行的指令放入队列中。队列内容,再将要执行的指令放入队列中。2.3 8086/8088系统存储器的组织和堆栈系统存储器的组织和堆栈1、8086/8088系统存储器的组织系统存储器的组织 8086/8088 8086/8088 CPU有有20条地址线,可以寻址多达条地址线,可以寻址多达220(1M)个存储单元,即可以配置个存储单元,即可以配置1MB的存储器,地址编号为的存储器,地址编号为00000H0FFFFFH存储空间按存储空间按8位二进制位进行组织,即每个存储单

13、元可位二进制位进行组织,即每个存储单元可以存储一个字节的数据,若存放以存储一个字节的数据,若存放“字字”数据数据(16bits),则存放在两个相邻的存储单元中,则存放在两个相邻的存储单元中,高字节数据存放在高高字节数据存放在高地址存储单元中,低字节存放在低地址单元中地址存储单元中,低字节存放在低地址单元中 指令代码、字节数据、字数据可以自由的存放在任何指令代码、字节数据、字数据可以自由的存放在任何地址的存储单元中地址的存储单元中(1) 8086/8088系统存储器的分段结构系统存储器的分段结构 8086/8088是是16位的微处理器,即位的微处理器,即CPU内部寄存器皆内部寄存器皆为为16位,

14、位,ALU也只能进行也只能进行16位运算,所以位运算,所以8086/ 8088 CPU对地址只能进行对地址只能进行16位运算,寻址空间最多位运算,寻址空间最多为为216(64K)字节,所以引入字节,所以引入“分段分段”概念,以获得概念,以获得20位地址位地址 8086/8088 CPU把把1MB的存储器空间划分为任意的一的存储器空间划分为任意的一些存储段,一个存储段是存储器中可独立寻址的一个些存储段,一个存储段是存储器中可独立寻址的一个逻辑单位,也称逻辑段,每个段都由连续的存储单元逻辑单位,也称逻辑段,每个段都由连续的存储单元组成,其长度可达组成,其长度可达64K字节字节 每段第一个字节的地址

15、就是每段第一个字节的地址就是“段起始地址段起始地址”,由软件,由软件设定。设定。 8086/8088 CPU中有四个段寄存器:中有四个段寄存器:CS,DS,SS和和ES,这四个段寄存器存放了,这四个段寄存器存放了CPU当前可以寻址的四当前可以寻址的四个段的基址个段的基址几个段可以相互重叠,也可以指向同一个空间几个段可以相互重叠,也可以指向同一个空间(2)段基址和段内偏移量段基址和段内偏移量8086/8088与存储器之间的信息交换都是使用与存储器之间的信息交换都是使用20位的位的物理地址,而程序中所涉及的地址都是物理地址,而程序中所涉及的地址都是16位的逻辑地位的逻辑地址,对所给定的任一存储单元

16、而言有两部分逻辑地址:址,对所给定的任一存储单元而言有两部分逻辑地址:段基址段基址:决定了该段第一个字节的位置,存放在段:决定了该段第一个字节的位置,存放在段寄存器:寄存器:CS、SS、DS、ES中中段内偏移量段内偏移量:该存储单元相对于该段起点字节的距:该存储单元相对于该段起点字节的距离,也称为离,也称为偏移地址偏移地址,存放在,存放在IP、SP、BP、BX、SI、DI以及它们的组合之中以及它们的组合之中(3)逻辑地址和物理地址逻辑地址和物理地址存储器中的每个存储单元都可以用两个形式的地址来存储器中的每个存储单元都可以用两个形式的地址来表示:表示:实际地址实际地址(或称(或称物理地址物理地址

17、)和)和逻辑地址逻辑地址。实际地址实际地址:也称物理地址,是用唯一的:也称物理地址,是用唯一的20位二进制数位二进制数所表示的地址,规定了所表示的地址,规定了1M字节存储体中某个具体字节存储体中某个具体单元的地址单元的地址 。逻辑地址逻辑地址在程序中使用,即段地址:偏移地址在程序中使用,即段地址:偏移地址 。(4)物理地址的形成物理地址的形成物理地址有两部分组成:物理地址有两部分组成:段基址和偏移地址。段基址和偏移地址。8086/8088CPU中有一个地址加法器,它将段寄存器提中有一个地址加法器,它将段寄存器提供的段地址自动乘以供的段地址自动乘以10H即左移即左移4位,然后与位,然后与16位的

18、偏位的偏移地址相加,并锁存在物理地址锁存器中。如图所示。移地址相加,并锁存在物理地址锁存器中。如图所示。物理地址物理地址=段基址段基址 * 16 +偏移地址。偏移地址。段基址:段基址:CS、DS、ES、SS。偏移地址:偏移地址:IP、DI、SI、BP、SP等。等。段寄存器值段寄存器值偏移量偏移量+物理地址物理地址16位位4位位16位位20位位存储器物理地址的计算方法存储器物理地址的计算方法 CS 0000 IP代码段代码段 DS或或ES 0000 SI、DI或或BX SS 0000 SP或或BP数据段数据段堆栈段堆栈段存储器存储器段寄存器和偏移地址寄存器组合关系段寄存器和偏移地址寄存器组合关系

19、例例 某程序的数据段中存有两个数据字某程序的数据段中存有两个数据字1234H和和5A6BH,若已知,若已知DS=5AA0H,它们的偏移地址分别是,它们的偏移地址分别是245AH和和3245H,试画出它们在存储器中的存放情况,试画出它们在存储器中的存放情况2 、堆栈、堆栈堆栈主要用于暂存数据和在过程调用或处理中断时暂堆栈主要用于暂存数据和在过程调用或处理中断时暂存断点信息和现场数据保护。存断点信息和现场数据保护。 (1)堆栈的概念)堆栈的概念 堆栈是在存储器中开辟的一片数据存储区,这片存储堆栈是在存储器中开辟的一片数据存储区,这片存储区的一端固定,另一端活动,且只允许数据从活动端区的一端固定,另

20、一端活动,且只允许数据从活动端进出。采用进出。采用“先进后出先进后出”的规则的规则 。 (2)堆栈的组织)堆栈的组织堆栈指示器堆栈指示器SP,它总是指向堆栈的栈顶。堆栈的伸,它总是指向堆栈的栈顶。堆栈的伸展方向既可以从大地址向小地址,也可以从小地址向展方向既可以从大地址向小地址,也可以从小地址向大地址。大地址。8086/8088的堆栈的伸展方向是从大地址向的堆栈的伸展方向是从大地址向小地址。小地址。 例例 已知堆栈段寄存器已知堆栈段寄存器SS=A000H,堆栈指示器,堆栈指示器SP=0100H,试将数据,试将数据1234H推入堆栈,画出进栈推入堆栈,画出进栈示意图。最后栈顶示意图。最后栈顶SP

21、=?2.4 8086/8088微处理器的引脚功能微处理器的引脚功能在学习引脚功能时请特别关注以下几个方面:在学习引脚功能时请特别关注以下几个方面: 引脚的功能引脚的功能:通常从其英文名称去记忆:通常从其英文名称去记忆 信号的流向信号的流向:信号从芯片向外输出,还是从外部输:信号从芯片向外输出,还是从外部输 入到芯片,还是双向的入到芯片,还是双向的 有效电平有效电平:起作用的逻辑电平是高电平、低电平、:起作用的逻辑电平是高电平、低电平、 还是上升沿、下降沿还是上升沿、下降沿 三态能力三态能力:输出正常的低电平、高电平外,是否还:输出正常的低电平、高电平外,是否还 可以输出高阻的第三态(引脚悬空状

22、态)可以输出高阻的第三态(引脚悬空状态) 根据应用系统规模的不同,使根据应用系统规模的不同,使8086/8088 CPU可以在可以在两种模式下工作:两种模式下工作: (1)系统的最小模式:系统的最小模式: 只有一个只有一个8086/8088 CPU 8086/8088本身提供所有的系统总线信号本身提供所有的系统总线信号 构成小规模的应用系统构成小规模的应用系统 (2)系统的最大模式:系统的最大模式: 有两个或两个以上的有两个或两个以上的CPU,一个为主,一个为主CPU8086/8088,另,另一个为协一个为协CPU8087/8089 8086/8088和总线控制器和总线控制器8288共同形成系

23、统总线信号共同形成系统总线信号 构成较大规模的应用系统构成较大规模的应用系统 以以8086为例,具体介绍一下为例,具体介绍一下最小模式最小模式下和下和最大模式最大模式下下各位引脚功能,如出现功能不同的引脚再具体讲解各位引脚功能,如出现功能不同的引脚再具体讲解 01020304050607080910111213141516171819204039383736353433323130292827262524232221GNDAD14/A14AD13/A13AD12/A12AD11/A11AD10/A10AD9/A9AD8/A8AD7AD6AD5AD4AD3AD2AD1AD0NMIINTRCLKG

24、NDVCC(5V)AD15/A15A16/S3A17/S4A18/S5A19/S6/BHE/S7 /SS0 (HIGH)MN/MX/RDHOLD(/RQ/GT0) HLDA(/RQ/GT1)/WR(/LOCK)M/IO /IO/M (/S2)DT/R(/S1)/DEN(/S0)ALE(QS0)/INTA(QS1)/TESTREADYRESET8086/80881、地址、地址/数据总线数据总线AD15-AD0:地址:地址/数据复用引脚,双向,三态。数据复用引脚,双向,三态。(8086)AD15-AD0:16位地址总线位地址总线A15-A0,输出访,输出访问存储器或问存储器或I/O的地址信息。的地

25、址信息。(8086)AD15-AD0:16位数据总线位数据总线D15-D0,与存储,与存储器和器和I/O设备交换数据信息。设备交换数据信息。(8088)AD7-AD0:8位数据总线位数据总线D7-D0,与存储器和,与存储器和I/O设备交换数据信息。设备交换数据信息。地址地址/数据总线复用,分时工作。数据总线复用,分时工作。2、地址、地址/状态总线状态总线A19/S6-A16/S3:地址:地址/状态总线复用引脚,输出,三态状态总线复用引脚,输出,三态A19/S6-A16/S3:输出访问存储器的输出访问存储器的20位地址的高位地址的高4位位地址地址A19-A16。A19/S6-A16/S3:输出输

26、出CPU的工作状态。的工作状态。A19/S6-A16/S3:分时工作,分时工作,T1状态:输出地址的高状态:输出地址的高4位信息;位信息;T2、T3、T4状态:输出状态信息。状态:输出状态信息。S6:总是低电平,总是低电平,表示表示8086/8088当前与总线相连。当前与总线相连。S5:表明中断允许标志当前的设置。表明中断允许标志当前的设置。S5=0,表示,表示CPU中断是关闭的,禁止一切可屏蔽中断源的中断请求中断是关闭的,禁止一切可屏蔽中断源的中断请求;S5=1,表示,表示CPU中断是开放的,允许一切可屏蔽中断中断是开放的,允许一切可屏蔽中断源的中断申请。源的中断申请。S4、S3:指出当前使

27、用段寄存器的情况。指出当前使用段寄存器的情况。 S4、S3组合所对应的段寄存器情况组合所对应的段寄存器情况 S4 S3 段寄存器段寄存器 0 0 当前正在使用当前正在使用ES 0 1 当前正在使用当前正在使用SS 1 0 当前正在使用当前正在使用CS 1 1 当前正在使用当前正在使用DS3、控制总线、控制总线(1) /BHE/S7:高高8位数据总线允许位数据总线允许/状态复用引脚。在状态复用引脚。在总线周期的总线周期的T1状态,此引脚输出状态,此引脚输出/BHE信号,表示高信号,表示高8位数据线位数据线D15-D8上的数据有效。上的数据有效。在在T2、T3、TW和和T4状态时,此引脚输出状态时

28、,此引脚输出S7状态信号。状态信号。/BHE、A0组合:组合:/BHE A0 总线使用情况总线使用情况 0 0 从偶地址单元开始,在从偶地址单元开始,在16位数据总线上进行字传送位数据总线上进行字传送 0 1 从奇地址单元开始,在高从奇地址单元开始,在高8位数据总线上进行字节传送位数据总线上进行字节传送 1 0 从偶地址单元开始,在低从偶地址单元开始,在低8位数据总线上进行字节传送位数据总线上进行字节传送 1 1 无效无效S7:8086中无定义。中无定义。 8088中,在最大模式中,为高电平;中,在最大模式中,为高电平; 在最小模式中,输出在最小模式中,输出/SS0信号,此信号信号,此信号与其

29、它信号合作将决定总线周期的读与其它信号合作将决定总线周期的读/写动作。写动作。 (2)/RD:读信号,三态输出,低电平有效。读信号,三态输出,低电平有效。/RD=0,表示当前表示当前CPU正在对存储器或正在对存储器或I/O端口进行读操作。端口进行读操作。(3)/WR:写信号,三态输出,低电平有效写信号,三态输出,低电平有效。/WR=0,表示当前表示当前CPU正在对存储器或正在对存储器或I/O端口进行写操作。端口进行写操作。(4)M/IO:存储器或存储器或IO端口访问信号,三态输出。端口访问信号,三态输出。M/IO=1,表示,表示CPU正在访问存储器;正在访问存储器;M/IO=0,表示,表示CP

30、U正在访问正在访问IO端口。端口。(5)READY:准备就绪信号,输入,高电平有效。准备就绪信号,输入,高电平有效。READY=1,表示,表示CPU访问的存储器或访问的存储器或IO端口已准备好端口已准备好传送数据传送数据。若。若CPU在总线周期在总线周期T3状态检测到状态检测到READY=0,表示未准备好,表示未准备好,CPU自动插入一个或多个等待状态自动插入一个或多个等待状态TW,直到直到READY=1为止。为止。(6)INTR:可屏蔽中断请求信号,输入,高电平有效。可屏蔽中断请求信号,输入,高电平有效。当当INTR=1,表示外设向,表示外设向CPU发出中断请求,发出中断请求,CPU在当在当

31、前指令周期的最后一个前指令周期的最后一个T状态去采样该信号,若此时,状态去采样该信号,若此时,IF=1,CPU响应中断,执行中断服务程序。响应中断,执行中断服务程序。(7)/INTA:中断响应信号,输出,低电平有效。中断响应信号,输出,低电平有效。表表示示CPU响应了外设发来的中断申请信号响应了外设发来的中断申请信号INTR。(8)NMI:不可屏蔽中断请求信号,输入,上升沿触不可屏蔽中断请求信号,输入,上升沿触发。该请求信号不受发。该请求信号不受IF状态的影响,也不能用软件屏蔽,状态的影响,也不能用软件屏蔽,一旦该信号有效,则执行完当前指令后立即响应中断。一旦该信号有效,则执行完当前指令后立即

32、响应中断。(9)/TEST:测试信号,输入,低电平有效。当测试信号,输入,低电平有效。当CPU执行执行WAIT指令时,指令时,每隔每隔5个时钟周期对个时钟周期对/TEST进行一次进行一次测试测试,若,若/TEST=1,继续等待,直到,继续等待,直到/TEST=0。(10)RESET:复位信号,输入,高电平有效。:复位信号,输入,高电平有效。RESET信号至少要保持信号至少要保持4个时钟周期。个时钟周期。复位时:标志寄复位时:标志寄存器、存器、IP、DS、SS、ES为为0,CS=FFFFH,复位后,复位后CPU从从FFFF0H处开始处开始 执行。执行。(11)ALE:地址锁存允许信号,输出,高电

33、平有效。地址锁存允许信号,输出,高电平有效。用来锁存地址信号用来锁存地址信号A15-A0,分时使用,分时使用AD15-AD0地址地址/数据总线。数据总线。(12)DT/R:数据发送数据发送/接收控制信号,三态输出。此接收控制信号,三态输出。此信号控制数据总线上的驱动器信号控制数据总线上的驱动器8286的数据传送方向,的数据传送方向,DT/R=1,发送数据,发送数据-写操作;写操作;DT/R=0,接收数据,接收数据-读操作。读操作。(13)/DEN:数据允许信号,三态输出,低电平有效。数据允许信号,三态输出,低电平有效。作为数据总线上驱动器作为数据总线上驱动器8286的选通信号。的选通信号。(1

34、4)HOLD:总线请求信号,输入,高电平有效。当总线请求信号,输入,高电平有效。当系统中系统中CPU之外的另一个控制器要求使用总线时,通之外的另一个控制器要求使用总线时,通过它向过它向CPU发一高电平的请求信号。发一高电平的请求信号。(15)HLDA:总线请求响应信号,输出,高电平有效。总线请求响应信号,输出,高电平有效。当当HLDA有效时,表示有效时,表示CPU对其它控制器的总线请求作对其它控制器的总线请求作出响应出响应,与此同时,所有与三总线相接的,与此同时,所有与三总线相接的CPU的线脚的线脚呈现高阻抗状态,从而让出总线。呈现高阻抗状态,从而让出总线。(16)MN/MX:工作模式选择信号

35、,输入。工作模式选择信号,输入。MN/MX=1,表示,表示CPU工作在最小模式系统;工作在最小模式系统;MN/MX=0,表示,表示CPU工作在最大模式系统。工作在最大模式系统。(17)CLK:主时钟信号,输入。主时钟信号,输入。8086/8088的时钟频的时钟频率为率为5MHZ。4、电源线和地线、电源线和地线8086/8088采用单采用单+5V,1、20引脚为地线。引脚为地线。5、最大模式下的有关引脚、最大模式下的有关引脚(1)QS1、QS2:指令队列状态信号,输出。:指令队列状态信号,输出。 QS1 QS2 含义含义 0 0 无操作无操作 0 1 将指令首字节送入指令队列将指令首字节送入指令

36、队列 1 0 队列为空队列为空 1 1 将指令其余字节送指令队列将指令其余字节送指令队列(2)/S2、/S1、/S0:总线周期状态信号,三态输出。:总线周期状态信号,三态输出。 / S2、/S1、/S0状态信号的编码状态信号的编码 /S2 /S1 /S0 操作过程操作过程 产生信号产生信号 0 0 0 发中断响应信号发中断响应信号 /INTA 0 0 1 读读I/O端口端口 IORC 0 1 0 写写I/O端口端口 IOWC 0 1 1 暂停暂停 无无 1 0 0 取指令取指令 /MRDC 1 0 1 读存储器读存储器 /MRDC 1 1 0 写存储器写存储器 /AMWC 1 1 1 无作用无

37、作用 无无(3)/RQ/GT1、/RQ/GT2:总线请求信号(输入)总线请求信号(输入)/总线请求允许信号(输出),双向,低电平有效。总线请求允许信号(输出),双向,低电平有效。(4)/LOCK:总线封锁信号,三态输出,低电平有总线封锁信号,三态输出,低电平有效。效。/LOCK=0,CPU不允许其它控制器占用总线。不允许其它控制器占用总线。什么是分时复用?什么是分时复用? 分时复用就是一个引脚在不同的时刻具有两个分时复用就是一个引脚在不同的时刻具有两个甚至多个作用甚至多个作用 总线复用的目的是为了减少对外引脚个数总线复用的目的是为了减少对外引脚个数 8088 /8086CPU的数据地址线采用了

38、总线复用的数据地址线采用了总线复用方法,数据和地址引脚复用方法,数据和地址引脚复用 在访问存储器或外设的在访问存储器或外设的总线操作周期总线操作周期中,这些中,这些引脚在第一个时钟周期输出存储器或引脚在第一个时钟周期输出存储器或I/O端口端口的地址,其他时间用于传送数据的地址,其他时间用于传送数据2.5 8086/8088 8086/8088在最大和最小模式下的系统组织在最大和最小模式下的系统组织 8086/8088 CPU 8086/8088 CPU 必须加上必要的支持芯片,比如时必须加上必要的支持芯片,比如时钟电路、地址锁存器、总线驱动器、存储器和钟电路、地址锁存器、总线驱动器、存储器和I

39、/OI/O接接口电路及外设,就可以构成一个最基本的应用系统。口电路及外设,就可以构成一个最基本的应用系统。 8086/80888086/8088支持芯片:支持芯片:82848284时钟发生器:为时钟发生器:为CPUCPU提供时钟、提供时钟、READYREADY、RESETRESET等信号等信号8282/8283 88282/8283 8位三态输出锁存器:由于数据位三态输出锁存器:由于数据/ /地址地址引脚复用,需要把地址信息分离出来保存引脚复用,需要把地址信息分离出来保存8286/82878286/8287并行双向总线驱动:增加总线带负载并行双向总线驱动:增加总线带负载的能力的能力828882

40、88总线控制器:多总线控制器:多CPUCPU模式(最大模式)模式(最大模式)最小组态总线形成RESET TEST HLDA HOLD NMI INTR INTA M / IO WR RDREADY CLK READYMN / MX+5V控制总线控制总线地址总线地址总线A19 A0数据总线数据总线D7D0 ALE A19A16 AD15 AD 0 DT / R DEN8086CPUSTB 8282OETOE82868284A系统总线系统总线2.6 8086总线的操作时序总线的操作时序指令周期指令周期 一条指令从取出到执行完成所持续的时间,指令一条指令从取出到执行完成所持续的时间,指令 周期由若干

41、个机器周期组成周期由若干个机器周期组成机器周期:机器周期: 完成某一独立操作所持续的时间,如取指令操作完成某一独立操作所持续的时间,如取指令操作码、存储器读码、存储器读/写,机器周期由若干个时钟周期组成写,机器周期由若干个时钟周期组成时钟周期时钟周期 CLK两个时脉冲上升沿之间持续的时间,两个时脉冲上升沿之间持续的时间,CPU最最小的定时单位小的定时单位总线周期总线周期 访问存储器或访问存储器或I/O口的读写机器周期,通常由口的读写机器周期,通常由T1-T4组成组成T1T2T3TWT4总线操作总线操作总线读操作:总线读操作:CPU从存储器或外设读取数据。从存储器或外设读取数据。总线写操作:总线

42、写操作:CPU将数据写入存储器或外设。将数据写入存储器或外设。1、存储器读周期、存储器读周期总线周期包括:总线周期包括:T1、T2、T3、(、(TW)、)、T4时钟周期。时钟周期。(1)T1周期周期M/IO信号:信号:从存储器读还是从从存储器读还是从I/O设备中读数据;设备中读数据;AD15-AD0、A19/S7-A16/S3:确定确定20位地址;位地址;/BHE:选择奇地址存储体选通。选择奇地址存储体选通。ALE:地址锁存信号,以使地址地址锁存信号,以使地址/数据线分开。数据线分开。(2)T2状态状态A19/S6-A16/S3:出现出现S6-S3状态信号。决定段寄存器、状态信号。决定段寄存器、IF状态、状态、8086CPU是否连在总线上。是否连在总线上。AD15-AD0:高阻状态。高阻状态。/RD:由高电平变为低电平,开始进行读操作。由高电平变为低电平,开始进行读操作。/DEN:变低电平,启动数据收发器变低电平,启动数据收发器8286,做好接收数,做好接收数据的准备。据的准备。(3)T3状态状态若存储器或若存储器或I/O端口已做好发送数据准备,则在端口已做好发送数据准备,则在T3状状态期间将数据放到数据总线上,在态期间将数据放到数据总线上,在T3结束时,结束时,CPU从从AD15-AD0上读取数据。上读取数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论