Difference between revisions of "Modulation Methods/Spreading Sequences for CDMA"

From LNTwww
 
(75 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 
   
 
   
 
{{Header
 
{{Header
|Untermenü=Vielfachzugriffsverfahren
+
|Untermenü=Multiple Access Methods
|Vorherige Seite=PN–Modulation
+
|Vorherige Seite=Direct-Sequence Spread Spectrum Modulation
|Nächste Seite=Fehlerwahrscheinlichkeit der PN–Modulation
+
|Nächste Seite=Error Probability of Direct-Sequence Spread Spectrum Modulation
 
}}
 
}}
==Definition der Korrelationsfunktionen==
+
==Properties of the correlation functions==
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 (siehe Kapitel 4.6 im Buch „Stochastische Signaltheorie”):
+
<br>
$$\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.$$
+
Important evaluation criteria for spreading sequences are the correlation functions.
  
Die überstreichende Linie kennzeichnet hierbei eine ''Zeitmittelung.''
+
{{BlaueBox|TEXT=
 +
$\text{Definition:}$&nbsp; Considering two ergodic processes with model functions &nbsp;$x(t)$&nbsp; and &nbsp;$y(t)$,&nbsp; the following applies to their &nbsp;[[Theory_of_Stochastic_Signals/Cross-Correlation_Function_and_Cross_Power-Spectral_Density#Definition_of_the_cross-correlation_function|$\text{cross-correlation function}$]]&nbsp; $\rm (CCF)$:
 +
:$$\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.$$
 +
The line crossing over indicates a &nbsp;"time averaging."}}
  
$φ){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}(τ)$ identisch 0 (das heißt für alle Werte von $τ$).
 
*Im allgemeinen ist $φ_{xy}(τ)$ nicht symmetrisch, sondern das KKF–Maximum tritt bei $τ_{\rm max} ≠$ 0 auf.
 
*In diesem Fall ergibt sich die maximale Korrelation durch eine gegenseitige Verschiebung der beiden betrachteten Signale um die Zeit $τ_{\rm max}$.
 
  
 +
$φ_{xy}(τ)$&nbsp; is a quantitative measure of the linear statistical dependence of the instantaneous values of model functions &nbsp;$x(t)$&nbsp; and &nbsp;$y(t + τ)$&nbsp; of the two random processes, and thus serves to describe the statistical relationship between them.&nbsp; It holds:
 +
*If &nbsp;$x(t)$&nbsp; and &nbsp;$y(t)$&nbsp; are uncorrelated,&nbsp; then &nbsp;$φ_{xy}(τ) \equiv 0$&nbsp; $($i.e.,&nbsp; for all arbitrary values of &nbsp;$τ)$.
 +
*In general, &nbsp;$φ_{xy}(τ)$&nbsp; is not symmetric,&nbsp; but the CCF maximum may well occur at &nbsp;$τ_{\rm max} ≠ 0$.&nbsp;
 +
*Then the maximum correlation results from a mutual shift of the two considered signals by the time &nbsp;$τ_{\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:  
+
{{BlaueBox|TEXT=
*Die AKF ist ein Maß für die inneren statistischen Bindungen eines durch die Musterfunktion $x(t)$ festgelegten stationären und ergodischen Prozesses.  
+
$\text{Definition:}$&nbsp;
*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.  
+
If we set &nbsp;$y(t) = x(t)$ in the above equation,&nbsp; we arrive at the &nbsp;[[Theory_of_Stochastic_Signals/Auto-Correlation_Function_(ACF)|$\text{auto-correlation function}$]]&nbsp; $\rm (ACF)$
*Der Maximalwert der AKF liegt bei $τ =$ 0. Es gilt stets $|φ_{xx}(τ)| ≤ φ_{xx}(0),$ wobei $φ_{xx}(0)$ die Signalleistung $P_x = E[x^2(t)]$ angibt.  
+
:$$ \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$$
*Der Gleichanteil eines Signals kann aus dem Grenzwert $(τ → ∞)$ ermittelt werden, so lange das Signal keine periodischen Anteile beinhaltet:  
+
with the following properties:
$$\overline{ x(t)} =  {\rm E}[x(t)] = \sqrt{\lim_{\tau\to\infty}\,\varphi_{xx} (\tau)} \hspace{0.05cm}.$$
+
*The ACF is a measure of the internal statistical bindings of a stationary and ergodic process defined by the model function &nbsp;$x(t)$.&nbsp;
 +
*If &nbsp;$x(t)$&nbsp; is real,&nbsp; then &nbsp;$φ_{xx}(τ)$&nbsp; is a real even function: &nbsp; $φ_{xx}(–τ) = φ_{xx}(τ)$.&nbsp; Phase relations are thus lost in the ACF.  
 +
*If &nbsp;$x(t)$&nbsp; describes a complex process,&nbsp; then the ACF is also complex.
 +
*The maximum value of the ACF is at &nbsp;$τ =0$.&nbsp; It is always &nbsp;$\vert φ_{xx}(τ)\vert ≤ φ_{xx}(τ = 0)$,&nbsp; where &nbsp;$φ_{xx}(τ =0)$&nbsp; indicates the signal power &nbsp;$P_x = {\rm E}\big[x^2(t)\big]$.&nbsp;
 +
*The DC component of &nbsp;$x(t)$&nbsp; can be determined from the limit value for &nbsp;$(τ → ∞)$&nbsp; as long as &nbsp;$x(t)$&nbsp; does not contain any periodic components:  
 +
:$$\overline{ x(t)} =  {\rm E}\big[x(t)\big] = \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
+
The auto-correlation function and cross-correlation function describe the internal bindings and the mutual statistical dependencies in the time domain.&nbsp; The corresponding description functions in the frequency domain are
*das Leistungsdichtespektrum ${\it Φ}_{xx}(f)$, sowie
+
*the &nbsp;[[Theory_of_Stochastic_Signals/Power-Spectral_Density|$\text{power-spectral density}$]]&nbsp; ${\it Φ}_{xx}(f)$, as well as
*das Kreuzleistungsdichtespektrum ${\it Φ}_{xy}(f)$.  
+
*the &nbsp;[[Theory_of_Stochastic_Signals/Cross-Correlation_Function_and_Cross_Power-Spectral_Density#Cross_power-spectral_density|$\text{cross power-spectral density}$]] &nbsp;${\it Φ}_{xy}(f)$.  
  
  
Bei ergodischen Prozessen ergeben sich diese als die Fouriertransformierten von AKF und KKF:
+
For ergodic processes,&nbsp; these are obtained as the &nbsp;[[Signal_Representation/Fourier_Transform_and_its_Inverse#Fourier_transform|$\text{Fourier transforms}$]]&nbsp; of ACF and CCF:
$${\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}.$$
+
:$${\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}.$$
  
==Periodische AKF und KKF==
 
''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)$.
 
  
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):  
+
'''Note:''' &nbsp; In the following,&nbsp; as in the book [[Theory_of_Stochastic_Signals|"Theory of Stochastic Signals"]],&nbsp; we write simplifying for the ACF &nbsp;$φ_x(τ)$&nbsp; instead of &nbsp;$φ_{xx}(τ)$&nbsp; and for the PSD &nbsp;${\it Φ}_x(f)$&nbsp; instead of &nbsp;${\it Φ}_{xx}(f)$.
$$\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}  ,\\
+
 
 +
==Periodic ACF and CCF==
 +
<br>
 +
For periodic signals,&nbsp; the boundary transition can be omitted from the ACF and the CCF calculations,&nbsp; and the period duration &nbsp;$T_0$&nbsp; (which must be the same for both signals) is used to obtain:  
 +
:$$\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*}$$
 
\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:  
+
In this case,&nbsp; the ACF is also a periodic function,&nbsp; and it is called the &nbsp;"periodic auto-correlation function"&nbsp; $\rm (PACF)$.&nbsp; This shows the following:  
$$\varphi_{x}(\pm T_0) = \varphi_{x}(\pm 2T_0) = ... = \varphi_{x}(0)  
+
:$$\varphi_{x}(\pm T_0) = \varphi_{x}(\pm 2T_0) =\text{ ...} = \varphi_{x}(0)  
 
\hspace{0.05cm}.$$
 
\hspace{0.05cm}.$$
Wir wenden nun obige Berechnungsvorschrift auf das Spreizsignal
+
We now apply the above calculation rule to the spreading signal
$$ c(t) = \sum\limits^{+\infty}_{\nu = -\infty}c_\nu\cdot g_c(t - \nu \cdot T_c)$$
+
:$$ 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 von $T_c$ mit dem Parameter $λ$:
+
assuming a rectangular pulse &nbsp;$g_c(t)$&nbsp; of width &nbsp;$T_c$&nbsp;;&nbsp; $T_c$&nbsp; is called the&nbsp; "chip duration".  
$$\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 rechteckigen 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 zu diesem Thema sowie Aufgaben, Simulationen und Programmierübungen finden Sie im Kapitel 9 (Programm „stp”) des Praktikums „Simulationsmethoden in der Nachrichtentechnik” am Lehrstuhl für Nachrichtentechnik der TU München. Diese Lehrveranstaltung basiert auf den 24 DOS–Programmen des Lehrsoftwarepaketes LNTsim.  
+
Considering the periodicity &nbsp;$(T_0 = P · T_c)$&nbsp; of the amplitude coefficients &nbsp;$c_ν ∈ \{±1\}$,&nbsp; the discrete ACF values at multiples $($integer parameter $λ)$&nbsp; of &nbsp;$T_c$ are obtained:
 +
:$$\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}.$$
 +
*The maximum PACF value is obtained for &nbsp;$λ = 0$&nbsp; and for multiples of the period length &nbsp;$P$.
 +
*Due to the rectangular pulse &nbsp;$g_c(t)$,&nbsp; the PACF progression between two samples &nbsp;$λ · T_c$&nbsp; and &nbsp;$(λ + 1) · T_c$&nbsp; is always linear.
 +
*Accordingly, the &nbsp;"periodic cross-correlation function"&nbsp; $\rm (PCCF)$&nbsp; between two spreading sequences &nbsp;$〈c_ν〉$&nbsp; and &nbsp;$〈c\hspace{0.04cm}'_ν〉$&nbsp; of equal period length &nbsp;$P$&nbsp; is given as follows:
 +
:$$\varphi_{cc\hspace{0.04cm}'}(\lambda \cdot T_c) = \frac{1}{P}\cdot\sum\limits^{P-1}_{\nu = 0} c_\nu \cdot c\hspace{0.04cm}'_{\nu+ \lambda }\hspace{0.05cm}.$$
  
Herunterladen des Programmpakets LNTsim (Zip–Version)
 
  
Herunterladen der dazugehörigen Texte (PDF–Datei) (PDF–Datei mit Kapitel 9)
+
  
==Beurteilungskriterien für PN–Spreizfolgen==
+
==Evaluation criteria for PN spreading sequences==
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:  
+
<br>
*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.  
+
The quality of a CDMA system based on PN modulation depends significantly on the PACF and PCCF properties of the spreading sequences used.&nbsp; In summary:  
*Der störende Einfluss interferierender CDMA–Teilnehmer lässt sich durch den PKKF–Wert $φ_{cc'} (λ =$ 0) abschätzen. Ist dieser gleich 0, 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.  
+
*The PACF of the spreading code class used should be characterized by a pronounced peak at &nbsp;${\it λ} = 0$,&nbsp; if possible,&nbsp; in order to make synchronization at the receiver easy.&nbsp; Moreover,&nbsp; for multipath reception with an echo of delay difference &nbsp;$λ · T_c$,&nbsp; the smaller &nbsp;$|φ_c(λ · T_c)|$&nbsp; is,&nbsp; the smaller is the degradation due to intersymbol interference.
*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.
+
*The disruptive influence of interfering CDMA subscribers can be estimated by the PCCF value &nbsp;$φ_{cc\hspace{0.04cm}'} (λ = 0)$.&nbsp; If this is equal to zero,&nbsp; one speaks of &nbsp; "orthogonal functions".&nbsp; The error probability is not increased in this case.&nbsp; If all spreading sequences are orthogonal,&nbsp; then even if there are &nbsp;$J$&nbsp; participants,&nbsp; the error probability is the same as if there were only one user.
*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 Punkte gefunden werden können, um somit auch möglichst viele Teilnehmer gleichzeitig im gleichen Frequenzband versorgen zu können.  
+
*This last statement is of particular importance in synchronous systems with distortion-free channel&nbsp; (for example,&nbsp; in AWGN).&nbsp;&nbsp; On the other hand,&nbsp; in asynchronous operation or multipath reception,&nbsp; "de-orthogonalization"&nbsp; occurs and the stricter requirement that the PCCF between each sequence should take on the smallest possible values&nbsp; (in terms of magnitude)&nbsp; at all times.
  
==PN–Folgen maximaler Länge (1)==
 
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, ... , 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 PN–Folge (Pseudo Noise).
 
  
 +
When selecting code families for a CDMA system,&nbsp; care must also be taken to ensure that as many encoded sequences as possible with favorable properties with respect to these three criteria can be found for a given spreading factor &nbsp;$J = P$,&nbsp; so that as many subscribers as possible can be supplied simultaneously in the same frequency band.
  
[[File:P_ID1876__Mod_T_5_3_S4a_neu.png | PN–Generator (Realisierung mit Schieberegister)]]
+
==Pseudo-noise sequences of maximum length==
 +
<br>
 +
A feedback shift register can be used to generate a sequence with favorable ACF properties if the feedback coefficients &nbsp;$g_i$&nbsp; with index&nbsp; $i = 1, \text{...} \ , G-1$&nbsp; are chosen appropriately. &nbsp;
 +
[[File:EN_Mod_T_5_3_S4.png|right|frame|PN generator&nbsp; (realization with shift registers)]]
 +
[[File:EN_Mod_T_5_3_S4b.png|right|frame| Polynomials of M-sequences with degree&nbsp; $G$]]
 +
 +
*The sequence&nbsp;$〈c_ν〉$&nbsp; is not random in the strict sense,&nbsp; but periodic. &nbsp;
 +
*However,&nbsp; due to the large period length &nbsp;$P$&nbsp; it appears stochastic to an uninitiated observer.&nbsp;
 +
*One speaks of a &nbsp;&raquo;'''pseudo–noise sequence'''&laquo;&nbsp; or &nbsp;"PN sequence" for short.
  
 +
<br><br> 
 +
$\text{PN generators}$&nbsp; have the following properties,&nbsp; see chapter &nbsp;[[Theory_of_Stochastic_Signals/Erzeugung_von_diskreten_Zufallsgrößen|"Generation of Discrete Random Variables"]]&nbsp; in the book "Theory of Stochastic Signals":
 +
*The binary values &nbsp;$c_{ν-1}, \text{...} \ , c_{ν-G}$&nbsp; generated at earlier times are stored in the &nbsp;$G$&nbsp; memory cells of the shift register.&nbsp; We refer to &nbsp;$G$&nbsp; as the&nbsp; "degree of the shift register".
  
PN–Generatoren haben folgende Eigenschaften, siehe Buch „Stochastische Signaltheorie”, Kapitel 2.5: 
+
*The coefficients &nbsp;$g_1, \ \text{...} \ , g_{G-1}$&nbsp; are binary values,&nbsp; where a&nbsp; "1"&nbsp; indicates a feedback at the corresponding location of the shift register and a&nbsp; "0"&nbsp; indicates no feedback.
*Die zu früheren Zeitpunkten generierten Binärwerte $c_{ν–1}, ... , c_{ν–G}$ sind in den $G$ Speicherzellen des Schieberegisters abgelegt. Man bezeichnet $G$ als den ''Grad'' des Schieberegisters.
+
*Die Koeffizienten $g_1, ... , g_{G–1}$ sind Binärwerte, wobei eine „1” eine Rückkopplung an der entsprechenden Stelle des Schieberegisters kennzeichnet und eine „0” keine Rückführung.  
+
*For the currently generated symbol,&nbsp; with &nbsp;$g_i ∈ \{0, 1\}$&nbsp; and&nbsp; $i = 1,\ \text{...}\ , G-1$:  
*Für das aktuell erzeugte Symbol gilt mit $g_i ∈$ {0, 1} und $i = 1, ... , 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.$$
$$c_\nu = (g_1\cdot c_{\nu-1}+g_2\cdot c_{\nu-2}+...+g_i\cdot c_{\nu-i}+...+g_{G-1}\cdot c_{\nu-G+1}+ c_{\nu-G})\hspace{0.1cm} \rm mod \hspace{0.2cm}2.$$
+
*The modulo-2 addition can be realized for example by an&nbsp; $\rm XOR$&nbsp; operation:
*Die Modulo–2–Addition kann zum Beispiel durch eine XOR–Verknüpfung realisiert werden:  
+
:$$(x + y)\hspace{0.2cm} \rm mod\hspace{0.2cm}2 = {\it x}\hspace{0.2cm}\rm XOR\hspace{0.2cm} {\it y} = \left\{          \begin{array}{*{2}{c}}          0 & \rm if\hspace{0.1cm} {\it x}= {\it y},\\          1 & \rm if\hspace{0.1cm} {\it x}\neq {\it y}. \\              \end{array}    \right.$$
$$(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.$$
+
*If not all &nbsp;$G$&nbsp; memory cells are preallocated with zeros,&nbsp; the result is a periodic random sequence &nbsp;$〈c_ν〉$.&nbsp; The period length &nbsp;$P$&nbsp; of this sequence depends strongly on the feedback coefficients &nbsp;$g_i$.&nbsp;
*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.
 
  
 +
*For each degree&nbsp; $G$&nbsp; there are at least two configurations with the maximum period &nbsp;$P_{\rm max} = 2^G – 1$&nbsp; for this.
  
[[File:P_ID1877__Mod_T_5_3_S4b.png | Generatorpolynome von M–Sequenzen, G: Grad | rechts]]
 
*Für jeden Grad $G$ gibt es zumindest zwei Konfigurationen mit der hierfür maximalen Periodenlänge $P_{\rm max} = 2^G – 1$.
 
  
 +
In the table on the right,&nbsp; for some values of &nbsp;$G$,&nbsp; the generator polynomial &nbsp;$G(D)$&nbsp; of such an M-sequence and the corresponding&nbsp; (maximum)&nbsp; period length &nbsp;$P$&nbsp; are given,&nbsp; where&nbsp; "M"&nbsp; stands for&nbsp; "Maximum".&nbsp; In the following the statements made here are clarified at the example &nbsp;$G = 4$.&nbsp;
  
In nebenstehender Tabelle sind für einige Werte von $G$ das Generatorpolynom $G(D)$ einer solchen $M$–Sequenz und die dazugehörige (maximale) Periodenlänge $P$ angegeben, wobei das „M” für „Maximal” steht. Im nächsten Abschnitt werden die hier gemachten Aussagen am Beispiel $G =$ 4 verdeutlicht.
 
  
==PN–Folgen maximaler Länge (2)==
+
{{GraueBox|TEXT=
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, ... g_2, g_1, g_0)$ gewählt, wobei grundsätzlich $g_0 = g_G =$ 1 anzusetzen ist. Für die linke Konfiguration erhält man $\rm (11001)_{binär} = (31)_{oktal}$, das dazugehörige Generatorpolynom lautet
+
$\text{Example 1:}$&nbsp; The diagram shows two possible arrangements for generating a PN sequence of maximum length for &nbsp;$G = 4$ &nbsp; &nbsp; $P = 15$.
$$G(D) = D^4 + D^3 +1\hspace{0.05cm}.$$
+
[[File:EN_Mod_T_5_3_S4c.png|right|frame| PN generators of degree &nbsp;$G = 4$]]
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}.$$
 
  
 +
[[File: P_ID1879__Mod_T_5_3_S4d_ganz_neu.png|right|frame|PACF of a PN sequence of maximum length &nbsp;$P = 2^G – 1$]]
 +
 +
*The octal representation of the binary number &nbsp;$(g_G, \ \text{...} \ ,g_2, g_1, g_0)$&nbsp; is usually chosen as the abbreviation.&nbsp; Basically&nbsp; $g_0 = g_G = 1$&nbsp; is to be set.
  
 +
*For the left generator:&nbsp; $\rm (11001)_{binary} = (31)_{octal}$.&nbsp; The corresponding generator polynomial is:
 +
:$$G_1(D) = D^4 + D^3 +1\hspace{0.05cm}.$$
  
[[File:P_ID1878__Mod_T_5_3_S4c_ganz_neu.png | PN–Generatoren vom Grad G = 4]]
+
*For the right generator:&nbsp; $\rm (10011)_{binary} = (23)_{octal}$.&nbsp; This generator can be described by the polynomial
 +
:$$G_2(D) =D^4 + D +1 \hspace{0.05cm}.$$
 +
*The polynomial&nbsp; $G_2(D)$&nbsp; is reciprocal to &nbsp;$G_{\rm 1}(D)$:
 +
:$$G_{\rm 2}(D) = D^4 \cdot  (D^{-4}  + D^{-3} +1) =D^4 + D +1 \hspace{0.05cm}.$$
  
 +
Since both &nbsp;$G_1(D)$&nbsp; and &nbsp;$G_{\rm 2}(D)$&nbsp; are&nbsp; [[Channel_Coding/Extension_Field#Binary_extension_fields_.E2.80.93_Primitive_polynomials|$\text{primitive generator polynomials}$]]&nbsp; &nbsp; (the proof for this is not easy),&nbsp; both output sequences have the maximum period length &nbsp;$P = 15$&nbsp; for &nbsp;$G = 4$.
  
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 A5.3 gezeigt wird, ergibt sich die PAKF in der unipolaren Darstellung  $c_ν ∈$ {0, 1} zu
+
As shown in  &nbsp;[[Aufgaben:Exercise_5.3:_PACF_of_PN_Sequences|"Exercise 5.3"]],&nbsp; the PACF in unipolar representation &nbsp; &nbsp; $c_ν ∈ \{0, 1\}$&nbsp; results in
$${\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, ... \hspace{0.05cm} \\ \\ \end{array}$$
+
:$${\it \varphi}_{c{\rm ,\hspace{0.15cm}unipolar} }(\lambda \cdot T_c) = \left\{ \begin{array}{c}(P+1)/(2P) \\ (P+1)/(4P) \\  \end{array} \right. \begin{array}{*{10}c} \ \  {\rm{for} }\ \lambda = 0, \pm P, \pm 2P, \text{...} \hspace{0.05cm} \\  {\rm{otherwise} } \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, ... \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 5.4 noch gezeigt werden wird.
 
  
 +
After conversion to bipolar coefficients &nbsp;$(0 \ ⇒  +1$, &nbsp; &nbsp; $1 \ ⇒  -1)$,&nbsp; we obtain:
 +
:$${\it \varphi}_{c{\rm ,\hspace{0.15cm}bipolar} }(\lambda \cdot T_c) = \left\{ \begin{array}{c}1 \\ -P \\  \end{array} \right. \begin{array}{*{10}c}  \ \  {\rm{for} }\ \lambda = 0, \pm P, \pm 2P, \text{...} \hspace{0.05cm} \\  {\rm{otherwise} } \hspace{0.05cm}.  \\ \end{array}$$
 +
*One can see from the bottom diagram the desired distinct PACF peaks at intervals of period &nbsp;$P$.
 +
*The PCCF properties of PN sequences are less good,&nbsp; as will be shown in chapter &nbsp;[[Modulation_Methods/Fehlerwahrscheinlichkeit_der_PN–Modulation|"Error Probability of Direct-Sequence Spread Spectrum Modulation"]].&nbsp;}}
  
[[File: P_ID1879__Mod_T_5_3_S4d_ganz_neu.png | PAKF einer PN–Sequenz maximaler Länge (P = (2^G) – 1)]]
 
  
==Codefamilien mit M–Sequenzen==
 
Bei CDMA wird für jeden Teilnehmer eine spezifische Spreizfolge gleicher Periodenlänge $P$ 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. Beispielsweise gibt es für den Grad $G =$ 5  ⇒  $P =$ 31 gerade einmal sechs $M$–Sequenzen, nämlich die PN–Generatoren mit den Oktalkennungen (45), (51), (57), (67), (73) und (75).  
+
==Code families with M-sequences==
 +
<br>
 +
In CDMA,&nbsp; a specific spreading sequence of the same period length is required for each subscriber.&nbsp; A&nbsp; &raquo;'''code family'''&laquo;&nbsp; is defined as a set&nbsp; (as large as possible)&nbsp; of spreading sequences of the same period length &nbsp;$P$,&nbsp; each valid for a register level &nbsp;$G$.  
  
 +
The table shows that the number of PN sequences of maximum length is very small. For the degree &nbsp;$G = 5$ &nbsp;  ⇒ &nbsp;  $P = 31$,&nbsp; for example,&nbsp; there are just six M-sequences,&nbsp; namely the PN generators with the octal identifiers &nbsp;$(45), (51), (57), (67), (73)$&nbsp; and &nbsp;$(75)$.
  
[[File:P_ID1880__Mod_T_5_3_S5_neu.png | Mächtigkeit von M–Sequenz–Codefamilien]]
+
[[File:EN_Mod_T_5_3_S5neu_v2.png|right|frame| M-sequence code family &ndash; powerfullness]]
  
 +
Furthermore, the term&nbsp; &raquo;'''powerfulness'''&laquo;&nbsp; of the code family can also be found in the literature.
 +
*This quantity indicates how many M-sequences and thus simultaneous CDMA subscribers are possible if it is required that all code pairs have&nbsp; "favorable PCCF properties".
 +
*For reasons of space,&nbsp; it cannot be explicitly stated here what exactly is meant by&nbsp; "favorable".&nbsp; For this,&nbsp; we refer to the original literature,&nbsp; for example [ZP85]<ref>Ziemer, R.; Peterson, R. L.:&nbsp; Digital Communication and Spread Spectrum Systems. New York: McMillon, 1985.</ref>. 
  
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]<ref>Ziemer, R.; Peterson, R. L.: ''Digital Communication and Spread Spectrum Systems.'' New York: McMillon, 1985.</ref>. 
 
  
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.  
+
The last row in the above table makes it clear that the powerfulness of M-sequence code families is extremely limited,&nbsp; even if &nbsp;$G$&nbsp; is large and thus the period length &nbsp;$P$ is large, too.&nbsp; If &nbsp;$G$&nbsp; is a multiple of&nbsp; $4$ &nbsp; ⇒  &nbsp; $P = 15$,&nbsp; $P = 255$,&nbsp; $P = 4095$ etc.,&nbsp; there are essentially no favorable pairs.
  
==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.  
+
<br>
 +
To obtain larger code families than with M-sequences,&nbsp; the requirements for the periodic cross-correlation function&nbsp; $\rm (PCCF)$&nbsp; must be weakened.&nbsp; With this restriction,&nbsp; code families with a much greater powerfulness are obtained,&nbsp; so that more CDMA subscribers can also be supplied.
  
 +
Gold codes use this principle.&nbsp;  The rule for generating a&nbsp; &raquo;'''Gold code family'''&laquo; &nbsp; $\rm (GCF)$&nbsp; is where a&nbsp; "+"&nbsp; denotes a modulo-2 addition:
 +
:$${\rm 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, \ \text{...} \  ,\
 +
C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$
 +
[[File:EN_Mod_T_5_3_S6.png|right|frame|Gold code generator &nbsp;$(51,  75)$&nbsp; of degree &nbsp;$G = 5$]]
  
[[File:P_ID1881__Mod_T_5_3_S6_neu.png | Gold–Codegenerator (51, 75) vom Grad G = 5]]
+
The principle is illustrated in the diagram by an example:
 +
*The sequences &nbsp;$C_1$&nbsp; and &nbsp;$C_2$&nbsp; are a convenient pair of&nbsp; "M-sequences"&nbsp; of the same period length,&nbsp; for example,&nbsp; the PN generators with the octal identifiers &nbsp;$(51)$&nbsp; and &nbsp;$(75)$&nbsp; of degree &nbsp;$G = 5$&nbsp; and thus the period length &nbsp;$P = 31$.
 +
*The Gold code family consists,&nbsp; on the one hand,&nbsp; of the&nbsp; "M-sequences" &nbsp;$C_1$&nbsp; and &nbsp;$C_2$&nbsp; and of some modulo-2 additions of these sequences.&nbsp; &nbsp;$C_1$&nbsp; is used with a fixed phase&nbsp; (characterized by the preallocation of all memory cells with ones),&nbsp; while all &nbsp;$P$&nbsp; possible initial phases are permissible for the sequence &nbsp;$C_2$&nbsp; (all preallocations except the zero allocation).
 +
*If such a code family is used for CDMA,&nbsp; a total of &nbsp;$K_{\rm GCF} = P + 2 = 2^G + 1$&nbsp; sequences are available.&nbsp; However,&nbsp; the PACF of these sequences is now no longer bivalent like the two PN sequences&nbsp; &nbsp;$(+1$&nbsp; and&nbsp; $-1/31)$, but quadrivalent &nbsp;$(+1$,&nbsp; $+7/31$,&nbsp; $-1/31$,&nbsp; $-9/31)$.&nbsp; The phase of &nbsp;$C_2$&nbsp; changes the specific progression,&nbsp; but not the possible PACF values.
  
  
Gold–Codes verwenden dieses Prinzip. Die Vorschrift zur Erzeugung einer Gold–Code–Familie (GCF) lautet, wobei ein „+” eine Modulo–2–Addition bezeichnet:  
+
Gold codes are used for scrambling in UMTS,&nbsp; for example,&nbsp; as explained in the chapter&nbsp; [[Examples_of_Communication_Systems/Telecommunications_Aspects_of_UMTS#Spreading_codes_and_scrambling_with_UMTS|"Spreading codes and scrambling with UMTS"]]&nbsp; in the book "Examples of Communication Systems".
$$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, ... ,
+
*The two master code shift registers are each constructed with &nbsp;$G = 18$&nbsp; memory cells.
C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$
+
*This results in the period length &nbsp;$P = 262\hspace{0.05cm} 143$.
 +
 
 +
==Walsh functions==
 +
<br>
 +
Spreading sequences with very favorable PCCF properties are the so-called&nbsp; &raquo;'''Walsh functions'''&laquo;,&nbsp; whose construction is based on the&nbsp; &raquo;'''Hadamard matrix'''&laquo;&nbsp; and can be performed in a simple way by recursion.&nbsp; Starting from the matrix &nbsp;$\mathbf H_2$,&nbsp; further Hadamard matrices &nbsp;$\mathbf H_{2J}$&nbsp; can be generated as follows:
 +
 
 +
[[File:P_ID1882__Mod_T_5_3_S7_neu.png|right|frame| Walsh spreading sequences &nbsp;$(J = 8)$&nbsp; and Hadamard matrix &nbsp;$\mathbf H_8$&nbsp;]]
 +
 +
:$${\mathbf{H}_{2}} =  \left[ \begin{array}{ccc} +1 & +1 \\ +1 & -1 \end{array} \right] \hspace{0.5cm} \Rightarrow \hspace{0.5cm}{\mathbf{H}_{2J}} =  \left[ \begin{array}{ccc} \mathbf{H}_J & \mathbf{H}_J \\ \mathbf{H}_J & -\mathbf{H}_J \end{array} \right] $$
 +
:$$\hspace{0.5cm} \Rightarrow \hspace{0.5cm}
 +
{\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] .$$
 +
The &nbsp;$J$&nbsp; rows of such a matrix describe the &nbsp;$J$&nbsp; possible spreading sequences&nbsp; $($each of length &nbsp;$J)$,&nbsp; which are numbered &nbsp;$w_0(t)$&nbsp; to&nbsp; $w_{J–1}(t)$.&nbsp;
 +
 
 +
The diagram shows the Hadamard matrix &nbsp;$\mathbf H_8$&nbsp; (right) and the&nbsp;$J -1$&nbsp;  spreading sequences that can be constructed with it.
 +
*$J - 1$ because the sequence &nbsp;$w_0(t)$&nbsp; without spreading effect is usually not used.
 +
*Please note the color allocation between the rows of the Hadamard matrix and the spreading sequence &nbsp;$w_j(t)$&nbsp; in the graphic. The matrix &nbsp;$\mathbf H_4$&nbsp; is highlighted in yellow.
 +
*The HTML5/JavaScript applet&nbsp; [[Applets:Generation_of_Walsh_functions|"Generation of Walsh functions"]]&nbsp; shows the construction algorithm of such sequences.
 +
 
 +
 
 +
Further applies:
 +
#&nbsp;If one takes any two lines and forms the correlation&nbsp; (averaging over the products),&nbsp; the PCCF value always results in zero.&nbsp; Thus,&nbsp; Walsh functions for a distortion-free channel and a synchronous CDMA system are optimal spreading sequences due to their orthogonality.
 +
#&nbsp;In contrast,&nbsp; for asynchronous operation&nbsp; (example: uplink of a mobile radio system)&nbsp; or de-orthogonalization due to multipath propagation,&nbsp; Walsh functions alone are not necessarily suitable for band spreading - see &nbsp;[[Aufgaben:Exercise_5.4:_Walsh_Functions_(PCCF,_PACF)|"Exercise 5.4"]]. 
 +
#&nbsp;Regarding PACF&nbsp; (periodic ACF),&nbsp; these consequences are less good: &nbsp; Each single Walsh function has a different PACF and each single PACF is less favorable than for a comparable PN sequence.&nbsp; This means: &nbsp; Synchronization is more difficult with Walsh functions than with PN sequences.
 +
 
 +
==Codes with variable spreading factor (OVSF codes)==
 +
<br>
 +
The 3G mobile communications system&nbsp;[[Examples_of_Communication_Systems/Allgemeine_Beschreibung_von_UMTS|$\text{UMTS}$]]&nbsp; provides various data rates.&nbsp; For this purpose
 +
*spreading sequences with different spreading factors &nbsp;$J = 4$&nbsp; to &nbsp;$J = 512$&nbsp; are required,
 +
*which must all be orthogonal to each other.
 +
 
 +
[[File:P_ID1883__Mod_T_5_3_S8_neu.png|right|frame | Tree diagram for generating an OVSF code]]
 +
<br>The so-called&nbsp; &raquo;'''OVSF codes'''&laquo;&nbsp; ("Orthogonal Variable Spreading Factor")&nbsp; can be created with the help of a code tree.&nbsp; Thereby two new codes &nbsp;$(+C \ +\hspace{-0.05cm}C)$&nbsp; and &nbsp;$(+C \ -\hspace{-0.05cm}C)$&nbsp; are created at each branching from a code&nbsp; $C$,&nbsp; as indicated in the graphic above right.
 +
 
 +
It should be noted that no predecessor and successor of a code may be used by other participants.&nbsp; In this example,&nbsp; the following selection could therefore be made&nbsp; (among others):
 +
*eight codes with the spreading factor &nbsp;$J = 8$,&nbsp; or
 +
*the four highlighted codes – once with &nbsp;$J = 2$, once with &nbsp;$J = 4$&nbsp; and twice with &nbsp;$J = 8$.  
 +
 
 +
 
 +
In the second case, the other six&nbsp; $J = 8$&nbsp; codes cannot be used because they begin with &nbsp;"$+1 \ +\hspace{-0.05cm}1$"&nbsp; or with &nbsp;"$+1 \ -\hspace{-0.05cm}1 \ +\hspace{-0.05cm}1 \ -\hspace{-0.05cm}1$".&nbsp;
  
Das Prinzip ist in der obigen Grafik an einem Beispiel dargestellt:
+
From the four spreading sequences in the graphic at the bottom right,&nbsp; it can be seen that with a constant chip duration &nbsp;$T_c$,&nbsp; the user with spreading factor &nbsp;$J = 2$&nbsp; can transmit at a higher data rate than the users with &nbsp;$J = 4$&nbsp; or &nbsp;$J = 8$ because his bit duration &nbsp;$T_{\rm B}$&nbsp; is smaller.
*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.  
 
  
 +
From the graph,&nbsp; we can further see that the periodic cross-correlation function&nbsp;  $\rm (PCCF)$&nbsp; is always zero at the point &nbsp;$τ = 0$.&nbsp;
 +
*That means: &nbsp; If one forms the product of any two of these sequences and integrates over the represented time range, the value&nbsp; $0$&nbsp; always results.
 +
*This also means: &nbsp; '''An OVSF code is orthogonal to all other OVSF codes of the same family as long as there are no shifts'''.
  
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.
 
  
==Walsh–Funktionen==
+
'''Note:''' &nbsp; The&nbsp; (German language)&nbsp; SWF applet&nbsp; [[Applets:OVSF-Codes_(Applet)|"OVSF codes"]]&nbsp; shows the construction algorithm of these codes and the allowed selection of spreading sequences.
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.  
 
  
  
[[File:P_ID1882__Mod_T_5_3_S7_neu.png | Walsh–Spreizfolgen (J = 8) und Hadamard–Matrix H_8]]
+
==Exercises for the chapter==
 +
<br>
  
 +
[[Aufgaben:Exercise_5.3:_PACF_of_PN_Sequences|Exercise 5.3: PACF of PN Sequences]]
  
Die Animation Walsh–Funktionen zeigt den Konstruktionsalgorithmus solcher Folgen. Weiter gilt:
+
[[Aufgaben:Exercise_5.3Z:_Realization_of_a_PN_Sequence|Exercise 5.3Z: Realization of a PN Sequence]]
*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. 
 
*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.
 
  
 +
[[Aufgaben:Exercise_5.4:_Walsh_Functions_(PCCF,_PACF)|Exercise 5.4: Walsh Functions (PCCF, PACF)]]
  
 +
[[Aufgaben:Exercise_5.4Z:_OVSF_Codes|Exercise 5.4Z: OVSF Codes]]
  
  
  
==Quellenverzeichnis==
+
==References==
 
<references/>
 
<references/>
  
 
{{Display}}
 
{{Display}}

Latest revision as of 18:37, 23 January 2023

Properties of the correlation functions


Important evaluation criteria for spreading sequences are the correlation functions.

$\text{Definition:}$  Considering two ergodic processes with model functions  $x(t)$  and  $y(t)$,  the following applies to their  $\text{cross-correlation function}$  $\rm (CCF)$:

$$\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.$$

The line crossing over indicates a  "time averaging."


$φ_{xy}(τ)$  is a quantitative measure of the linear statistical dependence of the instantaneous values of model functions  $x(t)$  and  $y(t + τ)$  of the two random processes, and thus serves to describe the statistical relationship between them.  It holds:

  • If  $x(t)$  and  $y(t)$  are uncorrelated,  then  $φ_{xy}(τ) \equiv 0$  $($i.e.,  for all arbitrary values of  $τ)$.
  • In general,  $φ_{xy}(τ)$  is not symmetric,  but the CCF maximum may well occur at  $τ_{\rm max} ≠ 0$. 
  • Then the maximum correlation results from a mutual shift of the two considered signals by the time  $τ_{\rm max}$.


$\text{Definition:}$  If we set  $y(t) = x(t)$ in the above equation,  we arrive at the  $\text{auto-correlation function}$  $\rm (ACF)$

$$ \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$$

with the following properties:

  • The ACF is a measure of the internal statistical bindings of a stationary and ergodic process defined by the model function  $x(t)$. 
  • If  $x(t)$  is real,  then  $φ_{xx}(τ)$  is a real even function:   $φ_{xx}(–τ) = φ_{xx}(τ)$.  Phase relations are thus lost in the ACF.
  • If  $x(t)$  describes a complex process,  then the ACF is also complex.
  • The maximum value of the ACF is at  $τ =0$.  It is always  $\vert φ_{xx}(τ)\vert ≤ φ_{xx}(τ = 0)$,  where  $φ_{xx}(τ =0)$  indicates the signal power  $P_x = {\rm E}\big[x^2(t)\big]$. 
  • The DC component of  $x(t)$  can be determined from the limit value for  $(τ → ∞)$  as long as  $x(t)$  does not contain any periodic components:
$$\overline{ x(t)} = {\rm E}\big[x(t)\big] = \sqrt{\lim_{\tau\to\infty}\,\varphi_{xx} (\tau)} \hspace{0.05cm}.$$


The auto-correlation function and cross-correlation function describe the internal bindings and the mutual statistical dependencies in the time domain.  The corresponding description functions in the frequency domain are


For ergodic processes,  these are obtained as the  $\text{Fourier transforms}$  of ACF and CCF:

$${\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}.$$


Note:   In the following,  as in the book "Theory of Stochastic Signals",  we write simplifying for the ACF  $φ_x(τ)$  instead of  $φ_{xx}(τ)$  and for the PSD  ${\it Φ}_x(f)$  instead of  ${\it Φ}_{xx}(f)$.

Periodic ACF and CCF


For periodic signals,  the boundary transition can be omitted from the ACF and the CCF calculations,  and the period duration  $T_0$  (which must be the same for both signals) is used to obtain:

$$\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 this case,  the ACF is also a periodic function,  and it is called the  "periodic auto-correlation function"  $\rm (PACF)$.  This shows the following:

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

We now apply the above calculation rule to the spreading signal

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

assuming a rectangular pulse  $g_c(t)$  of width  $T_c$ ;  $T_c$  is called the  "chip duration".

Considering the periodicity  $(T_0 = P · T_c)$  of the amplitude coefficients  $c_ν ∈ \{±1\}$,  the discrete ACF values at multiples $($integer parameter $λ)$  of  $T_c$ are obtained:

$$\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}.$$
  • The maximum PACF value is obtained for  $λ = 0$  and for multiples of the period length  $P$.
  • Due to the rectangular pulse  $g_c(t)$,  the PACF progression between two samples  $λ · T_c$  and  $(λ + 1) · T_c$  is always linear.
  • Accordingly, the  "periodic cross-correlation function"  $\rm (PCCF)$  between two spreading sequences  $〈c_ν〉$  and  $〈c\hspace{0.04cm}'_ν〉$  of equal period length  $P$  is given as follows:
$$\varphi_{cc\hspace{0.04cm}'}(\lambda \cdot T_c) = \frac{1}{P}\cdot\sum\limits^{P-1}_{\nu = 0} c_\nu \cdot c\hspace{0.04cm}'_{\nu+ \lambda }\hspace{0.05cm}.$$



Evaluation criteria for PN spreading sequences


The quality of a CDMA system based on PN modulation depends significantly on the PACF and PCCF properties of the spreading sequences used.  In summary:

  • The PACF of the spreading code class used should be characterized by a pronounced peak at  ${\it λ} = 0$,  if possible,  in order to make synchronization at the receiver easy.  Moreover,  for multipath reception with an echo of delay difference  $λ · T_c$,  the smaller  $|φ_c(λ · T_c)|$  is,  the smaller is the degradation due to intersymbol interference.
  • The disruptive influence of interfering CDMA subscribers can be estimated by the PCCF value  $φ_{cc\hspace{0.04cm}'} (λ = 0)$.  If this is equal to zero,  one speaks of   "orthogonal functions".  The error probability is not increased in this case.  If all spreading sequences are orthogonal,  then even if there are  $J$  participants,  the error probability is the same as if there were only one user.
  • This last statement is of particular importance in synchronous systems with distortion-free channel  (for example,  in AWGN).   On the other hand,  in asynchronous operation or multipath reception,  "de-orthogonalization"  occurs and the stricter requirement that the PCCF between each sequence should take on the smallest possible values  (in terms of magnitude)  at all times.


When selecting code families for a CDMA system,  care must also be taken to ensure that as many encoded sequences as possible with favorable properties with respect to these three criteria can be found for a given spreading factor  $J = P$,  so that as many subscribers as possible can be supplied simultaneously in the same frequency band.

Pseudo-noise sequences of maximum length


A feedback shift register can be used to generate a sequence with favorable ACF properties if the feedback coefficients  $g_i$  with index  $i = 1, \text{...} \ , G-1$  are chosen appropriately.  

PN generator  (realization with shift registers)
Polynomials of M-sequences with degree  $G$
  • The sequence $〈c_ν〉$  is not random in the strict sense,  but periodic.  
  • However,  due to the large period length  $P$  it appears stochastic to an uninitiated observer. 
  • One speaks of a  »pseudo–noise sequence«  or  "PN sequence" for short.



$\text{PN generators}$  have the following properties,  see chapter  "Generation of Discrete Random Variables"  in the book "Theory of Stochastic Signals":

  • The binary values  $c_{ν-1}, \text{...} \ , c_{ν-G}$  generated at earlier times are stored in the  $G$  memory cells of the shift register.  We refer to  $G$  as the  "degree of the shift register".
  • The coefficients  $g_1, \ \text{...} \ , g_{G-1}$  are binary values,  where a  "1"  indicates a feedback at the corresponding location of the shift register and a  "0"  indicates no feedback.
  • For the currently generated symbol,  with  $g_i ∈ \{0, 1\}$  and  $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.$$
  • The modulo-2 addition can be realized for example by an  $\rm XOR$  operation:
$$(x + y)\hspace{0.2cm} \rm mod\hspace{0.2cm}2 = {\it x}\hspace{0.2cm}\rm XOR\hspace{0.2cm} {\it y} = \left\{ \begin{array}{*{2}{c}} 0 & \rm if\hspace{0.1cm} {\it x}= {\it y},\\ 1 & \rm if\hspace{0.1cm} {\it x}\neq {\it y}. \\ \end{array} \right.$$
  • If not all  $G$  memory cells are preallocated with zeros,  the result is a periodic random sequence  $〈c_ν〉$.  The period length  $P$  of this sequence depends strongly on the feedback coefficients  $g_i$. 
  • For each degree  $G$  there are at least two configurations with the maximum period  $P_{\rm max} = 2^G – 1$  for this.


In the table on the right,  for some values of  $G$,  the generator polynomial  $G(D)$  of such an M-sequence and the corresponding  (maximum)  period length  $P$  are given,  where  "M"  stands for  "Maximum".  In the following the statements made here are clarified at the example  $G = 4$. 


$\text{Example 1:}$  The diagram shows two possible arrangements for generating a PN sequence of maximum length for  $G = 4$   ⇒   $P = 15$.

PN generators of degree  $G = 4$
PACF of a PN sequence of maximum length  $P = 2^G – 1$
  • The octal representation of the binary number  $(g_G, \ \text{...} \ ,g_2, g_1, g_0)$  is usually chosen as the abbreviation.  Basically  $g_0 = g_G = 1$  is to be set.
  • For the left generator:  $\rm (11001)_{binary} = (31)_{octal}$.  The corresponding generator polynomial is:
$$G_1(D) = D^4 + D^3 +1\hspace{0.05cm}.$$
  • For the right generator:  $\rm (10011)_{binary} = (23)_{octal}$.  This generator can be described by the polynomial
$$G_2(D) =D^4 + D +1 \hspace{0.05cm}.$$
  • The polynomial  $G_2(D)$  is reciprocal to  $G_{\rm 1}(D)$:
$$G_{\rm 2}(D) = D^4 \cdot (D^{-4} + D^{-3} +1) =D^4 + D +1 \hspace{0.05cm}.$$

Since both  $G_1(D)$  and  $G_{\rm 2}(D)$  are  $\text{primitive generator polynomials}$    (the proof for this is not easy),  both output sequences have the maximum period length  $P = 15$  for  $G = 4$.

As shown in  "Exercise 5.3",  the PACF in unipolar representation   ⇒   $c_ν ∈ \{0, 1\}$  results in

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

After conversion to bipolar coefficients  $(0 \ ⇒ +1$,     $1 \ ⇒ -1)$,  we obtain:

$${\it \varphi}_{c{\rm ,\hspace{0.15cm}bipolar} }(\lambda \cdot T_c) = \left\{ \begin{array}{c}1 \\ -P \\ \end{array} \right. \begin{array}{*{10}c} \ \ {\rm{for} }\ \lambda = 0, \pm P, \pm 2P, \text{...} \hspace{0.05cm} \\ {\rm{otherwise} } \hspace{0.05cm}. \\ \end{array}$$


Code families with M-sequences


In CDMA,  a specific spreading sequence of the same period length is required for each subscriber.  A  »code family«  is defined as a set  (as large as possible)  of spreading sequences of the same period length  $P$,  each valid for a register level  $G$.

The table shows that the number of PN sequences of maximum length is very small. For the degree  $G = 5$   ⇒   $P = 31$,  for example,  there are just six M-sequences,  namely the PN generators with the octal identifiers  $(45), (51), (57), (67), (73)$  and  $(75)$.

M-sequence code family – powerfullness

Furthermore, the term  »powerfulness«  of the code family can also be found in the literature.

  • This quantity indicates how many M-sequences and thus simultaneous CDMA subscribers are possible if it is required that all code pairs have  "favorable PCCF properties".
  • For reasons of space,  it cannot be explicitly stated here what exactly is meant by  "favorable".  For this,  we refer to the original literature,  for example [ZP85][1].


The last row in the above table makes it clear that the powerfulness of M-sequence code families is extremely limited,  even if  $G$  is large and thus the period length  $P$ is large, too.  If  $G$  is a multiple of  $4$   ⇒   $P = 15$,  $P = 255$,  $P = 4095$ etc.,  there are essentially no favorable pairs.

Gold Codes


To obtain larger code families than with M-sequences,  the requirements for the periodic cross-correlation function  $\rm (PCCF)$  must be weakened.  With this restriction,  code families with a much greater powerfulness are obtained,  so that more CDMA subscribers can also be supplied.

Gold codes use this principle.  The rule for generating a  »Gold code family«   $\rm (GCF)$  is where a  "+"  denotes a modulo-2 addition:

$${\rm 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, \ \text{...} \ ,\ C_1 + D^{P-1} \cdot C_2 \} \hspace{0.05cm}.$$
Gold code generator  $(51, 75)$  of degree  $G = 5$

The principle is illustrated in the diagram by an example:

  • The sequences  $C_1$  and  $C_2$  are a convenient pair of  "M-sequences"  of the same period length,  for example,  the PN generators with the octal identifiers  $(51)$  and  $(75)$  of degree  $G = 5$  and thus the period length  $P = 31$.
  • The Gold code family consists,  on the one hand,  of the  "M-sequences"  $C_1$  and  $C_2$  and of some modulo-2 additions of these sequences.   $C_1$  is used with a fixed phase  (characterized by the preallocation of all memory cells with ones),  while all  $P$  possible initial phases are permissible for the sequence  $C_2$  (all preallocations except the zero allocation).
  • If such a code family is used for CDMA,  a total of  $K_{\rm GCF} = P + 2 = 2^G + 1$  sequences are available.  However,  the PACF of these sequences is now no longer bivalent like the two PN sequences   $(+1$  and  $-1/31)$, but quadrivalent  $(+1$,  $+7/31$,  $-1/31$,  $-9/31)$.  The phase of  $C_2$  changes the specific progression,  but not the possible PACF values.


Gold codes are used for scrambling in UMTS,  for example,  as explained in the chapter  "Spreading codes and scrambling with UMTS"  in the book "Examples of Communication Systems".

  • The two master code shift registers are each constructed with  $G = 18$  memory cells.
  • This results in the period length  $P = 262\hspace{0.05cm} 143$.

Walsh functions


Spreading sequences with very favorable PCCF properties are the so-called  »Walsh functions«,  whose construction is based on the  »Hadamard matrix«  and can be performed in a simple way by recursion.  Starting from the matrix  $\mathbf H_2$,  further Hadamard matrices  $\mathbf H_{2J}$  can be generated as follows:

Walsh spreading sequences  $(J = 8)$  and Hadamard matrix  $\mathbf H_8$ 
$${\mathbf{H}_{2}} = \left[ \begin{array}{ccc} +1 & +1 \\ +1 & -1 \end{array} \right] \hspace{0.5cm} \Rightarrow \hspace{0.5cm}{\mathbf{H}_{2J}} = \left[ \begin{array}{ccc} \mathbf{H}_J & \mathbf{H}_J \\ \mathbf{H}_J & -\mathbf{H}_J \end{array} \right] $$
$$\hspace{0.5cm} \Rightarrow \hspace{0.5cm} {\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] .$$

The  $J$  rows of such a matrix describe the  $J$  possible spreading sequences  $($each of length  $J)$,  which are numbered  $w_0(t)$  to  $w_{J–1}(t)$. 

The diagram shows the Hadamard matrix  $\mathbf H_8$  (right) and the $J -1$  spreading sequences that can be constructed with it.

  • $J - 1$ because the sequence  $w_0(t)$  without spreading effect is usually not used.
  • Please note the color allocation between the rows of the Hadamard matrix and the spreading sequence  $w_j(t)$  in the graphic. The matrix  $\mathbf H_4$  is highlighted in yellow.
  • The HTML5/JavaScript applet  "Generation of Walsh functions"  shows the construction algorithm of such sequences.


Further applies:

  1.  If one takes any two lines and forms the correlation  (averaging over the products),  the PCCF value always results in zero.  Thus,  Walsh functions for a distortion-free channel and a synchronous CDMA system are optimal spreading sequences due to their orthogonality.
  2.  In contrast,  for asynchronous operation  (example: uplink of a mobile radio system)  or de-orthogonalization due to multipath propagation,  Walsh functions alone are not necessarily suitable for band spreading - see  "Exercise 5.4".
  3.  Regarding PACF  (periodic ACF),  these consequences are less good:   Each single Walsh function has a different PACF and each single PACF is less favorable than for a comparable PN sequence.  This means:   Synchronization is more difficult with Walsh functions than with PN sequences.

Codes with variable spreading factor (OVSF codes)


The 3G mobile communications system $\text{UMTS}$  provides various data rates.  For this purpose

  • spreading sequences with different spreading factors  $J = 4$  to  $J = 512$  are required,
  • which must all be orthogonal to each other.
Tree diagram for generating an OVSF code


The so-called  »OVSF codes«  ("Orthogonal Variable Spreading Factor")  can be created with the help of a code tree.  Thereby two new codes  $(+C \ +\hspace{-0.05cm}C)$  and  $(+C \ -\hspace{-0.05cm}C)$  are created at each branching from a code  $C$,  as indicated in the graphic above right.

It should be noted that no predecessor and successor of a code may be used by other participants.  In this example,  the following selection could therefore be made  (among others):

  • eight codes with the spreading factor  $J = 8$,  or
  • the four highlighted codes – once with  $J = 2$, once with  $J = 4$  and twice with  $J = 8$.


In the second case, the other six  $J = 8$  codes cannot be used because they begin with  "$+1 \ +\hspace{-0.05cm}1$"  or with  "$+1 \ -\hspace{-0.05cm}1 \ +\hspace{-0.05cm}1 \ -\hspace{-0.05cm}1$". 

From the four spreading sequences in the graphic at the bottom right,  it can be seen that with a constant chip duration  $T_c$,  the user with spreading factor  $J = 2$  can transmit at a higher data rate than the users with  $J = 4$  or  $J = 8$ because his bit duration  $T_{\rm B}$  is smaller.

From the graph,  we can further see that the periodic cross-correlation function  $\rm (PCCF)$  is always zero at the point  $τ = 0$. 

  • That means:   If one forms the product of any two of these sequences and integrates over the represented time range, the value  $0$  always results.
  • This also means:   An OVSF code is orthogonal to all other OVSF codes of the same family as long as there are no shifts.


Note:   The  (German language)  SWF applet  "OVSF codes"  shows the construction algorithm of these codes and the allowed selection of spreading sequences.


Exercises for the chapter


Exercise 5.3: PACF of PN Sequences

Exercise 5.3Z: Realization of a PN Sequence

Exercise 5.4: Walsh Functions (PCCF, PACF)

Exercise 5.4Z: OVSF Codes


References

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