组相联映射怎么求租号
有一主存/Cache层次的存储器,其主要容量1Mb?
如果按字节编址,内存地址 1MB=2^20B,有20位,可分为1MB/16B=2^16块Cache总容量为64KB,可分为64KB/16B=2^12块(行)Cache的行长就是数据块大小16B=2^4B,所以块内地址有4位采用二路组相联映射,2^12行变为2^11(组)* 2(列),有2^11组,则组号字段有11位标志段Tag位数=20-11-4=5位即 标志段+组号段+块内地址段=5+11+4在主存的 10161H/16B=1016H=6+1*16+1*16^3=4118块10161H=0001 0000 0001 0110 0001B,对应上面的字段位数,可知组号为 000 0001 0110=2+4+16=22组,所以被映射到Cache的22组或者用 4118 mod 2^11 = 22组