VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV RADIOELEKTRONIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF RADIO ELECTRONICS
ZPRACOVÁNÍ SIGNÁLŮ V SYSTÉMU WIMAX SIGNAL PROCESSING IN WIMAX SYSTEM
BAKALÁŘSKÁ PRÁCE BACHELOR'S THESIS
AUTOR PRÁCE
MARTIN ŠKAPA
AUTHOR
VEDOUCÍ PRÁCE SUPERVISOR
BRNO 2007
prof. Ing. STANISLAV HANUS, CSc.
LICENČNÍ SMLOUVA POSKYTOVANÁ K VÝKONU PRÁVA UŽÍT ŠKOLNÍ DÍLO uzavřená mezi smluvními stranami: 1. Pan/paní Jméno a příjmení: Martin Škapa Bytem: Hluboček 18, 635 00 Brno Narozen/a (datum a místo): 22.2.1985, Brno (dále jen „autor“) a 2. Vysoké učení technické v Brně Fakulta elektrotechniky a komunikačních technologií se sídlem Údolní 53, Brno, 602 00 jejímž jménem jedná na základě písemného pověření děkanem fakulty: prof. Dr. Ing. Zbyněk Raida, předseda rady oboru Elektronika a sdělovací technika (dále jen „nabyvatel“)
Čl. 1 Specifikace školního díla 1.
Předmětem této smlouvy je vysokoškolská kvalifikační práce (VŠKP): □ disertační práce □ diplomová práce □ bakalářská práce □ jiná práce, jejíž druh je specifikován jako ....................................................... (dále jen VŠKP nebo dílo)
Název VŠKP:
Zpracování signálů v systému WiMAX
Vedoucí/ školitel VŠKP:
prof. Ing. Stanislav Hanus, CSc.
Ústav:
Ústav radioelektroniky
Datum obhajoby VŠKP: VŠKP odevzdal autor nabyvateli v*:
2.
3. 4.
*
tištěné formě
–
počet exemplářů 2
elektronické formě
–
počet exemplářů 2
Autor prohlašuje, že vytvořil samostatnou vlastní tvůrčí činností dílo shora popsané a specifikované. Autor dále prohlašuje, že při zpracovávání díla se sám nedostal do rozporu s autorským zákonem a předpisy souvisejícími a že je dílo dílem původním. Dílo je chráněno jako dílo dle autorského zákona v platném znění. Autor potvrzuje, že listinná a elektronická verze díla je identická.
hodící se zaškrtněte
Článek 2 Udělení licenčního oprávnění 1.
2. 3.
4.
Autor touto smlouvou poskytuje nabyvateli oprávnění (licenci) k výkonu práva uvedené dílo nevýdělečně užít, archivovat a zpřístupnit ke studijním, výukovým a výzkumným účelům včetně pořizovaní výpisů, opisů a rozmnoženin. Licence je poskytována celosvětově, pro celou dobu trvání autorských a majetkových práv k dílu. Autor souhlasí se zveřejněním díla v databázi přístupné v mezinárodní síti □ ihned po uzavření této smlouvy □ 1 rok po uzavření této smlouvy □ 3 roky po uzavření této smlouvy □ 5 let po uzavření této smlouvy □ 10 let po uzavření této smlouvy (z důvodu utajení v něm obsažených informací) Nevýdělečné zveřejňování díla nabyvatelem v souladu s ustanovením § 47b zákona č. 111/ 1998 Sb., v platném znění, nevyžaduje licenci a nabyvatel je k němu povinen a oprávněn ze zákona.
Článek 3 Závěrečná ustanovení 1. 2.
3. 4.
Smlouva je sepsána ve třech vyhotoveních s platností originálu, přičemž po jednom vyhotovení obdrží autor a nabyvatel, další vyhotovení je vloženo do VŠKP. Vztahy mezi smluvními stranami vzniklé a neupravené touto smlouvou se řídí autorským zákonem, občanským zákoníkem, vysokoškolským zákonem, zákonem o archivnictví, v platném znění a popř. dalšími právními předpisy. Licenční smlouva byla uzavřena na základě svobodné a pravé vůle smluvních stran, s plným porozuměním jejímu textu i důsledkům, nikoliv v tísni a za nápadně nevýhodných podmínek. Licenční smlouva nabývá platnosti a účinnosti dnem jejího podpisu oběma smluvními stranami.
V Brně dne: …………………………………….
……………………………………….. Nabyvatel
………………………………………… Autor
Abstrakt, klíčová slova | Abstract, keywords
Abstrakt:
Systém WiMAX, založený na standardu IEEE 802.16TM, představuje v posledních letech velmi slibnou bezdrátovou technologii. V současné době je využíván na mnoha místech po celém světě. Díky použití modulace OFDM je systém WiMAX odolný vůči rušení i v nepříznivých přenosových podmínkách. Cílem bakalářské práce je popsat zpracování signálu ve fyzické vrstvě systému WiMAX. Nejprve je sestaveno blokové schéma fyzické vrstvy systému, poté je doplněn podrobnější popis jednotlivých bloků, kde jsou diskutovány všechny důležité aspekty zpracování signálu. Je vysvětleno kanálové kódování, randomizace, dopředné zabezpečení proti chybám při přenosu, prokládání, modulace a také OFDM bloky. V praktické části bakalářské práce byl sestaven model komunikačního řetězce ve fyzické vrstvě v prostředí programu Matlab. S tímto modelem je možné provádět různé simulace díky variabilitě jeho nastavení. Společně se získanými výsledky je v závěrečných kapitolách bakalářské práce diskutovaná odolnost systému WiMAX proti rušení.
Klíčová slova:
Zpracování signálu, WiMAX, fyzická vrstva, FEC kódování, OFDM, rušení v kanálu, BER
Abstract:
The WiMAX system, based on the IEEE 802.16TM standard, has represented a very promising wireless technology in recent years. Nowadays, it has been employed in many countries all over the world. It features a good resistance to disturbance even in unfavourable transfer conditions particularly due to using the OFDM modulation. The purpose of the bachelor thesis is to describe physical layer signal processing in the WiMAX system. Firstly, a transfer chain flow chart of the physical layer is drawn. Thereafter, a deeper block description is presented where all important aspects of signal processing are discussed. Channel coding such as randomization, forward error correction coding, interleaving, modulation and also OFDM blocks are explained. For a practical examination, a transfer chain model of the physical layer was created in the Matlab environment. It allows making various simulations with modified settings. In association with simulation results, the WiMAX system resistance against disturbance is discussed in final chapters of the bachelor thesis.
Keywords:
Signal processing, WiMAX, physical layer, forward error correction coding, OFDM, channel disturbance, BER
ŠKAPA, Martin. Zpracování signálů v systému WiMAX: bakalářská práce. Brno: Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, 2007. 44 s.
Prohlášení Prohlašuji, že svou bakalářskou práci na téma „Zpracování signálů v systému WiMAX“ jsem vypracoval samostatně pod vedením vedoucího bakalářské práce s použitím odborné literatury a dalších informačních zdrojů, které jsou všechny uvedeny v seznamu literatury na konci práce.
V Brně dne ...............
............................................ podpis autora
Poděkování Děkuji vedoucímu bakalářské práce prof. Ing. Stanislavu Hanusovi, CSc. za účinnou metodickou, pedagogickou a odbornou pomoc a další cenné rady při zpracování mé bakalářské práce.
V Brně dne ...............
............................................ podpis autora
Obsah 1 ÚVOD................................................................................................................................................................ 9 2 FYZICKÁ VRSTVA...................................................................................................................................... 10 3 WIRELESSMAN-OFDM PHY .................................................................................................................... 12 3.1 BLOKOVÉ SCHÉMA SYSTÉMU ..................................................................................................................... 12 3.2 KANÁLOVÉ KÓDOVÁNÍ .............................................................................................................................. 13 3.2.1 Úvod ................................................................................................................................................. 13 3.2.2 Randomizace .................................................................................................................................... 14 3.2.3 FEC................................................................................................................................................... 15 3.2.3.1 3.2.3.2 3.2.3.3 3.2.3.4
Reed-Solomonovo kódování....................................................................................................................... 15 Konvoluční kódování ................................................................................................................................. 17 Parametry Reed-Solomon-konvolučního kódování .................................................................................... 18 Realizace Reed-Solomon-konvolučního kódování v programu Matlab...................................................... 18
3.2.4 Prokládání......................................................................................................................................... 19 3.3 MODULACE................................................................................................................................................ 21 3.3.1 Digitální modulace ........................................................................................................................... 21 3.3.2 Modulace BPSK a QPSK ................................................................................................................. 22 3.3.3 Modulace QAM................................................................................................................................ 23 3.4 OFDM....................................................................................................................................................... 24 3.4.1 Úvod ................................................................................................................................................. 24 3.4.2 OFDM symbol.................................................................................................................................. 24 3.4.2.1 Popis v časové a kmitočtové oblasti ........................................................................................................... 24 3.4.2.2 Parametry OFDM symbolu......................................................................................................................... 25
3.4.3 Ortogonalita tónů a IDFT ................................................................................................................. 26 3.4.4 Ochranný interval ............................................................................................................................. 28 3.4.5 Upřesnění OFDM bloků v modelu v programu Matlab.................................................................... 28 3.5 ODOLNOST PROTI RUŠENÍ .......................................................................................................................... 29 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5
Úvod ................................................................................................................................................. 29 Popis použitého modelu kanálu v programu Matlab ........................................................................ 29 Kanál AWGN ................................................................................................................................... 30 Rušivý signál .................................................................................................................................... 34 Doby simulací................................................................................................................................... 35
4 MODEL KOMUNIKAČNÍHO ŘETĚZCE NA CD ................................................................................... 37 4.1 STRUKTURA CD ........................................................................................................................................ 37 4.2 POPIS SOUBORŮ V ADRESÁŘI MATLAB....................................................................................................... 37 4.3 UKÁZKY NASTAVENÍ SIMULACÍ ................................................................................................................. 39 4.3.1 Nastavení souboru setting.m pro simulaci ........................................................................................ 39 4.3.2 Přenos obrázku a textového řetězce.................................................................................................. 41 4.3.3 Vícenásobné simulace ...................................................................................................................... 41 5 ZÁVĚR............................................................................................................................................................ 42 POUŽITÉ ZKRATKY ....................................................................................................................................... 43 LITERATURA .................................................................................................................................................... 44
8
1 Úvod Bezdrátový systém WiMAX, založený na standardu IEEE 802.16eTM, představuje v posledních letech velmi důležitou bezdrátovou technologii, která je nasazena v ostrém provozu na mnoha místech po celém světě. V České republice je pomocí ní připojeno již několik tisíc uživatelů, především ve venkovských oblastech. Při stavbě sítí systému WiMAX se dá využít buňková architektura, obdobně jako u mobilních operátorů, a vytvořit tedy metropolitní síť vysokorychlostního připojení (MAN). Jedním z možných řešení připojení v konečné lokalitě pak může být vytvoření sítě typu LAN s pomocí standardu WiFi. V bakalářské práci jsem se zaměřil na zpracování signálu ve fyzické vrstvě systému WiMAX. Na začátku je představeno propojení jednotlivých vrstev v systému WiMAX se zdůrazněním pozice fyzické vrstvy. Po sestavení blokového schématu zpracování signálu ve fyzické vrstvě je v dalších kapitolách důkladnější rozbor jednotlivých funkčních bloků. Nejprve jsou popsány základní principy bloků kanálového kódování, tedy randomizeru, FEC kodéru, a prokladače. Následuje popis použití digitálních modulací, jsou přiblíženy také základní bloky pro vytvoření OFDM signálu. Jednotlivé části blokového schématu fyzické vrstvy byly sestaveny do uceleného modelu v prostředí programu Matlab. Pomocí tohoto modelu bylo provedeno několik simulací, které demonstrují teoretický popis uvedený v této práci a také umožňují zhodnotit možnosti systému WiMAX v oblasti odolnosti proti rušení. Výsledky simulací jsou komentovány v poslední části této práce. V oblasti elektroniky a komunikací je hlavním dorozumívacím jazykem angličtina. Ve své bakalářské práci se tohoto faktu držím a v případě pojmů, pro které neexistuje zažitý český výraz, nechávám tyto pojmy v původním znění.
9
2 Fyzická vrstva Před vlastním rozborem fyzické vrstvy bude vhodné představit kompletní rozložení vrstev a služeb ve standardu IEEE 802.16TM včetně propojení přes řídící oblast k síťovému řídícímu systému. Tento popis je znázorněný na obrázku 2.1, kde je vyznačena oblast působení standardu mající na starosti oblast řízení a kontroly dat. Můžeme ji rozdělit na dvě hlavní vrstvy – tzv. Medium Access Control (MAC) a fyzickou vrstvu (PHY). Jednotlivé vrstvy a podvrstvy v celkovém schématu spolu komunikují pomocí tzv. service access point (SAP), tedy přístupových bodů, kde jsou služby nižší vrstvy dostupné vrstvě vyšší. Komunikace pak probíhá prostřednictvím tzv. service data unit (SDU). Vrstva MAC zajišťuje adresování a kontrolní mechanismy pro přístup ke kanálu, takže může umožnit např. komunikaci více koncových stanic nebo síťových uzlů v rámci vícebodové sítě lokálního (LAN) nebo metropolitního (MAN) typu. Tato vrstva se skládá ze tří podvrstev. První se jmenuje Service-Specific Convergence Sublayer (CS) a zajišťuje převody a řazení externích síťových dat obdržených přes CS SAP. Převedená data pak posílá prostřednictvím MAC SDU přes MAC SAP do vrstvy MAC Common Part Sublayer (CPS). Zde se obdržené SDU třídí a přiřazují k příslušnému identifikátoru, service flow identifier (SFID) nebo connection identifier (CID). Může také obsahovat funkce např. pro potlačení posílání opakovaných částí hlaviček dat na straně vysílače a jejich zpětné obnovení na straně přijímače (PHS).
Oblast působení standardu
CS SAP
Service-Specific Convergence Sublayer (CS)
Service-Specific Convergence Sublayers
MAC
MAC SAP
MAC Common Part Sublayer (MAC CPS)
Management Entity MAC Common Part Sublayer
Security Sublayer
Security Sublayer
PHY
PHY SAP
Physical Layer (PHY)
Management Entity
Oblast řízení a kontroly dat
Oblast řízení
PHY
Obrázek 2.1 – Rozložení vrstev, jejich propojení a oblast působení standardu
10
Network Management System
Management Entity
Aby se zajistila vzájemná spolupráce s různými protokoly, jsou specifikace vrstvy CS často složeny z více různých částí. Interní formáty hlavičky dat jsou vždy unikátní k dané CS a od nižší vrstvy CPS se neočekává, že bude tomuto formátu rozumět, ani že bude schopna z těchto dat vyčíst jakékoliv informace. Vrstva MAC SPC tvoří základ pro funkce MAC vrstvy, např. systémový přístup, alokace šířky pásma, zřízení a udržování spojení. Přijímá data z různých CS přes MAC SAP podléhající ke konkrétním MAC spojením. Vrstva MAC také obsahuje různé bezpečnostní podvrstvy sdružené v security sublayer, které zajišťují autentizaci, výměnu bezpečnostních klíčů a šifrování dat. Fyzická vrstva (PHY), která je nejnižší vrstvou modelu propojení otevřených systémů (OSI), obsahuje prostředky k přenosu signálu na úrovni jednotlivých bitů. Hlavními funkcemi a službami, které fyzická vrstva poskytuje, jsou vytvoření a ukončení připojení ke komunikačnímu médiu, účast na procesech, kde jsou komunikační prostředky efektivně sdílené více uživateli. Další funkcí je konverze digitálních dat mezi uživatelským zařízením a korespondujícími signály přenášenými přes komunikační kanál. Data k přenosu, instrukce k řízení a různé statistické údaje jsou mezi CPS a fyzickou vrstvou přenášeny přes PHY SAP, jehož provedení je specifické. Norma IEEE 802.16-2004 [1] rozlišuje tři specifikace fyzické vrstvy optimalizované pro různé operace a podmínky použití: 1. WirelessMAN-SC a WirelessMAN-SCa PHY (single-carrier modulation) 2. WirelessMAN-OFDM PHY (256-carrier OFDM format) 3. WirelessMAN-OFDMA PHY specification (2048-carrier OFDM format.) V této práci bude představena fyzická vrstva podle specifikace WirelessMAN-OFDM PHY.
11
3 WirelessMAN-OFDM PHY Tato specifikace je určena pro použití v licencovaných i bezlicenčních kmitočtových pásmech v rozsahu kmitočtů od 2 do 11 GHz. Šířka kanálů je od 1,25 do 28 MHz. Pro spojení není požadovaná přímá viditelnost (NLOS). Může se používat kmitočtově (FDD) i časově (TDD) dělený duplex. Jsou povoleny další volitelné mechanismy – přizpůsobivý anténní systém (AAS), automatické opakování požadavku (ARQ), mesh topologie sítě, možnost současného příjmu různých dat od více antén (STC). Kmitočtové pásmo je rozděleno na jednotlivé tóny s využitím modulací BPSK, QPSK, 16-QAM nebo 64-QAM. Využívá se OFDM (Orthogonal Frequency Division Multiplexing), které se vyznačuje vysokou odolností vůči interferencím mezi symboly (ISI) a tóny (ICI).
3.1 Blokové schéma systému Blokové schéma systému je stručně nakresleno na obrázku 3.1. Vstupní data jsou nejprve randomizovaná, poté je provedeno dopředné zabezpečení proti chybám při přenosu (FEC). V systému WiMAX se tento prvek skládá ze zřetězeného Reed-Solomonova vnějšího kódu a konvolučního vnitřního kódu (RS-CC). Standard specifikuje další volitelné typy kódování – blokové turbo kódování a konvoluční turbo kódování. Signál je zabezpečen také proti shlukovým chybám pomocí prokládání (interleaving). Dále je modulován vhodnou digitální modulací. Používá se fázové klíčování (PSK) a kvadraturní amplitudová modulace (QAM) v různých modifikacích (BPSK, QPSK, 16-QAM, 64-QAM). Na výstupu získáme posloupnost komplexních čísel, která je převedena do paralelní podoby, aby se následně provedla OFDM modulace realizovaná inverzní diskrétní Fourierovou transformací (IDFT). Signál je převeden zpět do sériové formy a vhodně se do něj vloží ochranné symbolové intervaly. Poslední dva bloky reprezentují digitálně-analogový převod a konverzi signálu do vyššího pásma přenositelného rádiovým rozhraním. Data pak mohou být vyslána komunikačním kanálem. Na přijímací straně jsou provedeny inverzní operace. Nejprve je signál převeden do základního pásma a vzorkován do digitální podoby. Odstraní se ochranný interval a pomocí diskrétní Fourierovy transformace (DFT) získáme signály na jednotlivých nosných tónech. Signály se demodulují, odstraní se prokládání, zkontrolují a opraví se chyby vzniklé při přenosu komunikačním kanálem. Tímto postupem jsou data převedena zpět do původní podoby a na výstupu získáme v ideálním případě stejná data jako na vstupu. V této práci a také pro vytvoření modelu v programu Matlab jsem se zaměřil na bloky komunikačního řetězce, které jsou na obrázku 3.1 zvýrazněné modře. Šedě zvýrazněné bloky, sloužící k převodu digitálně zakódovaných dat do analogové vysokofrekvenční podoby a zpět, nemají při simulacích v této práci praktický význam a proto nejsou uvažované.
12
FEC kódování
Randomizace
Vstupní data
OFDM modulace (IDFT)
Vkládání ochranné doby
Prokládání
DAC
Modulace
Up-konverze
Komunikační kanál (+rušení)
Demodulace
Odstranění ochranné doby
ADC
Down-konverze
Odstranění prokládání
FEC dekódování
OFDM demodulace (DFT)
Derandomizace
Výstupní data
Obrázek 3.1 – Blokové schéma zpracování signálu v PHY systému WiMAX
3.2 Kanálové kódování 3.2.1 Úvod Při přenosu signálu komunikačním kanálem vzniká rozdíl mezi vyslaným a přijatým signálem, který znamená výskyt chyby v přenášené sekvenci. Chyby mohou být způsobeny různými druhy rušení, např. šumem, útlumem nebo odrazy signálu. Aby se snížil počet chyb v přenášeném signálu, používají se různé typy bezpečnostních kódů, které při mírném a kontrolovaném zvýšení redundance umožní výrazné snížení celkové chybovosti signálu. Zabezpečovací kódy můžeme rozdělit na kódy detekční a kódy korekční, které se v systému WiMAX používají. Kromě toho existují i speciální algoritmy umožňující takovou úpravu přenášení sekvence dat, která umožní lepší podmínky pro zpracování signálu nebo dokonce zvýší odolnost proti shlukovým chybám. Tím je např. prokládání. V systému WiMAX se kanálové kódování se skládá ze tří kroků: randomizace, dopředné zabezpečení proti chybám při přenosu (FEC) a prokládání. Tyto operace musí být provedeny v uvedeném pořadí. Na přijímací straně jsou provedeny v obráceném pořadí.
13
3.2.2 Randomizace Randomizace dat se provádí z důvodu rozprostření sekvencí jedniček a nul, které jsou na straně přijímače obtížné k dekódování a k časové synchronizaci. Je provedena na každém shluku dat na downlinku a uplinku. Pro každou alokaci datového bloku (subkanály ve frekvenční oblasti a OFDM symboly v časové oblasti) je randomizer použit nezávisle. Pokud počet dat k přenosu přesně neodpovídá množství alokovaných dat, jsou na konci přenosového bloku na neobsazené celé bajty vloženy data 0xFF. Pro nekódovaná RS-CC a CC data budou tato data vložena na konec přenosového bloku do velikosti počtu alokovaných dat minus jeden bajt. Ten je rezervován pro zavedení 0x00 koncového bajtu při FEC. MSB
LSB
Obrázek 3.2 - PRBS pro randomizaci dat
Pro randomizaci se používá posuvný registr, který je tvořen generátorem pseudonáhodných posloupností (PRBS). Generátor PRBS používá polynom 1 + X14 + X15 a je zobrazen na obrázku 3.2. Každý datový bajt vstupuje do randomizeru, jako první vstupuje vždy MSB. Randomizační sekvence je aplikovaná pouze na informační bity. Při downlinku je randomizer inicializován na počátku každého rámce sekvencí 100101010000000. Na začátku shluku #1 není randomizer resetován. Je resetován až na začátku každého dalšího shluku vektorem zobrazeným na obrázku 3.3. Tento vektor obsahuje tři důležité čtyřbitové parametry. První z nich, BSID, slouží k identifikaci základové stanice (BS), se kterou komunikuje účastník (SS). Druhým parametrem je Downlink Interval Usage Code (DIUC). Je to kód, který identifikuje burst profile použitý pro komunikaci na downlinku. Burst profile je soubor parametrů popisující přenosové vlastnosti,. Patří sem např. použitý typ FEC, modulace, délka úvodních částí OFDM symbolu nebo ochranná pásma. Třetím parametrem je číslo rámce, ve kterém probíhá komunikace s účastníkem, tedy Frame number.
Obrázek 3.3 – Inicializační vektor randomizeru pro burst #2…N
Na uplinku se provádí obdobné operace. Inicializační vektor pro každý datový shluk se liší ve druhém parametru, místo DIUC je použito UIUC. Uplink Interval Usage Code (UIUC) je obdobou DIUC a definuje burst profile specifický k uplinku. 14
Efekt rozprostření spektra přenášeného signálu byl zobrazen pomocí programu Matlab. Vlastní randomizer je tvořen souborem randomize.m a jsou v něm obsaženy všechny prvky uvedené v této kapitole. Vzhledem k tomu, že randomizer se používá pro rozprostření nul a jedniček v nějaké datové sekvenci, byl vstupní signál pro test složen z delšího úseku jedniček a z delšího úseku nul. Z výsledku zobrazeného na obrázku 3.4 je vidět, že ve výstupním signálu po randomizaci jsou nuly a jedničky rozprostřeny. Původní sekvenci dat získáme opětovnou aplikací randomizace na rozprostřený signál. Signál pred randomizací
bit[-]
1
0.5
0
0
20
40
60
80 100 N [-] Signál po randomizaci
120
140
160
0
20
40
60
120
140
160
bit[-]
1
0.5
0
80 N [-]
100
Obrázek 3.4 – Ukázka funkce randomizeru
3.2.3 FEC Dopředné zabezpečení proti chybám při přenosu (FEC) se skládá ze zřetězeného ReedSolomon vnějšího kódu a konvolučního vnitřního kódování (RS-CC). Provádí se na uplinku i downlinku. Volitelně je možno dále použít blokové turbo kódování (BTC) nebo konvoluční turbo kódování (CTC).
3.2.3.1 Reed-Solomonovo kódování Reed–Solomonovy kódy (RS) patří mezi nebinární cyklické BCH kódy a jsou často považovány za jedny z nejdůležitějších blokových kódů. Jejich využití najdeme např. u médií DVD, digitálního televizního vysílání DVB-T a také v systému WiMAX. Používají se především k opravám skupinových chyb. Tyto kódy jsou založeny na poměrně složitých matematických konceptech, které jsou podrobněji rozebrány např. v [6], [7], [8]. RS kódy jsou orientované symbolově, proto se RS kódování uplatňuje především v kanálech se shluky bitových chyb za podmínky, že tyto shluky nejsou blízko sebe. Této podmínky lze dosáhnout prokládáním (Kap. 3.2.4).
15
Při realizaci RS kódů se používá aritmetika konečných polí, obvykle nazývaných Galoisova pole. Galoisovo pole GF(q) je pole s konečným počtem prvků q. Počet prvků bývá často ve tvaru pm, kde p je prvočíslo a m je celé přirozené číslo. Tímto počtem je pole plně definováno. Naprostá většina používaných RS kódů je založena na GF(28) a délka slova v použitém kódu tak bude odpovídat bajtům. Jsou definovány operace součtu, násobení a odpovídajících inverzí, tyto operace jsou komutativní. Platí, že jakákoliv kombinace dvou prvků pole vede opět k prvku tohoto pole. Každé pole má nejméně jeden primitivní prvek α takový, že jakýkoliv nenulový prvek pole může být jedinečně zapsán jako mocnina α. Prvky pole GF(pm) mohou být také reprezentovány jako polynomy (m – 1)-tého řádu. Primitivní prvek α je pak definován jako odmocnina tzv. vytvářecího polynomu p(x), který je m-tého stupně a je nerozložitelný. Výsledek operace je potom modulo těchto polynomů. Při RS kódování se rozlišují dva vektory. Vektorem A označujeme vektor ve frekvenční oblasti a vektor a je vektorem v časové oblasti. Tyto dva vektory jsou ve vzájemném vztahu prostřednictvím diskrétní Fourierovy transformace (DFT) platné pro Galoisovo pole. Při vytváření RS kódů se velmi zjednodušeně postupuje tak, že datové symboly vstupního slova o délce K doplníme na N-symbolové slovo, tím vznikne vektor ve frekvenční oblasti A. Tento vektor převedeme pomocí DFT do časové oblasti na vektor a, který je RS kódovým slovem. V Galoisově poli pak platí poučka o tzv. nulových místech, které jsou použity k samočinnému opravování chybných symbolů v bloku. Při dekódování se přijatý blok převede zpět do frekvenční oblasti, pomocí tzv. lokalizačního mnohočlenu se vyhledají a následně opraví chybné symboly. Tato operace může být výpočetně náročná vzhledem k řešení složitější soustavy rovnic. Jedno RS kódové slovo (obr. 3.5) má délku N = 2m – 1, kde m je celé číslo. Pokud bude m = 8 pak N = 255 a symboly kódového slova budou bajty. Kódové slovo je tvořeno ze dvou částí. První část je tvořena K datovými bajty, což je kopie bajtů, které mají být kódovány. Druhá část obsahuje paritní bajty a její délka odpovídá dvojnásobku počtu bajtů, které mohou být v přijatém slově opraveny, T. Paritní bajty mohou být umístěny před nebo za datovými bajty, v systému WiMAX se používá první možnost. Takovéto RS kódové slovo pak můžeme označit jako RS(N, K, T). Často se také vyskytuje pojem tzv. zkrácených RS kódů (shortened RS code), které používají základního kódu RS(N, K, T) s N=255. Kódujeme vždy pouze K1
2.T paritních bajtů
K datových bajtů
Obrázek 3.5 – Struktura RS kódového slova
V systému WiMAX je Reed-Solomonovo kódování odvozeno ze systematického RS kódování s RS(255, 239, 8) při použití polynomu Galoisova pole GF(28). Pro tyto hodnoty se v systematickém kódu používají následující polynomy: Vytvářecí mnohočlen kódu:
g(x) = (x + λ 0 )(x + λ 1 )(x + λ 2 )...(x + λ 2T −1 ), λ = 02HEX
(3.1)
Vytvářecí mnohočlen pole:
p(x) = x8 + x 4 + x 3 + x 2 + 1
(3.2)
16
3.2.3.2 Konvoluční kódování Konvoluční kódování dobře doplňuje blokový Reed-Solomonův kód, neboť je orientováno bitově a zabezpečuje tedy před poruchami jednotlivé bity. Při tomto kódování se nepřidávají k datovým bitům žádné paritní bity, pouze se vstupní datové byty předepsaným způsobem skládají a jejich pravá hodnota je tedy ve výstupní sekvenci rozprostřena. Schéma konvolučního kodéru používaného v systému WiMAX je na obrázku 8. Kodér se skládá z posuvného stavového registru o délce S = 6 a dvou součtových členů. Protože rámec vstupních bitů je m = 1 a rámec výstupních bitů je n = 2 (výstupy X, Y), můžeme tento konvoluční kodér označit kodérem s kódovým poměrem R = m/n = ½. Konvoluční kód pak označíme K(n, m). Je zjevné, že výstupní data kodéru budou mít dvojnásobnou délku než vstupní data a přenosová rychlost se zvýší také dvakrát. Pro vytvoření výstupního signálu se v jednotlivých větvích kromě odboček signálu z posuvného registru používá i vstupní signál. Proto se uvádí i tzv. délka působení registru K jako délka registru S zvětšená o jedničku násobená velikostí rámce vstupních dat m, v tomto případě K = (S + 1) . m = 7. Každý konvoluční kodér můžeme kromě hodnot m, n, k popsat také generujícím mnohočlenem stupně S. Tento mnohočlen má nulové koeficienty v místech, kde ze stavového registru není odbočka, naopak místa s odbočkami mají koeficienty jedničkové. Složení odboček se místo popisu mnohočlenem může popsat binární hodnotou nebo častěji používanou hodnotou v osmičkové soustavě. Kodér z obrázku 3.6 můžeme takto popsat G1 = 1111001 = 171OCT
pro X
(3.3)
G2 = 1011011 = 133OCT
pro Y
(3.4)
Pro výpočet kódu se používá stavový nebo mřížkový (trellis) diagram. Druhý diagram je realizovaný v prostředí programu Matlab, kdy se před vlastním kódováním pomocí generujících mnohočlenů vytvoří struktura trellis (Kap. 3.2.3.4). Vlastní postup kódování je jednoduchý, konkrétní příklady lze podrobněji najít např. v [8].
Obrázek 3.6 – Konvoluční kodér s kódovým poměrem ½
17
Dekódování konvolučně zakódovaných dat je poměrně složité. Nejčastěji používanou metodou pro dekódování je tzv. Viterbiho metoda postupného přibližování k původní hodnotě. Celá tato metoda je založena na postupném porovnávání přijaté skupiny bitů se skupinou, kterou mohl vytvořit kodér na svém výstupu. Názorný příklad řešení je opět výstižně popsán v [8]. Velmi často se při konvolučním kódování vyskytuje pojem tzv. tečkování (puncturing) nebo zúžení kódu, při kterém se snažíme snížit bitovou rychlost výstupního signálu. Důvodem je její dvojnásobné zvýšení při kódovém poměru R = ½. Tečkováním kódu se rozumí vynechání některých bitů ve výstupní posloupnosti, což vede ke zvýšení kódového poměru a zároveň požadovanému snížení bitové rychlosti oproti základnímu kódu s R = ½. Konfigurace tečkování pro kódové poměry používané v systému WiMAX jsou shrnuty v tabulce 3.1. Tabulka 3.1 – Konfigurace tečkování konvolučního kódu Poměr X Y XY
1/2 1 1 X1Y1
Kódové poměry 2/3 3/4 10 101 11 110 X1Y1Y2 X1Y1Y2Y3
5/6 10101 11010 X1Y1Y2X3Y4X5
3.2.3.3 Parametry Reed-Solomon-konvolučního kódování Parametry Reed-Solomon-konvolučního kódování (RS-CC) používaného v systému WiMAX jsou odlišné podle typu modulace (Kap. 3.3). V tabulce 3.2 jsou uvedeny velikosti bloků a kódové poměry použité při různých modulacích a kódových poměrech. Tabulka 3.2 - Povinné parametry kanálového kódování podle použité modulace Velikost nekódovaného Modulace bloku (bajty) BPSK 12 QPSK 24 QPSK 36 16-QAM 48 16-QAM 72 64-QAM 96 64-QAM 108
Velikost kódovaného bloku (bajty) 24 48 48 64 96 144 144
Celkový kódovací poměr
RS kód
CC kódovací poměr
1/2 1/2 3/4 1/2 3/4 2/3 3/4
(12,12,0) (32,24,4) (40,36,2) (64,48,8) (80,72,4) (108,96,6) (120,108,6)
1/2 2/3 5/6 2/3 5/6 3/4 5/6
3.2.3.4 Realizace Reed-Solomon-konvolučního kódování v programu Matlab Blok dopředné korekce chyb realizován jako kodér v souboru fecenc.m a jako dekodér v souboru fecdec.m. V těchto souborech je využito některých funkcí z Communication Toolboxu programu Matlab, neboť výrazně usnadňují vytvoření celého modelu pro simulační účely. V souboru bloku kodéru fecenc.m je nejprve provedeno RS-kódování. Definujeme vstupní parametry potřebné pro správné zakódování vstupního slova, tedy počet bajtů před a po 18
kódování K, N a počet bitů na symbol m. Poté vytvoříme polynom generátoru pole pomocí rsgenpoly. Vzhledem k používání zkráceného RS kódu se vstupní sekvence vhodně rozdělí na bloky dle tabulky 3.2 a na začátek každého bloku se doplní potřebný počet nul k vytvoření informační části RS kódového slova. Pomocí funkce gf se upravené bloky dat ke kódování převedou do reprezentace v Galoisově poli. Tato reprezentace pak může být pomocí funkce rsenc zakódovaná na N-symbolová slova. Zbývá odstranit vložené nuly a data jsou zakódovaná zkráceným RS kódem. Druhá část FEC kodéru je tvořena konvolučním kodérem. Nejprve je vytvořena mřížková (trellis) struktura s použitím funkce poly2trellis a vytvářecích polynomů kodéru G1 a G2. Poté jsou výstupní data z RS-kodéru zakódována konvolučním kodérem s pomocí funkce convenc. Pro snížení bitové rychlosti je následně provedeno vytečkování kódu. Dekodér FEC realizovaný v souboru fecdec.m provádí inverzní operaci. Opět je využita funkce poly2trellis k definici mřížkové struktury dekodéru, do datové posloupnosti se vloží značky tam, kde byly tečkováním hodnoty odebrány a data jsou dekódována pomocí Viterbiho algoritmu funkcí vitdec. Následuje definice parametrů RS-dekodéru, převedení dat do podoby Galoisova pole a vlastní RS-dekódování funkcí rsdec.
3.2.4 Prokládání Prokládání (interleaving) se používá k ochraně signálu proti skupinovým chybám a tvoří doplněk kanálového kódování. Pokud se v signálu objeví skupinová chyba, dojde v důsledku ukládání a vyčítání signálu z paměti na přijímací straně k tomu, že skupinová chyba je „rozprostřena“ a místo ní se vytvoří pouze chyby ojedinělé. Princip prokládání signálu je znázorněn na obrázku 3.7. Vstupní sekvence je zde tvořena pěti osmibitovými symboly označenými písmy A až E. Důležitou částí bitového prokladače je paměťový registr, do kterého se ukládají pomocné hodnoty a jehož rozměry závisí na rámci vnějšího kódu a hloubce prokládání. Tyto rozměry víceméně určují schopnost prokladače rozprostřít větší skupinovou chybu. Vlastní provedení prokládání je tvořeno dvěma operacemi. Při první operaci zapíšeme do paměťového registru vstupní bity vodorovně a při druhé operaci datové bity čteme svisle, tak jak je naznačeno na obrázku. Tímto způsobem se ve výstupní sekvenci data promíchají tak, že pokud v kanálu vlivem skupinové chyby nesprávně přijmeme několik po sobě jdoucích bitů, chyba pro nás není tak výrazná, protože je rozprostřena do více symbolů a můžeme ji pak vhodným dekodérem eliminovat. Odstranění prokládání se provede opět s pomocí paměťového registru. Přijatá data do něj zapisujeme svisle a čteme vodorovně. Efekt rozprostření je vidět v dolní sekvenci na obr. 3.7. Tabulka 3.3 - Velikosti bloků bitového prokladače Default (16 subkanálů) BPSK 192 QPSK 384 16-QAM 768 64-QAM 1152
8 subkanálů 96 192 384 576
19
4 subkanálů 48 96 192 288
2 subkanálů 24 48 96 144
1 subkanálů 12 24 48 72
Obrázek 3.7 - Princip prokládání [5]
Velikost bloku, se kterým pracuje bitový prokladač, odpovídá počtu kódovaných bitů za subkanál OFDM symbolu. Tabulka 3.3 uvádí velikosti bloků bitového prokladače při použití různých modulací. Je z ní vidět, že při použití více subkanálů a modulace s více stavy je doporučeno volit větší velikosti bloků.
20
3.3 Modulace 3.3.1 Digitální modulace Přenášený signál má tři základní parametry – kmitočet, amplitudu a fázi. Modulace je proces, při kterém dochází k ovlivňování některého z těchto parametrů signálu v závislosti na okamžité hodnotě modulačního signálu. Rozdělujeme analogové a digitální modulace, pro použití v bezdrátových systémech jako je WiMAX se využívá digitálních modulací, kterým se dále věnuje tato kapitola. U digitálních modulací se kmitočet, fáze nebo amplituda signálu mění skokově podle toho, zda se má poslat nula, jednička nebo blok nul a jedniček. Proces modulace se někdy také nazývá „klíčování“. Základní typy modulací jsou: – amplitudová modulace – amplituda signálu se mění podle hodnot amplitudy odpovídajícího průběhu modulačního signálu. V nejjednodušší digitální formě jde o tzv. on-off keying, kdy se signál zapíná a vypíná podle maximální a nulové amplitudy v bitovém průběhu. Tato modulace se označuje amplitudové klíčování (ASK), – kmitočtová modulace – kmitočet signálu se mění mezi diskrétními hodnotami kmitočtu, které reprezentují průběh bitů (FSK), – fázová modulace – počáteční fáze signálu se mění mezi diskrétními hodnotami fázových stavů, které reprezentující průběh bitů (PSK). Existuje více modulačních metod, které jsou vždy odvozené z uvedených tří základních typů. S počtem diskrétních úrovní amplitudy, frekvence nebo fáze roste počet bitů, které mohou být přeneseny v jednom signálovém stavu. Podle počtu stavů nosné vlny můžeme rozdělit modulace na dvoustavové a vícestavové. U vícestavových modulací je jeden signálový stav vždy reprezentován skupinou bitů (symbolem) délky n. Vztah mezi počtem stavů M a délkou symbolu n může být vyjádřen vztahy n = log2(M) nebo M = 2n. Z uvedeného plyne, že zvýšení přenosové rychlosti spojení lze dosáhnout použitím modulace s větším počtem stavů. Vzhledem k výskytu rušení, interferencí a dalších nedokonalostí kanálu v reálných systémech není možné počet stavů zvyšovat neomezeně, neboť by se podstatně zvýšila náročnost správné detekce signálového stavu. Tato chybně detekovaná data by vedla k vyššímu výskytu bitových chyb na straně přijímače a tedy ke snížení kvality signálu dovedenému ke koncovému uživateli. Z předchozích odstavců je tedy jasné, že modulace dovoluje systému WiMAX upravit data na signál lépe přenositelný rádiovým rozhraním. Když je rádiové rozhraní kvalitní, může být použito modulační schéma vyššího stupně, které dovoluje vyšší přenosovou rychlost. S ohledem na útlum signálu a velikost šumu, umožňuje systém WiMAX přepnout na nižší modulační schéma tak, aby se zajistila dostatečná kvalita a stabilita spojení. Tato vlastnost dovoluje, aby se systém lépe vypořádal i s časově proměnnou velikostí rušení. V systému WiMAX se používá fázové klíčování a kvadraturní amplitudová modulace v modifikacích BPSK, QPSK, 16-QAM a 64-QAM. Obrázek 3.8 ukazuje použití modulací v systému WiMAX a také doporučené hodnoty pro odstup signálu od šumu (SNR), kterých je potřeba dosáhnout, aby byl přenos dostatečně kvalitní.
21
Base Station
64-QAM 22 dB
16-QAM 16 dB
QPSK 9 dB
BPSK 6 dB
Obrázek 3.8 – Modulace a doporučené odstupy signálu od šumu
3.3.2 Modulace BPSK a QPSK Modulace BPSK (Bit Phase Shift Keying) a QPSK (Quadrature Phase Shift Keying) jsou modulacemi, při kterých se mění počáteční fáze signálu mezi diskrétními hodnotami fázových stavů. Tyto modulace se v systému WiMAX používají při spojení na delší vzdálenosti nebo při horších přenosových podmínkách, protože jsou méně náročné na odstup signálu od šumu (SNR). Požadovaný odstup SNR je 9 dB pro QPSK a 6dB pro BPSK. Jejich nevýhodou je nízký počet bitů přenášený v jednom symbolu. Při QPSK se přenáší 2 bity/symbol, při BPSK pouze 1 bit/symbol. Konstelační (stavové) diagramy těchto modulací jsou zobrazeny na obr. 3.9a, 3.9b.
Obrázek 3.9 – Konstelační diagramy modulací používaných v systému WiMAX. BPSK (a), QPSK (b), 16-QAM (c), 64-QAM (d)
22
3.3.3 Modulace QAM Modulace QAM (Quadrature Amplitude Modulation) poskytují lepší využití stavového diagramu. Při modulaci se klíčuje nejen fáze, ale i amplituda nosné vlny. V systému WiMAX se používají modulace s počtem stavů M = 16 a M = 64. Modulaci 16-QAM lze využít i při nepříznivých podmínkách, je však požadován odstup signálu od šumu alespoň 16 dB. Modulace 64-QAM se využívá prakticky jen při komunikaci s přímou viditelností (LOS) a na kratší vzdálenosti, požadovaný odstup signálu od šumu je 22 dB. Výhodou použití těchto modulací je vyšší počet bitů přenášený v jednom symbolu. U 16-QAM se přenáší 4 bity/symbol u 64-QAM dokonce 6 bitů/symbol. Konstelační diagramy těchto modulací jsou na obrázku 3.9c a 3.9d. Na obrázku 3.10 je vidět srovnání 16-QAM konstelačních diagramů přijatého signálu při nižším (a) a dostatečném (b) odstupu signálu od šumu SNR.
Received Signal 5 4 3
3
2
2
1
1
0 -1
0 -1
-2
-2
-3
-3
-4
-4
-5 -5
0 In-Phase
Received Signal Signal Constellation
4
Quadrature
Quadrature
Received Signal 5
Received Signal Signal Constellation
-5 -5
5
(a)
0 In-Phase
5
(b)
Obrázek 3.10 – Konstelační diagramy 16-QAM při různém odstupu signálu od šumu. SNR = 13 dB (a), SNR = 17 dB (b)
23
3.4 OFDM 3.4.1 Úvod Modulace znamená mapování informací na změny amplitudy, kmitočtu nebo fáze. Multiplexování je metoda sdílení kmitočtového pásma. OFDM (Orthogonal Frequency Division Multiplexing) představuje kombinaci modulace a multiplexování. V této kapitole je vysvětleno spojení těchto dvou procesů a základní principy OFDM. Modulace OFDM je speciálním případem kmitočtově děleného multiplexu FDM. Rozdíl mezi nimi můžeme jednoduše vysvětlit na příkladu přepravy nákladu pomocí kamionové dopravy. Jsou dva způsoby – použít jeden velký nákladní vůz (FDM) nebo náklad rozdělit do několika menších vozů (OFDM), obě metody používají stejné množství nákladu. V případě nehody se však u OFDM ztratí pouze jedna část nákladu, zatímco u FDM přijdeme o náklad celý. Analogií k menším vozům jsou u OFDM systémů tzv. subnosné tóny (subcarriers), které musí být ortogonální. Vytvořené nezávislé kanály jsou pak sdílené pomocí kmitočtově nebo kódově děleného multiplexu.
3.4.2 OFDM symbol 3.4.2.1 Popis v časové a kmitočtové oblasti V časové oblasti je OFDM symbol tvořen ze dvou částí (obr. 3.11). Celková doba symbolu Ts se skládá z užitečné doby symbolu Tb a ochranné doby symbolu Tg, někdy označované CP (cyclic prefix), která je kopií poslední části užitečného symbolu. Délka ochranné doby symbolu může být v rozmezí 3-25% celkové doby symbolu (Tab. 3.4). Použitím delší ochranné doby se může systém lépe vyrovnat s vícecestným šířením signálu (multipath delay). Naopak při použití kratší ochranné doby při menším očekávaném výskytu příjmu odražených signálů může přijímač přijmout silnější signál, tím se sníží počet chyb při přenosu a data mohou být přenášena rychleji použitím modulace s více stavy.
Tg
Tb Ts
Obrázek 3.11 – OFDM symbol v časové oblasti
Struktura OFDM symbolu v kmitočtové oblasti je vidět na obrázku 3.12. Symbol je tvořen z tónů, jejichž číslo určuje použitou velikost FFT. Existují tři druhy tónů (subcarriers): 1. Data subcarriers – pro přenos dat 2. Pilot subcarriers – pro různé odhadovací procesy 3. Null subcarriers – nejsou pro přenos, tvoří ochranné pásmo (guard band), neaktivní tóny a DC složku
24
Obrázek 3.12 – OFDM symbol v kmitočtové oblasti
Podrobnějším pohledem na kmitočtové spektrum bychom zjistili, že OFDM symbol se skládá z celkem 256 nosných tónů, z nichž 192 tónů je použito pro data, 8 tónů slouží jako pilotní tóny a 55 tónu jako ochranné pásmo. Každý tón má přitom přesně definovanou svoji polohu.
3.4.2.2 Parametry OFDM symbolu OFDM symbol je charakterizován čtyřmi základními parametry. Šířkou kmitočtového pásma BW, počtem nosných tónů Nused , vzorkovacím činitelem n, který společně s BW a Nused určuje rozdělení tónů a užitečnou dobu symbolu Tb, a poměrem doby ochranného pásma Tg k užitečné době symbolu Tb, G. Standard IEEE 802.16eTM definuje další odvozené parametry, které jsou blíže představeny v této kapitole. Pro výpočet všech uváděných parametrů OFDM symbolu musíme nejprve určit základní parametry. Prvním z nich je šířka kanálu BW. Pro licencovaná písma je omezení šířky kanálu dáno zákonným dělením kmitočtového pásma. Lze stanovit minimální šířku kanálu 1,25 MHz. Tomu odpovídají i skutečné hodnoty šířky kanálu udávané různými výrobci, které se pohybují mezi 1,25 MHz a 28 MHz. Pro další výpočet zvolíme šířku kanálu např. BW = 7 MHz. Při přenosu budeme využívat všech 8 subkanálů a budeme chtít zajistit nejlepší zabezpečení přenášeného signálu proti vícecestnému šíření. Pro šířku kanálu BW = 7 MHz = 4 . 1,75 MHz zjistíme podle tabulky 3.4 vzorkovací faktor n = 8/7. Vzhledem k využití všech 8 subkanálů, bude počet nosných tónů Nused = 192. Nejlepší zabezpečení přenášeného signálu proti vícecestnému šíření zajistíme volbou co nejvyššího poměru ochranné doby symbolu k užitečné době symbolu, tedy G = ¼. Takto jsme stanovili čtyři základní parametry. Tabulka 3.4 – Vybrané parametry OFDM symbolu Parametr NFFT Nused n
G
Hodnota 256 200 Pro BW, které jsou násobkem 1,75 MHz, je n= 8/7, pro BW, které jsou násobkem 1,5 MHz, je n= 86/75, pro BW, které jsou násobkem 1,25 MHz, je n= 144/125, pro BW, které jsou násobkem 2,75 MHz, je n= 316/275, pro BW, které jsou násobkem 2,0 MHz, je n= 57/50, pro ostatní BW je n = 8/7 1/ , 1/ , 1/ , 1/ 4 8 16 32
25
Nyní můžeme přejít k výpočtu odvozených parametrů. Prvním z nich, NFFT, je definován jako nejmenší násobek dvou, který je větší než Nused. Hodnotu Nused = 192 jsme již určili, a tak NFFT bude zřejmě NFFT = 28 = 256, což odpovídá hodnotě v tabulce 3.1. Další parametry vypočteme následovně:
8 7 000 000 ⋅ 8000 = 8 MHz ⋅ 8000 = floor ⋅ 8000 7 8000 BW
Vzorkovací kmitočet:
FS = floor n ⋅
Vzdálenost nosných tónů:
∆f =
Užitečná doba symbolu:
1 1 Tb = = = 32 µs ∆f 31 250
Ochranná doba symbolu:
Tg = G ⋅ Tb =
Fs N FFT
=
8 000 000 256
1 4
= 31,25 kHz
(3.6) (3.7)
⋅ 0,000 032 = 8 µs
(3.8)
Celková doba OFDM symbolu: Ts = Tb + Tg = 0,000 0032 + 0,000 008 = 40 µs Tb
Vzorkovací perioda:
N FFT
=
0,000 032 256
(3.5)
(3.9)
= 0,125 µs
(3.10)
3.4.3 Ortogonalita tónů a IDFT Jak bylo zmíněno v úvodu kapitoly, hlavní myšlenkou OFDM je ortogonalita subnosných tónů. Všechny nosné tóny jsou dané funkcemi sinus nebo kosinus, u kterých je integrál neboli plocha pod křivkou za jednu periodu vždy rovna nule. Pokud budeme vlnu sinus o frekvenci m násobit jinou vlnou sinus o frekvenci n, kde m a n jsou celá čísla, bude výsledek dán opět součtem dvou sinusovek o kmitočtech (n - m) a (n + m). Výsledný integrál za jednu periodu bude opět roven nule. Pokud budeme násobit vlnu sinus o kmitočtu n vlnou sinus o kmitočtu m/n, bude výsledný integrál opět nulový. Takto zjistíme, že pro všechna celá čísla n a m budou funkce sin(mx), cos(mx), sin(nx), cos(nx) vzájemně ortogonální, tedy jejich součin bude roven nule. Tyto kmitočty se nazývají harmonické. Ortogonalita je důležitá pro porozumění OFDM, protože umožňuje současné přenášení signálů na více subnosných tónech v blízké kmitočtové vzdálenosti bez vzájemných interferencí (ICI). Podobně je tomu u systémů CDMA, kde se datové sekvence stávají vzájemně nezávislé použitím ortogonálních kódů a více uživatelů pak může ke komunikaci využívat stejné kmitočtové pásmo.
Sérioparalelní převod
IFFT
Vložení ochranné doby
Odstranění ochranné doby
FFT
ParalelněSériový převod
Obrázek 3.13 – Blokové schéma zpracování signálu v OFDM
Blokové schéma zpracování signálu v blocích vysílače a přijímače OFDM je zjednodušeně zobrazené na obrázku 3.13. Vstupem OFDM vysílače je binární datový signál nebo posloupnost komplexních hodnot, která vzniká na výstupu bloku digitální modulace. Nejprve tento datový 26
signál převedeme do paralelní podoby, kde šířka paralelního převodu N určuje počet nosných tónů výsledného symbolu. V tomto bodě by se signály ve všech větvích měly modulovat na jednotlivé nosné kmitočty dané offsetem od hlavního nosného kmitočtu při splnění podmínky na ortogonalitu subnosných tónů a v dalším kroku by se sečtením převedly do sériové podoby a vytvořily tak OFDM signál. Protože v praxi by byly tyto operace příliš náročné na hardware a také pomalé, využívá se rychlých signálových procesorů, které tyto operace provedou společně prostřednictvím inverzní diskrétní Fourierovy transformace (IDFT). IDFT se provádí vždy s jedním souborem symbolů ze všech větví společně. Tím se výrazně zkrátí doba celkového výpočtu. Výsledkem je signál v časové oblasti, který je ekvivalentní souboru v kmitočtové oblasti přes algoritmus IDFT. Podrobněji a velmi názorně je tento postup, princip a použití IDFT popsán v [12]. Na straně přijímače se provádí inverzní operace, tedy transformace pomocí FFT do N větví a následný převod do sériové podoby. Spektrum OFDM signálu při použití sedmi nosných tónů se zobrazeno na obr. 14. Je vidět, že jednotlivé tóny jsou tvořeny funkcemi sinc, které jsou od sebe tak vhodně vzdálené, že se jednotlivé tóny vzájemně vůbec neovlivňují, což zajišťuje zmíněnou odolnost proti interferencím mezi nosnými tóny. V cestě signálu mezi vysílačem a přijímačem stojí obvykle překážky a signál se tak šíří i pomocí odrazů. To vede k výskytu úniků (fading), protože signál z každé cesty může mít různé zpoždění a výkon. Výsledný přijatý signál je pak degradován. Maximální časové zpoždění je vždy určené prostředím a může být kratší nebo delší než symbolová perioda. V přenosovém kanálu mohou být některé kmitočty silně utlumeny, zatímco jiné jsou přenášeny s menším útlumem. Kanál tohoto typu se nazývá kanál se selektivním únikem, protože unik se vyskytuje na vybraných kmitočtech. Z obr. 3.14 je zřejmé, že v těchto kanálech je použití OFDM výhodné, neboť při selektivním úniku několika kmitočtů je ovlivněno pouze několik subnosných tónů a ostatní jsou přeneseny bezchybně. Místo ztráty celého symbolu tak přijdeme pouze o několik bitů, které mohou být opraveny použitím vhodného kódování.
Spektrum OFDM signálu se sedmi nosnými tóny
1
signal level [-]
0.8
0.6
0.4
0.2
0
-0.2 -10
-8
-6
-4
-2 0 2 frequency index [-]
4
6
8
Obrázek 3.14 – Spektrum OFDM signálu
27
10
3.4.4 Ochranný interval Použití ochranného intervalu je formou obrany proti časovému zpoždění symbolů – mezisymbolovým interferencím (ISI). Analogií k výskytu časového zpoždění je situace při řízení auta v dešti, kdy první auto bude stříkat vodu na sklo druhého auta jedoucího za ním. Pokud však bude druhé auto udržovat dostatečnou vzdálenost od prvního auta, bude mít mnohem lepší výhled. V oblasti symbolů je to podobné. Symboly mezi sebou na počátku a konci interferují, takže nelze přesně rozlišit jejich začátek. Pokud však do signálu vložíme mezery, bude rozlišení začátků symbolů snazší. Mezi symboly však nelze přímo vkládat prázdná místa, protože hardware vybavení pracuje s časově spojitými signály. Místo toho se vkládá vždy část symbolového průběhu. Nejdůležitější částí symbolu je jeho začátek, protože podle něj se rozhoduje o určení hodnoty bitu. Z tohoto důvodu se ochranná doba symbolu vkládá před na začátek symbolové periody a to v podobě kopie poslední části OFDM symbolu. Tato operace se také nazývá vkládání cyklické předpony (cyclic prefix). Hodnoty používaných délek ochranné doby jsou uvedeny v tabulce 3.4. Pokud budeme chtít použít např. G = ¼, budeme tedy postupovat tak, že vezmeme poslední ¼ užitečné doby symbolu a vložíme ji na začátek symbolu. Ochrannou dobu vkládáme po provedení IFFT do výsledného složeného OFDM signálu. Po příjmu signálu v přijímači se ochranná doba odstraní, tím získáme zcela periodický signál a po provedení FFT získáme zpět symboly na jednotlivých nosných tónech.
3.4.5 Upřesnění OFDM bloků v modelu v programu Matlab Ve vytvořeném modelu fyzické vrstvy v programu Matlab je implementovaná pouze první část OFDM modulace, tedy IFFT. Tato operace je pouze ukázková a provádí se s 192 datovými tóny, ačkoliv při skutečné komunikaci v systému WiMAX se prování transformace se všemi 256 tóny. Ostatní typy tónů nejsou v modelu uvažované, neboť jejich výskyt by neměl na výsledek simulací vliv. Také vkládání ochranné doby symbolu není v modelu realizované, protože při simulacích se nepoužívaly kanály s výskytem časového zpoždění a přítomnost ochranné doby by opět neměla na výsledek simulací vliv. Model však umožňuje doplnění těchto bloků v případě budoucího rozšíření modelu pro simulace i v kanálech se selektivním únikem a časovým zpožděním.
28
3.5 Odolnost proti rušení 3.5.1 Úvod Odolnost systému proti rušení lze hodnotit pomocí tzv. chybovosti bitů BER (Bit Error Rate). Tato chybovost je poměrem počtu chybně přijatých bitů a celkového počtu vyslaných bitů za časový interval. BER =
chybné bity celkem bitů
(3.11)
Parametrem závislosti bitové chybovosti BER je odstup signálu od šumu. Ten může být uvažován na vstupu přijímače, značíme ho CNR (Carrier to Noise Ratio), nebo za demodulátorem, označuje se SNR (Signal to Noise Ratio). Někdy se také můžeme setkat s pojmem spektrální účinnost, která se označuje Eb/N0, kde Eb je střední energie modulovaného signálu vztažena na jeden bit a No je hustota výkonového spektra šumu.
3.5.2 Popis použitého modelu kanálu v programu Matlab Blokové schéma na obrázku 3.15 znázorňuje model kanálu, který je použitý v modelu komunikačního řetězce vytvořeném v programu Matlab. V kanálu se k vyslanému užitečnému signálu uT(t) přičte rušení uA(t), jehož velikost lze měnit nastavením poměru signálu k šumu SNR v souboru setting.m. Pro poměr signálu k šumu přitom platí známý vztah
U SNR = 20 ⋅ log T UA
UT = 20 ⋅ log U +U R Š
(3.12)
Rušení uA(t) je vytvořeno sečtením dat z bloků „WGN“ a „Rušivý signál“. Blok WGN představuje prosté generování bílého Gaussova šumu, tedy kanál AWGN. Tento blok je podrobněji popsán v kapitole 3.5.3. Blok „Rušivý signál“ reprezentuje libovolný signál, který je možné v kanálu přičítat k užitečnému signálu. Tento signál je možné opět definovat v souboru setting.m. Současně lze měnit poměr úrovně šumu WGN uŠ a rušivého signálu uR prostřednictvím proměnné k_ruseni, pro kterou platí vztah
k_ruseni = U Š : U R = 1; 0
(3.13)
Pro hodnotu k_ruseni = 1 bude kanál tvořen pouze WGN šumem. V opačném případě při k_ruseni = 0 bude rušení v kanálu reprezentováno pouze definovaným „rušivým signálem“ uR.
29
Vstup kanálu
uR(t) = uT(t) + uA(t)
uT(t)
Výstup kanálu
uA(t) = uŠ(t) + uR(t)
uŠ(t)
uR(t)
WGN
Rušivý signál
Obrázek 3.15 – Blokové schéma kanálu použitého v modelu v programu Matlab
3.5.3 Kanál AWGN V praktických aplikacích podléhá signál při přenosu více či méně rušení. Nejčastěji používaným matematickým modelem je kanál AWGN (Additive White Gaussian Noise), který toto rušení poměrně dobře modeluje. Šum při AWGN kanálu může být charakterizován jako aditivní náhodné rušení užitečného signálu. Šum je bílý a má tedy konstantní hustotu výkonového spektra. Střední hodnota jeho výkonu je rovna nule. To znamená, že výstup bude mít při každém měření nulovou střední hodnotu, která nezávisí na čase. Pokud budeme chtít v modelu simulovat rušení v AWGN kanálu, nastavíme nejprve v souboru setting.m hodnotu k_ruseni = 1. Tím bude blok rušivý signál zcela potlačen a v kanálu bude pouze WGN šum. Jak bylo naznačeno v kapitole 3.3, kde byly popsány modulace používané v systému WiMAX, správný přenos symbolu závisí na typu použité modulace a odstupu signálu od šumu. Dále v této kapitole se tedy budeme věnovat simulacím při různém typu modulace a pokusíme se ověřit doporučené hodnoty odstupu signálu od šumu zmíněné v kapitole 3.3. První modulací, která byla simulovaná, je dvoustavová modulace BPSK. Výsledný průběh chybovosti BER v závislosti na SNR je na obrázku 3.16. Modrou čarou je vyznačena chybovost v případě, že nepoužijeme blok dopředné korekce chyb. Červenou čarou je vyznačena chybovost při použití FEC. Je vidět, že s rostoucím poměrem SNR až k 4,5 dB chybovost BER prudce klesá. Dále se však ustálí a při komunikaci se občas vyskytuje jeden chybný bit, který drží chybovost na hodnotě 5 . 10 -7 (závisí na celkovém počtu přenesených bitů). Ve většině dodatečně prováděných simulací byla při SNR > 4,5 dB chybovost BER = 0. Zmíněný jeden chybný bit se však u BPSK náhodně vyskytoval a jeho původ se nepodařilo zcela objasnit. Mohlo by však jít o nějakou parazitní odezvu na vstupní posloupnost na konci konvolučního kodéru, protože při modulaci BPSK se nepoužívá Reed-Solomonovo kódování a tedy tento jeden bit nemůže být dále opraven. Pokud budeme uvažovat chybovost bez zmíněného bitu, pak bude od hodnoty 4,5 dB chybovost nulová a tedy k doporučené hodnotě SNR = 6 dB bude zbývat rezerva 1,5 dB, která může být spotřebovaná na jiné typy rušení než způsobí WGN tak, aby byl signál ještě přenášen bezchybně. Důležitým poznatkem, který lze pozorovat na obrázku 3.16, je vlastnost nastavení modulace, že chybovost na nízkých SNR při použití FEC u BPSK je vždy nižší než teoretická chybovost bez použití kódování. Tato vlastnost je způsobena použitím pouze konvolučního kódování v bloku FEC a je zcela odlišná od ostatních modulací popsaných v následujících odstavcích. 30
Bit Error Rate (BER = f(SNR)), modulation BPSK, k ruseni=1
0
10
s FEC bez FEC (AWGN)
-1
10
-2
10
-3
BER
10
SNR = 3 dB
-4
10
-5
10
-6
10
-7
10
0
1
2
3
4
5 6 SNR (dB)
7
8
9
10
SNR = 6 dB
Obrázek 3.16 – Chybovost BER a stavové diagramy pro rostoucí poměr SNR při modulaci BPSK
Druhou simulovanou modulací je čtyřstavová QPSK modulace, obr. 3.17. Sledovaný průběh chybovosti BER se od modulace BPSK zcela liší. Při příliš nízké hodnotě odstupu signálu od šumu, SNR < 5 dB, vnáší blok FEC do systému chyby. Příčinou je nedokonalá funkce bloku dopředné korekce chyb, přesněji Reed-Solomon kodéru. Ten, jak bylo zmíněno v kapitole 3.2.3.1, je nevhodný pro použití v kanálech, kde se vyskytuje velké množství chyb. Paradoxně se tak stane, že místo toho, aby dekodér chyby opravoval, vnáší do přijaté sekvence další chybné bity a současně vzroste doba potřebná pro dekódování, neboť se provádí náročnější výpočetní operace. Pokud budeme hodnotu SNR zvyšovat, začnou mít dekódovaná data menší chybovost a po dosažení hodnoty SNR > 8,5 dB se už v opraveném přijatém signálu nevyskytují žádné chyby. To bylo ověřeno v několika simulacích i při delších přenášených sekvencích dat. Při splnění požadavku, že hodnota SNR musí být alespoň 9 dB, pak bude signál přenášen zcela bezchybně. Podobné průběhy chybovostí jako u modulace QPSK získáme při modulacích 16-QAM a 64-QAM, které používají podobná nastavení FEC kódování. Vzhledem k rostoucímu počtu stavů a tedy i větší „citlivosti“ na kvalitu přijatého signálu se však oba grafy posouvají po ose SNR k vyšším hodnotám. U modulace 16-QAM se FEC kódování vzhledem k RS kódování „nevyplatí“ pro SNR < 11,8 dB, poté chybovost prudce klesá. Od hodnoty SNR = 14,5 dB je už signál přenášen bezchybně, přitom požadovaná hodnota je alespoň 16 dB. U modulace 64-QAM se kódování „nevyplatí“ pro SNR < 20 dB, poté chybovost klesá. Od hodnoty SNR = 23 dB je signál přenášen bezchybně. Doporučená hodnota pro tuto modulaci však byla o 1 dB méně, tedy 22 dB. Ukázala se tedy skutečná náročnost 64-QAM modulace, která je, jak bylo zmíněno dříve, používaná jen při kvalitních spojeních s přímou viditelností. Dle výsledků simulace by bylo vhodné při použití modulace 64-QAM dosáhnout poměru SNR nad 23 dB.
31
Bit Error Rate (BER = f(SNR)), modulation QPSK, k ruseni=1
0
10
s FEC bez FEC (AWGN) -1
10
-2
10 BER
SNR = 6 dB -3
10
-4
10
3
4
5
6 SNR (dB)
7
8
9
SNR = 9 dB
Obrázek 3.17 – Chybovost BER a stavové diagramy pro rostoucí poměr SNR při modulaci QPSK
0
Bit Error Rate (BER = f(SNR)), modulation 16-QAM, k ruseni=1
10
s FEC bez FEC (AWGN)
-1
10
-2
10
-3
BER
10
SNR = 13 dB
-4
10
-5
10
-6
10
-7
10
10
11
12 SNR (dB)
13
14
15
SNR = 16 dB
Obrázek 3.18 – Chybovost BER a stavové diagramy pro rostoucí poměr SNR při 16-QAM
32
-1
Bit Error Rate (BER = f(SNR)), modulation 64-QAM, k ruseni=1
10
s FEC bez FEC (AWGN) -2
10
-3
10 BER
SNR = 19 dB -4
10
-5
10
-6
10
18
19
20
21 SNR (dB)
22
23
SNR = 22 dB
Obrázek 3.19 – Chybovost BER a stavové diagramy pro rostoucí poměr SNR při 64-QAM
Model vytvořený v programu Matlab umožňuje komunikačním řetězcem přenášet signály reprezentující libovolná data. Vhodným nastavením v souboru setting.m můžeme zvolit nejen přenos náhodné sekvence jedniček a nul, ale také přenos textového řetězce nebo obrázku. V následující simulaci byl modelem přenesen signál reprezentující logo WiMAX Forum. Výsledek této simulace bude visuálně dobře ukazovat rozdíl mezi použitím a nepoužitím bloku dopředné korekce chyb. Původní obrázek (obr. 3.20a) o rozměrech 300 x 300 px byl nejprve převeden do číselné posloupnosti, která má odpovídající délku 300 * 300 * 3*8bit = 2 160 000 bitů. Tato posloupnost dat byla poté poslána modelem komunikačního řetězce při použití modulace 16-QAM a kanálu AWGN při (SNR = 15 dB). V prvním případě, kdy byl blok FEC vynechán, lze na obrázku dosaženém na výstupu (obr. 3.20b) pozorovat rušení, hodnota BER = 0,006236. Ve druhém případě, kdy byl blok FEC zařazen, je obrázek přenesen podstatně lépe a dokonce bez chyb (BER = 0).
(a)
(b)
(c)
Obrázek 3.20 – Přenos obrázku kanálem AWGN při SNR = 15 dB . Původní obrázek (a), Obrázek přenesený bez FEC (b), s FEC (c)
33
3.5.4 Rušivý signál V kapitole 3.5.2 bylo uvedeno, že užitečný signál můžeme při přenosu kanálem znehodnotit nejen použitím šumu WGN, ale také libovolným signálem načteným ze souboru podle nastavení v setting.m. Cestu k souboru s rušením definuje proměnná path_ruseni. Současně je v adresáři ext_data předpřipraveno několik průběhů, které je možné v simulacích použít. Tyto průběhy byly vytvořeny přímo modelem jako signál v kanálu při dané nastavené modulaci. Kromě tohoto nastavení je vhodné modifikovat úroveň rušícího signálu k šumu WGN v proměnné k_ruseni. V případě, že k_ruseni = 0, bude v kanálu přičten k užitečnému signálu pouze rušivý signál v poměru definovaném úrovní SNR. Pokud bude k_ruseni = 0,25, pak bude v kanálu přičteno 75% rušivého signálu a 25% šumu WGN. Tato kapitola se dále bude věnovat simulacím, kdy byl jako rušící signál přičítán signál systému WiMAX o dané modulaci. Jako užitečný signál byl zvolen signál při modulaci 16-QAM. První oblastí zájmu v těchto simulacích je skutečnost, jak se bude měnit chybovost, budeme-li rušící signál přičítat v různém poměru k šumu WGN. Stavové diagramy z těchto simulací jsou na obrázcích 3.21 a 3.22.
(a)
(b)
(c)
Obrázek 3.21 – Změny v konstelačních diagramech podle různého k_ruseni. Užitečný signál 16-QAM, rušící signál 64-QAM, SNR = 14 dB. k_ruseni = 1 (a), k_ruseni = 0,5(b), k_ruseni = 0(c)
(a)
(b)
(c)
Obrázek 3.22 – Změny v konstelačních diagramech podle různého k_ruseni. Užitečný signál 16-QAM, rušící signál BPSK, SNR = 14 dB. k_ruseni = 1 (a), k_ruseni = 0,5 (b), k_ruseni = 0 (c)
34
Výsledky ukazují, že pokud by rušení v kanálu mělo charakter modulovaného signálu. Bude výsledná chybovost nižší, než kdyby bylo rušení v kanálu typu WGN. To je způsobeno přesným tvarem konstelačních diagramů modulací oproti náhodnému tvaru konstelace při šumovém signálu. Na obr. 3.21a jsou jednotlivé konstelace od své středové hodnoty náhodně vzdálené v různých směrech, což odpovídá šumu WGN. S rostoucí úrovní rušivého 64-QAM signálu se jednotlivé stavy zpřesňují a v případě 3.21b bude ve srovnání s 3.21a vyhodnoceno méně stavů chybně. Nejlepšího výsledku dosáhneme v případě 3.21c, kde se kolem každého stavu mohou hodnoty pohybovat pouze v čtverci určeném okrajem konstelačního diagramu 64-QAM. Podobný výsledek je vidět na obr. 3.22, kde je rušivý signál typu BPSK. S rostoucí úrovní rušivého signálu k šumu WGN se jednotlivé stavy deformují do tvaru konstelačního diagramu BPSK a na obr. 3.22c už jsou kolem každého z šestnácti stavů zřetelně vidět dvě oblasti seskupených stavů. Tyto dva směry odpovídají konstelačnímu diagramu modulace BPSK. Je však nutné připomenout, že toto chování je výhodné pouze v oblasti, kdy je odstup signálu od šumu SNR v blízkosti pod požadovanou minimální hodnotou SNR (Kap. 3.3). Pokud bychom se totiž dostali pod přípustnou mez, narostla by např. v případě rušivého signálu BPSK chybovost příjmu naprosté většiny symbolů. Uvedená situace je zobrazena na obr. 3.23. Je nastavena modulace 16-QAM, k_ruseni = 0,25 a rušivý signál typu BPSK. Rušení v kanálu je tedy tvořeno 75% rušivého signálu BPSK a 25% šumu WGN. Z konstelačních diagramů je vidět, že v případě 3.23a, kdy je poměr SNR nedostatečný, se sousední stavy ve vodorovném smyslu vzájemně překrývají a správnost jejich vyhodnocení je velmi nízká, čemuž odpovídá také vysoká chybovost, BER = 0,4136. Pokud SNR zvýšíme na hodnotu 10 dB (obr. 3.23b) půjde rozlišit jednotlivé stavy mnohem lépe a zlepší se i výsledná chybovost, BER = 0,00095. Při dalším zvyšování SNR (obr. 3.23c) je vidět, že sousední stavy lze odlišit poměrně snadno, což povede k nulové chybovosti, BER = 0.
(a)
(b)
(c)
Obrázek 3.23 – Změny v konstelačních diagramech při k_ruseni = 0,25 a různém SNR. SNR = 6 dB (a), SNR = 10 dB (b), SNR = 12 dB (c)
3.5.5 Doby simulací Při provádění simulací v programu Matlab hrála důležitou roli také doba potřebná pro výpočet. Tato doba se liší podle použité modulace, nastaveného poměru signálu od šumu SNR a samozřejmě délky přenášené sekvence. Ukázalo se také, že je vhodné optimalizovat algoritmy provádění jednotlivých početních úkonů.
35
V raných verzích modelu stoupala doba potřebná pro výpočet simulace téměř exponenciálně s délkou přenášené sekvence. Při podrobném zkoumání bylo zjištěno, že příčinou byla vytvořená funkce zajišťující převod tvarů dat z matice dekadických hodnot na binární posloupnost, kterou je nutné využít např. mezi výstupem Reed-Solomon kodéru a vstupem konvolučního kodéru. Tato funkce byla napsaná zcela logicky, ale přesto převod pomocí ní, který je v jedné simulaci využit dvakrát, zabral více než 60% celkové doby simulace a jeho časová náročnost exponenciálně narůstala. Po několika důkladných optimalizacích této funkce se podařilo při přenosu 1 000 000 bitů minimalizovat původní dobu výpočtu přes 50 minut na novou dobu výpočtu menší než 10 vteřin, která roste lineárně s délkou přenášené sekvence. Toho bylo dosaženo aplikací maticových operací s daty, rozdělením vstupní sekvence do vhodně dlouhých úseků a následného provedené převodu tvarů dat v jednotlivých dílčích úsecích. Tento příklad dokumentuje, že při psaní kódu v programu Matlab je nutné kontrolovat a optimalizovat každou část výpočtu, neboť i zcela logicky členěný algoritmus může způsobit razantní zvýšení doby výpočtu. Po uvedených optimalizacích a opětovném provedených měření výpočtu jednotlivých operací v komunikačním řetězci, bylo potvrzeno, že nejvíce výpočetního času spotřebuje náročné FEC dekódování v případě, že je v přenášené sekvenci větší počet chyb. V následující tabulce jsou uvedeny orientační doby simulací při přenosu náhodných sekvencí nul a jedniček podle různých modulací. Pro každou modulaci je vhodně volen odstup signálu od šumu tak, aby byly zaznamenány všechny případy při příjmu velmi rušeného, středně rušeného a minimálně rušeného signálu. Tabulka 3.5 – Orientační doby simulací podle typu modulace a SNR Modulace, SNR
Doba simulace Doba simulace Doba simulace Velikost při přenosu při přenosu při přenosu nekódovaného 100 000 B 10 000 B 1 000 B bloku [B]
BPSK, 1 dB
12
< 1s
5,4 s
1 min 41 s
BPSK, 3 dB
12
< 1s
5,3 s
1 min 41 s
BPSK, 6 dB QPSK, 5 dB QPSK, 7 dB QPSK, 9 dB 16-QAM, 11 dB 16-QAM, 13 dB 16-QAM, 16 dB 64-QAM, 19 dB 64-QAM, 21 dB 64-QAM, 23 dB
12 24 24 24 48 48 48 96 96 96
< 1s 68,7 s 23,1 s 9,9 s 36,2 s 17,2 s 7,9 s 26,1 s 12,2 s 10,6 s
5,3 s 10 min 46 s 3 min 8 s 23 s 5 min 31 s 2 min 47 s 16,3 s 2 min 46 s 1 min 21 s 19 s
1 min 41 s 111 min 46 s 32 min 6 s 6 min 18 s 52 min 54 s 24 min 44 s 3 min 14 s 25 min 40 s 11 min 35 s 3 min 23 s
Pozn. Konfigurace PC použitého pro výpočet: CPU Pentium D 2x3.2 GHz, paměť RAM 2x512 MB 667 MHz, operační systém Windows XP Home, Matlab 7.0
36
4 Model komunikačního řetězce na CD Na přiloženém kompaktním disku je umístěn model komunikačního řetězce vytvořený v prostředí programu Matlab. Kromě toho CD obsahuje krátké informace o projektu v HTML, text bakalářské práce v PDF a další dokumenty.
4.1 Struktura CD Obsah CD je rozdělen do čtyř adresářů.
Dokumenty Obsahuje kromě počítačové verze textu projektu i další volně dostupné textové dokumenty, které byly použity při zpracování. Html Obsahuje pomocné soubory k souboru info.html
Matlab Obsahuje všechny zdrojové soubory pro simulace v programu Matlab. Důležité soubory jsou uvedeny v kapitole 4.2.
Simulace Obsahuje výsledky některých simulací, které byly i nebyly uvedeny v tomto textu. Podrobněji v kapitole 4.3. Současně je v kořenovém adresáři umístěn soubor info.html, který obsahuje krátké informace o bakalářské práci a obsahu CD z prostředí internetového prohlížeče.
4.2 Popis souborů v adresáři Matlab Tyto soubory jsou umístěny v adresáři Matlab. V následujícím přehledu jsou uvedeny pouze nejdůležitějších soubory. Ve všech souborech je obsažena základní nápověda z prostředí programu Matlab přes příkaz help <jméno souboru>. Současně je každý zdrojový kód bohatě komentován.
Základní simulační soubory: main.m Hlavní simulační soubor, pomocí kterého se spouští celá simulace. Využívá v sobě funkce všech bloků komunikačního řetězce.
setting.m Soubor, pomocí kterého se provádí podrobné nastavení parametrů simulace. Těmi jsou charakter vstupních dat a jejich délka, poměr signálu k šumu SNR, poměr WGN šumu k rušivému signálu a cesta k externímu souboru rušivého signálu, použití bloku FEC, typ modulace, případně zobrazení konstelačního diagram přijatých dat nebo grafické zobrazení úrovní signálů v kanálu.
37
ber_analyze.m Tento soubor provede vícenásobnou simulaci přenosu dat při použití souboru main.m. Je potřeba definovat vstupní parametry pro simulaci – charakter vstupních dat, rozsah hodnot SNR, velikost kroku, počet simulací na jedné hodnotě SNR. Pokud jsou k dispozici více než čtyři nenulové hodnoty BER, vykreslí se graf chybovosti BER v závislosti na SNR. ber_analyze_ruseni.m Tento soubor provede vícenásobnou simulaci přenosu dat při použití souboru main.m. Je potřeba definovat vstupní parametry pro simulaci – charakter vstupních dat, rozsah hodnot k_ruseni, velikost kroku, počet simulací na jedné hodnotě k_ruseni. Pokud jsou k dispozici více než čtyři nenulové hodnoty BER, vykreslí se graf chybovosti BER v závislosti na k_ruseni. Adresáře ve složce Matlab: ext_data Obsahuje externí data uložená v souborech MAT. Jsou zde připraveny datové sekvence délky 2000 - 1250000 bajtů v souborech set1.mat až set4.mat a rušivé signály v kanálu reprezentované signály kanal_BPSK.mat a kanal_64-QAM.mat. sim_out Do tohoto adresáře se ukládají všechny grafy zobrazené během simulací, např. konstelační diagramy, grafické zobrazení úrovní šumů v kanálu nebo průběh chybovostí v případě vícenásobné simulace. Také jsou zde uloženy přenesené obrázky a textové soubory. Vybrané bloky komunikačního řetězce: randomize.m Realizace bitového randomizeru. fecenc.m, fecdec.m Realizace kodéru a dekodéru pro dopředné zabezpečení proti chybám při přenosu (FEC). Jeho složení bylo podrobněji popsáno v kapitole 3.2.3.4 interleaving.m Realizace prokládání (interleaving). modulace.m, demodulace.m Realizace modulace signálu při použití modulací BPSK, QPSK, 16-QAM a 64-QAM a jejich zpětná demodulace. kanal.m Realizace modelu přenosového kanálu s přičtením šumu WGN nebo externího rušivého signálu. Viz kapitola 3.5.2. Pomocné funkce: gen_vstup.m Generování vstupní sekvence dat dle nastavení v souboru setting.m.
38
graf_ber_snr.m Vykreslí graf BER v závislosti na SNR. obr2posl.m, posl2obr.m Soubory pro převod obrázku do dekadické posloupnosti dat a zpět. obrazek_out.m Uložení vstupního a přeneseného obrázku do souboru a zobrazení srovnání obou obrázků. matdec_tobin.m Funkce realizující převod matice dekadických hodnot na posloupnost binárních čísel (využito např. mezi bloky Reed-Solomon a konvolučního kodéru). Vzhledem k náročnosti převodu tato funkce razantně ovlivňovala délku výsledné simulace v ranných verzích modelu. Podařilo se ji optimalizovat na maximální rychlost výpočtu. Viz. kapitola 3.5.4. Důležitou součástí simulace jsou i další menší pomocné soubory, používané např. pro převody maticových tvarů. Tyto soubory obsahují popis přímo ve zdrojovém kódu a není třeba je na tomto místě uvádět.
4.3 Ukázky nastavení simulací V adresáři Simulace jsou v jednotlivých adresářích umístěny výsledky simulací, které jsou i nejsou přímo využity v tomto textu. Názvy adresářů odpovídají použitým typům modulace. V podadresářích jsou jednotlivé simulace číslovány zpravidla sim_1, sim_2 atd. Všechny simulace obsahují informace o simulaci v souboru sim_<číslo>.txt, graf chybovosti BER jako figure z programu Matlab i jako obrázek ve formátu PNG. Dále kopii výsledného obsahu workspace, případně přenesené obrázky.
4.3.1 Nastavení souboru setting.m pro simulaci Tato kapitola ukazuje návod, jak nastavit soubor setting.m pro správné provedení simulace. V tabulce 4.1 je podrobný popis jednotlivých proměnných, kterými lze modifikovat nastavení simulace. Současně jsou ve sloupci nastavení proměnné připraveny ukázkové hodnoty pro přenos náhodné sekvence jedniček a nul vytvořeným modelem. Byla zde zvolena modulace 16-QAM, použije se FEC kódování, kanál je tvořen pouze WGN šumem a odstup signálu od šumu je 13 dB. Zobrazení konstelačního diagramu přijatého signálu a úrovní přijatého signálu a šumu je zapnuto. Zbývá spustit celou simulaci pomocí souboru main.m. V průběhu simulace je uživatel informován o aktuálním kroku simulace a na konci může shlédnout počet chyb, výslednou chybovost, dobu simulace a také zobrazené grafy. Tyto informace jsou přehledově ukázané na obrázku 4.1. Podle 4.1a je vidět, že ze vstupu na výstup bylo chybně přeneseno 79 bitů, čemuž odpovídá výsledná chybovost BER = 0,0009875. Jako zajímavost se také dozvíme, že při přenosu kanálem bylo chybných 3639 bitů, z nichž byla velká část opravena díky použití FEC kódování. Z konstelačního diagramu přijatého signálu na obr. 4.1b je vidět, že část přijatých stavů mohla být přijata chybně a bylo by tedy lepší pokusit se zvýšit dosažený odstup signálu od šumu. Obr. 4.1c ukazuje napěťové úrovně užitečného signálu, šumu WGN, rušivého signálu a celkového přijatého signálu.
39
Tabulka 4.1 – Popis proměnných a nastavení pro přenos náhodné sekvence jedniček a nul
Nastavení proměnné
Popis parametru
vstup = 1
"vstup" definuje jaká data se budou přenášet: 1 - vygeneruje náhodnou sekvenci dat (1/0) 2 - textový řetězec 3 – obrázek (formát PNG)
N = 10000
Pro VSTUP = 1: "N" definuje počet symbolů (8 bitů) generované sekvence dat. Pro velké simulace kdy je cílem odhalit i velmi malou chybovost BER je vhodné volit vysoká čísla. Při hodnotě N=10 000; => 8*10 000 = 80 000 bitů => nejmenší BER = 1.25.10-5. Je také možné zvolit předpřipravený set hodnot dané délky => N ='set1' (2000 hodnot), 'set2' (25000), 'set3' (125000), 'set4' (1250000) Pro VSTUP = 2: "N" definuje cestu k TXT-souboru s daty, která se kanálem přenesou. Přenesený text se uloží do adresáře "sim_out". Základní hodnota je N='text.txt'; Pro VSTUP = 3: "N" definuje cestu k obrázku, který se kanálem přenese. Přenesený obrázek se uloží do adresáře "sim_out". Základní hodnota je N='wimax_logo.png';
mod_info = '16-QAM'
"mod_info" definuje použitý typ modulace. Možná nastavení: BPSK, QPSK, 16-QAM, 64-QAM
SNR = 13 dB
"SNR" definuje požadovaný odstup signálu od šumu (v dB)
k_ruseni = 1
"k_ruseni" definuje poměr Uš:Ur (1-0) Uš = úroveň WG šumu, Ur = úroveň interferujícího signálu k_ruseni = 1; => pouze šum Uš k_ruseni = 0; => pouze rušivý signál Ur
path_ruseni = ''
"path_ruseni" definuje cestu k externímu souboru s proměnou rušení "data_kanal". Uplatní se pouze pokud k_ruseni není 1 Předpřipravená rušení: path_ruseni = 'ext_data/kanal_BPSK.mat'; path_ruseni = 'ext_data/kanal_64QAM.mat';
fec = 1
"fec" nastavuje použití/nepoužití FEC kodéru a dekodéru 1 - s FEC 0 - bez FEC
konstelace = 1
"konstelace" určuje zobrazení konstelačního diagramu přijatého signálu 1 - zobrazit 0 - nezobrazit
sumy_v_kanalu = 1
"sumy_v_kanalu" určuje zobrazení úrovní šumů v přenášeném kanálu 1 - zobrazit 0 - nezobrazit
40
(b) Signalove urovne pro prvnich 25 vzorku (SNR=13dB, k ruseni=1) 30
25
ytx AWGN ruseni ytx+AWGN+ruseni
U [V]
20
15
10
(a) 5
0
5
10
15
20
25
vzorek [-]
(c) Obrázek 4.1 – Výsledek simulace podle nastavení v tabulce 4.1. Command Window (a), konstelační diagram přijatého signálu (b), úrovně signálu a šumů v kanálu (c)
4.3.2 Přenos obrázku a textového řetězce Pokud budeme chtít modelem přenést obrázek nebo textový řetězec, bude nastavení souboru setting.m velmi podobné jako u přenosu náhodné sekvence dat v předchozí kapitole. Pro přenos textového řetězce pozměníme proměnnou vstup = 2. Pro přenos obrázku bude vstup =3. Dále je třeba nastavit cestu k souboru s textem nebo obrázku prostřednictvím proměnné N, např. N = 'text.txt' nebo N = 'wimax_logo.png'. Po skončení simulace najdeme v adresáři sim_out oba vstupní a výstupní soubory a můžeme zhodnotit kvalitu jejich přenosu.
4.3.3 Vícenásobné simulace Jak bylo zmíněno v kapitole 4.2, je také možné provádět vícenásobné simulace pomocí souborů ber_analyze.m a ber_analyze_ruseni.m. Nastavení těchto simulací je podobné jako u samostatné jednobodové simulace. Pouze se jednotlivé parametry nastavují přímo na začátku uvedených souborů.
41
5 Závěr V bakalářské práci jsem prostudoval způsob zpracování signálu ve fyzické vrstvě systému WiMAX. Na základě získaných poznatků jsem sestavil blokové schéma fyzické vrstvy systému dle specifikace WirelessMAN-OFDM PHY. Všechny důležité aspekty zpracování signálů v jednotlivých blocích, tedy randomizace, zabezpečení proti chybám při přenosu, prokládání, modulace a OFDM, jsem popsal v první části bakalářské práce. Ve druhé části bakalářské práce jsem se věnoval simulacím jednotlivých nastavení fyzické vrstvy, zejména sledování závislosti chybovosti na poměru signálu k šumu SNR při různých modulacích a také při odlišných podmínkách v komunikačním kanálu. Výsledkem praktické části bakalářské práce je model komunikačního přenosového řetězce ve fyzické vrstvě systému podle specifikace WirelessMAN-OFDM PHY vytvořený v prostředí programu Matlab. Tento model lze nalézt na přiloženém CD včetně stručného popisu jeho funkcí a nastavení. V případném pokračování práce by bylo vhodné se zaměřit na doplnění modelu o další bloky, např. vkládání ochranného intervalu nebo rozšíření modelu kanálu o selektivní únik, které by umožnily provádět simulace přenosu signálu bližší reálnému prostředí.
42
Použité zkratky AAS ARQ ASK AWGN BCH BER BPSK BW CNR CP DL DFT DIUC GF FDD FDM FEC FFT FSK ICI IDFT IEEE IFFT ISI LOS MSH NLOS PRBS OFDM QAM QPSK PDU PHY PRBS PSK RS RS-CC SNR STC TDD TDMA UL UIUC WGN WiMAX
Adaptive Antenna System Automatic Repeat Request Amplitude Shift Keying Additive White Gaussian Noise Bose, Ray-Chaudhuri, Hocquenghem code Bit Error Rate Binary Phase Shift Keying Band Width Carrier to Noise Ratio Cyclic Prefix Downlink Discrete Fourier Transform Downlink Interval Usage Code Galois Field Frequency Division Duplex Frequency Division Multiplexing Forward Error Correction Fast Fourier Transform Frequency Shift Keying Inter Carrier interference Inverse Discrete Fourier Transform Institute of Electrical and Electronics Engineers Inverse Fast Fourier Transform Inter Symbol interference Line-Of-Sight Mesh Non-Line-Of-Sight Pseudo Random Binary Sequence Orthogonal Frequency Division Multiplexing Quadrature Amplitude Modulation Quadrature Phase Shift Keying Protocol Data Unit Physical Layer Pseudo Random Binary Source Phase Shift Keying Reed Solomon code Reed Solomon Convolutional Concatenated Codes Signal to Noise Ratio Space-Time Coding Time Division Duplex Time Division Multiple Access Uplink Uplink Interval Usage Code White Gaussian Noise Worldwide Interoperability for Microwave Access
43
Literatura [1] IEEE Standard 802.16™-2004: Air Interface for Fixed and Mobile Broadband Wireless Access Systems. IEEE, 2004. [2] IEEE Standard 802.16e™-2005: Air Interface for Fixed and Mobile Broadband Wireless Access Systems. IEEE, 2006. [3] The IEEE 802.16 Working Group on Broadband Wireless Access Standards [online]. Dostupný z WWW:
. [4] ŠKAPA, M. Zpracování signálu v systému WiMAX: Semestrální projekt č.2. Brno: Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, 2006. [5] HANUS, S. Bezdrátové a mobilní komunikace. Brno: Skripta FEKT VUT v Brně, 2005. ISBN: 80214-2833-8. [6] SCHULZE, H., LUEDERS, Ch. Theory and Applications of OFDM and CDMA. John Wiley & Sons Ltd, 2005. ISBN-10 0-470-85069-8. [7] SLANINA, M., ŘÍČNÝ, V. Reed-Solomonovy kódy v časové a ve frekvenční oblasti. Elektrorevue [online]. 2006, No. 11 [cit. 2006-02-14]. Dostupný z WWW:
. [8] VÍT, V. Televizní technika – přenosové barevné soustavy (A). Praha: Technická literatura BEN, 1997. ISBN 80-86056-04-X. [9] CROZIER, E., KLEIN A. WiMAX’s technology for LOS and NLOS environments. WiMAX Forum, 2004. Dostupný z WWW: . [10] SAUTER, M. Communication System for the Mobile Information Society. John Wiley & Sons Ltd, 2006. ISBN-10 0-470-02676-6. [11] ANDERSON, H. Fixed Broadband Wireless System Design. John Wiley & Sons Ltd, 2003. ISBN 0-470-84438-8. [12] LANGTON, Ch. Orthogonal Frequency Division Multiplexing. 2004 [online]. Dostupný z WWW: . [13] Internetové stránky WiMAX Forum [online]. Dostupný z WWW: .
44
Vysoké učení technické v Brně
Fakulta elektrotechniky a komunikačních technologií Ústav radioelektroniky
POPISNÝ SOUBOR ZÁVĚREČNÉ PRÁCE
Autor: Martin Škapa Název závěrečné práce: Zpracování signálů v systému WiMAX Název závěrečné práce ENG: Signal Processing in WiMAX System Anotace závěrečné práce: Systém WiMAX, založený na standardu IEEE 802.16, představuje v posledních letech velmi slibnou bezdrátovou technologii. V současné době je využíván na mnoha místech po celém světě. Díky použití modulace OFDM je systém WiMAX odolný vůči rušení i v nepříznivých přenosových podmínkách. Cílem bakalářské práce je popsat zpracování signálu ve fyzické vrstvě systému WiMAX. Nejprve je sestaveno blokové schéma fyzické vrstvy systému, poté je doplněn podrobnější popis jednotlivých bloků, kde jsou diskutovány všechny důležité aspekty zpracování signálu. Je vysvětleno kanálové kódování, randomizace, dopředné zabezpečení proti chybám při přenosu, prokládání, modulace a také OFDM bloky. V praktické části bakalářské práce byl sestaven model komunikačního řetězce ve fyzické vrstvě v prostředí programu Matlab. S tímto modelem je možné provádět různé simulace díky variabilitě jeho nastavení. Společně se získanými výsledky je v závěrečných kapitolách bakalářské práce diskutovaná odolnost systému WiMAX proti rušení. Anotace závěrečné práce ENG: The WiMAX system, based on the IEEE 802.16 standard, has represented a very promising wireless technology in recent years. Nowadays, it has been employed in many countries all over the world. It features a good resistance to disturbance even in unfavourable transfer conditions particularly due to using the OFDM modulation. The purpose of the bachelor thesis is to describe physical layer signal processing in the WiMAX system. Firstly, a transfer chain flow chart of the physical layer is drawn. Thereafter, a deeper block description is
Vysoké učení technické v Brně
Fakulta elektrotechniky a komunikačních technologií Ústav radioelektroniky
POPISNÝ SOUBOR ZÁVĚREČNÉ PRÁCE presented where all important aspects of signal processing are discussed. Channel coding such as randomization, forward error correction coding, interleaving, modulation and also OFDM blocks are explained. For a practical examination, a transfer chain model of the physical layer was created in the Matlab environment. It allows making various simulations with modified settings. In association with simulation results, the WiMAX system resistance against disturbance is discussed in final chapters of the bachelor thesis. Klíčová slova: Zpracování signálu, WiMAX, fyzická vrstva, FEC kódování, OFDM, rušení v kanálu, BER Klíčová slova ENG: Signal processing, WiMAX, physical layer, forward error correction coding, OFDM, channel disturbance, BER Typ závěrečné práce: bakalářská práce Datový formát elektronické verze: PDF Jazyk závěrečné práce: čeština Přidělovaný titul: Bc. Vedoucí závěrečné práce: prof. Ing. Stanislav Hanus, CSc. Škola: Vysoké učení technické v Brně Fakulta: Fakulta elektrotechniky a komunikačních technologií Ústav / ateliér: Ústav radioelektroniky Studijní program: Elektrotechnika, elektronika, komunikační a řídicí technika Studijní obor: Elektronika a sdělovací technika