TLB加速
TLB(Translation Lookaside Buffer,翻译后备缓冲器) 是MMU内部的一个小型硬件缓存,专门用于缓存最近使用过的PTE。它解决了每次地址翻译都需要访问内存读取页表的性能瓶颈。
工作原理:
- TLB使用VPN作为索引和标签,在TLB中查找PTE比在内存中查找快得多。
- TLB命中:直接从TLB中获取PPN,无需访问内存中的页表,将地址翻译延迟降低到几乎为零。
- TLB不命中:MMU需要访问内存中的页表读取PTE,然后将该PTE缓存到TLB中供后续使用。
TLB的组织结构与CPU缓存类似,通常为组相联设计。虚拟地址的VPN被分割为TLB索引(TLBI)和TLB标签(TLBT),用于在TLB中进行查找。
由于TLB利用了时间局部性(连续的地址翻译往往使用相同的页表项),其命中率通常非常高。TLB是现代处理器实现高效虚拟内存的关键硬件组件。