TLB查找如何同时比较所有键?
-
28-09-2020 - |
题
我正在阅读OS概念恐龙书,说:“TLB中的每个条目都包括两个部分:键(或标签)和一个值。当关联内存随项目呈现时,将项目与所有项目进行比较钥匙同时。“
我选中 tlb和数据缓存如何工作?,但它没有说出允许这种并行检查键的实现。
我在这里读取关于并行哈希表的内容: http://www.cs.cmu.edu/afs/cs/academer/class/15210-s12/www/lectures/lecture27.pdf
是基本的想法吗?插入键输出帧号,这可能是一个击中或错过?
解决方案
计算机硬件从根本上平行。即使是现代单个CPU核心是流水线的,意味着在同一时刻在时间内,CPU的一个物理部分正在发起指令的获取,另一个是解码稍前的获取指令,另一个是计算略微的新结果早期的解码指令,另一个是写回稍微早期计算指令的结果。
PU中的第1层缓存的一个原因如此小,并且每位存储器昂贵得多,就是地址的标签高速缓存部分被广播到多个高速缓存行,并且它们中的每一个都有一些独立的硬件逻辑,将此标签值与其自己的标签值并行进行比较,每个标签值都是独立计算的“标签与我有什么”或“它与我不匹配”。
不隶属于 cs.stackexchange