李丹, 胡晓光
(北京航空航天大学 虚拟现实技术与系统国家重点实验室, 北京 100191)
武器装备实时测控系统冗余容错方法研究
李丹, 胡晓光
(北京航空航天大学 虚拟现实技术与系统国家重点实验室, 北京 100191)
针对武器装备实时测控系统中对高可靠性的需求,对应用较为广泛的武器装备紧凑型PCI总线测控系统的冗余容错问题进行了研究。构建了一种利用心跳检测联系主、备用设备的冗余设计方法,并在VxWorks实时操作系统中实现了高可用热插拔技术来提高系统的冗余容错性能。提出一种基于非精确计算理论的实时容错调度算法,将该算法实际应用于测控系统中来验证其对冗余容错性的提升。仿真与实验验证结果表明,该系统具有良好的冗余容错性能,该设计方法可以有效地提升系统的可靠性。
兵器科学与技术; 冗余; 容错; 可靠性; 非精确计算; 紧凑型PCI总线
现代战争对武器装备实时性、精确性的要求逐渐增加,测控系统所承受的负荷持续日渐加重[1],各测试端口对其稳定性的要求也大幅度提高。因此如何提高测控系统的可靠性,成了各国专家关注的焦点。目前国内外针对测控系统可靠性的研究主要集中在对实时性要求不高的民用系统方面,方法主要为建立单纯的硬件冗余系统或通过建立系统评估模型来分析计算系统的可靠性[2]。如徐文芳等[3]针对系统的硬件冗余容错设计出了三模冗余管理板,使嵌入式计算机系统实现了表决、重构与热备份等关键技术,增加了系统的可维修性。Suprasad等[4]对n取k的温备份冗余系统进行了建模分析,研究者以n个完全相同的单元为基础,对至少k个单元正常工作时的可靠性进行了分析。Al-Omari等[5]与朱晓敏等[6]采用主/副版本容错模型对容错调度算法进行了研究,其采用的多处理器或者分布式等硬件冗余方法可以有效屏蔽持久硬件故障产生的错误,采用时间冗余可以有效屏蔽暂时故障的影响,但其存在一定的主/副同步时间冗余问题,且在被动方式下的硬件利用率较低。因此针对实时性要求较高的武器装备测控系统而言,研究出一种能够保证系统实时性的冗余容错方法是当前迫切需要解决的问题。
本文针对目前武器装备测控系统中应用较为广泛的紧凑型PCI(CPCI)总线实时测控系统,提出了一套可用于实际操作的全面提升系统可靠性解决方案,主要表现在以下两个方面:1)全面改进 CPCI总线设备与系统软硬件结构,并利用高可用模式热插拔与热备份技术[7],使得测控系统具备热冗余与热备份功能,可以有效提高系统整体的运行与维护效率,增强系统的可靠性[8];2)针对CPCI测控系统实时性高和多任务类型造成的容错操作难以实现的困难,提出了一种基于非精确计算的容错思想。利用实时调度理论和非精确计算方法,在有限的时间内以最优的效果完成容错操作,在最大程度上保障系统的可靠性。
1.1 系统总体结构
对于测控系统而言,构造设备间的冗余关系是容错优化的主要思路之一。对于武器装备实时测控系统,若能将热冗余、热备份技术用于系统的冗余设计中,用以保证当硬件设备发生故障时,系统能够立即隔离故障部件并启用新部件接续此前因故中断的系统任务,则可以在很大程度上提高系统的可靠性。本文研制的高可靠性CPCI测控系统,即采用了先进的热冗余与热备份技术。如图1所示,其主要由上位机系统、下位机系统和相应的外测平台组成。上位机采用可视化程度好的Windows操作系统,下位机系统采用实时性强的VxWorks嵌入式实时多任务操作系统来构成,下位机的CPCI机箱内插入自行研发的用于实现特定功能的开关量输入板卡和串口通讯板卡来完成实现系统功能与冗余设计。VxWorks操作系统提供了高效的实时任务调度、内存块管理、中断管理、异常错误管理、实时的系统资源和实时的多任务间通信和同步的手段[9],其内部采用层次化的结构,可在系统下运行实时任务冗余容错调度算法,从而在保证系统实时性的情况下提高系统的可靠性。上位机和下位机之间采用TCP-IP协议进行通讯,系统同时对CPCI板卡的工作情况进行故障检测与诊断,当系统监测出正在工作中的主卡发生故障时,立即隔离主卡并启用备卡,让工作继续进行,保证数据不丢失。这样主卡和备卡就构成了一个热冗余系统,而及时准确地判断出工作板卡的状态就成了保证整个系统可靠性的另一个关键。
图1 系统总体结构Fig.1 Overall structure of system
1.2 心跳检测
本文提出采用一种心跳检测方法保证主卡与备卡联系并进行故障诊断。所谓心跳,指的是主从系统之间相互按照一定的时间间隔发送通讯信号,表明各自系统当前的运行状态。
如图2所示,板卡1的CPU(CPU1)正常工作时,处于Active(活跃)状态,并向处于Standby(冗余)状态的备用系统即板卡2的CPU(CPU2)发送心跳信号。一旦检测算法判定主卡系统发生故障,立即令主卡停止工作,并将系统资源转移到备卡系统上,备卡系统将替代主卡发挥作用,以保证运行不间断。此时工作状态切换,主卡系统处于Standby状态,备卡系统处于Active状态。此后需要将故障板卡及时拔出,进行维修和更换,并再次插入机箱中。
图2 主卡与备卡联系关系图Fig.2 Relation diagram of main and standby cards
快速、高效、准确的心跳检测算法是保证冗余容错效率的前提与基础,此处使用的是基于PULL模型建立的心跳检测算法。在PULL模型中检测的节点设备主动向被检测节点设备发送周期性的心跳信息,同时被检测的节点设备收到心跳信息后,将自己的心跳回复信息返回发送给检测设备,若检测设备在规定的时间内没有收到被检测节点设备的心跳回复信息,则判断被检测节点设备故障。
具体检测过程如图3所示。
图3 心跳检测时间进程Fig.3 Time course of heartbeat detection
1)运行心跳检验算法后,备卡程序进程每隔Δt时间便向主卡进程发送一次心跳信息,λi为心跳信息的发送时刻。
2)主卡在φi时刻接收到了备卡发送的心跳信息后立即向备卡回复自己的状态信息。δi为主卡接收到心跳信息并向备卡发送自己心跳信息的时刻,αi为备卡接收到主卡心跳信息并处理的时刻。
3)若在Δt的时间间隔内,备卡未收到主卡心跳信息或收到信息错误,则判定主卡工作状态异常。
如图3所示的备卡进程在λi+3时刻仍未收到主卡回应的心跳信息,则判定主卡工作故障,立即启用备卡接替主卡继续工作。
在备份卡替代故障卡后,需要将故障卡及时拔出后进行替换或修理,另外在有些情况下需要把正在工作中的卡进行插拔操作,这种对运行的板卡任意拔插的操作,需要热拔插的3个等级中(基本热插拔、完全热插拔、高可用热插拔)的最高等级标准——高可用热插拔技术的支持。本文采用高可用模式下的热插拔技术来解决测控系统热冗余热备份的硬件问题。
以往的CPCI双冗余系统,不具备热插拔功能,为不可修冗余系统。即两个相同设备接入系统中工作,设备发生故障后不可即时替换、维修,只能切换到备用设备继续工作,当主设备与备用设备依次都发生故障后,系统只能停止工作。而采用了热插拔技术的CPCI双冗余系统,可在一个设备发生故障后随时替换、维修,为双冗余可修CPCI系统。
1.3 基于马尔可夫模型的系统可靠性分析
通过建立马尔可夫模型来对双冗余不可修系统与可修系统的可靠性进行分析比较。
马尔可夫模型建立的前提为:
1)初始状态所有设备都是新的;
2)当系统中有一个设备处于工作状态,另一个处于备用工作状态的设备不会损坏;
3)损坏的设备在修好之后是全新的,概率分布保持不变,且将其立即投入到系统中运行;
4)同一时刻只能有一个设备处于修理状态,若出现两个设备依次都损坏的情况,则按损坏先后顺序进行修理。
把双冗余系统中某个设备可能存在的状态列为如下3种情况:
状态0,系统主、备设备均工作正常,整个系统运行无故障;
状态1,系统中存在一个故障设备,整个系统运行无故障;
状态2,系统中主、备设备均出现故障,整个系统故障。
设双机系统的失效分布和维修分布均服从指数分布,其失效率和维修率分别为λ和μ. 设每个设备的可靠性为随机变量X,X服从参数为λ的指数分布;设备的可维修性设为随机变量Y,Y服从参数μ的指数分布。即
X~F(t)= 1-e-λt, 0<λ<1,t≥0;
(1)
Y~H(t)=1-e-μt, 0<μ<1,t≥0.
(2)
其状态转移过程如图4所示。
图4 双冗余可修系统状态转移图Fig.4 State transition diagram of dual-redundant repairable system
根据状态转移图可以得出双冗余可修系统的状态转移概率矩阵
(3)
求得系统的瞬时可用度为
(4)
式中:s1、s2是方程(5)式的两个实根,
s2+(3λ+2μ-λ2-2λμ)s+2λμ-2λ2μ+2λ2-
λ3+μ2-λμ2=0.
(5)
双冗余并联不可修系统状态转移过程图如图5所示。
图5 双冗余不可修状态转移图Fig.5 State transition diagram of dual-redundant unrepairable system
同理,根据状态转移图得出转移概率矩阵为
(6)
得到系统的可用度为
Aur(t)=2e-λt-e(λ2-2λ)t.
(7)
利用Matlab对双冗余可修系统与不可修系统的可靠性,即系统可用度进行仿真。设时间t从0~100按照步长为1采样,假设设备失效率λ=0.01,设备可维修率μ=0.1,在实际系统中,设备失效率会远大于0.01,设备可维修率会远大于0.1. 将数值代入(4)式、(5)式、(7)式中可得(计算结果保留至小数点后第8位)
s1=-0.083 856 77,s2=-0.144 043 23,
Ar(t)=0.991 803 957+0.035 786 173e-0.083 856 77t-
0.020 139 182e-0.144 043 23t,
(8)
Aur(t)=2e-0.01t-e-0.019 9t.
(9)
从图6可以看出,双冗余可修系统和不可修系统的系统可用度随着的时间的推移不断降低,但双冗余可修系统的系统可用度明显比不可修系统下降缓慢,且至后期基本稳定。由此可以看出,采用双冗余可修系统对提高系统的可靠性有着明显的功效。
图6 系统可靠性仿真Fig.6 System reliability
2.1 算法优势
传统的冗余容错算法,通常是通过预留空闲处理器时间来满足任务的正常运行和容错操作[10-12],但对于武器装备测控系统,由于其工作期间的实时任务量大、处理器利用率高,仅依赖预留空闲时间的办法往往会有很大的局限性:一是预留过多的时间会对系统的实时性造成影响;二是针对不同类型的任务,预留的时间往往很难准确估计。在武器装备测控系统实际运行过程中,为了充分顾及系统的实时性,有些情况下往往仅需满足最低需要输出即可。例如某武器攻击系统对目标信号的探测,对信号的处理时间越长,对目标的打击会越准确,在一些特定的情况下,由于某些原因造成当前完整的信号处理计算无法在时限内完成,但由于该系统的杀伤面积是有一定大的范围,故若能满足规定的最低计算精度,其结果可以接受,这种满足最低要求的处理方式称为非精确计算。
2.2 系统模型
采用非精确计算的实时系统将任务分割为两部分:强制执行部分M和可选执行部分O.M必须在任务的时限到来前结束,以保证该任务的输出满足用户的基本功能要求。O的执行有两种选择:要么完全执行,要么完全放弃,若O在时限到来前运行完,则称该任务实现精确计算。实时任务运行中,若M出错,则要进行容错处理,如重新执行;若O出错,则放弃,因为M的输出已能满足用户的基本需求。在这种情况下,实时任务只要在时限到来前完成M的正确运行即可,而容错操作所占用的处理器时间可以由处理器空闲时间和O占用的时间共同提供。
本文提出的非精确计算的容错实时调度算法以最早截止时间优先(EDF)算法为基本调度算法。EDF调度算法是按实时任务截止期的远近来分配优先级,任何时刻总是运行优先级最高的任务,也就是优先运行最紧迫的任务。EDF对于硬实时周期任务或硬实时非周期任务的调度来说都是最优的动态优先级调度算法[13]。将非精确计算理论应用于EDF算法的改进[14],可以有效地提高系统的吞吐量和资源利用率。
基于非精确计算的容错EDF(IC-FT-EDF)实时任务集的模型可以表述如下:本文中用τi表示任务,Ci表示实时任务的最坏执行时间,则存在任务集S(τ1,τ2,…,τn)。所有实时任务必须满足以下限制条件:
1)所有实时任务均为周期任务,且周期大于或等于时限;
2)所有实时任务必须在其时限到来前结束;
3)所有实时任务相互独立;
4)所有实时任务均具有恒定的运行时问。
所有任务按照其周期值由小到大排列为T1≤T2≤…≤Tn,其任务优先级是按照其任务时限与当前时刻的距离来决定,距离越近则优先级越高。按照非精确计算的特点,将每个任务τi分为强制执行部分Mi和可选执行部分Oi,mi和oi分别为Mi和Oi的运行时问,Oi只能在Mi完成后开始,则最坏执行时间Ci为任务执行了强制执行部分后还执行了可选执行部分,即Ci=mi+oi.Oi的执行按0/1决定,即只能选择完全执行和完全放弃两种方式。
2.3 基于IC-FT-EDF可调度条件
对于任何一个实时调度算法,其可调度条件都是算法的关键所在。根据容错EDF(FT-EDF)的设计目标,在Tn-1+Tn内,冗余的处理器资源要保证一次容错操作,且所有任务均需满足时限要求。
针对FT-EDF调度,若实时任务集满足
(10)
则必可由FT-EDF调度。
将(10)式根据非精确计算特性进行改写,若实时任务集满足
(11)
则可以进行基于IC-FT-EDF调度。
为了验证(11)式的正确性,对(11)式进行证明:设周期实时任务集S(τ1(T1,C1),τ2(T2,C2),…,τn(Tn,Cn)),根据系统模型的定义,T1≤T2≤…≤Tn,任务间相互独立。每个任务τi在其每个周期kTi(k=1,2,…,i)边界上就绪,在下一个周期边界(k+1)Ti必须结束运行。为了证明满足该可调度条件的实时任务集,能够实现单个错误的容错,其实就是证明以下两个命题条件:1)任务出错时,本调度算法必须保证该任务在时限到来前完成再次运行;2)任意出错任务的再次运行不能导致其他任务的运行超过时限。
关于条件1的证明,经典的参考文献[15]已经给出“从所有任务同时就绪开始,调度算法只要能满足关键实例的时限,就能满足后面所有时限的要求”和“只要任务集的资源利用率小于1,则必能由EDF调度”的证明。基于该证明的结果,对于条件1的情况来说,关键的实例为优先级高于出错任务的任务,故只需考虑优先级高于出错任务的任务对出错任务的影响。设在第e个任务出错,从所有任务同时就绪开始,当出错任务τe完成再次运行后,其处理器的运行时间与Te的比值为
(12)
因此,根据(12)式,若满足
(13)
则必可满足条件1.
同理,对于条件2的情况来说,关键的任务为比当前优先级高的任务中执行时间最长的任务,故只需考虑该任务进行的容错操作即可。从所有任务同时就绪开始,当前任务τi完成运行后,其处理器的运行时间与Ti的比值为
(14)
因此,根据(14)式,若满足
(15)
则必满足条件2. 取表达式(13)式和(15)式的最大值,得
(16)
实时任务集S满足(16)式,则必可由基于IC-FT-EDF算法进行调度。
2.4 冗余容错策略和调度算法
对于满足调度条件的实时任务集,EDF算法是按照任务优先级分配处理器资源,保证所有的任务都满足时限的要求,冗余的处理器资源由所有任务共享,特别适用于资源利用率高的实时应用。由于其容错设计目标是在Tn-1+Tn内要保证一次容错操作且所有任务满足时限要求,故在两个连续的最大周期边界[kTn,(k+1)Tn]内,冗余的处理器资源为max (Ci),i∈S,又因为根据非精确计算理论,为节省处理器资源,容错操作只需完成基本任务即可,即冗余的处理器资源为max (Mi),i∈S. 在系统运行时,若当前执行的任务τi出错,则调度该任务再次运行。在容错处理中,若新就绪的任务τj的优先级高于τi,则τj抢占τi. 任务的优先级用D表示,其算法如下:
Queue Ready Q;
1)事件:An instance ofτiis end
Ifτiis False
Then Call Retry ( );
Else
Dispatch ( );
Endif
2)事件:New instance of taskτjarrives
IFDJ≥DI
Then Insertτjto Ready Q;
Else
Insertτito Ready Q;
Runτj;
Endif
基于非精确计算理论的FT-EDF通过效率较高的算法,解决了任务的容错问题,同时保证了系统正常工作时的工作效率。
3.1 实例分析
用一个测控系统CPCI板卡工作实例来进一步分析基于IC-FT-EDF实时调度算法的优越性。设周期实时任务集S的参数如下:
τ1:C1=1.0,M1=0.6,O1=0.4,T1=8.0;
τ2:C2=2.0,M2=1.0,O2=1.0,T2=8.0;
τ3:C3=2.0,M3=1.5,O3=0.5,T3=10.0;
τ4:C4=3.0,M4=1.5,O4=1.5,T4=12.0.
根据上述参数,由(10式)和(16)式可算出,FT-EDF和基于IC-FT-EDF的可调度条件参数分别为
(17)
=0.95.
(18)
可见,在该条件下,UFT-EDF>1而UIC-FT-EDF<1,因此该实时任务集对于FT-EDF无法调度,但对IC-FT-EDF则是可行的。
显然,对于可以采用非精确计算的实时任务集,IC-FT-EDF在同等情况下比FT-EDF更容易满足可调度条件,因而具有更为广泛的适用范围。
3.2 算法的模拟与分析
算法的模拟与分析是对冗余容错算法评价的重要方法,本文利用自建的算法模拟仿真平台对EDF算法、FT-EDF算法和IC-FT-EDF算法进行仿真与比较分析。实验以任务丢失率作为评价标准,针对这3种算法在同等条件下的任务丢失率来进行比较分析。
国内外对算法模拟平台有多种不同的实现形式,本文采用基于事件驱动的方式加以实现。事件驱动方式具有与底层平台无关联性的特点,其在任何系统上运行均能获得同样的效果,具有一定的普遍性意义。该平台模拟实时任务集的运行环境,根据实验者设定输入的参数来创建相应的实时任务集,利用任务集来模拟在相应算法调度下的运行情况。该平台根据当前时间、上一个错误出现的时间和平均无故障时间(MTTF)来判断当前任务的运行结果是否正确。设处理器运行任务的最大时间为WCT,其与任务处理器运行的最大时间M的比值为M/WCT.
为了验证EDF、FT-EDF与IC-FT-EDF在不同负载情况下的任务丢失率。本实验采用的任务利用率在0.15~0.25的范围内,平均无故障时间设为100,其任务的M/WCT为0.7~0.8的范围内。实验结果如图7所示,本文提出的IC-FT-EDF算法的任务丢失率明显低于EDF算法和FT-EDF算法,验证了该算法的先进性。
图7 任务丢失率比较Fig.7 Comparison of task loss rates
3.3 实验验证
在CPCI测控系统中利用IC-FT-EDF算法来检验实时任务集热冗余与容错性能。实验装置由上位机(Windows PC机)、下位机(美国NI公司双核嵌入式VxWorks机)和自制的外测平台所构成,如图8所示。
图8 冗余容错系统测试平台Fig.8 The test platform of redundant fault-tolerance system
实验时运用到插入到机箱内自行研发的两块相同串口通讯板卡和一块开关量输出板卡,开关量输出卡为32位开关量输出至外测平台,串口卡为16位数据通讯,设置外测平台仅将接收到开关量输出卡的高16位数据输出至串口卡。设置任务1:开关量输出卡向外测平台输出开关量;任务2:串口卡接收外测平台数据进行通讯;任务3:心跳信号检测程序监控主卡状态以便随时做热替换。每项任务都设有强制执行任务和可选执行任务。强制执行任务为完成基本功能的任务,可选执行任务为一些不重要的任务(如一些非关键配置信息的初始化)。两块串口通讯板卡一块处于工作状态(主卡),另一块处于热储备状态(备卡)。多功能串口板卡设有两个通道,本实验均在通道1中进行。利用开关量输出板卡向外测平台发送如下数据:0x00010000、0x00030000、0x0007000. 为了验证该冗余系统的可靠性,在主卡正在进行读数过程中,模拟主卡发生故障的情况,将主卡突然拔出机箱,系统监测到主卡发生故障的紧急情况,采用IC-FT-EDF算法来节省任务量,舍弃任务2、任务3的可选执行部分,只执行强制执行部分,主卡被安全移除,立即启用备卡接替主卡来工作,如图9所示。
图9 主卡安全移除Fig.9 Safely moved main card
在多功能串口板卡界面,点击通道1“读取FIFO”按钮;可观测到备卡工作状态正常,读取数据正确,对板卡的拔出操作并没有对读数工作造成任何影响。由于之前主卡读取数据后,已将数据及时上传,故启用了备用板卡后,跟原先的主卡一直工作没有区别。
再次将主卡插入机箱,模拟正式工作中对板卡检修完毕,让主卡再次进入系统以作热备份的场景,系统发现新板卡后立即进行处理,如图10所示。这时为了节省时间,使主卡迅速完成初始化进入热备份工作状态的同时可以保证备卡的正常数据传输工作,系统采用了IC-FT-EDF算法来舍弃任务的可选操作。开关量输出板卡所即时发送数据(0x0005000、0x000D0000、0x00870000)与串口卡备卡通道1收到的数据一致,系统工作正常。VxWorks工作界面如图11所示。
图10 主卡再次进入系统Fig.10 Main card returning into system
图11 Vxworks工作界面Fig.11 Operating interface of Vxworks
通过以上实验,证明了应用IC-FT-EDF算法的CPCI测控系统可以有效地提高系统的冗余容错特性,对提升系统的可靠性具有一定贡献。
本文针对武器装备实时测控系统的高可靠性需求, 对目前应用较为广泛的CPCI测控系统的冗余容错问题进行了研究,提出了一种利用心跳检测相联系主、备卡系统的高可靠性CPCI冗余容错测控系统的构建方法,并分析了利用热插拔技术构建双冗余可修系统从而提高系统可靠性的理论依据。在软件容错方面提出了基于非精确计算理论的IC-FT-EDF实时容错调度算法,将该算法实际应用于测控系统来验证其对冗余容错性能的提升。实例分析与实验结果表明,将该方法应用到武器装备CPCI多任务实时系统中可以有效地实现冗余容错。本文的研究对其他类型武器装备测控系统冗余容错升级改造也具有一定的借鉴价值。
References)
[1] 盖京波, 孔耀. 基于物理特性参数的可靠性评估[J]. 兵工学报, 2015, 36(6): 1104-1109. GAI Jing-bo, KONG Yao. Reliability assessment based on physical parameters[J]. Acta Armamentarii, 2015, 36(6): 1104-1109. (in Chinese)
[2] 万磊, 张英浩, 孙玉山, 等. 基于重构容错的智能水下机器人定深运动控制[J]. 兵工学报, 2015, 36(4):723-730. WAN Lei, ZHANG Ying-hao, SUN Yu-shan, et al. AUV's depth control based on reconstructive fault-tolerant control[J]. Acta Armamentarii, 2015,36(4):723-730. (in Chinese)
[3] 徐文芳, 刘宏伟, 舒燕君, 等. 三模冗余容错系统管理板[J]. 清华大学学报:自然科学版, 2011, 51(6): 1434-1439. XU Wen-fang, LIU Hong-wei, SHU Yan-jun, et al. Management board for triple module redundant fault-tolerance system[J]. Journal of Tsinghua University: Science and Technology, 2011, 51(6): 1434-1439. (in Chinese)
[4] Suprasad V A, Ravindra B M. Reliability characteristics of k-out-of-n warm standby systems[J]. IEEE Transactions on Reliability, 2012, 61(4): 1007-1018.
[5] Al-Omari R, Somani A K, Manimaran G. Efficient overloading techniques for primary-backup scheduling in real-time systems[J]. Journal of Parallel and Distributed Computing, 2004, 64(5): 629-648.
[6] 朱晓敏, 王建江, 王吉, 等. 面向容错的对地观测卫星实时任务调度研究[J].电子学报, 2015, 43(8):1471-1480. ZHU Xiao-min, WANG Jian-jiang, WANG Ji, et al. Fault-tolerance oriented real-time task scheduling on multiple earth-observing satellites[J]. Acta Electronica Sinica, 2015, 43(8): 1471-1480. (in Chinese)
[7] 邹德清, 向军, 张晓旭, 等. 基于Remus的双机热备份优化机制研究[J].山东大学学报:理学版, 2014, 49(9):50-55,61. ZOU De-qing, XIANG Jun, ZHANG Xiao-xu, et al. Optimization research of hot standy with Remus[J]. Journal of Shandong University: Natural Science, 2014, 49(9): 50-55, 61. (in Chinese)
[8] Jain M, Gupta R. Redundancy issues in software and hardware systems: an overview[J]. International Journal of Reliability, Quality and Safety Engineering, 2011, 18(1): 61-98.
[9] 贺庚贤, 李俊霖, 宁飞. 星务仿真系统高精度时标设计[J]. 电子测量与仪器学报, 2014, 28(8):827-835. HE Geng-xian, LI Jun-lin, NING Fei. Design of for new housekeeping simulation system’s high accuracy time synchronization[J]. Journal of Electronic Measurement and Instrument, 2014, 28(8): 827-835. (in Chinese)
[10] Beitollahi H, Miremadi S G, Deconinck G. Fault-tolerant earliest-deadline-first scheduling algorithm[C]∥21st International Parallel and Distributed Processing Symposium. Long Beach, CA, US: IEEE, 2007.
[11] Abhaya K S, Rajib M, Chittaranjan T. Fault tolerant scheduling of hard real-time tasks on multiprocessor system using a hybrid genetic algorithm [J].Swarm and Evolutionary Computation, 2014, 14(10): 92-105.
[12] Risat M P. Fault-tolerant and real-time scheduling for mixed-criticality systems [J]. Real-Time Systems, 2014, 50(4): 509-547.
[13] He Z Z, Men C G, Chen Y J, et al. Schedulability of fault tolerant real time system based on local optimum checkpoint under priority mixed strategy [J]. Chinese Journal of Electronics,2015, 24(2): 236-244.
[14] Rivas J M, Javier G J, Carlos P J, et al. Deadline assignment in EDF schedulers for real-time distributed systems [J]. IEEE Transactions on Parallel and Distributed Systems,2015, 26(10): 2671-2684.
[15] Liu C L, Layland J W. Scheduling algorithms for multiprogramming in a hard-real-time environment[J]. Journal of the Association for Computing Machinery, 1973, 20(1): 46-61.
Redundant Fault-tolerant Method for Real-time Measurement and Control System of Weapons and Equipment
LI Dan, HU Xiao-guang
(State Key Laboratory of Virtual Reality Technology and Systems, Beihang University, Beijing 100191, China)
A redundant fault-tolerant issue of a measurement and control system with compact PCI bus is studied to satisfy the requirements for high reliability of real-time measurement and control system. A redundancy design method is constructed, in which a heartbeat detection is used to connect the main and backup devices. And the high available hot-swap technology based on VxWorks real-time system is used to improve the redundant fault-tolerant capability of the system. A real-time fault-tolerance scheduling algorithm based on imprecise computation theory is proposed. The proposed algorithm is used for the measurement and control system to verify its improvement for redundant fault-tolerance. Simulated and experimental results show that the system can satisfy the requirements of redundancy and fault tolerance. The design method can effectively improve the reliability of the system.
ordnance science and technology; redundancy; fault-tolerance; reliability; imprecise computation; compact PCI bus
2016-03-28
航空科学基金项目(2015ZC51032)
李丹(1986—), 男, 博士研究生。E-mail: lidanbuaa@sina.com; 胡晓光(1961—), 女, 教授, 博士生导师。E-mail: xiaoguang@buaa.edu.cn
TJ06
A
1000-1093(2016)11-2066-09
10.3969/j.issn.1000-1093.2016.11.015