我已 从 08.03/08.04移动至08.05、并且引导时间已延长。 如何优化相同的?
与 HS-FS 器件相比、HS-SE 器件的引导时间非常长。 如何优化相同的?
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.
我已 从 08.03/08.04移动至08.05、并且引导时间已延长。 如何优化相同的?
与 HS-FS 器件相比、HS-SE 器件的引导时间非常长。 如何优化相同的?
此常见问题解答只涉及示例中包含的开箱即用更改。 如果用户使用的 SBL 是自定义 SBL、则确定与 SDK 中提供的 SBL 有何差异。
如果您的查询更多地关注导致此问题的 SDK 中的更改、则此常见问题解答将回答其中的一些查询。
汽车应用中应用引导的顶视图
问:是否强制在 HS-FS 器件中加载 HSMRt 固件?
要检查器件是 HS-FS 还是 HS-SE 器件、请参阅此链接- https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1170785/faq-mcu-plus-sdk-am243x-how-to-identify-if-the-device-is-gp-device-or-hs-device
如果器件是 HS-FS 器件、则加载 HSMRt 固件(TIF-MCU 固件) 可选 。 您可以选择对其进行编程 跳过 如果您的应用不需要使用 HSMRt 服务或默认情况下关闭的加密硬件加速器、则情况相同。
特性 | SBL 大小 | HSM 运行时间大小 | 应用大小 | 结束-结束引导时间(HS-FS) | 引导时间中断 | |||
---|---|---|---|---|---|---|---|---|
RBL 引导时间(HS-FS) | SBL 初始化时间(HS-FS) | HSMRt 加载时间(HS-FS) | SBL 加载后时间(HS-FS) | |||||
加载了 HSMRt 固件的 SBL | 183 KB | 32 KB |
24 KB |
205.547ms |
52.765ms |
1.292ms |
139.763ms |
9.98ms |
SBL、没有加载 HSMRt 固件 | 48KB | 32 KB | 24 KB |
50.066ms |
39.540毫秒 |
1.914ms |
-- | 9.5ms |
注意 : 使用8.06 SDK 和 AM263 PG 1.1捕获的数据
TI 建议始终在器件中保留 HSMRt、因为这将在 用户 从 HS-FS 器件迁移到 HS-SE 器件后减少增量、因为 HSMRt 固件(TIF-MCU 固件)对于 HS-SE 器件是强制性的。
问:是否有办法在不删除 HSMRt 固件的情况下缩短启动时间,使其成为 HS-FS 器件和 HS-SE 器件的统一解决方案?
为了详细说明这一点、我们将优化器件启动的不同部分:
1.优化 RBL 引导时间
除了减小 SBL 的大小之外、无法优化 RBL 的引导时间。
可以。 目前、SBL 已构建为包含此类 TIF-MCU 固件(图像适用于 AM263x)--
这会使 ROM 引导加载程序验证更大的 SBL 映像(由于采用了 HSMRt 映像)。 当时、ROM 已完成 HSMRt 映像验证 Bootloader_socLoadHsmRtFw 因此、通过 SBL 映像验证 HSM 运行时固件是现场器件的过度使用。
SDK 在 SBL 中提供合并的映像以支持不同类型的 SBL、如 SBL_QSPI、SBL_UART、SBL_CAN、SBL_SD 等 这使得设计和到3P HSM 堆栈的迁移更简单。
以优化相同特性-
这将减少 RBL 初始化固件启动时间所需的时间。
2.通过将 SBL 频率切换为最大值来优化 SBL 运行时间。
默认情况下、SBL 以较低的频率运行、这会影响性能。 因此、一旦用户 PLL 初始化完成、用户可以将正在执行 SBL 的 R50_0 CPU 移动到400MHz。
3.实现应用程序 CPU 负载和 HSM 运行时加载和执行的并行化
更改 HSM 运行时加载的配置、确保其中许多内容是并行的。
这是一个补丁文件、涉及上述所有更改。 用户可以自由地进行更有效的更改以获得更短的引导时间。
/cfs-file/__key/communityserver-discussions-components-files/908/boot_5F00_time_5F00_1.diff
注意事项
SBL 每次所花费的时间细分及其更改
特性 | SBL 大小 | HSM 运行时间大小 | 应用大小 | 结束-结束引导时间(HS-FS) | 引导时间中断 | ||||
---|---|---|---|---|---|---|---|---|---|
RBL 引导时间(HS-FS) | SBL 初始化时间(HS-FS) | HSMRt 将闪存复制到 RAM | HSMRt 加载时间(HS-FS) | SBL 加载后时间(HS-FS) | |||||
包含 HSMRt 固件的 SBL (默认开箱即用) | 183 KB | 32 KB |
24 KB |
205.547ms |
52.765ms |
1.292ms |
-- |
139.763ms |
9.98ms |
SBL 未包含 HSMRt 固件 | 49 KB | 32 KB | 24 KB |
202.361ms |
39.516ms |
1.887ms |
12.081ms |
139.453ms |
9.416毫秒 |
最高时钟(400MHz)上未包含 HSMRt 固件的 SBL | 49 KB | 32 KB |
24 KB |
47.533ms |
32.289ms |
0.1ms |
2.287ms |
7.978ms |
4.879ms |
未在最高时钟(400MHz)上集成 HSMRt 固件的 SBL 和启用 HSM 的并行应用 | 49 KB | 32 KB | 24 KB |
43.402ms |
33.034ms |
0.1ms |
2.287ms |
3.147ms |
4.834ms |
注意 : 使用8.06 SDK 和 AM263 PG 1.1捕获的数据
这些数字是来自 SDK 所提供示例的引导时数字。 这些数据并不是这些器件能够提供的优化或最佳数据。