Szeregowe połączone kody splotowe

Szeregowe połączone kody splotowe ( SCCC ) to klasa kodów z korekcją błędów w przód (FEC) bardzo odpowiednich do dekodowania turbo (iteracyjnego). Dane, które mają być transmitowane kanałem z zakłóceniami, mogą być najpierw zakodowane przy użyciu SCCC. Po odebraniu kodowanie może służyć do usunięcia ewentualnych błędów wprowadzonych podczas transmisji. Dekodowanie jest przeprowadzane przez wielokrotne dekodowanie i [de]przeplatanie odebranych symboli.

SCCC zazwyczaj zawierają kod wewnętrzny , kod zewnętrzny i element przeplotu łączącego. Cechą wyróżniającą SCCC jest użycie rekurencyjnego kodu splotowego jako kodu wewnętrznego. Rekurencyjny kod wewnętrzny zapewnia „wzmocnienie przeplotu” dla SCCC, co jest źródłem doskonałej wydajności tych kodów.

Analiza SCCC została częściowo zapoczątkowana wcześniejszym odkryciem kodów turbo w 1993 r. Ta analiza SCCC miała miejsce w latach 90. w serii publikacji NASA Jet Propulsion Laboratory (JPL). Badania zaoferowały SCCC jako formę połączonych kodów szeregowych podobnych do turbo, które 1) były dekodowalne iteracyjnie („turbo”) z rozsądną złożonością , oraz 2) dawały wydajność korekcji błędów porównywalną z kodami turbo.

Wcześniejsze formy kodów połączonych szeregowo zazwyczaj nie wykorzystywały rekurencyjnych kodów wewnętrznych. Ponadto kody składowe używane we wcześniejszych postaciach kodów połączonych szeregowo były generalnie zbyt złożone dla rozsądnego dekodowania soft-in-soft-out ( SISO ). Dekodowanie SISO jest uważane za niezbędne do dekodowania turbo.

Szeregowe połączone kody splotowe nie znalazły szerokiego zastosowania komercyjnego, chociaż zaproponowano je dla standardów komunikacyjnych, takich jak DVB-S2 . Niemniej jednak analiza SCCC dostarczyła wglądu w wydajność i granice wszystkich typów dekodowalnych iteracyjnych kodów, w tym kodów turbo i kodów LDPC . [ potrzebne źródło ]

Patent US 6,023,783 obejmuje niektóre formy SCCC. Patent wygasł 15 maja 2016 r.

Historia

Szeregowe połączone kody splotowe zostały po raz pierwszy przeanalizowane pod kątem dekodowania turbo w „Serial Concatenation of Interleaved Codes: Performance Analysis, Design, and Iterative Decoding” autorstwa S. Benedetto, D. Divsalar, G. Montorsi i F. Pollara. Ta analiza dostarczyła zestawu obserwacji do zaprojektowania wysokowydajnych, turbodekodowalnych, połączonych kodów szeregowych, które przypominały kody turbo . Jedną z tych obserwacji było to, że „użycie rekurencyjnego wewnętrznego kodera splotowego zawsze daje wzmocnienie przeplotu”. [ wymagane wyjaśnienie ] Kontrastuje to z użyciem kodów blokowych lub nierekurencyjnych kodów splotowych, które nie zapewniają porównywalnego wzmocnienia przeplotu.

Dodatkową analizę SCCC przeprowadzono w „Coding Theorems for 'Turbo-Like' Codes” autorstwa D. Divsalara, Hui Jina i Roberta J. McEliece'a. W tym artykule przeanalizowano kody powtórzeń-akumulacji (RA), które są szeregową konkatenacją wewnętrznego dwustanowego rekurencyjnego kodu splotowego (zwanego także „akumulatorem” lub kodem kontroli parzystości) z prostym kodem powtórzeń jako kodem zewnętrznym, z obydwoma kodami połączone przez przeplot. Wydajność kodów RA jest całkiem dobra, biorąc pod uwagę prostotę samych kodów składowych.

Kody SCCC były dalej analizowane w „Serial Turbo Trellis Coded Modulation with Rate-1 Inner Code”. W tym artykule SCCC zostały zaprojektowane do użytku ze schematami modulacji wyższego rzędu. Przedstawiono doskonale działające kody z wewnętrznymi i zewnętrznymi składowymi kodami splotowymi tylko dwóch lub czterech stanów.

Przykładowy koder

Ryc. 1 jest przykładem SCCC.

Rys. 1. Koder SCCC

Przykładowy koder składa się z 16-stanowego zewnętrznego kodu splotowego i 2-stanowego wewnętrznego kodu splotowego połączonego elementem przeplotu. Naturalna szybkość kodowania pokazanej konfiguracji wynosi 1/4, jednak wewnętrzne i/lub zewnętrzne kody mogą zostać przebite w celu uzyskania wyższych współczynników kodowania w razie potrzeby. Na przykład, ogólny współczynnik kodowania równy 1/2 można osiągnąć przez przebicie zewnętrznego kodu splotowego do współczynnika 3/4, a wewnętrznego kodu splotowego do współczynnika 2/3.

Rekurencyjny wewnętrzny kod splotowy jest preferowany do dekodowania turbo SCCC. Wewnętrzny kod może zostać przebity z szybkością nawet 1/1 przy rozsądnej wydajności.

Przykładowy dekoder

Przykład iteracyjnego dekodera SCCC.

Rys. 2. Dekoder SCCC

Dekoder SCCC zawiera dwa dekodery soft-in-soft-out (SISO) i układ przeplotu. Chociaż pokazane jako oddzielne jednostki, dwa dekodery SISO mogą współdzielić całość lub część swoich obwodów. Dekodowanie SISO może być wykonane w sposób szeregowy lub równoległy, lub w pewnej ich kombinacji. Dekodowanie SISO jest zwykle wykonywane przy użyciu dekoderów Maximum a posteriori (MAP) z wykorzystaniem algorytmu BCJR .

Wydajność

SCCC zapewniają wydajność porównywalną z innymi kodami dekodowanymi iteracyjnie, w tym kodami turbo i kodami LDPC . Charakteryzują się nieco gorszą wydajnością w środowiskach o niższym SNR (tj. gorszym obszarem wodospadu), ale nieco lepszą wydajnością w środowiskach o wyższym SNR (tj. niższym poziomem błędu).

Zobacz też

Linki zewnętrzne