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.

[参考译文] TMS570LC4357:安全机制的可靠性

Guru**** 2463330 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1083528/tms570lc4357-reliability-of-safety-mechanisms

部件号:TMS570LC4357

尊敬的各位先生:

我们在内部讨论了我们希望在安全关键型应用中使用的所有可用功能的机制。

我们最终禁用了所有组1中断,只是因为我们不希望它们干扰 CPU 的正常运行,因为我们会忽略错误(不管怎么说,代码正在执行)。 我们决定只对状态字进行投票并记录任何事件。

但是,对于组2,这是不可设置的。 所有 ESM 组2事件都将触发事件。

我的一位同事问:“那么,我们如何保护系统不会因无法修复的问题而不断中断?” 我采取了行动来问你们。

是否有任何关于如何防止 ESM 和其他事件处理程序(如 dabort,UNDEF 等)可能产生的竞争条件的建议?

请提前感谢。

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

    Txema,您好!

    你是对的。 ESM Group2错误始终会生成高优先级中断,且不可编程。  当多个例外同时发生时,它们将按固定的优先级顺序进行服务:重置--数据中止-- FIQ -- IRQ --预取-- UNDEF 和 SVC。

    在继续执行用户程序之前,将依次处理每个异常。 在进入所有例外情况时,IRQ 被禁用,在进入 FIQ 并重置时,IRQ 被禁用。

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

    谢谢王。

    您是否知道 ESM Group 2故障会产生如此多的 FIQ 中断以避免代码的正常执行,以及禁用这些中断会使系统正常工作的任何情况?

    我还有关于第3组的问题。 如果他们比第2组更关键,为什么他们不生产任何 FIQ?