某计算机的主存地址位数为16位,按字节编址。假定数据Cache中最多存放32个主存块,采用2.路组相联方式,块大小为16B,每块设置了1位有效位。采用一次性写回策略,为此每块设置了1位“脏”位。请问: 设字长为4B,Cache起始为空,CPU从主存单元0

admin2018-07-17  30

问题 某计算机的主存地址位数为16位,按字节编址。假定数据Cache中最多存放32个主存块,采用2.路组相联方式,块大小为16B,每块设置了1位有效位。采用一次性写回策略,为此每块设置了1位“脏”位。请问:
设字长为4B,Cache起始为空,CPU从主存单元0,1,…,99,依次读出100个字(主存一次读出一个字),并重复按此次序读6次,问命中率为多少?

选项

答案由于每个字块有4个字,所以CPU的0,1,…,99字单元分别在字块0至24中,采用2.路组相联映射,字块0~字块15将分别映射到第0至第15组中;字块16~字块24将分别映射到第0至第8组中。但Cache起始为空,每一组有两个Cache块,因此当访问主存块16时不会将主存块0置换出。所以第一次读时每一块中的第一个字没命中,但后面5次每个字均可以命中。所以命中率=(6×100一25)/(6×100)=95.8%。

解析
转载请注明原文地址:https://jikaoti.com/ti/RAfjFFFM
0

相关试题推荐
最新回复(0)