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.

[参考译文] AUDIO-AM62D-EVM:在 Audio App 中从 Config 1 切换到 Config 2–从哪里修改代码?

Guru**** 2578945 points
Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1570385/audio-am62d-evm-switching-from-config-1-to-config-2-in-audio-app-where-to-modify-code

器件型号:AUDIO-AM62D-EVM
Thread 中讨论的其他器件:UNIFLASH

工具/软件:

如果要按照入门指南中的说明从配置 1 切换到配置 2、需要在音频应用程序代码的哪些部分进行更改? 我看不到任何宏或编译时标志似乎用来控制此选择。  您能否介绍一下需要更新哪些内容(文件,函数或配置参数)才能正确切换配置?

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

    尊敬的 Kaviyasaran:

    您不需要更改任何内容。 您只需加载 A53 二进制文件即可。

    谢谢、

    Shreyansh

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

    我不是指在 CCS 中加载。 我的问题与刷写音频应用程序有关—由于音频路由由由是由 A53(配置 2)控制的、而不是由 C7x(配置 1)控制、因此如何正确刷写音频应用程序、以便电路板使用 A53 配置?

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

    尊敬的 Kaviyasaran:
    无需更改即可运行配置 2。 您需要构建 A53 应用程序并对其进行刷写、而无需加载 C7x 二进制文件。

    谢谢、
    Shreyansh

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

    您能否确认我的理解是否正确?

    目前、配置文件中包含以下命令:

    -file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/c75/ti-c7000/audioApp_c7x.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000

    将其加载到 A53 内核、我是否需要在脚本中注释掉这一行?

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

    正确。 如果要使用配置 2、则无需为 C7x 刷写音频应用映像。 不过请记住、如果您之前将 C7x 的二进制文件写入闪存、则必须删除闪存上的段、否则 SBL 将加载偏移处存在的映像、或者您甚至可以刷写一些其他虚拟应用程序。

    谢谢、
    Shreyansh

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

    您好、

    当我执行上述步骤时、可以在 UART 日志中看到:

    Remote core: 2 ready - which mean a53

    但是、当我尝试连接到 AWE 服务器时、连接失败。 使用默认配置文件、我可以连接到 AWE 服务器并成功运行信号链。

    我是否需要执行任何其他步骤以使用此配置连接到服务器?

    我对配置所做的更改config 2如下:

    # C7x 映像以 0xA00000 或引导加载程序配置的任何偏移进行刷写
    #--file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/c75ss0-0_freertos/ti-c7000/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000
    -file=C:/ti/AM62D-AWE-SDK_11.00.00.17/mcu_plus_sdk/am62dx/examples/hello_world/am62dx-evm/a53ss0-0_freertos/gcc-aarch64/hello_world.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000

    此外、我还有一个关于config 3的查询、它使用两个内核。 我想通过配置文件刷写两个内核的映像。 我应该遵循哪些步骤来继续进行此配置?

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

    尊敬的 Kaviyasaran:
    在 A53 内核上刷写 IPC 应用程序映像而不是音频应用程序映像的原因是什么? 您需要在 A53 内核上加载音频应用程序映像、AWE 服务器才能正常工作。  

    此外、我还有一个关于的查询config 3、它使用两个内核。 我想通过配置文件刷写两个内核的映像。 我应该遵循哪些步骤来继续此配置?

    请参阅 SDK 中的入门指南。 对于配置 3、您需要 在 includes.mak 中设置 build_awe_multi = 1、然后重新编译音频应用并使用编译的应用映像刷写两个内核 (A53 和 C7x)。

    谢谢、
    Shreyansh

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

    我刚刚刷写了 A53 二进制文件并替换了 C7x 映像以尝试运行配置 2。 下面随附了 CFG 文件以供参考。 仍然 AWE 服务器未连接。 请做必要的事情。  

    -------------------------------------------------------------------------------------------- #
    #
    #与 FLASHWRITER 脚本一起使用的默认配置文件#
    #
    -------------------------------------------------------------------------------------------- #
    #
    #默认此配置文件,
    #-指向此 EVM 的预编译闪存写入器、引导加载程序
    #-应用程序映像指向此 EVM 的 IPC rpmsg A53 应用程序映像的相对路径
    #-确保在运行此脚本之前构建此应用程序
    #-您可以自定义此配置文件以指向您自己的引导加载程序和/或应用程序映像
    #-如果您只想验证闪存内容而不是刷写文件,可以使用--operation=flashverify。
    #

    #第一个指向 sbl_uart_uniflash_stage1 二进制文件,它初始化 DDR 并接收 sbl_uart_uniflash_stage2 二进制文件
    -- flash-writer=sbl_prebuilt/am62dx-evm/sbl_uart_uniflash_stage1.release.hs_fs.tiimage

    #发送 sbl_uart_uniflash_stage2 二进制文件时、请确保在 SOC 存储器偏移 0x0 处进行闪存。
    #指向 sbl_uart_uniflash_stage2 二进制文件,它作为一个服务器来刷新一个或多个文件
    --file=../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62dx-evm/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage.hs_fs --operation=flash --flash-offset=0x0

    #对 OSPI PHY 调优攻击向量进行编程
    --操作=flash-phy-tuning-data

    #现在发送一个或多个文件到闪存或 flashverify 根据需要。 发送文件的顺序无关紧要

    #发送引导加载程序时、请确保闪存偏移为 0x0。 ROM 期望引导加载程序位于偏移量 0x0 处
    -file=sbl_prebuilt/am62dx-evm/sbl_ospi_stage1.release.hs_fs.tiimage --operation=flash --flash-offset=0x0

    #带 DM 映像的第二阶段引导加载程序在 0x80000 或您的引导加载程序配置的任何偏移处刷新
    --file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x80000

    # HSM 映像在 0x240000 或引导加载程序配置的任何偏移处刷新
    --file=../../tools/boot/HSMAppimageGen/board/am62dx-evm/hsm.appimage.hs_fs --operation=flash --flash-offset=0x240000

    #发送应用程序映像时,请确保以偏移 0x800000(默认值)或引导加载程序配置的任何偏移进行闪存
    #--file=../../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/mcu-r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x800000
    --file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/mcu-r5f/ti-arm-clang/audioApp_mcur5f.release.appimage.hs_fs --operation=flash --flash-offset=0x800000

    # C7x 映像以 0xA00000 或引导加载程序配置的任何偏移进行刷写
    #--file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/c75ss0-0_freertos/ti-c7000/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000
    -file=C:/ti/AM62D-AWE-SDK_11.00.00.17/bin/am62dx/sd_card/cfg2_a53/app_a53 --operation=flash --flash-offset=0xA00000

    # A53 映像以 0x1200000 或引导加载程序配置的任何偏移进行刷写
    #--file=../../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/a53ss0-0_nortos/gcc-aarch64/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000
    --file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/a53-smp/gcc-aarch64/audioApp_a53-smp.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000

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

    尊敬的 Kaviyarasan:
    如果要使用配置 2、则无需刷写 C7x 音频应用二进制文件、则可以清除内存、使 C7x 不使用音频应用映像引导、也可以对其刷写空项目。

    谢谢、
    Shreyansh

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

    实际上、为了从 C7x 闪存中清除现有的刷写映像、我使用了一个简单的“Hello World“工程。 在里面main(),我评论了所有的代码和只保留return 0;. 我在下面附上了这个信息。 但是、这种方法不起作用—AWE 仍然没有连接到服务器。

    # A53 映像以 0x1200000 或引导加载程序配置的任何偏移进行刷写
    #--file=../../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/a53ss0-0_nortos/gcc-aarch64/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000
    --file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/a53-smp/gcc-aarch64/audioApp_a53-smp.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000

    # C7x 映像以 0xA00000 或引导加载程序配置的任何偏移进行刷写
    #--file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/c75ss0-0_freertos/ti-c7000/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000
    -file=C:/ti/AM62D-AWE-SDK_11.00.00.17/mcu_plus_sdk/am62dx/examples/hello_world/am62dx-evm/a53ss0-0_freertos/gcc-aarch64/hello_world.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000

    在上一次尝试中、我还尝试刷写 A53 二进制文件来代替 C7x 映像、但这也不允许 AWE 连接到服务器。

    我需要对如何进行澄清 配置 1 配置 2 在编译过程中是区分的 — 具体而言,编译过程或 makefile 中的更改定义了这两种配置。

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

    尊敬的 Kaviyarasan:

    对于配置 2、只需确保 在 asdk_am62d_includes.mak 中将 BUILD_AWE_MULTI 设置为 0。 您能尝试使用单个 A53 内核音频应用程序图像而不是 SMP 图像吗?

    谢谢、
    Shreyansh

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

    感谢您的更新。 以及如何配合工作 配置 2 但当我尝试运行时 配置 3 、AWE 未连接到服务器。

    当前BUILD_AWE_MULTI设置为 1. 、我使用的是包括两个处理器图像的默认配置文件。 我还尝试了使用 A53(非 SMP)映像以及 C7x 映像、但这也不起作用。

    您能否说明一下在构建设置中定义或处理了用于编译三种不同配置(配置 1、配置 2 和配置 3)的更改的确切位置?

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

    你好,只是一个温柔的提醒我的问题上面。 如果有任何更新或指导、请告知我。 谢谢!

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

    尊敬的 Kaviyarasan:
    您能否共享日志(引导和应用程序)? 此外、共享 config3 的配置文件。

    谢谢、

    Shreyansh

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

    大家好、这是我在 makefile 中启用多实例后获得的日志。 我在下面附上了日志、下面还添加了相应的 CFG 文件以供参考。


    SYSFW 固件版本 11.0.7--v11.00.07 (Fancy Rat)
    SYSFW 固件版本 0xb
    SYSFW ABI 修订版 4.0

    [bootloader_profile]引导介质:闪存
    [bootloader_profile]引导介质时钟:166.667MHz
    [bootloader_profile]引导映像大小:262 KB
    [bootloader_profile]存在内核:
    r5f0-0
    [bootloader profile] System_init:21841us
    【引导加载程序配置文件】Board_init:0us
    [bootloader profile] Drivers_open:1us
    [bootloader profile] SBL Drivers_open : 194us
    [bootloader profile] Board_drivers 打开: 7us
    【引导加载程序配置文件】SBL Board_driversOpen : 1289us
    【引导加载程序配置文件】Sciclient Get 版本:10171us
    [bootloader profile] App_loadSelfcoreImage : 4939us
    [bootloader_profile] SBL 总用时:38445us

    图像加载完成、切换到应用程序...
    启动第二阶段引导加载程序
    025 10:58:22
    Sciserver 版本:v2025.04.0.0-REL.MCUSDK.K3.11.00.00.17+
    RM_PM_HAL 版本:v11.00.07
    正在启动 Sciserver… 通过
    [bootloader_profile]引导介质:闪存
    [bootloader_profile]引导介质时钟:166.667MHz
    [bootloader_profile]引导映像大小:5097 KB
    [bootloader_profile]存在内核:
    HSM-m4f0-0
    MCU-r5f0-0
    A530-0
    A530-1
    a531-0
    a531-1.
    c75ss0
    [bootloader profile] System_init:1926us
    【引导加载程序配置文件】Board_init:2us
    [bootloader profile] FreeRTosTask 创建: 299us
    【引导加载程序配置文件】SBL Drivers_open : 736us
    【引导加载程序配置文件】SBL Board_driversOpen : 119us
    [bootloader profile] App_loadImages:3141us
    【引导加载程序配置文件】App_loadMCUImages:4765us
    [bootloader profile] App_loadA53 Images : 51383us
    [bootloader profile] App_loadDSPImages : 62195us
    [bootloader_profile] SBL 总用时:124570us

    图像加载完成、切换到应用程序...
    启动 RTOS/裸 机应用程序
    mcu/r5f 调优服务器:配置编解码器...
    MCU/r5f 调优服务器:配置编解码器...完成
    mcu/r5f 优化服务器:配置 ipc...
    mcu/r5f 优化服务器:注册 IPC Notify clients...
    mcu/r5f 调优服务器:将 mcu/r5f ipc_notify 发送到代码 2
    mcu/r5f 调优服务器:将 mcu/r5f ipc_notify 发送到代码 7
    mcu/r5f 优化服务器:配置 ipc...
    mcu/r5f 优化服务器:正在等待远程核心
    远程核心:7 就绪

    配置文件:

    -------------------------------------------------------------------------------------------- #
    #
    #与 FLASHWRITER 脚本一起使用的默认配置文件#
    #
    -------------------------------------------------------------------------------------------- #
    #
    #默认此配置文件,
    #-指向此 EVM 的预编译闪存写入器、引导加载程序
    #-应用程序映像指向此 EVM 的 IPC rpmsg A53 应用程序映像的相对路径
    #-确保在运行此脚本之前构建此应用程序
    #-您可以自定义此配置文件以指向您自己的引导加载程序和/或应用程序映像
    #-如果您只想验证闪存内容而不是刷写文件,可以使用--operation=flashverify。
    #

    #第一个指向 sbl_uart_uniflash_stage1 二进制文件,它初始化 DDR 并接收 sbl_uart_uniflash_stage2 二进制文件
    -- flash-writer=sbl_prebuilt/am62dx-evm/sbl_uart_uniflash_stage1.release.hs_fs.tiimage

    #发送 sbl_uart_uniflash_stage2 二进制文件时、请确保在 SOC 存储器偏移 0x0 处进行闪存。
    #指向 sbl_uart_uniflash_stage2 二进制文件,它作为一个服务器来刷新一个或多个文件
    --file=../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62dx-evm/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage.hs_fs --operation=flash --flash-offset=0x0

    #对 OSPI PHY 调优攻击向量进行编程
    --操作=flash-phy-tuning-data

    #现在发送一个或多个文件到闪存或 flashverify 根据需要。 发送文件的顺序无关紧要

    #发送引导加载程序时、请确保闪存偏移为 0x0。 ROM 期望引导加载程序位于偏移量 0x0 处
    -file=sbl_prebuilt/am62dx-evm/sbl_ospi_stage1.release.hs_fs.tiimage --operation=flash --flash-offset=0x0

    #带 DM 映像的第二阶段引导加载程序在 0x80000 或您的引导加载程序配置的任何偏移处刷新
    --file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x80000

    # HSM 映像在 0x240000 或引导加载程序配置的任何偏移处刷新
    --file=../../tools/boot/HSMAppimageGen/board/am62dx-evm/hsm.appimage.hs_fs --operation=flash --flash-offset=0x240000

    #发送应用程序映像时,请确保以偏移 0x800000(默认值)或引导加载程序配置的任何偏移进行闪存
    #--file=../../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/mcu-r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x800000
    --file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/mcu-r5f/ti-arm-clang/audioApp_mcur5f.release.appimage.hs_fs --operation=flash --flash-offset=0x800000

    # C7x 映像以 0xA00000 或引导加载程序配置的任何偏移进行刷写
    #--file=./../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/c75ss0-0_freertos/ti-c7000/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000
    -file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/c75/ti-c7000/audioApp_c7x.release.appimage.hs_fs --operation=flash --flash-offset=0xA00000

    # A53 映像以 0x1200000 或引导加载程序配置的任何偏移进行刷写
    #--file=../../examples/drivers/ipc/ipc_rpmsg_echo/am62dx-evm/a53ss0-0_nortos/gcc-aarch64/ipc_rpmsg_echo.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000
    --file=C:/ti/AM62D-AWE-SDK_11.00.00.17/audio_app/am62d/a53-smp/gcc-aarch64/audioApp_a53-smp.release.appimage.hs_fs --operation=flash --flash-offset=0x1200000

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

    尊敬的 Kaviyarasan:

    我测试了 config3、它对我来说运行良好、我能够连接到 AWE。  

    请执行以下操作-  

    e2e.ti.com/.../config3.zip

    下载 config3.zip 并解压缩它。  

    在里面您可以找到 r5f 文件夹。 将当前的 R5 文件夹(在 audio_app/am62d 中)替换为 zip 文件内的 r5f 文件夹。 (其中包含其内部的第二阶段引导加载程序。)  

    我还附上了配置文件以供您参考。 请尝试一下、并告诉我。  

    此致、
    Ritapravo

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

    是的、现在它正在使用多实例。

    我怀疑 SBL 是在此设置中重建的、因为在我之前的设置中、多实例完全不起作用。 似乎需要正确的 SBL 初始化以及更新的 Makefile 设置来支持多实例。

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

    尊敬的 Kaviyarasan:

    感谢您的告知。

    此致、
    Ritapravo