Kódy pro detekci a opravu chyb. INP 2008 FIT VUT v Brně



Podobné dokumenty
Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP

Teorie informace a kódování (KMI/TIK)

Informace, kódování a redundance

Informace, kódování a redundance

[1] samoopravné kódy: terminologie, princip

uvedení do problematiky i Bezpečnostní kódy: detekční kódy = kódy zjišťující chyby samoopravné kódy = kódy opravující chyby příklady kódů:

A0M15EZS Elektrické zdroje a soustavy ZS 2011/2012 cvičení 1. Jednotková matice na hlavní diagonále jsou jedničky, všude jinde nuly

Lenka Zalabová. Ústav matematiky a biomatematiky, Přírodovědecká fakulta, Jihočeská univerzita. zima 2012

Skalár- veličina určená jedním číselným údajem čas, hmotnost (porovnej životní úroveň, hospodaření firmy, naše poloha podle GPS )

Kódováni dat. Kódy používané pro strojové operace

Způsoby realizace této funkce:

Hammingův kód. Vladislav Kosejk. České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská Detašované pracoviště Děčín

Matice se v některých publikacích uvádějí v hranatých závorkách, v jiných v kulatých závorkách. My se budeme držet zápisu s kulatými závorkami.

Lineární algebra nad obecným Z m, lineární kódy

Odpřednesenou látku naleznete v kapitole 3.3 skript Diskrétní matematika.

Součin matice A a čísla α definujeme jako matici αa = (d ij ) typu m n, kde d ij = αa ij pro libovolné indexy i, j.

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

Kódy a kódování dat. Binární (dvojkové) kódy. Kód Aikenův

Filtrace snímků ve frekvenční oblasti. Rychlá fourierova transformace

( ) ( ) Lineární rovnice s parametrem II. Předpoklady: 2801

3. Matice a determinanty

Informatika Kódování. Obsah. Kód. Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008

Kódování signálu. Problémy při návrhu linkové úrovně. Úvod do počítačových sítí. Linková úroveň

Disková pole (RAID) 1

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Generující kořeny cyklických kódů. Generující kořeny. Alena Gollová, TIK Generující kořeny 1/30

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

[1] samoopravné kódy: terminologie, princip

Samoopravné kódy, k čemu to je

BCH kódy. Alena Gollová, TIK BCH kódy 1/27

Gymnázium, Brno. Matice. Závěrečná maturitní práce. Jakub Juránek 4.A Školní rok 2010/11

Soustavy lineárních rovnic

8. Posloupnosti, vektory a matice

k d K: a!b Hammingova vzd lenost: v ha slova po et jedni ek

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

1 Co jsou lineární kódy


y = Spočtěte všechny jejich normy (vektor je také matice, typu n 1). Řádková norma (po řádcích sečteme absolutní hodnoty prvků matice a z nich

STRUKTURA POČÍTAČŮ JIŘÍ HRONEK, JIŘÍ MAZURA KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO

8 Kořeny cyklických kódů, BCH-kódy

Lineární algebra. Soustavy lineárních rovnic

Aritmetika s velkými čísly na čipové kartě

Digitální učební materiál

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:


Y36SAP - aritmetika. Osnova

Zabezpečení datových přenosů pomocí CRC

Disková pole (RAID) 1

Matematika IV 10. týden Kódování

Regresní a korelační analýza

Determinant. Definice determinantu. Permutace. Permutace, vlastnosti. Definice: Necht A = (a i,j ) R n,n je čtvercová matice.

0. Lineární rekurence Martin Mareš,

Řešení. Hledaná dimenze je (podle definice) rovna hodnosti matice. a a 2 2 1

PSK2-5. Kanálové kódování. Chyby

Vektorový prostor. Př.1. R 2 ; R 3 ; R n Dvě operace v R n : u + v = (u 1 + v 1,...u n + v n ), V (E 3 )...množina vektorů v E 3,

PŘEDNÁŠKA PS 6 Přenos dat v počítačových sítích

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

Determinanty. Determinanty. Přednáška MATEMATIKA č. 3. Jiří Neubauer

Matematika 2 pro PEF PaE

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2013/2014 Radim Farana. Obsah. Detekce chyb

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Odpřednesenou látku naleznete v dodatku A skript Abstraktní a konkrétní lineární algebra.

Téma je podrobně zpracováno ve skriptech [1], kapitola

Regulární matice. Věnujeme dále pozornost zejména čtvercovým maticím.

Mária Sadloňová. Fajn MATIKA. 150 řešených příkladů (vzorek)

KOMBINAČNÍ LOGICKÉ OBVODY

Měření ohniskových vzdáleností čoček, optické soustavy

Návod k instalaci a seřízení SNÍMAČ ROSNÉHO BODU A TEPLOTY MODEL EE35

STATISTICA Téma 8. Regresní a korelační analýza, regrese prostá

9. Úvod do teorie PDR

Teorie kódování se zabývá tím, jak rychle a spolehlivě přenášet informace z jednoho místa na druhé. Mezi její aplikace patří například minimalizace

{Q={1,2};S,T;u(s,t)} (3.3) Prorovnovážnéstrategie s,t vehřesnulovýmsoučtemmusíplatit:

a m1 a m2 a mn zobrazení. Operaci násobení u matic budeme definovat jiným způsobem.

11 Soustavy rovnic a nerovnic, Determinanty a Matice

Disková pole (RAID) 1

Samoopravné kódy. Katedra matematiky a Institut teoretické informatiky Západočeská univerzita

Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl Tematická oblast ELEKTRONIKA

Úvod do teorie informace

3. Optimalizace pomocí nástroje Řešitel

4. Lineární nerovnice a jejich soustavy

JčU - Cvičení z matematiky pro zemědělské obory (doc. RNDr. Nýdl, CSc & spol.) Minitest MT1

1/10. Kapitola 12: Soustavy lineárních algebraických rovnic

Y36SAP. Osnova. Číselné soustavy a kódy, převody, aritmetické operace Y36SAP Poziční číselné soustavy a převody.

Číselné soustavy. Jedná se o způsob reprezentace čísel.

Slovní úlohy řešené lineární rovnicí. pracovní list. Základní škola Zaječí, okres Břeclav Školní 402, , příspěvková organizace

Definice (Racionální mocnina). Buď,. Nechť, kde a a čísla jsou nesoudělná. Pak: 1. je-li a sudé, (nebo) 2. je-li liché, klademe

cv3.tex. Vzorec pro úplnou pravděpodobnost

1. Několik základních pojmů ze středoškolské matematiky. Na začátku si připomeneme následující pojmy:

1 Vektorové prostory.

6. Matice. Algebraické vlastnosti

ALGEBRA. Téma 4: Grupy, okruhy a pole


Matice. Přednáška MATEMATIKA č. 2. Jiří Neubauer. Katedra ekonometrie FEM UO Brno kancelář 69a, tel

Zobrazení dat Cíl kapitoly:

Struktura a architektura počítačů (BI-SAP) 5

Jak pracovat s absolutními hodnotami

CQ485. Opakovač a převodník linek RS485 a RS422. S aktivní i pasivní obnovou dat

Aritmetické operace a obvody pro jejich realizaci

Svislé dopravní značení Část 1: Proměnné dopravní značky

Laboratorní měření 1. Seznam použitých přístrojů. Popis měřicího přípravku

Transkript:

Kódy pro detekci a opravu chyb INP 2008 FIT VUT v Brně 1

Princip kódování 0 1 0 vstupní data kodér Tady potřebujeme informaci zabezpečit, utajit apod. Zakódovaná data: 000 111 000 Může dojít k poruše, např.: 001 110 000 dekodér 0 1 0 chceme získat původní data Předpokládejme kódovací předpis např.: 0 000, 1 111 Uvedené kódování může být použito buď pro přenos dat mezi jednotkami nebo pro celý systém (například počítač). Zabezpečení informace je založeno na vhodném využití 2 redundance.

Základní kódy pro detekci a opravu chyb Parita Ztrojení Hammingův kód (7,4) Rozšířený Hammingův kód 3

Parita a Hammingova vzdálenost Nejjednodušší kód detekující jednu chybu (SED) dostaneme doplněním paritního bitu, např. na sudou paritu (nebo lichou důvody, proč zvolit sudou, nebo lichou paritu jsou podmíněny použitou obvodovou technologií). 0110 1010 0 1000 0000 1 1111 1111 0... Popsané uspořádání se nazývá paritní kód. Kombinace se zvolenou sudou, tedy správnou paritou se označují jako kódov dové, kombinace s chybnou (lichou) paritou jako nekódov dové. Kontrola správnosti dat se zjišťuje kontrolou parity. Hammingova vzdálenost kódových složek je definovaná jako nejmenší počet bitů, v nichž se dvojice kódových kombinací liší, zjištěný pro všechny dvojice. U tohoto kódu je Hammingova vzdálenost rovna 2. Příklad sudého paritního kódu: x 2 x 1 x 0 p 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 Minimální vzdálenost, zjištěná u každé dvojice kódových slov je Hammingova vzdálenost kódu d H. U paritního kódu je to d H = 2. 4

Ztrojení (kód typu SEC - Single-Error Correction ) Ztrojením jednoho bitu dostaneme dvě kódové kombinace, a to 000, 111, a 6 nekódových kombinací. kódov dové kombinace nekódov dové kombinace 0 0 0 0 0 1 1 1 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 Za předpokladu jediné chyby (jednobitové) je možno určit, ze které kódové kombinace daná nekódová kombinace vznikla. Dostali jsme tak kód opravující jednoduché chyby (Single-Error Correction - SEC). Jeho Hammingova vzdálenost je 3. 5

Hammingova vzdálenost: demonstrace Richard Wesley Hamming, +Jan. 6, 1998 Pro opravu l násobn sobné chyby musí být Hammingova vzdálenost d 2l +1. Obrázek: Kroužky nakreslené plnou čarou představují kódové kombinace, tečkované kroužky znamenají nekódové kombinace. Mezi sousedními kroužky v jednom řádku je Hammingova vzdálenost rovna jedné. Je zřejmé, že pro kód s Hammingovou vzdáleností d = 2 nemůžeme rozhodnout, ze které kódové kombinace vzniklo vlivem jednobitové chyby nekódové slovo, a nedokážeme tedy chybu opravit. Opravu jednobitové chyby můžeme provést až u kódu se vzdáleností d = 3. d = 1 SED SEC SEC - DED DEC 2 3 4 5 6

Hammingův kód (n, k) n délka kódového slova (v bitech) k počet informačních bitů m počet kontrolních bitů n = 2 m 1 n = m + k Př. HK(7, 4), HK(15, 11), Nejznámější SEC je HK(7, 4) 7

Hammingův kód (7,4) Podle hodnoty zavedeného indexu i se rozhodne o funkci příslušného bitu: je-li i mocnina dvojky, je bit kontrolní (C), v ostatních případech je bit informační (I). Rozmístění symbolů x v generující matici je popsáno generujícími rovnicemi. Je tak definován způsob doplňování hodnot kontrolních bitů, tedy jistým způsobem vypočítávaných paritních bitů. 8

Hammingův kód (7,4) Přičteme-li operací XOR k oběma stranám generujících rovnic pořadě C 1, C 2, C 4, dostaneme tzv. kontrolní rovnice C 1 I 3 I 5 I 7 = 0 = S 1 C 2 I 3 I 6 I 7 = 0 = S 2 C 4 I 5 I 6 I 7 = 0 = S 4 Výpočtem kontrolních rovnic pro kódová (správná) slova dostaneme nuly. Pro nekódová slova, která vzniknou jednobitovou chybou z kódových slov vyjdou výpočtem kontrolních rovnic nenulové hodnoty S 4, S 2, S 1, zvané syndrom chyby. Syndrom jednoduché chyby udává binárně hodnotu indexu i bitu s chybou. Chybu pak můžeme opravit změnou hodnoty takto zjištěného bitu na hodnotu opačnou. Pro dvojnásobnou chybu však mechanizmus selhává a syndrom chyby udává nesprávnou polohu chyby. Je to způsobeno tím, že takto definovaný kód je SEC, nikoli však DED. Proto je nutno doplnit definici kódu tak, aby kód získal vlastnost DED, získáme rozšířený Hammingův kód. 9

Rozšířený Hammingův kód Do kódu se doplní kontrolní bit C 0 (normální paritní bit), popsaný generující rovnicí C 0 = C 1 C 2 I 3 C 4 I 5 I 6 I 7 a kontrolní rovnicí S 0 = C 0 C 1 C 2 I 3 C 4 I 5 I 6 I 7 10

Příklad: Rozšířený Hammingův kód d = 4 na čtyřech informačních bitech, jsou přidány čtyři kontrolní bity. Linearita kódu: součet modulo 2 dvou kódových slov vytvoří opět platné kódové slovo. I 7 I 6 I 5 C 4 I 3 C 2 C 1 C 0 X X X X X X X X X X X X X X X X X X X X 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 11

Rozšířený Hammingův kód - syndrom Dále definujeme syndrom chyby S = S 1 + S 2 + S 4 Pomocí hodnot S, S 0 dostaneme klasifikaci chyb: Základní typ jednoduché chyby se projeví nenulovým syndromem a chybou parity. V takovém případě se provede oprava. Stejně se však projeví i trojnásobná chyba a další chyby s lichou násobností. Dvojitá chyba (a další chyby se sudou násobností) se projeví nenulovým syndromem a správnou paritou. Oprava není možná. Zvláštním případem je hlášení s nulovým syndromem a chybnou paritou. Jde buďto o případ vícenásobné chyby, nebo o poruchu hlídače parity. V obou případech se oprava chyby nedá provést. 12

Generování a kontrola parity x0 x1 x2 x3 x4 x5 x6 x7 p x0 x1 x2 x3 x4 x5 x6 x7 p 1 = error 0 = OK p = x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 zde je + operátor XOR errror = x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + p 13

Oprava chyb pomocí syndromu Hammingova kódu S 0 S S1 S2 S4 & DC bin na 1 z 8 Enable 0 1 2 3 4 5 6 7 C1 1 C2 2 I3 3 C4 4 C1 C2 I3 C4 I5 5 I5 I6 6 I6 I7 7 I7 Dekodér syndromu Korektor 14

Zobecněný Hammingův kód Uvážíme-li obvodovou realizaci generujících a kontrolních rovnic, zjistíme, že obvod podle nejdelší rovnice pro C 0 resp. S 0 má největší zpoždění, tedy že zdržuje. Je tedy žádoucí optimalizovat rovnice tak, aby všechny obvody měly shodné zpoždění. Soustavu rovnic lze upravovat přičítáním rovnic jedné k druhé resp. náhradou jedné rovnice lineární kombinací dalších rovnic. Dospějeme tak k definici zobecněného Hammingova kódu du, který je definován generující maticí stejných rozměrů jako rozšířený Hammingův kód, pro jehož sloupce platí: - všechny sloupce jsou nenulové - žádné dva sloupce nejsou shodné Je zřejmé, že jedinou nevýhodou, která z použití zobecněného Hammingova kódu vyplývá je to, že syndrom chyby nedává index chybného bitu přímo, ale až po překódování, které se realizuje pomocí překódovací tabulky. 15

Redundance kódu a CNC Redundance kódu R je procentuální vyjádření počtu přidaných (kontrolních) bitů C k původnímu počtu informačních (datových) bitů I R = C / I Redundance 8-bitového kódu s přidaným paritním bitem je R parity8 = 1/8 = 0,125 = 12,5% Redundance ztrojeného kódu je 200%. Dále se můžeme setkat s parametrem, označeným zkratkou CNC Code to Noncode ratio. Je to poměr počtu kódových a nekódových slov, tedy kódových a nekódových binárních kombinací z celkového množství binárních kombinací dané délky. Pro paritní kód je poměr CNC 1:1, tedy 1, pro ztrojený kód je poměr CNC 2:6, tedy 0,33. Otázka zka: Jaká je hodnota redundance a CNC pro jednoduchý a rozšířený Hammingův kód s délkou n informačních bitů? 16