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.

[参考译文] CCS12.5 GEL 默认为双核模式

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1293374/ccs12-5-gel-defaults-to-dual-core-mode

主题中讨论的其他器件:AM263X-AM2634、MCU-PLUS-SDK

您好!

使用 CCS12.4和 CCS263X-AM263X 在 DevBoot 模式下能够正常运行的程序不能使用 MCU-PLUS-SDK 12.5 该程序使用两个内核、但不是双核。 它使用 R5_0和 R5_2、其中 R5_1和 R5_3分别是锁步内核。

我的笔记本电脑最近重新创建了映像、并且 新安装了 CCS12.4和 CCS12.5。 我尚未按照 AM263x MCU-SDK 帮助中的建议编辑任何 GEL 文件。

我已将控制台输出12.4和12.5进行比较、且可以看到以下差异。 这似乎是吸烟枪,但仍有待观察,如果这是根本原因。

我查看了版本说明中的12.5、且没有提及此默认行为更改。 我认为默认的 GEL 行为应该是锁步、因为这是每个 CPU 集群的默认模式。

仅供参考、在工作(12.4)和不工作(12.5)条件下、我使用了与12.5 (3.2.0.LTS)相同的编译器、因此两种情况下的程序相同。 行为差异不能归因于我的计划。

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

     OnTargetConnect ()中的新函数 AM263x_Check_Supported_mode_jtagID ()似乎在 CCS12.5中返回1而不是之前看到的0。 将"mode"硬编码为0允许我的程序运行:

    这就带来了如何检测预期模式的问题。 函数 AM263x_Check_Supported_mode_jtagID ()只是检查器件是否支持锁步,而不是项目是否打算使用锁步或双核。

    我不太习惯根据我的项目更改 GEL 文件。 一方面、它在项目中不可移植。

    您能否找到一种根据调试配置设置模式的方法。 例如、这里我明显不打算将任何程序加载到 R5_1和 R5_3、因此我希望使用锁步模式是个安全的选择:

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

    尊敬的 Kier:

    所有 AM2634平台的 jtagID 为0x411x、AM2634器件同时支持锁步和双核模式、并在 GEL 文件中选择双核模式。  

    您可以使用 CCS-script 中的 GEL 热菜单切换到锁步模式。  

    您能否找到一种根据调试配置设置模式的方法。 例如、这里我显然不打算将任何程序加载到 R5_1和 R5_3、因此我希望使用锁步模式是个安全的选择:

    我将提交请求。

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

    非常感谢您的回复。

    所有 AM2634平台的 jtagID 均为0x411x、且 AM2634器件同时支持锁步和双核模式

    AM2632不支持这两种模式?  AM263的 jtagID 2 为0x41 0 x 因此函数  AM263x_Check_Supported_mode_jtagID ()将返回该器件的0值。 我的理解是、AM2632支持这两种模式的方式与 AM2634相同。 是这样吗?  如果我操作正确、 AM263x.gel 中的 AM263x_Check_Supported_mode_jtagID ()函数 在整个 SoC 系列中不能始终如一地运行。

    在任何情况下、就像我说的、该器件支持的模式与用户的预期模式无关。 函数  AM263x_Check_Supported_mode_jtagID ()应该被一个不同的函数所取代。 例如 ,Check_Users_debug_configuration_mode()

    在 GEL 文件中选择双核模式。

    这就是问题所在。 为什么在12.5改变呢? 集群默认值为锁步、大多数示例项目仅使用 R5_0、因此在这些情况下也隐含锁步。 除非它有合理性、否则 看起来就像这里的误差。

    请在12.6模式下将其更改为默认的锁步,并可能避免  在  OnTargetConnect ()上使用 AM263x_Check_Supported_mode ()函数。 它没有任何用途。

    您可以使用 CCS-script 中的 GEL 热菜单切换到锁步模式。  [/报价]

    我加载了示例项目  hello_world_am263x-cc_r5fss0-0_nortos_ti-arm-clang、单击了 Configure_Lockstep_。

    它会给出错误:

    我将提交请求。

    非常感谢。 请让我知道 JIRA 问题链接。

    如果我们今天更新到 CCS12.5、我将不得不向我的同事发送电子邮件告知他们为了调试我们的项目、他们需要首先编辑编译器工具链中不受任何控制的文件。 这不是一种很好的发展方式。

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    AM2632是否同时支持这两种模式?

    AM2632仅支持锁步模式。  

    请在12.6中将其改回锁步作为默认值,并可能避免  在  OnTargetConnect ()上使用 AM263x_Check_Supported_mode ()函数

    AM2634器件上有4个内核和2个集群。 该集群可以配置为锁步或双核、因此有4种组合。 但在 GEL 文件中只能选择其中的一个。 客户可以使用 CCS 脚本或修改 GEL (设为默认模式)随时切换模式。 我认为最好换回来。

    锁步至双核开关只能编程一次、并且在器件的下一个上电复位周期之前不能重新编程。