Reedovy–Solomonovy kódy

Reed-Solomonova korekce chyb je dopředný kód pro korekci chyb. Funguje na základě převzorkování polynomu zkonstruovaného z dat. Polynom se vyhodnotí v několika bodech a tyto hodnoty se odešlou nebo zaznamenají. Vzorkování polynomu častěji, než je nutné, způsobuje, že polynom je nadměrně určen. Pokud přijímá "mnoho" bodů správně, může přijímač obnovit původní polynom i v přítomnosti "několika" špatných bodů.

Reed-Solomonovy kódy se používají v mnoha různých komerčních aplikacích, například v CD, DVD a Blu-ray discích, v technologiích přenosu dat, jako je DSL a WiMAX, a ve vysílacích systémech, jako jsou DVB a ATSC.

Přehled

Reed-Solomonovy kódy jsou blokové kódy. To znamená, že pevný blok vstupních dat je zpracován na pevný blok výstupních dat. V případě nejčastěji používaného R-S kódu (255, 223) je 223 Reed-Solomonových vstupních symbolů (každý o délce osmi bitů) zakódováno do 255 výstupních symbolů.

  • Většina schémat R-S ECC je systematická. To znamená, že určitá část výstupního kódového slova obsahuje vstupní data v původní podobě.
  • Byla zvolena velikost Reed-Solomonova symbolu osm bitů, protože dekodéry pro větší velikosti symbolů by bylo obtížné realizovat pomocí současné technologie. Tato konstrukční volba nutí k tomu, aby nejdelší kódové slovo mělo délku 255 symbolů.
  • Standardní Reed-Solomonův kód (255, 223) je schopen opravit až 16 chyb Reed-Solomonova symbolu v každém kódovém slově. Protože každý symbol je ve skutečnosti osm bitů, znamená to, že kód může opravit až 16 krátkých sérií chyb způsobených vnitřním konvolučním dekodérem.

Reed-Solomonův kód je stejně jako konvoluční kód transparentní kód. To znamená, že pokud byly symboly kanálu někde na trase invertovány, dekodéry budou stále fungovat. Výsledkem bude doplněk původních dat. Reed-Solomonův kód však ztrácí svou transparentnost, pokud se použije virtuální nulová výplň. Z tohoto důvodu je nutné, aby byl před Reed-Solomonovým dekódováním vyřešen smysl dat (tj. pravý nebo doplněný).

V případě programu Voyager dosahují R-S kódy téměř optimálního výkonu, pokud jsou spojeny s (7, 1/2) konvolučním (Viterbiho) vnitřním kódem. Protože pro každou opravovanou chybu jsou zapotřebí dva kontrolní symboly, vychází z toho celkem 32 kontrolních symbolů a 223 informačních symbolů na jedno kódové slovo.

Reed-Solomonova kódová slova lze navíc před konvolučním kódováním prokládat na základě symbolů. Protože se tím oddělí symboly v kódovém slově, sníží se pravděpodobnost, že výboj z Viterbiho dekodéru naruší více než jeden Reed-Solomonův symbol v jednom kódovém slově.

Základní myšlenka

Hlavní myšlenka Reed-Solomonova kódu spočívá v tom, že kódovaná data jsou nejprve zobrazena jako polynom. Kód se opírá o větu z algebry, která říká, že libovolných k různých bodů jednoznačně určuje polynom stupně nejvýše k-1.

Odesílatel určí polynom stupně k - 1 {\displaystyle k-1}{\displaystyle k-1} nad konečným polem, který reprezentuje k {\displaystyle k}k datových bodů. Polynom je pak "zakódován" svým vyhodnocením v různých bodech a tyto hodnoty jsou tím, co je skutečně odesláno. Během přenosu může dojít k poškození některých z těchto hodnot. Proto je ve skutečnosti odesláno více než k bodů. Pokud je přijat dostatečný počet správných hodnot, může příjemce odvodit, jaký byl původní polynom, a dekódovat původní data.

Ve stejném smyslu, v jakém lze opravit křivku interpolací přes mezeru, může Reed-Solomonův kód překlenout řadu chyb v bloku dat a obnovit koeficienty polynomu, který vykreslil původní křivku.

Historie

Kód vynalezli v roce 1960 Irving S. Reed a Gustave Solomon, kteří tehdy pracovali v Lincolnově laboratoři MIT. Jejich stěžejní článek se jmenoval "Polynomiální kódy nad určitými konečnými poli". V době jeho napsání nebyla digitální technologie dostatečně vyspělá, aby bylo možné tento koncept realizovat. První aplikací RS kódů v hromadně vyráběných produktech byl v roce 1982 kompaktní disk, kde se používají dva prokládané RS kódy. Účinný dekódovací algoritmus pro RS kódy s velkou vzdáleností vyvinuli Elwyn Berlekamp a James Massey v roce 1969. Dnes se RS kódy používají v pevných discích, DVD, telekomunikacích a protokolech digitálního vysílání.


AlegsaOnline.com - 2020 / 2023 - License CC3