可靠性设计问题最早是在军用电子设备上提出来的,以后逐步发展到各种民用电子设备。可靠性工程本身的发展也是一个从定性要求到定量描述,经过一系列工程方法实现定量控制,逐步发展成为一个专门学术及工程技术分支的过程。可靠性工程涉及面十分广泛,它有一套实用的理论和方法。在这里只介绍一些基本概念和基本实用的方法。
一、可靠性的概念
1、我国相关可靠性术语定义的标准变化
在了解相关可靠性概念之前,必须要对我国有关“可靠性”的相关术语与定义的国家标准的变化情况做一介绍。在1982年我国曾发布了GB 3187-82《可靠性、维护性术语》,该标准在1994年进行了修订,修订版本为GB/T 3187-94《可靠性、维护性术语》。在1993年,我国又发布了GB/T 14733.3-93《电信术语 可靠性、可维护性和业务质量》。然而,在2008年发布了GB/T 2900.13-2008《电工术语 可信性与服务质量》,该标准代替了GB/T 3187-94和GB/T 14733.3-93。在2016年我国又发布的GB/T 2900.99-2016《电工术语 可信性》,该标准代替了GB/T 2900.13-2008中的 “可信性”部分的术语与定义,其有关“服务质量”部分仍然有效,也即GB/T 2900.99-2016部分代替了GB/T 2900.13-2008。
2、基本概念
关于可靠性(reliability)的定义,由于上述我国国家标准的变化也是有所变化的。下表1-2-1中给出上述各标准中关于“可靠性”的定义,以了解其变化情况。
表1-2-1:我国国家标准中相关“可靠性”的定义
可靠性(reliability)就是指产品在规定的时间内和规定的条件下完成规定功能的能力。如果将这句话改成“在规定的时间内和规定的条件下完成规定功能的成功概率”这就是可靠度的含义。这是一个定量指标。
“完成规定功能”有不同含义。如果“完成规定功能”是指系统的技术性能,则可靠性指标可用系统平均故障间隔时间(MTBF,Mean Time Between Failures)来描述。它依赖于系统中各元器件正常工作的概率和系统的组成。通常所指的可靠度就是这个含义。如果“完成规定功能”是指系统的维修性能,则可靠度就可用系统的平均维修时间(MTTR,Mean Time To Repair)表示。这种条件下的“成功概率”通常称为“维修度”。如果“完成规定功能”是指技术性能和维修性能的综合,则可用可用度A来表示:
A = MTBF /(MTBF+MTTR)
对于可维修系统来讲主要是采用可用度A以及有关的MTBF和MTTR。人们对可靠性的认识是逐步深化的。在过去的产品中主要是以机电产品为主,传统的安全设计比较保险,往往会看到傻大粗黑的产品。它们主要矛盾常集中在几何尺寸、重量等的加工质量的保证上。人们首先关心的是性能可靠性及装配的合格率。随着电子产品的不断出现和增多,产品质量的含义就越来越广泛,它的重要性也越来越突出。长期以来对通信产品没有可靠性指标,但是随着通信技术,尤其是程控交换技术的发展,逐步在通信产品的技术规范中也提出了可靠性指标。
注意:在GB/T 2900.99-2016中,将平均故障间隔时间(MTBF)也称为平均失效间隔工作时间(MOTBF,Mean Operating Time Between Failures);将平均维修时间(MTTR)改为平均恢复时间(MTTR,Mean Time To Restoration,弃用Mean Time To Repair)。它们的定义详见下表1-2-2中。
表1-2-2:GB/T 2900.99-2016中MTBF与MTTR的定义
3、和可靠性指标有关的一些基本定义
在讨论可靠性计算以前先来弄清一些有关术语和定义。
1)失效率和平均故障间隔时间。失效率就是单位时间内出现的失效次数,即失效速率。从一定意义上讲失效率是时间的函数。但是对于大量电子元件构成的电子设备来说,经过一段老化以后,失效率是一个常数,这点从理论上也已得到证明。把失效率记做“λ”,单位为1/h(或记做h -1),国外也有用FIT=10-9 h或% / h为单位的(例如10-5/h可记做%/10-3h)。对于可维修系统来说,失效率也称做故障率。
和失效率相对应的为“平均故障间隔时间”,即是经常碰到的MTBF。失效率和平均故障间隔时间互为倒数,即
MTBF = 1 / λ
2)修复率和平均故障修复时间。单位时间内修复的故障数叫做修复率,记做μ,单位为h-1。和修复率相对应的是平均故障修复时间MTTR。它们的关系为:
MTTR = 1/ μ
3)可靠度和维修度。前面已经说过,可靠度就是“在规定的时间内和规定的条件下系统完成规定功能的概率”。可靠度是时间的函数,用R(t)表示。在时刻t的可靠度为:
R(t)= e – λ t
对于可维修系统来说,系统的可维修的概率称做维修度。它的定义为“可维修系统在规定的条件和规定的时间内,完成维修而恢复到规定功能的概率”。在时刻t的维修度为:
M(t)= 1-e – μ t
4)可用度和不可用度。对于可维修系统来说,要考虑系统的维修率因素。这时系统在规定时间内和规定条件下完成功能的概率叫做“可用度”或“有效度”,记作A。在系统稳定运行时λ和μ都接近为一个常数值。这时可用度为
A=μ /(μ+λ)= MTBF/(MTBF+MTTR)
和可用度相对应的是“不可用度”或“失效度”。它是在考虑系统的维修率因素时,在规定时间内和规定条件下丧失规定功能的概率,记作U。
U + A = 1
U = 1-A = 1-[μ /(μ+λ)] = λ /(λ+μ)= MTTR /(MTBF+MTTR)
欲更多了解短波通信网络可靠性相关概念的请进入。
二、容错技术
为提高系统的可靠性,主要采用两种技术:避错技术和容错技术。
硬件避错技术是尽量减少硬件故障的发生概率,减小系统失效率。其主要方法是选用高可靠高集成度器件,提高可靠性设计水平,提高耐环境设计和严格质量控制。软件避错法主要包括寻求高可靠软件的程序设计方法(如结构化程序设计)和提高软件测试技巧以排除软件内隐藏的错误。
硬件容错是利用额外的硬件和时间两种冗余方式来掩盖故障的影响。硬件的冗余有如备用方式;而时间冗余可以采用例如每一任务执行两次和检错与校验技术等。冗余方法有多种,目前常见的有以下几种:静态冗余、动态冗余、混合冗余和自清除冗余方式等。静态冗余又叫屏蔽冗余,又主要分为三模冗余和采用纠错码两种方法。各种冗余方式的概念解释在下表2中。还有其他方法,都比较复杂。有兴趣的话可参看有关容错方面的文献。
表2:常见的冗余方法简介
三、软件的可靠性
软件故障主要是在设计阶段及实现阶段由于人为因素所产生的缺陷和错误而造成的。它与硬件故障有本质区别。
1、软件可靠性定义
对软件可靠性的定义存在有不同观点,归纳起来大致可分为下表3-1-1所示的三类。在GB/T 11457《信息技术 软件工程术语》中,对软件可靠性(software reliability)时按表3-1-1中第二类定义方法给出的,具体详见下表3-1-2。
表3-1-1:软件可靠性的定义方法
表3-1-2:软件可靠性的定义(GB/T 11457-2006)
软件可靠性和硬件可靠性是有差别的。例如,软件可靠性主要由设计造成的,而生产(复制)、使用影响极小;又例如硬件可以通过冗余设计来提高系统可靠性,而相同软件的冗余不会提高可靠性等等。但是它们也有共同之处,如软、硬件的可靠性都是复杂性的函数。软件可靠性也像硬件可靠性那样“元件数越多,故障率越高”。问题是还不能导出与“元件数”相当的软件量。
2、软件错误分类
软件错误可能分为语法错误、语义错误、运行时错误、规范错误和性能错误,其含义归纳于表3-2中。
表3-2:软件错误类型的含义
3、提高软件可靠性的途径
提高软件可靠性的途径主要由下表3-3所示的8种途径。还可以采取一些提高软件可靠性的其他措施。
表3-3:提高软件可靠性的途径
我国对于产品的可靠性及软件的可靠性有大量的相关标准(含国家标准和行业标准等),其内容包括评估评定方法、试验方法、管理方法、设计要求和技术要求等类型。
欲进一步了解通信设备可靠性要求的请进入。