第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#为高阻态。
第二章 8086微处理器

第二章8086/8088微处理器及其系统结构内容提要:1.8086微处理器结构:CPU内部结构:总线接口部件BIU,执行部件EU;CPU寄存器结构:通用寄存器,段寄存器,标志寄存器,指令指针寄存器;CPU引脚及其功能:公用引脚,最小模式控制信号引脚,最大模式控制信号引脚。
2.8086微机系统存储器结构:存储器地址空间与数据存储格式;存储器组成;存储器分段。
3.8086微机系统I/O结构4.8086最小/最大模式系统总线的形成5.8086CPU时序6.最小模式系统中8086CPU的读/写总线周期7.微处理器的发展学习目标1.掌握CPU寄存器结构、作用、CPU引脚功能、存储器分段与物理地址形成、最小/最大模式的概念和系统组建、系统总线形成;2.理解存储器读/写时序;3.了解微处理器的发展。
难点:1.引脚功能,最小/最大模式系统形成;2.存储器读/写时序。
学时:8问题:为什么选择8088/8086?•简单、容易理解掌握•与目前流行的P3、P4向下兼容,形成x86体系•16位CPU目前仍在大量应用思考题1、比较8086CPU与8086CPU的异同之处。
2、8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?3、CPU的运算功能是由ALU实现的,8086CPU中有几个ALU?是多少位的ALU?起什么作用?4、8086CPU有哪些寄存器?各有什么用途?标志寄存器的各标志位在什么情况下置位?5、8086CPU内哪些寄存器可以和I/O端口打交道,它们各有什么作用?6、8086系统中的物理地址是如何得到的?假如CS=2400H,IP=2l00H,其物理地址是多少?思考题1.从时序的观点分析8088完成一次存储器读操作的过程?2.什么是8088的最大、最小模式?3.在最小模式中,8088如何产生其三总线?4.在最大模式中,为什么要使用总线控制器?思考题1.试述最小模式下读/写总线周期的主要区别。
第二章-8086微处理器

答案:A
思考题
8086/8088的状态标志有 A)3 B)4 C)5 答案:D 个。 D)6
思考题
8086/8088的控制标志有 A)3 B)4 C)5 答案:A 个。 D)6
三、引脚信号和功能(图2-5 )
8086总线周期的概念: 为了取得指令或传送数据,就需要CPU的总线接 口单元(BIU)执行一个总线周期。 一个最基本的总线周期由4个时钟周期组成。 习惯上将4个时钟周期分别称为4个状态,即T1状 态、T2状态、T3状态和T4状态。 图2-17
2.方向标志DF(Direction Flag) 用于串操作指令中的地址增量修改(DF =0)还是减量修改(DF=1)。 STD使DF=1 CLD使DF=0
(三)标志寄存器-控制标志(续)
3.跟踪标志TF(Trap Flag) 若TF=1,则CPU按跟踪方式(单步方式) 执行程序,否则将正常执行程序。
思考题
指令队列的作用是 A)暂存操作数地址 。 B)暂存操作数
C)暂存指令地址
D)暂存预取指令 答案:D
思考题
8086的指令队列的长度是 A)4个 B)5个 C)6个 D)8个 字节。
答案: C
思考题
8088的指令队列的长度是 A)4个 B)5个 C)6个 D)8个 字节。
答案:A
思考题
第二章 8086/8088微处理器
8086/8088微处理器的结构 8086/8088典型时序分析
简 介
8086:16位微处理器 数据总线宽度16位:可以处理8位或16位数据 地址总线宽度20位:可直接寻址1MB存储单元和 64KB的I/O端口 8088:准16位处理器 内部寄存器及内部操作均为16位,外部数据总线8位 8088与8086指令系统完全相同,芯片内部逻辑结构、芯片引 脚有个别差异。 设计8088的目的主要是为了与Intel原有的8位外围接口芯片 直接兼容
第2章 16位微处理器

表2.2 段寄存器使用时的一些基本约定
思考题
下列CPU中属于准16位的是 A.8080 B.8086 C.8088 。 D.80386SX A.ALU,EU,BIU C.寄存器组,ALU 答案: C
思考题
8086CPU的内部结构由 组成。 B.ALU,BIU,地址加法器 D.EU,BIU
答案:D
思考题
例题
设(CS)=4232H ,(IP)=0066H,试计算物理地址。
思考题
已知物理地址为FFFF0H,且段内偏移量为 A000H,若对应的段基址放在DS中,则DS 应为 。 A.5FFFH B.F5FFH C.5FFF0H D.F5FF0H 答案:B
注意
一个存储单元的物理地址是唯一的,而逻辑 地址是可以不唯一的。 例如: 1200H:0345H12345H 1100H:1345H12345H
第2章 16位微处理器8086/8088
2.1.0 简介 2.1.1 8086/8088CPU的内部结构 2.1.2 8086/8088CPU的总线周期 2.1.3 8086/8088系统的工作模式 2.1.4 8086/8088的操作和时序 作业
2.1.0 简介
1978年,Intel推出了8086微处理器,一年多以后推出了 8088,这两种都是16位微处理器。 时钟频率为5MHz~10MHz,最快的指令执行时间为400ns。 8086有16根数据线:可以处理8位或16位数据。 有20根地址线:可寻址即1MB(220)的存储单元和 64KB(216)的I/O端口。 8088:准16位微处理器 8088的内部寄存器、运算器以及内部数据总线都是按16位设 计的,但外部数据总线只有8条,因此执行相同的程序, 8088要比8086有较多的外部存取操作而执行得较慢。 设计的主要目的:为了与Intel原有的8位外围接口芯片直接 兼容。
微处理器的体系结构

兼容性
针对系列计算机 要求所有机种间能够保持向上兼容和向后兼容 向上兼容:为某个档次机种编制的软件能够不加修 改地运行在比它高档的机种上 向后兼容:为某个时期生产的机种编制的软件能够 不加修改地运行在它之后生产的机种上 Pentium微处理器的运行模式:实模式、保护模式
兼容性 针对(软件)体系结构,非硬件实现
1000:1234 0100:ABCD
计算机体系结构是程序员所看到的系统的一些属性: 概念性的结构和功能上的表现,这些属性既不同于数 据流和控制的组织,也不同于逻辑设计和物理实现。
Amdahl,1964
计算机体系结构是连接硬件和软件的一门学科,它研 究的内容不但涉及计算机硬件,也涉及计算机软件。
计算机体系结构与计算机组成
区别在于关心的问题不同: •计算机体系结构关心的是怎样合理地进行软硬 件功能分配,为软件人员提供适用的计算机 •计算机组成关心的是怎样合理地实现分配给硬 件的功能和指标,提高性能价格比
第二章 Pentium微处理器的体系结构
2.1 计算机体系结构的含义 2.2 Pentium微处理器的内部结构 2.3 实模式软件体系结构 2.4 保护模式软件体系结构 2.5 浮点部件软件体系结构
2.1 计算机体系结构的含义
计算机体系结构 = computer architecture (计算机系统结构)
简单指令:完全由硬件执行而无需任何微码控制, 在一个时钟周期内执行的指令
•mov reg, reg/mem/imm •mov mem,reg/imm •alu reg, reg/mem/imm •alu mem, reg/imm •inc reg/mem •dec reg/mem •push reg/mem •pop reg •lea reg, mem •jmp/call/jcc near •nop
第2章 ARM微处理器概述

工业控制领域:
作为32位 的RISC 架构,基于ARM 核的微控制器芯片不
但占据了高端微控制器市场的大部分市场份额,同时也 逐渐向低端微控制器应用领域扩展,ARM 微控制器的低 功耗、高性价比,向传统的8 位/16 位微控制器提出了挑 战。
无线通讯领域:
目前已有超过85%的无线通讯设备采用了ARM 技术,
ARM体系结构的变种
(4)J变种(Java加速器Jazelle)
ARM的Jazelle技术将Java的优势和先进的32位RISC芯
片完美地结合在一起。Jazelle技术提供了Java加速功能, 可以得到比普通Java虚拟机高得多的性能。与普通的 Java虚拟机相比,Jazelle使Java代码运行速度提高了8 倍,而功耗降低了80%。 Jazelle技术使得程序员可以在一个独立的处理器上同时 运行Java应用程序、已经建立好的操作系统、中间件以 及其他的应用程序。与使用协处理器和双处理器相比, 使用单独的处理器可以在提供高性能的同时保证低功耗 和低成本。 J变种首先在ARM体系版本4TEJ中使用,用字母J表示。
使用电池供电的高性能的便携式设备。这些 设备一方面需要处理器提供高性能,另一方 面又需要功耗很低。SIMD功能扩展为包括音 频/视频处理在内的应用相同提供了优化功能。 它可以使音频/视频处理性能提高4倍。 Version 6首先在2002年春季发布的ARM11 处理器中使用。
2.2.3 ARM体系结构的变种及版本 命名格式
Version 4(v4)
该版本增加了下列指令:
半字加载和存储指令; 加载带符号的字节和半字数据的指令; 增加mb状态; 增加了处理器的特权模式。 该版本不再强制要求与以前的26位地址空间 兼容。
第2章 16位微处理器8086

计算机原理讲义
执行单元EU
4) 标志寄存器 FLAG
6位状态标志,3位控制标志IF、DF、TF,剩下7位保留 位状态标志, 位控制标志IF、DF、TF,剩下7 IF 15 14 13 12 11 10 9 IF 8 7 6 5 4 AF 3 2 PF 1 0 CF
OF DF
TF SF ZF
Flag) 位标志, CF(Carry Flag)进(借)位标志,加法运算最高位产生进位或减法运算 最高位产生借位, 否则置0 最高位产生借位,则CF置1,否则置0 Flag)辅助进位标志,加法运算时第3位往第4 AF(Auxiliary Carry Flag)辅助进位标志,加法运算时第3位往第4位 有进位,或减法运算时第3位往第4位有借位, AF置 否则置0 有进位,或减法运算时第3位往第4位有借位,则AF置1,否则置0 Flag)零标志, 若当前运算结果为零, ZF置1,否则置 否则置0 ZF(Zero Flag)零标志, 若当前运算结果为零, 则ZF置1,否则置0 SF( Flag)符号标志,与运算结果最高位相同,若为负数, SF(Sign Flag)符号标志,与运算结果最高位相同,若为负数,则SF 否则置0 SF指示了当前运算结果是正还是负 置1,否则置0,SF指示了当前运算结果是正还是负 Flag)溢出标志,有符号数算术运算结果溢出, OF置 OF(Overflow Flag)溢出标志,有符号数算术运算结果溢出,则OF置1, 否则置 否则置0 PF(Parity Flag)奇偶标志,运算结果低8位所含1的个数为偶数则PF Flag)奇偶标志,运算结果低8位所含1的个数为偶数则PF 置1,否则置0 否则置 计算机原理讲义
总线接口单元(BIU) 一. 总线接口单元(BIU) 1. 具体功能
微机原理第二章8086微处理器

▪ 这些引脚就是微处理器级总线。微处理器通过微处理器 级总线沟通与外部部件和设备之间的联系。这些总线及 其信号必须完成以下功能:
▪ (1)和存储器之间交换信息; ▪ (2)和I/O设备之间交换信息; ▪ (3)为了系统工作而接收和输出必要的信号,如输入
▪ 时钟信号输入端。19 CLK(输入) ▪ 8086和8088为5MHz。 ▪ 8086/8088的CLK信号必须由8284A时钟发生器产生。 ▪ 微处理器是在统一的时钟信号CLK控制下,按节拍进行
工作的。
2021/6/12
16
8086/8088微处理器——微处理器的引脚功能
▪ 工作方式控制线 33
指令执行示例
2021/6/12
1
第二章:8086/8088微处理器
1. 微处理器ห้องสมุดไป่ตู้结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
2
2021/6/12
▪ 存储器分段
▪ 由于CPU内部的寄存器都是16位的,为了
2021/6/12
7
第二章:8086/8088微处理器
1. 微处理器的结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
8
8086/8088微处理器——微处理器的引脚功能
▪ 一、微处理器的外部结构
时钟脉冲、复位信号、电源和接地等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BX : Base用作基址寄存器使用。
CX : Count可以作计数寄存器使用。
DX : Data可以作为数据寄存器使用。
2014-6-8
(一)通用寄存器(cont.)
(2)地址指针与变址寄存器
SP、BP、SI、DI 四个16位寄存器。以字为单位在运算过 程中存放操作数,经常用以在段内寻址时提供偏移地址。
OF(Overflow Flag)溢出标志(一般指带符号数的补码溢出) OF=1:在带符号数运算过程中,结果超过了机器表示的范围,称 为溢出。 OF=0:在带符号数运算过程中,结果未超过机器表示范围,称为 无溢出。 字节允许范围 -128—+127,字运算范围 -32768—+32767 。 SF(Sign Flag)符号标志 SF=1:记录运算结果的符号为负。 SF=0:记录运算结果的符号为正。 ZF(Zero Flag)零标志 ZF=1:运算结果为0。 ZF=0:运算结果不为0。
9个标志位,其中6个条件标志位用于存放结果状态, 16 位加法器,用于对寄存器和指令操作数进行算术或逻辑运算, 接受从总线接口单元的指令队列中取来的指令代码,对其译码和向 EU 内 各有关部分发出时序命令信号,协调执行指令规定的操作。
6 qingyang@
算术逻辑单元:
+ 0101010001101010 1000011100101111
(2) 1110010001010011 +1100010101110010 1010100111000101 OF=0 SF=1 ZF=0 AF=0 PF=1 CF=1
所以,
OF=1 SF=1 ZF=0 AF=0 PF=0 CF=0
IF(Interupt Flag)中断标志位
IF=1, 允许外部可屏蔽中断。CPU可以响应可屏蔽中断请求。 IF=0, 关闭中断。CPU禁止响应可屏蔽中断请求。 IF的状态对不可屏蔽中断和内部软中断没有影响。
DF(Direction Flag)方向标志位
DF=1,每次串处理操作后使变址寄存器SI和DI减量,使串处理从高地址向低地址方 向处理。 DF=0,每次串处理操作后使变址寄存器SI和DI增量, 使串处理从低地址向高地址方 向处理。 DF方向标志位是在串处理指令中控制处理信息的方向用的。
qingyang@ 20
2014-6-8
例2:执行两个数的加法,分析对标志位的影响。
标志:
运算结果最高位为1, SF=1 ; 运算结果本身不为0, ZF=0 ; 最高位向前无进位, CF=0 次高位向最高位产生进位,而最高位向前没有进位, OF=1 ; 结果低8位含偶数个1, PF=1 ; D3位向D4位有进位, AF=1 。 在绝大多数情况下,一次运算后并不影响所有标志, 程序也并不需要对所有的标志作全面的关注。 一般只是在某些操作后,对其中某个标志进行检测。
AF=1:记录运算时D3位(半个字节)产生进位或借位。 AF=0:记录运算时D3位(半个字节)不产生进位或借位。
⑥ PF(Parity Flag)奇偶标志
Hale Waihona Puke PF=1: 结果操作数低8位中有偶数个1。 PF=0: 结果操作数低8位中有奇数个1。
用来为机器中传送信息时可能产生的误码提供检验条件。
只用了其中9位, 6位条状态标志 , 3位控制标志。
2014-6-8
14
qingyang@
状态标志寄存器(PSW)
2014-6-8
15
qingyang@
标志寄存器---状态标志位
用来记录程序中运行结果的状态信息,作为后续条件转移指令的转移 控制条件。 状态标志位(条件码)包括6位:CF 、 PF 、 AF 、 ZF 、 SF 、 OF 。 ①
12
qingyang@
(二)段寄存器
段寄存器: 4个16位段寄存器CS、DS、SS、ES。 用来识别当前可寻址的四个段,不可互换使用。
CS——Code Segment Register 代码段寄存器
用来识别当前代码段(程序一般放在代码段)。 用来识别当前数据段。 用来识别当前堆栈段。 用来识别当前附加段。
2014-6-8
17
qingyang@
控制标志位
对控制标志位进行设置后,对其后的操作起控制作用。
控制标志位包括3位: 标志 DF 。 TF、 IF 、 DF 。跟踪(陷阱)标志TF、中断标志IF 、方向
TF(Trap Flag)跟踪(陷阱)标志位
TF=1 ,每执行一条指令后,自动产生一次内部中断,使CPU处于单步执行指令工作 方式,便于进行程序调试,用户能检查程序。 TF=0, CPU正常工作,不产生陷阱。
BP
SI DI IP FLAGS CS DS SS ES
地址指针、 变址寄存器
代码段寄存器
数据段寄存器 堆栈段寄存器 附加段寄存器 段寄存器
2014-6-8
9
qingyang@
二、8086/8088的寄存器结构(cont.)
1、通用寄存器 :
数据寄存器、地址指针寄存器、变址寄存器 数据寄存器包括: AX 、BX 、CX 、DX 地址指针寄存器包括: SP 、 BP 变址寄存器包括: SI 、 DI
2014-6-8
5
qingyang@
(二)执行单元EU ( Execution Unit )
功能
执行指令,进行全部算术逻辑运算、完成偏移地址的计算 向总线接口单元BIU提供指令执行结果的数据和偏移地址,并对通用寄存 器和标志寄存器进行管理。
组成:
4个通用寄存器:AX、BX、CX、DX 4个专用寄存器:BP、SP、SI、DI 标志寄存器(PSW):
DS——Data Segment Register数据段寄存器
SS——Stack Segment Register堆栈段寄存器,
ES——Extra Segment Register附加段寄存器,
2014-6-8
13
qingyang@
(三) 控制寄存器
控制寄存器:IP 、 PSW
第2章 Intel 80x86微处理器的结构
主要内容 8086/8088微处理器内部结构 80386微处理器的结构 Pentium微处理器的结构
2014-6-8
1
qingyang@
2.1 Intel 8086/8088微处理器的结构
一、 8086/8088的功能结构 (执行单元与总线接口单元) 二、8086/8088的寄存器结构 三、8086/8088的存储器组织
BP(base pointer)——基址指针寄存器
变址寄存器(SI 、 DI)
使用场合:常用于变址寻址。 一般与DS联用,用来确定数据段中某一存储单元的地址。 串操作中,[DS:SI]寻址源操作数,[ES:DI]寻址目的操作数 , SI、DI具有自 动增量和自动减量功能.
2014-6-8
8086/8088微处理器:
BIU和EU分开,取指和执行可以重迭, 大大减少了等待取指所需的时间,提高CPU的利用率。
2014-6-8
qingyang@
7
(三)、流水线工作方式(cont.)
对于8080与8085及较早的8位微处理器:
程序执行由取指令和执行指令的循环来完成的, 每条指令执行完后CPU必须等到下条指令取出来后才能执行。
2014-6-8
19
qingyang@
例1:执行两个数的加法,分析对标志位的影响。
标志: 运算结果最高位为0 ∴SF=0; 运算结果≠0 ∴ZF=0 低8位中1的个数为奇数个 ∴PF=0; 最高位没有进位 ∴CF=0 D3位向D4位无进位 ∴AF=0; 次高位向最高位没有进位 ,最高位向前没有进位 , ∴OF=0。
IP—Instruction Pointer指令指针寄存器
用来存储代码段中的偏移地址; 程序运行过程中IP始终指向下一次要取出的指令偏移地 址。IP要与CS寄存器相配合才能形成真正的物理地址。 程序状态字寄存器, 16位寄存器。 由状态标志、控制标志构成。
PSW—(Processor States Word Program)
2014-6-8
qingyang@
8
二、8086/8088的寄存器结构
15 8 7 AX BX CX DX
AH
BH
CH DH SP
0
AL
BL CL DL
累加器 基址寄存器 计数寄存器 数据寄存器 堆栈指针 基址指针 源变址寄存器 目的变址寄存器 指令指针 标志寄存器 控制寄存器 通用寄存器组 数据寄存器
16 qingyang@
②
③
2014-6-8
标志寄存器--状态标志位
④ CF(Carry Flag)进位标志
CF=1:记录运算时从最高有效位产生进位或借位。 CF=0:记录运算时从最高有效位不产生进位/借位。
⑤ AF(Auxiliary Carry Flag)辅助进位标志
2014-6-8
4
qingyang@
(一)总线接口单元BIU (Bus Interface Unit) (cont.)