一种低开销容错组合电路设计

一种容错组合电路设计

摘要

本文提出了一种基于完全自检系统且具有低开销的容错方案。该方案仅包含一个自检模块,另一个为单模模块(组合电路)。文中给出了对所提方案的可靠性分析。

1. 引言

在现代军事、航天、医疗等计算机系统中,对硬件可靠性的要求日益提高。提高系统可靠性的一种方法是采用容错技术。容错系统是指在发生故障的情况下仍能继续正确执行其指定任务的系统。实现容错通常需要引入某种冗余:硬件冗余、软件冗余、信息冗余或时间冗余。

提供容错特性的最常用技术之一是三重模块冗余(TMR)[1]。TMR 的基本思想是对电路进行三重复制,并通过多数表决来确定系统的输出。TMR 的主要难点在于表决器:如果表决器发生故障,整个系统就会失效,此外还有较高的面积开销。

文献 [2] 中提出了一种基于两个自检电路副本和错误掩蔽接口的容错系统。他们使用了两个检测器,以及一个包含触发器的、较为复杂的错误掩蔽接口。

论文 [3] 中提出了一种基于两个自检电路的容错组合或时序电路设计。该方案包括两个自检电路、一个自测试检测器,以及比 [2] 中更简单的错误掩蔽接口。这种可生存方案 [4] 能够为任何允许的瞬态或间歇性故障保持同步时序(组合)电路的正确行为。

本文提出了一种基于完全自检系统且具有低开销的容错方案,并与[2]和[3]中建议的架构进行了比较。与这些方案不同,我们的方案仅包含一个自检模块,另一个为单模模块(组合电路)。当发生任何允许的瞬态或间歇性故障时,该方案能够实现组合电路的正确行为。文中给出了对所提方案的可靠性分析。

本文的结构如下。第2节介绍了基本定义。第3节描述了容错方案。第4节给出了所提出方案的容错特性分析。第5节展示了不同方法可靠性的比较。最后,第6节得出了结论。

2. 基本定义

设系统F的无故障功能表示为输入x下的F(x, ∅)。令X和Y分别为输入和输出码字的集合。令V为预定义的故障集。

定义1. 当且仅当对于 ∀v ∈ V,存在至少一个输入码字使得 v 被检测到时,F 关于 V 是自测试的。

定义2。 F 关于 V 是故障安全的,当且仅当 ∀x ∈ X,∀v ∈ V,F(x, v) = F(x, ∅) 或 F(x,v) ∉ Y。

定义3. F 是码分离的当且仅当 ∀x₁ ∈ X,F(x₁, ∅) ∈ Y,且 ∀x₂ ∉ X,F(x₂, ∅) ∉ Y。

定义4. F 是完全自检的(TSC),如果它是自测试的且故障安全的。

定义5. F 是一个 TSC 检测器,如果它是自测试的、故障安全的并且是码分离的。

假设1。

1) 故障一次只发生一个;
2) 下一个故障在V中只有在前一个故障(无论是瞬态还是间歇性故障)消失后才会出现。

3. 一种基于自检电路的容错架构

我们建议使用图1所示的方案来实现容错系统。

此处TSC_CS1为完全自检电路,其实现建议采用已知技术之一,例如具有奇偶校验的完全自检电路[5, 6]或单向错误检测电路[7, 8]。X₁ = (x₁¹, x₁², …, x₁ⁿ) 是TSC_CS1的输入,Y₁ = (y₁¹, y₁², …, y₁ᵐ) 是TSC_CS1的主要输出,Z₁ = (y₁^{m+1}, …, y₁^{m+s}) 是TSC_CS1的附加输出,用于提供特殊编码。

CS2——实现系统主要功能的组合电路。我们建议使用任何低成本实现方式。为了提高系统的可靠性,可以对TSC_CS1和CS2采用不同的综合方法(例如,TSC_CS1使用或非门,CS2使用与非门)。这种方案可降低出现相同故障[9]的概率。X₂ = (x₂¹, x₂², …, x₂ⁿ) —— CS2的输入,Y₂ = (y₂¹, y₂², …, y₂ᵐ) —— CS2的主要输出。

TSC_Ch——完全自检的检测器[10–12]。该TSC检测器用于检测TSC_CS1(Y₁, Z₁)= (y₁¹, …, y₁ᵐ, y₁^{m+1}, …, y₁^{m+s}) 输出上的错误码字。该检测器具有两个以双轨形式表示的输出U=(u₁, u₂),即在无错误时为“01”或“10”,当检测到错误时为“00”和“11”。

MUX——一个具有输入u₁, u₂, Y₂, Y₁和1*Y的多路复用器。从分支点2到多路复用器相应输入端的附加线路上实现了双轨码(Y₁, 1*Y)。当(u₁, u₂)取值为 (01)或(10)时,该多路复用器将TSC_CS1 Y₁ = (y₁¹, …, y₁ᵐ)的输出连接到容错电路的主要输出Y = (y¹, …, yᵐ)以及值 (y₁¹, …, y₁ᵐ) = (1*y¹, …, 1*yᵐ);否则多路复用器将CS2 (y₂¹, …, y₂ᵐ)的输出与输出(y¹, …, yᵐ)连接起来。描述一条数据线i的多路复用器行为(表1)。

表1. 一个多路复用器在一条数据线 i 上的行为

u₁ u₂ y₁ⁱ 1*yⁱ y₂ⁱ yⁱ
0 1 0 0 y₂ⁱ
0 1 1 1 y₂ⁱ
0 1 1 0 1
0 1 0 1 0
1 0 0 0 y₂ⁱ
1 0 1 1 y₂ⁱ
1 0 1 0 1
1 0 0 1 0
0 0 y₂ⁱ
1 1 y₂ⁱ

4. 容错特性分析

我们考虑来自允许集合中任何不与假设1相矛盾的瞬态或间歇性故障,即故障一次只发生一个,且下一个来自允许集合的故障只能在前一个故障消失后出现。

注意,Vcs1为TSC_CS1的允许故障集,且在从分支点1到TSC_CS1输入X1的输入线路上存在单固定故障。当出现Vcs1中的任意故障时,电路TSC_CS1可能在输出端产生非码字(根据完全自检特性),该非码字将被检测器检测到,随后多路复用器将使用CS2的无错误输出。

设VCh为检测器的一组允许故障以及从TSC_CS1的输出(Y₁, Z₁)到TSC_CS1输入的输入线路上的单固定故障。当存在来自VCh的任何故障时,该检测器将在输出上产生错误指示信号(“00”,“11”)(通过完全自检特性)驱动多路复用器使用来自CS2的无错误输出。

设VCS2为电路CS2的任意故障集以及从分支点1到CS2输入端X2的输入线路中的单固定故障,和从CS2输出端Y₂到多路复用器输入端的输出线路中的单固定故障。在这种情况下,系统的其他部分是无故障的(根据假设1),且多路复用器使用来自TSC_CS2的无错误输出。

设Vpoint2为从分支点2到多路复用器输入端内部线路中的一组单固定故障(Y₁, 1*Y)。当Vpoint2中的故障出现时,多路复用器将CS2 (y₂¹, …, y₂ᵐ) 的无故障输出连接到输出端(y¹, …, yᵐ)。

设VMUX为多路复用器的允许故障集。这些故障可以改变来自集合Y₁的某些线路与集合Y₂中对应线路的连接。

不考虑主输入(x¹, x², …, xⁿ)和主要输出(y¹, …, yᵐ)上的故障。

注意 V = VCS1 ∪ VCh ∪ VCS2 ∪ Vpoint2 ∪ VMUX。

定理1. 在假设1下,来自V的任何故障均保持组合电路的行为。

5. 系统可靠性评估

让我们讨论一下三模冗余方案的可靠性以及基于自检的容错系统,其中一个向我们建议了来自[2]的另一个系统。

假设三模冗余表决机制在给定任务时间内的可靠性为R。假设单模模块的复杂度是表决器的T倍,则每个模块的可靠性为Rmodule = R^T。当表决器发生故障,或至少有两个模块发生故障时,系统性能将下降,因此三模冗余系统的可靠性为:

$$
R_{TMR} = R \cdot (3R^{2T} - 2R^{3T})
\tag{1}
$$

如[2]所假设,容错接口和表决器具有相同的可靠性R。还假设单模模块比容错接口复杂 倍,相应的自检模块比其单模对应模块复杂 δ倍。每个自检模块的可靠性定义为R^(δT)。当容错接口发生故障或两个副本同时发生故障时,整个自检系统性能下降,此时自检系统可靠性为:

$$
R_{SC1} = R \cdot (1 - 2R^{2δT} + R^{2δT})
\tag{2}
$$

为了计算我们容错系统的可靠性,让我们采用与[2]中相同的假设。整个自检系统的性能下降发生在以下情况:容错接口(MUX)发生故障,或者自检系统(TSC_CS1+TSC_Ch)和组合电路(CS2)同时发生故障。此时,自检系统的可靠性为:

$$
R_{SC2} = R + R^{(δ+1)T} - R^{(δ+1)T + 1}
\tag{3}
$$

在[13]中表明,当将复杂电路转换为自检电路时,硅表面积开销可达到10–84 percent的范围。为了在图2中将我们的方法与其他方法进行比较,分别绘制了单模模块(R_module)、三模冗余(R_tmr)、来自[2]的自检系统(R_sc1)以及我们提出的自检系统(R_sc2)的可靠性,其中R = 0.99,δ取值范围为1.2到1.6,以及不同模块复杂度T(10 ≤ T ≤ 150)。

图示表明,我们自检系统的可靠性高于其他系统。如果 δ = 1.8 [2],则自检系统的可靠性几乎与三模冗余的可靠性相同。

6. 结论

提出了一种基于完全自检系统的低开销容错方案。该方案仅包含一个自检模块和一个单模模块(组合电路)。当发生任何允许的瞬态或间歇性故障时,该方案能够实现组合电路的正确行为。对所提方案的可靠性分析表明,与其它方案相比,我们自检系统的可靠性更高。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值