第五章中央处理器ppt课件.ppt

上传人:本田雅阁 文档编号:2561225 上传时间:2019-04-08 格式:PPT 页数:50 大小:1.14MB
返回 下载 相关 举报
第五章中央处理器ppt课件.ppt_第1页
第1页 / 共50页
第五章中央处理器ppt课件.ppt_第2页
第2页 / 共50页
第五章中央处理器ppt课件.ppt_第3页
第3页 / 共50页
亲,该文档总共50页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第五章中央处理器ppt课件.ppt》由会员分享,可在线阅读,更多相关《第五章中央处理器ppt课件.ppt(50页珍藏版)》请在三一文库上搜索。

1、1,第 5 章 中央处理器CPU,5.1 CPU的组成和功能,一、CPU的功能:自动完成取指和执指操作的部件。 1.指令控制功能: 由IP或PC完成对程序的顺序控制并取指。该功能由指令部件IU (IP、IR、ID)予以完成。 2.操作控制功能: 由操作控制部件(控制信号形成部件)CU对所取指令进行分析后形成指令操作所需的全部控制信号(微命令),送往运算器(内部控制操作)和各系统部件(外部操作控制);各控制信号所起的作用为门控和选通,以控制信息流的走向,来完成指令规定的操作。 3.时间控制功能: 由时序部件TU产生空间上独立输出的时间标准信号(指令周期、CPU周期、时钟周期信号),提供给CU作为

2、时间基准,使各微操作控制信号在规定时间定时发出(有效)。,5.1 CPU的组成和功能,4.地址形成功能: 根据取入指令的寻址方式MOD、寄存器编号REG和形式地址信息D,由地址形成部件AU形成操作数的有效地址EA。 5.数据处理功能: 在操作控制信号的控制下,由运算器ALU等部件完成对指令规定的操作对象进行加工和处理。 二、CPU的基本组成: 1.传统CPU:运算器(ALU、ACC、F或PSW、通用寄存器组)+控制器(IU、CU、TU、AU)。 2.现代CPU:运算器(GPU+FPU+定点ALU+阵列乘除法器,标量与超标量结构)+控制器(RISC/CISC复合控制,流水与超流水)+哈佛结构的一

3、级Cache和混存结构的二级Cache 。,1. 运算器,运算器功能:在控制器的统一指挥下,完成对数据信息的加工和处理 运算器基本组成: 算术/逻辑运算单元ALU:(补码加/减运算器+函数发生器即逻辑运算电路)。 标志寄存器F(PSW):存放运算结果的状态和特征。 通用寄存器组:(专用、通用寄存器)存放地址、数据和中间结果。 累加器A或AC:用于存放运算时的操作数及操作结果。 数据缓冲寄存器DR:存放内存读出或写入的信息,起缓冲作用,是CPU的数据出入口,外接DB。,2. 控制器,控制器的功能:根据指令的规定完成对整个计算机系统操作的协调和控制。 控制器的组成:IU、CU、TU、AU。,2.

4、控制器,IU 的基本组成:指令部件IU(IP、IR、ID)完成取指操作。 *1. 指令指针PC或IP:给出正在执行(当前)指令的地址,并自动+1给出下一条指令的地址;当遇到转移指令、调子指令、返回指令、中断操作时由指令、堆栈或I/O接口芯片提供新地址PC; *2. 指令寄存器IR:用于存放由主存取出的指令OP码+地址码; *3. 指令译码器:用于对IR中的指令OP码进行译码,形成译码信号。,2. 控制器,CU 的基本组成:操作控制信号形成部件CU用于形成控制信号 *1. 其组成:分别由组合逻辑电路(与门阵列+或门阵列)、控制ROM(微程序只读存储器)构成; *2. 其输入为:指令译码信号、TU

5、产生的节拍电位M和节拍脉冲T、F的状态信号、中断与总线的请求信号; *3. 其输出为:经CU综合分析与处理后形成的相应指令所需的全部控制信号(微命令)与CPU的CB相连。,2. 控制器,TU的基本组成: 时序部件TU由时钟源、节拍发生器、启停控制逻辑组成。 *1.时钟源:提供时钟脉冲(晶振+振荡器); *2.节拍发生器:提供节拍电位M与节拍脉冲T(建立微操作序列的时序关系); *3. 启停控制逻辑:负责对时钟脉冲的输出与封锁,从而实现计算机的启动与停机。 注:节拍电位 M:空间上独立输出的机器周期信号M1M4; 节拍脉冲 T:空间上独立输出的时钟周期信号T1T4。,2. 控制器:,AU的基本组

6、成:地址形成部件AU由地址加法器、专用寄存器(变址、基址、堆栈指针,指令指针)、段寄存器、地址寄存器AR组成,用于形成操作数的有效地址EA。 *1.地址加法器:将地址寄存器的内容与偏移量相加形成变址、基址、相对等寻址方式和段寻址后的实际地址EA; *2.地址寄存器 AR:保存当前CPU所访内存单元的地址,需保持到读/写操作完成,是CPU的地址出口,外接AB; *3.地址寄存器组:由专用地址寄存器(变址寄存器、基址寄存器、堆栈指针,指令指针)组成,用于提供形成操作数的有效地址EA时所需的基准地址。,三、指令执行过程和信息通道的建立:,1.取指: 2.分析指令: 3.执指:例1、 LDA R0,2

7、050H 读内存过程: 例2、 STA 2050H,R0 写内存过程:,AB DB (IP)=AR = MAR =MAD =MM =MDR = DR =IR IP+1 =IP CS=1,WE=0 CB,CB IR(OP)= ID = CU = Ck(控制信号),AU AB DB IR(D)=AR = MAR =MAD =MM =MDR = DR =R0 CS=1,WE=0 CB,AU AB DB IR(D)=AR = MAR =MAD =MM =MDR = DR =R0 CS=1,WE=1 CB,三、指令执行过程和信息通道的建立:,3.执指:例3、 ADD R0,2050H,AU AB DB

8、IR(D)=AR = MAR =MAD =MM =MDR = DR = CS=1,WE=0 CB DR =DR2 = ALU (M=0;CN=1;S3S0=1001;) = R0 ;同时状态=F R0 =DR1 不同的指令的执指过程就是:根据不同的指令要求在运算器中建立特定的数据通路来完成相应的操作和运算的过程。,5.2 指令周期(CPU时序) 一. 指令周期的基本概念,1. 计算机的工作过程: 程序存储过程 *1. 利用输入设备将程序按序写入内存; *2. 给出PC或IP首址(所执行程序的第一条指令的地址)并启动计算机; *3.计算机自动执行程序:,1. 计算机的工作过程: 程序控制过程,*

9、1. 根据PC或IP的指向去内存取指IR,同时PC+1PC形成下一条指令地址。称为取指过程; *2. 根据所取指令的OP码完成指令分析,形成控制信号。称为指令分析过程; *3.形成操作数的地址, 访问存储器读取操作数并送运算器加以处理,同时回送结果。称为执指过程; *4. 重复上述过程,直到停机为止,完成程序执行;,2. CPU的多级时序系统:,指令周期:CPU取出并执行一条指令所需的时间(其间完成一系列规定操作其实质是建立指令规定的数据通路),不同指令的执指过程不尽相同,故指令周期长短不一。指令周期取指周期 间址周期(形成地址) 执行周期, 其流程为:,2. CPU的多级时序系统:,机器周期

10、(CPU周期或称总线周期):CPU完成一种基本操作所需的时间;基本操作可分为:取指操作;形成地址操作;存储器读/写操作;I/O接口读/写操作;运算操作等。每个机器周期由若干个时钟周期组成,一般以取指为基准(34个时钟周期);CPU内部以节拍电位Mi来区分该周期,每个机器周期M所需的T数相同; 时钟周期(T周期):CPU完成一种最小操作(微操作)所需的时间,CPU利用该周期完成如寄存器的传送、数据和地址信息的锁入、门控信号的形成等微操作,用于形成数据通路。,二.典型的指令周期及执行过程:,1.非访存指令: 该类指令在执行过程中不访问内存; 指令周期2个机器周期(取指、执指); 其寻址方式均为隐含

11、寻址或寄存器寻址; 例如:CLA R0;R00。 取指周期:从PC送出地址开始CU形成控制信号为止。 T1:PCARABMAR;PC+1PC形成下一条指令地址; T2:CPU根据高位地址形成CS,同时WE=0启动存储器的读过程; T3:MMMDRDBDR;从主存读出指令送CPU; T4:DRIRIDCU;分析指令,形成控制信号;,二.典型的指令周期及执行过程:,1.非访存指令: 指令执行过程:完成IR中指令OP码所规定的微操作序列的过程,对于不同指令的过程不尽相同,且与寻址方式有关。 *1. 对于CLA R0 指令,在一个机器周期(T1T4)中完成执指: R0DR1; R0DR2; ALU做“

12、” 运算,结果R0; *2. 对于转移等程序控制类指令:例 JMP D 指令,在一个机器周期(T1T4)中完成执指: IR(D) PC 或IP ; *3. 其它类似指令:INC、NOT、NEG,二. 典型的指令周期及执行过程:,2.直接访存指令: 该类指令在执行过程中需要再次访问内存,故需3个机器周期。取指+形成地址+取数并运算。如:ADD R0,D。 取指周期: 同非访存指令; 形成地址过程: 在一个机器周期中完成将指令中的D送AR的作用;或者将某些专用地址寄存器的内容与D相加后形成有效地址AR;前者为直接寻址,后者为变址、基址、相对等寻址方式;,二. 典型的指令周期及执行过程:,取数和运算

13、过程:例 ADD R0,D T1:ARABMARMM;送地址MAR; T2:CPU根据高位地址形成CS,同时WE=0,启动存储器读操作过程 T3:从主存中读出数据MDRDBDR; T4:DRDR2,R0DR1;控制ALU加;结果R0; 存数指令的执行指令过程:例 STA D,R0 T1:ARABMAR、送地址MAR;同时 R0DRDBMDR、送数据MDR ; T2:CPU根据高位地址形成CS;同时WE=1,启动写过程; T3:MDRMM; T4:不起作用。,三. 时序的控制方式与时序发生器:,1.关于时序的基本概念: 微操作:实现指令功能所必须的最小操作(即寄存器一级的操作,如寄存器的选通、封

14、锁和门控等操作); 时序:微操作执行的时间序列称为时序,例如WE=0应在每个指令周期的第一个机器周期的T2有效。 2.控制器的时序控制方式: 控制器控制与产生微操作时序的方式(微操作控制信号Ck在 何时产生或有效的规律)。,同步控制方式(以时定序,无应答机制的方式),对于指令系统中的每条指令,其执行所需的CPU周期数和时钟周期数均事先约定,其实现方法为: *1. 采用完全统一的机器周期执行不同的指令,如:全部指令的指令周期取指+分析指令(形成地址)+执指(取数并运算)+存结果,其特点为:以微操作序列最长的指令为标准确定所需的节拍数和T数,对微操作序列短的指令可空着一部分时序不用;,T1 T2

15、T3 T4,T1 T2 T3 T4,T1 T2 T3 T4,T1 T2 T3 T4,指令周期,机器周期M1 (取指),机器周期M2 (形成地址),机器周期M3 (取数运算),机器周期M4 (送结果),同步控制方式(以时定序,无应答机制的方式),对于指令系统中的每条指令,其执行所需的CPU周期数和时钟周期数均实现约定,其实现方法为: *2. 采用不定长机器周期的方式,即采用不同T数的机器周期完成不同的基本操作如取指4T,计算地址2T,取数运算4T,送结果3T等,可提高效率。,T1 T2 T3 T4,机器周期M1 (取指),T1 T2,机器周期M2 (形成地址),T1 T2 T3 T4,机器周期M

16、3 (取数运算),T1 T2 T3,机器周期M4 (送结果),指令周期,同步控制方式(以时定序,无应答机制的方式),对于指令系统中的每条指令,其执行所需的CPU周期数和时钟周期数均实现约定,其实现方法为: *3. 采用不定长指令周期,大部分指令给予短指令周期,少数指令信号给予长指令周期,如:非访存指令为两个机器周期,访存指令为3个或更多的机器周期。,T1 T2 T3 T4,T1 T2,T1 T2 T3 T4,T1 T2 T3,IN R0 指令周期,机器周期M1 (取指),机器周期M3 (运算),M3(取数运算),机器周期M4 (送结果),T1 T2 T3 T4,T1 T2,M1(取指),ADD

17、 R0,D指令周期,T1 T2 T3 T4,T1 T2,机器周期M1 (取指),STA D, R0 指令周期,机器周期M2 (形成地址),M2(形成地址),异步控制方式(以序定时,有应答机制的方式),根据具体指令的具体要求,分配给不尽相同的执行时间。其实现方法为: *1. 根据具体指令的需要,要多少节拍就产生多少节拍,如访问慢速存储器的异步机器周期,在T3检查READY,若无效,则插入Tw; *2. 指令执行完毕,须发应答信号,控制器收到后才能进入下一条指令或操作的执行。,T1 T2 T3 Tw Tw Tw Tw Tw Tw T4,READY=0 0 0 0 0 0 1 ,机器周期M1(取指)

18、,3. 时序的产生与时序发生器:,时序由CU根据TU提供的时标信号综合产生; 时序发生器的作用是将振荡器提供的串行CLK脉冲转换成空间上独立输出的节拍电位(用于表示不同的机器周期)和节拍脉冲(用于表示不同的时钟周期),为CU提供CPU周期和时钟周期的区分信号(时标); 时序发生器的结构: 采用模K计数器、译码器、启停控制逻辑、时钟源构成节拍发生器.,TU结构图,TU时序图,5.3 微程序设计技术和微程序控制器 一、微程序控制器的基本概念,1.微程序控制器的设计思想: 将指令的执行过程分解为若干步基本操作来完成,每一基本操作由一条微指令的执行来实现;每条微指令由若干个微命令组成;每条微命令完成计

19、算机的一个最小操作(微操作); 完成一条指令功能所需的微指令序列称为微程序;每条指令均由相应的微程序与其对应; 将整个指令系统的微程序全部存放于控制器中专设的控制存储器中,该存储器称为控制ROM或简写为CM; 执行指令即相当于执行CM中相应的微程序,完成基本操作即相当于执行微指令。,一、微程序控制器的基本概念,2.微程序控制的有关基本概念: 微操作:指令执行所必须完成的最小操作,如:DBIR,PC+1PC,R0R1;注:微操作均为数据或信息的传送操作,各种运算和处理在传送过程中加以实现; 微命令:组成微指令的最小单位,是微操作的驱动信号,如:门控电位、寄存器的打入、置位、复位脉冲等,一个微命令

20、完成一个微操作; 微指令:在同一CPU周期中同时执行的所有微命令的集合,由CM提供,控制ROM的每一个存储单元存放一条微指令; 微周期(机器周期):执行一条微命令所需的时间,对应于节拍电位周期; 微地址:微指令在CM中存放的位置; 微程序:在指令周期中顺序执行的微指令序列。,二、微指令的格式及编码要求:,1.典型的微指令格式(二字段格式): 操作控制部分(微命令字段)+顺序控制部分(下址部分)。 控制部分:产生和提供微命令的部分,其长度视CPU操作所需的微操作数量决定,一般有几十几千位之多; 顺序控制部分(下址):提供下一条微指令的地址,在下一拍寻址,由CLK驱动,其长度由整个指令系统的全部微

21、程序的微指令数决定。,二、微指令的格式及编码要求:,2.微指令的编码要求与编码方法: 编码要求:以最小的控制ROM容量存放微程序,以最快的速度保证微程序的正确执行; *1. 有利于缩短微指令的长度(容量性); *2. 有利于减少CM的单元数(容量性); *3. 能同时完成的微操作尽量安排在同一微指令中,以利于加快执行速度(速度性); *4. 有利于微指令的修改和扩充,增加微程序的灵活性(通用性)。,二、微指令的格式及编码要求:,2.微指令的编码要求与编码方法: 编码方法: *1. 直接表示法(非编码方法):指令的编码为水平型微指令格式,采用1位微命令激励一条控制线(1有效,0无效),计算机需要

22、多少种操作,控制部分就设计多少长,直接将微命令集合存放于CM,该方法简单明了,但字太长,特点是速度快,属并行方式;,二、微指令的格式及编码要求:,2.微指令的编码要求与编码方法: 编码方法: *2. 字段编码法:将控制部分段,各段内采用直接编码方法,其目的为了缩短微指令的速度,便于存储。 编码原则: 将互斥的微命令分在一组,相关的则分在不同组,然后分组编码后存储; 执行时需分组译码,形成真正的控制信号,但需留出一个全零状态表示不发任何操作。,二、微指令的格式及编码要求:,3.控制存储器容量的计算: 例题1:假设某CPU的指令系统有250条指令,每条指令由8个CPU周期组成,其中取指微指令是所有

23、指令共享的。已知每条微指令的微操作的部分为80位,试求控制ROM的容量为多少?(单元数字长) 解:单元数=指令数(机器周期数-1)+1=250*(8-1)+1=1751 字长=控制部分+下址部分=80+11=91 例题2:假设某CPU的指令系统有100条指令,每条指令的微程序由5条微指令组成,其中取指微指令是所有指令共享的。系统共有1000种不同的微操作,并可分成互斥的10组,试求控制ROM的容量为多少?(单元数字长) 解:单元数=指令数(机器周期数-1)+1=100*(5-1)+1=401 字长=控制部分+下址部分=10*7+9=79,三、微程序控制的组成与微程序的执行过程,1. 微程序控制

24、器的结构和组成: CM(控制ROM)、IU(微指令部件)、AU和AR、 AD (微地址部件)。 * 1. 操作控制存储器CM(控制ROM): 存储整个指令系统所有指令对应的微程序,共用取指微指令,每个微程序的入口地址由相应指令的译码信号决定; * 2. IU微指令部件: 微指令寄存器IR和微指令分段译码器ID; 其中IR的 控制部分分成若干段,分别由各段译码器译码后输出微命令,其中一部分用于CPU内部控制,另一部分通过CB总线输出用于系统控制,微地址部分(下址)送微地址形成部件,形成下址;,三、微程序控制的组成与微程序的执行过程,*3. 微地址部件 ( AU和AR、 AD ) : 提供微地址和

25、微程序入口地址。下址的形成: RESET后指向取指微指令; 取入指令后由指令译码器提供相应微程序的入口地址; 在微程序中由微指令的下址部分提供微程序内的微指令地址; 在微程序中的最后一条微指令的下址指向取指微指令。,三、微程序控制的组成与微程序的执行过程,2.微程序的执行过程: 从1号微地址开始,取出取指微指令执行,完成取指操作,PCAR内存DRIR; ID对IR中的OP码译码后形成取入指令对应的微程序入口地址; 逐条取出该段微程序执行,最后一条微指令的下址指向控存的1号微地址; 重新开始取指过程,取出下一条指令后再执行对应的微程序。, A D, A U, A R,ID,ID IR,下址 状态

26、标志 RESET,IU,IU,IR,CB(CK1 CKn),DB,微地址部件,控存 CM,5.5 流水线技术,一、指令执行方式的种类:顺序执行、重叠执行、流水线执行。 1. 顺序执行方式:指令内外均采用串行执行的方式,如: 指令1 指令2 特点为: 就整个程序而言是顺序执行,就一条指令而言,其内部各操作也顺序执行; 控制简单,但速度慢,CPU资源、总线利用率低。,5.5 流水线技术,2. 重叠执行方式:多条指令不同节拍(基本操作)可同时执行的方式;特点为: 就每条指令而言,其内部操作顺序执行,就相邻两条指令而已,其某些操作是同时(并行)执行的; 指令周期不变,但从整个程序的执行速度看,得到了提

27、高; 若处理器中所有部件均重叠执行,则演变为流水线方式。,5.5 流水线技术,3. 流水线方式:将指令的执行过程分解为若干个子过程,分别由处理器内部不同的处理子部件(硬件)去并行执行的方式,如:,5.5 流水线技术,二、流水线组成与流水线特点: 1. 流水线的组成: 由多个不同的处理器部件组成,每个部件完成一种基本操作。如分成:取指(IU、CU)、形成地址(AU)、取数(BU)、运算(ALU)、回送(WU部件); 每条指令的执行时间为T,子过程执行时间为T,则每隔t=T/5,从流水线上流出一条指令,,5.5 流水线技术,二、流水线组成与流水线特点: 2.流水线的结构: 流水线中各分处理部件由处

28、理部分+锁存器构成,以使各功能部件具有缓冲作用,成为完全独立的功能部件; 每个子过程还可以分解成更小的子过程,即在功能部件内部再采用流水线结构(称为超流水线),如将浮点运算器内部采用3级超流水线:,5.5 流水线技术,二、流水线组成与流水线特点: 3.流水线的特点(与顺序方式比较): 流水线中处理的任务必须是连续的,这样才能使流水线发挥最大效率,而重叠方式则不必连续; 各功能段的处理时间ti尽可能相等,若不等,则可采用短段合并、长段拆分方式尽量使各段的ti均等; 若实在不等,则取maxti作为 t,否则将形成流水线堵塞和断裂现象; 流水线启动和结束时需要装入时间和排空时间,只有当流水线满的时候

29、,效率最高。,5.5 流水线技术,三、流水线中的访存冲突和相关处理(阻塞): 访存冲突(资源冲突): 冲突原因:取指、取数同时使用总线和内存; 解决方法: *1. 采用先行控制技术(设置指令预取队列和指令缓冲寄存器 ,即将IR 设置成队列栈),利用总线空闲时间预取指令; *2. 采用1级Cache分体(指令缓存+数据缓存)的哈佛结构; *3. 采用多体交叉存储技术(只要指令与数据不在同一体内即可) 相关问题(关联阻塞):,5.5 流水线技术,JR NC LOOP,5.5 流水线技术,三、流水线中的访存冲突和相关处理(阻塞): 相关问题(关联阻塞): 控制相关:阻塞形成的原因在于执行转移指令、中

30、断指令,特别是条件转移时引起指令流水线阻塞。 其解决方法为: *1. 重启流水线(效率降低); *2. 采用分支预测技术,猜对高效,猜错重返分支点,重启流水线; *3. 采用分支预取,插入NOP指令。,5.5 流水线技术,三、流水线中的访存冲突和相关处理(阻塞): 相关问题(关联阻塞): 数据相关:阻塞形成的原因在于写回在后,读取在前,即前指令中的结果地址后指令中的取数地址,该现象称为数据相关,阻塞=寄存器相关,存储器相关。 解决方法为: *1. 设置相关旁路通路,当阻塞时,取数不从内存中取,而是从数据处理部件的出口取出。 *2. 流水线的级数与阻塞的关系:当流水线级数为2级时不存在阻塞,级数越高,阻塞越严重,如P4的20级流水线。,5.6 流水线技术进阶,提高计算机处理能力的基本思路: 提高存储器性能的主要技术措施: 采用高性能部件; 采用分级存储技术; 采用多体交叉存储技术(并行存储技术)。 提高CPU性能(指令执行速度)的主要措施: 采用高速芯片(0.25、0.18、0.13)提高主频使时钟周期、机器周期、指令周期缩短; 采用好的算法和设计更好的功能部件,如:多位乘/除方法、RISC技术; 减少执行过程中的节拍数,增加微操作的并行度; 改进指令的执行方式:采用重叠执行方式和流水线方式,取代原有的顺序执行方式或采用多处理器系统替代原有的单处理器系统。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1