网易首页 > 网易号 > 正文 申请入驻

ECU刷写流程之压缩刷写技术解析

0
分享至



背景

在现代汽车电子技术中,ECU(电子控制单元)的软件升级是一项关键任务。为了提高数据传输的效率和安全性,压缩刷写技术应运而生。通过数据压缩传输,我们可以有效地增加带宽利用率,减少刷写工具与ECU之间的数据传输量,从而显著缩短ECU升级时间。此外,为了加强数据的安全性和保密性,数据传输还可以进行加密处理。在ISO14229-1规范中,请求下载服务(SID=0x34)和请求文件传输服务(0x38)定义了数据可以基于压缩和加密的方式进行传输。本文以请求下载服务为例重点介绍数据压缩部分。

1.ISO14229-1:2020规范中定义请求下载服务(0x34)的请求报文格式



根据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定义也不尽相同。

2.压缩前后刷写文件比对

软件刷写是指将软件程序烧录或者通过UDS刷写传输到ECU芯片内存的特定地址段,然后ECU就会运行该软件程序,去实现其特有的功能。常用的ECU刷写文件格式有:.hex,.s19和.bin等。压缩刷写文件是通过特定的压缩算法制作而成。

压缩前:



刷写文件分3个逻辑块,各块起始地址、结束地址、长度为:

Block0:起始地址:0x80138020结束地址:0x801FFFDF 长度:0xC7FC0

Block1:起始地址:0x80300020结束地址:0x804FFFDF 长度:0x1FFFC0

Block2:起始地址:0xA0078020结束地址:0xA0137FFF 长度:0xBFFE0

压缩后:



压缩后刷写文件仍分3个逻辑块,各块起始地址、结束地址、长度为:

Block0:起始地址:0x80138020结束地址:0x8015E60E 长度:0x265EF

Block1:起始地址:0x80300020结束地址:0x80448DD7 长度:0x148DB8

Block2:起始地址:0xA0078020结束地址:0xA00AD0F6 长度:0x350D7

可以发现,压缩前后的刷写文件逻辑块数量未变化,起始地址未变化,各逻辑块的数据长度变小了,对应的结束地址也产生了变化。

每个逻辑块独立压缩:

对于压缩前刷写文件中分为多个逻辑块,在压缩之后的逻辑块数量未发生变化的情况可称之为“每个逻辑块独立压缩”。与之不同,也存在“整体压缩”的方式。

整体压缩:

压缩前:



刷写文件分3个逻辑块,各块起始地址、结束地址、长度为:

Block0:起始地址:0x8FC0060结束地址:0x9194FFF 长度:0x1D4FA0

Block1:起始地址:0x91C0000结束地址:0x91D9EBF 长度:0x19EC0

Block2:起始地址:0x9200000结束地址:0x9237FFF 长度:0x38000

压缩后:



压缩后刷写文件只有1个逻辑块,无起始地址。

对于“整体压缩方式”,刷写流程中内存擦除(EarseMemmory)服务和0x34(RequestDownload)服务中起始地址等信息由ECU供应商或者OEM定义。

3. 压缩刷写日志分析

非压缩刷写日志:



压缩刷写日志:



通过分析刷写日志,我们可以发现压缩刷写与非压缩刷写的主要区别在于:

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 0780 00 00 10 00 01

压缩刷写:刷写工具发送:34 10 44 A0 0780 00 00 03 50 F7

非压缩刷写中请求下载服务(SID=0x34)中memorySize大小大于压缩刷写中的memorySize大小,如果最大块长度值一致,则对于后续数据传输服务(SID=0x36)的个数,压缩刷写则要小于非压缩刷写。

如日志中压缩刷写与非压缩刷写最大块长度值皆为0xFFF,可计算出:

非压缩刷写后续数据传输服务(SID=0x36)的个数为257个;

压缩刷写后续数据传输服务(SID=0x36)的个数为54个;

数据传输服务(SID=0x36)的个数越少,则所需数据传输的时间也就越少,这也就是压缩刷写可以提升刷写效率的主要原因。

总结

随着ECU软件功能的日益复杂,提高ECU软件升级效率变得尤为重要,Bootloader作为一项必不可少的功能软件,其高效的刷写方式是实现ECU软件更新的关键。目前,北汇信息已经完成压缩刷写测试方案的落地,期待与感兴趣的朋友进行交流合作。

参考文献:

【1】ISO14229-1:2020

声明:个人原创,仅供参考

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
黄仁勋:我和你们俩都是好朋友,但我总觉得自己得站椅子上

黄仁勋:我和你们俩都是好朋友,但我总觉得自己得站椅子上

算力游侠
2026-09-18 00:12:14
如果黑洞路过太阳系,地球会被吸进去吗?

如果黑洞路过太阳系,地球会被吸进去吗?

观察宇宙
2026-09-17 10:31:18
3亿成本亏得底裤不剩,投资人轮番破防,这电影就是个笑话

3亿成本亏得底裤不剩,投资人轮番破防,这电影就是个笑话

云深不知在何处
2026-09-17 11:46:39
女儿踩坏床头柜,怕被爸爸责怪,和妈妈商量后扔掉;2天后想起柜子里有370多克黄金铂金饰品和190余万元存单

女儿踩坏床头柜,怕被爸爸责怪,和妈妈商量后扔掉;2天后想起柜子里有370多克黄金铂金饰品和190余万元存单

91.6陕西交通广播
2026-09-18 08:45:47
莫言说:“如果一个人对待家人不耐烦态度差,对外人又很客气和善,不是不孝顺,而是因为这三个原因。”

莫言说:“如果一个人对待家人不耐烦态度差,对外人又很客气和善,不是不孝顺,而是因为这三个原因。”

背包旅行
2026-07-29 18:06:59
男子在游戏中充值100万,急用钱被迫转卖账号,评估后只值8000元

男子在游戏中充值100万,急用钱被迫转卖账号,评估后只值8000元

新游戏大妹子
2026-09-15 13:06:24
马某兴在墓园倒地身亡,现场有血迹流出,官方公布死因

马某兴在墓园倒地身亡,现场有血迹流出,官方公布死因

南方都市报
2026-09-17 08:09:08
北京,为啥反而下降了?

北京,为啥反而下降了?

大川东山再起
2026-09-16 14:34:41
彻底撕破脸!华为与赛力斯分家,根源正是当年上汽的“灵魂说”

彻底撕破脸!华为与赛力斯分家,根源正是当年上汽的“灵魂说”

叮当当科技
2026-09-17 04:29:55
欧洲已经乱了阵脚,泽连斯基捅出这么大篓子,谁也不知道该怎么办

欧洲已经乱了阵脚,泽连斯基捅出这么大篓子,谁也不知道该怎么办

林子说事
2026-09-18 00:18:02
5-0!哈兰德高挂免战牌,9500万天才绝妙助攻,曼城豪取6连胜

5-0!哈兰德高挂免战牌,9500万天才绝妙助攻,曼城豪取6连胜

我的护球最独特
2026-09-18 04:27:10
中央纪委首次主导通报

中央纪委首次主导通报

梧桐樹智庫
2026-09-18 12:26:58
赵薇还有脸出来?与女儿同框,小四月身高超170,大眼睛跟妈妈一样

赵薇还有脸出来?与女儿同框,小四月身高超170,大眼睛跟妈妈一样

八卦王者
2026-09-16 15:50:45
哪些东西你认为已经贵到不值了?网友:看了物价,我认为减肥辟谷是普通人攒钱的最佳方法

哪些东西你认为已经贵到不值了?网友:看了物价,我认为减肥辟谷是普通人攒钱的最佳方法

带你感受人间冷暖
2026-09-14 10:27:48
“iPhoneDuo维修费8000”冲上热搜,苹果客服回应:目前官方iPhone维修查询链接没有更新新设备的价格,第三方发布的言论无法判断

“iPhoneDuo维修费8000”冲上热搜,苹果客服回应:目前官方iPhone维修查询链接没有更新新设备的价格,第三方发布的言论无法判断

台州交通广播
2026-09-18 12:03:50
卖豆浆何必靠丝袜?

卖豆浆何必靠丝袜?

极目新闻
2026-09-18 11:14:33
知情人曝敬一丹病程:挺过18天凶险期,会自主呼吸,差一步能醒

知情人曝敬一丹病程:挺过18天凶险期,会自主呼吸,差一步能醒

夏末moent
2026-09-15 23:56:21
挖运河挖出3.15亿方土,换别人愁死,中国直接顺手造1.39万亩良田

挖运河挖出3.15亿方土,换别人愁死,中国直接顺手造1.39万亩良田

故事终将光明磊落
2026-09-17 14:42:50
争议!日本代表团:我们给自己留了备用住宿 日本选手不用担心住宿

争议!日本代表团:我们给自己留了备用住宿 日本选手不用担心住宿

风过乡
2026-09-18 09:42:07
一个国家能蠢到什么程度?看看法国就明白了:法国黑人接近800万,巴黎新生儿里70%是黑人

一个国家能蠢到什么程度?看看法国就明白了:法国黑人接近800万,巴黎新生儿里70%是黑人

怪味历史连连看
2026-09-08 01:55:32
2026-09-18 13:55:00
北汇信息
北汇信息
专注汽车电子领域
614文章数 31关注度
往期回顾 全部

汽车要闻

纯电/插混双动力+五座/六座双布局 海狮08应该怎么选?

头条要闻

折叠iPhone还没开售 维修费引热议:换块屏或8000元

头条要闻

折叠iPhone还没开售 维修费引热议:换块屏或8000元

体育要闻

一个角色球员,靠什么在NBA征战17年

娱乐要闻

敬一丹逝世 央视送别,女儿成“心病”

财经要闻

中国汽车:尾大不掉,必须出清

科技要闻

苹果店外黄牛蹲守:18 Pro Max加价500

态度原创

家居
手机
时尚
本地
军事航空

家居要闻

2026建博会(广州) 公装联探展交流活动

手机要闻

业内坐实iPhone Duo是情怀机 维修费要8000元 苹果客服承认维修费确实贵

没想到这件事,对我的改变这么大!

本地新闻

不止胖东来!许昌藏着半部三国史

军事要闻

中方反对在安理会强推恢复对伊朗制裁

无障碍浏览 进入关怀版