瑞萨RA系列的MCU都支持MCUboot模块。Reesas RA FSP版本需要在 v3.0.0以上,当前仅支持覆盖和交换模式升级。下载固件的升级方式由应用程序提供。
一、MCUboot分区
MCUboot将存储区划分为:MUCboot、主分区、辅助分区、交换暂存区。如下图所示:
二、MCUboot引导和更新过程
1,引导过程
当CPU从复位中释放启动引导加载程序时,如果辅助分区中没有标记更新,则从主分区启动应用程序映像;如果辅助分区中有标记更新,则根据配置的更新策略更新主分区中的应用程序映像。
2,应用程序更新策略
1)覆盖模式Overwrite
在覆盖更新模式下,总是从主分区执行应用程序,当检测到更新标志时,将辅助分区中的应用程序映像将覆盖主分区应用程序映像。
优点:抗停电故障;内存开销小,无交换暂存区。
缺点:不支持新映像检测;不支持自动应用程序回退。
2)交换模式Swap
在交换更新模式下,也是从主分区执行应用程序,当检测到更新标志时,将主分区和辅助分区中的应用程序映像交换。
优点:支持应用程序回退;支持映像自检;抗停电故障;使用外部Flash时支持加密映像
缺点:需要分配交换暂存区,flash开销大;内存开销大;更新中flash读写频繁使用寿命减短。