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:HALCOGEN 生成的 RAM ECC 测试

Guru**** 2030840 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/822515/tms570ls3137-ram-ecc-test-generated-by-halcogen

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

您好!

请参阅第3.4节 http://www.ti.com/lit/an/spna126/spna126.pdf 文档、通过更改 RAM 数据位来测试 RAM ECC。 但是、HALCOGEN 生成的代码会切换 ECC 位来验证 RAM ECC 逻辑。

我尝试检查了 SPNA126文档第3.4节中提到的 RAM ECC 功能。观察是当我修改 RAM 存储器中的一个位时、由于我已经禁用了内核中的 ECC 生成、所以相应的 RAM ECC 应该不会改变。 但我可以在内存浏览器中看到、当更改 RAM 内存内容时、RAM ECC 内存会自动校正。

是否有 SPNA126文档中提到的任何示例代码?

谢谢、

Kalyan

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

    您好 Kalyan、

    第3.4节没有示例代码、但您可以修改 通过 HALCoGen 为第3.4节生成的代码(checkB0RAMECC 或 checkB1RAMECC)。

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

    您好、Wang、

    感谢您的回答。 我尝试了第3.4节中解释的程序来测试 RAM ECC 功能。

    我观察到、当破坏 RAM 数据位时、即使我在破坏 RAM 数据位0之前通过调用"_coreDisableRamEcc_()"来禁用 RAM ECC、ECC 也会自动得到更正。

    可以帮助我解决此问题吗?

    谢谢、

    Kalyan  

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

    每次写入 RAM 时、也会写入相应的 ECC 值。  "_coreDisableRamEcc_()"函数仅禁用 CPU 对读取访问时的 ECC 错误的响应(写入访问时没有 ECC 检查)。

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

    您好、Sunil、

    感谢您的回答。 如何按照 第3.4节中介绍的步骤测试 RAM ECC?

    是否可以更改 RAM 数据位并禁用 ECC 生成?

    谢谢、

    Kalyan

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

    您好 Kalyan、

    正如我提到过的、CPU 在每次写入时都会写入正确的 ECC 和数据。 在这种情况下、测试 ECC 错误的唯一方法是根据需要使用单位或双位错误来破坏 ECC 数据。 CPU 对这些 ECC 错误的实际响应是相同的、无论错误是在数据中还是在 ECC 中。

    此致、Sunil