Što je pogreška?
Preneseni podaci mogu biti oštećeni tijekom komunikacije. Vjerojatno će na to utjecati vanjska buka ili drugi fizički kvarovi. U takvoj situaciji ulazni podaci ne mogu biti isti kao izlazni podaci. Ova neusklađenost poznata je pod nazivom "Pogreška".
Pogreške u podacima mogu rezultirati gubitkom važnih ili sigurnih podataka. Većina prijenosa podataka u digitalnim sustavima bit će u obliku "prijenosa bitova". Čak i mala promjena može utjecati na performanse cijelog sustava. U nizu podataka, ako se 1 promijeni u 0 ili 0 promijeni u 1, to se naziva "Bit error".
U ovom tutorijalu Hammingovog koda naučit ćete:
- Što je pogreška?
- Vrste pogrešaka
- Što je otkrivanje i ispravljanje pogrešaka?
- Što je Hammingov kod?
- Povijest Hammingova koda
- Primjena Hemming koda:
- Prednosti Hammingova koda
- Mane Hammingova koda
- Postupak kodiranja poruke pomoću Hamming koda
- Proces dešifriranja poruke u Hammingovom kodu
Vrste pogrešaka
Uglavnom postoje tri vrste bitnih pogrešaka koje se javljaju u prijenosu podataka od pošiljatelja do primatelja.
- Pogreške jednog bita
- Višestruke bitne pogreške
- Rafalne pogreške
Pogreške jednog bita
Promjena izvršena u jednom bitu u cijelom nizu podataka poznata je pod nazivom "Pogreška jednog bita". Međutim, pojava jednobitne pogreške nije toliko česta. Štoviše, ova se pogreška događa samo u paralelnom komunikacijskom sustavu jer se podaci prenose bitovno u jednoj liniji. Stoga je više šansi da jedan redak može biti bučan.
Višestruke bitne pogreške
U slijed podataka, ako dođe do promjene u dva ili više bitova niza podataka odašiljača do prijamnika, to je poznato kao "Višestruke bitne pogreške".
Ova vrsta pogreške uglavnom se javlja u mrežama za podatkovnu komunikaciju serijskog i paralelnog tipa.
Rafalne pogreške
Promjena skupa bitova u nizu podataka poznata je pod nazivom "Burst error". Ova vrsta pogreške podataka izračunava se od promjene prvog bita do promjene posljednjeg bita.
Što je otkrivanje i ispravljanje pogrešaka?
U digitalnom komunikacijskom sustavu pogreška će se prenijeti iz jednog u drugi komunikacijski sustav. Ako se te pogreške ne otkriju i ne isprave, podaci će se izgubiti. Za učinkovitu komunikaciju, sistemski podaci trebali bi se prenositi s velikom točnošću. To će se učiniti tako da se prvo identificiraju pogreške i isprave oni.
Otkrivanje pogrešaka metoda je otkrivanja pogrešaka prisutnih u podacima koji se prenose s odašiljača na prijemnik u sustavu za komunikaciju podataka.
Ovdje možete koristiti redundantne kodove da biste pronašli ove pogreške dodavanjem podataka kada se prenose iz izvora. Ti se kodovi nazivaju "Pogreška u otkrivanju kodova".
Tri su vrste kodova za otkrivanje pogrešaka:
- Provjeravanje pariteta
- Provjera cikličkog viška (CRC)
- Provjera uzdužnog viška (LRC)
Provjera pariteta:
- Također je poznat kao provjera pariteta.
- Ima isplativ mehanizam za otkrivanje pogrešaka.
- U ovoj je tehnici suvišni bit poznat kao paritetni bit. Dodaje se za svaku podatkovnu jedinicu. Ukupan broj 1s u jedinici trebao bi postati paran, što je poznato kao paritetni bit.
Provjera uzdužnog viška
U ovoj tehnici otkrivanja pogrešaka blok bitova organiziran je u tabličnom formatu. LRC metoda pomaže vam u izračunavanju bita pariteta za svaki stupac. Skup ovog pariteta također se šalje zajedno s izvornim podacima. Blok pariteta pomaže vam u provjeri suvišnosti.
Provjera cikličkog viška
Provjera cikličke redundancije slijed je redundanta koji se mora dodati na kraj jedinice. Zbog toga bi rezultirajuća podatkovna jedinica trebala postati djeljiva s drugim, unaprijed određenim binarnim brojem.
Na odredištu, dolazne podatke treba podijeliti s istim brojem. U slučaju da nema ostatka, tada se pretpostavlja da je podatkovna jedinica ispravna i prihvaćena. Inače, to znači da je podatkovna jedinica oštećena u prijenosu, pa je stoga mora odbiti.
Što je Hammingov kod?
Hammingov kôd je linijski kôd koji je koristan za otkrivanje pogrešaka do dvije trenutne pogreške bita. Sposoban je za jednobitne pogreške.
U Hammingovom kodu izvor kodira poruku dodavanjem suvišnih bitova u poruku. Ti se suvišni bitovi uglavnom ubacuju i generiraju na određenim položajima u poruci kako bi se postigao postupak otkrivanja i ispravljanja pogrešaka.
Povijest Hammingova koda
- Hammingov kod tehnika je koju RWHamming gradi za otkrivanje pogrešaka.
- Hammingov kod treba primijeniti na podatkovne jedinice bilo koje duljine i koristi odnos između podataka i bitova viška.
- Radio je na problemu metode ispravljanja pogrešaka i razvio sve moćniji niz algoritama koji se nazivaju Hammingov kod.
- 1950. objavio je Hammingov kod koji se danas široko koristi u aplikacijama poput ECC memorije.
Primjena Hammingova koda
Evo nekoliko uobičajenih aplikacija korištenja Hemming koda:
- Sateliti
- Računalna memorija
- Modemi
- PlasmaCAM
- Otvoreni konektori
- Zaštitna žica
- Ugrađeni procesor
Prednosti Hammingova koda
- Metoda Hammingova koda učinkovita je na mrežama u kojima se tokovi podataka daju za jednobitne pogreške.
- Hammingov kôd ne samo da otkriva pogrešku bita, već vam pomaže i uvlačenje bitova koji sadrže pogrešku kako bi se mogao ispraviti.
- Jednostavnost upotrebe hamming kodova čini ih najbolje prikladnima za upotrebu u memoriji računala i ispravljanje jedne pogreške.
Mane Hammingova koda
- Jednobitni kod za otkrivanje i ispravljanje pogrešaka. Međutim, ako se utvrdi greška u više bitova, tada ishod može rezultirati drugim bitom koji bi trebao biti točan za promjenu. To može uzrokovati daljnju pogrešku u podacima.
- Algoritam Hamming koda može riješiti samo pojedinačne probleme.
Postupak kodiranja poruke pomoću Hamming koda
Proces koji pošiljatelj koristi za kodiranje poruke uključuje sljedeća tri koraka:
- Izračun ukupnog broja suvišnih bitova.
- Provjera položaja suvišnih bitova.
- Na kraju, izračunavanje vrijednosti ovih suvišnih bitova.
Kada su gore navedeni suvišni bitovi ugrađeni u poruku, ona se šalje korisniku.
Korak 1) Izračun ukupnog broja suvišnih bitova.
Pretpostavimo da poruka sadrži:
- n - broj podatkovnih bitova
- p - broj suvišnih bitova koji mu se dodaju tako da np može ukazivati na najmanje (n + p + 1) različita stanja.
Ovdje, (n + p) prikazuje mjesto pogreške u svakom od (n + p) položaja bitova, a jedno dodatno stanje ukazuje na pogrešku. Kako p bitovi mogu označavati 2 p stanja, 2 p mora biti najmanje jednako (n + p + 1).
Korak 2) Postavljanje suvišnih bitova u njihov ispravan položaj.
P suvišni bitovi trebaju se postaviti u položaje bitova s potencijalom od 2. Na primjer, 1, 2, 4, 8, 16 itd. Oni se nazivaju p 1 (na položaju 1), p 2 (na položaju 2) , p 3 (na položaju 4) itd.
Korak 3) Izračun vrijednosti suvišnog bita.
Suvišni bitovi trebali bi biti bitovi pariteta, što znači da je broj 1 s paran ili neparan.
Dvije vrste pariteta su -
- Ukupan broj bitova u poruci napravljen je čak i naziva se parni paritet.
- Ukupan broj bitova u poruci je neparan naziva se neparni paritet.
Ovdje se sav suvišni bit, p1, mora izračunati kao paritet. Trebao bi pokriti sve položaje bitova čiji binarni prikaz treba sadržavati 1 na 1. položaju, isključujući položaj p1.
P1 je bit parnosti za sve bitove podataka na pozicijama čiji binarni prikaz uključuje 1 u manje važnom položaju ne uključujući 1 Like (3, 5, 7, 9,
... )P2 je bit parnosti za sve bitove podataka na pozicijama čiji binarni prikaz uključuje 1 na položaju 2 zdesna, ne uključujući 2 Like (3, 6, 7, 10, 11,
…)P3 je bit parnosti za svaki bit na pozicijama čiji binarni prikaz uključuje 1 na položaju 3 zdesna, a ne uključuje 4 Like (5-7, 12-15,
…)Proces dešifriranja poruke u Hammingovom kodu
Primatelj dobiva dolazne poruke koje trebaju izvršiti ponovni izračun kako bi pronašao i ispravio pogreške.
Proces ponovnog izračuna izvršen je u sljedećim koracima:
- Brojanje broja suvišnih bitova.
- Ispravno pozicioniranje svih suvišnih bitova.
- Provjera pariteta
Korak 1) Brojanje broja suvišnih bitova
Za kodiranje možete koristiti istu formulu, broj suvišnih bitova
2 p ≥ n + p + 1
Ovdje je broj podatkovnih bitova i p broj suvišnih bitova.
Korak 2) Ispravno postavljanje svih suvišnih bitova
Ovdje je p suvišni bit koji se nalazi na položajima bitova snage 2, Na primjer, 1, 2, 4, 8 itd.
Korak 3) Provjera pariteta
Bitovi pariteta moraju se izračunati na temelju podatkovnih bitova i suvišnih bitova.
p1 = paritet (1, 3, 5, 7, 9, 11
…)p2 = paritet (2, 3, 6, 7, 10, 11
…)p3 = paritet (4-7, 12-15, 20-23
…)Sažetak
- Preneseni podaci mogu biti oštećeni tijekom komunikacije
- Tri su vrste pogrešaka bita 1) greške pojedinačnog bita 2) greške više bitova 3) pogreške burst bita
- Promjena izvršena u jednom bitu u cijelom nizu podataka poznata je pod nazivom "Pogreška jednog bita".
- U slijed podataka, ako dođe do promjene u dva ili više bitova niza podataka odašiljača do prijamnika, to je poznato kao "Višestruke bitne pogreške".
- Promjena skupa bitova u nizu podataka poznata je pod nazivom "Burst error".
- Otkrivanje pogrešaka metoda je otkrivanja pogrešaka prisutnih u podacima koji se prenose s odašiljača na prijemnik u sustavu za prijenos podataka
- Tri vrste kodova za otkrivanje pogrešaka su 1) Provjeravanje pariteta 2) Provjera cikličkog viška (CRC) 3) Provjera uzdužnog viška (LRC)
- Hammingov kôd je linijski kôd koji je koristan za otkrivanje pogrešaka do dvije trenutne pogreške bita. Sposoban je za jednobitne pogreške.
- Hammingov kod tehnika je koju RWHamming gradi za otkrivanje pogrešaka.
- Uobičajene primjene korištenja Hemming koda su Satelitska računalska memorija, modemi, ugrađeni procesor itd.
- Najveća korist metode hamming koda učinkovita je na mrežama u kojima se tokovi podataka daju za jednobitne pogreške.
- Najveći nedostatak metode hamming koda je taj što može riješiti samo pojedinačne probleme.
- Proces šifriranja i dekodiranja poruke možemo izvršiti uz pomoć hamming koda.