Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla...

41
Affidabilità

Transcript of Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla...

Page 1: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Affidabilità

Page 2: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Introduzione

• I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante la loro vita utile

• L’affidabilità (reliability) di un circuito e sistema elettronico rappresenta la sua capacità di operare correttamente durante un periodo di tempo.

• Lo scopo della progettazione finalizzata alla tolleranza ai guasti (fault tolerant design) è quello di applicare metodologie che migliorino l’affidabilità a livello di sistema

Page 3: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Tipi di guasto

• Durante il funzionamento i guasti possono essere di due tipi:– Guasti permanenti: dovuti ad esmpio alla

manifestazione di difetti presenti in fase di produzione o anche dovute a invecchiamento (esempio elettromigrazione) o radiazioni che corrompono il reticolo cristallino o altri fenomeni ad effetto permanente

– Guasti transitori: ad esempio SEU (single event upset nelle memorie) dovuti alla iniezione di cariche nel substrato che possono causare l’inversione del valore memorizzato su elementi di memorie. Effetti temporanei possono anche causare metastabilità.

• I guasti transitori possono essere riparati se rilevati

Page 4: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Failure Rate – frequenza di guasto(t) = Failure rate a livello di componente

– Si misura in FITS (Failures In Time – guasti per 109 ore)

Page 5: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Failure Rate a livello di sistema

• Un sistema è costruito con componenti

• Se non c’è tolleranza ai guasti (Fault Tolerance):– Se un qualunque componente si guasta allora

tutto il sistema è guasto

k

iicsys

1,

Page 6: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Affidabilità - Reliability• Se un componente funziona a tempo 0

– R(t) = è la probabilità che funzioni ancora a tempo t

• Legge di guasto esponenziale– Se si assume che il failure rate è costante

• E’ una buona approssimazione dopo la fase di mortalità infantile

tetR )(

Page 7: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

7

Affidabilità per un sistema serie

• Sistema serie– Tutti i componenti devono funzionare affinchè il

sistema funzioni

A B C

CBAsys RRRR

N

iisys RR

1

Page 8: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Affidabilità per un sistema parallelo

• Sistema parallelo– Tutti i componenti devono essere guasti affinchè

il sistema non funzioni

N

iisys RR

1

)1(1BB

CC

AA

DD

)1)(1)(1)(1(1 DCBAsys RRRRR

Page 9: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Affidabilità di un sistema con ridondanza

• Affidabilità di un sistema con il componente B in parallelo– Può tollerare un guasto su B

AB

CB

CBBACBAsys RRRRRRRR )2()1(1 22

Page 10: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Mean-Time-to-Failure (MTTF)

• Tempo medio prima che il sistema si guasti– Uguale all’area sotto la curva di affidabilità

• Nel caso di legge di guasto esponenziale

dttRMTTF

0

)(

1

0

dteMTTF t

Page 11: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Schemi per la tolleranza ai guasti

• Aggiungere tolleranza ai guasti a un progetto– Migliora l’affidabilità del sistema– Richiede ridondanza

• Hardware• Tempo• Informazione

Page 12: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza Hardware• Implica la replica delle unità hardware

– Ad ogni livello del progetto• A livello di porta logica, modulo, chip, piastra

• Tre tipologie– Statica (anche detta passiva)

• Il guasto viene mascherato piuttosto che rilevato

– Dinamica (anche detta attiva)• Il guasto viene rilevato e si riconfigura verso un hardware

di riserva

– Ibrida• Combina gli approcci attivo e passivo

Page 13: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza statica

• I guasti vengono mascherati in modo tale che non ci siano output errati– Fornisce un funzionamento ininterrotto– Importante nel caso di sistemi real-time

• Non c’è tempo per riconfigurare o riprovare l’operazione

– Semplice e autosufficiente• Non c’è bisogno di tenere traccia dello stato del

sistema per rollback

Page 14: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Triple Module Redundancy (TMR)• Ben noto schema di ridondanza statica

– Tre copie di un modulo– Si usa un majority voter per determinare l’uscita

finale– Un errore in un modulo viene escluso per

minoranza dagli altri due

Module3

Module2

Module1

MajorityVoter

Page 15: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Affidabilità e MTTF del TMR • Il TMR funziona se almeno 2 moduli

qualunque funzionano– Rm = affidabilità di ogni modulo– Rv = affidabilità del voter

• MTTF per il TMR

)23()]1(3[])1(3

[ 322333

2mmvmmmv

im

im

ivTMR RRRRRRRRR

iRR

vmvm

tttmmvTMRTMR dteeedtRRRdtRMTTF mmv

3

2

2

3

)23()23(0

32

0

32

0

Page 16: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Comparazione con il Simplex

• Ignorando il fault rate del voter poichè è progettato per essere molto minore dei moduli si può riscrivere il MTTF

• Pertanto il TMR ha un MTTF più basso del simplex ma– Può tollerare guasti temporanei– Ha un’affidabilità più alta per missioni brevi

simplexmmm

TMR MTTFMTTF6

51

6

5

3

2

2

3

Page 17: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Comparazione con il Simplex

• Punto di intersezione

• RTMR > Rsimplex quando

– La durata della missione è minore del 70% del MTTF del simplex

simplexm

ttt

simplexTMR

MTTFtRisolvendo

eee

RR

mmm

7.02ln

23 32

Page 18: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Comparazione TMR Simplex

Page 19: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

N-Modular Redundancy (NMR)• NMR

– N moduli più il majority voter• Il TMR è un caso speciale del NMR

– E’ in grado di mascherare fino a (N-1)/2 moduli guasti

– Al crescere di N, il MTTF diminuisce• Ma l’affidabilità per le missioni brevi aumenta

• Se l’obiettivo è solo quello di tollerare i guasti temporanei è sufficiente usare il TMR

Page 20: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza Dinamica• Implica

– Rilevazione del guasto – Localizzazione dell’unità guasta– Riconfigurazione del sistema per usare l’unità di

riserva non guasta

Page 21: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Riserve non alimentate (fredde)• Una riserva fredda raddoppia il MTTF

– Assumendo che i guasti vengano sempre rilevati e che il circuito di riconfigurazione non si guasti mai

• Svantaggio della riserva fredda– Tempo richiesto per accendere e inizializzare– Non può essere usato per rilevare i guasti– La rilevazione dei guasti richiede uno dei

seguenti approcci• test offline fatto periodicamente• online testing usando ridondanza di tempo o di

informazione

Page 22: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Riserve alimentate (Calde)• Si possono usare le riserve per condurre la

rilevazione dei guasti online• Un approccio è quello di duplicare e comparare

– Se c’è una discordanza sugli output allora si è avuto un guasto

– Si fa partire una procedura diagnostica per capire quale modulo sia guasto e lo si rimpiazza con una riserva

– Si può usare un numero qualunque di riserve

ModuleB

SpareModule

ModuleA

Compare

Output

Agree/Disagree

Page 23: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza ibrida

• Combina sia la ridondanza statica e quella dinamica– Maschera i guasti come la ridondanza statica– Rileva e riconfigura come la ridondanza

dinamica

Page 24: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

TMR con riserve

• Se un modulo del TMR si guasta– Rimpiazzato da una riserva

• Può essere sia una riserva calda o fredda

– Fintanto che il sistema ha tre moduli funzionanti• Il TMR fornirà fault masking per mantenere

un’operatività ininterrotta

Page 25: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza Self-Purging• Usa un voter a soglia invece di un voter a

maggioranza– Threshold voter mette in uscita 1 se il numero di

ungressi uguali ad 1 è maggiore della soglia• Altrimenti mette in uscita 0

– Richiede riserve calde

Page 26: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza temporale

• Vantaggio– Meno hardware

• Svantaggio– Potrebbe non rilevare guasti permanenti

• Se si rileva un errore– Il sistema deve ritornare a uno stato precedente

che si sa essere buono prima di ripartire con le operazioni

Page 27: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Esecuzione Ripetuta

• L’operazione viene ripetuta due volte– E’ il metodo di ridondanza temporale più

semplice– Rileva guasti temporanei che avvengono

durante un’esecuzione (ma non in entrambe)• Causa una differenza tra i risultati

– Può riutilizzare lo stesso hardware per entrambe le esecuzioni

• Serve solo una copia dell’hardware funzionale

Page 28: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Esecuzione Ripetuta

• Richiede un meccanismo per memorizzare e comparare i risultati di entrambe le esecuzioni– In un processore, si può memorizzare sulla

memoria o su un disco e usare un software per fare la comparazione

• Costo principale– Tempo addizionale per l’esecuzione ridondante

e la comparazione

• Problema con i guasti permanenti

Page 29: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ricomputazione in diversità

• Si usa lo stesso hardware, ma si fa la computazione in modo diverso la seconda volta– Può rilevare i guasti permanenti che influenzano

solo una computazione

• Per operazioni logiche o aritmetiche– Si fa lo shift degli operandi quando si fa la

seconda computazione [Patel 1982]

Page 30: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Ridondanza di Informazione

• Basata su codici per la rilevazione e correzione d’errore

• Vantaggi– Rileva sia guasti temporanei che permanenti– L’hardware in eccesso necessario è minore di

quando si usano più copie di un solo modulo

• Svantaggio – Progettazione più complessa

Page 31: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Rilevazione d’errore

• Codici a rilevazione d’errore usati per rilevare gli errori– Se un errore viene rilevato

• Si ritorna a uno stato precedente non guasto (rollback)

• Si riprova l’operazione

Page 32: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Rollback

• Richiede di aggiungere capacità di memorizzazione per salvare lo stato precedente– L’entità del rollback dipende dalla latenza del

meccanismo di rilevazione– Rilevazione d’errore senza latenza

• Il rollback è implementato impedendo al sistema di aggiornare il suo stato

– Se gli errori vengono rilevati dopo n cicli• Bisogna avere un sistema di rollback in grado di restaurare

lo stato del sistema a quello di almeno n cicli di clock precedenti

Page 33: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Checkpoint

• L’esecuzione viene suddivisa in sottoinsiemi di operazioni– Prima che ciascuna operazione venga eseguita

• Viene creato un checkpoint dove viene memorizzato lo stato del sistema

– Se viene rilevato un errore durante l’operazione• Si ritorna (rollback) all’ultimo checkpoint e si riprova

l’operazione– Se si rileva un errore in molteplici repliche

dell’operazione• L’operazione si ferma e il sistema segnala che è avvenuto

un guasto permanente

Page 34: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Teoria dei Codici• Codici

– Si usano più bit del necessario per rappresentare i dati

– E’ un modo per rilevare gli errori• Gli errori avvengono quando i bit di informazione vengono

invertiti per qualche motivo

• Codici a rilevazione d’errore– Ne esistono molti tipi– Possono rilevare diverse classi di errori– Usano diversi livelli di ridondanza– Presentano diversi livelli di difficoltà per la codfica e

la decodifica dei dati

Page 35: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Rilevazione d’errore

• Si codificano le uscite del circuito con un codice a rilevazione d’errore– Se l’uscita non è una parola di codice c’è un

errore

m

m

k

c

Inputs

Checker

FunctionalLogic

Check BitGenerator

k

Outputs

ErrorIndication

Page 36: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Duplicazione e confronto• Un checker di uguaglianza rileva l’errore

– Un guasto potrebbe non essere rilevato solo se un guasto di modo comune colpisse entrambe le copie

– Vengono rilevati solo i guasti dopo lo stem – Più del 100% di overhead (includendo il checker)

FunctionalLogic

FunctionalLogic

Stems

EqualityChecker

ErrorIndication

PrimaryInputs

Page 37: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Codice di parità a bit singolo

M= f(N)Il circuito di predizione della parità crea una stima della parità P(f(N))Il circuito di predizione ha un overhead hardware variabile che può essere in media il 33%

rispetto al circuito che implementa la f(N)

f(N)

P(f(N))P(M) p

p’comparator

N M

Page 38: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Codice di parità a bit singolo

• Non si può rilevare un numero pari di errori sui bit– Si può evitare un numero pari di errori sui bit

generando ogni output con un cono di logica indipendente

• Si è nella assunzione di avere un singolo guasto per cui si evita che un guasto si propaghi su due output

• Tipicamente implica un grosso overhead

Page 39: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Distanza di un codice

• Distanza tra due parole di codice:– Numero di bit in cui le due parole differiscono

• Distanza di un codice– Minima distanza due parole di codice nel codice– Se n=k (nessuna ridondanza), la distanza è = 1– Parità a bit singolo distanza = 2

• Codice con distanza d– Rileva d-1 errori– Corregge fino a (d-1)/2 errori

Page 40: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Codici a correzione d’errore

• Codice con distanza 3– Chiamato anche single error correcting (SEC) code

(codice a correzione di errore singolo)• Codice con distanza 4

– Chiamato anche single error correcting and double error detecting (SEC-DED) code (codice a correzione di errore singolo e rilevazione di errore doppio)

• Procedura per costruire un codice SEC– Descritto in [Hamming 1950]– Ogni matrice H con tutte le colonne distinte e

nessuna colonna con tutti 0 è SEC

Page 41: Affidabilità. Introduzione I circuiti e sistemi elettronici sono inevitabilemnte affetti dalla presenza di guasti non solo in produzione ma anche durante.

Memory Scrubbing

• Ogni locazione di memoria viene letta su base regolare– Riduce la probabilità che si accumulino più errori

nel tempo– Si può implementare facendo in modo che il

controllore della memoria faccia questa attività durante I periodi di idle