<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 汽車(chē)電子 > 設計應用 > 國產(chǎn)車(chē)規MCU OTA方案總結

國產(chǎn)車(chē)規MCU OTA方案總結

作者:快樂(lè )的肌肉 時(shí)間:2025-03-25 來(lái)源:汽車(chē)MCU軟件設計 收藏

今天沒(méi)有廢話(huà),啪一下很快,把目前接觸到的國內帶eFlash的車(chē)規MCU硬件方案做一個(gè)梳理。

本文引用地址:http://dyxdggzs.com/article/202503/468597.htm

1. 旗芯微FC4150

旗芯微FC4150是基于A(yíng)RM Cortex(快去審核下官網(wǎng)介紹,少了個(gè)T)-M4F內核的車(chē)規MCU,ASIL-B功能安全等級,內置HSM,支持國際、國家密碼標準,基本框架如下:

image.png

注意這個(gè)96 KB Rom,這大小很有意思,它把Flash Driver存放到里面,天然就具備了RWW屬性,針對單bank來(lái)說(shuō),當我們要擦PFlash時(shí),省卻了copy driver到ram這一步,這也看到了他們對于自己芯片和代碼非常自信。

由于其主頻、Memory容量、功能安全等級的限制,主要面向車(chē)身相關(guān)應用,例如車(chē)窗、座椅、車(chē)門(mén)等等。

image.png

該產(chǎn)品系列支持P-Flash分別為2M、1M、1Msuperfit、512K,有意思的是僅1Msuperfit、512K支持功能,容量高一點(diǎn)如2M反而還不支持OTA,不知道是不是和最初flash ip選型有關(guān)。

FC4150F512 支持雙bank swap功能,當開(kāi)啟該功能后,硬件OTA控制器支持 2x256KB Flash,每個(gè)Bank包含256個(gè)Sector。

相較于英飛凌整個(gè)Bank的AB切換,FC4150的OTA Flash地址是可以進(jìn)行配置,顆粒度為8K,與之相關(guān)的配置項為:OTA_EN, OTA_START_ADDR, OTA_END_ADDR, OTA_VER_LOC。

當然,配置方法和大廠(chǎng)車(chē)規MCU的UCB、OptionByte、DCM差不多,只是換了個(gè)說(shuō)法叫NVR。

image.png

上電后,FMC會(huì )把上述配置信息讀取到內部對應寄存器里,總結如下:

image.png

在使用上有個(gè)點(diǎn)需要注意在OTA_CTRL里面,需要設置OTA Active Bank,它是依據OTA_VER_LOC里定義地址存放的版本信息來(lái)進(jìn)行對比,

  • 當OTA_CTRL.OTA_ACTIVE = 0,PFlash0 為Active Bank;

  • 當OTA_CTRL.OTA_ACTIVE = 1,PFlash1為Active Bank。

示意如下:

image.png

OTA的區域是根據OTA_Start address、End Address進(jìn)行配置,那這是否可以認為假設PF0只配置128K用于OTA,那么PFlash0、1后面的128KB是可以使用的,這就變成了局部OTA,示意如下:

image.png

這么一看,確實(shí)吸納了很多前人的經(jīng)驗。

2. 云途YTM32B1MD OTA

YTM32B1MD是一款功能安全ASIL B的車(chē)規MCU,使用ARM Cortex-M33內核,最高主頻120MHz,PFlash 共512KB,分為2*256KB兩個(gè)Bank,支持RWW屬性,因此也支持OTA。

在該片子里使用EFM(Embedded Flash Module)來(lái)管理AB SWAP,通過(guò)設置EFM CMD寄存器中 指令Boot Swap來(lái)進(jìn)行切換;切換后需要進(jìn)行系統復位后才有效,可以用過(guò)EFM STS.BOOT_INFO狀態(tài)來(lái)進(jìn)行判斷當前處于哪個(gè)Bank,邏輯如下:

image.png

3.小結

目前看起來(lái),最近幾年新出的國產(chǎn)MCU普遍都會(huì )把AB Swap硬件特性作為一個(gè)需求進(jìn)行實(shí)現,為汽車(chē)ECU軟件升級和回滾機制做準備,從原理上看起來(lái)是比較清晰的,設計和使用起來(lái)也比較方便,就是不確定容不容易鎖板子。

不過(guò)在這種AB Swap在功能安全和信息安全上的設計,我并沒(méi)有看到國產(chǎn)MCU在這方面的考慮,從0到1的過(guò)程非常艱辛,也非常需要理論基礎和經(jīng)驗。



關(guān)鍵詞: 汽車(chē)MCU OTA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>