第2章 微处理器.ppt
《第2章 微处理器.ppt》由会员分享,可在线阅读,更多相关《第2章 微处理器.ppt(110页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、PPT模板下载:/moban/ 行业PPT模板:/hangye/ 节日PPT模板:/jieri/ PPT素材下载:/sucai/PPT背景图片:/beijing/ PPT图表下载:/tubiao/ 优秀PPT下载:/xiazai/ PPT教程: /powerpoint/ Word教程: /word/ Excel教程:/excel/ 资料下载:/ziliao/ PPT课件下载:/kejian/ 范文下载:/fanwen/ 试卷下载:/shiti/ 教案下载:/jiaoan/ 字体下载:/ziti/ 第2章 微处理器米昶 孙杰 苑伟 编著(第四版)(第四版)第2章 微处理器 (目录)2.1 微处理
2、器的硬件结构2.1.1 中央处理单元(CPU)的构成2.1.2 基本功能部件2.1.3 微处理器的基本寄存器2.2 处理器的总线2.2.1 总线的结构2.2.2 总线的操作2.3 微处理器的基本操作流程2.3.1 指令执行的基本过程2.3.2 微处理器的时序2.4 Intel处理器的结构和原理2.4.1 80X86处理器的结构2.4.2 Pentium 4处理器结构2.4.3 微处理器的主要性能指标 2.5 IA-32微处理器相关技术术语2.5.1 CISC与RISC2.5.2 流水线 2.5.3 超流水线和超标量2.5.4 乱序执行2.5.5 分支预测和推测执行2.5.6 Cache2.6
3、IA-32微处理器的工作方式本章小结习题2.1 微处理器的硬件结构 从外部封装形式来看,CPU常常是矩形或正方形的块状物,通过众多的引脚与主板相连。从内部来看,CPU是一片大小通常不到1/4英寸的薄薄的硅晶片,其英文名称为die(核心)。在这块小小的硅片上,密布着数以百万计的晶体管,它们好像大脑的神经元,相互配合协调,完成着各种复杂的运算和操作。 2.1.1 中央处理单元(CPU)的构成 下面我们以Intel的8086 CPU(如图2.1所示)为例,对CPU的结构做一个介绍。从功能上来看,8086CPU可以分为两部分,即总线接口部件(Bus Interface Unit,BIU)和执行部件(E
4、xecution Unit,EU) 。CPU在工作时, BIU不断地从存储器取指令送入指令预取队列(IPQ),EU不断地从IPQ取出指令执行,EU和BIU构成了一个简单的2工位流水线,其中指令预取队列IPQ是实现流水线操作的关键(如同流水线的传送带)。Pentium及其以后的CPU将一条指令划分成更多的阶段,以便可以同时执行更多的指令。 2.1 微处理器的硬件结构 2.1 微处理器的硬件结构 2.1.2 基本功能部件 1、总线接口部件(Bus Interface Unit,BIU) 总线接口部件负责与存储器、I/O端口传送数据 。总线接口部件将从内存中取出的指令送到指令队列,并配合执行部件从内
5、存或外设端口中取数据,同时还要把执行完的数据结果送到指定的内存单元或外设端口中。8086的总线接口部件由下列4部分组成:2.1 微处理器的硬件结构 4个16位段地址寄存器(CS、DS、ES、SS)16位的指令指针寄存器IP (Instruction Pointer)20位的地址加法器6字节的指令队列缓冲器 除了以上提到的4部分外,总线接口部件中还包含总线控制逻辑(输入/输出控制电路) ,它主要功能是分时传递地址信息或数据信息。 2.1 微处理器的硬件结构 2、 执行部件(Execution Unit,EU)执行部件负责指令的执行 ,8086 CPU的执行部件由下列4部分组成:(1) 4个通用寄
6、存器,即AX、BX、CX、DX;(2) 4个专用寄存器,即基数指针寄存器BP(Base Pointer)堆栈指针寄存器SP (Stack Pointer)源变址寄存器SI (Source Index)目的变址寄存器DI (Destination Index);2.1 微处理器的硬件结构 (3)标志寄存器(又称作程序状态字Pogram Status Word,简记作PSW);(4)算术逻辑部件ALU (Arithmetic Logic Unit)。 执行部件的功能如下:p 从指令队列中取出指令。p 对指令进行译码,发出相应的控制信号。p 接收由总线接口送来的数据或发送数据至接口。p 进行算术运算
7、。2.1 微处理器的硬件结构 3、 8086 CPU执行程序的操作过程8086 CPU执行程序的操作过程如下:(1) 形成20位的物理地址,并根据此地址找到程序所在的存储器单元,从该单元取出指令字节,依次放入指令队列中。(2) 当8086的指令队列中有2个空字节时,总线接口部件就会自动取指令至队列中。2.1 微处理器的硬件结构 (3) 执行部件从总线接口的指令队列首取出指令代码,执行该指令。(4) 当指令队列已满,而执行部件又不使用总线时,总线接口部件进入空闲状态。(5) 执行转移指令、调用指令、返回指令时,先清空指令队列内容,再将要执行的指令放入指令队列中。2.1 微处理器的硬件结构 2.1
8、.3 微处理器的基本寄存器 早期的8086,8088和80286的内部结构为16位(二进制位),是图2.3所示的寄存器组的子集。而对于80386,80486,Pentium,Pentium Pro等CPU的内部结构为32位(二进制位)的。2.1 微处理器的硬件结构 微处理器的基本寄存器中包括8、16、32位的三种不同寄存器组,见图2.3。8位的寄存器有AH、AL、BH、BL、CH、CL、DH和DL等8个, 16位寄存器有AX、BX、CX、DX、SP、BP、DI、SI、IP、FLAGS、CS、DS、ES、SS、FS和GS,扩展的32位寄存器有EAX、EBX、ECX、EDX、ESP、EBP、EDI
9、、ESI、EIP和EFLAGS。这些寄存器是由它们的字母名称引用。 需要注意的是32位寄存器和两个16位寄存器FS、GS只存在于80386及更高级的微处理器中。 2.1 微处理器的硬件结构 ALAHBLBHCLCHDLDHBPDISISPFLAGSIPCSSSDSESGSFSEAXEBXECXEDXEBPESIEDIESPEIPEFLAGS3115000151531 通 用 寄 存 器( AX) 累 加 器( BX) 基 址 寄 存 器( CX) 计 数 器( DX) 数 据 寄 存 器基 址 指 针源 变 址目 的 变 址堆 栈 指 针指 令 指 针标 志 寄 存 器代 码 段数 据 段堆
10、栈 段附 加 段 专 用 寄 存 器2.1 微处理器的硬件结构 寄存器分为通用寄存器(或多功能寄存器)和专用寄存器两种。 1、通用寄存器 32位的通用寄存器包括EAX、EBX、ECX、EDX、EBP、EDI和ESI。下面分别予以说明。EAX(累加器) 它可以是一个32位的寄存器(EAX)、或是一个16位的寄存器(AX)也可以是一个8位寄存器AH和AL中的任一个。2.1 微处理器的硬件结构 EBX(基地址寄存器) 可以用EBX、BX、BH或BL的形式访问。BX寄存器在微处理器中用来保存存储单的偏移地址,在80386及其以上的微处理器中,EBX也可寻址存储器数据。ECX(计数寄存器) 可以通过EC
11、X、CX、CH或CL的形式访问,是可以保存计数值的通用寄存器。在80386及其以上的微处理器中,它也可以保存存储单元的偏移地址。 2.1 微处理器的硬件结构 EDX(数据寄存器) 可以EDX、DX、DH或DL的形式访问,是一个通用寄存器,用来存放乘法结果的部分或除法执行前被除数的一部分。在80386及其以上的微处理器中,该寄存器也可以寻址存储器数据。 EBP(基址指针寄存器) 可指向所有型号微处理器的存储器地址,用来传送存储器数据。该寄存器可以BP或EBP的形式来访问。2.1 微处理器的硬件结构 EDI(目的变址寄存器) 通常在串操作指令中用来访问目的串数据。它也可作为一个32位或16位通用寄
12、存器用。 ESI(源变址寄存器) 通常在串操作指令中用来访问源串数据。它也可作为一个32位或16位通用寄存器用。2.1 微处理器的硬件结构 2、 专用寄存器EIP、ESP专用寄存器包括EIP、ESP、EFLAGS和段寄存器CS、DS、ES、SS、FS和GS。下面先介绍一下EIP和ESP。 EIP(指令指针寄存器) 存储指令在代码段中的偏移地址,通常不能被直接访问,也不能直接赋值,指令中不会出现对指令指针寄存器的操作。当微处理器工作在实方式下时,该寄存器为IP(16位),当80386及其以上的微处理器工作于保护方式时,它为EIP(32位)。2.1 微处理器的硬件结构 ESP(堆栈指针寄存器) 用
13、来访问被称为堆栈的存储区域。堆栈通过这指针来存取数据。该寄存器的16位寄存器形式为SP,32位寄存器形式为ESP。堆栈在微处理器中起着重要的作用,它用于暂存数据和过程的返回地址。堆栈是一个LIFO(Last-in First-out后进先出)存储区,后进先出是数据入栈和出栈的规则。 2.1 微处理器的硬件结构 3、 标志寄存器EFLAGS 标志寄存器EFLAGS是一个专用的寄存器,在早期的8086-80286微处理器中它的位数是16位,用FLAGS表示,在80386及更高级的32位微处理器中,标志寄存器是一个32位的,用EFLAGS表示。标志寄存器的作用是用来存放有关微处理机工作过程中的状态标
14、志信息、控制标志信息以及系统标志信息,各种条件码(例如进位、符号、溢出)及方式位等信息。寄存器中各位的含义如图2.4所示。2.1 微处理器的硬件结构 下面将各有效位的意义做一简要的说明: (1)CF(Carry Flag) 进位标志位。若CF = 1,表示本次运算中最高位(第7位或第15位)有进位(加法运算时)或有借位(减法运算时)。 (2)PF(Parity Flag) 奇偶标志位。PF = 1,表示本次运算结果的低八位中有偶数个“1”;PF = 0,表示有奇数“1”。2.1 微处理器的硬件结构 2.1 微处理器的硬件结构 (3)AF(Auxiliary Carry Flag) 辅助进位标志
15、位。AF = 1,表示8位运算结果(限使用AL寄存器)中低4位向高4位有进位(加法运算时)或有借位(减法运算时),这个标志位只在BCD数运算中才起作用。(4)ZF(Zero Flag) 零标志位。ZF=1,表示运算结果为0(各位全为0),否则ZF=0。(5)SF(Sign Flag) 符号标志位。SF=1,表示运算结果的最高位(第7位或第15位)为“1”(有符号数的负数),否则SF=0。2.1 微处理器的硬件结构 (6)TF(rap flag)陷阱控制标志位。陷阱标志可使微处理器进入跟踪方式,即进入单步调试状态;如果T标志为1,微处理器可以根据调试寄存器和控制寄存器指示的条件中断程序的执行。如
16、果T为0,则不进入跟踪(调试)方式。(7)IF(Interrupt Flag)中断允许标志位。控制输入引脚INTR的操作。若Il,INTR信号被允许;若I0,则INTR信号被屏蔽。IF的状态由指令STI置位(置1)和指令CLI复位(清0)。2.1 微处理器的硬件结构 (8)DF(Direction Flag)方向标志位。在串操作指令中,通过方向标志可选择对DI或SI寄存器内容进行递增或递减方式。若D1,则寄存器的内容自动地递减;若D0,则寄存器内容自动地递增。DF标志由STD指令置位,由CLD指令复位。(9)OF(Overflow Flag) 溢出标志位。OF=1 表示二个用补码表示的有符号数
17、的加法或减法结果超出了该字长所能表示的范围。例如,进行8位运算时,OF=1表示运算结果大于+127 或小于128,此时不能得到正确的运算结果。OF标志对无符号数的运算结果没有意义。2.1 微处理器的硬件结构 (10)IOPL (I/O Privilege Level) I/O特权级标志位。在保护方式操作中使用,用于选择I/O设备的特权级。如果当前特权级高于IOPL,I/O指令能顺利执行。如果当前特权级低于IOPL,则产生中断,使任务挂起。注意,这里IOPL00为最高级,IOPL11为最低级。(11)NT(Nested Task)嵌套标志位。嵌套标志表示在保护方式下,当前执行的任务嵌套于另一任务
18、中。当一个任务被软件嵌套时,该标志置1。恢复标志与调试操作一起使用用于控制在下一条指令后,恢复程序的运行。2.1 微处理器的硬件结构 (12)VM(Virtual Mode)虚拟8086方式标志位。用来在保护方式系统中选择虚拟8086方式,一个虚拟8086系统允许在存储器系统中同时存在多个1MB的DOS存储器分区。这就允许系统执行多个DOS程序。(13)AC(Alignment Checkt)地址对齐检测标志位。当访问字或双字时,如果地址不处在字或双字的边界上,则地址对齐捡测标志置1。只有80486 SXCPU中含有AC标志,该标志供协处理器80487 SX使用,用于同步。(14)VIF (V
19、irtual Interrupt Flag) 虚拟中断标志位。该标志只存在于Pentium/Pentium pro微处理器中,它是中断允许标志的复本。2.1 微处理器的硬件结构 (15)VIP (Virtual Interrupt Pending)虚拟中断挂起标志位。用于在Pentium/Pentium pro微处理器中提供有关虚拟8086方式中断的信息。它在多任务环境下为操作系统提供虚拟8086方式中断和中断挂起信息。(16)ID (Identification) CPU的标识标志位。表示Pentium/Pentium pro支持CPUID指令。CPUID指令为系统提供厂有关Pentium处
20、理器的信息,如其型号及制造商。 2.1 微处理器的硬件结构 4、段寄存器 编程时,程序和各种不同类型的数据分别存放在不同的逻辑段中,它们的“段基址”存放在“段寄存器”中,段内的偏移地址存放在其他相应的寄存器中。下面给出了各个段寄存器及其在系统中的功能。 (1)CS(code)代码段寄存器。代码段是微处理器用来存放代码(程序和过程)的段存储区域。代码段寄存器定义了代码段存储区的起始地址。 2.1 微处理器的硬件结构 (2)DS(data)数据段寄存器。数据段是一段存放供程序使用的数据的存储区。数据段中的数据根据其偏移地址来访问。 (3)ES(extra)附加段寄存器。附加段是一个附加的数据段,供
21、串操作指令用来存放目的串数据。(4)SS(stack)堆栈段寄存器。堆栈段定义了一个用作堆栈的存储区。堆栈段当前的入口地址由堆栈指针寄存器(SP)确定。 2.1 微处理器的硬件结构 2.2 处理器的总线 处理器的总线称作片内总线是,指的是在微处理机芯片内部的总线,它是专门用来连接各功能部件的信息通路。 2.2.1 总线的结构 1、 总线标准的四个特性物理特性功能特性电器特性时间特性 2.2 处理器的总线 2、总线分类 片内总线根据其功能可以分为地址总线、数据总线和控制总线。地址总线数据总线控制总线 2.2 处理器的总线 2.2.2 总线的操作微处理机系统中的各种操作,包括从CPU把数据写入存储
22、器、从存储器把数据读到CPU、从CPU把数据写入输出端口、从输出端口把数据读到CPU、CPU中断操作、直接存储器存取操作、CPU内部寄存器操作等,本质上都是通过总线进行的信息交换,统称为总线操作。2.2 处理器的总线 为完成一个总线操作周期,一般要分成4个阶段:总线请求和仲裁(Bus Request and Arbitration)阶段寻址(Addressing)阶段数据传送(Data Transfering)阶段结束(Ending)阶段2.2 处理器的总线 2.3 微处理器的基本操作流程 2.3.1 指令执行的基本过程 如图2.5所示,计算机指令执行的基本过程一般按照以下步骤进行: 取指令,
23、从指令指针所指的内存单元中取出一条指令送到指令寄存器。 译码,对指令进行译码,并且对指令指针进行增值,以便取得下一条指令。 取操作数,根据指令要求到内存单元或寄存器中取得操作数,对某些特定指令不需要取操作数这一步骤。执行指令,依据指令的要求完成相应的运算,如果执行的是转移指令、调用指令或者返回指令,则重新设置指令指针的值,以便取得下一条要执行的指令。存结果,将运算的结果进行保存,此结果既包括操作数的运算结果,也包括相应的指令执行状态信息。2.3 微处理器的基本操作流程 2.3 微处理器的基本操作流程 2.3.2 微处理器的时序 微处理器的各种不同操作的实现都是在时钟信号的同步控制下,按时序一步
24、一步进行的。因此,时序是反映微处理器功能特性的一个重要方面。2.3 微处理器的基本操作流程 总线时序基本概念(1)时钟周期、总线周期及指令周期 CPU的操作都是在系统时钟CLK的控制下按节拍有序地进行的。系统时钟一个周期信号所持续的时间称为时钟周期(T),大小等于频率的倒数,是CPU的基本时间计量单位。 CPU与存储器或I/O接口交换信息是通过总线进行的。CPU通过总线完成一次访问存储器或I/O接口操作所需要的时间,称为总线周期(bus cycle)。一个总线周期由多个时钟周期(T)组成。对于不同型号的微处理器,一个总线周期所包含的时钟周期数并不相同。 2.3 微处理器的基本操作流程 (2)等
25、待状态和空闲状态 通过一个总线周期完成一次数据传送,一般要有输出地址和传送数据两个基本过程。在实际应用中,当一些慢速设备在T2、T3、T4三个时钟周期内不能完成数据读写时,那么总线就不能被系统正确使用。为此,允许在总线周期中插入用以延长总线周期的T状态,称为“等待状态”(Tw)。另外,如果在一个总线周期后不立即执行下一个总线周期,即总线上无数据传输操作,此时总线则处于所谓“空闲状态”,在这期间,CPU执行空闲周期Ti,Ti也以时钟周期T为单位。图2.6给出了8086 CPU的总线周期及其“等待状态”和“空闲状态”的情况。 2.3 微处理器的基本操作流程 2.3 微处理器的基本操作流程 基本的总
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 微处理器
限制150内