Ochrana dat před shluky chyb, Berlekamp- Preparatův kód

Podobné dokumenty
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ

KOMBINAČNÍ LOGICKÉ OBVODY

Způsoby realizace této funkce:

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY METODY PROKLÁDÁNÍ ZPRÁVY METHODS OF INTERLEAVING DATA DIPLOMOVÁ PRÁCE MASTER S THESIS

OPRAVA SHLUKŮ CHYB V DIGITÁLNÍCH PŘENOSECH BERLEKAMP-PREPARATOVÝMI KÓDY BURST ERROR CORRECTION IN DIGITAL TRANSMISSION USING BERLEKAMP-PREPARATA CODES

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

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Rok / Year: Svazek / Volume: Číslo / Issue: Turbo Blokové Kódy. Turbo block codes. Jakub Šedý, Pavel Šilhavý, Ondřej Krajsa, Ondřej Hrouza

1 z :27

MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH. Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky

BPC2E_C09 Model komunikačního systému v Matlabu

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

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

Registry a čítače část 2

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

PROTICHYBOVÉ SYSTÉMY S PROKLÁDÁNÍM


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

5. A/Č převodník s postupnou aproximací

ASYNCHRONNÍ ČÍTAČE Použité zdroje:

Pulzní (diskrétní) modulace

LOGICKÉ SYSTÉMY PRO ŘÍZENÍ

ZABEZPEČENÍ PŘENOSU DAT PROTI DLOUHÝM SHLUKŮM CHYB

PSK1-9. Číslicové zpracování signálů. Číslicový signál

PROGRAMOVATELNÉ LOGICKÉ OBVODY

SČÍTAČKA, LOGICKÉ OBVODY ÚVOD TEORIE

Stanovení odolnosti datového spoje

18A - PRINCIPY ČÍSLICOVÝCH MĚŘICÍCH PŘÍSTROJŮ Voltmetry, A/D převodníky - principy, vlastnosti, Kmitoměry, čítače, fázoměry, Q- metry

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

U Úvod do modelování a simulace systémů

základní vlastnosti, používané struktury návrhové prostředky MATLAB problém kvantování koeficientů

Operace ALU. INP 2008 FIT VUT v Brně

1. Základy teorie přenosu informací

2.7 Binární sčítačka Úkol měření:

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat

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

SEKVENČNÍ LOGICKÉ OBVODY

PCM30U-ROK 2 048/256 kbit/s rozhlasový kodek stručný přehled

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů

Binární data. Číslicový systém. Binární data. Klávesnice Snímače polohy, dotykové displeje, myš Digitalizovaná data odvozená z analogového signálu

Manuál přípravku FPGA University Board (FUB)

Jako pomůcka jsou v pravém dolním rohu vypsány binární kódy čísel od 0 do 15 a binární kódy příkazů, které máme dispozici (obr.21). Obr.

ELT1 - Přednáška č. 6

Návrh konstrukce odchovny 3. dil

KZPE semestrální projekt Zadání č. 1

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Hammingovy kódy. dekódování H.kódů. konstrukce. šifrování. Fanova rovina charakteristický vektor. princip generující a prověrková matice

Rozšiřující desce s dalšími paralelními porty Rozšiřující desce s motorkem Elektrickém zapojení Principu činnosti Způsobu programování

Číslicové obvody základní pojmy

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Kodér/dekodér vybraných cyklických kódů Knejp Lukáš

Výukové texty. pro předmět. Automatické řízení výrobní techniky (KKS/ARVT) na téma

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

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Využití neuronové sítě pro identifikaci realného systému

KNIHOVNA MODELŮ TECHNOLOGICKÝCH PROCESŮ

VIZUALIZACE PRINCIPŮ PROTICHYBOVÉHO ZABEZPEČENÍ BLOKOVÝMI A CYKLICKÝMI KÓDY

Základní komunikační řetězec

cv3.tex. Vzorec pro úplnou pravděpodobnost

HAZARDY V LOGICKÝCH SYSTÉMECH

Adaptabilní systém pro zvýšení rychlosti a spolehlivosti přenosu dat v přenosové síti

Návrh frekvenčního filtru

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

Cíle. Teoretický úvod

VY_32_INOVACE_E 15 03

Teorie informace: řešené příklady 2014 Tomáš Kroupa

Přípravek pro demonstraci řízení pohonu MAXON prostřednictvím

Úloha 9. Stavové automaty: grafická a textová forma stavového diagramu, příklad: detektory posloupností bitů.

Teorie kódování aneb jak zhustit informaci

Analogově-číslicové převodníky ( A/D )

Kódování Konvoluční kódování

6 Algebra blokových schémat

TECHNICKÝ POPIS MODULU GRAFIK =============================

Výukové texty. pro předmět. Automatické řízení výrobní techniky (KKS/ARVT) na téma

1. 5. Minimalizace logické funkce a implementace do cílového programovatelného obvodu CPLD

Diagnostika signálu vlakového zabezpečovače

Projekt Pospolu. Sekvenční logické obvody Klopné obvody. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jiří Ulrych.

PŘEVOD DAT Z PARALELNÍCH NA SÉRIOVÁ. 1. Seznamte se s deskou A/D P/S (paralelně/sériového) převodníku stavebnicového systému OPTEL.

Studium tranzistorového zesilovače

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

Modulační parametry. Obr.1

Pohled do nitra mikroprocesoru Josef Horálek

Samoopravné kódy, k čemu to je

Logické funkce a obvody, zobrazení výstupů

Základy počítačových sítí Model počítačové sítě, protokoly

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

3. Sekvenční logické obvody

Informace, kódování a redundance

2.8 Kodéry a Rekodéry

Sekvenční logické obvody

Sekvenční logické obvody

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

11. Logické analyzátory. 12. Metodika měření s logickým analyzátorem

Měření vlastností datového kanálu

Fakulta elektrotechniky a komunikačních technologií Ústav radioelektroniky. prof. Ing. Stanislav Hanus, CSc v Brně

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

1 Digitální zdroje. 1.1 Převod digitálních úrovní na analogový signál. Cílem cvičení je osvojení práce s digitálními zdroji signálu.

Návrh asynchronního automatu

Mřížkové kódování. Ivan Pravda

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

Transkript:

749 9..7 Ochrana dat před shluky chyb, Berlekamp- Preparatův kód Ing. Vítězslav Křivánek, Ústav Telekomunikací Fakulta elektrotechniky a komunikačních technologií Vysoké Učení Technické v Brně, Purkyňova 8, 6 Brno, Czech Republic E-mail: V.Krivanek@phd.feec.vutbr.cz Problémem shluků chyb se v současných systémech musí zabývat stále více zařízení. Proto v individuálních protichybových systémech je vhodné zvážit použití jiných zabezpečovacích kódových technik, než masová aplikace stávajících řešení. I z toho důvodu, že současné komunikační kanály a informační systémy kladou stále větší nároky na kvalitu zabezpečení přenášených informací. Úvod Miniaturizace místa pro záznam dat a zrychlování přenosu dat neustále pokračuje v překotném tempu. Pro spolehlivou funkčnost je nepostradatelné se zabývat ochrannou před nežádoucími vlivy i tam, kde to dříve nebylo nutné []. Stále častěji se místo jednoduchých chyb či vícenásobných chyb vyskytují chyby shlukové. Hlavní zaměření je věnováno kódu Berlekamp-Preparata, který spadá do kategorie konvolučních kódů pro opravu shluků chyb. Obecně, vzhledem k poměrně velké složitosti s vytvářením a vlastní funkcí zabezpečovacích kódů je důležité poskytnout grafické znázornění []. Článek se proto zabývá počítačovou simulací v prostředí Matlab Simulink za účelem snazšího pochopení funkce jednotlivých dílčích částí kodeku. Při návrhu v individuálních protichybových systémů musí konstrukce kódovacího a dekódovacího zařízení sledovat několik základních cílů:. Rychlé kódování informace.. Snadný přenos zakódované zprávy. 3. Rychlé dekódování přijaté zprávy. 4. Opravu chyb způsobených šumem v kanálu během přenosu zprávy. 5. Maximalizaci množství informace přenesené za jednotku času. Hlavním bodem je čtvrtý z těchto úkolů. Problém spočívá v tom, že dosažení čtvrtého cíle není v souladu s pátým cílem, a nemusí být ani příliš v souladu s prvními třemi uvedenými úkoly. Jakékoliv řešení tohoto problému je nutně kompromisem mezi těmito pěti cíly. Na základě zjištěných výsledků lze hledat variantní řešení pro již používané způsoby protichybových zabezpečení s ohledem na dosažení vyšší efektivity výsledků. Konvoluční kodéry lze popisovat jako zdroje zpráv s pamětí. Generace kódových slov probíhá na základě obsahu rámce několika vstupních slov. Způsob kódování určité informační posloupnosti tedy závisí nejenom na aktuální vstupní informační posloupnosti, ale též na několika předchozích vstupních slovech. Poprvé byly představeny konvoluční kódy pro opravu shlukových chyb Hagelbargerem. Dále pak nezávisle na sobě Iwadari a Masery zkonstruovali efektivnější kódy stejného typu. Jejich kódy se stejnou korekční schopností vyžadují kratší ochranné intervaly než Hagelbargerovy kódy. Optimální kódy pro opravu postupných shlukových chyb byly později objeveny nezávisle Berlekampem a Preparatem [5]. 49-

749 9..7 Z posuzování vhodnosti vychází nejlépe Berlekamp-Preparatův kód [3]. Při stejné informační rychlosti a velikosti opravitelné chyby u výše uvedených konvolučních kódů vyžaduje nejkratší ochranný interval, má nejkratší zpoždění přenášené zprávy průchodem paměťových buněk a k realizaci kódu je třeba nejmenší počet paměťových buněk. Taktéž u něj nemůže dojít k nekonečnému šíření chyby. Některé vlastnosti jsou vykoupeny větší náročností na počet prováděných logických operací, kde nejmenší požadavky má aplikace Iwadari- Maseyova kódu. Základní Berlekamp-Preparatův kód (n ; n -; m) Postup objevený nezávisle Berlekampem a Preparatem, vždy přinese kód splňující Gallagerovy meze. Gallager ukázal, že libovolný konvoluční kód o informační rychlosti R má schopnost opravit všechny shluky délky b nebo kratší vzhledem k ochrannému intervalu délky A, jestliže platí: A + R b R () Uvedený vztah je znám jako mez kompletní opravy shlukové chyby. Z tohoto důvodu jsou Berlekamp-Preparatovy kódy optimální pro opravu postupných shlukových chyb. Jedná se o systematický konvoluční kód ke korekci shluků omezených do samostatného bloku úměrného ochranému intervalu m bezchybných bloků (tj. shluk může ovlivnit nanejvýš jeden blok omezené délky). Tento kód by měl mít schopnost postupné opravy shlukových chyb jednoho bloku úměrně ochrannému intervalu m bloků. I tento kód lze popsat vytvářecí maticí B, jejíž rozměry jsou n x n, jež se skládá ze dvou podmatic. První podmatice má jedničky na vedlejší diagonále a druhá podmatice má nad hlavní diagonálou jedničky. Přičemž obě podmatice mají shodný rozměr n x n. Zbylé prvky jsou nulové viz. (). B = () Z () při podmínce R = (n - )/n dostaneme další parametry kódu: A m n = m b = (3) Bloková vytvářecí matice určuje způsob zapojení kodéru viz. Obr. Opět se jedná o systematický konvoluční kód s generačními polynomy: (4) 3 5 6 7 g = D + D + D + D g g (4) (4) 3 = D + D = D + D 7 6 + D 7 (4, 5, 6) 49-

749 9..7 Obr. - Kodér Berlekamp-Preparatova kódu pro korekci 4 chyb Berlekamp-Preparatovy kódy mohou být dekódovány použitím obecné dekódovací techniky pro konvoluční kódy opravující shlukové chyby zásluhou Masseyho [4]. V uvedeném dekodéru nemůže nastat nekonečné šíření chyby a jeho schéma je uvedeno na Obr.. Simulace Obr. - Dekodér Berlekamp-Preparatova kódu pro korekci 4 chyb Sestavení modelu a následné simulace Berlekampova-Preparatova kodeku byly provedeny pomocí programu Matlab Simulink. Matlab Simulink představuje prostředí, ve kterém je možné simulovat libovolnou graficky zadávanou soustavu. Soustava je složena z jednotlivých funkčních bloků, které jsou vybírány ze speciálních knihoven. Prostředí Simulinku potom umožňuje graficky sledovat průběhy veličin v libovolném místě zapojení, například pomocí bloku osciloskopu. Hlavní výhodou výše uvedeného prostředí je možnost z jednotlivých bloků přímo z knihoven poskládat požadovaný funkční model. Lze tak sestavit velmi podrobný model kodéru i dekodéru (viz. Obr. 3 - Obr. 6) velmi jednoduchým způsobem. Tento názorný výsledek umožňuje zlepšit pohled na danou problematiku. 49-3

749 9..7 Popis simulačního zapojení modelu kodeku Na Obr. 3 je uvedeno blokové schéma zapojení simulovaného kodeku schopného korigovat shluk 4 chyb. Na Obr. 4 je zobrazeno vnitřní zapojení bloku kodéru. Můžeme vidět, že se sládá ze tří dílčích podbloků. Prvním z nich je sérioparalelní převodník, který převádí vstupní sériová data na tři paralelní toky dat pro vlastní kodér. Ve vlastním kodéru jsou vstupní data vybavena zabezpečovacím bitem a pokračují do bloku paralelně sériového převodníku, který převádí paralelní data zpět na sériový tok vhodný pro přenos přenosovým kanálem. Obr. 3: Blokové schéma zapojení kodeku Obr. 4: Blokové schéma zapojení kodéru Jak je patrné z Obr. 4, v zapojení bloku kodéru se vyskytují dvě různé přenosové rychlosti. Do bloku vlastního kodéru vstupují tři paralelní bity převedené sérioparalelním převodníkem ze vstupních sériových dat o přenosové rychlosti v, na výstupu však získáváme paralelní bity čtyři, které paralelně sériový převodník převádí na sériová data o přenosové rychlosti v. Pro přenosové rychlosti tedy platí poměr v v 3/ 4. / = Vnitřní schéma sériově paralelního převodníku je zobrazeno na Obr. 5. Vstupní data jsou přiváděna rychlostí v do posuvného registru tvořeného dvěma paměťovými buňkami. S příchodem třetího signálového prvku na vstup převodníku jsou pomocí impulzu z časové základny přepnuty řízené přepínače a dojde k odběru vzorku logických hodnot obsahu paměťových buněk. Tento odebraný vzorek je po zpětném přepnutí přepínačů uchován ve smyčce tvořené výstupem a druhým vstupem přepínače až do doby než dojde k odběru následujícího vzorku. Zapojení tak plní funkci demultiplexeru. 49-4

749 9..7 Obr. 5: Sériově paralelní převodník Vnitřní zapojení bloku vlastního kodéru je určeno vytvářecí maticí. Na vstup kodéru jsou přiváděny tři dílčí paralelní signálové toky ze kterých jsou odebírány vzorky logických hodnot. Pomocí součtů mod, reprezentovaných bloky XOR (Exklusive OR), a sedmi paměťových buněk, reprezentovaných zpožďovacími členy / z, je vytvářen zabezpečovací bit pro danou trojici vstupních bitů. Blok paralelně sériového převodníku má za úkol převést čtyři výstupní bity z vlastního kodéru na sériový tok bitů o rychlosti v, vhodný pro přenos. Jeho vnitřní zapojení ukazuje Obr. 6. 49-5

749 9..7 Obr. 6: Paralelně sériový převodník Funkce převodníku je založena na postupném vyčítání vzorků signálů přivedených na vstupy - 4. Aktuálně vyčítaný vstup je určen přepnutím příslušného přepínače řízeného pomocí komparátoru. Komparátor porovnává hodnotu z čítače - 3 řízeného časovou základnou pracující rychlostí v s hodnotou konstanty příslušné pro každý vstupní tok. Při shodě hodnoty konstanty a hodnoty z čítače je přepnut příslušný přepínač a vzorek přiveden na sčítací hradlo. Výstupní tok bitů o rychlosti v je získán logickým součtem dílčích toků pomocí čtyřvstupového hradla OR. Díky tomu jsou vstupní toky multiplexovány do toku výstupního. Blok generátor chyb simuluje shlukové chyby které mohou vznikat v reálném přenosovém kanálu. Vnitřní zapojení []. Dekodér je opět složen ze tří podbloků. Sériově paralelní převodník převádí vstupní data o rychlosti v na čtyři paralelní dílčí toky. Ve vlastním dekodéru proběhne oprava chyb na základě syndromů získaných ze zabezpečovacích bitů. Jednotlivé opravené dílčí toky jsou pomocí paralelně sériového převodníku multiplexována do výstupního bitového toku o rychlosti v. Vnitřní zapojení těchto dílů je hodně podobné kodéru a proto zde nejsou uvedeny. Simulace kodeku provedená pomocí výše uvedeného modelu dokázala jeho funkčnost. Na grafickém výstupu simulace (viz Obr. 7) můžeme vidět následující dílčí grafy. Na prvním z nich je zobrazena vstupní nezabezpečená posloupnost bitů o přenosové rychlosti v, zpožděná o 7 taktů první časové základny. Zpoždění je zavedeno pro lepší přehlednost grafu (odpovídající signálové prvky jsou pod sebou). Na druhém grafu je zobrazena výstupní dekódovaná posloupnost bitů o stejné přenosové rychlosti. Třetí graf znázorňuje rozdíl mezi vstupními a dekódovanými daty. Nulový průběh značí shodu mezi signály. Na čtvrtém grafu vidíme data zakódovaná kodérem, jenž vstupují do simulovaného přenosového kanálu přenosovou rychlostí v. Následující graf ukazuje shlukové chyby které modifikují přenášený signál. V posledním grafu jsou přenášená data s vloženými chybovými shluky vstupující do 49-6

749 9..7 obvodu dekodéru. Jelikož je vstupní datová posloupnost rovna výstupní (viz. třetí průběh) došlo tedy ke korekci vzniklých chyb a simulace potvrdila správnou funkci kodeku. Obr. 7: Grafický výstup simulace Závěr Zabezpečovací kódování patří k nepostradatelné části téměř každého přenosového systému. Byl předveden možný způsob implementování algoritmů zabezpečovacích kódů a jejich vizualizace v grafickém uživatelském rozhraní. Pomocí vhodně provedené simulace lze dostatečně názorně přiblížit jednotlivé fáze kódovacích i dekódovacích postupů. Berlekampův-Preparatův kód představuje vhodné, názorné řešení pro pochopení principu činnosti konvolučních kódů pro opravu shluku chyb. Vytvářecí a kontrolní matice kódu jsou snadno odvoditelné a výsledný kód má dobrou informační rychlost. Vývoj lepších prezentačních metod zabezpečovacích korekčních kódů umožňuje snazší pochopení uvedené problematiky. Literatura [] Bruen, A., Forcinito, A.: Cryptography, information theory, and error-correction: a handbook for the st century. Hoboken, N.J.: Wiley-Interscience, 5, 468 p., ISBN: - 47-6537-9. [] KŘIVÁNEK, V., ČÍKA, P.: Simulace shlukových chyb v Matlabu. Elektrorevue, ISSN 3-539, 6, roč. 6, č. 35, s.. [3] KŘIVÁNEK, V., KYSELÁK, M.: Výběr nejvhodnějšího konvolučního kódu - II. Access Server, ISSN 4-9675, 7, roč. 5, č. 3, s. - 6. [4] Morelos-ZAaragoza, R.: The Art of Error Correcting Coding. nd ed., John Wiley & Sons Ltd., 6, 384 p., ISBN -47-4478-4. [5] Ron, M.: Introduction to coding theory. Cambridge, Cambridge University Press 6, 566 p., ISBN -5-8454-. 49-7