Zynq-7000 SoC,APU - L2缓存控制器可以预取4 KB边界,偏移设置为23

描述

当启用预取并且预取偏移量等于23(0x17)时,L2高速缓存控制器预取4 KB地址边界。这可能会导致系统问题,因为无论L1 MMU中的页面属性设置如何,这些缓存行填充都可以定位到新的4 KB页面的内存空间。

预取单元的偏移值可以设置为0到31,但为了避免跨4 KB边界进行预取,必须永远不要将其设置为23.默认值为0并允许预取下一个高速缓存行。

影响
不重要的。这个问题很容易避免。
解决方法:
Prefetch的偏移量(可以取0到31之间的值)不应该是23.默认值为0,这使得下一个捕获行可以被预取。
配置
受影响:
使用处理器L2缓存并启用预取的系统。
受影响的器件版本:
所有。没有计划修复。请参阅(Xilinx答复47916) - Zynq-7000 SoC芯片版本差异。

满足以下两个条件时会发生此问题:

*设置了一个预取启用位(辅助或预取控制寄存器的位[29:28])。

*预取偏移位编程为值23(5b10111)。
编辑 重设标签(回车键确认) 标为违禁 关闭 合并 删除

提问于 2018-07-31 14:47:52 +0800

这个帖子被标记为一个社区wiki

这个帖子是一个wiki(维基). 任何一个积分 >500的人都可以完善它