课后题 组成原理 虚拟存储器 解答题
第 38 题

某个 Cache 的容量大小为64KB, 行长为128B, 且是4路组相联 Cache, 主存使用32 位地址,按字节编址。 1 ) 该Cache 共有多少行?多少组? 2 ) 该 Cache 的标记阵列中需要有多少标记项?每个标记项中标记位长度是多少? 3 ) 该 Cache 采用LRU 算法,若当该Cache 为全写法Cache 时,标记阵列总共需要多大 的存储容量?回写法又该如何?(提示:4路组相联Cache 使用LRU 算法的替换控 制位为2位。) 03 . 某计算机有容量为256B 的 数 据Cache, 主存块大小为32B。现 有 如 下C 语言程序段:int i,j,c,s,a[128];for(i=0;i<10000;i++)for(j=0;j<128;j=j+s)c=a[j];int 型数据用32位补码表示,编译器将变量i,j,c,s 都分配在通用寄存器中,因此,只需 考虑数组元素的访存情况,假定数组起始地址正好在一个主存块的开始。请回答:1 ) 若Cache 采用直接映射方式,则当s=64 和s=63 时,缺失率分别为多少?2 ) 若Cache 采用2路组相联映射方式,则当s=64 和 s=63 时,缺失率分别为多少?04. 【2010统考真题】某计算机的主存地址空间大小为256MB,按字节编址。指令 Cache 和数据Cache 分离,均有8个Cache 行,每个 Cache 行大小为64B, 数据 Cache 采用直 接映射方式。现有两个功能相同的程序 A 和 B, 其伪代码如下所示:程序 B:a[256][256];程序A:inta[256][256];int 03 . 某计算机有容量为256B 的 数 据Cache, 主存块大小为32B。现 有 如 下C 语言程序段: int i,j,c,s,a[128]; for(i=0;i<10000;i++) for(j=0;j<128;j=j+s) c=a[j]; int 型数据用32位补码表示,编译器将变量i,j,c,s 都分配在通用寄存器中,因此,只需 考虑数组元素的访存情况,假定数组起始地址正好在一个主存块的开始。请回答: 1 ) 若Cache 采用直接映射方式,则当s=64 和s=63 时,缺失率分别为多少? 2 ) 若Cache 采用2路组相联映射方式,则当s=64 和 s=63 时,缺失率分别为多少?

[tag_link]

C