是的,这就是 VIPT 缓存的全部意义。由于虚拟地址和物理地址在低位上匹配(页偏移相同),因此不需要对它们进行翻译。大多数 VIPT 缓存都是基于此构建的(请注意,这限制了可用的集数,但可以增加它们的关联性),因此您甚至可以在找到 TLB 中的翻译之前使用低位在该缓存中进行查找。这很关键,因为 TLB 查找本身需要时间,而 L1 缓存通常被设计成尽可能提供更高的带宽和低延迟,以避免阻塞常常更快的执行。如果你错过了 TLB,并遭受更大的延迟(无论是某个 level2 TLB 还是一次页面行走),那么情况就不那么紧急,因为在比较标签之前你实际上不能在缓存查找中做任何事情,但是你在 TLB 命中 + 缓存命中情况下节省的几个周期通常会在许多应用程序中被认为值得优化和对齐流水线。