首页 > 试题广场 >

假定Cache命中率为90%,请计算该Cache的平均存取时

[问答题]

某计算机字长32位,主存地址32位且按字节编址,4路组相联Cache的数据存储空间容量为32KB,Cache数据块大小为4个字(16字节),每个数据块包括1位有效位和4位修改位(每个字用1位修改位来表示该字是否被修改)。

1. Cache分多少组?

2. Cache的地址标记(tag)是多少位?

3. Cache的总容量是多少?

4. 若Cache的存取时间是5ns,Cache访问缺失时,主存使用块传送方式把数据传送至Cache,第一个字的存取时间为65ns,其后每个字的存取时间为10ns,此时Cache等待直到块传送结束后,再从Cache读取数据。假定Cache命中率为90%,请计算该Cache的平均存取时间。

1.一块是4字也就是16B,32KB/16B为2K块,四块一组就是512组
2.32-log16-log512=19
3.一位有效位,四位修改位,加上地址标记位19,共24位,其中一共有2K块,则为24bit*2K,最后再加上存储空间的32KB
4.首先一块是四个字,当命中时候就是5ns,不命中首先需要写入一块,65ns+(4-1)*10ns,然后写完后重新读出又需要65ns,当cache命中率为0.9的时候,则平均需要5ns*0.9+[65ns+(4-1)*10ns+65ns]*0.1
编辑于 2021-09-15 18:22:15 回复(0)
1.512组
2.32-9-4=19
3.***里有2048个主存块,2048*(19+1+4)bit+32KB=38KB
4.Cache的平均存取时间:5ns*0.9+(65ns+(16-1)*10ns)*0.1=26ns(不是很确定)
发表于 2018-09-03 10:46:24 回复(1)