Transcript PPTX

Kodavimo teorija:
Sąsūkų kodai
KM Jonas Daugalas
1
Klaidas taisantys kodai
• Blokiniai
• Sąsūkų (konvoliuciniai, angl. convolutional)
2
Blokiniai kodai
Informacija skaidoma į k ilgio blokus, kiekvienas jų
nepriklausomai užkoduojamas į n ilgio bloką ir taip
pat nepriklausomai iškoduojamas.
3
Sąsūkų kodai
• Kiekvienas k simbolių ilgio informacijos srauto
vienetas transformuojamas į n simbolių ilgio kodo
vienetą.
• Transformacija – tai funkcija nuo einamojo
informacijos vieneto ir m prieš tai buvusių
informacijos vienetų.
• Praktikoje blokinių kodų blokų dydžiai yra daug
didesni už sąsūkų kodų informacijos vienetų
dydžius.
4
Sąsūkų kodai (kodavimo schema)
5
Privalumai
• „Greitas kodavimas ir dekodavimas, vykstantys
vienu metu su informacijos siuntimu ir gavimu“ [1]
• „Kodavimo ir dekodavimo schemos labai paprastos,
tuo tarpu blokiniams kodams sunku rasti efektyvius
dekodavimo algoritmus (didelei daliai blokinių kodų
efektyvūs dekodavimo algoritmai išvis
neegzistuoja)“ [1]
6
Trūkumai
• „Mažesnės klaidų ištaisymo galimybės nei
blokiniame kodavime“ [1]
• „Jų struktūra mažiau ištyrinėta, tuo tarpu blokinių
kodų struktūra yra įvairesnė ir geriau išstudijuota,
nes blokiniai kodai yra artimesni tradicinėms, gerai
ištyrinėtoms matematinėms struktūroms“ [1]
7
Kodavimo aprašymai ir
reprezentacijos
• Generuojančiomis matricomis
• Stumiamaisiais registrais (angl. shift registers)
• Būsenų diagramomis
• ...
8
Generuojanti matrica
𝑠 = 𝑠1, 𝑠2, 𝑠3, …
Informacijos srautas reprezentuojamas begaliniu vektoriumi s:
Generuojanti matrica G:
𝐺=
G0 G1 G 2 … Gm
G0 G 1 G2 … Gm
G 0 G1 G2 … Gm
⋱
kur Gi yra k × n dydžio submatricos:
𝐺𝑖 =
Užkoduotas srautas vaizduojamas vektoriumi c,
kuris gaunamas dauginant informacijos vektorių
dauginant iš generuojančios matricos:
𝑔1,𝑖
1
𝑔2,𝑖
1
…
𝑔𝑛,𝑖
2
𝑔2,𝑖
⋮
𝑘
𝑔2,𝑖
2
…
2
𝑔1,𝑖
⋮
𝑘
𝑔1,𝑖
1
𝑔𝑛,𝑖
⋮
𝑘
… 𝑔𝑛,𝑖
𝑐 =𝑠∙𝐺
9
Pavyzdys (generuojanti matrica)
G1
G0
𝐺=
1
0
0
0
⋮
1
0
0
0
⋮
0
1
0
0
⋮
1
1
0
0
⋮
0
0
1
0
⋮
0
1
1
0
⋮
0
0
0
1
⋮
0
0
1
1
⋮
…
…
…
…
⋱
𝑘=1
𝑛=2
𝑚=1
𝑠 = (1 0 1 1 0 0 … )
𝑐 = 𝑠 ∙ 𝐺 = (11 01 11 10 01 00 … )
10
Pavyzdys (stumiamieji registrai)
Diagrama iš
konspektų [1]
• Stačiakampis – atmintis, užlaikanti įrašytą reikšmę vieną laiko momentą.
• Pliusiukas – sumatorius moduliu 2.
11
Pavyzdys (būsenų diagrama)
• Grafo viršūnė atitinka užkoduotojo
būseną - stumiamųjų registrų reikšmių
kombinaciją.
• Briauna reprezentuoja, kaip keičiasi
būsena (registrų reikšmių kombinacija) ir
kas išvedama, priklausomai nuo esamos
būsenos ir įeinančių simbolių.
Diagrama iš
konspektų [1]
12
Dekodavimas
Iš anksto parenkamas t:
𝑡 ≥1
• Imama t kodo srauto vienetų seka.
• Gauta seka lyginama su galimais t kodo vienetų ilgio
kodais iš reikiamos būsenos (jei tai pirmi t blokų, tai
būsena - nulinė/pradinė)
• Iš galimų sekų renkamasi mažiausiai besiskirianti nuo
paimtos iš srauto.
• Iškoduojamas pirmasis iš gautųjų kodo vienetų.
• Prisimenama nauja būsena.
• Iškoduotas kodo vienetas pašalinamas iš sekos,
paimamas tolimesnis kodo srauto vienetas, ir su turima
nauja t kodo vienetų ilgio seka bei nauja būsena
procesas kartojamas
13
Šaltiniai
[1] Gintaras Skersys „Klaidas taisančių kodų teorija: Paskaitų
konspektai“, 2013
14