第8章中央处理单元2013(V1.2).ppt_第1页
第8章中央处理单元2013(V1.2).ppt_第2页
第8章中央处理单元2013(V1.2).ppt_第3页
第8章中央处理单元2013(V1.2).ppt_第4页
第8章中央处理单元2013(V1.2).ppt_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

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

文档简介

1、第八章 中央处理单元,计 算 机 组 成 原 理,2013年3月26日,8.1.1 CPU的功能,取出指令并执行指令的部件-CPU 数据加工 -ALU. 算术/逻辑运算; 指令控制:指令执行的顺序控制; 操作控制: 产生各种操作信号; 时间控制: 控制操作信号的发生时间;,CPU具有如下四方面的基本功能:, 指令控制 程序的顺序控制称为指令控制。用于控制指令严格地按程序规定的顺序,逐条取出并加以执行。, 操作控制 一条指令的功能往往是由若干个操作信号的组合来实现的,因此,CPU负责管理并产生每条指令所对应的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。,ADD

2、 R1, R0, 时间控制 对各种操作的实施时间进行定时,称为时间控制。在计算机中,各种指令的操作信号以及一条指令的整个执行过程都严格的时间要求,需要CPU设定规定的时序关系。, 数据加工 数据加工就是对数据进行算术运算和逻辑运算处理,这是CPU的核心功能之一。,ADD R1, R0,8.1.2 CPU的基本组成,CPU的基本部分由运算器、cache和控制器三大部分组成。 CPU模型参看演示,运算器,控制器,1、CPU中的主要寄存器,PC (Program Counter)程序计数器 AR (Address Register)地址寄存器 DR (Data Register)数据缓冲寄存器 IR

3、 (Instruction Register)指令寄存器 AC (Accumulate Count)累加寄存器 PSW (Program Status Word)程序状态字,程序计数器(PC),为了保证程序能够连续地执行下去,CPU必须具有某些手段来自动确定下一条指令的地址。而程序计数器PC正是起到这种作用的,所以PC通常又称为指令计数器。 在程序开始执行前,必须将该程序在内存单元的起始地址,即第一条指令的地址送入PC。当执行指令时,CPU将自动修改PC的内容,使其保持的总是将下一条要执行的指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC自增即可。 当遇到转移指

4、令(如JMP指令)时,由于后继指令的地址(即PC的内容)必须从指令的地址段取得。在这种情况下,下一条指令的地址将由转移指令来规定,而不是像通常一样按顺序来取得。因此程序计数器PC的结构,应当是具有信息寄存和计数两种功能的结构。,地址寄存器(AR),地址寄存器AR用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到对内存的读/写操作完成为止 。 地址寄存器的结构和数据缓冲寄存器、指令寄存器一样,通常使用单纯的寄存器结构。信息的存入一般采用电位-脉冲方式,即电位输入端对应数据信息位,脉冲输入端对应控制信号,在控制信号cl

5、k的作用下,瞬时地将信息打入寄存器。,存储器数据缓冲寄存器(DR),存储器数据缓冲寄存器MDR用来暂时存放由内存读出的一条指令或一个数据字;反之,当向内存存入一条指令或一个数据字时,也先将它们送到存储器数据缓冲寄存器MDR中,然后再写入内存。 存储器缓冲寄存器MDR的作用是 : (1)作为CPU和内存及外部I/O设备之间信息传送的中转站; (2)用于补偿CPU与内存及外围设备之间在操作速度上的差别; (3)在单累加器结构的运算器中,存储器数据缓冲寄存器还可兼作为操作数寄存器。,指令寄存器(IR),指令寄存器IR用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到缓冲寄存器中,然后

6、再传送至指令寄存器。 指令分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作,指令译码器就是完成这项工作的。指令寄存器中的操作码字段被送入指令译码器中,操作码一经译码后,即可向操作控制器发出具体操作的特定信号。,累加寄存器(AC),累加寄存器AC通常简称为累加器,它是一个通用寄存器。其功能是:当运算器需执行算术或逻辑运算时,为ALU提供一个工作区,它可暂时存放ALU运算的结果信息。显然,运算器中至少要有一个累加寄存器。 目前CPU中的累加寄存器,多达16个,32个,甚至更多。当使用多个累加器时,就变成通用寄存器堆结构,其中任何一个可存放

7、源操作数,也可存放结果操作数。在这种情况下,需要在指令格式中对寄存器号加以编址。,状态条件寄存器(PSW),状态条件寄存器保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,如运算结果进位标志(C),运算结果溢出标志(V),运算结果为零标 志(Z),运算结果为负标志(N)等等。这些标志位通常分别由1位触发器保存。 除此之外,状态条件寄存器还保存中断和系统工作状态等信息,因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。其作用是使CPU和系统能及时了解机器运行状态和程序运行状态。,2、控制器基本组成,PC (Program Counter)程序计数器 IR (Instruc

8、tion Register)指令寄存器 ID (Instruction Decoder)指令译码器 OC (Operate Controller)操作控制器 TG (Timer Generator) 时序发生器,操作控制器,根据指令操作码和地址码,产生各种控制信号序列 ,建立正确的数据通路,从而完成取指令和执行指令的控制。 硬布线控制器 (时序逻辑型) (硬件实现) 微程序控制器 (存储程序型) (软件实现) 数据通路-执行部件间传送信息的通路。,时序产生器,产生各种时序信号(电位,脉冲); 对各种操作实施时间上的控制。,课堂练习与思考:,1、在CPU组成中不包括 _。 A.指令寄存器 B.地

9、址寄存器 C.指令译码器 D.地址译码器,D,2、当今的CPU 芯片除了包括定点运算器和控制器外,还包括_,_ 运算器和_管理等部件。,Cache,浮点,存储,3、在CPU中跟踪指令后继地址的寄存器是_。 A、主存地址寄存器 B、程序计数器 C、指令寄存器 D、状态条件寄存器,B,4、CPU中至少有如下六类寄存器_寄存器,_计数器,_寄存器,通用寄存器,状态条件寄存器,缓冲寄存器。,指令,程序,地址,课堂练习与思考:,5、CPU中,保存当前正在执行的指令的寄存器为 ,保存当前正在执行的指令的地址的寄存器为 ,保存CPU访存地址的寄存器为 。,指令寄存器IR,程序计数器PC,内存地址寄存器MAR

10、,6、CPU的四个主要功能是 、 、 和 。,指令控制,操作控制,时间控制,数据加工,8.2 指令周期(),指令周期基本概念 CLA指令周期 ADD指令周期 STA指令周期 NOP指令周期 JMP指令周期,1、指令周期基本概念,时钟周期:T,节拍脉冲 CPU 周期:机器周期,从内存读出一条指令的最短时间 指令周期:从内存取一条指令并执行该指令所用的时间。 由若干个CPU周期组成。 CPU周期又包含若干时钟周期(节拍脉冲),T周期,T1,T2,T3,T4,T1,T2,T3,T4,机器周期(取指令),指令周期,机器周期(执行指令),名词概念:,指令周期: CPU从内存取出一条指令并执行完这条指令的

11、时间总和。,CPU周期:又称机器周期,CPU访问内存所花的时间较长,因此用CPU从内存读取一条指令字的所需的最短时间来定义。,时钟周期: 通常称为节拍脉冲或T周期。一个CPU周期包含若干个时钟周期T。,相互关系: 1个指令周期 = 若干个CPU周期; 1个CPU周期 = 若干T周期,取指时间+执行指令时间,指令周期基本概念(),取指令周期 取操作数周期 (可无) 执行周期,取指令 PC+1,执行指令,开始,2、CLA指令周期,取指令 PC+1,指令译码,执行指令,取下条 指令PC+1,取指令阶段,执行指令阶段,1个CPU周期,1个CPU周期,开始,DR,CLA,ADD 30,STA 40,NO

12、P,JMP 21,000 006,000 004,20,21,22,23,24,30,40,ALU,AC,000 020,AR,CLA,IR,指令译码器,操作控制器 时序产生器,程序计数器 PC,地址寄存器 AR,缓冲寄存器DR,累加器 AC,指令寄存器 IR,执行指令控制,地址总线 ABUS,数据总线 DBUS,000 020,CLA,000000000,CLA指令,000 021,+1,PCARABUSRAM DBUSDRIR PC+1,执行过程的操作,PCAR PC+1PC AR ABUSRAMDBUSDR DRIR 0AC,3、ADD指令周期,取指令 PC+1,指令译码,取出操作数,取

13、下条 指令PC+1,取指令阶段,1个CPU周期,1个CPU周期,开始,送操作数 地址,执行指令阶段,1个CPU周期,执行 ADD操作,CLA,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 004,20,21,22,23,24,30,40,ALU,000 021,000 020,ADD 30,CLA,指令译码器,操作控制器 时序产生器,程序计数器 PC,地址寄存器 AR,缓冲寄存器DR,累加器 AC,指令寄存器 IR,执行指令控制,地址总线 ABUS,数据总线 DBUS,000 021,ADD 30,000000000,3、ADD指令,000 022,+1,P

14、CARABUSRAM DBUSDRIR PC+1,CLA,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 004,20,21,22,23,24,30,40,ALU,000 021,000 021,ADD 30,CLA,指令译码器,操作控制器 时序产生器,程序计数器 PC,地址寄存器 AR,缓冲寄存器DR,累加器 AC,指令寄存器 IR,执行指令控制,地址总线 ABUS,数据总线 DBUS,000 030,ADD 30,000000000,ADD指令,000 022,+1,000 006,IRARABUSRAM DBUSDRALU ALUAC,006,ADD执行

15、过程的操作,PCAR PC+1PC AR ABUSRAMDBUSDR DRIR IR(A)ARABUSRAM DBUSDRALU ALUAC,4、STA 40 指令周期,取指令 PC+1,指令译码,送操作数,取下条 指令PC+1,取指令阶段,1个CPU周期,1个CPU周期,开始,送操作数 地址,执行指令阶段,1个CPU周期,执行 写存操作,CLA,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 004,20,21,22,23,24,30,40,ALU,000 021,000 030,STA 40,CLA,指令译码器,操作控制器 时序产生器,程序计数器 PC,地

16、址寄存器 AR,缓冲寄存器DR,累加器 AC,指令寄存器 IR,执行指令控制,地址总线 ABUS,数据总线 DBUS,000 040,STA 40,STA指令,000 023,+1,000 006,000 006,000 006,IR(A)ARABUS ACDR DRDBUSRAM,执行过程的操作,PCAR PC+1PC AR ABUSRAMDBUSDR DRIR IR(A)ARABUS ACDR DRDBUSRAM,5、NOP指令周期,取指令 PC+1,指令译码,空操作 等待 一个周期,取下条 指令PC+1,取指令阶段,执行指令阶段,1个CPU周期,1个CPU周期,开始,6、JMP 21指令

17、周期,取指令 PC+1,指令译码,送 转移地址,取下条 指令PC+1,取指令阶段,执行指令阶段,1个CPU周期,1个CPU周期,开始,CLA,ADD 30,STA 40,NOP,JMP 21,000 006,000 004,20,21,22,23,24,30,40,ALU,000 025,000 024,JMP 21,CLA,指令译码器,操作控制器 时序产生器,程序计数器 PC,地址寄存器 AR,缓冲寄存器DR,累加器 AC,指令寄存器 IR,执行指令控制,地址总线 ABUS,数据总线 DBUS,000 021,JMP 21,JMP 21指令,000 021,+1,000 006,000 00

18、6,000 022,IR(A)PC,执行过程中的操作,PCAR PC+1PC AR ABUSRAMDBUSDR DRIR IR(A)PC Next command,五条指令的取指和执行过程,我们把前面的五条典型指令加以归纳,其取指和执行过程请见CAI演示。,8.3 数据流 指令周期期间,严格的事件序列取决于中央处理器的设计,然而我们能以通常的方式取出什么事件必定发生。先假定一个中央处理器,它有存储器地址寄存器(MAR)一个存储器缓冲寄存器(MDR),一个程序计数器(PC),一个指令寄存器(IR)。 在取指令周期期间,一条指令由存储器读入,图8-6表示此期间的数据流动。开始时PC内容有待取的下一

19、条指令的地址。这个地址被传送到并放在地址总线上。控制器发生一次存储读,其结果放到数据总线上并被复制到MBR,然后传送到IR。在此期间PC增1,为下次取指做好准备。,1. 取指周期数据流,指令周期的数据流,CU,MAR,PC,一旦经历取指周期,控制器检查IR的内容,以确定是否有一个使用间接寻址的操作数指定器。若是一个间址周期完成,如图8-8所示,这是一个简单周期。MDR最右的N位是一个地址引用,被传送到MAR。然后,控制器发一个存储器读信号,得到所要求的操作数地址并送入MDR。 像取指和间址周期一样,中断周期是可预期的。图8-9。PC的当前内容必须保存,以便在中断之后中央处理器能恢复正常的工作。

20、于是,PC的内容传送到MBR,将被写入存储器。为此目的,一个专门的存储器位置内控制器装入,例如它可能是一个堆栈指针。年三月中断子程序的地址装入PC。结果是,下一指令周期将以取此相应的指令而开始。,间址周期数据流,执行周期数据流,中断周期数据流,不同指令的执行周期数据流不同,8.4 用指令流程图表示指令周期 上述典型指令用指令流程图描述,方框图表示,0AC,IR(A)AR,IR(A)AR,IR(A)PC,ARRAM ACDR DRDBUS,CLA,ADD,STA,JMP,NOP,取指令,执行指令,下一条指令,译码测试,公操作,PCARRAM DBUSDRIR PC+1,ARRAM DBUSDR

21、DRALU ALUAC,公操作,一条指令执行完后,CPU所进行的一些操作。 对外设请求的处理(中断,通道) 若无外设请求的处理,CPU则转而取下条指令。 由于取指令是每条指令都有的,所以,取指令也是公操作。,例题1: 某计算机的数据通路如下图所示,其中M主存, MBR主存数据寄存器, MAR主存地址寄存器, R0-R3通用寄存器, IR指令寄存器, PC程序计数器(具有自增能力), C、D-暂存器, ALU算术逻辑单元(此处做加法器看待), 移位器左移、右移、直通传送。所有双向箭头表示信息可以双向传送。,请按数据通路图画出“ADD(R1),(R2)+”指令的指令周期流程图。该指令的含义是两个数

22、进行求和操作。其中源操作地址在寄存器R1中,目的操作数寻址方式为自增型寄存器间接寻址(先取地址后加1)。 解:“ADD (R1),(R2)+”指令是SS型指令,两个操作数均在主存中。其中源操作数地址在R1中,所以是R1间接寻址。目的操作数地址在R2中,由R2间接寻址,但R2的内容在取出操作数以后要加1进行修改。指令周期流程图如图所示:,0,例题2:某计算机有如下部件:ALU,移位器,主存M,主存数据寄存器MDR,主存地址寄存器MAR,指令寄存器IR,通用寄存器R0R3 ,暂存器C和D。 见下图所示 (1)请将各逻辑部件组成一个数据通路,并标明数据流向。 (2)画出“ADD R1,(R2)”指令

23、的指令周期流程图,指令功能是(R1)+(R2))R1。,解:(1)各功能部件联结成如图所示数据通路。,(2)此指令为RS型指令,一个操作数在R1中,另一个操作数在R2为地址的内存单元中,相加结果放在R1中。,送当前指令地址到MAR 取当前指令到IR, PC + 1,为取下条指令做好准备 取R1操作数C暂存器。 R2中的内容是内存地址 从内存取出数D暂存器 暂存器C和D中的数相加后送R1,课堂练习与思考:,1、运行一条指令MOV(R0),R1,需经过下述那几个工作周期( )。(题型:多选) A. DMA周期 B.取指周期 C.执行周期 D.源周期,B、C,2、在指令周期的第一个CPU周期内,CP

24、U中地址寄存器内容是( )。(题型:单选) A.指令 B.指令地址 C.数据 D.数据地址,B,3、假设某机设置了取指周期,取数周期,执行周期,中断周期和DMA周期,那么一条指令从取指令开始到指令执行完毕最多可能经历( ) (题型:多选) A. DMA周期 B.取指周期 C.取数周期 D.执行周期,B、C、D,课堂练习与思考:,4、 将指令周期划分为几个工作阶段,每个工作阶段所需时间称为工作周期。下面有关工作周期的描述中正确的有( )。 (题型:多选) A.不同工作周期所占时间可以不同; B.不同指令的同一工作周期所需的时间可能不同; C.不同指令可以含有不同的几个工作周期; D.工作周期可以

25、在多级时序系统中作为独立的一级时序,A、C、D,5、请说明指令周期、机器周期、时钟周期之间的关系。,解答:指令周期是指取出并执行一条指令的时间,指令周期常常用若干个CPU周期数来表示,CPU周期也称为机器周期,而一个CPU周期又包含若干个时钟周期(也称为节拍脉冲或T周期)。,8.5时序信号产生器,微程序控制器中使用的时序信号产生器由时钟 源、环形脉冲发生器、节拍脉冲和读写时序译码逻 辑、启停控制逻辑等部分组成。,1.时钟源 时钟源用来为环形脉冲发生器提供频率稳定、且电平匹配的方波时钟脉冲信号。它通常由石英晶体振荡器和与非门组成的正反馈振荡电路组成,其输出送至环形脉冲发生器。,1、电位-脉冲制,

26、时序信号最基本的体制是电位-脉冲制。 当实现寄存器之间的数据传送时,数据必须以电位形式加在触发器的数据输入端,而数据输入的控制信号可选用脉冲。 数据必须先送到触发器的数据输入端,并且表示数据的电位一定要保持在控制脉冲的作用下被触发器记忆为止,这段时间较长,所以数据需要用电位表示。 而输入脉冲的时间宽度只需要保证数据从触发器的输入端稳定在输出端的时间。,2、时序产生器,启停控制逻辑,启动,节拍脉冲和读,/,写时序产生逻辑,脉冲发生器,时钟源,停机,RD,WE,T,1,T,2,T,3,T,4,RD,WE,RD,0,WE,0,T,1,0,T,2,0,T,3,0,T,4,0,3、环形脉冲发生器与读写时

27、序,电路说明,4个触发器输入输出串联构成循环移位电路 D触发器R/S端分别为Reset和Set C1 C2 C3 时钟信号为上跳沿 C4 时钟信号为下跳沿,4、启停控制逻辑,LDAR,RD M,LDDR,LDIR PC+1,T1,T2,T3,T4,CPU周期,取指,执行,CPU周期,时序图,状态周期电位,节拍电位,节拍脉冲,8.6控制方式,控制方式: 即控制不同操作序列时序信号的方法。常用的有同步控制、异步控制、联合控制三种方式,其实质反映了时序信号的定时方式。,1.同步控制方式 在任何情况下,已定的指令在执行时所需的CPU周期(机器周期)数和时钟周期数都固定不变。根据不同情况,同步控制方式可

28、选取如下方案: (1)采用完全统一的机器周期执行各种不同的指令。 (2)采用不定长机器周期。 (3)中央控制与局部控制结合。,产生不同微操作命令序列所用的时序控制方式,同步控制方式,任一微操作均由 统一基准时标 的时序信号控制,CLK,(1) 采用 完全统一 的机器周期和节拍,以最长的 微操作序列 和 最繁的微操作作为 标准,(2) 采用不同节拍的机器周期,节拍 (状态),(3) 采用中央控制和局部控制相结合的方法,局部控制的节拍宽度与 中央控制的节拍宽度一致,2.异步控制方式,其特点是:每条指令、每个操作控制信号需要多少时间就占用多少时间。这意味着每条指令的指令周期可由多少不等的机器周期数组

29、成;也可以是当控制器发出某一操作控制信号后,等待执行部件完成操作后发“回答”信号,再开始新的操作。显然,用这种方式形成的操作控制序列没有固定的CPU周期数(节拍电位)或严格的时钟周期(节拍脉冲)与之同步。,3.联合控制方式,此为同步控制和异步控制相结合的方式。 情况(1): 大部分操作序列安排在固定的机器周期中,对某些时间难以确定的操作则以执行部件的“回答”信号作为本次操作的结束; 情况(2): 机器周期的节拍脉冲数固定,但是各条指令周期的机器周期数不固定。,课堂练习与思考:,1、时序信号产生器提供机器所需的 时序信号,在硬联线控制器中,时序信号采用 三级体制,在微程序控制器中,一般采用 二级

30、体制。,定时,主状态-节拍电位-节拍脉冲,节拍电位-节拍脉冲,2、CPU 从主存取出一条指令并执行该指令的时间叫 ,它通常包含若干个 ,而后者又包含若干个 。 组成多级时序系统。,指令周期,机器周期,节拍,3、在寄存器寄存器型,寄存器存储器型和存储器存储器型三类指令中,哪类指令的执行时间最长?哪类指令的执行时间最短?为什么?,解答:寄存器-寄存器型执行速度最快,存储器-存储器型执行速度最慢。因为前者操作数在寄存器中,后者操作数在存储器中,而访问一次存储器所需的时间一般比访问一次寄存器所需时间长。,8.7中断系统,8.7.1 概述,1. 引起中断的各种因素,(1) 人为设置的中断,(2) 程序性

31、事故,如 转管指令,溢出、操作码不能识别、除法非法,(5) 外部事件,(4) I/O 设备,(3) 硬件故障,用 键盘中断 现行程序,2. 中断系统需解决的问题,(1) 各中断源 如何 向 CPU 提出请求 ?,(2) 各中断源 同时 提出 请求 怎么办 ?,(5) 如何 寻找入口地址 ?,(4) 如何 保护现场 ?,(3) CPU 什么 条件、什么 时间、以什么 方式 响应中断 ?,(6) 如何 恢复现场,如何 返回 ?,(7) 处理中断的过程中又 出现新的中断 怎么办 ?,硬件 软件,8.7.2 中断请求标记和中断判优逻辑,1. 中断请求标记 INTR,一个请求源 一个 INTR 中断请求

32、标记触发器,多个INTR 组成 中断请求标记寄存器,INTR 分散 在各个中断源的 接口电路中,INTR 集中 在 CPU 的中断系统 内,2. 中断判优逻辑, 分散 在各个中断源的 接口电路中 链式排队器, 集中 在 CPU 内,(1) 硬件实现(排队器),INTR1,INTR2,INTR3,INTR4,INTR1 、 INTR2 、 INTR3 、 INTR4 优先级 按 降序 排列,A、B、C 优先级按 降序 排列,(2) 软件实现(程序查询),转 A 的服务程序 入口地址,转 B 的服务程序 入口地址,转 C 的服务程序 入口地址,8.7.3 中断服务程序入口地址的寻找,1. 硬件向量

33、法,向量地址 12H、13H、14H 入口地址 200、 300、 400,2. 软件查询法,M,8.7.4 中断响应,1. 响应中断的 条件,允许中断触发器 EINT = 1,2. 响应中断的 时间,指令执行周期结束时刻由CPU 发查询信号,CPU 中断查询,至排队器,3. 中断隐指令,(1) 保护程序断点,(2) 寻找服务程序入口地址,(3) 硬件 关中断,PC,断点存于 特定地址( 0 号地址) 内,断点 进栈,INT 中断标记,EINT 允许中断,R S 触发器,M,PC,8.7.5 保护现场和恢复现场,1. 保护现场,2. 恢复现场,保护现场,其他服务程序,恢复现场,中断返回,PUS

34、H,视不同请求源而定,POP,中断服务程序 完成,中 断 服 务 程 序,中断隐指令 完成,中断服务程序 完成,IRET,(1) 屏蔽触发器的作用,MASK = 0(未屏蔽),INTR 能被置 “1”,MASKi = 1 (屏蔽),INTPi = 0 (不能被排队选中),8.7.6 中断屏蔽技术,8.8 流水线处理器-流水线原理,1.时间并行 把任务分成若干子任务,使子任务在流水线的各阶段并发地执行。-时间上并行性。 2.空间并行 资源重复 多处理器系统和多计算机系统 3.时间并行+空间并行 时间重叠和资源重复的综合应用。 奔腾CPU采用超标量流水技术,可在一个机器周期同时执行两条指令。,8.

35、8.1 流水线基本概念,1. 产品生产流水线 (1) 一个问题 假设某产品的生产需要4道工序,该产品生产车间以前只有1个工人,1套生产该产品的机器。该工人工作8小时,可以生产120件(即每4分钟生产1件)。 要将该产品日产量提高到480件,如何能实现目标?,(2) 两种解决方案 方案一:增加3名工人、3套设备。 方案二:产品生产采用流水线方式,分为4道工序;增加3名工人,每人负责一道工序。,(3) 两种方案的工作过程对比 两种方案中,单件产品的生产时间均不变。 但在稳定情况下, 方案一:每4分钟,4件产品同时进入流水线,4件成品同时离开流水线,需要增加3套设备。 方案二:每分钟,1件产品进入流

36、水线,1件成品离开流水线,不需要增加任何设备。,(4) 方案二的主要特点 每件产品还是要经过4道工序处理,单件产品的加工时间并没有改变,但它将各个工人的操作时间重叠在一起,使得每件产品的产出时间从表面上看是从原来的4分钟缩减到1分钟,提高了产品的产出率。,2.计算机中的流水线 指令流水线 功能部件流水线,3.流水技术 将一重复的时序过程分解为若干子过程,每个子过程都可有效地在其专用功能段上与其它子过程同时执行,这种技术称为流水技术。 4.时-空图 从时间和空间两个方面描述流水线的工作过程,横坐标表示时间,纵坐标表示各流水段。,5.流水线的特点 流水过程由多个相关的子过程组成,这些子过程称为流水

37、线的“级”或“段”。段的数目称为流水线的“深度”。 每个子过程由专用的功能段实现,各功能段的时间应基本相等,通常为1个时钟周期(1拍)。 流水线需要经过一定的通过时间才能稳定。 流水技术适合于大量重复的时序过程。,8.8.2 计算机的指令周期细分,取指令 IF (Instruction Fetch) 指令译码 ID (Instruction Decode) 执行运算 EX (Execution) 结果写回 WB (Write Back),1、串行执行过程,IF,ID,EX,WB,2、非流水线时空图,I1,时间T,I1,I1,I1,IF,ID,EX,WB,空间S,I2,I2,I2,I2,I1,I

38、2,3、流水线时空图,4、超标量流水线时空图,时间T,IF,ID,EX,WB,空间S,I12,I34,I1,I2,I3,I4,I1,I2,I3,I4,I1,I2,I3,I4,I1,I2,I3,I4,具有两条以上的指令流水线。满载时,每一时钟周期可以执行2条指令,I56,I78,5、流水线分类,1.指令流水线 取指-译码-取数-执行 2.算术流水线 加法器, 乘法器, 快速傅里叶变换器 STAR-100-4级 3.处理机流水线 由一串级连的处理机组成. 每台处理机负责某一特定任务.,多体交叉存储器,Cache,指令部件 (I+K+1),指令I+K 指令I+2 指令I+1,执行部件 (指令I),取

39、指令 指令译码 计算操作数地址 取操作数,FIFO 指令队列,算术运算 流水线,存储体系,流水方式CPU,流水计算机 系统组成,指令部件 指令队列 执行部件,流水线的相关冲突,资源相关 取操作数与取指令都需要访问主存, 数据相关 后一条指令的操作数依赖于前一条指令的执行结果 控制相关 转移指令使得流水线发生中断 延迟转移法 预测转移法,第八章中央处理器小结 1 CPU基本功能(1) 指令控制:程序的顺序控制,称为指令控制。 控制器: PC、IR、ID(2) 操作控制:管理并产生每条指令的操作控制信号,并把操作控制信号送往相应的部件,从而控制这些部件按指令的要求进行动作。 操作控制器(3) 时间

40、控制:对各种操作实施时间上的定时,称为时间控制。 时序产生器(4) 数据加工:对数据进行算术运算和逻辑运算处理。 运算器:ALU、寄存器组、数据通路2控制器的主要职能 (1) 取指令(2) 分析指令(3) 执行指令 (4) 控制程序和数据的输入与结果的输出(5) 对异常情况和某些请求的处理,3CPU中主要寄存器功能 数据缓冲寄存器(DR) 暂存当前访问存储单元或外设端口的内容。 作用: 起到CPU和内存、外部设备之间信息传送中转站的作用 缓冲及补偿CPU和内存、外部设备之间在操作速度上的差别 在单累加器结构的运算器中数据缓冲寄存器还可兼作为操作数寄存器指令寄存器(IR) 存放当前执行的指令码,供进行指令译码。程序计数器(PC) 存放CPU将要执行的指令的地址。工作特点: 程序开始执行前,

温馨提示

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

评论

0/150

提交评论