首页 > 试题广场 >

命中 Cache 的次数是( )。

[单选题]

假设某计算机按字编址,Cache 有八行,采用二路组相联, Cache 和主存之间交换的块大小为 1 个字。若 Cache 的内容初始为空,采用 2 路组相联映射方式和 LRU 替换算法,当访问的主存地址依次为 0, 4, 8, 2, 0, 6, 8, 6, 4, 8 时,命中 Cache 的次数是( )。

  • 1
  • 2
  • 3
  • 4
推荐

此题目的意思是***的每行是一组,每组(即每行)中有两个块,那么
0 4 8 2 0 6 8 6 4 8  对应的组是
0 0 0 2 0 2 0 2 0 0
N N N N N N Y Y N Y (其中N为未命中,Y为命中)
则命中***的次数一共有3次。
编辑于 2017-07-12 17:19:34 回复(2)
组号=块号 mod 组数。此处应该将***有4行理解为***分为4组,“采用 2 路组相联映射方式”表示每组内有2个寄存器。所以该***的大概模型如下:
==========
|         |        |  第0组
==========
|        |         | 第1组
==========
|        |         | 第2组
==========
|        |         | 第3组
==========
例如:8的组号为0,所以,8应该存到第0组依次类推,2、6存到第2组
根据组相连定义,需要对***的每组分别进行LRU。
具体吗过程如下图:(→↓)

发表于 2017-02-16 16:12:58 回复(5)
高赞明明画了8行***,题意4行,每组两行,按字编址,02468可知为16位字长编址,地址号%4余0的一组余2的一组
编辑于 2019-11-15 18:12:09 回复(0)
这是2012年的考题,当时命题组采用的是蒋老师的教材中的方式,所以主存地址为0~1、4~5、8~9可映射到第0组cache中,而主存为2~3、6~7可映射到第1组cache中:
命中3次。
相信大家有疑惑都是因为采用的的唐朔飞老师所编教材中的方式,与此题不符,不过听说现在都统一采用唐朔飞老师的版本了
发表于 2021-09-18 14:46:50 回复(0)