一个64位字长的机器,按字寻址,一个字8字节,一个块四字,Cache有64块,主存256k字节,(a) 在直接映射方式下,设计并画出主存地址格式,并给出 Tag, Index 和 Offset 的 bit 位 (b) 在四路组相联映射方式下,设计并画出主存地址格式,并给出 Tag, Index 和 Offset 的 bit 位 (c) 在全相联映射方式下,设计并画出主存地址格式,并给出 Tag, 和 Offset 的 bit 位,请设计 Cache 地址格式,给出详细的 步骤和思路:
时间: 2023-06-26 12:07:46 浏览: 116
(a) 在直接映射方式下,主存地址格式为 18-bit,其中高 10-bit 为 Tag,中间 6-bit 为 Index,低 2-bit 为 Offset。Cache 地址格式为 6-bit,其中高 2-bit 为 Tag,低 4-bit 为 Index。
(b) 在四路组相联映射方式下,主存地址格式为 18-bit,其中高 10-bit 为 Tag,中间 4-bit 为 Index,低 4-bit 为 Offset。Cache 地址格式为 8-bit,其中高 2-bit 为 Tag,中间 4-bit 为 Index,低 2-bit 为 Offset。步骤如下:
1. 将主存地址的 18-bit 分成 10-bit 的 Tag、4-bit 的 Index 和 4-bit 的 Offset。
2. 将 Index 的四个组中的每组包含 16 个块,每个块包含 4 个字。由于四路组相联,因此每个组中会有四个块与之对应,即四个 Tag 相同的块。
3. 将 Cache 地址的 8-bit 分成 2-bit 的 Tag、4-bit 的 Index 和 2-bit 的 Offset。其中,Tag 和 Index 与主存地址的 Tag 和 Index 相同,Offset 相同。
4. 根据 Index 找到对应的组,然后在该组的四个块中查找与 Tag 相同的块,如果找到则为命中,否则为不命中。
(c) 在全相联映射方式下,主存地址格式为 18-bit,其中高 10-bit 为 Tag,低 8-bit 为 Offset。Cache 地址格式为 12-bit,其中高 10-bit 为 Tag,低 2-bit 为 Offset。步骤如下:
1. 将主存地址的 18-bit 分成 10-bit 的 Tag 和 8-bit 的 Offset。
2. Cache 中的每个块都可以存储任意一个主存块,因此不需要 Index。
3. 将 Cache 地址的 12-bit 分成 10-bit 的 Tag 和 2-bit 的 Offset。其中,Tag 和主存地址的 Tag 相同,Offset 相同。
4. 根据 Tag 找到对应的块,然后在该块中查找与 Offset 相同的字,如果找到则为命中,否则为不命中。
阅读全文