您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第二章 微型计算机体系结构
**第二章微型计算机体系结构第二章:微型计算机体系结构一、CPU的内部逻辑结构(一)CPU的功能:指令控制;操作控制;时序控制;数据加工(二)Intel8086的内部逻辑结构8086概况:•1979年推出,第一代超大规模集成电路(VLSI)微处理器,采用HMOS工艺制造,内含2.9万晶体管。•数据总线宽度16位,地址总线宽度20位;可直接寻址空间220=1M字节单元;16位数据总线与地址总线复用。•采用单一的+5V电源,一相时钟,时钟频率为5MHz(8086),10MHz(8086-1),8MHz(8086-2)。•133条指令,指令长度1~6字节,指令最短执行时间为0.4us(平均0.5us)。**Intel8088—准16位处理器,内部寄存器及内部操作均为16位,外部数据总线8位。8088与8086指令系统完全相同,芯片内部逻辑结构、芯片引脚有个别差异。**1.8086结构框图(编程结构):见图2.1由两部分组成:总线接口部件BIU(BusInterfaceUnit);执行部件EU(ExecutionUnit).(1).总线接口部件BIU组成:4个16位的段寄存器(CS、DS、ES、SS);1个16位的指令指针寄存器IP;1个地址加法器;6个字节的指令队列;输入/输出控制电路(总线控制逻辑);内部暂存器。BIU的功能:负责与内存或I/O端口传送指令或数据①BIU从内存取指令送到指令队列②当EU执行指令时,BIU要配合EU从指定的内存单元或I/O端口中读取数据,或者把EU的操作结果送到指定的内存单元或I/O端口去。例如:①INAL,50H;②ADDAL,[2035H].第二章:微型计算机体系结构(续)说明(1)传统的CPU执行指令的过程是:取指令-执行指令-再取指令-……,串行执行。8086是把“取指令”和“执行指令”分别由BIU和EU两个部件来完成。当EU正在执行指令时,BIU可以从内存中取出指令字节,放在指令队列中。这样,使得“取指令”和“执行指令”的操作在时间上是并行的。BIU和EU协调配合,使EU可以连续不停一条接一条地执行事先已进入指令队列中地指令。显然,这种工作方式可以加快程序地执行,提高了CPU地效率。体现了“流水线计算机”(PipeLineComputer)的初步特点。(详见后述)(2)地址加法器用来产生20位的物理地址。一个存储单元具有两种地址属性:物理地址和逻辑地址。物理地址:CPU访问存储器时,在地址总线上实际送出的地址。它的范围(如8086系统)是00000H~FFFFFH,即有220=1M字节的地址空间。但8086的内部寄存器是16位(地址的宽度大于字长)。显然,不能用16位的寄存器来实现对220=1M字节单元的寻址。为此,引入了存储器“分段”的概念,即把1M字节内存空间分成若干段。每段最大可达64K字节--可由16位寄存器进行寻址。段的起始地址成为“段基址”,要访问的单元距段基址的距离(字节数)为“偏移量”(Offset)。第二章:微型计算机体系结构(续)……段的起始地址偏移量要访问的单元段第二章:微型计算机体系结构(续)程序设计时,使用的是逻辑地址。逻辑地址由“段基址”和“偏移量”构成(均为16位)。“段基址”由段寄存器CS、DS、SS和ES提供;“偏移量”由BX、BP、IP、SP、SI、DI或根据寻址方式计算出的有效地址EA(EffectiveAddress)提供*。注意:①每个存储单元有唯一的物理地址,但它却可由不同的“段基址”和“偏移量”组成。例如:1200H:0345H12345H1100H:1345H12345H②除非专门指定,一般情况下,段在存储器中的分配是由操作系统负责的。*寻址方式举例:MOVAX,[BX];源操作数的寻址方式--“寄存器间接寻址”MOVAX,[BX+SI];源操作数的寻址方式--“基址变址接寻址”第二章:微型计算机体系结构(续)由逻辑地址获得物理地址的计算公式:物理地址=段基值X16+偏移量段基值150偏移量150000030Σ物理地址190逻辑地址物理地址第二章:微型计算机体系结构(续)例1.设(CS)=4232H,(IP)=66H则物理地址计算如下42320H66H+)42386H......42320H66H42386H5231FH段地址段终址64K64K(2)16第二章:微型计算机体系结构(续)例2.假设(DS)=2234H,EA=22H22340002222362+)22340022物理地址段基值偏移量逻辑地址150150第二章:微型计算机体系结构(续)(2)执行单元EU(ExecutionUnit)组成:ALU(算术逻辑单元);通用寄存器组AX,BX,CX,DX;BP(基址指针寄存器)SP(堆栈指针寄存器)SI(源变址寄存器)DI(目的变址寄存器)标志寄存器FR执行部件控制电路功能:负责执行指令第二章:微型计算机体系结构(续)标志寄存器的格式及各位的含义1514131211109876543210OFDFIFTFSFZFAFPFCF状态标志方向标志中断标志跟踪标志TraceFlag控制标志进位标志奇偶标志半进位标志零标志符号标志溢出标志第二章:微型计算机体系结构(续)1.状态标志:表示前面的操作执行后,算术逻辑部件处于怎样一种状态。例如,是否产生了进位,是否发生了溢出等等。程序中,可以通过对某个状态标志的测试,决定后面的走向及操作。例如:STATE:INAL,0DAH;TESTAL,02H;JZSTATE●零标志ZF(ZeroFlag):若运算结果为0,则ZF=1;否则ZF=0。例1:MOVAL,4SUBAL,4例2:XORAX,AX执行后,ZF也一定为1。这两条指令执行后,ZF=1。第二章:微型计算机体系结构(续)●进位标志CF(CarryFlag):它反映:加法时,最高位(字节操作时的D7位,字操作时的D15位)是否有进位产生。减法时,最高位(字节操作时的D7位,字操作时的D15位)是否有借位产生。例如:MOVAL,3;SUBAL,4;执行后,CF=1。●奇偶标志PF(ParityFlag):若运算结果低8位中“1”的个数为偶数,则PF=1;否则PF=0。例:MOVAL,2ADDAL,1执行后,PF位为1。第二章:微型计算机体系结构(续)●辅助进位标志AF(AuxiliarycarrryFlag):也称“半进位标志”,它反映:加法时,第3位向第4位有进位;减法时,第3位向第4位有借位。●溢出标志OF(OverflowFlag):若运算过程中发生了“溢出”,则OF=1。定义:运算结果超出计算装置所能表示的范围,称为溢出。判断方法之一【逻辑】:溢出=最高位进位V次高位进位2.控制标志(3位):每一位控制标志都对一种特定的功能起控制作用。可以通过专门的指令对其进行“置位”(Set)或“复位”(Reset)。●中断标志IF(InterruptEnableFlag):如果IF置“1”,则CPU可以接受可屏蔽中断请求;反之,则CPU不能接受可屏蔽中断请求。指令系统中有两条专门的指令可以置“1”或置“0”IF标志位:STI使IF置“1”,即开放中断。CLI使IF清“0”,即关闭中断第二章:微型计算机体系结构(续)●方向标志DF(DirectionFlag):用于串操作指令中的地址增量修改(DF=0)还是减量修改(DF=1)。STD,CLD。●跟踪标志TF(TrapFlag):若TF=1,则CPU按跟踪方式(单步方式)执行程序。3.BIU与EU的动作管理(P19)*关于流水线计算机(PipelineComputer)这类计算机的结构采用生产上的流水线概念,把每条指令分为若干个顺序的操作,每个操作分别由不同的处理部件实现。这样构成的计算机,可以同时处理若干条指令,对于每个处理部件来讲,每条指令的同类操作(如“取指令”)像流水一样连续被加工处理,这种指令重叠、处理部件连续工作的计算机,称为流水线计算机。采用流水线方式可以提高计算机的处理速度和提高处理部件的使用效率。第二章:微型计算机体系结构(续)可见,3条指令共需8个时间单位,即可全部执行完;如果完全串行执行,则需3X6=18个时间单位。显然,采用“流水线”技术可以显著提高计算机的处理速度。012345678取指译码计算EA取数执行存结果取指译码计算EA取数执行存结果取指译码计算EA取数执行存结果第一条指令第二条指令第三条指令第二章:微型计算机体系结构(续)*“指令流水”是一种实现多条指令重叠执行的重要技术。1990年以后出现的处理器,无论是RISC还是CISC,无一不采用“指令流水”技术。CPU执行指令的过程,可具体分为如下六个步骤:1.取指(fetch);2.译码(decoding);3.计算有效地址(EA:EffectiveAddress);4.取操作数;5.执行6.存储运算结果概括的说,可分为“取指令”和“执行指令”两个步骤。第二章:微型计算机体系结构(续)早期的计算机将这两步采用先后轮流动作(串行),CPU效率较低。在流水线方式下,BIU与EU同时动作(并行)完成指令周期,CPU效率高。取指1取指2取指3执行1执行2执行3取指1执行1取指2取指3执行2执行3取指4••••••••••••BIUEU第二章:微型计算机体系结构(续)(4)寄存器结构8086系统(80386以上的“实模式”)下,共14个寄存器:AX,BX,CX,DX;SP,BP,SI,DI;CS,DS,SS,ES;IP,FR.Pentium系统下:“SomeoftheregistersinthePentium”第二章:微型计算机体系结构(续)在8086/8088中,所有的读、写存储器或IO端口的操作全部由总线接口部件来完成。因此,在8086/8088中,将通过所称的“机器周期”叫做“总线周期”。所谓一个总线周期,即BIU与存储器或IO端口进行一次读操作或写操作所需的时间。在8086/8088中,一个基本的总线周期由4个时钟周期组成,如果内存或IO接口速度较慢,来不及响应,则需在T3之后插入1个或几个Tw状态。第二章:微型计算机体系结构(续)T1T2T3TwT4TITIT1T2T3总线周期空闲周期总线周期空闲周期:只有BIU与内存或I/O端口交换数据,以及填充指令队列时,BIU才执行总线周期。除此之外,既不需要填充指令队列,EU也没有向BIU发出总线周期请求时,系统总线就处于空闲状态,进入空闲周期,空闲周期由一个或几个Ti状态组成。第二章:微型计算机体系结构(续)二、CPU(8086)的引脚信号和工作模式(一)最小模式和最大模式最小模式,也称“单处理器系统”,即在系统中只有一个8086处理器,全部的系统总线信号均由8086直接产生。总线控制逻辑减到最少,故称最小模式。最大模式,也称“多处理器系统”,即系统中包含两个或多个处理器,其中一个为主处理器(8086),其他的处理器为“协处理器”(CO-Processor)通常,和8086配合使用的协处理器有两个:一个是数值运算协处理器8087,一个是输入/输出协处理器8089。第二章:微型计算机体系结构(续)(二)CPU的引脚信号和功能Ready:准备好信号,输入T1T2T3TwT4CLKREADY第二章:微型计算机体系结构(续)TEST:测试信号,输入,低电平有效。在多处理器环境中,例如具有协处理器8087的系统中,将8087的“BUSY”接至主处理器8086的TEST,每当8086执行WAIT指令时,反复采样TEST信号,直至TEST变为低电平,8086才脱离等待状态,继续执行下一条指令。TEST信号是为WAIT指令而设计的。80868087TESTBUSY+5V*8087—Math.CO-Processor第二章:微型计算机体系结构(续)BHE/S7:高8位数据允许/状态(BUSHighEnable/S
本文标题:第二章 微型计算机体系结构
链接地址:https://www.777doc.com/doc-3826630 .html