0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AURIX TC3XX系列最佳的SOTA方案

汽車ECU開發(fā) ? 來源:汽車ECU開發(fā) ? 2023-06-14 09:08 ? 次閱讀

01

什么是SOTA?

SOTA全稱是云端軟件升級(Software updates Over The Air),就是指在不連接燒寫器的情況下,通過CANUART或其它通訊方式,實現(xiàn)應用程序的更新。 在進行SOTA時,需要把舊的應用程序擦除,把新的應用程序?qū)懭?。常?guī)的實現(xiàn)方式需要分別開發(fā)BootLoader程序和APP程序,MCU上電先運行BootLoader,BootLoader根據(jù)情況選擇是否跳轉(zhuǎn)到APP和是否進行程序更新。具體來說有以下幾種方式: 方案一:更新程序時,由APP接收更新數(shù)據(jù)并暫存于Flash,再將APP更新標志位置位;MCU重啟時,BootLoader檢查更新標志位,如有效,則擦除舊的APP,再將暫存于Flash的新APP數(shù)據(jù)寫入APP運行地址處。該方案的優(yōu)點是更新數(shù)據(jù)的接收由APP完成,BootLoader不需要通訊協(xié)議棧,代碼量更小,且數(shù)據(jù)傳輸中斷時,原有APP不損壞。缺點是需要額外的Flash空間暫存更新數(shù)據(jù)。 方案二:BootLoader中內(nèi)置通訊協(xié)議棧,更新時,先向MCU發(fā)送指令使其跳轉(zhuǎn)到BootLoader,之后先擦除舊APP,在接收新APP的同時直接將其寫入Flash的APP運行地址處。該方案的優(yōu)點是不需要額外的Flash暫存數(shù)據(jù),缺點是BootLoader代碼更復雜,且如果數(shù)據(jù)傳輸發(fā)生中斷,舊的APP將不能被恢復。該方案更適合Flash容量較小的MCU。 方案三:將方案一和方案二相結(jié)合,即在BootLoader程序中內(nèi)置通訊協(xié)議棧,更新時,先向MCU發(fā)送指令使其跳轉(zhuǎn)到BootLoader,之后接收更新數(shù)據(jù)的時候,采用方案一的方法,先將數(shù)據(jù)暫存于Flash,待數(shù)據(jù)全部接收完成后再擦除舊的APP,寫入新的APP。該方案結(jié)合了方案一和方案二的優(yōu)點,且能在沒有APP或APP損壞的狀態(tài)下實現(xiàn)程序更新。缺點是BootLoader代碼量更大,F(xiàn)lash空間占用更大。 方案四:在Flash中劃分出兩塊相同大小的區(qū)域,分為A區(qū)和B區(qū),都用來存放APP,但同一時間下只有一個區(qū)的APP是有效的,分別設置一個標志位標識其有效性。初始狀態(tài)下先將APP寫入A區(qū),更新的時候,將新的APP寫入B區(qū),再把A區(qū)的APP擦除,同時更新兩個區(qū)的有效性標志位狀態(tài)。BootLoader中判斷哪個區(qū)的APP有效,就跳轉(zhuǎn)到哪個區(qū)運行。這種方法不需要重復拷貝APP數(shù)據(jù),但最大的一個缺陷是AB區(qū)的APP程序運行地址不同,需要分別編譯,從而使得可應用性大大降低。 經(jīng)過上面的分析,可以看出來每種方案都有其優(yōu)缺點,對于Flash容量較小的MCU,通常采用方案二,因為沒有過多的空間暫存APP更新數(shù)據(jù)。但對于TC3XX這一類的MCU來說,F(xiàn)lash容量通常都很大,足夠用,所以通常要先把APP暫存下來再進行更新,防止數(shù)據(jù)傳輸中斷導致APP不可用。上面的方案一、三、四都能實現(xiàn),但并不完美。TC3XX系列的SOTA機制更類似于方案四,但它的Flash支持兩種地址映射方式,從而使得APP編譯時不需要區(qū)分AB區(qū),使用相同的地址即可,從而避免了方案四的硬傷,為我們提供了一種最佳的SOTA方案。

02

TC3XX的Flash地址映射方式

我們以TC397的Flash為例,用于存儲程序代碼的PFlash的標準地址映射方式(Standard Address Map)如下,表中PF0-PF5代表物理意義上的5塊Flash。 f72fb076-0a4e-11ee-962d-dac502259ad0.png 第二種地址映射方式被稱為 Alternate Address Map,如下表所示,標準模式下PF0-1的地址范圍現(xiàn)在被映射到了PF2-3,PF4的地址范圍被映射到了PF5。 f760a816-0a4e-11ee-962d-dac502259ad0.png

03

TC3XX的SOTA功能描述

當SOTA功能激活時,PFLash被劃分為兩部分,一部分用來存儲可執(zhí)行代碼(active bank),另一部分可用來讀取和寫入(inactive bank)。當APP更新完畢后,兩個部分互換,即切換上面兩種地址映射方式。在標準模式下使用PF0-1和PF4作為active bank,后文稱作組A,在Alternate模式下使用PF2-3和PF5作為active bank,后文稱作組B,就可以實現(xiàn)上述方案四,且能寫入完全相同的APP程序,以相同的地址進行運行。 需要注意的是,所有NVM操作都是通過DMU使用PFLASH的物理系統(tǒng)地址執(zhí)行的,也就是說,NVM操作總是使用標準的地址映射,而不管選擇使用哪種地址映射。“NVM操作”是一個術(shù)語,用于任何針對FLASH的命令,如程序、擦除等,但不包括讀取和執(zhí)行代碼。 有關(guān)SOTA地址映射的參數(shù)在Flash中的UCB(User Configuration Block)中進行配置,在UCB中配置后,只有當下次MCU復位的時候才會更新配置。

04

SOTA的配置參數(shù)

(1)SOTA Mode Enable 該參數(shù)決定是否開啟SOTA模式,在寄存器Tuning Protection Configuration中的SWAPEN進行配置,定義如下: f789b59e-0a4e-11ee-962d-dac502259ad0.pngf7b1d15a-0a4e-11ee-962d-dac502259ad0.png (2)Bank Swap 在UCB_SWAP區(qū)域中,對SOTA模式下使用哪種地址映射進行配置。 UCB_SWAP區(qū)域包含以下內(nèi)容: f7e01574-0a4e-11ee-962d-dac502259ad0.png 其中最重要的是前四個,我們分別來看一下: ① MARKERLx (x=0-15) f7f66d38-0a4e-11ee-962d-dac502259ad0.pngf808b740-0a4e-11ee-962d-dac502259ad0.png MARKERL中的SWAP就是標記使用標準地址映射還是Alternate地址映射。 ② MARKERHx (x=0-15) f81e49fc-0a4e-11ee-962d-dac502259ad0.png MARKERH中存著與之相對應的MARKERLx.SWAP的入口地址,是用來做校驗的。 ③ CONFIRMATIONLx (x=0-15) f8431c64-0a4e-11ee-962d-dac502259ad0.png CONFIRMATIONL是確認代碼,要寫入固定的0x57B5327F,上面的MARKERLx.SWAP才有效。 ④ MARKERHx (x=0-15) f8740d92-0a4e-11ee-962d-dac502259ad0.png MARKERH中存著與之對應的 CONFIRMATIONLx.CODE的入口地址,也是用來做校驗的。 ?

05

SOTA的初始化配置

初始化狀態(tài)是使用標準地址映射,此時SOTA模式未啟用。按以下步驟啟用SOTA: ① 用燒寫器把APP燒寫進PFlash的組A地址處。 ② 向MARKERL0寫入0x00000055。 ③ 向MARKERH0寫入MARKERL0的系統(tǒng)地址。 ④ 向CONFERMATIONL0寫入0x57B5327F。 ⑤ 向CONFERMATIONH0寫入CONFERMATIONL0的系統(tǒng)地址。 ⑥ 將UCB_OTP0中SWAPEN標志位置為Enable。 ⑦ 重啟MCU。 經(jīng)過上面的步驟,就事MCU進入了SOTA模式,其中步驟②-⑤是為了啟用標準地址映射。手冊中給了如下的流程圖供參考,其中一些加解密的步驟我這里省略了,暫時沒有詳細研究: f885e17a-0a4e-11ee-962d-dac502259ad0.png

06

SOTA的后續(xù)配置

上面說的是第一次啟用SOTA時的配置,下面我們就來看一下SOTA啟用后,進行APP更新的步驟: ① 將新的APP寫入PFlash中未激活的部分,即上文提到的Inactive Bank,并進行準確性校驗。 ② 如果新的APP被寫入組B,則向MARKERLx.SWAP寫入0x000000AA,啟用Alternate地址映射模式;如果新的APP被寫入組A,則向MARKERLx.SWAP寫入0x00000055,啟用標準地址映射模式。(x是0-15的值,從0開始向上遞增,由上文可知UCB_SWAP最多能存儲16組標志值,存滿后再擦除重新寫入。) ③ MARKERHx.ADDR、CONFIRMATIONLx.CODE和CONFIRMATIONHx.ADDR配置同上文。 ④ 向CONFIRMATIONL(x-1).CODE再次寫入0xFFFFFFFF,來使上一組UCB_SWAP值失效。向PFlash再次寫入全1的值不會導致PFlash操作錯誤。 手冊中給了下面這個流程圖供參考: f89ee148-0a4e-11ee-962d-dac502259ad0.png ? 以上就是Tricore TC3XX系列SOTA機制的介紹,我目前也只是看了手冊,還沒有實際運用過,有不正確的地方歡迎大家交流討論。 最后只要將此文章分享至朋友圈,集20個贊,截圖后臺發(fā)給小編,即可獲取下圖小編整理的一些TC3XX的資料。

f96babec-0a4e-11ee-962d-dac502259ad0.png

f981f03c-0a4e-11ee-962d-dac502259ad0.png
責任編輯:彭菁

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5121

    瀏覽量

    88961
  • APP
    APP
    +關(guān)注

    關(guān)注

    33

    文章

    1585

    瀏覽量

    73823
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3824

    瀏覽量

    82443
  • Aurix
    +關(guān)注

    關(guān)注

    1

    文章

    73

    瀏覽量

    11268

原文標題:AURIX TC3XX系列的SOTA機制詳解

文章出處:【微信號:eng2mot,微信公眾號:汽車ECU開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 0人收藏

    評論

    相關(guān)推薦
    熱點推薦

    英飛凌TC3XX系列多核MCU學習筆記(1)

    聲明:本文是在學習英飛凌 TC3XX系列多核 MCU 過程中整理的筆記,便于后期復習!
    發(fā)表于 09-19 09:54 ?3487次閱讀
    英飛凌<b class='flag-5'>TC3XX</b><b class='flag-5'>系列</b>多核MCU學習筆記(1)

    英飛凌TC3XX系列多核MCU學習筆記(3)

    TC3XX 系列屬于AURIX? 2G系列,AURIX? 2G系列
    發(fā)表于 09-19 10:00 ?3162次閱讀
    英飛凌<b class='flag-5'>TC3XX</b><b class='flag-5'>系列</b>多核MCU學習筆記(<b class='flag-5'>3</b>)

    英飛凌TC3xx系列安全管理單元的使用

    本篇文檔主要用來介紹英飛凌基于AURIX-2G TriCore 1.6.2架構(gòu)的 TC3xx系列安全管理單元的使用。
    的頭像 發(fā)表于 12-07 09:29 ?3051次閱讀
    英飛凌<b class='flag-5'>TC3xx</b><b class='flag-5'>系列</b>安全管理單元的使用

    AURIX? TC3XX如何暫時僅啟用/禁用CAN中斷?

    你我使用的是 AURIX? TC3XX。 在 CAN ISR 處理期間,如何暫時僅啟用/禁用 CAN 中斷?
    發(fā)表于 01-18 06:47

    SWAP是否適用于兩個用于TC3xx系列控制器的獨立軟件?

    目前正在使用 Swap/Partitions 概念實現(xiàn) SOTATC3xx 系列)。 檢查為應用程序和引導加載程序?qū)嵤?SOTA 的可行性。 1。對于兩個獨立的軟件,
    發(fā)表于 01-30 07:56

    TC3xx系列是否支持RTC功能?

    請教各位,TC3xx系列芯片是否支持RTC功能,目前要記錄snapshot的時間點(年月日時分秒)。
    發(fā)表于 02-02 07:53

    GCC和TASKING有什么區(qū)別?應該為AURIX? TC3xx選擇什么?

    GCC 和 TASKING 有什么區(qū)別? 我應該為 AURIX? TC3xx 選擇什么? 這將如何影響代碼的運行?
    發(fā)表于 03-01 10:09

    TSIM是否支持TC3xx系列在沒有硬件的情況下調(diào)試應用程序?

    你好, TSIM是否支持TC3xx系列在沒有硬件的情況下調(diào)試應用程序? AURIX TC3xx - Free Entry ToolChain 是否有助于實現(xiàn)上述目的?
    發(fā)表于 05-17 07:02

    英飛凌AURIX單片機TC3xx系列助力自動駕駛和電動交通發(fā)展

    2016年10月28日,為滿足自動駕駛汽車和電動車的市場需求,英飛凌科技股份公司(FSE: IFX / OTCQX: IFNNY)近日發(fā)布新一代 AURIX?單片機,即TC3xx,它是市場上同類器件中集成度最高的產(chǎn)品,實時性能是現(xiàn)有器件的
    發(fā)表于 11-07 13:51 ?3168次閱讀

    英飛凌AURIX單片機TC3xx系列助力電動交通發(fā)展

    為滿足自動駕駛汽車和電動車的市場需求,英飛凌科技股份公司近日發(fā)布新一代 AURIX?單片機,即TC3xx,它是市場上同類器件中集成度最高的產(chǎn)品,實時性能是現(xiàn)有器件的3倍。
    發(fā)表于 03-24 13:42 ?5952次閱讀

    關(guān)于英飛凌AURIX?單片機TC3xx系列的性能和應用

    英飛凌副總裁兼控制器業(yè)務總經(jīng)理Peter Schaefer表示:“AURIX TC3xx系列器件將推進自動駕駛和電動汽車的發(fā)展。能夠推出新一代高性能多核單片機,我們頗感到自豪,它將設立新的性能標準,其性能、加密和安全功能全都符合
    的頭像 發(fā)表于 09-24 17:36 ?8220次閱讀

    英飛凌 AURIX 單片機 培訓文檔鏈接

    包括AURIX? -TC2xx Microcontroller TrainingAURIX? -TC3xx Microcontroller TrainingAURIX? TC2xx I
    發(fā)表于 12-03 16:06 ?20次下載
    英飛凌 <b class='flag-5'>AURIX</b> 單片機 培訓文檔鏈接

    AURIX? TC3xx NVM是非易失性存儲器學習筆記

    TC3xx芯片最多有6個內(nèi)核,每個核有自己的私有的Memory以及共有的Memory。
    發(fā)表于 06-19 09:09 ?9453次閱讀
    <b class='flag-5'>AURIX</b>? <b class='flag-5'>TC3xx</b> NVM是非易失性存儲器學習筆記

    英飛凌AURIX TC3xx和TRAVEO T2G系列微控制器介紹

    英飛凌市場領(lǐng)先的 AURIX TC3xx 和TRAVEO T2G 車用 MCU將率先支持Rust語言。雖然TRAVEO 使用的是 Rust 官方工具鏈和Arm Cortex-M 目標架構(gòu),但英飛凌的工具合作伙伴 HighTec EDV-Systeme 為
    發(fā)表于 06-20 15:07 ?1405次閱讀
    英飛凌<b class='flag-5'>AURIX</b> <b class='flag-5'>TC3xx</b>和TRAVEO T2G<b class='flag-5'>系列</b>微控制器介紹

    TC3xx芯片DMU介紹

    AUTOSAR架構(gòu)圖下的Fls模塊對上(Fee)模塊提供統(tǒng)一的標準接口,但是具體的實現(xiàn)因不同的芯片而不一樣,Infineon公司的Fls模塊通過操作TC3xx芯片的DMU模塊實現(xiàn)Fls的功能。在具體
    的頭像 發(fā)表于 08-31 14:10 ?2672次閱讀
    <b class='flag-5'>TC3xx</b>芯片DMU介紹

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品