Cím: Ortogonális kódok alkalmazása a harmadik generációs mobilkommunkiációs rendszerben
Szerző(k):  Hegyi Barnabás 
Füzet: 2003/március, 158 - 164. oldal  PDF  |  MathML 
Témakör(ök): Szakmai cikkek

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Képzeljük el egy nemzetközi repülőtér érkezési várótermét. Egy angol anyanyelvű érkező utas fülét angol nyelvű beszélgetés hangja üti meg először, ugyanígy egy magyar utas magyar nyelvű beszélgetésre figyel fel a leghamarább. Akkor is képesek figyelemmel kísérni és megérteni a saját anyanyelvükön zajló beszélgetést, ha a beszélgetéssel egyidejűleg több másik idegen nyelvű beszélgetés is hallható akár ugyanakkora hangerővel. Ezenkívül egy dörmögő férfihang és egy vékony női hang egyvelegét hallgatva is képesek a két beszélőt egymástól függetlenül követni, érteni még akkor is, ha azok ugyanazt a nyelvet beszélik. Nyilvánvalóan két felváltva, nem egyszerre beszélő várótermi utas beszéde is könnyen szétválasztható, megérthető, bár egy ilyen helyzet a valóságban ritkán fordulhat elő. Az előbbi példákban közös, hogy a beszélők és a hallgatók ugyanabban a légtérben, hangtérben tartózkodva próbálnak kommunikálni, és, mint láttuk, a hallgatónak a különböző beszélők beszédének szétválasztására számos lehetőség áll rendelkezésére.
Egy híradástechnikai rendszer esetében is gyakran fordul elő, hogy több felhasználó szeretne a rendszer rendelkezésére álló erőforrásokhoz hozzáférni, azokat igénybe venni. Ilyen erőforrás például a rendszer számára kijelölt frekvenciasáv vagy idő. A zavarmentes kommunikáció megvalósításához tehát a felhasználók számára valamelyik erőforrás megosztásával megfelelően elválasztott ,,erőforrás-szeleteket'' kell kijelölni. A kódosztásos többszörös hozzáférésű kommunikációs rendszerekben többek között a címben hivatkozott ortogonális kódokat használják a különböző kommunikációs csatornák elkülönítésére. A következőkben a kódosztásos többszörös hozzáférés (CDMA ‐ Code Division Multiple Access) alapjaival, illetve egy konkrét rendszerrel ismerkedünk meg röviden, majd az ortogonális kódokat vizsgáljuk meg részletesebben.
CDMA alkalmazásakor a különböző felhasználók (pl. mobilkészülékek) ugyanazt a frekvenciasávot ugyanabban az időben használják. A felhasználók jeleinek szétválasztását az azokhoz rendelt egyedi kódokkal oldják meg. Ez a hozzáférési mód leginkább arra a bevezetőbeli példára hasonlít, amelyben a hallgató különböző nyelvű zsivajban próbálja az anyanyelvén hallható beszédet kiszűrni, megérteni. A CDMA-ban adáskor az információs biteket az adott csatornához kijelölt kód segítségével számos ún. chippé sokszorozzák*. A chip a kódolt jel alapegysége. Vételkor ugyanazzal a kóddal állítják vissza az eredeti biteket. Egy bithez a kód hosszával megegyező számú chipet rendelnek, ezt a számot kiterjesztési tényezőnek nevezik. Az időegység alatt küldött bitek, illetve chipek számát bit-, illetve chipsebességnek nevezik, hányadosuk nyilvánvalóan megegyezik a kiterjesztési tényezővel.
A harmadik generációs mobilkommunikációs rendszer (3G) hozzáférési technológiájának a szélessávú kódosztásos többszörös hozzáférést (WCDMA ‐ Wideband CDMA) választották. A WCDMA rövidítés egyben a harmadik generációs rendszer szabványát is jelöli. A rendszer sávszélessége 5 MHz, chipsebessége 3,84 Mchip/s. A 3G szabványosításakor követelményként tűzték ki, hogy a felhasználók különböző sebességű vonal-, illetve csomagkapcsolt szolgáltatásokat egyidejűleg érhessenek el. Vonalkapcsolt szolgáltatás például a videokonferencia, hiszen a kapcsolatnak, a vonalnak a beszélgetés teljes ideje alatt fenn kell állnia, a kommunikációban nem engedhető meg késleltetés. Az Interneten való böngészés pedig csomagkapcsolt szolgáltatás, ugyanis nem szükséges hozzá állandó kapcsolat, az információ továbbítása darabokban, ún. csomagokban késleltetéssel történhet. Sebesség szempontjából a videokonferencia a nagysebességű, míg az Interneten történő böngészés az alacsonysebességű szolgáltatások közé tartozik. Mivel a rendszer chipsebessége állandó, a különböző bitsebességű, sávszélességű csatornák kiterjesztése eltérő kiterjesztési tényezőkkel, vagyis különböző hosszúságú kódokkal történik.
A WCDMA-ban az ugyanazon adótól származó csatornák elválasztása céljából csatornánként egyedi csatornakódokat alkalmaznak, mellyel kialakul a csatorna eredeti bitsebességétől független chipsebesség. Aztán az így kapott jeleket a 2. ábrán (lásd később) látható módon egy egyszerű összegzéssel összefogják és ez kerül kisugárzásra*.
A csatornakódokat a kommunikáció különböző irányait tekintve tehát a mobilkészülék irányában az ugyanazon bázisállomás által sugárzott, míg az ellenkező irányban az ugyanazon mobilkészüléktől származó csatornák megkülönböztetésére használják. (A mobilkommunikációs rendszerekben az egyes felhasználók nem közvetlenül egymással kommunikálnak, köztük a bázisállomások alkotta átjátszó-rendszer teremti meg a kapcsolatot.) Erre az 1. ábra mutat egy példát. A bázisállomás a C1 kóddal kódolt csatornán a bal oldali, míg a C2 kóddal kódolt csatornán a jobb oldali mobilkészülék számára sugároz információt. Természetesen a két csatorna egyszerre kerül kisugárzásra, ugyanabból a jelből a bal oldali mobilkészülék a C1, a jobb oldali pedig a C2 kód segítségével nyeri ki a számára hasznos, neki szánt információt. A mobilkészülékek adáskor a C3, illetve a C4 kódokkal kódolják jeleiket, a bázisállomás az általa vett jelből a C3 kóddal a bal oldali, a C4 kóddal pedig a jobb oldali mobilkészüléktől érkező információt szűri ki. A valóságban, mint már említettük, a kódolás jóval bonyolultabb módon történik.

 
 

1. ábra. Példa a kommunikáció különböző irányaiban használt csatornakódok kijelölésére
 

A 2. ábra a WCDMA leegyszerűsített működését mutatja be két csatorna esetére. Először vizsgáljuk meg, hogyan áll elő az adó által kisugárzandó jel. Az információs bitek alkotta jelfolyam egy bináris értékű sorozatként fogható fel:
xn{0,1},n  egész.
Az (xn) sorozathoz egy kétértékű függvényt rendelnek:
x(t)=(-1)xn+1,nTbt<(n+1)Tb,ahol  Tb  a bitidő.

 
 

2. ábra. Számpélda a WCDMA rendszer leegyszerűsített működésére. A dekódolás után valóban a kódolás előtti biteket nyerjük vissza.
 

A kód egy rendezett szám k-s: c=(c1c2...ck), ahol ci=±1 a kód komponensei, i=0,...,k-1 és k a kód hossza. A kódhoz is egy kétértékű függvényt rendelnek:
c(t)=cnmodk,nTct<(n+1)Tc,
ahol Tc a chipidő és Tb=kTc.
Az y(t) kiterjesztett jelet az x(t) információs jel és a c(t) kiterjesztő jel összeszorzásával nyerik. A két csatorna kódolt, kiterjesztett jelét egy egyszerű összegzéssel egyetlen z(t) jellé fogják össze, ez kerül kisugárzásra:
z(t)=y1(t)+y2(t)=c1(t)x1(t)+c2(t)x2(t).
Vételkor a z(t) vett jelből a c(t) kiterjesztő (dekódoló) jellel dekódolják az információs jelet:
x1'(t)=c1(t)z(t)=c1(t)c1(t)x1(t)+c1(t)c2(t)x2(t),x2'(t)=c2(t)z(t)=c2(t)c1(t)x1(t)+c2(t)c2(t)x2(t).

A vett bit értékét az x'(t) dekódolt jel alatti előjeles területnek az adott bit tartamára vonatkoztatott értéke határozza meg. Ha a két információs jel azonos bitsebességű, egy bit tartama alatt az x1(t), x2(t) jelek állandók, vagyis az említett előjeles terület a c1(t)c1(t), illetve c2(t)c2(t) és a c1(t)c2(t) görbék alatti előjeles területtől és az x1(t), x2(t) jelek az adott bit tartama alatti (állandó) értékétől függ. A k hosszúságú cm, cn kódokhoz rendelt kiterjesztő függvények cm(t)cn(t) szorzata alatti előjeles terület egy bit tartamára vonatkoztatott értékét a két kód szorzatának nevezzük. (A cm jelölésmódban m felső index, mely az egyes kódok megkülönböztetését szolgálja.) A szorzat értéke a
cmcn=i=0k-1cimcin
kifejezés alapján határozható meg. A vett bit értékére vonatkozó döntés alapjául szolgáló előjeles terület értéke az 1-es dekódoló esetében tehát a
(c1c1)x1(t)+(c1c2)x2(t),
míg a 2-es dekódoló esetében a
(c2c1)x1(t)+(c2c2)x2(t)
kifejezés alapján számítható ki. Vagyis, ha
c1c2=0,
akkor az r-edik (r=1;2) dekódolóban előálló előjeles terület csak az r-edik csatornán küldött bit értékétől függ, ami éppen az átvitel célja. Ha két kód szorzata zérus, akkor ortogonálisnak nevezzük őket. Egy kód önmagával vett szorzata nyilvánvalóan éppen a kód hossza. Következésképpen, ha a két példabeli csatornához rendelt kód ortogonális, akkor a terület az adott bithez rendelt ±1 érték és a kód hosszának a szorzata. Tehát, ha az előjeles terület értéke a kód hossza, akkor a küldött bit ,,1''-es, ha pedig a kód hosszának ellentettje, akkor a küldött bit ,,0''-s értékű. (Könnyen ellenőrizhető, hogy a számpéldában használt két kód ortogonális.)
Ortogonális kódok pl. a WCDMA rendszerben használt Walsh-kódok, melyek a J. L. Walsh által 1923-ban publikált és róla elnevezett Walsh-függvényekből (is) származtathatók. A Walsh-kódokat egyszerű módon például az úgynevezett kódfa segítségével állíthatjuk elő. A 3. ábrán látható kódfa a következőképpen épül fel: A fa minden ágához egy kódot rendelünk, minden elágazáskor két új ág, vagyis két új kód keletkezik. Az első új ághoz tartozó kódot (c2k,2l) a ,,szülőág'' kódjának (ck,l) önmaga után fűzésével nyerjük, míg a második ,,utódághoz'' rendelt kódot (c2k,2l+1) úgy kapjuk meg, hogy a ,,szülőág'' kódja mögé annak ellentettjét ragasztjuk. A kódfa kiinduló ,,őságához'' az (1) kódot rendeljük. A kódok generálása formálisan a következő:
c1,0=(1),ci2k,2l=ci2k,2l+1=cik,l,i=0,...,k-1,ci2k,2l=-ci2k,2l+1=ci-kk,l,i=k,...,2k-1,l=0,...,k-1,k=2p,
ahol cik,l a kódfa k indexű szintje l+1-edik kódjának i+1-edik komponense, i=0,...,k-1.
 
(110,38)(0,0) (0,17.5)
(
1,0)35 (35,27.5)
(
1,0)35 (35,7.5)
(
1,0)35 (70,32.5)
(
1,0)35 (70,22.5)
(
1,0)35 (70,12.5)
(
1,0)35 (70,2.5)
(
1,0)35 (105,35)
(
1,0)5 (105,30)
(
1,0)5 (105,25)
(
1,0)5 (105,20)
(
1,0)5 (105,15)
(
1,0)5 (105,10)
(
1,0)5 (105,5)
(
1,0)5 (105,0)
(
1,0)5 (35,7.5)
(
0,1)20 (70,2.5)
(
0,1)10 (70,22.5)
(
0,1)10 (105,0)
(
0,1)5 (105,10)
(
0,1)5 (105,20)
(
0,1)5 (105,30)
(
0,1)5 (17.5,18)(0,0)[b]c1,0=(1) (52.5,27)(0,0)[b]c2,0=(1-1) (52.5,7)(0,0)[b]c2,1=(1-1) (87.5,32)(0,0)[b]c4,0=(1-1-1-1) (87.5,22)(0,0)[b]c4,1=(1-1-1-1) (87.5,12)(0,0)[b]c4,2=(1-1-1-1) (87.5,2)(0,0)[b]c4,3=(1-1-1-1)
 

3. ábra. A Walsh-kódokat generáló kódfa
 

A következőkben röviden ellenőrizzük a fa kódjainak ortogonális tulajdonságát.
 
1A. állítás. Egy elágazáskor keletkező két utódkód (c2k,2l és c2k,2l+1) ortogonális egymásra.
 
Igazolás. A két kódban az összefűzés helyétől balra elhelyezkedő komponensek (i=0,...,k-1) értékei egymással megegyeznek, míg az attól jobbra találhatók (i=k,...,2k-1) értékei éppen egymás ellentettjei. Továbbá az összeragasztott kódrészletek egyforma (k) hosszúságúak és a komponensek mind egységnyi abszolút értékűek. A két kód szorzata
c2k,2lc2k,2l+1=i=02k-1ci2k,2lci2k,2l+1=j=0k-1cjk,lcjk,l+j=0k-1cjk,l(-cjk,l)==j=0k-11+j=0k-1(-1)=k+(-k)=0,
vagyis a két kód ortogonális. 

 
1B. állítás. Ha a fában két, azonos szinten (k>1) lévő szülőkód ortogonális (ck,l és ck,m), akkor a tőlük közvetlenül származó ,,utódkódok'' (c2k,2l+a és c2k,2m+b) is ortogonálisak egymásra.
 
Igazolás. A két kód szorzatára:
c2k,2l+a c2k,2m+b = i=02k-1 ci2k,2l+aci2k,2m+b =  = j=0k-1 cjk,lcjk,m + j=0k-1 (-1)acjk,l (-1)b cjk,m = = j=0k-1 cjk,lcjk,m + (-1)a+b j=0k-1 cjk,lcjk,m = (1+(-1)a+b) (ck,l ck,m) = 0, a,b = 0,1,  l=0,...,k-1,  m l. 

 
1. állítás. Ha a fa k>1 indexű szintjén a kódok páronként ortogonálisak, akkor az ebből származó 2k indexű szinten is páronként ortogonálisak lesznek a kódok.
 
Igazolás. Az állítás igazsága az 1A. és 1B. állítások igazságából következik. 

 
2. állítás. 2 indexű kódok ortogonálisak.
 
Igazolás. Felírva a két kód szorzatát:
c2,0c2,1=11+1(-1)=0.

 
Állítás. A kódfa k=2p (k>1) indexű szintjén található kódok páronként ortogonálisak.
 
Igazolás. Használjuk a teljes indukciót: A 2. állítás igazsága miatt az állítás igaz k=2-re, az 1. állítás igazsága miatt az állítás igazsága öröklődik k=2-ről k=4-re, k=4-ről k=8-ra és stb., az összes k=2p-re. 

Afakindexűszintjénelhelyezkedőkódokatk-adrendűWalsh-kódoknaknevezik.
Akódokszimmetriatulajdonságaikkövetkeztébeneltérőbitsebességűcsatornákeseténisbiztosítjákazokelválasztását.Kétkülönbözősávszélességűcsatornaelválasztásaakkorjönlétre,haaszeparációrahasználtkódokközülarövidebbiknem,,őse''ahosszabbiknak.Azállításigazolásaafentiekhezhasonlómódszerreltörténhet,abizonyítástazolvasórabízzuk.
 
Irodalom
 

[1] Ericsson WCDMA System Overview, EN/LZT 123 6208 R2A.
[2] J. S. Lee and L. E. Miller: CDMA Systems Engineering Handbook, 1998, Artech House, Boston, London.

* Az időben változó jelek a frekvenciatartományban spektrumukkal írhatók le, ebből pl. megállapítható, hogy a jel milyen széles frekvencia-intervallumban, frekvenciasávban helyezkedik el. A CDMA-ban a kódolás során egy, a kódolás előtti jelhez képest gyorsabban változó, vagyis nagyobb sávszélességű jelet kapunk, ezért nevezik a kódosztásos többszörös hozzáférésű rendszereket spektrum-kiterjesztéses vagy szórt spektrumú rendszereknek is.

* A valóságban a jel kisugárzása előtt a különböző adók jeleinek megkülönböztetésére adónként egyedi, álvéletlen tulajdonságú, ún. ,,zagyváló'' kódokat is alkalmaznak. Ezt a műveletet az egyszerűség kedvéért a 2. ábra nem tartalmazza. Vételkor a kétféle kód alkalmazása éppen fordítva történik. A továbbiakban mi itt csak a csatornakódokkal foglalkozunk.