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.

[参考译文] SK-AM62A-LP:DSP 频率在加载 CCS 程序时发生变化。

Guru**** 2573765 points
Other Parts Discussed in Thread: SK-AM62A-LP

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1558059/sk-am62a-lp-the-dsp-frequency-changes-when-the-ccs-program-is-loaded

器件型号:SK-AM62A-LP


工具/软件:

尊敬的专家:

这是以下原始线程答案的延续。

From 4fa3af8d3f1b3ad653417c19af4bb1c3470be83b Mon Sep 17 00:00:00 2001
From: Anand <s-anand@ti.com>
Date: Wed, 16 Jul 2025 12:19:10 +0530
Subject: [PATCH 1/2] Enabled C7X CPU Clock modification

---
 bootloader_soc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bootloader_soc.c b/bootloader_soc.c
index eaf28f1..8516b55 100644
--- a/bootloader_soc.c
+++ b/bootloader_soc.c
@@ -552,7 +552,7 @@ int32_t Bootloader_socCpuSetClock(uint32_t cpuId, uint32_t cpuHz)
     uint32_t sciclientCpuDevId;
     uint32_t sciclientCpuClkId;
 
-    if((cpuId != CSL_CORE_ID_HSM_M4FSS0_0) && (cpuId != CSL_CORE_ID_C75SS0_0))
+    if((cpuId != CSL_CORE_ID_HSM_M4FSS0_0))
     {
         sciclientCpuDevId = Bootloader_socGetSciclientCpuDevId(cpuId);
         sciclientCpuClkId = Bootloader_socGetSciclientCpuClkId(cpuId);
-- 
2.33.0.windows.2


From de16d9281c30f277355d6b4ff9e10874633dc244 Mon Sep 17 00:00:00 2001
From: Anand <s-anand@ti.com>
Date: Wed, 16 Jul 2025 12:30:51 +0530
Subject: [PATCH 2/2] Updated C7x clock to 1GHz

---
 bootloader_soc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bootloader_soc.c b/bootloader_soc.c
index 8516b55..e943c39 100644
--- a/bootloader_soc.c
+++ b/bootloader_soc.c
@@ -163,7 +163,7 @@ Bootloader_CoreBootInfo gCoreBootInfo[] =
     .tisciProcId    = SCICLIENT_PROC_ID_C7X256V0_C7XV_CORE_0,
     .tisciDevId     = TISCI_DEV_C7X256V0_C7XV_CORE_0,
     .tisciClockId   = TISCI_DEV_C7X256V0_C7XV_CORE_0_C7XV_CLK,
-    .defaultClockHz = (uint32_t)(500*1000000),
+    .defaultClockHz = (uint32_t)(1000*1000000),
     .coreName       = "c7x0-0",
     },
 };
-- 
2.33.0.windows.2

客户根据上述信息、为在 500MHz 和 1000MHz 上运行的 AM62AxRTOS SDK c7x 创建了 SBL Null。
启动并使用 CCS 配置文件时钟后、两种时钟速度似乎都在 850MHz 上运行。

(在 42041576 个周期下测量到 50ms 睡眠运行、大约为 840.83MHz。)

Q1:配置文件时钟频率是否会根据 CCS 加载程序而变化?

此致、
正常

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Q1:配置文件时钟频率是否会根据 CCS 加载程序而变化?

    否、加载程序不应更改时钟频率。 它只是在目标停止时对目标进行存储器写入访问。 我想 GEL 文件中可能有一些操作可以在加载程序之前/之后执行一些目标配置。 但是、改变频率之类的行为不太可能发生。

    谢谢

    Ki

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

    嗨、ki、

    以下是客户的评论。

    ====================

    我们未使用 GEL 文件、因此 c7x 引导加载程序中的频率设置没有更改。
    我们的理解是、当使用设置为 500MHz 的引导加载程序进行引导时、我们希望配置文件时钟值也能在 500MHz 周期内运行。
    (每秒的周期数因引导加载程序中设置的频率而异。)
    您是否看到过根据每个频率的引导加载程序、配置文件时钟会发生变化的任何情况?

    另外、如果在这种理解中存在任何错误、请告知我们。

    ====================

    此致、
    正常

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们的理解是、当使用设置为 500MHz 的引导加载程序进行引导时、我们希望配置文件时钟值也能在 500MHz 周期内运行。 [/报价]

    正确。

    [报价 userid=“402494" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1558059/sk-am62a-lp-the-dsp-frequency-changes-when-the-ccs-program-is-loaded/6012229 您是否看到过根据每个频率的引导加载程序、配置文件时钟会发生变化的任何情况? [/报价]

    配置文件时钟对时钟周期进行计数。 因此、如果时钟频率发生变化、会影响时钟。  

    回到您的原始问题 — 我不知道为什么 CPU 的时钟速度会发生变化。 我将提请器件专家注意此主题、他们可能会有更多答案。

    谢谢

    Ki

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

    尊敬的 O.H:

    您使用的是哪个 SDK 版本、能否使用 SDK V11.1 对此进行测试

    此致、

    会面。

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

    你好淇,满足,

    感谢您的答复。

    现在是 v10_00_00_14。 我们要求客户与 v11.1 共享测试结果。

    此致、
    正常

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

    尊敬的会议:

    以下是来自客户的评论。
    ========================

    我尝试使用 mcu_plus_sdk_am62ax_11_01_00_16 进行测试、但我在确认频率时遇到问题。 System_Init () 未完成。

    我采取的步骤如下:

    1. 应用频率变化补丁并使用 mcusdkv11 构建引导加载程序
      sbl_null.release.hs_fs.tiimage(基于该线程创建)写入 eMMC。
    2. 在 250MHz 处成功引导 c7x(设置为 250MHz 以进行测试)
    3. 连接 CCSv20 — 在 mcusdkv11 (helloworld) 中导入工程
    4. 构建后运行
    5. 无法在 System_init (void) 中完成 PowerClock_init () 执行

    使用之前版本的引导加载程序进行引导时、不会出现此问题。 启动日志将显示以下消息。
    这是否与问题有关?  

    警告:bootloader_rprcImageLoad:233:软件版本不匹配、安装程序版本 0xb010010、AppImage 版本 0x1 某些测试失败!!“

    Starting NULL Bootloader ...
    
    SYSFW Firmware Version 11.1.5--v11.01.05 (Fancy Rat)
    SYSFW Firmware revision 0xb
    SYSFW ABI revision 4.0
    
    INFO: Bootloader_runCpu:137: CPU mcu-r5f is initialized to 800000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a530-0 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a530-1 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a531-0 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU a531-1 is initialized to 1400000000 Hz !!!
    INFO: Bootloader_runCpu:137: CPU c7x0-0 is initialized to 250000000 Hz !!!
    WARNING: Bootloader_rprcImageLoad:233: Software version mismatch, Installer version 0xb010010, AppImage version 0x1
    Some tests have failed!!
    INFO: Bootloader_JumpSelfCpu:157: All done, jumping self ...
    

    ========================

    此致、
    正常

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

    尊敬的 O.H:
    您能否请重新编译所有二进制文件并重新刷写引导加载程序?

    谢谢、
    Shreyansh

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

    尊敬的  Shreyansh:

    您能否重新编译所有二进制文件并重新刷写引导加载程序?

    您是指使用命令“make -s all profile=debug“吗?

    此致、
    正常

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

    是的、但首先执行干净的“make -s clean“、然后进行编译。

    谢谢、
    Shreyansh

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

    我明白了。  我将与客户核实。

    此致、
    正常

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

    尊敬的  Shreyansh:

    上述“sbl_null.release.hs_fs.tiimage"是“是使用“make -sj4 all“的第 11 版的第一次编译、因此客户认为它相当于使用 Clean->make 重建的版本。 他说他会通过调试进行检查以防万一。

    最好的应届毕业生
    正常

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

    尊敬的  Shreyansh:

    客户尝试使用最新的 mcuSDKv11.01 重新写入引导加载程序、并运行 make -s all profile=debug、但结果没有变化。 当运行 c7x helloworld 时、它会在 void System_init (void) 中等待 PowerClock_init () 中的消息、从而导致 NG。

    此致、
    正常

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

    尊敬的 O.H:
    您是否使用 eMMC 引导模式? 如果是、您可以尝试以下更改吗?

    1.  分别在第 210 行和第 356 行注释掉 System_deinit  mcu_plus_sdk\am62a\examples\drivers\boot\sbl_eMMC_multistage(阶段 1 和阶段 2)

    2.清理工程和重建

    谢谢、
    Shreyansh

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

    尊敬的  Shreyansh:

    感谢您的答复。

    是 216 和 285 行的“System_deinit()"吗“吗? 行号不匹配、因此我只是进行检查以确定是否匹配。

    "警告“警告:bootloader_rprcImageLoad:233:软件版本不匹配、安装程序版本 0xb010010、AppImage 版本 0x1 某些测试失败!!!“

    我的客户和我使用的是相同的软件、但上述 WARNIG 消息未在我的环境中输出。 在我的环境中、我从 QSPI 引导并检查频率(时钟计数)变化。 我认为这一 WARNIG 信息的出现是问题的原因。

    此致、
    正常

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

    尊敬的 O.H:

    我和我的客户使用的是相同的软件、但上述 WARNIG 消息未在我的环境中输出。 在我的环境中、我从 QSPI 引导并检查频率(时钟计数)变化。 我相信这个 WARNIG 信息的出现是问题的原因。

    目前仅在 EMMC 和 SD 引导模式下出现问题。 该问题将在即将发布的版本中得到修复。

    是 216 行还是 285 行的“System_deinit ()“吗? 行号不匹配、因此我只是进行检查以确定是否匹配。

    很抱歉,我的错。 是、第 2 阶段第 285 行、第 1 阶段第 216 行。

    谢谢、

    Shreyansh

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

    尊敬的  Shreyansh:

    感谢您的答复。

    以下是客户评论。

    =============
    根据您的建议、我能够更改启动频率并进行测量。
    谢谢你。

    我还有一个问题。 我曾尝试在 250MHz 和 1000MHz 上运行我们的测量应用。 结果表明、同一进程测得的执行时钟不同 (1000MHz 高于 250MHz)。 我的假设是、即使启动频率不同、相同过程下测得的时钟速度也将相同。
    您有什么想法、为什么这可能会有所不同?
    =============

    此致、
    正常

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

    尊敬的 O.H:

    还有一个问题。 我曾尝试在 250MHz 和 1000MHz 上运行我们的测量应用。 结果表明、同一进程测得的执行时钟不同 (1000MHz 高于 250MHz)。 我的假设是、即使启动频率不同、相同过程下测得的时钟速度也将相同。
    你有什么想法为什么这可能会有所不同?

    您能否分享有关此测量应用的更多详细信息? 它们测量的方式和内容是什么? 我建议针对这个问题创建一个新的 E2E 论坛。

    谢谢、
    Shreyansh

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

    尊敬的  Shreyansh:

    以下是客户提供的其他信息。
    ==================

    我们迄今为止使用的可执行二进制文件是 AM62ASDK(基于 am62ax_MCU_PLUS_SDK_10_00_00_14)。 当我们在 AM62D-EVM 上运行此二进制文件时、这些值​​与 SK-AM62A-LP 的测量结果接近。 1000MHz 操作的值高于 850MHz 操作的前一个测量值、但在可接受的范围内。
    因此、当前的情况是、​​基于 AM62DSDK 创建的测量应用的测量值 (freertos_sdk_am62dx_11_01_00_16) 较高。

    我们当前正在进行检查、以查看是否存在任何配置错误或任何类似错误。
    我们将考虑是否可以共享项目本身、因此请稍候。

    =============

    最棒的餐厅
    正常

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

    尊敬的 O.H:
    客户是否在测量程序的执行时间? 如果是、他们正在使用哪个计时器?

    谢谢、

    Shreyansh

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

    尊敬的  Shreyansh:

    您能分享有关此测量应用程序的更多详细信息吗? 它们测量的方式和内容是什么? 我建议针对该问题创建新的 E2E。

    抱歉、我忽略了您的观点。 由于主题标题和问题已更改、我将使用下面的修订信息创建一个新主题。

    感谢您的支持。

    此致、
    正常