问答题 设主存容量为256K字,Cache容量为2K字,块长为4字。
问答题 设计Cache地址格式,Cache中可装入多少块数据?
【正确答案】Cache容量为2K字,块长为4=22字,则Cache块数为2K/4=512=29。所以表示块号需要9位,表示块内地址需要2位。地址格式如图2所示。
[*]

图2 Cache地址格式

分析:主存容量为256K=218字,那么所需主存地址长度为18位。
组相联映射中,主存地址低位到高位划分为3部分:块内字地址、组号、标记,该3个字段位数分别为
块内字地址=log2(块大小)
组号=log2(Cache组数)
标记=主存地址的其余位
【答案解析】
问答题 在直接映射方式下,设计主存地址格式。
【正确答案】直接映射方式可以看作组相联映射中的一种极端情况,即一个块就是一个组。所以组数=块数=512,则
块内字地址=log2(块大小)=log2(4)=2
组号=log2(Cache组数)=log2(512)=9
标记=主存地址的其余位=18-9-2=7
直接映射方式地址格式如下图3所示。
[*]

图3 直接映射方式地址格式
【答案解析】
问答题 在4路组相联映射方式下,设计主存地址格式。
【正确答案】4路组相联,即每组4块,又由1)知一共有512块,则组数=512/4=128。那么
块内字地址=log2(块大小)=log2(4)=2
组号=log2(Cache组数)=log2(128)=7
标记=主存地址的其余位=18-7-2=9
4路组相联地址格式如图4所示。
[*]

图4 4路组相联接地址格式
【答案解析】
问答题 在全相联映射方式下,设计主存地址格式。
【正确答案】全相联映射方式也可以看成组相联映射中的一种极端情况,即只有一个组。则
块内字地址=log2(块大小)=log2(4)=2
组号=log2(Cache组数)=log2(1)=0
标记=主存地址的其余位=18-0-2=16
全相联映射方式地址格式如图5所示。
[*]

图5 全相联映射方式地址格式
【答案解析】