今日头条
条件
1. Cortex-A72 配置为针对 UC 逐出传输事务不发送任何数据。这是通过将 L2ACTLR[14] 设置为 1b0 来实现的。该位的默认值为 1'b1。
2. Cortex-A72 配置为向外部推送无数据逐出传输事务。这是通过将 L2ACTLR[3] 设置为 1b0 来实现的。该位的默认值为 1b1。
3. Cortex-A72 针对处于 UC 状态的缓存行发出无数据逐出传输事务(即 SnpClean、SnpShared 或 SnpUnique 传输事务)。
4. Cortex-A72 发出逐出传输事务,并等待来自互连对象的完成响应 (COMP)。
5. 互连对象发出 COMP,随后又向同一缓存行地址发出嗅探请求。
6. 由于互连中存在争用条件,Cortex-A72 先接收到嗅探请求,后接收到 COMP。
解决方案
影响:
如果满足上述条件,则可能发生数据损坏。
变通方法:
有多种变通方法可选:
选项 1:
将 Cortex-A72 配置为针对 UC 逐出传输事务发送数据。这可通过将 L2ACTLR[14] 设置为 1b1 来实现。
选项 2:
将 Cortex-A72 配置为禁止向外部推送清除 (Clean) 或逐出 (Evict) 传输事务。
这可通过将 L2ACTLR[3] 设置为 1b1 来实现。
受影响的配置:
具有 Arm Cortex-A72 (APU) 的所有 Versal 器件。
解决方案:
请参阅此第三方勘误表 (Arm, Inc. 854172)。
审核编辑 黄昊宇
全部0条评论
快来发表一下你的评论吧 !