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.

[参考译文] TDA2EXEVM:重置整个 SOC

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/666984/tda2exevm-resetting-the-entire-soc

器件型号:TDA2EXEVM

您好!

我正在从事 TDA2E7 SOC 方面的工作。

我的软件最初在 A15内核上工作、然后控制被处理到 IPU2_C0内核。

当我使用 PRM_RSTCTRL (0x4AE0 7D00)寄存器(使用全局冷或全局热位)复位 IPU2_C0内核时、该内核仅复位。

但我也想从 IPU2_C0内核复位 A15内核。

请指导以实现相同的目标。

此致、

Priyanka Zadge

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

    全局冷复位位位会复位整个 SoC 并再次触发启动。
    您正在执行什么检查来查看 A15是否已复位?

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

    PRM_RSTCTRL 位会影响整个 SoC。 因此、当您写入该寄存器以执行全局热或冷复位时、A15也会与 IPU2_C0一起进行复位。

    当您从 IPU2_C0写入该寄存器时、能否详细了解 A15状态? 您还可以详细描述在 A15上观察到的情况、如果您看到其他情况。

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

    在使用上述寄存器位(全局热态)对 IPU2_C0进行复位之前、我将在外部 QSPI 闪存中写入一个标志。

    复位后(如果两个内核都被复位),预计(在我的情况下),A15上的软件应该开始执行,读取该模式并相应地运行。
    但是、由于只有 IPU2_C0正在复位、因此 A15软件不会执行。

    此外、在使用寄存器进行 IPU2_C0复位后、如果我进行上电复位(即关闭和打开电源)、A15软件将获得控制权并根据预期开始执行。

    让我知道可以使用寄存器执行哪些操作来复位 A15。


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

    热复位后、您在哪里可以看到 A15? 它是否与热复位前位于同一 PC 位置? 您是否从 A15 UART 日志中打印任何内容以了解 A15是否正在读取闪存?

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

    这部分测试在独立模式下完成、使用 TI 提供的 FLASH_writer 和 KPIT 开发的引导加载程序刷写软件。
    使用引导加载程序、需要在 IPU2_C0上执行的软件会在外部闪存中刷写。

    要在 CCS 中观察内核在调试模式下的行为、请执行以下过程:
    1.连接了 A15内核,加载了脚本。
    已连接 IPU1_C0、使用 flash_writer 下载的引导加载程序软件。
    3.暂停 IPU1_c0上的执行
    已连接 IPU2_C0、已在内核上加载.elf 文件
    5.运行 A15
    将 IPU2_C0置于运行状态
    在 IPU2_c0软件上执行复位部件后、控制台显示:无法连接到 DAP
    调试窗口显示 IPU2_C0挂起、但 A15内核显示正在运行。

    如果错过了任何步骤或需要纠正、请告诉我。

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

    在步骤7之前、您可以在器件复位之前记下 A15的 PC 值。
    步骤8后、您是否可以停止 A15并检查 A15是否处于同一点。

    此外、如果将有助于保留 A15中的一些 UART 控制台打印内容、以查看 A15是否再次从 A15上运行的 ROM 到达 main 的开头。

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

    在上述步骤中、先执行步骤6、然后执行步骤5。
    此外、在第8步之后、在调试窗口中、
    IPU2_C0和 A15均显示为已断开连接并正在运行。
    在这种情况下、无法检查 PC 值。

    执行重置部件后、我在控制台上收到以下消息:

    {Cortex_M4_IPU2_C0:20次尝试后无法确定目标状态
    Cortex_M4_IPU2_C0:在断开连接之前无法从目标中删除调试状态。 程序存储器中仍可能嵌入了断点运算代码。 建议您在连接之前重置仿真器、并在继续调试之前重新加载程序
    CortexA15_0:JTAG 通信错误:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包6.0.576.0)}

    UART 未用于该项目。


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

    您无法连接到 DAP/A15这一事实意味着整个器件已完成热/冷复位。 您可能需要重新启动 CCXML 才能连接到 A15。

    您计划如何验证 A15是从电路板上电还是从 IPU 写入到冷复位的。 闪存在这两种情况下均保持不变。

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

    Piyali、

    即使我跳过将 A15置于运行模式的步骤、控制台上也会显示相同的消息。

    我们在内核上有以下软件:
    1.IPU2_C0:应用(执行时发送一些周期性 CAN 帧、可在 CANalyzer 窗口中看到)
    2.A15:引导加载程序(在涉及到控制时发送对应用程序诊断请求的响应、可在 CANalyzer 窗口中看到)

    使用引导加载程序、我们将在闪存中下载应用程序、然后将控制权交给应用程序。

    在独立模式下:
    当应用程序正在执行时、在 CANalyzer 中观察到周期 CAN 帧。
    提供复位命令时、周期性帧会在应用内核复位时停止一段时间。

    如果未给出上电复位(POR)、则 CANalyzer 中会再次出现应用周期帧

    如果给出了 POR、则在 CANalyzer 中观察到 A15内核软件即引导加载程序响应。

    因此、我们必须得出结论、A15不会通过全局热/冷重置。

    根据您的注释、全局热/冷位正在重置 SOC。
    但是、由于我们仅在 POR 之后获得预期行为、您能帮助我们诊断根本原因。
    POR 和全局热/冷复位后寄存器更新是否有任何变化。

    如果我们可以连接 Web Ex-Ex 会话,那将非常有用。
    请传达合适的时间。

    此致、
    Priyanka Zadge

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

    您好、Priyanka、

    我可能错过了但在您的帖子中找不到您是否尝试设置 PRM_RSTCTRL 寄存器的[1] RST_GLOBAL_COLD_SW 位? (即不是位[0]!)

    该位[1]启动与 POR 等效的复位、并且我找不到任何问题的勘误表/报告。

    此致、

    STAN

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

    在引导加载程序响应路径中、您是否在 TDA 和 CAN 分析器之间有任何其他芯片? 如果 TDA 和 CAN 之间存在任何需要在 PORz 上重新初始化但在 TDA 冷复位时不需要重新初始化的情况、您可以检查原理图(不要发布原理图、而是在您的末尾进行本地分析并进行总结)吗?

    "即使我跳过将 A15置于运行模式的步骤、控制台上也会显示相同的消息。"

    预计 A15 (以及 SoC 的其余部分)会进行复位、调试器状态将丢失。

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

    您好、Piyali、

    如空闲内核的其他线程中所述、当 A15和 IPU2_C0都进入无限循环时、ROM 代码启用看门狗并在大约3分钟后进行复位。

    据观察、

    当看门狗复位发生时、内核 A15软件获得控制权并开始执行。

    但是、当寄存器 PRM_RST 的全局冷位被置位时、A15软件不会获得控制权。

    请帮助进行分析。 全局代码重置期间是否缺少任何部件。

    此致、

    Priyanka Zadge

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

    您是否知道执行冷复位启动时 A15卡在何处的 PC 地址?
    另一个要尝试的实验是尝试热复位位位。 这是为了检查在触发 PRM_RST 热复位时是否发生 A15重新启动。

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

    据我了解、您在周五与 TI 专家进行了电话联系。 总结是、
    1.引导介质中没有刷写引导加载程序、在 A15复位时可以再次运行。
    2.正在从 CCS 加载代码,显然内核已复位,代码从不会再次从 CCS 运行。

    如果您没有任何进一步的问题、请将螺纹标记为已关闭。

    谢谢、此致、
    Piyali