Hammingův kód: Příklady opravy chyb

Obsah:

Anonim

Co je to chyba?

Přenášená data mohou být během komunikace poškozena. Pravděpodobně bude ovlivněn vnějším hlukem nebo jinými fyzickými poruchami. V takové situaci nemohou být vstupní data stejná jako výstupní data. Tento nesoulad se označuje jako „chyba“.

Chyby dat mohou mít za následek ztrátu důležitých nebo zabezpečených dat. Většina datového přenosu v digitálních systémech bude ve formě „bitového přenosu“. I malá změna může ovlivnit výkon celého systému. V datové sekvenci, pokud se 1 změní na 0 nebo 0 se změní na 1, nazývá se to „Bitová chyba“.

V tomto výukovém programu Hammingova kódu se naučíte:

  • Co je to chyba?
  • Druhy chyb
  • Co je detekce a oprava chyb?
  • Co je Hammingův kód?
  • Historie Hammingova kódu
  • Použití lemovacího kódu:
  • Výhody Hammingova kódu
  • Nevýhody Hammingova kódu
  • Proces kódování zprávy pomocí Hammingova kódu
  • Proces dešifrování zprávy v Hammingově kódu

Druhy chyb

Při přenosu dat od odesílatele k přijímači dochází hlavně ke třem typům bitové chyby.

  • Single bitové chyby
  • Více bitových chyb
  • Burst chyby

Chyby jednoho bitu

Změna provedená v jednom bitu v celé datové sekvenci je známá jako „Chyba jednoho bitu“. Výskyt jednobitové chyby však není tak běžný. K této chybě navíc dochází pouze v paralelním komunikačním systému, protože data jsou bitově přenášena v jedné lince. Existuje tedy více šancí, že jeden řádek může být hlučný.

Více bitových chyb

Pokud v datové sekvenci dojde ke změně dvou nebo více bitů datové sekvence vysílače k ​​přijímači, je to známé jako „Vícebitové chyby“.

Tento typ chyby se většinou vyskytuje v sériových i paralelních sítích datové komunikace.

Chyby série

Změna sady bitů v datové sekvenci je známá jako „Burst error“. Tento typ chyby dat se počítá od změny prvního bitu po poslední změnu bitu.

Co je detekce a oprava chyb?

V digitálním komunikačním systému bude chyba přenesena z jednoho komunikačního systému do druhého. Pokud tyto chyby nebudou detekovány a opraveny, dojde ke ztrátě dat. Pro efektivní komunikaci by se systémová data měla přenášet s vysokou přesností. Toho dosáhnete tak, že nejprve identifikujete chyby a opravíte je.

Detekce chyb je metoda detekce chyb, které jsou přítomny v datech přenášených z vysílače do přijímače v systému datové komunikace.

Zde můžete použít kódy redundance k vyhledání těchto chyb přidáním k datům, když jsou přenášena ze zdroje. Tyto kódy se nazývají „Chybné kódy“.

Jsou tři typy kódů pro detekci chyb:

  • Kontrola parity
  • Kontrola cyklické redundance (CRC)
  • Kontrola podélné redundance (LRC)

Kontrola parity:

  • Je také znám jako kontrola parity.
  • Má nákladově efektivní mechanismus pro detekci chyb.
  • V této technice je redundantní bit známý jako paritní bit. Je připojen pro každou datovou jednotku. Celkový počet 1 s v jednotce by měl být sudý, což je známé jako paritní bit.

Kontrola podélné nadbytečnosti

V této technice detekce chyb je blok bitů uspořádán do tabulkového formátu. Metoda LRC vám pomůže vypočítat paritní bit pro každý sloupec. Sada této parity se také odešle spolu s původními daty. Blok parity vám pomůže zkontrolovat nadbytečnost.

Kontrola cyklické redundance

Kontrola cyklické redundance je sekvence redundance, která musí být připojena na konec jednotky. Proto by výsledná datová jednotka měla být dělitelná druhým, předem stanoveným binárním číslem.

V cíli je třeba příchozí data rozdělit stejným číslem. V případě, že není žádný zbytek, předpokládá se, že datová jednotka je správná a je přijata. Jinak to znamená, že datová jednotka je při přenosu poškozená, a proto musí být odmítnuta.

Co je Hammingův kód?

Hammingův kód je linerový kód, který je užitečný pro detekci chyb až dvou okamžitých bitových chyb. Je schopen jednobitových chyb.

V Hammingově kódu zdroj kóduje zprávu přidáním nadbytečných bitů do zprávy. Tyto redundantní bity jsou většinou vkládány a generovány na určitých pozicích ve zprávě, aby se dosáhlo procesu detekce a opravy chyb.

Historie Hammingova kódu

  • Hammingův kód je technika sestavená společností RWHamming pro detekci chyb.
  • Hammingův kód by měl být aplikován na datové jednotky jakékoli délky a používá vztah mezi daty a redundančními bity.
  • Pracoval na problému metody opravy chyb a vyvinul stále výkonnější řadu algoritmů zvaných Hammingův kód.
  • V roce 1950 vydal Hammingův kód, který se dnes široce používá v aplikacích, jako je paměť ECC.

Aplikace Hammingova kódu

Zde jsou některé běžné aplikace používání lemovacího kódu:

  • Satelity
  • Paměť počítače
  • Modemy
  • PlasmaCAM
  • Otevřete konektory
  • Stínící drát
  • Vestavěný procesor

Výhody Hammingova kódu

  • Metoda Hammingova kódu je účinná v sítích, kde jsou datové toky uvedeny pro jednobitové chyby.
  • Hammingův kód poskytuje nejen detekci bitové chyby, ale také vám pomůže odsadit bit obsahující chybu, aby ji bylo možné opravit.
  • Díky snadnému použití Hammových kódů jsou nejlepší pro použití v paměti počítače a pro korekci jedné chyby.

Nevýhody Hammingova kódu

  • Jednobitový kód pro detekci a opravu chyb. Pokud je však založeno více bitů, pak výsledek může vyústit v další bit, jehož změna by měla být správná. To může způsobit další chybu dat.
  • Hammingův kódový algoritmus může vyřešit pouze problémy s jednotlivými bity.

Proces kódování zprávy pomocí Hammingova kódu

Proces, který odesílatel používá k zakódování zprávy, zahrnuje následující tři kroky:

  • Výpočet celkového počtu nadbytečných bitů.
  • Kontrola polohy nadbytečných bitů.
  • Nakonec výpočet hodnot těchto nadbytečných bitů.

Když jsou do zprávy vloženy výše uvedené redundantní bity, odešle se uživateli.

Krok 1) Výpočet celkového počtu nadbytečných bitů.

Předpokládejme, že zpráva obsahuje:

  • n - počet datových bitů
  • p - počet nadbytečných bitů, které jsou k němu přidány, takže np může indikovat alespoň (n + p + 1) různé stavy.

Zde (n + p) zobrazuje umístění chyby v každé z (n + p) bitových pozic a jeden další stav označuje žádnou chybu. Protože p bity mohou indikovat 2 p stavy, 2 p se musí rovnat alespoň (n + p + 1).

Krok 2) Umístění nadbytečných bitů do správné polohy.

P redundantní bity by měly být umístěny na bitových pozicích mocnin 2. Například 1, 2, 4, 8, 16 atd. Jsou označovány jako p 1 (na pozici 1), p 2 (na pozici 2) , p 3 (v poloze 4) atd.

Krok 3) Výpočet hodnot redundantního bitu.

Redundantní bity by měly být paritní bity, díky nimž je počet 1 s sudý nebo lichý.

Dva typy parity jsou -

  • Celkový počet bitů ve zprávě je vytvořen sudě se nazývá sudá parita.
  • Celkový počet bitů ve zprávě, který je označen jako lichý, se nazývá lichá parita.

Zde se musí veškerý redundantní bit, p1, vypočítat jako parita. Mělo by pokrývat všechny bitové pozice, jejichž binární reprezentace by měla obsahovat 1 na 1. pozici s výjimkou polohy p1.

P1 je paritní bit pro všechny datové bity v pozicích, jejichž binární reprezentace obsahuje 1 v méně důležité pozici bez 1 Like (3, 5, 7, 9,

…. )

P2 je paritní bit pro všechny datové bity v pozicích, jejichž binární reprezentace zahrnuje 1 v pozici 2 zprava, bez 2 Like (3, 6, 7, 10, 11,

…)

P3 je paritní bit pro každý bit v pozicích, jejichž binární reprezentace obsahuje 1 v pozici 3 zprava nezahrnuje 4 Like (5-7, 12-15,

…)

Proces dešifrování zprávy v Hammingově kódu

Přijímač přijímá příchozí zprávy, které vyžadují provedení přepočtů k nalezení a opravě chyb.

Proces přepočtu provedený v následujících krocích:

  • Počítání počtu nadbytečných bitů.
  • Správné umístění všech nadbytečných bitů.
  • Kontrola parity

Krok 1) Počítání počtu nadbytečných bitů

Můžete použít stejný vzorec pro kódování, počet nadbytečných bitů

2 p ≥ n + p + 1

Zde je počet datových bitů ap je počet redundantních bitů.

Krok 2) Správné umístění všech nadbytečných bitů

Zde je p redundantní bit, který je umístěn na bitových pozicích mocnin 2, například 1, 2, 4, 8 atd.

Krok 3) Kontrola parity

Paritní bity je třeba vypočítat na základě datových bitů a nadbytečných bitů.

p1 = parita (1, 3, 5, 7, 9, 11

…)

p2 = parita (2, 3, 6, 7, 10, 11

…)

p3 = parita (4-7, 12-15, 20-23

…)

souhrn

  • Přenášená data mohou být během komunikace poškozena
  • Tři typy bitových chyb jsou 1) Single Bit Errors 2) Multiple Bit Error 3) Burst Bit errors
  • Změna provedená v jednom bitu v celé datové sekvenci je známá jako „Chyba jednoho bitu“.
  • Pokud v datové sekvenci dojde ke změně dvou nebo více bitů datové sekvence vysílače k ​​přijímači, je to známé jako „Vícebitové chyby“.
  • Změna sady bitů v datové sekvenci je známá jako „Burst error“.
  • Detekce chyb je metoda detekce chyb, které jsou přítomny v datech přenášených z vysílače do přijímače v systému datové komunikace
  • Tři typy kódů pro detekci chyb jsou 1) Kontrola parity 2) Kontrola cyklické redundance (CRC) 3) Kontrola podélné redundance (LRC)
  • Hammingův kód je linerový kód, který je užitečný pro detekci chyb až dvou okamžitých bitových chyb. Je schopen jednobitových chyb.
  • Hammingův kód je technika sestavená společností RWHamming pro detekci chyb.
  • Běžné aplikace využívající lemovací kód jsou počítačové paměti satelitů, modemy, vestavěný procesor atd.
  • Největší výhoda metody hammingového kódu je účinná v sítích, kde jsou datové toky uvedeny pro jednobitové chyby.
  • Největší nevýhodou metody hammingového kódu je, že může vyřešit pouze problémy s jedinou bitovou částí.
  • Můžeme provést proces šifrování a dekódování zprávy pomocí Hammingova kódu.