摘要
在太空环境中,由于宇宙射线的存在,计算机系统的存储单元经常发生各种瞬态故障。此类故障通常都使用硬件或从系统角度加以解决,但其成本高重量大。针对此种故障类型提出了一种软件实现的数据流故障纠正算法,该算法通过对程序中变量进行简单编码和解码操作后,可对发生在程序数据空间内的单“位”错误进行检测并进而纠正。故障注入的实验结果表明,对于程序数据段错误,该算法可把错误输出从原始程序的27%~49%降低到0.01%~0.02%,同时故障纠正率接近100%;对于程序堆栈段错误,该算法可把错误输出从原始程序的10%~70%降低到1%~3%,故障纠正率也在73%以上。与其它软件实现的软故障检测或纠正算法相比,实验结果表明该算法实现简单,运算量小,具有较高的错误探测与纠正能力。
Computer systems operating in space environment are subject to different radiation phenomena, whose effects are often called "Soft Error". Generally, the radiation-hardened chips are used to break through these errors, but their costs are expensive and their performances are always lower than their counterparts. In this paper, a software-based approach for soft error correction is put forward. The technique is based on the coding and decoding of variables in programs to detect and correct the errors in them. By applying the proposed technique, several benchmark applications have been hardened against transient errors. Fault injection campaigns have been performed to evaluate the fault detection and correction capability of the proposed technique in com- parison with state-of-the-art alternative methods. Experimental results show that the proposed approach is far more effective than the other considered techniques in terms of fault correction capability, at the cost of a limited increase in memory requirements and in performance overhead.
出处
《宇航学报》
EI
CAS
CSCD
北大核心
2007年第4期1044-1048,共5页
Journal of Astronautics
基金
航天"十五"预研项目"星上弹上容错计算机系统可靠性评测技术的研究"资助(417010402)
关键词
软故障
数据容错
并行错误纠正
星载计算机
Soft error
Data error tolerance
Concurrent error correction
Single event upset