Eteenpäin suuntautuva virheenkorjaus

Tietoliikenteessä Forward error correction (FEC) on erityinen virheiden havaitsemiseen ja korjaamiseen tarkoitettu koodi. Lähettäjä lisää datan osia uudelleen. Tätä kutsutaan redundanssiksi. Vastaanotin pystyy tällöin havaitsemaan tietyt virheet, jotka ovat peräisin datan lähettämisestä. Tietyissä tapauksissa vastaanotin voi korjata virheen ilman uudelleenlähetystä.

 

Miten se toimii

FEC lisää redundanssia lähetettävään tietoon tunnetun algoritmin avulla. Kukin redundanttibitti on monien alkuperäisten tietobittien funktio. Alkuperäinen informaatio voi esiintyä tai olla esiintymättä koodatussa ulostulossa; koodit, jotka sisältävät muuttumattoman syötteen ulostulossa, ovat systemaattisia, kun taas koodit, jotka eivät sisällä sitä, ovat epäsystemaattisia.

Erittäin yksinkertainen esimerkki olisi analogi-digitaalimuunnin, joka ottaa kolme bittiä signaalin voimakkuutta koskevia tietoja jokaista lähetettyä databittiä kohti. Jos kaikki kolme näytettä ovat enimmäkseen nollia, lähetetty bitti oli todennäköisesti nolla, ja jos kaikki kolme näytettä ovat enimmäkseen ykkösiä, lähetetty bitti oli todennäköisesti ykkönen. Yksinkertaisin esimerkki virheenkorjauksesta on se, että vastaanotin olettaa, että oikea lähtöarvo on se arvo, joka esiintyy useimmin kussakin kolmen näytteen ryhmässä.

Kolmikko sai

Tulkitaan seuraavasti

000

0

001

0

010

0

100

0

111

1

110

1

101

1

011

1

Näin virhe missä tahansa kolmesta näytteestä voidaan korjata "demokraattisella äänestyksellä", mutta se on erittäin tehoton FEC. Käytännössä se ei toimisi kovin hyvin, mutta se havainnollistaa periaatetta. Käytännössä FEC-koodit tutkivat yleensä useita kymmeniä tai jopa satoja viimeisiä aiemmin vastaanotettuja bittejä määrittääkseen, miten nykyinen pieni kourallinen bittejä (tyypillisesti 2-8 bitin ryhmissä) puretaan.

Tällaista kolminkertaista modulaarista redundanssia, joka on yksinkertaisin eteenpäin suuntautuvan virheenkorjauksen muoto, käytetään laajalti.

 

AlegsaOnline.com - 2020 / 2023 - License CC3