Dopředná korekce chyb
V telekomunikacích je dopředná korekce chyb (FEC) speciální kód pro detekci a opravu chyb. Odesílatel znovu přidává části dat. Tomu se říká redundance. Přijímač je pak schopen odhalit určité chyby, které vznikly při odesílání dat. V určitých případech může přijímač chybu opravit, aniž by bylo nutné opakovat přenos.
Jak to funguje
FEC přidává k přenášeným informacím redundanci pomocí známého algoritmu. Každý redundantní bit je funkcí mnoha původních informačních bitů. Původní informace se mohou, ale nemusí objevit v zakódovaném výstupu; kódy, které zahrnují nezměněný vstup do výstupu, jsou systematické, zatímco ty, které jej nezahrnují, jsou nesystematické.
Velmi jednoduchým příkladem může být analogově-digitální převodník, který pro každý bit přenášených dat vzorkuje tři bity údajů o síle signálu. Pokud jsou všechny tři vzorky většinou nulové, přenášený bit byl pravděpodobně nulový, a pokud jsou všechny tři vzorky většinou jedničkové, přenášený bit byl pravděpodobně jedničkový. Nejjednodušším příkladem korekce chyb je, že přijímač předpokládá, že správný výstup je dán nejčastěji se vyskytující hodnotou v každé skupině tří hodnot.
Obdržený trojitý pár | Interpretováno jako |
000 | 0 |
001 | 0 |
010 | 0 |
100 | 0 |
111 | 1 |
110 | 1 |
101 | 1 |
011 | 1 |
To umožňuje opravit chybu v kterémkoli ze tří vzorků "demokratickým hlasováním", ale je to velmi neefektivní FEC. V praxi by však příliš dobře nefungoval, ale ilustruje princip. V praxi kódy FEC obvykle zkoumají posledních několik desítek nebo dokonce posledních několik set dříve přijatých bitů, aby určily, jak dekódovat aktuální malou hrst bitů (obvykle ve skupinách po 2 až 8 bitech).
Taková trojnásobná modulární redundance, nejjednodušší forma dopředné korekce chyb, je široce používána.