Cache和主存的映射方式
下面所提到的字指的是存储字,与容量密切相关。
直接映射
主存:
区 | 块 | 字 |
---|
Cache:
块 | 字 |
---|
- 计算出主存、Cache的总位数。
主存:区+块+字
Cache:块+字 - 计算出Cache块的位数
主存块的位数==区的位数 + 块的位数 - 主存块的位数 == Cache块的位数
- 区的位数==主存总位数 - 字的位数 - 块的位数
全相联映射
主存:
块 | 字 |
---|
Cache:
块 | 字 |
---|
- 计算出主存、Cache的总位数。
主存:块+字
Cache:块+字 - 计算出主存块、Cache块的位数
总位数 - 字位数
组相联映射
几路组相联就是每组多少块
主存:
区 | 块 | 字 |
---|
Cache:
组 | 块 | 字 |
---|
- 计算出主存、Cache的总位数。
主存:区+块+字
Cache:组+块+字 - 计算出Cache组的位数
主存块的位数==区的位数 + 块的位数 - 主存块的位数 == Cache组的位数
- 区的位数 == 主存总位数 - 字的位数 - 块的位数
Cache块的位数 == Cache总位数 - 字的位数 - 组的位数