Documente Academic
Documente Profesional
Documente Cultură
Seminar ca la tablă 3
Numărul simbolurilor de control, informație
• Pentru a transmite 20 mesaje este necesar un număr de 𝒌 = 𝟓
simboluri de informaţie. Numărul
simbolurilor de control rezultă din expresia marginii Hamming:
𝒆 𝟏
𝒆=𝟏 𝒏=𝒎+𝒌
𝟐𝒎 ≥ 𝑪𝒌𝒏 𝑪𝒌𝒏 = 𝑪𝟎𝒏 + 𝑪𝟏𝒏 = 𝟏 +𝒏 𝟏+𝒎+𝒌
𝒌=𝟎 𝒌=𝟎
𝟐𝒎 − 𝟏 ≥ 𝒏 = 𝒎 + 𝒌 = 𝒎 + 𝟓 → 𝒎 = 𝟒 → 𝒏 = 𝟗
Seminar ca la tablă 4
Matricea de control (corecție) Hamming
• matricea de control este o matrice de 𝒏 = 𝟗 coloane şi 𝒎 = 𝟒 linii,
fiecare coloană reprezintă codul binar al numărului de coloană:
𝟎 𝟎 𝟎 𝟎 𝟎 𝟎 𝟎 𝟏 𝟏
𝟎 𝟎 𝟎 𝟏 𝟏 𝟏 𝟏 𝟎 𝟎
𝑯=
𝟎 𝟏 𝟏 𝟎 𝟎 𝟏 𝟏 𝟎 𝟎
𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏
1 2 3 4 5 6 7 8 9
Seminar ca la tablă 5
Simboluri de control
• cuvântul de cod Hamming este nesimetric şi are structura
𝒗 = 𝑐1 𝑐2 𝑖3 𝑐4 𝑖5 𝑖6 𝑖7 𝑐8 𝑖9
Seminar ca la tablă 6
Condiția de cuvânt de cod
𝑐1
𝑐2
𝑖3
0 0 0 0 0 0 0 1 1 𝑐4
î𝑛𝑚𝑢𝑙ț𝑖𝑟𝑒 0 0 0 1 1 1 1 0 0 ∙ 𝑖5 = 0
•𝐻∙ 𝑣𝑇 =0
0 1 1 0 0 1 1 0 0 𝑖6
1 0 1 0 1 0 1 0 1 𝑖7
𝑐8
𝑖9
Seminar ca la tablă 7
Cuvintele de cod
C1 C2 I3 C4 I5 I6 I7 C8 I9
V0 0 0 0 0 0 0 0 0 0
V1 1 1 1 0 0 0 0 0 0
V2 1 0 0 1 1 0 0 0 0
V3 0 1 1 1 1 0 0 0 0
V4 0 1 0 1 0 1 0 0 0
V5 1 0 1 1 0 1 0 0 0
V6 1 1 0 0 1 1 0 0 0
V7 0 0 1 0 1 1 0 0 0
V8 1 1 0 1 0 0 1 0 0
V9 0 0 1 1 0 0 1 0 0
V10 0 1 0 0 1 0 1 0 0
V11 1 0 1 0 1 0 1 0 0
V12 1 0 0 0 0 1 1 0 0
V13 0 1 1 0 0 1 1 0 0
V14 0 0 0 1 1 1 1 0 0
V15 1 1 1 1 1 1 1 0 0
V16 1 0 0 0 0 0 0 1 1
V17 0 1 1 0 0 0 0 1 1
V18 0 0 0 1 1 0 0 1 1
V19 1 1 1 1 1 0 0 1 1
Seminar ca la tablă 8
Pondere minimă, poziția c4 eronată
• d. după inspectarea tabelului rezultă că ponderea minimă
𝑃𝑚𝑖𝑛 = 3 şi 𝑑𝑚𝑖𝑛 = 3 pentru o eroare
0
1
𝒛 = 𝑯 𝒗, 𝑻 𝑻
= 𝑯𝜀 = 𝒉𝟒 = şi reprezintă codul binar al poziţiei eronate.
0
0
Seminar ca la tablă 9
Erori pe pozițiile 2,7
• f. în acest caz cuvântul de eroare este:
𝜀 = 0 1 0 0 0 0 1 0 0 , iar corectorul
0
1
𝒛 = 𝒉2 + 𝒉𝟕 = 𝒉𝟓 =
0
1
• Decodorul ar acţiona ca şi cum eroarea ar fi pe poziţia a 5-a şi
efectuează “corecţia” presupusei erori, introducând de fapt o eroare
suplimentară pe poziţia a 5-a, pe lângă cele deja existente.
Seminar ca la tablă 10
Forme canonice H
• g. formele canonice 𝑯′ , 𝑯′′ sunt conform relațiilor studiate
𝑯′ = 𝑰𝒎 𝑸 și
𝟏 𝟎 𝟎 𝟎 𝟎 𝟎 𝟎 𝟎 𝟏
𝑯′ = 𝟎 𝟏 𝟎 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎
𝟎 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟏 𝟎
𝟎 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎 𝟏 𝟏
𝟎 𝟎 𝟎 𝟎 𝟏 𝟏 𝟎 𝟎 𝟎
′′
𝑯 = 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎
𝟏 𝟎 𝟏 𝟏 𝟎 𝟎 𝟎 𝟏 𝟎
𝟏 𝟏 𝟎 𝟏 𝟏 𝟎 𝟎 𝟎 𝟏
𝒗′′ = 𝒊𝟑 𝒊𝟓 𝒊𝟔 𝒊𝟕 𝒊𝟗 𝒄𝟖 𝒄𝟒 𝒄𝟐 𝒄𝟏
Seminar ca la tablă 12
Forme canonice G
• formele canonice 𝑮′ , 𝑮′′ sunt conform relațiilor studiate
𝑮′ = 𝑸𝑻 𝑰𝒌 = 𝑷 𝑰𝒌 și
𝟏 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟎 𝟎
𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟎 𝟎
𝑮′ = 𝟎 𝟏 𝟏 𝟎 𝟎 𝟎 𝟏 𝟎 𝟎
𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟎 𝟏 𝟎
𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟎 𝟎 𝟏
𝟏 𝟎 𝟎 𝟎 𝟎 𝟏 𝟎 𝟏 𝟏
𝟎 𝟏 𝟎 𝟎 𝟎 𝟎 𝟏 𝟎 𝟏
𝑮′′ = 𝟎 𝟎 𝟏 𝟎 𝟎 𝟎 𝟏 𝟏 𝟎
𝟎 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟏
𝟎 𝟎 𝟎 𝟎 𝟏 𝟏 𝟎 𝟎 𝟏
Seminar ca la tablă 14
Forme canonice G
• h. matricea 𝑮 se obține prin permutări ale coloanelor 𝑮′ , 𝑮′′ și corespunde ca și matricea 𝑯 unui
cod nesistematic cu cuvinte avâns structura
𝒗 = 𝒄𝟏 𝒄𝟐 𝒊𝟑 𝒄𝟒 𝒊𝟓 𝒊𝟔 𝒊𝟕 𝒄𝟖 𝒊𝟗
• Și este de forma
𝟏 𝟏 𝟏 𝟎 𝟎 𝟎 𝟎 𝟏 𝟎
𝟏 𝟎 𝟎 𝟏 𝟏 𝟎 𝟎 𝟎 𝟎
𝑮= 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟎 𝟎
𝟏 𝟏 𝟎 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎
𝟏 𝟎 𝟎 𝟎 𝟎 𝟎 𝟎 𝟏 𝟏
• Se recunosc în liniile matricei G cuvinte de cod: de exemplu, linia a 2-a este cuvântul v2, linia a 3-a
— cuvîntul v4; de pot recunoaşte drept cuvinte de cod şi combinaţii liniare ale liniilor matricei G:
de exemplu cuvântul v3 rezultă din însumarea liniilor 2 şi 3 ale matricei G.
Seminar ca la tablă 15
Codorul
Seminar ca la tablă 16
Decodorul
Seminar ca la tablă 17
Simulator Hamming
• http://www.ecs.umass.edu/ece/koren/FaultTolerantSystems/simulato
r/Hamming/HammingCodes.html
•
Seminar ca la tablă 18
Problema 2
Seminar ca la tablă 19
• numărul simbolurilor de informație k se detrmină din relația 2𝑘 ≥ 𝑁 =
8 → 𝑘 = 3. Marginea Hamming dă pentru numărul simbolurilor de control
2𝑚 ≥ 𝑛 + 1 = 𝑚 + 𝑘 + 1 = 𝑚 + 3 + 1 → 𝑚 = 3.
• La aceste simboluri de control trebuie adăugat simbolul de verificare la
paritate, așa încât numărul total de simboluri de control va fi
𝑚∗ = 𝑚 + 1 = 3 + 1 = 4.
Seminar ca la tablă 20
Matricea Hamming extinsă
• Matricea de control a coduluicorector de o eroare este de forma
0 0 0 1 1 1
• 𝑯 = [𝒉𝟏 𝒉𝟐 𝒉𝟑 𝒉𝟒 𝒉𝟓 𝒉𝟔 ] 𝑯= 0 1 1 0 0 1
1 0 1 0 1 0
• Se obține matricea
0 0 0 0 1 1 1
0 0 1 1 0 0 1
∗
𝑯 = = [𝒉∗𝟎 𝒉𝟏∗ 𝒉𝟐∗ 𝒉𝟑∗ 𝒉𝟒∗ 𝒉𝟓∗ 𝒉𝟔∗ ]
0 1 0 1 0 1 0
1 1 1 1 1 1 1
Seminar ca la tablă 21
• Pentru acest caz, cuvântul de eroare este de forma 𝜀 = 0010000 .
expresia corectorului
0
0
0 0 0 0 1 1 1 0
1 𝒉𝟐
∗ ,𝑻 ∗ 𝑻 0 0 1 1 0 0 1 1
• 𝑯 ⋅𝒗 =𝑯 ⋅𝜀 = ⋅ 0 = =
0 1 0 1 0 1 0 0 1
0
1 1 1 1 1 1 1 1
0
0
• Din expresia corectorului rezultă că apare o eroare corectabilă (𝑧0 =
1) pe poziția a 2-a (𝒛 = 𝒉𝟐 )
Seminar ca la tablă 22
• Pentru acest caz, cuvântul de eroare este de forma 𝜀 = 0110000 ,
rezultă corectorul 0
1
0 0 0 0 1 1 1 0
1
,𝑻 0 0 1 1 0 0 1 1
∗
𝑯 ⋅𝒗 =𝑯 ⋅𝜀 = ∗ 𝑻 ⋅ 0 = = 𝒉𝟏∗ + 𝒉𝟐∗
0 1 0 1 0 1 0 1
0
1 1 1 1 1 1 1 0
0
0
• Corectorul arată că apar două erori detectabile (𝑧0 = 0, 𝒛 ≠ 𝟎)).
Seminar ca la tablă 23
Cuvintele de cod
• Cuvintele de cod se pot scrie calculând simbolurile de control din cele
de informație cu relația
• 𝑯∗ ⋅ 𝒗𝑇 = 0, din care rezultă
𝑐4 = 𝑖5 + 𝑖6 ;
𝑐2 = 𝑖3 + 𝑖6 ;
𝑐1 = 𝑖3 + 𝑖5 ;
𝑐0 = 𝑐1 + 𝑐2 + 𝑖3 + 𝑐4 + 𝑖5 + 𝑖6 ;
Seminar ca la tablă 24
Toate cuvintele de cod
Simboluri
Cuvinte de cod c0 c1 c2 i3 c4 i5 i6
v0 0 0 0 0 0 0 0
v1 1 0 1 0 1 0 1
v2 1 1 0 0 1 1 0
v3 0 1 1 0 0 1 1
v4 1 1 1 1 0 0 0
v5 0 1 0 1 1 0 1
v6 0 0 1 1 1 1 0
v7 1 0 0 1 0 1 1
Seminar ca la tablă 25
Verificarea cuvântului de cod recepționat
• Se calculează corectorul 1
1
0 0 0 0 1 1 1 0
0 𝒛
0 0 1 1 0 0 1 0
𝒛 ∗ = 𝑯 ∗ 𝒗, 𝑻 = ⋅ 0 = = 𝑧
0 1 0 1 0 1 0 0 0
1
1 1 1 1 1 1 1 0
1
0
Seminar ca la tablă 26
Temă pentru acasă
• Să se construiască un cod Hamming care cu patru simboluri de
control poate avea un număr maxim permis de simboluri de
informație
• Determinați nr de simboluri de informație și lungimea cuvântului de cod
• Scrieți matricea Hamming de control
• Determinați corectorul pentru eroare în poziția 10
• Să se determine varianta extinsă pentru codul precedent
• Determinați nr de simboluri de informație și lungimea cuvântului de cod
• Scrieți matricea Hamming de control
• Determinați corectorul pentru erori în pozițiile 4,8
Seminar ca la tablă 27