问题
单项选择题
设某流水线计算机主存的读/写时间为100ns,有一个指令和数据合一的Cache,己知该Cache的读/写时间为10ns,取指令的命中率为98%,取数的命中率为95%。在执行某类程序时,约有1/5指令需要存/取一个操作数。假设指令流水线在任何时候都不阻塞,则设置Cache后,每条指令的平均访存时间约为______。
A.12ns
B.15 ns
C.18ns
D.120ns
答案
参考答案:B
解析:已知取指令的命中率为98%,取数的命中率为95%。在执行某类程序时,约有1/5指令需要存/取一个操作数。根据题意,每条指令的存取时间=平均取指时间+平均存取数时间。根据公式:
平均存取速度=Cache存取速度×Cache命中率+主存存取速度×失效率得出:
(98%×10 ns+2%×100 ns)+1/5×(95%×10 ns+5%×100 ns)=14.7 ns≈15 ns(这里要注意题中条件的各单位与最后计算结果的单位要一致)