主存对应的cache租号怎么求

时间:2020-08-17 18:00:18 作者:zuhao

一个组相联映射的Cache,有128块,每组4块,主存共有16384块,每块64个字,则主存地址共几位,要详细分配?

20位。 先将Cache分组,组数=128/4=32,故Cache组地址占5位,块内地址占6位,块地址占两位,故Cache地址共5+6+2=13位。主存=16384*64=2^20字;故按字编制,主存地址为(20)位。 由于采用的是第一种组相连映射,即组相连映射关系为:i=j mod Q(i为Cache组号,j为主存块号,Q为Cache组数,故组地址为(5位)(如果按字节编址,块内地址位数增1,Cache地址位数增1,主存位数也增1) 。 如果采用第二种全相连映射方法,则先将主存按照Cache大小分区,共128个区,故区号占7位,再将每个区分组,每个区内的组数和Cache的组数相等(32组)故组地址占5位,每组有4个块,故块地址为2位。 块内地址同第一种全相连映射方法中块内地址长度相同,主存地址=区号+组号+组内块号+块内地址.故按字编址,主存地址=7+5+2+6=20(位)(按字节编址时块内地址为6位,故主存地址为21位)Cache地址=组号+组内块号+块内地址=5+2+6=13位(按字节编址时为14位)。

设主存为1MBCache容量为16Kb块大小为512B采用直接映像写出aCche和主存地址的格式……(2)块表容量大小?

主存1MB,为2的20次方,故主存地址为20位,cache为16kb为2的14次方,故cache地址位为14位,由于块大小为512B为2的9次方,故块内地址为9位,由于使用直接映射方式,综上可得出,cache的地址结构为 :cache块号(14-9 = 5位)+ 块内地址(9位);

主存的地址结构为:主存块号(标记字段6位 + cache块号5位)+块内地址(9位);

得出这些后由于cache块号为5位,因此有2的5次方个单元数量,由于每个单元中存放的是块标记,因此,块表容量为6*2的5次方的容量。

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现主存对应的cache租号怎么求有涉嫌版权的内容,欢迎发送邮件至:2145784@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。