CPU的结构和功能_第1页
CPU的结构和功能_第2页
CPU的结构和功能_第3页
CPU的结构和功能_第4页
CPU的结构和功能_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

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

文档简介

CPU原理CPU的主要功能是执行存放在主存储器中的程序即机器指令。CPU是由控制器和运算器。8.1CPU的结构一、CPU的功能取指令分析指令执行指令,发出各种操作命令控制程序输入及结果的输出总线管理处理异常情况和特殊请求1.控制器的功能2.运算器的功能实现算术运算和逻辑运算指令控制操作控制时间控制数据加工处理中断PCIR指令控制操作控制时间控制数据加工处理中断ALU存放器中断系统1.使用系统总线的CPUCU时序电路寄存器ALU

中断

系统CUCPU控制总线数据总线地址总线二、CPU结构框图算术和布尔逻辑取反移位状态标志内部数据总线CPU寄存器CU中断系统ALU控制信号…2.CPU的内部结构1.用户可见存放器(1)通用存放器存放操作数可作某种寻址方式所需的专用存放器(2)数据存放器存放操作数〔满足各种数据类型〕两个存放器拼接存放双倍字长数据(3)地址存放器存放地址,其位数应满足最大的地址范围用于特殊的寻址方式段基值栈指针(4)条件码存放器存放条件码,可作程序分支的依据如正、负、零、溢出、进位等三、CPU的存放器(1)控制存放器PC控制CPU操作(2)状态存放器状态存放器其中MARMDRIR

用户不可见存放条件码PSW存放器存放程序状态字

PC

用户可见3.举例Z80008086MC68000MARMMDRIR2.控制和状态存放器控制器由程序计数器、指令存放器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。控制器的主要功能有:从内存中取出一条指令,并指出下一条指令在内存中的位置。对指令进行译码或测试,并产生相应的控制信号。指挥并控制CPU,内存和I/O之间的数据流动的方向。CPU的功能和组成运算器由算术逻辑单位〔ALU〕、累加存放器、数据缓冲存放器和状态条件存放器组成,它是数据加工处理部件。相对控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。运算器的主要功能:执行所有的算术运算。执行所有的逻辑运算。CPU的功能和组成CPU的功能和组成算术逻辑单元状态条件寄存器程序记数器PC地址寄存器AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DR存储器I/OCPUALU指令寄存器IR指令译码器操作控制器时序产生器时钟状态反馈取指控制执行控制cccccCPU的主要存放器CPU的功能和组成累加存放器AC累加存放器AC通常简称为累加器,它的功能是:当运算器的算术逻辑单元〔ALU〕执行全部算术和逻辑运算时,为ALU提供一个工作区。累加存放器是暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加存放器。状态条件存放器PSW状态条件存放器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,同时状态条件存放器还保存中断和系统工作状态等信息,以便使CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件存放器是一个由各种状态条件标志拼凑而成的存放器。CPU的功能和组成

程序计数器PC

程序计数器中存放的是下一条指令在内存中的地址。指令存放器IR指令存放器用来保存当前正在执行的一条指令。CPU的功能和组成地址存放器AR地址存放器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差异,所以必须使用地址存放器来保持地址信息,直到内存的读/写操作完成为止。缓冲存放器DR缓冲存放器用来暂时存放由内存储器读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也暂时将它们存放在缓冲存放器中。操作控制器和时序产生器数据通路:通常把许多存放器之间传送信息的通路,称为“数据通路”。操作控制器:根据指令操作码和时序信号,产生各种操作信号,以便正确建立数据通路,从而完成取指令和执行指令的操作。时序产生器:因为计算机高速地进行工作,每一个动作的时间是非常严格的,不能有任何过失。时序产生器的作用,就是对各种操作实施时间上的控制。CPU的功能和组成1、CPU的的根本组成在理解CPU的组成时需要抓住以下几点:〔1〕ALU部件,以及它的输入与输出方式。〔2〕用于运算的一组存放器R0-R3或暂存器C、D、Z〔3〕用于控制的一组存放器:指令存放器IR、程序计数器PC、程序状态字存放器PSW〔4〕与访存相关的一组存放器:存储器地址存放器MAR,存储器数据状态字存放器MDR,堆栈指针SP〔5〕内部总路线的连接方式,如何向它发送信息,它又如何输出信息〔6〕CPU如何通过系统总路线与主存、I/O设备连接节给出的是一种简化的CPU内部组成模型,它是拟定指令流程的根底,§3.3.1根本组成1.存放器:存放控制信息的存放器,如指令存放器、程序计数器和程序状态字存放器。存放所处理的数据的存放器,如通用存放器和暂存器。存放器的种类:〔1〕通用存放器:4个:R0、R1、R2、R3一组可编程访问、具有多种功能的存放器。指令系统为其分配编号,即存放器地址。其本身在逻辑上只有接收信息、存储信息和发送信息的功能,但通过编程与运算部件的配合可实现多种功能。〔2〕暂存器:3个:C、D、ZC用来暂存从主存储器读出的数据D设置在ALU的输入端,用来存放一个操作数,还可暂存从主存储器读出的数据,并设有左移和右移的功能。Z设置在ALU的输出端,用来存放运算结果。指令系统中没有为其分配编号,故不能编址访问。〔3〕指令存放器IR:指令存放器IR——用来存放当前正在执行的一条指令。IR的输出是控制器产生控制信号的主要逻辑依据。〔4〕程序计数器PC:程序计数器又称为指令计数器或指令指针IP。作用是提供指令的地址。具有加1计数功能,并可编程访问。〔5〕程序状态字存放器PS:程序状态字存放器又称为标志存放器。作用:用来存放现行程序的运行状态和工作方式,其内容称为程序状态字PSW。PSW是参与控制程序执行的重要依据。〔6〕堆栈指针SP:SP用来指示堆栈栈顶的位置,其内容是栈顶单元的地址。SP也是可编程访问的存放。〔7〕与主存接口的存放器MAR、MDR:地址存放器MAR用来存放CPU访问主存或I/O接口的地址。MAR连接地址总线的输出门是三态门。数据存放MDR用来存放CPU与主存或I/O接口之间传送的数据。CPU对主存的控制信号有两个:读信号RD—控制对主存的读操作写信号WR—控制对主存的写操作2.运算部件:控制ALU运算的控制信号有:ADDSUBANDORXOR加+减--与或异COMNEGA+1A--1B±1求负求反A加1A减1B加(减)13.总线与数据通路结构:〔1〕ALU总线CPU内部采用单总线结构,即设置一组由16根双向数据传送组成的ALU总线〔CPU内总线〕,ALU和所有的存放器通过这组公共总线连接起来。在单总线结构中,CPU的任何两个部件间的数据传送都必须通过这组总线,控制较简单,但传送速度受到限制。〔2〕系统总线:16根地址总线、16根数据总线,以及控制总线。CPU主存接口接口I/O设备I/O设备

常见计算机硬件系统结构总线地址总线数据总线控制总线CPU通过MAR向地址总线提供访问主存单元或I/O接口的地址CPU通过MDR向数据总线发送或接收数据,以完成与主存单元或I/O接口之间的数据传送。CPU通过控制总线向主存或I/O设备发出〔或接收〕有关控制信号。4.控制器及微命令的根本形式:〔1〕微命令的根本形式微操作命令:是最根本的控制信号,是指直接作用于部件或控制门电路的控制信号,简称微命令。微命令的两种形式:①电位型微命令:见教材P81页②脉冲型微命令:各存放器均采用同步打入脉冲将ALU总线上的数据打入其中。其种类有:CPR0,CPR1,CPPC,CPIR,CPSP,CPMAR,CPMDR等…..……………〔2〕控制器控制器:根本功能就是执行指令,即根据指令产生控制信号序列以命令相应部件分步完成指定的操作。传统控制器的主要部件包括:指令存放器IR、指令译码器、程序计数器PC、状态字存放器PSW、时序系统和微操作信号发生器。计算机的组成框图:输入设备运算器输出设备控制器存贮器控制信号数据信号数据程序结果输入命令操作命令存取数据输出命令存取命令指令CPU计算机的根本工作原理——冯诺依曼原理§3.4时序控制方式计算机中的一条指令的执行过程需要分成读取指令、读取操作数、运算、存放结果等步骤。每一步操作那么是由控制器产生相应的一些控制信号实现的,每条指令都可分解为一个控制信号序列。指令的执行过程就是依次执行一个确定的控制信号序列的过程。时序控制方式就是指微操作与时序信号之间采取保种关系,它不仅直接决定时序信号的产生,也影响到控制器及其它部件的组成,以及指令的执行速度。§3.4.1指令执行过程1.指令的分段执行过程〔1〕取指令〔2〕分析指令〔3〕执行指令取操作数执行操作形成下条指令地址2.指令之间的衔接方式:名称定义特点串行的顺序安排方式是指在一条指令执行完毕后才开始取下条指令这种方式控制简单,但在时间上不能充分利用部件。并行的重叠处理方式是在对现行指令系统运算操作时提前从主存取出下条指令,而不必等当前指令全部执行完。能有效提高设备利用率和运算速度,但若程序需要转移,预取下条指令失败。§3.4.2时序控制方式时序控制方式就是指微操作与时序信号之间采取保种关系,它不仅直接决定时序信号的产生,也影响到控制器及其它部件的组成,以及指令的执行速度。本节介绍:

同步控制方式同步控制方式的多级时序系统1.同步控制方式:定义:指各项操作由统一的时序信号进行同步控制,这就意味着各个微操作必须在规定时间内完成,到达规定时间就自动执行后继的微操作。根本特征:是将操作时间分为假设干长度相同的时钟周期〔也称节拍〕,要求在一个或几个时钟周期内完成各个微操作。采用范围:CPU内部、CPU、主存、各I/O接口之间.优点:时序关系简单、结构上易于集中,相应的设计和实现较方便。缺点:对时间少的微操作,存在时间上的浪费2.同步控制方式的多级时序系统:在CPU中为实现同步控制,必须设置一时序系统,以产生统一的时序信号对各种操作进行定时控制。〔1〕多时序概念:指在同步控制方式中,通常将时序信号划分几级〔其中包括指令周期〕,称为多级时序。在组合逻辑控制器中,是依靠不同的时间标志使CPU分步执行指令,其时序信号常划分为3级:机器周期、节拍、时钟脉冲。在微程序控制器中,一条指令对应一段微程序〔微指令序列〕,其时序信号划分为2级:节拍、时钟脉冲。CPU每出并执行一条指令,都要完成一系列的操作,这一系列操作所需要的时间通常叫做一个指令周期。简单地说,指令周期是取出并执行一条指令的时间。开始取指令分析指令执行指令取指令——执行指令序列时序信号划分为3级:机器周期:在组合逻辑控制器中,通常将指令周期划分为几个不同的阶段,每个阶段所需的时间,称为机器周期,又称为CPU工作周期或根本周期。节拍〔时钟周期〕:将一个机器周期划分假设干相等的时间段,其间仅完成一步根本操作,这个时间段用一个电平信号宽度对应,称为~。节拍长度由CPU内部的操作的需要在时序系统中设置节拍发生器,用以产生节拍信号。时钟脉冲:时序系统的根本定时信号。§3.5指令的执行与组合逻辑控制器按产生控制信号的方式不同控制器可分:组合逻辑控制器和微程序控制器。组合逻辑控制器:是指产生控制信号即微命令的部件,是用组合逻辑线路来实现。微程序控制器:即将机器指令的操作〔从取指令到执行〕分解为假设干个更根本的微操作序列,并将有关的控制信息〔微命令〕以微码形式编成微指令,输入控制存储器中。它是早期设计计算机的一种方法,这种方法是把控制部件看作为产生专门固定时序控制信号的逻辑电路,而逻辑电路以使用最少元件和取得最高操作速度为设计目标。一旦控制部件构后,除非重新设计和物理上对它重新接线,否那么要想增加新的控制功能是不可能的。§3.5.2模型机的时序系统时序信号划分为3级:工作周期:在组合逻辑控制器中,通常将指令周期划分为几个不同的阶段,每个阶段所需的时间,称为机器周期,又称为CPU工作周期或根本周期或机器周期。节拍〔时钟周期〕:将一个机器周期划分假设干相等的时间段,其间仅完成一步根本操作,这个时间段用一个电平信号宽度对应,称为~。工作脉冲〔时钟脉冲〕:时序系统的根本定时信号。1.工作周期划分:模型机设置了6种工作周期,分别利用6个周期状态触发器来表示它们的状态。任一时刻只允许一个触发器为1,说明CPU现在所处的工作周期状态,为该阶段的工作提供时间标志与依据。6种工作周期:取指周期FT、源周期ST、目的周期DT、执行周期ET、中断响应周期IT、DMA传送周期DMAT〔1〕取指周期FT:完成取指所需的操作,与指令操作码无关的公共性操作,但FT结束后将转向哪个工作周期,与FT中取出的指令类型有关。〔2〕源周期ST:在ST中将依据指令存放器IR的源地址字段信息进行操作,形式源地址,读取源操作数。〔3〕目的周期DT:依据指令存放器IR的目的地址字段信息进行操作。〔4〕执行周期ET:依据IR中的操作码执行相应操作。

〔5〕中断响应周期IT:CPU在响应中断请示之后,进入中断响应周期IT。在IT中将直接依靠硬件进行关中断、保存断点、转效劳入口等操作。中断方式:见教材P92页〔6〕DMA传送周期DMAT:在DMAT中,CPU交出系统总线的控制权,改由DMA控制器控制系统总线,实现主存与外设之间的数据直接传送。DMA即直接访存方式,其根本思想是在主存储器和I/O设备之间建立直接的数据传送通路。DMA请求的优先级高于中断请求。2.节拍〔时钟周期〕:节拍宽度为最长微操作所需的时间,即访问主存操作所需的时间。在时序系统中设置节拍发生器,用以产生节拍信号。节拍发生器由计数器T与节拍译码器组成。3.工作脉冲:工作脉冲:时序系统的根本定时信号。模型机在每个节拍的未尾发出一个工作脉冲P,作为各种同步脉冲的来源。§3.5.3指令流程1.取指周期FT:〔1〕进入FT的条件初始化置入FT:程序计数器PC置0〔为开机后的第一条指令地址〕同时将取指周期状态触发器FT置1开放时钟,开始执行取指操作。程序运行过程中,同步打入FT进入FT,D置1产生同步脉冲CPFT

将1打入FT结束FT,D置0产生同步脉冲CPFT

将0打入FTS总清QCDFTFT1--FTRCPFT图3—19取指周期状态触发器有3种情况可采用同步方式进入新的取指周期:当一条指令系统完毕,即在执行周期FT中,如果不响应DMA请求与中断请求,程序正常执行,接着就转入新的FT,开始执行下一条指令。在中断周期IT这一过渡阶段操作结束后,就应转入中断效劳程序,即进入FT。在DMA周期完成一次DMA传送后,如果没有新的DMA请求,也没有中断请求,那么恢复执行被暂停的程序,也应进入FT。〔2〕取指流程:〔取指流程图〕FT0FT1在FT0中先指令地址由PC送入MAR。在FT1中从主存M读出指令代码到MDR再送到指令存放器IR中,因PC的计数功能,所以可同时修改程序计数器PC内容,让PC+1,那么修改后的PC指向紧跟现行指令的下一单元。PC——MARM——MDA——IR,PC+1——PC〔3〕微操作时间差实现取指流程的每步根本操作与转入下一步操作所需的微命令〔包括控制电位和脉冲〕在FT0中要完成PC—MAR操作,那么应发控制信号PCOUT和CPMAR,由它们控制将PC的内容送ALU总线打入MAR中,控制信号T+1,CPT控制转入下一个节拍FT1。在FT1中要完成M—MDR——IR与PC+1—PC操作。控制信号EMAR、RD、SMDR控制从主存中读一个字〔指令〕置入MDR,由MDROUT、CPIR将MDR将内容打入IR中。控制信号PC+1,CPPC将PC内容加1计数。2.MOV指令MOV指令流程图包含了各种寻址方式的组合,流程分支的逻辑依据就是指令的寻址方式字段代码。〔1〕取指周期FT:完成取指所需的操作,与指令操作码无关的公共性操作,但FT结束后将转向哪个工作周期,与FT中取出的指令类型有关。FT0PC——MARFT1M——MDA——IR,PC+1——PC5.转移指令JMP/返回指令RST存放器寻址方式,从指定存放器中读取转移地址;存放器间址〔R〕,从指定存放器中读取间址单元地址,再从间址单元中读取转移地址;自增型存放器间址〔R〕+,比上一种寻址方式增加一步修改指针Ri的操作;返回指令RST,其寻址方式固定为〔SP〕+,即从堆栈中读取返回地址,然后修改指针SP;相对寻址X〔PC〕,以PC内容为基准进行转移地址计算。主要任务是获得转移地址或返回地址,安排在执行周期ET中完成,因此,在FT中读得指令并修改PC后,直接进入ET。转移类型:转移不成功〔NJP〕:PC型:转移地址段中的寻址方式所指定的存放器假设是通用存放器、堆栈指针SP、而非PC。PC型:转移地址段中的寻址方式所指定的存放器假设是PC〔程序计数器〕。转移成功〔JP〕6.转子指令JSR:见教材P101,图3-25转子指令流程图7.中断响应周期IT:当外部有中断请示信号送入CPU是假设允许响应,那么在一条指令的招待周期ET的最后一拍,向请求源发中断响应答复信号INTA,并在ET结束时将IT置1,即转入中断响应周期。8.DMA周期:9.键盘操作时序信号的作用和体制计算机的协调动作需要时间标志,而时间标志那么是用时序信号来表达的。操作控制器发出的各种控制信号都是时间因素〔时序信号〕和空间因素〔部件位置〕的函数。组成计算机硬件的器件特性决定了时序信号最根本的体制是电位---脉冲制。时序产生器和控制方式常用的操作控制器有两种:硬布线控制器微程序控制器时序产生器和控制方式硬布线控制器中时序信号采用主状态周期——节拍电位——节拍脉冲三级体制微程序控制中时序信号采用节拍电位——节拍脉冲二级体制。时序产生器和控制方式主状态周期〔指令周期〕:包含假设干个节拍周期,可以用一个触发器的状态持续时间来表示。节拍电位〔机器周期〕:包含假设干个节拍脉冲,表示较大的时间单位。节拍脉冲〔时钟周期〕:表示较小的时间单位。时序产生器和控制方式时序信号产生器的组成时钟源环形脉冲发生器节拍脉冲和读/写时序的译码启停控制逻辑时序产生器和控制方式时序产生器和控制方式启停控制逻辑节拍脉冲和对时序译码逻辑环形脉冲发生器

IORQMREQRDWET1T2T3T4

IORQ°MREQ°RD°WE°T1°T2°T3°T4°MERQ’IORQ’RD’WR’时钟脉冲源Φ时钟脉冲源环形脉冲发生器节拍脉冲和对时序译码逻辑启停控制逻辑用来位环形脉冲发生器提供频率稳定且电平匹配的方波时钟脉冲信号。有石英晶体振荡器组成。产生一组有序的间隔相等或不等的脉冲序列。通常采用循环移位存放器。控制方式同步控制方式:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的。采用完全统一的机器周期执行各种不同的指令。这意味这所有指令周期具有相同的节拍电位和相同的节拍脉冲数。采用不定长的机器周期。中央控制和局部控制相结合。中央控制:就是将大局部指令安排在固定的机器周期完成。局部控制:对少数复杂的指令采用另外的时序进行定时。时序产生器和控制方式时序产生器和控制方式同步控制方式:时钟微操作信号1微操作信号2异步控制方式:每条指令、每个操作控制信号需要多少时间就占用多少时间。这意味着每条指令的指令周期可由多少不等的机器周期数组成。时序产生器和控制方式异步控制方式时序产生器和控制方式命令1命令2操作信号1答复1操作信号2答复2命令3联合控制方式:将同步控制方式和异步控制方式相结合的方式。时序产生器和控制方式小结程序计数器PC地址形成部件操作码地址码译码微操作信号形成节拍发生器时钟源中断控制逻辑状态存放器微操作信号I/O信息控制台信息+1送AR8.2指令周期一、指令周期的根本概念1指令周期取出并执行一条指令所需的全部时间完成一条指令取指、分析取指周期执行周期执行取指阶段执行阶段取指周期执行周期(取指、分析)(执行指令)指令周期2每条指令的指令周期不同取指周期指令周期NOP取指周期执行阶段指令周期ADDmem取指周期执行周期指令周期MULmem3具有间接寻址的指令周期取指周期间址周期指令周期执行周期4带有中断周期的指令周期取指周期间址周期指令周期执行周期中断周期5指令周期流程取指周期有间址吗?执行周期有中断吗?间址周期中断周期是是否否6CPU工作周期的标志CPU访存有四种性质取指令取地址取操作数存程序断点取址周期间址周期执行周期中断周期CPU的四个工作周期DFEDINDDEXDINTCLK1FE1IND1EX1INTIR二、指令周期的数据流1取指周期数据流PCMARCUMDRIR地址总线数据总线控制总线存储器CPU+12间址周期数据流MARCU地址总线数据总线控制总线存储器CPUMDRMDR3执行周期数据流不同指令的执行周期数据流不同4中断周期数据流PCMARCUMDR地址总线数据总线控制总线存储器CPU程序的执行过程:指令周期

冯.诺依曼结构的计算机执行程序的顺序:

1.

正确从程序首地址开始.2.正确分步执行每一条指令,并形成下条待执行指令的地址.3.正确并自动地连续执行指令,直到程序的最后一条指令.—读取指令指令地址送入主存地址存放器读主存,读出内容送入指定的存放器—分析指令—按指令规定内容执行指令不同指令的操作步骤数和具体操作内容差异很大—检查有无中断请求假设无,那么转入下一条指令的执行过程指令周期形成下一条指令地址指令的执行过程指令周期的根本概念指令周期指令周期:CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需用的时间通常叫做一个指令周期。机器周期:指令周期常常用假设干个CPU周期数来表示,CPU周期也称为机器周期。时钟周期:由于CPU内部的操作速度较快,而CPU访问一次内存所花的时间较长,因此通常用内存中读取一个指令字的最短时间来规定CPU周期。而一个CPU周期时间又包含有假设干个时钟周期〔通常称为节拍脉冲或T周期,它是处理操作的最根本单位〕。这些时钟周期的总和那么规定了一个CPU周期的时间宽度。指令周期指令周期T周期CPU周期CPU周期T1T2T3T4〔取指令〕〔执行指令〕执行周期许多类型主要是涉及到处理器内部的存放器可能的操作有数据传输ALU控制指令的处理指令周期下面以一个简单的程序来具体认识每一条指令的指令周期和执行过程。

指令周期内存地址内存内容助记符所完成的操作020250000CLA将累加器的内容请零021030030ADD30(A)+(30)

A022021040STA40(A)(40)023000000NOP024140021JMP2121→PC

030000006

031

040存和数单元

CLA指令的指令周期指令周期非访内指令需要两个CPU周期。在第一个CPU周期,即取指令阶段,CPU完成三件事:(1)从内存取出指令;(2)对程序计数器PC加1,以便为取下一条指令做好准备;(3)对指令操作码进行译码或测试,以便确定进行什么操作。在第二个CPU周期,即执行指令阶段,将累加器A的内容清零。

一个CPU周期一个CPU周期取指令阶段执行指令阶段开始取指令PC+1对指令译码执行指令取下条指令PC+1指令周期算术逻辑单元状态条件存放器程序记数器PC地址存放器AR地址总线ABUS数据总线DBUS累加器AC缓冲存放器DRCPUALU指令存放器IR指令译码器操作控制器时序产生器时钟状态反响取指控制执行控制cccc+10000202021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021指令周期算术逻辑单元状态条件存放器程序记数器PC地址存放器AR地址总线ABUS数据总线DBUS累加器AC缓冲存放器DRCPUALU指令存放器IR指令译码器操作控制器时序产生器时钟状态反响取指控制执行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021ADD指令的指令周期指令周期ADD指令的指令周期由三个CPU周期组成。第一个CPU周期为取指令阶段。第二个CPU周期中将操作数的地址送往地址存放器并完成地址译码。在第三个CPU周期中从内存取出操作数并执行相加的操作。指令周期一个CPU周期一个CPU周期取指令阶段执行指令阶段开始取指令PC+1对指令译码送操作数地址取下条指令PC+1取出操作数执行加操作一个CPU周期指令周期算术逻辑单元状态条件存放器程序记数器PC地址存放器AR地址总线ABUS数据总线DBUS累加器AC缓冲存放器DRCPUALU指令存放器IR指令译码器操作控制器时序产生器时钟状态反响取指控制执行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000021ADDADD300000210000220000300000060+6=6000006STA指令的指令周期指令周期STA指令的指令周期由四个CPU周期组成。其中第一个CPU周期仍然是取指令阶段,其过程和CLA指令、ADD指令完全一样,不同的是此阶段中程序计数器加1后变为023,因而为取第四条指令做好了准备。我们假定,第一个CPU周期后结束,“STA40”指令已放入指令存放器并完成译码测试。指令周期算术逻辑单元状态条件存放器程序记数器PC地址存放器AR地址总线ABUS数据总线DBUS累加器AC缓冲存放器DRCPUALU指令存放器IR指令译码器操作控制器时序产生器时钟状态反响取指控制执行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000022STASTA40000022000023000040000006000006000006NOP指令和JMP指令的指令周期指令周期NOP指令是一条空指令,包含两个CPU周期,第一个周期取指令,第二个周期执行指令,因是空指令,所以操作控制器不发出任何控制信号。JMP指令由两个CPU周期组成,第一个周期是取指令周期,同其他指令。第二个周期为执行阶段,CPU把指令存放器中的地址码局部21送到程序计数器,从而用新内容21代替PC原先的内容25,这样,下一条指令将不从25单元中读出,而从21电源开始读出并执行,从而改变了程序原先的执行顺序。指令周期算术逻辑单元状态条件存放器程序记数器PC地址存放器AR地址总线ABUS数据总线DBUS累加器AC缓冲存放器DRALU指令存放器IR指令译码器操作控制器时序产生器时钟状态反响取指控制执行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000024JMP21JMP21000024000021000006000006000025000021用方框图语言表示指令周期在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。一个方框代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制。一个菱形符号代表某种判别或测试,不过时间它依附于它前面一个方框的CPU周期,而不单独占用一个CPU周期。符号“~”代表一个公操作。指令周期指令周期PC→AR→ABUSDBUS→DR→IRPC+1译码或测试0→ACIR→ARIR→ARIR→PCPC→ARAR→ABUSDBUS→DRRD→ALUALU→ACAR→ABUSAC→DRDR→DBUS~~~~~CLAADDSTAJMPNOP小结:各类信息的传送路径指令:M-----DR-----DBUS-----IR地址:PC----ABUS----AR-----〔取决于寻址方式〕数据:存放器----存放器总线直接传送存放器----存储器Ri----DBUS----DR-----M存储器----存放器M----DR-----BUS-----Ri指令周期指令周期IRPCARDRR0R1R2R3MABALUIRiIRoPCiPCiARiDRiDRoR0iR0oR3iR3oXiYiA总线B总线G+-R/W指令周期PC→ARM→DRDR→IRR2→YR0→XR0+R2→R0~PC→ARM→DRDR→IRR3→YR1→XR3-R1→R3~PC0,G,ARiDR0,G,IRiR2o,G,YiR00,G,Xi+,G,R0I

R/W=RR3o,G,YiR1o,G,Xi-,G,R3i二、系统的并行性1并行的概念并行并发同时两个或两个以上事件在同一时间段发生两个或两个以上事件在同一时刻发生时间上互相重叠2并行性的等级过程级〔程序、进程〕指令级〔指令之间〕粗粒度细粒度软件实现硬件实现三、指令流水原理1指令的串行执行2指令的二级流水执行指令1取指令1取指令取指令部件完成执行指令执行指令部件完成总有一个部件空闲取指令1执行指令1执行指令2取指令2执行指令3取指令3指令预取假设取指和执行阶段时间上完全重叠指令周期减半速度提高1倍执行指令3取指令3…执行指令2取指令23影响指令流水效率加倍的因素〔1〕执行时间>取指时间执行指令部件取指令部件执行部件缓冲区〔2〕条件转移指令对指令流水的影响必须等上条指令执行结束,才能确定下条指令的地址造成时间损失猜测法解决方法?4指令的六级流水1234567891011121314指令1指令2指令3指令4指令5指令6指令7指令8指令9tFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWO完成一条指令串行执行六级流水6个单位时间14个单位时间54单位时间三、影响指令流水性能的因素1234567891011121314指令1指令2指令3指令4指令5指令6指令7指令8指令9tFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWO1访存冲突指令1与指令4冲突指令2与指令5冲突指令1、指令3、指令6冲突……解决方法指令存储器和数据存储器分开指令预取技术〔适用于访存周期短的情况〕2相关问题程序的相近指令之间出现某种关联使指令流水出现停顿影响流水线效率2相关问题〔1〕控制相关LDA#0LDX#0ADDX,DINXCPX#NBNEMDIV#NSTAANSBNE指令必须等CPX指令必须等才能判断出是转移还是顺序执行M2相关问题1234567891011121314指令1指令2指令3指令4指令5指令6指令7指令15指令16tFIDICOFOEIWOFIDICOFOEIWOFIDICOFOEIWOFIDICOFOFIDICOFIDIFIFIDICOFOEIWOFIDICOFOEIWO(1)控制相关设指令3是转移指令转移损失〔2〕数据相关几条相近的指令间,共用同一存储单元或同一寄存器时,会出现数据相关如:ADDR1,R2SUBR1,R3解决办法采用旁路技术寄存器组锁存器锁存器ALU五、流水线结构1指令流水线结构完成一条指令分7段,每段需一个时钟周期修改指令指针部件回写结果部件操作执行部件取操作数部件地址形成部件指令译码部件取指令部件锁存锁存锁存锁存锁存锁存假设流水线不出现断流不采用流水技术理想情况下,7级流水的速度是不采用流水技术的7倍1个时钟周期出1结果7个时钟周期出1结果2运算流水线完成浮点加减运算可分对阶、尾数求和、规格化三段锁存器对阶功能部件第一段锁存器规格化部件第三段锁存器尾数加部件第二段分段原则每段操作时间尽量一致8.4中断系统一、概述1引起中断的各种因素〔1〕人为设置的中断如转管指令转管指令管理程序………〔2〕程序性事故溢出、操作码不能识别、除法非法〔3〕硬件故障〔4〕I/O设备〔5〕外部事件用键盘中断现行程序2中断系统需解决的问题〔1〕各中断源如何向CPU提出请求?〔2〕各中断源同时提出请求怎么办?〔3〕CPU什么条件、什么时间、以什么方式响应中断?〔4〕如何保护现场?〔5〕如何寻找入口地址?〔6〕如何恢复现场,如何返回?〔7〕处理中断的过程中又出现新的中断怎么办?硬件+软件二、中断请求标记和中断判优逻辑1中断请求标记INTR一个请求源一个INTR中断请求标记触发器多个INTR组成中断请求标记寄存器12345n过热错内存读写校验掉电阶上溢非法除法键盘打印机INTR分散在各个中断源的接口电路中INTR集中在CPU

的中断系统内2中断判优逻辑〔1〕硬件实现〔排队器〕②集中在CPU内①分散在各个中断源的接口电路中链式排队器参见第五章INTP1INTP2INTP3INTP4111&1&1&INTR1INTR2INTR3INTR4INTR1、INTR2、INTR3、INTR4

优先级按降序排列〔2〕软件实现〔程序查询〕A、B、C

优先级按降序排列是否A

请求?是否B

请求?是否C

请求?否否否……是是是转A

的服务程序入口地址转B

的服务程序入口地址转C

的服务程序入口地址三、中断效劳程序入口地址的寻找1硬件向量法向量地址形成部件…………中断向量排队器输出向量地址12H、13H、14H入口地址200、300、400JMP200JMP300JMP40012H13H14H主存入口地址20012H13H14H入口地址300入口地址400主存2软件查询法八个中断源1、2、……8按降序排列中断识别程序(入口地址M)地址指令说明……SKPDZ1#1#D=0跳(D为完成触发器)JMP1#SR1#D=1转1#服务程序SKPDZ2#J

温馨提示

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

评论

0/150

提交评论