单选题
一条指令的执行过程可以分解为取指、分析和执行3步,在取指时间t
取指
=3Δt、分析时间t
分析
=2Δt、执行时间t
执行
=4Δt的情况下,若按串行方式执行,则10条指令全部执行完需要______Δt;若按流水线的方式执行,则10条指令全部执行完需要______Δt。
【正确答案】
D
【答案解析】串行执行时,每条指令都需3步才能执行完,没有重叠。总的执行时间为:(3+2+4)Δt×10=90Δt。
按流水线方式执行,系统在同一时刻可以进行第k条指令的取指,第k+1条指令的分析,第k+2条指令的执行,所以效率大大提高了。我们平时用的流水线计算公式是:第一条指令顺序执行时间+(指令条数-1)×周期,而周期与3个步骤时间最长的保持一致,因此本题的计算结果为:9+(10-1)×4=45。