Cache 映射逻辑
Error parsing MDX
[next-mdx-remote-client] error compiling MDX:
Expected a closing tag for `<br>` (9:78-9:82) before the end of `tableData`
7 | | 映射方式 | 直接映射 (Direct Mapped) | 全相联映射 (Fully Associative) | 组相联映射 (Set-Associative) |
8 | | :--- | :--- | :--- | :--- |
> 9 | | **核心逻辑** | **固定位置**<br>主存中的一个块只能映射到 Cache 中的一个特定行。这是一种“多对一”的映射关系,简单但容易发生冲突。<br>地址计算:`Cache行号 = 主存块号 % Cache总行数` | **任意位置**<br>主存中的一个块可以映射到 Cache 中的任何一个空闲行。这是一种“多对多”的映射关系,灵活但硬件复杂。<br>查找方式:并行比较所有行的 Tag。 | **组内任意位置**<br>主存中的一个块先映射到一个特定的组,然后在该组内的任何一行存放。这是前两者的折中方案。<br>地址计算:`Cache组号 = 主存块号 % Cache总组数` |
| ^
10 | | **主存地址结构** | 分为三个字段:**Tag** (标记), **Index** (索引/行号), **Offset** (块内地址)。<br>Index 字段直接决定了其在 Cache 中的位置。 | 分为两个字段:**Tag** (标记), **Offset** (块内地址)。<br>无 Index 字段,因为它可以存放在任何位置。 | 分为三个字段:**Tag** (标记), **Set** (组号), **Offset** (块内地址)。<br>Set 字段决定了其在 Cache 中的组。 |
11 | | **Cache 结构** | 一个简单的线性数组。每个 Cache 行包含一个有效位、一个 Tag 和数据块。 | 类似于一个内容寻址存储器 (CAM)。所有 Tag 必须能被同时比较。硬件成本最高。 | Cache 被划分为多个组 (Set),每个组内包含多行 (Way)。在组内进行全相联查找。 |
More information: https://mdxjs.com/docs/troubleshooting-mdx
🧑🔧 See how to debug and solve most common MDX errors