1

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

(A) 1.0 秒

(B) 1.2 秒

(C) 1.4 秒

(D) 1.6 秒

4

1 回答 1

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 秒

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

于 2014-12-25T05:12:58.023 回答