Buletyn WAT Vol. LV, Numer specjalny, 2006 Rozpoznawane kodów splotowych LESZEK NOWOSIELSKI, BARTOSZ ORLIŃSKI Wojskowa Akadema Technczna, Wydzał Elektronk, Instytut Telekomunkacj, 00-908 Warszawa, ul. S. Kalskego 2 Streszczene. Na wstępe referatu przedstawono krótk ops dekodowana kodów splotowych za pomocą algorytmu Vterbego. Przedstawono metodę automatycznego rozpoznawana rodzaju kodu splotowego, bazującą na montorowanu wartośc metryk śceżek podczas pracy dekodera Vterbego. Przedstawono wynk pomaru efektywnośc pracy zaproponowanego algorytmu rozpoznawana kodów splotowych uzyskane metodą symulacj komputerowych. Słowa kluczowe: telekomunkacja, kanały radowe, rozpoznawane, kody splotowe, algorytm Vterbego Symbole UKD: 621.39 1. Wstęp W określonych aplkacjach wymagane jest automatyczne rozpoznawane, demodulowane dekodowane wykorzystywanych w systemach radowych protokołów transmsyjnych. Każdy radowy system transmsyjny cechuje sę określonym, specyfcznym tylko dla nego parametram transmsj. Z punktu wdzena operatora urządzena do automatycznego rozpoznawana dekodowana protokołów radowych ważne jest, aby urządzene to w sposób automatyczny rozpoznało parametry cechujące dany protokół transmsyjny. Po właścwym rozpoznanu zastosowanego systemu transmsj danych urządzene pownno przejść do procesu dekodowana przekazywanej nformacj zgodne z regułam specyfcznym dla rozpoznanego systemu transmsyjnego. Jednym z elementów składowych urządzena do automatycznego rozpoznawana dekodowana protokołów radowych jest blok realzujący rozpoznawane kodów splotowych wykorzystywanych do korekcyjnego zabezpeczena transmsj danych.
94 L. Nowoselsk, B. Orlńsk W ponższym artykule przedstawono propozycję metody automatycznego rozpoznawana rodzaju kodu splotowego. 2. Kody splotowe ch dekodowane O dużej popularnośc kodów splotowych śwadczy fakt produkcj scalonych koderów dekoderów kodów splotowych przez take frmy, jak QALCOMM czy STANFORD TELECOM. Wyroby te chętne wykorzystuje sę w systemach korekcj błędów urządzeń radokomunkacyjnych. Celowe jest węc zamplementowane w urządzenach do automatycznego rozpoznawana dekodowana radowych protokołów transmsyjnych algorytmu, który pozwol na automatyczne rozpoznawane tego rodzaju kodów. O tym, że kody splotowe stały sę w ostatnch latach standardem śwadczy ch zastnene w norme wojskowej dotyczącej modemów KF. Zbór bnarnych kodów splotowych posadających maksymalny odstęp swobodny d free jest dostępny w lteraturze fachowej. Optymalną metodą dekodowana kodów splotowych mnmalzującą prawdopodobeństwo błędu decyzj dekodera jest dekodowane zgodne z regułą najwększego prawdopodobeństwa, przy założenu, że wszystke wadomośc są jednakowo prawdopodobne. Regułę tę w przypadku kodów splotowych realzuje algorytm Vterbego. Algorytm realzuje ten proces dekodowana przez wybór śceżk w wykrese kratowym, opsującym dzałane kodera, dla której cąg zakodowany różn sę od cągu odebranego na najmnejszej lczbe mejsc na śceżce. Algorytm jest wykonywany przez oblczane metryk dla każdej możlwej śceżk w wykrese kratowym. Metryka dla konkretnej śceżk jest zdefnowana odległoścą Hammnga mędzy cągem kodowym wyznaczonym przez daną śceżkę a cągem odebranym. Tak węc dla każdego węzła kraty algorytm porównuje śceżk wchodzące do węzła. Wyberana jest śceżka o najmnejszej metryce. Oblczena są powtarzane dla każdego pozomu w wykrese kratowym w zakrese pamęc dekodera. Śceżk wybrane przez algorytm noszą nazwę śceżek ocalonych. W trakce pracy dekoder prowadz przez wykres kratowy tyle śceżek, le stanów posada koder. 3. Automatyczne rozpoznawane kodów splotowych 3.1. Algorytm automatycznego rozpoznawana kodów splotowych Warunkem poprawnej pracy dekodera Vterbego kodu splotowego jest znajomość po strone odborczej rodzaju kodu wykorzystywanego do zakodowana odberanej sekwencj cągów kodowych. Jeśl zna sę rodzaj kodu, można w sposób prawdłowy określć postać wykresu kratowego kodera, na podstawe którego dekoder Vterbego będze dekodował napływający strumeń cągów kodowych.
Rozpoznawane kodów splotowych 95 Do określena postac wykresu kratowego potrzebna jest znajomość następujących parametrów kodera kodu splotowego: lość komórek rejestru przesuwnego kodera m; lość btów nformacyjnych podawanych na wejśce kodera na jednostkę czasu k; lość btów kodowych otrzymywanych na wyjścu kodera na jednostkę czasu n; postać wektora połączeń kodera g. Aby dekoder Vterbego dzałał poprawne, koneczne jest także uzyskane synchronzacj z napływającym strumenem cągów kodowych. Metoda automatycznego rozpoznawana rodzaju kodu polega na montorowanu wartośc przyrostu metryk śceżek, na odcnku o długośc l gałęz wykresu kratowego, które przeżyły podczas pracy dekodera Vterbego. Jeżel wartość metryk j-tej śceżk w -tym (-l)-tym kroku dekodowana oznaczymy odpowedno przez ( j ) ( j), to wówczas przyrost wartośc metryk -tej śceżk przypadający na l l gałęz jest opsany wzorem =. (1) ( j) ( j) ( j) l, l W przypadku gdy dekoder Vterbego wylcza przyrosty metryk śceżek bazując na wykrese kratowym odpowadającym koderow splotowemu, który został użyty do wygenerowana odberanej sekwencj cągów kodowych, przyrosty metryk odpowadające jednej ze śceżek będą mały wartość dużo wększą od przyrostów odpowadających pozostałym śceżkom, które przeżyły podczas pracy dekodera. Wartość przyrostu metryk domnującej śceżk pownna wynosć = l n, (2) ( j) l, gdze: l montorowana lczba gałęz wykresu kratowego kodera; n lczba btów kodowych odpowadająca jednej gałęz wykresu kratowego kodera. W przypadku gdy dekoder Vterbego wylcza przyrosty metryk śceżek bazując na wykrese kratowym neodpowadającym koderow splotowemu, który został użyty do wygenerowana odberanej sekwencj cągów kodowych, przyrosty metryk wszystkch śceżek, które przeżyły podczas pracy dekodera Vterbego będą mały ( j) małą wartość l,. Dla przypadku gdy dekoder Vterbego wylcza przyrosty metryk śceżek bazując na wykrese kratowym odpowadającym koderow splotowemu, który został użyty do wygenerowana odberanej sekwencj cągów kodowych, oraz gdy sekwencja cągów kodowych zostane przesłana przez kanał zarnsty, w którym występują błędy nezależne z prawdopodobeństwem p, sytuacja opsana powyżej powtórzy
96 L. Nowoselsk, B. Orlńsk sę, z tą różncą, że wartość przyrostu metryk śceżk domnującej będze mnejsza od wartośc określonej zależnoścą (2). Różnca pomędzy tym wartoścam będze tym wększa, m wększe będze prawdopodobeństwo występowana błędów w kanale zarnstym. Opsana powyżej zależność przyrostu metryk śceżek, wylczanych podczas pracy dekodera Vterbego, od rodzaju wykresu kratowego (rodzaju kodu), na baze którego są one wylczane może zostać wykorzystana do automatycznego rozpoznawana kodu splotowego, który został wykorzystany do zakodowana odberanych sekwencj cągów kodowych. Procedura wykrywana kodu splotowego wskaże dopasowane określonego wykresu kratowego (kodu splotowego) do odberanej sekwencj cągów kodowych gdy l, t dla jednej ze śceżek, które przeżyły, gdze t jest wartoścą progową, której wartość została dobrana dla określonego kanału. Wartość parametru t pownna być mnejsza od l n. Dolna granca wartośc parametru t zależy od wartośc prawdopodobeństwa występowana błędów w kanale zarnstym. Im wększa jest wartość prawdopodobeństwa występowana błędów w kanale zarnstym, tym mnejsza pownna być wartość t. Zbór rodzaju kodów splotowych testowanych podczas pracy procedury rozpoznawana kodu splotowego może być ogranczony do kodów, których kodery dekodery są produkowane w postac układów scalonych, poneważ te kody występują najczęścej w praktyce. Dekoder kodu splotowego może dzałać prawdłowo tylko przy założenu prawdłowo dzałającej synchronzacj. Nepoprawne skojarzene odberanych btów z btam przyporządkowanym odpowednm gałęzom w wykrese kratowym kodera spowodowałoby bardzo dużą lczbę błędów. Aby tego unknąć, stosowane są w praktyce złożone układy nadzorujące utrzymujące stan synchronzmu dekodera z napływającym strumenem symbol odebranych. Prostym sposobem uzyskwana synchronzacj jest montorowane wartośc przyrostu metryk śceżek, które przeżyły podczas pracy dekodera Vterbego. Realzuje sę to w sposób podobny jak opsane powyżej rozpoznawane kodów splotowych, z tą różncą, że ne zmena sę tutaj postac wykresu kratowego, natomast przesuwa sę cyklczne sekwencję odebranych symbol kodowych o jeden bt w stosunku do btów odpowadających poszczególnym gałęzom wykresu kratowego kodera. Po każdym takm przesunęcu dokonuje sę sprawdzena wartośc przyrostu metryk śceżek, na odcnku o długośc l gałęz wykresu kratowego, które przeżyły podczas pracy dekodera Vterbego. W przypadku synchronzacj odebranej sekwencj cągów kodowych z cągam kodowym odpowadającym poszczególnym gałęzom wykresu kratowego kodera, przyrosty metryk odpowadające jednej ze śceżek będą posadły wartość dużo wększą od przyrostów odpowadających pozostałym śceżkom, które mały podczas pracy dekodera. Wartość przyrostu metryk domnującej śceżk, w przypadku odebrana nezakłóconej sekwencj kodowej oraz w przypadku uzyskana synchronzacj jest określona zależnoścą (2).
Rozpoznawane kodów splotowych 97 Algorytm wyżej opsanej procedury automatycznego rozpoznawana kodów splotowych przedstawono na rysunku 1. 3.2. Ops eksperymentu symulacyjnego automatycznego rozpoznawana kodów splotowych W celu przebadana możlwośc automatycznego rozpoznawana kodów splotowych metodą montorowana wartośc przyrostu metryk śceżek, które przeżyły podczas pracy dekodera Vterbego, przeprowadzona została symulacja komputerowa pracy odpowednego kanału kodowego. W wynku przeprowadzonej symulacj komputerowej otrzymano dane statystyczne, które potwerdzły możlwość automatycznej detekcj rodzaju kodu splotowego tą metodą. We wszystkch symulacjach do generacj błędów powstałych w kanale zarnstym posłużono sę modelem kanału z błędam nezależnym BSC. Program symulacyjny został napsany w języku C++. W celu przebadana możlwośc wykrywana rodzaju kodu metodą montorowana wartośc przyrostu metryk śceżek, podczas pracy dekodera Vterbego przeprowadzono szereg symulacj komputerowych, w wynku których otrzymano dane statystyczne, które wykorzystano do oceny możlwośc wykrywana rodzaju kodu splotowego. W trakce eksperymentu symulacyjnego przebadano możlwość wykrywana kodów splotowych o stope kodu Rc = 1/2 Rc = 1/3. Jako kod wykrywany o stope kodu Rc = 1/2 został wykorzystany kod zalecany przez normę wojskową MIL-STD- -188-110A o parametrach: lczba komórek rejestru przesuwnego kodera m = 7; lczba sumatorów modulo-2 wchodzących w skład kodera n = 2; wektory połączeń kodera zapsane w kodze bnarnym [1101101], [1001111]. Jako kod wykrywany o stope kodu Rc = 1/3 został wykorzystany kod, który jest standardem przemysłowym o parametrach: lczba komórek rejestru przesuwnego kodera m = 7; lczba sumatorów modulo-2 wchodzących w skład kodera n = 3; wektory połączeń kodera zapsane w kodze bnarnym [1101101], [1001111], [1010011]. Zgodne z algorytmem pracy programu symulacyjnego, na początku każdej symulacj kodowano cąg bnarny danych wejścowych za pomocą jednego z kodów wymenonych powyżej. Następne do sekwencj cągów kodowych otrzymanych z wyjśca kodera wprowadzano błędy wygenerowane przez procedurę symulującą pracę kanału zarnstego. Zakłóconą sekwencję cągów kodowych poddawano następne obróbce przez procedurę automatycznego rozpoznawana kodu splotowego (rys. 1). Symulację przeprowadzono metodą Monte Carlo, w wynku której otrzymano średną wartość przyrostu metryk śceżk przypadającą na l gałęz wykresu
98 L. Nowoselsk, B. Orlńsk Rys. 1. Algorytm automatycznego rozpoznawana kodów splotowych
Rozpoznawane kodów splotowych 99 kratowego kodera oraz odchylene standardowe wartośc przyrostu metryk śceżk :. W wynku symulacj otrzymano wartośc tych parametrów w funkcj: rodzaju testowanego kodu (rodzaj kodu dla uproszczena zapsu zaznaczano lczbą komórek rejestru przesuwnego kodera m); lczby l gałęz wykresu kratowego służących do oceny przyrostu metryk śceżk; prawdopodobeństwa wystąpena błędu w kanale zarnstym p; zawartośc nformacyjnej kodu. Na rysunku 2 przedstawono wartość przyrostu metryk śceżk przypadającą na l = 5 gałęz wykresu kratowego kodera w funkcj rodzaju testowanego kodu, oznaczanego lczbą komórek rejestru przesuwnego kodera m, dla kodów o zawartośc nformacyjnej R = 1/3. Z tego wykresu wdać, że w przypadku gdy testowany przez procedurę rozpoznawana kod jest zgodny z kodem zastosowanym do zakodowana odberanej sekwencj kodowej wartość parametru przyjmuje wartość dużo wększą od wartośc przypadających dla pozostałych testowanych kodów splotowych. Różnca ta jest tym wększa, m mnejsze jest prawdopodobeństwo wystąpena błędu w kanale zarnstym p. W przypadku nezakłóconej sekwencj ( j) kodowej (p = 0) wartość przyrostu metryk śceżk wynos = l n = 5 3 = 15. l, Rys. 2. Wartość przyrostu metryk śceżk jej odchylene standardowe przypadające na l = 5 gałęz wykresu kratowego kodera w funkcj lczby komórek rejestru przesuwnego kodera m dla kodów o stope kodu R = 1/3
100 L. Nowoselsk, B. Orlńsk Na rysunku 2 przedstawono także odchylene standardowe wartośc przyrostu metryk śceżk :. Wartość odchylena standardowego w przypadku kodów nezgodnych z kodem zastosowanym do zakodowana odberanej sekwencj kodowej jest w przyblżenu stała. W przypadku zgodnośc testowanego kodu z kodem odberanym wartość odchylena standardowego maleje w funkcj zmnejszających sę wartośc prawdopodobeństwa wystąpena błędu w kanale zarnstym p. Na rysunku 3 przedstawono wartość przyrostu metryk śceżk przypadającą na l = 5 gałęz wykresu kratowego kodera oraz jej odchylene standardowe w funkcj lczby komórek rejestru przesuwnego kodera m dla kodów o zawartośc nformacyjnej R = 1/2. Z tego wykresu wynka, że w przypadku gdy testowany przez procedurę rozpoznawana kod jest zgodny z kodem zastosowanym do zakodowana odberanej sekwencj kodowej, wartość parametru przyjmuje wartość dużo wększą od wartośc przypadających dla pozostałych testowanych kodów splotowych. Wartość maksymalna parametru dla kodu o zawartośc nformacyjnej ( j) R = 1/2 l = 5 wynos l, = l n = 5 2 = 10. W przypadku zwększena wartośc parametru l wartość przyrostu metryk śceżk równeż ulegne zwększenu. Można to zauważyć na rysunku 4. Rys. 3. Wartość przyrostu metryk śceżk jej odchylene standardowe przypadające na l = 5 gałęz wykresu kratowego kodera w funkcj lczby komórek rejestru przesuwnego kodera m dla kodów o stope kodu R = 1/2
Rozpoznawane kodów splotowych 101 Rys. 4. Wartość przyrostu metryk śceżk jej odchylene standardowe przypadające na l = 10 gałęz wykresu kratowego kodera w funkcj lczby komórek rejestru przesuwnego kodera m dla kodów o stope kodu R = 1/3 4. Wnosk Zaproponowany w artykule algorytm automatycznego rozpoznawana kodów splotowych, polegający na montorowanu wartośc przyrostu metryk śceżek podczas pracy dekodera Vterbego, posada następujące cechy: wraz ze wzrostem lczby l gałęz wykresu kratowego, służących do oceny przyrostu metryk śceżk, rośne różnca pomędzy przyrostem wartośc metryk śceżk dla kodu dopasowanego a przyrostem wartośc metryk śceżk dla kodów nedopasowanych. Dla dużych wartośc parametru l łatwej jest węc odróżnć kod dopasowany od kodu nedopasowanego; wraz ze wzrostem wartośc parametru l rośne opóźnene wprowadzane przez układ automatycznego rozpoznawana kodów splotowych; wartość progowa t przyrostu metryk śceżk, przypadająca na l gałęz wykresu kratowego kodera, służąca do detekcj rodzaju kodu pownna być mnejsza od l n. Dolna granca wartośc parametru t zależy od wartośc prawdopodobeństwa występowana błędów w kanale zarnstym. Im
102 L. Nowoselsk, B. Orlńsk wększa jest wartość prawdopodobeństwa występowana błędów w kanale zarnstym, tym mnejsza pownna być wartość t; w celu zmnejszena czasu potrzebnego na rozpoznane kodu splotowego należy ogranczyć lczbę testowanych kodów splotowych do nezbędnego mnmum (kodów najczęścej spotykanych w praktyce); dla poprawnego funkcjonowana procedury rozpoznawana kodów splotowych koneczne jest uzyskane poelementowej synchronzacj z odebraną sekwencją cągów kodowych. Artykuł wpłynął do redakcj 19.07.2006 r. Zweryfkowaną wersję po recenzj otrzymano 18.09.2006 r. LITERATURA [1] L. Nowoselsk, Efektywność kodów splotowych w kanałach zakresu krótkofalowego, rozprawa doktorska, WAT, 1998. [2] Norma MIL-STD-188-110A. [3] L. H. Charles Lee, Convolutonal codng Fundamentals and applcatons, 1997. [4] L. Nowoselsk, Komputerowa symulacja pracy kanału kodowego zawerającego koder dekoder kodu splotowego. Systemy łącznośc nformatyk na potrzeby obrony bezpeczeństwa RP, KNSŁ-96, Zegrze 2-4 paźdzernka 1996. L. NOWOSIELSKI, B. ORLIŃSKI Recognton of convoluton codes Abstract. At frst, short descrpton of Vterb algorthm for convoluton codes decodng s gven. Next, a method of automatc convoluton codes recognton, based on montorng of the survvng paths metrcs of Vterb algorthm, and ts performance are presented. Performance of the proposed algorthm for automatc convoluton codes recognton was evaluated usng computer smulaton. Keywords: telecommuncaton, rado channels, recognton, convoluton codes, Vterb algorthm Unversal Decmal Classfcaton: 621.39