This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RM57L843:当主闪存未被明确访问时、主闪存的已擦除部分发出 ECC 错误

Guru**** 2539500 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1164573/rm57l843-ecc-error-from-erased-part-of-main-flash-emitted-when-it-is-not-explicitly-accessed

器件型号:RM57L843

你(们)好

我们看到一个问题、它会发出 ESM 总线错误组2.3、EPC 表示该错误来自被擦除的闪存的一部分。

对于我们的特定情况、相关地址位于闪存组1 0x2999e0-0x2999ff 中。

  • 程序中没有任何部分直接访问这些闪存存储器位置。
  • 将 MPU (即使是对于较小的256字节区域)设置 为 DEVICE_NON共享 或 MUST_ORIAL_ORED 可解决此问题。 不理想、因为缓存已关闭、性能会受到影响。
  • 禁用 MPU 中的区域(闪存中间的256字节区域)也可以解决该问题。
  • 使用使所有 ECC 位有效的某个(0xff)对所有闪存进行编程也可以解决此问题。

我怀疑这与预测性预取有关。

您看到过这种情况吗?

如果是:

  • 根本原因是什么
  • 是否有更好的解决方案不需要写入所有闪存?

注意我们已将其他闪存区域(8MB)的勘误表 L2FMC#5作为 DEVICE_NONSHARED、因为我们也使用 FEE、但仔细阅读后、似乎还要求主闪存相同。您能否澄清此勘误表的措辞、请参阅。

这种费用的使用是否会成为一个复合因素。

谢谢

标记