《微机原理课件8086微处理器》由会员分享,可在线阅读,更多相关《微机原理课件8086微处理器(99页珍藏版)》请在金锄头文库上搜索。
1、微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章8086微处理器微处理器微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章微处理器(Microprocessor)是一种采用大规模(LSI)或超大规模集成电路(VISI)技术的半导体芯片,集成了计算机的主要部件:控
2、制器、运算器和寄存器组。微处理器又被称为中央处理器(Central Processing Unit),字长16位、即 一 次 能 处 理 16位 数 据 的 称 16位 CPU, 如Intel8086CPU。CPU是微型计算机的核心部件,其性能和特点基本上决定了微型计算机的性能。因此,了解CPU的组成结构、引脚功能、操作时序等是学习微机原理与接口技术,进行微机应用系统开发设计的基础。2.1 微处理器的基本结构一一一一、微微微微处处处处理理理理器器器器的的的的结结结结构框图构框图构框图构框图微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章各部分的
3、功能:1. ALU (Arithmatic Logic Unit)算术逻辑单元,是计算机中的运算部件,执行算术运算,逻辑运算及移位操作等。2. 累加器累加器运算中的专用寄存器,存放操作数和运算结果。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章3. 通用寄存器组通用寄存器组存放数据和地址。4. 标志寄存器标志寄存器FR反映指令执行时的状态标志信号,如进位标志C、零标志Z、符号标志S、奇偶标志P、溢出标志O等。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章5. 程序计数器程序计数器PC (Pr
4、ogram Counter)又称指令指针寄存器IP(Instruction Pointer), 指向下一条要执行的指令所在存储单位的地址。取出指令后,PC自动加1。6. 堆栈指针堆栈指针SP (Stack Pointer)堆栈操作时,栈顶在内存中的具体位置。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章7. 变址寄存器变址寄存器用于变址寻址时存放存储器的地址,也可作通用寄存器使用。8. 数据总线缓冲器数据总线缓冲器DR寄存从MEMORY中读出或要写入的数据或指令。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第
5、第二二二二章章章章9. 地址总线缓冲器地址总线缓冲器AR存放指令的地址或操作数地址。10. 指令寄存器指令寄存器IR存放从MEMORY中取出的将要被执行的指令。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章11. 指令译码器指令译码器ID对IR中的指令译码,确定要执行的操作。12. 时序和控制逻辑时序和控制逻辑 产生多种微操作控制信号,由ID确定执行何种操作,发出相应功能的控制信号。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章二、程序执行过程举例二、程序执行过程举例二、程序执行过程举例二、
6、程序执行过程举例以7+10=? 为例,说明程序执行过程。1. 查指令系统,编写程序:查指令系统,编写程序:MOV AL,7 ; 7 AL B0H 07HADD AL,10;10+AL AL 04 H 0AHHLT ;处理器暂停 F4H微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2. 汇编源程序汇编源程序3. 机器码放入存储器机器码放入存储器地址B0H07H04H0AHF4H00H01H02H03H04H05HMOV AL,07HADD AL,10HLT微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二
7、章章章章4. 机器的执行过程机器的执行过程取指令执行指令微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(1) 第一条指令第一条指令 (MOV AL, 07H) 的取指过程:的取指过程: PC的值(00H) AR PC+1 PC (PC = 01H) AR中的内容(00H) AB MEMORY,译码选中00H存储单元。 CPU发出“ 存储器读”信号 (00H) = B0H DB DR IR ID微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(2) ID译码指令,确定操作译码指令,确定操作(07
8、H AL),执行指令。,执行指令。 PC的值(01H) AR PC+1 PC (PC = 02H) AR中的内容(01H) AB MEMORY,译码选中01H存储单元 CPU发出“ 存储器读”信号 (01H) = 07H DB DR AL微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章三、指令执行过程小结三、指令执行过程小结三、指令执行过程小结三、指令执行过程小结1.1.取指令取指令(1) 程序计数器PC将指令地址经地址缓冲器送到微处理外部地址总线,然后送到存储器进行地址译码。(2) 访问存储器某一单元,同时CPU向存储器发 “存 储 器 读
9、”控 制 信 号 ( 且PCPC+1)。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(3) 经过几百ns,在外部数据总线上出现指令的第一字节,即操作码,它经由CPU内部数据缓冲器内部总线指令寄存器。(4) 对于多字节指令,控制部件还会发出再去存储器取指令第二或第三字节的信号,每取一个字节,PCPC+1。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.2.指令译码指令译码3.3.取操作数取操作数经指令译码,如果需要取操作数,则CPU将给出操作数地址,再次访问存储器。微微微微机机机机原原原原
10、理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章5.5.存放运算结果存放运算结果微处理器就是不断重复以上过程,逐条执行指令。4.4.执行指令执行指令微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.2 8086 微处理器的主要特性和内部结构2.2.12.2.1 8086 8086 的的的的主要特性主要特性主要特性主要特性 8086微处理器是美国Intel公司1978年推出的一种高性能的16位微处理器。8086CPU采用高速运算性能的HMOS工艺制造,内含29000多个晶体管,封装在标准的40引脚双列直插式塑封管壳内,
11、采用单个+5V电源供电。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章1、数据线:16位主要特性有:2、地址线:20位,其中低16位与数据总线复用。3、内存空间:20位地址线可直接寻址1MB存储空间。4、端口地址:16位端口地址线可寻址64K个I/O端口。5、寻址方式:7种基本寻址方式提供了灵活的操作数存取方法。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章6、指令系统:99条基本指令系统,除能完成数据传送、算术运算、逻辑运算、控制转移和处理器控制功能外,内部还设有硬件乘法指令及串处理指令电
12、路,可以对位、字节、字节串、字串、压缩和非压缩BCD码等多种数据类型进行处理。7、时钟频率:8086标准主频为5MHZ,8086-2主频为8 MHZ。8、中断功能:可处理内部软件中断和外部硬件中断,中断源多达256个。9、工作模式:支持单处理器、多处理器系统工作。10、兼容性:与8080、8085在源程序一级兼容。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.2.22.2.2 8086 8086 的功能结构的功能结构的功能结构的功能结构 微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章从功
13、能结构看,分两部分:1. 执行部件执行部件EU (Execution Unit)2. 总线接口部件总线接口部件BIU (Bus Interface Unit)微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章一、执行部件一、执行部件一、执行部件一、执行部件EUEU1. EU的功能:的功能:负责指令的执令。译码指令并利用内部寄存器和ALU来处理数据。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2. 结构组成结构组成 四个通用寄存器AX,BX,CX,DX。 四个专用寄存器: 标志寄存器FR。 算术
14、逻辑单元ALU。基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,目的变址寄存器DI。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章3. 8086 CPU中中EU的特点的特点 四个通用寄存器AX,BX,CX,DX可以作为 16位寄存器使用,也可以分别作为 两个8位寄存器使用。AXBXCXDXAHALBHBLCHCLDHDL微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章 AX又称累加器,指令系统中许多指令都是利又称累加器,指令系统中许多指令都是利用用AX来实现的。来实现的。 FR共有共
15、有16位,其中位,其中7位未用,各位的定义如下:位未用,各位的定义如下:15014 13 12 11 10 987654321OF DF IF TF SF ZFAFPFCF图3.3 标志寄存器根据功能,有两类标志状态标志(6个)控制标志(3个)表2.1 8086 CPU 标志位情况名 称符 号符号标志SF功能与运算结果的最高位相同,当数据用补码表示时,负数的最高位为1,所以符号标志表示运算执行后的结果是正还是负零标志ZF当前的运算结果为零,当前的运算结果为非零奇偶标志PF运算结果所含的1的个数为偶数进位标志CF当执行一个加法运算使最高位产生进位时,或者执行一个减法运算引起最高位产生借位时,此外
16、,循环指令也影响这一标志辅助进位标志AF加法运算时,如果第3位往第4位有进位;减法运算时,如果第3位往第4位有借位。辅助进位标志一般在BCD码运算中作为是否进行十进制调整的判断依据溢出标志OF运算过程中产生溢出时,所谓溢出,是指当字节运算的结果超出了范围 128 +127,或者当字运算的结果超出了范围 32768 +32767时称为溢出方向标志DF控制串操作指令用的标志。 DF=0, 串操作过程中的地址会不断增值;DF=1, 串操作过程中的地址会不断减值中断标志IF控制可屏蔽中断的标志。 IF=0, CPU不能对可屏蔽中断请求作出响应; IF=1, CPU可以接受可屏蔽中断请求跟踪标志TFCP
17、U按跟踪方式执行指令微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章例1:执行以下两数的加法操作,判断各标志位的状态。执行以上操作后,各状态标志位的状态应是:CF0,PF0,AF0,ZF0,SF0,OF0微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章例2:执行加法操作。各状态标志位的状态应是:CF1,PF1,AF0,ZF0,SF1,OF0微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章例3:执行加法操作。执行以上加法操作后,各状态标志位的状态应
18、是:CF0,PF0,AF0,ZF0,SF1,OF1微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章二、总线接口部件二、总线接口部件二、总线接口部件二、总线接口部件BIUBIU负责与存储器、I/O接口电路传送信息。1. BIU的功能:的功能:微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2. BIU的组成的组成(1) 四个段地址寄存器四个段地址寄存器CS 16位代码段寄存器DS 16位数据段寄存器ES 16位附加段寄存器SS 16位堆栈段寄存器微微微微机机机机原原原原理理理理及及及及接接接接口口
19、口口技技技技术术术术 第第第第二二二二章章章章(2) IP 16位指令指针寄存器位指令指针寄存器 指向下一条要取出的指令。(3) 20位地址加法器位地址加法器16位内部寄存器提供的信息经地址加法器产生20位地址信息。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章例:指令的物理地址 = CS 16 + IP若CS = 1000H, IP = 3050H, 则 PA = 10000H + 3050H = 13050H 微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(4) 六字节的指令队列六字节的
20、指令队列取指令与执行指令并行工作,即在一条指令的执行过程中,可以取出下一条或多条指令,在指令队列中排队。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章三、三、三、三、BIUBIU和和和和EUEU的并行工作的并行工作的并行工作的并行工作 BIU 取指1取指2取指3 取指4 取数据 取指5EU等待执行1执行2执行3执行4微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.3 80862.3 8086CPUCPU的工作模式与引脚信号2.3.1 8086 2.3.1 8086 CPUCPU的两种工作模
21、式的两种工作模式的两种工作模式的两种工作模式 根据不同的应用环境,8086可以工作在两种模式:最小模式最小模式和最大模式最大模式。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章1. 最小模式最小模式 系统中只有8086一个微处理器,所有的总线控制信号均由8086产生,系统的总线控制信号被减至最少。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2. 最大模式最大模式用于中规模或大型的8086系统中
22、。 8086作为主微处理器以外,还有其它的微处理器协助工作。 8087:数值运算的协处理器。 8089:输入/输出 (I/O) 协处理器微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.3.2 8086 2.3.2 8086 CPU CPU 的引脚信号的引脚信号的引脚信号的引脚信号微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章1. 最小模模式的引脚信号最小模模式的引脚信号 双向,三态。在一个总线周期的第一个时钟周期,AD15 AD0 传送地址信号,在其他的时钟周期,作数据总线使用。 地址锁存
23、器STBABDBAD15 AD0ALE(1) 地址地址/数据总线数据总线 AD15 AD0微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(2) 地址地址/状态信号线状态信号线 A19 / S6 A16 / S3输出,三态。在一个总线周期的T1,输出地址信号的最高4位,在其他的时钟周期,输出状态信号S6 S3。 (1) S6为低,表示8086当前与总线相连(2) S5 IF。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章3. S4、S3 的组合指出当前使用的段码寄存器情况的组合指出当前使用的段
24、码寄存器情况S4S3意义00110101当前正在使用ES附加段当前正在使用SS堆栈段当前正在使用CS或者未使用任何寄存器当前正在使用DS数据段 同样,这4个引脚信号也要用外电路将地址信号锁存。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(3) BHE/S7 高高8位数据总线允许位数据总线允许/ 状态线状态线输出,三态。在总线周期的T1,为BHE信号,表示高8位数据线D15 D8 上的数据有效。在其他的总线周期,为S7状态信号,8086 中 S7未作定义。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二
25、二章章章章BHE和A0结合控制CPU与存储器之间数据传送的格式。BHEA0数据传送格式00110101同时传送高、低字节 (AD0 AD15)奇数地址的高位字节 (AD8 AD15)偶数地址的低位字节 (AD0 AD7)无效以上13 为地址、数据总线信号,下面介绍引脚中的控制信号。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(4) MN/MX 最大最大/最小模式控制信号。最小模式控制信号。输出,三态,低电平有效。(5) RD 读信号读信号微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(6)
26、 M/IO 存储器存储器/输入输出控制信号输入输出控制信号输出,三态。RD与M/IO组合对应的操作M/IORD操 作1000读存储器读I/O端口微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(7) WR 写信号写信号输出,三态,低电平有效。WR与M/IO组合对应的操作M/IOWR操 作1000写存储器写I/O端口微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(8) ALE地址锁存允许信号地址锁存允许信号输出,高有效。每一总线周期的T1有效。(9) READY准备好信号准备好信号输入,高有效。
27、CPU访问存储器或外设时,READY有效,表示存储器或外设已准备好传送数据。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(10) INTR可屏蔽的中断请求信号可屏蔽的中断请求信号输入,高有效,表示外设向CPU提出中断申请,若FR中IF=1,CPU在当前指令后即响应。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(11) INTA中断响应信号中断响应信号输出,三态,低电平有效。CPU响应INTR后,用INTA读取外设提供的中断类型号,以取得中断服务程序的入口地址。微微微微机机机机原原原原理理
28、理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(12) NMI非屏蔽中断请求信号非屏蔽中断请求信号输入, 有效。不受FR中IF的影响,CPU在当前指令后响应。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(13) RESET系统复位信号系统复位信号输入,高有效,4TCPU中的部分内容标志位清除指令指针(IP)0000HCS寄存器FFFFHDS寄存器0000HSS寄存器0000HES寄存器0000H指令队列空复位重新启动后,第一条指令地址FFFF0H。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术
29、术 第第第第二二二二章章章章(14) DT/R 数据收发控制信号数据收发控制信号输出,三态,控制数据总线驱动器的数据传送方向。DT/R = 1, 即T = 1,A B (CPU 内存或外设)DT/R = 0, 即T = 0,B A (内存或外设 CPU) 82862AOETAD0 AD15D0 D15DENDT/RB微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(15) DEN数据允许信号数据允许信号输出,三态,低有效,控制CPU外接的数据收发器。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章
30、章(16) HOLD总线保持请求信号总线保持请求信号输入,高有效,表示其它的总线主设备申请对总线的控制权。(17) HLDA总线保持响应信号总线保持响应信号输出,高有效,表示CPU响应HOLD 信号,让出总线控制权。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(18) TEST测试信号测试信号输入,低电平有效,与WAIT指令配合使用。WAIT指令TEST有效?执行后续指令YesNo微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(19) CLK系统时钟输入信号系统时钟输入信号最大时钟频率为5
31、MHZ,占空比1/3。(20) GND地和地和VCC电源引脚电源引脚VCC:+5直流电源。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2. 最大模式下的引脚信号最大模式下的引脚信号 在最大模式下,仅2431引脚信号与最小模式不同,如表2-6所示。表表2-62-6两种模式下两种模式下80868086的的24243131引脚信号引脚信号引脚编号 最小模式 最大模式24252627282930 31ALEDT/MHLDAHOLDQS1QS2RQ/GT1RQ/GT0微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二
32、二二二章章章章(1)QS1和和QS0指令队列状态信号指令队列状态信号输出。这两信号组合起来提供了8086内部指令队列的状态,以便外部对其动作进行跟踪。QS1和QS0编码和对应的队列状态如表2-7所示。表表2-72-7QSQS1 1和和QSQS0 0编码与队列状态编码与队列状态QS1QS0 队列状态001 1010 1空操作取走指令的第一个字节队列空从队列里取出的字节是指令的后续字节微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(2) 2, 1和和 0总线周期状态信号总线周期状态信号输出,三态。这三个状态信号组成的编码表示了当前总线周期是何种操
33、作周期,如表2-8所示。表表2-82-8 2, 1和和 0编码总线周期编码总线周期发中断响应信号读I/O端口写I/O端口暂停取指令读存储器写存储器 无源状态0101010 10000111 10011001 1总线周期微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章当8086工作在最大模式时,必须连接总线控制器,如Intel8288。8288将利用以上状态信息产生最大模式下的存储器和I/O控制信号。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(3) 总线封锁信号总线封锁信号输出,三态、低电平
34、有效。当此信号为低电平有效时,系统中其他总线主部件不能占有总线。此信号由前缀指令LOCK使其有效,并一直保持到LOCK前缀后面的一条指令执行完毕。另外,在8086的两个中断响应脉冲之间, 信号也自动变为有效电平,以防其他总线主部件在中断响应过程中占有总线,使一个完整的中断响应过程被间断。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章(4) 和和 总线请求总线请求/允许信号允许信号双向。这两个信号可供CPU以外的两个处理器用以发出使用总线的请求信号和接收CPU对总线请求信号的应答信号,总线请求信号和允许信号在同一引脚上传输,但方向相反。其中,
35、的优先级高于 。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.4 8086 2.4 8086 的存储器管理的存储器管理的存储器管理的存储器管理 2.4.1 2.4.1 存储器的分段和物理地址的形成存储器的分段和物理地址的形成存储器的分段和物理地址的形成存储器的分段和物理地址的形成 微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章8086可寻址空间为1M字节,对整个存储器空间寻址需要20位的地址码,而8086CPU内的所有寄存器都是16位,只能寻址64K字节,为了能对1M字节的存储器进行寻址
36、,8086系统采用了巧妙的存储器分段技术,即将1M字节的存储器空间分成若干个逻辑段,每个段最长64K字节,段内地址是连续的,仍可采用16位寻址方法。逻辑段可在整个存储空间内浮动,段与段之间可以是连续的,也可以是分开的或重叠的(部分重叠或完全重叠),如图2-11所示。1.1.存储器的分段存储器的分段微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.2.物理地址的形成物理地址的形成物理地址:20位绝对地址 逻辑地址:段基址和段内偏移量。 物理地址 段
37、基地址16 + 偏移地址其意思是:将段寄存器(CS,DS,SS或ES)中的内容向左移4位(相当于乘16),然后和偏移地址相加便得出20位物理地位。物理地址的计算是在CPU的总线接口部件BIU中的地址加法器中实现的。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章例如:某指令在代码段中逻辑地址为:段首址CS1000H,段内偏移地址IP5F62H,则其物理地址为CS16+IP10000H+5F62H15F62H,如图2-13所示。微微微微机机机机原原原
38、原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章显然,若该指令的段的基址为CS1200H,而 IP 3F62H, 则 20位 的 物 理 地 址 仍 为15F62H。也就是说,同一个物理地址可以由不同的段地址和偏移地址组合得到。即指向同一物理地址的段地址和偏移地址不是唯一的。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章3.3.逻辑地址的来源逻辑地址的来源8086CPU在运行程序过程中,访问存储器的操作类型是各种各样的,如取指令访问存储器,取操作数访问存储器等等。访问存储器的操作类型不同,总线接口部件BIU访问存储
39、器时所使用逻辑地址的来源就不同,不同操作类型的逻辑地址的来源如表2-9所示。表表2-92-9逻辑地址来源逻辑地址来源操作类型 正常使用的(隐含)段基址 可替换段地址 偏移地址 物理地址计算 取指令 CS 无 IP CS16+IP堆栈操作 SS 无 SP SS16+SPBP间址 SS CS,DS,ES 有效地址EASS16+EA存取变量 DS CS,ES,SS 有效地址EADS16+EA源字符串 DS CS,ES,SS SIDS16+SI目标字符串 ES 无 DIES16+DI微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章图2-14所示为段寄存
40、器与其他寄存器组合寻址存储单元的示意图。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.4.22.4.280868086系统中存储器的分体结构系统中存储器的分体结构系统中存储器的分体结构系统中存储器的分体结构在8086系统中,将总容量为1M字节的存储器分为两个存储体,即奇地址存储体和偶地址存储体,各为512K字节,如图2-15所示。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章奇地址体与系统数据总线的高8位(AD15AD8)相连,偶地址体与系统数据总线的低8位(AD7AD0)相连。选择偶地
41、址体还是奇地址体由体选信号BHE,A0(最低位地址线)决定。两个体与系统数据总线间的连接如图2-16所示。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章表表2-102-10 和和A0的代码组合及对应的存取操作的代码组合及对应的存取操作通常,从偶地址开始的字称为规则字,读/写规则字只需一个总线周期;把从奇地址开始的字称为非规则字,读/写非规则字需要用二个总线周期,相对来说需要较长时间。所以,为了加快程序运行速度,编程时应注意从偶地址开始存放字数据。
42、微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章 堆栈是按照“ 后进先出”(Last in First out) 原则组织的一段特殊的内存区域。 堆栈由SP自动管理,SP始终指向当前的栈顶。 堆栈主要用于中断调用,子程序调用以及数据的暂时存储等。 堆栈有压入和弹出两种操作。 8086CPU的堆栈在压栈时,由上往下生长(堆栈指针减量修改)。2.4.3 80862.4.3 8086系统的堆栈系统的堆栈系统的堆栈系统的堆栈微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.5.1 2.5.1 指令周期
43、、总线周期和时钟周期指令周期、总线周期和时钟周期指令周期、总线周期和时钟周期指令周期、总线周期和时钟周期指令周期指令周期(Instruction Cycle):CPU执行一条指令所需要的时间。总线周期总线周期(Bus Cycle):CPU与外部电路之间进行一次数据传送所需的时间。时钟周期时钟周期(Clock Cycle):控制CPU基本操作的时钟,是CPU处理动作的最小时间单位,又称T状态。2.5 8086 2.5 8086 的总线操作和时序的总线操作和时序的总线操作和时序的总线操作和时序 微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章一个指
44、令周期由一个或若干个总线周期组成,一个总线周期至少包含4个T状态。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章2.5.2 80862.5.2 8086的典型总线周期的典型总线周期的典型总线周期的典型总线周期一、典型总线周期的时序一、典型总线周期的时序一、典型总线周期的时序一、典型总线周期的时序微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章8086CPU的一个基本总线周期由4个时钟周期(T1T4)组成。时钟周期T也称为T状态,即T1状态、T2状态、T3状态和T4状态。CPU在每个时钟周期(状
45、态)内完成若干基本操作,具体是:微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章T1状态:CPU向20位地址/状态(A19/S6A16/S3),地址/数据(AD15AD0)分时复用总线上发送读写存储器或I/O端口的地址。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章T2状态:CPU从总线上撤消地址,若为读周期,则使低16位地址/数据总线(AD15AD0)为高阻抗状态,以便CPU有足够的时间从输出地址方式转变为输入数据方式。若为写周期,则向低16位地址/数据总线(AD15AD0)上送出写数据,准
46、备进行写操作。由于输出地址和输出数据都是写总线过程,CPU不必要改输出为输入方式,因而不需要缓冲时间。T2状态总线的高4位(A19/S6A16/S3)上输出本总线周期状态信息S6S3。这些状态信息用来表示中断允许状态、当前正在使用的段寄存器等。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章T3状态:CPU在总线的高4位(A19/S6A16/S3)继续输出总线周期状态信号S6S3。在总线的低16位(AD15AD0)地址/数据线上继续发送要写的数据,或者从存储器或I/O端口读入数据。T4状态:总线周期结束,命令被禁止,选中的设备在逻辑上和总线脱离
47、。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章TW等待状态:如果被选中的存储器或I/O设备不能及时配合CPU传送数据,则必须通知CPU数据“未准备好”,迫使CPU在T3状态后插入等待状态TW。“未准备好”信号必须在T3前送给CPU。TW状态的总线活动与T3周期的活动相同。当选中的存储器或I/O端口有足够的时间来完成读写操作时,就发出“准备好”(Ready)信号,迫使CPU脱离TW状态并继续工作。如果执行的总线周期是读周期,CPU则在T3或最后一个等待状态结束时读取数据。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术
48、 第第第第二二二二章章章章T1空闲状态:如果在一个总线周期之后,不立即执行下一个总线周期,或者当指令队列是满的,执行部件EU又没有访问总线的要求,这时BIU就处于空闲状态。在空闲状态中,可以包含一个或几个时钟周期。在空闲状态,总线高4位(A19/S6A16/S3)仍输出与前一总线周期相同的状态信号。如果前一个总线周期是写周期,则CPU在总线低16位(AD15AD0)上继续驱动数据信息;如果前一个总线周期是读周期,则总线低16位(AD15AD0)为高阻状态。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章由上可知,正常情况下,8086CPU的一个
49、基本总线周期由4个时钟周期(T1T4)组成,但当所连接的存储器或I/O设备不能及时配合CPU进行数据的读写时,还要适当增加一个或几个等待状态。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章二、学习时序的目的二、学习时序的目的二、学习时序的目的二、学习时序的目的1. 可以深入了解指令的执行过程。可以深入了解指令的执行过程。2. 有利于编程时,选择合适的指令,以缩短程有利于编程时,选择合适的指令,以缩短程序的执行时间。序的执行时间。3. 有利于在有利于在CPU与存储器以及与存储器以及I/O端口连接时,端口连接时,实现时序上的配合。实现时序上的配合
50、。4. 实时控制时,正确估算操作所需的时间,以实时控制时,正确估算操作所需的时间,以便与控制过程配合。便与控制过程配合。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章一、一、一、一、80868086的读总线周期的读总线周期的读总线周期的读总线周期包括存储器的读周期和I/O端口的读周期。图2-21 读总线周期T1T2T3T4一个总线周期CLK地址输出状态输出A19/S6 A16/S3BHE/S7数据输入AD15 AD0ALE低=I/O读,高=存储器读M/IORDDT/RDEN地址输出2.5.3 8086CPU2.5.3 8086CPU典型总线周
51、期分析典型总线周期分析典型总线周期分析典型总线周期分析 微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章如果在T3周期结束之前,存储器或外设未准备好数据传送,在T3和T4之间就会插入一个或多个TW等待周期,直到READY变高,转入T4周期,完成读操作。微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章二、二、二、二、80868086的写总线周期的写总线周期的写总线周期的写总线周期包括存储器的写周期和I/O端口的写周期。图2-22 写总线周期T1T2T3T4一个总线周期CLK地址输出状态输出A19/
52、S6 A16/S3BHE/S7数据输出AD15 AD0ALE低=I/O写,高=存储器写M/IOWRDT/RDEN地址输出三、三、三、三、80868086进入和退出保持状态的时序进入和退出保持状态的时序进入和退出保持状态的时序进入和退出保持状态的时序CPU在每一个T状态的正向边沿采样HOLD信号,若有效,则在当前总线周期结束时响应。图2-23 总线保持请求 / 响应时序T4或T1CLKHOLDHLDAAD15 AD0A19/S6 A16/S3微微微微机机机机原原原原理理理理及及及及接接接接口口口口技技技技术术术术 第第第第二二二二章章章章四、中断响应周期四、中断响应周期四、中断响应周期四、中断响应周期CPU在每条指令的最后一个T状态,采样INTR信号,若有效,且IF=1,则CPU在当前指令执行完毕以后响应,进入中断响应周期。图2-25 中断响应周期T1T2T3T4T1T1T2T3T4类型矢量ALEAD0 AD15INTADEN浮空