第二章 8086系统结构_第1页
第二章 8086系统结构_第2页
第二章 8086系统结构_第3页
第二章 8086系统结构_第4页
第二章 8086系统结构_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

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

文档简介

1、河北经贸大学信息技术学院,微机原理及接口技术 第二章 8086系统结构,16位微处理器基本结构的特点: 1)引脚功能复用 2)单总线结构 3)可控三态电路,避免总线冲突和信号串扰 4)总线分时复用,第二章 8086系统结构,2.1 8086CPU结构 2.2 8088/8086的引脚及功能 2.3 8086存储器的组织 2.4 8086的系统配置 2.5 8086CPU时序,2.1 8086CPU结构,一、 8086CPU的内部结构 二、 8088/8086的寄存器结构,一、 8086CPU的内部结构,8086属第三代微处理器 运算能力: 数据总线:DB16bit(8086)/ 8bit(80

2、88) 地址总线:AB20bit 内存寻址能力2201MB,组成:16位段寄存器,指令指针IP,20位地址加法器,总线控制逻辑,6字节指令队列。,作用:负责从内存指定单元中取出指令,送入指令流队列中排队;取出指令所需的操作数送EU单元去执行。,工作过程:由段寄存器与IP形成20位物理地址送地址总线,由总线控制电路发出存储器“读”信号,按给定的地址从存储器中取出指令,送到指令队列中等待执行。,*当指令队列有2个或2个以上的字节空余时,BIU自动将指令取到指令队列中。若遇到转移指令等,则将指令队列清空,BIU重新取新地址中的指令代码,送入指令队列。,*指令指针IP由BIU自动修改,IP总是指向下一

3、条将要执行指令的地址。,一、 8086CPU的内部结构 (续),1.总线接口部件BIU,2.指令执行部件EU(Exection Unit),组成:通用寄存器,标志寄存器,ALU,EU控制系统等。,作用:负责分析指令和执行指令,完成指令的操作。,工作过程:从队列中取得指令,进行译码,根据指令要求向EU内部各部件发出控制命令,完成执行指令的功能。若执行指令需要访问存储器或I/O端口,则EU将操作数的偏移地址送给BIU,由BIU取得操作数送给EU。,一、 8086CPU的内部结构 (续),BIU和EU的动作协调原则 BIU和EU按以下流水线技术原则协调工作,共同完成所要求的任务: 每当8086的指令

4、队列中有两个空字节,BIU就会自动把指令取到指令队列中。其取指的顺序是按指令在程序中出现的前后顺序。 每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。在执行指令的过程中,如果必须访问存储器或者IO端口,那么EU就会请求BIU,进入总线周期,完成访问内存或者IO端口的操作;如果此时BIU正好处于空闲状态,会立即响应EU的总线请求。如BIU正将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。 当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态。 在执行转移指令、调用指令和

5、返回指令时,由于待执行指令的顺序发生了变化,则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列装入转向的另一程序段中的指令代码。,BIU和EU的动作协调原则 将8086/8088 CPU分成二个独立的功能部件使二者能够并行工作,把取指令工作和分析指令、执行指令工作重叠进行,从而提高CPU的工作效力,加快指令的执行速度。指令队列可以被看成是一个特殊的RAM,它的工作原理是先进先出,写入的指令只能存放在队列尾,读出的指令是队列头存放的指令。EU和BIU之间就是通过指令队列联系起来,多数情况下,BIU在不停地向队列写入指令,而EU每执行完一条指令后,就向队列读取下一条指令。二者的动作既独立

6、,又协调。,3. 8086CPU结构的特点: 减少了CPU为取指令而等待的时间,提高了CPU的运行速度。,一、 8086CPU的内部结构 (续),二、 8088/8086的寄存器结构,1. 通用寄存器组,3. 2个控制寄存器,4. 4个段寄存器,8088/8086有14个16位寄存器,2. 指针/变址寄存器,* 4个16位的 数据寄存器 (AX,BX,CX,DX)寄存器既可存放数据,也可存放地址。,1. 通用寄存器组,* 既可作为16位寄存器也可作为8位寄存器。(例:AH,AL) 8bit寄存器只能存放数据。,*各寄存器隐含用法,*通用性强,对任何指令都具有相同的功能,二、 8088/8086

7、的寄存器结构 (续),2. 指针及变址寄存器(SP,BP,SI,DI),* BP,SP寄存器称为指针寄存器,与SS联用。,* DI,SI寄存器称为变址寄存器,与DS联用,在串指令中,SI,DI均为隐含寻址,此时,SI与DS联用, DI与ES联用。,二、 8088/8086的寄存器结构 (续),3. 指令指针和状态寄存器,(1) 指令指针 I P 是一个16位的专用寄存器。当BIU从内存中取出一条指令,自动修改IP,始终指向下一条将要执行的指令在现行代码段中的偏移量。 8086/8088中的某些指令执行后会改变IP的内容,但用户不能编写指令直接改变IP 的内容。,* I P是指令地址在代码段内的

8、偏移量(又称偏移地址),IP要与CS配合构成共同物理地址。,(2) 状态(标志)寄存器PSW PSW 是一个16位的专用寄存器(6位状态位,3位控制位)存放运算结果的特征。,二、 8088/8086的寄存器结构 (续),CF(进位标志): 当运算结果的最高位(D7/D15)出现进位(借位)时,CF=1; PF(奇偶校验标志):当运算结果中“1”的个数为偶数时,PF=1; AF(辅助进位标志):当结果的D3向D4(低位字节)出现进位(借位)时,AF=1; ZF (零标志): 当运算结果为零时,ZF=1; SF (符号标志): 当运算结果的最高位D7/D15为1时,SF=1; OF (溢出标志):

9、当运算结果超过机器所能表示的范围时,OF=1;,(2) 状态(标志)寄存器PSW,二、 8088/8086的寄存器结构 (续),DF(方向标志):在字符串操作时,决定操作数地址调整的方向,DF=1,为递减; IF (中断允许标志): IF=1,允许CPU响应外部的可屏蔽中断; TF (陷阱标志):当TF=1,CPU每执行一条指令便自动产生一个内部中断,在中断服务程序中可检查指令执行情况。,(2) 状态(标志)寄存器PSW (续),二、 8088/8086的寄存器结构 (续),4. 段寄存器,*CS(代码段寄存器)指向当前的代码段,指令由此段 取出; *SS (堆栈段寄存器)指向当前的堆栈段,栈

10、操作的对象 是该段存储单元的内容;,8086/8088按信息存储的不同性质分为四类,分别由四个段寄存器存放该段的首地址,或称为段地址。,二、 8088/8086的寄存器结构 (续),*DS(数据段寄存器)指向当前的数据段,该段中存放程 序的操作数; *ES (附加段寄存器)指向当前的附加段,主要用于字符 串数据的存放,也可以用于一般数据 的存放。,4. 段寄存器,二、 8088/8086的寄存器结构 (续),第二章 8086系统结构,2.1 8086CPU结构 2.2 8088/8086的引脚及功能 2.3 8086存储器的组织 2.4 8086的系统配置 2.5 8086CPU时序,2.2

11、8088/8086的引脚及功能,8086最小模式下的引脚定义 8086最大模式下的引脚定义,一、8086最小模式下的引脚定义,8086/8088微处理器:40条引线双列直插(DIP)封装。 8086/8088微处理器引线是对外前端总线及专用信号引线。 8086/8088微处理器引线,在逻辑上可分为3类:地址总线信号、数据总线信号、控制总线信号。还有一些专用信号:电源、地、时钟。 8086/8088采用引线分时复用技术,一条引线不同时间代表不同信号,解决引线不够问题。,一、8086最小模式下的引脚定义 (续),1. 基本(共用)引脚信号,AD15AD0(I/O,三态):地址/数据分时复用引脚。,

12、A19/S6 A16/S3(O,三态):地址/状态分时复用引脚。 其中S6S3的状态信息可参教材P29P30。,BHE# /S7 (O,三态):高字节允许/状态复用引脚,NMI(In):非屏蔽中断请求线,上升边触发。,INTR (I) :可屏蔽中断请求线,高电平有效 RD# (O,三态) :读选通信号,低电平有效 CLK (I) : 时钟信号,处理器基本定时脉冲. RESET (I) :复位信号,高电平有效。 READY (I):准备好信号,高电平有效。 处理器与存储器及I/O接口速度 同步的控制信号 WR# (O,三态):写选通信号,低电平有效,一、8086最小模式下的引脚定义 (续),TE

13、ST# (I): 测试信号,低电平有效。处理器执行 WAIT指令的控制信号。,MN/MX# (I):最大/最小工作模式选择信号。硬件设 计者用来决定8086工作模式, MN/MX# =1 8086为最小模式, MN/MX# =0 8086为最大模式。,Vcc GND(I): 处理器的电源引脚,一、8086最小模式下的引脚定义 (续),2 最小模式下的有关控制信号(2431),INTA# (O) :最小模式下的中断响应信号。 ALE (O) :地址锁存允许信号 DEN# (O,三态) :数据总线缓冲器允许信号 DT/R# (O,三态) :数据总线缓冲器方向控制信号。 M/IO# (O,三态) :

14、存储器或I/O接口选择信号 WR# (O,三态) :写命令信号 HOLD (In) : 总线请求信号 HLDA (O) :总线请求响应信号,一、8086最小模式下的引脚定义 (续),最大模式下的有关控制信号(2431),QS1、QS0 (O) :指令队列状态信号,表明8086当前指令队列的状态,参见教材表2.5 S2# ,S1# ,S0# (O,三态) :最大模式总线周期状态信号。作为总线控制器8288的输入信号,8288输出各种控制信号,参见教材表2.4 LOCK# (O,三态) :总线封锁信号。信号有效时不允许其它主控部件占用总线。 RQ#/GT#0, RQ#/GT#1 (I/O) :最大

15、模式总线请求/总线响应信号,每条引线作为输入时是总线请求RQ信号,每条引线作为输出时是总线请求响应GT信号。,二、8086最大模式下的引脚定义,二、8086最大模式下的引脚定义(续),最大/最小工作模式区别,三、8088/8086的区别,8088为准16位机: 内部总线的数据宽度是16位的,外部数据总线宽度是8位的。 其主要区别如下: (1)8088的指令队列长度是4个字节,指令队列中只要出现一 个空闲字节时,BIU就会自动访问存储器,取指令来补充指令队列。 (2)8088CPU的BIU与外界交换数据的总线宽度是8位,总线控制电路与专用寄存器组之间的数据总线宽度也是8位,而EU的内部总线是16

16、位,这样,对16位数的存储器读/写操作需要两个读/写周期才可以完成。 (3)8088的外部数据总线只有8条,所以分时复用的地址/数据总线为AD7AD0;而AD15AD8成为仅传递地址信息的A15A8.,(4)8088中,用IO/M#信号代替M/IO#信号, IO/M#低电平时选通存储器,高电平时选通I/O接口,这是为了与8085总线结构兼容。 (5)8088中,只能进行8位数据传输,BHE#信号不需要了,改为SS0#,且该信号与DT/R#IO/M#一起决定最小模式中的总线周期操作,可参见表2.6.,第二章 8086系统结构,2.1 8086CPU结构 2.2 8088/8086的引脚及功能 2

17、.3 8086存储器的组织 2.4 8086的系统配置 2.5 8086CPU时序,2.3 8086存储器组织,一、存储器地址的分段 二、8086存储器的分体结构 三、堆栈,一、存储器地址的分段 (续),矛盾:存储器地址空间1MB,20bit地址线;内部各寄存器和数据总线均为16bit。,1.存储器地址的分段,解决方法:将整个存储器分为若干个逻辑段,每段内地址16bit,即最多地址空间64KB。,允许各逻辑段在整个存储空间浮动 。,每个段的首地址称为“段基值”, “段基值”必须能被16整除(XXXX0H)。,程序执行前,分别对相应的段寄存器CS,DS,SS,ES置“段基值”,若程序长度大于64

18、KB,则可通过对CS送新的“段基值”将程序转移到新段中。,1.存储器地址的分段,一、存储器地址的分段 (续),逻辑地址:允许在程序中编排的地址;,2. 20位物理地址的形成,物理地址:信息在存储器中实际存放的地址;,对给定的任一存储单元,有两部分逻辑地址: 段基址(段地址)由CS,DS,SS,ES决定 段内偏移量(段内有效地址)(该单元相对于段基址的距离),一、存储器地址的分段 (续),例如:8086复位后物理地址的形成: 物理地址=段基址*16+段内偏移地址 PC启动地址=CS*16+IP =FFFF0H+0000H = FFFF0H,一、存储器地址的分段 (续),3. 逻辑地址的来源;,E

19、A-有效地址,,一、存储器地址的分段 (续),1. 问题的提出:,二、8086存储器的分体结构,8位机(MCS-51、8088)的存储器地址空间和数据存储格式以字节(8bit)为单位组织存储器地址空间,访问一次存储器,获得一个字节的数据。 而8086CPU的数据总线为16位,CPU除了可以对一个字节寻址外,还必须能进行一个字的读写。即:如何组织数据存储格式使CPU访问一次存储器,获得一个字的数据。,硬件条件:,(1)将1M的存储空间分成两个存储体:偶地址和奇地址存储体,(2)将数据总线的低8位与偶地址存储体数据线相连,数据总线的高8位与奇地址存储体数据线相连。,二、8086存储器的分体结构 (

20、续),二、8086存储器的分体结构 (续),A0=0时选择访问偶地址存储体,偶地址存储体与数据总线低8位相连,从低8位数据总线读/写一个字节。 BHE#=0时选择访问奇地址存储体,奇地址存储体与数据总线高8位相连,从高8位数据总线读/写一个字节。,存储器二个连续字节组成一个字,一个字中的每一个字节都有各自的字节地址。存入时以低位字节在低地址,高位字节在高地址的次序存放,字单元的地址以低位地址表示。若要求8086在一个总线周期访问一个整字(16位)时,则该字的地址为偶地址(“对准好”的字)。如果则该字的地址为奇地址(“未对准好”的字),则8086要用两个连续的总线周期访问一个整字,每个周期访问一

21、个字节。,数据存放格式:,二、8086存储器的分体结构 (续),堆栈是利用RAM区中某一指定区域(由用户规定),用来暂存数据或地址的存储区。 堆栈段是由段定义语句在内存中定义的一个段,段基址由SS指定。,堆栈存取数据的原则是“先进后出”,存取数据的方法是压入(PUSH)和弹出(POP)。,三、堆栈的概念,堆栈区的栈底是固定的最高地址,其栈顶根据堆栈数据的压入或取出的变化不断改变。栈顶是堆栈区的最低地址,用堆栈指针SP指示。,每执行一条PUSH指令, SP(SP)2,向堆栈压入16bit数据。 每执行一条POP指令,从堆栈弹出16bit数据, SP(SP)2。,三、堆栈的概念 (续),1、MOV

22、 SP,0100H 2、PUSH AX 3、PUSH BX 4、POP AX 5、POP BX,例:执行压栈和出栈的过程,三、堆栈的概念 (续),第二章 8086系统结构,2.1 8086CPU结构 2.2 8088/8086的引脚及功能 2.3 8086存储器的组织 2.4 8086的系统配置 2.5 8086CPU时序,2.4 8086的系统配置,一、最小模式系统 二、最大模式系统,为了尽可能适应各种各样的使用场合,在设计8086 CPU芯片时, 使它们可以在两种模式下工作,即最小模式和最大模式。 最小模式 所谓最小模式,就是系统中只有一个8086/8088微处理器,在这种情况下,所有的总

23、线控制信号,都是直接由CPU产生的,系统中的总线控制逻辑电路被减到最少,该模式适用于小规模的微机应用系统。 MN/MX端接+5V,决定了工作模式; 有一片8284A,作为时钟信号发生器; 有三片8282或74LS273,用来作为地址信号的锁存器; 当系统中所连的存储器和外设端口较多时,需要增加数据总线的驱动能力,这时,需用2片8286/8287作为数据总线收发器。,一、 最小模式系统 (续),系统控制信号由总线控制器8288提供, 用于多处理机和协处理机结构中。,最大模式(组态)系统(MN/ MX引脚接地),8288为总线控制器,输入8086的总线状态信号,输出总线命令和控制信号。,8089为

24、总线裁决器,用于裁决哪个处理器拥有对总线的使用权。,二、 最大模式,8086最大组态系统配置图,二、 最大模式 (续),二、 最大模式 (续),共用信号线,最大模式 与8086/8088CPU配合工作的协处理器有两类,一类是数值协处理器8087,另一类是输入/输出协处理器8089。 8087是一种专用于数值运算的协处理器,它能实现多种类型的数值运算,如高精度的整型和浮点型数值运算,超越函数(三角函数、对数函数)的计算等,这些运算若用软件的方法来实现,将耗费大量的机器时间。换句话说,引入了8087协处理器,就是把软件功能硬件化,可以大大提高主处理器的运行速度。 8089协处理器,在原理上有点象带

25、有两个DMA通道的处理器,它有一套专门用于输入/输出操作的指令系统,但是8089又和DMA控制器不同,它可以直接为输入/输出设备服务,使主处理器不再承担这类工作。所以,在系统中增加8089协处理器之后,会明显提高主处理器的效率,尤其是在输入/输出操作比较频繁的系统中。,一、8284A时钟信号发生器,8284A是Intel公司专为8086设计的时钟发生器,能产生8086所需的系统时钟信号(即主频),可采用石英晶体或某一TTL脉冲发生器作振荡源。,8284引脚,引脚功能:,(1)AEN1#,AEN2#:地址允许信号。用于控制总线就绪信号RDY1,,RDY2。 (2) RDY1,,RDY2:总线就绪

26、信号,用于指示系统总线上的某一设备已就绪或数据已收到。 (3)ASYNC#:就绪同步模式选择信号,定义了Ready逻辑的同步模式。 ASYNC#=1时,ready为1级同步方式;反之,ready为2级同步方式。 (4)Ready:就绪信号,该信号是同步后的RDY输入信号。 (5)X1,X2:晶体振荡器输入信号,是附属晶振的输入引脚。 (6)F/C#:频率/晶振选择信号, F/C#=1时,CLK由EFI输入生成;F/C#=0时,CLK由晶振产生。 (7)EFI:外部频率信号,与F/C#的高电平联合使用。 (8)CLK:处理器时钟信号 (9)PLK:外围时钟信号,其频率是CLK的1/2. (10)

27、OSC:振荡器输出信号,该信号是内部振荡电路TTL电平输出。 (11)RES#:RESET#输入信号。 (12)RESET:复位信号 (13) CSYNC:时钟同步信号,同步多个8284来提供同相的时钟信号。 (14)VCC,GND:电源,8284的功能,(1)时钟信号发生器 时钟信号发生器提供系统所需要的时钟信号,有两个来源:一个是在X1 与X2 引脚间接上晶体,由晶体振荡器产生时钟信号;另一个是由EFI 引脚加入的外接振荡信号产生时钟信号,两者由F/C 端信号控制。F/C 为低电平,表示由外接振荡器产生。 如果晶体振荡器的工作频率为14.31818MHz ,则该时钟脉冲(OSC)经3 分频

28、后得到4.77MHz 的时钟脉冲CLK,即微处理器(例如8086) 所需的时钟信号(占空比为13)。CLK 再经2 分频后产生外设时钟PCLK,其频率为2.385MHz( 占空比为12)。参见教材p46. (2)复位生成电路 输入信号RES 在8284 延迟和同步后产生系统复位信号RESET, 高电平有效,使系统初始化 (3)就绪控制电路 就绪控制电路有两组输入信号,每一组都有允许信号AEN 和设备就绪信号RDY,AEN 是低电平有效信号,用以控制其对应的RDY 信号的有效。这种工作方式用于能保证满足RDY 建立时间要求的同步设备中。,2、8282/8283,Intel公司的82828283是

29、8位带锁存器的单向三态不反相反相的缓冲器,用来锁存8086访问存储器和IO端口时,于总线周期T1 状态下发出的地址信号。 经8282锁存后的地址信号可以在整个周期保持不变,为外部提供稳定的地址信号,。 82828283均采用20引脚的DIP封装,其内部逻辑结构和引脚特性如下图所示。,8282的STB为选通线,高电平时输出等于输入;STB为下降沿时输出锁存。 8282的OE有效(低电平)时:正常输出;无效(高电平)时:输出高阻 8282的DI0DI7与CPU的地址/数据复用线相连;STB与CPU的ALE相连;OE接地,保持常有效。,当ALE有效时,8086的地址信号被锁存并以同相方式传至输出端,

30、供存储器芯片和IO接口芯片使用;当ALE无效时,8282的输出端则处于高阻状态。 74LS244是不带锁存器的八位单向三态缓冲器,74LS373具有和8282相同的作用。在IBM/PC微机中,74LS373和74LS244用作地址锁存缓冲。,Intel公司的82868287是八位双向三态不反相反相的缓冲器。 每一位双向三态缓冲器由二个单向三态缓冲器构成,双向三态缓冲器又称双向电子开关,用来对8086的数据总线进行功率放大,作收发器使用。 它们均采用20引脚的DIP封装。82868287的内部逻辑结构和引脚特性如下图所示。,3、82868287,二、双向数据收发器8286的内部结构,8286功能

31、表,功能 三态输出,驱动总线 数据收/发双向传输及隔离 最小组态下的数据收/发控制实现 将CPU的DEN信号与8286的OE相连; 将CPU的DT/R信号与8286的T相连。 常见芯片:8286、8287、74245 8287输入/输出反相 74XX245功能与8286相同,82868287可作为选件,用于需要增加数据总线驱动能力的系统。 OE/-和T是缓冲器的三态控制信号,它们经过两个或非门产生对正向及反向缓冲器门的控制信号。OE/-输出控制信号,低电平有效;T为传送方向控制信号,高电平有效。 当OE/-=1(无效)时,不管T是否有效,缓冲器输出端呈高阻状态,不允许数据通过;当OE/-=0(

32、有效)且当T=1,数据由AB正向传送,当T=1,数据由BA反向传送。,74LS245具有和8286相同的性能,在IBM PC微机中作数据总线的功率放大。甩8088的DEN(数据有效)信号OE/-,用DT/R(数据收发)信号作T。,系统中还有个等待状态产生电路,它向8284A的RDY端提供个信号,经8284A同步后向CPU的READY线发一个“准备就绪”信号,通知CPU数据传输已经完成,可以退出当前的总线周期,以避免CPU与存储器或IO设备进行数据交换时,因后者速度慢而丢失数据。,第二章 8086系统结构,2.1 8086CPU结构 2.2 8088/8086的引脚及功能 2.3 8086存储器的组织 2.4 8086的系统配置 2.5 8086CPU时序,2.5 8086CPU时序,指令周期、总线周期、时钟周期 二. 几种基本时序,什么是时序? 时序是计算机操作运行的时间顺序。 为什么要研究时序? 进一步了解在微机系统的工作过程中,CPU各引

温馨提示

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

评论

0/150

提交评论