Lineaarinen lohkokoodaus, Block Coding

Slides:



Advertisements
Samankaltaiset esitykset
Yleistä Läsnäolovelvollisuus Poissaolojen selvitys Käyttäytyminen
Advertisements

Komponenttien rakenteellinen tärkeys
KuvatyypittMyn1 Kuvatyypit •MPEG-2 käyttää kolmen tyyppisiä kuvia. •Kuvatyyppejä kutsutaan I, P ja B-kuviksi. •Kuva voi olla joko kehys (frame) tai kenttä.
ASK - Amplitude Shift Keying Timo Mynttinen1 ASK-Amplitude Shift Keying •Otetaan erikoistapauksena tilanne, jossa informaatiosignaalina s(t) on kantataajuinen.
Yhtälön ratkaiseminen
M-ary Frequency Shift Keying Timo Mynttinen1 M-ary Frequency Shift Keying •M-ary FSK on suuren mielenkiinnon kohteena verrattuna binaariseen FSK:hon. •Parempi.
Lineaarisia malleja.
5.1. Tason yhtälö a(x – x0) + b(y – y0) + c(z – z0) = 0
Luokkien väliset koostesuhteet
Digital Video Broadcasting tMyn1 DVB-DIGITAL VIDEO BROADCASTING •Yhteenliittymään kuuluu noin 300 yritystä ja organisaatiota –laitevalmistajia –jakeluorganisaatioita.
Virheen havaitseminen ja korjaus
ERILAISIA LOHKOKOODAUSMENETELMIÄ
© 2010 IBM Corporation1 Etusivun muokkaaminen  Portaalisivut ja niihin määritetyt komponentit muodostavat varsinaiset internet-sivut.  Etusivu muodostuu.
Aloitetaan normalisoimattomasta raakadatasta
Julkaisukielet ja - tekniikat tMyn1 Julkaisukielet ja -tekniikat •Verkko-ohjelmointi voidaan jakaa kahteen osaan: asiakaspuolen ja palvelinpuolen ohjelmointiin.
Entropiakoodaus, Entropy Coding
Johdetun luokan määrittely tMyn1 Johdetun luokan määrittely •Kun johdettu luokka periytetään kantaluokasta, saadaan kantaluokan jäsenet enemmän tai vähemmän.
JOHDANTO VIRHEENKORJAAVAAN KOODAUKSEEN ─ KANAVAKOODAUSMENETELMÄT
Langattomien laitteiden matematiikka 1
Yhdistetty M-ary ASK ja M-ary PSK Timo Mynttinen1 Yhdistetty M-ary ASK ja M-ary PSK Tähän asti on kerrallaan käytetty yksinomaan joko amplitudia, taajuutta.
M-ary Phase Shift Keying Timo Mynttinen1 M-ary Phase Shift Keying M-ary FSK:ssa huomattiin, että on mahdollista lähettää kaksi tai useampi symbolitila.
AS Automaation signaalinkäsittelymenetelmät
Valitse seuraaviin vaihtoehtotehtäviin oikea vastaus…
Poikkeuskäsittely- lohkot tMyn1 Poikkeuskäsittelylohkot try-catch Poikkeustilanteiden käsittelymekanismi toteutetaan varatuilla sanoilla try, throw ja.
Taylor polynomi usean muuttujan funktiolle
Prosenttilaskua, tiivistelmä
TMA.003 / L3 ( )1 3. Funktioista 3.1. Kuvaus ja funktio Olkoon A ja B ei-tyhjiä joukkoja. Tulojoukon A  B = {(x,y) | x  A, y  B} osajoukko on.
Luokkien löytyminen käytännössä tMyn1 Luokkien löytyminen käytännössä Kun aletaan ratkaista elävän elämän ohjelmointitehtäviä, niin ensimmäisten asioiden.
Motion compensated interframe tMyn1 Motion compensated interframe prediction -koodaus Edellä tutkittiin yksittäisen kehyksen sisällä olevan redundanssin.
Tiedon esittäminen.
2. Vuokaaviot.
m0 M7 Maksimitermi Minimitermi Boole A = A A · 0 = 0 SOP De Morgan POS
Virtuaaliset jäsenfunktiot tMyn1 Virtuaaliset jäsenfunktiot Virtuaalinen jäsenfunktio on esiteltävä monimuotoisessa kantaluokassa. Virtuaalisen jäsenfunktion.
1.a) f(x) = 2x(x2 – 3) = 0 2x = tai x2 – 3 = 0 x = tai x2 = 3
Normalisointi2tMyn1 Yksi kelpo perusavain on sarakkeet laakNro ja vastAika. Toinen voisi olla potNro ja vastAika, kolmas voisi olla huoneNro ja vastAika,…,
Luokan määrittely class-määreellä tMyn1 Luokan määrittely class-määreellä Luokan määrittely tarkoittaa luokan tietojäsenten esittelyä ja jäsenfunktioiden.
Aritmeettinen jono jono, jossa seuraava termi saadaan edellisestä lisäämällä sama luku a, a + d, a+2d, a +3d,… Aritmeettisessa jonossa kahden peräkkäisen.
Johtokoodaus Historia, toiminnalliset syyt ja toteutustapojen hintaerot ovat johtaneet eri johtokoodaustapojen kehittämiseen. Hyvälle johtokoodaukselle.
Tiedostomuodot Jussi Talaskivi atk-suunnittelija Jyväskylän yliopisto.
Murtoluvun supistaminen
− työkalu toiminnan suunnittelun ja suunnitelman arvioinnin tueksi
Vaihemodulaatio Vaihemodulaatio ja taajuusmodulaatio muistuttavat suuresti toisiaan. Jos moduloidaan kantoaallon vaihekulmaa, niin samalla tullaan moduloiduksi.
Videosignaalin perusteet tMyn1 Videosignaalin perusteet Euroopassa televisiolähetyksissä kehyksiä lähetetään 25 kappaletta sekunnissa (frame rate 25 Hz).
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Virheenpaljastus- ja korjauskoodit tMyn1 Virheenpaljastus- ja korjauskoodit Virheen havaitseminen Tässä vaaditaan ainoastaan se, että pystytään toteamaan.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
Ohjelman keskeytys virhetilanteessa tMyn1 Ohjelman keskeytys virhetilanteessa Poikkeustilanteet voidaan ryhmitellä logiikkavirheisiin ja muihin ajonaikaisiin.
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
PARAABELI (2. ASTEEN FUNKTION KUVAAJIA)
PSK - Phase Shift Keying Timo Mynttinen1 PSK-Phase Shift Keying PSK:ssa informaatio koodataan moduloidun signaalin hetkelliseen vaihekulmaan. Tavallisesti.
Johdetun luokan olion esittely... tMyn1 Johdetun luokan olion esittely ja määrittely Esittelyluokka tarkoittaa olion tunnuksen luokkaa. Määrittelyluokka.
Poikkeustenkäsittely- lohkot tMyn1 Poikkeustenkäsittelylohkot try-catch Poikkeustilanteiden käsittelymekanismi toteutetaan varatuilla sanoilla try, throw.
Kontrollirakenteet laajemmin
Monimuotoinen luokka tMyn1 Monimuotoinen luokka Monimuotoinen luokka mahdollistaa saman jäsenfunktion toteutuksen monella tavalla. Tällöin puhutaan virtuaalisesta.
Tiedon vieminen funktiolle tMyn1 Tiedon vieminen funktiolle, parametrit Argumentin vieminen funktiolle voidaan toteuttaa kahdella menetelmällä: –Pass-by-Value.
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
Funktio.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
Johdetun luokan määrittely tMyn1 Johdetun luokan määrittely Kun johdettu luokka periytetään kantaluokasta, saadaan kantaluokan jäsenet enemmän tai vähemmän.
5. Fourier’n sarjat T
Listat eli luettelot listaelementit ovat lohkoelementtejä:  lista ja listan alkiot alkavat uudelta riviltä  listan jälkeen tuleva elementti alkaa uudelta.
MAB3 prosenttilasku.
Toistorakenne Toistorakennetta käytetään ohjelmissa sellaisissa tilanteissa, joissa jotain tiettyä ohjelmassa tapahtuvaa toimenpidekokonaisuutta halutaan.
ERILAISIA LOHKOKOODAUSMENETELMIÄ A Tietoliikennetekniikka II Osa 23 Kari KärkkäinenSyksy 2015.
Matematiikkaa 3a, Kertausjakso Lukuja © Varga–Neményi ry 2016
Amplitudimodulaatio Amplitudimodulaatiossa moduloiva signaali muuttaa kantoaallon voimakkuutta eli amplitudia. Kantoaallon taajuus pysyy koko ajan samana.
Yhden bitin asettaminen Javalla
Siirtorekisterin toteutus Javalla
LOHKOKOODATUN JA KOODAMATTOMAN JÄRJESTELMÄN SUORITUSKYKYJEN VERTAILU
CLT132 Tehtävät (viikko 4).
Esityksen transkriptio:

Lineaarinen lohkokoodaus, Block Coding Alkuperäisen lähdesymbolin pituus on k bittiä. Muodostetaan koodattu symboli lähetettäväksi siirtotielle ja silloin koodattu symboli on pituudeltaan n bittiä (luonnollisesti n>k). Tuloksena on (n, k)-lohkokoodaus. Bittien lisääminen vaikuttaa hidastavasti tiedonsiirtonopeuteen. Määritellään koodaussuhde (code rate) R=k/n. Kerrointa 1-k/n kutsutaan lohkokoodin redundanssiksi. Lineaarinen lohkokoodaus tMyn

Koodauksen suorituskyky (coding efficiency) Tällä ilmaistaan miten hyvin virheitä pystytään havaitsemaan tai korjaamaan koodatusta informaatiosymbolista suhteessa ”ylimääräisiin” bitteihin. Jotkin koodaustavat soveltuvat paremmin virheiden havaitsemiseen kuin niiden korjaamiseen. Myös päinvastainen on totta. Lineaarinen lohkokoodaus tMyn

Jos halutaan lähettää bittejä, niin silloin voidaan esim Jos halutaan lähettää bittejä, niin silloin voidaan esim. ryhmitellä bitit kolmen ryhmiksi. Mahdollisia informaatiosanoja tulee siis kahdeksan kappaletta: 000, 001, 010, 011, 100, 101, 110, 111. Informaatiosanat voidaan koodata kahdeksaksi koodisanaksi, joissa on redundanssia (käytetään kuhunkin koodisanaan esim. 5 bittiä). Näin saadaan aikaan laittomia bittikombinaatioita. Bittivirheet ovat kahden tyyppisiä: joko virhe voi sattua yksittäiseen bittiin täysin riippumatta virhe- todennäköisyydestä viereiseen bittiin, tai sitten voi tulla virheryöppyjä (useampi peräkkäinen bitti on virheellinen). Lineaarinen lohkokoodaus tMyn

Olkoot koodatut symbolit kaikki saman mittaisia. Kahden koodatun symbolin etäisyys määritellään erilaisten bittien lukumääräksi vastinkohdissa, siis esim. koodisanojen 111 ja 000 etäisyys on 3 ja koodisanojen 010 ja 011 etäisyys on 1. Tarkastellaan vielä alkuperäistä esimerkkiä, informaatiosymbolit 000, … 111. Vierekkäisten symbolien etäisyys on 1. Jos siirtotiellä tulee yhden bitin virhe, esim. lähetetään 000 mutta vastaanotetaan 001, niin tuli ongelma! Symboli 001 on laillinen symboli, joten vastaanotin ei voi mitenkään arvata, että virhe on tapahtunut. Lineaarinen lohkokoodaus tMyn

Lisätään koodisanojen etäisyyttä siten, että minimietäisyys on 3. Otetaan esimerkki koodatusta symbolijoukosta, jossa minimietäisyys minkä tahansa koodisanaparin välillä on vähintään 2, siis vaikkapa: 0000, 0011, 0101, 0110, 1001, 1010, 1100, 1111. Lähetetään esim. 0101 ja vastaanotetaankin 0111 (yhden bitin virhe tapahtui matkalla). Vastaanotin huomaa, että koodisana on laiton, mutta ei pysty päättelemään, mikä olisi oikea, alkuperäinen, koodisana. Lisätään koodisanojen etäisyyttä siten, että minimietäisyys on 3. Lineaarinen lohkokoodaus tMyn

Nyt siis pystytään korjaamaan yhden bitin virhe/koodisana. Jos tällaisessa tapauksessa tapahtuu yhden bitin siirtovirhe, niin vastaanotettu koodisana on 1 etäisyydellä alkuperäisestä lähetetystä koodisanasta, ja vähintään 2 etäisyydellä kaikista muista laillisista koodisanoista. Nyt siis pystytään korjaamaan yhden bitin virhe/koodisana. Lineaarinen lohkokoodaus tMyn

pystytään korjaamaan vastaavasti virhettä. Yleistys: Jos koodisanojen minimietäisyys on , niin silloin voidaan havaita virhettä. Vastaavasti jos on parillinen, niin silloin voidaan korjata virhettä, ja jos on pariton, niin pystytään korjaamaan vastaavasti virhettä. Lineaarinen lohkokoodaus tMyn

Lineaarinen lohkokoodaus, systemaattiset algebralliset koodit Systemaattiset algebralliset koodit voidaan generoida suoraan matriisilaskennan avulla: [v]=[u][G], jossa [u] on [1*k] vektori edustaen alkuperäistä informaatiota [v] on [1*n] vektori edustaen koodattua informaatiota [G] on [k*n] matriisi, jota käytetään koodattujen informaatiosanojen generointiin. Lineaarinen lohkokoodaus tMyn

Esimerkiksi (7, 4) lineaarinen koodi voitaisiin generoida matriisilla . Jokaista koodingenerointimatriisia [G] kohden on olemassa pariteettitarkistusmatriisi [H]. Kun äskeistä esimerkkimatriisia [G] tarkastellaan, niin huomataan, että vasemmalla ”laidalla” on pariteettibittien generointiin tarvittava osuus. Lineaarinen lohkokoodaus tMyn

Oikealla ”laidalla” on yksikkömatriisi, siis uudelleenkirjoitettuna: . Pariteettitarkistusmatriisi voidaan kirjoittaa tästä esityksestä aloittamalla yksikkömatriisilla ja jatkamalla matriisin [G] pariteettibittiosuuden transponoidulla muodolla. Lineaarinen lohkokoodaus tMyn

Jos merkitään niin silloin Auki kirjoitettuna saadaan äskeisillä arvoilla = . Lineaarinen lohkokoodaus tMyn

Pariteettitarkistusmatriisilla on seuraava ominaisuus: Tulkinta: kun kerrotaan mikä tahansa virheetön koodisana pariteettitarkistusmatriisin transponoidulla muodolla, niin tulokseksi saadaan nollavektori. Jos siirtotiellä on tapahtunut yhden bitin virhe, niin äskeinen tulo paljastaa virheen paikan ja siis yhden bitin virhe voidaan korjata! Vastaanotetun koodivektorin ja pariteettitarkistusmatriisin transponoidun muodon tuloa kutsutaan syndroomaksi (syndrome), koska se kertoo, mikä meni pieleen. Lineaarinen lohkokoodaus tMyn

Sitä mukaa kun k kasvaa, vaikeutuu käytännön toteutus: Keksijänsä Richard W. Hammingin mukaan puhutaan suosituista Hamming-lohkokoodeista. Vaihtoehtoja on monta, esim. (7, 4), (15, 11), (31, 26), (63, 57), (127, 120), (255, 247), (511, 502). Hamming-koodit ovat tehokkaita, esim. (15, 11) koodauksen suhteeksi saadaan 11/15=73%. Sitä mukaa kun k kasvaa, vaikeutuu käytännön toteutus: Kestää kauemmin ryhmitellä informaatiobitit k:n pituisiksi lohkoiksi. Vastaanotossa yritetään etsiä vastaanotetuista mahdollisesta vaihtoehdosta lähin laillinen vaihtoehdosta. Kompleksisuus kasvaa eksponentiaalisesti! Lineaarinen lohkokoodaus tMyn

Hamming-lohkokoodit ovat osajoukko laajemmasta BCH-koodiperheestä. BCH, Bose-Chaudhuri-Hocquenghem. Koodausmenetelmä kehitettiin vuosina 1959 ja 1960. Esim. BCH (127, 64)-koodaus pystyy korjaamaan 10 bittiä/koodisymboli… ja BCH (1023, 11) pystyy korjaamaan 255 bittiä/koodisymboli! Hintana on koodauksen suhde, 11/1023=1%!! Lohkokoodaus toimii parhaimmillaan ympäristössä, jossa virheet esiintyvät tasaisesti ja mielivaltaisesti vastaanotetuissa koodisymboleissa. Lineaarinen lohkokoodaus tMyn

Jos virheet sitä vastoin esiintyvät purskeisesti, niin silloin tarvitaan lisäksi limitystä (interleaving). Purskeisuus virhe-esiintymisessä on tyypillistä esim. mobiileissa toimintaympäristöissä: signaalin häipyminen ja monitie-eteneminen. Yksinkertainen tapa toteuttaa limitys onnistuu seuraavasti: käytetään puskurointia, ja kirjoitetaan koodatut symbolisanat matriisin riveihin. Dataa aletaan sitten siirtämään sarake kerrallaan. Lineaarinen lohkokoodaus tMyn

Reed-Solomon –koodit, Irving Reed, Gustav Solomon R-S-koodit ovat osajoukko BCH-koodeista. Nyt operoidaan lohko- eikä bittitasolla. Alkuperäinen binaari-informaatio pakataan aluksi lohkoihin, esim. kukin lohko on pituudeltaan 8 bittiä. Valitaan k kappaletta näitä 8 bitin lohkoa, ja valitaan tämä uusi lohkokokonaisuus uudeksi jakamattomaksi yksiköksi. Tämä uusi yksikkö (jossa on k kappaletta 8 bitin lohkoja) koodataan siten, että syntyy n kappaletta 8 bitin lohkoja, luonnollisesti n>k. Tuloksena on R-S (n, k) -lohkokoodaus. Lineaarinen lohkokoodaus tMyn

Lineaarinen lohkokoodaus, sykliset koodit Olkoot koodisana yleisessä muodossa Siirretään bittejä yhden position oikealle ja samalla laitimmainen bitti siirtyy toiseen laitaan, siis Jos kyseessä on syklinen koodi, niin äskeisellä siirrolla saatiin aikaan uusi kelvollinen koodisana! Lineaarinen lohkokoodaus tMyn

Esim. Polynomi voidaan jakaa tekijöihin Teoreema 1: Jos g(x) on n-k -asteinen polynomi ja se on polynomin tekijä (factor), niin silloin polynomia g(x) voidaan käyttää generoimaan (n, k) syklinen koodi. Esim. Polynomi voidaan jakaa tekijöihin Siispä ensimmäisellä tekijällä voidaan generoida (7, 6) syklinen koodi ja kahdella jälkimmäisellä tekijällä voidaan generoida (7, 4) syklinen koodi. Lineaarinen lohkokoodaus tMyn

Teoreema 2: Jokainen i:nnen asteinen polynomi, joka on jakamaton, (irreducible = jaollinen tasan vain itsensä ja ykkösen kanssa) on polynomin tekijä. Tällaista jakamatonta polynomia voidaan käyttää generoimaan (2i+1, i+1) syklinen koodi. Esim. voidaan osoittaa, että polynomi on jakamaton. Teoreeman perusteella tämä polynomi on polynomin tekijä. Tästä tiedetään suoraan, että polynomilla voidaan generoida (7, 4) syklinen koodi. Lineaarinen lohkokoodaus tMyn

Jos polynomi v(x) edustaa koodisanaa (n, k) koodattuna, niin syklinen siirto oikealle j positiota voidaan toteuttaa kaavalla modulo , missä modulo tarkoittaa sitä, että jaetaan termi polynomilla ja otetaan vastaukseksi jakojäännös. Modulo-operaatio on tarpeen, jos on asteluvultaan n tai korkeampi. Jos koodi on systemaattinen, niin silloin oikealla laidalla olevat bitit edustavat alkuperäistä koodaamatonta informaatiosanaa u. Tätä voidaan kuvata polynomilla koska se kuvaa n-k position siirtoa oikealle. Lineaarinen lohkokoodaus tMyn

Modulo-operaatio tarkoittaa, että suoritetaan jakolasku Otetaan tästä polynomista modulo g(x) ja merkitään jakojäännöstä r(x):llä: modulo g(x). Modulo-operaatio tarkoittaa, että suoritetaan jakolasku jossa q(x)=osamäärä ja r(x)=jakojäännös ja josta otetaan vain jakojäännös. Voidaan siis kirjoittaa lauseke Lineaarinen lohkokoodaus tMyn

Saatiin siis kelvollinen koodisana aikaan!! Lisätään jakojäännös r(x) yhtälön kummallekin puolelle (modulo-2 aritmetiikassa 1+1=0), jolloin saadaan kaava muotoon Saatiin siis kelvollinen koodisana aikaan!! Syndroomapolynomi saadaan jakojäännöksenä jakolaskusta v(x) modulo g(x), jossa v(x) on vastaanotettu koodattu symbolisana ja g(x) on koodin generointipolynomi. Jos mitään virhettä ei ole siirtotiellä tapahtunut, niin silloin jakojäännöstä ei synny. Jos virhe on tapahtunut, niin silloin syntyy jakojäännös, jonka muoto riippuu siitä missä kohden virhe tapahtui. Lineaarinen lohkokoodaus tMyn