在大多数处理器中,为什么L1缓存的大小小于L2缓存的大小?
我无法完全掌握VIPT缓存中的同义词或别名的概念。
将地址拆分为:
在这里,假设我们有2个页面,其中不同的VA映射到相同的物理地址(或帧号)。
该VA的您做生意部分(位13-39),它们是不同的被转换到PA的PFN(位12-35)和PFN保持相同两者的VA的,因为它们被映射到相同的物理帧。
现在,两个VA的pageoffset部分(第0-13位)与它们要从特定帧访问的数据相同,没有相同。
由于两个VA的pageoffset部分相同,因此位(5-13)也将相同,因此索引或设置no相同,因此不应混叠,因为只有单个set或index no被映射到物理帧没有。
如图所示,第12位如何负责混叠?我不明白。
如果有人可以在地址的帮助下给出例子,那就太好了。
谢谢 。
这个问题是在本科计算机体系结构课程中有关虚拟内存的部分中提出的。助教和教授都无法充分回答这个问题,而且网上资源也有限。
问题:
假设处理器具有以下规格:
现在假设该处理器有一个 32KB L1 缓存,其标签是根据物理地址计算的。在计算与虚拟地址相对应的物理地址之前,缓存必须具有允许访问适当的缓存集的最小关联性是多少?
直觉:
我的直觉是,如果缓存中的索引数量和虚拟页面(也称为页表条目)数量可以被彼此整除,那么我们可以直接从缓存中检索物理页面中包含的字节,而无需计算物理页,从而提供小的加速。但是,我不确定这是否是正确的直觉,并且绝对不知道如何遵循它。有人可以解释一下吗?
注意:我计算出页表条目的数量为 2^19,如果这对任何人有帮助的话。