OTA升级方法及其系统技术方案

技术编号:29057768 阅读:26 留言:0更新日期:2021-06-30 08:58
本发明专利技术公开了一种OTA升级方法及其系统,方法包括:OTA平台根据预设的映像文件格式,对ECU可执行文件进行归一化处理,得到映像文件,并将所述映像文件发送至MPU;若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中;若MPU检测到已满足预设的升级前置条件,则发送刷写控制指令序列和所述映像文件至MCU;MCU根据所述刷写控制指令序列和映像文件,控制ECU进行刷写,并返回指令执行结果至MPU。本发明专利技术可降低对MCU数据处理能力的要求,减少OTA网关的软件开发成本和维护成本。减少OTA网关的软件开发成本和维护成本。减少OTA网关的软件开发成本和维护成本。

【技术实现步骤摘要】
OTA升级方法及其系统


[0001]本专利技术涉及固件升级
,尤其涉及一种OTA升级方法及其系统。

技术介绍

[0002]OTA(Over The Air)网关是一种新型网关,它在网关MCU基础上扩展一个带通讯功能的MPU组合而成。目前,一般实现方案是,OTA刷写、路由、网络管理等功能由MCU(Microcontroller Unit,微控制单元)负责实现,4G/5G通讯功能由MPU(Microprocessor Unit,微处理器)负责实现。
[0003]现有的OTA升级的实现如图1所示。从图1可以看出,一般OTA升级实现方法的负载主要集中在MCU,要求MCU有大容量的数据FLASH存储空间用于保存车上的ECU(Electronic Control Unit,电子控制单元)升级文件,有强大的数据处理能力以实现各种格式的ECU可执行文件格式转换,以及能够及时完成基于UDS(Unified Diagnostic Services,统一诊断服务)的刷写控制。而存储空间大、数据处理能力强的MCU,一般异常昂贵,给OTA网关产品市场化带来了很大压力。

技术实现思路

[0004]本专利技术所要解决的技术问题是:提供一种OTA升级方法及其系统,可降低对MCU数据处理能力和FLASH空间的要求,减少OTA网关的硬件成本、软件开发和维护成本。
[0005]为了解决上述技术问题,本专利技术采用的技术方案为:一种OTA升级方法,包括:
[0006]OTA平台根据预设的映像文件格式,对ECU可执行文件进行归一化处理,得到映像文件,并将所述映像文件发送至MPU;
[0007]若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中;
[0008]若MPU检测到已满足预设的升级前置条件,则MPU发送刷写控制指令序列和所述映像文件至MCU;
[0009]MCU根据所述刷写控制指令序列和映像文件,控制ECU进行刷写,并返回指令执行结果至MPU。
[0010]本专利技术还提出一种OTA升级系统,包括依次连接的OTA平台、MPU、MCU和ECU;
[0011]所述OTA平台用于根据预设的映像文件格式,对ECU可执行文件进行归一化处理,得到映像文件,并将所述映像文件发送至MPU;
[0012]所述MPU用于对所述映像文件进行验证;若验证通过,则将所述映像文件存储至预设的目录中;若检测到满足预设的升级前置条件,则发送刷写控制指令序列和所述映像文件至MCU;
[0013]所述MCU用于根据MPU发送的刷写控制指令序列和所述映像文件,对ECU进行刷写,并返回指令执行结果至MPU。
[0014]本专利技术的有益效果在于:通过由OTA平台实现文件格式转换,充分利用了PC机强大且免费的处理能力,极大减少了对MCU数据处理能力的要求,降低了硬件成本;通过进行归
一化处理,使得MCU程序无需随着ECU文件格式的改变而改变,只要遵循UDS规范和采用相同UDS刷写过程认证算法,无论是MPU还是MCU程序,都无需改变,有效减少了OTA网关的软件开发成本和维护成本;通过将文件存储功能转移到本身存储空间较大的MPU上,节省了MCU数据FLASH存储空间;通过将刷写控制逻辑放在MPU上实现,节省了MCU程序FLASH存储空间,刷写动作执行由MCU实现,保证了刷写的时效性。
[0015]本专利技术在保证时效性的前提下,节省了MCU数据FLASH存储空间和MCU程序FLASH存储空间,降低了对MCU的数据处理能力要求,从而可有效控制整体的成本;同时,由于OTA平台端对各种格式的ECU可执行文件进行了归一化处理,OTA网关程序不再与ECU文件格式相关,有效减少了OTA网关的开发成本和产品的批量升级维护成本,极大增强了OTA网关的普适性和灵活度。
附图说明
[0016]图1为现有技术中OTA升级实现方法的示意图;
[0017]图2为本专利技术实施例一的一种OTA升级方法的流程图
[0018]图3为本专利技术实施例一中采用三级流水线技术传输的示意图;
[0019]图4为本专利技术实施例一中MPU端的刷写控制流程图;
[0020]图5为本专利技术实施例一中MCU端的刷写控制流程图。
具体实施方式
[0021]为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图详予说明。
[0022]本专利技术最关键的构思在于:将MCU存储、解析可执行文件格式,控制ECU刷写功能拆分为多个子功能和实施个体,由OTA平台实现文件格式转换,并进行归一化处理,由MPU实现文件存储功能和刷写控制逻辑,由MCU将控制逻辑转换为UDS指令序列,由ECU执行刷写动作。
[0023]请参阅图1,一种OTA升级方法,包括:
[0024]OTA平台根据预设的映像文件格式,对ECU可执行文件进行归一化处理,得到映像文件,并将所述映像文件发送至MPU;
[0025]若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中;
[0026]若MPU检测到已满足预设的升级前置条件,则MPU发送刷写控制指令序列和所述映像文件至MCU;
[0027]MCU根据所述刷写控制指令序列和映像文件,控制ECU进行刷写,并返回指令执行结果至MPU。
[0028]从上述描述可知,本专利技术的有益效果在于:可降低对MCU数据处理能力的要求,减少OTA网关的开发成本和维护成本。
[0029]进一步地,所述映射文件格式中的字段包括段个数、段执行地址、段文件偏移、段长度、段数据内容和校验和,还包括数字签名;
[0030]所述若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中之前,进一步包括:
[0031]对所述映像文件的文件内容进行哈希计算,得到第一散列值,所述文件内容包括段个数、段执行地址、段文件偏移、段长度、段数据内容和校验和中的内容;
[0032]获取所述映像文件中的数字签名;
[0033]通过公钥对所述数字签名进行解密,得到第二散列值;
[0034]若所述第一散列值和第二散列值一致,则判定验证通过。
[0035]由上述描述可知,通过对数字签名进行验签,可校验映像文件的完整性和可信性。
[0036]进一步地,所述若所述第一散列值和第二散列值一致,则判定验证通过具体为:
[0037]根据所述映像文件中各段的段数据内容,计算累加校验和;
[0038]若所述第一散列值和第二散列值一致,且所述累加校验和与所述映像文件中的校验和一致,则判定验证通过。
[0039]由上述描述可知,通过比对校验和,进一步验证映像文件的完整性。
[0040]进一步地,所述若MPU检测到已满足预设的升级前置条件,则发送刷写控制指令序列和所述映像文件至MCU之前,进一步包括:
[0041]MPU按照预设周期检测是否满足预设的升级前置条件,所述升级前置条件包括蓄电池电压正常本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种OTA升级方法,其特征在于,包括:OTA平台根据预设的映像文件格式,对ECU可执行文件进行归一化处理,得到映像文件,并将所述映像文件发送至MPU;若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中;若MPU检测到已满足预设的升级前置条件,则MPU发送刷写控制指令序列和所述映像文件至MCU;MCU根据所述刷写控制指令序列和映像文件,控制ECU进行刷写,并返回指令执行结果至MPU。2.根据权利要求1所述的OTA升级方法,其特征在于,所述映射文件格式中的字段包括段个数、段执行地址、段文件偏移、段长度、段数据内容和校验和,还包括数字签名;所述若MPU对所述映像文件验证通过,则将所述映像文件存储至预设的目录中之前,进一步包括:对所述映像文件的文件内容进行哈希计算,得到第一散列值,所述文件内容包括段个数、段执行地址、段文件偏移、段长度、段数据内容和校验和中的内容;获取所述映像文件中的数字签名;通过公钥对所述数字签名进行解密,得到第二散列值;若所述第一散列值和第二散列值一致,则判定验证通过。3.根据权利要求2所述的OTA升级方法,其特征在于,所述若所述第一散列值和第二散列值一致,则判定验证通过具体为:根据所述映像文件中各段的段数据内容,计算累加校验和;若所述第一散列值和第二散列值一致,且所述累加校验和与所述映像文件中的校验和一致,则判定验证通过。4.根据权利要求1所述的OTA升级方法,其特征在于,所述若MPU检测到已满足预设的升级前置条件,则发送刷写控制指令序列和所述映像文件至MCU之前,进一步包括:MPU按照预设周期检测是否满足预设的升级前置条件,所述升级前置条件包括蓄电池电压正常、档位处于空档状态、手刹处于驻车状态以及汽车点火开关处于ACC档或ON档。5.根据权利要求1所述的OTA升级方法,其特征在于,所述MPU发送刷写控制指令序列和所述映像文件至MCU;MCU根据所述刷写控制指令序列和映像文件,控制ECU进行刷写,并返回指令执行结果至MPU具体为:MPU发送总线准备刷写指令至MCU;MCU接收到所述总线准备刷写指令后,通过统一诊断服务中的诊断会话控制服务广播通知各ECU切换到扩展模式,通过统一诊断服务中的故障码设置控制服务广播通知CAN总线各设备关闭故障诊断,通过统一诊断服务中的通信控制服务广播通知各ECU进入静默状态,并返回第一指令执行结果至MPU;若MPU接收到的第一指令执行结果为执行成功,则发送ECU准备编程指令至MCU;MCU接收到所述ECU准备编程指令后,通过诊断会话控制服务通知未刷写的一ECU从扩展模式切换到编程模式,通过统一诊断服务中的安全访问服务获取所述一ECU安全访问权限,并返回第二指令执行结果至MPU;若MPU接收到的第二指令执行结果为执行成功,则发送擦除指令至MCU;
MCU接收到所述擦除指令后,通过统一诊断服务中的例程控制服务调用擦除扇区例程,擦除所述一ECU的闪存,并返回第三指令执行结果至MPU;若MPU接收到的第三指令执行结果为执行成功,则发送刷写指令和所述映像文件至MCU;MCU接收到所述刷写指令和所述映像文件后,通过统一诊断服务中的请求下载服务、传输数据服务和请求退出传输服务,将所述映像文件发送至所述一ECU,并返回第四指令执行结果至MPU;若MPU接收到的第四指令执行结果为执行成功,则发送完整性校验指令至MCU;MCU接收到所述完整性校验指令后,通过例程控制服务调用文件校验例程,并...

【专利技术属性】
技术研发人员:赖荣东黄运峰赵国开张汉良曹萍
申请(专利权)人:厦门雅迅网络股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1