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.

[参考译文] TMS570LC4357:当尝试对端口 A 和 B 运行诊断模式7以进行1位和2位错误注入时出现问题

Guru**** 2430380 points
Other Parts Discussed in Thread: TMS570LC4357

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1390280/tms570lc4357-problems-when-trying-to-run-diag-mode-7-for-port-a-and-b-for-1bit-and-2bit-error-injection

器件型号:TMS570LC4357

工具与软件:

各位专家、您好!

我们在获得 ECC 功能的诊断以便用于端口 A 和 B 时遇到一些问题

我们按照技术参考手册(第7.7.2.2节)中所述实现了诊断。 我们还查看了安全库(示例函数仅测试端口 A)。

我们尝试了以下内容:

测试函数加载到 RAM 中并从 RAM 中执行、我们将其调用 flashDiagMode7Test (testType、buffer)

当我执行以下操作时:

flashDiagMode7Test (1bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (2bitTest、0)// 0 =缓冲区 A

一切都按预期运行、但如果我像这样添加对端口 B 的测试

flashDiagMode7Test (1bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (2bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (1bitTest、4)// 0 =缓冲区 B
flashDiagMode7Test (2bitTest、4)// 0 =缓冲区 B

或以下内容:

flashDiagMode7Test (1bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (1bitTest、4)// 0 =缓冲区 B
flashDiagMode7Test (2bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (2bitTest、4)// 0 =缓冲区 B

缓冲区 B 测试失败。

通过调用这样的函数、我可以使其中一个缓冲区 B 测试正常工作

flashDiagMode7Test (1bitTest、4)// 0 =缓冲区 B
flashDiagMode7Test (1bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (2bitTest、0)// 0 =缓冲区 A
flashDiagMode7Test (2bitTest、4)// 0 =缓冲区 B -此处失败

但第二个缓冲区 B 测试失败。

您能否在末端验证缓冲器 B 可以并且应该被测试、以及它是否正常工作?

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

    尊敬的 Max:

    我正在处理您的问题、并将尽快为您提供我的更新。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Max:

    您能告诉我您在测试哪个存储器区域吗? 组0或组1或费用。

    您能否共享"flashDiagMode7Test"函数的定义?

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    对于1bit-Test、我们读取地址 0x00000008、对于2Bit Test、我们读取地址 0x00000016。地址应为 Bank-0。

    我将 通过个人信息给您发送一个代码示例。

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

    尊敬的 Max:

    感谢您的澄清和代码、我会尽快回复您。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Max:

    对于延迟、我深表歉意、因为我不太重视它、而且我还需要创建一个项目来测试花费时间的行为。

    我将在接下来的两天内尝试提供我的回复。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    有任何关于此问题的更新吗?

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

    尊敬的 Max:

    我对迟交答复的拖延深表歉意。

    今天、我在 TMS570LC4357中创建了一个项目、并针对端口 A 和端口 B 进行了测试 您可以更正未为端口 B 设置的 ESM 标志、给我更多的时间来分析和调试问题。

    ——

    谢谢、此致、
    Jagadish。

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

    你好、jagadish、

    运行诊断模式5测试、然后为端口 B 运行诊断模式7时。此时会设置端口 B 的 ESM 标志。
    这也许会有所帮助。

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

    尊敬的 Max:

    我对拖延解决这一问题深表歉意。 我上周在度假。 我将在接下来的两天内尝试通过解决此问题。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    有更新吗?

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

    尊敬的 Jagadish:

    您是否能够找到解决此问题的解决方案?

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

    尊敬的 Max:

    您是否找到了解决方案?

    对于延迟、我们深表歉意、

    这个问题需要至少4个小时的工作时间、我需要在这段时间内停止所有其他问题。 所以、无法处理它。

    今天或明天我将会工作并提供我的最新情况。

    感谢您的耐心。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Max:

    上周五、我花了5个小时来调试这个问题。

    我也执行了所有这些步骤、但仍然无法看到端口 B 的 ECC 错误

    因此、我想借用更多时间来找出根本原因。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    我通过运行 DIAGMODE=5 Test、然后测试端口 B、以测试端口 B 1位错误
    但之后、我只能再次测试端口 A。

    这可能有助于缩小问题的范围。

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

    尊敬的 Jagadish:

    有任何相关更新?

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

    尊敬的 Max:

    我再次通过执行所有指令来尝试 DIANMODE=7。

    您是对的、我真的无法触发端口 B 的 ECC 错误、我只能触发端口 A

    我在过去的线程中甚至没有发现任何与此相关的问题、我会尝试与 QJ 讨论一次、他在这些器件方面比我更有经验。

    下面是我的代码:

    e2e.ti.com/.../FEE_5F00_ECC_5F00_Errors_5F00_TEST_5F00_LC4357.zip

    我通过运行 DIAGMODE=5 Test、然后测试端口 B、成功测试了端口 B 1位错误
    但之后我只能再次测试端口 A。

    我还没有测试这个。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    我还没有查看您的代码、但我通过为每个测试运行 DIAGMODE-5诊断、成功地运行了对端口 B 的诊断。  
    它看起来是这样的:


     

    flashDiagMode5Test(); // Diagnostic FLA10
    
    flashDiagMode7Test( 1bitTest, 4) // 0 = buffer B
    flashDiagMode7Test( 1bitTest, 0) // 0 = buffer A
    
    flashDiagMode5Test(); // Diagnostic FLA10
    
    flashDiagMode7Test( 2bitTest, 4) // 0 = buffer B 
    flashDiagMode7Test( 2bitTest, 0) // 0 = buffer A

    出于某种原因、在为端口 B 运行 FLA11 (DIAGMODE-7)之前运行诊断 FLA10 (DIAGMODE-5)会使其工作。

    谢谢、此致、
    最大值

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

    尊敬的 Max:

    我刚刚创建了一个项目来测试 DIAGMODE-5 (F021F_FDIAGCTRL_DMODE_ADDR_TAG)、并将在明天尝试更新此项目。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    有更新吗?

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

    尊敬的 Max:

    我对因我的更新而造成的延误深表歉意。

    我通过运行 DIAGMODE=5 Test、然后测试端口 B
    、成功测试了端口 B 1位错误

    完全正确、我的意思是 DIAGMODE=5、那么端口 B 缓冲区也会触发地址标签错误。

    下面是我的结果:

    在上面的测试中、设置了端口 B 地址标签错误:

    在 ESM 明智的组3通道13被置位、这只不过是地址标签错误。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    在您进行 DIAGMODE=5测试后、端口 B 的闪存 ECC 测试是否正常工作。

    如上所述、我做了以下工作:

    flashDiagMode5Test(); // Diagnostic FLA10
    
    flashDiagMode7Test( 1bitTest, 4) // 0 = buffer B
    flashDiagMode7Test( 1bitTest, 0) // 0 = buffer A
    
    flashDiagMode5Test(); // Diagnostic FLA10
    
    flashDiagMode7Test( 2bitTest, 4) // 0 = buffer B 
    flashDiagMode7Test( 2bitTest, 0) // 0 = buffer A

    这样我也会得到 DIAGMODE=7的预计结果。

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

    尊敬的 Max:

    对我来说、即使在 DIAGMODE=5之后、端口 B 也无法正常工作。

    我将重试、如果我成功、我将发布更新。

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

    尊敬的 Jagadish:

    在 DIAGMODE=5测试期间、我们测试每个缓冲区、首先是端口 A 缓冲区0、然后是端口 A 缓冲区1、 端口 B 缓冲区0、 端口 B 缓冲区1、端口 B 缓冲区2、最后是 端口 B 缓冲区7。

    测试 端口 B 缓冲器7后、我们完成测试、然后 调用 flashDiagMode7Test 以获得  端口 B 缓冲器0。  

    您是否以这种方式尝试过?

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

    尊敬的 Max:

    在 DIAGMODE=5测试期间、我们首先测试每个缓冲区、先测试端口 A 缓冲区0、然后测试端口 A 缓冲区1 、 端口 B 缓冲区0、端口 B 缓冲区1、端口 B 缓冲区2、最后测试端口 B 缓冲区 7。[/QUOT]

    我甚至尝试了你提到的程序。 但我仍然收到 DIAG-7的仅 Porta 错误。

    我随附了我的项目供您参考、如果需要进行任何其他修改、请提供建议:

    e2e.ti.com/.../6330.FEE_5F00_ECC_5F00_Errors_5F00_TEST_5F00_LC4357.zip

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:
    我将查看您的规范、将其与我们的规范进行比较、并在此处报告我的发现。

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

    尊敬的 Jagadish:

    我注意到两件事。

    第一、
    在每次诊断测试5-测试后、您将等待设定的时间、并且不会检查测试是否通过。
    我建议等待 FEDAC_PBSTATUS-Register 中的 ADD_TAG_ERR 位被设置。

    然后
    测试完成后需要禁用诊断模式。

    您能在进行这些更改时重试吗?

    谢谢、此致、
    最大值

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

    尊敬的 Jagadish:

    您是否能够使用我提到的更改进行尝试?

    谢谢、此致、
    最大值

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

    尊敬的 Max:

    测试完成后需要禁用诊断模式。

    我在每次测试后禁用诊断模式。

    在每次诊断测试后、您都在等待设定的时间、并且您不会检查测试是否通过。
    我建议等待 设置 FEDAC_PBSTATUS-Register 中的 ADD_TAG_ERR 位。

    我进行了如下修改并进行了测试。

    仍然无法获得 Port_B 的错误、如下所示:

    通常情况下、我仅获得端口 A 的 ESM 中断、如下所示:

    ——
    此致、
    Jagadish。

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

    尊敬的 Jagadish:

    很奇怪的是,我们似乎有一个变通办法是有效的,虽然它似乎不能复制到你的最后

    我们必须在上电时运行该诊断、但由于硬件似乎受支持、我们不确定应该怎么做。

    在这种情况下、TI 有什么建议?

    由于我们针对诊断的权变措施正在工作、我认为我们应该让诊断保持原样?

    谢谢、此致、
    最大值

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

    尊敬的 Max:

    我的代码可能与您的代码不完全相同、在某种程度上我可能会采取不同的做法。

    如果该变通办法从您的角度出发有效、那么我的建议是最好采用它。

    ——
    谢谢、此致、
    Jagadish。