软件设计师6--流水线技术
考点1:流水线–概念
相关参数计算: 流水线执行时间计算、流水线吞吐率、流水线加速比、流水线效率
流水线是指在程序执行时多条指令重叠进行操作的一种并行处理实现技术。各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以提高各部件的利用率和指令的平均速度
考点2:流水线–流水线计算
上图答案:90;4;45
考点3:流水线–流水线吞吐率计算
上图答案:10/45
Δ
\Delta
Δt; 1/4
Δ
\Delta
Δt
例题:
1、下列关于流水线方式执行指令的叙述中,不正确的是(A)。
A、流水线方式可提高单条指令的执行速度
B、流水线方式下可同时执行多条指令
C、流水线方式提高了各部件的利用率
D、流水线方式提高了系统的吞吐率
2、将一条指令的执行过程分解为取指、分析和执行三步,按照流水线方式执行,若取指时间t取指=4
Δ
\Delta
Δt、分析时间t分析=2
Δ
\Delta
Δt、执行时间t执行=3
Δ
\Delta
Δt,则执行完100条指令,需要的时间为(D)
Δ
\Delta
Δt。
A、200
B、300
C、400
D、405
3、设指令流水线将一条指令的执行分为取指、分析、执行三段,已知取指时间是 2ns,分析时间是 2ns,执行时间是 1ns,则执行完 1000 条指令所需的时间为(C)。
A、1000NS
B、1998NS
C、2003NS
D、2008NS
专业名词解析:
流水线周期:一条指令执行中时间最长的一段,如本题为2ns
答案解析:
当使用指令流水线时,执行n条指令所需的时间,根据理论公式∶
T = 一条指令执行时间+(总指令条数 - 1) * 流水线周期
由题意,一条指令执行时间 = 2ns + 2ns + 1ns = 5ns;总指令条数为 1000 条;流水线周期为 2ns。那么执行完 1000 条指令所需要的时间 = 5ns + (1000 – 1) * 2ns = 2003ns