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.

[参考译文] TMS570LS1224:何时将设置 TCRAM 不可纠正的 ECC 错误位(ESM Group 3,通道3)并且不生成中止?

Guru**** 2544130 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1075491/tms570ls1224-when-tcram-uncorrectable-ecc-error-bit-will-be-set-esm-group-3-channel-3-and-no-abort-gets-generated

部件号:TMS570LS1224
“线程:HALCOGEN”中讨论的其它部件

您好,

我正在实施功能安全功能,并在 项目中增加了更多的自我测试。  
在 RAM 上运行 ECC 自检时 ,会设置 ESM 标志,当生成双位错误时,系统会进入中止状态,并且此行为符合预期,自检通过且系统开始运行。

我面临 的问题是:RAM 偶数组(B0TCM)- ECC 不可纠正错误位设置(ESM 组3,通道3),且未生成/报告异常中止(所有 RTOS 任务都在运行,没有任何问题),并且无法找到设置该位的原因以及设置该位的时间。 当通过调试器生成系统重置时,由于未清除 ESM 故障,该代码会滞留在启动代码中。  



希望 了解 此问题的确切根源并加以解决。  

谢谢。

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

    您好,

    RAM ECC 自检后,是否清除数据中止处理程序中的错误标志(ESM 状态恢复和 RAM 状态恢复)?  

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

    是的,我在 _dabort.asm 中使用 halogen 生成的代码_dabort 函数来处理它  

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

    是否可以进入_dabort 以确保清除错误标志并恢复 SRAM 的内容(翻转以生成 ECC 错误)?

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

    您好,王

    很抱歉耽误你的回答。

    我已验证您所说的内容,所有错误标志都已清除,SRAM 内容已恢复。 请参考下图。 谢谢

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

    您好,王

    在 L2L3Interconnect 和 DMA 上运行自检后,ESM Group 3寄存器将更新为值0x80。

    如下图所示,在运行  L2L3Interconnect 和 DMA 自检之前,FIQ 和 ESM 已初始化,这是否是问题?



    添加自检的功能定义



    DMA 自检





    只是认为这些信息可能有助于解决该问题