首页 > 试题广场 >

一个直接映射的Cache有128个字块,主机内存包含16K个

[问答题]
一个直接映射的Cache有128个字块,主机内存包含16K个字块,每个块有16个字,访问Cache的时间是10ns,填充一个Cache字块的时间是
200ns,Cache 的初始状态为空。
1)如果按字寻址,请定义主存地址字段格式,给出各字段的位宽;
2) CPU从主存中依次读取位置16-210的字,循环读取10次,则访问Cache的命中率是多少?
3) 10次循环中,CPU平均每次循环读取的时间是多少?

1)按字寻址,每个块有16个字,故字块内地址为4位。Cache有128个字块,故 Cache字块地址为8位。主存包含16K个字块,故主存地址总共14位。则主存字块
标记位数为14-8- 4=2 位。 主存字块标记2位 Cache字块地址8位 字块内地址4位 

2)Cache中每个块16个字,故16~210位置的字,按照直接映射可分别放入
Cache的第1~13块。由于Cache的初始状态为空,循环读取10次时,第一次循环
第16、32、48、64、…、208位置的字均末命***13次,其他位置均命中,后
面9次循环每个字都命中。故Cache的命中率为1-13/(195x10)=99.3%。
3)第一次循环需要填充Cache13次,访问Cache195-13=182次,总时间为
200nsx13+10nsx182=4420ms。其余9次循环只需访问Cache195次,总时间为195x10nsx9=17550ns。故平均访问时间为(17550ns+4420ns)/10=2197ns
发表于 2023-06-01 21:06:59 回复(1)