`
jgsj
  • 浏览: 962921 次
文章分类
社区版块
存档分类
最新评论

fault tolerance中的错误和故障检测(Error and Fault Detection Mechanisms)

 
阅读更多

这里的介绍来自论文Survey of Error and Fault Detection Mechanisms

下面这张图来自论文,反映了当今关于错误检测机制(Error Detection Mechanisms)的研究方向和分类:



ERROR:

error分为hard error(硬错误)和soft error(软错误)。hard error一般为制造和设计缺陷,而关于soft error,有两个来源:

1)高能粒子造成单粒子翻转(single event upset SEU),以及晶体管工作电压的减小降低了集成电路噪声容限从而使芯片更易受瞬态故障影响,我们称之为transient error(瞬态错误)

2)制造和运行过程中的variations带来的temporal timing violations,我们称之为intermittent error(间歇性错误)

其实,间歇性错误表现为瞬态错误的发生频率超过系统可靠性允许阈值范围。


内存中的检测机制

由于我们的程序和OS常驻内存(包括L1 cache和L2 cache),因此内存出错是让程序和系统不可靠的重要原因,比如指令序列被破坏。常用的解决内存错误的机制是使用ECC(error checking and correcting,错误检查和纠正)码。


电路级(circuit-level)是如何应对上面两种错误(transient error 和 intermittent error)

在高辐射环境(high-radiation environments),有一种fault-tolerant电路叫hardened circuit(抗辐射集成电路),以及通过监测合闸电流和供电电压来判断是否有意外事件的电路监控技术(circuit monitoring),都是来检测和应对transient error的技术。

由variation引发的间歇性timing errors属于intermittent error,Tunable Replica Circuits、Razor Flip-Flops、Transition Detectors和Temporal Redundancy是解决它的方法。

另外,三模冗余TMR(Triple ModularRedundancy)也是从电路架构的角度发现错误的一种方法,输入信号由完全相同的三个模块分别独立处理,每个模块产生一个运行结果交给决策器,由决策器判断并输出结果,但缺点是只能发现单个模块错误且没有重构策略来修复错误模块。

以三模冗余为代表的技术属于fault tolerance常用的技术——冗余技术,是能检测并纠正错误和故障的有效方法。其实上面应用于内存中的ECC,以及常用的奇偶校验码Parity,属于冗余技术中的信息冗余,相比于硬件冗余的大开销,它仅需要少量额外的存储字节和计算开销或少量的额外编码电路即可。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics