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.