指令周期:取出(解释)并执行一条指令所需的时间。
完成一条指令(一个指令周期)可分为:取指、分析、执行三个阶段。
指令流水技术:指令步骤的执行、提高处理器执行指令的效率。
(1)顺序方式 顺序串行执行,执行完一条指令后才取下一条指令。速度慢。效率低。
(2)重叠方式 解释完成当前指令就开始下一条指令的取值阶段
(3)流水方式 流水线周期:执行时间最长的一段
理论公式:
实践公式:
例题:指令流水线分为取值、分析和执行三个部分,三部分时间分别为2ns,2ns,1ns。流水线周期?100条指令全部执行完毕需要的时间?
按照公式计算:理论公式:(2+2+1)+(100-1)*2=203
实践公式:(3+100-1)*2=204
流水线的吞吐率和最大吞吐率:单位时间内流水线处理机流出的结果数。对指令来说就是单位时间内执行的指令数。
TP=指令条数/流水线执行时间
流水线加速比:S=不使用流水线执行时间/使用流水线执行时间
例题:指令取指2,分析1,取操作数3,运算1,写回结果2,该流水线最大吞吐率(1);输入10条指令,则流水线加速比为(2)。
(1)带入公式 ,
同时需要注意流水线周期为3,因此计算结果为
(2)S=不使用流水线执行时间/使用流水线执行时间
不使用:(2+1+3+1+2) *10=90
使用: (2+1+3+1+2)+3 *(10-1)=36
S=90/36=5:2