题目条件:假设CPU执行某段程序时,共访问Cache命中2000次,访问主存50次。已知:Cache的存取周期为50ns,主存的存取周期为200ns。求Cache-主存系统的命中率。
Nc = 2000, Nm= 50
cache 主存系统的平均访问时间
ta = h *tc + (1-h) *tm
访问效率
其中tc指命中时间的cache访问时间, tm为未命中时的主存访问时间,1-h为未命中率
分析:由于题设条件中并没有提到平均访问时间,而且平均访问时间需要自己求取。所以只能通过题目的其他条件来进行运算。题目中提到,主存的存取周期为200ns,cache的存取周期为50ns。从这个条件可以看出访问主存的时间是访问cache时间的4倍(主存存取周期200ns/cache存取周期50ns=4)。设访问cache的时间为t,则平均访问时间可以用h*t+(1-h)*4t来表示。将数据代入公式很容易就知道t作为一个不确定的变量,是能够直接约掉的。