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.

[参考译文] AM263P4:为 SBL 启用 XIP

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1440589/am263p4-enabling-xip-for-sbl

器件型号:AM263P4

工具与软件:

你(们)好

对于我们的项目、我要为 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

您是否有如何实现这一点的分步指南?

非常感谢您的帮助。

此致

单端

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [quote userid="237858" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1440589/am263p4-enabling-xip-for-sbl 对于我们的项目、我想为 SBL 启用 XIP。

    我认为这是不可能的。 根据以下文档: 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

    此致

    单端