软设里关于Cache的一个问题?

来源:百度知道 编辑:UC知道 时间:2024/05/30 10:42:09
容量为64块的Cache采用组相联的方式映像,字块大小为128个字,每4块为一组.若主存容量为4096块,且以字编码,那么主存地址应为几位?主存区号应为几位?

Cache容量:64*128=2^13,占用13位,同理可得一组占用9位,主存占用19位.
又因为主存地址=区号+地址,而地址位数应与一组的位数相同,所以我觉得主存区号应为19-9=10位.
然而参考答案确为19位跟6位,忘高手指点!!!

主存地址=主存高位地址+组内块号+组地址+块内地址。
这道题问的主存区号应该是“主存高位地址”。
1组4块,组内块号2位;
一共64/4=16组,组地址为4位;
块内地址7位;
主存高位地址=19-2-4-7=6。

回去再看看书。