SzPW Lab 4 Suplement

Transkrypt

SzPW Lab 4 Suplement
Laboratorium Systemów z Poszerzonym Widmem
ćw. 4
System transmisyjny DS-SS z kanałem Rayleigha
(instrukcja uzupełniona)
1.
Model kanału wielodrogowego
x(t)
r(t)
Rys. 1. Model kanału wielodrogowego
Kanał wielodrogowy modelowany jest jako linia opóźniająca z odczepami. Każda ze ścieżek charakteryzuje się w
dowolnej chwili czasu określoną wartością współczynnika zaniku ck(t), przez który mnożone są próbki transmitowanego
sygnału. Zespolone współczynniki zaników powodują obrót fazy sygnałów, a jak pamiętamy – w przypadku modulacji
BPSK to właśnie w fazie sygnału cosinus (0 lub π) „tkwi” informacja o wartości chipu odwzorowanego w symbol BPSK.
Na rys. 2. pokazano punkty konstelacji dla modulacji BPSK.
-0,8+j0,61
-1
1
1
1
1,012
Rys. 2. Punkty konstelacji BPSK
Rys. 3. Obrót fazy sygnału
Rys. 4. Kompensacja przesunięcia fazy
W wyniku rozpraszania sygnału transmitowanego dowolną ścieżką i zjawiska Dopplera, jego położenie na konstelacji
może znacząco różnić się od „wzorca”. Czerwony punkt na rys. 3. obrazuje położenie na konstelacji próbki symbolu „1”
na skutek zaniku wprowadzanego na danej ścieżce (-0,8+j0,61). Zauważamy, że odebrany punkt znajduje się w lewej
półpłaszczyźnie układu współrzędnych zespolonych, co sugeruje, że nadajnik transmitował symbol „-1”. Jednak dzięki
estymacji stanu zaników dla poszczególnych ścieżek istnieje możliwość redukcji przesunięcia fazy, wykorzystując
równość c⋅c*=|c|2. Na rys. 4. czerwonym punktem zaznaczono sygnał uzyskany po wymnożeniu próbki sygnału
odebranego przez wartość sprzężoną do współczynnika zaniku. Należy zauważyć, że przesunięcie fazy zostało
zrekompensowane. Oprócz zaników sygnał zbiorczy obarczony jest także szumem addytywnym v(t).
2.
Odbiornik RAKE
Do odbioru sygnału propagującego wielodrogowo wykorzystywany jest odbiornik RAKE. W optymalnym przypadku ma
on tyle gałęzi („palców”), ile ścieżek sygnału. Ogólny model odbiornika RAKE pokazano na rys. 5. W każdej gałęzi
odbiornika RAKE sygnał zbiorczy r(t) jest korelowany z sekwencją rozpraszającą podawaną z opóźnieniem takim
samym, jak opóźnienie wprowadzane przez poszczególne ścieżki propagacji sygnału. Jeżeli sekwencja rozpraszająca
składa się z symboli bipolarnych, znak sprzężenia w u*(t) można pominąć. Wobec dobrych własności autokorelacyjnych
stosowanej m-sekwencji, z sygnału zbiorczego można wyodrębnić sygnał transmitowany aktualnie rozpatrywaną ścieżką.
W wyniku mnożenia przez współczynniki ck*(t) rekompensowane są przesunięcia fazy.
Można przekonać się, że w warunkach postawionych w zadaniu stan kanału nie zmienia się istotnie w czasie transmisji
ramki np. 30 chipów przypadających na jeden bit (patrz rys. 7). W praktyce aproksymuje się więc tylko jeden
współczynnik zaniku na ramkę i wówczas mnożenia przez ck* można przenieść poza operację korelacji (takie same
współczynniki dla wszystkich chipów w ramce). Wtedy możliwe jest zastosowanie zmodyfikowanej postaci odbiornika
RAKE, którą pokazano na rys. 6.
T1
c1*(t)
TM-1
c2*(t)
cM*(t)
Rys. 5. RAKE jako optymalny odbiornik wielościeżkowy
TM-1
c M*
c 2*
T1
c 1*
Rys. 6. Zmodyfikowany odbiornik RAKE
Rys. 7. Trajektorie procesu losowego współczynnika |ck| dla dwóch ścieżek transmisji: bezpośredniej i opóźnionej o 2 próbki
3. Wskazówki praktyczne dotyczące realizacji zadań
Należy zwrócić uwagę, że „transmisja” kolejnych próbek ramki powinna odbywać się szeregowo ze względu na postać
wyników zwracanych przez funkcję fadchan (patrz rys. 8), a zatem na wejście kanału podaje się wektor, a nie macierz.
Pr1
< Bit 1 >
Pr2 … Pr30
Pr31
< Bit 2 >
Pr32 …
Pr50
Pr51
< Bit 3 >
Pr52 …
Pr70
………………
… … … …
…
< Bit N >
… … Pr(L)
Rys. 8. Szeregowa transmisja próbek
W trakcie badań należy stosować odbiornik RAKE w optymalnej postaci (rys. 5), tzn. wykorzystywać estymaty zaników
dla każdej próbki. Funkcja fadchan zwraca następujące wyniki: out_sampl – wektor L próbek na wyjściu z kanału
oraz out_coeff – macierz L współczynników zaników poszczególnych ścieżek. Współczynniki ścieżek (1), (2) i (3)
znajdują się w kolejnych wierszach. Przykładowo, jeżeli kanał jest trzydrogowy z opóźnieniami ścieżek odpowiednio 0, 2
i 4 próbki):
out_sampl
r(1)
r(2)
r(3)
r(4)
r(5)
…
r(L)
c1(1)
c2(1)
c3(1)
c1(2)
c2(2)
c3(2)
c1(3)
c2(3)
c3(3)
out_coeff
c1(4)
c1(5)
c2(4)
c2(5)
c3(4)
c3(5)
…
…
…
c1(L)
c2(L)
c3(L)
Kolorem szarym zaznaczono współczynniki zerowe. Zera są związane z opóźnieniami poszczególnych ścieżek: ścieżki nr
2 o dwie próbki, ścieżki nr 3 o cztery próbki.
W porównaniu ze schematem z rys. 5 zaleca się wprowadzenie następujących modyfikacji: zamiast opóźniać sekwencję
rozpraszającą dla wykonania korelacji z sygnałami pochodzącymi ze ścieżek wprowadzających opóźnienie, można
„przesunąć” w lewo wektory iloczynów (po elementach): r⋅c2 o dwie próbki oraz r⋅c3 o cztery próbki i wówczas dla
wszystkich ścieżek stosować sekwencję rozpraszającą w tej samej fazie. W Matlabie operacja przesunięcia będzie
dokonana poprzez usunięcie zer z początku wektora (przykładowo dla dwóch zer x=x(3:length(x)) ) oraz dopisanie ich
na końcu dla zachowania odpowiedniej długości wektora podczas korelacji z sekwencją rozpraszającą ( x=[x 0 0] ).
Podczas korelacji (mnożenie próbek przez sekwencję rozpraszającą i wyciągnięcie sumy za okres jednego bitu) w każdej
gałęzi wyznaczane są „miękkie” decyzje dotyczące poszczególnych bitów. Zwrócić trzeba uwagę, że metryki te są
liczbami zespolonymi, gdyż szum addytywny oraz sygnały docierające w innej fazie sekwencji rozpraszającej po
wymnożeniu przez liczbę sprzężoną do ck(t) pozostają liczbami zespolonymi. Metryki wygenerowane przez poszczególne
gałęzie odbiornika RAKE są sumowane (blok „Processing” na rys. 5). Zwracamy uwagę, że składowa urojona sumy
wyraża obecnie tylko szum; układ decyzyjny bierze pod uwagę tylko składowe rzeczywiste.
Zad. 41.
Zbudować model systemu transmitującego w kanale z zanikami Rayleigha z odbiornikiem typu RAKE. Do
symulacji kanału Rayleigha należy wykorzystać funkcję
function [out_samp, out_coeff] = fadchan (in_samp, snr, p_coeff, p_delay).
Argumentami są kolejno: wektor próbek sygnału na wejściu kanału, stosunek sygnału do szumu, wektor definiujący
względne tłumienie ścieżek i wektor określający względne opóźnienie ścieżek (w próbkach). Funkcja zwraca próbki z
wyjścia kanału Rayleigha oraz macierz współczynników zaniku (w kolejnych wierszach dla poszczególnych ścieżek).
Przed uruchomieniem symulacji należy zdefiniować parametry kanału funkcją
function rfg_init (fd, fs, dr, fior, ds_type)
gdzie kolejne argumenty to: częstotliwość Dopplera (przyjąć 50 Hz), częstotliwość próbkowania (2 próbki/chip),
szybkość transmisji danych (100000chip/s), rząd filtru kształtującego widmo procesu Rayleigha (128), typ widma
dopplerowskiego (przyjąć ‘classic’). Do rozpraszania zastosować dwukrotnie nadpróbkowaną m-sekwencję o okresie 15
(wielomian prymitywny x4+x+1).
Wyznaczyć wartości BER=f(SNR) dla transmisji w kanale dwudrogowym (ścieżki o równej mocy średniej, opóźnienie
ścieżek: 0, Tc), jeżeli w odbiorniku następuje korelacja dla obu ścieżek.
Zad. 42.
Wykreślić histogramy modułu i fazy współczynników zaniku pierwszej ścieżki uzyskanych z funkcji
fadchan. Dla zapewnienia statystycznej wiarygodności należy zgromadzić 1000000 próbek. Jakie rozkłady są
aproksymowane?
Zad. 43.
Powtórzyć doświadczenie z zad. 41 dla następujących parametrów: kanał trzydrogowy, moce ścieżek: (0
dB, -3 dB, -6 dB), opóźnienie ścieżek: (0, Tc, 3Tc). Do rozpraszania używane są ciągi Golda opisane wielomianami
prymitywnymi: x5+x2+1, x5+x4+x3+x2+1, bez nadpróbkowania. Zastosować odbiornik RAKE, w którym dokonywana jest
korelacja odpowiednio dla: jednej, dwóch i trzech ścieżek. Zbadać, w jakim stopniu liczba „palców” odbiornika RAKE
wpływa na poprawę BER.