999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片系統(tǒng)控制器的A/B系統(tǒng)升級技術(shù)研究

2024-12-31 00:00:00周恒劉禹池孔祥明周時瑩于詩洋劉禹宏
汽車工程師 2024年11期

【摘要】針對空中下載(OTA)升級失敗時單片系統(tǒng)(SoC)電子控制單元(ECU)無法進(jìn)行軟件回滾的問題,提出了一種A/B系統(tǒng)升級技術(shù),通過讀取ECU中雜項(xiàng)(MISC)分區(qū)信息,將程序下載至備份分區(qū),并通過設(shè)計A/B系統(tǒng)的優(yōu)先級來選擇激活分區(qū),進(jìn)行安裝啟動或安裝失敗時軟件回滾,同時,設(shè)計了A/B系統(tǒng)的差分升級技術(shù)。經(jīng)搭建系統(tǒng)測試,采用該技術(shù)的控制器在升級失敗后可進(jìn)行軟件回滾,驗(yàn)證了回滾技術(shù)的可行性、有效性及穩(wěn)定性。

關(guān)鍵詞:空中下載 MISC分區(qū) A/B系統(tǒng) 軟件回滾 差分升級

中圖分類號:U461" "文獻(xiàn)標(biāo)志碼:A" "DOI: 10.20104/j.cnki.1674-6546.20230204

Research on Upgrading Technology of A/B System Based on Vehicle

SoC Controller

Zhou Heng, Liu Yuchi, Kong Xiangming, Zhou Shiying, Yu Shiyang, Liu Yuhong

(Global Ramp;D Center, China FAW Corporation Limited, Changchun 130013)

【Abstract】The A/B system upgrading technology is proposed to solve the problem that the System on Chip (SoC) Electronic Control Unit (ECU) cannot roll back the software when the Over-The-Air (OTA) upgrading failed. The technology downloads the program to the backup slot by reading the MISC of ECU slot information, and starts the installation by designing the priority level of the A/B system to select the active partition or rolls back the software in case of upgrading failed. At the same time, the differential graded technology of A/B system is designed. The ECU using this technology can perform software rollback when upgrading fails ,and the feasibility, effectiveness and stability of rolling back software technology are verified by building a test environment.

Key words: Over-The-Air (OTA), MISC Slot, A/B system, Software rolling back, Differential graded

【引用格式】 周恒, 劉禹池, 孔祥明, 等. 基于單片系統(tǒng)控制器的A/B系統(tǒng)升級技術(shù)研究[J]. 汽車工程師, 2024(11): 1-6.

ZHOU H, LIU YC , KONG X M, et al. Research on Upgrading Technology of A/B System Based on Vehicle SOC Controller[J].Automotive Engineer, 2024(11): 1-6.

1 前言

伴隨著汽車的智能化和網(wǎng)聯(lián)化發(fā)展,整車搭載的控制器數(shù)量與日俱增,車載軟件更加復(fù)雜、迭代速度更快,傳統(tǒng)的線下更新或維修的成本及管理難度越來越高,因此,整車制造商通過無線網(wǎng)絡(luò)對汽車控制器進(jìn)行下載更新的需求愈發(fā)強(qiáng)烈,空中下載(Over-The-Air,OTA)功能成為車載軟件更新的必然趨勢[1-3]。

目前常見的OTA升級架構(gòu)是云端服務(wù)器端通過車載通信終端(Telematics BOX,T-BOX)將升級包下載至網(wǎng)關(guān),由網(wǎng)關(guān)對網(wǎng)絡(luò)架構(gòu)中的以太網(wǎng)節(jié)點(diǎn)和控制器局域網(wǎng)絡(luò)(Controller Area Network,CAN)節(jié)點(diǎn)的控制器進(jìn)行升級[4-5]。陳祖銳等[6]提出將升級程序直接刷寫在應(yīng)用程序分區(qū)中的升級技術(shù),其局限性在于,應(yīng)用程序升級失敗后,原分區(qū)中的程序已被擦除,控制器將始終處于引導(dǎo)加載程序(Bootloader)中無法正常工作。陶媛媛等[7]針對以太網(wǎng)控制器采用備份區(qū)設(shè)計方案,程序升級失敗回滾時,備份區(qū)程序?qū)⒈粡?fù)制到正常區(qū)域運(yùn)行,程序復(fù)制過程導(dǎo)致升級時間較長。嚴(yán)娟等[8]針對網(wǎng)關(guān)自升級,將閃存(Flash)分為兩個功能完全相同且互為備份的區(qū)域,升級時只針對其中一個區(qū)域進(jìn)行升級,升級失敗則利用另一個區(qū)域進(jìn)行回滾,但并未說明具體的升級流程及差分升級技術(shù)。

本文提出一種A/B系統(tǒng)升級技術(shù):針對分區(qū)管理問題,設(shè)計雜項(xiàng)(Miscellaneous,MISC)分區(qū)記錄A/B系統(tǒng)的屬性信息,升級時選擇對應(yīng)的系統(tǒng)分區(qū)進(jìn)行刷寫升級,并設(shè)計系統(tǒng)屬性信息的優(yōu)先級;重新設(shè)計升級包下載、安裝啟動及失敗回滾程序,優(yōu)化差分升級時升級包還原與A/B系統(tǒng)刷寫間的關(guān)系。

2 A/B系統(tǒng)控制器分區(qū)

2.1 硬件存儲分區(qū)

傳統(tǒng)控制器只有一套分區(qū)存儲當(dāng)前執(zhí)行的系統(tǒng),而A/B系統(tǒng)控制器一般有兩套分區(qū)(Slot A和Slot B)[9],激活分區(qū)(Active Slot)存放當(dāng)前執(zhí)行的系統(tǒng),備份分區(qū)(Backup Slot)存放回滾備用的系統(tǒng),兩套系統(tǒng)可以獨(dú)立工作(用戶數(shù)據(jù)只有一份,為兩套系統(tǒng)共用)。其中,Slot是A/B系統(tǒng)的一個邏輯概念,同一存儲設(shè)備上處于同一個系統(tǒng)的分區(qū)集合稱為Slot。

傳統(tǒng)控制器與A/B系統(tǒng)控制器在存儲空間上的區(qū)別如圖1所示,各分區(qū)具體功能如表1、表2所示。

2.2 升級方式

單片系統(tǒng)(System on Chip,SoC)控制器包含一個主系統(tǒng)、一個Recovery系統(tǒng),升級時將數(shù)據(jù)包下載到Cache分區(qū),下載完成后向MISC分區(qū)寫入指令,表明下次啟動時進(jìn)入Recover模式并使用該升級包進(jìn)行升級,重啟Bootloader讀取指令后進(jìn)入Recovery系統(tǒng),使用下載的數(shù)據(jù)包更新主系統(tǒng)并重新啟動。激活(active)屬性選擇激活分區(qū)運(yùn)行,收到升級任務(wù)時,將數(shù)據(jù)包直接下載到備份分區(qū)安裝,更新啟動信息(Slot_Info)屬性,控制器重啟后對本次升級的數(shù)據(jù)包進(jìn)行校驗(yàn),校驗(yàn)通過后,運(yùn)行新程序完成升級。

2.3 MISC分區(qū)定義

A/B系統(tǒng)存在兩套系統(tǒng)分區(qū),控制器啟動時Bootloader需讀取MISC分區(qū)中的Slot_Info,識別激活分區(qū)并引導(dǎo)啟動應(yīng)用程序,此啟動信息將在應(yīng)用程序的升級包驗(yàn)證、下載刷新及軟件回滾時進(jìn)行必要的更新。MISC分區(qū)屬性信息結(jié)構(gòu)如圖2所示,各屬性信息功能如表3、表4所示。

3 關(guān)鍵技術(shù)

3.1 GPT分區(qū)及屬性

全局唯一標(biāo)識分區(qū)表(GUID Partition Table,GPT)[10]將用戶數(shù)據(jù)區(qū)域(User Data Area)的存儲介質(zhì)劃分為多個區(qū)域,即系統(tǒng)分區(qū)(SW Partitions),并通過分區(qū)表(Partition Table)對系統(tǒng)分區(qū)進(jìn)行維護(hù)。在分區(qū)表中,每個條目保存一個系統(tǒng)分區(qū)的起始地址、大小等屬性信息,通過讀取系統(tǒng)分區(qū)能獲取分區(qū)信息,進(jìn)而對分區(qū)進(jìn)行升級操作或?qū)傩孕薷摹1疚牟捎们度胧蕉嗝襟w卡(embedded Multi Media Card,eMMC)存儲器的GPT分區(qū),其結(jié)構(gòu)如圖3所示。

3.2 差分升級

差分升級(即增量更新)[11]通過將數(shù)據(jù)文件的舊版本與新版本進(jìn)行差分,得到升級部分的補(bǔ)丁,即差分包;用戶下載差分包后,系統(tǒng)利用差分算法將舊版本數(shù)據(jù)與差分包進(jìn)行組合,得到新版本的數(shù)據(jù)文件對目標(biāo)分區(qū)進(jìn)行升級,差分升級原理如圖4所示。

4 A/B系統(tǒng)升級技術(shù)

4.1 刷寫流程

程序下載刷寫過程中,Bootloader會通過讀取MISC分區(qū)中的Slot_Info屬性判斷Slot A和Slot B是否具備active屬性,若具備則定位到active屬性的Slot設(shè)置successful屬性,若均不具備,則設(shè)置Slot A為acitve屬性,retry_count=3。然后利用升級包對備份分區(qū)進(jìn)行升級,設(shè)置Slot_Info屬性,將A/B系統(tǒng)屬性中active屬性進(jìn)行交換,完成升級包刷寫。升級包下載刷寫流程如圖5所示,刷寫過程中的Slot_Info變化如圖6所示。

4.2 升級啟動流程

升級包刷寫完成重啟時,Bootloader會通過GPT分區(qū)讀取MISC分區(qū)中的Slot_Info屬性,選擇優(yōu)先級高的分區(qū)加載啟動,啟動流程如圖7所示,定義啟動優(yōu)先級由高到低如表5所示。如果激活分區(qū)和備份分區(qū)的優(yōu)先級一致,默認(rèn)將Slot A設(shè)定為active且設(shè)retry_count=3后啟動。控制器啟動成功后,Bootloader修改Slot_Info中的successful屬性信息,屬性變化如圖8所示。一旦升級成功(刷寫和驗(yàn)證均成功),不允許回滾。

4.3 A/B系統(tǒng)差分升級

A/B系統(tǒng)的差分升級使用當(dāng)前分區(qū)作為原始文件,不需要額外的存儲空間保存原始包,加快了升級過程,但需確保當(dāng)前分區(qū)在運(yùn)行期間未被修改過。在還原數(shù)據(jù)時,將差分的鏡像(image)按塊還原后直接寫入備份分區(qū),再計算哈希(Hash)值判斷合法性,其升級流程如圖10所示。

5 開發(fā)測試與驗(yàn)證

5.1 測試系統(tǒng)

A/B系統(tǒng)升級技術(shù)測試環(huán)境主要分為微處理器單元(Micro Processor Unit,MPU)系統(tǒng)和上位機(jī)診斷系統(tǒng),系統(tǒng)測試框圖及設(shè)備分別如圖11、圖12所示。更新模塊(Updater)屬于用戶層(UserSpace),與上位機(jī)進(jìn)行交互,中間軟件層(Middleware)包括引導(dǎo)控制模塊(BootCtrl)、刷寫模塊(Flush)、供電模塊(Power),內(nèi)核層(KnernelSpcae)的eMMC驅(qū)動(eMMC Driver)用于加載升級時的內(nèi)存信息,eMMC包含A/B系統(tǒng)分區(qū)相關(guān)信息,兩個系統(tǒng)之間通過以太網(wǎng)口通信,上位機(jī)診斷系統(tǒng)可以觸發(fā)獲取當(dāng)前MPU的版本號、傳輸升級包、進(jìn)行升級等動作。

5.2 存儲空間配置

本文以IMX8X的eMMC內(nèi)存為例介紹存儲空間的分區(qū),其分區(qū)結(jié)構(gòu)如表6所示。

5.3 測試方案設(shè)計

針對A/B系統(tǒng)與傳統(tǒng)系統(tǒng)升級技術(shù)的差異點(diǎn),設(shè)計測試時,需重點(diǎn)考慮升級異常條件下程序回滾功能有效性、A/B系統(tǒng)雙分區(qū)運(yùn)行穩(wěn)定性及差分升級穩(wěn)定性等,測試類型分為正常系和異常系。

測試時,首先通過搭建的測試系統(tǒng)驗(yàn)證單控制器升級回滾情況,測試通過后,將已開發(fā)的A/B系統(tǒng)控制器安裝到實(shí)車上,并利用已上線運(yùn)營的OTA整套升級系統(tǒng)布置多控制器升級包,驗(yàn)證實(shí)車環(huán)境下失敗程序的回滾功能。

5.4 驗(yàn)證結(jié)果

根據(jù)上述測試內(nèi)容和方法,利用搭建的測試系統(tǒng)和實(shí)車測試得到驗(yàn)證結(jié)果,如表7所示。每項(xiàng)測試內(nèi)容至少需要正向測試50次,每次結(jié)果均滿足要求時方可認(rèn)定該項(xiàng)功能正常。

測試結(jié)果表明:利用MISC分區(qū)管理A/B系統(tǒng)的屬性信息,解決了升級啟動分區(qū)選擇問題;針對升級包刷寫問題,提出了升級包選擇分區(qū)下載技術(shù),保證升級包刷寫有效性,同時設(shè)計了升級啟動流程,控制器能夠安全啟動并在升級失敗時進(jìn)行回滾,實(shí)現(xiàn)控制器A/B系統(tǒng)升級。

6 結(jié)束語

本文提出一種A/B系統(tǒng)升級技術(shù),優(yōu)化了升級包的下載刷寫、安裝啟動流程及A/B系統(tǒng)差分升級流程。通過對測試系統(tǒng)及實(shí)車不同控制器進(jìn)行大量升級測試,驗(yàn)證了控制器A/B系統(tǒng)升級穩(wěn)定性和回滾時系統(tǒng)分區(qū)切換的有效性,控制器升級失敗后的回滾成功率為100%,解決了因OTA升級失敗導(dǎo)致車輛控制器功能失效的問題。

參考文獻(xiàn)

[1]" "田端祥, 段暉, 陳潔, 等. 遠(yuǎn)程升級技術(shù)在汽車智能網(wǎng)聯(lián)系統(tǒng)中的運(yùn)用[J]. 內(nèi)燃機(jī)與配件, 2022(5): 214-216.TIAN D X, DUAN H, CHEN J, et al. Application of Remote Upgrade Technology in Automobile Intelligent Network System[J]. Internal Combustion Engine amp; Parts, 2022(5): 214-216.

[2]" "武翔宇, 趙德華, 郝鐵亮. 淺談汽車OTA的現(xiàn)狀與未來發(fā)展趨勢[J]. 汽車實(shí)用技術(shù), 2019(3): 214-216.WU X Y, ZHAO D H, HAO T L. Analysis on Current Situation and Future Development Trend of Vehicle OTA[J]. Automobile Applied Technology, 2019(3): 214-216.

[3]" "姜楠, 姜姍姍, 韓小鵬. 汽車在線升級系統(tǒng)(OTA)開發(fā)淺析[J]. 時代汽車, 2021(21): 11-12.JIANG N, JIANG S S, HAN X P. The Analysis of Online Updates[J]. Auto Time, 2021(21): 11-12.

[4]" "卜凡濤, 劉木林, 劉曉曄. 一種汽車控制器OTA功能方案[J]. 汽車電器, 2022(9): 67-68.BU F T, LIU M L, LIU X Y. An OTA Function Scheme of A Car Controller[J]. Auto Electric Parts, 2022(9): 67-68.

[5]" "李立安, 趙幗娟, 任廣樂. OTA實(shí)現(xiàn)方案及汽車端設(shè)計分析[J]. 汽車實(shí)用技術(shù), 2020(14): 16-19.LI L A, ZHAO G J, REN G L. OTA Implementation Plan and the Vehicle Design Analysis[J]. Automobile Applied Technology, 2020(14): 16-19.

[6]" "陳祖銳, 廖振偉, 谷城, 等. 基于UDSonCAN的Bootloader設(shè)計[J]. 汽車零部件, 2022(9): 36-39.CHEN Z R, LIAO Z W, GU C, et al. Bootloader Design Based on UDSonCAN[J]. Automobile Parts, 2022(9): 36-39.

[7]" "陶媛媛, 杜彬, 田彬. 基于車載控制器BootLoader的數(shù)據(jù)備份刷寫軟件方案實(shí)現(xiàn)[J]. 汽車電器, 2022(9): 39-41.TAO Y Y, DU B, TIAN B. Implementation of Data Backup Flashing Based on Boot Loader of Vehicle Controller[J]. Auto Electric Parts, 2022(9): 39-41.

[8]" "嚴(yán)娟, 張玉川, 楊鵬翔, 等. 基于以太網(wǎng)OTA遠(yuǎn)程升級的研究[J]. 上海汽車, 2020(3): 15-18+27.YAN J, ZHANG Y C, YANG P X, et al. The Study on OTA Remote Updating of Ethernet[J]. Shanghai Auto, 2020(3): 15-18+27.

[9]" "曹玉保. 基于雙備份的兆易創(chuàng)新GD32程序升級方案研究[J]. 中國集成電路, 2021(增刊1): 23-26.CAO Y B, Research on Scheme to Upgrade Program of GigaDevice GD32 Based on Double Backup[J]. China Integrated Circuit, 2021(S1): 23-26.

[10] 陳培德, 吳建平, 劉宏杰, 等. MBR磁盤轉(zhuǎn)換為GPT磁盤的研究與實(shí)現(xiàn)[J]. 計算機(jī)技術(shù)與發(fā)展, 2022(7): 99-104.CHEN P D, WU J P, LIU H J, et al. Research and Implementation of MBR Disk Conversion to GPT Disk[J]. Computer Technology and Development, 2022(7): 99-104.

[11] 陳德富, 周旭文, 邱寶象, 等. 一種輕量級的在線差分升級策略設(shè)計[J]. 工業(yè)控制計算機(jī), 2022(9): 29-30+32.CHEN D F, ZHOU X W, QIU B X, et al. Design of Lightweight Online Differential Update Strategy[J]. Industrial Control Computer, 2022(9): 29-30+32.

(責(zé)任編輯 白 夜)

修改稿收到日期為2024年7月23日。

主站蜘蛛池模板: 亚洲黄色视频在线观看一区| 亚洲女同一区二区| 日韩av电影一区二区三区四区 | 国产成人av一区二区三区| 亚洲av无码久久无遮挡| 无码一区18禁| 伊人久久大香线蕉影院| 色噜噜狠狠色综合网图区| 国产精品视频999| 日韩欧美国产综合| 久久这里只精品国产99热8| 国产欧美日韩资源在线观看| 亚洲高清无码精品| 在线播放国产一区| 波多野结衣爽到高潮漏水大喷| 亚洲一区无码在线| 亚洲精品在线观看91| 国产高颜值露脸在线观看| 国产成人在线小视频| 欧美va亚洲va香蕉在线| 国产SUV精品一区二区6| 中文字幕日韩欧美| 免费国产在线精品一区| 四虎精品黑人视频| 久久久久免费看成人影片| 伊人无码视屏| 91九色视频网| 国模视频一区二区| 99精品高清在线播放| 亚洲视频在线观看免费视频| 国产成本人片免费a∨短片| 中文字幕久久亚洲一区| 9966国产精品视频| 国产资源免费观看| 91人妻在线视频| 成人久久精品一区二区三区| 五月天丁香婷婷综合久久| 这里只有精品免费视频| 欧美一区二区自偷自拍视频| 国产一级二级三级毛片| 国产在线精彩视频二区| 狠狠ⅴ日韩v欧美v天堂| 日韩无码黄色网站| 午夜视频免费一区二区在线看| 内射人妻无码色AV天堂| 午夜电影在线观看国产1区| 久久99精品久久久大学生| 亚洲VA中文字幕| 91精品日韩人妻无码久久| 国产欧美在线观看一区| 91成人在线观看视频| 色屁屁一区二区三区视频国产| 亚洲av综合网| 高清无码不卡视频| 五月婷婷丁香综合| 亚洲高清中文字幕| 亚洲成av人无码综合在线观看| 日韩无码视频专区| 九九热精品视频在线| 天天激情综合| 18黑白丝水手服自慰喷水网站| 天天干天天色综合网| 中文字幕永久在线看| 四虎成人精品| 亚洲AV永久无码精品古装片| 精品一區二區久久久久久久網站| 91精品国产91欠久久久久| 精品国产自在在线在线观看| 日韩在线2020专区| 亚洲天堂免费| 国产精品香蕉在线| 国产精品亚洲一区二区三区在线观看| 国产十八禁在线观看免费| AV网站中文| 亚洲男人的天堂网| 搞黄网站免费观看| 亚洲乱强伦| 亚洲va欧美va国产综合下载| 免费女人18毛片a级毛片视频| 国产成人欧美| 欧美啪啪一区| 91亚洲视频下载|