CN114238035A - 一种通过运行状态指纹进行错误检测方法及系统 - Google Patents
一种通过运行状态指纹进行错误检测方法及系统 Download PDFInfo
- Publication number
- CN114238035A CN114238035A CN202210164208.1A CN202210164208A CN114238035A CN 114238035 A CN114238035 A CN 114238035A CN 202210164208 A CN202210164208 A CN 202210164208A CN 114238035 A CN114238035 A CN 114238035A
- Authority
- CN
- China
- Prior art keywords
- module
- fingerprint
- running
- data
- fingerprints
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Collating Specific Patterns (AREA)
- Image Input (AREA)
Abstract
一种通过运行状态指纹进行错误检测方法,包括以下步骤:1)收集功能模块参与运行状态指纹计算的运行特征数据;2)对所述运行特征数据分类、整合预处理,生成数据流;3)应用指纹生成算法对所述数据流进行运算,生成运行状态指纹;4)对所述运行状态指纹进行比较,判断系统的运行状态。本发明还提供一种通过运行状态指纹进行错误检测系统,提高了系统错误检测能力和系统的安全可靠性,具有适用广,覆盖率高,检测速度快,检测开销灵活的特点,可以大大提高系统的可靠性和可检测性。
Description
技术领域
本发明涉及汽车电子技术领域,特别是涉及一种汽车电子系统的进行错误检测方法及系统。
背景技术
当前,为了复杂的应用需求,各个系统集成了大量的功能,运行复杂的程序,而系统的功能安全和可靠性越来越收到重视,尤其当这些系统应用在安全可靠要求较高的领域,例如交通工具、仪表、航天航空等领域。对于复杂的系统迫切需要有更强大高效和实时性高的错误检测方法。
由于系统的复杂性越来越大,复杂系统发生错误的概率随着运行时间的变长可能性越来越高,对于高功能安全要求的场合,发生错误,如果没有及时发现是一件非常危险的事情,错误可能会发生在任何时间和任何位置上,错误的检测方法有很多,但都难以做到实时有效的检测。例如比较常见的方法,为了检测系统的问题,在每次开机后运行一次已知结果的测试,已测试输出是否符合预期结果。另一种方法为了可靠性,对采取了备用系统,即双系统运行相同的应用,当系统的输出相同时,认为没有出现错误,否则认为出现了错误,但是很多情况下错误实在运行过程中的任一点发生的,而这一点错误未必会及时反应在输出上面,所以比较输出并不能及时检测错误。等到错误真正传导到输出上的这段时间,会产生不可预知的结果和问题,为系统的可靠性带来隐患。
错误诊断技术,在最近几十年越来越收到重视,也开发除了多种的检测方法。基于运行状态指纹的检测方法从运行系统的各个位置(空间上)搜集特征,并在实时比较(时间),指纹运行算法的易于实现,且开销较小,可以达到很好的错误检测覆盖率和检测实时效果。
为了检测系统的问题,在每次开机后运行一次已知结果的测试,已测试输出是否符合预期结果。另一种方法为了可靠性,对采取了备用系统,即双系统运行相同的应用,当系统的输出相同时,认为没有出现错误,否则认为出现了错误,但是很多情况下错误实在运行过程中的任一点发生的,而这一点错误未必会及时反应在输出上面,所以比较输出并不能及时检测错误。等到错误真正传导到输出上的这段时间,会产生不可预知的结果和问题,为系统的可靠性带来隐患。另外一种双核锁步设计可以实时检测系统的运行状态,并报错,具有很高的检测能力,但是这种系统需要专门设计,并且严格要求两个核处于同步状态,这些要求限制了这个方法的应用场合。
上述现有的错误诊断方法,均存在检测覆盖率、实时性、有效性低的问题,以及存在不适用某些场景的问题。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种通过运行状态指纹进行错误检测方法及系统,选取系统的输入输出、运行状态信息等运行特征数据,计算出运行状态指纹,并进行实时性比较,以判断系统运行的状态是否正常。
为实现上述目的,本发明提供的通过运行状态指纹进行错误检测方法,包括以下步骤:
1)收集功能模块参与运行状态指纹计算的运行特征数据;
2)对所述运行特征数据分类、整合预处理,生成数据流;
3)应用指纹生成算法对所述数据流进行运算,生成运行状态指纹;
4)对所述运行状态指纹进行比较,判断系统的运行状态。
进一步地,所述运行特征数据,包括以下一个或多个:,
功能模块的输入信息;
功能模块的输出信息;
功能模块的内部子模块的互联关键数据;
功能模块及其子模块的内部状态信息;
子模块的运行状态指纹;
数据变化发生的时间和时间间隔。
进一步地,对于功能模块和备份模块组成的双系统,在所述步骤1)之前,还包括,
去除功能模块和备份模块的输入输出的相关性;将备份系统的运行时间与功能系统的运行时间错开。
进一步地,所述步骤1),还包括,
采用多层次的运行特征数据的收集:本层次的运行特征数据包含子模块已经产生的运行状态指纹或将本层次的运行状态指纹输出到上一层模块。
进一步地,所述步骤2),还包括,
保留收集的运行特征数据发生变化的顺序;
对于功能模块的输入信息、功能模块的输出信息、功能模块的内部子模块的互联关键数据、功能模块及其子模块的内部状态信息、子模块的运行状态指纹进行整合;
对于必须保证正确的数据,不做改动直接整合进数据流;
对于不敏感数据,删除或修改为确定值整合进数据流。
进一步地,所述指纹生成算法,包括压缩算法,HASH算法。
进一步地,所述步骤4),还包括,
如果是功能模块及其备份功能模块组成双核锁步系统,互相比较其产生的运行状态指纹,判断系统的运行状态;如果两个功能模块的运行状态指纹匹配,则没有错误;如果不匹配,则发生错误。
更进一步地,所述步骤4),还包括,
对于单个功能模块,运行一个预置的任务,获得一个运行状态指纹后与预期的进行比较,判断系统是否发生错误;或对于一个任务,运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
为实现上述目的,本发明提供的通过运行状态指纹进行错误检测系统,包括,数据收集模块、预处理模块、计算模块,以及比较判断模块,其中,
所述数据收集模块,其收集功能模块参与运行状态指纹计算的运行特征数据;
所述预处理模块,其对所述运行特征数据分类、整合预处理,生成数据流;
所述计算模块,其应用指纹生成算法对所述数据流进行运算,生成运行状态指纹;
所述比较判断模块,其对所述运行状态指纹进行比较,判断系统的运行状态。
进一步地,所述计算模块,其采用多层次的运行特征数据的收集:本层次的运行特征数据包含子模块已经产生的运行状态指纹或将本层次的运行状态指纹输出到上一层模块。
更进一步地,如果是功能模块及其备份功能模块组成双核锁步系统,所述比较判断模块,互相比较功能模块及其备份功能模块产生的运行状态指纹,判断系统的运行状态;
对于单个功能模块,运行一个预置的任务后,所述比较判断模块将获得的运行状态指纹与预期值进行比较,判断系统是否发生错误;或对于一个任务,运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
为实现上述目的,本发明还提供一种功能CPU和备份CPU组成的双核系统,采用如上文所述的通过运行状态指纹进行错误检测方法的步骤。对功能CPU和备份CPU进行错误检测。
为实现上述目的,本发明还提供一种车规系统,采用如上文所述的通过运行状态指纹进行错误检测方法的步骤对车规芯片进行错误检测。
为实现上述目的,本发明还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的通过运行状态指纹进行错误检测方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的通过运行状态指纹进行错误检测方法的步骤。
本发明的通过运行状态指纹进行错误检测方法及系统,具有以下有益效果:本发明基于系统的运行特征数据生成运行状态指纹对系统错误进行检测,大大提高了系统错误检测能力,提高了系统的安全可靠性;可以采用功能模块和备份功能模块组成双系统进行比较获得比较好的运行实时特性,也可以通过单系统运行已知任务比较预期指纹的方法对单系统进行检测,亦可以单系统运行两遍进行比较的方法进行检测,以检测系统运行状况,具有适用广,覆盖率高,检测速度快,检测开销灵活的特点,可以大大提高系统的可靠性和可检测性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的通过运行状态指纹进行错误检测方法流程图;
图2为根据本发明的通过运行状态指纹进行错误检测系统结构示意图;
图3为根据本发明的运行特征数据收集示意图;
图4为根据本发明的功能模块及其备份功能模块组成双核锁步系统的运行状态指纹检测和比较示意图;
图5为根据本发明的单个功能模块进行运行状态指纹检测和比较示意图;
图6为根据本发明的对一个任务,进行两次运行状态指纹检测和比较示意图;
图7为根据本发明的对功能CPU和备份CPU运行进行错误检测示意图;
图8为根据本发明的对车规系统的运行状态进行实时错误检测示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例中,采用基于功能模块的运行状态指纹的检测方法,对功能模块的运行状态进行检测,可以检测功能模块运行过程中出现的错误。
错误检测覆盖的功能模块,是一个运行应用功能的模块或系统,这个功能可以是芯片内部的一个功能IP,也可以是电路板上的某几颗芯片,也可以是一个电路板级系统,可以是某个组成主机的零部件,也可以是一个包含多个系统的主机。本发明将提供的方法可以计算功能模块的运行状态指纹。
本发明实施例中,备份模块是与功能模块完全相同的一个模块或者系统,用来产生另外一个参考的运行状态指纹与功能模块的运行状态指纹相比较。
实施例1
图1为根据本发明的通过运行状态指纹进行错误检测方法流程图,下面将参考图1,对本发明的通过运行状态指纹进行错误检测方法进行详细描述。
首先,在步骤101,收集系统的运行特征数据。
本发明实施例中,收集功能模块参与运行状态指纹计算的运行特征数据,如以下一个或多个::
功能模块的输入信息I(如数据,指令);
功能模块的输出信息O(数据,控制信号);
功能模块的内部子模块的互联关键数据 C;
功能模块及其子模块的内部状态信息S(内部状态机、内部关键状态寄存器等);
还可以使用多层次的运行状态指纹,包含子模块的运行状态指纹数据Fx;
产生如上数据的时间T(包含有产生这些数据的时间,以及产生数据的间隔时间)。
本发明实施例中,对于功能模块和备份模块组成的双系统,在收集运行特征数据之前,进行如下处理:
1)对功能模块和备份模块进行去耦合处理:即去除功能模块和备份模块的输入输出的相关性。功能模块和备份模块的输入和输出有可能存在相关性问题,即输出可能会影响到下一步的输入,功能模块的输出不应该影响到备份模块的输入,反之备份模块的输出也不应该影响到功能模块的输入。功能模块和备份模块为了保证结果的正确性,功能模块的输入与备份功能模块的外部输入应该保持一致。保证其运行输入一致,才能保证其运行过程和输出的一致性。
2)对双系统的运行作同步处理:调整备份系统的运行时间,使其与功能系统的运行时间错开,例如2~4个时钟周期,可以避免共因(例如时钟毛刺)导致相同错误结果的问题。
本发明实施例中,对于复杂的系统采用多层次的运行特征数据的收集,如图3所示,本层次参与运行的特征数据可以包含子模块已经产生的运行状态指纹,也可以将本层次的运行状态指纹输出到上一层模块进行以供使用和检查。这样对于复杂系统就可以形成多层次的运行状态指纹输出,并进行错误检测。
在步骤102,对收集的运行特征数据进行预处理。
本发明实施例中,对步骤101收集的运行特征数据进行预处理,是将收集的运行特征数据进行分类、整合为数据流:
根据收集的运行特征数据发生变化的顺序,顺序的信息得以保留,对于I/O/C/S/Fx的数据进行整合,可选的可以将选中的数据变化发生的时间和时间间隔T包含在数据流中,数据流用H表示。
对于必须保证正确的数据,不做改动直接整合进数据流。
对于不敏感数据部分,可以删除或者修改为确定值整合进数据流,以保证这些不敏感数据的随机性不会影响到最终运行状态指纹。
本发明实施例中,不敏感数据包含有运行过程中随机性(比如总线带宽利用率实时变化)产生的运行周期数的细微差别,由于通信延迟随机性导致的数据包到达时间和发送时长,运行过程中的时间戳信息,两个系统或者运行两次可能会有不同。
在步骤103,应用指纹生成算法对预处理后的运行特征数据进行运算,生成运行状态指纹。
本发明实施例中,对步骤102输入的数据流,应用指纹生成算法进行运算,生成运行状态指纹 F(fingerpint) = char(H)。
本发明实施例中,对于持续监控的系统,可以每隔一段数据量,或者每个子任务完成之后,或者每隔一段时间就产生一个运行特征指纹。
本发明实施例中,指纹生成算法,可以是但不限于压缩算法,HASH算法等。
在步骤104,对运行特征指纹进行比较、判断。
本发明实施例中,对于每一笔生成的指纹数据进行比较,如果是功能模块及其备份功能模块组成双核锁步系统,如图4所示,互相比较其产生的运行状态指纹,判断系统的运行状态。如果两个功能模块的运行状态指纹匹配,则没有错误;如果不匹配,则发生错误。
本发明实施例中,对于单个功能模块可以运行一个预置的任务,如图5所示,获得一个运行状态指纹后与预期的进行比较,以判断系统是否有问题,实践中每次开机做一次开机检测。
本发明实施例中,也可以对于一个任务,如图5所示,运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
本发明实施例中,对于信心安全问题,本发明也可以提供相应保护,因为如果在某一点发生了攻击而发生一个错误,那么无论双核锁步还是再运行一次都可以发现运行状态指纹的不同,而检测到错误发生。
实施例2
图2为根据本发明的通过运行状态指纹进行错误检测系统结构示意图,如图2所示,本发明的通过运行状态指纹进行错误检测系统,包括,数据收集模块201、预处理模块202、计算模块203,以及比较判断模块204,其中,
数据收集模块201,其收集系统的运行特征数据,包括以下一个或多个::
功能模块的输入信息I(如数据,指令);
功能模块的输出信息O(数据,控制信号);
功能模块内部的子模块的互联关键数据 C;
功能模块及其子模块的内部状态信息S(内部状态机、内部关键状态寄存器等);
还可以使用多层次的运行状态指纹,包含子模块的运行状态指纹数据Fx;
产生如上数据的时间T(包含有产生这些数据的时间,以及产生数据的间隔时间)。
本发明实施例中,对于复杂的系统,数据收集模块201采用多层次的运行特征数据的收集,本层次参与运行的特征数据可以包含子模块已经产生的运行状态指纹,也可以将本层次的运行状态指纹输出到上一层模块进行以供使用和检查。
预处理模块202,对收集的运行特征数据进行分类、整合为数据流:
本发明实施例中,预处理模块202根据收集的运行特征数据发生变化的顺序,顺序的信息得以保留,对于I/O/C/S/Fx的数据进行整合,可选的可以将选中的数据变化发生的时间和时间间隔T包含在数据流中,数据流用H表示。
对于必须保证正确的数据,不做改动直接整合进数据流。
对于不敏感数据部分,可以删除或者修改为确定值整合进数据流,以保证这些不敏感数据的随机性不会影响到最终运行状态指纹。
计算模块203,应用指纹生成算法对预处理后的运行特征数据进行运算,生成运行状态指纹。
本发明实施例中,计算模块203对来自预处理模块202的数据流,应用指纹生成算法进行运算,生成运行状态指纹 F(fingerpint) = char(H)。
比较判断模块204,对运行特征指纹进行比较、判断系统运行是否发生错误。
本发明实施例中,比较判断模块204对于每一笔生成的指纹数据进行比较,如果是功能模块及其备份功能模块组成双核锁步系统,则互相比较其产生的运行状态指纹,判断运行状态。如果两个功能模块的运行状态指纹匹配,则没有错误;如果不匹配,则发生错误;对于单个功能模块运行一个预置的任务,比较判断模块204,获得一个运行状态指纹后与预期的进行比较,以判断系统是否有问题,实践中每次开机做一次开机检测;对于一个任务,比较判断模块204运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
本发明实施例中,比较判断模块204,在每次上电后运行一次测试程序,已检测该模块是否可以正常工作,起到比较指纹的目的。具体做法可以运行一个预设的任务,对于备份系统的指纹输出进行注错处理,让备份系统改的输出指纹与功能模块系统的不匹配,检查比较判断模块是否可以报错。实施例3
图7为根据本发明的对功能CPU和备份CPU运行进行错误检测示意图,如图7所示,采用功能CPU和备份CPU进行分别计算运行状态指纹,并进行比较,以监控和判断CPU运行的状态是否正确。
本发明实施例中, CPU可以为RISCV处理器,数据和指令采用独立模块进行存储,分别由指令和数据读写接口进行访问。而寄存器和外部读写由另一个接口进行访问。
对于一个CPU系统,会读取指令和数据(输入I),进行运行运算,同时会不断地读写外部数据和配置寄存器(输出O),内部的状态寄存器也会不断变化(内部状态S)
首先去除CPU和备份CPU的输入的相关性,即CPU和备份输入的指令和数据要分为独立的模块,而CPU和备份CPU外部输出通道也不能有相关性,这里采用CPU1读取的地址数据送入到一个缓存中,供备份CPU进行读取。
备份CPU将在主CPU之后启动,每次任务完成后进行一次运行特征的比较。
同时通过运行特征数据收集和预处理,将CPU和备份CPU的运行特征数据进行处理,合成为比特流,然后送入计算模块。计算模块对运行特征数据进行计算,计算算法采用CRC32。
下表是实例中一个运算任务抓取得CPU数据,由于数据较多,隐去了部分的数据,下表有两组数据,其中左边的是正确的数据和指纹,右边是故意翻转1bit数据之后的结果,可以看出CRC32(指纹)之后一直都是错误的,可以判断出现了错误。
实施例4
图8为根据本发明的对车规系统的运行状态进行实时错误检测示意图,如图8所示,车规系统对于系统的可靠性有着很高的要求,运行中发生的错误要求能够及时发现,并有很高的覆盖率。
本发明实施例中,对于车规芯片的某项应用,采用双芯片方法对车规芯片的运行状态进行实时监测。
对于双芯片系统,首先对它们的输入输出进行相关性去除。它们的输入可以使独立输入,也可以使分开输入的。因为传感器可能没有备份,用户输入只有一份。所以输入可以同时送给两个功能芯片和备份芯片系统,而两个芯片的存储需要是分开的。
特征数据包含有输入:用户输入和传感器输入,输出:给用户的输出,执行操作的输出,输出到后续模块的输出
内部运行状态,车规芯片的内部运行功能状态指纹,车规芯片读写存储器的数据。还有实时的计时器对于每笔重要动作的时间计时。
特征数据搜集和预处理后,形成数据流送入特征指纹计算模块,进行运行特征指纹计算。这里的运行特征指纹可以选取HASH算法(例如MD5,SM3或者SHA)进行。
计算结果进行比较以监控车规系统的运行正确性,这个比较发生的时机可以使每次车规芯片每做一次单位任务后进行一次,或者一定时间和数据量积累后进行一次。方案参照下图所示。
本系统可以持续对车规芯片的运行状态进行监控,使得随机错误的检测覆盖率,大大提高,监测发现的时间间隔大大缩短。
实施例5
本发明的一个实施例中,还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的通过运行状态指纹进行错误检测方法的步骤。
实施例6
本发明的一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的通过运行状态指纹进行错误检测方法的步骤。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种通过运行状态指纹进行错误检测方法,其特征在于,包括以下步骤:
1)收集功能模块参与运行状态指纹计算的运行特征数据;
2)对所述运行特征数据分类、整合预处理,生成数据流;
3)应用指纹生成算法对所述数据流进行运算,生成运行状态指纹;
4)对所述运行状态指纹进行比较,判断系统的运行状态。
2.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述运行特征数据,包括以下一个或多个:功能模块的输入信息;
功能模块的输出信息;
功能模块的内部子模块的互联关键数据;
功能模块及其子模块的内部状态信息;
子模块的运行状态指纹;
数据变化发生的时间和时间间隔。
3.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,对于功能模块和备份模块组成的双系统,在所述步骤1)之前,还包括,
去除功能模块和备份模块的输入输出的相关性;将备份系统的运行时间与功能系统的运行时间错开。
4.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述步骤1),还包括,
采用多层次的运行特征数据的收集:本层次的运行特征数据包含子模块已经产生的运行状态指纹或将本层次的运行状态指纹输出到上一层模块。
5.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述步骤2),还包括,
保留收集的运行特征数据发生变化的顺序;
对于功能模块的输入信息、功能模块的输出信息、功能模块的内部子模块的互联关键数据、功能模块及其子模块的内部状态信息、子模块的运行状态指纹进行整合;
对于必须保证正确的数据,不做改动直接整合进数据流;
对于不敏感数据,删除或修改为确定值整合进数据流。
6.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述指纹生成算法,包括压缩算法,HASH算法。
7.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述步骤4),还包括,
如果是功能模块及其备份功能模块组成双核锁步系统,互相比较其产生的运行状态指纹,判断系统的运行状态;如果两个功能模块的运行状态指纹匹配,则没有错误;如果不匹配,则发生错误。
8.根据权利要求1所述的通过运行状态指纹进行错误检测方法,其特征在于,所述步骤4),还包括,
对于单个功能模块,运行一个预置的任务,获得一个运行状态指纹后与预期的进行比较,判断系统是否发生错误;或对于一个任务,运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
9.一种通过运行状态指纹进行错误检测系统,其特征在于,包括,数据收集模块、预处理模块、计算模块,以及比较判断模块,其中,
所述数据收集模块,其收集功能模块参与运行状态指纹计算的运行特征数据;
所述预处理模块,其对所述运行特征数据分类、整合预处理,生成数据流;
所述计算模块,其应用指纹生成算法对所述数据流进行运算,生成运行状态指纹;
所述比较判断模块,其对所述运行状态指纹进行比较,判断系统的运行状态。
10.根据权利要求9所述的通过运行状态指纹进行错误检测系统,其特征在于,所述计算模块,其采用多层次的运行特征数据的收集:本层次的运行特征数据包含子模块已经产生的运行状态指纹或将本层次的运行状态指纹输出到上一层模块。
11.根据权利要求9所述的通过运行状态指纹进行错误检测系统,其特征在于,
如果是功能模块及其备份功能模块组成双核锁步系统,所述比较判断模块,互相比较功能模块及其备份功能模块产生的运行状态指纹,判断系统的运行状态;
对于单个功能模块,运行一个预置的任务后,所述比较判断模块将获得的运行状态指纹与预期值进行比较,判断系统是否发生错误;或对于一个任务,运行两遍获得两个运行指纹,进行比较,以判断是否存在随机错误发生。
12.一种功能CPU和备份CPU组成的双核系统,其特征在于,采用权利要求1-8任一项所述的通过运行状态指纹进行错误检测方法对功能CPU和备份CPU进行错误检测。
13.一种车规系统,其特征在于,采用权利要求1-8任一项所述的通过运行状态指纹进行错误检测方法对车规芯片进行错误检测。
14.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行权利要求1至8任一项所述的通过运行状态指纹进行错误检测方法的步骤。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序运行时执行权利要求1至8任一项所述的通过运行状态指纹进行错误检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210164208.1A CN114238035B (zh) | 2022-02-23 | 2022-02-23 | 一种通过运行状态指纹进行错误检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210164208.1A CN114238035B (zh) | 2022-02-23 | 2022-02-23 | 一种通过运行状态指纹进行错误检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114238035A true CN114238035A (zh) | 2022-03-25 |
CN114238035B CN114238035B (zh) | 2022-06-21 |
Family
ID=80747772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210164208.1A Active CN114238035B (zh) | 2022-02-23 | 2022-02-23 | 一种通过运行状态指纹进行错误检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114238035B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116643935A (zh) * | 2023-07-21 | 2023-08-25 | 天津国芯科技有限公司 | 一种可配置延迟时间的双核锁步芯片 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106094789A (zh) * | 2016-06-02 | 2016-11-09 | 上海交通大学 | 一种汽车线控转向的双芯片冗余及容错控制系统 |
KR20170054819A (ko) * | 2015-11-10 | 2017-05-18 | 현대오트론 주식회사 | 차량용 전자 제어기 복구 방법 및 이를 실행하는 장치 |
CN107391298A (zh) * | 2017-07-06 | 2017-11-24 | 上海策链信息科技有限公司 | 数据存储状态检测方法、装置及计算机可读存储介质 |
CN111737038A (zh) * | 2020-06-19 | 2020-10-02 | 西安微电子技术研究所 | 一种基于小卫星双机系统切机的控制方法 |
CN111931334A (zh) * | 2020-06-28 | 2020-11-13 | 中国电力科学研究院有限公司 | 一种用于评估电缆设备运行可靠性的方法及系统 |
CN112667450A (zh) * | 2021-01-07 | 2021-04-16 | 浙江大学 | 一种可动态配置的多核处理器容错系统 |
CN112860523A (zh) * | 2021-03-16 | 2021-05-28 | 中国工商银行股份有限公司 | 批量作业处理的故障预测方法、装置和服务器 |
CN113138775A (zh) * | 2020-01-20 | 2021-07-20 | 上海交通大学 | 车载诊断系统固件保护方法及系统 |
US20210271537A1 (en) * | 2018-09-28 | 2021-09-02 | Intel Corporation | A mechanism of enabling fault handling with pcie re-timer |
WO2021208341A1 (zh) * | 2020-04-16 | 2021-10-21 | 国电南瑞科技股份有限公司 | 一种电力二次设备内存位翻转的检测恢复方法及系统 |
-
2022
- 2022-02-23 CN CN202210164208.1A patent/CN114238035B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170054819A (ko) * | 2015-11-10 | 2017-05-18 | 현대오트론 주식회사 | 차량용 전자 제어기 복구 방법 및 이를 실행하는 장치 |
CN106094789A (zh) * | 2016-06-02 | 2016-11-09 | 上海交通大学 | 一种汽车线控转向的双芯片冗余及容错控制系统 |
CN107391298A (zh) * | 2017-07-06 | 2017-11-24 | 上海策链信息科技有限公司 | 数据存储状态检测方法、装置及计算机可读存储介质 |
US20210271537A1 (en) * | 2018-09-28 | 2021-09-02 | Intel Corporation | A mechanism of enabling fault handling with pcie re-timer |
CN113138775A (zh) * | 2020-01-20 | 2021-07-20 | 上海交通大学 | 车载诊断系统固件保护方法及系统 |
WO2021208341A1 (zh) * | 2020-04-16 | 2021-10-21 | 国电南瑞科技股份有限公司 | 一种电力二次设备内存位翻转的检测恢复方法及系统 |
CN111737038A (zh) * | 2020-06-19 | 2020-10-02 | 西安微电子技术研究所 | 一种基于小卫星双机系统切机的控制方法 |
CN111931334A (zh) * | 2020-06-28 | 2020-11-13 | 中国电力科学研究院有限公司 | 一种用于评估电缆设备运行可靠性的方法及系统 |
CN112667450A (zh) * | 2021-01-07 | 2021-04-16 | 浙江大学 | 一种可动态配置的多核处理器容错系统 |
CN112860523A (zh) * | 2021-03-16 | 2021-05-28 | 中国工商银行股份有限公司 | 批量作业处理的故障预测方法、装置和服务器 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116643935A (zh) * | 2023-07-21 | 2023-08-25 | 天津国芯科技有限公司 | 一种可配置延迟时间的双核锁步芯片 |
CN116643935B (zh) * | 2023-07-21 | 2023-09-26 | 天津国芯科技有限公司 | 一种可配置延迟时间的双核锁步芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN114238035B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7849450B1 (en) | Devices, methods and computer program products for reverse execution of a simulation | |
US5640508A (en) | Fault detecting apparatus for a microprocessor system | |
Madeira et al. | Experimental evaluation of the fail-silent behavior in computers without error masking | |
JP2500038B2 (ja) | マルチプロセッサ・コンピュ―タ・システム、フォ―ルト・トレラント処理方法及びデ―タ処理システム | |
US7930165B2 (en) | Procedure and device for emulating a programmable unit providing system integrity control | |
Zheng et al. | 3-dimensional root cause diagnosis via co-analysis | |
US5845064A (en) | Method for testing and verification of a CPU using a reference model | |
JP7351933B2 (ja) | エラーリカバリ方法及び装置 | |
JP2001519939A (ja) | コンピュータ・システムにおけるエラー訂正方法および装置 | |
WO2021244535A1 (zh) | 车辆软件故障检测方法、装置、设备及存储介质 | |
CN114238035B (zh) | 一种通过运行状态指纹进行错误检测方法及系统 | |
CN103226500A (zh) | 通过签名分析计算的系统和方法 | |
CN108345787B (zh) | 确定处理器安全性的方法、检测装置及系统 | |
CN105868060B (zh) | 用于运行驾驶员辅助系统的数据处理单元的方法和数据处理单元 | |
CN115935631A (zh) | 用于车机设备的测试系统和方法、存储介质 | |
US5701486A (en) | Tracing technique for application programs using protect mode addressing | |
JP2011175641A (ja) | 時間的に分離した冗長プロセッサの実行を使用しての周辺機器への読み書き | |
CN113010341A (zh) | 一种故障内存定位的方法和设备 | |
EP2836913B1 (fr) | Dispositif pour générer une signature à l'exécution d'une tâche de programme et méthode de comparaison de flots d'exécution | |
US20100011183A1 (en) | Method and device for establishing an initial state for a computer system having at least two execution units by marking registers | |
JP2011095837A (ja) | フェールセーフシステム | |
CN112905995B (zh) | 一种处理器内部寄存器组异常行为实时检测方法及系统 | |
JP2004234144A (ja) | プロセッサの動作比較装置および動作比較方法 | |
US7299386B2 (en) | Apparatus and method for detecting address characteristics for use with a trigger generation unit in a target processor | |
Qin | System Support for Improving Software Dependability During Production Runs |
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 |