ZHDZ010F March 2022 – May 2026 AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1
突发读取期间发生单错误检测时,返回给主机的数据不正确
当正在进行的多拍突发读取操作期间检测到单比特错误时,RAM 控制器会遇到时序问题。虽然 RAM 控制器中的 ECC 模块正确地纠正了存储器中的错误,但 ECC 模块与 RAM 控制器总线协议逻辑之间的握手时序问题导致数据错位,从而使得在后续的读取节拍中,返回给请求主机(R5F、DMA、PRU-ICSS、CPDMA、HSM-M4)的数据不正确。
因此:
此问题仅影响 L2 和 MBOX RAM 的读操作。
物理 RAM 中的内容保持正确纠正状态(无存储器损坏),且写入操作功能正常。以下为简要方框图。

根据系统要求和安全需求,可考虑以下解决方案:
选项 1:ECC 禁用
仅适用于非安全应用:彻底关闭错误纠正码 (ECC) 功能。
选项 2:保守式错误处理
将系统配置为将所有单比特错误纠正 (SEC) 事件视为双比特错误检测 (DED) 事件。
这意味着即使对于可纠正的单比特错误,也只实现仅检测行为而不尝试纠正。
选项 3:预防性存储器擦洗
若上述方案不可行,则定期执行存储器擦洗以主动管理潜在错误:
在应用程序访问之前,系统地读取存储器位置以检测并纠正单比特错误。
实现方法:
有关 DMA 擦洗器,请参阅 SDK 参考示例
有关 PRU 擦洗器,请参阅 SDK 参考示例
重要限制:虽然擦洗操作可降低正常运行期间遇到错误的概率,但无法完全消除发生错误的可能性。