国产车规MCU OTA方案总结

admin 2024年7月3日23:11:40评论3 views字数 1393阅读4分38秒阅读模式

点击上方蓝字谈思实验室

获取更多汽车网络安全资讯

国产车规MCU OTA方案总结

01

旗芯微FC4150 OTA

旗芯微FC4150是基于ARM Cortex-M4F内核的车规MCU,ASIL-B功能安全等级,内置HSM,支持国际、国家密码标准,基本框架如下:

国产车规MCU OTA方案总结

注意这个96 KB Rom,这大小很有意思,它把Flash Driver存放到里面,天然就具备了RWW属性,针对单bank来说,当我们要擦PFlash时,省却了copy driver到ram这一步,这也看到了他们对于自己芯片和代码非常自信。

由于其主频、Memory容量、功能安全等级的限制,主要面向车身相关应用,例如车窗、座椅、车门等等。

国产车规MCU OTA方案总结

该产品系列支持P-Flash分别为2M、1M、1Msuperfit、512K,有意思的是仅1Msuperfit、512K支持OTA功能,容量高一点如2M反而还不支持OTA,不知道是不是和最初flash ip选型有关。

FC4150F512 支持双bank swap功能,当开启该功能后,硬件OTA控制器支持 2x256KB Flash,每个Bank包含256个Sector。

相较于英飞凌整个Bank的AB切换,FC4150的OTA Flash地址是可以进行配置,颗粒度为8K,与之相关的配置项为:OTA_EN, OTA_START_ADDR, OTA_END_ADDR, OTA_VER_LOC。

当然,配置方法和大厂车规MCU的UCB、OptionByte、DCM差不多,只是换了个说法叫NVR。

国产车规MCU OTA方案总结

上电后,FMC会把上述配置信息读取到内部对应寄存器里,总结如下:

国产车规MCU OTA方案总结

在使用上有个点需要注意在OTA_CTRL里面,需要设置OTA Active Bank,它是依据OTA_VER_LOC里定义地址存放的版本信息来进行对比,

  • 当OTA_CTRL.OTA_ACTIVE = 0,PFlash0 为Active Bank;

  • 当OTA_CTRL.OTA_ACTIVE = 1,PFlash1为Active Bank。

示意如下:

国产车规MCU OTA方案总结

OTA的区域是根据OTA_Start address、End Address进行配置,那这是否可以认为假设PF0只配置128K用于OTA,那么PFlash0、1后面的128KB是可以使用的,这就变成了局部OTA,示意如下:

国产车规MCU OTA方案总结

02

云途YTM32B1MD OTA

YTM32B1MD是一款功能安全ASIL B的车规MCU,使用ARM Cortex-M33内核,最高主频120MHz,PFlash 共512KB,分为2*256KB两个Bank,支持RWW属性,因此也支持OTA。

在该片子里使用EFM(Embedded Flash Module)来管理AB SWAP,通过设置EFM CMD寄存器中 指令Boot Swap来进行切换;切换后需要进行系统复位后才有效,可以用过EFM STS.BOOT_INFO状态来进行判断当前处于哪个Bank,逻辑如下:

国产车规MCU OTA方案总结

03

小结

目前看起来,最近几年新出的国产MCU普遍都会把AB Swap硬件特性作为一个需求进行实现,为汽车ECU软件升级和回滚机制做准备,从原理上看起来是比较清晰的,设计和使用起来也比较方便,就是不确定容不容易锁板子。

不过在这种AB Swap在功能安全和信息安全上的设计,我并没有看到国产MCU在这方面的考虑,从0到1的过程非常艰辛,也非常需要理论基础和经验。

 end 

国产车规MCU OTA方案总结

 专业社群 

国产车规MCU OTA方案总结

 精品活动推荐 

国产车规MCU OTA方案总结
国产车规MCU OTA方案总结
国产车规MCU OTA方案总结

原文始发于微信公众号(谈思实验室):国产车规MCU OTA方案总结

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月3日23:11:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   国产车规MCU OTA方案总结https://cn-sec.com/archives/2915009.html

发表评论

匿名网友 填写信息