微机原理第4章_第1页
微机原理第4章_第2页
微机原理第4章_第3页
微机原理第4章_第4页
微机原理第4章_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

1、第第4章章16位微处理器位微处理器4.1 16位微处理器概述位微处理器概述4.2 8086/8088 CPU的结构的结构4.3 8086/8088 CPU的引脚信号和工作模式的引脚信号和工作模式4.4 8086/8088的主要操作功能的主要操作功能习题习题微处理器微处理器(microprocessor)是微型计算机的运算及控是微型计算机的运算及控制部件,也称中央处理单元制部件,也称中央处理单元(CPU)。它本身不构成。它本身不构成独立的工作系统,因而它也不能独立地执行程序。独立的工作系统,因而它也不能独立地执行程序。组成:组成:微处理器由算术逻辑部件微处理器由算术逻辑部件(ALU)、控制部件、

2、控制部件、寄存器组和片内总线等几部分组成。寄存器组和片内总线等几部分组成。第一代微处理器第一代微处理器是是1971年年Intel公司推出的公司推出的4040和和8008。它们是采用。它们是采用PMOS工艺的工艺的4位及位及8位微处理器,位微处理器,只能进行串行的十进制运算,集成度达到只能进行串行的十进制运算,集成度达到2,000个个晶体管片,用在各种类型的计算器中已经完全能晶体管片,用在各种类型的计算器中已经完全能满足要求。满足要求。4.1 16位微处理器概述位微处理器概述第二代微处理器第二代微处理器是是1974年推出的年推出的8080,M6800及及Z-80等。它等。它们是采用们是采用NMO

3、S工艺的工艺的8位位微处理器,集成度达到微处理器,集成度达到9,000个晶个晶体管片。在许多要求不高的工业生产和科研开发中已可体管片。在许多要求不高的工业生产和科研开发中已可运用。运用。 特点:特点:这些这些8位微处理器构成的计算机系统对许多算术运算位微处理器构成的计算机系统对许多算术运算和其他操作都必须编制程序。例如,即使是乘法和除法这和其他操作都必须编制程序。例如,即使是乘法和除法这样基本的运算都必须用子程序来实现。由于每次只能处理样基本的运算都必须用子程序来实现。由于每次只能处理8位数据,处理大量数据就要分成许多个位数据,处理大量数据就要分成许多个8位字节进行操作,位字节进行操作,数值越

4、大或越小,计算时间都很长,这对数量大的数据库、数值越大或越小,计算时间都很长,这对数量大的数据库、文字处理或实时控制等应用来说就太慢了。用提高时钟频文字处理或实时控制等应用来说就太慢了。用提高时钟频率可弥补这一局限,但也是很有限度的。率可弥补这一局限,但也是很有限度的。 此外,此外,8位微处理器的寻址能力也有局限。典型位微处理器的寻址能力也有局限。典型8位微处理位微处理器有一条器有一条16位地址线,因此最多可寻址位地址线,因此最多可寻址64K个存储单元,对个存储单元,对于具有大量数据的大型复杂程序都可能是不够的。于具有大量数据的大型复杂程序都可能是不够的。第三代微处理器第三代微处理器:20世纪

5、世纪70年代后期,超大规模集成电路年代后期,超大规模集成电路(VLSI)投入使用,第三代微处理器出现了。投入使用,第三代微处理器出现了。Intel公司的公司的80868088,Motorola公司的公司的M68000和和Zilog公司的公司的Z8000等等16位位微处理器相继问世。微处理器相继问世。特点:特点:它们的运算速度比它们的运算速度比8位微处理器快位微处理器快25倍,采用倍,采用HMOS高高密度工艺,集成度达密度工艺,集成度达29 000个晶体管片,赶上或超过了个晶体管片,赶上或超过了20世纪世纪70年代小型机的水平。从此,传统的小型计算机受到严年代小型机的水平。从此,传统的小型计算机

6、受到严峻的挑战。峻的挑战。微处理器微处理器80186及及80286 :20世纪世纪80年代以来,年代以来,Intel公司又推出公司又推出了高性能的了高性能的16位微处理器位微处理器80186及及80286。它们与。它们与80868088向上兼容。向上兼容。80286是为满足多用户和多任务系统的微处理器,是为满足多用户和多任务系统的微处理器,速度比速度比8086快快56倍。处理器本身包含存储器管理和保护部倍。处理器本身包含存储器管理和保护部件,支持虚拟存储体系。件,支持虚拟存储体系。1985年,年,第四代微处理器第四代微处理器80386及及M68020推出市场,集成度推出市场,集成度达达45万个

7、晶体管片。它们是万个晶体管片。它们是32位微处理器,时钟频率达位微处理器,时钟频率达40MHz,速度之快、性能之高,足以同高档小型机相匹敌。,速度之快、性能之高,足以同高档小型机相匹敌。总之:总之:20世纪世纪70年代至今,微处理器的发展是其他许多技术年代至今,微处理器的发展是其他许多技术领域望尘莫及的,如领域望尘莫及的,如1989年推出了年推出了80486,1993年推出了年推出了Pentium及及80586等更高性能的等更高性能的32位及位及64位微处理器,它也位微处理器,它也促进了其他技术的进步。促进了其他技术的进步。本章以讲解本章以讲解16位位80868088微处理器为主微处理器为主.

8、第第11章再介绍章再介绍80386,80486及及Pentium等芯片的原理。因为它们是当今许多流行等芯片的原理。因为它们是当今许多流行的微型计算机,如的微型计算机,如IBM PC及许多兼容机联想,同方,及许多兼容机联想,同方,COMPAQ等个人计算机的等个人计算机的CPU。8086和和8088 CPU 的比较:的比较: 8086和和8088 CPU的内部基本相同,但它们的外部性能的内部基本相同,但它们的外部性能是有区别的。是有区别的。 1、8086是是16位位数据总线,而数据总线,而8088是是8位位数据总线,在数据总线,在处理一个处理一个16位数据字时,位数据字时,8088需要两步操作而需

9、要两步操作而8086只只需要一步。需要一步。 2、8086和和8088 CPU的内部都采用的内部都采用16位字进行操作及存位字进行操作及存储器寻址,两者的软件完全兼容,程序的执行也完全储器寻址,两者的软件完全兼容,程序的执行也完全相同。然而,由于相同。然而,由于8088要比要比8086有有较多的外部存取操较多的外部存取操作作,所以,对相同的程序,它将执行得较慢。这两种,所以,对相同的程序,它将执行得较慢。这两种微处理器都封装在相同的微处理器都封装在相同的40脚双列直插组件脚双列直插组件(DIP)中。中。 2.1 8086/8088CPU2.1 8086/8088CPU的结构的结构8086 CP

10、U从功能上可分为两部分,从功能上可分为两部分,即即总线接口部件总线接口部件(bus interface unit,缩写为,缩写为BIU) 执行部件执行部件 (execution unit,缩写为缩写为EU)。 EUEU不与外部总线不与外部总线( (或称外部世界或称外部世界) )相联,它只负责执行指令。相联,它只负责执行指令。BIUBIU则负责从存储器或外部设备中读取指令和读则负责从存储器或外部设备中读取指令和读/ /写数据,即完成所写数据,即完成所有的总线操作。有的总线操作。特点:特点:这两个单元处于并行工作状态,可以同时进行读这两个单元处于并行工作状态,可以同时进行读/ /写操作写操作和执行

11、指令的操作。这样就可以充分利用各部分电路和总线,和执行指令的操作。这样就可以充分利用各部分电路和总线,提高微处理器执行指令的速度。提高微处理器执行指令的速度。 2.1 8086/8088CPU2.1 8086/8088CPU的结构的结构单击此处编辑母版标题样式单击此处编辑母版标题样式 单击此处编辑母版副标题样式单击此处编辑母版副标题样式4.2.1 执行部件执行部件EU执行部件执行部件(EU)的功能:的功能:就是负责指令的执行。将指令就是负责指令的执行。将指令译码并利用内部的寄存器和译码并利用内部的寄存器和ALU对数据进行所需的对数据进行所需的处理。处理。执行部件由下列部分组成:执行部件由下列部

12、分组成:(1) 4个通用寄存器,即个通用寄存器,即AX,BX,CX,DX;(2) 4个专用寄存器,即基数指针寄存器个专用寄存器,即基数指针寄存器BP,堆栈指针,堆栈指针 寄存器寄存器SP,源变址寄存器,源变址寄存器SI,目的变址寄存器,目的变址寄存器DI;(3) 标志寄存器标志寄存器(FLAGS);(4) 算术逻辑部件算术逻辑部件(ALU)。(5) 运算寄存器运算寄存器(6) EU控制系统控制系统 2.1 8086/8088CPU2.1 8086/8088CPU的结构的结构4.2.2 总线接口部件总线接口部件BIU总线接口部件的功能:总线接口部件的功能:是负责与存储器、是负责与存储器、IO端口

13、传送数据,端口传送数据,即即BIU管理在存储器或管理在存储器或IO端口中存取程序和数据的实际处端口中存取程序和数据的实际处理过程。理过程。总线接口部件的组成:总线接口部件的组成:(1) 4个段地址寄存器,即个段地址寄存器,即 CS16位代码段寄存器;位代码段寄存器; DS16位数据段寄存器;位数据段寄存器; ES16位附加段寄存器;位附加段寄存器; SS16位堆栈段寄存器。位堆栈段寄存器。(2) 16位指令指针寄存器位指令指针寄存器IP。(3) 20位的地址加法器。位的地址加法器。(4) 6字节的指令队列。字节的指令队列。80868088的的BIU有如下特点:有如下特点:(1) 8086的的指

14、令队列指令队列为为6个个字节,字节,8088的指令队列为的指令队列为4个个字字节。节。8086、8088,都在执行指令的同时,从存储器中取,都在执行指令的同时,从存储器中取下一条指令或下几条指令,取来的指令就放在下一条指令或下几条指令,取来的指令就放在指令队列指令队列中。这样,一般情况下,中。这样,一般情况下,CPU执行完一条指令就可以立执行完一条指令就可以立即执行下一条指令,而不需要像以往的计算机那样,让即执行下一条指令,而不需要像以往的计算机那样,让CPU轮番进行取指令和执行指令的操作,从而提高了轮番进行取指令和执行指令的操作,从而提高了CPU的效率。的效率。(2) 地址加法器地址加法器用

15、来产生用来产生20位地址。上面已经提到,位地址。上面已经提到,8086可用可用20位地址寻址位地址寻址1M字节的内存空间,但字节的内存空间,但8086内部所内部所有的寄存器都是有的寄存器都是16位的,所以需要由一个附加的机构来位的,所以需要由一个附加的机构来根据根据16位寄存器提供的信息计算出位寄存器提供的信息计算出20位的物理地址,这位的物理地址,这个机构就是个机构就是20位的地址加法器。位的地址加法器。总线接口部件和执行部件是如何协调工作的:总线接口部件和执行部件是如何协调工作的:并不是并不是同步工作的,它们是按以下流水线技术原则管理:同步工作的,它们是按以下流水线技术原则管理:(1) 何

16、时取指令?何时取指令?每当每当8086的指令队列中有的指令队列中有两个两个空字节,空字节,或者或者8088的指令队列中有的指令队列中有一个一个空字节时,总线接口空字节时,总线接口部件就会自动把指令取到指令队列中。部件就会自动把指令取到指令队列中。(2) 如何协调工作?如何协调工作?每当执行部件准备执行一条指令时,每当执行部件准备执行一条指令时,它会从总线接口部件的指令队列前部取出指令的代它会从总线接口部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令要求的操作。码,然后用几个时钟周期去执行指令要求的操作。该操作有两种类型:该操作有两种类型:一是进行算术逻辑运算,二是一是进行算术逻辑

17、运算,二是计算存储器操作数的偏移地址。计算存储器操作数的偏移地址。在执行指令的过程中,如果必须访问存储器或者输在执行指令的过程中,如果必须访问存储器或者输入输出设备,那么,执行部件就会请求总线接口入输出设备,那么,执行部件就会请求总线接口部件,进入总线周期,完成访问内存或者输入输部件,进入总线周期,完成访问内存或者输入输出端口的操作;如果此时总线接口部件正好处于空出端口的操作;如果此时总线接口部件正好处于空闲状态,那么,会立即响应执行部件的总线请求。闲状态,那么,会立即响应执行部件的总线请求。但有时会遇到这样的情况,执行部件请求总线接口但有时会遇到这样的情况,执行部件请求总线接口部件访问总线时

18、,总线接口部件正在将某个指令字部件访问总线时,总线接口部件正在将某个指令字节取到指令队列中,此时总线接口部件将首先完成节取到指令队列中,此时总线接口部件将首先完成这个取指令的总线周期,然后再去响应执行部件发这个取指令的总线周期,然后再去响应执行部件发出的访问总线的请求。出的访问总线的请求。(3) 空闲状态:空闲状态:当指令队列已满,而且执行部件又没当指令队列已满,而且执行部件又没有总线访问时,总线接口部件便进入空闲状态。有总线访问时,总线接口部件便进入空闲状态。 (4) 程序发生转移时:程序发生转移时:在执行转移指令、调用指令和在执行转移指令、调用指令和返回指令时,下面要执行的指令就不是在程序

19、中紧返回指令时,下面要执行的指令就不是在程序中紧接着的那条指令了,而总线接口部件接着的那条指令了,而总线接口部件BIU往指令队往指令队列装入指令时,总是按顺序进行的,这样,指令队列装入指令时,总是按顺序进行的,这样,指令队列中已经装入的字节就没有用了。遇到这种情况,列中已经装入的字节就没有用了。遇到这种情况, BIU自动地执行取指操作,自动地执行取指操作, 且且BIU将所取得的第一将所取得的第一条指令直接送到条指令直接送到EU中去执行,将随后取来的指令中去执行,将随后取来的指令重新填入指令队列,覆盖转移前放入指令队列中的重新填入指令队列,覆盖转移前放入指令队列中的指令。指令。8 8个个通用通用

20、寄存器寄存器2 2个个控制寄存器控制寄存器4 4个个段寄存器段寄存器4.2.2 8086/8088 4.2.2 8086/8088 的寄存器的寄存器l通用寄存器共通用寄存器共8 8个:个:AX,BX,CX,DX,SP,BP,SI,DIAX,BX,CX,DX,SP,BP,SI,DI,均为均为1616位位, ,在在EUEU部件中部件中lAX,BX,CX,DXAX,BX,CX,DX均可分成高均可分成高8 8位和低位和低8 8位,作为独立的位,作为独立的8 8位寄存器使用:位寄存器使用:AH,AL,BH,BL,CH,CL,DH,DLAH,AL,BH,BL,CH,CL,DH,DLlAXAX累加器,累加器

21、,BXBX基址寄存器基址寄存器 CXCX计数寄存器,计数寄存器,DXDX数据寄存器数据寄存器 SPSP堆栈指针堆栈指针寄存器,寄存器,BPBP基址指针寄存器基址指针寄存器 SISI源变址寄存器,源变址寄存器,DIDI目的变址寄存器目的变址寄存器 注意:表注意:表4-14-1暂时先不看,等学完指令以后再看。暂时先不看,等学完指令以后再看。1.1.通用寄存器通用寄存器IP IP 硬件电路,能自动跟踪指令地址。硬件电路,能自动跟踪指令地址。 在开始执行程序时在开始执行程序时, ,赋给赋给IPIP第一条指令的地第一条指令的地址址, ,然后每取一条指令然后每取一条指令,IP,IP的值就自动指向下的值就自

22、动指向下一条指令的地址。一条指令的地址。即程序中的指令在其逻辑即程序中的指令在其逻辑段中的地址偏移量。段中的地址偏移量。2.2.指令指针指令指针寄存器寄存器IP(instruction point)IP(instruction point)注意:注意:9 9个个标志位,其中标志位,其中6 6个状态标志,个状态标志, 3 3个控制标志个控制标志3.3.状态标志寄存器状态标志寄存器(status flags)(status flags)l进位标志位进位标志位CF CF 加减运算执行后,加减运算执行后,最高位最高位有进位或借位,有进位或借位,CF=1CF=1;无进位或借位,无进位或借位,CF=0CF

23、=0 主要用于多字节加减运算主要用于多字节加减运算l辅助进位标志位辅助进位标志位AF AF 最低最低4 4位位D3D3D0D0位位有进位或借位,有进位或借位,AF=1AF=1;无进位;无进位或借位,或借位,AF=0AF=0 用于用于BCDBCD数的算术运算数的算术运算( (调整调整) )指令指令 (1 1)状态标志)状态标志反映反映EUEU执行算术或逻辑运算后的结果执行算术或逻辑运算后的结果l溢出标志位溢出标志位OF OF 运算结果超出了机器数所能表示的数的范围运算结果超出了机器数所能表示的数的范围OF=1OF=1;反之,;反之,OF=0OF=0 该标志表示运算结果是否产生了溢出该标志表示运算

24、结果是否产生了溢出 l符号标志位符号标志位SF SF 结果为负数,结果为负数,SF=1SF=1;结果为正数,;结果为正数,SF=0SF=0l零标志位零标志位 结果为结果为0 0,ZF=1ZF=1;结果不为;结果不为0 0,ZF=0 ZF=0 l奇偶标志位奇偶标志位PFPF 结果低八位中结果低八位中1 1的个数为偶数,的个数为偶数,PF=1PF=1;为奇数,;为奇数,PF=0PF=0。用于检查数据在传送过程中是否发生错误。用于检查数据在传送过程中是否发生错误 l方向标志位方向标志位DFDF 控制数据串操作指令的步进方向控制数据串操作指令的步进方向 DF=1,DF=1,地址增址地址增址;DF=0,

25、;DF=0,地址减址地址减址l中断允许标志位中断允许标志位IF IF 控制控制CPUCPU是否开中断是否开中断. IF=1, CPU. IF=1, CPU开中断开中断 IF=0, CPUIF=0, CPU关中断关中断l追踪标志位追踪标志位TFTF(陷阱标志位)(陷阱标志位) TF=1TF=1,CPUCPU单步执行程序,常用于程序的调试单步执行程序,常用于程序的调试 TF=0TF=0,CPUCPU正常执行程序正常执行程序 (2 2)控制标志)控制标志用于控制用于控制CPUCPU的操作。的操作。 8086/8088 8086/8088有有2020条地址线,存储器的物理地址条地址线,存储器的物理地址

26、必须用必须用2020位二进制数表示。位二进制数表示。ALUALU只能处理只能处理1616位的地位的地址运算,与地址有关的寄存器都只有址运算,与地址有关的寄存器都只有1616位。因此位。因此8086/80888086/8088把把2020位的存储器地址分成若干个段来表位的存储器地址分成若干个段来表示。段寄存器就是用来存放示。段寄存器就是用来存放段基址(段基址(段的起始地址段的起始地址的高的高1616位地址)位地址)的寄存器。段内再由的寄存器。段内再由1616位的位的偏移地偏移地址址来寻址,来寻址, 存储单元的存储单元的逻辑地址逻辑地址的表示方法为。的表示方法为。 段基址:偏移地址段基址:偏移地址

27、 或或 段寄存器:偏移地址段寄存器:偏移地址4.4.段寄存器段寄存器 注此部分内容在存储器结构之后再讲。注此部分内容在存储器结构之后再讲。CSCS存放代码段的存放代码段的段基址段基址SSSS存放堆栈段的存放堆栈段的段基址段基址DSDS存放数据段的存放数据段的段基址段基址ESES存放附加数据段的存放附加数据段的段基址段基址注意:下面的使用方法是固定的。注意:下面的使用方法是固定的。代码段的逻辑地址代码段的逻辑地址 CS:IPCS:IP堆栈段的逻辑地址堆栈段的逻辑地址 SS:SP SS:SP4.2.3 存储器结构存储器结构8086808680888088系统中存储器按字节编址,可寻址的存储器空间系

28、统中存储器按字节编址,可寻址的存储器空间为为1MB1MB,由于,由于1MB1MB为为2 22020,因此每个字节所对应的地址应是,因此每个字节所对应的地址应是2020位位( (二进制数二进制数) ),这,这2020位的地址称为位的地址称为物理地址物理地址。1.1. 存储器的编址存储器的编址 所有存储器的操作可以按字节为单位或按字为单位来处所有存储器的操作可以按字节为单位或按字为单位来处理。理。 按字节为单位的编址方式按字节为单位的编址方式:用实际地址表示即可。:用实际地址表示即可。 按字为单位的编址方式按字为单位的编址方式:人为规定处于低地址的字节的:人为规定处于低地址的字节的地址为这个字的地

29、址,高地址的字节为高位字节,低地地址为这个字的地址,高地址的字节为高位字节,低地址的字节为低位字节。址的字节为低位字节。概念:规则字:概念:规则字:将偶数地址的字称为规则字。将偶数地址的字称为规则字。 非规则字:非规则字:将奇数地址的字称为非规则字。将奇数地址的字称为非规则字。单击此处编辑母版标题样式单击此处编辑母版标题样式 单击此处编辑母版副标题样式单击此处编辑母版副标题样式2. 存储器的管理存储器的管理概念:逻辑段:概念:逻辑段:简称段;简称段; 逻辑段的大小:逻辑段的大小:每个逻辑段容量每个逻辑段容量64KB;注意:注意:20位的物理地址在位的物理地址在CPU内部就应有内部就应有20位的

30、地址位的地址 寄存器,而机内的寄存器是寄存器,而机内的寄存器是16位的位的(16位机位机), 16位寄存器只能寻址位寄存器只能寻址64KB。逻辑段的数量:逻辑段的数量:1616个或不定,如图所示。个或不定,如图所示。各逻辑段的位置:各逻辑段的位置:允许它们在整个存储空间浮动,即允许它们在整个存储空间浮动,即 段与段之间段与段之间 可以部分重叠、完全可以部分重叠、完全 重叠、连续排列、断续排列,非常重叠、连续排列、断续排列,非常 灵活。灵活。对于任何一个存储单元,可以惟一地被包含在一个对于任何一个存储单元,可以惟一地被包含在一个逻辑段中,也可包含在多个相互重叠的逻辑段中,逻辑段中,也可包含在多个

31、相互重叠的逻辑段中,只要有段地址和段内偏移地址就可以访问到这个物只要有段地址和段内偏移地址就可以访问到这个物理地址所对应的存储空间,如图理地址所对应的存储空间,如图4.3所示。所示。概念:概念:一节:一节:在在80868088存储空间中,把存储空间中,把16字节的字节的 存储空间称作一节存储空间称作一节(paragraph)。 段的首地址:段的首地址:每个逻辑段中第一个存储单元的地址,每个逻辑段中第一个存储单元的地址, 用用2020位物理地址表示。位物理地址表示。段首地址的特点:段首地址的特点:为了简化操作,要求各个逻辑段从为了简化操作,要求各个逻辑段从 节的整数边界开始,也就是说段首节的整数

32、边界开始,也就是说段首 地址低地址低4位应该是位应该是“0”,段基址:段基址:把段首地址的高把段首地址的高16位称为位称为“段基址段基址”,存放在,存放在 段寄存器段寄存器DS或或CS或或SS或或ES中。中。偏移地址:偏移地址:段起始地址到存储单元的段起始地址到存储单元的字节距离字节距离,称为,称为 段内段内偏移地址偏移地址,又称地址偏移量。又称地址偏移量。段内的偏段内的偏 移地址存放在移地址存放在IP或或SP中。中。例:例:若已知当前有效的代码段、数据段、附加段和堆栈段的段若已知当前有效的代码段、数据段、附加段和堆栈段的段基址分别为基址分别为1055H,250AH,8FFBH和和EFF0H,

33、那么它们在存储,那么它们在存储器中的分布情况如图器中的分布情况如图4.4所示。所示。3. 存储器中的逻辑地址和物理地址存储器中的逻辑地址和物理地址概念:概念:物理地址:物理地址:也称为绝对地址,任何一个存储单元的也称为绝对地址,任何一个存储单元的20位地位地址,称为物理地址。址,称为物理地址。逻辑地址:逻辑地址:采用分段结构的存储器中,任何一个逻辑地址采用分段结构的存储器中,任何一个逻辑地址由段基址和偏移地址两个部分构成,它们都是无符号的由段基址和偏移地址两个部分构成,它们都是无符号的16位二进制数。位二进制数。 表示为表示为-段基址:偏移地址段基址:偏移地址 或或 段寄存器:偏移地址段寄存器

34、:偏移地址物理地址和物理地址和逻辑地址的互相转换关系:逻辑地址的互相转换关系:1:物理地址:物理地址=段基址左移段基址左移1位(十六进制)位(十六进制)+偏移地址偏移地址2:物理地址:物理地址=段基址左移段基址左移4位(二进制)位(二进制)+偏移地址偏移地址3:物理地址:物理地址=段基址段基址x16(十进制)(十进制)+偏移地址偏移地址图图4.5物理地址的形成如图物理地址的形成如图4.5所示,它是通过所示,它是通过CPU的总线的总线接接 口部件口部件BIU的地址加法器来实现的。的地址加法器来实现的。例如:代码段寄存器例如:代码段寄存器CS=2000H,指令指针寄存器存,指令指针寄存器存放的是偏

35、移地址放的是偏移地址IP=2200H,存储器的物理地址为,存储器的物理地址为20000H+2200H=22200H。注意:注意:1、我们可以把每一个存储单元看成是具有两种类型我们可以把每一个存储单元看成是具有两种类型的地址:物理地址和逻辑地址。物理地址就是实际的地址:物理地址和逻辑地址。物理地址就是实际地址,它具有地址,它具有20位的地址值,并是惟一标识位的地址值,并是惟一标识1MB存存储空间的某一个字节的地址。逻辑地址由段基址和储空间的某一个字节的地址。逻辑地址由段基址和偏移地址组成。程序以逻辑地址编址,而不是用物偏移地址组成。程序以逻辑地址编址,而不是用物理地址。理地址。 2、4个段寄存器

36、分别指向个段寄存器分别指向4个现行可寻址的分段的起始字节个现行可寻址的分段的起始字节单元。单元。CS存放代码段的存放代码段的段基址段基址 SS存放堆栈段的存放堆栈段的段基址段基址 DS存放数据段的存放数据段的段基址段基址 ES存放附加数据段的存放附加数据段的段基址段基址 注意:下面的使用方法是固定的。注意:下面的使用方法是固定的。 代码段的逻辑地址代码段的逻辑地址 CS:IP 堆栈段的逻辑地址堆栈段的逻辑地址 SS:SP 当涉及到一个操作数时,则由数据段寄存器当涉及到一个操作数时,则由数据段寄存器DS或附加段寄或附加段寄存器存器ES作为段寄存器,而偏地址是由作为段寄存器,而偏地址是由16位偏移

37、量得到。位偏移量得到。16位偏移量可以是指令中的偏移量加上位偏移量可以是指令中的偏移量加上16位地址寄存器的值位地址寄存器的值组成,取决于指令的寻址方式。组成,取决于指令的寻址方式。3.1 8086/80883.1 8086/8088的引线及功能的引线及功能 8086/80888086/8088均为均为4040条引线、双列直插式封装,某些引线条引线、双列直插式封装,某些引线有多重功能,其功能转换有两种情况:一种是有多重功能,其功能转换有两种情况:一种是分时复用分时复用,另一种是按另一种是按工作组态(或称为模式)工作组态(或称为模式)定义定义. .工作工作组态组态:最小最小组态组态和最大和最大组

38、态组态。最小最小组态组态:就是在系统中只有就是在系统中只有80868088一个微处理器。在一个微处理器。在这种系统中,所有的总线控制信号都直接由这种系统中,所有的总线控制信号都直接由80868088产生,产生,因此,系统中的总线控制逻辑电路被减到最少。因此,系统中的总线控制逻辑电路被减到最少。最大最大组态组态:是相对最小模式而言,它用在中等规模的或者大是相对最小模式而言,它用在中等规模的或者大型的型的80868088系统中。在此系统中,包含两个或多个微处系统中。在此系统中,包含两个或多个微处理器,其中一个主处理器就是理器,其中一个主处理器就是8086/8088,其他的处理器称为,其他的处理器称

39、为协处理器,它们是协助主处理器工作的。和协处理器,它们是协助主处理器工作的。和80868088配合配合的协处理器有两个,一个是数值运算协处理器的协处理器有两个,一个是数值运算协处理器8087,一个是,一个是输入输出协处理器输入输出协处理器8089。数值运算协处理器数值运算协处理器80878087:是一种专用于数值运算的处理器,是一种专用于数值运算的处理器,它能实现多种类型的数值操作。例如,高精度的整数和浮它能实现多种类型的数值操作。例如,高精度的整数和浮点运算,也可以进行超越函数点运算,也可以进行超越函数( (如:三角函数、对数函数如:三角函数、对数函数) )的计算。由于在通常情况下,这些运算

40、往往通过软件方法的计算。由于在通常情况下,这些运算往往通过软件方法来实现,而来实现,而80878087是用硬件方法来完成这些运算的,所以在是用硬件方法来完成这些运算的,所以在系统中加入协处理器系统中加入协处理器80878087之后,会提高系统的数值运算速之后,会提高系统的数值运算速度。度。输入输出协处理器输入输出协处理器 80898089:它有一套专门用于输入输出它有一套专门用于输入输出操作的指令系统,可以直接为输入输出设备服务,使操作的指令系统,可以直接为输入输出设备服务,使8086808680888088不再承担这类工作。所以在系统中增加协处理不再承担这类工作。所以在系统中增加协处理器器8

41、0898089后,会提高主处理器的效率,尤其是在输入输出频后,会提高主处理器的效率,尤其是在输入输出频繁的场合。繁的场合。8086808680888088的工作模式完全是由硬件决定的。的工作模式完全是由硬件决定的。数据与数据与低低8 8位地址位地址分时复用分时复用8088 CPU8088 CPU引线的排列引线的排列 电源和定时线电源和定时线控制控制工作在工作在什么什么组态组态8088CPU8088CPU的引线信号:的引线信号:1.1.地址和数据线地址和数据线2.2.控制和状态线控制和状态线3.3.电源和定时线电源和定时线与组态无与组态无关的引线关的引线状态与状态与高高4位地址位地址分时复用分时

42、复用最大最大(最小)(最小)组态下组态下的控制的控制信号信号(1 1)AD7AD7AD0 AD0 低低8 8位地址位地址/ /数据线数据线. .利用内部的多路开利用内部的多路开关,数据与低关,数据与低8 8位地址位地址分时复用分时复用这些引线这些引线. .当当CPUCPU访问访问存储器或外设时,先输出访问地址,存储器或外设时,先输出访问地址,由外部锁存器锁由外部锁存器锁存地址存地址,再读,再读/ /写所需要的数据。写所需要的数据。(2 2)A A1515A A8 8 中间中间8 8位地址线位地址线. . 8088 8088内部锁存,在访问存储器或外设时输出内部锁存,在访问存储器或外设时输出8

43、8位地址。位地址。 80868086的地址的地址/ /数据线是数据线是ADAD1515-AD-AD0 0。1.1.地址和数据线地址和数据线(3 3)A19A19A16/S6A16/S6S3 S3 高四位地址高四位地址/ /状态状态线线. .访问访问存储器时,地址与状态存储器时,地址与状态分时复用分时复用. .访问外设时,访问外设时,4 4位地址线不用位地址线不用. . 存储器的读存储器的读/ /写和写和I/OI/O操作时这些操作时这些线用来输出状态信息:线用来输出状态信息: S6 S5 S4 S3S6 S5 S4 S3 0 F 0 F的的IFIF位位 0 0 ES0 0 ES 无用无用 0 1

44、 SS0 1 SS 1 0 CS 1 0 CS 1 1 DS 1 1 DS 分两种:一种分两种:一种80888088组态有关的线,另一类是与组态无关的线组态有关的线,另一类是与组态无关的线(1)(1)MN/MXMN/MX 控制控制80888088工作于什么组态工作于什么组态. .接电源(接电源(+5V+5V),),80888088处于处于最小组态,接地最小组态,接地,80888088处于处于最大组态最大组态(2)(2)最小组态最小组态下的控制信号线下的控制信号线lIO/M IO/M 输入输出输入输出/ /存储存储器选择信号器选择信号. .输出低电平输出低电平访存储器;访存储器;输出高电平输出高

45、电平访问访问I/OI/O端口端口lWR WR 写信号写信号. .低电平有效,在执行存储器或低电平有效,在执行存储器或I/OI/O端口的写操作端口的写操作时输出的一个选通信号时输出的一个选通信号lINTA INTA 中断响应中断响应信号信号. .低电平有效低电平有效. .是是80888088响应外部响应外部INTRINTR而发而发出的中断响应信号出的中断响应信号2.2.控制和状态线控制和状态线lALE ALE 地址锁存允许地址锁存允许信号信号. . 是是80888088发出的选通脉冲,将发出的选通脉冲,将AD7AD7AD0AD0和和A19/S6A19/S6A16/S3A16/S3上出现的地址锁存

46、到外部地址锁存器中上出现的地址锁存到外部地址锁存器中. .lDT/R DT/R 数据发送数据发送/ /接收接收信号信号. . 低电平低电平接收数据,高电平接收数据,高电平发发送数据送数据, ,当将当将AD7-AD0AD7-AD0通过双向驱动器加以驱动时通过双向驱动器加以驱动时, ,就由该信号就由该信号来确定双向驱动器的数据传送方向。来确定双向驱动器的数据传送方向。lDEN DEN 数据允许数据允许信号信号. .低电平有效。在使用双向驱动器以增强数低电平有效。在使用双向驱动器以增强数据总线驱动能力的最小系统组态中,该信号用作双向驱动器据总线驱动能力的最小系统组态中,该信号用作双向驱动器的数据传输

47、允许信号。的数据传输允许信号。lSSO SSO 系统状态输出信号系统状态输出信号. .与与IO/MIO/M、DT/RDT/R一起,反映一起,反映80888088所执行所执行的操作。的操作。 80888088的该引脚恒为高电平。的该引脚恒为高电平。lHOLD HOLD 保持请求保持请求信号信号. .用于直接存储器存取操作,即用于直接存储器存取操作,即DMADMA请求输请求输入信号入信号lHLDA HLDA 保持响应保持响应信号信号.DMA.DMA响应回答信号响应回答信号(3)(3)最大组态最大组态下的控制信号线下的控制信号线lS2S2,S1S1,S0 3S0 3个状态信号个状态信号. . l80

48、888088在最大组态下没有在最大组态下没有WRWR、DENDEN、IO/MIO/M、DT/RDT/R等对存储器和等对存储器和lI/OI/O端口进行读端口进行读/ /写操作的控制信号输出,这些信号由总线控写操作的控制信号输出,这些信号由总线控制器制器82888288根据根据S2S2、S1S1、S0S0的状态得到。的状态得到。 3 3个状态信号与个状态信号与CPUCPU所执行的操作见下表。所执行的操作见下表。S2S1S0操操 作作000中断响应中断响应001读读I/O端口端口010写写I/O端口端口011暂停暂停(HALT)100取指取指101读存储器读存储器110写存储器写存储器111无操作无

49、操作lRQ/GTRQ/GT0 0、RQ/GTRQ/GT1 1 总线请求总线请求/ /允许允许信号信号. .双向,低电平有效双向,低电平有效. . 在最大工作组态时,分别为总线请求信号输入端总线请求在最大工作组态时,分别为总线请求信号输入端总线请求允许信号输出端,可供允许信号输出端,可供CPUCPU以外两个协处理器用来发出使用总以外两个协处理器用来发出使用总线请求和接收线请求和接收CPUCPU对总线请求信号的回答信号。这两个应答信对总线请求信号的回答信号。这两个应答信号都是双向的。号都是双向的。RQRQGT0GT0的优先级比的优先级比RQRQGT1GT1的高。的高。lLOCK LOCK 锁定信号

50、锁定信号. .低电平有效低电平有效. .在最大工作组态时,该引脚为总在最大工作组态时,该引脚为总线封锁信号输出端。当线封锁信号输出端。当LOCKLOCK为低电平时,其它总线主控部件为低电平时,其它总线主控部件都不能占用系统科都不能占用系统科3 3总线的控制权。总线的控制权。LOCKLOCK信号由指令前缀信号由指令前缀LOCKLOCK产生,在产生,在LOCKLOCK前缀后的一条指令执行完后,便撤销前缀后的一条指令执行完后,便撤销LOCKLOCK信号,信号,该信号被送到总线仲裁电路,使在此信号有效期间的指令执该信号被送到总线仲裁电路,使在此信号有效期间的指令执行过程中不发生总线控制权的转让,确保该

51、指令被完整地执行过程中不发生总线控制权的转让,确保该指令被完整地执行完。行完。lQS0QS0,QS1 QS1 队列状态队列状态信号信号. .用于提供用于提供80888088指令队列状态,指令队指令队列状态,指令队 列是一个列是一个4 4字节的空间。这两个信号提供总线周期的前一个状字节的空间。这两个信号提供总线周期的前一个状 态中指令队列的状态。组合功能如下表所示:态中指令队列的状态。组合功能如下表所示:指令队列状态信号指令队列状态信号指令队列状态信号的含义指令队列状态信号的含义QS1QS0无操作无操作00从指令队列的第一字节中取走代码从指令队列的第一字节中取走代码01队列为空队列为空10从指令

52、队列的第一字节及后续字节中取走代码从指令队列的第一字节及后续字节中取走代码11(4)(4)与组态无关的引线与组态无关的引线lRD RD 读选通读选通信号信号. .低电平时有效,表示正在进行存储器或低电平时有效,表示正在进行存储器或I/OI/O读操作读操作. .若若80888088所寻址的存储器或所寻址的存储器或I/OI/O外设没有准备就外设没有准备就绪就将该信号置为低电平,绪就将该信号置为低电平,80888088就等待。直至他们准备就等待。直至他们准备好,该信号变为高电平,好,该信号变为高电平,80888088就完成与它们的数据传输。就完成与它们的数据传输。lREADY READY 准备就绪准

53、备就绪信号信号. .是是CPUCPU寻址的存储器或寻址的存储器或I/OI/O口送来的口送来的响应信号响应信号lTEST TEST 测试信号测试信号. .它是由它是由WAITWAIT指令测试的信号指令测试的信号. .低电平时,低电平时,执行执行WAITWAIT后面的指令;高电平时,后面的指令;高电平时,CPUCPU进入空转等待状态进入空转等待状态lINTR INTR 中断请求中断请求信号信号. .它是外设发来的它是外设发来的可屏蔽中断可屏蔽中断请求信请求信号,号,80888088是否接受,可由标志寄存器中的中断允许标志是否接受,可由标志寄存器中的中断允许标志位来控制。位来控制。NMI NMI 非

54、屏蔽中断请求非屏蔽中断请求信号信号. .它是边沿触发信号,是不可屏蔽它是边沿触发信号,是不可屏蔽 的,该信号不受标志寄存器中的中断允许标志位的控制。的,该信号不受标志寄存器中的中断允许标志位的控制。 只要有请求信号,就在现行指令结束之后中断现行程序只要有请求信号,就在现行指令结束之后中断现行程序的的 执行,进入非屏蔽中断服务程序。执行,进入非屏蔽中断服务程序。RESETRESET 复位信号复位信号 复位信号来到后,复位信号来到后,CPUCPU便结束当前操作,并对处理器标志便结束当前操作,并对处理器标志 寄存器、寄存器、IPIP,DSDS,SSSS,ESES及指令队列清零,而将及指令队列清零,而

55、将CSCS设置设置为为 FFFFHFFFFH。当复位信号变为低电平时,当复位信号变为低电平时,80888088从从FFFF0HFFFF0H开始执开始执 行程序。行程序。3. 3. 电源和定时限线电源和定时限线lVCC VCC 电源线电源线. .要求加要求加5V5V10%10%的电压的电压 lGND GND 地线地线.8086/8088.8086/8088有两条地线,这两条地线都有两条地线,这两条地线都要接地要接地 lCLK CLK 时钟信号时钟信号. .一般由时钟信号发生器一般由时钟信号发生器82848284输出,输出,它提供它提供80888088的定时操作的定时操作.8088.8088的标准

56、时钟频率为的标准时钟频率为5MHz 5MHz 。3.2 80883.2 8088的的CPUCPU系统和系统和CPUCPU总线总线1.1.地址锁存器地址锁存器80888088在访问存储器或在访问存储器或I/OI/O设备时,设备时,低低8 8位位/ /高高4 4位地位地址与数据址与数据/ /状态状态分时复用分时复用,先输出地址,后输出数,先输出地址,后输出数据据/ /状态,为了不使状态,为了不使先送出的地址丢失,用先送出的地址丢失,用80888088组组建系统时,必须用地址锁存器建系统时,必须用地址锁存器 种类:三态地址锁存器种类:三态地址锁存器82828282、74LS373 74LS373 7

57、4LS37374LS3738D8D锁存器锁存器,其引线排列和功能为:,其引线排列和功能为:74LS37374LS373的的G与与8088的的ALE信号相连,相当于装入信号相连,相当于装入L门。门。OE相当于输出相当于输出E E门。门。2.2.双向总线驱动器双向总线驱动器74LS24574LS2458 8总线传送器总线传送器,引线排列如图:,引线排列如图:功能:功能: 输出允许输出允许G G 传送方向传送方向DIRDIR 操作操作 L H ABL H AB L L BA L L BA H H 隔离(不允许传输数据)隔离(不允许传输数据)增强增强8088的负载能力的负载能力3.3.时钟发生器时钟发

58、生器8284A8284A 80888088内部没有时钟信号产生电路。而用内部没有时钟信号产生电路。而用82848284向向80888088及系统提供符合定时要求的及系统提供符合定时要求的时钟信号时钟信号CLKCLK、准备好准备好信号信号READYREADY、复位信号复位信号RESETRESET。其内部结构的框图如下图所示:其内部结构的框图如下图所示:8284A8284A的框图的框图4.4.总线控制器总线控制器82888288 u 作用:作用:工作在最大组态时,工作在最大组态时,80888088不直接提供总线控制信号不直接提供总线控制信号(如(如ALEALE、存储器读、存储器读/ /写、写、I/

59、OI/O读写等),它只提供状态信号读写等),它只提供状态信号S0S0S2S2,命令信号和总线控制的所有信号都是,命令信号和总线控制的所有信号都是82888288根据根据80888088的状态的状态信号信号S0S0S2S2译码转换为总线控制信号输出的。译码转换为总线控制信号输出的。u 电路:电路:状态译码器状态译码器 对对S0S0S2S2译码译码命令信号发生器命令信号发生器 产生命令信号产生命令信号控制信号发生器控制信号发生器 产生总线控制信号;产生总线控制信号;控制逻辑控制逻辑 控制控制82888288工作方式工作方式。1 1、82888288工作方式分类:系统总线方式、工作方式分类:系统总线

60、方式、I/OI/O总线方式总线方式 工作方式确定:由工作方式确定:由IOBIOB确定,确定, IOBIOB为低电平,为低电平,82888288工作于系统总线方式工作于系统总线方式. . IOB IOB为高电平,为高电平,82888288工作于工作于I/OI/O总线方式总线方式. .2 2、AEN:AEN:由总线仲裁器由总线仲裁器82898289输入,低电平有效,地址允输入,低电平有效,地址允 许信号许信号AENAEN是支持多总线结构的同步控制信号。是支持多总线结构的同步控制信号。3 3、CENCEN当有多片当有多片82888288协调工作时起片选作用,当协调工作时起片选作用,当CENCEN为为

温馨提示

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

评论

0/150

提交评论