![微指令缓存的使用](https://linux22.com/image/1503944/%E5%BE%AE%E6%8C%87%E4%BB%A4%E7%BC%93%E5%AD%98%E7%9A%84%E4%BD%BF%E7%94%A8.png)
我最近了解到,Sandy Bridge 使用类似于 Netburst 中的执行跟踪缓存的微指令缓存。据我所知,许多较简单的 x86 指令(那些转换为 4 条或更少微指令的指令)都是由硬连线解码器解码的,无需微代码 ROM 的任何帮助,这是一个相当快速和简单的过程,不需要表查找。那么,为什么要缓存解码的微指令,然后在稍后查找它们,而解码器电路可以更轻松地转换它们。
缓存是否仅用于涉及微代码 ROM 查找的更复杂指令?还是其中涉及一些更高级的智慧。
我最近了解到,Sandy Bridge 使用类似于 Netburst 中的执行跟踪缓存的微指令缓存。据我所知,许多较简单的 x86 指令(那些转换为 4 条或更少微指令的指令)都是由硬连线解码器解码的,无需微代码 ROM 的任何帮助,这是一个相当快速和简单的过程,不需要表查找。那么,为什么要缓存解码的微指令,然后在稍后查找它们,而解码器电路可以更轻松地转换它们。
缓存是否仅用于涉及微代码 ROM 查找的更复杂指令?还是其中涉及一些更高级的智慧。