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.

[参考译文] TMS570LS3137:ESM 中断

Guru**** 2526700 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1552928/tms570ls3137-esm-interruption

器件型号:TMS570LS3137


工具/软件:

大家好、我们的芯片在操作期间触发了 ESM 中断。 触发源为 RAM 偶数组 (B0TCM)。 安全手册要求在出现异常存储器自检时关闭系统。 是否有任何硬件或软件解决方案可以避免或减少异常内存自检? 内存自检异常的可能原因是什么?

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

    您好 Liu、

    能否请您尝试清除一次 ESM 错误并查看它在清除后是否发生、我的意思是它是一次还是重复:

    您可以通过以下 e2e 将其清除:

    (+)【常见问题解答】TMS570LC4357:如何将 ESM 错误引脚设置为高电平 — 基于 Arm 的微控制器论坛 — 基于 Arm 的微控制器 — TI E2E 支持论坛

    --
    此致、
    Jagadish。

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

    由于此故障发生在产品现场操作期间、我们不允许执行清除操作。 但是、电路板卡在重启后可以正常运行、因此很可能只出现一次。 现在我们想知道如何避免这个问题。

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

    您好 Liu、

    我们以前从未遇到过这个问题。

    得到的是哪个 ESM 错误、我是指 RAM 一位错误或双位错误。

    此外、我们需要根据错误验证这些地址寄存器的 single-bit 或 double-bit。

    如果找到地址、则可以检查映射文件、并可以验证访问相应地址的条件。 我们可以编写一个代码、然后可以访问并查看相应位置是否真的损坏。 如果它在硬件级别损坏、那么对于相应地址的每次访问、我们都应收到 ESM 错误。

    --
    此致、
    Jagadish。

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

    这是一位 错误、因为当我们读取寄存器时、我们会看到触发中断的通道、如下图所示

    无法重现此错误。 对芯片重新供电将使其能够正常运行

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

    尊敬的刘鹏:

    道歉对于延迟、很难得出此类问题的确切根本原因、但是我使用了我们的 (TI) 内部 AI 工具来查找可能的根本原因和解决方案、并得到了一些有用的信息。 因此、请验证一次此信息。

    1. 硬件解决方案:
    • 使用 DMA 进行存储器清理以高效检测和校正一位错误 (1)
    • 使用 DMA 时、启用 IP1ECCERREN 寄存器的 IP1_ECC_KEY 字段以正确记录 EPC 模块中的一位错误 (1)
    • 确保 MPU 设置中正确的存储器保护和访问配置 (1)
    1. 软件解决方案:
    • 使用 CPU 读取或 DMA 传输实现周期性存储器清理、以提前检测错误 (1)
    • 启用具有适当配置的错误检测和校正 (EDAC) 模式:
      • 适当地设置 single-bit 错误阈值(例如,阈值= 1 以进行立即通知)(1)
      • 启用错误分析 (1)
      • 在控制寄存器中配置适当的错误检测和校正设置 (1)
    1. 内存自检异常的可能原因:
    • 硬件相关:
      • 影响内存稳定性的电源问题 (2)
      • 环境因素(温度,电磁干扰)
      • 物理内存单元降级
    • 软件相关:
      • 内存保护配置不正确 (1)
      • 与缓存相关的问题(在禁用缓存解决内存问题的某些情况下会出现)(3)
      • ECC 配置设置不正确 (1)
    1. 预防措施:
    • 针对 single-bit 和 double-bit 错误实施适当的错误处理例程
    • 使用 SECDED(单错校正双错检测)功能 (1)
    • 定期清理内存、以在错误累积之前检测并校正错误 (1)
    • 正确的系统初始化和错误检测机制配置 (1)
    1. 监控和调试:
    • 使用 EPC(错误分析和控制)模块跟踪错误发生情况 (1)
    • 监控 ESM 标志是否有一位和双位错误 (1)
    • 实施正确的错误记录和报告机制

    对于安全手册要求在存储器自检异常时关闭系统的特定情况、您应该:

    1. 配置 ESM 模块以正确检测和报告错误
    2. 使用 DMA 实现周期性存储器清理以提高效率 (1)
    3. 设置适当的错误阈值并启用错误分析 (1)
    4. 在检测到严重错误时实施正确的关断序列

    --
    此致、
    Jagadish。