Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Kommunikációs Rendszerek
A kommunikáció Átviteli hiba XYZ-421 XKZ-4_2 Kommunikációs Rendszerek
2
Átviteli hibák kezelése
Stratégiák Elfogadhatóság mértéke hiba detektálás + átvitel ismétlés (Automatic Repeat Request) (ARQ) Javitó kód alakalmazása (Forward Error Correction) (FEC) Fokozatok Hiba megelőzés Hibajelzés (paritás, CRC, kontroll összeg) Hibajavitás (Hamming, Reed-Solomon) Közös elem : redundancia (n,k): k adat bit, n - k redundáns bit, n kód bit Kommunikációs Rendszerek
3
Kommunikációs Rendszerek
Hiba típusok Különálló (egyes) hiba Többes hiba Hibacsomó (burst) Kommunikációs Rendszerek
4
Kommunikációs Rendszerek
Paritás elemes kód Kommunikációs Rendszerek
5
Kommunikációs Rendszerek
Paritás elemes kód Egy un. „paritás bit“-et adunk az adat bitekhez A paritás bit értékével az adó oldalon az „1”-ek számát párossá (vagy páratlanná) tesszük. Vevő oldalon egy bit hiba detektálható pld. (páros paritás, 7 adat bit) küldött bitek vett bitek (nem páros, hiba) csak páratlan számú hiba jelzésére alkalmas Kommunikációs Rendszerek
6
Paritás két dimenzióban Longitudinal Redundancy Checking (LRC)
Az információ blokkokba szervezve Az üzenet végén egy kiegészítő byte Jelez: Minden egyes hibát Minden kettős hibát Minden háromszoros hibát Majdnem minden négyszeres hibát Minden x-szeres hibát, páratlan x esetén 1 1 1 1 Block Check Character (BCC) Kommunikációs Rendszerek
7
Kommunikációs Rendszerek
Hamming kód adat bitek: Hamming kód: vett bitek: ctrl bit 1: páratlan ctrl bit 2: páros _._ ctrl bit 3: páratlan ._._._.0000 ctrl bit 4: páros a hiba helye: = 5. bit Kommunikációs Rendszerek
8
Kommunikációs Rendszerek
Hamming kód Az ellenőrző bitek a 2i –ik pozicióban (1,2,4,8,16, …) Az adat bitek a többi pozicióban [3,5,6,7,9,….) A Hamming kód előállítása Az ellenőrző bit a bitek egy csoportjának (önmagát is beleértve) a paritását állítja be. Az adat bitek mindig több paritásképzésben vesznek részt. Pl. 5 = 1+4 Egy hibás bit javítása Képezzünk minden ellenőző bitet Összegezzük a hibás paritású pozíció számokat. Az összeg mutatja a hibás bit pozicióját (0 -> nincs hiba) Kommunikációs Rendszerek
9
Polinomiális hibavizsgálat
Az üzenet végére valamilyen matematikai algoritmuson alapuló karaktert, vagy bit sorozatot helyezünk el. adat csoport (blokk) esetében Ellenőrző összeg Ciklikus kód (CRC) Kommunikációs Rendszerek
10
Ciklikus kódolás (CRC)
polinom moduló 2 bináris aritmetika egy közös „r” fokú G(x) generátor polinom az adó és vevő oldalon használatosak: CRC x 8 +x 2 +x+1 CRC x 10 +x 9 +x 5 +x 4 +x+x CRC-12: x12 +x11 +x3 +x2 +x1+1 CRC-16: x16 +x15 +x2 +1 CRC-CCITT x 16 +x 12 +x 5 +1 osztó Kommunikációs Rendszerek
11
Ciklikus kódolás (CRC)
Az eredeti M üzenetet egészítsük ki r 0 bittel. Ez biztosítja, hogy a kiegészített üzenet legalább r fokú lesz. A kiegészített M’ üzenetet osszuk el (mod 2) a generátorral, a maradékot (R) jegyezzük meg. Az eredeti üzenethez füzzük hozzá az így nyert (R) maradék tagot. Hajtsuk végre az átvitelt. A vett üzenetet osszuk el (mod 2) a generátorral Ha az így nyert maradék nem 0, akkor hibás volt az átvitel Kommunikációs Rendszerek
12
Ciklikus kódolás (CRC)
Kommunikációs Rendszerek
13
CRC Hardware megvalósítás
Az elterjedtség fő oka az egyszerű hardware Az osztó áramkör XOR kapuk és r bites shift regiszter. Visszacsatoló XOR kapuk, ahol G(x) = 1 Kommunikációs Rendszerek
14
Ciklikus kódolás (CRC)
A CRC kód jelez minden páratlan súlyú hibát. Ha G(x) tartalmazza X+1 A CRC kód jelez minden kettős hibát ha G(x) tartalmazza 1 A kód jelez minden hibacsomót amelynek hossza < r Ez egy nagyon fontos tulajdonság, mert a fizikai valóság az, hogy a hibák hajlamosabbak csomókban előfordulni, mint szétszórtan és függetlenül. A kód hosszabb hibacsomókat is jelez ^-r valószínűséggel Kommunikációs Rendszerek
15
Kommunikációs Rendszerek
Reed-Solomon példa: az RS(255,223) jelű kódot gyakran hasznáják 8-bites jelekre. Minden kódszó 255 byte-ból áll, amiből 223 byte adat és 32 byte paritás. Ennek a kódnak a jellemzői: n = 255, k = 223, s = 8 2t = 32, t = 16 A dekóder 16 hibás jelet tud kijavítani, azaz a kódszó bármely helyén fellépő, maximum 16 byte hibát automatikusan javít. Kommunikációs Rendszerek
16
Kommunikációs Rendszerek
Reed-Solomon A Reed-Solomon kódolás matematikai alapja az un. Galois mezők. A Reed-Solomon kódszavakat speciális generátor polinomokon alapuló aritmetika állitja elő. Egy Reed-Solomon kódszó 2t szindrómát tartalmaz, melyek értéke csak a hibáktól függ. A szindrómák értéke a generator polinom 2t gyökének helyettesítésével nyerhető. Ez egy t ismeretlenes egyenletrendszer megoldását jelentő feladat. Speciális gyors algoritmusok, hardver realizációk léteznek. Kommunikációs Rendszerek
17
Hibajavító kódok osztályai
Blokk kódolás A kódoló a k-bit hosszúságú üzenet blokkból egy n-bit hosszú kódszavat generál. A blokkok közöt nincs adatkapcsolat. Általában nagyobb n és k érték esetén, főleg adatátvitelre Konvolúciós kódolás A kódoló folyamatos működésű, a beérkező üzenet jelfolyamot sorosan kezeli. Alacsonyabb bemenő és kimenő bit számú rendszerek (tipikusan k=1-3, n=2-6) Kisebb késleltetésű rendszerekben. Kommunikációs Rendszerek
18
Hibajavító kódok osztályai
Blokk kódok Paritás Keresztparitás Hamming CRC Reed-Solomon Stb Konvolúciós kód viterbi Kommunikációs Rendszerek
19
Kommunikációs Rendszerek
Konvolúciós kódok Feladat: a rendszer állapotának optimális becslése zajos környezetben Megfigyelés becslés Kommunikációs Rendszerek
20
Kommunikációs Rendszerek
Konvolúciós kódoló Áramkör modell: két sorba kapcsolt tároló elem ( D-Flip-Flop) Két exclusiv OR kapu X=C+B+A Y=C+A. Minden C-re érkező bit két bitet (XY) generál. (kódolási arány ½) Kommunikációs Rendszerek
21
Kommunikációs Rendszerek
Példa A kódoló bemenete: A kódoló kimenete: Kommunikációs Rendszerek
22
Kommunikációs Rendszerek
Konvolúciós kódoló C B A = X Y 0 0 0 = 0 0 0 0 1 = 1 1 0 1 0 = 1 0 0 1 1 = 0 1 1 0 0 = 1 1 1 0 1 = 0 0 1 1 0 = 0 1 1 1 1 = 1 0 A három bemenő változó nyolc lehetséges állapotára az áramkör igazságtáblája: Kommunikációs Rendszerek
23
Kommunikációs Rendszerek
Konvolúciós kódoló Jelenlegi > Következő állapot állapot BA -C--> CBA=(XY) új BA > 000=(00) ===> 00 > 100=(11) ===> 10 > 001=(11) ===> 00 > 101=(00) ===> 10 > 010=(10) ===> 01 > 110=(01) ===> 11 > 011=(01) ===> 01 > 111=(10) ===> 11 A lehetséges állapotátmenetek: Kommunikációs Rendszerek
24
Kommunikációs Rendszerek
Állapotgráf A működés ábrázolható állapotgráf segítségével. Nem szemlélhető a folyamat Kommunikációs Rendszerek
25
Kommunikációs Rendszerek
Trellis Diagram A folyamat időben egymást követő állapotai Trellis Diagram segítségével ábrázolhatóak. Kommunikációs Rendszerek
26
Kommunikációs Rendszerek
Trellis Diagram a b c d Bemenő jel Kommunikációs Rendszerek
27
Kommunikációs Rendszerek
Trellis Diagram Kommunikációs Rendszerek Note: it is assumed that you start in state 00
28
Kommunikációs Rendszerek
Viterbi Dekódolás A Viterbi algoritmus: Adva van a vett jelek sorozata (melyet konvolucios kódoló állitott elő és egy zajos csatornán át érkezett.) meg kell állapitani, hogy mi volt a konvolucios kódoló bemenetén. ez a trellis diagramon keresztülvivő legvalószínűbb nyomvonal meghatározásával történik. Kommunikációs Rendszerek
29
Kommunikációs Rendszerek
Viterbi Algoritmus Soft Decision Decoding Kommunikációs Rendszerek
30
Kommunikációs Rendszerek
Decoder, Traceback Kommunikációs Rendszerek
31
Kommunikációs Rendszerek
So What’s Convolution? Add Shift Kommunikációs Rendszerek
32
Kommunikációs Rendszerek
33
Kommunikációs Rendszerek
Kommunikációs Rendszerek
34
Kommunikációs Rendszerek
Kommunikációs Rendszerek
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.