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.

[参考译文] TMS320C6674:无法使用 C6674配置硬件跟踪分析器(PC 跟踪)

Guru**** 2465890 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1473981/tms320c6674-cannot-configure-hardware-trace-analyzer-pc-trace-with-c6674

器件型号:TMS320C6674

工具与软件:

您好!

我在使用 C6674 DSP 内核上的嵌入式跟踪缓冲器(ETB)来配置 PC 跟踪时遇到问题。 我有两种定制 PCB 设计、一种使用 AM57x 处理器、另一种使用 C6674处理器。 我可以很轻松地在 AM57x 上配置和运行 PC 跟踪、但无法对 C6674执行相同的操作。 首先、我的工具的详细信息:

  • Code Composer Studio 9.2.0.00013.
  • Spectrum Digital XDS200仿真器

现在、我尝试执行的步骤:

  1. 打开 CCS 并启动 C6674处理器的目标配置(目标配置不包含 GEL 文件)。
  2. 连接到正在运行我的自定义应用代码的 DSP 内核0。 所有其他步骤都从 DSP 内核0中执行。
  3. 连接后、我加载以下 GEL 文件:
    1. C:\ti\ccs920\ccs\ccs_base\emulation\boards\evmc6678l\gel\ c6678_systemDebug_v0.4.gel

  4. 运行脚本> C6678 API > Device_Config_State_Snapshot、此时我可以看到以下内容:
    1. 每核 TETB 和系统 TETB (pwr 域)处于**关闭**状态
    2. 调试子系统和控制器时钟域状态: 模块时钟为**OFF**
    3. 每内核 TETB 和系统 TETB 时钟域状态: 模块时钟为**关闭**

  5. 现在、我运行"Scripts">"C6678API">"C6678_Enable_All_API" Power_Clock_Domains、这个操作成功。 然后、我 再次运行 Device_Config_State_Snapshot:
    1. 每核 TETB 和系统 TETB (pwr 域)处于##0N##状态
    2. 调试子系统和控制器时钟域状态: 模块时钟为##ON##
    3. 每核 TETB 和系统 TETB 时钟域状态: 模块时钟为##ON##

  6. 最后、我转到 Tools > Hardware Trace Analyzer > PC Trace。 此时我会收到以下错误对话框:
    1. 标题:德州仪器(TI) XDS2xx USB Debug Probe_0/CS_DAP_DebugSS
    2. 消息:连接到目标时出错:
      (错误-275 @ 0x0)
      尝试轮询目标器件的次数超出了其超时限制。
      实用程序或调试器已请求指定目标器件
      重复访问特定数据或状态值。
      由于最大数量的内置限制、此操作失败
      已超过轮询 JTAG 扫描路径的尝试次数。
      (仿真包8.3.0.00003)

我会注意到、如果我"显示所有内核"、然后手动尝试连接到名为的不可调试器件、则会收到相同的错误 CS_DAP_DebugSS .

我已经花了几个小时查看论坛中与此相关的帖子、但不幸的是、其中大多数较旧、并且参考了不再可用的 TI 嵌入式处理器 Wiki、因此它们不再能提供真正的帮助。 非常感谢您提供任何指导。 提前感谢。

此致、
Dave

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

    Dave、您好!

    我们的专家工程师目前不在办公室、我们的回复预计会延迟到下周。

    谢谢!

    Neehar

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

    Dave、您好!

    我尝试在类似的环境中重现此问题:

    -C6678 EVM

    -Spectrum Digital XDS200

    -CCS 9.3.0

    我按照您提到的相同步骤操作。

    我能够通过 ETB 启动并运行 PC 跟踪会话、而不会出现任何问题:

    qizhi huangfu 说:
    消息:连接到目标时出错:
    (错误-275 @ 0x0)

    请参阅下面文章中提到的"Target timeout"错误:

    https://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html

    器件上运行的程序可能会将器件置于调试器失去调试控制的状态。

    谢谢

    Ki

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

    尊敬的 Ki:

    感谢您确认它能在您的最后正常工作 我看着它对你有用,我尝试了更多的事情,并偶然发现了一个特定的序列,似乎对我有用。 我想我会在这里报告、以防将来对其他人有所帮助。 同样、这使用我自己的定制 PCB 和应用代码。

    1. 在我的定制应用代码运行时连接至核心0 (未加载 GEL 文件)。
    2. Run > Reset > 系统复位 .
    3. 加载调试 GEL 文件(C:\ti\ccs920\ccs_base\emulation\boards\evmc6678l\gel\) c6678_systemDebug_v0.4.gel )。
    4. Scripts > C6678 API > C6678_Enable_All_EVM Power_Clock_Domains .
    5. Tools (工具)> Hardware Trace Analyzer (硬件跟踪分析器) PC 跟踪 . 出现"尝试轮询目标设备超出其超时限制"错误。 再进行点击 取消 图标。
    6. 再次连接到 CORE 0、但是 请勿执行 Resume execution (恢复执行)--只需等待一小段时间(大约一分钟)即可执行任何操作。 再次出现"尝试轮询目标设备超出其超时限制"错误。 再进行点击 取消 图标。
    7. 再次连接到 CORE 0、但是 请勿执行 Resume execution (恢复执行)--只需等待一小段时间(大约一分钟)即可执行任何操作。 此时、内核0的"PC Trace Configuration"对话框出现! 根据需要调整设置、然后单击 启动 .
    8. 现在、您可以恢复对内核0的执行并开始调试。 PC Trace 此时似乎工作正常。

    再次感谢您的帮助、
    Dave

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

    最后一个注意事项--我的步骤 2、3和4 上述内容似乎是可选的。 似乎当 "PC Trace Configuration"对话框最终出现时、您可以单击该对话框  启动 此时、它会自动启用必要的电源域和时钟域。