27.01.2015 Views

Note de curs - Departamentul Automatica, Calculatoare si ...

Note de curs - Departamentul Automatica, Calculatoare si ...

Note de curs - Departamentul Automatica, Calculatoare si ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2. Se stabilesc tabelele cu functiile gflog <strong>si</strong> gfilog dupǎ metoda datǎ mai<br />

<strong>de</strong>vreme<br />

3. Se calculeazǎ matricea F care este o matrice Van<strong>de</strong>rmon<strong>de</strong> mxn: f i,j = j i – 1<br />

(pentru 1 ≤ i ≤ m , 1 ≤ j ≤ n ) cu operatii în GF(2 w ).<br />

4. Matricea F se foloseste la calculul <strong>si</strong> la întretinerea dispozitivelor <strong>de</strong><br />

verificare, din cuvinte <strong>de</strong>puse pe dispozitivele <strong>de</strong> date. Iarǎ<strong>si</strong>, operatiile se<br />

fac în GF(2 w ).<br />

5. Dacǎ un numǎr <strong>de</strong> dispozitive, mai putine <strong>de</strong> m clacheazǎ atunci ele se<br />

reconstituie în maniera care urmeazǎ. Se aleg oricare n dispozitive din cele<br />

rǎmase în functie <strong>si</strong> se construiesc matricea A’ <strong>si</strong> vectorul E’ ca mai sus. Se<br />

rezolvǎ apoi pentru D ecuatia A’D = E’. Prin aceasta datele <strong>de</strong> pe<br />

dispozitivele <strong>de</strong> stocare a datelor sunt recuperate. Acum se pot reconstitui <strong>si</strong><br />

dispozitivele <strong>de</strong> verificare esuate, prin utilizarea matricii F.<br />

Un exemplu. Se presupune cǎ sunt trei suporturi <strong>de</strong> date <strong>si</strong> trei suporturi <strong>de</strong><br />

verificare <strong>si</strong> fiecare dintre ele <strong>de</strong>tine un megaoctet. Asadar, n = 3 <strong>si</strong> m = 3. Se<br />

alege w = 4, asa încât 2 w > m + n. Pentru multiplicǎri se foloseste tabelul dat<br />

mai <strong>de</strong>vreme pentru GF(2 4 ). În aceste conditii matricea F este<br />

0 0 0<br />

⎡1<br />

2 3 ⎤ ⎡1<br />

1 1⎤<br />

⎢ 1 1 1 ⎥<br />

F =<br />

=<br />

⎢<br />

⎥<br />

⎢<br />

2 3 ⎥ ⎢<br />

1 2 3<br />

⎥<br />

⎢<br />

2 2 2<br />

⎥<br />

⎣<br />

1 2 3<br />

⎦<br />

⎢⎣<br />

1 4 5⎥⎦<br />

Se pot calcula acum cuvintele <strong>de</strong> verificare prin relatia C = FD. Se admite cǎ<br />

primele cuvinte stocate pe cele trei dispozitive <strong>de</strong> date sunt, respectiv, 3, 13, 9.<br />

Calculul cuvintelor <strong>de</strong> control C 1 , C 2 , C 3 produce valorile urmǎtoare:<br />

C1 = 1*<br />

3 + 1*<br />

13 + 1*<br />

9 = 3 + 13 + 9 = 0011 ⊕ 1101 ⊕ 1001 = 0111 = 7<br />

C2 = 1*<br />

3 + 2*<br />

13 + 3*<br />

9 = 3 + 9 + 8 = 0011 ⊕ 1001 ⊕ 1000 = 0010 = 2<br />

C3 = 1*<br />

3 + 4*<br />

13 + 5*<br />

9 = 3 + 1 + 11 = 0011 ⊕ 0001 ⊕ 1011 = 1001 = 9<br />

Dacǎ, <strong>de</strong> pildǎ, continutul dispozitivului <strong>de</strong> date cu indicele 2 se modificǎ <strong>si</strong><br />

primul numǎr <strong>de</strong>vine 1, atunci fiecare din dispozitivele <strong>de</strong> verificare primeste<br />

valoarea ( 1 − 13) = (0001 ⊕ 1101) = 1100 = 12, care este utilizatǎ pentru<br />

recalcularea valorilor <strong>de</strong> verificare<br />

C1 = 7 + 1*12 = 0111 ⊕ 1100 = 1011 = 11<br />

C2 = 2 + 2*12 = 2 + 11 = 0010 ⊕ 1011 = 1001 = 9<br />

C3 = 9 + 4*12 = 9 + 5 = 1001 ⊕ 0101 = 1100 = 12<br />

Dacǎ D 2 , D 3 <strong>si</strong> C 3 se pierd atunci, din matricea A <strong>si</strong> din vectorul E se sterg liniile<br />

care corespund dispozitivelor <strong>de</strong>fecte pentru a obtine ecuatia A’D = E’<br />

⎡1<br />

0 0⎤<br />

⎡ 3 ⎤<br />

⎢<br />

⎥<br />

=<br />

⎢ ⎥<br />

⎢<br />

1 1 1<br />

⎥<br />

D<br />

⎢<br />

11<br />

⎥<br />

⎢⎣<br />

1 2 3⎥⎦<br />

⎢⎣<br />

9 ⎥⎦<br />

Prin eliminare Gauss se poate inversa matricea A’ <strong>si</strong> se obtine<br />

116

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!