Application aux Futurs Systèmes Multimédia par Satellite en Bande Ka'> 4.3.2.1 Module SISO de la CPM


4.3.2.1 Module SISO de la CPM

Un SISO CPM fonctionne avec deux entrées souples et délivre deux sorties souples comme illustré sur la figure 4.8.
Figure 4.8: SISO CPM
\begin{figure}
\begin{center}
\input{figures/siso_cpm.pstex_t}
\end{center}
\end{figure}
Dans ce paragraphe, l'algorithme de décodage est décrit en utilisant les données relatives aux symboles canal. Les mêmes informations relatives au bit de codes peuvent s'en déduire facilement. A un instant $ kT$, la première entrée du SISO CPM est constituée par l'observation canal représentée par le vecteur $ r_k$. La seconde entrée correspond à une information a priori relative aux symboles du canal. L'information a priori est donnée par un vecteur de taille $ M$ et dont les composantes s'écrivent:

$\displaystyle \pi_k(u)=Pr(u_k=u) \qquad u=0,\,1,\, \cdots M-1$    

L'observation canal et les données a priori permettent de calculer les métriques de chaque transition dans le treillis. considérons,à l'instant $ kT$, deux états $ s_1$ et $ s_2$ du treillis et supposons qu'il existe une transition entre ces deux états. Dans le cas d'un canal gaussien la métrique de la transition peut s'écrire:

$\displaystyle \lambda_k(s_1,s_2)\sim
 \exp\left(-\left(r_k-m\right)\,\Lambda^{-1}\,
 \left(r_k-m\right)^{T}\right)\pi_k(u)$ (4.1)

Dans cette équation, $ u$ désigne le symbole transmis associé à la transition entre $ s_1$ et $ s_2$. $ \Lambda$ est la matrice d'autocorrélation du vecteur à la sortie du banc de filtres, elle est donnée par la multiplication de la matrice d'intercorrélation des réponses temporelles des filtres de réception par $ N_0$. Le vecteur $ m$ désigne la sortie idéale sans bruit du banc du filtre quand l'impulsion associée à la transition en question est transmise. Sachant que la norme de chacun des vecteurs $ r_k$ et $ m$ est indépendante de la transition et de l'instant d'observation. On peut simplifier la métrique de la transition en l'écrivant:

$\displaystyle \lambda_k(s_1,s_2)\sim \exp\left(2Re(r_k \,\Lambda^{-1}\,
 m^{T})\right)\pi_k(u)$ (4.2)

Dans le cas où il n'existe pas de transition entre les deux états $ s_1$ et $ s_2$ on suppose naturellement que $ \lambda_k(s_1,s_2)=0$ et ceci indépendamment de l'observation canal. De cette façon les métriques de toutes les transitions à un instant $ kT$ sont représentées par la matrice $ \lambda_k$ de taille $ pM^{L-1} \times pM^{L-1}$. Une fois la métrique de chaque transition calculée, il devient possible d'évaluer les probabilités forward et backward de chaque état dans le treillis et à chaque instant. Ces probabilités à un instant $ kT$ seront notées sous une forme vectorielle respectivement par $ \alpha_k$ et $ \beta_k$. Chaque vecteur colonne de taille $ pM^{L-1}$ comprend les probabilités de tous les états à l'instant $ kT$. Le calcul des $ \alpha_k$ et $ \beta_k$ à chaque instant s'effectue d'une manière récurrente grâce à l'algorithme BCJR [11]. Les équations de récurrence sont données par:
$\displaystyle \beta_{k-1}$ $\displaystyle =$ $\displaystyle \frac{\lambda_{k-1} \beta_{k}}{\Vert\lambda_{k-1}
\beta_{k}\Vert} \qquad k=1,\, 2,\, \ldots N$  
$\displaystyle \alpha_{k+1}$ $\displaystyle =$ $\displaystyle \frac{\lambda_k^{T} \alpha_k}{\Vert\lambda_k^{T}
\alpha_{k}\Vert} \qquad k=0,\,1\,\ldots N-1$  

Pour avoir de meilleures performances, notamment en évitant les effets de bord, on a besoin d'initialiser les valeurs de $ \alpha_0$ et $ \beta_{N+1}$. Ainsi nous faisons l'hypothèse qu'au début de la transmission, le codeur de phase du CPM est initialisé à l'état zéro. Une séquence de terminaison permet aussi de s'assurer que l'état final du modulateur soit égal à zéro en fin de transmission du paquet. Dans ce cas, nous pouvons utiliser les conditions initiales suivantes:

$\displaystyle \alpha_0=\beta_{N+1}= \left(
 \begin{array}{c}
 1 \\ 
 0 \\ 
 . \\ 
 . \\ 
 . \\ 
 0\\ 
 \end{array}
 \right)$    

Contrairement au cas d'un code convolutif non récursif, il n'est pas possible d'assurer une terminaison du treillis à l'état zéro dans le cas d'une CPM par la simple émission d'une séquence de zéros. Ce fait est dû à la non linéarité des CPM vis-à-vis de la séquence transmise (récursivité des symboles). Dans [39] on trouve une technique qui permet une terminaison du treillis de la CPM à l'état tout zéros. L'inconvénient majeur de la méthode proposée est donné par le fait que la séquence de terminaison est fonction de la séquence transmise ce qui nécessite une complexité supplémentaire au niveau de l'émetteur.


Le calcul de $ \alpha_k$ et $ \beta_k$ pour toutes les valeurs de $ k=1,\,2\,\cdots,\,N$ permet de déduire les probabilités de chaque états dans le treillis, notée $ \gamma_k$, et ceci en effectuant le produit point par point entre probabilités forward et backward, soit, $ \alpha_k$ et$ \beta_k$:

$\displaystyle \gamma_k(s)=\frac{\alpha_k(s)\beta_k(s)}{\sum\limits_{i=1}^{pM^{L-1}}\alpha_k(i)\beta_k(i)}\qquad
 s=1,\,2\cdots \,pM^{L-1}$    

Il est aussi possible de calculer la probabilité de chaque transition dans le treillis. En considérant la transition entre deux états $ s_1$ et $ s_2$ et à un instant $ kT$, nous pouvons écrire sa probabilité, notée $ \delta_k$, comme suit:

$\displaystyle \delta_k(s_1,s_2)= \alpha_k(s_1)\lambda_k(s_1,s_2)\beta_{k+1}(s_2)$    

Le calcul des probabilités des états et des transitions dans le treillis est illustré par la figure 4.9.
Figure 4.9: Calcul des probabilités des états et des transitions dans le treillis de la CPM
\begin{figure}
\begin{center}
\input{figures/bcjr_fig.pstex_t}
\end{center}
\end{figure}
Les probabilités de tous les états et de toutes les transitions dans le treillis permet de déduire les informations relatives aux symboles transmis $ u_k$ sachant un certain symbole $ u \in \{0,1\cdots\,(M-1) \}$. L'information a posteriori du symbole transmis à l'instant $ kT$ sachant un symbole donné $ u$ peut se déduire en effectuant la somme des probabilités de toutes les transitions associées au symbole $ u$ soit:

$\displaystyle APP(u_k/u)=\sum_{\scriptstyle (s_1,s_2)/u}
 \alpha_k(s_1)\lambda_k(s_1,s_2)\beta_{k+1}(s_2)$ (4.3)

Cette information constitue la première sortie du module SISO CPM. L'information extrinsèque des symboles transmis est, dans ce cas, calculée d'une manière équivalente à celle de l'APP sauf que dans ce cas il ne faut pas tenir compte de l'information a priori relative au symbole $ u$ à l'instant $ kT$, soit:

$\displaystyle Ext(u_k/u)=\frac{1}{\pi_k(u)}\sum_{\scriptstyle (s_1,s_2)/u}
 \alpha_k(s_1)\lambda_k(s_1,s_2)\beta_{k+1}(s_2)=\frac{APP(u_k/u)}{\pi_k(u)}.$    

Les informations a posteriori et extrinsèques relatives aux bits de codes peuvent être extraites à partir de celles relatives aux symboles transmis. L'information a posteriori représente la probabilité de transmission de chacun des symboles canal. Dans le cas des CPM, ces données ne sont pas utilisées par le processus de décodage itératif. Concernant les informations extrinsèques, elles représentent une information a priori sur les bits de codes. Cette information est désentrelacée avant d'être exploitée par le SISO du code convolutif.

Back to the Homepage.