CN112740172B - 管理车辆中电子设备软件版本的方法及相关设备 - Google Patents
管理车辆中电子设备软件版本的方法及相关设备 Download PDFInfo
- Publication number
- CN112740172B CN112740172B CN201980059871.1A CN201980059871A CN112740172B CN 112740172 B CN112740172 B CN 112740172B CN 201980059871 A CN201980059871 A CN 201980059871A CN 112740172 B CN112740172 B CN 112740172B
- Authority
- CN
- China
- Prior art keywords
- vehicle
- information
- vvt
- patches
- upgraded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种用于管理车辆中电子设备软件版本的方法以及相关设备,所述方法包括:向目标车辆发送升级包;接收来自于所述目标车辆的升级响应,其中所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;根据所述升级响应,升级对应于所述目标车辆的车辆版本树,得到已升级的VVT。上述技术方案提供了一种轻量有效的版本控制机制,用于维护车辆中每个电子设备的软件版本。
Description
技术领域
本发明实施例涉及信息技术领域,并且更具体地,涉及一种管理车辆中电子设备软件版本方法及相关设备。
背景技术
现代轿车/车辆中配备有来自不同制造商的数百种电子设备。每种电子设备都不同,并执行特定的操作。电子设备中的软件控制该操作。
电子设备供应商向空中(over-the-air,OTA)服务器提交软件补丁。OTA服务器将软件补丁推送到车辆。车辆中相应的电子设备将安装软件补丁。当前,OTA服务器尚不具备用于监视和维护车辆中电子设备软件的机制。
发明内容
本申请实施例提供了一种管理车辆中电子设备软件版本的方法及相关设备。该技术方案提供了一种用于控制车辆中电子设备软件版本的轻量的解决方案。
根据第一方面,本申请实施例提供了一种用于管理车辆中电子设备软件版本的方法,包括:服务器向目标车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与所述目标车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;所述服务器接收来自于所述目标车辆的升级响应,所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;以及所述服务器根据所述升级响应,升级对应于所述目标车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述目标车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号。
上述技术方案提供了一种轻量有效的版本控制机制,用于维护车辆中每个电子设备的软件版本。
在一种可能的设计中,所述方法还包括:根据所述已升级的VVT确定VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;向所述目标车辆发送所述VVT信息。
在一种可能的设计中,其中所述方法还包括:确定对应于所述VVT信息的时间戳;以及向所述目标车辆发送所述时间戳。
在一种可能的设计中,所述目标车辆中的电子设备的身份信息包括:第一身份信息.第二身份信息和第三身份信息,其中所述第一身份信息用于指示所述目标车辆中的电子设备的制造商的身份,所述第二身份信息用于指示所述目标车辆中的电子设备的类型的身份,以及所述第三身份信息用于指示所述目标车辆中的电子设备。
在一种可能的设计中,在向所述目标车辆发送所述升级包之前,所述方法还包括:从M个供应商处接收所述M个补丁,其中所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;存储所述M个补丁;根据所述M补丁,升级对应于所述目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中所述已升级的GVT包括多个第二软件信息,所述第二软件信息包括所述目标型号的车辆中的电子设备的身份信息和所述目标型号的车辆中的电子设备的最新软件版本号,所述目标车辆的型号为所述目标型号;以及根据所述已升级的GVT确定所述升级包,其中所述M个补丁包括所述N个补丁。
在一种可能的设计中,所述根据所述已升级的GVT确定所述升级包,包括:根据所述VVT和所述已升级的GVT确定所述N个电子设备,其中所述N个电子设备中的任一个电子设备在所述VVT中的软件版本号与所述N个电子设备中的所述任一个电子设备在所述已升级的GVT中的版本号不同;以及确定所述升级包,其中,所述VVT和所述已升级的GVT中的所述N个电子设备的软件版本号不同。
在一种可能的设计中,在根据所述已升级的GVT确定所述升级包之前,所述方法还包括:确定所述M个补丁包括至少一个关键补丁;并且,其中确定所述升级包,包括:确定所述升级包包括所述至少一个关键补丁。
在一种可能的设计中,所述目标型号的车辆中的电子设备的身份信息包括:第四身份信息,第五身份信息和第六身份信息,其中所述第四身份信息用于指示所述目标型号的车辆的电子设备的制造商的身份,所述第五身份信息用于指示所述目标型号的车辆的电子设备的类型的身份,所述第六身份信息用于指示所述目标型号的车辆的电子设备。
根据第二方面,本申请实施例提供了一种用于管理车辆中电子设备软件版本的方法,其特征在于包括:所述车辆从服务器接收升级包,其中所述升级包包括N个补丁,所述N个补丁与N个电子设备一一对应,N为大于或等于1的正整数;所述车辆向所述N个电子设备发送所述N个补丁;所述车辆接收N个升级反馈信息,其中所述升级反馈息用于指示发送所述升级反馈信息的电子设备是否安装了对应于所述电子设备的补丁;所述车辆根据所述N个升级反馈信息确定升级响应;以及所述车辆向所述服务器发送所述升级响应。
上述技术方案提供了一种轻量有效的版本控制机制,用于维护车辆中每个电子设备的软件版本。
在一种可能的设计中,所述方法还包括:从所述服务器获取VVT信息,其中所述VVT信息用于指示至少一个第一软件信息,所述第一软件信息用于指示电子设备的身份信息以及所述电子设备当前软件版本号;以及存储所述VVT信息。
在一种可能的设计中,所述方法还包括:获取对应于所述VVT信息的时间戳;以及存储所述时间戳。
在一种可能的设计中,所述电子设备的身份信息包括:第一身份信息.第二身份信息和第三身份信息,其中所述第一身份信息用于指示所述电子设备的制造商的身份,所述第二身份信息用于指示所述电子设备的类型的身份,以及所述第三身份信息用于指示所述电子设备。
根据第三方面,本申请实施例提供了一种服务器,所述服务器具有实现第一方面所述的方法的功能。所述功能可以通过硬件实现,也可通过硬件执行相应的软件实现。所述硬件或软件包括至少一个与上述功能相对应的模块。
根据第四方面,本申请实施例提供了一种车辆,所述车辆具有实现第二方面所述方法的功能。所述功能可以通过硬件实现,也可通过硬件执行相应的软件实现。所述硬件或软件包括至少一个与上述功能相对应的模块。
根据第五方面,本申请实施例提供了一种带有指令的计算机可读存储介质。当在计算机上运行所述指令时,使得所述计算机执行第一方面或第一方面的任意可能实现方式中的方法。
根据第六方面,本申请实施例提供了一种带有指令的计算机可读存储介质。当在计算机上运行所述指令时,使得所述计算机执行第二方面或第二方面的任意可能实现方式中的方法。
根据第七方面,提供了一种服务器,包括:处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
根据第八方面,提供了一种车辆,包括:处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行第二方面或第二方面的任意可能的实现方式中的方法。
根据第九方面,提供了一种系统,该系统包括:第七方面中所述的服务器以及第八方面所述的车辆。
根据第十方面,提供了一种芯片系统,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于从所述存储器中调用所述计算机程序并运行所述计算机程序,使得设置有所述芯片的服务器执行第一方面或第一方面的任意可能实现方式中的方法。
根据第十一方面,提供了一种芯片系统,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于从所述存储器中调用所述计算机程序并运行所述计算机程序,使得设置有所述芯片的车辆执行第二方面或第二方面的任意可能实现方式中的方法。
根据第十二方面,提供了一种的计算机程序产品,其中,当所述计算机程序产品在服务器上运行时,使得所述服务器执行第一方面或第一方面的任意可能实现方式中的方法。
根据第十三方面,提供了一种的计算机程序产品,其中,当所述计算机程序产品在车辆上运行时,使得所述车辆执行第二方面或第二方面的任意可能实现方式中的方法。
根据第十四方面,本申请实施例提供了一种用于管理车辆中电子设备软件版本的方法,其特征在于包括:服务器向目标车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与所述目标车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;所述车辆接收来自于所述服务器的升级包,并向所述服务器发送升级响应,其中所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;所述服务器接收来自于所述车辆的升级响应,并根据所述升级响应升级对应于所述车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号。
在一种可能的设计中,所述方法还包括:所述服务器根据所述已升级的VVT确定VVT信息,并向所述车辆发送所述VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;以及所述车辆获取来自于所述服务器的VVT信息并存储所述VVT信息。
附图说明
图1为根据用于管理车辆中电子设备软件版本的方法的实施例的流程图。
图2示出了GVT v1以及GVT v2。
图3为本发明中目标车辆的结构示意图。
图4示出了GVT v2、VVT v1以及VVT v2。
图5示出了对应于VVT v1以及VVT v2的PST。
图6为根据本发明的用于接收来自于供应商的补丁的方法的实施例的流程图。
图7为根据本申请实施例的服务器700的示意性框图。
图8为根据本申请实施例的服务器800的示意性框图。
图9为根据本申请实施例的车辆900的示意性框图。
图10为根据本申请实施例的车辆1000的示意性框图。
图11示出了本申请实施例的系统1100。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
图1为根据本发明的用于管理车辆中电子设备软件版本的方法的实施例的流程图。
101,OTA服务器从M个供应商接收M个补丁。相应地,M个供应商向OTA服务器发送M个补丁。
所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数。
在一些实施例中,本申请中所述的补丁也可以被称为升级、升级包,等等。
目标型号是指一种特定类型的汽车型号。例如,目标型号为BMW-系列2-2019Q1。目标型号的所有汽车都具有完全相同的电子设备。
稍后将详细描述从供应商接收补丁的过程。
102,OTA服务器存储M个补丁。
103,OTA服务器根据M个补丁,升级对应于目标型号的车辆全局版本树(globalversion tree,GVT),得到已升级的GVT。
每种汽车型号都有对应的GVT。例如,BMW-系列-2-2019Q1对应GVT 1,BMW-系列-2-2016Q2对应GVT 2。不同的汽车型号具有不同的电子设备。因此,对应于不同汽车型号的GVT包括不同的信息。
第二软件信息包括目标型号车辆中电子设备的身份信息以及目标型号车辆中电子设备的软件版本号。
在一些实施例中,本申请中所述的软件也可以被称为固件。
例如,第二软件信息的格式可以是[MFR_ID:Version],其中,MFR_ID是用于标识电子设备类型和制造商的ID,Version是电子设备的当前软件版本。
对于对应于目标型号的GVT,GVT具有不同的版本。例如,在步骤103中需要升级的GVT是版本1,而已升级的的GVT是版本2。为便于描述,将在步骤103中需要升级的GVT称为GVT v1,将已升级的GVT称为GVT v2。在这种情况下,步骤103可以解释为OTA服务器根据M个补丁升级GVT v1,得到GVT v2。
GVT v1包括多个第二软件信息。GVT v2包括多个第二软件信息。在一些实施例中,例如,GVT v1包括K个第二软件信息,GVT v2包括K个第二软件信息,K为正整数且大于或等于M。
对于GVT v1和GVT v2,GVT v2中包括的M个电子设备的软件版本号与GVT v1中包括的M个电子设备的软件版本号不同。GVT v2中包括的M个电子设备的软件版本号是最新软件版本号,GVT v1中包括的M个电子设备的软件版本号是前一软件版本号。若K大于M,则GVTv2中包括的K-M个电子设备的软件版本号将与GVT v1中包括的K-M个电子设备的软件版本号相同。
图2示出了GVT v1以及GVT v2。图2所示的TB、CC、DC(包括DC1至DC3)和E(包括E1至E9)分别表示车辆中的远端接收盒、中央控制器、域控制器和电子控制单元。
参见图2,对应于GVT v1中包括的DC1的软件信息与对应于GVT v2中包括的DC1的软件信息不同。更具体地,GVT v1中包括的DC1的软件版本号与GVT v2中包括的DC1的软件版本号不同。GVT v1中包括的DC 1的软件版本号为V4,GVT v2中包括的DC1的软件版本号为V6。更大的软件版本号表示更新的软件版本。因此,GVT v1中包括的DC1的软件版本相较GVTv2中包括的DC1的软件版本更旧。
同样,GVT v1中包括的E2和E8的软件版本号与GVT v2中包括的E2和E8的软件版本号不同。
104,OTA服务器根据已升级的GVT确定升级包,其中升级包包括N个补丁,N为大于或等于1的正整数。
可选地,在一些实施例中,OTA服务器根据已升级的GVT,确定M个电子设备的软件版本号已改变。因此,OTA服务器可以确定升级包包括对应于步骤101中接收的M个电子设备的M个补丁。在此情况下,N等于M。
以图2为例。该升级包包括3个补丁,用于升级DC1、E2和E8。
可选地,在一些实施例中,OTA服务器根据已升级的GVT,确定N个关键电子设备的软件版本号已改变。OTA服务器还确定M-N个非关键电子设备的软件版本号也已改变。在这种情况下,OTA服务器可以确定升级包包括对应于关键电子设备的补丁。M大于N。
以图2为例。假定DC1和E2是关键电子设备,而E8是非关键电子设备。则该升级包包括2个补丁,用于升级DC1和E2。
可选地,在一些实施例中,OTA服务器可以根据已升级的GVT和对应于目标车辆的车辆版本树(vehicle version tree,VVT)确定升级包。
OTA服务器存储多个VVT。多个VVT与多个车辆一一对应。多个车辆的型号是目标型号。目标车辆是多个车辆中的一个。
对应于目标车辆的VVT包括多个第一软件信息。第一软件信息包括目标车辆中电子设备的身份信息以及目标车辆中电子设备的当前软件版本号。第一软件信息的格式类似于第二软件信息的格式。例如,第二软件信息的格式可以是[MFR_ID,DEV_ID:Version],其中,MFR_ID是用于标识电子设备类型和制造商的ID,DEV_ID是电子设备的唯一ID,Version是电子设备的当前软件版本。
可选地,在一些实施例中,所述OTA服务器根据已升级的GVT和对应于目标车辆的VVT确定升级包,包括:OTA服务器确定N个电子设备,其中,已升级的GVT和VVT中的N个电子设备的软件版本号不同;OTA服务器确定升级包,其中,升级包包括用于升级N个电子设备的N个补丁。若成功安装了N个补丁,则目标车辆中N个电子设备的软件版本号将与已升级的GVT中N个电子设备的软件版本号相同。此时,N等于M。
可选地,在一些实施例中,所述OTA服务器根据已升级的GVT和对应于目标车辆的VVT确定升级包,包括:OTA服务器确定M个电子设备包括N个关键电子设备,其中,已升级的GVT和VVT中的M个电子设备的软件版本号不同;OTA服务器确定升级包,其中,升级包包括用于升级N个关键电子设备的N个补丁。若成功安装了N个补丁,则目标车辆中N个电子设备的软件版本号将与已升级的GVT中N个电子设备的软件版本号相同。此时,N小于或等于M。
可选地,在一些实施例中,OTA服务器可以定期检查已升级的GVT与目标车辆的VVT之间的差异。若已升级的GVT与目标车辆的VVT之间存在任何差异,则OTA服务器可以确定升级包。
可选地,在一些实施例中,OTA服务器可以检查在M个补丁中是否存在至少一个关键补丁。若M个补丁包括一个或多个关键补丁,则OTA服务器可以确定升级包,且升级包包括一个或多个关键补丁。若M个补丁不包括一个或多个关键补丁,则OTA服务器将不确定升级包。换言之,OTA服务器可以只有在接收到来自于供应商的至少一个关键补丁后才确定升级包。
105,OTA服务器向目标车辆发送升级包。相应地,目标车辆接收来自于OTA服务器的升级包。
如上所述,升级包包括N个补丁。N个补丁与目标车辆中的N个电子设备一一对应,N个补丁中的每个补丁用于升级相应电子设备的软件。
可选地,在一些实施例中,OTA服务器可以与目标车辆建立安全通道。更具体地,OTA服务器可以基于安全技术或协议(例如,安全网络传输协议(Transport LayerSecurity,TLS)、安全套接层协议(Secure Sockets Layer,SSL)、安全超文本传输协议(Hypertext Transfer Protocol Secure,HTTPs)等)与目标车辆建立通道。升级包可以在该安全通道上进行传输。
可选地,在一些实施例中,在向目标车辆发送升级包之前,OTA服务器可以向目标车辆发送通知信息。相应地,目标车辆接收该通知信息。通知信息用于指示目标车辆接收升级包。可选地,目标车辆可以向OTA服务器发送通知响应信息。通知响应信息用于指示目标车辆已接收到通知信息,且目标车辆已准备好接收升级包。在收到通知响应信息后,OTA服务器向目标车辆发送升级包。
目标车辆包括多个电子设备。多个电子设备包括N个电子设备。在一些实施例中,多个电子设备包括一个远端接收盒(telematics box,TBox),一个中央控制器(centralcontroller,CC),多个域控制器(domain controller,DC)和多个电子控制单元(Electronic Control Unit,ECU)。
图3为本发明实施例中目标车辆的结构示意图。
参见图3,目标车辆包括TBox 301、CC 301、DC 310、DC 320和DC 330。目标车辆还包括ECU 311、ECU 312、ECU 313、ECU 321、ECU 322、ECU 331、ECU 332、ECU 333和ECU 334。TBox 301与CC 301连接。DC 310、DC 320以及DC 330与CC 301连接。ECU 331、ECU 312以及ECU 313与DC 310连接;ECU 321以及ECU 332与DC 320连接;ECU 331、ECU 332、ECU 333以及ECU 334与DC 330连接。
TBox结合了无线通信模块。TBOX可以通过无线保真(Wireless Fidelity,WiFi)、长期演进(Long Term Evolution,LTE)、5G等任意一种无线通信方法与OTA服务器进行通信。
目标车辆的TBox接收升级包并向CC发送升级包。
可选地,在一些实施例中,可以通过使用TBox的私钥/公钥保护携带升级包的消息。例如,OTA服务器可以使用TBox的公钥对携带升级包的消息进行加密,并向目标车辆发送已加密的消息。目标车辆的TBox可以使用TBox的私钥解密已加密的消息,得到升级包。
可选地,在一些实施例中,除携带升级包外,该消息可以携带随机数。TBox可以检查消息中携带的随机数,以验证消息是由OTA服务器发送的。
可选地,在一些实施例中,携带通知信息的消息可以携带随机数。TBox可以检查消息中携带的随机数,以验证消息是由OTA服务器发送的。
可选地,在一些实施例中,携带通知响应信息的消息可以携带随机数。OTA服务器可以检查消息中携带的随机数,以验证消息是由目标车辆发送的。
可选地,在一些实施例中,TBox可以使用对称密钥KTBox_CC对升级包进行加密,并向CC发送已加密的升级包。CC可以使用对称密钥KTBox_CC解密已加密的升级包,得到N个补丁。
可选地,在一些实施例中,TBox可以向CC直接转发升级包。换言之,TBox发送的升级包未加密。
可选地,在一些实施例中,CC可以使用对称密钥KCC_DC对N个补丁中的每一个进行加密,并向对应的电子设备发送已加密的补丁。相应的电子设备可以使用对称密钥KCC_DC解密已加密的补丁,得到相应的补丁。
可选地,在一些实施例中,CC可以向相应的电子设备直接转发N个补丁。换言之,CC发送的补丁未加密。
在接收补丁之后,电子设备可以在目标车辆充电、停车等情况下安装补丁。
例如,升级包包括3个补丁。这3个补丁分别用于升级DC 310、ECU 311和ECU 331。在这种情况下,CC可以向DC 310发送用于升级DC 310和ECU 311的补丁,并可以向DC 330发送用于升级ECU 331的补丁。DC 310可以向ECU 311发送用于升级ECU 311的补丁。DC 330可以向ECU 311发送用于升级ECU 331的补丁。DC 310、ECU 311和ECU 331可以安装以接收的补丁。
上述所有实施例均假定N个补丁不包括用于TBox和/或CC的补丁。若N个补丁包括TBox的补丁,则TBox会向CC发送不包括TBox补丁的升级包。类似地,若CC接收到的升级包包括CC的补丁,则CC将用于升级DC和ECU的补丁发送至向相应的电子设备。
106,目标车辆向OTA服务器发送升级响应,其中升级响应用于指示N个补丁中的一个或多个补丁已被成功安装。
在补丁安装过程完成之后,电子设备可以向上层电子设备发送升级结果。该升级结果用于指示电子设备是否已成功安装接收的补丁。
ECU的上层电子设备是DC,DC的上层电子设备是CC,CC的上层电子设备是TBox。参见图3,ECU 311、ECU 312和ECU 313的上层电子设备是DC 310,ECU 321和ECU 322的上层电子设备是DC 320,DC 310、DC 320和DC 330的上层电子设备是CC 301,CC 301的上层电子设备是TBox 301。TBox可以收集所有升级结果并确定升级响应。在一些实施例中,升级响应可以指示已成功安装所接收补丁的电子设备和/或未能安装所接收补丁的电子设备。
可选地,在一些实施例中,由ECU、DC和/或CC发送的升级结果可以由发送器进行加密。例如,发送方可以通过使用对称密钥加密升级结果。在接收到已加密的升级结果之后,接收方可以使用对称密钥解密已加密的升级结果。
可选地,在一些实施例中,升级响应可以用于指示是否已成功安装N个补丁。
例如,在一些实施例中,若升级响应包括第一预设值(例如,0000),则OTA服务器可以确定N个电子设备中的每一个都已成功安装相应补丁;若升级响应包括第二预设值(例如1111),则OTA服务器可以确定N个电子设备中均未成功安装相应补丁。
在一些实施例中,若升级响应包括至少一个电子设备的身份信息(例如,DEV_ID),则OTA服务器可以确定至少一个电子设备已成功安装所接收的补丁,并且可以确定其他电子设备未能安装所接收的补丁。
例如,升级包括3个补丁,用于升级DC 1、E2和E8。若升级响应包括0x03和0x008(即DC 1和E8的DEV_ID),则OTA服务器可以确定DC 1和E8已成功安装所接收的补丁,而E2未能安装所接收的补丁。
在一些其他实施例中,若升级响应包括至少一个电子设备的身份信息,则OTA服务器可以确定至少一个电子设备未能安装所接收的补丁,并且可以确定其他电子设备已成功安装所接收的补丁。
例如,升级包括3个补丁,用于升级DC 1、E2和E8。若升级响应包括0x03和0x008(即DC 1和E8的DEV_ID),则OTA服务器可以确定DC 1和E8未能安装所接收的补丁,而E2已成功安装所接收的补丁。
107,OTA根据升级响应升级对应于目标车辆的VVT,得到已升级的VVT。
为便于描述,将在步骤107中需要升级的VVT称为VVT v1,将已升级的VVT称为VVTv2。在这种情况下,VVT用于确定升级包是VVT v1。
图4示出了GVT v2、VVT v1以及VVT v2。图2所示的TB、CC、DC(包括DC1至DC3)和E(包括E1至E9)分别表示远端接收盒、中央控制器、域控制器和ECU。
假定已升级的包包括用于升级DC1、E2和E8的补丁,并且所有这些电子设备均已成功安装相应的补丁。参见图4,VVT v1中的DC1的软件版本号是V4,GVT v2中的DC1的软件版本号是V6。在这种情况下,升级包中包括的对应于DC1的补丁用于将DC1从版本V4升级到版本V6。安装对应于DC1的补丁后,DC1的软件版本号升级为V6。因此,DC1的当前软件版本号是V6。根据升级响应,OTA服务器可以将DC1的软件版本号从V4更改为V6。因此,图4所示的VVTv2中的DC1的软件版本号是V6。
可选地,在一些实施例中,OTA服务器可以根据已升级的VVT(即,VVT v2)确定VVT信息,并向目标车辆发送VVT信息。VVT信息用于指示VVT v2中包括的多个第一软件信息。相应地,目标车辆接收VVT信息并存储VVT信息。
例如,VVT信息是一字符串,且在每层上具有按字典顺序排列的所有第一软件信息。以图4所示的VVT v2为例。根据图4所示的VVT v2确定的VVT信息M是{[MFR_AA,0x01:V4]||[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_DD,0x001:V2]||[MFR_EE,0x002:V2]||[MFR_FF,0x003:V4]||[MFR_GG,0x04:V3]||[MFR_HH,0x004:V3]||[MFR_II,0x005:V3]||[MFR_JJ,0x05:V5]||[MFR_KK,0x005:V5]||[MFR_LL,0x007:V2]||[MFR_MM,0x008:V6]||[MFR_N,0x009:V4]}。
可选地,在一些实施例中,可以使用可持久化线段树(Persistent Segment Tree,PST)显示VVT或GVT的新版本和旧版本。
以图4中的VVT v1和VVT v2为例。图5示出了对应于VVT v1以及VVT v2的PST。为便于描述,假定VVT v1中包括的软件版本是出厂时安装的软件的软件版本。换言之,目标车辆在接收到包括用于升级DC 1、E2和E8的3个升级包之前从未接收到升级包。
参见图5,PST包括树v1和树v2。树v1对应于图4所示的VVT v1。树v1中示出的TB表示VVT v1中TBox的第一软件信息,树v1中示出的CC表示VVT v1中CC的第一软件信息,依此类推。
图5所示的树v2对应于图5所示的VVT v2。树v2中示出的CC表示图4示出的VVT v1中CC的第一软件信息;树v2中示出的DC1表示图4示出的VVT v2中DC1的第一软件信息;树v2中示出的DC3表示图4示出的VVT v1中DC3的第一软件信息;树v2中示出的E2表示图4示出的VVT v2中E2的第一软件信息;树v2中示出的E8表示图4示出的VVT v2中E8的第一软件信息。
图5所示的树v2是已升级的VVT的另一实施例。已升级的VVT包括多个第一软件信息。多个第一软件信息与目标车辆中的多个电子设备一一对应。多个电子设备包括至少一个第一电子设备和至少一个第二电子设备。第一电子设备是目标车辆的电子设备,其已成功安装包括在步骤105中接收到升级包中的补丁。第二电子设备是第一电子设备的上层电子设备。例如,DC1、E2和E3是第一电子设备,CC和DC3是第二电子设备。
OTA服务器可以根据树v2确定VVT信息。在一些实施例中,VVT信息是具有树v2中包括的第一信息的字符串。在这种情况下,VVT信息M是{[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_EE,0x002:V2]||[MFR_JJ,0x05:V5]||[MFR_MM,0x008:V6]}。在其它一些实施例中,VVT信息是具有已升级的电子设备第一软件信息的字符串。在这种情况下,VVT信息M为{[MFR_CC,0x03:V6]||[MFR_EE,0x002:V2]||[MFR_MM,0x008:V6]}。
类似于VVT,已升级的GVT包括多个第二软件信息。多个第二软件信息与目标型号车辆中的多个电子设备一一对应。多个电子设备包括至少一个第三电子设备和至少一个第四电子设备。M个补丁包括用于第三电子设备的补丁。第四电子设备是第三电子设备的上层电子设备。在这种情况下,GVT v2中包括的软件信息数量与GVT v1中包括的软件信息数量不同。
可选地,在一些实施例中,OTA服务器可以存储VVT信息。VVT信息可以被存储在日志或表格中。
可选地,在一些实施例中,OTA服务器可以确定对应于VVT信息的时间戳并向目标车辆发送该时间戳。相应地,目标车辆接收时间戳并将该时间戳与相应的VVT信息一起存储。
在一些实施例中,时间戳可以结合在VVT信息中。例如,根据图4所示的VVT v2确定的VVT信息M为{[MFR_AA,0x01:V4]||[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_DD,0x001:V2]||[MFR_EE,0x002:V2]||[MFR_FF,0x003:V4]||[MFR_GG,0x04:V3]||[MFR_HH,0x004:V3]||[MFR_II,0x005:V3]||[MFR_JJ,0x05:V5]||[MFR_KK,0x005:V5]||[MFR_LL,0x007:V2]||[MFR_MM,0x008:V6]||[MFR_N,0x009:V4]||Tv},根据图5所示的树V2确定的VVT信息M是{[MFR_BB,0x02:V3]||[MFR_CC,0x03:V6]||[MFR_EE,0x002:V2]||[MFR_JJ,0x05:V5]||[MFR_MM,0x008:V6]||Tv},其中Tv是时间戳。换言之,时间戳是VVT信息的一部分。
在一些其他实施例中,时间戳独立于VVT信息。换言之,时间戳并不是VVT信息的一部分。
在一些实施例中,OTA服务器可以使用目标车辆的公钥加密VVT信息并向目标车辆发送已加密的VVT信息。目标车辆可以使用目标车辆的私钥解密已加密的VVT信息,得到VVT信息。类似地,若时间戳独立于VVT信息,则OTA服务器可以使用目标车辆的公钥加密时间戳并向目标车辆发送已加密的时间戳。目标车辆可以使用目标车辆的私钥解密已加密的时间戳,得到时间戳。
在一些实施例中,OTA服务器可以不向目标车辆发送时间戳。目标车辆可基于接收VVT信息的时间确定时间戳,并存储所确定的时间戳。
上述技术方案提供了一种用于控制车辆中电子设备软件版本的轻量的解决方案。OTA服务器存储车辆的当前软件信息(即,VVT)。同时,OTA服务器及车辆存储升级历史(即,VVT信息)。此外,在本技术方案的一些实施例中,通过使用接收方的公钥对在OTA服务器与车辆之间传输的信息进行加密。因此,该技术方案提供了一种用于维护车辆中电子设备软件的安全机制。
图6为根据本发明的用于接收来自于供应商的补丁的方法的实施例的流程图。
601,OTA服务器可以与供应商建立安全通道。
例如,OTA服务器可以基于安全技术或协议(例如,安全网络传输协议(TransportLayer Security,TLS)、安全套接层协议(Secure Sockets Layer,SSL)、安全超文本传输协议(Hypertext Transfer Protocol Secure,HTTPs)等)与供应商建立通道。由OTA服务器或供应商发送的消息可以在安全通道上进行传输。
602,供应商向OTA服务器发送用于升级车辆中电子设备的软件的补丁。
可选地,在一些实施例中,可以通过使用OTA服务器公钥保护供应商发送的补丁。例如,供应商可以使用OTA服务器的公钥加密补丁。OTA服务器可以使用OTA服务器的私钥对已加密的补丁进行解密,得到补丁。
可选地,在一些实施例中,除携带补丁外,该消息可以携带随机数。OTA服务器可以检查消息中携带的随机数,以验证消息是由供应商发送的。
可选地,在一些实施例中,供应商在向OTA服务器发送补丁之前,可以向OTA服务器发送通知信息。相应地,OTA服务器接收该通知信息。通知信息用于指示OTA服务器接收补丁。可选地,OTA服务器可以向供应商发送通知响应信息。通知响应信息用于指示OTA服务器已接收到通知信息,且OTA服务器已准备好接收补丁。在收到通知响应信息后,供应商向OTA服务器发送补丁。
可选地,在一些实施例中,携带通知信息的消息可以携带随机数。OTA服务器可以检查消息中携带的随机数,以验证消息是由供应商发送的。
可选地,在一些实施例中,携带通知响应信息的消息可以携带随机数。供应商可以检查消息中携带的随机数,以验证消息是由OTA服务器发送的。
可选地,在一些实施例中,可以通过使用OTA服务器公钥加密通知信息。OTA可以使用OTA服务器私钥解密已加密的通知信息。
可选地,在一些实施例中,可以通过使用供应商公钥加密通知响应信息。供应商可以供应商私钥来解密已加密的通知响应信息。
图7为根据本申请实施例的服务器700的示意性框图。如图7所示,服务器700包括:发送模块701、接收模块702以及确定模块703。
发送模块701用于向目标车辆发送升级包。
升级包包括N个补丁。N个补丁与目标车辆中的N个电子设备一一对应。N个补丁中的每个补丁用于升级对应电子设备的软件。N为大于或等于1的正整数。
接收模块702用于接收来自于目标车辆的升级响应。
升级响应用于指示N个补丁中的一个或多个补丁已被成功安装。
确定模块703用于根据升级响应,升级对应于目标车辆的VVT,得到已升级的VVT。
已升级的VVT包括多个第一软件信息。第一软件信息包括目标车辆中电子设备的身份信息以及目标车辆中电子设备的当前软件版本号。
可选地,确定模块703还用于根据已升级的VVT确定VVT信息,其中VVT信息用于指示已升级的VVT中的多个第一软件信息;确定模块703还用于向目标车辆发送VVT信息。
可选地,确定模块703还用于确定对应于VVT信息的时间戳;发送模块701还用于向目标车辆发送时间戳。
可选地,目标车辆中的电子设备的身份信息包括:第一身份信息、第二身份信息和第三身份信息,其中第一身份信息用于指示目标车辆中的电子设备的制造商的身份,第二身份信息用于指示目标车辆中的电子设备的类型的身份,以及第三身份信息用于指示目标车辆中的电子设备。
可选地,接收模块702还用于从M个供应商处接收M个补丁,其中M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;且确定模块703用于存储M个补丁;根据M补丁,升级对应于目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中已升级的GVT包括多个第二软件信息,第二软件信息包括目标型号的车辆中的电子设备的身份信息和目标型号的车辆中的电子设备的最新软件版本号,目标车辆的型号为目标型号;以及根据已升级的GVT确定升级包,其中M个补丁包括N个补丁。
可选地,确定模块703用于根据VVT和已升级的GVT确定N个电子设备,其中N个电子设备中的任一个电子设备在VVT中的软件版本号与N个电子设备中的任一个电子设备在已升级的GVT中的版本号不同;以及确定升级包,其中VVT和已升级的GVT中的N个电子设备的软件版本号不同。
可选地,确定模块703还用于确定M个补丁包括至少一个关键补丁,确定模块703具体用于确定升级包包括至少一个关键补丁。
可选地,目标型号的车辆中的电子设备的身份信息包括:第四身份信息,第五身份信息和第六身份信息,其中第四身份信息用于指示目标型号的车辆的电子设备的制造商的身份,第五身份信息用于指示目标型号的车辆的电子设备的类型的身份,第六身份信息用于指示目标型号的车辆的电子设备。
应理解,本申请实施例中的服务器700可对应于上述实施例中的OTA服务器,并且上述和其它管理操作和/或服务器700中模块的功能分别用于实现前述各个方法的相应步骤。为简洁,在此不再赘述。
本申请实施例中,发送模块701和接收模块702可由收发器实现,处理模块703可由处理器实现。
如图8所示,服务器800可以包括收发器801、处理器802和存储器803。存储器803可以用于存储处理器802执行的代码、指令等。
图9为根据本申请实施例的车辆900的示意性框图。如图9所示,车辆900包括:发送模块901、接收模块902以及确定模块903。
接收模块902用于接收来自于服务器的升级包。
该升级包包括N个补丁。N个补丁与N个电子设备一一对应。N为大于或等于1的正整数。
确定模块903用于向N个电子设备发送N个补丁。
确定模块903还用于接收N个升级反馈信息。
升级反馈息用于指示发送升级反馈信息的电子设备是否安装了对应于电子设备的补丁。
确定模块903还用于根据N个升级反馈信息确定升级响应。
发送模块901用于向服务器发送升级响应。
可选地,接收模块902还用于获取来自服务器的VVT信息,其中VVT信息用于指示至少一个第一软件信息,第一软件信息用于指示电子设备的身份信息以及电子设备当前软件版本号;确定模块903还用于存储VVT信息。
可选地,接收模块902还用于获取对应于VVT信息的时间戳;确定模块903还用于存储时间戳。
可选地,电子设备的身份信息包括:第一身份信息、第二身份信息和第三身份信息,其中第一身份信息用于指示电子设备的制造商的身份,第二身份信息用于指示电子设备的类型的身份,第三身份信息用于指示电子设备。
应理解,本申请实施例的车辆900可对应于上述实施例中的目标车辆,并且上述和其它管理操作和/或车辆900中模块的功能分别用于实现前述各个方法的相应步骤。为简洁,在此不再赘述。
本申请实施例中,发送模块901和接收模块902可由收发器实现,处理模块903可由处理器实现。
如图10所示,车辆1000可以包括收发器1001、处理器1002和存储器1003。存储器1003可以用于存储处理器1002执行的代码、指令等。
应理解,处理器802或处理器1002可以是集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本发明实施例中的存储器803或存储器1003可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchronous link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请实施例还提供了一种系统芯片,该系统芯片包括输入输出接口、至少一个处理器、至少一个存储器和总线,该至少一个存储器用于存储指令,该至少一个处理器用于调用该至少一个存储器的指令,以进行上述各个实施例的方法的操作。
图11示出了本申请实施例的系统1100。系统1100包括:图7所示实施例中的服务器700、图9所示实施例中的车辆900以及供应商服务器1101。
供应商服务器1101对应于上述实施例中的供应商,且供应商服务器1101的上述和其它管理操作和/或功能分别用于实现前述各个方法的相应步骤。为简洁,在此不再赘述。
本申请实施例还提供一种计算机存储介质,该计算机存储介质可以存储用于指示上述任一种方法的程序指令。
可选地,该存储介质具体可以为存储器803或1003。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束个件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述系统、装置和单元的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。此处均不在赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,单元划分仅仅是一种逻辑功能划分,在实际实现方式中可以是其他划分。例如,以上所描述的装置实施例仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。此外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以通过一些接口来实现。设备或单元之间的间接耦合或通信连接,可以是电性,机械或其它的形式实现。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的较佳实现方式而已,并非用于限定本申请的保护范围。本技术领域的技术人员在本申请公开的技术范围内,可轻易想到的变化或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (22)
1.一种用于管理车辆中电子设备软件版本的方法,其特征在于,包括:
服务器向目标车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与所述目标车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;
所述服务器接收来自于所述目标车辆的升级响应,所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;以及
所述服务器根据所述升级响应,升级对应于所述目标车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述目标车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号;
在向所述目标车辆发送所述升级包之前,所述方法还包括:
从M个供应商处接收M个补丁,其中所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;
存储所述M个补丁;
升级根据所述M个补丁,对应于所述目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中所述已升级的GVT包括多个第二软件信息,所述第二软件信息包括所述目标型号的车辆中的电子设备的身份信息和所述目标型号的车辆中的电子设备的最新软件版本号,所述目标车辆的型号为所述目标型号;以及
根据所述已升级的GVT确定所述升级包,其中所述M个补丁包括所述N个补丁,所述M个补丁包括至少一个关键补丁,所述升级包包括所述至少一个关键补丁。
2.如权利要求1所述的方法,其特征在于,还包括:
根据所述已升级的VVT确定VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;
向所述目标车辆发送所述VVT信息。
3.如权利要求2所述的方法,其特征在于,还包括:
确定对应于所述VVT信息的时间戳;以及
向所述目标车辆发送所述时间戳。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述目标车辆中的电子设备的身份信息包括:第一身份信息、第二身份信息和第三身份信息,其中所述第一身份信息用于指示所述目标车辆中的电子设备的制造商的身份,所述第二身份信息用于指示所述目标车辆中的电子设备的类型的身份,以及所述第三身份信息用于指示所述目标车辆中的电子设备。
5.如权利要求1所述的方法,其特征在于,所述根据所述已升级的GVT确定所述升级包,包括:
根据所述VVT和所述已升级的GVT确定所述N个电子设备,其中所述N个电子设备中的任一个电子设备在所述VVT中的软件版本号不同于所述N个电子设备中的所述任一个电子设备在所述已升级的GVT中的版本号;以及
确定所述升级包,其中,所述VVT和所述已升级的GVT中的所述N个电子设备的软件版本号不同。
6.如权利要求5所述的方法,其特征在于,所述目标型号的车辆中的电子设备的身份信息包括:第四身份信息,第五身份信息和第六身份信息,其中所述第四身份信息用于指示所述目标型号的车辆的电子设备的制造商的身份,所述第五身份信息用于指示所述目标型号的车辆的电子设备的类型的身份,所述第六身份信息用于指示所述目标型号的车辆的电子设备。
7.一种用于管理车辆中电子设备软件版本的服务器,其特征在于,包括:
发送模块,用于向目标车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与所述目标车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;
接收模块,用于接收来自于所述目标车辆的升级响应,其中所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;以及
确定模块,用于根据所述升级响应,升级对应于所述目标车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述目标车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号;
所述接收模块还用于从M个供应商处接收M个补丁,其中所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;以及
所述确定模块还用于:
存储所述M个补丁;
升级根据所述M个补丁,对应于所述目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中所述已升级的GVT包括多个第二软件信息,所述第二软件信息包括所述目标型号的车辆中的电子设备的身份信息和所述目标型号的车辆中的电子设备的最新软件版本号,所述目标车辆的型号为所述目标型号;以及
根据所述已升级的GVT确定所述升级包,其中所述M个补丁包括所述N个补丁,所述M个补丁包括至少一个关键补丁,所述升级包包括所述至少一个关键补丁。
8.如权利要求7所述的服务器,其特征在于,所述确定模块还用于根据所述已升级的VVT确定VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;以及
所述发送模块还用于向所述目标车辆发送所述VVT信息。
9.如权利要求8所述的服务器,其特征在于,所述确定模块还用于确定对应于所述VVT信息的时间戳;以及
所述发送模块还用于向所述目标车辆发送所述时间戳。
10.如权利要求7至9中任一项所述的服务器,其特征在于,所述目标车辆中的电子设备的身份信息包括:第一身份信息、第二身份信息和第三身份信息,其中所述第一身份信息用于指示所述目标车辆中的电子设备的制造商的身份,所述第二身份信息用于指示所述目标车辆中的电子设备的类型的身份,以及所述第三身份信息用于指示所述目标车辆中的电子设备。
11.如权利要求7所述的服务器,其特征在于,所述确定模块用于:
根据所述VVT和所述已升级的GVT确定所述N个电子设备,其中所述N个电子设备中的任一个电子设备在所述VVT中的软件版本号不同于所述N个电子设备中的所述任一个电子设备在所述已升级的GVT中的版本号;以及
确定所述升级包,其中,所述VVT和所述已升级的GVT中的所述N个电子设备的软件版本号不同。
12.如权利要求11所述的服务器,其特征在于,所述目标型号的车辆中的电子设备的身份信息包括:第四身份信息,第五身份信息和第六身份信息,其中所述第四身份信息用于指示所述目标型号的车辆的电子设备的制造商的身份,所述第五身份信息用于指示所述目标型号的车辆的电子设备的类型的身份,所述第六身份信息用于指示所述目标型号的车辆的电子设备。
13.一种用于管理车辆中电子设备软件版本的系统,其特征在于,包括服务器和车辆,
所述服务器用于向所述车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与目标车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;
所述车辆用于接收来自于所述服务器的升级包,并向所述服务器发送升级响应,所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;
所述服务器,用于接收来自于所述车辆的升级响应,并根据所述升级响应,升级对应于所述车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号;
所述服务器还用于:从M个供应商处接收M个补丁,其中所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;
存储所述M个补丁;
升级根据所述M个补丁,对应于所述目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中所述已升级的GVT包括多个第二软件信息,所述第二软件信息包括所述目标型号的车辆中的电子设备的身份信息和所述目标型号的车辆中的电子设备的最新软件版本号,以及
根据所述已升级的GVT确定所述升级包,其中所述M个补丁包括所述N个补丁,所述M个补丁包括至少一个关键补丁,所述升级包包括所述至少一个关键补丁。
14.如权利要求13所述的系统,其特征在于,所述服务器还用于根据所述已升级的VVT确定VVT信息,并向所述车辆发送所述VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;以及
所述车辆还用于获取来自于所述服务器的所述VVT信息,并存储所述VVT信息。
15.如权利要求14所述的系统,其特征在于,所述服务器还用于确定对应于所述VVT信息的时间戳,并向所述车辆发送所述时间戳;以及
所述车辆还用于获取并存储所述时间戳。
16.如权利要求13至15中任一项所述的系统,其特征在于,所述车辆中的电子设备的身份信息包括:第一身份信息,第二身份信息和第三身份信息,其中所述第一身份信息用于指示所述车辆中的电子设备的制造商的身份,所述第二身份信息用于指示所述车辆中的电子设备的类型的身份,以及所述第三身份信息用于指示所述车辆中的电子设备。
17.如权利要求13所述的系统,其特征在于,所述服务器还用于:
根据所述VVT和所述已升级的GVT确定所述N个电子设备,其中所述N个电子设备中的任一个电子设备在所述VVT中的软件版本号不同于所述N个电子设备中的所述任一个电子设备在所述已升级的GVT中的版本号;以及
确定所述升级包,其中,所述VVT和所述已升级的GVT中的所述N个电子设备的软件版本号不同。
18.如所述权利要求17所述的系统,其特征在于,所述目标型号的车辆中的电子设备的身份信息包括:第四身份信息,第五身份信息和第六身份信息,其中所述第四身份信息用于指示所述目标型号的车辆的电子设备的制造商的身份,所述第五身份信息用于指示所述目标型号的车辆的电子设备的类型的身份,所述第六身份信息用于指示所述目标型号的车辆的电子设备。
19.一种用于管理车辆中电子设备软件版本的方法,其特征在于,包括:
服务器向车辆发送升级包,其中所述升级包包括N个补丁,所述N个补丁与所述车辆中的N个电子设备一一对应,所述N个补丁中的每个补丁用于升级对应的电子设备的软件,N为大于或等于1的正整数;
所述车辆接收来自于所述服务器的升级包,并向所述服务器发送升级响应,所述升级响应用于指示所述N个补丁中的一个或多个补丁已被成功安装;
所述服务器接收来自于所述车辆的升级响应,并根据所述升级响应,升级对应于所述车辆的车辆版本树VVT,得到已升级的VVT,其中所述已升级的VVT包括多个第一软件信息,所述第一软件信息包括所述车辆中的电子设备的身份信息和所述车辆中的电子设备的当前软件版本号;
在所述服务器向所述车辆发送所述升级包之前,所述方法还包括:
所述服务器从M个供应商处接收M个补丁,其中所述M个补丁与目标型号的车辆中的M个电子设备一一对应,M是大于或等于1的正整数;
所述服务器存储所述M个补丁;
所述服务器升级根据所述M个补丁,对应于所述目标型号的车辆的全局版本树GVT,得到已升级的GVT,其中所述已升级的GVT包括多个第二软件信息,所述第二软件信息包括所述目标型号的车辆中的电子设备的身份信息和所述目标型号的车辆中的电子设备的最新软件版本号,所述车辆的型号为所述目标型号;以及
所述服务器根据所述已升级的GVT确定所述升级包,其中所述M个补丁包括所述N个补丁,所述M个补丁包括至少一个关键补丁,所述升级包包括所述至少一个关键补丁。
20.如权利要求19所述的方法,还包括:
所述服务器根据所述已升级的VVT确定VVT信息,并向所述车辆发送所述VVT信息,其中所述VVT信息用于指示所述已升级的VVT中的所述多个第一软件信息;以及
所述车辆获取来自于所述服务器的VVT信息,并存储所述VVT信息。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在服务器上运行时,使得所述服务器执行根据权利要求1至6中任一项所述的方法。
22.一种服务器,包括存储器和处理器,其特征在于,所述存储器用于存储计算机程序,所述处理器用于从所述存储器中调用所述计算机程序并运行所述计算机程序,使得所述服务器执行根据权利要求1至6中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/130807 WO2021134612A1 (en) | 2019-12-31 | 2019-12-31 | Method for managing software versions of electronic device (s) in a vehicle and related device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112740172A CN112740172A (zh) | 2021-04-30 |
CN112740172B true CN112740172B (zh) | 2022-05-17 |
Family
ID=75589257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980059871.1A Active CN112740172B (zh) | 2019-12-31 | 2019-12-31 | 管理车辆中电子设备软件版本的方法及相关设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US12079618B2 (zh) |
EP (1) | EP4073629A4 (zh) |
CN (1) | CN112740172B (zh) |
WO (1) | WO2021134612A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461240B (zh) * | 2021-06-30 | 2023-04-14 | 荣耀终端有限公司 | 软件升级方法、软件升级系统及电子设备 |
CN115291962A (zh) * | 2021-12-13 | 2022-11-04 | 上海仙途智能科技有限公司 | 一种自动驾驶系统的配置数据管理方法及装置 |
JP2023132285A (ja) * | 2022-03-10 | 2023-09-22 | トヨタ自動車株式会社 | 通信制御システム、通信制御方法及び通信制御プログラム |
CN116456301B (zh) * | 2023-03-30 | 2024-09-03 | 重庆赛力斯凤凰智创科技有限公司 | 一种程序刷写方法、装置、设备及存储介质 |
CN118474684A (zh) * | 2024-04-23 | 2024-08-09 | 重庆赛力斯凤凰智创科技有限公司 | 车辆功能配置方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109375936A (zh) * | 2018-10-23 | 2019-02-22 | 奇瑞新能源汽车技术有限公司 | 一种实现新能源电动汽车ecu软件ota功能的系统及方法 |
CN110262826A (zh) * | 2019-03-05 | 2019-09-20 | 上海博泰悦臻网络技术服务有限公司 | 车载软件配置升级管理方法、服务端、客户端及处理端 |
CN110381138A (zh) * | 2019-07-19 | 2019-10-25 | 上海擎感智能科技有限公司 | 基于ota云端的升级管理方法及系统、存储介质及ota云端 |
CN110377306A (zh) * | 2019-07-18 | 2019-10-25 | 上海擎感智能科技有限公司 | 用于车载设备升级包的管理方法及装置、介质、服务器 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999034557A1 (en) | 1997-12-24 | 1999-07-08 | Qualcomm Incorporated | Method and system for software version management in a network management system |
US8209678B2 (en) * | 2007-09-17 | 2012-06-26 | Sony Corporation | System, apparatus, and method for an upgrader module |
US9464905B2 (en) | 2010-06-25 | 2016-10-11 | Toyota Motor Engineering & Manufacturing North America, Inc. | Over-the-air vehicle systems updating and associate security protocols |
US8813061B2 (en) * | 2012-10-17 | 2014-08-19 | Movimento Group | Module updating device |
US20140282470A1 (en) * | 2013-03-13 | 2014-09-18 | Arynga Inc. | Remote transfer of electronic images to a vehicle |
US9766874B2 (en) | 2014-01-09 | 2017-09-19 | Ford Global Technologies, Llc | Autonomous global software update |
KR101575447B1 (ko) * | 2014-02-06 | 2015-12-07 | 현대자동차주식회사 | 차량의 소프트웨어 업데이트 방법 |
US9323546B2 (en) * | 2014-03-31 | 2016-04-26 | Ford Global Technologies, Llc | Targeted vehicle remote feature updates |
US20160196131A1 (en) | 2014-07-07 | 2016-07-07 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
JP6345157B2 (ja) * | 2015-06-29 | 2018-06-20 | クラリオン株式会社 | 車載情報通信システム及び認証方法 |
US9916151B2 (en) * | 2015-08-25 | 2018-03-13 | Ford Global Technologies, Llc | Multiple-stage secure vehicle software updating |
EP3416052B1 (en) * | 2016-02-11 | 2020-11-25 | Hyundai Motor Company | Method and device for wirelessly updating software for vehicle |
JP6754622B2 (ja) * | 2016-06-13 | 2020-09-16 | クラリオン株式会社 | ソフトウェア更新装置およびソフトウェア更新システム |
CN105978921A (zh) * | 2016-07-29 | 2016-09-28 | 重庆长安汽车股份有限公司 | 一种车载通信终端远程升级方法 |
JP6888845B2 (ja) * | 2017-07-04 | 2021-06-16 | 日本電気通信システム株式会社 | ソフトウェア更新装置 |
JP2019036238A (ja) * | 2017-08-21 | 2019-03-07 | 株式会社東芝 | 更新制御装置、端末、更新制御方法およびプログラム |
CN107656749A (zh) * | 2017-09-26 | 2018-02-02 | 国网江苏省电力公司 | 一种设备版本管控方法及装置 |
US10642602B2 (en) * | 2017-12-12 | 2020-05-05 | Nxp Usa, Inc. | NVM architecture with OTA support |
US20190394046A1 (en) * | 2018-06-22 | 2019-12-26 | Sf Motors, Inc. | Secure firmware updates for remote vehicles |
CN110032382A (zh) * | 2019-03-25 | 2019-07-19 | 深圳猛犸电动科技有限公司 | 一种汽车电子控制单元升级方法、系统及终端设备 |
CN110377308A (zh) * | 2019-07-18 | 2019-10-25 | 上海擎感智能科技有限公司 | 数据升级方法、系统 |
CN110392103B (zh) * | 2019-07-18 | 2023-12-19 | 上海擎感智能科技有限公司 | 用于车载设备的升级包的上传方法、装置、服务器 |
US11681518B2 (en) * | 2021-09-29 | 2023-06-20 | Geotab Inc. | Systems and methods for safe over-the-air update of electronic control units in vehicles |
-
2019
- 2019-12-31 CN CN201980059871.1A patent/CN112740172B/zh active Active
- 2019-12-31 EP EP19958728.8A patent/EP4073629A4/en active Pending
- 2019-12-31 WO PCT/CN2019/130807 patent/WO2021134612A1/en unknown
-
2022
- 2022-06-30 US US17/854,441 patent/US12079618B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109375936A (zh) * | 2018-10-23 | 2019-02-22 | 奇瑞新能源汽车技术有限公司 | 一种实现新能源电动汽车ecu软件ota功能的系统及方法 |
CN110262826A (zh) * | 2019-03-05 | 2019-09-20 | 上海博泰悦臻网络技术服务有限公司 | 车载软件配置升级管理方法、服务端、客户端及处理端 |
CN110377306A (zh) * | 2019-07-18 | 2019-10-25 | 上海擎感智能科技有限公司 | 用于车载设备升级包的管理方法及装置、介质、服务器 |
CN110381138A (zh) * | 2019-07-19 | 2019-10-25 | 上海擎感智能科技有限公司 | 基于ota云端的升级管理方法及系统、存储介质及ota云端 |
Non-Patent Citations (2)
Title |
---|
施庆国等.智能网联汽车的OTA升级方案.《2018中国汽车工程学会年会》.2018,49-55. * |
智能网联汽车的OTA升级方案;施庆国等;《2018中国汽车工程学会年会》;20181106;第16-22页 * |
Also Published As
Publication number | Publication date |
---|---|
US20220334824A1 (en) | 2022-10-20 |
EP4073629A4 (en) | 2023-01-04 |
US12079618B2 (en) | 2024-09-03 |
WO2021134612A1 (en) | 2021-07-08 |
EP4073629A1 (en) | 2022-10-19 |
CN112740172A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112740172B (zh) | 管理车辆中电子设备软件版本的方法及相关设备 | |
JP5949732B2 (ja) | プログラム更新システム及びプログラム更新方法 | |
US20200264864A1 (en) | Vehicle-mounted device upgrade method and related device | |
US20190057214A1 (en) | Update control device, terminal, and method of controlling | |
CN109561118B (zh) | 软件升级方法、装置、系统、存储介质、电子设备及车辆 | |
CN109804597B (zh) | 车载网关、密钥管理装置 | |
US12050692B2 (en) | Secure and flexible boot firmware update for devices with a primary platform | |
CN112799706A (zh) | 车辆升级包处理方法和装置 | |
US11630659B2 (en) | In-vehicle update device, update processing program, and program update method | |
EP3114806B1 (en) | Network node, device and methods for providing an authentication module | |
WO2019116922A1 (ja) | 車載更新装置、プログラム及びプログラム又はデータの更新方法 | |
CH715441A1 (de) | Verfahren und Vorrichtungen zum Kommunizieren zwischen einer Internet-der-Dinge-Vorrichtung und einem Ferncomputersystem. | |
CN106982445A (zh) | 一种升级异常信息的传输方法、设备和系统 | |
KR102698319B1 (ko) | 운송체의 하나 이상의 소프트웨어 컴포넌트들을 업데이트하는 장치들, 방법들, 및 컴퓨터 프로그램들 | |
CN112740210B (zh) | 验证车辆中电子设备软件安全性的方法及相关设备 | |
US20220342652A1 (en) | Ota master, method, and non-transitory storage medium | |
US20190222325A1 (en) | Method and apparatus for remotely updating satellite devices | |
US20230032689A1 (en) | Apparatuses, Methods, and Computer Programs for Determining a Status of a Vehicle and for Determining a Software Update of a Vehicle | |
WO2023276531A1 (ja) | 車載通信システム,リプロポリシーメタデータのデータ構造及びダウンロードメタデータのデータ構造 | |
CN117597683A (zh) | 中心装置、车辆侧系统、内容的保护方法以及内容保护用程序 | |
US11886865B2 (en) | Enhanced data provision in a digital network | |
CN106897054A (zh) | 利用差分更新数据协调地更新简单模块的方法和控制设备 | |
CN117561500A (zh) | 车载通信系统、中心装置、车辆侧系统以及车载通信的更新数据验证方法 | |
CN117675575A (zh) | 车辆远程升级数据包的处理方法及电子设备 | |
CN116627456A (zh) | 固件升级系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |