第2章 8086微处理器2资料
合集下载
第2章-8086微处理器part2
8086 CPU在最小模式中引脚定义
M/#IO:Memory/Input & Output,三态输出
存储器或I/O端口访问信号 。指示8086的访问对象,发 给MEM或I/O接口。 M/# IO为高电平时,表示 当前CPU正在访问存储器;
M/# IO 为低电平时,表 示当前CPU正在访问I/O端 口
数据驱动器数据流向控制信 号,输出,三态。
在8086系统中,通常采用 74LS245、8286或8287作 为数据总线的驱动器,用 DT/#R信号来控制数据驱动 器的数据传送方向。 当DT/#R=1时,进行数据 发送; 当DT/#R=0时,进行数据 接收。
8086 CPU在最小模式中引脚定义
READY:准备就绪信号 由外部输入,高电平有效 ,表示CPU访问的存储器 或I/O端口己准备好传送 数据。 当READY无效时,要求 CPU插入一个或多个等待 周期Tw,直到READY信 号有效为止。
S3 0 1 0 1
当前正在使用的段寄存器 ES SS CS或未使用任何段寄存器 DS
8086 CPU在最小模式中引脚定义
#BHE/S7:高8位总线允许(Bus High Enable)
T1:指示高8位数据总线上的数据 是否有效 (#BHE:AD0)配合:00时读写字 ,01时读写奇地址字节,10时读写 偶地址字节 其他T周期:输出状态信号S7(S7 始终为逻辑1,未定义) DMA方式下,该引脚为高阻态。
最大模式引脚信号(续)
LOCK# :总线封锁(优先权锁定) 三态输出,低电平有效。 LOCK有效时表示CPU不允许其它总线主控者占用 总线。 ห้องสมุดไป่ตู้ 这个信号由软件设置。 • 当在指令前加上LOCK前缀时,则在执行这条 指令期间LOCK保持有效,即在此指令执行期 间,CPU封锁其它主控者使用总线。 在保持响应期间,LOCK#为高阻态。
第2章8086微处理器汇总
2020/10/5
黄玉清制作
2.2 8086 的内部结构
2.2.1 8086的内部结构
8086的内部结构-成两部分: 总线接口部件BIU: 总线接口单元BIU,负责控制存储器与I/O的 读写。 执行部件EU: 执行单元EU从指令队列中取出指令并执行。
特点: 取指令和执行指令分开进行,提高了速度。
2020/10/5
黄玉清制作
通用寄存器
四个专用寄存器 SP:堆栈指针 BP:基址指针: SI: 源变址寄存器 DI:目的源变址寄存器
算术逻辑单元ALU: 主要是加法器。大部分指令 的执行由加法器完成。 标志寄存器:
16位字利用了9位。
2020/10/5
黄玉清制作
20位地址加法器
四个段1I6字6P寄位中节存的的的器指内指:令容令C指是S队、针 下列D寄一S、存条S器指S、令IPE:S CS管理对总代现线码行接段代口;码部DS段件管基B理I地U数从址据内的段存偏移量, SS管理取堆指栈令段,取;E来S管的理总附是加放段在.
3.I/O空间寻址 8086采用独立寻址方式解决I/O寻址。
使用16位地址,可寻址64 K
2020/10/5
黄玉清制作
2.1.2 8086CPU总线接口单元BIU
2.1.2 8086CPU总线接口单元BIU
段寄存器 CS:16位的代码段寄存器,管理程序段 DS:16位的数据段寄存器,管理数据段。 ES:16位的扩展段(附加段)寄存器, 管理扩展段。 SS:16位的堆栈段寄存器,管理堆栈段。
思考题:
存储器的逻辑地址由哪几部分组成?存储器的物理 地址是怎样形成的?
2020/10/5
黄玉清制作
2.1.3 8086CPU执行单元EU
第2章 8086 微处理器
存储器交叉编址结构示意图
返回本节
2.2.2 物理地址的形成
1. 存储器的段结构 2. 物理地址的形成
1. 存储器的段结构
将1MB 的存储器空间分成若干个逻辑段,每个 段的容量 ≤ 64KB ,段内地址是连续的,因此 1MB 的存储空间可分成 16 个逻辑段( 0 ~ 15 )。 这样,一旦所需访问的段被确定以后,就采用 16位寻址方法在段内寻找要访问的存储单元。 段与段之间允许在整个空间浮动,即段与段之 间可以部分重叠、完全重叠、连续排列、断续 排列,编程人员使用起来非常灵活。
段基址在存储器中对应的分段情况
2. 物理地址的形成
为了得到20位的物理地址,先利用 存储器的分段技术得到逻辑地址,再 由逻辑地址变换为物理地址(又称绝 对地址)。逻辑地址一般表示为段基 址:偏移地址(如3000H:0200H)。 转换公式计算: 物理地址=段基址×16+偏移地址
8086物理地址的形成
1.总线接口部件BIU 总线接口部件的主要功能负责CPU与存储器、 I/O接口之间的信息传送。主要由4个段地址寄 存器 、指令指针寄存器IP 、20位地址加法器 、 6个字节的指令队列组成。 2.执行部件EU 执行部件的主要功能负责指令的执行。主要 由4个通用寄存器 、 4个专用寄存器 、 算术 逻辑单元ALU 、标志寄存器FR 组成。
非规则存放和规则存放
非规则存放: 对存放的字,其低位字节从奇数地址开始存放,其存放 的字称为字不对准存放。 规则存放: 对存放的字,其低位字节从偶数地址开始存放,其存放 的字称为字对准存放。
返回本节
THANK YOU VERY MUCH !
本章到此结束,谢谢!
结 束
第二章 8086微处理器及其系统
第2章 8086微处理器及其系统
2.1 8086微处理器简介 2.2 8086系统的存储器组织及I/O组织 2.3 8086系统的工作模式 2.4 8086的操作时序
2.1 8086微处理器简介 2.1.1 8086的编程结构
●执行部件(EU) ●总线接口部件(BIU)
执行部件
●内部寄存器 ●算术逻辑运算单元(ALU)及标志寄存器 ●内部控制逻辑电路
微型计算机基本结构
微处理器CPU
• ◆ CPU基本功能: ● 指明将要执行的指令的存储单元地址;取出指令并进行 译码; ● 执行指令,进行各种运算和处理,暂存少量数据; ● 传送数据;在CPU内部传送数据以及与外界交换数据; ● 对各部件进行控制; ● 响应其它部件发出的中断请求和总线请求;等等。
◆指针寄存器:堆栈指针SP、基址指针BP 指示当前堆栈段中的数据在段内的偏移地址
◆变址寄存器:源变址寄存器SI、目标变址寄存器DI 表示当前数据段或附加段中操作数的索引地 址(偏移地址的一部分)
(2) 存储器分段和段寄存器
◆存储器分段:1M字节的存储空间可分成若干个逻辑段, 每段最长为64K字节, 段首地址的高16位称作段基址,用段寄存器 表示
存储器操作:读操作(从指定的存储单元取出数据) 写操作(向指定的存储单元写入数据)。
8086/8088 CPU的内部结构
• (1)总线接口部件BIU
◆ BIU组成:地址加法器、专用寄存器组、指令队列缓冲器 总线控制电路
◆ BIU功能:负责完成CPU与存储器或I/O设备间的数据传送 ●地址加法器——把来自于段寄存器的16位地址(段首 地址)左移4位后与16位偏移地址相加,形成20位的实 际地址,以对1M字节的存储空间进行寻址。 ●指令队列:6个字节(8088为4个字节),一旦指令队 列中空出2个(8086)或1个(8088)字节,BIU将自动 进入读指令操作以填满指令队列。 ●专用寄存器组:段寄存器、指令指针寄存器IP、内部 通讯寄存器 ●总线控制电路:将CPU的内部总线与外部总线相连,是 CPU与外部交换数据的通路。
2.1 8086微处理器简介 2.2 8086系统的存储器组织及I/O组织 2.3 8086系统的工作模式 2.4 8086的操作时序
2.1 8086微处理器简介 2.1.1 8086的编程结构
●执行部件(EU) ●总线接口部件(BIU)
执行部件
●内部寄存器 ●算术逻辑运算单元(ALU)及标志寄存器 ●内部控制逻辑电路
微型计算机基本结构
微处理器CPU
• ◆ CPU基本功能: ● 指明将要执行的指令的存储单元地址;取出指令并进行 译码; ● 执行指令,进行各种运算和处理,暂存少量数据; ● 传送数据;在CPU内部传送数据以及与外界交换数据; ● 对各部件进行控制; ● 响应其它部件发出的中断请求和总线请求;等等。
◆指针寄存器:堆栈指针SP、基址指针BP 指示当前堆栈段中的数据在段内的偏移地址
◆变址寄存器:源变址寄存器SI、目标变址寄存器DI 表示当前数据段或附加段中操作数的索引地 址(偏移地址的一部分)
(2) 存储器分段和段寄存器
◆存储器分段:1M字节的存储空间可分成若干个逻辑段, 每段最长为64K字节, 段首地址的高16位称作段基址,用段寄存器 表示
存储器操作:读操作(从指定的存储单元取出数据) 写操作(向指定的存储单元写入数据)。
8086/8088 CPU的内部结构
• (1)总线接口部件BIU
◆ BIU组成:地址加法器、专用寄存器组、指令队列缓冲器 总线控制电路
◆ BIU功能:负责完成CPU与存储器或I/O设备间的数据传送 ●地址加法器——把来自于段寄存器的16位地址(段首 地址)左移4位后与16位偏移地址相加,形成20位的实 际地址,以对1M字节的存储空间进行寻址。 ●指令队列:6个字节(8088为4个字节),一旦指令队 列中空出2个(8086)或1个(8088)字节,BIU将自动 进入读指令操作以填满指令队列。 ●专用寄存器组:段寄存器、指令指针寄存器IP、内部 通讯寄存器 ●总线控制电路:将CPU的内部总线与外部总线相连,是 CPU与外部交换数据的通路。
《微机原理与接口技术》课件——第2章8086微处理器(2-1)
15 0
15 0
二、寄存器结构
*
AX BX CX DX
AH
BH
CH
DH
AL
BL
CL
DL
通用寄存器
15 8 7 0
累加器
基址寄存器
计数寄存器
15 0
段寄存器
*
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
数据寄存器
代码段寄存器
数据段寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
*
寄存器的作用 存放运算过程中所需要的操作数地址、操作数及中间结果。
寄存器的特点 存取速度比存储器快得多。
寄存器的分类
通用寄存器组 指针和变址寄存器 段寄存器 指令指针及标志位寄存器。
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
指令指针寄存器
标志寄存器
指令指针和标志寄存器
指针和变址寄存器
段寄存器
通用寄存器
15 0
二、寄存器结构
*
AX BX CX DX
AH
BH
CH
DH
AL
BL
CL
DL
通用寄存器
15 8 7 0
累加器
基址寄存器
计数寄存器
15 0
段寄存器
*
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
数据寄存器
代码段寄存器
数据段寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
*
寄存器的作用 存放运算过程中所需要的操作数地址、操作数及中间结果。
寄存器的特点 存取速度比存储器快得多。
寄存器的分类
通用寄存器组 指针和变址寄存器 段寄存器 指令指针及标志位寄存器。
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
指令指针寄存器
标志寄存器
指令指针和标志寄存器
指针和变址寄存器
段寄存器
通用寄存器
第2章8086微处理器1-2
来自忙碌忙碌忙碌
忙碌
1)CPU执行指令时总线处于空闲状态 ) 执行指令时总线处于空闲状态 2)CPU访问存储器 存取数据或指令 时要等待总线操作的完成 访问存储器(存取数据或指令 ) 访问存储器 存取数据或指令)时要等待总线操作的完成 缺点: 缺点:CPU无法全速运行 无法全速运行 解决:总线空闲时预取指令, 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到 需要指令时能立刻得到
6
结论
指令预取队列的存在使EU和 指令预取队列的存在使 和BIU两个部 两个部 分可同时进行工作, 分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求
7
8088/8086 CPU的特点
采用并行流水线工作方式 对内存空间实行分段管理: 对内存空间实行分段管理:
每段大小为16B~ 每段大小为16B~64KB 16B 用段地址和段内偏移实现对1MB空间的寻址 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址
支持多处理器系统; 支持多处理器系统; 片内没有浮点运算部件, 片内没有浮点运算部件,浮点运算由数学协处 理器8087支持(也可用软件模拟) 理器 支持(也可用软件模拟) 支持 注:80486DX以后的CPU均将数学协处理 器作为标准部件集成到CPU内部
8
二、8086CPU的内部结构
8086内部由两部分组成: 内部由两部分组成: 内部由两部分组成 执行单元(EU) 执行单元( ) 总线接口单元(BIU) 总线接口单元( )
2
指令预取队列(IPQ)
指令的一般执行过程: 指令的一般执行过程: 取指令 指令译码 读取操作数 执行指令 存放结果
3
串行工作方式:
8086以前的CPU采用串行工作方式: 8086以前的CPU采用串行工作方式: 以前的CPU采用串行工作方式
忙碌
1)CPU执行指令时总线处于空闲状态 ) 执行指令时总线处于空闲状态 2)CPU访问存储器 存取数据或指令 时要等待总线操作的完成 访问存储器(存取数据或指令 ) 访问存储器 存取数据或指令)时要等待总线操作的完成 缺点: 缺点:CPU无法全速运行 无法全速运行 解决:总线空闲时预取指令, 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到 需要指令时能立刻得到
6
结论
指令预取队列的存在使EU和 指令预取队列的存在使 和BIU两个部 两个部 分可同时进行工作, 分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求
7
8088/8086 CPU的特点
采用并行流水线工作方式 对内存空间实行分段管理: 对内存空间实行分段管理:
每段大小为16B~ 每段大小为16B~64KB 16B 用段地址和段内偏移实现对1MB空间的寻址 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址
支持多处理器系统; 支持多处理器系统; 片内没有浮点运算部件, 片内没有浮点运算部件,浮点运算由数学协处 理器8087支持(也可用软件模拟) 理器 支持(也可用软件模拟) 支持 注:80486DX以后的CPU均将数学协处理 器作为标准部件集成到CPU内部
8
二、8086CPU的内部结构
8086内部由两部分组成: 内部由两部分组成: 内部由两部分组成 执行单元(EU) 执行单元( ) 总线接口单元(BIU) 总线接口单元( )
2
指令预取队列(IPQ)
指令的一般执行过程: 指令的一般执行过程: 取指令 指令译码 读取操作数 执行指令 存放结果
3
串行工作方式:
8086以前的CPU采用串行工作方式: 8086以前的CPU采用串行工作方式: 以前的CPU采用串行工作方式
03第2章8086微处理器
第2章 8086微处理器 2.1 16位微处理器概述 2.2 8086/8088 CPU的结构
2.1 16位微处理器概述 微处理器(microprocessor)是微型计算机的运算及控 制部件,也称中央处理单元(CPU)。它本身不构成独 立的工作系统,因而它也不能独立地执行程序。通常, 微处理器由算术逻辑部件(ALU)、控制部件、寄存器 组和片内总线等几部分组成,这些都已在前面几章中 讲过了。 第一代微处理器是1971年Intel公司推出的4040和 8008。它们是采用PMOS工艺的4位及8位微处理器, 只能进行串行的十进制运算,集成度达到2,000个晶 体管/片,用在各种类型的计算器中已经完全能满足 要求。
(1) 4个通用寄存器既可以作为16位寄存器使用,也 可以作为8位寄存器使用。当BX寄存器作为8位寄存 器时,分为BH和BL,BH为高8位,BL为低8位。 (2) AX寄存器也常称为累加器,8086指令系统中有许 多指令都是通过累加器的动作来执行的。当累加器作 为16位来使用时,可以进行按字乘操作、按字除操 作、按字输入/输出和其他字传送等;当累加器作为 8位来使用时,可以实现按字节乘操作、按字节除操 作、按字节输入/输出和其他字节传送,以及十进制 运算等。 (3) 加法器是算术逻辑的主要部件,绝大部分指令的 执行都由加法器来完成。 (4) 标志寄存器FR共有16位,其中7位未用,所用的 各位含义如下:
第二代微处理器是1974年推出的8080,M6800及Z80等。它们是采用NMOS工艺的8位微处理器,集成 度达到9,000个晶体管/片。在许多要求不高的工业 生产和科研开发中已可运用。这些8位微处理器构成 的计算机系统对许多算术运算和其他操作都必须编制 程序。例如,即使是乘法和除法这样基本的运算都必 须用子程序来实现。由于每节进行操作,数值 越大或越小,计算时间都很长,这对数量大的数据库、 文字处理或实时控制等应用来说就太慢了。用提高时 钟频率可弥补这一局限,但也是很有限度的。此外, 8位微处理器的寻址能力也有局限。典型8位微处理 器有一条16位地址线,因此最多可寻址64K个存储单 元,对于具有大量数据的大型复杂程序都可能是不够 的。
2.1 16位微处理器概述 微处理器(microprocessor)是微型计算机的运算及控 制部件,也称中央处理单元(CPU)。它本身不构成独 立的工作系统,因而它也不能独立地执行程序。通常, 微处理器由算术逻辑部件(ALU)、控制部件、寄存器 组和片内总线等几部分组成,这些都已在前面几章中 讲过了。 第一代微处理器是1971年Intel公司推出的4040和 8008。它们是采用PMOS工艺的4位及8位微处理器, 只能进行串行的十进制运算,集成度达到2,000个晶 体管/片,用在各种类型的计算器中已经完全能满足 要求。
(1) 4个通用寄存器既可以作为16位寄存器使用,也 可以作为8位寄存器使用。当BX寄存器作为8位寄存 器时,分为BH和BL,BH为高8位,BL为低8位。 (2) AX寄存器也常称为累加器,8086指令系统中有许 多指令都是通过累加器的动作来执行的。当累加器作 为16位来使用时,可以进行按字乘操作、按字除操 作、按字输入/输出和其他字传送等;当累加器作为 8位来使用时,可以实现按字节乘操作、按字节除操 作、按字节输入/输出和其他字节传送,以及十进制 运算等。 (3) 加法器是算术逻辑的主要部件,绝大部分指令的 执行都由加法器来完成。 (4) 标志寄存器FR共有16位,其中7位未用,所用的 各位含义如下:
第二代微处理器是1974年推出的8080,M6800及Z80等。它们是采用NMOS工艺的8位微处理器,集成 度达到9,000个晶体管/片。在许多要求不高的工业 生产和科研开发中已可运用。这些8位微处理器构成 的计算机系统对许多算术运算和其他操作都必须编制 程序。例如,即使是乘法和除法这样基本的运算都必 须用子程序来实现。由于每节进行操作,数值 越大或越小,计算时间都很长,这对数量大的数据库、 文字处理或实时控制等应用来说就太慢了。用提高时 钟频率可弥补这一局限,但也是很有限度的。此外, 8位微处理器的寻址能力也有局限。典型8位微处理 器有一条16位地址线,因此最多可寻址64K个存储单 元,对于具有大量数据的大型复杂程序都可能是不够 的。
微型计算机原理 chapter2 8086微处理器
2. 对内存空间实行分段管理: 将内存分段并设置地址段寄存器,以实现对1MB空间
的寻址。
3. 支持多处理器系统:如8087 FPU
2020年1月7日
第3页
2.1 8086微处理器内部结构
2.1.1 8086 CPU的特点 串行工作方式
8086以前的CPU采用串行工作方式
CPU 取指令1 执行1 取指令2 执行2 取指令3 执行3
BUS
忙碌
t0
空闲
t1
忙碌
t2
空闲
t3
6个周期执行了3条指令
2020年1月7日
忙碌
t4
空闲
t5
第4页
2.1.1 8086 CPU的特点 并行工作方式
8086CPU采用并行工作方式
2.1 8086微处理器内部结构
CPU 取指令1 执行1
取指令2 执行2
取指令3 执行3
取指令4 执行4
BUS 忙碌
第二章 8086微处理器
2020年1月7日
本章主要内容
1 8086微处理器内部结构 2 8086微处理器外部特征 3 8086的存储器结构
2020年1月7日
第2页
§2.1 8086微处理器内部结构
2.1.1 8086 CPU的特点
1. 采用并行流水线工作方式: 通过设置指令预取队列(IPQ)实现
t0
2020年1月7日
忙碌
t1
忙碌
t2
忙碌
t3
取指令5
忙碌
t4
执行5
忙碌
t5
6个周期 执行了5条 指令
第5页
2.1.1 8086 CPU的特点
2.1 8086微处理器内部结构
第2章8086微处理器
6 CPU内部结构框图
第2章 8086微处理器
从功能上来看,8086CPU可分为两部分, 即执行部件EU(Execution Unit)和总线接口部 件BIU(Bus Interface Unit)。在执行指令的过 程中,两个部件形成了两级流水线:执行部件 执行指令的同时,总线接口部件完成从主存中 预取后继续指令的工作,使指令的读取与执行 可以部分重叠,从而提高了总线的利用率。
28
第2章 8086微处理器
● 段寄存器
系统中共有4个16位段寄存器,即代码段寄存 器CS、数据段寄存器DS、堆栈段寄存器SS和附 加段寄存器ES。这些段寄存器的内容与有效的地 址偏移量一起,可确定内存的物理地址。通常CS 划定并控制程序区,DS和ES控制数据区,SS控 制堆栈区。
第2章 8086微处理器
25
第2章 8086微处理器
(2) 总线接口部件(BIU) ●功能:负责完成取指令送指令队列,配合执行部件的动 作,从内存单元或I/O端口取操作数,或者将操作结果送内 存单元或者I/O端口。
●组成:它由16位段寄存器(DS、CS、ES、SS)、16位 指令指针寄存器IP(指向下一条要取出的指令代码)、20位 地址加法器(用来产生20位地址)和6字节(8088为4字节 )指令队列缓冲器组成。详细介绍如下:
CF= 1 OF= 0 AF= 0 PF= 1 SF= 1 ZF= 0
22
第2章 8086微处理器
加法运算:
若两个加数的最高位为0,而和的最高位为1,则产生上溢出; 若两个加数的最高位为1,而和的最高位为0,则产生下溢出; 两个加数的最高位不相同时,不可能产生溢出。
减法运算:
若被减数的最高位为0,减数的最高位为1,而差的最高位 为1,则产生上溢出;
第2章 8086微处理器
从功能上来看,8086CPU可分为两部分, 即执行部件EU(Execution Unit)和总线接口部 件BIU(Bus Interface Unit)。在执行指令的过 程中,两个部件形成了两级流水线:执行部件 执行指令的同时,总线接口部件完成从主存中 预取后继续指令的工作,使指令的读取与执行 可以部分重叠,从而提高了总线的利用率。
28
第2章 8086微处理器
● 段寄存器
系统中共有4个16位段寄存器,即代码段寄存 器CS、数据段寄存器DS、堆栈段寄存器SS和附 加段寄存器ES。这些段寄存器的内容与有效的地 址偏移量一起,可确定内存的物理地址。通常CS 划定并控制程序区,DS和ES控制数据区,SS控 制堆栈区。
第2章 8086微处理器
25
第2章 8086微处理器
(2) 总线接口部件(BIU) ●功能:负责完成取指令送指令队列,配合执行部件的动 作,从内存单元或I/O端口取操作数,或者将操作结果送内 存单元或者I/O端口。
●组成:它由16位段寄存器(DS、CS、ES、SS)、16位 指令指针寄存器IP(指向下一条要取出的指令代码)、20位 地址加法器(用来产生20位地址)和6字节(8088为4字节 )指令队列缓冲器组成。详细介绍如下:
CF= 1 OF= 0 AF= 0 PF= 1 SF= 1 ZF= 0
22
第2章 8086微处理器
加法运算:
若两个加数的最高位为0,而和的最高位为1,则产生上溢出; 若两个加数的最高位为1,而和的最高位为0,则产生下溢出; 两个加数的最高位不相同时,不可能产生溢出。
减法运算:
若被减数的最高位为0,减数的最高位为1,而差的最高位 为1,则产生上溢出;
计算机原理_2 8086微处理器
READY RDY1 AEN1 RDY2 AEN 2
3 复位信号产生 输入RES经过斯密特触发器分频以后,在时钟同频下产生RESET信号 送给CPU的RESET引脚,进行复位。 通常有以下两种情况会产生硬件复位信号: a 电源开关打开 b 按下机箱上的Reset按钮 电路如下所示:
例:CS的内容是89ABH,IP 的内容是0201H,则生成的地
址是89AB0H+0201H=89CB1H
20位的地址加法器 段地址左移4位+偏移量 → 20位的实际物理地址 段地址*16+偏移量 → 20位的实际物理地址 6个字节的指令队列
执行部件(EU)
16位的算术逻辑单元ALU 4个16位的通用寄存器 AX,BX,CX,DX,它们又可以分成8个8位的寄存器使用 AH,AL,BH,BL,CH,CL,DH,DL AL AH 4个16位的专用寄存器 SP——堆栈指针寄存器 BP——基址指针寄存器 SI ——源变址寄存器 DI ——目的变址寄存器
(二)时钟发生电路8284A 1 产生时钟信号 OSC 内部时钟同频信号 CLK 内部时钟三分频信号,占空比1/3 PCLK 内部时钟六分频信号,占空比1/2 CSYNC 外部时钟的同频信号 X1、X2 外接晶体,供内部振荡器产生震荡频率 EFI 外接时钟入端 F/C 时钟输入选择 PC机中14.31818MHz的外接晶体 CLK=4.77MHz 2 准备就绪信号 ASYNC为低电平时,表示READY输出时插入一个时钟周期延时。
三、常用的数据管理方式
堆
栈
LIFO FIFOቤተ መጻሕፍቲ ባይዱ
1
2
堆栈:按照后进先出(LIFO)的原则组织的存储器空间(栈)。
第02章8086微处理器
在其它时钟周期,输出为状态信号S7。 但8086芯片, S7未定义。
第02章8086微处理器
下面介绍引脚中的控制信号。 4. MN/MX最小/最大模式控制信息
高电平— 8086处于最小模式。 低电平— 8086处于最大模式。
5. RD读信号 (输出,三态) 低电平有效。表示将对内存或I/O端口
读操作。
中断允许标志IF(Interrupt-enable Flag):
IF=1,允许CPU响应外部的可屏蔽中断请 求;IF=0则禁止响应。IF对外部非屏蔽中 断及内部中断不起作用。
第02章8086微处理器
方向标志DF(Direction Flag):
在串操作指令中,DF=0时,变址指针自 动增量,DF=1时,则自动减量。
当队列中有两个以上的指令字节空的时候, BIU会自动地执行总线操作,继续取指令。
在执行指令时,如要取操作数,则也由BIU从
内存或I/O接口指定区域取出,送给EU部件去
执行。
第02章8086微处理器
二、EU部件 由ALU、通用寄存器、标志寄存器和
控制电路组成,负责指令的执行。ALU、寄 存器和数据传输通路均是16bit的。
OF。
进位标志CF(Carry Flag):
当结果的最高位(字节-D7,字-D15)产生 进位(加法运算)或借位(减法运算)时,CF=1; 否则,CF=0,移位和循环指令也影响CF。
第02章8086微处理器
奇偶标志位PF(Parity Flag):
若结果中的低8位含有“1” 的个数为偶数, 则PF=1;否则,PF=0。
第02章8086微处理器
2. 地址/状态信号线A19/S6~A16/S3(输出、三态)
在总线周期的第一个时钟周期(T1)用于输出 地址信号的最高4bit并锁存。 其它时钟周期中用来输出状态信号S6~S3, 其中: S6——低电平,表示8086当前与总线相连。
第02章8086微处理器
下面介绍引脚中的控制信号。 4. MN/MX最小/最大模式控制信息
高电平— 8086处于最小模式。 低电平— 8086处于最大模式。
5. RD读信号 (输出,三态) 低电平有效。表示将对内存或I/O端口
读操作。
中断允许标志IF(Interrupt-enable Flag):
IF=1,允许CPU响应外部的可屏蔽中断请 求;IF=0则禁止响应。IF对外部非屏蔽中 断及内部中断不起作用。
第02章8086微处理器
方向标志DF(Direction Flag):
在串操作指令中,DF=0时,变址指针自 动增量,DF=1时,则自动减量。
当队列中有两个以上的指令字节空的时候, BIU会自动地执行总线操作,继续取指令。
在执行指令时,如要取操作数,则也由BIU从
内存或I/O接口指定区域取出,送给EU部件去
执行。
第02章8086微处理器
二、EU部件 由ALU、通用寄存器、标志寄存器和
控制电路组成,负责指令的执行。ALU、寄 存器和数据传输通路均是16bit的。
OF。
进位标志CF(Carry Flag):
当结果的最高位(字节-D7,字-D15)产生 进位(加法运算)或借位(减法运算)时,CF=1; 否则,CF=0,移位和循环指令也影响CF。
第02章8086微处理器
奇偶标志位PF(Parity Flag):
若结果中的低8位含有“1” 的个数为偶数, 则PF=1;否则,PF=0。
第02章8086微处理器
2. 地址/状态信号线A19/S6~A16/S3(输出、三态)
在总线周期的第一个时钟周期(T1)用于输出 地址信号的最高4bit并锁存。 其它时钟周期中用来输出状态信号S6~S3, 其中: S6——低电平,表示8086当前与总线相连。
2 8086微处理器
⑶ 总线控制逻辑是用来控制BIU中各部件的协同操作。
2019/5/17
7
3 .EU与BIU的关系:
执行部件(EU)和总线接口部件(BIU) 的操作是独立进行的,因此可以并行工 作。在EU执行指令过程中,BIU就可以 取出指令存放在指令队列,而当EU执行 完一条指令后就可以立刻到指令队列中 去取下一条将要执行的指令。从而节省 了CPU因等待到内存取指令所需要的时间 ,提高了CPU的利用率,加快了系统运行 速度。
2019/5/17
18
2.FLAGS为标志寄存器,又称程序状态寄存 器(Program Status Word, PSW),共16 位,用于存放当前程序指令执行的状态和运算 结果的特征。标志寄存器中的每一位又称标志 位,8086使用其中的9个标志位,各标志位分 布如图2.3所示。
标志寄存器中标志位分布图
⑷ 如指令执行,要求读取操作数,则由BIU取 操作数完成指令读功能。
⑸ EU执行再下一条指令,返回⑴处继续执行上 述操作过程。
2019/5/17
11
总之,在指令执行过程中,利用EU 分析操作码和执行指令过程中不占用总 线时间这一特点,由BIU自动地通过总 线取存储器指令到指令队列中,从而使 指令的执行可以不间断的进行,提高了 执行指令的速度。
⑹ DI-目的变址寄存器。作为串操作指令的目的操作数的地址 指针,也可用于存放操作数的偏移地址。
⑺ BP-堆栈基址寄存器。用于存放堆栈中操作数的EA。 ⑻ SP-栈顶指针。用于指示栈顶的偏移地址,与堆栈段寄存器 SS联用来确定堆栈段中的某一存储单元的地址。
2019/5/17
15
上述每个寄存器都是16位的,可以存放一 个字类型数据,
2019/5/17
2019/5/17
7
3 .EU与BIU的关系:
执行部件(EU)和总线接口部件(BIU) 的操作是独立进行的,因此可以并行工 作。在EU执行指令过程中,BIU就可以 取出指令存放在指令队列,而当EU执行 完一条指令后就可以立刻到指令队列中 去取下一条将要执行的指令。从而节省 了CPU因等待到内存取指令所需要的时间 ,提高了CPU的利用率,加快了系统运行 速度。
2019/5/17
18
2.FLAGS为标志寄存器,又称程序状态寄存 器(Program Status Word, PSW),共16 位,用于存放当前程序指令执行的状态和运算 结果的特征。标志寄存器中的每一位又称标志 位,8086使用其中的9个标志位,各标志位分 布如图2.3所示。
标志寄存器中标志位分布图
⑷ 如指令执行,要求读取操作数,则由BIU取 操作数完成指令读功能。
⑸ EU执行再下一条指令,返回⑴处继续执行上 述操作过程。
2019/5/17
11
总之,在指令执行过程中,利用EU 分析操作码和执行指令过程中不占用总 线时间这一特点,由BIU自动地通过总 线取存储器指令到指令队列中,从而使 指令的执行可以不间断的进行,提高了 执行指令的速度。
⑹ DI-目的变址寄存器。作为串操作指令的目的操作数的地址 指针,也可用于存放操作数的偏移地址。
⑺ BP-堆栈基址寄存器。用于存放堆栈中操作数的EA。 ⑻ SP-栈顶指针。用于指示栈顶的偏移地址,与堆栈段寄存器 SS联用来确定堆栈段中的某一存储单元的地址。
2019/5/17
15
上述每个寄存器都是16位的,可以存放一 个字类型数据,
2019/5/17
第2章 8086微处理器2
A0~A19 锁存器
总线收发器
D0~D15
图2-8 最大模式下的系统典型配置
最大组态下:
1、 地址总线:由8086CPU的AD0~AD15、A16 、A17、A18、A19通过3片地址锁存器8282后 构成,提供20条地址线。 2、数据总线:由8086CPU的AD0~AD15通过两 片8286/8287发送/接收接口芯片后构成,这样 增大了总线的驱动能力。 16条数据总线。 3、控制总线:NMI、INTR直接由8086CPU的控 制线供给。其它大部分控制信号由8288总线控 制器供给。
第2章 8086微处理器
●A19/S6~A16/S3(35脚~38脚):地址/状态总线,输出,三态。是采用 分时工作方式传送地址或状态的复用引脚,其中A19~A16为20位地址总线的 高4位地址,S6~S3是状态信号。 S6:指示8086当前是否与总线相连,当S6=0表示8086当前与总线相连。 S5:表明中断允许标志当前的设置。S5=0,表示CPU中断是关闭的,禁止 一切可屏蔽中断的中断请求;S5=1表示CPU中断是开放的,允许一切可屏蔽 中断的中断申请。 S4和S3:组合起来指出当前使用的段寄存器的情况。 ●BHI/S7(34脚):高8位数据总线允许/状态信号,输出,三态。高8位数 据总线允许信号,当低电平有效时,表明在高8位数据总线D15 ~D8上传送1 个字节的数据;S7为设备的状态信号。
第2章 8086微处理器
●INTA(24脚):可屏蔽中断响应信号,输出,低电平有效。为低电平时, 表示CPU已经响应外设的中断请求,即将执行中断服务程序。 ●ALE(25脚):地址锁存允许信号,输出,高电平有效。用来做地址锁存器 8282的片选信号,使由AD15~AD0分时发出的地址信息和数据信息分开。 ●DT/R(27脚):数据发送/接收信号,输出,三态。DT/信号用来控制数据 传送的方向。DT/=1时,CPU发送数据到存储器或I/O端口;DT/=0时,CPU接 收来自存储器或I/O端口的数据。 ●DEN(26脚):数据允许控制信号,输出,三态,低电平有效。信号用作 总线收发器的选通控制信号。当为低电平时,表明CPU进行数据的读/写操作 。 ●HOLD(31脚):总线保持请求信号,输入,高电平有效。在DMA数据传 送方式中,由总线控制器8237A发出一个高电平有效的总线请求信号,通过 HOLD引脚输入到CPU,请求CPU让出总线控制权。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章 8086微处理器
(1) 最小模式下的典型配置 当8086CPU的MN/MX接高电平(+5V)时,8086CPU工作于最小模式, 8086最小模式的典型配置电路如图2-7所示,它具有如下几个特点。 ●MN/MX端接+5V,决定了CPU的工作模式。 ●用一片8284A,作为时钟信号发生器。 ●用三片8282或74LS273,作为地址信号的锁存器。 ●当系统中所连的存储器和外设端口较多时,需要增加数据总线的驱动 能力,这时,需用2片74LS245或8286/8287作为总线收发器。
第2章 8086微处理器
(1)两种工作方式功能相同的引脚
● AD15 ~AD0(39脚、2脚~16脚):
地址/数据总线,双向,三态。
是采用分时工作方式传送地址或数据的复用引脚。根 据不同时钟周期的要求,决定当前是传送要访问的存储单 元或I/O端口的低16位地址,还是传送16位数据,或是处于 高阻状态。
锁存器
A0~A19
D0~D15
总线收发器
图2-7最小模式下的系统典型配置
最小模式下三种总线的产生:
1)、 地址总线:由8086CPU的AD0~AD15、 A16、A17、A18、A19通过3片地址锁存器 8282后构成,提供20条地址线。 2)、数据总线:直接由8086CPU的AD0~AD15 供给16条数据总线。 或者通过两片8286/8287 发送/接收接口芯片后构成,这样增大了总线 的驱动能力。
●/DEN(26脚):数据允许控制信号。
第2章 8086微处理器
●HOLD(31脚):总线保持请求信号,输入,高电平有 效。请求CPU让出总线控制权。 ●HLDA(30脚):总线保持响应信号,输出,高电平有 效。总线将处于浮空状态,CPU让出对总线的控制权。
第2章 8086微处理器
2. 最小模式和最大模式的典型配置
Intel 8086作为一个微处理器芯片,必须与其它芯片相配 合才能构成一个完整的CPU子系统。 最小模式下的CPU子系统配置:8086CPU、地址锁存缓 冲器、双向数据缓冲器、 8284A时钟发生器。 。 最大模式下的CPU子系统配置:8086CPU、8087协处理 器(可选)、地址锁存缓冲器、双向数据缓冲器、8284A 时钟发生器、总线控制器8288。
第 2章
8086微处理器
2.2 8086微处理器引脚功能
目的与要求:
1、了解8086CPU的所有管脚。 2、掌握下述管脚AD0~AD15、A16~A19、/RD、 READY、MN//MX、M//IO、/WR、ALE 3、掌握8086CPU最小模式典型配置图。 4、掌握 8086CPU最小模式下三种总线的产生。
第2章 8086微处理器
●MN//MX(33脚):最小/最大模式输入控制信号。引脚用 来设置8086 CPU的工作模式。当为高电平(接+5V)时, CPU工作在最小模式;当为低电平(接地)时,CPU工作 在最大模式。
第2章 8086微处理器
(2)工作于最小模式时使用的引脚
当MN/引脚接高电平时,CPU工作于最小模式。此时,引脚24~31的含义及 其功能如下所示。
第2章 8086微处理器
●A19/S6~A16/S3(35脚~38脚):地址/状态 总线,输出,三态。是采用分时工作方式传送地 址或状态的复用引脚,其中A19~A16为20位地址 总线的高4位地址,S6~S3是状态信号。
●/BHI/S7(34脚):高8位数据总线允许/状态信号,输 出,三态。高8位数据总线允许信号,当低电平有效时,表 明在高8位数据总线D15 ~D8上传送1个字节的数据;S7 为设备的状态信号。
第2章 8086微处理器
●RESET(21脚):复位信号,输入,高电平有效。
RESET信号至少要保持4个时钟周期。CPU接到RESET信 号后,停止进行操作,并将标志寄存器、IP、DS、SS、 ES及指令队列清零,将CS设置为FFFFH。当复位信号为 低电平时,CPU从FFFF0H开始执行程序。
●VCC(40脚):电源输入引脚。8086 CPU采用单一+ 5V电源供电。 ●GND(1、20脚):接地引脚。
1.引脚图 8086CPU采用双列直插40脚封装, 引脚图如图2-6所示。 8086CPU是16位微处理器(CPU),采用大规模或超大规模集成电 路技术做成的半导体芯片,上面集成了控制器、运算器和寄存器 组。
(最小模式/最大模式)
图2-6 8086 CPU引脚图
第2章 8086微处理器
8086微处理器(CPU)可以在两种模式下工作,即最大 模式和最小模式。 所谓最小模式,就是系统中只有8086一个微处理器。在 这种系统中,所有的总线控制信号都直接由8086产生。 在最大模式系统中,总是包含两个或两个以上微处理器 ,其中一个主处理器就是8086,其他的处理器为协处理器 。例如用于数值运算的处理器8087,用于输入/输出大量数 据的处理器8089。
第2章 8086微处理器
●/RD(32脚):读信号,输出,三态,低电平 有效。当信号为低电平时,表示CPU正在进行读存 储器或读I/O端口的操作。 ●READY(22脚):准备就绪信号,输入,高电 平有效。当READY=1时,表示CPU访问的存储器 或I/O端口已准备好传送数据。若CPU在总线周期 T3状态检测到READY信号为低电平,表示存储器 或I/O设备尚未准备就绪,CPU自动插入一个或多 个等待状态TW,直到READY信号变为高电平为 止。
●M//IO(28脚):存储器或I/O端口访问信号,三态
输出。M/=1时,表示CPU当前正在访问存储器;M/=0时 ,表示CPU当前正在访问I/O端口。
●/WR(29脚):写信号,三态输出,低电平有效。
WR=0时,表示当前CPU正在对存储器或I/O端口进行写 操作。
第2章 8086微处理器
●/INTA(24脚):可屏蔽中断响应信号。 ●ALE(25脚):地址锁存允许信号,输出,高电平有效 。用来做地址锁存器8282的片选信号,使由AD15~AD0分 时发出的地址信息和数据信息分开。 ●DT//R(27脚):数据发送/接收信号。