资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,微机原理与接口技术,CPU,体系结构,第二章,主要内容,2.1 CPU,的发展,2.2 8086/8088 CPU,2.3 80486 CPU,2.4 Pentium CPU,2.5 Itanium,CPU,2.6 80486,的工作模式,2.7 80486,的外部引脚介绍,2.8,当前,CPU,所使用的先进技术,2.1 CPU的发展,1971,年,,Intel,公司推出了世界上第一款,CPU4004(4,位,),。,1978,年,,Intel,公司生产的,8086,是第一个,16,位,的,CPU,。,1979,年,,Intel,公司又开发出了,8088,。,1981,年,美国,IBM,公司将,8088,芯片用于其研制的,PC,机,中,从而开创了全新的微机时代。,1982,年,,Intel,研制出了,80286 CPU,。,1985,年,新一代的,32,位核心的,CPU80386DX,正式发布。,2.1 CPU的发展,1989,年,,80486,(,32,位),芯片由,Intel,推出。,1993,年,,586 CPU,问世,,Intel,公司把自己的新一代产品命名为,Pentium,。,1996,年底发布,Pentium,MMX,。,MMX,技术是在,CPU,中加入了特地为视频信号,(Video Signal),,音频信号,(Audio Signal),以及图像处理,(Graphical Manipulation),而设计的,57,条指令,因此,,MMX CPU,极大地提高了电脑的多媒体(如立体声、视频、三维动画等)处理功能,2.1 CPU的发展,1997,年,5,月发布,Pentium,。,1998-1999,年间,,Intel,公司推出了,Xeon,(至强,CPU,),1999,年,,Intel,公司就发布了,Pentium,。,2000,年,,Intel,Pentium 4,处理器诞生。,2006,年,,Core 2,处理器发布。,总结:在,CPU,的发展历史中,具有典型代表的是,16,位的,8086CPU,、,32,位,80486CPU,和,Pentium,4,(奔腾),CPU,、,64,位的,core2,2.,2,8086,/8088,CPU,一、8086的功能结构,8086CPU,是,Intel,系列的,16,位,CPU,,具有,16,根数据总线和,20,根地址总线,,直接寻址空间为,2,20,,即,1MB,。,8088CPU,内部结构与,8086,基本相同,但是,对外数据总线只有,8,根,称为准,16,位,CPU,。,8086从功能上分为两部分:,总线接口部分,(BIU),,执行部分,(EU)。,AH AL,BH BL,CH CL,DH DL,SP,BP,DI,SI,通用寄存器,运算寄存器,ALU,标志,执行部分控制电路,1 2 3 4 5 6,CS,DS,SS,ES,IP,内部寄存器,I/O,控制电路,地址加法器,20,位,16,位,8,位,指令队列缓冲器,外总线,执行部件,总线接口部件,8086CPU,结构图,BIU,EU,1、总线接口部件(BIU),功能:,(,1)从内存取指令送到指令队列。,(2)CPU执行指令时,到指定的,位置取操作数,并将其送至,要求的位置单元中。,总线接口部件的组成:,(1)四个段地址寄存器,CS,16位代码段寄存器;,DS,16位数据段寄存器;,ES,16位附加段寄存器;,SS,16位堆栈段寄存器。,(,2,),16,位指令指针寄存器,IP,(,PC,)。,(,3,),20,位的地址加法器。,(,4,)六字节的指令队列缓冲器。,说明:,(,1,)指令队列缓冲器:,在执行指令的同时,将取下一条指令,并放入指令队列缓冲器中。,CPU,执行完一条指令后,可以执行下一条指令(流水线技术)。提高,CPU,效率。,(,2,)地址加法器:,产生,20,位地址。,CPU,内无论是段地址寄存器还是偏移量都是,16,位的,通过地址加法器产生,20,位地址。,2、执行部件,作用:,(,1)从指令队列中取出指令。,(2)对指令进行译码,发出相应的,控制信号。,(3)接收由总线接口送来的数据或,发送数据至接口。,(4)进行算术运算。,执行部件的组成:,(1)4个通用寄存器AX、BX、CX、,DX。四个通用寄存器都是16位,或作两个8位来使用。,(2)4个专用寄存器,SP-堆栈指针寄存器,BP-基址指针寄存器,DI-目的变址寄存器,SI-源变址寄存器,(3)算术逻辑单元ALU,完成8位或者16位二进制算术和逻辑运算,计算偏移量。,(4)数据暂存寄存器,协助ALU完成运算,暂存参加运算的数据。,(5)执行部件的控制电路,从总线接口的指令队列取出指令操作码,通过译码电路分析,发出相应的控制命令,控制ALU数据流向。,(,6,)标志寄存器,16,位寄存器,其中有,7,位未用。,D15,D0,OF DF IF TF SF ZF AF PF CF,进借位标志,奇偶标志,半进借位标志,零标志,符号标志,单步中断,中断允许,方向标志,溢出标志,1-,有进、借位,0-,无进、借位,1-,低,8,位有偶数个,1,0-,低,8,位有奇数个,1,1-,低,4,位向高,4,位有进、借位,0-,低,4,位向高,4,位无进、借位,1-,结果为,0,0-,结果不为,0,例,:,将,5394H,与,-777FH,相加,并说明其标志位的状态。,【,解,】,先求,-777FH,的补码:,原码:,1111 0111 0111 1111,反码:,1000 1000 1000 0000,补码:,1000 1000 1000 0001,再做加法运算:,0101 0011 1001 0100,+1000 1000 1000 0001,1101 1100 0001 0101,结果标志位为:,CF=0,、,PF=0,、,AF=0,ZF=0,、,SF=1,、,OF=0,3.,“流水线”结构,总线接口部件BIU和执行部件EU并不是同步工作的,两者的动作管理遵循如下原则:,每当8086的指令队列中有2个空字节,BIU就会自动把指令取到指令队列中。,而同时EU从指令队列取出一条指令,并用几个时钟周期去分析、执行指令。,当指令队列已满,而且EU对BIU又无总线访问请求时,BIU便进入空闲状态。在执行转移、调用和返回指令时,指令队列中的原有内容被自动清除。,8086流水操作示意图,取指令,1,执行指令,1,取指令,2,执行指令,2,取指令,3,执行指令,3,t0,t1,t2,t3,t4,t,图,8086,流水操作示意图,在,t0,t4,时间间隔中,理想情况下,,8086,可执行,3,条指令。,4,、CPU执行程序的操作过程,(1)20位地址形成,并将从该地址指定的单元中取出指令字节,依次放入指令队列中。,(2)当指令队列中有2个空字节时,总线接口部件就会自动取指令至队列中。,(3)执行部件从指令队列队首取出指令代码,执行该指令。,(4)当队列已满,执行部件又不使用总线时,总线接口部件进入空闲状态。,(5)执行转移指令、调用指令、返回指令时,先清空队列内容,再将要执行的指令放入队列中。,二、,存储器的组织和堆栈,1、8086存储器的分体结构,8086,系统中,1MB的存储空间分成两个存储体:偶地址存储体和奇地址存储体,各为512KB。它们的访问由,/,BHE、A0组合决定:,/BHE A0,总线使用情况,0 0,从偶地址单元开始,在,16,位数据总线上进行字传送,0 1,从奇地址单元开始,在高,8,位数据总线上进行字节传送,1 0,从偶地址单元开始,在低,8,位数据总线上进行字节传送,1 1,无效,8086,用两个存储体来组织实际存储空间,奇地址,偶地址,00001H,00003H,00000H,00002H,FFFFEH,FFFFFH,.,.,BHE,A0,A0 A19 BHE,D8 D15,D0 D7,地址交叉,排列,8086,D0 D15,规,则,字(对准字)存放 :偶地址作为字的地址,非规,则,字(非对准字)存放:奇地址作为字的地址,规则字的读/写只需访问一次存储器;非规则字的读/写需二次访问存储器。第一次访问奇地址,第二次访问偶地址。,2,、存储器编址,在内存里以字节为单位存取信息,系统为每个字节编一个地址(二进制数表示,书写格式为十六进制),称为存储器地址,存储的内容即为数据。,地址,内容,00000H,00001H,00002H,FFFFFH,00000001,00100011,01000101,存储器中的数据及表示形式,2301H(,规则字,),4523H(,非规则字,),地址,内容,00000H,00001H,00002H,FFFFFH,00000001,00100011,01000101,字节数,01H,的地址为,00000H,、字节,23H,的地址为,00001H,、字节,45H,的地址为,00002H,。,字,2301H,的地址为,00000H,、字,4523H,的地址为,00001H,。,地址,00000H,的内容既是,01H,,又是,2301H,顺序存放,低字节低地址(字数据),01H,2301H,4523H,45H,3、存储器的分段结构,由于8086有20条地址线,可以寻址多达2,20,(1M)字节,所以把1M字节的存储器分为,一定,数量的段,其中每一段最多可达寻址2,16,(64K)字节。,8086CPU把1M字节的存储器空间划分为任意的一些存储段,每个段的起始地址必须能16整除(该地址的最低四位为0000)。,8086可将内存最多可分为64K个段,最少可分为16个段。每个段的最大范围是64KB,最小的段是16B。段与段之间可连续分布,也可重叠。,在所有的段中,8086当前可以访问的段只有4个,它们分别由CS、DS、ES和SS所指定。,(1),逻辑地址和物理地址,物理地址,:也称实际地址,是用唯一的,20,位二进制数所表示的地址,规定了,1M,字节存储体中某个具体单元的地址。如,00002H,。,逻辑地址,在程序中使用,即段地址:偏移地址,。,如,2000H,:,0003H,2000H,:,0000H 12H,0001H 34H,0002H 56H,0003H 78H,(,2),物理地址的形成,物理地址,=,段基址*,16,(左移,4,位),+,偏移地址。,段基址:,CS,、,DS,、,ES,、,SS,。,偏移地址:,IP,、,DI,、,SI,、,BX,、,BP,、,SP,等。,物理地址的形成如下:(由,20,位地址全加器实现),段寄存器值,偏移量,+,物理地址,16,位,4,位,16,位,20,位,0000,物理地址和逻辑地址的转换,将逻辑地址中的段地址左移4位,加上偏移地址就得到20位物理地址,一个物理地址可以有多个逻辑地址,逻辑地址,1460:0100,、,1380:0F00,物理地址,14700H 14700H,1460,0,H,100H,14700H,1380,0,H,F00H,14700H,物理地址为:段地址(左移四位),+,段内偏移量,8086,存储器,20,位物理地址的形成,逻辑段的分配图示:,一个存储单元可以有一个或多个逻辑地址,但只能有一个物理地址。,例如物理地址21000H可以有以下几个逻辑地址:,2100:0000H 2000:0100H,段基址,一般由,系统自动分配,,也可以编程改变;,而偏移地址则由用户编程时提供。,DATA SEGMENT,X DB 12H,Y DW 34H,DATA ENDS,则DS段中,Y的地址为0001H,非规则存放。,CS 0000,IP,代码段,DS,或,ES 0000,SI,、,DI,或,BX,SS 0000,SP,或,BP,数据段,堆栈段,存储器,段寄存器和偏移地址寄存器组合关系,8,086 CPU中有四个段寄存器:CS,DS,SS和ES,这四个段寄存器存放了CPU当前可以寻
展开阅读全文