Modulationsverfahren/Spreizfolgen für CDMA: Unterschied zwischen den Versionen

Aus LNTwww
Wechseln zu:Navigation, Suche
Zeile 111: Zeile 111:
  
 
[[Datei: P_ID1879__Mod_T_5_3_S4d_ganz_neu.png|center|frame|PAKF einer PN–Sequenz maximaler Länge: <i>P</i> = (2^<i>G</i>) – 1)]]}}
 
[[Datei: P_ID1879__Mod_T_5_3_S4d_ganz_neu.png|center|frame|PAKF einer PN–Sequenz maximaler Länge: <i>P</i> = (2^<i>G</i>) – 1)]]}}
 +
  
 
Weitere Informationen zum Thema sowie Aufgaben, Simulationen und Programmierübungen finden Sie im  
 
Weitere Informationen zum Thema sowie Aufgaben, Simulationen und Programmierübungen finden Sie im  
  
*Kapitel 9:  ''Stochastische Prozesse'', Programm „png”
+
*Kapitel 2:  ''Pseudonoise&ndash;Generatoren'', Programm „png”
  
  
 
des Praktikums &bdquo;Simulationsmethoden in der Nachrichtentechnik&rdquo;. Diese (ehemalige) LNT-Lehrveranstaltung an der TU München basiert auf  
 
des Praktikums &bdquo;Simulationsmethoden in der Nachrichtentechnik&rdquo;. Diese (ehemalige) LNT-Lehrveranstaltung an der TU München basiert auf  
 
*dem Lehrsoftwarepaket [http://www.lntwww.de/downloads/Sonstiges/Programme/LNTsim.zip LNTsim] &nbsp;&rArr;&nbsp; Link verweist auf die ZIP-Version des Programms und  
 
*dem Lehrsoftwarepaket [http://www.lntwww.de/downloads/Sonstiges/Programme/LNTsim.zip LNTsim] &nbsp;&rArr;&nbsp; Link verweist auf die ZIP-Version des Programms und  
*dieser [http://www.lntwww.de/downloads/Sonstiges/Texte/Praktikum_LNTsim_Teil_A.pdf Praktikumsanleitung]  &nbsp;&rArr;&nbsp; Link verweist auf die PDF-Version; Kapitel 9: Seite 207-228.
+
*dieser [http://www.lntwww.de/downloads/Sonstiges/Texte/Praktikum_LNTsim_Teil_A.pdf Praktikumsanleitung]  &nbsp;&rArr;&nbsp; Link verweist auf die PDF-Version; Kapitel 2: Seite 23-32.
 +
 
  
 
==Codefamilien mit M–Sequenzen==
 
==Codefamilien mit M–Sequenzen==
 
Bei CDMA wird für jeden Teilnehmer eine spezifische Spreizfolge gleicher Periodenlänge benötigt. Als '''Codefamilie''' bezeichnet man eine (möglichst große) Menge an Spreizsequenzen gleicher Periodenlänge $P$, gültig jeweils für einen Registergrad $G$.  
 
Bei CDMA wird für jeden Teilnehmer eine spezifische Spreizfolge gleicher Periodenlänge benötigt. Als '''Codefamilie''' bezeichnet man eine (möglichst große) Menge an Spreizsequenzen gleicher Periodenlänge $P$, gültig jeweils für einen Registergrad $G$.  
  
Die Tabelle zeigt, dass die Anzahl von PN–Sequenzen maximaler Länge sehr gering ist. Für den Grad $G = 5$ &nbsp;  ⇒ &nbsp;  $P = 31$ gibt es zum Beispiel gerade einmal sechs M–Sequenzen, nämlich die PN–Generatoren mit den Oktalkennungen $(45), (51), (57), (67), (73) und (75)$.  
+
Die Tabelle zeigt, dass die Anzahl von PN–Sequenzen maximaler Länge sehr gering ist. Für den Grad $G = 5$ &nbsp;  ⇒ &nbsp;  $P = 31$ gibt es zum Beispiel gerade einmal sechs M–Sequenzen, nämlich die PN–Generatoren mit den Oktalkennungen (45), (51), (57), (67), (73) und (75).  
  
 
[[Datei:P_ID1880__Mod_T_5_3_S5_neu.png |center|frame| Mächtigkeit von M–Sequenz–Codefamilien]]
 
[[Datei:P_ID1880__Mod_T_5_3_S5_neu.png |center|frame| Mächtigkeit von M–Sequenz–Codefamilien]]
Zeile 133: Zeile 135:
  
 
==Gold–Codes==
 
==Gold–Codes==
Um größere Codefamilien zu erhalten, als es mit $M$–Sequenzen möglich ist, müssen die Anforderungen an die PKKF abgeschwächt werden. Mit dieser Einschränkung erhält man aber Codefamilien mit einer weitaus größeren Mächtigkeit, so dass auch mehr CDMA–Teilnehmer versorgt werden können.  
+
Um größere Codefamilien zu erhalten, als es mit M–Sequenzen möglich ist, müssen die Anforderungen an die periodische Kreuzkorrelationsfunktion (PKKF) abgeschwächt werden. Mit dieser Einschränkung erhält man Codefamilien mit einer weitaus größeren Mächtigkeit, so dass auch mehr CDMA–Teilnehmer versorgt werden können.  
 
 
 
 
[[Datei:P_ID1881__Mod_T_5_3_S6_neu.png | Gold–Codegenerator (51, 75)  vom Grad G = 5]]
 
  
 +
[[Datei:P_ID1881__Mod_T_5_3_S6_neu.png|center|frame|Gold–Codegenerator (51, 75)  vom Grad G = 5]]
  
Gold–Codes verwenden dieses Prinzip. Die Vorschrift zur Erzeugung einer Gold–Code–Familie (GCF) lautet, wobei ein „+” eine Modulo–2–Addition bezeichnet:  
+
Gold–Codes verwenden dieses Prinzip. Die Vorschrift zur Erzeugung einer '''Gold–Code–Familie''' (GCF) lautet, wobei ein „+” eine Modulo–2–Addition bezeichnet:  
$$GCF(C_1, C_2) = \{ C_1, C_2, C_1 + C_2, C_1 + D \cdot C_2, C_1 + D^2 \cdot C_2, ... ,
+
:$$GCF(C_1, C_2) = \{ C_1, C_2, C_1 + C_2, C_1 + D \cdot C_2, C_1 + D^2 \cdot C_2, ... ,
 
C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$
 
C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$
  
 
Das Prinzip ist in der obigen Grafik an einem Beispiel dargestellt:  
 
Das Prinzip ist in der obigen Grafik an einem Beispiel dargestellt:  
*Die Folgen $C_1$ und $C_2$ sind ein günstiges Paar von $M$–Sequenzen gleicher Periodenlänge, zum Beispiel die PN–Generatoren mit den Oktalkennungen (51) und (75) vom Grad $G =$ 5 und damit der Periodenlänge $P =$ 31.  
+
*Die Folgen $C_1$ und $C_2$ sind ein günstiges Paar von $M$–Sequenzen gleicher Periodenlänge, zum Beispiel die PN–Generatoren mit den Oktalkennungen (51) und (75) vom Grad $G = 5$ und damit der Periodenlänge $P = 31$.  
*Die GC–Familie besteht zum einen aus den $M$–Sequenzen $C_1$ und $C_2$ sowie aus verschiedenen Modulo–2–Additionen dieser Folgen. Dabei wird $C_1$ mit fester Phase (gekennzeichnet durch die Vorbelegung aller Speicherzellen mit Einsen) verwendet, während für die Folge $C_2$ alle $P$ möglichen Anfangsphasen zulässig sind (alle Vorbelegungen außer der Nullbelegung).  
+
*Die GC–Familie besteht zum einen aus den M–Sequenzen $C_1$ und $C_2$ sowie aus verschiedenen Modulo–2–Additionen dieser Folgen. Dabei wird $C_1$ mit fester Phase (gekennzeichnet durch die Vorbelegung aller Speicherzellen mit Einsen) verwendet, während für die Folge $C_2$ alle $P$ möglichen Anfangsphasen zulässig sind (alle Vorbelegungen außer der Nullbelegung).  
*Verwendet man eine solche Codefamilie für CDMA, so stehen insgesamt $K_{\rm GCF} = P + 2 = 2^G + 1$ Folgen zur Verfügung. Die PAKF dieser Folgen ist nun aber nicht mehr zweiwertig wie die beiden PN–Sequenzen (+1 bzw. –1/31), sondern vierwertig (+1, +7/31, –1/31, –9/31). Durch die Phase von $C_2$ ändert sich zwar der spezifische Verlauf, aber nicht die möglichen PAKF–Werte.  
+
*Verwendet man eine solche Codefamilie für CDMA, so stehen insgesamt $K_{\rm GCF} = P + 2 = 2^G + 1$ Folgen zur Verfügung. Die PAKF dieser Folgen ist nun aber nicht mehr zweiwertig wie die beiden PN–Sequenzen ($+1$ bzw. $-1/31$), sondern vierwertig ($+1$, $+7/31$, $-1/31$, $-9/31$). Durch die Phase von $C_2$ ändert sich zwar der spezifische Verlauf, aber nicht die möglichen PAKF–Werte.  
  
  
Gold–Codes werden zum Beispiel bei UMTS zur Verwürfelung herangezogen, wie im Kapitel 4.3 des Buches „Beispiele von Nachrichtensystemen” ausgeführt ist. Die beiden Muttercode–Schieberegister sind dabei jeweils mit $G =$ 18 Speicherzellen aufgebaut. Damit ergibt sich die Periodenlänge $P =$ 262 143.  
+
Gold–Codes werden zum Beispiel bei UMTS zur Verwürfelung herangezogen, wie im Kapitel [[Beispiele_von_Nachrichtensystemen/Nachrichtentechnische_Aspekte_von_UMTS#Spreizcodes_und_Verw.C3.BCrfelung_in_UMTS|Spreizcodes und Verwürfelung in UMTS]] des Buches „Beispiele von Nachrichtensystemen” ausgeführt ist. Die beiden Muttercode–Schieberegister sind dabei jeweils mit $G = 18$ Speicherzellen aufgebaut. Damit ergibt sich die Periodenlänge $P = 262\hspace{0.05cm} 143$.  
  
 
==Walsh–Funktionen==
 
==Walsh–Funktionen==
Spreizfolgen mit sehr günstigen PKKF–Eigenschaften sind die so genannten Walsh–Funktionen, deren Konstruktion auf der Hadamard–Matrix basiert und durch Rekursion in einfacher Weise durchführbar ist. Ausgehend von der Matrix $\mathbf H_2$ können weitere Hadamard–Matrizen $\mathbf H_{2J}$ wie folgt generiert werden:  
+
Spreizfolgen mit sehr günstigen PKKF–Eigenschaften sind die so genannten '''Walsh–Funktionen''', deren Konstruktion auf der '''Hadamard–Matrix''' basiert und durch Rekursion in einfacher Weise durchführbar ist. Ausgehend von der Matrix $\mathbf H_2$ können weitere Hadamard–Matrizen $\mathbf H_{2J}$ wie folgt generiert werden:  
$${\mathbf{H}_{2}} =  \left[ \begin{array}{ccc} +1 & +1 \\ +1 & -1 \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm}{\mathbf{H}_{2J}} =  \left[ \begin{array}{ccc} \mathbf{H}_J & \mathbf{H}_J \\ \mathbf{H}_J & -\mathbf{H}_J \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm}
+
:$${\mathbf{H}_{2}} =  \left[ \begin{array}{ccc} +1 & +1 \\ +1 & -1 \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm}{\mathbf{H}_{2J}} =  \left[ \begin{array}{ccc} \mathbf{H}_J & \mathbf{H}_J \\ \mathbf{H}_J & -\mathbf{H}_J \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm}
 
{\mathbf{H}_{4}} = \left[ \begin{array}{cccc} +1 & +1 & +1 & +1 \\ +1 & -1 & +1 & -1 \\
 
{\mathbf{H}_{4}} = \left[ \begin{array}{cccc} +1 & +1 & +1 & +1 \\ +1 & -1 & +1 & -1 \\
 
+1 & +1 & -1 & -1 \\+1 & -1 & -1 & +1 \end{array} \right] .$$
 
+1 & +1 & -1 & -1 \\+1 & -1 & -1 & +1 \end{array} \right] .$$
Die $J$ Zeilen einer solchen Matrix beschreiben die $J$ möglichen Spreizfolgen (jeweils der Länge $J$), die zur Kennzeichnung von $w_0(t)$ bis $w_{J–1}(t)$ durchnummeriert werden. Die Grafik zeigt die Hadamard–Matrix $\mathbf H_8$ (rechts) und die damit $J$ –1 konstruierbaren Spreizfolgen. $J$ –1 deshalb, da die ungespreizte Folge $w_0(t)$ meist nicht verwendet wird. Beachten Sie bitte in der Grafik die farbliche Zuordnung zwischen den Zeilen der Hadamard–Matrix und den Spreizfolgen $w_j(t)$. Die Matrix $\mathbf H_4$ ist gelb hinterlegt.  
+
Die $J$ Zeilen einer solchen Matrix beschreiben die $J$ möglichen Spreizfolgen (jeweils der Länge $J$), die zur Kennzeichnung von $w_0(t)$ bis $w_{J–1}(t)$ durchnummeriert werden. Die Grafik zeigt die Hadamard–Matrix $\mathbf H_8$ (rechts) und die damit $J –1$ konstruierbaren Spreizfolgen. $J –1$ deshalb, da die ungespreizte Folge $w_0(t)$ meist nicht verwendet wird. Beachten Sie bitte in der Grafik die farbliche Zuordnung zwischen den Zeilen der Hadamard–Matrix und den Spreizfolgen $w_j(t)$. Die Matrix $\mathbf H_4$ ist gelb hinterlegt.  
 
 
 
 
[[Datei:P_ID1882__Mod_T_5_3_S7_neu.png | Walsh–Spreizfolgen (J = 8) und Hadamard–Matrix H_8]]
 
  
 +
[[Datei:P_ID1882__Mod_T_5_3_S7_neu.png|center|frame| Walsh–Spreizfolgen (<i>J</i> = 8) und Hadamard–Matrix <b>H</b><sub>8</sub>]]
  
Die Animation Walsh–Funktionen zeigt den Konstruktionsalgorithmus solcher Folgen. Weiter gilt:  
+
Die Animation [[Walsh–Funktionen]] zeigt den Konstruktionsalgorithmus solcher Folgen. Weiter gilt:  
 
*Nimmt man zwei beliebige Zeilen und bildet die Korrelation (Mittelung über die Produkte), so ergibt sich stets der PKKF–Wert 0. Somit sind Walsh–Funktionen für einen verzerrungsfreien Kanal und ein synchrones CDMA–System aufgrund ihrer Orthogonalität optimale Spreizfolgen.  
 
*Nimmt man zwei beliebige Zeilen und bildet die Korrelation (Mittelung über die Produkte), so ergibt sich stets der PKKF–Wert 0. Somit sind Walsh–Funktionen für einen verzerrungsfreien Kanal und ein synchrones CDMA–System aufgrund ihrer Orthogonalität optimale Spreizfolgen.  
*Bei asynchronem Betrieb (Beispiel: Uplink eines Mobilfunksystems) oder De–Orthogonalisierung aufgrund von Mehrwegeausbreitung sind dagegen Walsh–Funktionen allein zur Bandspreizung nicht unbedingt geeignet – siehe Aufgabe A5.4.   
+
*Bei asynchronem Betrieb (Beispiel: Uplink eines Mobilfunksystems) oder De–Orthogonalisierung aufgrund von Mehrwegeausbreitung sind dagegen Walsh–Funktionen allein zur Bandspreizung nicht unbedingt geeignet – siehe [[Aufgaben:5.4_Walsh–Funktionen_(PKKF,_PAKF)|Aufgabe 5.4]].   
*Hinsichtlich PAKF sind diese Folgen weniger gut: Jede einzelne Walsh–Funktion hat eine andere PAKF und jede einzelne PAKF ist ungünstiger als bei einer vergleichbaren PN–Sequenz. Das bedeutet: Die Synchronisierung ist bei Walsh–Funktionen schwieriger als mit PN–Sequenzen.  
+
*Hinsichtlich PAKF (periodische AKF) sind diese Folgen weniger gut: Jede einzelne Walsh–Funktion hat eine andere PAKF und jede einzelne PAKF ist ungünstiger als bei einer vergleichbaren PN–Sequenz. Das bedeutet: Die Synchronisierung ist bei Walsh–Funktionen schwieriger als mit PN–Sequenzen.  
  
 
==Codes mit variablem Spreizfaktor (OVSF–Code)==
 
==Codes mit variablem Spreizfaktor (OVSF–Code)==

Version vom 1. August 2017, 14:36 Uhr

Eigenschaften der Korrelationsfunktionen

Wichtige Beurteilungskriterien für Spreizfolgen sind die Korrelationsfunktionen. Betrachtet man zwei ergodische Prozesse mit den Musterfunktionen $x(t)$ und $y(t)$, so gilt für die Kreuzkorrelationsfunktion (KKF) der beiden Prozesse:

$$\varphi_{xy}(\tau)=\overline{x(t)\cdot y(t+\tau)}=\lim_{T_{\rm M}\to\infty}\,\frac{1}{T_{\rm M}}\cdot\int^{T_{\rm M}/{\rm 2}}_{-T_{\rm M}/{\rm 2}}x(t)\cdot y(t+\tau)\,\,\rm d \it t.$$

Die überstreichende Linie kennzeichnet hierbei eine Zeitmittelung.

$φ_{xy}(τ)$ ist ein quantitatives Maß für die lineare statistische Abhängigkeit der Augenblickswerte von Musterfunktionen $x(t)$ und $y(t + τ)$ der beiden Zufallsprozesse und dient somit der Beschreibung der statistischen Verwandtschaft zwischen diesen. Es gilt:

  • Sind $x(t)$ und $y(t)$ unkorreliert, so ist $φ_{xy}(τ) \equiv 0$ (also für alle beliebigen Werte von $τ$).
  • Im allgemeinen ist $φ_{xy}(τ)$ nicht symmetrisch, sondern das KKF–Maximum kann auch durchaus bei $τ_{\rm max} ≠ 0$ auftreten.
  • Dann ergibt sich die maximale Korrelation durch eine gegenseitige Verschiebung der beiden betrachteten Signale um die Zeit $τ_{\rm max}$.


Setzt man in obiger Gleichung $y(t) = x(t)$, so kommt man zur Autokorrelationsfunktion (AKF)

$$ \varphi_{xx}(\tau)=\overline{x(t)\cdot x(t+\tau)}=\lim_{T_{\rm M}\to\infty}\,\frac{1}{T_{\rm M}}\cdot\int^{T_{\rm M}/{\rm 2}}_{-T_{\rm M}/{\rm 2}}x(t)\cdot x(t+\tau)\,\,\rm d \it t$$

mit folgenden Eigenschaften:

  • Die AKF ist ein Maß für die inneren statistischen Bindungen eines durch die Musterfunktion $x(t)$ festgelegten stationären und ergodischen Prozesses.
  • Ist $x(t)$ reell, so ist $φ_{xx}(τ)$ eine reelle gerade Funktion:   $φ_{xx}(–τ) = φ_{xx}(τ)$. Phasenbeziehungen gehen in der AKF verloren.
  • Beschreibt $x(t)$ einen komplexen Prozesse, so ist auch die AKF komplex.
  • Der Maximalwert der AKF liegt bei $τ =0$. Es gilt stets $|φ_{xx}(τ)| ≤ φ_{xx}(0),$ wobei $φ_{xx}(0)$ die Signalleistung $P_x = {\rm E}[x^2(t)]$ angibt.
  • Der Gleichanteil von $x(t)$ kann aus dem Grenzwert für $(τ → ∞)$ ermittelt werden, so lange $x(t)$ keine periodischen Anteile beinhaltet:
$$\overline{ x(t)} = {\rm E}[x(t)] = \sqrt{\lim_{\tau\to\infty}\,\varphi_{xx} (\tau)} \hspace{0.05cm}.$$


AKF und KKF beschreiben die inneren Bindungen bzw. die gegenseitigen statistischen Abhängigkeiten im Zeitbereich. Die entsprechenden Beschreibungsfunktionen im Frequenzbereich sind


Bei ergodischen Prozessen ergeben sich diese als die Fouriertransformierten von AKF und KKF:

$${\it \Phi}_{xx}(f) \hspace{0.2cm} \bullet\!\!-\!\!\!-\!\!\!-\!\!\circ\, \hspace{0.2cm}\varphi_{xx}(\tau)\hspace{0.05cm} ,\hspace{0.3cm} {\it \Phi}_{xy}(f) \hspace{0.2cm} \bullet\!\!-\!\!\!-\!\!\!-\!\!\circ\, \hspace{0.2cm}\varphi_{xy}(\tau)\hspace{0.05cm}.$$

Hinweis: Im Folgenden schreiben wir wie im Buch Stochastische Signaltheorie vereinfachend für die AKF $φ_x(τ)$ anstelle von $φ_{xx}(τ)$ und für das LDS ${\it Φ}_x(f)$ anstelle von ${\it Φ}_{xx}(f)$.

Periodische AKF und KKF

Bei periodischen Signalen kann auf den Grenzübergang bei der AKF– und der KKF–Berechnung verzichtet werden, und man erhält mit der Periodendauer $T_0$ (diese muss für beide Signale gleich sein):

$$\begin{align*}\varphi_{x}(\tau) & = \frac{1}{T_{\rm 0}}\cdot\int^{T_0}_{0}x(t)\cdot x(t+\tau)\,\,\rm d \it t\hspace{0.05cm} ,\\ \varphi_{xy}(\tau) & = \frac{1}{T_{\rm 0}}\cdot\int^{T_0}_{0}x(t)\cdot y(t+\tau)\,\,\rm d \it t\hspace{0.05cm}.\end{align*}$$

In diesem Fall ist die AKF ebenfalls eine periodische Funktion, und man spricht von der periodischen Autokorrelationsfunktion (PAKF). Diese zeigt folgende Einenschaft:

$$\varphi_{x}(\pm T_0) = \varphi_{x}(\pm 2T_0) =\text{ ...} = \varphi_{x}(0) \hspace{0.05cm}.$$

Wir wenden nun obige Berechnungsvorschrift auf das Spreizsignal

$$ c(t) = \sum\limits^{+\infty}_{\nu = -\infty}c_\nu\cdot g_c(t - \nu \cdot T_c)$$

an, wobei ein Rechteckimpuls $g_c(t)$ der Breite $T_c$ vorausgesetzt wird; $T_c$ nennt man die Chipdauer. Berücksichtigt man die Periodizität $(T_0 = P · T_c)$ der Amplitudenkoeffizienten $c_ν ∈ \{±1\}$, so ergeben sich die diskreten AKF–Werte bei Vielfachen (Parameter $λ$) von $T_c$:

$$\varphi_{c}(\lambda \cdot T_c) = \frac{1}{P}\cdot\sum\limits^{P-1}_{\nu = 0} c_\nu \cdot c_{\nu+ {\it \lambda} }\hspace{0.05cm}.$$
  • Der maximale PAKF–Wert ergibt sich für $λ = 0$ und für Vielfache der Periodenlänge $P$.
  • Aufgrund des rechteckförmigen Impulses $g_c(t)$ ist der PAKF–Verlauf zwischen zwei Abtastwerten $λ · T_c$ und $(λ + 1) · T_c$ stets linear.
  • Entsprechend ist die periodische Kreuzkorrelationsfunktion (PKKF) zwischen den zwei unterschiedlichen Spreizfolgen $〈c_ν〉$ und $〈c_ν'〉$ gleicher Periodenlänge $P$ wie folgt gegeben:
$$\varphi_{cc'}(\lambda \cdot T_c) = \frac{1}{P}\cdot\sum\limits^{P-1}_{\nu = 0} c_\nu \cdot c\hspace{0.02cm}'_{\nu+ \lambda }\hspace{0.05cm}.$$


Weitere Informationen zum Thema sowie Aufgaben, Simulationen und Programmierübungen finden Sie im

  • Kapitel 9: Stochastische Prozesse, Programm „stp”


des Praktikums „Simulationsmethoden in der Nachrichtentechnik”. Diese (ehemalige) LNT-Lehrveranstaltung an der TU München basiert auf

  • dem Lehrsoftwarepaket LNTsim  ⇒  Link verweist auf die ZIP-Version des Programms und
  • dieser Praktikumsanleitung  ⇒  Link verweist auf die PDF-Version; Kapitel 9: Seite 207-228.


Beurteilungskriterien für PN–Spreizfolgen

Die Qualität eines auf PN–Modulation basierenden CDMA–Systems hängt signifikant von den PAKF– und PKKF–Eigenschaften der verwendeten Spreizfolgen ab. Zusammenfassend kann man sagen:

  1. Die PAKF der verwendeten Spreizcodeklasse sollte möglichst durch einen ausgeprägten Peak bei $λ = 0$ gekennzeichnet sein, um die Synchronisation beim Empfänger einfach gestalten zu können. Bei Mehrwegeempfang mit einem Echo der Laufzeitdifferenz $λ · T_c$ ist zudem die Degradation aufgrund von Impulsinterferenzen um so geringer, je kleiner $|φ_c(λ · T_c)|$ ist.
  2. Der störende Einfluss interferierender CDMA–Teilnehmer lässt sich durch den PKKF–Wert $φ_{cc'} (λ = 0$) abschätzen. Ist dieser gleich Null, so spricht man von orthogonalen Funktionen. Die Fehlerwahrscheinlichkeit wird in diesem Fall nicht erhöht. Sind alle Spreizfolgen orthogonal, so ergibt sich auch bei $J$ Teilnehmern die gleiche Fehlerwahrscheinlichkeit wie bei nur einem Nutzer.
  3. Diese letzte Aussage ist in synchronen Systemen mit verzerrungsfreiem Kanal (z.B. AWGN) von besonderer Bedeutung. Bei asynchronem Betrieb oder Mehrwegeempfang kommt es dagegen zu einer De–Orthogonalisierung und der strengeren Forderung, dass die PKKF zwischen den einzelnen Folgen zu allen Zeitpunkten (betragsmäßig) möglichst kleine Werte annehmen soll.


Bei der Auswahl von Codefamilien für ein CDMA–System ist weiter darauf zu achten, dass bei gegebenem Spreizgrad $J = P$ möglichst viele Codefolgen mit günstigen Eigenschaften hinsichtlich der obigen drei Kriterien gefunden werden können, um somit auch möglichst viele Teilnehmer gleichzeitig im gleichen Frequenzband versorgen zu können.

Pseudo–Noise–Folgen maximaler Länge

Mit einem rückgekoppelten Schieberegister lässt sich eine Folge mit günstigen AKF–Eigenschaften erzeugen, wenn man die Rückführungskoeffizienten $g_i, i = 1, \text{...} , G–1$ wählt. Die Folge $〈c_ν〉$ ist im strengen Sinne nicht zufällig, sondern periodisch. Aufgrund der großen Periodenlänge $P$ erscheint sie aber für einen unbedarften Betrachter als stochastisch. Man spricht von einer Pseudo–Noise–Folge oder kurz PN–Folge.

PN–Generator (Realisierung mit Schieberegister)

PN–Generatoren haben folgende Eigenschaften, siehe Kapitel Erzeugung von diskreten Zufallsgrößen im Buch „Stochastische Signaltheorie]]”:

  • Die zu früheren Zeitpunkten generierten Binärwerte $c_{ν–1}, \text{...} , c_{ν–G}$ sind in den $G$ Speicherzellen des Schieberegisters abgelegt. Man bezeichnet $G$ als den Grad des Schieberegisters.
  • Die Koeffizienten $g_1, \text{...} , g_{G–1}$ sind Binärwerte, wobei eine „1” eine Rückführung an der entsprechenden Stelle des Schieberegisters kennzeichnet und eine „0” keine Rückführung.
  • Für das aktuell erzeugte Symbol gilt mit $g_i ∈ \{0, 1\}$ und $i = 1,\text{...} , G–1$:
$$c_\nu = (g_1\cdot c_{\nu-1}+g_2\cdot c_{\nu-2}+\text{...}+g_i\cdot c_{\nu-i}+\text{...}+g_{G-1}\cdot c_{\nu-G+1}+ c_{\nu-G})\hspace{0.1cm} \rm mod \hspace{0.2cm}2.$$
  • Die Modulo–2–Addition kann zum Beispiel durch eine XOR–Verknüpfung realisiert werden:
Polynome von M–Sequenzen mit Grad G
$$(x + y)\hspace{0.1cm} \rm mod\hspace{0.1cm}2 = {\it x}\hspace{0.1cm}\rm XOR\hspace{0.1cm} {\it y} = \left\{ \begin{array}{*{2}{c}} 0 & \rm falls\hspace{0.1cm} {\it x}= {\it y},\\ 1 & \rm falls\hspace{0.1cm} {\it x}\neq {\it y}. \\ \end{array} \right.$$
  • Sind nicht alle $G$ Speicherzellen mit Nullen vorbelegt, so entsteht eine periodische Zufallsfolge $〈c_ν〉$. Die Periodenlänge $P$ dieser Folge hängt stark von den Rückkopplungskoeffizienten $g_i$ ab.
  • Für jeden Grad $G$ gibt es zumindest zwei Konfigurationen mit der hierfür maximalen Periodenlänge $P_{\rm max} = 2^G – 1$.


In nebenstehender Tabelle sind für einige Werte von $G$ das Generatorpolynom $G(D)$ einer solchen M–Sequenz und die zugehörige (maximale) Periodenlänge $P$ angegeben, wobei das „M” für „Maximal” steht. Nachfolgend werden die hier gemachten Aussagen am Beispiel $G = 4$ verdeutlicht.


$\text{Beispiel 1:}$  Die Grafik zeigt zwei mögliche Anordnungen zur Erzeugung einer PN–Folge maximaler Länge für $G = 4$ ⇒ $P = 15$. Als Kurzbezeichnung wird meist die Oktaldarstellung der Binärzahl $(g_G, \text{...} g_2, g_1, g_0)$ gewählt. Grundsätzlich ist $g_0 = g_G = 1$ zu setzen.

PN–Generatoren vom Grad G = 4
  • Für die linke Konfiguration erhält man $\rm (11001)_{binär} = (31)_{oktal}$, das dazugehörige Generatorpolynom lautet:
$$G(D) = D^4 + D^3 +1\hspace{0.05cm}.$$
  • Die rechte Anordnung mit $\rm (10011)_{binär} = (23)_{oktal}$ ist dagegen durch das zu $G(D)$ reziproke Polynom $G_{\rm R}(D)$ beschreibbar:
$$G_{\rm R}(D) = D^4 \cdot (D^{-4} + D^{-3} +1) =D^4 + D +1 \hspace{0.05cm}.$$

Da sowohl $G(D)$ als auch $G_{\rm R}(D)$ primitive Generatorpolynome darstellen (der Nachweis hierfür ist nicht einfach), haben beide Ausgangsfolgen die für $G = 4$ maximale Periodenlänge $P = 15$. Wie in Aufgabe 5.3 gezeigt wird, ergibt sich die PAKF in der unipolaren Darstellung ⇒ $c_ν ∈ \{0, 1\}$ zu

$${\it \varphi}_{c{\rm ,\hspace{0.05cm}unipolar} }(\lambda \cdot T_c) = \left\{ \begin{array}{c}(P+1)/(2P) \\ (P+1)/(4P) \\ \end{array} \right. \begin{array}{*{10}c} {\rm{f\ddot{u}r} } \\ {\rm{sonst} } \hspace{0.05cm}. \\ \end{array}\begin{array}{*{20}c} \lambda = 0, \pm P, \pm 2P, \text{...} \hspace{0.05cm} \\ \\ \end{array}$$

Nach Umsetzung in bipolare Amplitudenkoeffizienten ($0 ⇒ +1$, $1 ⇒ -1$) erhält man

$${\it \varphi}_{c{\rm ,\hspace{0.05cm}bipolar} }(\lambda \cdot T_c) = \left\{ \begin{array}{c}1 \\ -P \\ \end{array} \right. \begin{array}{*{10}c} {\rm{f\ddot{u}r} } \\ {\rm{sonst.} } \hspace{0.05cm} \\ \end{array}\begin{array}{*{20}c} \lambda = 0, \pm P, \pm 2P, \text{...} \hspace{0.05cm} \\ \\ \end{array}$$

Man erkennt aus der unteren Skizze die gewünschten ausgeprägten PAKF–Peaks. Weniger gut sind die Kreuzkorrelationseigenschaften der PN–Sequenzen, wie im Kapitel Fehlerwahrscheinlichkeit der PN–Modulation noch gezeigt werden wird.

PAKF einer PN–Sequenz maximaler Länge: P = (2^G) – 1)


Weitere Informationen zum Thema sowie Aufgaben, Simulationen und Programmierübungen finden Sie im

  • Kapitel 2: Pseudonoise–Generatoren, Programm „png”


des Praktikums „Simulationsmethoden in der Nachrichtentechnik”. Diese (ehemalige) LNT-Lehrveranstaltung an der TU München basiert auf

  • dem Lehrsoftwarepaket LNTsim  ⇒  Link verweist auf die ZIP-Version des Programms und
  • dieser Praktikumsanleitung  ⇒  Link verweist auf die PDF-Version; Kapitel 2: Seite 23-32.


Codefamilien mit M–Sequenzen

Bei CDMA wird für jeden Teilnehmer eine spezifische Spreizfolge gleicher Periodenlänge benötigt. Als Codefamilie bezeichnet man eine (möglichst große) Menge an Spreizsequenzen gleicher Periodenlänge $P$, gültig jeweils für einen Registergrad $G$.

Die Tabelle zeigt, dass die Anzahl von PN–Sequenzen maximaler Länge sehr gering ist. Für den Grad $G = 5$   ⇒   $P = 31$ gibt es zum Beispiel gerade einmal sechs M–Sequenzen, nämlich die PN–Generatoren mit den Oktalkennungen (45), (51), (57), (67), (73) und (75).

Mächtigkeit von M–Sequenz–Codefamilien

Des Weiteren ist in der Literatur auch der Begriff Mächtigkeit der Codefamilie zu finden. Diese Größe gibt an, wie viele M–Sequenzen und damit gleichzeitige CDMA–Teilnehmer möglich sind, wenn man fordert, dass alle Codepaare „günstige PKKF–Eigenschaften” aufweisen. Aus Platzgründen kann hier nicht explizit ausgeführt werden, was man unter „günstig” genau zu verstehen hat. Hierzu sei auf die Originalliteratur verwiesen, z.B. [ZP85][1].

Die letzte Zeile in obiger Tabelle macht deutlich, dass die Mächtigkeit von M–Sequenz–Codefamilien äußerst beschränkt ist, auch bei großem $G$ und damit großer Periodenlänge $P$. Ist $G$ ein Vielfaches von $4$   ⇒   $P = 15$, $P = 255$, $P = 4095$ usw., so gibt es grundsätzlich keine günstigen Paare.

Gold–Codes

Um größere Codefamilien zu erhalten, als es mit M–Sequenzen möglich ist, müssen die Anforderungen an die periodische Kreuzkorrelationsfunktion (PKKF) abgeschwächt werden. Mit dieser Einschränkung erhält man Codefamilien mit einer weitaus größeren Mächtigkeit, so dass auch mehr CDMA–Teilnehmer versorgt werden können.

Gold–Codegenerator (51, 75) vom Grad G = 5

Gold–Codes verwenden dieses Prinzip. Die Vorschrift zur Erzeugung einer Gold–Code–Familie (GCF) lautet, wobei ein „+” eine Modulo–2–Addition bezeichnet:

$$GCF(C_1, C_2) = \{ C_1, C_2, C_1 + C_2, C_1 + D \cdot C_2, C_1 + D^2 \cdot C_2, ... , C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$

Das Prinzip ist in der obigen Grafik an einem Beispiel dargestellt:

  • Die Folgen $C_1$ und $C_2$ sind ein günstiges Paar von $M$–Sequenzen gleicher Periodenlänge, zum Beispiel die PN–Generatoren mit den Oktalkennungen (51) und (75) vom Grad $G = 5$ und damit der Periodenlänge $P = 31$.
  • Die GC–Familie besteht zum einen aus den M–Sequenzen $C_1$ und $C_2$ sowie aus verschiedenen Modulo–2–Additionen dieser Folgen. Dabei wird $C_1$ mit fester Phase (gekennzeichnet durch die Vorbelegung aller Speicherzellen mit Einsen) verwendet, während für die Folge $C_2$ alle $P$ möglichen Anfangsphasen zulässig sind (alle Vorbelegungen außer der Nullbelegung).
  • Verwendet man eine solche Codefamilie für CDMA, so stehen insgesamt $K_{\rm GCF} = P + 2 = 2^G + 1$ Folgen zur Verfügung. Die PAKF dieser Folgen ist nun aber nicht mehr zweiwertig wie die beiden PN–Sequenzen ($+1$ bzw. $-1/31$), sondern vierwertig ($+1$, $+7/31$, $-1/31$, $-9/31$). Durch die Phase von $C_2$ ändert sich zwar der spezifische Verlauf, aber nicht die möglichen PAKF–Werte.


Gold–Codes werden zum Beispiel bei UMTS zur Verwürfelung herangezogen, wie im Kapitel Spreizcodes und Verwürfelung in UMTS des Buches „Beispiele von Nachrichtensystemen” ausgeführt ist. Die beiden Muttercode–Schieberegister sind dabei jeweils mit $G = 18$ Speicherzellen aufgebaut. Damit ergibt sich die Periodenlänge $P = 262\hspace{0.05cm} 143$.

Walsh–Funktionen

Spreizfolgen mit sehr günstigen PKKF–Eigenschaften sind die so genannten Walsh–Funktionen, deren Konstruktion auf der Hadamard–Matrix basiert und durch Rekursion in einfacher Weise durchführbar ist. Ausgehend von der Matrix $\mathbf H_2$ können weitere Hadamard–Matrizen $\mathbf H_{2J}$ wie folgt generiert werden:

$${\mathbf{H}_{2}} = \left[ \begin{array}{ccc} +1 & +1 \\ +1 & -1 \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm}{\mathbf{H}_{2J}} = \left[ \begin{array}{ccc} \mathbf{H}_J & \mathbf{H}_J \\ \mathbf{H}_J & -\mathbf{H}_J \end{array} \right] \hspace{0.1cm} \Rightarrow \hspace{0.1cm} {\mathbf{H}_{4}} = \left[ \begin{array}{cccc} +1 & +1 & +1 & +1 \\ +1 & -1 & +1 & -1 \\ +1 & +1 & -1 & -1 \\+1 & -1 & -1 & +1 \end{array} \right] .$$

Die $J$ Zeilen einer solchen Matrix beschreiben die $J$ möglichen Spreizfolgen (jeweils der Länge $J$), die zur Kennzeichnung von $w_0(t)$ bis $w_{J–1}(t)$ durchnummeriert werden. Die Grafik zeigt die Hadamard–Matrix $\mathbf H_8$ (rechts) und die damit $J –1$ konstruierbaren Spreizfolgen. $J –1$ deshalb, da die ungespreizte Folge $w_0(t)$ meist nicht verwendet wird. Beachten Sie bitte in der Grafik die farbliche Zuordnung zwischen den Zeilen der Hadamard–Matrix und den Spreizfolgen $w_j(t)$. Die Matrix $\mathbf H_4$ ist gelb hinterlegt.

Walsh–Spreizfolgen (J = 8) und Hadamard–Matrix H8

Die Animation Walsh–Funktionen zeigt den Konstruktionsalgorithmus solcher Folgen. Weiter gilt:

  • Nimmt man zwei beliebige Zeilen und bildet die Korrelation (Mittelung über die Produkte), so ergibt sich stets der PKKF–Wert 0. Somit sind Walsh–Funktionen für einen verzerrungsfreien Kanal und ein synchrones CDMA–System aufgrund ihrer Orthogonalität optimale Spreizfolgen.
  • Bei asynchronem Betrieb (Beispiel: Uplink eines Mobilfunksystems) oder De–Orthogonalisierung aufgrund von Mehrwegeausbreitung sind dagegen Walsh–Funktionen allein zur Bandspreizung nicht unbedingt geeignet – siehe Aufgabe 5.4.
  • Hinsichtlich PAKF (periodische AKF) sind diese Folgen weniger gut: Jede einzelne Walsh–Funktion hat eine andere PAKF und jede einzelne PAKF ist ungünstiger als bei einer vergleichbaren PN–Sequenz. Das bedeutet: Die Synchronisierung ist bei Walsh–Funktionen schwieriger als mit PN–Sequenzen.

Codes mit variablem Spreizfaktor (OVSF–Code)

Das 3G–Mobilfunksystem UMTS stellt verschiedene Datenraten zur Verfügung. Hierzu werden

  • Spreizfolgen mit unterschiedlichen Spreizfaktoren $J =$ 4 bis $J =$ 512 benötigt,
  • die aber wiederum zueinander orthogonal sein müssen.


Die so genannten OVSF–Codes (Orthogonal Variable Spreading Factor) können, wie in der Grafik zu sehen ist, mit Hilfe eines Codebaumes erstellt werden. Dabei entstehen bei jeder Verzweigung aus einem Code $C$ zwei neue Codes $(+C +C)$ und $(+C –C)$, wie in der Grafik oben rechts angedeutet.


Baumdiagramm zur Erzeugung eines OVSF–Codes


Anzumerken ist, dass kein Vorgänger und Nachfolger eines Codes von anderen Teilnehmern benutzt werden darf. Im Beispiel könnte demnach folgende Auswahl getroffen werden:

  • acht Codes mit dem Spreizfaktor $J =$ 8, oder
  • die vier hinterlegten Codes – einmal mit $J =$ 2, einmal mit $J =$ 4 und zweimal mit $J =$ 8.


Im zweiten Fall können die weiteren sechs Codes mit $J =$ 8 nicht verwendet werden, da sie entweder mit „+1 +1” oder mit „+1 –1 +1 –1” beginnen. Aus den vier zugehörigen Spreizfolgen in der Grafik rechts unten erkennt man, dass bei konstanter Chipdauer $T_c$ der Nutzer mit dem Spreizfaktor $J =$ 2 mit höherer Datenrate übertragen kann als die Teilnehmer mit $J =$ 4 bzw. $J =$ 8, da seine Bitdauer $T_{\rm B}$ kleiner ist.

Aus der Grafik erkennt man weiter, dass die periodische KKF an der Stelle $τ =$ 0 stets 0 ist. Das heißt: Bildet man das Produkt von zwei beliebigen dieser Folgen und integriert man über den dargestellten Zeitbereich, so ergibt sich stets der Wert 0. Das bedeutet: Ein OVSF–Code ist orthogonal zu allen anderen OVSF–Codes der gleichen Familie, solange es nicht zu Verschiebungen kommt.

Hinweis: Die Animation OVSF–Codes zeigt den Konstruktionsalgorithmus dieser Codes und die zulässige Auswahl der Spreizfolgen.

Quellenverzeichnis

  1. Ziemer, R.; Peterson, R. L.: Digital Communication and Spread Spectrum Systems. New York: McMillon, 1985.