(8086微处理器内部结构)
8086结构
8086微处理器结构 2.1 8086微处理器结构 8086CPU的引脚 的引脚、 2.2 8086CPU的引脚、系统配置及时序 2.3 8086存储器组织 8086存储器组织
例3:判断下列两数相加后标志寄存器中各相关位的值。 :判断下列两数相加后标志寄存器中各相关位的值。
0 1 0 1 1 0 1 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 0 0 0 1 1
+
0
1
0
0
1
0
1
0
1
0
1
1
0
0
1
1
0
最高位没有进位 ∴ CF=0; ; 位中1的个数为偶数个 低8位中 的个数为偶数个 ∴ PF=1; 位中 ; 第三位向第四位有进位 ∴ AF=1; ; 运算结果本身≠0 ∴ ZF=0; ; 运算结果本身 运算结果最高位为1 运算结果最高位为 ∴SF=1; ;
16位段地址寄存器: 16位段地址寄存器: 位段地址寄存器 CS-----------代码段寄存器 CS------代码段寄存器 DS-----------数据段寄存器 DS------数据段寄存器 ES-----------附加段寄存器 ES------附加段寄存器 SS-----------堆栈段寄存器 SS------堆栈段寄存器 16位指令指针寄存器IP:存放下一条要执行指令的偏移 16位指令指针寄存器IP:存放下一条要执行指令的偏移 位指令指针寄存器IP: 地址。 地址。 20位物理地址加法器:将16位逻辑地址变换成存储器 20位物理地址加法器 位物理地址加法器: 16位逻辑地址变换成存储器 写所需要的20位物理地址, 20位物理地址 读/写所需要的20位物理地址,实际上完成地址加法操 作。
8086微处理器思维导图,脑图
8086微处理器内部结构基本组成指令执行部件EU组成算术逻辑单元(ALU) 、标志寄存器、通用寄存器和EU 控制系统等部件功能执行指令总线接口部件BIU组成地址加法器、专用寄存器组、指令队列缓冲器和总线控制逻辑等部件功能形成访问存储器的物理地址,与外部(存储器或I/O 接口)进行联系内部寄存器结构通用寄存器组通用寄存器组数据寄存器地址指针和变址寄存器段寄存器组控制寄存器组指令指针寄存器IP1(16位)用来存放将要取出的下一条指令在代码段中的偏移地址。
在程序运行过程中, BIU 可修改IP 中的内容,使它始终指向将要取出的下一条指令。
标志寄存器FLAGS(双字)有9 个标志位,其中6个用来表示运算结果的状态,包括CF 、PF 、AF、ZF 、SF 和OF ,称为状态标志位,另外3 个是控制标志位,用来控制CPU 的操作,包括IF 、DF 和TF。
标志位2CFCarry Flag——进位标志位如果做加法时最高位产生进位或做减法时最高位产生借位,则CF=1 ,否则CF=0。
PFParity Flag——奇偶标志果操作结果的低八位中含有偶数个1 ,则PF= 1,否则PF=0 。
AFAuxiliary Carry Flag——辅助进位标志位如果做加法时,D3位有进位;做减法时,D3位有借位,则AF=1 ,否则AF=0。
ZFZero Flag——零标志位如果运算结果各位都为0,则ZF = 1 ,否则ZF=0SFSign Flag——符号标志位。
如果运算结果的最高位为1 ,则SF= 1 ,否则SF=0 。
OFOverllow Flag——溢出标志在加或减运算中结果超出8位或16位有符号数所能表示的数值范围时,产生溢出,OF= 1 ,否则OF=0 。
IFInterrupt Flag——中断标志位TFTrap Flag——单步标志位DFDirection Flag——方向标志位存储管理存储器的分段逻辑地址和物理地址逻辑地址由段地址和偏移地址两个部分构成。
微第2章
执行3 执行
执行4 执行
执行5 执行 执行 执行6
8086
BIU
取指1 取指
取指2 取指3 取指 取指
取指4 取指
取指5 取指6 取指 取指
BUS
忙
忙
忙
忙
忙
忙
总线接口部件(BIU) 一、总线接口部件(BIU) 负责与存储器、I/O接口进行数据传输。 负责与存储器、I/O接口进行数据传输。 接口进行数据传输 指令执行部件(EU) 二、指令执行部件(EU) 负责指令的执行。 负责指令的执行。 8086的时钟周期和总线周期 三、8086的时钟周期和总线周期 1.时钟周期 1.时钟周期 指加到8086引脚CLK端二个脉冲上升沿间的宽度,它由计算机的主频决定。 指加到8086引脚CLK端二个脉冲上升沿间的宽度,它由计算机的主频决定。 8086引脚CLK端二个脉冲上升沿间的宽度 T=1/ f 如果 f= 5 MHz 四、总线周期 8086CPU经外部总线执行数据输入 输出操作的过程。 经外部总线执行数据输入/ 指8086CPU经外部总线执行数据输入/输出操作的过程。 一个总线周期至少由4个时钟周期组成。 一个总线周期至少由4个时钟周期组成。 则 T=0.2 us = 200 ms
A C
F
A C
F
C=0 时 F=A
2 8282锁存器
3 8284时钟电路
RES X1 X2 F/C EFI CSYNC RDY1 AEN1 RDY2 AEN2 ASYNC 时钟 震荡 器 1/3
D C
Q
RESEQ READY
1)/AEN1,/AEN2地址允许 ) , 地址允许 /AEN为低电平有效信号,由外部提供,用来控制相应的总线准备好信号 为低电平有效信号, 为低电平有效信号 由外部提供, RDY1和RDY2。/AEN使RDY1生效,/AEN2使/RDY2生效。在允许处理机访 生效, 生效。 和 。 使 生效 使 生效 问两个多总线管理的系统总线时,使用两个/AEN信号。在非多主控制器系 信号。 问两个多总线管理的系统总线时,使用两个 信号 统中/AEN应接低电平。 应接低电平。 统中 应接低电平 2)RDYl,RDY2总线准备好 传输完成 总线准备好(传输完成 ) , 总线准备好 传输完成) RDY是高电平有效信号。该信号来自系统总线上的某一个设备,由它指出 是高电平有效信号。 是高电平有效信号 该信号来自系统总线上的某一个设备, 数据是否已经 收到或数据是否已经准备好可供使用。 收到或数据是否已经准备好可供使用。 、 3)READY准备好 , ) 准备好 READY由8284A输出,是高电平有效信号。输入信号 输出, 由 输出 是高电平有效信号。输入信号RDY-被同步后生成稳 被同步后生成稳 定的READ~z 定的 信号。在处理机要求的保持时间结束以后, 信号才被清除。 信号。在处理机要求的保持时间结束以后,READY信号才被清除。 + 信号才被清除 4)ASYNC准备好同步选择 ’ ) 准备好同步选择 /ASYNC是一个输入信号,由其来决定 是一个输入信号, 逻辑的同步方式。 是一个输入信号 由其来决定READY逻辑的同步方式。当/SYNC 逻辑的同步方式 为低电平时8284A提供 提供READY二级同步;而当 二级同步; 为高电平或不接收时, 为低电平时 提供 二级同步 而当/ASYNC为高电平或不接收时, 为高电平或不接收时 8284A提供一级同步。 提供一级同步。 提供一级同步 5) X1,X2晶体输入 , , ) , 晶体输入 x1和x2是连接外接晶体的两个输入端。晶体的频率应是处理机所要求的频 是连接外接晶体的两个输入端。 和 是连接外接晶体的两个输入端 率的三倍。 率的三倍。
8086结构组成
8086结构组成8086是一款16位微处理器,它的结构组成非常复杂。
本文将从以下几个方面来详细介绍8086的结构组成。
一、总体结构8086由三个主要部分组成:执行单元(EU)、总线接口单元(BIU)和寄存器组。
1.执行单元:负责执行指令并进行算术和逻辑运算。
2.总线接口单元:负责与外部设备通信并控制数据传输。
3.寄存器组:包括通用寄存器、段寄存器和指令指针寄存器等。
二、执行单元1.指令队列指令队列是执行单元中的一个重要部分,它可以存储多条指令,以便快速地进行取指令操作。
当EU需要执行一条新的指令时,它会从队列中取出下一条指令并开始执行。
2.算术逻辑单元算术逻辑单元(ALU)是执行单元中的核心部分,它可以进行各种算术和逻辑运算,如加、减、乘、除、与、或等操作。
ALU还可以处理条件跳转和无条件跳转等控制操作。
3.状态标志寄存器状态标志寄存器(FLAGS)用于记录ALU运算的结果,以便EU进行下一步操作。
FLAGS寄存器包括零标志位、进位标志位、溢出标志位等。
三、总线接口单元1.地址加法器地址加法器(AFA)是BIU的核心部分,它可以将内部地址转换为外部地址,并控制数据传输。
2.指令缓存器指令缓存器(IC)用于存储从内存中读取的指令。
当EU需要执行一条新的指令时,BIU会从IC中取出相应的指令并传输给EU。
3.数据缓存器数据缓存器(DC)用于暂时存储从内存中读取或写入的数据。
当EU 需要访问内存时,BIU会将相应的数据传输到DC中,EU再从DC中读取或写入数据。
四、寄存器组1.通用寄存器8086有8个16位通用寄存器,分别命名为AX、BX、CX、DX、SI、DI、BP和SP。
这些寄存器可以用于保存临时数据和计算结果等。
2.段寄存器8086有4个16位段寄存器,分别命名为CS、DS、ES和SS。
这些寄存器用于保存程序和数据在内存中的位置信息。
3.指令指针寄存器指令指针寄存器(IP)用于保存下一条指令在内存中的地址。
第二章 8086体系结构
8086微处理器概览
标志位寄存器(FR) • 16位标志位寄存器FR,共有9个
标志位。其中6个是状态标志位, 3个是控制标志位,用于反映 CPU运行过程中的某些状态特征。
标志位寄存器
3、标志寄存器FR
标志寄存器FR中共有9个标志位,可分成两类: ➢状态标志 表示运算结果的特征,它们是 CF、PF、AF、 ZF、SF和OF ➢控制标志 控制CPU的操作,它们是IF、DF和TF。
IP :BIU要取指令的地址。
IP
三、8086CPU的管脚及功能
8086是16位CPU。它采用高性能的N— 沟道,耗尽型负载的硅栅工艺(HMOS)制 造。由于受当时制造工艺的限制,部分管 脚采用了分时复用的方式,构成了40条管 脚的双列直插式封装
1、 8086的两种工作方式
最小模式:系统中只有8086一个处理器,所有的控制信号都 是由8086CPU产生(MN/MX=1)。
最大模式:系统中可包含一个以上的处理器,比如包含协处 理器8087。在系统规模比较大的情况下,系统控 制信号不是由8086直接产生,而是通过与8086配 套的总线控制器等形成(MN/MX=0)。
三总线结构 数据线DB 地址线AB 控制线CB
微机的三总线结构
➢ 最小模式下的引脚说明
( 1 ) AD15 ~ AD0 (Address Data Bus):
堆栈指针用于存放栈顶的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中。
寄存器的特殊用途和隐含性质
在指令中没有明显的标出,而这些寄存器参 加操作,称之为“隐含寻址”。
具体的:在某类指令中,某些通用寄存器有指 定的特殊用法,编程时需遵循这些规定,将某些 特殊数据放在特定的寄存器中,这样才能正确的 执行这些指令。采用“隐含”的方式,能有效地 缩短指令代码的长度。
8086CPU结构介绍及基础知识
分段管理的特点: ①起始点可浮动; ②可分开或重叠; ③实际地址由段地址、段内偏移地址组成; ④段首地址必须能被16整除
• 2、物理地址的形成
逻辑地址:存储器的任一个逻辑地址由段基址和偏移地址组成,程序设计时采 用。
•
段基址:偏移地址
物理地址:存储器的绝对地址,从00000~FFFFFH,它是由逻辑地址变换而来。
二、8086CPU的内部结构 8086CPU内部按功能可分为两部分: 1、BIU(总线接口部件) 功能:地址形成、取指令、指令排队、
读/写操作数、总线控制 2、EU(执行部件) 功能:指令译码、指令执行
组成部件见下页图
8086CPU的内部组成
执行单元(EU)
总线接口单元(BIU)
1、BIU ①段寄存器
例2-2
• 将5394H与-777FH两数相加,并说明其标志位状态
•
0101 0011 1001 0100
•+
1000 1000 1000 0001
•
1101 1100 0001 0101
• 运算结果:-23EBH
• 标志位:CF=0,DF=0,AF=0
•
ZF=0,SF=1,OF=0
控制标志位的名称和定义如下:
三寄存器结构目的变址寄存器destinationindexsidibpspax累加器accumulatorbx基数寄存器basecx计数寄存器countdx数据寄存器dataahbhchdhalblcldlipflagsdsessscs数据段寄存器datasegment附加段寄存器extrasegment堆栈段寄存器stacksegment代码段寄存器codesegment标志寄存器flags指令指针寄存器instructionpointer变址寄存器段寄存器控制寄存器通用寄存器源变址寄存器sourceindex基址指针寄存器basepointer堆栈指针寄存器stackpointer指针寄存器数据寄存器8086cpu寄存器组1通用寄存器组?常用来存放参与运算的操作数或运算结果?特殊用途见p25表212指针和变址寄存器?可作通用寄存器存放一般操作数或运算结果?作指针和变址寄存器用于存放某段地址偏移量3段寄存器?用于存放逻辑段的段基地址4指令指针和标志位寄存器?ip存放下一条指令在现行代码段中的偏移地址由biu自动修改
8086CPU的结构与功能
8086CPU 的结构与功能CPU 结构与功能不管什么型号的CPU ,其内部均有这四⼤部件1. ALU :算术逻辑单元2. ⼯作寄存器:分为数据寄存器和地址寄存器⼯作寄存器的⽬的是为了提⾼运算速度,希望参与运算的数据不从外部存储器去取数据,⽽是在CPU 内部取,所以要有能暂存少量数据的寄存器。
数据寄存器是专门存放数据的,地址寄存器是专门存放地址,进⾏间接寻址⽅式,但当地址寄存器不提供地址时,也可以⽤来暂存数据。
3. 控制器:中央指挥机关4. I/O 控制逻辑电路⼀般CPU 执⾏存储器(按字节组织)⾥⾯指令过程如下:1. CPU 通过控制器部件⾥⾯的程序计数器(PC )给外部存储器的地址引脚输出地址(通过地址总线AB ),同时CPU 给存储器发送读操作命令;2. 在读操作下,就把这个地址单元的指令代码通过数据总线(DB ),取回来放在指令寄存器⾥⾯(IR ),注意此时因为指令没有执⾏完,所以PC 还不能去往下⼀条指令,IR 没有地⽅放数据。
3. 指令译码器(ID )不断检测指令寄存器有没有数据,有的话就把指令取⾛放在ID ⾥⾯,取来的指令就被ID 译码分析,就知道这个指令希望CPU 做什么,怎么做;4. ID 通知控制逻辑部件,在相应的控制引脚发出相应的有效命令(读,写等);5. 此条指令执⾏完,IR 为空,PC ⾃动增加到下⼀条指令的地址,执⾏下⼀条指令流程。
如果指令为n 字节,PC ⾃动增n 。
因为在取指令时候,不能执⾏指令,在执⾏指令时候,不能取指令,因此这种架构CPU 是取指令->执⾏指令->取指令...这样循环下去。
CPU 执⾏效率不⾼。
堆栈由先进后出原则组织的存储器区域,称为堆栈。
单⽚机应⽤中,堆栈是个特殊存储区,堆栈属于RAM 空间的⼀部分,堆栈⽤于函数调⽤、中断切换时保存和恢复现场数据(临时数据)。
对于8006 CPU ⽽⾔,堆栈操作是按字操作。
堆栈单元的地址指针由堆栈指针寄存器SP 的内容提供。
8086-8088CPU系统结构
1.2 8086/8088寄存器结构及用途
1.1.3 指针寄存器和变址寄存器
▲指针寄存器:
♣ SP:堆栈指针寄存器 ♣ BP:基址指针寄存器
▲变址寄存器:
♣ SI:源变址寄存器 ♣ DI:目的变址寄存器
汇编语言程序设计
8086/8088CPU系统结构
• 1.1 Intel8086/8088微处理器的结构 • 1.2 8086/8088寄存器结构及其用途 • 1.3 8086的存储器组织
• 1.4 堆栈
1.1 Intel8086/8088微处理器的结构
• 1.1.1 8086微处理器的结构
8086微处理器由两大部分组成: ♣ 执行部件EU ♣ 总线接口部件BIU 其内部结构如图(P20 图1.1)
1.3 8086的存储器组织
• 1.3.2 存储器的分段结构
◆8086CPU的寻址能力为:220=1MB; ◆8086CPU的内部寄存器为16位,直接 寻址:216=64KB; ◆在8086系统中引入逻辑段的概念:把 的地址空间划分为任意个逻辑段,长度 为64KB。
1.3 8086的存储器组织
• 1.3.3 物理地址和逻辑地址
▲是CPU与外部存储器、I/O设备的接口;
▲BIU由以下几部分组成: ♣16位指令指针寄存器IP; ♣指令队列; ♣4个16位段寄存器CS、DS、ES、
SS; ♣20位地址加法器; ♣总线控制部件。
1.1.1 8086微处理器的结构
• 3. BIU和EU的管理
▲二者处于并行的工作状态和重叠的工 作方式; ▲相互配合,协调工作; ▲充分利用总线实现最大限度的信息传 输,提高了程序的执行速度。
A2-2(8086微处理器内部结构)
作模式可以通过引脚选择
9
基本概念
1、引脚的功能:即引脚的定义,其 名字反映了该信号的作用即含义。 2、信号的流向:信号从芯片输出, 还是从外部输入芯片,或双向。 3、有效电平:使引脚起作用的逻辑 电平。
4、三态能力:有些引脚除了能正常 输入输出外,还能输出高阻状态,此 时表示芯片已放弃了对该引脚的控制, 使之悬空,以方便其他设备接管对它 的控制
S4 0
S3 0
段寄存器 ES
0 1 1
1 0 1
SS CS(I/O,INT) DS
15
8086CPU外部引脚
2、A19/S6-A16/S3(Address /Status) 分时复用的地址/状态线。
S4 0 0 1 1
S3 0 1 0 1
段寄存器 ES SS CS(I/O,INT) DS
S5 用来表示中断标志状态。 当IF=1时, S5置1。
在最小模式系统中用来作地址锁存器 8282/8283的选通信号
18、DEN(Data Enable)
数据允许信号,三态输出,低电平
有效。当它为低电平时,表时数据 线上有有效数据。在最小模式系统中 用来用数据收发器8286/8287的选通 信号
28
8086CPU外部引脚
19、DT/R(Data Transmit/Receive) 数据发送/接收控制信号,三态输出。 在最小模式系统中用来控制数据的传 送方向。 高电平时,表示数据从CPU向 外部输出,即完成写操作。 低电平时,表示数据从外部向 CPU输入,即完成读操作。
其引脚如下: T引脚:控制方向,与CPU的DT/R连 结。高电平从CPU输出,低电平CPU 接收数据 OE控制输出,与DEN连结。有效允许 输出,反之不允许。 8286的A0~A7与CPU的AD0~AD15连结 (两个8286),传送数据时,8282把 AD0~AD15上的地址信号锁存起来, 8286开始传送数据。 注意:8286为8位的数据收发器芯片,
微机原理2-1:8088CPU内部结构、寄存器组、存储器组织
逻辑地址
地址加法器
将16位的逻辑地址转换为20位的物 理地址,具体操作过程为:先将段寄存 器提供的16位段地址左移四位,低位补0,
恢复为20位地址,然后与由各种寻址方
式提供的16位偏移地址相加,即得到20 位的物理地址。
26
逻辑地址
• 物理地址: • 逻辑地址: 20 位 段基址 (段寄存器的内容)16位 偏移地址(字节距离)16位
控制 累加器 标志寄存器
暂存器
ALU
2
8088/8086的功能结构
16位微处理器也具有以上结构中的基本单元, 但更为复杂。 以8088为例讲解16位微处理器的功能结构。 8088是8086的简化版本。
3
地址加法器
AH AL BL CL DL SP B P DI SI 数据总线 暂存寄存 器
用于串操作指令中,控制地址的变化方向:
设置DF=0,串操作后存储器地址自动增量(增址) ; 设置DF=1,串操作后存储器地址自动减量(减址) 。 串:存储器中一序列字或字节单元
串操作——对序列字或字节单元中的内容进行某种操作 , 比如:将一个字符串从源区传送到目的区 。
MOVS——串传送指令 CMPS——串比较指令 SCAS— —串扫描指令 LODS——装入串指令 STOS——存储 串指令
外存主要指用来长久保存数据的外部存储介质, 常见的有硬盘、光盘、磁带、U盘等。外存的数据 只能通过主存间接地与CPU交换数据
3AH + 7CH=B6H AAH + 7CH=(1)26H 没有进位:CF=0 有进位:CF=1
例如(以8位运算为例,8088中为16位):
10
溢出标志OF(Overflow Flag)
项目1:知识点2典型处理器及体系结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
8086 CPU
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
VCC AD15 A16/ S3 A17/ S4 A18/ S5 A19/ S6 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
(8) ALE地址锁存允许信号 (输出) 高电平有效,此信号在 T1 状态有效,为 地址码锁存的选通信号,送地址锁存器。 (9) READY准备就绪信号 (输入) 高电平有效,是从所寻址的存储器或 I/O 电路来的响应信号,用于解决CPU与慢速存储 器或 I/O 电路的同步问题。 CPU 在 T3 周期开始 采样 READY 线,若为低电平,则 T3 之后插入 TW等待周期直到READY为高电平,进入T4完 成数据传送。
2.2 8086的引脚信号及工作模式
一、8086的两种工作模式
最小模式:即由 8086 组成的单处理器系 统,所有的总线控制信号由 8086 直接产生, 系统中的总线控制逻辑电路被减到最少。
最大模式:即由 8086 组成的中等规模或
者大型的系统。包含两个或多个微处理器,
8086为主处理器,其它的为协处理器。
(2) 地址/状态信号线A19/S6~A16/S3(输出、三态)
在总线周期的第一个时钟周期(T1)用于输出 地址信号的最高4bit并锁存。
其它时钟周期中用来输出状态信号S6~S3, 其中: S6——低电平,表示8086当前与总线相连。 S5——表示标志寄存器中“中断允许位”的状态 (IF)。 S4, S3的组合指出了分段情况。如下表所示。
第二章 8086 8088微处理器
1、指令队列缓冲器 2、地址加法器和段寄存器
3、 16位的指令指针寄存器IP
IP中存放的是BIU要取的下一条指令(字 节)的偏移地址,BIU取过后,IP自动加1。 与IP相配的段寄存器是代码段寄存器CS。
扬州大学信息工程学院
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
扬州大学信息工程学院
(一)最小工作模式
在最小工作模式,8086/8088 第24~31引脚的含义: 5、M/IO存储器/输入,输出控 制信号,输出。 为1时与存储器数椐传送; 为0时输入,输出接口进 行数据传送。T1~T4有效
6、WR写信号,输出。 在总线周期的T2~T4状态 输出低电平。 7、HOLD总线保持请求信号, 输入。其它主模块要求占用总线 时通过HOLD向CPU发高电平请 求。若“允许”,CPU在T4状态 从HLDA发出高电平后,就得到 总线控制权。
扬州大学信息工程学院
第二章 8086/8088微处理器
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
从功能上,8086分为两部分:
1、 总线接口单元BIU (Bus Interface Unit)。 2、执行单元EU (Execution Unit)。 说明:这两个单元在CPU内部担负着不同的任务。 两个单元并行地工作,能使大部分取指令操作与执 行指令操作重叠的进行 (即所谓“流水线”结构)。
扬州大学信息工程学院
第一节8086/8088的微处理器结构
三、8086/8088的引脚信号和功能 (一)地址/数椐总线
AD15~AD0(复用的)
总线周期的状态 T1:输出地址; T2:浮置成高阻; T3:输入/输出数椐;
3现代微机结构-8086及80286
理 器
器 存储器 存储器 I/O
AD15~AD0 双向
DT/R DEN
数据 锁存 器
第二节 Intel 80286
与8086的显著区别:
1. 地址线和数据线不再分时复用, 简化了硬件设计;
2. 增加了地址线的宽度, 物理地址空间增加到16M 3. 增加了新的指令, 以增强其控制能力。 4. 引入存储管理中的虚存管理机制。通过“虚地址”
结论:
采用地址流水线后, 由于地址信号的提前建立, 与非地址的流水线相比, 可以尽量减少插入Tw 等待周期。因而加快了访存速度。 (但并没有提高存储器的速度)。
四、80286的工作模式
(一) 实地址模式
系统开机复位时,自动进入实地址模式, A23~A20自 动置为0, 以 A19~A0寻址1M的存储空间。
实地址模式下的寻址过程:
段基地址
段基地址 0000
+ 20位物理地址 内存单元
偏移量
为实施“虚地址保护”所希望的寻址过
程:
应用设计 者给出的 虚地址
• 实施保护 • 实现虚地址到
物理地址
内存单元
实地址的转换
“虚地址保护” 实施的中间平台
“ 中 间 平 台 ” 的 核 心 部描述子 (Descriptor) 分描:述子的作用:
(物理地址)
左移4位
偏移量 基地址
…
15
0 15
0ห้องสมุดไป่ตู้
段寄存器
偏移量
19
0
一 个
16位基地址 0000
段
+
20位的物理地址
外部地址总线
三、8086的中断系统
(一) 中断源
1、外部中断
第三章 8086微处理器(结构)
CLK S2-S0 A19-16 S3-S7 BHE AD15-0 ALE MRDC (IORC) DT/R DEN
最大方式写时序
地址 CS 数据 T1 T2 S2-S0 A19-16 A15-0 BHE 数据输出 T3 S2-S0 无效 S3-S7 D15-D0 T4
CLK S2-S0 A19-16 S3-S7 BHE AD15-0 ALE AMWC (AIOWC) MWIC(IOWC) DEN
INTEL 8086
8086引脚信号
8088引脚信号
INTEL 8088
8086最小方式系统结构
8284 CLK READY RESET
等待状态发生器
M/IO INTR INTA WR RD STB BHE
ALE BHE AD19-16 AD15-0
8082x3
地址总线 A19-0
数据总线 DEN DT/R MN/MX 8086 CPU 8286x2 OE RAM HOLD HLDA OE WR OE
IOB BHEຫໍສະໝຸດ 8286X2 OE RD MN/MX 8086 CPU T OE RAM
数据总线 (D15-0)
RD
ROM
I/O
WR RD
S2-S0代码组合和操作
S2 S1 S0 代码组合和对应操作 S1 S0 对 应 操 作 0 0 发中断响应信号 0 1 读 I/O 端口 1 0 写 I/O 端口 1 1 暂停 0 0 取指令 0 1 读内存 1 0 写内存 1 1 无源状态(CPU无作用) QS1 QS0 代码组合和对应操作 对应操作 无操作 从指令队列的第1个字节中取走代码 队列为空 除第1字节外,还取走了后续字节中的代码
低为IO读,
8086微处理器
8086/8088微处理器8086是全16位微处理器,内、外数据总线都是16位。
8088是准16位微处理器,内数据总线是16位,外数据总线是8位。
二者除外数据总线位数及与此相关的部分逻辑稍有差别外,内部结构和基本性能相同,指令系统完全兼容。
1. 内部结构8086/8088微处理器从功能上可分为两个独立的处理单元:执行单元EU(Execution Unit)和总线接口单元BIU(Bus Interface Unit)。
其内部结构如图2.1所示。
执行单元EU由8个16位的通用寄存器、1个16位的标志寄存器、1个16位的暂存寄存器、1个16位的算术逻辑单元ALU及EU控制电路组成。
8个通用寄存器中,AX、BX、CX、DX为数据寄存器,用于存放参与运算的数据或运算的结果,它们中的每一个既可以作为一个16位寄存器使用,又可以将高、低8位分别作为两个独立的8位寄存器使用。
作为8位寄存器时,它们的名称分别为AL、AH、BL、BH、CL、CH、DL、DH。
这些寄存器除了用作通用寄存器外,通常还有各自特殊的用法: AX作累加器,所有的I/O指令及一部分串操作必须使用AX或AL来执行,另外还有一些指令使用AX及由AX 分出的AL、AH作为缺省的操作数,如乘、除法指令;BX作基址寄存器,在计算内存地址时,常用于存放基址;CX作计数寄存器,可以在循环、重复的串操作及移位操作中被作为计数器来使用;DX作数据寄存器,在一些I/O指令中用来保存端口地址。
指针寄存器SP和BP分别为堆栈指针寄存器和基址指针寄存器,作为通用寄存器的一种,它们可以存放数据,但实际上,它们更经常、更重要的用途是存放内存单元的偏移地址。
而变址寄存器DI和SI则主要用于变址寻址方式的目的变址和源变址。
图2.1 8086/8088CPU内部结构示意图总线接口单元BIU由4个16位的段寄存器(CS、SS、DS、ES)、1个16位的指令指针寄存器IP、1个与EU通信的内部暂存器、1个指令队列、1个计算20位物理地址的地址加法器∑及总线控制电路组成。
8086微处理器的内部结构
各个逻辑段允许重叠
例如,如果代码段中的程序占有8KB(2000H)存储区, 数据段占有2KB(800H)存储区,堆栈段占有256个字 节的存储区。此时分段情况如图所示。
代码段的区域本可为 02000H ~ 11FFFH (64KB),由于程序 区只需要8KB,所以 程序区结束后的地址 就可作为数据段的起 始地址(04000H) 注意:这里所谓的重叠只是指每个区段的大小允许根据 实际情况分配,而不一定非要占有64KB的最大段空间。
程序设计过程中必须遵守的系统内部约定:
如果访问存储器要求读/写操作数,则通常由DS给 出段地址(必要时可修改为CS、ES或SS),而其偏移 地址要由CPU的指令执行部件根据指令中所给定的寻 址方式来进行计算,通常将这样计算得到的偏移地址称 为有效地址(EA)。
如果所采用的寻址方式是通过基址指针BP寻址,则 段地址要由SS提供(必要时可以修改为CS、DS或ES)。
数据总线
通用寄存器
8086 暂存寄存器
ALU数据总线 (16位)
CS DS SS ES IP 内部通信 寄存器
(16位)
总线 控制 逻辑
8086 总线
ALU
EU 控制 系统
Q总线 16位
指令队列
1 2 3 4 5 6
总线接口部件 (BIU)
标志
指令执行部 件(EU)
1. 指令执行部件EU 由算术逻辑单元(ALU)、标志寄存器、通用寄存 器组和EU控制器等部件组成。 主要功能是执行指令: ○一般顺序执行,EU不断地从指令队列中取指令连 续执行,而省去访问存储器取指令的时间。 ○需要访问存储器取操作数时,EU将访问地址送给 BIU后,将要等待操作数到来后才能继续操作; ○遇到转移类指令时,要将指令队列中的后续指令 作废,等待BIU重新从存储器取出目标地址中的指令代 码进入指令队列后,EU才能继续执行指令。
8086微处理器
2021年1月30日星期六
2021年1月30日星期六
1.3 8086系统存储器的组织
8086系统在实模式下允许的最大寻址空间是1 MB,8086工 作在实模式,其地址宽度为20位,采用存储器地址分段的方法 来解决16位字长机器提供20位地址的问题。
1.存储器地址分段 2.逻辑地址与物理地址的计算
2021年1月30日星期六
1.4 8086/8088微处理器的引脚功能
总线控制逻辑。
4 6字节的指令队列。
2021年1月30日星期六
2.执行部件EU
算术逻 辑单元ALU
标志 寄存器
通用寄 存器组
EU控制器
2021年1月30日星期六
பைடு நூலகம்
1.2 8086的寄存器
1.通用寄存器 通用寄存器除了可以存放通用数据以外,都还有自己的特定功能。 2.专用寄存器 8086及以前的机器专用寄存器包括IP、SP和FLAGS 3个16位寄存器。 3.段寄存器 8086有4个16位段寄存器。
8086微处理器
8086微处理器是Intel系列的16位微处理器,它采用HMOS 工艺制造,双列直插,有40个引脚。8086微处理器的电源为单 一5V,主时钟频率为5 MHz~10 MHz。它的外部数据总线为16 位,地址线为20根。因为可用20位地址,所以可寻址的地址空 间达1 MB。
2021年1月30日星期六
SS(stack segment)
8086CPU结构
零标志ZF (Zero Flag) ---反映运算结果是否为零, 若是,则该位置“1”,否则置“0”。 符号标志SF (Sign Flag) ---反映运算结果最高位的 状态,并与运算结果最高位状态相同。表明了本次运 算的结果是正还是负。 溢出标志OF (Overflow Flag) --- 反映带符号数进行 算术运算后是否有溢出,有则为“1”,无则为“0”。
3
指令和程序
机器指令 操作码 + 操作数
若干条指令构成程序
MOV B8H AX, 1234H 34H 12H
4
指令解释方式
CPU解释一条指令的步骤为如下两个阶段: 取指:从内存中取出指令,明确指令规定的功能; 执行:分析指令要求实现的功能,读取所需要的操作 数,执行指令规定的操作,并保存执行结果。
执行部件EU
功能:执行指令并暂时存储运算结果 结构: (1)16位算术逻辑单元ALU; (2)16位标志寄存器F; (3)数据暂存寄存器(与编程无关,不对用户开放) (4)通用寄存器组: AX、BX、CX、DX---数据寄存器 SP、BP---指针寄存器 SI、DI---变址寄存器 (5)EU控制电路:内部电路,不对用户开放
时 间
顺序解释
取指1
执行1
取指2
执行2
取指3
执行3
取指4
执行4
取指5
执行5
执行1
执行2
执行3
执行4
执行5
重叠解释
取指1 取指2 取指3 取指4 取指5
指令和程序的解释过程
5
8086微处理器的内部结构
地址总线 AH BH 通用 寄存 器 CH DH SP BP SI DI ALU数据总线 (16位) 暂存寄存器 总线控制 8086 逻辑 总线 ALU EU 控制系统 标志寄存器 执行部件(EU) 图2-2 8086 CPU内部结构 总线接口部件(BIU) 6 队列 总线 (8位) 指令队列缓冲器 1 2 3 4 5 6 段寄 存器 AL BL CL DL AX BX CX DX CS DS ES SS IP 内部通信 寄存器 指令指 针 地址 形成器 (20位) 数据 总线 (16位)
第2讲 Intel 8086_8088的结构
2、 微型计算机内部结构
内部——内部为了减少连线所占面积,采用单总线,即: 内部所有单元电路都挂在内部总线上,分时使用总线。
通常微处理机内部结构及外部连接方法如下图所示。
内部数据总线
DB7~DB0
数据总线缓冲器/锁存器
累加器 (8位)
锁存器 (8)
暂存寄存 器(8)
标志寄存 器
算术逻辑单 元
ALU
(
(物理) 地址
16进制
寻
0000 0000 0000 0000 0000B =
址
0000 0000 0000 0000 0001B =
能 力 、 寻 址
寻 址 范 围
0000 0000 0000 0000 0010B =
...
...
空
间
)
1111 1111 1111 1111 1111B =
00……00~11……11B=00000H~FFFFFH
8086的外部数据总线16位,8088 是8位数据总线。 Intel 8086,16位机. Intel 8088(简称8088)是一种准16位微处理器, 在Intel 8080与8085的基础上发展起来的。
(一) 8086/8088微处理器功能结构
8086/8088微处理器功能结构
分两部分: 1、总线接口单元 BIU(Bus Interface Unit) 2、执行部件 EU (Execution Unit)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分时复用的地址/状态线,
作地址线时,用A19-A16与 AD15-AD0一起构成访问 存储器的20位物理地址。 注意:当CPU访问I/O端口时, A19-A16保持为0。
14
8086CPU外部引脚
2、A19/S6-A16/S3(Address /Status) 分时复用的地址/状态线, 作状态线时, S6-S3用来输出状态 信息。 S4-S3用来确定当前使用的段 寄存器。
存储器或I/O端口访问信号, 三态输出。 高电平:表示CPU正在访问 存储器。 低电平:表示CPU正在访问 I/O端口。
18
8086CPU外部引脚
6、BHE/S7(Bus High Enable/Status) 总线高字节有效信号
该信号三态输出,低电平有效。
用来表示数据总线上的数据是否有效
BHE
0 0 1 1
S6 恒保持为0。
16
8086CPU外部引脚
3、RD(Read) 读信号,三态输出,低电平有效。 表示当前CPU正在读存储器或I/O端口。 4、WR(Write) 写信号,三态输出,低电平有效。 表示当前CPU正在写存储器或I/O端口。
17
8086CPU外部引脚
5、M/IO(Memory/IO)
– – – – 引脚的功能 信号的流向 有效电平 三态能力
输出正常的低电平、 高电平外,还可以 输出高阻的第三态
7
8
8086CPU外部引脚
8088/8086CPU都具有40条引脚,
采用双列直插式封装,有的引脚具
有双功能。
① 为了减少芯片的引线,
8088/8086的许多引脚具有双重定
义和功能,采用分时利用方式工作, 即在不同时刻,这些引线上的信号 是不相同的。
高电平:表示CPU要访问的存储器 或I/O端口已为传送做好准备。
无效时:CPU插入一个或几个等待 周期TW,直到READY信号有效为 止。
20
8086CPU外部引脚
8、TEST 测试信号,由外部输入, 低电平有效。 当CPU执行WAIT指令时,每隔5个 时钟周期对TEST进行一次测试。
有效:CPU执行下一条指令。 无效:CPU处于等待状态。
25
8086CPU外部引脚
13、HOLD(Hold Request) 总线请求信号,由外部输入, 高电平有效。 通过此引脚总线的主控者向CPU 请求使用总线。 14、HLDA(Hold Acknowlege) 总线响应信号,向外部输出, 高电平有效。 CPU一旦测试到HOLD请求时,就在 当前总线周期结束时,使HLDA有 效,表示响应这一总线请求,并立即 让出总线使用权。
3
教学方法
1. 多媒体演示 2. 提问式,启发式
教学时数
2
4
思路
1. 微型计算机系统结构 2. 微型计算机内部结构及各部件的结 构和功能 3. 微处理器的外部引脚
5
8086微处理器知识点
8086微处理器引脚信号 8086微处理器典型时序分析
6
• 学习外部特性,首先了解其引脚信号,关 注以下几个方面:
23
8086CPU外部引脚
11、INTA (Interrupt Acknowledge) 中断响应信号,向外部输出,低电 平有效。 表示CPU响应了外部发来的INTR 信号。
24
8086CPU外部引脚
12、RESET 复位信号,由外部输入,
高电平有效
RESET信号至少保持4个时钟周 期。CPU接收到该信号后,停止操 作,并将标志寄存器,段寄存器, 指令指针IP和指令队列等复位到初 始状态。
21
8086CPU外部引脚
9、INTR (Interrupt Request)
可屏蔽中断请求信号,由外部输入, 高电平有效。 高电平:表示外部向CPU发出中断 请求。
CPU一旦测试到中断请求信号,并 且IF=1时,暂停正在执行的操作转 入中断响应周期。
22
8086CPU外部引脚
10、NMI (Non-Mackable Interrupt Reguest) 不可屏蔽中断请求信号, CPU一旦测试到NMI有效信号,当 前指令执行完后就自动响应中断。
10
逻辑门
A B A B 与 Y A B A B 与 非 Y A B C 与 Y
或
Y
或 非
Y
A B C
或
Y
A
非
Y
一般逻辑门只有两种输出状态: 高电平 低电平
11
三态门
A
EN
Y
高电平 低电平 高阻态 三态门
A
Y
高电平 低电平
逻辑门
三态门比逻辑门增加了一个控制端EN(又称高能端)当
控制端有效时,三态门处于工作态,否则处于高阻态
高阻态:相当于该门和它连接的电路处于断开的状态.主
要是用于总线的连接,因为总线只允许同时有一个使用者。
12
8086/8088CPU外部引脚
1、AD15-AD0(Address Data Bus) 分时复用的地址/数据线, 传送地址时三态输出。 传送数据时可双向三态 输入/输出。
13
8086CPU外部引脚
AD0
0 1 0 1
总线使用情况
16位数据总线上进行字传 送 高8位数据总线上进行字 节传送 低8位数据总线上进行字 节传送 无效
19
8086CPU外部引脚
7、READy
准备就绪信号,由外部输入,高电平 有效。它是由被访问的内存或I/O设备 发出的响应信号,当其有效时,表示 存储器或I/O设备已准备好,CPU可以 进行数据传送。
李建俊 电子工业出版社
1
教学目标及要求
1. 微型计算机原理的定义 2. 掌握微型计算机的基本结构 3. 掌握微型计算机内部各部件的功能 4. 掌握8086CPU各引脚的功能 5. 了解8086/8088的区别
2
教学重点及难点
重点: • 微型计算机内部各部件的功能 难点: • 8086各引脚的功能
② 8088/8086的最大和最小两种工
作模式可以通过引脚选择
9
基本概念
1、引脚的功能:即引脚的定义,其 名字反映了该信号的作用即含义。 2、信号的流向:信号从芯片输出, 还是从外部输入芯片,或双向。 3、有效电平:使引脚起作用的逻辑 电平。
4、三态能力:有些引脚除了能正常 输入输出外,还能输出高阻状态,此 时表示芯片已放弃了对该引脚的控制, 使之悬空,以方便其他设备接管对它 的控制
S4 0
S3 0
段寄存器 ES
0 1 1
1 0 1
SS CS(I9/S6-A16/S3(Address /Status) 分时复用的地址/状态线。
S4 0 0 1 1
S3 0 1 0 1
段寄存器 ES SS CS(I/O,INT) DS
S5 用来表示中断标志状态。 当IF=1时, S5置1。