AR# 47563

Zynq-7000 SoC,APU — 当偏移设定为 23 时,L2 高速缓存控制器会跨越 4 KB 边界进行预取

描述

当预取启用而预取偏移值等于 23 (0x17) 时,L2 高速缓存控制器就会跨越 4 KB 地址边界进行预取。这可引起系统问题,因为高速缓冲行填充会选择一个新的 4 KB 存储器空间页面,不会顾及 L1 MMU 中的页面属性设置。

该预取单元的偏移值可在 0 至 31 之间进行设置,但为了避免跨越 4 KB 边界预取,千万不能将该值设定为 23。 默认值是 0,并可对下一个高速缓冲行进行预取。

解决方案

影响:
轻微。该问题很容易避免。
解决方法::
预取偏移值(其可取 0 至 31 之间的值)绝不能是 23。默认值是 0,其可对下一个捕捉行进行预取。
配置
受影响的:
使用处理器 L2 高速缓存并启用预取功能的系统。
受影响的器件修订版本:
全部。 无计划修复。参考 (Xilinx Answer 47916) - Zynq-7000 SoC 芯片版本差异。

 

在下列两种情况下会出现这种问题:

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

* 预取偏移位通过编程,支持值为 23 (5b10111)。

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
47916 Zynq-7000 SoC 器件:芯片修订差异 N/A N/A
AR# 47563
日期 06/13/2018
状态 Active
Type 设计咨询
器件