CN108241578B - 汽车电控单元软件兼容性检查方法及装置 - Google Patents
汽车电控单元软件兼容性检查方法及装置 Download PDFInfo
- Publication number
- CN108241578B CN108241578B CN201611226469.2A CN201611226469A CN108241578B CN 108241578 B CN108241578 B CN 108241578B CN 201611226469 A CN201611226469 A CN 201611226469A CN 108241578 B CN108241578 B CN 108241578B
- Authority
- CN
- China
- Prior art keywords
- block
- check value
- software
- updated
- stored
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种汽车电控单元软件兼容性检查方法及装置,所述方法包括:在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中:2≤i≤N‑1,N为整数;所述第一校验值和所述第二校验值均由对所述第i个区块中的数据进行校验后生成;比较所述第一校验值与所述第二校验值;当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。上述方案能够检查完成更新的软件的各区块是否兼容。
Description
技术领域
本发明涉及汽车电控软件领域,尤其涉及一种汽车电控单元软件兼容性检查方法及装置。
背景技术
电控单元是汽车电控系统的核心,随着汽车电子自动化程度的提高,电控单元的应用越来越广泛。汽车电子自动化程度越高,电控单元的数目也越多。
现有技术中,电控单元中下载的软件可以根据软件数据结构以及MCU架构的特性,被划分成多个不同的区块进行存储,每一个区块可以被独立更新。通常情况下,划分的区块包括引导加载程序、应用软件、应用数据等区块。对于多核处理器,应用软件还可能按照核来进行区块划分。
由于每一个区块都可以被独立更新,在更新过程中,可能会出现写入至某一个区块的数据与其他区块的数据并不兼容的情况。
发明内容
本发明解决的技术问题是如何检查更新完成的软件各区块是否兼容。
为解决上述技术问题,本发明实施例提供一种汽车电控单元软件兼容性检查方法,完成更新的汽车电控单元软件的数据被划分为N个连续的区块,且第1个区块中存储有第1个区块对应的校验值以及预设校验值,其他区块中分别存储有各区块自身对应的校验值以及相邻的前一个区块对应的校验值;所述检查方法包括:在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中:2≤i≤N-1,N为整数;所述第一校验值和所述第二校验值均由对所述第i个区块中的数据进行校验后生成;比较所述第一校验值与所述第二校验值;当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
可选的,在判定所述完成更新的软件不兼容之后,还包括:当接收到与所述完成更新的软件对应的启动指令时,禁止启动所述完成更新的软件。
可选的,在判定所述完成更新的软件不兼容之后,还包括:向预设的告警装置发送告警指令,以告知用户所述完成更新的软件的第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
可选的,所述读取第i个区块存储的与所述第i个区块对应的第一校验值,包括:从第i个区块的地址存储单元中,读取存储所述第一校验值的地址;根据读取到的所述第一校验值的地址进行寻址,以读取所述第一校验值。
可选的,所述读取第i+1个区块存储的与所述第i个区块对应的第二校验值,包括:从第i+1个区块的地址存储单元中,读取存储所述第二校验值的地址;根据读取到的所述第二校验值的地址进行寻址,以读取所述第二校验值。
本发明实施例提供了一种汽车电控单元软件兼容性检查装置,完成更新的汽车电控单元软件的数据被划分为N个连续的区块,且第1个区块中存储有第1个区块对应的校验值以及预设校验值,其他区块中分别存储有各区块自身对应的校验值以及相邻的前一个区块对应的校验值;所述检查装置包括:读取单元,用于在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中,2≤i≤N-1,N为整数,且所述第一校验值与所述第二校验值均由对所述第i个区块中的数据进行校验后生成;比较单元,用于对所述第一校验值与所述第二校验值进行比较;判定单元,用于当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
可选的,所述汽车电控单元软件兼容性检查装置还包括:控制单元,用于在所述判定单元判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容之后,当接收到与所述完成更新的软件对应的启动指令时,禁止启动所述完成更新的软件。
可选的,所述汽车电控单元软件兼容性检查装置还包括:告警单元,用于发出提醒指令,以告知用户所述完成更新的软件的第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
可选的,所述读取单元,用于从第i个区块的地址存储单元中,读取存储所述第一校验值的地址;根据读取到的所述第一校验值的地址进行寻址,以读取所述第一校验值。
可选的,所述读取单元,用于从第i+1个区块的地址存储单元中,读取存储所述第二校验值的地址;根据读取到的所述第二校验值的地址进行寻址,以读取所述第二校验值。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
在软件完成更新后,将读取到的第i个区块存储的第一校验值与第i+1个区块中存储的第二校验值进行比较。由于第一校验值与第二校验值都是根据第i个区块中的数据进行校验后生成的,若第一校验值与第二校验值不同,则可以判定第i个区块与第i+1个区块不兼容,从而可以获知更新完成的软件各区块是否兼容。
进一步,当更新完成的软件的各区块中,存在相邻区块不兼容的情况时,若接收到执行完成更新的软件的启动指令时,禁止启动完成更新的软件,从而可以避免因完成更新的软件中各区块存在不兼容的情况而导致软件无法正常运行的情况发生,进而可以避免完成更新软件无法正常工作而导致的安全事故的发生。
此外,当更新完成的软件的各区块中,存在相邻区块不兼容的情况时,向预设的告警装置发送告警指令,以告知用户当前完成更新的软件的各区块中存在不兼容的情况,从而可以提醒用户对更新完成的软件进行检查,避免完成更新软件无法正常工作而导致的安全事故的发生。
附图说明
图1是本发明实施例中的一种汽车电控单元软件兼容性检查方法的流程图;
图2是本发明实施例中的一种区块的结构示意图;
图3是本发明实施例中的N个区块兼容性的检查原理图;
图4是本发明实施例中的一种汽车电控单元软件兼容性检查装置的结构示意图。
具体实施方式
现有技术中,电控单元中下载的软件可以根据软件数据结构以及MCU架构的特性,被划分成多个不同的区块进行存储。通常情况下,划分的区块包括引导加载程序、应用软件、应用数据等区块。对于多核处理器,应用软件还可能按照核来进行区块划分。
在对软件更新时,由于每一个区块都可以被独立更新,因此所有的区块并不一定一次性全部更新。同一个版本的软件的不同区块可能被拆分,并在不同场合下分别更新。例如,电控单元及其控制部件的生产过程中需要多个生产商协作生产,生产商1只负责刷新区块1,生产商2只负责刷新区块2,此时,需要各生产商刷入区块的数据来源自同一个版本的软件。若在刷新过程中,其中的一个生产商选错了数据文件,则会导致区块之间的数据不兼容的情况出现。若在更新完成后未对各区块之间的兼容性进行检查,则完成更新的软件可能无法正常运行,甚至会造成电控单元损坏等情况。
在本发明实施例中,在软件完成更新后,将读取到的第i个区块存储的第一校验值与第i+1个区块中存储的第二校验值进行比较。由于第一校验值与第二校验值都是根据第i个区块中的数据进行校验后生成的,若第一校验值与第二校验值不同,则可以判定第i个区块与第i+1个区块不兼容,从而可以获知更新完成的软件各区块是否兼容。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
本发明实施例提供了一种汽车电控单元软件兼容性检查方法,参照图1,以下通过具体步骤进行详细说明。
步骤S101,在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值。
在实际应用中,当汽车电控单元中下载的某一款应用软件存在更新版本时,用户可以对汽车电控单元中的应用软件进行更新。
在具体实施中,电控单元在对应用软件进行更新时,并不是采用更新版本的应用软件直接对汽车电控单元中的应用软件进行更新,而是先对更新版本的应用软件进行处理。
当某一款应用软件存在更新版本时,可以先将更新版本的软件的原始数据在逻辑上进行划分,将更新版本的软件的原始数据划分成N个连续的区块。例如,在逻辑上将更新版本的软件的原始数据划分为引导加载程序区块、应用软件数据区块、标定数据区块、网络配置数据区块等四个区块。需要说明的是,更新版本的软件的原始数据为更新版本的软件的原始二进制文件,也即更新版本的软件的最初始的数据。
在将更新版本的软件的原始数据划分成N个区块之后,针对每一个区块,可以在区块对应的存储区域中,分别设置校验值存储单元以及地址存储单元,其中:地址存储单元适于存储校验值存储单元的地址数据,校验值存储单元适于存储区块自身对应的校验值以及相邻的前一个区块对应的校验值。
也就是说,针对于每一个区块,其对应的存储单元中,除了更新版本的软件的原始数据之外,还包括校验值以及校验值对应的地址数据。
例如,在第2个区块中,存储有第2个区块对应的校验值,以及第1个区块对应的校验值。
针对第1个区块,由于不存在与第1个区块相邻的前一个区块,因此,第1个区块中存储有自身对应的校验值,以及一个默认校验值。默认校验值可以根据需求进行设定,例如,设定默认校验值为全0数据。
在本发明实施例中,为便于查找每一个区块各自对应的校验值以及相邻的上一个区块对应的校验值,可以将地址存储单元设置在每一个区块的起始地址空间中,将校验值存储单元设置在每一个区块的尾部地址空间中。
可以理解的是,也可以将每一个区块各自对应的校验值以及相邻的上一个区块对应的校验值设置在区块的其他存储地址中。
在具体实施中,每一个区块自身对应的校验值可以为:对本区块中,除了自身对应的校验值的存储单元中的数据外,其余所有的数据进行校验运算得到的校验值。也就是说,每一个区块自身对应的校验值为:对本区块中的软件的原始数据、存储校验值存储单元的地址数据以及相邻的前一个区块对应的校验值等进行校验运算生成。
在本发明实施例中,在生成每一个区块自身对应的校验值时,所采用的校验算法可以为循环冗余校验(Cyclic Redundancy Check,CRC)算法。针对不同的数据,采用CRC算法运算之后得到的结果不同。可以理解的是,在本发明其他实施例中,也可以采用其他的校验算法来计算每一个区块自身对应的校验值,所采用的校验算法只需满足如下条件即可:针对不同的数据,得到的校验结果不同。
在具体实施中,在完成对更新版本的应用软件进行处理后,可以对电控单元中的相应的旧版本的应用软件进行更新,将其更新为更新版本的应用软件。
例如,电控单元中下载有发动机控制应用软件1.0版本,现已经推出发动机控制应用软件2.0版本,则用户可以将电控单元中下载的发动机控制应用软件1.0刷新为发动机控制应用软件2.0。在将发动机控制应用软件1.0刷新为发动机控制应用软件2.0时,用户可以根据电控单元的芯片结构和软件功能将发动机控制应用软件2.0划分为4个连续的区块。针对每一个区块,分别计算各自对应的校验值,并将自身对应的校验值以及相邻的前一个区块对应的校验值存储。在完成上述运算操作后,将发动机控制应用软件1.0更新为发动机控制应用软件2.0。
在具体实施中,在电控单元完成对软件的更新后,电控单元可以读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值。2≤i≤N-1,且N为整数。
在本发明实施例中,第i个区块中存储的第一校验值为第i个区块自身对应的校验值,第i+1个区块中存储的第二校验值为第i个区块对应的校验值,也即第i+1个区块中存储的相邻的前一个区块对应的校验值。
电控单元在读取第一校验值时,可以先读取第i个区块中的地址存储单元,从而读取到第i个区块中的第一校验值的地址,也即第i个区块中的校验值存储单元中的第一校验值的地址。根据读取到的第i个区块中的第一校验值的地址进行寻址,从而查找到第i个区块中的校验值存储单元,进而读取到第一校验值。
相应地,电控单元在读取第二校验值时,也可以先读取第i+2个区块中的地址存储单元,从而读取到第i+1个区块中的第二校验值的地址,也即第i+1个区块中的校验值存储单元中的第二校验值的地址。根据读取到的第i+1个区块中的第二校验值的地址进行寻址,从而查找到第i+1个区块中的校验值存储单元,进而可以读取到第二校验值。
参照图2,给出了本发明实施例中的一种区块的结构示意图。
从图2中可以得知,区块20包括:地址存储单元201及校验值存储单元202,除去地址存储单元201、校验值存储单元202之外的部分适于存储软件的原始数据。地址存储单元201设置在区块20的起始地址空间,校验值存储单元202设置在区块20的尾部地址空间。
地址存储单元201中,存储有校验值存储单元202的地址数据。校验值存储单元202包括第一存储子单元2021以及第二存储子单元2022,其中:第一存储子单元2021适于存储与区块20相邻的上一个区块的校验值,第二存储子单元2022适于存储区块20自身对应的校验值。
电控单元通过读取区块20中的地址存储单元201,即可获知校验值存储单元202的地址数据。根据校验值存储单元201的地址数据,从而可以读取第一存储子单元2021中的校验值以及第二存储子单元2022中的校验值。
电控单元在读取到第一校验值以及第二校验值之后,可以执行步骤S102。
步骤S102,比较所述第一校验值与所述第二校验值。
在具体实施中,电控单元在读取到第一校验值与第二校验值之后,可以对读取到的第一校验值与第二校验值进行比较。
步骤S103,当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
在具体实施中,当从第i个区块中读取到的第一校验值与从第i+1个区块中读取到的第二校验值不同时,则可以判定第i个区块存储的数据与第i+2个区块存储的数据不兼容。
下面对本发明上述实施例中提供的汽车电控单元软件兼容性检查方法的原理进行说明。
在实际应用中可知,针对于某一个应用软件而言,当其存在不同的版本时,不同版本的同一应用软件的原始数据通常不会完全相同。因此,针对于同一个应用软件的不同版本而言,当按照相同的规则均划分成N个区块时,不同版本的应用软件对应的相同区块中的数据可能不同,相应地,不同版本的应用软件对应的相同区块中的校验值也可能不同。
例如,电控单元中,对于导航应用软件的数据,可以将其划分为4个区块,依次为区块1、区块2、区块3以及区块4。当电控单元中下载的为导航应用软件1.0版本时4个区块中的数据,与电控单元中下载的为导航应用软件2.0版本时4个区块中的数据不完全相同。
电控单元在将导航应用软件1.0更新为导航应用软件2.0时,可能区块2中的数据没有完成更新,也即区块1、区块3和区块4均已经更新为导航应用软件2.0对应的数据,但是区块2中的数据却没有正常更新为导航应用软件2.0的数据,而是仍为导航应用软件1.0的数据。因此,区块2中存储的区块1的校验值与区块1中存储的区块1的自身的校验值不同。此时,可以判定区块2与区块1不兼容,也即区块1中的数据与区块2中的数据来自不同的版本。
由此可见,在软件完成更新后,将读取到的第i个区块存储的第一校验值与第i+1个区块中存储的第二校验值进行比较。由于第一校验值与第二校验值都是根据第i个区块中的数据进行校验后生成的,若第一校验值与第二校验值不同,则可以判定第i个区块与第i+1个区块不兼容,从而可以获知更新完成的软件各区块是否兼容。
在具体实施中,当第一校验值与第二校验值相同时,则可以判定第i个区块存储的数据与第i+1个区块存储的数据兼容。当N个区块中所有相邻的区块存储的数据均兼容时,则可以判定更新后的软件可以正常运行。
当更新后的软件中,存在两个区块之间不兼容的情况时,更新后的软件可能无法正常工作。此时,若启动更新后的软件,可能会存在软件崩溃的情况出现,甚至会导致安全事故的发生。
在本发明实施例中,为避免用户在不知道两个区块之间不兼容的情况下启动软件而导致安全软件无法正常运行的情况发生,电控单元在获取到更新的软件的相邻区块不兼容的情况时,禁止启动完成更新的软件。通过禁止启动完成更新的软件,可以避免因更新的软件中各区块存在不兼容的情况而导致软件无法正常运行的情况发生,进而可以避免软件无法正常工作而导致的安全事故的发生。
例如,发动机控制应用软件2.0更新完成后,电控单元检查到区块1与区块2不兼容,则禁止发动机控制应用软件2.0启动。
在本发明实施例中,在检查到更新完成的软件的各区块中,存在相邻区块不兼容的情况时,可以生成区块不兼容的检查结果并自动保存。当接收到用户主动查询软件刷新结果的指令时,即可将区块不兼容的检查结果显示,以告知用户当前完成刷新的软件存在不兼容的情况。
在本发明实施例中,当检查结果为区块不兼容时,还可以向预设的告警装置发送告警指令,以告知用户当前完成更新的软件存在区块不兼容的情况。用户在获知当前完成更新的软件存在区块不兼容的情况时,可以对完成更新的软件进行检查,从而可以避免完成更新的软件无法正常工作而导致的安全事故的发生。
告警装置可以为故障指示灯,也可以为蜂鸣器,还可以为显示屏幕等其他类型的告警装置。
例如,电控单元在检查到完成更新的软件的各区块中,存在区块2与区块1不兼容的情况,则可以向故障指示灯发送告警指令。故障指示灯在接收到告警指令后闪烁,从而提醒用户完成更新的软件存在区块不兼容的情况。
参照图3,给出了本发明实施例中的一种N个区块兼容性的检查原理图。图3中,完成更新的软件数据划分成N个区块,依次为区块1、区块2、……、区块N。区块1包括区块1地址存储单元、预设校验值存储子单元及区块1校验值存储子单元。区块2包括区块2地址存储单元、区块1校验值存储子单元、区块2校验值存储子单元。区块N包括区块N地址存储单元、区块N-1校验值存储子单元以及区块N校验值存储子单元。
区块1中,区块1地址存储单元存储的是预设校验值子单元的地址数据以及区块1校验值存储子单元的地址数据。区块2地址存储单元存储的是区块1校验值存储子单元的地址数据以及区块2校验值存储子单元的地址数据。以此类推,区块N地址存储单元存储的是区块N-1校验值存储子单元的地址数据以及区块N校验值存储子单元的地址数据。
在区块1中,预设校验值存储子单元中存储的是预先设定的校验值,区块1校验值存储子单元中存储的是:对除了区块1校验值存储子单元中的数据外的所有区块1的数据进行校验得到的校验值。在区块2中,区块1校验值存储子单元中存储的是:对除了区块1校验值存储子单元中的数据外的所有区块1的数据进行校验得到的校验值。依次类推,在区块N中,区块N-1校验值存储子单元中存储的是:对除了区块N-1校验值存储子单元中的数据外的所有区块N-1的数据进行校验得到的校验值。
在软件数据更新完成后,对N个区块中,相邻的区块进行兼容性检查。例如,在对区块1与区块2的兼容性进行检查时,读取区块2中的区块1校验值存储子单元中的数据,与区块1中的区块1校验值存储子单元中的数据进行比较。当二者相同时,则可以判定区块1与区块2兼容;反之,则可以判定区块1与区块2不兼容。
相应地,在对任意两个相邻的区块进行兼容性检查时,均可参照上述区块1与区块2的兼容性检查方法,此处不做赘述。
参照图4,本发明实施例还提供了一种汽车电控单元软件兼容性检查装置40,完成刷新的汽车电控单元软件的数据被划分为N个连续的区块,且第1个区块中存储有第1个区块对应的校验值以及预设校验值,其他区块中分别存储有各区块自身对应的校验值以及相邻的前一个区块对应的校验值;所述检查装置40包括:读取单元401、比较单元402以及判定单元403,其中:
读取单元401,用于在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中,2≤i≤N-1,N为整数,且所述第一校验值与所述第二校验值均由对所述第i个区块中的数据进行校验后生成;
比较单元402,用于对所述第一校验值与所述第二校验值进行比较;
判定单元403,用于当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
在具体实施中,汽车电控单元软件兼容性检查装置40还可以包括:控制单元404,用于在所述判定单元判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容之后,当接收到与所述完成更新的软件对应的启动指令时,禁止启动所述完成更新的软件。
在具体实施中,汽车电控单元软件兼容性检查装置40还可以包括:告警单元405,用于发出提醒指令,以告知用户所述完成更新的软件的第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
在具体实施中,所述读取单元401,可以用于从第i个区块的地址存储单元中,读取存储所述第一校验值的地址;根据读取到的所述第一校验值的地址进行寻址,以读取所述第一校验值。
在具体实施中,所述读取单元401,可以用于从第i+1个区块的地址存储单元中,读取存储所述第二校验值的地址;根据读取到的所述第二校验值的地址进行寻址,以读取所述第二校验值。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、Flash磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (10)
1.一种汽车电控单元软件兼容性检查方法,其特征在于,完成更新的汽车电控单元软件的数据被划分为N个连续的区块,且第1个区块中存储有第1个区块对应的校验值以及预设校验值,其他区块中分别存储有各区块自身对应的校验值以及相邻的前一个区块对应的校验值;所述检查方法包括:
在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中:2≤i≤N-1,N为整数;所述第一校验值和所述第二校验值均在更新所述软件之前由对所述第i个区块中的数据进行校验后生成;
比较所述第一校验值与所述第二校验值;
当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
2.如权利要求1所述的汽车电控单元软件兼容性检查方法,其特征在于,在判定所述完成更新的软件不兼容之后,还包括:禁止启动所述完成更新的软件。
3.如权利要求1所述的汽车电控单元软件兼容性检查方法,其特征在于,在判定所述完成更新的软件不兼容之后,还包括:向预设的告警装置发送告警指令,以告知用户所述完成更新的软件的第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
4.如权利要求1所述的汽车电控单元软件兼容性检查方法,其特征在于,所述读取第i个区块存储的与所述第i个区块对应的第一校验值,包括:
从第i个区块的地址存储单元中,读取存储所述第一校验值的地址;
根据读取到的所述第一校验值的地址进行寻址,以读取所述第一校验值。
5.如权利要求1所述的汽车电控单元软件兼容性检查方法,其特征在于,所述读取第i+1个区块存储的与所述第i个区块对应的第二校验值,包括:
从第i+1个区块的地址存储单元中,读取存储所述第二校验值的地址;
根据读取到的所述第二校验值的地址进行寻址,以读取所述第二校验值。
6.一种汽车电控单元软件兼容性检查装置,其特征在于,完成更新的汽车电控单元软件的数据被划分为N个连续的区块,且第1个区块中存储有第1个区块对应的校验值以及预设校验值,其他区块中分别存储有各区块自身对应的校验值以及相邻的前一个区块对应的校验值;所述检查装置包括:
读取单元,用于在检测到所述软件完成更新后,读取第i个区块存储的第一校验值,以及第i+1个区块中存储的第二校验值;其中,2≤i≤N-1,N为整数,且所述第一校验值与所述第二校验值均在更新所述软件之前由对所述第i个区块中的数据进行校验后生成;
比较单元,用于对所述第一校验值与所述第二校验值进行比较;
判定单元,用于当所述第一校验值与所述第二校验值不同时,判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
7.如权利要求6所述的汽车电控单元软件兼容性检查装置,其特征在于,还包括:控制单元,用于在所述判定单元判定所述第i个区块存储的数据与所述第i+1个区块存储的数据不兼容之后,当接收到与所述完成更新的软件对应的启动指令时,禁止启动所述完成更新的软件。
8.如权利要求6所述的汽车电控单元软件兼容性检查装置,其特征在于,还包括:告警单元,用于发出提醒指令,以告知用户所述完成更新的软件的第i个区块存储的数据与所述第i+1个区块存储的数据不兼容。
9.如权利要求6所述的汽车电控单元软件兼容性检查装置,其特征在于,所述读取单元,用于从第i个区块的地址存储单元中,读取存储所述第一校验值的地址;根据读取到的所述第一校验值的地址进行寻址,以读取所述第一校验值。
10.如权利要求6所述的汽车电控单元软件兼容性检查装置,其特征在于,所述读取单元,用于从第i+1个区块的地址存储单元中,读取存储所述第二校验值的地址;根据读取到的所述第二校验值的地址进行寻址,以读取所述第二校验值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611226469.2A CN108241578B (zh) | 2016-12-27 | 2016-12-27 | 汽车电控单元软件兼容性检查方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611226469.2A CN108241578B (zh) | 2016-12-27 | 2016-12-27 | 汽车电控单元软件兼容性检查方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108241578A CN108241578A (zh) | 2018-07-03 |
CN108241578B true CN108241578B (zh) | 2021-05-07 |
Family
ID=62702640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611226469.2A Active CN108241578B (zh) | 2016-12-27 | 2016-12-27 | 汽车电控单元软件兼容性检查方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108241578B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144550A (zh) * | 2018-09-03 | 2019-01-04 | 北京新能源汽车股份有限公司 | 一种数据处理方法、装置及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317817A (zh) * | 2014-09-26 | 2015-01-28 | 浙江中控技术股份有限公司 | 一种组态文件的版本兼容方法及装置 |
CN104572153A (zh) * | 2013-10-23 | 2015-04-29 | 上海汽车集团股份有限公司 | 一种用于车辆刷新的刷新数据转换方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9412273B2 (en) * | 2012-03-14 | 2016-08-09 | Autoconnect Holdings Llc | Radar sensing and emergency response vehicle detection |
US9031548B2 (en) * | 2013-07-30 | 2015-05-12 | Intuit Inc. | Method and system for obtaining a configuration profile |
-
2016
- 2016-12-27 CN CN201611226469.2A patent/CN108241578B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572153A (zh) * | 2013-10-23 | 2015-04-29 | 上海汽车集团股份有限公司 | 一种用于车辆刷新的刷新数据转换方法 |
CN104317817A (zh) * | 2014-09-26 | 2015-01-28 | 浙江中控技术股份有限公司 | 一种组态文件的版本兼容方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108241578A (zh) | 2018-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110244958B (zh) | 用于更新车辆的标定数据的方法和装置 | |
US10802814B2 (en) | Vehicle control device, update confirmation method of program, and non-transitory computer readable medium storing update confirmation program | |
US20190332776A1 (en) | Firmware map data | |
CN106529301B (zh) | 车机系统的控制方法、装置以及车机系统 | |
CN110930131A (zh) | 一种车辆维修方法、装置、设备及介质 | |
US20180102003A1 (en) | Vehicular information communication system and vehicular information communication method | |
CN111934861A (zh) | 一种诊断刷写过程数据合法性验证方法及其系统 | |
CN111198705A (zh) | 一种防止ecu刷死的内存备份方法、装置、存储介质及电子设备 | |
CN111857755A (zh) | 程序刷写方法、装置、车辆及存储介质 | |
CN110334486B (zh) | 应用程序完整性校验方法及设备 | |
CN108241578B (zh) | 汽车电控单元软件兼容性检查方法及装置 | |
KR102610730B1 (ko) | 차량의 업데이트 제공 장치 및 컴퓨터 기록 매체 | |
CN108196975B (zh) | 基于多校验和的数据验证方法、装置及存储介质 | |
CN112052032B (zh) | 电子控制单元的刷写方法及装置 | |
KR102275142B1 (ko) | 차량용 제어기의 업데이트 시스템 및 방법 | |
CN113867823A (zh) | 车载终端配置参数的设置方法、装置及电子设备 | |
JP6604661B2 (ja) | 車両制御装置 | |
CN112732301A (zh) | 一种车辆升级方法和装置 | |
US9773562B2 (en) | Storage apparatus, flash memory control apparatus, and program | |
JP7025200B2 (ja) | プログラム制御装置、プログラム制御システムおよびプログラム制御方法 | |
JP2015176284A (ja) | 電子制御装置 | |
CN113641556B (zh) | 用于保障汽车仪表稳定运行的系统、方法、装置、处理器及其计算机可读存储介质 | |
CN113468008B (zh) | 安全控制器的检测方法、装置、设备及存储介质 | |
CN117742763A (zh) | Ecu固件升级方法、装置、系统、汽车及存储介质 | |
US20240198932A1 (en) | Information processing device, information processing method, and storage medium |
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 |