• Nie Znaleziono Wyników

Modele elementów wspomagających analizę wyników eksperymentów symulacyjnych

W dokumencie Index of /rozprawy2/10892 (Stron 67-71)

4. Model symulacyjny łącza „w dół” systemu UMTS UMTS

4.4. Modele elementów wspomagających analizę wyników eksperymentów symulacyjnych

Symulator łącza „w dół” systemu UMTS został skonstruowany tak, by umożliwiał automatyczne przeprowadzenie analizy porównawczej wybranych odbiorników WCDMA. Odbiorniki były porównywane pod kątem dwóch wskaźników: bitowej stopy błędów na wyjściu odbiornika oraz stopnia komplikacji układowej odbiornika, mierzonej czasem zajętości procesora CPU. Trzeba jednak zaznaczyć, że czas zajętości procesora nie był traktowany jako bezwzględna, obiektywna miara stopnia komplikacji układowej odbiornika. Czas ten pozwalał jedynie uzyskać pewien pogląd na stopień złożoności układowej odbiornika, a dokładniej na jego realizację programową w środowisku MATLAB. W systemach rzeczywistych znaczna część funkcji odbiornika może być wykonywana sprzętowo. Poza tym, pewne funkcje, które zostały zaimplementowane programowo mogą być realizowane na różnych platformach sprzętowych. Dlatego też czas zajętości procesora, osiągany w ramach poszczególnych eksperymentów symulacyjnych, był tylko pewnym szacunkowym wskaźnikiem porównawczym pozwalającym na zgrubną, orientacyjną ocenę stopnia komplikacji układowej odbiornika.

4.4.1. Moduł licznika czasu zajętości procesora

Czas zajętości procesora CPU, zwracany przez symulator uruchomiony na konkretnej maszynie fizycznej, jest czasem, w którym procesor tej maszyny wykonywał instrukcje (rozkazy) związane z pracą danego odbiornika WCDMA. A dokładniej, jest on sumarycznym czasem przetwarzania wszystkich ramek w badanym odbiorniku w ramach danego scenariusza symulacyjnego. Był on zwracany albo jako czas CPUtimeLIN zajętości procesora przez odbiornik liniowy, jeżeli tylko ta część odbiornika uczestniczyła w przetwarzaniu ramek, albo jako suma CPUtimeLIN i czasu CPUtimeNN zajętości CPU przez odbiornik nieliniowy, jeżeli występowała konieczność użycia korektora nieliniowego opartego na sieci neuronowej.

W symulatorze do obliczania czasu zajętości procesora wykorzystano funkcję cputime() pakietu MATLAB.

Szczegółowy algorytm wyznaczania czasu zajętości procesora CPU – potrzebnego do odbioru danych zawartych w pojedynczej ramce w konkretnym eksperymencie symulacyjnym – przedstawiono na rysunku 4-9. Liczniki czasów CPUtimeLIN oraz CPUtimeNN były uruchamiane w momencie rozpoczęcia przetwarzania sygnału w odbiorniku. Na początku ramka była przetwarzana w części liniowej odbiornika

zatrzymywane i wskazywały te same czasy. Natomiast, jeżeli ramka nie została poprawnie odebrana, to licznik CPUtimeLIN był zatrzymywany, natomiast uruchamiana była część nieliniowa odbiornika. Licznik CPUtimeLIN zatrzymano, ponieważ na tym etapie, pomimo niezerowej stopy błędów, przetwarzanie ramki w korektorze liniowym zostało zakończone. Przy braku w odbiorniku korektora nieliniowego, w przypadku stopy błędów różnej od zera, pozyskanie poprawnych danych wymagałoby retransmisji błędnie odebranej ramki. Natomiast, jeżeli w odbiorniku został zaimplementowany korektor nieliniowy oparty na sieci ANN, to w pierwszej kolejności w celu pozyskania poprawnych danych następowało uruchomienie korekcji nieliniowej odbieranego sygnału na poziomie symboli.

Rysunek 4-9: Algorytm działania modułu licznika czasu zajętości procesora CPU

Jeżeli korekcja nieliniowa odniosła pożądany skutek i ramka została odebrana poprawnie to licznik czasu CPUtimeNN był zatrzymywany, zaś dotychczasowy czas wskazywany przez licznik czasu CPUtimeLIN, był zwiększany dwa razy, co było naturalną konsekwencją przyjęcia założenia o konieczności przeprowadzenia w jak najkrótszym czasie przynajmniej jednej udanej retransmisji błędnie odebranej za pierwszym razem ramki z danymi w odbiorniku wyposażonym tylko i wyłącznie w korektor liniowy.

Natomiast, jeżeli pomimo użycia korektora nieliniowego, nie udało się poprawnie odebrać ramki z danymi, to licznik czasu CPUtimeNN był zatrzymany, a wartość licznika CPUtimeLIN pozostawała niezmieniona. W tej sytuacji wystąpił jedynie niepotrzebny wzrost czasu zajętości procesora przez nieliniowy korektor ANN odbiornika przy braku pozytywnych efektów związanych z próba bezbłędnego odbioru ramki.

Wartości liczników CPUtimeLIN oraz CPUtimeNN wykorzystywane były do

wyznaczania procentowego, względnego wzrostu czasu zajętości procesora §B ¸¹º

(Relative Increase of Time). Wartość §B ¸¹º stanowi o kosztach zastosowania

w odbiorniku WCDMA dodatkowego korektora ANN i jest obliczana zgodnie ze wzorem:

§B ¸¹ºQ%T =“¼½,<R‡‡ − “¼½,<R.B‡“¼½,<R.B‡ 100% (4-11)

Moduł licznika czasu zajętości procesora zbierał również statystyki dotyczące przetwarzanych w odbiorniku ramek i przedstawiał je w postaci dwóch wskaźników

NRF (Number of Received Frames): ‡§i¾O¿ oraz ‡§i¾O¿ÀÁÁ¾O¿ÃÄÁ. Wskaźnik

‡§i¾O¿ oznacza procentowy udział wszystkich bezbłędnie odebranych ramek w całkowitej liczbie ramek na wyjściu odbiornika z korektorem ANN. Zatem

wartość wskaźnika ‡§i¾O¿ odpowiada minimalnej, wyrażonej w procentach,

liczbie retransmisji, które okazałyby się niezbędne do przeprowadzenie bezbłędnej transmisji danych w przypadku odbiornika bez korektora ANN. Natomiast drugi

wskaźnik, oznaczony jako ‡§i¾O¿ÀÁÁ¾O¿ÃÄÁ, przedstawia procentowy udział ramek,

które po korekcji sygnałowej nieliniowym korektorem ANN zostały wprawdzie odebrane z niezerową, lecz jednak mniejszą stopą błędów niż miało to miejsce w przypadku odbiornika stosującego tylko i wyłącznie korektor liniowy.

4.4.2. Bitowa stopa błędów oraz estymator niepewności jej

wartości średniej

Do obliczania wartości średniej bitowej stopy błędów oraz estymatora niepewności tej średniej zastosowano metodę zaproponowaną w pracy [agre_98]

przez Agrestiego i Coulla, zgodnie z którą średnia wartość bitowej stopy błędów ÅP§,

dla poziomu ufności 1 − Æ = 0,95, wyraża się następującym wzorem:

ÅP§=‡<Å, + 3,84‡<P + 1,92 (4-12)

gdzie: ‡<P jest liczbą błędnie odebranych bitów,a ‡<Å, liczbą wszystkich

Natomiast estymator niepewności wartości średniej h¾O¿ jest równy:

h¾O¿= 1,96ɇ<Å, + 3,84ÅP§ 1 − ÅP§ (4-13)

a przedział ufności ÅP§ wynosi:

ÅP§= ÅP§ ± h¾O¿ (4-14)

4.5. Podsumowanie

W rozdziale 4 opisano najważniejsze elementy funkcjonalne symulatora łącza „w dół” systemu UMTS, który posłużył w rozprawie do przeprowadzenia analizy porównawczej odbiorników WCDMA bez i z dodatkowym nieliniowym korektorem sygnałowym opartym na sztucznych sieciach neuronowych ANN. W kolejnych podrozdziałach opisano model nadajnika stacji bazowej, modele kanałów radiowych oraz model odbiorczą odbiornika stacji ruchomej. Osobny podrozdział poświęcono

omówieniu narzędzi wspomagających analizę wyników eksperymentów

symulacyjnych. Opisano w nim strukturę licznika czasu zajętości procesora CPU wraz z przyjętymi założeniami oraz krótko zaprezentowano metodę wyznaczania wartości średniej bitowej stopy błędów i estymatora jej niepewności.

5. Analiza symulacyjna odbiornika WCDMA

W dokumencie Index of /rozprawy2/10892 (Stron 67-71)