CN109508260B - 一种自修复处理器对锁步***的可靠性建模与分析方法 - Google Patents

一种自修复处理器对锁步***的可靠性建模与分析方法 Download PDF

Info

Publication number
CN109508260B
CN109508260B CN201811288291.3A CN201811288291A CN109508260B CN 109508260 B CN109508260 B CN 109508260B CN 201811288291 A CN201811288291 A CN 201811288291A CN 109508260 B CN109508260 B CN 109508260B
Authority
CN
China
Prior art keywords
transition
gspn
reliability
state
reliability model
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
Application number
CN201811288291.3A
Other languages
English (en)
Other versions
CN109508260A (zh
Inventor
朱怡安
杨淏天
李联
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201811288291.3A priority Critical patent/CN109508260B/zh
Publication of CN109508260A publication Critical patent/CN109508260A/zh
Application granted granted Critical
Publication of CN109508260B publication Critical patent/CN109508260B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明提供了一种自修复处理器对锁步***的可靠性建模与分析方法,首先,将锁步***及自修复处理器的状态抽象成库所集,将处理器和其它部件的故障发生及修复动作抽象成变迁集,再将库所集和变迁集的关系抽象成两者之间的有向弧集和点火变迁规则,然后将各部件的故障率和修复率信息抽象成延时变迁元素的平均实施速率,由此得到锁步***的GSPN可靠性模型。将模型初始化后,依据点火变迁规则,得到锁步***可达的所有状态,再构造GSPN可靠性模型的同构Markov链,由此得出GSPN可靠性模型可达状态的累计概率函数方程并求解,得到锁步***的可靠度函数,从而完成锁步***的可靠性分析。本发明建模过程简单,可以精确地得到***的可靠度函数。

Description

一种自修复处理器对锁步***的可靠性建模与分析方法
技术领域
本发明涉及计算机可靠性分析领域,具体涉及一种锁步***的可靠性建模与分析方法。
背景技术
处理器锁步(Lockstep)技术是指由两个处理器构成自监控对,不断地检查操作功能的正确性,并建立故障抑制区,防止故障蔓延到***。在支持故障自修复的锁步***中,在发生锁步故障后,还可以通过处理器状态回滚等方式修复处理器发生的瞬时故障。为了提高航空、航天计算机控制等高安全关键***的可靠性,处理器锁步技术越来越多地被应用于上述领域。
随着锁步技术日趋成熟,应用领域日趋广泛,对锁步***的可靠性分析成为了安全关键***领域里一个亟待解决的问题。在中国专利:《一种嵌入式***可靠性分析与评估方法》(公开号CN101901186A)中提出了一种自底向上的AADL(美国自动化工程师协会发布的航空标准AS5506——架构分析与设计语言)转换GSPN(广义随机Petri网的可靠性模型)的可靠性分析方法,通过逐层向上迭代的方式计算出整个嵌入式***的可靠性。
上述方法虽然能够获得嵌入式***的可靠性指标,但是对于锁步***来说,使用该方法进行可靠性分析存在着下列问题:AADL转换GSPN过程繁琐,建模过程相对复杂;自底向上的迭代方式适合已经存在的***,对于尚不存在或正在研发中的***不够友好;适用于通用的嵌入式***,对锁步处理器对的自监控、自修复功能没有针对性。
发明内容
为了克服现有技术的不足,本发明提供一种自修复处理器对锁步***的可靠性建模与分析方法,该方法在建立GSPN可靠性模型时采用***抽象的方式进行建模。对已经存在的***,按照准确、完整和简洁的建模要求,详尽地描述整个***;对于尚在研发过程中的***,注意预留接口或者采用抽象预估值的方式,使尚未完成的部分不影响整个***可靠性模型的建立。同时,针对自修复处理器对锁步***的同源时钟、双核锁步、故障容忍、故障自检、故障定位以及故障自恢复等特性,在建模对象、建模事件、建模结构等方面都做出了针对性的调整,使得本发明能够很好地支持自修复处理器对锁步***,能够有效地得到锁步***的可靠度函数。
为达到上述目的,本发明提供一种自修复处理器对锁步***的可靠性建模与分析方法,包括以下步骤:
步骤1:将锁步***的整体状态以及锁步***中自修复处理器的状态抽象成GSPN可靠性模型的库所集,库所集中的每一个元素分别对应一个不同的状态;将自修复处理器瞬时故障发生及修复的动作、锁步***中其它部件故障发生及修复的动作抽象成GSPN可靠性模型的变迁集,变迁集中的每一个元素分别对应一个不同的动作;完成建模对象分析;
步骤2:由于发生了GSPN可靠性模型变迁集中各元素对应的动作而使库所集中元素状态发生改变,从而形成了库所集与变迁集之间的关系,将这种关系抽象成库所集中元素和变迁集中元素之间的有向弧集和GSPN可靠性模型的点火变迁规则,完成建模事件和条件分析;
步骤3:将GSPN可靠性模型变迁集中表示故障发生动作的延时变迁元素的平均实施速率设置为对应的发生故障的部件的故障率,将GSPN可靠性模型变迁集中表示故障修复动作的延时变迁元素的平均实施速率设置为对应的修复故障的部件的修复率,完成变迁参数设置,由此得到锁步***的GSPN可靠性模型;
步骤4:根据锁步***中各部件的初始状态,对GSPN可靠性模型进行初始化,得到初始状态集,初始化规则为:状态集中元素数量和库所集相同,各元素的值为库所集中各元素在初始状态下所包含的token数量;
步骤5:针对步骤1至步骤3建立的GSPN可靠性模型,由GSPN可靠性模型的初始状态集及步骤2中获取的点火变迁规则,每产生一个变迁,库所集中与该变迁相关的元素状态就会发生变化,该元素所包含的token也会产生相应地变化,从而得到锁步***可达的所有状态,每种状态下库所集中各元素所包含的token数量用对应状态集进行记录,完成模型可达性分析;
步骤6:根据步骤5中完成的GSPN可靠性模型可达性分析,将GSPN可靠性模型的可达状态作为Markov链的顶点,可达状态之间的直达关系对应Markov链顶点间的有向弧,可达状态之间的可达关系对应Markov链顶点间的由多个有向弧组成的有向路径,构造GSPN可靠性模型同构Markov链;
步骤7:根据步骤6得到的GSPN可靠性模型同构Markov链,得到GSPN可靠性模型各可达状态的状态转移矩阵,由该状态转移矩阵可得到GSPN可靠性模型每个可达状态当前时刻的累计概率函数与下一时刻的累计概率函数之间的关系方程,对该方程采用拉普拉斯变换方法求解,得到锁步***的可靠度函数,从而完成锁步***的可靠性分析。
本发明采用的自修复处理器对锁步***的可靠性建模与分析方法,通过自顶向下的抽象过程建立锁步***的可靠性GSPN模型,建模过程相对简单,对复杂锁步***的支持度良好;模型分析过程有严格的数学方法支持,通过Markov链的数学求解过程,可以精确地求解模型的可靠度函数;通过合理地设置抑制弧,一定程度上解决了当***运行关系复杂时,构造Markov链时产生的“状态***”问题。
附图说明
图1为本发明实施例的锁步***架构图;
图2为本发明实施例的锁步***的GSPN可靠性模型图;
图3为本发明实施例的锁步***的GSPN可靠性模型可达图;
图4为本发明实施例的锁步***的GSPN可靠性模型同构Markov链图示。
具体实施方式
下面结合实施例和附图对本发明进一步说明。
如图1所示,本发明采用一种简单的自修复处理器对锁步***作为实施例。
在该***运行时,两处理器同时加载相同负载,并同时运行,当处理器需要访存时,锁步单元控制内总线保持,处理器将访存数据送入锁步单元进行对比。若对比无误,则锁步单元控制内总线使能,处理器访存过程继续进行;若对比有误,则说明处理器1或2出现瞬时故障,转入故障处理过程。
在***正常运行时,处理器在固定时间将自身运行状态存入故障处理单元的缓存器中;若在检查点之前没有发生故障,则将当前状态覆盖缓存器内容;若在检查点之前发生故障,则从故障处理单元的缓存器中取出保存的运行状态,覆盖处理器的寄存器、堆栈等信息,故障修复过程完成。
如图2所示,本发明将上述锁步***抽象成GSPN可靠性模型。
按步骤1,在抽象过程中,将自修复处理器的状态及锁步***的状态抽象成库所集P={p0,p1,p2,p3,p4,p5,p6}。其中,p0表示***处理器个数,p1表示处理器1正常运行,p2表示处理器2正常运行,p3表示处理器1故障状态,p4表示处理器2故障状态,p5表示***故障容忍状态,p6表示***故障状态。
将自修复处理器瞬时故障发生及修复的动作、锁步***中其它部件故障发生及修复的动作抽象成变迁集T={t0,t1,t2,t3,t4,t5,t6}。其中,t0表示处理器1发生瞬时故障,t1表示处理器1瞬时故障修复,t2表示处理器2发生瞬时故障,t3表示处理器2瞬时故障修复,t4,t5为瞬时变迁,负责***非稳态的转换,t6表示***其它串联部件(如锁步单元,故障处理单元等)发生故障。
按步骤2,将可靠性模型的库所集和变迁集的关系抽象成库所集中元素和变迁集中元素之间的有向弧集和点火变迁规则,根据点火变迁规则,该模型中所有的弧权均为1。
按步骤3,将处理器的故障率和修复率等信息抽象成可靠性模型变迁集中延时变迁元素的平均实施速率,即t0的平均实施速率为处理器1的故障率λ1,t1的平均实施速率为处理器1的修复率μ1,t2的平均实施速率为处理器2的故障率λ2,即t3的平均实施速率为处理器2的修复率μ2,t6的平均实施速率为其它等效串联部件的故障率之和λ(2λ故障处理单元锁步单元+2λ内存+...)。
按步骤4,在***初运行时,锁步处理器、锁步单元、故障处理单元等设备均完好,初始库所p1、p2、p5含有1个token,其他库所均为空,即模型的初始状态M0=(0,1,1,0,0,1,0)。
以上工作将锁步***抽象成GSPN可靠性模型,下面是进行模型分析。
按步骤5,并参考图2,已知:模型的初始状态M0、库所集中元素和变迁集中元素之间的有向弧集、点火变迁规则、模型的使能变迁t0、t2、t6,对模型进行可达性分析。
考虑变迁t0,即处理器1发生瞬时故障,库所p1、p5中token消失,p3、p0中产生token,模型状态变为Ma=(1,0,1,1,0,0,0)。该状态下瞬时变迁t4使能,即该状态不是稳态,t4变迁点火后,模型状态变为M1=(1,0,1,1,0,0,1),表示***由于处理器1发生瞬时故障而失效。
在状态M1下,变迁t1使能,在t1点火后,库所p3、p0中token消失,p1、p5中产生token,模型状态变为Mb=(0,1,1,0,0,1,1)。该状态下瞬时变迁t5使能,即该状态不是稳态,t5变迁点火后,模型状态变为M0=(0,1,1,0,0,1,0),表示***由于处理器1瞬时故障修复而正常运行。
考虑变迁t2,即处理器2发生瞬时故障,库所p2、p5中token消失,p4、p0中产生token,模型状态变为Mc=(1,1,0,0,1,0,0)。该状态下瞬时变迁t4使能,即该状态不是稳态,t4变迁点火后,模型状态变为M2=(1,1,0,0,1,0,1),表示***由于处理器2发生瞬时故障而失效。
在状态M2下,变迁t3使能,在t3点火后,库所p4、p0中token消失,p2、p5中产生token,模型状态变为Mb=(0,1,1,0,0,1,1)。该状态下瞬时变迁t5使能,即该状态不是稳态,t5变迁点火后,模型状态变为M0=(0,1,1,0,0,1,0),表示***由于处理器2瞬时故障修复而正常运行。
考虑变迁t6,即***中其他串联同构部件发生故障,库所p5中token消失,p0中产生token,模型状态变为Md=(1,1,1,0,0,0,0)。该状态下瞬时变迁t4使能,即该状态不是稳态,t4变迁点火后,模型状态变为M3=(1,1,1,0,0,0,1),表示***由于其他串联同构部件发生故障而失效。
如图3所示,将上述模型状态与模型状态改变所点火的变迁相连,即为模型的可达图,该图中包含四个稳定状态M0,M1,M2,M3和四个非稳态Ma,Mb,Mc,Md。状态之间的有向弧为模型转换所需要的变迁。
按步骤6,如图4所示,将模型可达图中的非稳态去除,在图中的有向弧上加上模型的平均实施速率,即为模型的同构Markov链。
其中,变迁t0表示处理器1发生瞬时故障过程,平均实施速率为处理器1的故障率λ1,变迁t1表示处理器1故障自修复过程,平均实施速率为处理器1的修复率μ1,变迁t2表示处理器2发生瞬时故障过程,平均实施速率为处理器2的故障率λ2,变迁t3表示处理器2故障自修复过程,平均实施速率为处理器2的修复率μ2,变迁t6为其它等效串联部件发生故障过程,平均实施速率为各元件故障率之和λ
按步骤7,设p0(t)、p1(t)、p2(t)、p3(t)分别对应状态M0、M1、M2、M3的累计概率函数。
根据公式
Figure BDA0001849557970000061
其中:pi(t)即为第i个状态的累计概率函数,i=0,1,…,n;
t为时间;
Δt为时间增量;
P为***的状态转移矩阵。
参考图4,***的状态转移矩阵为
Figure BDA0001849557970000062
根据公式(1),(2)可列方程组
Figure BDA0001849557970000063
对方程组(3)进行拉普拉斯变换,解得状态M0的累计概率函数,所得p0(t)即为锁步***的可靠度函数,从而完成锁步***的可靠性分析。

Claims (1)

1.一种自修复处理器对锁步***的可靠性建模与分析方法,其特征在于,包括下述步骤:
步骤1:将锁步***的整体状态以及锁步***中自修复处理器的状态抽象成GSPN可靠性模型的库所集,库所集中的每一个元素分别对应一个不同的状态;将自修复处理器瞬时故障发生及修复的动作、锁步***中其它部件故障发生及修复的动作抽象成GSPN可靠性模型的变迁集,变迁集中的每一个元素分别对应一个不同的动作;完成建模对象分析;
步骤2:由于发生了GSPN可靠性模型变迁集中各元素对应的动作而使库所集中元素状态发生改变,从而形成了库所集与变迁集之间的关系,将这种关系抽象成库所集中元素和变迁集中元素之间的有向弧集和GSPN可靠性模型的点火变迁规则,完成建模事件和条件分析;
步骤3:将GSPN可靠性模型变迁集中表示故障发生动作的延时变迁元素的平均实施速率设置为对应的发生故障的部件的故障率,将GSPN可靠性模型变迁集中表示故障修复动作的延时变迁元素的平均实施速率设置为对应的修复故障的部件的修复率,完成变迁参数设置,由此得到锁步***的GSPN可靠性模型;
步骤4:根据锁步***中各部件的初始状态,对GSPN可靠性模型进行初始化,得到初始状态集,初始化规则为:状态集中元素数量和库所集相同,各元素的值为库所集中各元素在初始状态下所包含的token数量;
步骤5:针对步骤1至步骤3建立的GSPN可靠性模型,由GSPN可靠性模型的初始状态集及步骤2中获取的点火变迁规则,每产生一个变迁,库所集中与该变迁相关的元素状态就会发生变化,该元素所包含的token也会产生相应地变化,从而得到锁步***可达的所有状态,每种状态下库所集中各元素所包含的token数量用对应状态集进行记录,完成模型可达性分析;
步骤6:根据步骤5中完成的GSPN可靠性模型可达性分析,将GSPN可靠性模型的可达状态作为Markov链的顶点,可达状态之间的直达关系对应Markov链顶点间的有向弧,可达状态之间的可达关系对应Markov链顶点间的由多个有向弧组成的有向路径,构造GSPN可靠性模型同构Markov链;
步骤7:根据步骤6得到的GSPN可靠性模型同构Markov链,得到GSPN可靠性模型各可达状态的状态转移矩阵,由该状态转移矩阵可得到GSPN可靠性模型每个可达状态当前时刻的累计概率函数与下一时刻的累计概率函数之间的关系方程,对该方程采用拉普拉斯变换方法求解,得到锁步***的可靠度函数,从而完成锁步***的可靠性分析。
CN201811288291.3A 2018-10-31 2018-10-31 一种自修复处理器对锁步***的可靠性建模与分析方法 Active CN109508260B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811288291.3A CN109508260B (zh) 2018-10-31 2018-10-31 一种自修复处理器对锁步***的可靠性建模与分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811288291.3A CN109508260B (zh) 2018-10-31 2018-10-31 一种自修复处理器对锁步***的可靠性建模与分析方法

Publications (2)

Publication Number Publication Date
CN109508260A CN109508260A (zh) 2019-03-22
CN109508260B true CN109508260B (zh) 2021-11-12

Family

ID=65747277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811288291.3A Active CN109508260B (zh) 2018-10-31 2018-10-31 一种自修复处理器对锁步***的可靠性建模与分析方法

Country Status (1)

Country Link
CN (1) CN109508260B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110135636B (zh) * 2019-05-10 2021-04-20 北京理工大学 一种车间运行状态预测信息的获取方法、装置及***

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030005407A1 (en) * 2000-06-23 2003-01-02 Hines Kenneth J. System and method for coordination-centric design of software systems
DE102004051991A1 (de) * 2004-10-25 2006-04-27 Robert Bosch Gmbh Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms
US20060212677A1 (en) * 2005-03-15 2006-09-21 Intel Corporation Multicore processor having active and inactive execution cores
CN101901186B (zh) * 2010-07-08 2012-06-06 西北工业大学 一种嵌入式***可靠性分析与评估方法
CN103823748B (zh) * 2013-04-28 2017-04-19 电子科技大学 一种基于随机Petri网的分区软件可靠性分析方法
CN103632005B (zh) * 2013-12-04 2017-01-11 中国航空综合技术研究所 动态重构***故障重构过程的任务可靠性建模方法
CN105183700A (zh) * 2015-08-03 2015-12-23 浙江理工大学 基于Petri网和常微分方程组的并发***死锁分析方法
CN106599352B (zh) * 2016-11-07 2020-02-14 西北工业大学 一种飞机电传控制***可靠性分析方法
CN106933737A (zh) * 2017-01-19 2017-07-07 北京航空航天大学 一种基于时间扩展petri网的嵌入式软件可靠性评估方法

Also Published As

Publication number Publication date
CN109508260A (zh) 2019-03-22

Similar Documents

Publication Publication Date Title
Levitin et al. Reliability of non-repairable phased-mission systems with propagated failures
CN108376221B (zh) 一种基于aadl模型扩展的软件***安全性验证与评估方法
Raiteri et al. Repairable fault tree for the automatic evaluation of repair policies
US20070174746A1 (en) Tuning core voltages of processors
Kim et al. Availability modeling and analysis of a virtualized system using stochastic reward nets
CN109508260B (zh) 一种自修复处理器对锁步***的可靠性建模与分析方法
CN106909382B (zh) 输出不同类型***启动信息的方法及装置
Carreira et al. Why do some (weird) people inject faults?
Djambazova Achieving system reliability using reliability adjustment
Hecht Use of SysML to generate failure modes and effects analyses for microgrid control systems
Rennels Fault-tolerant computing
Vinter et al. On the design of robust integrators for fail-bounded control systems
CN113032260A (zh) 基于组件化分布式***的故障注入仿真测试方法及***
Guo et al. Maximize system reliability for long lasting and continuous applications
Kumar et al. Reliability analysis of N-policy vacation-based FTC system subject to standby switching failures
JP2008112229A (ja) ソフトウェア製品の更新データ適用方法
Na et al. Acceleration of Simulated Fault Injection Using a Checkpoint Forwarding Technique
Khosravi et al. System-level reliability analysis considering imperfect fault coverage
Armoush et al. Safety assessment of design patterns for safety-critical embedded systems
CN113434431B (zh) 一种基于fmea的证券期货行业软件可靠性测试设计方法
CN113688017B (zh) 多节点BeeGFS文件***自动化异常测试方法及装置
US11430534B2 (en) Method for testing storage systems, electronic device, and computer program product
Wang et al. A safety simulation analysis algorithm for Altarica language
Lee Availability of a redundant system with two parallel active components
Yi et al. Software-hardware interaction analysis based on Petri Net

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