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.
工具与软件:
你(们)好
对于我们的项目、我要为 SBL 启用 XIP。
从 OSPI SBL 示例开始、我似乎无法确定如何执行该操作。
这种要求在 RAM 中为下一个要加载执行的多核应用留出最大空间的原因。
我想我可以在 TCMB 中包含 SBL 所需的"RAM"、但我想在 OCM 中尽量保留。
目前按项目构建正常、但 gen 映像失败
[110]回溯(最近一次调用、最后一次):
[111]<module>中的"C:\ti\mcu_plus_sdk_am263px_10_00_00_35\source\security\common\tools\boot\signing\mcu_rom_image_gen.py"第441行
[112]引发异常(exception_msg)
[113]例外情况: SBL/HSM 大小应小于983000
您是否有如何实现这一点的分步指南?
非常感谢您的帮助。
此致
单端
我认为这是不可能的。 根据以下文档: AM26x 器件中的 ROM 引导流程 SBL 位置固定在 OCRAM 中的0x70002000。
通过 仅将此 RAM 用于变量、您可以在应用代码中回收此 RAM、但当然、您不能将程序代码(.text)放在此处。
你(们)好
我不确定 SBL 与其他在 XIP 中运行的应用有何不同。
根据引导流程、ROM 引导加载程序实际上期望起始点位于 0x70002000、并且一些初始化代码将复制到地址0的 TCMA 中。
如果 main 位于 RAM 中、但.text 的其余"指向"到闪存不起作用?
此处需要关注的是代码大小估计为~0x60000 +其所有 RAM 要求的引导加载程序的大小。
当前 ospi SBL 示例需要已经~91KB。 假设所有的 RAM 要求都可以包含在 TCM 中、那么在应用被载入后仍然保留~0.5Mb"空"。
应用程序可以回收某些空间、将此区域用作共享存储器或其他东西、但占用的空间非常大、因此建议将其最小化。
理解引导流程需要遵守、但上述原则是否有效?
如果是、那么您是否能够帮助了解需要什么以及如何实现这一点?
期待您的阅读。
此致
单端
如果 main 在 RAM 中、但其余.text "point"到闪存不起作用?
你很可能是对的。 我想我将由 TI 来回答。
尊敬的 Seb:
正如 Kier 正确指出的那样、SBL 的 XIP 是不可能实现的。 SBL 位置固定在 OCRAM 中并被保留、此处为了节省存储器、最好是在引导加载程序切换到应用程序后回收应用程序中的 SBL 保留空间。
此致、
Shaunak
你(们)好
好的、谢谢或澄清。
我当时还在尝试其他场所、以最大程度地减少 OCM 中的 SBL 足迹。
非常感谢您对该主题的帮助:e2e.ti.com/.../5537231
此致
单端