01.概述
1.1 汽車 OTA——三個關(guān)鍵用例
1.數(shù)據(jù)收集
實施預測性維護
建立早期反饋循環(huán)(例如在推出新模型時)
基于車輛數(shù)據(jù)提供新服務
例如,為當?shù)靥鞖鈭蟾媸占晁?a href="http://wenjunhu.com/v/tag/117/" target="_blank">傳感器數(shù)據(jù)
2.實時診斷
從中央車輛支持中心從遠程獲得路邊援助
繼續(xù)駕駛還是繼續(xù)等待拖車服務?
立即解決一些 E/E 問題
3.軟件更新
通過快速修復功能和安全事件來避免昂貴的召回
發(fā)布花哨的新功能,創(chuàng)造新的商業(yè)模式
實施基于軟件的模型升級
1.2 基于Vector的OTA 方案
?
02.軟件下載用例
2.1 通過離線車載診斷測試儀下載軟件
?
2.2 單分區(qū)的引導加載程序上下文中的 OTA 軟件下載
2.3 多分區(qū)(Multiple Partitions)的引導加載程序上下文中的 OTA 軟件下載
?
2.4 ?Bootloader 上下文中的 OTA 軟件下載
方法
在路上行駛時,連接單元接收到軟件更新包
在 Flash Bootloader 上下文中的運行后階段(post-run phase)對目標 ECU 進行更新
約束
下載過程中需要實現(xiàn)下載中斷/恢復能力
必須考慮電池容量
優(yōu)點
重用現(xiàn)有基礎架構(gòu)(Flash Bootloader)
對應用程序運行時行為沒有影響
在更新階段利用最大網(wǎng)絡帶寬
缺點
關(guān)閉期間(key-off)進行更新的時間窗口是有限的
由于關(guān)閉了正常的消息通信,因此對運行后系統(tǒng)設計(post-run)產(chǎn)生影響
2.5 Application上下文中的 OTA 軟件下載
方法
在路上行駛時,連接單元接收到軟件更新包
更新在應用程序上下文中的目標 ECU 上的影子內(nèi)存中進行
約束
應用棧需要通過OTA下載軟件組件進行擴展
必須考慮總線負載和 ECU 性能影響
必須實現(xiàn)多內(nèi)存分區(qū)概念和下載中斷/下載恢復的能力
優(yōu)點
ECU 在應用程序上下文中運行,無需禁用正常的消息通信
根據(jù)內(nèi)存分區(qū)概念,對車輛可用性幾乎沒有影響
缺點
復雜性增加
額外的 ROM 資源
必須考慮對 ECU 系統(tǒng)設計和安全要求的
03.ECU存儲解決方案
3.1 硬件輔助 A/B分區(qū)交換解決方案
這種架構(gòu)需要微控制器本身的硬件支持
硬件將活動分區(qū)(active partition)映射到預定義的地址范圍(例如 0x000000,在下面的示例中分區(qū)大小為 2MB)
代碼總是從預定義的地址范圍執(zhí)行(0x000000-0x200000)
激活(Activation)分區(qū)意味著重新映射活動和非活動內(nèi)存地址范圍
3.2 下載緩存解決方案
在后臺下載期間,下載的數(shù)據(jù)緩存在未使用的內(nèi)存區(qū)域(內(nèi)存區(qū)域可以是內(nèi)部存儲器或者是外部存儲器)
在軟件激活期間,F(xiàn)lash Bootloader 將新應用程序復制到活動存儲區(qū)
3.3 Dual Binary解決方案
根據(jù)活動/非活動內(nèi)存,選擇不同的應用入口地址
代碼從不同的內(nèi)存位置執(zhí)行
需要維護兩個相同版本的軟件二進制文件,它們鏈接到不同的內(nèi)存位置
診斷Tester需要知道活動/非活動內(nèi)存的位置以選擇正確的鏡像
3.4 ECU存儲解決方案比較
Hint:符號“+”表示優(yōu)點,符號“-”表示缺點
硬件輔助 A/B分區(qū)交換解決方案 +單個二進制 +激活時間較短 -目前只支持少數(shù)硬件平臺
下載緩存解決方案 +單個二進制 +通用解決方案 +現(xiàn)有 MCU 平臺可通過添加外部閃存重復使用 -由于數(shù)據(jù)復制,激活時間較長 -增加了外部閃存的成本
Dual Binary解決方案
+除了支持邊寫邊讀外,沒有額外的硬件要求 +極短的激活時間 -雙軟件鏡像的配置管理 -可能需要復雜的軟件來處理不同的復位向量和中斷地址
04.MICROSAR.OTA 軟件下載解決方案
4.1 MICROSAR.OTA 軟件架構(gòu) - 職責
注意:架構(gòu)圖只顯示了OTA 特定的 BSW 模塊。
MICROSAR
下載軟件更新
軟件更新驗證
備份創(chuàng)建(可選)
Flashbootloader
激活(Activation)軟件更新
回滾(Rollback)到以前的軟件
4.2 MICROSAR.OTA 軟件架構(gòu) - SWDL Handler
?
4.3 MICROSAR.OTA 軟件架構(gòu) – 軟件更新管理器
?
軟件更新管理器
簽名驗證
解壓
解密
閃存數(shù)據(jù)的緩沖
數(shù)據(jù)處理
模塊的定義,也就是邏輯塊
模塊到虛擬地址的映射
處理保存的恢復信息來繼續(xù)中斷的軟件下載
4.4 MICROSAR.OTA 軟件架構(gòu) – 內(nèi)存訪問管理器
內(nèi)存訪問管理器
AUTOSAR FLS
Vector vMem
虛擬地址的定義
虛擬到物理地址的映射
閃存作業(yè)(flash jobs)的優(yōu)先級和調(diào)度
處理多個閃存驅(qū)動程序
4.5 MICROSAR.OTA 軟件架構(gòu) – vMem
vMem(外部)
讀/寫/擦除?程序閃存(program (code) flash)
可用于內(nèi)部和外部閃存
4.6 SWDL 軟件架構(gòu)
OTA 管理器
在內(nèi)部和/或外部閃存的分區(qū)之間復制數(shù)據(jù)
使用硬件輔助 A/B 交換
Vector Flashbootloader 的附加組件
負責激活和回滾
OTA 管理器基礎版本
OTA 管理器擴展版本
?
?
審核編輯:劉清
評論
查看更多