虚拟地解决了Cache

时间:2016-09-11 14:15:02

标签: caching cpu-architecture virtual-memory cpu-cache

缓存大小和页面大小之间的关系

关联性和页面大小如何限制虚拟地址缓存架构中的缓存大小?

特别是我在以下声明中寻找一个例子:
如果C≤(page_size x associativity),则缓存索引位仅出现 来自页面偏移量(虚拟地址和物理地址相同)。

1 个答案:

答案 0 :(得分:0)

出于这个原因,英特尔CPU多年来一直使用8路关联32kiB L1D和64B线路。页数为4k,因此页面偏移量为12位,与构成缓存行中的索引和偏移量的位数完全相同。

有关如何让缓存避免像PIPT缓存这样的混叠问题的更多详细信息,请参阅“L1也使用速度技巧,如果它更大则不会起作用”段in this answer,但仍然如此快VIPT缓存。

这个想法是页面偏移下面的虚拟地址位已经是物理地址位。因此,以这种方式工作的VIPT缓存更像是一个PIPT缓存,可以自由转换索引位。