Other Parts Discussed in Thread: UNIFLASH
器件型号: TMDSCNCD263P
Thread 中讨论的其他器件: UNIFLASH
我遵循了随附的 pdf 中的快速入门指南。 我到达了应该从串行终端读取一些“CCC“的器件、但无法从 Sitara 卡读取任何内容。

此外、我想澄清一下用户指南的表 2-4、 spruj86d.pdf — 各种引导加载程序选项的优缺点是什么?
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.
Other Parts Discussed in Thread: UNIFLASH
器件型号: TMDSCNCD263P
Thread 中讨论的其他器件: UNIFLASH
我遵循了随附的 pdf 中的快速入门指南。 我到达了应该从串行终端读取一些“CCC“的器件、但无法从 Sitara 卡读取任何内容。

此外、我想澄清一下用户指南的表 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/63726941) 在这种情况下,“SBL“究竟是什么意思?
[/报价]1、SBL 本质上是次级引导加载程序、负责器件存储器、时钟和一些外设的基本初始化、还负责通过某个接口加载应用程序映像(例如,如果映像在闪存中,则将其从闪存获取到 RAM 并引导、或者如果闪存中没有映像、则通过 UART 从主机 PC 获取应用程序映像并引导)。 可在此处研究 AM26x 引导流程:
ROM 引导流程: dev.ti.com/.../node
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 工具。
此致、
[/quote]
Shaunak