Co je Hammingův kód: Historie, práce a její aplikace

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





V digitálních systémech jsou přenášená data pro sdělení mohou být poškozeny v důsledku vnějšího šumu a jakýchkoli jiných fyzických poruch. Pokud se přenášené údaje neshodují s danými vstupními údaji, nazývá se to „chyba“. Chyby dat mohou odstranit důležitá data v digitálních systémech. Přenos dat bude probíhat ve formě bitů (0 a 1) v digitálních systémech. Pokud se někdo z bitů změní, může to ovlivnit výkon celého systému. Pokud se bit „1“ změní na bit „0“ nebo naopak, nazývá se to bitová chyba. Existují různé typy chyb jako jednobitové chyby, více chyb a chyby shluku. V tomto článku pojednáváme o korekci a detekci chyb a o Hammingově kódu.

Co je detekce a oprava chyb?

V digitální komunikaci dojde ke ztrátě dat, pokud dojde k chybě v přenosu informací z jednoho systému / sítě do jiného systému / sítě. Je tedy důležité najít a opravit chyby. Nějaká chyba detekce a korekční metody se používají k detekci a opravě chyb pro efektivní komunikaci. Pokud se použijí tyto metody, lze data přenášet s vyšší přesností.




Detekce chyb je definována jako metoda použitá k detekci chyb přenášených z vysílače / odesílatele do přijímače v digitálních systémech. K datům se během přenosu přidávají kódy redundance, aby se zjistily chyby. Nazývají se kódy pro detekci chyb.

Oprava chyby je oprava dat přenášených z vysílače do přijímače. Opravu chyb lze provést dvěma typy.



Zpětná oprava chyb

V tomto typu korekce chyb přijímač požaduje zpět odesílatele, aby znovu odeslal data, pokud přijímač zjistí chybu.

Oprava chyby vpřed

pokud data přijatá přijímačem naleznou chybu, provede kódy opravující chyby, aby data automaticky opravila a obnovila.


Pokud existuje „m“ počet datových bitů a „r“ počet nadbytečných bitů, pak kombinace informací bude 2r.

2r> = m + r + 1

Typy kódů detekce chyb

Chyby v přijatých datech lze detekovat pomocí 3 typů kódů pro detekci chyb. Jsou to kontrola parity, kontrola cyklické redundance (CRC) a kontrola podélné redundance.

Kontrola parity

Redundantní bit zvaný paritní bit je přidán, aby se počet bitů stal sudým nebo lichým v případě sudé parity nebo liché parity. Přijímač počítá počet bitů (1) v rámci pro přidání paritního bitu. Tomu se říká kontrola parity. Pokud je počet 1 v rámci sudý, použije se sudá parita přidáním bitu „1“ s nulovou hodnotou. Podobně z čísla 1 je liché, pak se lichá parita použije přidáním bitu s hodnotou „1“.

Detekce chyb

detekce chyb

Proto se používá k zajištění toho, aby nebyl poškozen rámec / datum přijaté přijímačem ze zdroje. U tohoto typu detekce chyb by číslo 1 mělo být dokonce v přijatém rámci. Je to velmi levnější ze všech typů detekce chyb.

Kontrola podélné redundance (LRC)

Když je sada / blok bitů uspořádána, lze použít metodu LRC ke kontrole paritního bitu v každém rámci. Pomáhá poslat sadu paritních bitů spolu s původními daty a zkontroluje redundanci.

Kontrola cyklické redundance

jeho typ se používá k detekci dat / rámce přijatého ze zdroje je platný nebo ne. Zahrnuje binární rozdělení dat, která by měla být odeslána, a používá polynomy (ke generování dělitele). Před přenos , operaci dělení provádí odesílatel na datech / bitech / rámci pro výpočet zbytku.

Kontrola cyklické redundance

kontrola cyklické redundance

Během přenosu skutečných dat od odesílatele přidá zbytek na konec skutečných dat. Kombinace skutečných dat a zbytku se nazývá kódové slovo. Data jsou přenášena ve formě kódových slov. V tomto procesu, pokud jsou data poškozena, budou data přijímačem odmítnuta, jinak budou přijata.

Co je Hammingův zákoník?

Hammingův kód je definován jako lineární kód, který se používá v procesu detekce chyb až do 2 mezilehlých chyb. Je také schopen detekovat jednobitové chyby. V této metodě jsou redundantní bity přidány k datům / zprávě odesílatelem za účelem kódování dat. Za účelem detekce a opravy chyb se tyto redundantní bity přidávají na určité pozice pro proces opravy chyb.

Hammingův kód

Hammingův kód

Historie Hammingových kódů

V roce 1950 vynalezl Richard W. hamming Hammingovy kódy pro detekci a opravu chyb v datech. Po vývoji počítačů s vyšší spolehlivostí zavedl hammovací kódy pro kódy opravující jednu chybu a později rozšířil až na kódy detekující dvě chyby. Hammingovy kódy se vytvářejí, protože kontrola parity nedokáže detekovat a opravit chyby v datech. Hammingovy kódy se vkládají do jakékoli blokové délky dat mezi skutečnými daty a redundančními bity. Vyvinul řadu algoritmů pro práci na problémech metod korekce chyb a tyto kódy jsou široce používány v paměti ECC.

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

Proces kódování zprávy pomocí hammingového kódu odesílatelem zahrnuje 3 kroky.

Krok 1: Prvním krokem je výpočet počtu redundantních bitů ve zprávě

  • Pokud například zpráva obsahuje „n“ počet bitů a do zprávy se přidá „p“ počet nadbytečných bitů, pak „np“ označuje (n + p + 1) různé stavy.
  • Kde (n + p) představuje umístění chyby v každé bitové pozici
  • 1 (stav navíc) nepředstavuje žádnou chybu.
  • Protože „p“ označuje 2 ^ p (2p) stavy, které se rovnají (n + p + 1) stavům.

Krok 2: Umístěte redundantní bity do přesné / správné polohy

'P' bity jsou vloženy do bitových pozic, které jsou výkonem 2 jako 1, 2, 4, 8, 16 atd. Tyto bitové pozice jsou označeny jako p1 (pozice 1), p2 (pozice 2), p3 (pozice 4) atd.

Krok 3: Vypočítejte hodnoty nadbytečných bitů

  • Zde se paritní bity používají k výpočtu hodnot nadbytečných bitů.
  • Paritní bity mohou číslo 1 ve zprávě označit jako sudé nebo liché.
  • Pokud je celkový počet 1 ve zprávě sudý, použije se rovnoměrná parita
  • Pokud je celkový počet 1 ve zprávě lichý, použije se lichá parita.

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

Proces dešifrování zprávy přijaté od odesílatele příjemcem pomocí hammingova kódu zahrnuje následující kroky. Tento proces není nic jiného než přepočet k detekci a opravě chyb ve zprávě.

Krok 1: Počítejte počet nadbytečných bitů

Vzorec pro kódování zprávy pomocí nadbytečných bitů je,

2p≥ n + p + 1

Krok 2: opravte pozice všech nadbytečných bitů

„P“ číslo nadbytečných bitů je umístěno na bitových pozicích síly 2, jako 1,2,4,8,16,32 atd.

Krok 3: kontrola parity (lichá parita a sudá parita)

Paritní bity se počítají na základě počtu 1 v datových bitech a nadbytečných bitech.

Například

Parita p1 by byla 1, 3, 5, 7, 9, 11,…

Parita p2 by byla 2, 3, 6, 7, 10, 11,…

Parita p3 by byla 4–7, 12–15, 20–23,…

Výhody Hammingova kódu

Hlavní výhoda použití Hammingova kódu je nákladově efektivní, pokud datový proud obsahuje jednobitové chyby.

  • Může poskytovat detekci chyb a také označuje bit, který obsahuje chybu pro korekci.
  • Hammingovy kódy se velmi snadno a nejlépe používají v paměti počítače a při jednobitových opravách a detekci chyb.

Nevýhody Hammingova kódu

  • Nejlepší je pouze pro jednobitovou opravu a detekci chyb. Pokud dojde k chybě několika bitů, může dojít k poškození celého.
  • Hammingův kódový algoritmus může vyřešit pouze jednobitové chyby.

Aplikace Hammingových kódů

Hammingovy kódy se používají v

  • Výpočetní
  • Telekomunikace
  • Komprese dat
  • Řešení hádanek a turbo kódů
  • Satelity
  • Plazmová CAM
  • Stíněné vodiče
  • Modemy
  • Paměť počítače
  • Otevřete konektory
  • Vestavěné systémy a procesor

Časté dotazy

1). Může Hammingův kód detekovat 2bitové chyby?

Hammingovy kódy dokážou detekovat a opravit až 2-bitové chyby v datovém proudu

2). Jak opravíte Hammingův kód?

Hammingovy kódy jsou umístěny v libovolné délce dat mezi skutečnými daty a nadbytečnými bity. Tyto kódy jsou místa s minimální vzdáleností 3 bity

3). Co je to paritní kód?

Paritní kód nebo paritní bit přidává bit do přijatého rámce (data obsahují 1 a 0), aby celkový počet bitů (1) byl sudý nebo lichý.

4). Jaká je Hammingova vzdálenost mezi daty?

Hammingova vzdálenost mezi dvěma různými datovými toky stejné délky je číslo 1.

Hammingovu vzdálenost mezi dvěma datovými řetězci stejné délky lze vypočítat pomocí operace XOR.

Například a = 11011001

b = 10011101

Hammingovu vzdálenost lze vypočítat jako,

11011001 ⊕ 10011101 = 01000100 (počet 1 bitů jsou 2)

Hammingova vzdálenost označuje počet 1 ve výsledném datovém proudu

Takže d (11011001, 10011101) = 2

Podobně 010 ⊕ 011 = 001, d (010, 011) = 1.

5). Je Hammingův kód cyklický?

Ano, Hammingovy kódy jsou ekvivalentní cyklickým kódům, které lze použít jako kódy pro detekci chyb.

Jedná se tedy o opravu a detekci chyb, typy detekce chyb, Hammingovy kódy , proces šifrování a dešifrování zprávy pomocí Hammingových kódů, aplikace Hammingových kódů, výhody a nevýhody Hammingových kódů. Zde máte otázku: ‚Jaké jsou aplikace detekce a opravy chyb? '