TLB Multi-Hit 交互演示
同一个 VA 如何同时命中 2MB 和 4KB 两条 TLB entry —— 并行掩码比较机制
← 上一步
下一步 →
📡 广播 VA
↺ 重置
VA:
点击"下一步"开始。
当前查找的虚拟地址 (VA)
VA[47:21] → 2MB tag
VA[20:12] → 4KB 额外位
VA[11:0] → 偏移(不比较)
0x00000000000
0xFFFFFFFFFFF
2MB(蓝)
包含
4KB(橙) —— VA 同时落在两者之内
TLB 中的 4 条 entry(各自带 tag 和 size 掩码)
VA 同时广播到所有 entry —— 同一时钟周期,不是逐个遍历!
↙
↓
↓
↘
同一个 VA 同时命中 2 条 entry
—— 因为 2MB 范围包含 4KB 范围,两者是包含关系。
硬件消解(架构定义):
•
BBML2
:要么 TLB conflict abort(实现定义),要么返回与某一条 entry 完全一致的结果;
•
BBML3
:只能返回一致结果,
abort 被禁止
;
• 两者都
绝不融合
(不会把旧 OA + 新权限拼在一起)。
软件收尾:调用者做
最终 TLBI
把新旧 entry 一起清掉。
改 VA 试试:0x20000000(只命中2MB) / 0x12399778(只命中4KB) / 0x50000000(零命中)