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.

[参考译文] TMDSCNCD263P:无法从 Hello World 示例中查看 CCC

Guru**** 2925550 points

Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1652200/tmdscncd263p-unable-to-see-cccs-from-hello-world-example

器件型号: TMDSCNCD263P
Thread 中讨论的其他器件: UNIFLASH

spradf9.pdf 

我遵循了随附的 pdf 中的快速入门指南。 我到达了应该从串行终端读取一些“CCC“的器件、但无法从 Sitara 卡读取任何内容。  

Picture1.png

 

此外、我想澄清一下用户指南的表 2-4、 spruj86d.pdf — 各种引导加载程序选项的优缺点是什么?  

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

    你(们)好

    [引述 userid=“618580“ url=“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1652200/tmdscncd263p-unable-to-see-cccs-from-hello-world-example

    我遵循了随附的 pdf 中的快速入门指南。 我到达了应该从串行终端读取一些“CCC“的器件、但无法从 Sitara 卡读取任何内容。  

    [/报价]

    您能分享一下您正在使用的引导模式吗? 如果是控制卡、则 UART 引导模式为:

    如果是 LaunchPad、则 UART 引导模式为:  

    此外、我想就用户指南的表 2-4 进行澄清: spruj86d.pdf — 各种引导加载程序选项的优缺点究竟是什么?  [/报价]

    这在很大程度上取决于您要在设计中使用的接口和引导应用程序、您的计划是使用 QSPI 或 OSPI 闪存、以及您要在什么 xSPI 模式/协议中运行。

    例如、

    - QSPI/OSPI 引导用于从通过 QSPI/OSPI 连接的闪存接口引导。

    - Dev 引导模式是在没有 SBL 的应用程序开发过程中使用的、它依靠 CCS GEL 脚本进行初始化

    - UART 引导模式用于通过 UART 接收应用程序映像。

    我可以在下面列出一些差异:

    启动模式 优势 缺点
    OSPI (8S) 八路读取 最高吞吐量(8 位宽读取);用于生产的最快自主引导;支持 SFDP 自动发现   需要 OSPI 闪存硬件;更复杂的 PCB 布线(8 条数据线);需要 SBL 初始化步骤  
    QSPI (4S) 四路读取 速度和简单性之间的良好平衡;从闪存自主引导;路由比 OSPI 简单   吞吐量低于 OSPI;仍需要外部闪存
    QSPI (1S) 单次读取 最简单的闪存接口(最少的数据线);自主启动   基于闪存的最慢引导模式;带宽有限
    OSPI/QSPI + UART 回退 容错—首先尝试闪存引导、如果主/辅助 SBL 映像出现故障、则回退到 UART;对于现场部署的系统是稳健的   增加了复杂性;需要 UART 连接作为备份提供;如果回退触发、引导时间会更长
    UART 最大灵活性;通过 XMODEM 从外部主机下载 SBL;非常适合原型设计和初始闪存编程   最慢引导(串行传输);需要主机连接;不适用于独立生产引导;需要在编程和运行之间切换引导模式  
    DevBoot 无需 SBL;GEL 脚本可处理初始化;开发期间的最快调试路径  

    仅进行开发 — 不适用于生产;需要 JTAG 调试器;无独立运行

    • 生产系统:使用 OSPI 八路读取或 QSPI 四路读取以实现最快的自主引导 
    • 具有现场稳定性的系统:如果应用需要从损坏的映像中恢复、请使用回退模式(闪存+ UART) 
    • 开发/原型设计:使用 DevBoot(具有 JTAG)或 UART 引导以提高灵活性 

    此致、

    Shaunak

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

    我使用的是控制卡、 而不是 LaunchPad。

    让我澄清以下几点:

    1) 在这种情况下,“SBL“究竟是什么意思?

    2) 因此、快速入门指南 spradf9 仅当我要使用用 Python 编写的 GEL 脚本时才适用? Devboot 模式仅与 GEL 脚本一起使用?

    3) 所以,对于卡的易失性或非易失性存储器的典型刷写,我可以只在默认情况下将其保留在 UART 模式?  

    4) 我使用的是 CCS20.5.1。 在 UART 模式下、如何在刷写卡的易失性和非易失性存储器之间切换?

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

    您好、

    [引述 userid=“618580“ url=“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1652200/tmdscncd263p-unable-to-see-cccs-from-hello-world-example/6372694

    1) 在这种情况下,“SBL“究竟是什么意思?

    [/报价]

    1、SBL 本质上是次级引导加载程序、负责器件存储器、时钟和一些外设的基本初始化、还负责通过某个接口加载应用程序映像(例如,如果映像在闪存中,则将其从闪存获取到 RAM 并引导、或者如果闪存中没有映像、则通过 UART 从主机 PC 获取应用程序映像并引导)。 可在此处研究 AM26x 引导流程:

    ROM 引导流程: dev.ti.com/.../node

    SBL 引导流程:  https://dev.ti.com/tirex/explore/node?isTheia=false&node=A__AcihA9ANR54nmG9pF-hOHg__AM26X-ACADEMY__t0CaxbG__LATEST

    SDK 在 mcu_plus_sdk/examples/drivers/boot/上提供了多个引导加载程序示例

    [引述 userid=“618580“ url=“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1652200/tmdscncd263p-unable-to-see-cccs-from-hello-world-example/6372694

    2) 因此、快速入门指南 spradf9 仅当我要使用用 Python 编写的 GEL 脚本时才适用? Devboot 模式仅与 GEL 脚本一起使用?

    [/报价]

    2.这是一份快速入门指南,可帮助您从 SDK 加载和运行示例。 是的、DEVBOOT 模式主要用于 GEL 脚本。 GEL 脚本不是使用 python 编写的。  Code Composer Studio (CCS) GEL(通用扩展语言)脚本是使用基于 C 语言的语法进行解释的专有语言编写的

    下面我将列出一些其他选项:

    2.1 将 DEVBOOT 模式与 GEL 脚本配合使用、启动.ccxml 文件并为应用加载.out 二进制文件

    2.2 闪存 SBL NULL 使用 TI UniFlash 工具、并使用.ccxml 文件启动目标配置和调试会话、连接到 CPU 并加载.out 二进制文件(请参阅 SDK 文档:software-dl.ti.com/.../EXAMPLES_DRIVERS_SBL_NULL.html)

    2.3 如果要将应用程序刷写到外部闪存存储器并从闪存引导、请使用 SBL OSPI 多核 ELF 引导加载程序、并使用 TI UniFlash 工具刷写引导加载程序和 TI .mcelf 二进制文件(观看视频,获取参考:www.ti.com/.../6362394255112)

    3) 那么对于卡的易失性或非易失性存储器的典型刷写、我是否可以将其默认保留在 UART 模式下?  [/报价]

    如果要刷写到非易失性外部闪存存储器中、可以使用 UART 或 OSPI 引导模式、请参阅上面链接的视频。 您可以使用 TI UniFlash 工具将应用程序.mcelf 映像编程到闪存中。

    4) 我使用的是 CCS20.5.1。 在 UART 模式下、如何在刷写卡的易失性和非易失性存储器之间切换?

    您只需要更改 SBL 脚本、如果要使用 UART 引导模式、则可以将控制卡设置为 UART 引导模式、将其连接到 PC、并使用 UniFlash 工具或 python 脚本发送映像。

    或者、SDK 中也有 python 脚本、网址为: mcu_plus_sdk/tools/boot/、 以防您不想使用 TI UniFlash 工具。

    https://software-dl.ti.com/mcu-plus-sdk/esd/AM263PX/26_00_00_06/exports/docs/api_guide_am263px/EXAMPLES_DRIVERS_SBL_UART.html

    https://software-dl.ti.com/mcu-plus-sdk/esd/AM263PX/26_00_00_06/exports/docs/api_guide_am263px/EXAMPLES_DRIVERS_SBL_UART_UNIFLASH.html

    此致、
    Shaunak

    [/quote]