Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Systematické a nesystematické
Základy informatiky přednášky Systematické a nesystematické bezpečnostní kódy
2
ZÁKLADY INFORMATIKY – Systematické a nesystematické bezpečnostní kódy
Vznik a vývoj teorie informace Matematický aparát v teorii informace Základy teorie pravděpodobnosti – Náhodné veličiny Číselné soustavy Informace Základní pojmy – jednotka a zobrazení informace, informační hodnota Entropie – vlastnosti entropie Zdroje zpráv – spojité zdroje zpráv, diskrétní zdroje zpráv Přenos informace – vlastnosti přenosu kanálů, poruchy a šumy přenosu, způsoby boje proti šumu Kódování Elementární teorie kódování Rovnoměrné kódy – telegrafní kód Nerovnoměrné kódy – Morseova abeceda, konstrukce nerovnoměrných kódů Efektivní kódy – Shannonova – Fanova metoda, Hoffmanova metoda Bezpečností kódy Zabezpečující schopnosti kódů, Systematické kódy, Nesystematické kódy
3
Systematické kódy Kódové slovo obsahuje vedle symbolů nesoucí informaci také symboly zabezpečující Nezabezpečený kód lze převést na systematický tak, že ke každému kódovému slovu přidáme zabezpečující symboly Má-li kódové slovo m míst, z toho k informačních míst a m-k zabezpečovacích míst, hovoříme o kódu K(m, k). Pro systematické kódy platí: Lz < L Hammingova vzdálenost kódových slov je větší než 1 d(Ci, Cj)>1
4
Optimální kód - takový kód K(m, k) pro nějž neexistuje jiný kód o stejném m a k, který by poskytoval větší pravděpodobnost zachycení chyby, tj. který by měl větší zabezpečovací schopnost. Těsný kód (perfektní) - takový kód, který pro dané m a k využívá kódová slova vzdálená vzájemně o předpokládanou minimální Hammingovu vzdálenost d(Ci, Cj) min těsný kód je zároveň kódem optimálním
5
Lineární – libovolná kombinace kódových slov je opět kódovým slovem
Rozdělení bezpečnostních kódů Lineární – libovolná kombinace kódových slov je opět kódovým slovem Lineární systematické – informační a zabezpečující místa v kódovém slově jsou oddělena (Slepianovy kódy) Ostatní lineární – informační a zabezpečující místa jsou rozložena na různých místech kódového slova (Hammingovy kódy, cyklické kódy atd.) Nelineární Řetězové (rekurentní) Inversní Paritní (s vnitřní a vnější paritou) Iterační (s blokovou paritou)
6
velmi jednoduchý, přitom však účinný a pružný způsob zabezpečení,
Paritní kód velmi jednoduchý, přitom však účinný a pružný způsob zabezpečení, Princip spočívá v zajištění konstantní hodnoty součtu všech symbolů každého kódového slova (mod2) Platnost předchozí podmínky zajistíme doplněním každého kódového slova, které chceme zabezpečit, jedním nebo několika zabezpečovacími koeficienty ai. Hodnota koeficientu ai je u binárního kódu pochopitelně 0 nebo 1
7
sudý počet jedniček (konst=0) - sudá parita
V případě binárního kódu přidáváme ke kódovému slovu znak 0 nebo 1 tak, aby výsledné kódové slovo mělo: sudý počet jedniček (konst=0) - sudá parita lichý počet jedniček (konst=1) - lichá parita Zabezpečení paritou lze provést pro libovolně dlouhé kódové slovo. Paritou lze zabezpečit kód i dodatečně. Např. uvnitř stroje se pracuje s nezabezpečeným kódem, pro přenos sdělovací cestou se provede paritní zabezpečení. Po kontrole na přijímací straně se paritní koeficienty odstraní a v dalším stroji se opět pracuje s nezabezpečeným kódem.
8
Příklad: Zabezpečte paritním kódem trojmístný binární kód. Využijte sudou i lichou paritu. Zabezpečené kódové slovo sudou paritou konst Zabezpečené kódové slovo lichou paritou konst 1
9
Předchozí kód se označuje K(4,3) - 3 znaky nesou informaci, 1 znak je redundantní a slouží k zabezpečení kódu. Jaká je minimální Hammingova vzdálenost předchozího kódu ??? d(Ci, Cj) min = 2 Na základě vztahů pro detekční a korekční schopnosti kódů lze stanovit, že výsledný kód objevuje všechny jednoduché (1-násobné) chyby ale nedokáže takové chyby opravit.
10
Kombinace dvou nebo více zabezpečujících kódů
Iterační kódy Kombinace dvou nebo více zabezpečujících kódů Princip spočívá v tom, že zabezpečíme posloupnost kódových slov paritou v příčném a podélném směru – maticové zabezpečení Takto zabezpečujeme celé skupiny (bloky) kódových slov - mluvíme spíše o zabezpečení zprávy Na blok pohlížíme jako na jediné kódové slovo Minimální Hammingova vzdálenost kódových slov maticově zabezpečeného kódu je rovna součinu minimálních vzdáleností dílčích kódů
11
Nezabezpečené kódové slovo
Příklad: Zabezpečte iteračním kódem blok pěti kódových slov, které tvoří zprávu. Jednotlivá slova jsou dána takto: 11000, 00101, 10011, 01111, Využijte maticového zabezpečení. Nezabezpečené kódové slovo Zabezpečení řádkové 1 Zabezpečení sloupcové Kontrolní symbol
12
Lineární kódy Lineární kódy se vyznačují tím, že libovolná lineární kombinace kódových slov je opět kódovým slovem. U binárních lineárních kódů je možné využít následujících pravidel pro operace sčítání a násobení binárních čísel. Pro sčítání platí Pro násobení platí 1 1
13
Lineární kód tvoří lineární podprostor n-rozměrného prostoru binárních proměnných.
Tento podprostor je možné popsat jeho bází. Každý prvek báze je sám kódovým slovem. Chceme-li nalézt kódová slova lineárního binárního kódu, stačí, když nalezneme bázi kódu. Báze by měla být tvořena kódovými slovy s co nejmenším počtem jedniček a tato kódová slova musí být vzájemně nezávislá. Ostatní kódová slova lineárního kódu mohou být získána sčítáním popř. násobením dvou slov báze.
14
Kódová slova báze zapsána pod sebe tvoří - generující matici G
Pro matici G musí platit: každý její řádek je kódovým slovem, každé kódové slovo je lineární kombinací řádků, řádky jsou lineárně nezávislé (hodnost matice G=k). Příklad: Sestrojte generující matici pro systematický kód celkové parity (sudá parita) K(4,3). Získejte další kódová slova tohoto kódu. Pozn. Kód liché parity není lineární (11011110=0011)
15
Většinou tvoří nezabezpečená kódová slova jednotkovou matici
Většinou tvoří nezabezpečená kódová slova jednotkovou matici. Zabezpečovací místa vytváříme podle algoritmu daného kódování. Seřadíme-li takto vytvořená zabezpečená slova do řádků a uzavřeme do matice - generující matici systematického kódu G Ek – jednotková matice řádu k R – matice zabezpečujících prvků (r zabezpečujících prvků) Kódy u kterých lze generující matici zapsat jako součin jednotkové matice a matice zabezpečujících prvků - systematické kódy
16
jestli s = 0 bezchybný přenos s ≠ 0 chyba v přenosu
Princip (algoritmus) kódování a dekódování pomocí generující matice G: Vysílané zabezpečené kódové slovo z (1xm) se vytváří z nezabezpečeného kódového slova v (1xk) pomocí generující matice G: Přijímané zabezpečené kódové slovo p (1xm) se bude rovnat vysílanému kódovému slovu z tehdy, jestliže: Matice H je kontrolní matice (rxm). Definovaná je pomocí generující matice systematických kódů G=[Ek | R]: Kontrolní matice se využívá při dekódování zpráv, zda při přenosu kódované informace nedošlo k chybě. Pro objevování případně i opravu chyb se používá vektor s (1 x r) zvaný syndrom slova (soubor příznaků) a je definován jako: jestli s = 0 bezchybný přenos s ≠ 0 chyba v přenosu
17
Příklad: Zabezpečte sedmimístné kódové slovo sudou paritou
Příklad: Zabezpečte sedmimístné kódové slovo sudou paritou. Použijte teorie lineárních systematických kódů. Studujte možnosti chybného popř. bezchybného přenosu. Jedná se tedy o kód K(8,7). Generující matici G můžeme zapsat ve tvaru:
18
Uvažujme, že vysílané zdrojové nezabezpečené kódové slovo odpovídá písmenu J v ASCII kódu – Po zabezpečení pomocí generující matice dostáváme: Kontrolní matice H má u tohoto kódu tvar:
19
Pro přijímané zabezpečené slovo p (1 x 8) musí pak platit:
Podle syndromu s, který získáme výpočtem podle předchozího vzorce, můžeme rozhodnout o bezchybném přenosu. Např.: Přijaté kódové slovo Syndrom slova => Bezchybný přenos Chyba při přenosu
20
Příklad: Mějme dvojkový binární kód K(5,3), u kterého je zadána kontrolní matice H . Podrobte kontrole přijatá kódová slova 01111, Ke kontrole použijeme výpočet syndromu s ve tvaru: Bezchybný přenos Chybný přenos
21
Lineární binární kódy se schopností opravy chyb.
Hammingovy kódy Hammingovy kódy jsou lineární kódy, které jsou určeny pro zabezpečování údajů ukládaných do pamětí počítačů, resp. pro přenosové kanály s nezávislými chybami. Lineární binární kódy se schopností opravy chyb. Tyto bezpečnostní kódy mají nejmenší možnou redundanci. Snadno se dekódují a jsou perfektní Hammingova vzdálenost je dána dmin= 3 (detekuje 2-násobnou chybu a opravuje jednu chybu) Hammingův binární kód s r kontrolními znaky (r = 2, 3, 4, …) má délku kódového slova 2r-1. Takže vzniká kód K(3,1), K(7,4), K(15,11), atd. r (m-k) 2 3 4 5 6 … m 7 15 31 63 k 1 11 26 57
22
Kód byl sestaven tak, aby syndrom s, pokud není nulový, udával svými prvky polohu chybného místa v kódovém slově. Prvky vektoru syndromu s jsou chápány jako zápis čísla ve dvojkové soustavě: Je proto výhodné uspořádat sloupce kontrolní matice H tak, aby v i-tém sloupci bylo dvojkové vyjádření čísla i. Binární kód se nazývá Hammingův jestliže má kontrolní matici, jejíž sloupce jsou všechna nenulová slova dané délky a žádné z nich se neopakuje.(používá se binární rozvoj čísel 1, 2, 3, …, 2r-1)
23
Pro r = 2 dostáváme kód K(3,1) s kontrolní matici ve tvaru:
Taková matice je kontrolní maticí opakovacího kódu délky 3. Ten skutečně opravuje jednoduché chyby Pro r = 3 dostáváme kód K(7,4) s kontrolní matici ve tvaru: Protože se jedná o nesystematický kód Abychom našli generující matici, musíme přemístit sloupce do tvaru: Došlo k přehození sloupců: 1-7, 2-6, 4-5 Tzn.
24
Generující matici G’ dostaneme ze vzorce: G’=[Ek|R]
Zpětným přeházením sloupců dostaneme generující matici původního Hammingova kódu: Došlo k přehození sloupců: 1-7, 2-6, 4-5
25
Pro dekódování Hammingova kódu se využívá opět syndromu s, pro který platí:
- při jednonásobné chybě vektor chyb - c pouze jednu jedničku. Z toho vyplývá, že syndrom s bude roven řádku matice HT, který odpovídá jedničce v chybovém vektoru c a bude udávat pořadové číslo místa chybného znaku.
26
Příklad: Které z přijatých kódových slov , , je chybné při použití Hammingova kódu K(7,4). V případě chyby určete místo výskytu chyby. Pro kód K(7,4) dostáváme kontrolní matici ve tvaru: Syndrom přijatého kódového slova je pak dán: Pro syndrom jednotlivých přijatých kódových slov pak platí: Chybný přenos (poslední místo) Chybný přenos (třetí místo) Bezchybný přenos
27
Kde se nachází zabezpečující místa kódového slova v Hammingových kódech s d=3 ?
Uvažujme zabezpečené kódové slovo v obecném tvaru: z = a1 a2 a3 a4 a5 a6 a7 Při bezchybném přenosu platí z = p a dále platí: Pokud sestrojíme kontrolní matici kódu K(7,4) a dosadíme do předchozí rovnice dostáváme: jako zabezpečující místa vybereme ty místa, které se vyskytují vždy jen v jedné rovnici, tzn. kontrolními místy budou místa a1, a2, a4.
28
Příklad: Sestrojte kódová slova Hammingova kódu K(7,4).
Pro každé kódové slovo musí platit následující soustava rovnic: zabezpečující místa jsou a1, a2, a4. => Tzn. místa 3, 5, 6, 7 budou tvořit všechna binární slova délky 4 a místa 1, 2, 4 budou kontrolní!!!
29
Rozšířený Hammingův kód
Lineární binární kódy se schopností opravy chyb. Tyto bezpečnostní kódy již nemají nejmenší možnou redundanci = nejsou perfektní Hammingova vzdálenost je dána dmin= 4 (detekuje 3-násobnou chybu a opravuje jednu chybu) Rozšířený Hammingův binární kód s r kontrolními znaky (r = 3, 4, …) má délku kódového slova 2r-1. Takže vzniká kód K(4,1), K(8,4), K(16,11), atd. r (m-k) 3 4 6 7 … m 8 16 32 64 k 1 11 26 57 Kontrolní matici tohoto kódu získáme z kontrolní matice Hammingova kódu tak, že ke každému řádku přidáme paritní bit sudé parity a do kontrolní matice doplníme řádek jedniček.
30
Příklad: Sestrojte kontrolní matici rozšířeného Hammingova kódu K(8,4)
Příklad: Sestrojte kontrolní matici rozšířeného Hammingova kódu K(8,4). Které z přijatých kódových slov , , je chybné? V případě jedné chyby určete místo výskytu chyby. Pokuste se sestrojit celý kód. Pro Hammingův kód K(7,4) dostáváme kontrolní matici ve tvaru: Pro rozšířený Hammingův kód K(8,4) dostáváme pak kontrolní matici ve tvaru: Syndrom přijatého kódového slova je pak dán:
31
Příklad: Sestrojte kontrolní matici rozšířeného Hammingova kódu K(8,4)
Příklad: Sestrojte kontrolní matici rozšířeného Hammingova kódu K(8,4). Které z přijatých kódových slov , , je chybné? V případě jedné chyby určete místo výskytu chyby. Pokuste se sestrojit celý kód. Pro syndrom jednotlivých přijatých kódových slov pak platí: Chybný přenos (první místo) Chybný přenos (více jak jedna chyba) Bezchybný přenos
32
C(z) = a0 + a1z + a2z2 +…+ am-1zm-1
Cyklické kódy patří k nejmodernějším lineárním bezpečnostním kódům, které se osvědčily v praxi schopnost zabezpečovat shluky chyb podle způsobu manipulace s kódovým slovem se také označují – polynomické kódy Kódová slova Ci (a0 a1 a2 …am-1) můžeme totiž chápat jako zkrácený zápis polynomu stupně m-1: C(z) = a0 + a1z + a2z2 +…+ am-1zm-1 jejich specifická vlastnost, podle které se také nazývají, spočívá v tom, že: cyklickou záměnou prvků v použitém kódovém slově vzniká opět platné kódové slovo.
33
Pak pro cyklický kód jsou platnými kódovými slovy i kódová slova
Je-li kódové slovo C1 platným kódovým slovem C1 = a0 a1 a2 a3 …am-1 Pak pro cyklický kód jsou platnými kódovými slovy i kódová slova C2 = am-1 a0 a1 a2 a3 …am-2 C3 = am-2 am-1 a0 a1 a2 a3 …am-3 Při práci s polynomy pak cyklický posun prvků kódového slova odpovídá násobení polynomu proměnnou z: C2 (z) = z . C1(z) = a0 z + a1z2 + a2z3 + a3z4 …am-1zm Přesun koeficientu u nejvyšší mocniny na začátek kódového slova vyřešíme zavedením: zm = 1 zm+1 = z zm+2 = z2 …
34
Příklad: Pomocí polynomického vyjádření (násobení proměnnou z) sestrojte další kódová slova k C1(z) = 1 + z + z4 +z6+z7 C2(z) = z .C1(z) = z + z2 + z5 +z7+z8 = 1 + z + z2 + z5 +z7 C3(z) = z .C2(z) = z + z2 + z3 +z6+z8 = 1 + z + z2 + z3 +z6
35
Cyklický kód můžeme definovat pomocí generujícího polynomu g(z).
Generující polynom cyklického kódu K(m,k) je polynom stupně m-k=r, který musí dělit (být dělitelem) polynom (zm-1). Cyklickým posunem koeficientů generujícího polynomu vzniká generující matice G(z) Řádky tvoří polynomy: g(z) z.g(z) . zk-1.g(z)
36
U cyklických kódů můžeme kontrolní matici nahradit kontrolním polynomem:
Kontrolní matici cyklického kódu K(m,k) získáme cyklickými posuvy koeficientů kontrolního polynomu čteného od nejvyšší mocniny Kontrolní matice má m-k řádků
37
Splňuje kontrolní matice podmínku: H . vT = 0T
Pro každý polynom v(z), který představuje zabezpečené kódové slovo a pro který platí: v(z) . h(z) = 0 Splňuje kontrolní matice podmínku: H . vT = 0T Příklad: Sestrojte kód celkové parity (sudá parita) délky 4, tedy K(4,3) pomocí polynomického vyjádření cyklického kódu. Najděte generující polynom a generující matici tohoto kódu. Najděte dále kontrolní polynom a kontrolní matici. R.Farana: Kapitoly ze základů informatiky, str.29, příklad 1.
38
Příklad: Z dříve uvedených poznatků vyplývá, že každý cyklický kód rozkládá polynom zm-1 na součin g(z).h(z). To platí i naopak. Popište všechny binární cyklické kódy délky 5. (R.Farana: Kapitoly ze základů informatiky, str.30, příklad 3.) Musí platit: z5-1=g(z).h(z) tzn. hledáme všechny polynomy g(z) a h(z). V našem případě je možné polynom (z5-1) rozložit na dva polynomy takto: z5-1= (z+1).(z4+z3+z2+z+1) Odtud dostáváme dva kódy: Kód celkové kontroly parity: g(z)= (z+1) h(z)=(z4+z3+z2+z+1) Opakovací kód: g(z)= z4+z3+z2+z+1) h(z)=(z+1)
39
Princip (algoritmus) kódování a dekódování pomocí cyklického kódu
nezabezpečené kódové slovo v (1xk) čteme pozpátku (neboli polynomy zapisujeme od nejvyšší mocniny, tedy opačně než doposud). Z informačních bitů v0 v1 v2 … vk-1 vytvoříme tedy polynom: v(z) = v0zm-1 + v1zm-2 + … +vk-1zm-k Předchozí polynom dělíme generujícím polynomem g(z) a dostáváme: Úpravou dostaneme: Při označení polynomu zbytku ve tvaru: r(z) = rkzm-k-1 + rk+1zm-k-2 + … +rm-1z + rm Vyšleme kódové slovo C = v0 v1 … vk-1 rk rk+1 … rm
40
Princip (algoritmus) kódování a dekódování pomocí cyklického kódu
Správnost přenosu lze na přijímací straně kontrolovat dělením polynomu p(z) – polynom přijatého kódového slova, generujícím polynomem g(z). (e(z) – chybový polynom) Jestliže: e(z) dělí g(z) beze zbytku - bezchybný přenos e(z) nedělí g(z) beze zbytku - chyba v přenosu Tvar zbytku neboli syndrom s(z) nám určuje místo chyby podle následující tabulky Místo výskytu chyby 1 z z2 z3 z4 z5 Tvar zbytku Bez chyby z2 modg(z) z3 modg(z) z4 modg(z) …
41
Příklad: U kódu K(7,4) zakódujte kódové slovo 1010 pomocí cyklického kódu. Proveďte kontrolu přijetí zabezpečeného kódového slova. Zvolte si náhodně chybu v kódovém slově a proveďte znovu kontrolu a nalezení chyby. Řešení: 1) najdeme generující polynom: (musí být stupně m-k tj. 3 a musí dělit polynom z7-1 beze zbytku) Všechny možnosti polynomu 3 stupně jsou: z3, z3+1, z3+z, z3+z2, z3+z+1, z3+z2+1, z3+z2+z, z3+z2+z+1 z7-1 : z3+z+1 = z4+z2+z+1 z7+z5+z4 z5+z4+1 z5+z3+z2 z4+z3+z2+1 z4+z2+z z3+z+1 2) Nezabezpečené kódové slovo převedeme na polynom: 1010 → v(z)=z6+z4
42
Příklad: U kódu K(7,4) zakódujte kódové slovo 1010 pomocí cyklického kódu. Proveďte kontrolu přijetí zabezpečeného kódového slova. Zvolte si náhodně chybu v kódovém slově a proveďte znovu kontrolu a nalezení chyby. 3) Předchozí polynom dělíme generujícím polynomem: z6+z4 : z3+z+1 = z3+1 z6+z4+z3 z3 z3+z+1 z+1 - zbytek 4) Polynom zbytku nám udává zabezpečující část kódového slova: r(z)=z+1 → 011 5) Sestavíme celé zabezpečené kódové slovo: C=
43
Příklad: U kódu K(7,4) zakódujte kódové slovo 1010 pomocí cyklického kódu. Proveďte kontrolu přijetí zabezpečeného kódového slova. Zvolte si náhodně chybu v kódovém slově a proveďte znovu kontrolu a nalezení chyby. Kontrola přijetí zabezpečeného kódového slova: → p(z)=z6+z4+z+1 z6+z4+z+1 : z3+z+1 = z3+1 z6+z4+z3 z3+z+1 0 - zbytek→správný přenos Kontrola přijetí zabezpečeného kódového slova s chybou: → p(z)=z6+z4+1 z6+z4+1 : z3+z+1 = z3+1 z6+z4+z3 z3+1 z3+z+1 z - zbytek→nesprávný přenos (chyba je na pozici z)
44
Příklad: U kódu K(7,4) zakódujte kódové slovo 1010 pomocí cyklického kódu. Proveďte kontrolu přijetí zabezpečeného kódového slova. Zvolte si náhodně chybu v kódovém slově a proveďte znovu kontrolu a nalezení chyby. Kontrola přijetí zabezpečeného kódového slova: → p(z)=z6+z4+z+1 z6+z+1 : z3+z+1 = z3+z+1 z6+z4+z3 z4+z3+z+1 z4+z2+z _ z3+z2+1 z3+z +1 z2+z - zbytek→nesprávný přenos (chyba je na pozici n, kde platí že zbytek po dělení zn: z3+z+1 je stejný jako získaný zbytek z2+z) – chyba je tedy na pozici z4 (viz níže) z : z3+z+1 = z3+z+1 z6+z4+z3 z4+z3 z4+z2+z z3+z2+z z3+z +1 z2+1 – zbytek který odpovídá pozici z6 z : z3+z+1 = z+1 z4+z2+z z2+z – zbytek který odpovídá pozici z4
45
Počet kontrolních bitů
Používání cyklických kódů se v poslední době velmi rozšířilo. Hlavním důvodem je schopnost cyklických kódů odhalovat shluky chyb (chyby v přenosových kanálech mají tendenci vyskytovat se blízko sebe a vytvářet tzv. shluky). Tabulka nejrozšířenějších kódů CRC (Cyclic Redundance Code) Počet kontrolních bitů Označení Generující polynom Použití 8 LRCG - 8 x8+1 12 CRC - 12 x12+ x11+ x3+ x2+ x+1 pro 6 bitové znaky 16 CRC - 16 x16+ x15+ x2+1 binární synchronní protokol CDLC x16+ x12+ x5+1 linkový protokol IBM 32 CRC - 32 x32+ x26+ x23+ x22+ x16+ x12+ x11+ x10+ x8+ x7+ x5+ x4+ x2+ x+1 ETERNET sítě , Z-modem
46
Je to lineární binární kód, který opravuje volitelný počet chyb.
Reedovy-Mullerovy kódy Je to lineární binární kód, který opravuje volitelný počet chyb. Je důležitý hlavně kvůli své jednoduchosti a jednoduše implementované metodě dekódování. Byli objevené v roku 1954 a v porovnaní s BCH kódy mají slabší parametry . Jsou prakticky významné (například kód RM (1,5) použil kosmický koráb Mariner 9 při vysílání fotografií z Marsu.
47
Jsou to obecné kódy s dobrými parametry.
BCH kódy Jsou to obecné kódy s dobrými parametry. Je to nejdůležitější třída cyklických bezpečnostních kódů Mezi hlavní parametry patří: velká volitelnost parametrů, jednoduchý vztah mezi počtem informačních znaků a počtem opravených chyb detailně vypracované dekódovací metody. BCH kódy opravují dvojnásobné a vícenásobné chyby. V porovnání s REED-MULLERovými kódy mají BCH kódy o něco náročnější dekódování, ale za to mají lepší parametry.
48
Jsou speciálním případem BCH kódů.
Reed – Solomonovy kódy Jsou speciálním případem BCH kódů. Mají největší myslitelnou vzdálenost a dají se pomocí nich sestrojit dobré binární kódy. Golayův kód Je to jediný perfektní kód pro trojnásobné opravy. Tento kód se zavádí pomocí generující matice.
49
Nelineární kódy Inversní kód
Inversní kód patří do blokových, systematických, nelineárních kódů. Tento kód má Hammingovou kódovou vzdálenost d = 4. Z rovnice vyplývá, že může objevovat až trojnásobné chyby a z rovnice vyplývá, že může opravovat jednoduché chyby.
50
Prvním krokem postupu při použití inverzního kódu je, že vysílané nezabezpečené kódové slovo se zopakuje beze změny, je-li v něm sudý počet nul. V případě, že je v něm počet nul lichý, vyšle se v druhé části inverze nezabezpečeného kódového slova. Tak se zabezpečené kódové slovo bude skládat z dvou částí: informační a zabezpečovací. Princip si vysvětlíme na přenosu znaků G, L, X zakódovaných telegrafním kódem, které chceme zabezpečit inverzním kódem.
51
Způsob kódování je podrobně zobrazený v tabulce:
G L X Vyslané kódové slovo Přijaté kódové slovo Zaznamenané kód.slovo Rozbor 00011 01011 10111 10100 10110 11111 místo korekce 11101 01000 chyba Dojde-li k chybě v informační části, pak při součtu mod 2 se shoduje jediný pár prvků (bitů) v místě chyby (u znaků G a L). Nachází-li se chybný prvek v zabezpečovací části, pak při součtu mod 2 se pár prvků v místě chyby neshoduje (u znaku X).
52
KONEC
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.