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.
您好、TI 专家!
我们 打算 在铁路应用中使用 TI MCU TMS570LC4357 for SIL3证书。 我们已查看 TMS570LC4357的数据表、我们注意到在 TMS570中有两个 MCU 在工作。 R5F 是主 MCU、而 R4F 是备用 MCU。 双核 MCU 如何工作?
我想知道 主 MCU R4F 是否出现故障、会发生什么情况? 我们的软件会崩溃还是软件会继续正常运行?
我在阅读产品说明书后可以想到以下2种情况:
情况1:R5F 失败、R4F 将立即接管并继续运行软件、同时发出一个错误标志
情况2: R5F 失败、R4F 将立即 停止运行软件、同时发出错误标志
如果情况1是实际情况、我们需要在应用层做什么、以确保当 R5F 中出现任何故障时备用 MCU R4F 可以接管? 还是默认情况下触发、并且对于应用层软件是透明的?
请提供建议并回答。
您好、 Alex Lee、
在 Hercules 器件(包括 TMS570LC4357)中不会有任何备用 CPU 概念。
是的、有两个 CPU、但是这里一个 CPU 被称为主 CPU、而另外一个 CPU 被称为校验器 CPU。 我们不能以不同的方式对它们进行编程(它们始终运行同一个应用)、并且两个 CPU 将始终以锁步模式功能运行。
锁步是双 ARM Cortex-R5F CPU 的运行模式。 器件具有一个称为 针对 Cortex-R5F (CCM-R5F)的 CPU 比较模块 。 在 CPU 锁步模式期间、 这个 CCM-R5F 在每个 CPU 时钟周期内比较两个 CPU 的输出。 任何不正确的比较都会被标记为严重程度最高的错误。 这个模块也在每个周期内比较锁步中的两个 VIM 的输出。
两个处理器在系统启动期间初始化为相同状态、并接收相同的输入、因此在正常运行期间、每个时钟的状态相同。
任一处理器中的错误都将导致两个处理器的状态存在差异、最终会表现为输出的差异。 CCM-R5F 模块监测两个处理器的输出、并在出现差异时标记错误。
更多详细信息、 请参阅 TRM:
--
谢谢。此致、
Jagadish。
Jagadish、您好!
非常感谢您的提示回复。
我给大家做了非常详细的讲解、或多或少的了解了双核 MCU 机制是如何工作的。 我还有与此相关的另一个问题
两个处理器中的一个错误将导致两个处理器的状态不同,这将最终表现为输出的差异。 CCM-R5F 模块监控两个处理器的输出并在出现差异时标记错误。
如果出现 CCM 差异错误、CCM-R5F 会执行什么操作? CCM-R5F 是正常运行还是只在那里停止? 这对我们来说非常重要,因为我们在汽车行业中,我们不希望软件在出现差异时停止驾驶和监控整个系统。 因为它对我们的产品构成潜在的巨大安全风险。
R5F MCU 是否有任何情况忽略 CCM 差异错误并继续运行? 也可能让校验器 MCU 接管控制权?
请提供帮助。
非常感谢、
亚历克斯
尊敬的 Alex:
[报价 userid="529835" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1281488/tms570lc4357-tms570lc4357-dual-mcu-working-mechanism---how-does-the-backup-mcu-work/4858872 #4858872"]如果出现 CCM 差异错误,CCM-R5F 将如何处理? CCM-R5F 是否正常运行,还是只是在此处停止?如果有任何差异、CCM-R5F 将仅向 ESM (错误信令模块)模块发送一个错误信号。 器件永远不会停止、因此需要借助软件处理程序根据应用需求来实现对错误的适当响应。
--
谢谢。此致、
Jagadish。