《中央处理部件CPU》PPT课件.ppt_第1页
《中央处理部件CPU》PPT课件.ppt_第2页
《中央处理部件CPU》PPT课件.ppt_第3页
《中央处理部件CPU》PPT课件.ppt_第4页
《中央处理部件CPU》PPT课件.ppt_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

1,第六 章 中央处理单元 Center Processing Unit 简称 CPU,2,计算机组成,计算机系统主要由计算机主机/各种I/O外设/系统软件组成; 计算机主机则主要由处理器/主存/总线与各种接口组成; 采用LSI集成于一个电子芯片内的处理器叫做微处理器; 主机可有多个微处理器/运行系统软件; 并行处理计算机的CPU可由多个处理器组成。,3,6.1 CPU内部的组成,中央处理器简称CPU,是计算机系统的核心。 主要功能:程序的执行(指令控制),信息的处理(数据加工),操作控制,时间控制,I/O设备的控制。 组成:运算器,寄存器,控制器,时钟电路,(某些CPU中还包括一定容量的ROM、RAM存储器),4,通用 寄存器组,运算寄存器,ALU,标志寄存器,执行 控制 电路,指令队列 缓冲器,IO 控制 电路,4个 段寄存器 1个 IP寄存器 内部 寄存器,外围总线,中央处理器的基本结构与组成,5,6.1.1 运算器,运算器是加工处理数据的功能部件。 运算器主要由下列部件组成: 算术逻辑单元(ALU) 完成二进制信息的定点算术运算,逻辑运算,移位操作 通用寄存器和状态标志寄存器 存放数据,运算的中间、最后结果,各种状态标志 有的CPU中包含浮点处理单元 算术逻辑单元和通用寄存器的位数决定了CPU的字长。,6,6.1.2 寄存器组(Register),寄存器:是CPU中的重要组成部分,是CPU内部的临时存储单元。 存放内容:数据、地址、控制信息、CPU的工作状态信息。 寄存器增加可以提高CPU运行速度。 分类:数据寄存器、地址寄存器、标志状态寄存器、控制寄存器和一些其它作用的寄存器。但总体可分为通用寄存器和专用寄存器两大类。,7,一、通用寄存器组 在运算中存储数据与地址 累加寄存器 AX(Accumulator) 低位累加器 AL(Low word Accumulator) 变址寄存器 XR(Index Register) 基址寄存器 BR(Base Register) 标志寄存器 FR(Flag Register) 以Intel 80486为例(32位),其通用寄存器有: EAX,EBX,ECX,EDX,EBP,ESP,ESI,EDI (早期16位机器为AX,BX,CX,DX,BP,SP,SI,DI) CS,DS,ES,SS,FS,GS (早期16位机器只有前4个),8,状态标志寄存器(Flag Register) 用于存放ALU工作时产生的状态信息, V D I T S Z A P C,15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,进位标志位,奇偶标志位,辅助进位位,零标志位,结果符号位,单步标志位,中断允许位,方向标志位,溢出标志位,状态标志寄存器也叫标志寄存器。每一位单独使 用,称为标志位。它反映了ALU当前的工作状态 或条件转移指令的转移条件。具体常用如下:,二、专用寄存器 保存系统运行必需的重要数据,9,指令寄存器IR(Instruction Register) 用于存放将要执行的指令。 指令指针寄存器IP,又称指令计数器。 用于产生和存放下条待取指令的地址。 堆栈指针寄存器SP指示堆栈栈顶的地址。 变址寄存器 变址寻址中存放基础地址的寄存器,如XI、DI 段地址寄存器 计算机内存大时多把内存存储空间分成段(例如64KB)来管理,使用时以段为单位进行分配。段地址寄存器即是在段式管理中用来存放段地址的寄存器。,10,三、其他寄存器 根据CPU结构特点而设置的专用寄存器。,Intel 80486设有下列专用寄存器: 机器状态字寄存器MSW 描述符寄存器存储管理。 测试寄存器用于存储管理。 控制寄存器 虚地址方式、实地值方式选择 调试寄存器用于程序调试。,11,6.2 控制器的组成,一、控制器的组成 控制器是指挥与控制整台计算机各功能部件协同工作、自动执行计算机程序的部件。它把运算器和存储器以及I/O设备组成一个有机的系统。 控制器的作用是控制程序(即指令)的有序执行。 基本功能 :取指令、分析解释指令、执行指令(包括控制程序和数据的输入输出、以及 对异常情况和特殊请求的处理) 组成:一般由指令指针寄存器IP、指令寄存器IR、指 令译码器ID、控制逻辑电路和时钟控制电路等组成.,12,通用寄存器GR,ALU,DR,AR,13,二 、指令执行过程举例,1)一条加法指令的执行过程: 从存储器取指令,送人指令寄存器,并进行操作码译码。程序计数器加1,为下一条指令作好准备。 控制器发出的控制信号PC AB,WR=0,M/IO=1;DB IR;PCl。 计算数据地址,将计算得到的有效地址送地址寄存器AR。其中rs1标志通用寄存器地址、GR表示通用寄存器、disp表示位移量。控制器发出的控制信号: rs1 GR,(rs1) ALU,disp ALU;“十”; ALU AR(有效地址送地址寄存器)。 到存储器取数。控制器发出的控制信号 AR AB, WR=0,M/IO=1;DB DR。(将地址寄存器内容送地址总线,同时发访存读命令,存储器读出数据送数据总线后,打人数据寄存器)。,14,进行加法运算,结果送寄存器,并根据运算结果置状态位N(负数),Z(零),V(溢出)。C(进位)。 控制器送出的控制信号rs GR,(rs) ALU,DR ALU(两个源操作数送ALU);十(ALU进行加法运算); rd GR ; ALU rd。 置N、Z,V、C(结果送寄存器,并置状态位)。 以上操作需要四个机器周期 机器周期:完成一种机器操作所需要的时间,以时钟周期为单位。 指令周期:完成一条指令所需要的时间,以机器周期为单位。本指令为四个机器周期,15,(2)条件转移指令的执行过程,指令功能根据N,Z,V,C的状态,决定是否转换。如转移条件成立则转移到本条指令所指定的地址,否则顺序执行下一条指令。 本条指令完成以下操作 从存储器取指令,送人指令寄存器并进行操作码译码。 程序计数器加1,如不转移,即为下一条要执行的指令地址。 本操作对所有指令都是相同的。 如转移条件成立,根据指令规定的寻址方式计算有效地址,转移指令经常采用相对寻址方式。此时转移地址=PCdiSP。此处PC是指本条指令的地址,而在上一机器周期已执行pc+1操作,因此计算时应取原pc值,或对运算进行适当修正。最后将转移地址送pc。 本条指令只需要两个机器同期,如转移条件成立,在第二机器周期增加一个ALU PC信号;另外如为相对转移,则用 PC ALU信号取代加法指令第2周期中的(rs1) ALU信号,其他信号与加法指令的前两个机器周期中的信号相同。,16,6.3 微程序控制计算机的基本工作原理,在计算机中,一条指令的功能是通过按一定次序执行一系列基本操作完成的,这些基本操作称为微操作,又称微命令。如取指令、计算地址、取数、加法运算完成,每一步实现若干个微操作、下面先介绍几个名同。 微指令:在微程序控制的计算机中,将由同时发出的控制信号所执行的一组微操作称为微指令。 一条指令由若干条微指令组成,一条微指令由由若干条微命令组成。 微程序:计算机每条指令的功能均由微指令序列解释完成,这些微指令序列的集合就叫做微程序。 控制存储器:微程序是存放在存储器中的,由于该存储器主要存放控制命令(信号)与下一条执行的微指令地址(简称为下址),所以被叫做控制存储器。一般计算机指令系统是固定的,所以实现指令系统的微程序也是固定的,于是控制存储器可以用只读存储器实现。又由于机器内控制信号数量比较多,再加上决定下址的地址码有一定宽度,所以控制存储器的字长比机器字长要长得多。 执行一条指令实际上就是执行一段存放在控制存储器中的微程序。,17,2. 微程序控制器,微程序控制器的基本工作原理如下 当指令取人IR中以后,根据操作码进行译码,得到相应指令的第一条微指令的地址、在图 6 10中当执行加法指令时译码得到的地址为1001,当执行减法指令时,译码得到的地址为1004, ,当执行条件转移指令时,译码得到的地址为1100之后,都由微指令的下址字段指出下一条微指令的地址。 指令译码部件可用只读存储器组成,将操作码作为只读存储器的输人地址,该单元的内容即为相应的微指令在控制存储器中的地址根据此地址从控制存储器取出微指令并将它存放在微指令寄存器中。微指令分成两部分,产生控制信号的部分一般称为控制字段,产生下址的部分称为下址字段。控制字段各位的输出通过连接线直接与受控制的门相连,于是就提供了在本节所提出的控制 信号。,18,微程序控制器简框图,IR 形成本条指令的 微程序入口地址 微指令寄存器,19,3、时钟控制电路 为每条指令按时间顺序执行提供基准信号,时钟控制电路由时钟脉冲发生器(石英晶体振荡器)和启停控制电路组成。 石英晶体振荡器产生一定频率的时钟脉冲信号,作为整个机器的时间基准源。 主频称为主机振荡频率,具体分为CPU内部频率和外部频率(总线频率),它的高低取决于这台计算机的CPU的适应能力。 时钟周期:主频的倒数,表示相邻脉冲的时间间隔,通常称为节拍脉冲或T周期。它是处理操作的最基本单位。 指令周期:取出并执行一条指令所需要的时间。 机器周期 :将指令周期划分成几个时间段,每个阶段称为一个机器周期,也称为CPU周期。三级时序举例: 时钟周期机器周期指令周期,20,6.4 微程序设计技术,在实际进行微程序设计时还应关心下面三个问题: 如何缩短微指令字长; 如何减少微程序长度; 如何提高微程序的执行速度。 这就是在本节所要讨论的微程序设计技术。 1、控制字段编译法: (1)直接控制法:在微指令的控制字段中,每一位代表一个微命令, 1或0”代表打开或关闭某个控制门。 缺点:微命令位数太多。 (2)字段直接编译法 :将一组互斥的微命令通过编译器来选择其中的一个微命令起作用。 如:3位可控制47个微命令,21,(3)字段间接编译法 在字段直接编译法中,还规定一个字段的某些微命令要兼由另一字段中的某些微命令来解释。称为字段间接编译法。 如RD、WR与MREQ或IORQ相组合,形成MEMR或IOR、 2、产生后继微指令地址一般有两种方法: (1)由指令操作码译码器产生后继微地址 (2)由微指令的下址宇段指出后继微地址 (3)由控制测试字段BCF产生下址 3、微指令的分成两类:水平型微指令和垂直型微指令。 (1)水平型微指令:一条微指令中定义并执行多个井行操作微命令。用直接控制法、字段编译法(直接、间接编译法)产生控制字段。直接控制法最快,字段编译法要经过译码所以会增加一些延迟时间。格式如下:,22,2.垂直型微指令 在微指令中设置有做操作码字段,采用微操作码编译法,由微操作码规定做指令的功能,称为垂直型微指令。其特点是不强调实现微指令的并行控制功能,通常一条微指令只要求能控制实现一二种操作。这种微指令格式与指令相似每条指令有一个操作码每条微指令有一个微操作码。如垂直型微指令格式: 1、R-R传送型微指令 2、访问主存微指令,23,水平型微指令与垂直型微指令的比较 (1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则差。 在一条垂直型微指令中,一般只能完成一个操作控制一两个信息传送道路,因此微指令的并行操作能力低,效率低。 (2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。 (3) 由水平型微指令解释指令的微程序具有微指令字比较长,但微程序短的特点。垂直型微指令则相反,微指令字比较短而微程序长。 (4)水平型微指令用户难以掌握而垂直型微指令与指令比较相似,相对来说,比较容易掌握。,24,6.5 硬布线控制的计算机 控制器按控制信号的产生可分为类: 1)微程序控制器:执行微指令产生控制信号 2)硬布线控制器:通过逻辑电路产生控制信号的,所以又称为组合逻辑控制器。 相同点:仅控制信号的产生方式不同控制信号的产生,控制器的其他组成部分诸如时钟、启停电路、程序汁数器指令寄存器以及电路配合问题等等,则相同。 不同点: 1) 微程序控制器的控制功能是在存放微程序的控制存储器,而硬布线控制则由逻辑门组合实现。 前者电路比较规整。易增加或修改指令,只要增加或修改控存内容即可。硬布线控制器的控制信号先用逻辑式列出,经化简后用电路实现,因而显得零乱且复杂,不易修改。,25,2、在性能上 微程序控制的速度比硬布线控制的速度低,而硬有线逻辑主要取决于电路延迟,因而在超高速机器中,对影响速度的关键部分例如CPU,往往采用硬布线逻辑。近年来在一些新型计算机结构中,例如在RISC中,一般选用硬布线逻辑。,26,6.6 控制器的控制方式 按形成时序控制信号的方法有:同步控制方式、异步控制方式和联合控制方式。 1. 同步控制方式:指令在执行时所需的机器周期和时钟周期都是固定不变的,称为同步控制方式。 在程序运行时任何指令的执行或指令中每个微操作的执行都受事先确定的时序信号所控制,每个时序信号的结束就意味着一个微操作或一条指令已经完成,随即开始执行后续的微操作或自动转向下条指令的运行。 2. 异步控制方式:当控制器发出进行某一微操作控制信号后,等待执行部件完成该操作后发回的回答信号或结束信号,再开始新的微操作。即每条指令,每个微操作需要多少时间就占用多少时间。微操作序列没有固定的周期节拍和严格的时钟同步。,27,3. 联合控制方式: 同步控制和异步控制相结合的方式。 对不同指令的各个微操作实行大部分统一,小部分区别对待的方式。即大部分微操作安排在一个固定机器周期中,并在同步时序信号控制下进行;而对那些时间难以确定的微操作则以执行部件送回的回答信号作为本次做操作的结束。 4. 人工控制 为了调机和软件开发的需要,在计算机面板或内部往往设置一些开关或按键以进行人工控制。最常见的有reset按键、连续执行或单条指令执行的转换开关、符合停机开关等。,28,6.7 流水线工作原理,冯诺依曼型计算机工作原理 依序逐条执行程序指令,每条指令的各个操作也按顺序串行执行。例如,加法指令依序分成取指令/指令译码/取数操作/运算处理和写结果五个步骤。执行过程如下: 特点:控制简单 ,速度低,机器各部件利用率低。例如,在取指令时译码器和运算器等都空闲,而在存结果时其它部件也在空闲。 若能把程序中的多条指令在时间上重叠起来执行会否显著提高机器速度呢?,取指1 译码1 取数1 运算1 存数1 取指2 译码2 取数2 运算2 存数2,29,指令的重叠执行流水线工作原理,五条指令重叠执行情况: T1 T2 T3 T4 T5 机器执行时间 取指1 译码1 取数1 运算1 存数1 取指2 译码2 取数2 运算2 存数2 取指3 译码3 取数3 运算3 存数3 取指4 译码4 取数4 运算4 存数4 取指5 译码5 取数5 运算5 存数5 由上可见,若将一条指令的执行时间分为五段, 每段所用时间为T,则一条指令执行时间为5T。系统工作正常后每隔T时间就得到一条指令的处理结果。平均速度提高了4倍。这种工作方式称为流水线处理。本例为五级流水线处理方式。 并行处理技术 主要由三种形式:时间并行、 空间并行(资源重复)和时间并行+空间并行。,30,流水线的一些问题解决,流水线把取指与执行分开,使取指与执行同时进行,减少了取指等待时间,大大提高了CPU的利用率。同时降低了对与之匹配的存储器的存取速度要求。但流水线处理方式也存在一些困难: 数据相关:如果第二条指令的操作数是前一条指令保存的结果,那么就出现数据相关。有写-写相关、先读后写相关、先写后读数据相关 资源相关:取指与取存操作数同时发生 控制相关:条件转移分支指令引起流水线断流。处理:猜测法,对中断或故障的处理响应:不精确断点法:处理完流水线中的指令再响应;精确断点法:立即响应,精确返回,31,进入流水线,指令:5 4 3 2 1,出,i-3,i-2,i-1,i,i+1,i+2,i+3,i+4,i+5,i+6,p,p+1,p+2,p+3,p+4,p+5,条件转移 猜测法处理图例,中断响应说明处理图例,32,一条指令在计算机中的执行过程,指令的流向 某处理程序运行时,首先将程序的第一条指令的地址送进指令寄存器中IP; IP中的地址码通过地址总线送往地址寄存器,IP并自动加一产生下一条指令的地址; 地址寄存器中的内容送给地址译码器,译出其相应地址。CPU并发存储器读命令; 地址经译码从所选的单元中读出其指令经数据总线 送到数据缓冲寄存器中; 再将数据缓冲寄存器中的内容送入指令寄存器IR; IR中的操作码送到指令译码器中进行译码,地址码 则提供寻址信息,供寻址部件产生操作数地址。,33,若为算逻运算类指令需要由内存提供操作数时,则要 根据操作数的形式地址提供有效地址。发 IR(ADDR)AR,AR ABUS,RD命令,送到地址总线上的地址经译码选中相应单元读出操作数,经 数据总线送到数据寄存器中; 若为转移类指令,则用指令地址段中的位移量形成后 继指令的地址送往IP; 若算逻指令取到的是参与运算的操作数,则从数据缓 冲区送到ALU部件,若取到的是操作数的地址,则如 第1步进行存储器取数操作。 运算结果若按规定存放在累加器则发ALU AX命令, 若要保存在存储器中,则送往目的操作数地址单元。,数据的流向,34,6.8 Intel 80X86微处理器举例,6.8.1 8086微处理器 Intel公司1978年研制成功 时钟频率:4.7MHz-10MHz 2.9万个晶体管、91种指令 由EU执行单元和BIU总线接口单元组成 20位地址总线,寻址能力 220 = 1048576 = 1( MB ) 16位数据总线 4个16位通用寄存器:AX,BX,CX,DX, 5个16位地址指针寄存器:IP,BP,SP,SI,DI 4个16位段界寄存器:CS,DS,SS,ES,35,8088微处理器的基本结构与组成,36,物理地址,0,19,段寄存器,0,15,0000,指针寄存器,0,15,逻辑地址,物理地址形成过程,寻址方法与堆栈的概念,20位地址总线可管理实际物理内存1MB,但8086的寄存器都是16位的,因而只能计算16位的逻辑地址。这在计算机中采用硬件方法自动处理。方法如下图所示: 取指令时用CS移位相加; 取数据时用DS或ES移位相加; 堆栈操作时SS与SP相加。 堆栈是一个特殊存储区域, 栈中每元素一字节,先存高址, 其中数据先进后出或后进先出, 数据进栈时SP-2,出栈时SP+2, 栈段最长64KB。,37,2. 8086/8088的 总线周期,CPU完成一次对存储器或I/O端口访问所需要的时间 8086/8088一个基本总线周期由4个时钟周期组成,习惯上称4个T状态.分别为T1,T2,T3,T4状态. T1状态, CPU往多路复用总线上发地址信息 T2状态, CPU从总线上撤销地址,总线的高4位输出本总线周期的状态信息,低16位高阻态. T3状态, 多路总线的高4位继续提供状态信息,低16位传输数据. TW状态, 等待状态,总线上信息与T3状态信息相同.此状态为配合CPU和外设数据传输,外设通过READY线发“数据未准备好”,CPU则在T3状态后插入TW状态,外设通过READY线发“准备好”,CPU则脱离TW状态,进入T4状态. T4状态, 总线周期结束.,38,2. 8086、8088微处理器的工作方式与引脚号,39,6.8.2 80286微处理器,Intel公司1982年推出 13.4万个晶体管,时钟频率6MHz20MHz 向下兼容8086,具有8086的基本结构,但增强了存储管理和保护虚地址结构,可支持多用户系统 具有8086的全部指令,并新增加25种指令 16位数据线,24根地址线,寻址能力达到16MB 有实地址和16MB保护虚地址两种工作模式,通过指 令实现转换。实地址模式下完全兼容 8086 CPU并能 运行8086软件,兼容目标代码;保护虚地址模式下, 可管理内存达16MB,并且对使用者来说存储器的分 配方式与寻址方式没有改变。,40,6.8.3 80386微处理器,6.8.4 80486微处理器,Intel公司1985年推出32位寄存器,32位数据总线,32位地址总线,27.5万晶体管,主频16MHz 66MHZ,向前兼容8086和80286CPU,Intel公司1989年推出32位寄存器,32位数据总线,32位地址总线120万晶体管,主频 25MHz 100MHZ内含8KB高速缓冲存储器和80387协处理器486DX具有倍速功能,内部比外部快几倍,向前兼容8086、80286和80386CPU,41,80486状态标志寄存器,42,43,6.8.5 Pentium 微处理器,1. Pentium体系结构特点 内含RISC型超标量U、V两条流水线整数处理单元 拥有超级流水浮点处理单元(FPU) 内部Cache(L1)增加到8K+8K(80486仅有8K) 外部数据总线宽度增加到64位,地址总线36条,物理空间使用32条。 增加智能动态分支预

温馨提示

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

评论

0/150

提交评论