Turbo kodeky
Data zpracovaná naším Turbo-kodekem jsou o 80% originálnější než při použití běžného kodeku. No nekupte to!Na ženevské radiové konferenci IEEE v roce 1993 vystoupili dva naprosto neznámí maníci – Claude Berrou a Alain Glavieux – z Ecole Nationale Superieure des Telecommunications. Předestřeli návrh jakéhosi křížence konvolutorního a blokového kódu. Zároveň tvrdili, že zatímco nejlepší používané Viterbi/Reed-Solomonovy kódy jsou při chybovosti 1:100,000 nějakých 3.5 dB od Shannonova limitu, oni se se svým patentním gizmem dostanou na neuvěřitelných 0.5 dB.
Na IEEE akcích musí být člověk připraven na ledacos. IEEE je poměrně filantropická organizace – liberálně rozdává stipendia a přípravným výborům konferencí občas nějaká ta banda šarlatánů unikne.
Zažil jsem, jak v sekci věnované kvantovým počítačům přednesl profesor jakési univerzity Hunlase-Bumumby (obklopen – asi aby se nebál – pěti doktorandy) v nepopsatelném jazyce vzdáleně podobném angličtině přednášku na téma něco jako "Příspěvek ke studiu chování Fermiho plynu". Vyšlo z toho, že dali špulku měděného drátu do ledničky a ve shodě s teoretickými předpoklady zjistili, že se nic zvláštního neděje. Z toho usoudili, že se při prakticky pokojové teplotě Comptonovy páry asi významněji netvoří. Hlavním přínosem zjevně bylo, že si z grantu pořídili tu ledničku.

Ženevští posluchači tedy dílem usoudili, že oba pánové z poněkud provinčního Brestu jsou vykuci, dílem si pak útrpně pomyslili, že je pěkné, jak se v provincii amatérsky bádá, ale měli to nechat některému pečlivějšímu kolegovi překontrolovat.
Snaha elegantně dokázat, že je kolega beznadějný trotl, je v akademické obci silným motivačním faktorem, takže se pár lidí obtěžovalo to přepočítat. Divná věc – vycházelo to.
V dalším dějství účinkuje JPL a spolehlivý čich koryfeje oboru – Viterbiho (jo, je to TEN Viterbi z Qualcommu). Viterbi, kterému na rozdíl od neznámých žabožroutů každý naslouchá se zbožnou bázní, nejen potvrdil, že to funguje, ale také přispěl svou troškou do mlýna návrhem dekódovacího algoritmu pojmenovaného pěkně česky SOVA (Soft Output Viterbi Algorithm).
Řečeno s Viterbim – dobrý kód navrhne každý trouba nebo konzultant. Každý netriviální dlouhý kód je spolehlivě dosti dobrý. Magie je v navržení kódu, který se dá rozumně dekódovat – složitost téhož obecně narůstá s mocninou délky.
V zájmu spravedlnosti je nutno říci, že se SOVA moc nepoužívá, protože konkurenční MAP (Maximum A Posteriori) algoritmus je lepší pro malé odstupy signálu od šumu.
Co s tím má do činění odnož NASA a CALTECHu, Mekka robotiky a kosmického výzkumu – bájná Laboratoř tryskových pohonů (Jet Propulsion Laboratory) v Pasadeně ? Inu, máte-li wattový vysílač na sondě někde za oběžnou drahou Saturnu, a tedy signál utopený pár desítek dB v šumu, Turbo kód se safra hodí.
Vítězné tažení Turbo kódu pokračovalo do 3GPP a 3GPP2 – šumové poměry jsou v CDMA hlavním limitujícím faktorem a Turbo kódy se objevily jako spása z nebes. Z hlediska balancování IPR (Intellectual Property Rights) to přineslo nejednu humornou situaci. Claude a Alain se projevili jako vlastenci a správu IPR k Turbo kódům obstarává France Telecom. Telco svět je plný paradoxů – GSM je obecně pokládáno za v podstatě francouzský vynález, leč při průzkumu IPR vedou na oplátku stopy povýtce za oceán k Motorole a TDMA.
Jako většina geniálních myšlenek je Turbo kodér (v nejpoužívanější PCCC – Parallel Concatenated Convolutional codes – verzi) velmi prostý.

Půvab Turbo kodéru je v tom, že produkuje kódová slova s velkou váhou. Má-li vstupní sekvence uk malou váhu, bude ji mít jak x1k, tak i parita y1k. Interleaver ovšem pravděpodobně přešupačí vstupní sekvenci tak, že výstupní slovo bude mít váhu vysokou. Což je pro kód ideální, protože slova s vysokou vahou vylepšují výkonnost dekodéru.
Dedódování je iterační proces, a tedy vyžaduje algoritmus s "měkkým" výstupem – MAP nebo SOVA.

Dekódování funguje tak, že vezmu xk a y1k z kanálu a vhodím je do prvního dekodéru. Výsledný odhad interleavuji – čímž se srovná formát s y2k – a spolu s týmž jej vpustím do druhého dekodéru. Výsledný odhad odinterleavuji a zacyklím zpátky do prvního dekodéru. A tak stále dokola.

Data se přemílají v cyklu ne nepodobném turbíně – odtud tedy Turbo kód.
Zpracování se ukončí na základě vhodného kriteria – nejlépe dosažením definovaného počtu otáček. Po řádném protočení se mašinka zastaví a výsledný odhad je "tvrdě" porovnán s prahovou úrovní – výsledek se vyplivne, turbína nasaje nová data a začne je zase přemílat.
Zazvonil zvonec a pohádce je konec – z Clauda a Alaina se stali otci zakladatelé.
Zapsal: kamojedov
30.06.2004, 23:59:00
Trackback
Trackback
Komentáře
Přidání komentáře...

