The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Teoria informacji i kodowania Ćwiczenia Piotr Chołda Katedra Telekomunikacji Akademii Górniczo-Hutniczej

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by , 2016-02-10 03:27:03

Teoria informacji i kodowania - Cwiczenia

Teoria informacji i kodowania Ćwiczenia Piotr Chołda Katedra Telekomunikacji Akademii Górniczo-Hutniczej

Teoria informacji i kodowania

Ćwiczenia

Piotr Chołda

Katedra Telekomunikacji Akademii Górniczo-Hutniczej

Plan prezentacji

1 Zaawansowane kody liniowe (modyfikacje, łączone,
iterowane, R-M, wielomianowe)

Katedra Telekomunikacji AGH 2/18

Plan prezentacji

1 Zaawansowane kody liniowe (modyfikacje, łączone,
iterowane, R-M, wielomianowe)

Katedra Telekomunikacji AGH 3/18

Podstawowe modyfikacje kodów liniowych
(n, k, dmin)

Wydłużanie (lengthening) kodu
Idea: dodanie pozycji informacyjnej.
Jeśli G jest w postaci kanonicznej: dodanie kolumny i wiersza
o tym samym numerze; dodanie kolumny do H.
kLe = k + 1.
nLe = n + 1.
dminLe ≤ dmin.
Operacja odwrotna: skracanie (shortening) — w celu
zaoszczędzenia zasobów.

Katedra Telekomunikacji AGH 4/18

Podstawowe modyfikacje kodów liniowych
(n, k, dmin) cd.

Rozszerzanie (extending) kodu
Idea: dodanie pozycji kontrolnych (w celu polepszenia
właściwości detekcyjno-korekcyjnych).
Dodanie nowej kolumny w G oraz nowego wiersza i nowej
kolumny w H.
nEt = n + 1.
kEt = k.
dminEt ≥ dmin.
Operacja odwrotna: przebijanie (puncturing).

Katedra Telekomunikacji AGH 5/18

Podstawowe modyfikacje kodów liniowych
(n, k, dmin) cd.

Powiększanie (augmenting) kodu
Idea: dodanie nowych słów kodowych (w celach
oszczędnościowych).
Dodanie nowego wiersza w G oraz usunięcie wiersza w H wraz
ze zmianą kolumny o numerze usuniętego wiersza (jeśli H jest
w postaci kanonicznej) — tzn. jedna z pozycji kontrolnych
zaczyna być używana jako pozycja przenosząca informację.
nAu = n.
kAu = k + 1.
dminAu ≤ dmin.
Operacja odwrotna: okrajanie (expurgating).

Katedra Telekomunikacji AGH 6/18

Podstawowe modyfikacje kodów liniowych

Podsumowanie

Modyfikacja nmod kmod dminmod

Wydłużanie nLe ↑ kLe ↑ dminLe ↓
Skracanie nSh ↓ kSh ↓ dminSh ↑

Rozszerzanie nEt ↑ kEt dminEt ↑
Przebijanie nPu ↓ kPu dminPu ↓

Powiększanie nAu kAu ↑ dminAu ↓
Okrajanie nEp kEp ↓ dminEp ↑

Katedra Telekomunikacji AGH 7/18

Kody łączone

Generowanie kodu łączonego
Potrzebne jest m kodów o tym samym parametrze k — (ni , k)
dla kodu i (niekoniecznie systematycznego czy rozdzielnego).
Słowo kodowe kodu łączonego jest tworzone przez złożenie
(zestawienie bit po bicie) m słów kodowych (każde
pochodzące z innego kodu wyjściowego (ni , k)), ale
kodujących ten sam ciąg informacyjny u.

Parametry kodów łączonych
n = i ni .
k = ki , ponieważ k1 = k2 = · · · = ki = . . . .
dmin = i dmini .

Katedra Telekomunikacji AGH 8/18

Kody łączone cd.

Przykład

m = 2,
kod A — (5, 2), kod B — (6, 2),
n = 11, k = 2.

Jakie jest słowo kodowe kodujące ciąg informacyjny u = 11 w
kodzie łączonym otrzymanym z kodów A i B?

W kodzie A ciąg informacyjny u = 11 jest kodowany np. jako
11 |000,

u

W kodzie B ciąg informacyjny u = 11 jest kodowany np. jako
101| 11 |0,

u

Więc: w kodzie łączonym ciąg informacyjny u = 11 zostanie
zakodowany słowem kodowym 11000101110.

Katedra Telekomunikacji AGH 9/18

Kody iterowane

Generowanie kodu iterowanego
Potrzebne jest m kodów o niekoniecznie identycznych
parametrach (ni , ki ), i = 1, 2, . . . , m, kody powinny być
rozdzielne (da się odróżnić pozycje informacyjne i kontrolne).
Słowo kodowe kodu iterowanego jest tworzone przez
konstrukcję macierzy dla m = 2, lub macierzy
wielowymiarowych dla m ≥ 3.
Symbole informacyjne w słowie kodowym są określone przez
ciąg informacyjny u (o długości k1 × k2 × . . . ), która ma być
wysłana za pomocą kodu iterowanego; symbole kontrolne są
generowane zgodnie z zasadą wyliczania bitów kontrolnych dla
kodu i na podstawie ui , tj. podzbiorów ciągów informacyjnych
u związanych z wymiarem i macierzy.

Katedra Telekomunikacji AGH 10/18

Kody iterowane cd.

Parametry kodów iterowanych
n = i ni .
k = i ki .
dmin = i dmini .

Katedra Telekomunikacji AGH 11/18

Kody iterowane cd.

Przykład

m = 2,
kod A — (3, 2) & kod B — (4, 3) ⇒ n = 12, k = 6.

Jakie jest słowo kodowe kodujące ciąg informacyjny u = 000110 w
kodzie iterowanym otrzymanym z kodów A i B?

W kodzie A ciąg informacyjny 00 jest kodowany np. jako

00|0, 01 np. jako 01|1, 10 np. jako 10|1, i 11 np. jako 11|0;

W kodzie B ciąg informacyjny 001 jest kodowany np. jako

001|1, i 010 np. jako 010|1;

Zatem: 0 0 0

0 1 1  ⇒ 000|011|101|110
0 1 
 1 


110

Katedra Telekomunikacji AGH 12/18

Kody Reeda-Mullera

Kody Reeda-Mullera

Kody R-M są definiowane za pomocą dwóch parametrów
[m, l]:

rząd kodu l,
pewna liczba m > l.

Przy tłumaczeniu na notację standardową (n, k):

n = 2m;

l m
i
k= ;

i =0 m m

n−k = m (ponieważ 2m = (1 + 1)m = m ).
i i
i =l +1 i =0

Katedra Telekomunikacji AGH 13/18

Kody Reeda-Mullera cd.

Minimalna odległość Hamminga dla kodów Reeda-Mullera
Dla kodu [m, l]-RM zachodzi:

dmin = 2m−l .

Katedra Telekomunikacji AGH 14/18

Kody wielomianowe

Kod wielomianowy
Kod wielomianowy (n, k) charakteryzuje się co najmniej dwoma
właściwościami:

Ma wielomian generujący:
g (x ) = x n−k + gn−k−1x n−k−1 + · · · + g1x + 1,
reprezentujący sekwencję binarną:
g = 1 gn−k−1 . . . g1 1,

n−k+1 pozycji

gdzie: gn−k−1, . . . , g1 ∈ {0, 1}.
Każde słowo kodowe, przedstawione jako wielomian, jest
podzielne przez g (x).

Katedra Telekomunikacji AGH 15/18

Kody wielomianowe niesystematyczne i
systematyczne

Kody niesystematyczne i systematyczne o tych samych
wielomianach generujących to te same zbiory słów kodowych —
czyli te same podprzestrzenie liniowe — ale z innym przypisaniem
ciągom informacyjnym słów kodowych (kody ekwiwalentne).
Ciąg informacyjny reprezentujemy jako:

u(x ) = uk−1x k−1 + · · · + u0.

Ciąg kodowy odpowiadający u(x) w k. niesystematycznym
u(x)g (x).

Ciąg kodowy odpowiadający u(x) w k. systematycznym

u(x)xn−k + r u(x )x n−k .
g (x)

Katedra Telekomunikacji AGH 16/18

Macierze generujące kodów
wielomianowych

Kod niesystematyczny

 g 00 . . . 0 

g (x)xk−1  k−1 pozycji 

k −2 0g 0 . . . 0 

g (x )x   

k−2 pozycji
 ... 
g (x)x2 
 = ... 
 =
Gk ×n =   


 
0 . . . 0 g0
 

 g (x)x   


k−2 pozycji 
g (x)
 00 . . . 0 g 
 

k−1 pozycji

1 gn−k−1 . . . g1 1 0 . . . . . . 0

0 1 gn−k−1 . . . g1 1 0 . . . 0

 ... ... ... ... ... ... ... ... ... 
 
 

00 . . . . . . . . . . . . . . . g1 1

Katedra Telekomunikacji AGH 17/18

Macierze generujące kodów
wielomianowych

Kod systematyczny

 x n−1 
x n−1 + r g (x)
x n−2 
 g (x) 
 x n−2 + r 
 x n−k+2 
g (x) 
 ... 
+r 
 

Gk ×n = [Ik |PT ] = 

 n−k +2
x


 n−k +1 + r x n−k+1 
x 

 g (x) 

g (x)

Katedra Telekomunikacji AGH 18/18


Click to View FlipBook Version