Jak miękko dekodować DQPSK?


9

Z powodzeniem dekoduję miękko D-BPSK, biorąc iloczyn iloczynu pozycji konstelacji symbolu i poprzedniego symbolu. Jeśli wynikiem jest> = 1, wówczas faza symbolu nie uległa zmianie, a bit ma wartość zero. Jeśli wynik wynosi <= -1, wówczas faza przesunęła się i wynik jest jeden. Pomiędzy -1 a 1 wynikiem jest miękkie 0 lub miękkie 1.

Nie mogę wymyślić, jak zrobić to samo z D-QPSK. Mogę wykorzystać tylko fazę, ale to odrzuca wiele informacji, które mogłyby pomóc soft-dekoderowi.

W tym dokumencie wyjaśniono, jak to zrobić, i podano wzór (10):

b1=Re{snsn−1∗},b2=Im{snsn−1∗}

Ale nie rozumiem tej notacji - co oznacza *przestawienie powyżej? Próbowałem tylko pomnożyć liczby zespolone i wziąć rzeczywiste i wymyślone części, ale to nie zadziałało.

Ponieważ konstelacja może się obracać, w jaki sposób można rozdzielić dwie osie?


Czy możesz dodać matematykę, której używasz do „tworzenia kropek konstelacji symbolu i poprzedniego symbolu”?
— user2718

Jasne, to: last_symbol.real cur_symbol.real + last_symbol.imag cur_symbol.imag
— Dan Sandberg

Niestety, bitów danych i nie można oszacować przy użyciu powyższego wzoru (10). W DQPSK jeden z i ma dużą wielkość i drugi jest niewielki. Który z nich ma dużą jasność, mówi ci, czy bity danych będą działać jako lub jeden z . Znak na dużą skalę mówi, który z jednej z dwóch opcji jest słuszna. Oznacza to, że duża jasność mówi ci, która para dibitów, a znak mówi ci, która z dwóch dibitów. b1b2 Re{snsn−1∗}Im{snsn−1∗}{00,11}{01,10}
— Dilip Sarwate

@DilipSarwate, otrzymałem powyższą formułę, ale musiałem wstępnie kodować dane w pozornie arbitralny sposób, aby uzyskać prawidłowe wyniki. Sposób, w jaki go wstępnie kodowałem, może, ale nie musi być równoważny: shf.de/communication/support/application_notes/getfile/230/269 Jeśli użyję tylko większej wielkości, nie otrzymam informacji odpowiednich do miękkiego dekodowania - ponieważ 00 i 11 są przeciwne (zamiast sąsiednich kodów) nie jest pomocne mierzenie miękkiej miary między nimi. Być może coś przeoczyłem? Czy powinienem zacząć nowe pytanie o prekodery DQPSK?
— Dan Sandberg,

Odpowiedzi:


5

Dwa kolejne symbole w demodulatorze to i gdzie oznacza wyjście gałęzi I, a wyjście gałęzi Q odbiornika. Ciężko decyzja urządzenie decyzja DBPSK uważa się pytanie:Z1=(X1,Y1)Z2=(X2,Y2)XY

Czy nowy symbol bliższy staremu symbolowi czy ujemnemu staremu symbolowi?Z2Z1 −Z1

i w ten sposób porównuje

(X2−X1)2+(Y2−Y1)2≷(X2+X1)2+(Y2+Y1)2

co można uprościć do porównania znaków na . Zauważ, że to w zasadzie pytanie⟨Z1,Z2⟩=X1X2+Y1Y2

Są dwa wektory i są skierowane w przybliżeniu w tym samym kierunku (w którym to przypadku produkt lub produkt wewnętrzny punkt jest dodatnia), albo w przybliżeniu przeciwnych kierunkach (w którym to przypadku produkt plamka jest ujemna)?Z1Z2

Trzeci punkt widzenia myśli i jako złożone ilościach i zadajeZ1Z2

Czy dodatni czy ujemny?Re(Z1Z2∗)=X1X2+Y1Y2

Urządzenie do podejmowania decyzji miękkich przekazuje po prostu dokładną wartość iloczynu iloczynu do dekodera decyzji miękkiej, który może zdecydować o kwantyzacji produktów kropek o bardzo dużej wielkości do trudnych decyzji i kontynuować gofrowanie nad resztą. Tak brzmi reguła decyzyjna zawarta w pytaniu PO, gdzie przyjmuje się, że wielkość przekracza w skali.1

W DQPSK kodowanie wykorzystuje jedną z dwóch konwencji:

  • faza sygnału jest opóźniona o zgodnie z tym, że przesyłany dibit to0,π/2,π,3π/200,01,11,10

  • faza sygnału jest przesunięta o zgodnie z tym, że przesyłany dwibit to0,π/2,π,3π/200,01,11,10

Należy zauważyć, że sygnał DQPSK nie jest sumą dwóch sygnałów DBPSK modulowanych na ortogonalnych nośnych fazowych, ale bity I i Q łącznie wpływają na fazę nośnej netto.

W celu demodulacji sygnału DQPSK urządzenie decyzyjne musi zapytać

Które z czterech symboli jest najbliżej?Z1,jZ1=(−Y1,X1),−Z1,−jZ1=(Y1,−X1)Z2

Tak więc oprócz porównania

(X2−X1)2+(Y2−Y1)2≷(X2+X1)2+(Y2+Y1)2

należy porównać

(X2+Y1)2+(Y2−X1)2≷(X2−Y1)2+(Y2+X1)2

który sprawdza się, patrząc na oprócz i podejmując decyzję zgodnie z tym, która ilość ma największą wielkość i znak największej wielkości. Szczegóły, w jaki sposób dekoder miękkiej decyzji korzysta ze statystyki decyzji określi, w jaki sposób liczby te są dalej masowane.Im(Z1Z2∗)Re(Z1Z2∗)Z1Z2∗=(Re(Z1Z2∗),Im(Z1Z2∗))


Dzięki za bardzo złożoną odpowiedź Dilip. Czy jest literówką? Czy powinien to być ? A czy notacja oznacza iloczyn punktowy? ⟨Z1,Z1⟩⟨Z1,Z2⟩⟨A,B⟩
— Dan Sandberg,

Hah, miałem na myśli bardzo dokładną odpowiedź! :)
— Dan Sandberg

Tak, to literówka i poprawiłem to. Notacja jest powszechnie używana do oznaczenia iloczynu wewnętrznego, którego iloczyn kropkowy jest szczególnym przypadkiem. ⟨A,B⟩
— Dilip Sarwate

jeśli popatrzę tylko na to, która ilość ma największą wielkość, wydaje mi się, że wyrzucam informacje. Na przykład część urojona określa, czy obrót wynosi 0 czy 180 stopni. Ale miękka miara między tymi dwoma nie ma znaczenia, ponieważ nie są to sąsiednie obroty (jak 0 i 90). Masz pomysł, jak uzyskać bardziej przydatne miękkie dekodowanie? Papier wydaje się wprowadzać w błąd, ponieważ twierdzi, że pierwszy bit jest częścią rzeczywistą, a drugi bit jest częścią urojoną.
— Dan Sandberg

3

Gwiazdka odnosi się do złożonego koniugatu. Jedną z typowych metod miękkiego dekodowania modulacji różnicowych jest technika opóźniania, koniugowania i mnożenia :

Si=DiDi−1∗

gdzie i są dwoma kolejnymi symbolami zakodowanymi w sposób a jest wynikiem w sposób dekodowany w sposób różnicowy. Ta ogólna formuła będzie działać dla DBPSK lub DQPSK (ponieważ sygnały BPSK są prawdziwe, koniugat po prostu zanika). Powstały strumień sygnału leży w tej samej konstelacji co wejście, więc możesz podejmować trudne decyzje, stosując te same reguły, co w przypadku normalnego BPSK lub QPSK.DiDi−1SiSi


Dzięki Jason. Próbowałem pomnożyć przez złożony koniugat przed opublikowaniem, ale nie wiedziałem, jak interpretować wynik. Ponieważ nie znam rotacji konstelacji, jak przejść do mapowania, jak wspomniałem w pytaniu dotyczącym DBPSK?
— Dan Sandberg

Spojrzałem na wyniki twojej sugestii i wygląda na to, że części wyobrażone odwzorowują obrót o 0 lub 180 stopni, podczas gdy rzeczywista część odwzorowuje o 90 lub 270 stopni. Gdy dane są czyste (bez szumów), jedna część (rzeczywista lub urojona) ma wartość 0, a druga -1 lub 1. W jaki sposób miękko dekodować to do bitów, gdy dane nie są czyste, a odwzorowania nie są tak ideał?
— Dan Sandberg

@JasonR Nie sądzę, że „leży na tej samej konstelacji co dane wejściowe”, a trudne decyzje dla DQPSK nie są zgodne z tymi samymi regułami, co trudne decyzje dla QPSK. Si=DiDi−1∗
— Dilip Sarwate

@DilipSarwate: Mógłbym być bardziej szczegółowy w mojej odpowiedzi, ale jeśli twój enkoder różnicowy ma funkcję generowania symbolu wyjściowego z fazą, która jest sumą faz jego dwóch poprzednich wejść, wtedy analityczna operacja na dekoderze jest w celu utworzenia różnic w fazie kolejno odbieranych kodowanych różnicowo symboli. Mógłbym to lepiej wyjaśnić, ale nie miałem okazji ponownie przyjrzeć się odpowiedzi i może nie, ponieważ twoja odpowiedź jest bardziej szczegółowa.
— Jason R

@JasonR Twoja odpowiedź jest wystarczająco szczegółowa, aby ją śledzić, a ja nie mam kłótni z obliczeniami statystyki decyzji. To, co kwestionuję, to dorozumiane twierdzenie, że dwa bity danych w DQPSK mogą być demodulowane niezależnie od siebie odpowiednio z i tak jak w zwykłym QPSK ze spójną demodulacją, bity danych to tylko znaki i . Re(Si)Im(Si)Re(Di)Im(Di)
— Dilip Sarwate
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.