第5章部分习题参考答案
5.1 解释下列术语
?一次重叠-执行第K条指令与分析第K+1条指令在时间上重叠。这是最简单的重
叠方式。
?单功能流水线-只能完成一种运行或处理功能的流水线。
?多功能流水线-在同一时间或在不同时间能够完成两个或两个以上功能的流水线。
可分为静态和动态流水线。
?静态流水线-在同一时间内流水线只能以一种方式工作。可以是单功能,也可以是
多功能。
?动态流水线-在同一时间内流水线可以连接成不同的功能子集,以完成不同的运算
或处理功能。
?非线性流水线-在流水线的各功能部件之间存在着反馈(或前馈)回路的流水线。
?全局性相关-进入流水线的转移指令(特别是条件转移指令)与后续指令之间引起
的相关。这种相关引起的范围是全局性的。
?局部性相关-只发生在相邻或相近的几条指令之间的相关,其影响范围是局部性的。
它包括主存资源相关和寄存器数据相关。
?先行控制-包括缓冲技术和预处理技术。通过对指令流和数据流的预处理和缓冲,
尽量使指令的分析部件和执行部件独立工作,提高其利用率。
?先写后读相关-若顺序指令i(写)先于指令j(读)对同一寄存器访问,由于异步流
动可能使得指令j先于i之前执行。
?先读后写相关-若顺序指令i(读)先于指令j(写)对同一寄存器访问,由于异步流
动可能使得指令j先于i之前执行。
?写与写相关-若顺序指令i(写)先于指令j(写)对同一寄存器访问,由于异步流动
可能使得指令j先于i之前执行。
?向量流水技术-向量数据表示与流水技术的结合。
?超标量处理机-在处理机内重复设置多套功能部件组成多条流水线,以保证在一个
时钟周期内同时发送两条或两条以上指令。
?超长指令字处理机-利用编译技术将多条可并行执行的打住组成一条超长指令,实
现多个微操作的并行执行。
?超流水线处理机-将流水线的各功能段细分成更多(一般大于或等于8)的子功能
段,利用程序的并发性,使指令解释过程中的每个微操作在更短的时间内完成。以保证一个时钟周期可分时发送多条指令。
5.4 (题目略)
【解】(1)K与K+1之间存在寄存器R1先写后读相关(RA W)
K+1与K+2之间存在寄存器R0写与写相关(WA W)
K与K+1之间存在寄存器R0先读后写相关(WAR)
(2)前2种相关会引起流水线的停顿。
(3)流水线完成这3条指令的时空图如下图所示,共用了9个时钟周期。