你的位置:EETOP 赛灵思(Xilinx) 社区 >> >> 全部 >> 详细内容

预防故障的设计--安全关键型系统规划需要密切关注硬件故障率和冗余

发布者:jackzhang 时间:2013-05-23 19:58:25

作者:Austin Lesea

首席工程师

赛灵思实验室

austin.leasea@xilinx.com

 

 

就安全关键型系统(飞机、火车、汽车等)或安全工业控制(风车、工厂蒸汽车间等)而言,设计人员必须考虑到诸多因素。首先,必须考虑到故障始终有可能发生,而且肯定会发生。[1]其次,当故障发生时,您的任务就是确保故障不会导致财产损失或人员伤亡。

 

商业系统发生故障,会带来不便或令人沮丧,然而安全关键型应用发生故障则后果非常可怕。因此故障安全系统的设计人员必须区分并采用适当的设计理念来消除或至少最大限度地减少故障的发生。

 

在服务器、路由器、电话系统、手机交换机或其它商业系统中,故障造成损失、破坏或危及生命的可能性极低。根据服务级别(受影响的客户数量)和设备用途(商业电话交换机或911呼叫中心),也有可能实施一套更严格的规定。然而,如果系统被视为非安全关键型系统,一旦出现故障,仅会造成服务损失,虽然令人不愉快,但仍可被接受。当然,故障率低的美誉有助于赢得客户的欢心并愿意为之付费。

 

下面我们在讨论无法接受故障的系统之前先来进一步看看可接受故障、仅意味着造成服务损失的系统。

 

发生故障也“OK”的系统

一般情况下,设计人员都希望尽可能加强设计的可靠性。可靠性季度报告[2]在表1-16中按技术分别列出了赛灵思FPGA器件的硬故障率。就7系列器件的硬故障率来说,截至2012822日为24 FIT(每10亿小时的故障次数)。这相当于每隔4,756年才会发生一次故障。假设我们现场部署1万个系统,那么一个客户遇到现场故障的频率平均为每174天出现一次。这就是基准,也就是假设系统只包含一个赛灵思28nm 7系列FPGA器件时(“没有其它特殊情况”)的故障率。然而,现在没有任何系统只包含一个组件。系统还会包含印刷电路板、电源、连接器、LED、开关等。

 

含有所有相关组件的典型系统,其使用寿命比含有单个赛灵思FPGA器件的系统要短得多。系统的典型故障率为100010000 FIT,而7系列FPGA仅仅只作为其中的一小部分。这相当于每隔114年或甚至每隔11.4年发生一次故障,也就是说每隔4天或甚至不到1天就会出现客户产品返修问题。仍要说明的一点是,在非安全关键型系统中,故障只会造成不便,不会造成人员伤亡或财产损失破坏。

 

不是所有组件的故障率都保持恒定不变。大多数器件的平均故障间隔时间都有一个所谓的“浴缸”曲线,即边缘陡峭而底部平坦。使用初始阶段的故障较后一阶段多,这就是所谓的“早期故障期”。初始阶段之后的较长时间内故障率较低,这就是所谓的“正常工作寿命”。接近组件使用寿命的末期时,故障率又开始增加,这就是所谓的“使用寿命终止”阶段。

 

比方说,一台笔记本电脑的一般使用寿命为3年,刚买之后和使用3年后的故障率最高,而在此期间的故障率要低得多。

 

赛灵思设计的商业和工业产品最低使用寿命为15年。根据结温不同,这一使用周期有长有短。可靠性和用户指南介绍了各种有关赛灵思FPGA使用寿命的详细信息。

 

发生故障不“OK”的系统

如果系统安全影响到生命或环境安全,那对故障率就有严格的规定要求。这种规定可能非常严,不过没有任何系统是完美的,任何设计也不可能做到绝对的安全,因此肯定会有故障率,要实现如此严格的故障率要求也会非常困难。

 

比方说风车的电源控制系统。风车一旦发生故障,可能导致风车的叶片掉落,设备彻底损坏,甚至可能导致附近的人员伤亡。让我们假设故障率为10 FIT,也就是每隔11,416年发生一次故障。首先我们要明确的是,没有任何单个设备的可靠性能达到这一标准要求,系统肯定要有某种形式的冗余。

 

由于组件的硬件故障率太高,无法满足要求,因此设计人员必须为所有关键组件、子系统和电源提供冗余系统,还要辅助其它方法才能确保不会发生故障。子系统的设计通常要保证一点,即使发生故障,也能保证一定的安全性。

 

不妨设想一下有两个完全独立的设备,每个设备的故障率均为10,000 FIT,二者都通过一个冗余通信通道相互校验(比方说每个系统中四线上的2UART作为通信通道)。单点故障为四线或UART,但任何故障均可被检测到,子装配件不能跟另一个子装配件进行通信,但系统仍能立即安全地彻底关断。

 

两个系统仍可能同时发生故障。这种可能性为每个系统故障可能性的乘积,即每隔1.3亿年出现一次同时发生故障。这样的性能水平应该能够满足要求。

 

再举一个例子。航天飞机采用5个冗余系统,只有这5个系统都没问题才能发射。发射后,只要5个系统中的3个可以工作,系统仍然被视为安全。同样,商用飞机在飞行控制中也采用三重冗余安全性。

 

我何时能完成工作?

设计人员通常忘了,可靠性是一项永无止尽的工作,除非已有明确规定的可靠性目标。就上述例子而言,如果赛灵思7系列产品某组件的软故障率(大气中子造成的软故障)为1 FITPicoBlaze™软处理器的实际故障率就是这样),那么设计人员该怎么办呢?通常而言只要这种故障率低于硬件故障率,就能实现很长时间的安全工作,可靠性任务就完成了。

 

如果最终系统不满足要求,那么或许是架构设计错了(比方说没有冗余)。

 

现在有标准了……

幸运的是,设计人员现在有了工业、航空、汽车、医学等其它系统的国际标准。[3]IEC 61508是适用于所有要求的最高级伞形标准,其下每个不同的行业都有自己的子标准。关于这些标准要记住的一点是,认证的不是组件制造商,而是要认证最终系统和最终系统的制造商。

 

要是有人声称出售给您的FPGA器件通过了26262认证(IEC汽车标准),那他肯定在说谎。同样地,说器件通过了DO-254飞机标准认证也是在说谎。要满足标准的是整个系统和它的设计,并不是组件。当然,如果系统中只有一个FPGA器件而没有别的,那自然很容易发现故障率。如果是赛灵思组件的话,查询UG116就行了。但现实情况绝非如此,因为所有系统都不止包含一个器件。

 

 

参考文献

 

1. “故障始终有可能发生”,Adam Savage,资料来源:Myth Bustershttp://www. brainyquote.com/quotes/quotes/a/adamsa vage207580.html

 

2. http://www.xilinx.com/support/docu- mentation/user_guides/ug116.pdf

 

3. 如需了解更多详情和有趣的阅读材料,敬请访问www.xilinx.com/applica- tions/aerospace-and-defense/avionics/。您在此可找到DO-254SEU白皮书。另一个有用的链接为:http://en.wikipedia.org/wiki/ IEC_61508

 

 

 

Austin Lesea毕业于加州大学伯克利分校,1974年获得电气工程与计算机科学系电磁理论专业理学士学位1975年获得通信和电气工程与计算机科学系通信与信息理论专业硕士学位。他在电信领域工作了20年,主要设计光学、微波和铜传输系统。Austin曾在赛灵思IC设计部工作过10年,主要开展Virtex®产品线工作。过去3年来他一直在赛灵思研究实验室工作,研究现有技术发展的问题。此外,Austin还拥有70专利。

 

最新课程

  • 深入浅出玩儿转FPGA

    本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念

  • 从零开始大战FPGA基础篇

    本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“

  • Verilog基础及典型数字

    课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了