1 / 26

LINEARNO BINARNI BLOK KODOVI

LINEARNO BINARNI BLOK KODOVI. Tomislav Pandurić, 329 Odjel za fiziku, Osijek Svibanj 2013. Uvod u linearno binarne blok kodove. definiraju su preko skupa vektora (vektorski prostor ) svaka kodna riječ binarnog blok koda K duljine n može se predstaviti binarnim vektorom

cate
Download Presentation

LINEARNO BINARNI BLOK KODOVI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. LINEARNO BINARNI BLOK KODOVI Tomislav Pandurić, 329 Odjel za fiziku, Osijek Svibanj 2013.

  2. Uvod u linearno binarne blok kodove • definiraju su preko skupa vektora (vektorski prostor) • svaka kodna riječ binarnog blok koda K duljine n može se predstaviti binarnim vektorom x = [x1, x2, …, xi, …, xn] • definirane su operacije zbrajanja i množenja

  3. Neka je V(n) skup svih binarnih vektora duljine n (takvih je 2n vektora) • zbrajanja vektora i množenja vektora skalarom definirano je sa: x+ y =[x1, x2, …, xn] + [y1, y2, …, yn] = [x1 + y1, x2 + y2, …, xn+ yn], a· x = a · [x1, x2, …, xn] = [a · x1, a · x2, …, a · xn], gdje su a, xi i yj sklari iz F2 = {0, 1} , a x i y vektori iz V(n) (V(n) je vektorski prostor)

  4. Definicija linearnog blok koda • Neka je blok-kod K podskup vektorskog prostora V(n): K V(n). Ako je za sve x, yЄ Ki a Є F2ispunjeno: - x + y Є K - a · x Є K onda je Klinearan binarni blok-kod

  5. Težina kodne riječi • Težina kodne riječi xkoda K je broj pozicija kodne riječi na kojima se nalazi simbol 1 • Oznaka težine kodne riječi xje w(x) Primjer: w(100101) = 3, w(000100) = 1.

  6. Hammingova udaljenost dviju kodnih riječi: • može se odrediti iz izraza: d(x, y) = w(x - y) Primjer: 100101 d(x, y) = w(100001) = 2 - 000100 100001

  7. Generirajuća matrica • svaku kodnu riječ možemo izraziti kao linearnu kombinaciju vektora baze x = a1 · b1 + a2 · b2 +… + ak· bk • Broj kodnih riječi koje mogu nastati svim linearnim kombinacijama vektora baze je 2k • Matrica dimenzija k x n čiji se reci sastoje od vektora baze koda (n, M, d) naziva se generirajuća matrica (n- duljina koda, M - broj kodnih riječi, d - udaljenost koda)

  8. d(K) = min w(x) = 3 Oznaka koda: [5, 4, 3] = (5, 2, 3) Oznaka linearnog blok koda je [n, M, d] = (n, k, d)

  9. Primjer: • Binarni kod K = (5, 4, 3) ima kodne riječi: • za bazu se mogu uzeti dvije zadnje kodne riječi: z1=00111 i z2=11011 • generirajuća matrica koda K koja ga jedinstveno opisuje je: • Sve se kodne riječi mogu dobiti kao linearna kombinacija a · z1 + b · z2, gdje su a i b Є {0, 1}

  10. Standardni oblik generirajuće matrice • Dva su blok koda ekvivalentna ako se jedan iz drugog mogu dobiti postupcima zamjene pozicija (stupaca) i permutacijom simbola • Ekvivalentni linearni blok kodovi dobivaju se primjenom pravila generirajuće matrice ekvivalentnih linearnih blok kodova

  11. Generirajuće matrice ekvivalentnih linearnih blok kodova • Dva ekvivalentna linearna binarna blok koda [n, k], K1 i K2, imaju generirajuće matrice G1 i G2koje se jedna iz druge mogu dobiti sljedećim operacijama: - zamjena redaka - dodavanje jednog retka drugom retku - zamjena stupaca

  12. Standardni oblik generirajuće matrice • Generirajuća matricaG nekog koda K ima standardni oblik ako ima strukturu G = [ Ik | A ], gdje je Ik jedinična matrica reda k, a A matrica dimenzija k× (n−k) Primjer:

  13. Do jednog od standardnih oblika generirajuće matrice G može se doći na način da se na postojećoj matrici G izvrši zamjena drugog i trećeg stupca, a zatim se zamijeni prvi i drugi redak • Ova je generirajuća matrica dana u standardnom obliku budući da ima strukturu [ I2 | A ]

  14. KODIRANJE LINEARNIM BLOK KODOVIMA • Način formiranja kodne riječi x odgovara množenju vektor-retka kodirane poruke m duljine k i generirajuće matrice G • Neka je m=[m1, m2, ..., mk] bilo koja od 2kporuka • Tada poruci m odgovara točno jedna riječ x koda K koja je jednaka linearnoj kombinaciji skalara mi i vektora baze ri

  15. Primjer: • Neka se uzme kod (5, 2, 3) koji ima sljedeću generirajuću matricu: • Koder izvora informacije generira poruku 11; u koderu informacije nastaje zaštitna kodna riječ:

  16. Složenost kodiranja može se smanjiti ako se koristi standardni oblik generirajuće matrice koda • U tom se slučaju kodiranje poruke m svodi na množenje: m · [ Ik | A ], a dobivena kodna riječ sastoji se od dva dijela: -prvih k pozicija zauzima sama poruka i taj se dio naziva jednostavno poruka; -ostalih (n-k) pozicija predstavlja umnožak m · A, a taj se dio kodne riječi naziva dio za provjeru (ona predstavlja zalihost kodne riječi)

  17. Primjer: • Generirajuća matrica koda u standardnom obliku iz jednog od prethodnih primjera može se odrediti na način da se zamjene prvi i treći stupac matrice G gdje su matrice:

  18. Neka koder izvora informacije generira poruku 01, te u koderu informacije nastaje zaštitna kodna riječ • Dobivena kodna riječ sastoji se od originalne poruke i tri zalihosna simbola 1

  19. Dekodiranje linearnog blok koda • razmatramo kod (5, 4, 3) = [5, 2, 3] sa sljedećim kodnim riječima • udaljenost koda je 3, te ovaj kod može otkriti dvostruku pogrešku i ispraviti jednostruku pogrešku korištenjem principa dekodiranja najbližim susjedom

  20. Dekoder kanala može postupiti na način da za primljenu kodnu riječ pronađe kodnu riječ koja ima najmanju Hammingovu udaljenost i proglasiti je primljenom kodnom riječi • Složenost takvog postupka raste s brojem kodnih riječi M te za velike kodove ovaj postupak zahtijeva veliko opterećenje procesora prijemnika • Zbog toga su razvijene druge metode brzog dekodiranja linearnih blok kodova (npr. sindromsko dekodiranje)

  21. Vektor pogreške • vektor pogreškee za poslanu kodnu riječ x = [x1, x2, …, xn] i primljenu kodnu riječ y = [y1, y2, …, yn] definira se kao zbroj vektora: e = y + x = [e1e2 … en]

  22. Standardni niz • Standardni niz je tablica koja se formira na sljedeći način: -U prvom retku su kodne riječi koda K; -Prva kodna riječ je 0; -Prvi stupac sadrži vektore pogreški; -U ostalim retcima nalaze se razredi koda K nastali dodavanjem vektora pogreške e kodnim riječima koda K.

  23. Primjer: • Neka se pretpostavi da je koder poslao kodnu riječ x = [0 0 1 1 1], a da je dekoder primio vektor y = [0 1 1 1 1] • Dekoder pronalazi vektor y u trećem stupcu standardnog niza te zaključuje da se dogodila jednostruka pogreška i da je poslana kodna riječ x = [0 0 1 1 1]

  24. Standardni niz ne sadrži sve vektore koje dekoder može primiti, što je posljedica neperfektnosti koda (5, 4, 3) • Dekoder može primiti i sljedeće vektore koji su organizirani na isti način kao i vektori u standardnom nizu • Ako je primljen vektor [0 1 1 1 1], dekoder koristi istu logiku kao i u slučaju standardnog niza, te zaključuje da je poslana kodna riječ [0 0 1 1 1]

  25. Sindromsko dekodiranje • Kako bi smo razjasnili sindromsko dekodiranje, ponajprije bi se trebali upoznati s još nekim pojmovima kao što su matrica provjere pariteta, dualni kod, linearnost i generirajuća matrica dualnog koda što dodatno komplicira stvari, pa je izostavljeno (ako nekog ipak zanima može pronaći više o tome u literaturi na str. 151 – 162)

  26. Literatura • I. S. Pandžić, A. Bažant, Ž. Ilić, Z. Vrdoljak, M. Kos, V. Sinković: Uvod u teoriju informacije i kodiranje, Element, Zagreb, 2007.

More Related