亚州天堂爱爱,做爱视频国产全过程在线观看,成人试看30分钟免费视频,女人无遮挡裸交性做爰视频网站

? ? ?

FOTA技術專欄—UDS刷寫(uds 刷寫)

公眾號前面幾篇文章,筆者已經對FOTA、SOTA、信息安全等內容進行了系統性的綜述。從本期開始,筆者將開設技術專欄,分別對上述主題展開更詳細、深入的介紹,以饗讀者,也期望在和同行的交流中碰撞出更四射的火花。

首先推出的是FOTA技術專欄,專欄第一篇文章,筆者將介紹整車部分控制器FOTA技術實現所需仰賴的底層技術之一:UDS刷寫。

UDS刷寫簡述

UDS(Unified Diagnostic Services,統一診斷服務)刷寫,指的是基于應用層協議(ISO 14229)和網絡層協議(與通信物理層相關,如面對CAN總線的ISO 15765-2)定義的控制器軟件升級流程。

UDS刷寫應用對象一般為采用ETH/CAN/LIN等總線通訊的車載傳統控制器。車載傳統控制器主芯片以MCU為主,MCU上主要運行嵌入式實時操作系統。UDS刷寫主要是通過診斷上位機(Tester)給車載傳統控制器發送定義好的診斷服務命令實現。

與車載傳統控制器相對應的是存在高算力芯片的控制器,民間常稱之為智能控制器。此類控制器一般存在雙分區結構且具有滿足POSIX標準的操作系統(一般為Android、QNXLinux等),其軟件升級流程一般自主實現,本文介紹的UDS刷寫技術暫不適用此類控制器。

UDS線下刷寫的應用歷史已有幾十年,最典型的應用場景是在4S店。帥氣的技師們扛著電腦或者專用的診斷儀對車輛控制器進行軟件升級便是UDS線下刷寫的最生動體現。在這一場景中,電腦或診斷儀作為上位機,通過車輛OBD口接入整車網絡總線,并將升級包(一般為hex,s19格式)按主機廠定義的的刷寫流程對車輛控制器進行刷寫。

UDS線上刷寫的應用伴隨著FOTA技術的成熟而得到不斷推廣。在FOTA的通用技術架構下,一般由FOTA的升級主控(升級Master)作為上位機,升級主控從云端下載升級包,并按照固定的刷寫流程或者升級包中配置的刷寫流程,對車輛上的對手件進行刷寫。

UDS刷寫無論線下還是線上,都離不開控制器中Bootloader以及UDS協議的支持,在正式介紹UDS刷寫流程之前,筆者先簡介上述兩部分內容。

Bootloader

Bootloader稱為引導加載程序,是軟件執行的第一步,無論是否使用操作系統,Bootloader都是必須執行的。

我們日常辦公電腦中的Windows系統是由BIOS引導啟動的,BIOS開機自檢并分配資源后,將Bootloader 讀到系統的內存中。隨后Bootloader獲取電腦控制權,將指針帶到系統內核,開始啟動操作系統。

上文介紹的車載傳統控制器啟動過程同樣離不開Bootloader的幫助。Bootloader初始化硬件設備,建立內存空間映射圖,將系統的軟硬件環境帶到一個合適狀態,以便為最終調用操作系統內核準備好正確的環境。在控制器軟件升級過程中,Bootloader進入編程會話后會擦除指定地址的程序,并寫入新的程序,從而實現控制器的軟件升級,后文會詳細闡述該過程。

UDS協議

UDS協議就是ISO 14229標準的別名,全稱為統一診斷服務的應用層協議,標準規范了基于Bootloader的刷寫過程。各家主機廠均是基于UDS協議制定企業的診斷刷寫規范,在控制器的SOR階段會一同釋放給供應商。

對于各控制器的供應商而言,刷寫流程的統一簡化了開發復雜度。UDS協議可在不同的汽車網絡通信(例如CAN、LIN、 Flexray、 Ethernet 和 K-line)上實現,最常用的為UDSonCAN和UDSonIP(DoIP)兩種。下圖為ISO 14229中各車內總線實現UDS協議的網絡模型圖。

FOTA技術專欄—UDS刷寫(uds 刷寫)

以UDSonCAN舉例, CAN總線協議是汽車內最常使用的總線協議,每幀僅有8字節,ISO 15765-2解決了ISO 11898協議中定義的經典CAN數據鏈路層與ISO 14229協議中定義的應用層數據長度不一致的問題。ISO 15765-2中定義的內容包括網絡層和傳輸層的協議,包括尋址方式(物理尋址、功能尋址),組包方式、協議控制信息、流量控制以及時間控制。

UDS協議是一種交互協議,呈現一問一答的通信方式,提供了26種服務,各服務在報文中通過SID(Service Identifier,診斷服務ID)來區分。在UDS刷寫流程中,主要應用的服務如下表所示。

大類

SID(0x)

診斷服務名

診斷和通信管理

10

會話控制

11

重啟ECU

28

通訊控制

3E

待機握手

85

DTC控制設置

數據傳輸

22

讀DID

2E

寫入DID

程序功能

31

程序控制

上傳下載功能單元

34

請求下載

36

數據傳輸

37

請求退出傳輸

故障類服務

14

清故障碼

10/27/11/3E等服務是基礎診斷和通信相關服務,作用是切換系統的會話模式、安全模式解鎖、重啟ECU以及保持鏈接活躍;

22/2E讀寫DID的服務主要是為了讀取版本號、VIN等信息,同時寫入諸如指紋、VIN碼等相關信息(OEM自定義);

85/28服務主要是為了暫停其他控制器網絡報文的發送和DTC的設置,使得刷寫條件和網絡帶寬能達到最佳的狀態;

31/34/36/37則是數據下載相關服務,負責數據下載的請求、傳輸和退出。

UDS刷寫流程

會話模式是診斷領域非常重要的一個狀態機,不同的會話模式是用來區分診斷服務執行權限。UDS協議定義了三種會話模式:默認會話、編程會話、擴展會話,不同的會話模式可以相互切換。在Application中可使用默認會話模式和擴展會話模式。在Bootloader中可使用默認會話模式和刷新會話模式。

會話切換流程如下圖所示,主要通過0x10服務在三種會話模式之間切換。

FOTA技術專欄—UDS刷寫(uds 刷寫)

UDS刷寫流程包括三部分:預編程階段主編程階段后編程階段,如下圖所示。其中,白色框步驟為功能尋址,藍色框步驟為物理尋址。各家主機廠會根據實際情況對方案進行微調。其中Client為升級客戶端,往往由診斷儀或FOTA master擔任。Server指的是升級控制器端。

FOTA技術專欄—UDS刷寫(uds 刷寫)

一、預編程階段

此階段是刷寫前的網絡準備工作,主要內容包括(1)檢查升級前置條件;(2)提高刷寫網絡速度;(3)禁止其他ECU的網絡報文并關閉DTC設置。

1、Client功能尋址發送0x10服務將所有控制器切換至擴展會話模式,以支持0x85服務和0x28服務;

2、Client物理尋址發送0x31服務至Server,判斷當前是否滿足升級的前置條件,如點火狀態,車速等判斷;

3、Client功能尋址發送0x85和0x28服務,禁用CAN總線上各Server的網絡報文和DTC設置;

4、Client通過0x22服務讀取控制器的DID數據;

5、Client在會話過程中通過0x3E服務保持與Server的會話模式

二、主編程階段

此階段是控制器的刷寫主流程,在Bootloader的編程會話模式下進行,步驟如下:

1、Client功能尋址發送0x10服務將待刷寫的Server切換到編程會話模式;

2、Client通過0x2E服務將指紋寫入Server,例如本次刷寫人的身份;

3、Client通過0x27服務向Server求安全模式的seed,并根據約定的算法得到key,Server驗證通過后解鎖安全模式。安全模式的作用是以防電控單元被意外地擦除或未經授權地刷新;

4、Client通過0x31服務擦除Server指定地址段的程序;

5、Client通過0x34服務請求數據下載,Server回復一次0x36服務傳輸數據的Block的最多字節數;

6、如果0x34服務得到了正確響應,Client就開始使用0x36服務啟動數據傳輸。下載的數據是連續的,可使用34-36-36…-37命令實現。如果數據不連續,則需要重新進行0x34服務;

7、所有的0x36服務完成后,Client通過0x37服務請求退出傳輸;

8、Client通過0x31服務不同的子功能對程序的完整性和一致性進行驗證;

9、校驗完成后0x11服務對Server復位。

三、后編程階段

1、Client通過0x10服務恢復控制器的默認會話;

2、Client通過0x14服務清除Server中的故障碼,整個刷寫流程結束。

多路并行刷寫

當前FOTA升級的一般策略是串行升級,即每個控制器升級完成后再對下一個控制器進行升級,單一時間只對一個控制器進行升級。如任務中有多個車輛控制器需要升級,則會對本次任務的升級時長和車輛電瓶電量提出挑戰。如果能夠在FOTA中并行刷寫多個控制器,充分利用總線帶寬,可減少OTA升級時長,實現整車的快速升級。

因此,并行刷寫在FOTA的應用引起了各家主機廠的關注。產線的線下診斷儀刷寫其實已實現了并行刷寫,優勢在于可縮減產線的工位數,并提高生產效率。當前并行刷寫常用的做法為上位機開啟多個刷寫線程。不同總線間的并行刷寫相對容易實現,如同時對CAN總線上的控制器和車載以太網上的控制器在同一時間進行刷寫,總線之間的干擾并不大。

而對連接在同一網關下,不同路CAN上的兩個控制器進行刷寫,如Body CAN和Info CAN上的控制器并行刷寫。上位機開啟多個線程并且打開多個CAN通道 ,可通過通道號的不同對每個控制器進行識別,防止報文傳輸過程中不同控制器的報文相互沖突造成的報文混亂問題,實現了一上位機對多控制器的CAN報文傳輸。

與此同時,雖然開辟更多的RAM去處理診斷指令可以使得刷寫速率更快,但是資源開銷問題也不容小視。尤其當總線轉換時,傳輸層和網絡層的資源開銷也會上升。上位機的RAM資源的消耗,處理能力足夠與否,都需要O主機廠按實際情況和需求評估。

小結

本期簡單介紹了UDS刷寫的基礎知識,下一期,FOTA技術專欄將會介紹智能控制器常用的升級方式,A/B升級(汽車OTA領域的標桿企業ABup,其英文名稱前兩個字母寓意也來源于此)。

往期精彩:

FOTA信息安全,一篇看不懂的綜述

SOTA技術概述

車聯網信息安全概述

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

(0)
上一篇 2023年5月14日 上午9:30
下一篇 2023年5月14日 上午9:46

相關推薦

  • 圖書管理系統的項目計劃

    圖書管理系統的項目計劃 圖書管理系統是一個用于管理圖書館中圖書的軟件系統。它可以幫助圖書館管理員更好地管理圖書館的圖書,提高圖書的流通效率,并方便讀者查找和借閱圖書。 項目計劃: …

    科研百科 2025年1月15日
    2
  • 教育培訓項目管理系統

    教育培訓項目管理系統 隨著教育行業的不斷發展,教育培訓項目管理系統的需求也越來越普遍。一個有效的項目管理系統可以幫助教師和教育機構更好地管理項目,提高教學質量,降低管理成本,并提高…

    科研百科 2024年12月17日
    0
  • 企業黨組織要發揮什么作用

    企業黨組織是企業和政治組織的重要組成部分,在企業中發揮著重要的作用。 黨組織的主要作用是促進企業發展和推動企業的進步。黨組織是企業的政治核心,負責領導和管理企業的思想和經濟活動,提…

    科研百科 2024年10月8日
    21
  • 最強的系統集成項目管理

    最強的系統集成項目管理 系統集成項目管理是指協調和管理集成系統的整個生命周期,包括需求分析、設計、開發、測試、部署和運維等各個階段。在現代信息技術的快速發展和廣泛應用的背景下,系統…

    科研百科 2025年1月17日
    5
  • 國內視頻生成軟件匯總(國內視頻生成軟件匯總下載)

    國內視頻生成軟件匯總(國內視頻生成軟件匯總下載) 國內有幾個視頻生成軟件受到了用戶的推薦和好評,它們各自有不同的特點和優勢。以下是一些在國內表現較好的視頻生成軟件: 騰訊智影:騰訊…

    科研百科 2024年3月30日
    48
  • 學術活動科研項目怎么填

    學術活動科研項目填寫的重要性 在學術活動中,科研項目的填寫是非常重要的一項任務。它是研究的基礎,也是展示研究成果的機會。如果科研項目填寫得當,不僅能夠為研究提供可靠的數據,還能夠提…

    科研百科 2025年5月8日
    1
  • 餐飲庫房管理軟件(餐飲倉儲管理軟件)

    餐飲倉儲管理軟件:讓餐飲管理更加高效 隨著現代餐飲市場的快速發展,餐飲倉儲管理軟件的需求也越來越強烈。餐飲倉儲管理軟件可以幫助餐飲管理人員更好地管理庫存,提高生產效率,降低庫存成本…

    科研百科 2024年6月6日
    35
  • 街校合作再升級!珞珈山街道攜手武漢大學啟動第二批“黨建助理員”計劃

    荊楚網(湖北日報網)訊(通訊員 熊雅婷 楊菁)“你好,我想問一下‘白領興趣社’主要有哪些服務內容?”5月16日,武漢大學人文館南館內,武昌區珞珈山街道“黨建助理員”街校共育計劃階段…

    科研百科 2024年5月31日
    71
  • 參與科研項目證明

    參與科研項目證明 我是一名年輕的研究者,最近參與了一項關于自然語言處理領域的科研項目。這個項目旨在研究如何更好地理解和分析自然語言文本,從而更好地應用人工智能技術。 在項目中,我參…

    科研百科 2024年10月7日
    18