Hammingova koda: primeri popravljanja napak

Kazalo:

Anonim

Kaj je napaka?

Preneseni podatki se med komunikacijo lahko poškodujejo. Verjetno bo nanjo vplival zunanji hrup ali druge fizične okvare. V takem primeru vhodni podatki ne morejo biti enaki izhodnim. Ta neusklajenost je znana kot »Napaka«.

Napake v podatkih lahko povzročijo izgubo pomembnih ali varnih podatkov. Večina prenosa podatkov v digitalnih sistemih bo v obliki "bitnega prenosa". Že majhna sprememba lahko vpliva na delovanje celotnega sistema. Če se v podatkovnem zaporedju 1 spremeni v 0 ali 0 spremeni v 1, se to imenuje "Bit error".

V tej vadnici Hammingove kode boste izvedeli:

  • Kaj je napaka?
  • Vrste napak
  • Kaj je odkrivanje in odpravljanje napak?
  • Kaj je Hammingova koda?
  • Zgodovina Hammingove kode
  • Uporaba Hemmingove kode:
  • Prednosti Hammingove kode
  • Slabosti Hammingove kode
  • Postopek kodiranja sporočila s Hammingovo kodo
  • Postopek dešifriranja sporočila v Hammingovi kodi

Vrste napak

Pri prenosu podatkov od pošiljatelja do prejemnika se pojavijo predvsem tri vrste bitnih napak.

  • Napake z enim bitom
  • Večbitne napake
  • Burst napake

Napake z enim bitom

Sprememba, narejena v enem bitu v celotnem zaporedju podatkov, je znana kot "napaka enega bita". Vendar pojav enobitne napake ni tako pogost. Poleg tega se ta napaka pojavi le v vzporednem komunikacijskem sistemu, ker se podatki prenašajo bitno v eni vrstici. Zato je več možnosti, da je lahko ena vrstica hrupna.

Več bitne napake

Če se v zaporedju podatkov spremenijo dva ali več bitov podatkovnega zaporedja oddajnika do sprejemnika, je to znano kot "Večbitne napake."

Ta vrsta napak se večinoma pojavlja v serijskih in vzporednih omrežjih za podatkovno komunikacijo.

Burst napake

Sprememba nabora bitov v zaporedju podatkov je znana kot "napaka porušitve". Ta vrsta podatkovne napake se izračuna od spremembe prvega bita do spremembe zadnjega bita.

Kaj je odkrivanje in odpravljanje napak?

V digitalnem komunikacijskem sistemu se napake prenašajo iz enega komunikacijskega sistema v drugega. Če teh napak ne bomo odkrili in odpravili, bodo podatki izgubljeni. Za učinkovito komunikacijo se sistemski podatki prenašajo z visoko natančnostjo. To se naredi tako, da se napake najprej prepoznajo in popravijo.

Odkrivanje napak je metoda odkrivanja napak, ki so prisotne v podatkih, ki se prenašajo od oddajnika do sprejemnika v sistemu za podatkovno komunikacijo.

Tu lahko za iskanje teh napak uporabite odvečne kode, tako da dodate podatke, ko se prenašajo iz vira. Te kode se imenujejo "Napake pri zaznavanju kod".

Tri vrste kod za odkrivanje napak so:

  • Preverjanje paritete
  • Preverjanje cikličnega odvečnega stanja (CRC)
  • Preverjanje vzdolžne odvečnosti (LRC)

Preverjanje paritete:

  • Znano je tudi kot preverjanje paritete.
  • Ima stroškovno učinkovit mehanizem za odkrivanje napak.
  • Pri tej tehniki je odvečni bit znan kot paritetni bit. Dodana je za vsako podatkovno enoto. Skupno število 1 s v enoti mora postati sodo, kar je znano kot paritetni bit.

Preverjanje vzdolžne odvečnosti

Pri tej tehniki zaznavanja napak je blok bitov organiziran v tabelarni obliki. LRC metoda vam pomaga izračunati bit parnosti za vsak stolpec. Skupaj s prvotnimi podatki se pošlje tudi niz te paritete. Blok paritete vam pomaga preveriti odvečnost.

Preverjanje ciklične odvečnosti

Preverjanje ciklične redundance je zaporedje odvečnih, ki ga je treba dodati na konec enote. Zato bi morala nastala podatkovna enota postati deljiva z drugim, vnaprej določenim binarnim številom.

Na cilju je treba dohodne podatke deliti z enako številko. Če ostanka ni, se domneva, da je podatkovna enota pravilna in je sprejeta. V nasprotnem primeru pomeni, da je podatkovna enota pri prenosu poškodovana, zato jo je treba zavrniti.

Kaj je Hammingova koda?

Hammingova koda je linijska koda, ki je uporabna za odkrivanje napak do dveh takojšnjih bitnih napak. Sposoben je enobitnih napak.

V Hammingovi kodi izvor kodira sporočilo z dodajanjem odvečnih bitov v sporočilo. Ti odvečni biti so večinoma vstavljeni in ustvarjeni na določenih mestih v sporočilu, da se izvede postopek odkrivanja in popravljanja napak.

Zgodovina Hammingove kode

  • Hammingova koda je tehnika, ki jo RWHamming gradi za odkrivanje napak.
  • Hammingovo kodo je treba uporabiti za podatkovne enote poljubne dolžine in uporablja razmerje med podatki in bitoma redundance.
  • Delal je na problemu metode popravljanja napak in razvil vse močnejšo paleto algoritmov, imenovanih Hammingova koda.
  • Leta 1950 je objavil Hammingov zakonik, ki se danes pogosto uporablja v aplikacijah, kot je pomnilnik ECC.

Uporaba Hammingove kode

Nekaj ​​pogostih aplikacij uporabe Hemmingove kode:

  • Sateliti
  • Računalniški pomnilnik
  • Modemi
  • PlasmaCAM
  • Odprite konektorje
  • Zaščitna žica
  • Vdelani procesor

Prednosti Hammingove kode

  • Metoda Hammingove kode je učinkovita v omrežjih, kjer so podatkovni tokovi podani za enobitne napake.
  • Hammingova koda ne omogoča le zaznavanja bitne napake, temveč vam pomaga tudi zamikati bit, ki vsebuje napako, tako da ga je mogoče popraviti.
  • Zaradi enostavnosti uporabe hamming kod so najbolj primerne za uporabo v računalniškem pomnilniku in za odpravljanje napak.

Slabosti Hammingove kode

  • Enobitna koda za odkrivanje in popravljanje napak. Če pa gre za napako več bitov, potem lahko rezultat privede do drugega bita, ki bi ga bilo treba pravilno spremeniti. To lahko povzroči nadaljnje napake v podatkih.
  • Hammingov algoritem kode lahko reši samo posamezne probleme.

Postopek kodiranja sporočila s Hammingovo kodo

Postopek, ki ga pošiljatelj uporablja za kodiranje sporočila, vključuje naslednje tri korake:

  • Izračun skupnega števila odvečnih bitov.
  • Preverjanje položaja odvečnih bitov.
  • Nazadnje, izračun vrednosti teh odvečnih bitov.

Ko so zgoraj navedeni odvečni biti vdelani v sporočilo, se pošlje uporabniku.

Korak 1) Izračun skupnega števila odvečnih bitov.

Predpostavimo, da sporočilo vsebuje:

  • n - število podatkovnih bitov
  • p - število odvečnih bitov, ki so ji dodani, tako da lahko np označuje vsaj (n + p + 1) različna stanja.

Tu (n + p) prikazuje mesto napake v vsakem od (n + p) bitnih položajev in eno dodatno stanje pomeni, da ni napake. Ker lahko p bitovi označujejo 2 p stanja, mora biti 2 p vsaj enako (n + p + 1).

Korak 2) Postavitev odvečnih bitov v njihov pravilen položaj.

P odvečne bite je treba postaviti v položaje bitov s stopnjami 2. Na primer 1, 2, 4, 8, 16 itd. Omenjeni so kot p 1 (na položaju 1), p 2 (na položaju 2) , p 3 (na položaju 4) itd.

Korak 3) Izračun vrednosti odvečnega bita.

Odvečni bit mora biti paritetni bit, tako da je število 1 s sodo ali liho.

Dve vrsti paritete sta -

  • Skupno število bitov v sporočilu je sestavljeno, celo se imenuje parna parnost.
  • Skupno število bitov v sporočilu je liho in se imenuje liha pariteta.

Tu je treba ves odvečni bit, p1, izračunati kot parnost. Zajemati mora vse položaje bitov, katerih binarni prikaz mora vsebovati 1 na prvem mestu, razen položaja p1.

P1 je bit parnosti za vse podatkovne bite na položajih, katerih binarna predstavitev vključuje 1 v manj pomembnem položaju, ne pa tudi 1 všeč (3, 5, 7, 9,

... )

P2 je paritetni bit za vse podatkovne bite na položajih, katerih binarna predstavitev vključuje 1 v položaju 2 z desne, ne vključuje pa 2 Like (3, 6, 7, 10, 11,

…)

P3 je bit parnosti za vsak bit v položajih, katerih binarna predstavitev vključuje 1 v položaju 3 od desne, ne vključuje 4 všeč (5-7, 12-15,

…)

Postopek dešifriranja sporočila v Hammingovi kodi

Prejemnik prejme dohodna sporočila, ki zahtevajo preračune za iskanje in odpravljanje napak.

Postopek preračuna, izveden v naslednjih korakih:

  • Štetje števila odvečnih bitov.
  • Pravilno pozicioniranje vseh odvečnih bitov.
  • Preverjanje paritete

Korak 1) Štetje števila odvečnih bitov

Za kodiranje lahko uporabite isto formulo, število odvečnih bitov

2 p ≥ n + p + 1

Tu je število podatkovnih bitov in p število odvečnih bitov.

2. korak) Pravilno postavite vse odvečne bite

Tu je p odvečni bit, ki se nahaja na položajih bitov s stopnjami 2, na primer 1, 2, 4, 8 itd.

Korak 3) Preverjanje paritete

Paritetne bite je treba izračunati na podlagi podatkovnih bitov in odvečnih bitov.

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

…)

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

…)

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

…)

Povzetek

  • Preneseni podatki se med komunikacijo lahko poškodujejo
  • Tri vrste bitnih napak so 1) enojne bitne napake 2) večbitne napake 3) burst bitne napake
  • Sprememba, narejena v enem bitu v celotnem zaporedju podatkov, je znana kot "Napaka enega bita."
  • Če se v zaporedju podatkov spremenijo dva ali več bitov podatkovnega zaporedja oddajnika do sprejemnika, je to znano kot "Večbitne napake."
  • Sprememba nabora bitov v zaporedju podatkov je znana kot "napaka porušitve".
  • Odkrivanje napak je metoda odkrivanja napak, ki so prisotne v podatkih, ki se prenašajo od oddajnika do sprejemnika v sistemu za podatkovno komunikacijo
  • Tri vrste kod za odkrivanje napak so 1) Preverjanje paritete 2) Preverjanje cikličnega odvečnega stanja (CRC) 3) Preverjanje vzdolžnega odvečnosti (LRC)
  • Hammingova koda je linijska koda, ki je uporabna za odkrivanje napak do dveh takojšnjih bitnih napak. Sposoben je enobitnih napak.
  • Hammingova koda je tehnika, ki jo RWHamming gradi za odkrivanje napak.
  • Pogoste aplikacije uporabe Hemmingove kode so satelitski računalniški pomnilnik, modemi, vgrajeni procesor itd.
  • Največja korist metode Hamming kode je učinkovita v omrežjih, kjer so podatkovni tokovi podani za enobitne napake.
  • Največja pomanjkljivost metode Hamming kode je, da lahko reši samo posamezne probleme.
  • Postopek šifriranja in dekodiranja sporočila lahko izvedemo s pomočjo hamming kode.