问题
单项选择题
已知某高速缓存cache采用组相联映像方式,即组间直接映像,组内全相联映像。假设主存容量为4096块,每块256B,高速缓存包含32块,分8组,每组4块。高速缓存的地址变换表应包含 (72) 个存储单元;每个存储单元应能存放 (73) 位二进制数;每次参与相联比较的是 (74) 个存储单元。
A.4
B.8
C.12
D.16
答案
参考答案:A
解析: 有关理论知识,请阅读试题22~24的分析。
在本题中,已知主存容量为4096×256=1MB字节编址,由于220=1MB,所以主存地址应为20位。主存分为4096/32=128个区,每个区分为8组,每组4块。因为27=128,所以区号需要7位地址,组内块号地址为2位。
高速缓存的地址变换表(块表)应包含32个存储单元,每个存储单元的长度为主存地址区号长度加上组内块号地址长度,即9位二进制数。因为主存中的各页与cache的组号有固定的映像关系,但可自由映像到对应的cache组中的任一块,所以每次参与相联比较的是4个存储单元。