具有条件分支的程序在五阶段管道中的总执行时间

时间:2011-11-03 07:48:57

标签: conditional pipeline execution-time

CPU有一个五级流水线,运行频率为1 GHz。取指令 发生在管道的第一阶段。条件分支指令 计算目标地址并评估第三阶段的条件 管道。处理器停止在条件之后获取新指令 分支直到分支结果已知。程序执行10 ^ 9条指令 其中20%是有条件的分支机构。如果每条指令需要一个周期 平均完成,该计划的总执行时间为:

(A)1.0秒

(B)1.2秒

(C)1.4秒

(D)1.6秒

1 个答案:

答案 0 :(得分:0)

Total_execution_time = (1+stall_cycle*stall_frequency)*exec_time_each_inst

exec_time_each_inst = 1s [i.e @1ghz need to execute 10^9 inst =>  1 inst = 1 sec]

stall_frequency = 20% = .20

stall_cycle = 2 

[即在管道的第3阶段,我们知道分支结果,因此将有2个停顿周期]

因此Total_execution_time =(1 + 2 * .20)* 1 = 1.4秒

我不知道如何更好地解释它,但希望它有所帮助:)