在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

ECU刷寫流程之壓縮刷寫技術解析

北匯信息POLELINK ? 2024-05-16 08:24 ? 次閱讀

作者 | 小豆
小編 | 不吃豬頭肉

背景
在現代汽車電子技術中,ECU(電子控制單元)的軟件升級是一項關鍵任務。為了提高數據傳輸的效率和安全性,壓縮刷寫技術應運而生。通過數據壓縮傳輸,我們可以有效地增加帶寬利用率,減少刷寫工具與ECU之間的數據傳輸量,從而顯著縮短ECU升級時間。此外,為了加強數據的安全性和保密性,數據傳輸還可以進行加密處理。在ISO14229-1規范中,請求下載服務(SID=0x34)和請求文件傳輸服務(0x38)定義了數據可以基于壓縮和加密的方式進行傳輸。本文以請求下載服務為例重點介紹數據壓縮部分。b7425d12-131a-11ef-9118-92fbcf53809c.pngISO14229-1:2020規范中定義請求下載服務(0x34)的請求報文格式b7514ef8-131a-11ef-9118-92fbcf53809c.png
根據ISO14229-1:2020規范,請求下載服務(0x34)允許數據通過壓縮和加密的方式進行傳輸。在該服務的請求報文格式中,”dataFormatIdentifier“是一個關鍵的參數,大小為1個字節,其中高四位(bit4-bit7)為參數”compressionMethod“,定義數據是否需要壓縮, 其中低四位(bit0-bit3)為參數”encryptingMethod“,定義數據是否需要加密。若下載的數據既不需要壓縮也不需要加密,則該參數值為0x00,若使用非0x00的值,則表示下載數據需要進行壓縮、加密,或二者兼有。如”dataFormatIdentifier“此值為0x10,表示下載數據需要壓縮不需要加密,如”dataFormatIdentifier“此值為0x11,表示下載數據需要壓縮也需要加密。

值得注意的是,下載數據的壓縮與加密需求并不影響參數”addressAndLengthFormatIdentifier

“和”memoryAddress“,但會影響”memorySize“參數,該參數定義了需要刷寫數據的大小,這個大小將與通過TransferData(0x36)服務傳輸的數據大小進行比較。

當下載的數據是壓縮數據時,由OEM來定義”memorySize“代表的是壓縮數據的大小還是壓縮前數據的大小。不同的定義對于刷寫流程的實現代碼也不相同。
若”memorySize“代表壓縮數據的大小,那么當TransferData(0x36)服務將壓縮數據傳輸完成后,ECU將根據“memorySize”參數來判斷數據是否下載完成,ECU會比較傳輸的壓縮數據與”memorySize“參數定義的數據大小是否一致,并相應地發送肯定或否定響應。
若”memorySize“代表非壓縮數據的大小,那么TransferData(0x36)服務傳輸的壓縮數據大小一般小于”memorySize“的值。這時ECU將接收到的壓縮數據解壓,并計算所有解壓后數據大小的總和。在壓縮數據傳輸完成后,ECU會比較解壓后的數據大小與”memorySize“參數定義的數據大小是否一致,并相應地發送肯定或否定響應。
當然,對于”memorySize“代表壓縮數據的大小還是非壓縮數據大小,數據傳輸完成后ECU判斷下載數據是否正確的方法各OEM定義也不盡相同。b76dca56-131a-11ef-9118-92fbcf53809c.png壓縮前后刷寫文件比對
軟件刷寫是指將軟件程序燒錄或者通過UDS刷寫傳輸到ECU芯片內存的特定地址段,然后ECU就會運行該軟件程序,去實現其特有的功能。常用的ECU刷寫文件格式有:.hex,.s19和.bin等。壓縮刷寫文件是通過特定的壓縮算法制作而成。
壓縮前:
b78954c4-131a-11ef-9118-92fbcf53809c.png

刷寫文件分3個邏輯塊,各塊起始地址、結束地址、長度為:

Block0:起始地址:0x80138020 結束地址:0x801FFFDF 長度:0xC7FC0

Block1:起始地址:0x80300020 結束地址:0x804FFFDF 長度:0x1FFFC0

Block2:起始地址:0xA0078020 結束地址:0xA0137FFF 長度:0xBFFE0

壓縮后:
b7aebf3e-131a-11ef-9118-92fbcf53809c.png

壓縮后刷寫文件仍分3個邏輯塊,各塊起始地址、結束地址、長度為:

Block0:起始地址:0x80138020 結束地址:0x8015E60E 長度:0x265EF

Block1:起始地址:0x80300020 結束地址:0x80448DD7 長度:0x148DB8

Block2:起始地址:0xA0078020 結束地址:0xA00AD0F6 長度:0x350D7

可以發現,壓縮前后的刷寫文件邏輯塊數量未變化,起始地址未變化,各邏輯塊的數據長度變小了,對應的結束地址也產生了變化。每個邏輯塊獨立壓縮
對于壓縮前刷寫文件中分為多個邏輯塊,在壓縮之后的邏輯塊數量未發生變化的情況可稱之為“每個邏輯塊獨立壓縮”。與之不同,也存在“整體壓縮”的方式。
整體壓縮
壓縮前:
b7c8f2fa-131a-11ef-9118-92fbcf53809c.png

刷寫文件分3個邏輯塊,各塊起始地址、結束地址、長度為:

Block0:起始地址:0x8FC0060 結束地址:0x9194FFF 長度:0x1D4FA0

Block1:起始地址:0x91C0000 結束地址:0x91D9EBF 長度:0x19EC0

Block2:起始地址:0x9200000 結束地址:0x9237FFF 長度:0x38000

壓縮后:
b7e3d1a6-131a-11ef-9118-92fbcf53809c.png

壓縮后刷寫文件只有1個邏輯塊,無起始地址。

對于“整體壓縮方式”,刷寫流程中內存擦除(EarseMemmory)服務和0x34(RequestDownload)服務中起始地址等信息由ECU供應商或者OEM定義。b80c895c-131a-11ef-9118-92fbcf53809c.png壓縮刷寫日志分析
非壓縮刷寫日志:
b81b2520-131a-11ef-9118-92fbcf53809c.png壓縮刷寫日志:
b8340d88-131a-11ef-9118-92fbcf53809c.png
通過分析刷寫日志,我們可以發現壓縮刷寫與非壓縮刷寫的主要區別在于:1.請求下載服務(SID=0x34)指令參數(dataFormatIdentifier)不同。

非壓縮:刷寫工具發送:34 00 44 A0 07 80 00 00 10 00 01

壓縮:刷寫工具發送:34 10 44 A0 07 80 00 00 03 50 F7

其中10代表:使用壓縮數據;00代表:使用非壓縮數據。
2.請求下載服務(SID=0x34)指令參數(memorySize)不同。

非壓縮刷寫:刷寫工具發送:34 00 44 A0 07 80 00 00 10 00 01

壓縮刷寫:刷寫工具發送:34 10 44 A0 07 80 00 00 03 50 F7

非壓縮刷寫中請求下載服務(SID=0x34)中memorySize大小大于壓縮刷寫中的memorySize大小,如果最大塊長度值一致,則對于后續數據傳輸服務(SID=0x36)的個數,壓縮刷寫則要小于非壓縮刷寫。

如日志中壓縮刷寫與非壓縮刷寫最大塊長度值皆為0xFFF,可計算出:

非壓縮刷寫后續數據傳輸服務(SID=0x36)的個數為257個;

壓縮刷寫后續數據傳輸服務(SID=0x36)的個數為54個;

數據傳輸服務(SID=0x36)的個數越少,則所需數據傳輸的時間也就越少,這也就是壓縮刷寫可以提升刷寫效率的主要原因。b85f2838-131a-11ef-9118-92fbcf53809c.png總結
隨著ECU軟件功能的日益復雜,提高ECU軟件升級效率變得尤為重要,Bootloader作為一項必不可少的功能軟件,其高效的刷寫方式是實現ECU軟件更新的關鍵。目前,北匯信息已經完成壓縮刷寫測試方案的落地,期待與感興趣的朋友進行交流合作。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據傳輸
    +關注

    關注

    9

    文章

    1891

    瀏覽量

    64601
  • ecu
    ecu
    +關注

    關注

    14

    文章

    886

    瀏覽量

    54504
  • 電子控制
    +關注

    關注

    1

    文章

    69

    瀏覽量

    21629
收藏 人收藏

    評論

    相關推薦

    TCU的刷寫

    目前對于大陸TCU的刷寫,還找不到一款合適的軟件!如果用專檢刷TCU會存在一個問題,安全驗證不通過有好人指點一下嗎?
    發表于 05-14 22:48

    刷寫AT固件相關資料推薦

    刷寫AT固件一、前提說明二、刷寫1、硬件準備2、軟件準備3、固件準備4、開始燒錄一、前提說明一般是模塊固件損壞或者買回來里面可能被別人刷過固件需要擦除或者增加固件才用,在這里結合我刷過的AT固件進行
    發表于 01-21 13:35

    memtool刷寫問題

    MEMTOOL刷寫底層提示以下內容 1、failed to read DBGSR 2、failed to get monitor extension result 3、initializing
    發表于 02-16 09:54

    驅動僅提供32位刷寫的情況下如何完成刷寫單數字節

    [Ooonly] 前情提要:需要刷寫一整個app程序,分包刷寫,每包字節數為單數,要求CRC校驗正確。(芯片底層提供32位全字刷寫和16位半字刷寫,驅動只整合了32位全字
    發表于 08-15 11:35

    linkit_Smart_7688_DUO_固件刷寫說明書

    linkit_Smart_7688_DUO_固件刷寫說明書
    發表于 06-21 17:02 ?0次下載

    用戶自定義操作Custom Action的兩種開發方式

    vFlash專為汽車OEM和ECU供應商中執行刷寫任務的人員所設計,用以實現高效的ECU刷寫。vFlash可以通過標準軟件的圖形界面進行控制,也可以簡單地作為庫集成到現有環境中實現自動
    的頭像 發表于 09-02 17:55 ?2376次閱讀

    致遠電子CAN智慧云如何賦能ECU遠程刷寫

    汽車步入智能網聯時代,汽車總線面臨技術升級,ECU刷寫仍然是車輛性能優化的關鍵測試。本文介紹ZLG致遠電子提出的遠程ECU刷寫方案。 智能網
    的頭像 發表于 10-12 09:31 ?3395次閱讀
    致遠電子CAN智慧云如何賦能<b class='flag-5'>ECU</b>遠程<b class='flag-5'>刷寫</b>

    NodeMCU-刷寫AT固件

    NodeMCU-刷寫AT固件本來不想寫的,發現自己親自去刷的時候,刷了好幾個官網的AT固件包,都不匹配。壇友提供的版本比較老,看到下載鏈接延伸到其他下載地方,直接放棄了。(果然這里有坑!)安信可官網
    發表于 10-28 10:21 ?3次下載
    NodeMCU-<b class='flag-5'>刷寫</b>AT固件

    筆記本電腦BIOS修改及刷寫教程

      刷寫BIOS是一個相對危險的事,如果刷寫過程中出了意外那么電腦就會壞掉,只能拆開電腦把BIOS芯片卸下來用編程器重新刷寫了。首先科普一下筆記本電腦BIOS芯片是個啥?來自360百科的釋義
    發表于 12-17 18:28 ?8次下載
    筆記本電腦BIOS修改及<b class='flag-5'>刷寫</b>教程

    認識一下并列刷寫(Parallel Flash)

    再有,在車輛下線時EOL(End of Line),工廠追求效率,一般會1(刷寫上位機)拖N(N個 ECU)刷寫,這是不是一種Parallel Flash呢?
    的頭像 發表于 11-15 16:03 ?4392次閱讀
    認識一下并列<b class='flag-5'>刷寫</b>(Parallel Flash)

    應用筆記 | TSMaster使用教程—UDS刷寫流程

    今天給大家介紹基于TSMaster的UDS診斷刷寫流程。基本流程主要分為基本參數配置、刷寫流程兩部分。1基本參數配置1、新建工程打開TSMa
    的頭像 發表于 01-06 09:53 ?4021次閱讀
    應用筆記 | TSMaster使用教程—UDS<b class='flag-5'>刷寫</b><b class='flag-5'>流程</b>

    同星智能為英飛凌TLE989X系列芯片提供刷寫方案

    01方案概述同星智能為英飛凌TLE989X系列芯片提供定制開發的代碼包和刷寫工具,主要包括代碼包、基于TSMaster的刷寫工程、刷寫硬件工具TF1011等。使用TF1011可以不需要英飛凌本身
    的頭像 發表于 10-14 08:21 ?1120次閱讀
    同星智能為英飛凌TLE989X系列芯片提供<b class='flag-5'>刷寫</b>方案

    TDA4刷寫技術

    電子發燒友網站提供《TDA4刷寫技術.pdf》資料免費下載
    發表于 08-23 10:15 ?2次下載
    TDA4<b class='flag-5'>刷寫</b><b class='flag-5'>技術</b>

    刷寫實用程序-mflash

    電子發燒友網站提供《刷寫實用程序-mflash.pdf》資料免費下載
    發表于 10-10 09:19 ?0次下載
    <b class='flag-5'>刷寫</b>實用程序-mflash

    同星ECU診斷與刷寫解決方案:降低了開發ECU刷寫軟件的難度!

    TOSUNECU診斷與刷寫解決方案ECU(ElectronicControlUnit)是汽車電子控制系統的核心部件,負責監控和控制汽車各個系統的運行。而診斷是汽車ECU的一項重要功能,當車輛在運行中
    的頭像 發表于 10-26 08:02 ?519次閱讀
    同星<b class='flag-5'>ECU</b>診斷與<b class='flag-5'>刷寫</b>解決方案:降低了開發<b class='flag-5'>ECU</b><b class='flag-5'>刷寫</b>軟件的難度!
    主站蜘蛛池模板: www久久久| 四虎必出精品亚洲高清| 琪琪午夜免费影院在线观看| 一区二区网站| 国产小视频在线高清播放| 91老色批网站免费看| 美女免费毛片| 色多多入口| 午夜男人影院| 亚洲综合欧美日本另类激情| 一二三区在线视频| 五月丁香| 超级乱淫视频播放日韩| 精品国产一二三区| 天天操天天干天天爱| 午夜精品久久久久久99热7777| 沟沟人体一区二区| 久久国产精品夜色| 免费精品一区二区三区在线观看| 色多多黄色| 欧美日韩精品乱国产| 欧美日韩在线成人免费| 色视视频| 特级毛片aaa免费版| 夜色伊人| 色天使色婷婷在线影院亚洲| 青娱乐啪啪| 狠狠色综合网| 狠狠鲁狠狠操| 中文字幕v视界影院| 免费国产不卡午夜福在线观看| 日本超黄视频| 看片免费黄| 国产福利小视频在线观看| 800免费资源网| 2022天天操| 免费在线公开视频| 丁香激情综合| 91大神在线看| 同性男男肉交短文| 热久热|