18. Co to jest algorytm SOVA? Jak otrzymujemy miękką informację o
Transkrypt
18. Co to jest algorytm SOVA? Jak otrzymujemy miękką informację o
18. Co to jest algorytm SOVA? Jak otrzymujemy miękką informację o wiarygodności decyzji? SOVA - Soft Output Viterbi Algorithm – czyli algorytm Viterbiego z miękkim wyjściem. Istnieje kilka odmian algorytmu Viterbiego które pozwalają na uzyskanie miękkiej decyzji o prawidłowości podjętej decyzji (algorytm podejmuje decyzje odnośnie jakiegoś bitu – że był on równy 0 lub 1 i chcemy wiedzieć na ile była to pewna, wiarygodna decyzja), są to algorytmy: 1. MAP 2. Max log MAP 3. i właśnie SOVA Idee algorytmu SOVA ilustruje rysunek (patrz ksero 6B): Mamy ścieżkę która została wybrana – ścieżkę ML – Maximum Likelihood, oczywiście na wykresie kratowym są także ścieżki które zostały odrzucone. Symbole Δ oznaczają różnicę między odrzuconą a zaakceptowaną ścieżką. Nasza wiarygodność to minimum z delt: (bierzemy pod uwagę tylko te ścieżki łące się ze ścieżką ML, które gdyby zostały wybrane dawały by inną wartość poszukiwanego w danej chwili bitu – uk, te ścieżki które łączą się ze ścieżką ML i ich wybór powodował by tą samą decyzje odnośnie bitu uk nie mają wpływu na wiarygodność decyzji dotyczącej uk) Jeśli różnica między metrykami , Δ jest duża to nasza decyzja jest wiarygodna. Źródło: ksero 6B 3. Dekoder Ogólna idea dekodowania: Wykorzystujemy informację o wiarygodności decyzji wstępnych uzyskiwanych w jednym dekoderze składowym do poprawy wiarygodności decyzji w drugim dekoderze składowym. Informacja z drugiego dekodera trafia ponownie do pierwszego dekodera, przyczyniając się do dalszej poprawy jakości decyzji. Proces ten odbywa się wielokrotnie w pętli zamkniętej podobnie jak w silniku z turbodoładowaniem, stąd nazwa turbokody dla tego rodzaju struktury kodowania. („Podstawy cyfrowych systemów telekomunikacyjnych”). P(u,I) są początkowo równe 1/4 jednak P(u,O) nie są już równe 1/4 , maja one inne wartości, uzyskaliśmy je analizując wykres kratowy w elemencie SISO. Moduł SISO - Soft Input Soft Output to dekoder z miękkim wyjściem i miękkim wyjściem. Do zrozumienia zasady działania modułu SISO przydaje się pomocniczy schematyczny rysunek (warto porównać oznaczenia z rysunkiem 2b): Moduł SISO wymaga na wejściu miękkich wartości, na wyjściu podobnie, zamiast zwracać 0 lub 1 podaje dokładniejszą informację, pozwalająca określić wiarygodność danej decyzji. W dekoderze turbokodu (rysunek 3.) sygnał odebrany jest podawany na pierwszy dekoder SISO (Inner SISO), który na swoim wyjściu zwraca miękką decyzję, jest ona wykorzystywana przez drugi dekoder SISO (Outer SISO), na jej podstawie podejmuje on decyzje, którą w kolejnym kroku, w kolejnej iteracji wykorzystuje pierwszy dekoder SISO (Inner SISO). W Inner SISO mamy wykres kratowy o odpowiedni dla Inner Encoder (R = 2/3), w Outer SISO jest wykres kratowy odpowiedni dla Outer Encoder (R = 1/2) Im więcej iteracji tym mniejsze prawdopodobieństwo błędu przy danym SNR, choć powyżej 10 iteracji zysk przestaje być znaczący. W module SISO zaimplementowany jest algorytm MAP, Max log MAP czy też SOVA. Na wykładzie zakładaliśmy że jest to algorytm Max log MAP.W algorytmie Max log MAP (omówionym w pytaniu 17) mieliśmy d2, tu zamiast d2 bierzemy iloczyn prawdopodobieństw P(u) i P(c) (zamiast dodawać odległości bierzemy iloczyn prawdopodobieństw), najlepsza ścieżka to ścieżka o najwyższym prawdopodobieństwie, zgodnie z zasadą algorytmu Max log MAP wykonujemy algorytm Viterbiego od strony lewej do prawej i od prawej do lewej... (szczegóły pytanie 17) wybieramy najbardziej prawdopodobną ścieżkę która w danym odstępie kraty odpowiada konkretnemu bitowi, bitom obliczamy w ten sposób P(00), P(01), P(10), P(11), normalizujemy do jedynki (bo suma prawdopodobieństw musi dać 1) i tak obliczamy P(u,I) Źródła: Podstawy cyfrowych systemów telekomunikacyjnych, wykłady ZTT