TI E2E™ 设计支持论坛将于 5 月 30 日至 6 月 1 日进行维护。如果您在此期间需要技术支持,请联系 TI 的客户支持中心寻求帮助。

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:SRAM 诊断

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1045602/tms570ls3137-sram-diagnose

器件型号:TMS570LS3137
主题中讨论的其他器件:HALCOGEN

Hi,执行 SRAM 诊断时、调用以下安全诊断库的接口 sl_SelfTest_SRAM (SRAM_PAR_ADDR_CTRL_self_test、true、&failInfoTCMRAM)、并启用中断_enable_interrupt_()、

当程序执行到下面红色框中的语句时、程序会进入异常中断。 这可能是什么原因?

输入下面标识的异常中断代码

希望提供答案、谢谢。

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

    您可以在执行此自检之前禁用中断吗?

     disable_interrupt_()

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

    如果禁用、则中断正常。

    ,当我设置 SRAM 1位 ECC 故障注入时、还有另一个问题、如下面的代码所示、但 变量 SRAM_1bit_propof _faultJject_callback 始终为 F相 位。

    但是 变量 SRAM_1bit_propof _faultinject_callback 在  ESM_ApplicationCallback()函数。中设置为 true

    此 ESM_ApplicationCallback()函数由程序_expt_vec_abort_data()调用,中断程序也在 HALCOGEN 软件中启用,如下图所示,但我添加了打印信息,发现没有发生中断。 原因是什么? 是否有其他设置?

    非常感谢。

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

    注意到您的 HalCoGen GUI 中的项目被混乱。 您可以 通过在 Windows 设置中将字体大小更改为100%来更正它们:

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

    您是否在 文件 中声明了 SRAM_1bit_profile_faultject_callback:extern 布尔 SRAM_1bit_profile_faultject_callback;

    您需要启用 ESM 中断:

      

    然后启用 ESM 通道26/28

    并通过调用_enable_IRQ ()启用 IRQ;

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

    非常感谢,我的问题已经解决了。

    SRAM 的其他诊断,当我调用函数 sl_SelfTest_SRAM (SRAM_ECC_ERROR_SEARGING_2BIT、TRUE、&failInfoTCMRAM)时、返回值为 false、但 SRAM_ECC_ERROR_ENCELIT_1BIT 正常、测试通过。

    根据用户手册中的指令、SRAM_ECC_ERROR_ENCED_1BIT 和 SRAM_ECC_ERROR_ENCED_2BIT 分别是强制性的 SRAM 1位 ECC 错误测试和2位 ECC 错误测试、但不会生成 nERROR 和 ESM 中断。 那么、这两个参数的用途是什么?

    1位 测试通过、但2BIT 测试失败? 我的理解是、诊断中这两个参数的处理流程是相同的。 2位 ECC 测试是否有其他特殊设置?

    谢谢。

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

    您好、Xiaohong、

    您能否为新问题打开新主题?  

    该函数以不同的方式使用两个参数。 如果  SRAM_ECC_ERROR_ENCED_1BIT 为 true、则会注入1位 ECC 错误、但对于 SRAM_ECC_ERROR_ENCEVIT_2BIT、会注入2位 ECC 错误。

    如果发生2位 ECC 错误、CPU 将获得数据中止、并调用 ESM 回调函数。