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.

[参考译文] TMS570LS0232:活锁上的错误响应是什么?

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/599273/tms570ls0232-what-is-the-error-response-on-livelock

器件型号:TMS570LS0232

我一直在研究有关主 SRAM 硬错误缓存和活锁(诊断 RAM2)的部分。

该文件指出:

"由于启用了 ECC 校正、校正后的数据值将存储在内部单入口硬错误高速缓存中、并重写到 SRAM、然后从 SRAM 中重新获取。  

单个指令及其数据可能不会有多个可纠正的错误。 如果检测到多个可纠正的错误、则可能会使硬错误高速缓存溢出并使处理器进入不可操作的活锁状态。 可生成活锁的情况包括:

•64位未对齐32位 Thumb-2指令提取中的两个单一位错误

•加载指令中的单个位错误(LDR 或 LDM)、后跟指令数据有效载荷中的单个位错误

我很难确定它到底意味着什么、因为处理器处于无法运行的"活锁"状态。  这是否意味着所有处理操作都停止?  这些是导致错误源"TCM - ECC 活锁检测"(组2、通道16)的错误、还是导致 RAM 组 ECC 不可纠正的错误(组3、通道3和组3、通道5)?  

如果是后者、那么中止(CPU)的作用是否只是为了停止处理并等待看门狗复位?

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

    我认为描述中的措辞有点太危言耸听、因为我认为 LIVELOCK 实例化中涉及的指令无法执行、这实际上意味着 CPU 无法正常运行。 响应是将 ESM 组2通道16 TSM-实时锁定检测标志置为有效、这反过来将导致一个 ESM 高级中断(NMI)、此时、由应用决定它的处理方式。 很多时候、适当的响应是热复位、因为这些错误通常是瞬态错误、并且会在热复位时消失。

    在这两个线程中有包括功能测试在内的附加信息:
    e2e.ti.com/.../569492