处理器中的指令执行分为5个阶段。指令提取(IF),指令解码(ID),操作数提取(OF),执行(EX)和回写(WB),这些阶段分别需要5、4、20、10和3纳秒(ns)。处理器的流水线实现需要在每对连续级之间延迟2 ns进行缓冲。可以考虑处理器的两种流水线实现: (i)分为5个阶段的幼稚管道实施(NP),以及
(ii)有效的流水线(EP),其中OF级id分为执行时间分别为12 ns和8 ns的OF1和OF2级。
EP在执行20条无危险的独立指令时,NP上的NP(达到小数点后两位)的加速为________________。
注意:此问题显示为数值答案类型。
(A) 1.50-1.51
(B) 1.51-1.52
(C) 1.52-1.53
(D) 1.53-1.54答案: (A)
说明:给定的指令总数(n)= 20
对于朴素的管道(NP):
Number of stages(k) = 5
Clock time (Tp) = max { (stage delay+buffer delay) } = { 7, 6, 22, 12, 5 } = 22 nsec
Execution time (Enp) = ( k + n - 1 )*Tp = ( 5 + 20 - 1 )*22 = 528 nsec
对于高效管道(EP):
number of stages(k) = 6 ( delay with 20 nsec stage is divided into 12 nsec and 8 nsec )
Clock time (Tp) = max { (stage delay+buffer delay) } = { 7, 6, 14, 10, 14, 5 } = 14 nsec
Execution time (Eep) = ( k + n - 1 )*Tp = ( 6 + 20 - 1 )*14 = 350 nsec
所以,
加速=(Enp)/(Eep)= 528/350 = 1.508
该解释由Mithlesh Upadhyay提供。
这个问题的测验