dc.contributor.advisor | Lehtonen, Ari | |
dc.contributor.author | Sjöman, Juhani | |
dc.date.accessioned | 2021-05-17T05:39:13Z | |
dc.date.available | 2021-05-17T05:39:13Z | |
dc.date.issued | 2021 | |
dc.identifier.uri | https://jyx.jyu.fi/handle/123456789/75651 | |
dc.description.abstract | Tämän tutkielman tarkoituksena on tutustuttaa lukija BCH-koodeihin. BCH-koodit ovat syklisiä koodeja ja ne pystyvät korjaamaan useita virheitä. Tutkielmassa esitetään erilaisia tapoja korjata koodisanoihin tulleita virheitä käyttäen hyväksi äärellisten kuntien teoriaa ja lineaari- sekä polynomialgebraa.
Yksinkertainen kahden sanan koodi koostuu esimerkiksi koodisanoista 000 ja 111. Koodisanojen etäisyys on niiden positioiden määrä, missä sanat eroavat toisistaan. Sanojen 000 ja 111 etäisyys on siis 3. Koodin virheenkorjauskyky on sidottu koodin minimietäisyyteen d(C), joka on kaikkien koodin koodisanojen välinen minimietäisyys. Koodi korjaa t virhettä, jos d(C) on vähintään 2t + 1. Tämä esimerkkikoodi {000, 111} korjaa siis yhden virheen. Virheenkorjaus tapahtuu lähimmän naapurin -periaatteella, missä vastaanotettu sana koodataan siksi koodisanaksi, jota se on lähimpänä eli johon sen etäisyys on lyhin. Ekvivalentti koodi on sellainen koodi, jolla on samat ominaisuudet kuin alkuperäisellä koodilla. Esimerkiksi koodi {010, 101} on ekvivalentti koodin {000, 111} kanssa.
Edistyneemmissä koodeissa, kuten lineaarisissa koodeissa, koodisanojen määrä on suuri. Kaikkia lineaarisen koodin koodisanoja ei kuitenkaan tarvitse luetella vaan niiden muodostamisessa käytetään apuna virittäjämatriisia. Vastaavasti lineaarinen koodi on helppo dekoodata pariteetintarkistusmatriisin avulla. Virittäjä- ja pariteetintarkistusmatriisi voidaan kumpikin esittää standardimuodossa, joka sisältää yksikkömatriisin. Syndrooma on koodisanavektorin ja pariteetintarkistusmatriisin transpoosin tulo. Se ilmaisee koodisanassa virheen paikan.
Sykliset koodit ovat lineaarisia koodeja, mutta näille esitetään virittäjä ja pariteetintarkistus polynomien avulla. Polynomeille voidaan suorittaa modulolaskentaa samoin kuin kokonaisluvuillekin. Tämä vahvuus tekee syklisistä koodeista haluttuja niiden koodauksen ja dekoodauksen suhteellisen helppouden ja nopeuden ansiosta.
Lineaariset Hammingin koodit korjaavat vain yhden virheen. Sykliset koodit pystyvät polynomiominaisuuksiensa ansiosta korjaamaan niin sanottuja purskevirheitä eli peräkkäin esiintyviä virheitä. Jopa 6-pituinen purskevirhe on mahdollista korjata käyttäen vain 2-pituisen purskeen korjaavaa koodia, kun käytetään lomitustekniikkaa. Siinä koodisanoja ei lähetetäkään peräkkäin, vaan kolmen koodisanan ryppäinä lomitettuna. Jos siis halutaan lähettää 7-pituiset koodisanat A = A0A1...A6, B = B0B1...B6 ja C = C0C1...C6, niin sen sijaan, että lähetetään koodisanat peräkkäin: A0A1...A6B0B1...B6C0C1...C6, lähetetäänkin ne lomittain: A0B0C0A1B1C1...A6B6C6. Nyt 6-pituisen purskevirheen sattuessa kukin koodisana A, B ja C kärsii vain kahdesta virheestä, jotka voidaan korjata erikseen kunkin koodisanan kohdalla.
BCH-koodit voidaan esittää syklisinä koodeina ja täten niille pätevät kaikki syklisten koodien algebralliset ominaisuudet. BCH-koodeille esitetään niin sanottu BCH-avainyhtälö, jonka avulla vastaanotetut sanat ovat helposti ja nopeasti dekoodattavissa koodisanoiksi virheistä huolimatta. | fi |
dc.format.extent | 79 | |
dc.language.iso | fi | |
dc.subject.other | sykliset koodit | |
dc.subject.other | lineaariset koodit | |
dc.subject.other | BCH-koodit | |
dc.subject.other | äärelliset kunnat | |
dc.title | BCH-koodeista | |
dc.identifier.urn | URN:NBN:fi:jyu-202105172925 | |
dc.type.ontasot | Master’s thesis | en |
dc.type.ontasot | Pro gradu -tutkielma | fi |
dc.contributor.tiedekunta | Matemaattis-luonnontieteellinen tiedekunta | fi |
dc.contributor.tiedekunta | Faculty of Sciences | en |
dc.contributor.laitos | Matematiikan ja tilastotieteen laitos | fi |
dc.contributor.laitos | Department of Mathematics and Statistics | en |
dc.contributor.yliopisto | Jyväskylän yliopisto | fi |
dc.contributor.yliopisto | University of Jyväskylä | en |
dc.contributor.oppiaine | Matematiikan opettajankoulutus | fi |
dc.contributor.oppiaine | Teacher education programme in Mathematics | en |
dc.rights.copyright | Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty. | fi |
dc.rights.copyright | This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited. | en |
dc.contributor.oppiainekoodi | 4041 | |
dc.subject.yso | matematiikka | |
dc.subject.yso | koodausteoria | |
dc.subject.yso | polynomit | |
dc.subject.yso | koodit | |
dc.subject.yso | vektorit (matematiikka) | |