ARMv8/ARMv9的TLB深度学习

271 阅读1分钟

快速链接:


TLB里都有什么

在这里插入图片描述 在这里插入图片描述

TLB的查询过程

  • 匹配虚拟地址 :使用VA[48:N]去TLB中查询entry
  • 匹配translation regime
  • 匹配Address Space IDentifier (ASID) 或 该entry已经设置global了
  • 匹配Virtual Machine IDentifier (VMID)

MMU工作原理

  • 根据VA、ASID、VMID、current translation regime去L1 data TLB或L1 instruction TLB中去匹配
  • 如果L1 MISS了,则去匹配L2,同样是使用VA、ASID、VMID、current translation regime去匹配
  • 如果L2也MISS了,则执行hardware translation table walk,读取页表,进行地址翻译。注意页表不一定去内存中读,有可能缓存到了L2 Cache中。

 

关注"Arm精选"公众号,备注进ARM交流讨论区。

 

 

1138106487-65f6cf311889c.png