SzPW Lab1

Transkrypt

SzPW Lab1
Laboratorium Systemów z Poszerzonym Widmem
ćw. 1
m-sekwencje
1. Idea systemów z widmem rozproszonym
W trakcie zajęć laboratoryjnych rozpatrywane będą systemy z bezpośrednim rozpraszaniem
widma za pomocą ciągu pseudolosowego (Direct-Sequence Spread Spectrum). Schemat
takiego systemu pokazany jest na rys.1.
Rys. 1. Schemat systemu z widmem rozproszonym, wykorzystującego technikę DS-SS.
Sygnały a(t) i c(t) reprezentują odpowiednio sygnał danych (najczęściej po zakodowaniu) i
sygnał rozpraszający. W modulatorze BPSK odbywa się przeniesienie transmisji w
odpowiednie pasmo częstotliwości. Na jeden odstęp modulacji (Tb) sygnału danych a(t)
przypada kilka odstępów (Tc) sygnału rozpraszającego c(t). Przebiegi w kolejnych etapach
przetwarzania w nadajniku pokazano na rys. 2.
Tb
Tc
Rys. 2 Przebiegi czasowe w kolejnych fazach przetwarzania sygnału w nadajniku [mat. do wykładu]
Po stronie odbiorczej sygnał zdemodulowany jest korelowany z ciągiem rozpraszającym.
Wejściowy sygnał a(t) w trakcie transmisji jest zatem mnożony przez c(t) dwukrotnie: raz w
nadajniku i raz w odbiorniku. Ponieważ c(t) jest falą bipolarną, c2(t) ma wartość 1 niezależnie
od czasu. A zatem procedura rozpraszania a następnie skupiania sygnału nie oddziałuje na
niego niekorzystnie. W trakcie transmisji przez kanał telekomunikacyjny, sygnał jest
zniekształcany przez szum. Szum jest mnożony przez falę c(t) tylko raz – w odbiorniku.
Powoduje to rozproszenie widma zakłócenia. Układ całkujący – działający jako filtr
dolnoprzepustowy – przepuszcza tylko nieznaczny fragment tego widma, wpadający w
pasmo sygnału użytecznego.
2. Funkcja autokorelacji, funkcja korelacji wzajemnej
Funkcja autokorelacji okresowej sekwencji binarnej jest postaci
Ra ,a (l ) = P − 2 ⋅ W a ⊕ a (l )
(
)
(
)
gdzie P oznacza okres sekwencji rozpraszającej, a W (⋅) jest wagą Hamminga ciagu
binarnego. Wyraża ona liczbę bitów, na których różni się sekwencja od jej przesuniętej o l
bitów repliki.
W podobny sposób określa się funkcję korelacji wzajemnej dwóch sekwencji binarnych:
Ra ,b (l ) = P − 2 ⋅ W a ⊕ b ( l )
Jeżeli sekwencja będzie określona nie w postaci ciągów zero-jedynkowych, a w postaci
impulsów bipolarnych {-1, 1}, funkcję autokorelacji można wyrazić w następującej postaci:
P −1
R A, A (l ) = ∑ Ai Ai −l
i =0
Podobnie określa się wówczas funkcję korelacji wzajemnej
P −1
R A, B (l ) = ∑ Ai Bi −l
i =0
3. M-sekwencje
M-sekwencje generowane są w rejestrach przesuwających z liniowym sprzężeniem zwrotnym
(LFSR-Linear Feedback Shift Register), jednak tylko dla pewnych charakterystycznych
schematów sprzężenia zwrotnego automat przebiega po wszystkich 2n-1 stanach, gdzie n jest
liczbą przerzutników. Postać odczepów określa się za pomocą wielomianu generującego g(x),
który musi być wielomianem prymitywnym. Wielomiany takie zostały stablicowane.
Przykładowo dla rejestru o długości 5 mamy następujące wielomiany prymitywne: 1+x2+x5,
1+x2+x3+x4+x5 oraz 1+x+x2+x4+x5. Rejestr LFSR dla pierwszego z podanych wielomianów
pokazano na rys. 3.
Rys. 3. Rejestr generujący m-sekwencję [materiały do wykładów]
Generację m-sekwencji można wygodnie opisać w postaci macierzowej. Niech X(t) oznacza
stan w poszczególnych komórkach pamięci w chwili t, przy czym
 xn (t ) 
 x (t )
X(t ) =  n−1  .
 M 


 x1 (t ) 
Stan następny można wyznaczyć za pomocą działania X(t+1)=TX(t) przy czym
0
0 L 0 0
0 1
0 0
1
0 K 0 0 

0 0
0
1 K 0 0
T=

M
M
M
0 0
0
0 K 0 1


1 cn−1 cn−2 cn−3 K c2 c1 
gdzie wyrazy ci są współczynnikami wielomianu g(x)=1+c1x+c2x2+...+cn-1xn-1+xn,
określającego schemat odczepów generatora.
Zadanie 1. Zbuduj w postaci m-funkcji w środowisku Matlab generator m-sekwencji, który
zwraca określoną liczbę bitów oraz aktualny stan rejestru LFSR. Argumentem funkcji
powinien być stan początkowy rejestru przesuwnego, schemat odczepów generatora
sekwencji oraz pożądana liczba bitów.
a) Wyznacz kilka przebiegów generatora dla dowolnych schematów odczepów. Czy
generowana sekwencja jest m-sekwencją?
b) Przyjmij schemat odczepów określony wielomianem g(x)=1+x2+x5. Wyznacz i porównaj
sekwencje wygenerowane dla różnych stanów początkowych generatora
c) Dla jednej z sekwencji wyznaczonych w podpunkcie b) określ liczbę jedynek i zer
przypadających na okres sekwencji, liczbę podciągów składających się z pojedynczych zer,
pojedynczych jedynek, dwóch zer, dwóch jedynek, itd.
Zadanie 2. Napisz program, który wyznacza funkcję autokorelacji dla m-sekwencji
określonej wielomianem g(x)=1+x2+x5.
Zadanie 3. Wyznacz funkcję korelacji wzajemnej pomiędzy m-sekwencjami określonymi
przez wielomiany: g1(x)=1+x2+x5 i g2(x)=1+x2+x3+x4+x5. Powtórz dla pary g1(x)=1+x2+x5 i
g2(x)=1+x3+ x5. Jakie zauważasz różnice w wartościach korelacji wzajemnej?
Zadanie 4. Otwórz w Matlabie rys1.fig dostarczony przez prowadzącego. Zawiera on
funkcję autokorelacji dla m-sekwencji z zad. 2, przy czym na jeden okres chipu przypada 10
próbek (impuls ma kształt prostokątny). Porównaj rysunek z otrzymanym przez Ciebie.
Zadanie 5. Otwórz w Matlabie rys2.fig. Wykreślono tam widmo fali bipolarnej dla 100
wygenerowanych losowo bitów. Na tym samym rysunku zamieszczono widmo tego sygnału
rozproszonego m-sekwencją, określoną wielomianem g(x)=1+x2+x5. Porównaj widma.
Zadanie 6. Otwórz w Matlabie rys3.fig . Wykreślona jest funkcja autokorelacji dla msekwencji określonej wielomianem g(x)=1+x2+x5, uzupełnionej o dodatkowe zero na końcu.
Jak dodanie zera wpływa na własności autokorelacyjne m-sekwencji?