高可靠性设备设计

上传人:kms****20 文档编号:40566730 上传时间:2018-05-26 格式:DOC 页数:9 大小:32KB
返回 下载 相关 举报
高可靠性设备设计_第1页
第1页 / 共9页
高可靠性设备设计_第2页
第2页 / 共9页
高可靠性设备设计_第3页
第3页 / 共9页
高可靠性设备设计_第4页
第4页 / 共9页
高可靠性设备设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《高可靠性设备设计》由会员分享,可在线阅读,更多相关《高可靠性设备设计(9页珍藏版)》请在金锄头文库上搜索。

1、高可靠性设备设计高可靠性设备设计水木清华 - 文章阅读 讨论区: Circuit发信人: yueyar (强身健体.), 信区: Circuit 标 题: 如何设计高可靠性的设备(转载)发信站: BBS 水木清华站 (Tue Sep 3 16:07:16 2002), 站内信件转自 ednc。如何设计高可靠性的设备 作者:Warren Webb,技术编辑由于用户开始放心地让电子设备去收集关键信息和进行实时事务处理,对超可靠系统的需求正在从企业级扩展到整个嵌入系统领域。随着当今嵌入设计中应用日益复杂,容错和可用性高业已成为标准的系统要求。最可靠设备的典型技术规范要求正常运行时间达到 99.999

2、%,航天、医疗、汽车和电信领域的有些用户认为这样的性能水平也是不能接受的。嵌入系统设计师认为,尽管因故障而停机会付出高昂的代价,甚至可能威胁人的生命安全,但是所有系统随时都会出现故障。高可用性系统设计的高明之处在于经济地处置不可避免的故障,从而确保不中断基本的嵌入功能或服务,或者将这种中断减至最少程度。虽然任何一个嵌入系统都是旨在完成某一项任务或为用户提供某一种服务而设计的,但是高可用性系统被称为对任务、对收益或对安全起关键作用的系统,以表明其可靠性的重要意义。一个系统的可用性通常用它所提供的服务来表述;你中断这些服务,可能有种种原因,例如:硬件故障;操作系统故障;应用软件故障;操作员出错;外

3、部影响,如断电;以及计划中的维修。高可用性系统采用了各种内置技术,以便在这些硬件或软件发生故障时仍然能够连续地提供服务。可用性是系统可靠性和恢复运行所需要时间的函数。换一种说法,可用性就是某种服务或系统随时可以使用的概率。可靠性是系统的连续正常运行时间的测度,通常以平均无故障工作时间(MTBF)来表示。硬件制造商根据某一产品或系统中所用部件的统计故障率来推导出 MTBF 的理论计算值。MIL-HDBK-217 和 Bellcore TR-332 是人们公认的用来进行硬件可靠性预测的标准中的两种。可用性的第 2 个要素是在发生故障后使一个系统恢复正常运行所需要的时间。这一修复时间又称平均修复时间

4、(MTTR) 。即使一个系统频繁地出故障,只要你能够快速地使它恢复工作,该系统仍然具有很高的可用性。可用性的表达式为:可用性 平均无故障工作时间 / (平均无故障工作时间平均修复时间)。即 可用性MTBF/(MTBF+MTTR)。如果系统能够在 99.999 % 时间里提供不间断的服务,则一般称该系统为高可用性系统。99.999%,常常称为“五个 9” ,相当于每年的停机时间大约 5 分钟。有些新的通信交换设备规范则要求“六个 9” ,即 99.9999 %,也就是说每年的停机时间约 30 秒钟。延长平均无故障工作时间提高可靠性的最基本方法之一是审查你的系统中各个电路的设计。只要保证你的设计中

5、所有的元器件在其规定的工作范围内正常工作,就能消除许多故障。改进可靠性的另一种方法是用牢固的固态器件取代故障率较高的器件,如旋转式存储器。你可以在设计交付生产之前使用电路仿真工具来发现未被怀疑的高应力元件。另外,你也可以通过改善电路的冷却方法和加大空气流量来帮助散热,从而延长平均无故障工作时间。在将系统投入运行之前,通过极端温度、湿度和震动等形式的环境应力试验筛选,也可以发现早期的故障。除了认真仔细地设计电路以外,你可以采用容错技术,以便你的系统存在故障时仍可继续工作。对于硬件来说,只要给系统增加备份元件就可实现容错。备份的最基本方法就是给系统增加一个部件。所增加的部件到主部件出故障时才工作,

6、这种方法被称作“备用”或“带电备份” 。这种系统需要一个电路或软件来确定哪些部件在工作,哪些部件是备用的。负载共享是备用系统的延伸,它使用冗余硬件来提供部分服务。采用此方式时,如果所有部件都正常工作,则系统提供某一等级的服务;如果其中一个冗余部件出现故障,则系统提供较低等级但仍然令人满意的服务。实现高可用性的另一种经典方法,是利用两个或 3 个同样的电路,并用最后检查的办法来比较每个电路的结果。如采用两个电路,则要识别出故障;如采用 3 个电路,则只要使用两个电路的相一致的结果,就可以继续运行。在设计冗余部件时,你必须考虑故障的范围,以保证一个故障不会导致备用部件也无法工作。有几种故障会影响多

7、块电路板,因为与背板信号直接有关的任何故障可能会中断所有的数据传输。基于总线的系统中出现的故障,就是这几种故障的主要实例。系统供应商采用两块背板和自动切换装置来解决总线类型的故障。譬如,SBS 技术公司出产的 Cascade II 高可用性电信系统使用了两台单板计算机、一个看门狗报警模块、可热插拔的备份电源以及两条独立的 64 位、33 MHz Compact PCI总线(图 1) 。群集计算 如果你的高可用性系统恰好是一个完整的计算机系统,如一个提供信息交付服务的服务器,你就可以将多个系统组合成一个群集器,由此来提高可靠性。群集器也可以通过将计算负载分配给多个节点,来提高一个系统的性能。管理

8、软件自动地将出现故障的节点从群集器中撤除,并将计算任务转交给另一个节点。这样,整个群集器继续提供所需要的服务,但是其性能水平有所降低。这种群集器方式的一个优点是,单个计算机系统可以是低成本的现成设备,并成为整个群集器中的各个节点。虽然现在有许许多多商用群集软件产品,但你也可以通过Linux 高可用性工程(www.linux-ha.org) 获得建立一个低成本高可靠性群集服务器所需要的每一步指令。这个开放性软件工程提供 Heartbeat,这是一个 Linux 附件,用于在群集系统中进行自动资源分配、系统监控和 IP 地址管理等任务。编码方案是提高数据处理系统可靠性的另一种重要方法。奇偶校验位和

9、循环冗余码校验(CRC)字节都给数据流增加冗余信息,以检测字或块的差错。这样,通信系统可以增加基于时间的冗余度,亦即接收机检测到一个差错,发射机就重发某个消息。高可靠性系统也可以采用自纠错编码,即给数据流增加足够的冗余信息,一旦在传输过程中丢失信息,接收机就可以恢复原数据。当一个系统发生故障时,你的第一个念头是寻找硬件故障。然而,由于当今的系统很复杂,问题很可能就是软件故障。实际上,在设计高可用性系统时,你在分析软件可能出现故障上所花费的时间应当与分析硬件故障上花费的时间一样多。软件可靠性与硬件可靠性的不同之处在于软件可靠性不会随时间的推移而降低。事实上,软件通常随时间的推移而更加可靠,因为程

10、序错误会被人们所识别并得到改正。与硬件故障不同,软件故障基本上都是设计错误,更难发现和改正。如果你能用多种方法来实现软件的各个组成部分,那你也可以使用冗余技术来实现容错。因为大多数软件错误只在某些定时或加载的条件下出现,而这些错误在验证测试时并没有显露出来,因此,高可用性软件开发单位有时会指派两个或两个以上的独立设计小组去实现同一代码。形式多样的容错技术,尽管有五花八门的名称,如恢复程序块、N 版本编程和 N 自检验编程,但都试图利用设计的多样性来达到对软件的完全容错性。最广泛使用的软件容错方法是将计算负载分配给联网或群集的多台机器。分布式应用软件程序依赖于中间件(例如 Object Mana

11、gement Group 公司供应的 CORBA)来实现位置的独立性。CORBA 这一缩略语代表一种开放的、与厂商无关的体系结构和基础设施,各种应用软件可以利用它在网络上协同工作。一个基于 CORBA 的程序,不管是由哪个供应商提供,在何种计算机上运行,使用何种操作系统和编程语言,都可以通过网络与任何供应商提供的、在另一台使用标准协议的计算机上运行的一个同样基于 CORBA 的程序互操作。容错技术的另一个考虑因素是切换到备用系统并继续工作所需要的等待时间。许多在线设备和电话设备规定恢复时间小于 100 ms。如果每个分系统都是容错的,那就比较容易研制出故障恢复和等待时间要求最为严格的系统。譬如

12、,一些较新型的系统在采用容错技术的同时使用了 InfiniBand 交换组织体系结构来连接单个分系统(附文:InfiniBand:一种自癒式系统互联组织 ) 。启用中间件大多数高可用性系统还使用中间件软件来进行故障管理。设计师使用硬件或软件性能监控技术(如数据范围检查、校验和、冗余电路比较和看门狗超时等) ,来检测高可用性系统中的故障。发现故障后,诊断阶段将某个分系统的故障隔离开来,之后你可以将该分系统关掉或更换。有多少个设计师,就有多少种故障排除技术,但是几种较常用的方法是故障接替(failover) 、负载平衡,软件更换和重新引导。就硬件故障而言,故障管理的最后一步是更换出故障的部件,把故

13、障排除从而系统修复。Go-Ahead 软件公司的 SelfReliant 2.0 软件是现成的商用软件产品的一个实例,它可用来提高嵌入级和企业级系统的可靠性(图 2) 。该产品是在一个操作系统上面的中间件层,能对关键性硬件、操作系统、其它中间件、应用软件和群集器进行管理,以保证容错性和高可用性。SelfReliant 能自动检测故障,完成预先规定的动作,使系统的正常工作时间达到或超过 99.999%并保持服务的连续性。嵌入式实时操作系统也已开始引入高可用性功能,用于调度和资源控制。WindRiver Systems 公司业已为其产品 VxWorks 实时操作系统提供Foundation HA

14、的扩展版,该软件提供故障通知以及一个设备管理系统,使你能够在系统运行时增加设备部件、撤除设备部件和重新配置设备(图 3) 。硬件管理功能包括“热插拔”和“中央处理器故障接替” ,前者让你在其它输入/输出卡继续工作的情况下撤除和更换背板中的外设;而后者可以支持在不重新启动系统的情况下从出故障的中央处理器带电切换到备用中央处理器(图 4) 。许多高可用性系统太大太复杂,一家厂商生产不了。这些系统往往是由多家厂商提供的部件组成。若干行业组织正在其成员公司内部推广高可用性系统和服务,并将其标准化。高可用性论坛旨在实现高可用性部件的接口和功能的标准化(参考文献 1) 。该论坛的成员包括英特尔公司、惠普公

15、司、摩托罗拉公司和 RadiSys 公司。服务可用性论坛(www.saforum.org)正在设法促使业界采用开放式接口规范。当完全不同的、专用的部件在基于分组的多服务网络中互连时,这些规范可为软件、硬件和服务供应商带来诸多好处。那么,在高可用性系统中下一个目标是什么呢?支持CompactPCI 的组织 PICMG正在为制造下一代高端电信级设备制定一系列新规范,这套规范将可靠性提高到“六个 9” 。被称作 AdvancedTCA 的新体系结构是面向交换结构技术,而不是面向普通的并行总线结构的设备。该规范将允许电路板、背板和机壳制造商独立地为明天的高可用性系统研制可以互操作的产品。图 1SBS

16、技术公司的 Cascade II 高可用性系统有两条 CompactPCI背板总线,可用作通电备用或全冗余选件。图 2Go-Ahead 软件公司的 SelfReliant 2.0 是一个中间件层,它为高可用性系统用于管理硬件、操作系统、应用软件和群集器。图 3Wind River Systems 公司的 VxWorks 实时操作系统的Foundation HA 的扩展版,支持对数据和服务至关重要的嵌入式产品。图 4One Stop Systems 公司生产的系统监控热插拔 CompactPCI 板,能实时地监控系统温度、电源和风扇的变化,价格约为 995 美元。技术纵横_2002 年 08 月 30 日 -缘来缘往,缘起缘灭。其实,从大处看来,缘是不来不往,不起不灭。缘总在我们四周,我们也总在缘的里面。 刘墉 来源:BBS 水木清华站 FROM: 166.111.61.133分类讨论区全部讨论区上一篇本讨论区下一篇同主题阅读

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号