尊敬的
团队
很抱歉。我有一些问题,谢谢。
1。
如果启动自检通过、则为 sys_startup.c
我能解释一下 CPU 的硬件可以、我可以使用 ECC 和硬件 CRC
2.
当 CPU 运行时,自硬件检查的工作原理,它工作吗? 它是否需要软件触发器? 是自动检查吗?
3.
CPU 运行时,如果硬件错误,将发生什么
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.
尊敬的
团队
很抱歉。我有一些问题,谢谢。
1。
如果启动自检通过、则为 sys_startup.c
我能解释一下 CPU 的硬件可以、我可以使用 ECC 和硬件 CRC
2.
当 CPU 运行时,自硬件检查的工作原理,它工作吗? 它是否需要软件触发器? 是自动检查吗?
3.
CPU 运行时,如果硬件错误,将发生什么
请参阅安全手册附录 A。 CPU 部分列出了所有可能的诊断测试和诊断测试。 SRAM 和闪存部分包括针对闪存/SRAM ECC 的诊断测试。
例如、如果以下测试通过、则可信任 CPU 执行代码: CPU 自检、STC 自检、CCM 自检
STC 自检: 确保 CPU 自检控制器能够实际检测 CPU 内部的故障
CCM 自检:确保 CCM-R4F 按预期工作。
2.您是指 CPU 自检吗?
如果需要定期 STC 自检和 PBIST、请与您的评估员核实。 在大多数用例中、在引导时一次性执行就足够好了。 之后、用于 SRAM 的 CPU 锁步和 ECC 逻辑将执行连续诊断。
对于锁步内核、第二个内核持续执行与主内核相同的指令/代码、并且每个内核的输出通过内核比较模块(CCM-R4F)持续比较。 锁步诊断在加电复位后持续运行。 如果两个内核中的一个出现故障、则诊断(比较)将捕获此故障。 此外、代码执行被延迟2.5个周期来提供时间多样性、并且内核彼此翻转和旋转以提供物理多样性、并且每个内核都有一个专用的电源环来提供功率多样性。 这一概念经过了深思熟虑、许多认证实体已经审查并已被广泛接受。
在复位后 CPU 运行的第一个周期内、有必要执行一个短初始化代码、此代码将所有 CPU 寄存器设定为一个已知状态。 ( _coreInitRegisters_())
关于 PBIST、在启动时一次性执行证明了整个 RAM 的完整性。 在应用程序运行期间、SECDED 接管为活动诊断并防止/通知 RAM 出现的任何问题。 请注意、PBIST 不是设计为定期运行、因为它是一个破坏性测试。 需要在 sys_startup.c (_coreEnableRamEcc_())中启用 SRAM 的 ECC。