Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist...

29
1 Zuverlässigkeit und Fehlertoleranz Zuverlässigkeitsmodellierung

Transcript of Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist...

Page 1: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

1

Zuverlässigkeit und Fehlertoleranz

Zuverlässigkeitsmodellierung

Page 2: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Einordnung

Verlässlichkeit

Attribute

Verbesserungsmethoden

Bedrohungen

Zuverlässigkeit (Reliability)

Sicherheit (Safety + Security)

Vertraulichkeit (Confidentiality)

Wartbarkeit (Maintainability)

Fehlerbeseitigung

Fehlervorhersage

Fehlervermeidung

Fehlertoleranz

Fehler (Fault)

Störung (Error)

Ausfall (Failure)

Verfügbarkeit (Availability)

Kontinuität der Funktion

Page 3: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Zuverlässigkeit (Reliability)

Empirische Ermittlung: N Systeme sind fehlerfrei bei t0 = 0

C(t) … Anzahl funktionierender Systeme zum

Zeitpunkt t

F(t) … Anzahl fehlerhafter Systeme zum Zeitpunkt t

N = C(t) + F(t) mit F(0) = 0 Gesamtanzahl der Systeme

Es gilt:

3

Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die

definiert ist als die bedingte Wahrscheinlichkeit, dass das System korrekt in dem Zeitintervall [0,t] gearbeitet hat, vorausgesetzt, es hat zum Zeitpunkt 0 korrekt gearbeitet.

( ) ( )( )

C t N F tR t

N N Zeit t

C(t)

1.0

00

.00

0

t1 9

99

.90

0

t2

99

9.8

00

t3

99

9.7

00

t4

99

9.6

00

t100

99

0.0

00

N

t5 t0

(1)

Page 4: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Mittlere Zeit bis zu einem Fehler (MTTF)

Empirische Ermittlung: N … Gesamtanzahl der betrachteten Systeme

ti … Zeit bis zum Ausfall von System i

TRTN … Total Run Time aller Systeme

4

MTTF ist die erwartete mittlere Zeit bis zum Ausfall eines Systems.

1

:N

N ii

TRT t1

:N

N iN

i

TRT tMTTF

N N(2) (3)

Page 5: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

(4)

Zusammenhang R(t) und MTTF (1)

Annahme: t0 = 0

Ausfallzeitpunkte t1,…,tN sind aufsteigend sortiert; d.h.: ti < ti+1

Anzahl korrekt funktionierender Systeme im Zeitintervall [ti,ti+1) ist C(ti)

Gesamtlaufzeit der funktionierenden Systeme im Zeitintervall [ti,ti+1) ist (ti+1 – ti) C(ti)

TRTN kann damit auch definiert werden durch Summieren der Gesamtlaufzeiten in allen Zeitintervallen:

5

1

10

: ( ) ( )N

N i i ii

TRT t t C t

Page 6: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Umstellen von Formel (1) ergibt:

Einsetzen von (5) in Formel (4) ergibt:

Einsetzen von (6) in Formel (3):

Für sehr kleine Zeitintervalle (ti+1 – ti) und N folgt:

(5)

Zusammenhang R(t) und MTTF (2)

6

1 1

1 11 1

: ( ) ( ) ( ) ( )N N

N i i i i i ii i

TRT t t R t N N t t R t

( )( ) ( ) ( )

C tR t C t R t N

N

1

11

: ( ) ( )N

NN i i i

i

TRTMTTF t t R t

N

0

: ( )MTTF R t dt

(6)

(7)

(8)

Page 7: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Beispiel

7

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

0 1 2 3 4 5 6 7 8 9

10

11

12

13

14

15

16

17

18

19

20

21

22

Rel

iabi

lity

R(t

)

Time t

RA(t)

RB(t)

System A System B

Zuverlässigkeit

MTTF

0.1( ) t

AR t e 2 0.1 3 0.1( ) 3 2t t

BR t e e

0.1

0

10t

AMTTF e dt 2 0.1 3 0.1

0

3 2 8,3t t

BMTTF e e dt

Page 8: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Reliability Improvement Factor (RIF)

RIF wird bestimmt für eine fest vorgegebene Missionszeit T

Verglichen werden zwei Systeme A und B RA(T) ist Zuverlässigkeit des Systems A zum Zeitpunkt T

RB(T) ist Zuverlässigkeit des Systems B zum Zeitpunkt T

RIF > 1, dann ist System B zum Zeitpunkt T zuverlässiger als System A

8

1 ( )

1 ( )A

B

R TRIF

R T

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

0 1 2 3 4 5 6 7 8 9 1 0

1 1

1 2

1 3

1 4

1 5

1 6

1 7

1 8

1 9

2 0

2 1

2 2

R e l i a b i l i t y R

( t )

Time t

T

RA(T)

RB(T)

Page 9: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Mission Time Improvement Factor

MTIF wird bestimmt für eine fest vorgegebene Zuverlässigkeit R

Verglichen werden zwei Systeme A und B bzgl. der Zeit zu der sie die

Zuverlässigkeit R besitzen TA ist Zeitpunkt mit RA(TA) = R TB ist Zeitpunkt mit RB(TB) = R

MTIF > 1, dann sinkt Zuverlässigkeit von B später auf den Wert R ab, als die

Zuverlässigkeit von A

9

B

A

TMTIF

T

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Rel

iabi

lity

R(t

)

Time t

RA(t)

RB(t)

R

TA TB

Page 10: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Fehlerrate z(t)

Bisher: Zuverlässigkeit auf Basis empirischer Beobachtung definiert

Jetzt: Modellierung der Zuverlässigkeit mittels Fehlerrate

Bekannt:

Änderung der Anzahl fehlerhafter Systeme:

In Relation zur Anzahl funktionierender Systeme:

10

( ) ( ) ( ) ( )( ) 1

C t N F t N F t F tR t

N N N N N

0

( ) ( ) ( )limh

dF t F t h F t

dt h

1 ( )( )

( )

dF tz t

C t dtZeit

C(t)

1.0

00

.00

0

t1

99

9.9

00

t2 9

99

.80

0

t3 9

99

.70

0

t4

99

9.6

00

t100

99

0.0

00

Anzahl der Systeme, die im Zeitintervall [ti, ti+1) ausgefallen

sind.

t5 t6 t0

Page 11: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Zusammenhang Zuverlässigkeit und Fehlerrate

Differenzieren beider Seiten von

ergibt:

Ersetzen von dF(t)/dt in Funktion z(t) ergibt

Allgemeine Lösung der entstehenden Differenzialgleichung für R(0) = 1 ergibt:

11

( ) ( ) ( ) ( )( ) 1

C t N F t N F t F tR t

N N N N N

( )1

( ) 1 ( )

F td

NdR t dF t

dt dt N dt

( ) ( )·dR t dF t

Ndt dt

( )( )

( )

N dR tz t

C t dt

1

( ) ( )

N

R t C t

1 ( )( )

( ) ( )

dR tz t

R t d t

( )( ) ( )

( )

dR tR t z t

d t( )

( )z t dt

R t e

1 ( )( )

( )

dF tz t

C t dt

Page 12: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Zuverlässigkeit für typische Fehlerraten

Konstante Fehlerrate (Ausfallzeiten haben eine Exponentialverteilung):

Steigende ( > 1)/fallende Fehlerrate ( < 1) (mit Weibull-

Verteilung):

12

( ) tR t e

1MTTF

( ) tR t e

( )z t t

( ) , wobei z t

1

11

0

( ), wobei ( ) : x yMTTF x y e dy

Page 14: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Modellierung der Fehlerrate

Übliche Einheit der Ausfallrate ist FIT (Failure in Time): • 1 FIT = 1 Ausfall in 109 Betriebsstunden

Bestimmung der Ausfallrate mit dem Arrhenius-Modell (Modell für die chemische Reaktionsrate):

• mit • T ist Temperatur in Kelvin • k = 8,6 x 10-5

• Ea = 0,8 eV für Oxide/Dielectric Breakdown • Ea = 0,5 – 0,7 eV für Elektromigration • Ea = -0,2 eV für Hot-carrier Degradation

nicht alle Fehler lassen sich so modellieren: Fertigungsfehler, transiente

Fehler

1 AE

kTc eMTTF

Page 15: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Anwendung der Arrehnius-Gleichung

Beschleunigte Alterungsexperimente zur Bestimmung der Lebensdauer

Empirisch wird bei erhöhter Temperatur ein Alterungsexperiment durchgeführt

Beispiel • Beobachtung von 8 Ausfällen bei 900 Chips über 1000 Stunden bei T1 =

100°C = 373,15 K

• Ausfallrate 1: 8/(900 * 1000) = 8,9 x 10-6

• Bei T2 = 30 ° C = 303,15 K gilt dann für k = 8,6 x 10-5 und Ea = 1 eV

• Damit ist Ausfallrate 2 = 8,9 x 10-6 / 1333 = 6,67 x 10-9 = 6,67 FIT

1

2

1

2

A

A

E

kT

E

kT

c e

c e

1 21

2

1333A AE E

kT kTe

Page 16: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Bestimmung der Zuverlässigkeit fehlertoleranter Systeme

Annahme: Fehlertolerantes System s ist aus mehreren Komponenten c1,…,ck aufgebaut

Für jede Komponente ci ist Zuverlässigkeit Rci(t) bekannt

Ziel: Bestimmung der Zuverlässigkeit Rs(t)

Bestimmung durch Kombinatorische Modelle: (Systemzustände nur implizit vorhanden)

Zustandsbasierte Modelle: Modellieren Gesamtzustand des Systems explizit und leiten daraus Zuverlässigkeit ab

16

Page 17: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Seriensystem

Alle Komponenten c1,…,ck eines Systems müssen funktionieren

Rci(t) sei Wahrscheinlichkeit, dass Komponente ci zum Zeitpunkt t

funktioniert

Damit ergibt sich:

Beispiel: Eine Komponente s besteht aus 1000 gleichartigen Gattern, die alle funktionieren

müssen, damit s funktioniert

Für ein Gatter gilt: R(t) = e-t

Damit:

17

1

( ) ( )i

k

s ci

R t R t

1000 10001000

1

( ) t t t

si

R t e e e

Page 18: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Parallelsystem

Ein System mit den Komponenten c1,…,ck funktioniert, wenn mindestens eine dieser Komponenten funktioniert

Rci(t) sei Wahrscheinlichkeit, dass Komponente ci zum Zeitpunkt t

funktioniert

Damit ergibt sich:

18

1

( ) 1 (1 ( ))i

k

s ci

R t R t

Keine Komponente funktioniert zum Zeitpunkt t

Page 19: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Verallgemeinerung

System S mit den Komponenten S = {1,…,k} ist gegeben

Ri (t) sei Wahrscheinlichkeit, dass Komponente i zum Zeitpunkt t funktioniert

Ein Systemzustand z S beschreibt alle funktionierenden Komponenten in S

Außerdem sind die Systemzustände Z (S) bekannt, in denen das System

seine Funktion erfüllt

Wahrscheinlichkeit, dass das System zum Zeitpunkt t im Zustand z ist:

Wahrscheinlichkeit, dass S seine Funktion erfüllt:

19

( ) ( )Z z

z Z

R t R t

( )

( ) ( ) (1 ( ))z k k

k z k S z

R t R t R t

Page 20: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Beispiel: TMR ohne Voter

S = {1,2,3} mit R1(t) = R2(t) = R3(t) = e-t

Funktionierende Systemzustände

Es ergibt sich für Z = {{1,2,3}, {2,3}, {1,3}, {1,2}}

20

2 3

3 2 2 3 2 3( ) ( ( ) 3 ( ) (1 ( ))) 3 ( ) 2 ( )) 3 2 3 2t t t t

SR t R t R t R t R t R t e e e e

M1

M2 Eingabe Ausgabe

M3

1 2 3( ) ( ) ( )R t R t R t 1 2 3(1 ( )) ( ) ( )R t R t R t 1 2 3( ) (1 ( )) ( )R t R t R t 1 2 3( ) ( ) (1 ( ))R t R t R t

M1

M2

M3

M1

M2

M3

M1

M2

M3

M1

M2

M3

Page 21: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Einbeziehung des Voters

TMR mit Voter

Betrachtung als Seriensystem mit Komponenten a und b

Zuverlässigkeit von a:

Zuverlässigkeit des Voters b:

Zuverlässigkeit des TMR-Systems:

21

2 3( ) ( ) 3 2vt t t

TMR S VR R t R t e e e

b a

M1

M2 Eingabe Ausgabe

M3

Voter

2 3( ) 3 2t t

SR t e e

( ) vt

vR t e

Page 22: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

M-aus-N System

M, N und M N

System S enthält N identische Komponenten

Mindestens M davon müssen funktionieren

Zuverlässigkeit einer Komponente ist gegeben durch R(t)

Zuverlässigkeit des M-aus-N Systems:

Dabei ist:

22

,( ) ( ) 1 ( )

N N ii

M Ni M

NR t R t R t

i

!

( )! !

N Ni N i i

Page 23: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Gespiegelte Festplatten Prozessor mit Speicher

Reliability Block Diagrams (RBD)

Ein RBD ist ein gerichteter Graph mit einer Quelle und einer Senke Jeder Knoten des RBD repräsentiert eine physische Komponenten des Systems

(dieselbe Komponente darf also nicht mehrfach im RBD vorkommen) Kanten beschreiben funktionale Abhängigkeiten der Komponenten (keine

physischen Verbindungen) Es gilt folgender Zusammenhang zwischen einem System und seinem RBD:

Das System funktioniert gdw. es im RBD einen Weg von der Quelle zur Senke gibt, der nur durch funktionierende Knoten führt.

Beispiel:

23

P1 M1 D11 D12

Gespiegelte Festplatten Prozessor mit Speicher

M2 D21 D22 P2

Bu

s

Physisches System RBD

Bus

P1 M1

D11

D12

P2 M2

D21

D22

Page 24: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Serien-/Parallel-Systeme

Modellierung mittels RBD durch serielle und parallele Komposition von RBDs

Jede elementare Komponente a eines Systems ist bereits ein RBD mit Zuverlässigkeit Ra(t)

Serielle Komposition des RBDs c aus RBDs a und b:

Parallele Komposition des RBDs c aus RBDs a und b:

24

c a b ( ) ( ) ( )

c a bR t R t R t

c

a

b

( ) 1 ((1 ( )) (1 ( )))c a bR t R t R t

Page 25: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

RBDs

Problem: TMR System lässt sich mittels vorgestellter RBDs nicht modellieren

Erweiterung: Komponenten dürfen im RBD mehrfach verwendet werden

Beispiel TMR:

25

a

b

c

b

c

a

c

a

b

Voter

Page 26: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Nicht-Serien-/Nicht-Parallel-Systeme

Es gibt RBDs, die lassen sich nicht durch serielle/parallel Komposition erzeugen

Beispiel:

Funktionierende Systemzustände: a,c

b,c

b,d

26

a

b

c

d

Page 27: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Zuverlässigkeit bestimmen

Lösung durch Entfaltung einer Komponente x; d.h.: 1. Fall x funktioniert 2. Fall x funktioniert nicht x für beide Fälle aus dem ursprünglichen System eliminieren

27

a

b

c

d

d

a

b d b

c funktioniert nicht

c funktioniert

c'

mit Rc'(t) = 1

Page 28: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Zuverlässigkeit bestimmen

28

a

b c

d

a

b d b

c funktioniert nicht

c funktioniert

2( ) (1 ( )) ( ) ( )

g c b dR t R t R t R t

1( ) ( ) (1 (1 ( )) (1 ( )))

g c a bR t R t R t R t

( ) ( ) (1 (1 ( )) (1 ( ))) (1 ( )) ( ) ( )g c a b c b dR t R t R t R t R t R t R t

Page 29: Zuverlässigkeit und Fehlertoleranz - uni-potsdam.de · 3 Die Zuverlässigkeit eines Systems ist eine Funktion der Zeit, R(t), mit R: , die definiert ist als die bedingte Wahrscheinlichkeit,

Fehlerbäume

Operationale Abhängigkeiten zwischen den Komponenten eines Systems werden durch einen Baum modelliert Wurzel ist Fehlerzustand des Gesamtsystems Blätter repräsentieren Fehlerzustand der Komponenten: 0 … Komponente hat keinen Fehler 1 … Komponente hat einen Fehler

Zwei innere Knotenarten: Konjunktion (= serielle Komposition):

Funktion ist gegeben, wenn alle Söhne keinen Fehler haben

Disjunktion (= parallel Komposition): Funktion ist gegeben, wenn mindestens eine Komponente keinen Fehler hat

Beispiel:

29

RBD

Bus

P1 M1

D11

D12

P2 M2

D21

D22

D11 D12 D21 D22

or

and

P1 M1 P2 M2 or

and

or Bus

and