在无线或通过电缆进行软件更新时,一个目标是尽可能提供最小的更新包,从而减少更新时间和成本。有几种方法可以减小更新文件的大小,但最值得注意的两种方法是压缩和增量(差异)更新——只发送需要更新的旧软件和更新软件之间不同的代码。
这两种技术的目标是减少传送到的字节数:
减少下载时间——新软件需要快速到达汽车的网关(例如,主机)才能开始更新过程
减少所需内存量——新版本交付后,需要在更新开始前有空间存储它
减少网关与目标ECU之间的传输时间——ECU更新时,新版本需要通过CAN/LIM/NOST总线,带宽受限
减少更新时间——更新时间在某些情况下取决于新版本中存在的更改量
领先的汽车公司和科学研究进行的测试详细显示了压缩解决方案和增量更新技术之间的比较。
Vector 是一家嵌入式软件测试公司,与 Red Bend 合作进行概念验证,测试 delta 技术的效率。Vector 选择了 ECU 中常见的 NXP 芯片组——例如动力总成——并通过 CAN 总线将其连接到 vFlash。vFlash 用作管理刷新过程的板外测试器。Vector 运行了三次 ECU 刷新——一次使用软件完整映像,一次使用压缩映像,第三次使用 Red Bend 的 delta 技术与 Vector 的引导加载程序相结合。
图 1:完整文件下载、压缩文件和使用增量更新方法之间的下载大小和编程时间比较。
delta 技术的效率远高于任何压缩技术(本例中为 LZ77)(图 1)。使用压缩,文件从 4.1 MB 变为 2.5 MB。使用 delta 技术,文件减小到 128 KB。在比较与不同流程和技术相关的编程时间时,有一些有趣的结果也支持 delta 技术。完整下载,编程时间为 215 秒;压缩和流水线是 124 秒;相比之下,增量程序时间为 63 秒。
Ralf Schmidgall 博士在他的论文“汽车嵌入式系统软件重新编程”中分析了在进行软件更新时减小版本大小的方法。在表 1 中,Schmidgall 博士总结了一个理论案例研究的结果,以比较这些方法。
表 1:文件大小缩减方法的理论案例研究。
与任何压缩方法相比,delta 技术产生的文件要小得多,并且对更新时间的影响是巨大的,即使 CAN 总线的速度提高到 1,000 Kbps,在这种情况下,delta 的优势也很明显。
Schmidgall 博士在他的总结中写道:“差异文件更新提供了所有研究方法中最好的理论结果。..。..如果未来 ECU 软件大小继续增加,这种方法可能是解决增加问题的唯一可持续方法。重新编程时间”(图 2)。
图 2:随着 ECU 软件大小的增加,增量或差异更新可以帮助解决重新编程时间增加的挑战。
审核编辑:郭婷
-
嵌入式
+关注
关注
5063文章
18990浏览量
302459 -
汽车电子
+关注
关注
3023文章
7837浏览量
166094 -
CAN
+关注
关注
57文章
2705浏览量
463217
发布评论请先 登录
相关推荐
评论