71
BROJNI SISTEMI I KODOVI DIGITALNA ELEKTRONIKA

BROJNI SISTEMI I KODOVI

  • Upload
    josiah

  • View
    175

  • Download
    3

Embed Size (px)

DESCRIPTION

BROJNI SISTEMI I KODOVI. DIGITALNA ELEKTRONIKA. BROJNI SISTEMI I KODOVI. U svakom brojnom sistemu broj mo že se predstaviti na sljedeći način:. Pri čemu je: r – osnova sistema b i – cifre u brojnom sistemu. Primjeri: r=2, b i = {0,1} - binarni brojni sistem - PowerPoint PPT Presentation

Citation preview

Page 1: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

DIGITALNA ELEKTRONIKA

Page 2: BROJNI SISTEMI I KODOVI

U svakom brojnom sistemu broj može se predstaviti na sljedeći način:

1n

pi

iirbD

BROJNI SISTEMI I KODOVI

Pri čemu je:

r – osnova sistema

bi – cifre u brojnom sistemu

Primjeri:

r=2, bi={0,1} - binarni brojni sistem

r=8, bi={0,1, . . . , 7} - oktalni brojni sistem

r=10, bi={0,1, . . . , 9} - dekadni brojni sistem

r=16, bi={0,1, . . . , F} - heksadecimalni brojni sistem

( , 1) razlomljenidio broja

(0, 1) cijelidio broja

i p

i n

Î - -

Î -

Page 3: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVICijeli dio broja u brojnom sistemu sa osnovom r može se predstaviti kao:

01321 )...))(...( brbrbrbrbD nnn

Iz prethodnog zapisa, očigledno je da je:

)(0/

...

)(/

)(/

11

121

01

ostatakbrQ

ostatakbQrQ

ostatakbQrD

nn

Pri čemu je:0121 ... bbbb nn

broj D

Page 4: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Identičnim postupkom može se izvršiti konverzija broja D iz brojnog sistema sa osnovom r u brojni sistem sa osnovom c.

)(0/

...

)(/

)(/

11

121

01

ostatakccQ

ostatakcQcQ

ostatakcQcD

nn

Pri čemu je: 0121 ... cccc nn

broj D u brojnom sistemu sa osnovom c.

Page 5: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primer 1: Konvertovati broj 3417 iz dekadnog u heksadecimalni brojni sistem.

Dbostatak

bostatak

bostatak

13),(13016:13

5),(51316:213

9),(921316:3417

2

1

0

Odgovarajući broj u heksadecimalnom brojnom sistemu je.

1659D

A
Konvertovati broj
Page 6: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primer 2: Konvertovati broj 108 iz dekadnog u oktalni brojni sistem.

1),(108:1

5),(518:13

4),(4138:108

2

1

0

bostatak

bostatak

bostatak

Odgovarajući broj u oktalnom brojnom sistemu je.

8154

Page 7: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVIKonvertovanje brojeva grupisanjem cifara

Binarni broj se, grupisanjem binarnih cifara, može konvertovati u bilo koji brojni sistem čija je osnova stepen broja 2.

Posmatrajmo binarni broj zapisan u razvijenom obliku:

00

11

22

33

33

21

11 2222...2222 aaaaaaaa n

nn

nn

nn

n

Grupisanjem cifara (na primjer po 4 cifre) prethodni broj se može zapisati i na sljedeći način:

404

15

26

37

303

11

21

3 2)2222(...2)2222( aaaaaaaa nnnnn

000

11

22

33 2)2222( aaaa

Uzmimo da je 1 4 ,n m+ = odnosno 4 1.n m= -

Page 8: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVISada se binarni broj može prikazati na sljedeći način

404

15

26

37

44044

134

224

314 2)2222(...2)2222( aaaaaaaa m

mmmm

000

11

22

33 2)2222( aaaa

Kako je:1)1(4 162 mm

to se broj može predstaviti u brojnom sistemu sa osnovom 16 kao:0

01

12

21

1 1616...1616 BBBB mm

mm

pri čemu je

00

11

22

330

04

15

26

371

084

174

264

3542

044

134

224

3141

2222

2222

2222

2222

aaaaB

aaaaB

aaaaB

aaaaB

mmmmm

mmmmm

Page 9: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVIPrimjer: Konvertovati binarni broj 101101110101 u broj u hesadecimalnom sistemu. R: Osnova heksadecinalnog sistema može se zapisati kao 16=24, te stoga za konvertovanje iz binarnog u heksadecimalni sistem treba vršiti grupisanjem po 4 cifre.

1011 0111 0101 B 7 5

Prema tome, odgovarajući broj u heksadecimalnom sistemu je B75.

Primjer: Konvertovati binarni broj 1001011100 u broj u oktalnom sistemu.R: Grupisanjem po 3 cifre dobija se

1 001 011 100Dopunjavanjem prve grupe cifara nulama , dobija se

001 001 011 100 1 1 3 7

Prema tome, odgovarajući broj u oktalnom sistemu je 1137.

Page 10: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Binarno Sabiranje

Prilikom sabiranja dvije binarne cifre mogu se pojaviti 4 kombinacije:

(1) 0 (2) 0

+0 +1

00 01

(3) 1 (4) 1

+0 +1

01 10

ZbirPrenos

Vodeča nula se odbacuje

U slučaju kombinacije (4) vrši se prenos na bit veće težine.

Page 11: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Binarno Sabiranje

Prekoračenje se javlja kada je prenos sa bita najveće težine ==1.

0 1 0 1 0 10

+ 1 1 1 0 1 + 29

1 0 0 1 1 1 = 39

Prenos: 1 1 0 0 0

Prekoračenje

Page 12: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVIOduzimanje - Metoda komplemenata

U matematici i računarstvu Metoda komplemenata je tehnika kojom se oduzimanje jednog broja od drugog vrši sabiranjem odgovarajućih pozitivnih brojeva.

Ova tehnika je široko prihvaćena kod mehaničkih kalkulatora, a i dalje je u upotrebi u modernim računarima.

Page 13: BROJNI SISTEMI I KODOVI

Metodom komplemenata oduzimanje broja y od broja x vrši se na sljedeći način:

1. Najprije se izračuna osnovni kompement broja y.

Osnovni komplement n cifarskog broja y u brojnom sistemu sa osnovom b, po definiciji je bn-y.

Osnovni komplement se lakše izračunava dodavanjem jedinice na umanjeni osnovni komplement, pri čemu se umanjeni osnovni komplement izračunava kao (bn-1)-y

bn-1 je broj koji sadrži n cifara vrijednosti b-1:

bn − 1 = bn − 1n = (b − 1)(bn − 1 + bn − 2 + ... + b + 1) = (b − 1)bn − 1 + ... + (b − 1).

Umanjeni osnovni komplement se jednostavno izračunava komplementiranjem svake cifre sa b-1.

Nakon toga se dodavanjem 1 dobija osnovni komplement.

BROJNI SISTEMI I KODOVI

Page 14: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI2. Dodavanjem osnovnog komplementa od y na x dobija se rezultat:

Ako je y x rezultat oduzimanja je uvijek veći ili jednak bn. Prava vrijednost x-y dobija se oduzimanjem početne jednice od gornjeg rezultata. Oduzimanje početne jedinice je isto što i oduzimanje bn.

Ako je y x rezultat oduzimanja je manji od bn.U ovom slučaju prava vrijednost x-y nalazi se kao negativna vrijednost osnovnog komplementa od x-y+bn.

nbyx

)]([

)()(nn

nn

byxbyx

yxxybyxb

Page 15: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primjer 1: Izračunati metodom komplemenata 95-35.

R: Najprije se izračunava osnovni komplement umanjioca 35.

65164

643599

Sada se vrijednost osnovnog komplementa dodaje na umanjenik 95.

1606595 Kako je umanjenik veći od umanjioca, to se rezultat dobija uklanjanjem cifre najveće težine, odnosno početne jedinice. Prema tome konacan rezultat je:

60

Page 16: BROJNI SISTEMI I KODOVI

Primjer 2: Izračunati metodom komplemenata 35-95.

R: Najprije se izračunava osnovni komplement umanjioca.

514

49599

Sada se vrijednost osnovnog komplementa umanjioca dodaje na umanjenik.

40535 Kako je umanjioc veći od umanjienika, to se konačan rezultat dobija negativna vrijednost osnovnog komplementa od 40.

60)14099(

BROJNI SISTEMI I KODOVI

Page 17: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primjer 3: Izračunati metodom komplemenata BC-74.

R: Najprije se izračunava osnovni komplement umanjioca.

CB

BFF

818

874

Sada se vrijednost osnovnog komplementa umanjioca dodaje na umanjenik.

1488 CBCKako je umanjenik veći od umanjioca, to se rezultat dobija uklanjanjem cifre najveće težine, odnosno početne jedinice. Prema tome konacan rezultat je:

48

Page 18: BROJNI SISTEMI I KODOVI

Primjer 4: Izračunati metodom komplemenata 74-BC.

R: Najprije se izračunava osnovni komplement umanjioca.

44143

43

BCFF

Sada se vrijednost osnovnog komplementa umanjioca dodaje na umanjenik.

84474 B

BROJNI SISTEMI I KODOVI

Kako je umanjioc veći od umanjienika, to se konačan rezultat dobija negativna vrijednost osnovnog komplementa od B8.

48)18( BFF

Page 19: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primjer 5: Izračunati metodom komplemenata 1011-1001.

R: Najprije se izračunava osnovni komplement umanjioca.

011110110

011010011111

Sada se vrijednost osnovnog komplementa umanjioca dodaje na umanjenik.

1001001111011 Kako je umanjenik veći od umanjioca, to se rezultat dobija uklanjanjem cifre najveće težine, odnosno početne jedinice. Prema tome konacan rezultat je:

0010

Page 20: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Primjer 6: Izračunati metodom komplemenata 1001-1011.

R: Najprije se izračunava osnovni komplement umanjioca.

010110100

010010111111

Sada se vrijednost osnovnog komplementa umanjioca dodaje na umanjenik.

111001011001 Kako je umanjioc veći od umanjienika, to se konačan rezultat dobija negativna vrijednost osnovnog komplementa od B8.

0010)111101111(

Page 21: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

Page 22: BROJNI SISTEMI I KODOVI

BROJNI SISTEMI I KODOVI

U komunikacijama, kod je pravilo za konvertovanje informacije (npr. pisma, riječi, freze ili gesta) u drugi oblik ili predstavu.

Jedan znak u drugi znak. Drugi znak može biti drugačijeg tipa.

Kodiranje je proces kojim se informacija konvertuje iz jednog u drugi oblik. Dekodiranje je suprotan isti proces.

Page 23: BROJNI SISTEMI I KODOVI

ASCII KODAmerican Standard Code for Information Interchange (ASCII)

Kod koji je u najširoj upotrebi danas.

Koristi se u gotovo svim personalnim kompjuterima, terminalima, štampačima, i u drugoj komunikacionoj opremi.

ASCII kod sadrži definicije za 128 karaktera u vidu sedmobitnih brojeva, tj. niza od sedam 0-la i 1-ca.

Osmi bit – detekcija grašaka – bit parnosti.

33 neštampajuća i 94 štampajućih i SPACE karater (karakter bez grafike).

Neštampajući katakteri – ne šampaju se (definišu format teksta), – kontrolišu rad uređaja kojima se prosljeđuju, – specijalne informacije o nizu podataka.

94 štampajuća karaktera i SPACE karakter prikazani su na slici.

U ASCII kodu malo "a" je uvijek 1100001, veliko "A" uvijek 1000001, itd.

Page 24: BROJNI SISTEMI I KODOVI

BCD (binary-coded decimal) KOD

U računarskim i elektronskim sistemima, BCD je kodiranje decimalnih brojeva u kojem je svaka cifra predstavljena vlastitom binarnom sekvencom.

Na primjer, BCD kod broja 134 je: 0001 0011 0100

Jednostavna konverzija u decimalne brojeva za štampanje ili dispej.

Brža decimalna izračunavanja.

Page 25: BROJNI SISTEMI I KODOVI

BCD (binary-coded decimal) KODRazličite varijante BCD koda:

BCD 2421, Excess-3 i BCD 84-2-1 su self-complementing 9-ti komplement se dobija invertovanjem bitova, 1-e u 0-u i 0-e u 1-u. Upotrebljiva odobina kod aritmetičkih operacija sa označenim brojevima (signed binary numbers).

2421 i 84-2-1 su težinski kodovi Decimalni ekvivalent se dobija množenjem bitova sa njihovom težinom. 2421 Ex : 1101 => 2 x 1 + 4 x 1 + 2 x 0 + 1 x 1 = 7 84-2-1 Ex: 1011 => 8 x 1 + 4 x 0 - 2 x 1 - 1 x 1 = 5

IBM 702, IBM 705, IBM 7080, IBM 1401 – prvi komercijalni IBM elektronski računari i BCD kod korišten u njima.

EBCDIC – 8-bitni kod koji se koristi u IBM mainframe operativnim sistemima z/OS, s/390, AS/400 i i5/OS. Razvijen je 6-bitnog BCD koda za kodiranje bušenih kartica. 6-bitni BCD kod razvio je IBM tokom kasnih 1950-tih za svoje prve računare.

Page 26: BROJNI SISTEMI I KODOVI

GRAY-OV KOD

Gray-ov kod je netežinski i nije arithmetički.

Težine nijesu dodijeljene pozicijama bitova.

VAŽNO: U Gray-ovom kodu, dvije susjedne kodne riječi razlikuju se samo u jednom bitu.

Oba osobina je važna u mnogim primjenama, kao što je koder položaja osovine.

Page 27: BROJNI SISTEMI I KODOVI

GRAY-OV KOD

DecimalDecimal BinaryBinary Gray CodeGray Code

00 00000000 00000000

11 00010001 00010001

22 00100010 00110011

33 00110011 00100010

44 01000100 01100110

55 01010101 01110111

66 01100110 01010101

77 01110111 01000100

DecimalDecimal BinaryBinary Gray CodeGray Code

88 10001000 11001100

99 10011001 11011101

1010 10101010 11111111

1111 10111011 11101110

1212 11001100 10101010

1313 11011101 10111011

1414 11101110 10011001

1515 11111111 10001000

Page 28: BROJNI SISTEMI I KODOVI

GRAY-OV KOD

Konverzija Binarnog u Gray-ov kodKonverzija Binarnog u Gray-ov kod

MSB MSB u u GrayGray-ovom kodu-ovom kodu je isti kao odgovarajući je isti kao odgovarajući MSB MSB u u binarnom broju.binarnom broju.

U cilju dobijanja sljedećeg bita Gray-ovog koda, idući slijeva na U cilju dobijanja sljedećeg bita Gray-ovog koda, idući slijeva na desnodesno, , sabrati svaki susjedni par bitova binarnog kodasabrati svaki susjedni par bitova binarnog koda. . Odbaciri Odbaciri prenosprenos..

PrimjerPrimjer:: KonvertovatiKonvertovati 10110 1011022 u u GrayGray-ov-ov kodkod

1 + 0 + 1 + 1 + 0 1 + 0 + 1 + 1 + 0 binarbinarni kodni kod

1 1 1 0 1 1 1 1 0 1 GrayGray-ov kod-ov kod

Page 29: BROJNI SISTEMI I KODOVI

GRAY-OV KOD

Koverzija Koverzija Gray-Gray-ovog u binarni kodovog u binarni kod MSB MSB bit u bit u binarbinarnom kodu je isti kao odgovarajući bit u nom kodu je isti kao odgovarajući bit u

Graz-ovom kodu.Graz-ovom kodu. Određeni bit binarnog koda dodati na bit Gray-ovog Određeni bit binarnog koda dodati na bit Gray-ovog

koda na sljedećoj susjednosj poziciji.koda na sljedećoj susjednosj poziciji. Odbaciti prenosOdbaciti prenos..

PrimjerPrimjer:: Konvertovari Gray-ov kodKonvertovari Gray-ov kod 1101111011 u binarni. u binarni.

1 1 1 1 0 0 1 1 1 1 GrayGray-ov kod-ov kod

+ + + + + + + +

1 1 0 0 0 0 1 1 0 0 BinarBinarni kodni kod

Page 30: BROJNI SISTEMI I KODOVI

GRAY-OV KOD

PrimjenaPrimjena

Page 31: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVIKonvertuju niz binarnih podataka u digitalni signal pogodan za slanje odgovarajućim fizičkim kanalom.

Primjer: "1" se konvertuje u +A kvadratni impuls; "0" se konvertuje u -A kvadratni impuls;

Najčešći fizički kanali su:• linijski kodiran signal se može direktno dovesti na prenosnu liniju, u obliku varijacija napona ili struje (često se koristi diferencijano kodiranje). • linijski kodiran signal se može podvrći daljem oblikovanju impulsa (u cilju suženja frekvencijskog opsega) i zatim modulisati (transliranje frekvencijskog opsega) u cilju kreiranja "RF signala" koji se može slati slobodnim prostorom. • linijski kodiran signal se može upotrijebiti za uključivanje i isključivanje svjetla (najčešće infrared daljinsko upravljanje). • linijski kodiran signal se može štampati u cilju kreiranja trakastog koda. • linijski kodiran signal se može konvertovati u magnetized spots na hard disku ili magnetnoj traci. • linijski kodiran signal se može konvertovati u okna (pits) na optičkom disku.

Page 32: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVI

Linijski kod treba, u što većoj mjeri, zadovoljiti sljedeće sistemske zahtjeve:

•Transmitted power: Potrošnja snage = €.

•Bit timing: Promjene u signalu pomažu regenerisanju tajminga.

•Bandwidth efficiency: Prekomjerne promjene – neracionalno trošenje propusnog opsega.

•Low frequency content: Neki kanali ne propuštaju niske frekvencije.•Dugo trajanje +A ili of –A izaziva causes signal to "opadanje" signala.•Signal nebi trebao sadržavati niske frekvencije.

•Error detection: Mogućnost detekcije greške pomaže.

Page 33: BROJNI SISTEMI I KODOVI

NRZ-inverted(diferencialno

kodiranje)

1 0 1 0 1 1 0 01

UnipolarNRZ

Bipolarnikod

Manchesterkod

DiferencijalniManchester

kod

Polar NRZ

LINIJSKI KODOVIPrimjeri linijskih kodova:

Page 34: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVISpektar linijskih kodova

NRZ - sadrži puno niskih frekvencija Bipolar – koncentrisan oko T/2 Manchester – najširi spektar

Page 35: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVINRZ

Kod u kojem je "1"-ca predstavljena sa jednim karakterističnim uslovom (često pozitivnim naponom) a “0" drugim karakterističnim uslovom (često negativnim naponom).

Nema neutralnih ili dodatnih uslova (drugih naponskih nivoa).

Nije samo-sinhronizirajući kod (Self synchronizing code).

Moraju se koristiti dodatne sinhronizirajuće metode (paralelni sinhronizirajući signal ili dodavanje okvira uz ograničenje trajanja).

Postoji više varijanti NRZ koda.

Page 36: BROJNI SISTEMI I KODOVI

Unipolar NRZ

"1" - +A impuls "0" - nema impusla Velika srednja snaga

0.5*A2 +0.5*02=A2/2 Dugačak niz A ili 0

loš tajming niske frekvencije

Jednostavan

LINIJSKI KODOVI

Page 37: BROJNI SISTEMI I KODOVI

Polar NRZ

"1" - +A/2 impuls "0" - –A/2 impuls Manja srednja snaga

0.5*(A/2)2 +0.5*(-A/2)2=A2/4

Dugačak niz +A/2 ili –A/2 loš tajming Niske frekvencije

Jednostavan

LINIJSKI KODOVI

Page 38: BROJNI SISTEMI I KODOVI

Polar NRZ

Najpoznatiji primjer ovog koda je RS-232, gdje "1" je -5V do -12V i "0" je +5 do +12V.

LINIJSKI KODOVI

Page 39: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVI Bipolarni kod

Tri nivoa u signalu: {-A, 0, +A} "1" - +A ili –A naizmjenično "0" - nema impulsa

Svaki +impuls je praćen –impulsom – nizak sadržaj niskih frekvencija Niz 1ca proizvodi travougaoni talas

Spektar koncentrisan oko T/2 Dugačak niz 0a – prijemnik se desinhroniše

1 0 1 0 1 1 0 01

Bipolar Encoding

Page 40: BROJNI SISTEMI I KODOVI

RZ –Return to Zero kodBipolarni kod

Signal se vraća na nulu prije svakog novog impulsa.

Ovo se dešava čak i kada je u signalu prisutan niz uzastopnih nula ili jedinica.

Self-clocking

Dvostruko širi propusni opseg u poređenju sa NRZ formatom.

Nula između bitova je neutralni nivo.

LINIJSKI KODOVI

Page 41: BROJNI SISTEMI I KODOVI

Manchester kod & mBnB kodovi

"1" - A/2 prvo T/2, -A/2 zadnje T/2 "0" - -A/2 prvo T/2, A/2 zadnje T/2 Jednostavna rekonstrukcija

tajminga Duplo veća širina spektra Jednostavan za primjenu Upotrijebljen u 10-Mbps Ethernet &

drugim LAN standardima

mBnB linijski kod Kodira blok od m bita u n bita Manchester kod je 1B2B kod 4B5B kod se koristu u FDDI LAN 8B10b kod se koristi u Gigabit

Ethernet 64B66B kod se koristi u 10G

Ethernet

1 0 1 0 1 1 0 01

Manchester Encoding

LINIJSKI KODOVI

Page 42: BROJNI SISTEMI I KODOVI

LINIJSKI KODOVIDiferencijalno kodiranje

Otporan na grešku prekomponovanje polariteta, +A postaje –A i obrnuto. Svi sljedeći bitovi u Polar NRZ codiranju bi bili pogršni.

“1” – promjena nivoa u signalu “0” – nema promjene nivoa u signalu Isti spekrat kao NRZ Greške se javljaju u parovima. Manchester kodiranje takođe može biti diferencijalno.

NRZ-inverted(diferencialno

kodiranje)

1 0 1 0 1 1 0 01

DifferencialnoManchester

kodiranje

Page 43: BROJNI SISTEMI I KODOVI

KODOVI ZA DETEK. I KOREK. GREŠKEKoriste se matematici, kompjuterskim naukama, telekomunikacijama i informacionoj teoriji.

Detekcija i korekcija greške ima veliki pratičan značaj u obezbjeđivanju integriteta podataka tokom prenosa ili čuvanja na nepouzdanom memorijskom mediju.

Definicije detekcije i korekcije grešaka:

- Detekcija grešaka je sposobnost detekcije prisustva grešaka u podacima nastale tokom prenosa komunikacionom linijom ili protokom vremena.

- Korekcija greške je dodatna sposobnost rekonstrukcije originalnih podataka.

Sistema za detekciju i korekciju greške mogu se podijeliti na:-ARQ (Automatic Repeat-reQuest): metod kontrole grešaka tako što se paketi za koje ne postoji potvrda uspješnjog primanja šalju više puta za redom.

-FEC (Forward erroe correction - ): metod kontrole grešaka kod kojeg se u poruci dodaju redudantni podaci. FEC, u određenim granicama, omogućava detekciju i korekciju grešaka, bez zahtjeva pošiljaocu za dodatnim podacima. Često nema potrebe za povratnim kanalom. Primjenjuje se u situacijama u kojima je obezbjeđenje dodatnih podataka skupo ili nemoguće (mass storage devices)

Page 44: BROJNI SISTEMI I KODOVI

KODOVI ZA DETEK. I KOREK. GREŠKE

Modu se podijeliti na:

1.Systematic U poruci se nalazi fiksan broj originalnih bitova podataka, kao i fiksan broj kontrolnih (redudantnih) podataka.

Redudantni podaci su dobijeni iz originalnih podataka primjenom odgovarajućeg determinističkog algoritma.

Primjeri: Data + checksum, kodovi za detekciju greške (IP). Hamming codes, linearni kodovi za korekciju greške.

Read-Solomon codes, kodovi za korekciju greški (CD). ...

2. Non-Systematic Transformišu poruku od n blokova podataka u poruku sa više od n blokova.

Originalna poruka se može rekonstruisati iz njene transformacije.

Teži se da transformisana poruka, po veličini, bude što bliža originalnoj.

Primjeri: Fontain codes Raptor codes LT codes Online codes ...

Page 45: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEMetoda parnosti

Bitom parnosti može se detektovati neparan broj greški.

Niz podataka se razbija u blokove i broje se bitovi vrijednosti 1:

(even parity)

Ukoliko je dobijeni broj neparan dodaje se bit parnosti vrijednosti 1.Ukoliko je dobijeni broj neparan dodaje se bit parnosti vrijednosti 0.

(odd parity)

Ukoliko je dobijeni broj neparan dodaje se bit parnosti vrijednosti 0.Ukoliko je dobijeni broj neparan dodaje se bit parnosti vrijednosti 1.

Page 46: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKE

Kontrolna suma (Checksum)

Kontrolna suma je aritmetička suma kodnih riječi poruke. Određene je dužine.

Drugi komplement aritmetičke sume smješta se ili prenosi kao ekstra kodna riječ.

Aritmetička suma proširuje poruku.

Prilikom preuzimanja, izračunava se nova kontrolna suma koja mora biti jednaka 0.

Ako nije došlo je do greške.

U kontrolne sume spadaju: parity bits, check digits and longitudinal redudancy check.

Primjer izračunavanja kontrolne sume:

Neka su data 4 okteta podataka: 0x25, 0x62, 0x3F, 0x521.Sabiranjem okteta dobija se 0x1182.Odbacivanjem bita najveće težine dobija se 0x18.3.Drugi komplement je 0xE8. Ovo je oktete kontrolne sume.4.Dodavanjem bitova poruke na kontrolnu sumu dobija se 0x100.5.Odbacivanjem bita najveće težine rezultat je 0x00.

Rezultat 0x00 znači da nema greške, odnosno da greška nije detektovana.

Page 47: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKECRC (Cyclic redundancy checks)

CRC je kod za detekciju greške.

Upotreba osobina konačnih polja i polinaoma nad takvim poljima.

CRC razmatra blok podataka kao koeficijente polinoma i zatim ga dijeli sa fiksim, unaprijed određenim polinomom.

Koeficijenti polinoma ostatka se uzimaju kao redudantni bitovi, odnosno CRC bitovi.

Dužina ostatka je uvijek manja ili jednaka dužini djelioca = broj CRC bitova u poruci.

U širkoj upotrebi su binarni CRC-ovi. Odgovaraju računarskoj arhitekturi.

32-bit CRC je upotrijebljen u Ethernet protokolu (IEEE preporuka).

Zašto je CRC popularan?N-bitni CRC, primijenjen na blok podataka, garantuje detekciju svakog

pojedinačnog lanca grešaka ne dužeg od n-bita.Lance duže od n bita će detektovati sa vjerovatnoćom 1-2-n.

Greške u prenosnim kanalima i magnetskim medijima za čuvanje podataka najčešće nijesu slučajno raspoređene (već “koncentirsane"), što čini osobine CRC-a upotrebljivijim od drugih šema (kao npr. višestruke kontrole parnosti - multiple parity checks).

Page 48: BROJNI SISTEMI I KODOVI

CRC (Cyclic redundancy checks)

Bit parnosti se može smatrati trivijalnim CRCom, u kome se koristi dvobitni djelioc 11, tj x+1.

Primjer 1: Izračunavanje trobitnog CRCa:

Prva ExOR operacija:

Zadnje ExOR operacija:

METODE DETEKCIJE GREŠKE

Ako je bit ulaznog signala iznad zadnjeg bita djelioca 0, djelioc treba pomjeriti udesno za jedan bit.

Ako je bit ulaznog signala iznad zadnjeg bita djelioca 1, treba izvršiti ExOR operaciju sa bitovima djelioca.

Nakon ExOR operacije djelioc se pomjera za jedan bit udesno. ExOR operacija se ponavlja dok djelioc ne stigne do kraja ulaznog niza podataka.

Nakon zadnje ExOR operacije, bitovi ostatka su vrijednost CRC funkije, odnosno kontrolni, redudantni, bitovi poruke.

Page 49: BROJNI SISTEMI I KODOVI

CRC (Cyclic redundancy checks)

Na prijemnoj strani se ponovo izračunaju CRC bitovi i uporede sa primljenim.

Nepodudaranje indicira postojanje greške.

Jednostavan za implementaciju u softveru i hardveru.

Neki, često korišteni, CRC polinomi:

METODE DETEKCIJE GREŠKE

Page 50: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEMetoda ponavljanja

Podaci poruke se dijele u blokove. Svaki blok se šalje unaprijed određeni broj puta.U opštem slučaju ponavljajući kod se označava: (r, n).

Pri čemu je: r - broj ponavljanja, n - broj bita u bloku

Primjer 1: Neka se ima (3,1) ponavljajući kod. Ako se želi poslati blok '1011', šalje se ‘111000111111‘.

Ako se poruka pročita kao ‘1010 1011 1011‘ može se detektovati da se jedna grupa podataka razlikuje od druge dvije, odnosno da je došlo do greške.

Vrijednost bita određuje se upoređivanjem istog bita u svakoj primljenoj poruci.Odabira se vrijednost koja se češće pojavljuje.

Primjer 2: Neka se ima (3,1) ponavljajući kod. Ako smo primili kod c=110001111.

1 1 0 = 1

0 0 1 = 0

1 1 1 = 1

Dekodirana poruka je m=101.

Page 51: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEPravougaoni kod (višestruka kontrola parnosti)

Poruka se razbija na po n-1 grupu od po n-1 bit (ili m-1) i tako se formira kvadrat (ili pravougaonik).

Dodaje se još po jedna vrsta i kolona, tako da, u svakoj vrsti i koloni bude paran (neparan) broj jedinica.

Greška u jednom bitu poremetiće parnost u vrsti i koloni kojoj on pripada.

Može se detektovati i korigovati jedna greška.

Ilustracija metrice pravougaonog koda

Originalna poruka

Poruka sa greškom na poziciji (i,j)=(2,2)

Page 52: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEEfikasniji način kodiranja za korekciju greške

Neka se ima informacije od n bita.

Da bi se u njoj ispravila jedna greška jednog bita moraju se zabraniti sve kombinacije koje se razlikuju za po jedan bit.

Za jednu dozvoljenu postoji n nedozvoljenih kombinacija.

Za k različitih poruka, dozvoljenih kombinacija od n bitova, potrebno je k(n+1) kombinacija.

Mora biti zadovoljen uslov k(n+1) 2n

Ako se k izrazi kao k=2q, dobija se 2n-q (n+1).

Odnosno 2m (n+1). Gdje je m=n-q.

m izražava koliko je potrebno redudantnih bita (bita za kodiranje) da bi se mogla korigovati greška jednog bita.

Primjer: Za n=3 m=2. Dva bita za kodiranje, jedan za poruku. Dozvoljena stanja su 000 i 111.

Sva stanja koja imaju Hamming-ovu distancu 1 od datog, pridružuju se tom stanju.

Page 53: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEHamming-ova distanca

U informacionoj teoriji Hamming-ova distanca između dva stringa iste dužine je broj pozicija na koima su pripadni simboli različiti.

Drugim riječima, to je minimalni broj potrebnih zamjena za prevodjenje jednog stringa u drugi, ili broj grešaka koje jedan string transformišu u drugi.

Hammingova distanca između:

1011101 i 1001001 je 2. 2173896 i 2233796 je 3. "toned“ i "roses" je 3.

100011 imaju distancu 3 (crveni put); 010111 imaju distancu 2 (plavi put);

01001001 imaju distancu 3 (crveni put); 01101110 imaju distancu 1 (plavi put);

Može se izračunati kao: ),...,,(),...,,( 2121 nn yyyxxx

Page 54: BROJNI SISTEMI I KODOVI

Hamming-ov kod

Hamming-ov kod je linarni kod za korekciju greške, nazvan po autoru Richard Hamming-u.

Hamming-ov kod može detektovati i korigovati grešku jednog bita.

Za detekciju greške jednog bita Hamming-ova distanca mora biti 2.

Za korekciju greške jednog bita Hamming-ova distanca mora biti 3.

Hamming-ovim kodom sa distancom 3, može se detektovati i korigovati greša jednog bita ili samo detektovati greška 2 bita.

Hamming-ov kod se označava sa uređenim parom Hamming(n, m) code, pri čemu je n broj bitova u kodu, a m je broj bitova podataka.

Information rate = m/n - odnos bitova podataka i ukupnog broja bitova u kodu.

Osnovni princip: Prožimanje poruke bitovima parnosti koji će kontrolisati bitove podataka kao i sami sebe.

Algoritam: U cilju jednostavnijeg određivanja koji bit je pogrešno detektovan kao bitovi parnosti odabiraju se bitovi na pozicijama 2K, K=0, 1, 2, 3,... .

Primjer: U Hamming(7, 4) kodu bitovi parnosti će biti na pozicijama 1, 2, 4.

METODE DETEKCIJE GREŠKE

Page 55: BROJNI SISTEMI I KODOVI

Hamming-ov kod

Bitom parnosti na poziciji 2K provjeravaju se bitovi podataka poruke, gdje u binarnoj prezentaciji pozicije K-ti bit ima vrijednost 1.

Primjer: Vizuelni prikaz navedane osobine, na Hamming(20, 15).

METODE DETEKCIJE GREŠKE

Hamming(7,4): Gragički opis 4 bita podataka i tri bita parnosti i koji bit parnosti se odnosi na koji bit podataka.

Page 56: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEHamming-ov kod sa dodatnom bitom parnosti

Uključivanjem još jednog bita parnosti nad cijelom porukom, povećava Hamming-ova distancu za 1 (na 4).

Sa Hammin-govom distancom 4 moguće je detektovati i korigovati jedan bit greške i detektovati dva bita greške.

Primjer: Hamming(7,4) kod može se jednostavno proširiti na Hamming(8,4) dodajući bit parnosti nad cijelom porukom.

Hamming(8,4): Gragički opis 4 bita podataka i tri bita parnosti i koji bit parnosti se odnosi na koji bit podataka.

Identičan sa Hamming(7,4) + dodatni bit parnosti nad cijelom porukom

Page 57: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEKodiranje 7-bitne riječi "0110101" Hamming(11,7) kodom

Hamming(11,7): Gragički opis 7 bita podataka i 4 bita parnosti i koji bit parnosti se odnosi na koji bit podataka.

Poruka kodirana Hamming-ovim kodom

‘10001100101’

Page 58: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEDekodiranje poruke sa greškom jednog bita, kodirane Hamming(11,7) kodom

Neka je prijemna strana, poruku sa predhodnog slajda, dobila kao: ‘10001100100’.

Analiziranje poruke:

Svaki bit parnosti se označava sa 1 kada ne prođe even parity check.

Zadnji korak: Izračunavanje bita parnosti

Dobijena suma označava poziciju pogrešno dobijenog bita.

Njegovim invertovanjem dobija se da je ispravna poruka.

Umjesto '10001100100' '10001100101'

Page 59: BROJNI SISTEMI I KODOVI

METODE DETEKCIJE GREŠKEDeodiranje na osnovu grafičkog prikaza

Gragički opis 7 bita podataka i 4 bita parnosti i koji bit parnosti se odnosi na koji bit podataka.

Pozicije bitova u kodu.

Vrijednosti bitova originalne poruke. Zbir bitova iz roze, žutog, zelenog i plavog kruga je paran broj.

Vrijednosti bitova primljene poruke. Usljed greške bita, zbir bitova iz roze, žutog i zelenog kruga je neparan broj. Zbir pozicija bitova p1, p4, p3 je 11.

Page 60: BROJNI SISTEMI I KODOVI

BOOLE-OVA ALGEBRA

Booleova (Bulova) algebra se oslanja na: postulate, pravila, zakone, teoreme i identitete, koji će biti ovdje izloženi.

Promjenljiva u Booleovoj (prekidačkoj) algebri može imati vrijednosti 0 i 1.

Komplement neke promjenljive A ima značenje suprotno od A.

Postulati i pravila Booleove algebre

Osnovni postulati i pravila Booleove algebre prikazani su u sljedećim tabelama.

0

0

01 1

1

+ =+ =+ =+ =1

0 000

1

1 11 11

+ =+

0=

+ =+ =

AA

AAA

A

A

A

01

1

====

0 000

1

111

=

0===

AAAA

A

.

.

.

.

A

.

.

.A

.

A00

00 = 11 = A = A

ILI (OR) I (AND) NE (NOT)

Page 61: BROJNI SISTEMI I KODOVI

ZAKONI BOOLE-OVE ALGEBRE

Neki od osnovnih zakona Booleove algebre su:

A + B = B + A

.A AB B .=

B( AA + =).

zakon komutacije

( AA B B+ + + +=C C) )(

. . ..( AA B B=C C) )(

zakon asocijacije

zakon apsorpcije

( AA B B+ +=C) )(. . )A( C.zakon distribucije

A

B( AA + =). A . . +( AA B B+ +=C) )( )A( C

Promjenljive B i C imaju ista svojstva kao promjenljiva A.

Page 62: BROJNI SISTEMI I KODOVI

DE MORGEANOVE TEOREME

Za dobijanje komplementa neke Booleove funkcije treba sve promjenljive zamijeniti njihovim

komplementima pa zatim operacije "ILI" zamijeniti sa "I", a operacije "I" sa "ILI“.

N

i iii

N

i i XXXX N

i

N

i 11 11 i

A B A B A B i A B

A B

0 0

0

0

1

1

1

1

A+B

1

0

0

0

A B

0 0

0

0

1

1

1

1

1

0

0

0

A B

Na bazi Booleove algebre, De Morgan je formulisao dvije važne teoreme, koje, u generalizaciji Shanona (Šenona), imaju jedinstven iskaz

Page 63: BROJNI SISTEMI I KODOVI

IDENTITETI BOOLE-OVE ALGEBRE

Pri radu sa funkcijama promjenljivih A, B i C u Booleovoj algebri, najčešće se javlja potreba korišćenja identiteta, kao što su:

1) 2) 3)A AB +. . =A B ; B.A A. =A B+( ) ; A A AB+ + =( () )B ..

Dokazi identiteta:

A B A B A B B A ( )

A A B A A A B A B ( )

( ) ( ) ( )A B A B A A A B A B B B A A B B A A A

1)

2)

3)

Page 64: BROJNI SISTEMI I KODOVI

PREKIDAČKE FUNKCIJE

Formiraju se koristeći osnovne operacije Booleove algebre, kao i prekidačke promjenljive.

Zbog karaktera promjenljivih, nazivaju prekidačke funkcije.

Dva načina predstavljanja prekidačkih funkcija:

- Kombinacije logičkih proizvoda povezuju u logički zbir. Logički proizvodi treba budu formirani tako da daju logičku jedinicu.

- Kombinacije logičkih zbirova povezuju se u logički proizvod. Logički zbirovi promjenljivih treba da budu formirani tako da daju logičku nulu.

f A B C A B C A B C

f A B C A B C A B C ( ) ( ) ( )

Page 65: BROJNI SISTEMI I KODOVI

PREKIDAČKE FUNKCIJE

Postoji i način tzv. tabelarnog zadavanja.

A B C f

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 1

1 1 1 0

A B C f

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 1

1 0 1 0

1 1 0 1

1 1 1 1

Zbir logičkih proizvoda - kombinacija koje daju logičku jedinicu.

Vrijednost logičke nule promjenljive tretira se kao njen komplement,

Proizvod logičkih zbirova - kombinacija koje daju logičku nulu.

Vrijednost logičke jedinice promjenjive tretira se kao njen komplement .

f A B C A B C A B C f A B C A B C A B C ( ) ( ) ( )

Page 66: BROJNI SISTEMI I KODOVI

MINIMIZACIJA PREKIDAČKIH FUNKCIJA

Upotrijebom osnovna pravila i teoreme Booleove algebre, broj članova prekidačkih funkcija može biti znatno smanjen.

Procedura svođenja prekidačkih funkcija na reduciranu formu naziva se minimizacija prekidačkih funkcija.

Ilustracija na jednostavnom primjeru:

f A B C D A B C D A B C ( ) ( )

A B A B B C B C

Primjenom De Morganove teoreme

slijedi

f A B C D A B C D A B C A B C D D A B C A B C C A B ( ) ( )

Page 67: BROJNI SISTEMI I KODOVI

KARNAUGH-OVE TABLICE

Uvedene radi jednostavnije minimizacije.

Broj polja u Karnaugh-ovoj tablici jednak broju kombinacija promjenljivih.

Kombinacije promjenljivih za svaka dva susjedna polja tabele razlikuju se samo za jedan bit.

Izdvajaju se promjenjive koje u dva susjedna člana u tabeli, imaju istu vrijednost.

0

1

ABC

00 01 11 10

0 1 3 2

4 5 7 6

Karnaughova tablica za tri promjenljive.

Page 68: BROJNI SISTEMI I KODOVI

KARNAUGH-OVE TABLICEPRIMJER: Minimizirati prekidačku funkciju

f ABC ABC ABC ABC ABC

ABC

00 01 11 10

0 1 3

4 5 6

1

1 1 1

10

1

2

7

f AB C

RJEŠENJE:

Karnaugh-ova tabela zadate funkcije je sljedeća

Minimalna forma zadate funkcije je:

Page 69: BROJNI SISTEMI I KODOVI

Potpuno analogna analiza može se provesti za funkcije sa četiri promjenljive. U tom slučaju, Karnaughova tablica ima oblik kao na slici.

00

01

11

10

0 1 3 2

108 9 11

12 13 15 14

6754

ABCD

00 01 11 10

Karnaughova tablica za četiri promjenljive.

KARNAUGH-OVE TABLICE

Page 70: BROJNI SISTEMI I KODOVI

KARNAUGH-OVE TABLICE

PRIMJER: Minimizirajmo funkciju od sedam članova na osnovu zadate Karnaugh-ovom tablicom.

0 1 31

1 1

1

118 9 11

12 13 15 14

674

ABCD

00 01 11 10

100

01

11

10

2

10

5

f B D A B D B C D

Lako se pokatuje da minimizirana funkcija ima oblik:

Page 71: BROJNI SISTEMI I KODOVI

KARNAUGH-OVE TABLICE

Ako funkcija ima 5 promjenjivih

),,,,( EDCBAff Ona se svodi na oblik:

DCBAfEDCBAfEf ,,,,,, 2

__

1

Zatim se funkcije f1 i f2 minimiziraju primjenom Karnaugh-ovih tablica.