描述
CPU通常在启用MMU和分支预测的情况下运行。如果处理器在此条件下运行任何大量时间,则BTAC(分支目标地址高速缓存)将包含分支预测。
如果然后禁用MMU,但是分支预测保持启用,则这些陈旧的BTAC条目可以使处理器对读敏感位置进行推测性指令提取。
这违反了ARM体系结构参考手册中记录的有关推测性提取的ARMv7体系结构规则。
解
影响:
|
次要。 CPU主要用于启用MMU。通过下一节中列出的简单解决方法也可以防止该问题。
|
解决方法:
|
在禁用MMU之前,通过执行BPIALL(使整个分支预测阵列无效)操作,然后执行DSB,使BTAC中的所有条目无效。
另一种可能的解决方法是在禁用MMU时禁用分支预测,并在重新启用MMU之前保持分支预测禁用。 |
受影响的配置:
|
使用CPU的系统。
|
受影响的器件版本: | 所有。没有计划修复。参考 (Xilinx答复47916) – Zynq-7000 SoC芯片版本差异答复记录。 |
修订记录
2013年3月新。
没有回复内容