可靠性設計問題最早是在軍用電子設備上提出來的,以后逐步發展到各種民用電子設備。可靠性工程本身的發展也是一個從定性要求到定量描述,經過一系列工程方法實現定量控制,逐步發展成為一個專門學術及工程技術分支的過程。可靠性工程涉及面十分廣泛,它有一套實用的理論和方法。在這里只介紹一些基本概念和基本實用的方法。
一、可靠性的概念
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:提高軟件可靠性的途徑
我國對于產品的可靠性及軟件的可靠性有大量的相關標準(含國家標準和行業標準等),其內容包括評估評定方法、試驗方法、管理方法、設計要求和技術要求等類型。
欲進一步了解通信設備可靠性要求的請進入。