您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 2013南航复试微机原理指定教材《配套ppt第2章
第2章80X86/Pentium微处理器80X86/Pentium微处理器的内部结构微处理器的主要引脚及功能系统总线与典型时序典型CPU应用系统CPU的工作模式指令流水线与高速缓存64位CPU与多核微处理器2.180X86/Pentium微处理器的内部结构2.1.18086/8088CPU基本结构第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院EU:执行部件(8086/8088)BIU:总线接口部件(8086的不同于8088的)由两部分组成8086BIU:指令队列6个字节,外部数据总线16位。8088BIU:指令队列4个字节,外部数据总线8位。EU:执行指令.BIU:取指、读操作数、写结果.两部分相互独立在大多数情况下,取指、执指的操作并行。这消除了许多取指时间,从而提高了系统总线的使用效率,改善了系统性能。第2章80X86/Pentium微处理器CHDHDISPBPSI65标志FR3EU控制系统运算寄存器ALU124DSSSES总线控制逻辑IPCS内部RegBHAHDLCLALBL地址总线20位地址加法数据总线外部总线指令队列通用寄存器执行部件(EU)总线接口部件(BIU)ALU数据总线80888086AXBXCXDX第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院1.EU(ExecutionUnit,含有ALU及部分Reg.)负责全部指令的执行;向BIU输出(地址及结果)数据;对Reg及PSW进行管理。(2)功能①数据寄存器:AX,BX,CX,DX(16位)8个通用寄存器变址寄存器:SI,DI②算术逻辑运算部件ALU16位加法器,用于对寄存器和指令操作数进行算术或逻辑运算.③标志寄存器FR9个标志位,其中6个条件标志位用于存放结果状态.④暂存寄存器⑤EU控制系统(1)组成AH,AL,BH,BL,CH,CL,DH,DL(8位)指示器:SP,BP接收从BIU的指令队列中取来的指令代码,译码并向EU内各有关部分发出时序命令信号,协调执行指令规定的操作。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院2.BIU(BusInterfaceUnit,8086/8088同外部设备的接口部件)代码段Reg:CS堆栈段Reg:SS数据段Reg:DS附加段Reg:ES(1)组成②指令指针寄存器IP(下一条要取的指令在当前代码段内的偏移量)4个段寄存器③指令队列Queue④20位地址加法器Σ⑤总线控制逻辑⑥内部通信寄存器①完成所有外部总线的操作,提供总线控制信号。(2)功能具体地说,完成:取指、指令排队、读写操作数、地址转换(将两个16位地址相加20位物理地址),总线控制。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院(3)指令队列BIU使用指令队列实现流水线操作。当指令队列中有2个或2个(1个)以上的字节空间,且EU未申请读写存储器,则BIU顺序预取后续指令代码Queue。3.EU的工作过程(1)若是运算操作:操作数暂存器ALU;运算结果经“ALU总线”相应Reg、并置FR。(2)若从外设取数:EUBIU访问MEM或I/O内部通信寄存器向“ALU数据总线”传送数据。从BIU指令队列中取指译码电路分析相应控制命令控制数据经过“ALU数据总线”的流向:8086/8088CPU主要性能:第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院字长:16位/准16位。时钟频率:8086/8088标准主频为5MHz,8086/8088-2主频为8MHz。数据、地址总线复用。最大内存容量:1MB。基本寻址方式:8种。指令系统:99条基本汇编指令。可以对位、字节、字、字节串、字串、压缩和非压缩BCD码等多种数据类型进行处理。端口地址:16位I/O端口地址可寻址64K端口地址。每一个地址对应一个字节宽的I/O端口。中断功能:可处理内部软件中断和外部硬件中断源达256个。支持单片CPU或多片CPU系统工作。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院取指取指取指取指得到数据等待执行执行执行执行在一条指令的执行过程中可以取出下一条(或多条)指令,指令在指令队列中排队(预取下一条指令的技术称指令流水线);在一条指令执行完成后,就可以立即执行下一条指令,减少CPU为取指令而等待的时间,提高CPU的利用率和整个运行速度。取指执指重叠并行8086/8088CPU从功能上分为BIU和EU,两者相互独立,可以并行工作,实现“指令流水线”的功能,大大提高CPU的使用效率。段寄存器和存储器分段第2章80X86/Pentium微处理器(1)存储器空间20根地址线220=1MByte将存储器分成4种段,存放三类信息:代码、数据、中间结果和断点地址。分段原因:8086有20根地址线,但其内部可以表示的地址最多只能是16位。为了能寻址1MB空间,8086对存储器进行逻辑分段,每个段最大为64KB,最小为16B(此时最多64K个段)。南京航空航天大学电子信息工程学院(2)4个段寄存器CS、DS、SS、ES分别指示存储区的段地址(段起始地址的高16位,段起始地址又称为段基地址),用来识别当前可寻址的四个段,不可互换使用。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院+物理地址=段址×10H+偏址段址段寄存器CS、DS、ES、SS16偏址16指令地址(CS)×10H+(IP)数据地址(DS)×10H+EA(偏移地址也称为有效地址EA,出现在指令中)堆栈地址(SS)×10H+(SP)附加段地址(ES)×10H+EA(3)存储单元的逻辑地址和物理地址逻辑地址段地址0000H~FFFFH(由段寄存器提供)偏移地址段内某个单元到段基地址的距离(0000H~FFFFH,由指令提供)CPU访问存储器时,送出00000H~FFFFFH间的一个20位的物理地址。物理地址与逻辑地址的关系:物理地址=段基地址×16+偏移量第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院段基址00003210150偏移地址基址加法器物理地址015019物理地址的形成......20000H25F60H25F61H25F62H25F63H2000H段基址逻辑地址段内偏移地址5F62H逻辑地址与物理地址表2-1访问存储器类型与逻辑地址来源关系访问存储器类型约定段寄存器可代换段寄存器偏移量物理地址计算式取指令CS—IPCS×16+IP堆栈操作SS—SPSS×16+SP访问变量DSCS,ES,,SS有效地址EADS×16+EA源字符串DSCS,ES,SSSIDS×16+SI目的字符串ES—DIES×16+DIBP用作基地址寄存器SSCS,DS,SS有效地址EASS×16+EA第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院段缺省和段替换规则(CPU对段访问时应遵循这个原则):段缺省:段寄存器名不出现在指令和机器码中,CPU对存储器的操作性质隐含指定;搭配规则:段寄存器和寄存器(指针、变址)有较固定的配用关系;替换(超越)规则:在指令之前可加上“CS”,”DS”,”SS”等前缀,以指定的段寄存器替代隐含的段寄存器。第2章80X86/Pentium微处理器代码段数据段堆栈段CSIPDSSI,DI或BXSSSP或BP段寄存器和其他寄存器组合指向存储单元示意图南京航空航天大学电子信息工程学院南京航空航天大学电子信息工程学院第2章80X86/Pentium微处理器(4)存储器分段的一般规律:a.可独立分开(最大不重叠16个段)b.连续c.重叠(部分重叠或完全重叠)如:数据段和附加段完全重叠,堆栈段和附加段部分重叠。因此对一个具体的存储单元,可以属于一个逻辑段,也可以同时属于几个逻辑段。寄存器配置第2章80X86/Pentium微处理器控制寄存器8位寄存器IPFLAGCSDSSSES代码段寄存器数据段寄存器堆栈段寄存器附加段寄存器AHALBHBLCHCLDHDLAXBXCXDXSPBPSIDI累加器基地址寄存器计数器数据寄存器堆栈指针寄存器基地址寄存器源变址寄存器目的变址寄存器(PC)指令指针寄存器(PSW)状态标志寄存器段寄存器16位寄存器通用寄存器南京航空航天大学电子信息工程学院南京航空航天大学电子信息工程学院第2章80X86/Pentium微处理器(1)用途:存放8位或16位操作数或中间结果,以提高CPU的运算速度(减少存取MEM的时间)其中,AX是CPU使用最多的一个寄存器,功能最强。AX的作用:i)ALU之前保存一个操作数,ALU之后保存结果。ii)CPU与I/O、MEM交换数据所用到的最多的寄存器。一、通用Reg.(分为两组:一组可用于字、字节;一组仅可用于字)1.数据Reg.(AX,BX,CX,DX)(2)特殊用法:i)BX——计算地址用作基址Reg.ii)CX——计数器,循环或移位时用。ⅲ)DX——在某些I/O操作时,用来保存I/O端口地址,或字的乘除法运算。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院在计算内存储器地址时,经常用来存放基址。例:MOVAX,[BX+03H]AX——(Accumulator)作为累加器。它是算术运算的主要寄存器,所有I/O指令都使用这一寄存器与外部设备交换数据。例:INAL,20HOUT30H,AXBX——Base用作基址寄存器使用。1.数据Reg.(AX,BX,CX,DX)第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院例:MULBX;(AX)(BX)(DX)(AX)例:INAL,DXCX——Count可以作计数寄存器使用。在循环LOOP指令和串处理指令中用作隐含计数器。例:MOVCX,200HAGAIN:……LOOPAGAIN;(CX)-1(CX),结果0转AGAINDX——Data可以作为数据寄存器使用。一般在双字长乘除法运算时,把DX和AX组合在一起存放一个双字长(32位)数,DX用来存放高16位;对某些I/O操作DX可用来存放I/O的端口地址(口地址256)。第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院2.指示器和变址Reg.(SP,BP,SI,DI,仅能用于字)用途:a.缩短指令代码的长度;b.建立可变的地址;c.寄存偏移量,与段寄存器的内容相加以获得物理地址。例:SP中通常存放的偏移量被认为是在堆栈段中(堆栈访问时)。DI、SI中的偏移量,通常被认为是在数据段中。BP通常用于存放当前堆栈段的一个数据区“基址”的偏移量(通过堆栈传送数据或地址时,BP为偏移地址,SS为段地址。)BP也可用于通用Reg.。SP——堆栈指针BP——基地址指针SI——源变址寄存器DI——目的变址寄存器指针寄存器变址寄存器第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院BP(basepointer)——基址指针寄存器可以与SS寄存器联合使用来确定堆栈段中某一存储器单元地址。地址指针寄存器(SP、BP)SP(stackpointer)——堆栈指针寄存器用来指示栈顶的偏移地址,必须与SS段寄存器联合使用确定实际地址。变址寄存器(SI、DI)SI——SourceIndexRegister源变址寄存器。DI——DestinationIndex目的变址寄存器。使用场合:常用于变址寻址。一般与DS联用,用来确定数据段中某一存储单元的地址,在串操作中SI,DI具有自动增量和自动减量功能.数据总线地址总线D7~D01MX8位存储体A19~A000000HFFFFFHA19~10............a1a0栈底4EFFFH3F060H(SP)=60H3F000H(SS)=3F00HBP可用来指示某一位置第2章80X86/Pentium微处理器南京航空航天大学电子信息工程学院例:……MOVSI,2000HMOVDI,3000HMOVCX,100HCLD......MO
本文标题:2013南航复试微机原理指定教材《配套ppt第2章
链接地址:https://www.777doc.com/doc-4051316 .html