A konvolúciós kód egy hibajavító kód , amelyben
A konvolúciós kód a fa- és rácskódok speciális esete .
1955 -ben L. M. Fink , aki akkoriban a Leningrádi Hírközlési Akadémia tanszékének vezetője volt, javasolta az első visszatérő kódot.
1959 -ben a nyugati szakember, Hegelberger ( Hegelbeger ), akinek fogalma sem volt a szovjet tudósok kódolási munkásságáról, 1959-ben "újrafelfedezte" a visszatérő kódot, és elnevezte magáról.
Fink a „Theory of Discrete Message Transmission” [1] című monográfiájában ezt írta: „Ebben a kódban a kódszimbólumok sorozata nincs külön kódkombinációkra osztva. A korrekciós szimbólumok az információs szimbólumfolyamban szerepelnek, így minden két információs szimbólum közé egy korrekciós szimbólum kerül. Az információs karaktereket a -n keresztül jelölve és a javító karaktereket a -n keresztül a következő karaktersorozatot kapjuk:
Az információs szimbólumokat a továbbított üzenet határozza meg, a javító szimbólumokat pedig a következő szabály szerint alakítják ki:
(1.1)
ahol a kódlépésnek ( ) nevezett tetszőleges egész szám. Nyilvánvaló, hogy ha valamilyen b i javító szimbólumot tévedésből kapunk, akkor a kapott sorozatban az (1.1) reláció nem teljesül . Az információs szimbólum hibás vétele esetén az (1.1) reláció nem érvényes két értékre , nevezetesen a for és for -re . Innen könnyen levezethető egy dekódolási hibajavító szabály. Az elfogadott kódsorozatban az (1.1) relációt mindegyikre ellenőrzi. Ha nem elégedett két értékkel ( és ), és egyidejűleg
(1.2)
akkor az információs elemet meg kell fordítani.
Nyilvánvaló, hogy a kód redundancia . Lehetővé teszi az összes hibásan fogadott karakter javítását, kivéve néhány rossz kombinációt. Tehát, ha , akkor helyes dekódolást biztosít, ha legalább három (és bizonyos esetekben kettő) helyesen vett szimbólum van két hibásan vett szimbólum között (az információt és a tesztszimbólumot is figyelembe veszik).
A nem rekurzív konvolúciós kód kódoló diagramja az 1. ábrán látható . Hosszúságú -ary shift regiszterekből áll . Egyes memóriacellák egyes (talán az összes) regiszterbemenetei és kimenetei több modulo adderhez csatlakoznak . Az összeadók száma nagyobb, mint a műszakregiszterek száma:
A kódoló minden órajelciklusánál információs szimbólumok kerülnek a bemenetére, amelyek a váltásregiszterekben tárolt szimbólumokkal együtt azon összeadók bemeneteire kerülnek, amelyekkel kapcsolat van. Az összeadás eredményeként átvitelre kész kódszimbólumok jönnek létre. Ekkor minden eltolási regiszterben eltolás történik: az összes cellát egy bittel jobbra toljuk, miközben a bal szélső cellákat kitöltjük bemeneti karakterekkel, a jobb szélső cellákat pedig töröljük. Ezt követően az ütem megismétlődik. A regiszterek kezdeti állapota előre ismert (általában nulla).
A bemutatás érthetősége érdekében leírjuk a konvolúciós kódolást a megfelelő kódolóeszköz működése szerint.
A konvolúciós kódoló olyan eszköz, amely általában k bemeneti információszimbólumot fogad minden egyes műveleti ciklusban, és n kimeneti szimbólumot ad ki minden egyes ciklus kimenetén. A számot relatív kódsebességnek nevezzük. k az információs szimbólumok száma, n a kommunikációs csatornára továbbított szimbólumok száma az információszimbólum kódolójához való megérkezés egy ciklusában. A vizsgált ciklus kimeneti szimbólumai m darab információszimbólumtól függenek, amelyek ebben és az előző ciklusban érkeznek, vagyis a konvolúciós kód kimeneti szimbólumait a bemeneti szimbólumok és az állapot, amely m - k korábbi információszimbólumtól függ, egyedileg határozza meg. . A konvolúciós kód fő elemei: shift regiszter, modulo 2 összeadó, kommutátor.
A shift regiszter egy dinamikus tárolóeszköz, amely a 0 és 1 bináris karaktereket tárolja. A kódmemória határozza meg az m trigger cellák számát a shift regiszterben. Amikor egy új információs karakter érkezik a shift regiszter bemenetére, a jobb szélső bitben tárolt karakter törlődik a regiszterből és visszaáll. A fennmaradó karakterek egy számjeggyel jobbra kerülnek, így a bal szélső számjegy felszabadul, ahová az új információs karakter érkezik.
A modulo 2 összeadó összeadja a hozzá érkező 1-es és 0-s szimbólumokat.A modulo 2 összeadási szabálya a következő: a bináris szimbólumok összege 0, ha a bemenetekre érkező szimbólumok között páros az egyesek száma, és 1-gyel egyenlő, ha ez a szám furcsa.
A kapcsoló szekvenciálisan olvassa be a bemeneteire érkező szimbólumokat, és a kimeneten beállítja a kódszimbólumok sorozatát a kommunikációs csatornába. A blokkkódokhoz hasonlóan a konvolúciós kódok szisztematikus és nem szisztematikus kódokra oszthatók.
A szisztematikus konvolúciós kód olyan kód, amely a kimeneti kódszimbólum-sorozatában tartalmazza az azt generáló információs szimbólumok sorozatát. Ellenkező esetben a kódot nem szisztematikusnak nevezik.
A konvolúciós kódolással az információsorozatok kimeneti és kódsorozatokká történő átalakítása folyamatosan történik. A bináris konvolúciós kódoló egy m bites eltolási regisztert és modulo 2 összeadókat tartalmaz, amelyek kódszimbólumokat generálnak a kimeneti sorozatban. Az összeadók bemenetei a regiszter bizonyos bitjeihez kapcsolódnak. A kimeneti kapcsoló határozza meg a kódszimbólumok kommunikációs csatornára való küldésének sorrendjét. Ezután a kódszerkezetet a következő jellemzők határozzák meg.
De! Ez a meghatározás állandó hosszúságú blokkkódokra érvényes. A konvolúciós kódok folytonosak, és sok minimális távolság jellemzi őket, amelyeket a kódsorozatok kezdeti szegmenseinek hossza határozza meg, amelyek között a minimális távolságot veszik. A feldolgozásra kapott L szegmenshosszúságú szimbólumok száma határozza meg a vevő oldalon a dekóderben lévő cellák számát.
Legyen a shift regiszterben m cella, vagyis a kódmemória egyenlő m-mel, a kapcsoló egy lekérdezési ciklust hajt végre, átadva az információs szimbólumok értékeit, ahol m a k többszöröse , míg egy ciklusban lekérdezi n -et 2 kódoló kimenet. Az egy bemeneti információs szimbólum változása által érintett kimeneti kódszimbólumok száma . Az I all értéket a kódkényszer teljes hosszának nevezzük .
Mivel egy adott konvolúciós kód korrekciós tulajdonságait a kódkényszer hossza és az eltolási regiszter és a modulo 2 összeadó ( XOR ) hivatkozásainak megválasztása határozza meg, ezért a konvolúciós kódoló szerkezetének megadásához szükséges adja meg, hogy a shift regiszter mely bitjei legyenek társítva az egyes modulo 2 összeadókhoz ( XOR ).
A j-edik összeadó modulo 2 kapcsolatát a j-edik generáló szekvencia írja le:
g j =(g j0 , g j1 ,g j2 ,…,g jm-1 ), (4.1)ahol (4.2)
A konvolúciós kódok jellemző paraméterei: k, n= 1,2,…,8; R=k/n=1/4,…,7/8; m=2,…,10.
Kényelmes konvolúciós kódot megadni polinomok generálásával, amelyeket a (4.1) képlet alakja határoz meg, analóg módon, ahogyan ez lineáris blokkciklikus kódoknál történik . [2]
A generátorpolinom teljes mértékben meghatározza a konvolúciós kód bináris kódolójának szerkezetét. Ellentétben a blokkkódokkal , amelyek mindegyikét csak egy generáló polinom írja le, a konvolúciós kódot több generáló polinom ír le. A konvolúciós kódot leíró polinomok számát az n kimeneti szimbólumok száma határozza meg . A kódoló bemenetére érkező információs szimbólumok sorozatát ábrázoljuk polinomként
ahol X i az eltolási regiszter i ciklusának késleltetési operátorának szimbóluma , és i = {0, 1} információs bináris szimbólumok. A kódolókapcsoló bemenetére, majd a kommunikációs csatornára belépő n kódszimbólum-sorozatot leíró polinomok alakja
ahol bináris kód szimbólumok vannak a kódoló kapcsoló j -edik bemenetén.
A konvolúciós kód j - edik generáló polinomja alakja Ráadásul a konvolúciós kód linearitása és az elfogadott jelölés miatt azt kapjuk, hogy .
Egy konvolúciós kód polinomok generálásával történő reprezentációjával konvolúciós kód adható meg a bináris vagy oktális formában írt polinomok generálásának együtthatóinak sorozataival. Az oktális jelölés kompaktabb, és akkor használatos, ha a kódoló eltolási regisztere hosszú.
Általános esetben a j -edik generáló polinom együtthatósorozatának alakja és egybeesik a kód generáló sorozatával (4.1). Ekkor, ha kódolt szimbólumok sorozata, és kódszimbólumok sorozata a kódolókapcsoló j -edik bemenetén, akkor bármelyik -edik időpontban megjelenő ( ) esetén írhatjuk
Így a konvolúciós kód kódolójának kimeneti sorozatának minden kódszimbólumát a kódolt információ és a generáló szekvencia konvolúciója határozza meg, amely meghatározza a konvolúciós kódok nevét. A konvolúciós kódok az iteratív vagy ismétlődő kódok speciális esetei.
Konvolúciós kódokat használnak a megbízható adatátvitelhez: videó, mobil kommunikáció, műholdas kommunikáció. A Reed-Solomon kóddal és más hasonló kódokkal együtt használatosak. A turbókódok feltalálása előtt ezek a tervek voltak a leghatékonyabbak, és kielégítik Shannon korlátait. Ezenkívül a 802.11a protokollban konvolúciós kódolást használnak a fizikai MAC rétegen, hogy egyenletes 0 és 1 eloszlást érjenek el, miután a jel áthalad a kódolón , aminek eredményeként a továbbított szimbólumok száma megduplázódik, és ezért kedvező vételt érhet el a vevőkészüléken.
Szótárak és enciklopédiák |
---|