01 - Defectele Si Erorile - Merged PDF
01 - Defectele Si Erorile - Merged PDF
01 - Defectele Si Erorile - Merged PDF
Un circuit sumator se dovedete c are una din liniile sale de ieire blocat permanent
la valoarea 1, independent de valorile operanzilor si.
Aceast situaie descrie doar un defect fizic, nu o eroare (nc).
Defectul acesta va cauza o eroare atunci cnd sumatorul este utilizat iar rezultatul
corect, pe linia de ieire defect, este zero (nicidecum 1).
Timpul scurs ntre momentul apariiei defectului fizic (este foarte greu de stabilit acest
moment, oricum) i momentul producerii erorii poart numele de latena erorii.
n literatur se apreciaz c va fi mai dificil de detectat defectul fizic atunci cnd
latena erorii este mai lung. O lung laten a defectului sugereaz c sunt mai puine
cazuri care fac vizibil defectul fizic.
O laten lung poate fi independent de arhitectura i stilul de proiectare al mainii
propriu-zise (hardware-ul), chiar dac sunt incluse n proiectarea acesteia criterii de
largi de testabilitate fie i pe durata normal de operare (distincte de cele prevzute s
fie utilizate n regim de test cum ar fi tehnicile scan design etc.).
Un exemplu simplu ar putea fi o aplicaie software care sumeaz de fiecare dat
cteva numere ntregi avnd lungime mic (ntregi scuri) i toate pozitive. O eroare n
bitul de semn care blocheaz acest bit n valoarea 0 poate fi extrem de dificil de
detectat atta vreme ct se va rula aceast aplicaie (casa de marcat a unei prvlii de
cartier, spre exemplu).
Sistemele de calcul care ruleaz aplicaii de al cror rezultate depind aciuni al cror
risc poate fi extrem de grav sunt periodic supuse unor testri cu larg acoperire a unui
spectru de defecte dinainte stabilite. Astfel de sisteme de calcul pot fi din domeniul
aparaturii medicale, aplicaiilor spaiale, supravegherii reactoarelor nucleare etc.
Aceste testri pot fi efectuate distinct de aplicaiile curente (sesiuni dedicate) dar pot fi
i rulate concurent (n paralel cu sarcinile nominale prin faciliti dedicate de felul
celor grupate sub sintagma Built-In Self Testing BIST).
Dispozitive dedicate stabilesc oportunitatea derulrii desfurrii unor sesiuni de teste,
dinainte stocate, avnd durate suficient de scurte ca s nu fie perturbate activitile
nominale. Odat testele aplicate, rezultatele respective sunt comparate cu valorile
corecte ale respectivelor teste.
Aceste rezultate, ale testelor aplicate, pot fi comparate direct cu rezultatele etalon.
Dar, durata comparaiei poate fi un element limitativ al sesiuni de teste timpul este
adeseori un factor critic n astfel de cazuri.
O comparaie dintre semntura rezultatelor determinate n sesiune de test i semntura
corespunztoare funcionrii corecte, este n cele mai multe dintre cazuri preferat.
Semnturile, iruri de valori binare, au lungimi semnificativ mai scurte dect
rezultatele propriu-zise (vectorii binari) respective iar timpul de determinare al
Un defect care cauzeaz mal-funcionarea unei singure uniti de calcul, este numit un
defect benign. Defectele benigne sunt printre cele mai simplu de abordat.
Mult mai dificile sunt defectele care produce rezultate, aparent rezonabile, dar
incorecte n fapt, ori care trimit rezultate distincte unor receptori diferii.
Un senzor de altitudine care, spre exemplu, determin 8000 de metri spre aparatele
din bordul avionului dar trimite o determinare de 700 de metri spre instalaia de aer.
Acest defect poate fi deosebit de delicat.
Astfel de defecte mai sunt numite i defecte maligne ori Bizantine.
Care este categoria de utilizatori interesai de capacitatea unui sistem s fie tolerant la
defecte?
- utilizatorii de sistem, indiferent de natura aplicaiei.
Care sunt entitile economico-sociale implicate?
(i) Universitile: Cercetare, Dezvoltare i aplicaii,
(ii) Industria: Cercetare, Dezvoltare i Aplicaii.
SISTEMUL
SERVICII ALE
CALCULATORULUI
OFERITE
SISTEMULUI
CALCULATORUL
(Subsistem)
INTERFAA
SISTEM CALCULATOR
ALTE
FACILITI
Resursele de
Calcul ale
Sistemului
(Hardware)
Intrri
ALE
SISTEMULUI
Feedback
OPERATORUL
SERVICII ALE
SISTEMULUI
UTILIZATORUL
Diagrama Sistem-Utilizator
SERVICII ALE
SISTEMULUI
Consideraii practice
Un sistem exist ntr-un mediu (cum ar fi un robot submarin trimis s exploreze
adncurile oceanelor, spre exemplu) i are att operatori ct i utilizatori (posibil ca
aceste dou categorii sa coincid, uneori).
Un autovehicul, alt exemplu, este un sistem compus din cteva sute de componente,
multe dintre acestea fiind similare unor subsisteme de calcul rulnd un software
specific. Operatorul este integrat acestui sistem.
Sistemul ofer un rspuns, un feedback, att operatorului ct i utilizatorului.
Operatorii sunt, tradiional, reprezentai n interiorul sistemului ntruct procedurile
acestora sunt, uzual, parte component prin proiectarea sistemului.
Sistemele sunt dezvoltate s realizeze un set de operaii are satisfac anumite cerine,
stabilite prin proiect.
Cerinele pot adresa performanele de vitez de calcul, suportul software (rutine cu
caracter tehnic, matematic etc.) i multe altele.
O cerin important poate fi dependabilitatea ridicat a anumitor sisteme.
Dependabilitatea sistemelor poate fi obinut prin tolerana la defecte.
Definiia Dependabilitii
oferit de Standardul IEC IEV 191-02-03:
Dependabilitatea (este) un termen colectiv utilizat s descrie disponibilitatea
performanei precum i a factorilor ce-o influeneaz:
fiabilitatea performanei,
mentenabilitatea performanei i
mentenana suportului performanei
Concepte fundamentale
Considerente istorice
asupra conceptului sistemelor tolerante la defecte
Aspectele cruciale
n dezvoltarea sistemelor tolerante la defecte
Exemple II
Sistemele cu fiabilitate ridicat, sunt sistemele care cuprind aparatur digital pentru
urmtoarele aplicaii:
o
o
o
o
o
Sistemele telefonice,
Sistemele bancare, terminalele de tip bancomat (ATM),
Sistemele burselor de valori,
Educaia asistat de calculatoare: examinri, note, proiecte etc.,
Sistemele incluse n jocurile cu ctiguri imediate, .a.m.d.
Exemple III
Sistemele cu funcionare critic i sub-sistemele eseniale, deasemenea critice,
pentru viaa unor persoane:
Exemple IV
Sistemele cu fiabilitate ridicat dar i cu funcionare critic:
Redundana
Aceast msur, notat tradiional prin A(t), este media fraciunii de timp ct sistemul
este funcional.
Ca msur, este potrivit pentru aplicaiile n care performana continu nu este vital
dar, n cazul n care totui sistemul este nefuncional un timp semnificativ costurile
sunt mari.
Un sistem de rezervri pentru bilete la zborurile de linie, spre exemplu, trebuie s fie
intens disponibil deoarece un timp mai lung de nefuncionare poate ndeprta clienii
i produce scderi ale ncasrilor.
Un timp ocazional, foarte scurt de oprire este, pe de-alt parte, tolerabil pentru un
sistem de rezervri de bilete la zborurile de linie.
Disponibilitatea pentru un timp mai lung notat prin A se definete ca fiind limita
ctre care tinde A(t) atunci cnd t tinde la infinit:
A = lim A(t ) .
t
Tolerana defectelor hardware este abordarea cea mai evoluat n contextual general al
tehnicilor de calcul tolerante la defecte.
S-au dezvoltat i se utilizeaz multe tehnici de toleran a defectelor viznd aplicaii
care cuprind soluii din domeniul telefoniei i pn n aplicaii ale misiunilor spaiale.
Iniial aceste tehnici aveau drept obstacol esenial costurile asociate hardware-ului
redundant.
n timp costurile hardware-ului, n general, au sczut i nu mai constituie un
impediment financiar utilizarea structurilor digitale n tehnicile de toleran a
defectelor.
Mai mult, datorit costurilor convenabile actuale, se ateapt o cretere a utilizrii
volumului hardware-ului n proiectarea arhitecturilor hardware tolerante la defecte.
Alte considerente intervin n limitarea utilizrii actuale extensive a hardware-ului.
Printre acestea un rol important l joac puterea disipat n structurile digitale utilizate,
n general.
Viteza de
defectare
Faza
copilriei
Faza
final
Durata
(ani)
Figura 1. Curba caracteristic a vitezei de defectare pentru
structurile digitale
= L Q (C1 T V + C2 E )
(1)
f (t ) =
dF (t )
, F (t ) = f ( )d
dt
0
(1)
f(t) 0, pentru t 0 i
f (t )dt = 1.
(2)
(3)
Funcia f(t) este asociat probabilitii defectrii unei noi componente la momentul t,
n viitor.
O noiune cu mai mult semnificaie este probabilitatea ca o component cu vrsta
curent t s se defecteze ntr-un moment ulterior dup un timp, suficient de scurt, cu
durata dt.
Aceasta este o probabilitate condiionat, deoarece se cunoate faptul c respectiva
component a supravieuit cel puin pn n momentul t.
1
(t ) =
Deoarece
f (t )
1 F (t )
(4)
dR(t )
= f (t ) , relaia (4) devine:
dt
(t ) =
1 dR(t )
R(t ) dt
(5)
Anumite tipuri de componente nu sufer vreo mbtrnire, dar au o defectare care este
constant n timp, (t) = .
Pentru astfel de situaii:
dR(t )
= R(t )
dt
(6)
Iar soluia acestei ecuaii difereniale ( cu condiia la momentul iniial R(0) = 1) este:
R(t) = e-t
(7)
(8)
Substituind
dR(t )
= f (t ) rezult:
dt
dR(t )
MTTF = t
dt = tR (t ) |0 + R(t )dt = R(t )dt
dt
0
0
0
(9)
(termenul tR(t) este nul atunci cnd t = 0 dar i atunci cnd t = , deoarece R()=0).
n cazul n care viteza defectrii este constant, pentru care:
R(t) = e-t,
(10)
rezult c:
MTTF = e t dt =
0
(11)
Se consider, n cele mai multe situaii, o vitez constant a defectrii. Acest fapt este
datorat, n primul rnd, simplitii calculelor.
Dar exist cazuri n care aceast presupunere simplificatoare este inoportun.
Viteza de
defectare
Faza
copilriei
Faza
final
Durata
(ani)
Figura 1. Curba caracteristic a vitezei de defectare pentru
structurile digitale
Zonele copilriei i uzurii din figura 1 sunt dou exemple, n acest sens.
Pentru aceste zone se utilizeaz distribuia Weibull.
Aceast distribuie are doi parametrii, i , i are urmtoarea funcie a densitii
timpului de via T a unei componente:
f (t ) = t 1e t
(1)
(t ) = t 1
(2)
Aceast vitez de defectare este o funcie cresctoare pentru > 1, este constant
pentru = 1 i este o funcie descresctoare pentru < 1.
Aceste proprieti fac distribuia aceasta foarte flexibil i n mod deosebit
corespunztoare pentru fazele copilriei i uzurii componentelor.
(3)
( 1 )
(4)
n (4)
( x) = y x 1e y dy
0
(5)
(6)
(7)
Se vor considera cteva dintre structurile canonice, cu ajutorul crora se pot construi
alte structuri mai complexe.
Pentru nceput se vor aborda structurile de baz, structurile serie i paralele.
Sistemele serie i paralele
Cele mai cunoscute structuri sunt structurile serie i paralele de sisteme, aa cum se
pot vedea n figura 1.
Un sistem serie se definete ca fiind un set de N de module conectate mpreun astfel
nct defectarea unui modul face ca ntreg sistemul s cad. Este de reinut c
diagrama din figura 1a este o diagram de fiabilitate i nu constituie ntotdeauna i o
diagram de funcionare electric.
Cele patru module din diagrama 1a pot reprezenta, spre exemplu, unitatea de
decodificare a instruciunii, unitatea de execuie, memoria imediat (cache) i
memoria imediat de instruciuni a procesorului.
Aceste patru uniti trebuie s funcioneze fr erori pentru ca microprocesorul s
funcioneze corect. Se poate remarca diferena dintre diagrama de fiabilitate i
diagrama electric.
Presupunnd c modulele din figura 1a se defecteaz independent unul de cellalt,
fiabilitatea ntregului sistem serie este produsul fiabilitii modulelor acestuia.
Se noteaz prin Ri(t) fiabilitatea modulului i i prin Rs(t) fiabilitatea ntregului sistem:
Rs (t ) = Ri (t )
i =1
(1)
RS (t ) = e S t
(2)
Din (2) se poate vedea c sistemele serie au o vitez de defectare (cdere) constant
egal cu S (suma vitezelor individuale de cdere) iar MTTF pentru sistemele serie
este:
1
MTTFS =
.
R p = 1 (1 Ri (t ))
(3)
i =1
R p = 1 (1 e it )
(4)
i =1
Fiabilitatea unui sistem paralel care const din trei module avnd vitezele constante de
defectare 1, 2 i 3, spre exemplu, este exprimat prin relaia:
R p (t ) = e 1t + e 2t + e 3t e ( 1 + 2 )t e ( 2 + 3 ) t e ( 3 + 1 )t + e ( 1 + 2 + 3 )t
B
A
D
Figura 1. Sistem cu alt structur dect
paralel ori serie.
(1)
Pentru aceste structuri nou introduse se vor putea utiliza formulele deja stabilite
pentru structurile serie
N
Rs (t ) = Ri (t )
i =1
i paralele
N
R p = 1 (1 Ri (t )) .
i =1
D
(b) Modulul C este
funcional
Figura 2. Descompunerea diagramei din
figura 1, n raport cu modulul C.
(2)
B
A
D
A
D
(b) Modulul E este
funcional
Atunci cnd modulul E este nefuncional diagrama de fiabilitate arat ca n figura 3.a.
Este important de reinut c modul C este funcional att n figura 3.a, ct i n figura
3.b.
Expresia probabilitii sistemului atunci cnd C funcioneaz iar modul E este
nefuncional se calculeaz pentru conectarea n serie a modulelor A, D i F.
Se poate remarca n aceast situaie c modulul B este prezent n sistem dar nu este
conectat la modul F de ieire, ntruct nu exist o cale ntre modulul B i F n
diagrama iniial de fiabilitate a sistemului.
Expresia algebric a probabilitii sistemului condiionat de faptul c modulul C este
funcional, iar modulul E este nefuncional arat astfel:
Prob{Sistemul funcioneaz | C este funcional i E este nefuncional} =
(1 - RE)RARDRF.
Iar cealalt probabilitate arat astfel:
Prob{Sistemul funcioneaz | C i E sunt funcionale} = RE RF[1 (1 - RA)(1 RB)].
Dup determinarea acestei expresii se poate exprima fiabilitatea sistemului ca fiind:
Rsistem = RC[RERF(RA + RB RARB) + (1 RE)RARDRF] +
(1 RC)[RF(RARD + RARE - RARDRBRE)]
(3).
(4)
Atunci cnd o diagram are o structur foarte complicat pentru aplicarea unei
proceduri similare celei parcurse anterior se pot calcula margini inferioare i
superioare a fiabilitii sistemului, Rsistem.
O margine superioar este determinabil prin expresia:
Rsistem 1 (1 Rcaleai )
(5)
(6)
n relaia (6) s-a notat prin Qcuti probabilitatea ca respectiva tietur i s fie defect.
Referitor la figura 1, seturile minimale de tieturi ale diagramei de fiabilitate din
aceast figur sunt:
F, AB, AE, DE i BCD.
Formula algebric a marginii inferioare determinat prin seturile minimale de tieturi
arat astfel:
Rsistem RF[1 (1 RA)( 1 RB)][1 (1 RA)( 1 RE)][1 (1 RD)( 1 RE)]
[1 (1 RB)( 1 RC)( 1 RD)]
Dac RA = RB = RC = RD = RE = RF = R, atunci:
Rsistem R5(24 60R + 62R2 33R3 + 9R4 R5).
(7)
Un sistem M din N redundant const din N module care are nevoie de cel puin M
dintre acestea ca s funcioneze corespunztor.
Un astfel de sistem nceteaz s mai funcioneze atunci cnd mai puin dect M
module sunt funcionale.
Cel mai cunoscut exemplu, din aceast categorie, este sistemul triplex. Un astfel de
sistem const din trei module identice ale cror ieiri sunt votate.
Ct vreme exist o majoritate (cel puin 2 din 3) a modulelor care produc rezultate
corecte, sistemul va fi funcional.
Evaluarea fiabilitii unui sistem M din N
(1)
i=M
(2)
i=M
Modul
Modul
Dintre sistemele M din N, e foarte posibil s fie cel mai cunoscut sistemul triplex,
ca un astfel de sistem.
Diagrama sistemului triplex, ori a sistemului Triplu-Modul Redundant (TMR), este
prezentat n figura 1. n astfel de sisteme, M = 2 i N = 3, sunt trei module i un
circuit de vot care decide majoritatea rezultatelor.
Prin utilizarea unui singur circuit de vot, acesta devine o entitate critic. Fiabilitatea
sistemului, innd seama de fiabilitatea circuitului de vot (notat prin Rvot (t)), arat
astfel:
3
(3)
i=2
(4)
sistem simplu (cu un singur modul, sistem numit adesea i simplex) devine mai fiabil
dect orice combinaie constituit cu modulele respective.
Acest fapt se reflect n valoarea MTTRTMR, care poate fi determinat pentru:
Rvot(t) = 1 i R(t) = e-t astfel:
5
6
(5)
MTTFTMR =
5 1
< = MTTFSimplex
6
n cele mai multe dintre situaiile reale, totui, R(t) >> 0,5 pentru valori practice ale
variabilei t iar sistemul este fie reparat, fie nlocuit mult nainte ca R(t) < 0,5 astfel
nct configuraia triplex s confere creteri semnificative ale fiabilitii.
Expresia fiabilitii sistemului Triplu-Modul Redundant s-a dedus avnd, presupus
implicit, ipoteza c orice defect al circuitului de vot va implica o ieire eronat a
sistemului i orice defectare a dou module, din trei, este determinant pentru malfuncionarea sistemului.
Astfel de situaii nu sunt, totui, ntotdeauna necesare pentru declararea ncetrii
funcionrii sistemului.
Aceasta se poate uor constata din urmtorul exemplu:
Dac un modul are, la una dintre ieirile sale, permanent valoarea logic 1 iar un al
doilea modul are permanent valoarea logic 0, la ieirea omoloag, atunci TMR va
continua, aparent, s funcioneze corect, spre exemplu.
Similar, o situaie comparabil poate s se ntmple i n circuitul de vot (majoritate).
Aceste exemple vizeaz, n esen, compensarea reciproc a defectelor.
Paradoxal, astfel de situaii conduc la o cretere a fiabilitii sistemelor TMR.
Circuitele de vot
Astfel de circuite au, n principiu, N linii de intrare x1, x2 , xN la care sunt conectate
liniile de ieire omoloage din sistemul redundant M din - N.
Cu valorile recepionate pe liniile de intrare, circuitul de vot genereaz corespunztor
o valoare reprezentativ.
Cea mai simpl metod este compararea bit cu bit a valorilor liniilor de intrare
omoloage i determinarea valorii majoritare.
Aceast metod presupune c fiecare din cel N module ale sistemului va genera ieiri
similare, comparabile bit cu bit, cu ale celorlalte module.
Dac modulele sunt constituite cu procesoare identice care primesc aceleai valori de
intrare, ruleaz aplicaii identice i sunt conduse prin impulsuri de ceas mutual
sincronizate, atunci procedeul de vot este imediat.
Dar, dac modulele sunt construite cu procesoare diferite ori ruleaz aplicaii distincte
pentru aceeai sarcin de calcul atunci este foarte posibil s fie valori ntructva
divergente, (n zona biilor de rang inferior, spre exemplu) chiar dac, n fapt,
reprezint rezultate corecte.
Astfel, dou rezultate u i v sunt practic identice dac are loc relaia:
|u v| < ,
unde valoarea parametrului este dinainte specificat.
Este de reinut faptul c relaia practic identice nu este o relaie tranzitiv.
Aceasta nseamn c atunci cnd m este practic identic cu n, iar n este practic identic
cu p, nu rezult c i m este practic identic cu p.
Se consider o valoare = 0,1 i un set cu cinci rezultate {1,11; 1,32; 3,00; 1,10;
1,49}.
Un circuit de vot bi-valoric cu parametrul = 0,1 va genera, pentru acest set de
rezultate, subsetul {1,10; 1,11}.
n consideraiile care au stat la baza construciilor teoretice de fiabilitate ale sistemelor
TMR s-a introdus implicit ipoteza c toate liniile de ieire conectate la intrrile
circuitului de vot sunt caracterizate printr-o probabilitatea de defectare identic.
Sunt numeroase situaii cnd aceast ipotez este invalidat.
Circuitele ori aplicaiile care produc un anumit rezultat pot avea probabiliti diferite
de defectare, din raiuni care guverneaz modul de funcionare i de evaluare a
fiabilitii (tehnologiile diferite, spre exemplu).
Din aceste considerente rezult utilizarea un circuit de vot care funcioneaz ponderat
i genereaz ieiri care sunt asociate la mai mult dect jumtatea sumei ponderilor
sale de funcionare.
u1
u1
u1
u2
u2
u2
u3
u3
u3
u4
u4
u4
Memorie
Procesor
Memorie
Procesor
Memorie
Figura 2. Circuite de vot triplicate ntr-un sistem triplumodular redundant la nivelul procesoarelor i memoriilor.
sistemului este mai fiabil dect votul majoritar singular al unei structuri avnd
triplicat binomul procesor memorie.
Redundana dinamic
Unitatea
Deteciei
Erorilor
i
Reconfigurrii
Modul Rezerv 2
.
.
.
Modul Rezerv N
(1)
n (1) s-a notat prin R(t) fiabilitatea fiecrui modul iar Rudr este fiabilitatea unitii de
detecie i reconfigurare.
2
Dar dac modulele aflate n rezerv nu sunt alimentate (se economisete energie)
acestea pot avea o vitez de defectare neglijabil atunci cnd nu sunt active.
Apariia defectelor n modulul activ are loc cu viteza .
Se noteaz prin c factorul de acoperire, definit ca fiind probabilitatea ca modulul activ
defect s fie corect diagnosticat i deconectat iar apoi nlocuit cu succes printr-un
modul funcional disponibil aflat n rezerv.
Astfel, probabilitatea ca o defectare s nu fie recuperat este 1 c . Iar viteza cu care
au loc defectrile irecuperabile este ( 1 c ).
Prin urmare probabilitatea ca s aib loc o defectare irecuperabil a modulului activ
peste o durat t este determinat prin e (1c ) t .
Fiabilitatea unitii de detecie i reconfigurare a fost notat prin Rudr(t), rezultnd
expresia fiabilitii redundanei dinamice:
Rdinamic (t ) = Rudr (t )e (1c ) t .
(2)
REDUNDANA HIBRID
Primar 1
Ieiri ale
unitilor
active
Semnale de
dezacord
Unitatea de
Reconfigurare
Primar N
Rezerv 1
Rezerv K
Figura 1. Redundana hibrid.
n figura 1 este prezentat diagrama unui sistem hibrid constnd dintr-un nucleu cu N
procesoare care constituie un sistem NMR i un set de K procesoare de rezerv.
Ieirile modulelor primare active sunt comparate (n Unitatea de Comparaie) urmare
a unui semnal al circuitului de vot (V) n vederea identificrii unui posibil procesor
defect (dac exist vreunul).
n cazul detectrii unei astfel de situaii Unitatea de Comparaie genereaz un semnal
de dezacord care va determina Unitatea de Reconfigurare s deconecteze procesorul
primar activ defect i s conecteze un procesor de rezerv, substituind procesorul
primar defect.
Fiabilitatea unui sistem hibrid cu un nucleu TMR i K procesoare de rezerv are
forma:
(1)
n formul s-a notat prin m numrul total de procesoare, m = K + 3, iar prin Rvot(t)
fiabilitatea circuitului de vot i comparaie i prin i Rrec(t) fiabilitatea unitii de
reconfigurare.
n expresia (1) se presupune c orice defect care apare fie n circuitul de vot, fie n
unitatea de comparaie i configurare va cauza defectarea sistemului.
Practic, nu toate defectele din aceste circuite sunt capitale i din acest motiv, n
realitate, fiabilitatea sistemului hibrid este mai mare dect fiabilitatea evaluat prin
aceast formul.
E posibil o expresie mai precis a fiabilitii sistemelor hibride care se poate
determina printr-o analiz amnunit a cilor de defectare ale circuitului de vot ca i
ale circuitelor de comparaie i reconfigurare.
Similar structurii NMR, toate cele N module din schema redundanei modulare cu
filtrare sunt active (figura 1) iar sistemul este operaional atta vreme ct exist cel
puin dou module funcionale.
Ceea ce deosebete aceast structur redundant de structura de referin NMR este
introducerea unor noi blocuri.
Caracteristic sunt introduse blocurile Comparator, Detector i Colector care
nlocuiesc circuitul de vot majoritar.
Modulul 1
Modulul 2
Colector
Modulul N
F1 F2
FN
E12
Detector
Comparator
E(N-1)N
n acest mod, liniile de ieire ale modulelor care nu corespund celorlalte linii de ieire
sunt filtrate i nceteaz s contribuie la formarea ieirii sistemului.
Implementarea acestei structuri este apreciat ca fiind mai simpl dect a structurii
redundanei hibride, spre exemplu.
Un punct sensibil al acestui sistem rezid n determinarea pragului de severitate al
procesului de filtrare.
Marea majoritate a defectrilor, n astfel de sisteme, au tendina s prezinte un
caracter tranzitoriu i dispar, din raiuni proprii, dup un timp.
Prin prisma acestor raiuni pragmatice, se prefer filtrarea definitiv a unui modul abia
atunci cnd a livrat ieiri incorecte pe durata unui interval susinut de timp.
Modul
Comparator
Modul
Dar dac rezultatele sunt diferite atunci, fiind dovedit o mal-funcionare evident, se
apeleaz o rutin de nivel nalt care decide modul de tratare al erorii.
Faptul c rezultatele calculate prin cele dou procesoare difer nu poate decide
identificarea rezultatului corect implic introducerea unor criterii i metodele
corespunztoare detectrii procesorului defect.
Fiabilitatea sistemelor duplex utilizeaz factorul de acoperire. Acest factor este
probabilitatea ca un procesor defect s fie corect diagnosticat, identificat i deconectat
din structur.
Presupunnd utilizarea a dou procesoare identice n sistemul duplex, fiecare avnd
fiabilitatea T(t), atunci fiabilitatea sistemului duplex este:
Rduplex (t ) = Rcomparator (t )( R 2 (t ) + 2cR(t )(1 R(t )))
(1)
MTTFduplex =
1 c
+
2
Diferena major dintre TMR i sistemul duplex rezid n faptul c pentru sistemul
duplex procesorul defect trebuie identificat.
Platformdeelearningicurriculecontent
pentrunvmntulsuperiortehnic
SistemeTolerantelaDefecte
20.Tehnicilesoftwarepentrutolerantaladefecte
TESTELE DE ACCEPTARE
Au fost propuse i descrise cteva structuri resiliente mai complicate care utilizeaz
sistemul duplex drept un bloc de construcie.
Sistemele duplex cu rezerve duplex, aa cum se poate vedea din figura 1, sunt sisteme
n care modulele sunt grupate n perechi iar fiecare pereche are un comparator care
verific dac cele dou ieiri sunt egale (ori suficient de apropiate).
Modul
Comparator
Modul
Comparator
Comutator
Modul
Comparator
Modul
Dac ieirile celor dou module primare nu coincid acest fapt indic o eroare a unui
dintre cele dou procesoare dar nu indic i care anume este cel ce a produs eroarea.
Rularea testelor de diagnostic, aa cum s-a artat anterior, ar provoca o ntrerupere a
serviciului furnizat de sistemul respectiv.
n scopul evitrii ntreruperii serviciului ntreaga pereche este deconectat iar calcul
va fi continuat de o pereche de procesoare aflate, pn atunci, n rezerv.
Cele dou procesoare excluse din sistem pot fi, n acest context, testate separat i
independent de activitatea sistemului.
Testarea are n vedere stabilirea naturii erorii - eroare tranzitorie ori eroare
permanent, pentru procesorul n cauz.
n cazul n care eroarea s-a stabilit ca fiind de natur tranzitorie, perechea de
procesoare poate fi, eventual, declarat ca fiind o pereche funcional i introdus n
rezerv.
Platformdeelearningicurriculecontent
pentrunvmntulsuperiortehnic
SistemeTolerantelaDefecte
23.TolerantaladefecteaplicatacircuitelorVLSI
permanent
62%
Control flux
temporar
8%
Control
Date
Altele
8%
4%
2%
latent
16%
[STDM82]
[MQS90]
Execuie
invalid
program
63%
Adresa
codului
operaiei
59%
45%
Adres
citire
invalid
44%
Adres
memorie
invalid
56%
72%
Cod
operaie
inexistent
37%
1%
Adres
scriere
invalid
19%
9%
Memorie
inexistent
8%
Efecte
Erori
controlul
fluxului
33%
Erori
Date
Alte
erori
Erori
magistrale
Erori
adresare
Erori
de baz
60%
7%
28%
8%
37%
Cteva din rezultatele cunoscute ale cercetrilor asupra erorilor din microprocesoare
sunt prezentate n tabelele 1, 2 i 3. Sunt considerate erorile relativ uor de detectat
din microprocesoare.
Tehnicile ntrebuinate sunt, ntre altele, simularea [ORG92], injectarea defectelor
prin iradiere cu ioni grei [KGT89], disturbaiile de putere i modificarea semnalelor
de pe magistralele sistemelor [MKS90], [STDM82].
Cel mai important rezultat al acestor studii este faptul c defectele tranzitorii i
intermitente constituie principala cauz a defectrii sistemelor digitale. Se estimeaz
c aceste categorii de defecte apar cu o frecven de 10 pn la de 30 de ori mai mare
dect defectele permanente. Aceasta conduce la concluzia c 90% din defectele
calculatoarelor sunt tranzitorii i intermitente [SL81].
Defectele tranzitorii pot fi cauzate n primul rnd de zgomotul sursei de alimentare
(variaii ale frecvenei de comutaie), interferene electro-magnetice (reele de
comunicaii fr fir i altele), ionizri ale razelor cosmice ori particule alfa din
materialele utilizate pentru ncapsularea circuitelor.
ntr-o mai mic msur, defectele intermitente, pot fi cauzate de erori ale proiectrii.
Printre acestea sunt menionate cteva deficiene tipice, cum ar fi:
Depirea numrului liniilor de intrare n anumite pori,
Circuitele funcionnd cu semnale marginale,
Oscilaiile circuitelor cu stri (oscilaii ntre strile active i cele inactive) etc.
O concluzie esenial a acestor studii a fost determinarea celor mai eficiente
mecanisme de detecie a erorilor.
Printre acestea, n afar de verificarea datelor, sunt:
o verificarea fluxului de comenzi (controlul),
o verificarea modului de adresare al memoriei i
o verificarea codurilor instruciunilor.
Este de reinut c, verificarea codurilor instruciunilor este eficient, mai cu seam, n
cazul n care nu sunt utilizate toate codurile posibile pentru codificarea instruciunilor
procesorului.
Aa cum s-a dovedit pe cale experimental, cea mai mare parte a defectelor sunt
defecte tranzitorii. Acest tip de defecte sunt dificil de evitat prin proiectare i prin
testare pe durata procesului de manufacturare.
Testele clasice planificate sistematic, n afara rulajului normal al unui microprocesor,
sunt consumatoare importante de timp i nu sunt capabile s detecteze defectele
tranzitorii. Sunt de preferat tehnici concurente on-line de detecie a erorilor [KK07].
Se dovedete c unica abordare pentru creterea dependabilitii microprocesoarelor
sunt tehnicile de toleran a defectelor. Deoarece dependabilitatea unui sistem este
deosebit de sensibil fa de defectele nedetectate ori impropriu tratate [Sos94]
aplicarea tehnicilor de detecie eficient a erorilor este de extrem interes.
ntruct defectele tranzitorii nu produc defecte permanente n sisteme, ansele de
recuperare sunt importante, cu att mai mult atunci cnd acoperirea erorilor este mare
iar latena este mic (evitndu-se rspndirea efectelor erorilor i compromiterea
recuperrii datelor).
Din punctul de vedere al nivelului la care se face verificarea, detectoarele concurente
de erori pot fi clasificate n trei mari clase:
Circuitul
Sistemul
Aplicaia
Cea mai simpl tehnic de acest tip mandateaz executarea oricrui program de dou
ori urmnd ca utilizarea rezultatelor s fie condiionat de congruena acestora.
Aceast abordare este, adesea, numit redundana temporal i are drept urmare
direct reducerea cu 50% a performanei sistemului de calcul. Tehnica aceasta nu
impune detectarea erorii.
Memoria
Magistrala
de date
Procesorul
principal
Procesorul de
monitorizare
Magistrala
de adrese
Dar, dac este implementabil un mecanism care s detecteze erorile ce pot s apar pe
durata execuiei unei instruciuni, atunci instruciunea respectiv trebuie re-executat,
preferabil dup un anumit timp care s permit dispariia defectului tranzitoriu.
O astfel de abordare care vizeaz doar re-execuia unei singure instruciuni, la un
anumit moment, are un impact mult mai mic asupra performanei, comparativ cu reexecuia n ntregime a programului.
Au fost dezvoltate i alte tehnici, care implic costuri mici, pentru tratarea concurent
a erorilor.
V2
V3
V4
V5
(a)
accept semntura(V1);
fie
accept semntura (V2);
fie
accept semntura (V3);
ori
accept semntura (V4);
accept semntura (V5);
ori
accept semntura (V5);
(b)
(c)
Figura 2.
(a) Graful fluxului de control.
(b) Verificarea fluxului de control.
(c) Verificarea nodurilor i a fluxului de control.
Copia
primar
Compararea
ieirilor
Copia
secundar
n acest scop, pentru fiecare aplicaie se deschid dou fire independente de execuie.
Aceste fire execut acelai cod i se are n vedere s primeasc aceleai intrri.
Dac operarea decurge corect atunci aceste fire produc aceleai ieiri. O divergen a
ieirilor denot un defect i se impun msurile de recuperare corespunztoare.
Ideea de baz este furnizarea aceluiai nivel de protecie, mpotriva defectelor
tranzitorii, ce poate fi oferit ntr-o abordare tradiional care ar rula, n mod
independent, dou copii ale aceleiai aplicaii.
Pentru micorarea penalizrii cauzate prin re-execuie, a doua execuie a aplicaiei
urmeaz ntotdeauna prima execuie. Cele dou execuii se vor numi copia primar i
respectiv copia secundar a aplicaiei. Avantajul acestei abordri const n faptul c se
poate transmite informaie de la copia primar, spre copia secundar pentru creterea
vitezei de rulare a secundarei dar i pentru micorarea consumului de resurse al
acesteia.
Pentru cele dou fire de execuie independente dar identice, ca aplicaie, se vor aloca
dou seturi distincte de componente hardware.
Se vor aloca dou seturi distincte de registre arhitecturale, astfel nct un defect dintrun registru utilizat ntr-un fir de execuie nu avea nici un impact asupra execuiei
celuilalt fir.
[AB81]
Platformdeelearningicurriculecontent
pentrunvmntulsuperiortehnic
SistemeTolerantelaDefecte
24.Retelesisistemedistribuitetoleranteladefecte
Heartbeats
ij = piji ( j i ij = i ).
Se noteaz, n general, prin Pi(t) probabilitatea ca procesul s fie n starea i la
momentul t, dat fiind startarea acestuia din starea i0 la momentul t = 0 .
1
Pentru un anumit moment de timp t i pentru o stare dat i i pentru un foarte scurt
interval de timp t, lanul va fi n starea i la momentul t + t, ntr-unul din
urmtoarele cazuri:
1. Lanul a fost n starea i la momentul t i nu a tranzitat ntr-o alt stare pe durata
intervalului de timp t.
Acest eveniment are probabilitatea Pi(t)(1 - it) la care se adaug, posibil,
termeni n t2.
2. Lanul a fost n starea j la momentul t (j i) i a tranzitat din starea j n starea
i pe durata intervalului de timp t.
Acest eveniment are probabilitatea
Pj(t)jit la care se adaug, posibil,
termeni n t2.
Probabilitatea efecturii mai multor tranziii pe durata intervalului de timp t este
neglijabil (este de ordinul t2) dac intervalul de timp t este suficient de mic.
Astfel, pentru un interval scurt de timp t,
Pi(t + t) Pi(t)(1 - it) +
P (t )
i j
ji
t .
Aceast aproximaie devine mai precis atunci cnd intervalul de timp considerat t
tinde spre zero, t 0 i rezult:
dPi (t )
= i Pi (t ) + ij Pj (t ) ,
dt
j i
Deoarece
j i
Markov.
Ambele
funcionale
1 funcional
1 defect
(1-c)
0
Sistemul
este defect
(1)
Soluionarea sistemului (1) cu condiiile iniiale P2(0) =1, P1(0) = P0(0) = 0, conduce
la expresiile probabilitilor celor trei stri:
P2 (t ) = e t ,
P1 (t ) = c te t ,
P0 (t ) = 1 P2 (t ) P1 (t ).
(2)
(3)
Rduplex (t ) = e t + c e t .
Un alt sistem duplex care este imediat analizabil prin modelul lanurilor Markov este
cel care are o vitez constant de defectare dar i o vitez constant de reparaie .
Modelul Markov al acestui sistem este prezentat n figura 2.
2
Ambele
funcionale
1 funcional
1 defect
Sistemul
este defect
Similar cazului anterior starea din acest lan Markov este reprezentat prin numrul de
procesoare funcionale.
Ecuaiile difereniale care descriu acest lan Markov sunt descrise prin sistemul (4):
dP2 (t )
= 2 P2 (t ) + P1 (t )
dt
dP1 (t )
= 2 P2 (t ) + 2 P0 (t ) ( + ) P1 (t )
dt
dP0 (t )
= P2 (t ) 2 P0 (t )
dt
(4)
Soluia sistemului (4) cu condiiile iniiale P2(0) = 1, P1(0) = P0(0) = 0, arat astfel:
P2 (t ) =
2
2
2
( + )t
+
e
+
e2( + )t ,
2
2
2
( + ) ( + )
( + )
2
2 ( ) ( + )t
2 2
+
e
+
e2( + )t ,
( + ) 2 ( + ) 2
( + ) 2
P0 (t ) = 1 P1 (t ) P2 (t ).
P1 (t ) =
Se poate remarca faptul c s-au determinat doar expresiile pentru P1(t) i P2(t).
(5)
(6)
Deoarece n cele mai multe din cazuri procesoarele sunt reparate atunci cnd s-au
defectat amndou, disponibilitatea pe termen lung a sistemului duplex este mult mai
relevant dect fiabilitatea aceluiai sistem.
Pentru calculul acesteia trebuie determinate P2(), P1() i P0().
Acestea probabiliti pot fi obinute prin trecerea la limit a variabilei t n expresiile
corespunztoare sau prin anularea tuturor derivatelor din sistemul (5) i soluionnd
sistemul de ecuaii rezultat.
A = P2 () + P1 () =
2
2
,
+
2
( + ) ( + ) 2
( + )
2
A=
1
.
=
( + ) 2
( + ) 2
(7)
Platformdeelearningicurriculecontent
pentrunvmntulsuperiortehnic
SistemeTolerantelaDefecte
26.RedundanatemporalCheckpoint
Multe dintre aplicaiile curente pot s se deruleze pe durate lungi de timp. n acest
sens se pot cita aplicaii mari consumatoare de timp ca fiind:
-
Orice eroare semnalat i detectat, la un moment dat, poate declana reluarea unei
astfel de aplicaii cu masive implicaii asupra costurilor dar chiar i asupra
oportunitii relurii respectivei aplicaii.
Duratele lungi de calcul fac ntotdeauna ca probabilitile de apariie ale unor erori s
creasc, indiferent de cauzele care favorizeaz ori produc respectivele erori.
Un model analitic al unei astfel de situaii poate fi creionat astfel:
STUDII DE CAZ
Dar dac se consider i apariia unui defect tranzitoriu n intervalul de timp [0, T] la
momentul [0, T], atunci timpul mediu de execuie are expresia:
e T 1
E=
(02)
Sunt i situaii cnd memoria RAM, asigurat eventual i printr-o surs suplimentar
foarte stabil de alimentare electric (cum ar fi bateriile, spre exemplu), poate gzdui
astfel de checkpoint-uri.
O frecvent salvare a informaiilor necesare i suficiente pentru reluare procesului de
calcul poate induce o cretere a timpului de execuie, indiferent dac apar sau nu apar
defecte tranzitorii.
Aceast cretere a timpului de calcul, impus de procesul de salvare definete
suprasarcina indus de procesul de checkpoint-are.
Legat de procesul de checkpoint-are este de luat n consideraie i timpul de salvare al
informaiilor. Aceste timp este numit n literatur latena checkpoint-rii.
n cele mai multe dintre aplicaiile foarte simple suprasarcina i latena checkpointrii sunt aproape identice.
Dar, n cazul sistemelor mari care permit o suprapunere a operaiilor de salvare cu
execuia aplicaiei, latena poate fi substanial mai mare dect suprasarcina.
Latena checkpoint-rii depinde mult de volumul salvrilor.