微处理器原理及应用---第二章 80x86微处理器_第1页
微处理器原理及应用---第二章 80x86微处理器_第2页
微处理器原理及应用---第二章 80x86微处理器_第3页
微处理器原理及应用---第二章 80x86微处理器_第4页
微处理器原理及应用---第二章 80x86微处理器_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章第二章 80 x8680 x86微处理器微处理器2.1 2.1 微处理器的发展微处理器的发展1 1、 808680862 2、 80286802863 3、 80386803864 4、 80486804865 5、 PentiumPentium(奔腾)(奔腾)6 6、 Pentium Pro Pentium Pro (高能奔腾)(高能奔腾)7 7、 Pentium IIPentium II8 8、 Pentium III Pentium III9 9、 Pentium Pentium 1010、Pentium DPentium D与与Pentium XEPentium XE双核处理器双

2、核处理器1111、Itanium(Itanium(安腾安腾) )1212、 Core Duo(Core Duo(酷睿处理器酷睿处理器) ) 2.2 80862.2 8086微处理器微处理器2.2.1 8086CPU2.2.1 8086CPU内部功能结构内部功能结构编程结构:编程结构: 就是指从程序员和使用者的角度应该看到的结构。就是指从程序员和使用者的角度应该看到的结构。 这种结构与这种结构与CPUCPU内部的物理结构和实际布局是有区别的内部的物理结构和实际布局是有区别的从功能上分:总线接口部件从功能上分:总线接口部件BIUBIU(Bus Interface UnitBus Interface

3、 Unit) 执行部件执行部件EUEU(Execution UnitExecution Unit)。)。状态标志寄存器状态标志寄存器EU控制器控制器暂存寄存器暂存寄存器 1 2 3 4 5 6( 1 6位位)总线控总线控制逻辑制逻辑地址总线地址总线地址加法器地址加法器(20位)位)数据数据总线总线AH AH ALBH BLCH CLDH DLSPBPDISIAXBXCXDXAH CSDSESSSIP内部通讯内部通讯寄存器寄存器ALU数据总线数据总线(16位)位)Q(总线总线)(8位位)执行部件执行部件(EU)总线接口部件总线接口部件(BIU)ALU(队列队列)8086总线总线图图2-1 808

4、6CPU2-1 8086CPU的内部结构的内部结构1 1、总线接口部件(、总线接口部件(BIUBIU) 总线接口部件的功能:与总线接口部件的功能:与CPUCPU外部(存储器、外部(存储器、I IO O端口)传送端口)传送 指令代码或数据。指令代码或数据。 CPUCPU执行指令的工作分为两个阶段:取指令和执行指令过程。执行指令的工作分为两个阶段:取指令和执行指令过程。(1) BIU(1) BIU的组成的组成 4 4个个1616位的段地址寄存器位的段地址寄存器(CS(CS、DSDS、ESES、SS)SS)、1616位的指令指位的指令指 针寄存器针寄存器 IPIP、2020位的地址加法器、位的地址加

5、法器、6 6字节的指令队列缓冲器、字节的指令队列缓冲器、1616位的内部暂存器和总线逻辑控制器位的内部暂存器和总线逻辑控制器(2) BIU(2) BIU各部件的作用各部件的作用1 1) 段地址寄存器段地址寄存器CSCS:1616位代码段寄存器,寄存程序代码段首地址的高位代码段寄存器,寄存程序代码段首地址的高1616位。位。DSDS:1616位数据段寄存器,寄存数据段首地址的高位数据段寄存器,寄存数据段首地址的高1616位。位。ESES:1616位扩展段寄存器,寄存另一个数据段首地址的高位扩展段寄存器,寄存另一个数据段首地址的高1616位。位。SSSS:1616位堆栈段寄存器,寄存堆栈区数据段首

6、地址的高位堆栈段寄存器,寄存堆栈区数据段首地址的高1616位。位。 2 2) 16 16位的指令指针寄存器位的指令指针寄存器 IPIP:指出当前指令在程序代码段中的:指出当前指令在程序代码段中的1616位偏移量。位偏移量。3 3) 2020位的地址加法器位的地址加法器:用来产生:用来产生2020位物理地址。位物理地址。段基址:段寄存器提供的段基址:段寄存器提供的1616位信息位信息, ,左移左移4 4位。位。偏移地址:偏移地址:EUEU提供的提供的1616位信息或者位信息或者IPIP提供的提供的1616位信息。位信息。4 4) 6 6字节的指令队列缓冲器字节的指令队列缓冲器:用来存放预取指令的

7、指令队列。:用来存放预取指令的指令队列。5 5)1616位的内部暂存器位的内部暂存器:暂存输入:暂存输入/ /输出信息的寄存器。输出信息的寄存器。6 6)总线逻辑控制器)总线逻辑控制器:以逻辑控制方式实现总线上的信息传送,如:以逻辑控制方式实现总线上的信息传送,如信息分时传送等。信息分时传送等。2 2、执行部件、执行部件EUEU执行部件的功能就是负责指令的执行。执行部件的功能就是负责指令的执行。(1) EU(1) EU的组成的组成: 执行部件由执行部件由4 4个通用寄存器(个通用寄存器(AXAX、BXBX、CXCX、DXDX)、)、4 4个专用寄个专用寄存器(存器(BPBP、SPSP、SISI

8、、DIDI)、算术逻辑单元、)、算术逻辑单元、EUEU控制器和标志寄控制器和标志寄存器组成。存器组成。(2) EU(2) EU各部件的作用各部件的作用1 1) 4 4个通用寄存器个通用寄存器AXAX:1616位的累加器位的累加器BXBX:1616位的基数寄存器位的基数寄存器CXCX:1616位的计数寄存器位的计数寄存器DXDX:1616位的数据寄存器位的数据寄存器2 2)4 4个专用寄存器个专用寄存器BPBP:1616位的基数指针寄存器位的基数指针寄存器SPSP:1616位的堆栈指针寄存器位的堆栈指针寄存器堆栈:一组寄存器或一个存储区域,用来存放调用子程序或堆栈:一组寄存器或一个存储区域,用来

9、存放调用子程序或 响应中断时的主程序断点地址,以及暂存其它寄存响应中断时的主程序断点地址,以及暂存其它寄存 器的内容。器的内容。当信息存入堆栈或从堆栈中取出信息时,都必须严格按照当信息存入堆栈或从堆栈中取出信息时,都必须严格按照“先进后出先进后出”的规则进行。的规则进行。SISI:1616位的源变址寄存器位的源变址寄存器DIDI:1616位的目的变址寄存器位的目的变址寄存器3 3)算术逻辑部件)算术逻辑部件ALUALU功能有两个:一是进行算术逻辑运算,二是按指令的寻址功能有两个:一是进行算术逻辑运算,二是按指令的寻址 方式计算出所寻址的方式计算出所寻址的1616位偏移地址。位偏移地址。4 4)

10、EUEU控制器:控制器:执行指令的控制电路,实现从队列中取指令、执行指令的控制电路,实现从队列中取指令、 译码、产生控制信号等。译码、产生控制信号等。5 5)标志寄存器:)标志寄存器:1616位状态标志寄存器(位状态标志寄存器(7 7位未用)存放操作后的状位未用)存放操作后的状 态特征和人为设置的控制标志。态特征和人为设置的控制标志。所用的各位含义如下:所用的各位含义如下:这些标志可分两类:状态标志,控制标志。这些标志可分两类:状态标志,控制标志。它们的作用详见表它们的作用详见表2-12-1 1515141413131212111110109 98 87 76 65 54 43 32 21 1

11、0 0OFOFDFDFIFIFTFTFSFSFZFZFAFAFPFPFCFCF表表2-12-1 80868086标志的作用标志的作用 类型标志名符号作用状态标志6个符号标志SF(Sign Flag)指出前面运算执行后的结果是正还是负,它和运算结果的最高位相同,结果为负,则SF=1;结果为正,则SF=0。零标志ZF(Zero Flag)指出前面运算执行后的结果是正否为零,结果为零,则ZF=1;结果为非零,则ZF=0。奇/偶标志PF(Parity Flag)指出前面运算结果的低 8位中所含的 1的个数为偶数还是奇数,结果为偶,则PF=1;结果为奇,否则PF=0。进位标志CF(Carry Flag)

12、当执行加法运算使最高位产生进位或执行减法运算引起最高位产生借位时,CF=1,否则 CF=0。当执行循环移位指令或执行CPU的CF控制指令时,也会影响这一标志。辅助进位标志AF(Auxiliary Carry Flag)当执行加法运算使第3位往第4位上有进位或减法运算使第3位从第4位有借位时,则AF=1,否则AF=0。溢出标志OF(Overflow Flag)当运算的结果超出了范围时就会产生溢出(详见第一章中双高位判别法), OF=1。否则OF=0。控制标志3个方向标志DF(Direction Flag)在串操作指令中用来控制串操作过程中地址的增减。当DF= 0,则地址不断递增;当DF=1,则地

13、址会不断递减。中断标志IF(Interrupt Enable Flag)在中断过程中控制是否响应可屏蔽中断的请求。当 IF=0,则 CPU不能响应可屏蔽中断请求;当IF=1,则CPU可以接受可屏蔽中断请求。跟踪标志TF(Trap Flag)在中断过程中控制是否响应单步中断的请求。当TF= 1,则CPU按跟踪方式执行指令。当TF=0,则CPU不会响应单步中断。例例2.1 2.1 计算机在进行计算机在进行 1234H+5678H 1234H+5678H 运算后,试求状态标志运算后,试求状态标志SFSF、ZFZF、PFPF、CFCF、AFAF、OF OF 的值。的值。 0001 0010 0011

14、0100 十 0101 0110 0111 1000 0110 1000 1010 1100 SF=0:运算结果的最高位为0; ZF=0:运算结果本身不为0; PF=1:运算结果低8位所含1的个数为4个,是偶数个1; CF=0:最高位没有产生进位; AF=0:第3位没有往第4位产生进位; OF=0:次高位没有往最高位产生进位,最高位往前也没有进位例例2.2 计算机在进行计算机在进行 6789H-1234H 运算后,试求状态标志运算后,试求状态标志SF、ZF、PF、CF、AF、OF 的值。的值。 补码运算的结果。补码运算的结果。 0110 0111 1000 1001 1110 1101 110

15、0 1100 1 0101 0101 0101 0101SF=0:运算结果的最高位为0;ZF=0:运算结果本身不为0;PF=1:运算结果低8位所含1的个数为4个,是偶数个1;CF=0:虽然最高位产生了进位,但这是与被减数的补码相加,其借 位CF应是进位的反码,所以无借位;AF=0:与CF类似,第3位没有向第4位产生借位;OF=0:次高位向最高位产生进位,最高位向前也产生了进位,所以 无溢出;取指令取指令1 1译码译码1 1 取数取数1 1执行执行1 1 存结果存结果1 1取指令取指令2 2译码译码2 2执行执行2 2CPUCPU时间时间(a) (a) 指令的串行处理指令的串行处理取指令取指令1

16、 1取指令取指令2 2取数取数1 1取指令取指令3 3存结果存结果1 1取指令取指令4 4BIUBIU等待译码等待译码1 1执行执行1 1译码译码2 2执行执行2 2EUEU时间时间(b) (b) 指令的并行处理指令的并行处理图图2-2 2-2 串行处理和流水处理工作原理串行处理和流水处理工作原理2.2.2 8086CPU 2.2.2 8086CPU 内部流水线管理工作原理内部流水线管理工作原理 1 1)当指令队列为空时,这种情况一般发生在程序)当指令队列为空时,这种情况一般发生在程序刚开始执行或刚执行了跳转指令(转移指令、调用指令刚开始执行或刚执行了跳转指令(转移指令、调用指令和返回指令)。

17、和返回指令)。 这时这时EUEU等待等待BIUBIU提取指令,提取指令,BIUBIU会从存会从存储器中把要执行的那个程序段指令装入指令队列中储器中把要执行的那个程序段指令装入指令队列中 2 2)当指令队列不空时,这时)当指令队列不空时,这时EUEU和和BIUBIU独立工作,独立工作,EUEU负责从指令队列前部取出指令代码,并进行译码和执行;负责从指令队列前部取出指令代码,并进行译码和执行;BIUBIU负责从存储器中把指令取到指令队列中,直到指令负责从存储器中把指令取到指令队列中,直到指令队列满为止。队列满为止。 3 3)当指令队列已满且)当指令队列已满且 EU EU又无访问请求时,又无访问请求

18、时,BIUBIU便便进入空闲状态。进入空闲状态。 4)当指令队列出现)当指令队列出现2个空字节时,个空字节时,BIU又会自动地又会自动地从存储器中把后面的指令装满指令队列。从存储器中把后面的指令装满指令队列。 5 5)当)当EUEU执行特殊指令时,这有两种情况:一是执行特殊指令时,这有两种情况:一是EUEU在执行指令过程中必须进行外部(存储器或在执行指令过程中必须进行外部(存储器或I IO O端口端口) )访问,这时访问,这时EUEU请求请求BIUBIU去做外部访问,如果去做外部访问,如果BIU BIU 正好处正好处于空闲状态,则立即响应于空闲状态,则立即响应 EU EU的请求,如果的请求,如

19、果BIUBIU正在取指正在取指过程中,则过程中,则BIUBIU在完成当前取指令的操作后再去响应在完成当前取指令的操作后再去响应EUEU的请求;二是的请求;二是EUEU执行跳转指令,这时,指令队列中已装执行跳转指令,这时,指令队列中已装入的指令字节就不再有用,则指令队列被自动清空。入的指令字节就不再有用,则指令队列被自动清空。 2.2.3 8086CPU 2.2.3 8086CPU 的存储器组织的存储器组织地址空间:地址空间:1MB (201MB (20位位) )逻辑段:最大逻辑段:最大64kB,CS,DS,ES,SS64kB,CS,DS,ES,SS。浮动、连续、分开。浮动、连续、分开重叠。重叠

20、。1 1、 存储器分段和段寄存器存储器分段和段寄存器 段首址:各逻辑段的第一个单元的地址。段首址:各逻辑段的第一个单元的地址。段基址:段首址的高段基址:段首址的高1616位。位。段基址根据段的性质存放在相应的段寄存器段基址根据段的性质存放在相应的段寄存器DSDS、ESES、SSSS或或CSCS中。中。偏移地址:段内存储单元距离段首地址的偏移量。偏移地址:段内存储单元距离段首地址的偏移量。段基址和偏移地址都是无符号的段基址和偏移地址都是无符号的1616位二进制数,这两部分位二进制数,这两部分构成了存储单元的逻辑地址。构成了存储单元的逻辑地址。 代码段数据段堆栈段附加段00000H单元段寄存器CS

21、16DS16SS16ES16代码段首址数据段首址堆栈段首址附加段首址FFFFFH单元 图图2-3 存储器的逻辑分段存储器的逻辑分段采用分段结构的存储器中,任何一个采用分段结构的存储器中,任何一个2020位物理地址都是由位物理地址都是由它的逻辑地址变换得到的:它的逻辑地址变换得到的: 物理地址物理地址 = = 段基址段基址1616偏移地址偏移地址段寄存器段寄存器15150 0000000001616位偏移地址位偏移地址1515 0 000000000加法器加法器2020位物理地址位物理地址1919 0 0图图2-4 80862-4 8086物理地址的形成物理地址的形成段寄存器段寄存器CSCSSS

22、SSDSDSESES基址及指针寄存器基址及指针寄存器CSCSBPBPSPSPSISIBXBXDIDI图图2-52-5段寄存器与其它寄存器的组合段寄存器与其它寄存器的组合2 2、 存储器组织存储器组织 80868086的的1MB1MB存储器,分成了两个存储器,分成了两个 512KB512KB存储区,分别叫奇地存储区,分别叫奇地址区(奇区)和偶地址区(偶区)。址区(奇区)和偶地址区(偶区)。 CS ACS A1818A A0 0512K512K字节字节奇区存贮体奇区存贮体D D7 7D D0 0CS ACS A1818A A0 0512K512K字节字节偶区存贮体偶区存贮体D D7 7DD0 0D

23、 D8 8D D1515 D D0 0D D7 7A A1 1A A1919A A0 0BHEBHE图图2-6 80862-6 8086存储器的偶区和奇区存储器的偶区和奇区 字节分为奇字节和偶字节。字节分为奇字节和偶字节。 字分为奇字、偶字。字分为奇字、偶字。 对于奇字节、偶字节、奇字、偶字的读写操作,对于奇字节、偶字节、奇字、偶字的读写操作,奇字节、偶字节和偶字操作均可用一个总线周期完成,奇字节、偶字节和偶字操作均可用一个总线周期完成,而奇字操作需二个总线周期,分别用奇字节和偶字节操而奇字操作需二个总线周期,分别用奇字节和偶字节操作来完成。作来完成。 其过程是通过其过程是通过A A0 0、B

24、HEBHE(8086CPU8086CPU的两条引脚)的两条引脚)信号的配合来实现的,见表信号的配合来实现的,见表2-22-2表表2-2 BHE 2-2 BHE 、A A0 0代码表示的相应操作代码表示的相应操作BHE ABHE A0 0操作操作所用数据总线所用数据总线0 0 从偶地址读从偶地址读/ /写一个字写一个字D D1515D D0 01 0 从偶地址读从偶地址读/ /写一个字节写一个字节D D77D D0 00 1从奇地址读从奇地址读/ /写一个字节写一个字节D D1515D D8 80 11 0从奇地址读从奇地址读/ /写一个字(分两个总写一个字(分两个总线周期实现,首先作奇地址读线

25、周期实现,首先作奇地址读/ /写,写,然后作偶地址读然后作偶地址读/ /写)写)D D1515D D8 8D D77D D0 02.2.4 8086CPU2.2.4 8086CPU总线周期的概念总线周期的概念 BIUBIU通过系统总线完成对外界(存储器或通过系统总线完成对外界(存储器或I/OI/O端口)的一次端口)的一次访问所需的时间称作一个总线周期。访问所需的时间称作一个总线周期。在计算机中时间的最小单位是时钟周期(一个时钟脉冲的时在计算机中时间的最小单位是时钟周期(一个时钟脉冲的时间长度)。间长度)。 在在8086CPU8086CPU中,一个最基本的总线周期由中,一个最基本的总线周期由4

26、4个时钟周期组成。个时钟周期组成。 4 4个时钟周期分别称为个时钟周期分别称为4 4个状态,即个状态,即T T1 1状态、状态、T T2 2状态、状态、T T3 3状态状态和和T T4 4状态。除了上述四个状态外,还有等待状态状态。除了上述四个状态外,还有等待状态T Tw w和空闲状态和空闲状态T TI I。图图2-7 2-7 典型的典型的80868086总线周期序列总线周期序列 表表2-3总线周期各状态的作用总线周期各状态的作用状态状态作用作用T T1 1 CPU CPU往多路复用总线上发出地址信息,以指出要寻址的存储单元或往多路复用总线上发出地址信息,以指出要寻址的存储单元或外设外设I/O

27、I/O端口的地址端口的地址T T2 2 对读操作,对读操作,CPUCPU从从ADAD总线上撤消地址信息使总线的低总线上撤消地址信息使总线的低1616位成高阻位成高阻状态,为状态,为1616位数据输入作准备;对写操作,位数据输入作准备;对写操作,CPUCPU输出数据信息。总线的输出数据信息。总线的最高最高4 4位用来输出总线周期状态信息位用来输出总线周期状态信息T T3 3 AD AD总线的高总线的高4 4位继续提供状态信息,而低位继续提供状态信息,而低1616位上输出由位上输出由CPUCPU提供的提供的数据(写操作)或者数据(写操作)或者CPUCPU从存储器(或端口从存储器(或端口) )读入的

28、数据读入的数据( (读操作读操作) )T T4 4 总线周期结束总线周期结束T Tw w 这是等待状态。当外设或存储器速度较慢时,这是等待状态。当外设或存储器速度较慢时,CPUCPU会在会在T T3 3之后插入之后插入1 1个或多个等待状态个或多个等待状态T Tw w,解决外设或存储器不能及时地配合解决外设或存储器不能及时地配合CPUCPU数据传送数据传送问题。具体详见总线的读写操作问题。具体详见总线的读写操作T TI I 这是空闲状态。当这是空闲状态。当CPUCPU和内存或和内存或I/OI/O接口之间不需传输数据,且指接口之间不需传输数据,且指令队列填满时,令队列填满时,CPUCPU不需要执

29、行总线周,系统总线就处于这个空闲状态。不需要执行总线周,系统总线就处于这个空闲状态。这时,在总线高这时,在总线高4 4位上,位上,CPUCPU仍然保持前一个总线周期的状态信息仍然保持前一个总线周期的状态信息2.2.5 8086CPU2.2.5 8086CPU的引脚信号及工作模式的引脚信号及工作模式 最小模式:在系统中只有一个最小模式:在系统中只有一个80868086处理器。处理器。 最大模式:在系统中有两个或两个以上的处理器最大模式:在系统中有两个或两个以上的处理器1 1、8086CPU8086CPU的引脚信号的引脚信号1 12 23 34 45 56 67 78 89 91010111112

30、1213131414151516161717181819192020GND GND ADAD14 14 ADAD1313 ADAD1212 ADAD1111 ADAD1010 ADAD9 9 ADAD8 8 ADAD7 7 ADAD6 6 ADAD5 5 ADAD4 4 ADAD3 3 ADAD2 2 ADAD1 1 ADAD0 0 NMI NMI INTR INTR CLK CLK GND GND 40403939383837373636353534343333323231313030292928282727262625252424232322222121V VCCCC(+5v+5v)ADA

31、D1515A A1616/S/S3 3A A1717/S/S4 4A A1818/S/S5 5A A1919/S/S6 6BHE/SBHE/S7 7MN/MXMN/MXRDRDHOLD ( RQ/GTHOLD ( RQ/GT0 0) )HLDA ( RQ/GTHLDA ( RQ/GT1 1) )WR ( LOCK)WR ( LOCK)M/IO ( SM/IO ( S2 2) )DT/R ( SDT/R ( S1 1) )DEN ( SDEN ( S0 0) )ALE ( QSALE ( QS0 0) )INTA ( QSINTA ( QS1 1) )TESTTESTREADYREADYRESE

32、TRESET图图2-8 8086CPU的引脚信号排列的引脚信号排列1 1、最小模式、最小模式1 14040脚的功能定义脚的功能定义 最小模式下各引脚信号可分为三类:双向引脚信号、输入引脚最小模式下各引脚信号可分为三类:双向引脚信号、输入引脚信号和输出引脚信号,它们的功能见表信号和输出引脚信号,它们的功能见表2-42-4。类型名称符号功 能双向引脚信号地址/数据复用线AD15AD0在总线周期的T1状态作为地址线(输出), T2T4状态作为数据传输线(双向)。当CPU响应中断、系统总线“保持响应”(如DMA)时,处于高阻态输入引脚信号模式设定线 MN/ MX设置最小或最大模式。当MNMX为高电平时

33、,8086设置为最小模式,低电平时8086设置为最大模式电源线GND、VccVcc与GND之间的电压为5V10系统时钟CLK为CPU和总线控制逻辑电路提供时序基准表2-4 最小模式方式下CPU引脚的功能类型名称符号功 能输入引脚信号复位线RESET使CPU结束当前操作,将CS置为FFFFH,并对其余的寄存器和指令队列清0,要求复生脉冲宽度不得小于 4个时钟周期,当复位结束时,CPU就从FFFF0H开始执行程序(高电平有效)就绪线READY表示数据传送结束,使CPU结束Tw等待状态而进入T4 ,用来解决CPU与慢外设速度匹配问题(高电平有效)等待测试TEST该信号必须和WAIT指令结合起来使用。

34、当TEST 为高电平时,CPU重复执行WAIT指令,直到 TEST 为低电平才继续执行下一条指令(低电平有效)非屏蔽中断请求MMICPU无条件响应该中断请求,它不受中断允许标志位的影响(高电平有效)可屏蔽中断请求INTR当中断允许标志位IF=1时,CPU响应该中断请求,IF=0时不会响应该中断请求(高电平有效)总线保持请求HOLD其它总线主控部件向CPU发出的占用总线的请求信号,与HLDA配合使用,详见第八章的DMA部分(高电平有效)输出引脚信号地址状态复用线A19A16 /S6S3在总线周期的T1状态用作地址总线高4位A19A16的输出,在T2T4状态用作状态信号S6S3输出,当CPU响应中

35、断、系统总线“保持响应”(如DMA)时,处于高阻态高8位数据线允许/状态BHE/S7在总线周期的T1状态输出 BHE 信号,使高8位数据线D15D8上的数据有效,在T2T4状态输出状态信号S7读控制RD当该信号为低电平时, CPU对存储器或I/O端口执行读操作,系统总线“保持响应”(如DMA)时,处于高阻态写控制WR当该信号为低电平时, CPU对存储器或I/O端口执行写操作,系统总线“保持响应”(如DMA)时,处于高阻态输出引脚信号存储器和IO控制MIO 当该信号为高电平时,CPU对存储器操作;为低电平时,CPU对输入输出设备操作。系统总线“保持响应”(如DMA)时,处于高阻态中断响应INTA

36、CPU通过该信号对外设的中断请求作出响应。详见第七章中断响应操作时序(低电平有效)总线保持响应HLDA该信号是与HOLD配合使用的一组联络信号。HLDA有效期时,系统总线处于“保持响应”状态(高电平有效)地址锁存ALECPU在每个总线周期的T1状态时发出,作为地址锁存器的地址锁存选通信号,该信号是不能被浮空的。数据收发控制DTR 该控制信号用来控制数据传送方向,当DTR 高电平时为数据发送,否则为数据接收,系统总线“保持响应”(如DMA)时,处于高阻态数据允许DEN它与数据收发器的 OE 端相连,是CPU提供的一个选通信号,系统总线“保持响应”(如DMA)时,处于高阻态1 1、最大模式、最大模

37、式24243131脚的功能定义脚的功能定义 在最大模式下在最大模式下24243131脚的功能不同于最小模式,重新定义的脚的功能不同于最小模式,重新定义的情况见图情况见图2-82-8括号中的说明,这括号中的说明,这8 8条引脚的功能见表条引脚的功能见表2-52-5。在最大模。在最大模式下,许多总线控制信号是通过总线控制器式下,许多总线控制信号是通过总线控制器82888288产生的。产生的。名称符号作用总线周期状态信号S2、S1、S0组合表示CPU总线周期的操作类型,依据这三个状态信号8288总线控制器产生访问存储器和IO端口的控制命令,详见表26指令队列状态信号QS1、QS0QS1和QS0组合起

38、来提供前一个时钟周期中指令队列的状态,详见表27总线请求/总线允许信号RQ/GT1、RQ/GT0 RQ为总线请求的输入信号,GT为总线允许的输出信号。 RQ/GT0/比 RQ/GT有更高的优先权总线封锁信号LOCK LOCK为低电平时,CPU独占总线使用权。由指令前缀 产生 LOCK信号,由 LOCK前缀后面的一条指令执行完后 撤消 LOCK 信号表表2-5最大模式最大模式2431脚的功能脚的功能 S S2 2 S S1 1 S S0 0总线周期总线周期 82888288控制命令控制命令 0 0 00 0 00 0 10 0 10 1 00 1 00 1 10 1 11 0 01 0 01 0

39、 11 0 11 1 01 1 01 1 1 1 1 1 INTAINTA周期周期I/OI/O读周期读周期I/OI/O写周期写周期暂停暂停取指令周期取指令周期读存储器周期读存储器周期写存储器周期写存储器周期无源状态无源状态 INTAINTAIORCIORCIOWC,AIOWCIOWC,AIOWC无无 MRDCMRDCMRDCMRDCMWTC,AMWCMWTC,AMWC无无 表表2.6 S2.6 S2 2 S S0 0 对应的总线周期及对应的总线周期及82888288的控制命令的控制命令 表表2.7 QS2.7 QS1 1、QSQS0 0与队列状态与队列状态QSQS1 1 QSQS0 0 队列状

40、态队列状态 0 00 01 11 1 0 01 10 01 1 无操作无操作从队列缓冲器中取出指令的第一字节从队列缓冲器中取出指令的第一字节清除队列缓冲器清除队列缓冲器从队列缓冲器中取出第二字节以后部分从队列缓冲器中取出第二字节以后部分 2 2、8086 CPU8086 CPU工作模式的典型配置工作模式的典型配置图图2-92-9是最小模式下的典型配置是最小模式下的典型配置 图图2-9 80862-9 8086最小模式下的典型配置最小模式下的典型配置RESRES82848284MN/MX RDMN/MX RDCLK WRCLK WRREADY M/IOREADY M/IORESETRESETAL

41、EALE A A1919AA15 15 BHE BHE AD AD1515ADAD0 0 DEN DT/ R DEN DT/ RSTBSTB 8282 8282 OR OR 8283 8283 OE OE存储器存储器I/OI/O芯片芯片 8286 8286 OR ORT T 8287 8287OEOE80868086CPUCPU数据总线数据总线地址总线地址总线地址地址/ /数据数据地址地址BHEBHE图图2-102-10是最大模式下的典型配置是最大模式下的典型配置图图2-10 80862-10 8086最大模式下的典型配置最大模式下的典型配置T T OEOE82868286 STBSTB828

42、28282OEOE 8288 8288S S0 0 INTA INTAS S1 1 MRDC MRDCS S2 2 MWTC MWTCDEN IOWCDEN IOWCDT/R IORCDT/R IORCALEALE82848284RESRES MN/MX MN/MX CLK SCLK S0 0READY SREADY S1 1RESET SRESET S2 2 ADAD1515ADAD0 0A A1616AA1919存储器存储器I/OI/O芯片芯片80868086CPUCPUCLKCLKBHEBHE1VCC地址总线地址总线数据总线数据总线2.2.6 8086CPU2.2.6 8086CPU的操

43、作时序的操作时序操作时序可分为:系统复位和启动操作、暂停操作、空操作、操作时序可分为:系统复位和启动操作、暂停操作、空操作、 总线读操作、总线写操作、中断操作、总线保持。总线读操作、总线写操作、中断操作、总线保持。1 1、系统复位和启动操作、系统复位和启动操作图图2-11 8086CPU的复位操作时序的复位操作时序2、暂停操作、暂停操作 3、总线空操作、总线空操作4、总线读操作、总线读操作总线读操作分两种:最小模式下的总线读操作总线读操作分两种:最小模式下的总线读操作最大模式下的总线读操作最大模式下的总线读操作图图2-12 最小模式的总线读操作时序最小模式的总线读操作时序在各状态下在各状态下8

44、086CPU的总线需要完成相应的操作,见表的总线需要完成相应的操作,见表2-8 时钟状态完成的操作T1 在M IO线上发出有效电平。读存储器为高电平,读IO端口为低电平,该电平将持续整个周期。 CPU把20位存储器单元地址或16位IO端口地址放在AD15AD0和A19/S6A16S3上。这些信号只持续一个T1状态。 CPU从 ALE引脚上输出一个正脉冲,其下降沿通过地址锁存器对地址信号进行锁存,供整个总线周期使用。 CPU在 BHES7引脚上使 信号有效,以便BHE和地址A0对奇、偶地址区进行寻址。 CPU使DT/ 变为低电平,这时控制数据收发器为接收数据状态。T2 AD15AD0上地址信号消

45、失,AD15AD0进入高阻缓冲期,为数据读入作准备。 A19S6A16S3及 BHES7线,输出状态信息 S7S3,持续到 T4。 DEN信号变为有效,使数据收发器开放,维持到T3的结束。 RD信号变为有效。使被地址信号选中的存储单元或IO端口数据输出缓冲器将数据送上数据总线。 DT/R继续保持低电平有效的接收状态。表表2-8 2-8 最小模式下总线读操作最小模式下总线读操作T3 存储器或外设把数据放在数据总线AD15AD0上,为CPU读数据作好准备。 CPU采样READY。当READY=0时,自动插入等待状态TwTwCPU采样READY,直到READY=1时,才脱离Tw而进入T4状态T4CP

46、U对数据总线上的数据进行采样,完成读取数据的操作5、总线写操作、总线写操作总线写操作是指总线写操作是指CPU把数据写入到存储器或把数据写入到存储器或IO端口。端口。图图2-13 2-13 最小模式的总线写操作时序最小模式的总线写操作时序在各状态下在各状态下8086CPU的总线需要完成相应的操作,见表的总线需要完成相应的操作,见表2-9 时钟状态完成的操作T1 这四个操作与最小模式下总线读操作对应步骤相同, CPU使DT/ R变为高电平,这时控制数据收发器为输出数据状态。T2 AD15AD0上地址信号消失,CPU将数据输出到 AD线上 这两个操作与最小模式下总线读操作对应步骤相同 WR信号变为有

47、效。使被地址信号选中的存储单元或IO端口接收数据总线上的 数据 DT/ R 继续保持高电平有效的输出状态。T3CPU采样READY。当READY=0时,自动插入等待状态TwTw 与最小模式下总线读操作对应步骤相同T4 CPU认为存储单元或IO端口接收数据完毕,撤消数据总线上的数据。表表2-9 2-9 最小模式下总线写操作最小模式下总线写操作2.3 80286微处理器微处理器 2.3.180286 CPU的主要性能的主要性能1、80286是一种先进的是一种先进的16位微处理器位微处理器2、80286 CPU有两种工作方式有两种工作方式(1)实地址方式)实地址方式(2)保护虚地址方式)保护虚地址方

48、式3、具有存储器管理和保护机构、具有存储器管理和保护机构4、兼容性好、兼容性好2.3.2 80286 CPU的功能结构的功能结构组成:执行部件组成:执行部件EU、地址部件、地址部件AU、 指令部件指令部件IU和总线接口部件和总线接口部件BIU1 1、总线接口部件、总线接口部件BIUBIU组成:协处理器接口、地址锁存驱动器、总线控制器、数据收组成:协处理器接口、地址锁存驱动器、总线控制器、数据收发器、预取器和发器、预取器和6 6字节的预取队列。字节的预取队列。主要作用:处理主要作用:处理CPUCPU和系统总线之间的所有通信和数据传输。和系统总线之间的所有通信和数据传输。2 2、指令部件、指令部件

49、IUIU组成:指令部件组成:指令部件IUIU由指令译码器和已译码指令队列由指令译码器和已译码指令队列主要作用:把指令字节从预取队列中取出,送入指令译码器。主要作用:把指令字节从预取队列中取出,送入指令译码器。3 3、执行部件、执行部件EUEU组成:算术逻辑部件组成:算术逻辑部件ALUALU、标志寄存器、通用寄存器阵列和控、标志寄存器、通用寄存器阵列和控制电路等。制电路等。主要作用:主要作用:EUEU中的控制电路根据已译码指令的中的控制电路根据已译码指令的6969位内部码产生执位内部码产生执行指令所需的控制电位序列,实现对其它部件的控制,完成指令行指令所需的控制电位序列,实现对其它部件的控制,完

50、成指令的执行,并根据操作结果影响标志寄存器的标志位。的执行,并根据操作结果影响标志寄存器的标志位。4 4、地址部件、地址部件AUAU组成:地址部件组成:地址部件AUAU由段描述符高速缓冲存储器、物理地址加法由段描述符高速缓冲存储器、物理地址加法器、偏移地址加法器和段寄存器等。如图器、偏移地址加法器和段寄存器等。如图2-142-14所示所示主要作用:在实地址方式下将段基址与偏移地址组合起来形成主要作用:在实地址方式下将段基址与偏移地址组合起来形成 2020位物理地址。位物理地址。通用寄存器通用寄存器ALUALU及标志及标志寄存器寄存器控制器控制器偏移量或数据偏移量或数据已译码指令已译码指令地地址

51、址部部件件段描述符段描述符CacheCache偏移量加法器偏移量加法器物理地址加法器物理地址加法器段寄存器段寄存器总线接口部件总线接口部件物理地址物理地址存储器操作存储器操作数请求数请求内部数据总线内部数据总线指令部件指令部件图图2-14 802862-14 80286功能结构框图功能结构框图协处理器接口协处理器接口总线控制器总线控制器地址锁存驱动器地址锁存驱动器数据收发器数据收发器预取器预取器3 3条已译码条已译码指令队列指令队列指令译码器指令译码器6 6字节预取队列字节预取队列PEACKPEACKPEREQPEREQ地址总线地址总线控制总线控制总线数据总线数据总线执执行行部部件件16162

52、.3.32.3.380286 CPU80286 CPU的寄存器的寄存器1 1、新增标志位、新增标志位80286CPU80286CPU新增了两类标志,占用三个标志位。新增了两类标志,占用三个标志位。(1 1)I IO O特权级标志特权级标志该标志占用两位二进制位(位该标志占用两位二进制位(位1212、1313),四个状态,用来确),四个状态,用来确定需要执行的定需要执行的I IO O操作的特权级操作的特权级。(2 2)嵌套任务标志)嵌套任务标志NTNTNTNT标志占用一位二进制位(位标志占用一位二进制位(位1414)。)。 2 2、机器状态字、机器状态字MSWMSW80286CPU80286CP

53、U的机器状态字的机器状态字MSWMSW如图如图2-152-15所示,在这所示,在这1616位的状态字寄存器中,只使用位的状态字寄存器中,只使用了低了低4 4位,高位,高1212位保留位保留(1 1)允许保护标志)允许保护标志PEPE若若PEPE1 1,保护方式;系统复位后,保护方式;系统复位后,PEPE0 0,实地址方式。,实地址方式。(2 2)监控协处理器扩充标志)监控协处理器扩充标志 MPMP若若MP=1MP=1则系统中有数学协处理器存在;否则数学协处理器不存在。则系统中有数学协处理器存在;否则数学协处理器不存在。(3 3)仿真协处理器扩充标志)仿真协处理器扩充标志EMEMEMEM1 1,

54、表示采用软件仿真数学协处理器的功能;,表示采用软件仿真数学协处理器的功能;若若EMEM0 0,则否。,则否。(4 4)任务转换标志)任务转换标志TSTSTSTS由硬件置位,由软件复位。由硬件置位,由软件复位。图图2-15 80286CPU2-15 80286CPU的机器状态字的机器状态字MSWMSW任务保留协处理器模拟监督协处理器保护允许154 INTEL保留位153210TS EM MP PE2.3.4 80286 CPU2.3.4 80286 CPU的存储器寻址的存储器寻址 什么是虚拟存储器?什么是虚拟存储器?它是一种设计技术,采用该技术能提供比实际内存储器大它是一种设计技术,采用该技术能

55、提供比实际内存储器大得多的存储器空间。它由存储器管理机制和一个大容量快速硬得多的存储器空间。它由存储器管理机制和一个大容量快速硬磁盘支持,及时地将虚拟存储空间调入内存或调回磁盘。磁盘支持,及时地将虚拟存储空间调入内存或调回磁盘。 CPUCPU中其它部件中其它部件选择子选择子偏移量偏移量加加法法器器3131161615150 0存储器存储器目标单元目标单元段描述符段描述符段段段基址段基址23230 00 080286CPU80286CPU图图2-162-168028680286保护虚地址方式下的存储器寻址过程保护虚地址方式下的存储器寻址过程2.4 803862.4 80386微处理器微处理器 2

56、.4.12.4.180386 CPU80386 CPU的主要性能的主要性能1 1、灵活的、灵活的3232位微处理器位微处理器2 2、具有、具有3 3种工作方式种工作方式(1 1)实地址方式)实地址方式(2 2)虚地址保护方式)虚地址保护方式(3 3)虚拟)虚拟80868086方式方式3 3、具有段页式存储器管理部件、具有段页式存储器管理部件4 4、兼容性强、兼容性强5 5、高性能的硬件措施、高性能的硬件措施2.4.2 80386 CPU2.4.2 80386 CPU的功能结构的功能结构组成:总线接口部件组成:总线接口部件BIUBIU、指令预取部件、指令译码部件、执、指令预取部件、指令译码部件、

57、执行部件、分段部件和分页部件。行部件、分段部件和分页部件。 1 1、 总线接口部件总线接口部件组成:由请求判优控制器、地址驱动器、流水线总线宽度控制、组成:由请求判优控制器、地址驱动器、流水线总线宽度控制、多路转换多路转换MUXMUX收发器等。收发器等。主要作用:将主要作用:将CPUCPU内部的其它部件与外部总线连接起来。内部的其它部件与外部总线连接起来。2 2、 指令预取部件指令预取部件组成:预取器及预取队列。组成:预取器及预取队列。主要作用:管理着一个预取指令指针和段预取界限。主要作用:管理着一个预取指令指针和段预取界限。3 3、指令译码部件、指令译码部件组成:指令译码器及已译码指令队列。

58、组成:指令译码器及已译码指令队列。主要作用:指令译码部件为指令的执行做好了准备。主要作用:指令译码部件为指令的执行做好了准备。4 4、执行部件、执行部件组成:控制部件、数据处理部件和保护测试部件。组成:控制部件、数据处理部件和保护测试部件。主要作用:将已译码指令队列中的内部编码变成按时间顺序排主要作用:将已译码指令队列中的内部编码变成按时间顺序排列的一系列控制信息,并发向处理器的其它处理部列的一系列控制信息,并发向处理器的其它处理部件,以便完成一条指令的执行。件,以便完成一条指令的执行。数据处理部件的组成:一个算术逻辑部件数据处理部件的组成:一个算术逻辑部件ALUALU、8 8个个3232位通

59、用寄位通用寄存器、一个存器、一个6464位桶形移位器和一个乘法器。位桶形移位器和一个乘法器。5 5、分段部件、分段部件组成:三输入地址加法器、段描述符高速缓冲存储器及界限和组成:三输入地址加法器、段描述符高速缓冲存储器及界限和属性检验用可编程逻辑阵列属性检验用可编程逻辑阵列PLAPLA。主要作用:把逻辑地址转换成线性地址。主要作用:把逻辑地址转换成线性地址。6 6、 分页部件分页部件组成:加法器、页高速缓冲存储器及控制和属性组成:加法器、页高速缓冲存储器及控制和属性PLAPLA。主要作用:将分段部件或代码领取部件产生的线性地址转换成主要作用:将分段部件或代码领取部件产生的线性地址转换成物理地址

60、。物理地址。存储器管理部件存储器管理部件MMUMMU的组成:分页部件、分段部件及总线接口的组成:分页部件、分段部件及总线接口 部件。部件。图图2-17 80386 CPU的功能结构的功能结构预取器预取器/界界验校验器验校验器16字节预字节预取队列取队列译码和译码和定序定序控制控制ROM桶形移桶形移位器位器ALU乘乘/除硬件除硬件寄存器组寄存器组保护检保护检测部件测部件地址驱地址驱动器动器流水线流水线总线宽总线宽度控制度控制MUX收收发器发器请求判请求判优器优器有效地址总线有效地址总线有效地址总线有效地址总线状态状态标志标志ALUALU控制控制指令译指令译码器码器已译码指已译码指令队列令队列指令

温馨提示

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

评论

0/150

提交评论