一.CPU的功能和组成
1.CPU的功能
指令控制 操作控制 时间控制 数据加工
2.CPU的基本组成
运算器和控制器是组成CPU的两大核心部件。
控制器: 由程序计数器,指令寄存器,指令译码器,时序译码器,操作控制器组成。
控制器的功能: 从指令cashe中取出一条指令,并指出下一条指令在指令cache中的位置。
运算器功能:执行所有的算术运算;执行所有的逻辑运算,并进行逻辑测试。
CPU模型图
3.CPU中的主要寄存器
(1)数据缓冲寄存器(DR):数据缓冲寄存器用来暂时存放ALU的运算结果。
(2)指令寄存器(IR): 指令寄存器用来保存当前正在执行的一条指令。
(3)程序计数器(PC): 在程序开始执行前,必须将他的起始地址及程序的第一条指令所在的指存单元地址送入PC,因此PC的内容及是从只存提取的第一条指令的地址。当执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。
(4)数据地址寄存器(AR):数据地址寄存器用来保存当前CPU所访问的数据存储器单元的地址,由于要对存储器阵列进行地址页码,所以须须使用地址寄存器来保持地址信息,直到一次读或写操作完成。
(5)通用寄存器
(6)程序状态字寄存器(PSWR)
4.操作控制器与时序产生器
通常把许多寄存器之间传送信息的通路称为数据通路。在各寄存器之间建立数据通路的任务是由称为操作控制器的部件来完成的。
根据设计方法不同操作控制器可分为时序逻辑和存储逻辑两种。时序产生器的作用就是对各种操作信号实施时间上的控制。
二.指令周期
1.指令周期:是取出一条指令并执行这条指令的时间。由于各种指令的操作功能不同,因此各种指令的指令周期是不同的。
2.间址周期:发出指令中的形式地址,读出有效地址。
3.指令周期常常用若干个CPU周期数来表示,CPU周期又称为机器周期,又叫做工作周期。通常用内存中读取一个指令字的最短时间来规定CPU周期。
4.指令字长等于机器字长等于存储字长。
三.流水CPU
1.流水CPU的时空图
指令周期包括四个子过程:
取指令(IF).指令译码(ID).执行运算(EX)
结果写回(WB)
2.流水线中的主要问题
发生三种相关冲突: 资源相关,数据相关和控制相关。
(1)资源相关
是指多条指令进入流水线后,在同一机器时中周期内征用同一个功能部件所发生的冲突。解决冲突的办法:一是第I₄条指令停顿一拍后再启动。二是增设一个存储器将指令和数据分别放在两个存储器中(增加一个功能部件)
(2)数据相关
如果必须等前一条指令执行完毕后才能执行后一条指令,那么这两条指令就是数据相关的。
三类数据相关冲突:写后读(RAW)相关,读后写(WAR)相关,写后写(WAW)相关
解决办法: 一是可以推后后继指令对相关单元的读操作。二是设置相关的直接通路。
(3)控制相关
引起原因:转移指令
解决办法:延迟转移法。转移预测法。
3.例题