Ou 2 est le nombre de sorties, 1 est le nombre
d'entrées et 3 le nombre des registres. II.2.2. Représentations
des codeurs convolutifs
Pour analyser les codes convolutifs, on représente
graphiquement le fonctionnement du codeur. L'étude du codage convolutif
peut être faite par un diagramme arborescent [18] qui devient vite
impraticable dès que la séquence à coder dépasse
quelques bits, puisque la dimension de l'arbre double à chaque
étage.
Aussi, elle peut être représentée
à l'aide d'un diagramme d'état ou le diagramme en treillis. On
suppose que les registres des codeurs sont initialisés à
zéro.
? Diagramme d'état
La sortie du codeur dépend de l'entrée et du
contenu des registres et chaque nouvelle entrée produit un
décalage des registres et une sortie. On peut donc considérer un
codeur convolutif comme une machine à états telle que :
o les états sont définis par les k × m
éléments binaires les plus à gauche avant le
décalage ;
o les transitions entre états sont provoquées
par l'arrivée d'un mot de k éléments binaires en
entrée.
Dans l'exemple précédent C (2, 1, 3), 4
états sont possibles, définis par les 2 éléments
binaires les
plus à gauche avant le décalage. Lorsque le
codeur est dans un état XY (X et Y ? {0, 1}),
le registre contient XYZ, avec Z ? {0, 1}. L'arrivée
d'un élément binaire E en entrée met le codeur dans
l'état EX (contenu du registre EXY) et génère une sortie :
c = [E +X +Y E +Y]. Le codeur peut ainsi être représenté
par le diagramme d'état [19] de la figure II.3.
En partant, par convention, d'un état initial 00, ce
diagramme donne la sortie associée à toute entrée.
.
Figure II.3 : Diagramme d'état du codeur C (2, 1, 3).
? Diagramme en treillis
Le diagramme en treillis [11] représente toutes les
évolutions possibles au cours du temps de l'état du codeur, avec
les sorties associées, selon les entrées.
Pour faciliter l'algorithme de décodage, la
représentation la plus courante du codage est la représentation
en treillis.
L'état du codeur à l'instant k est
représenté par l'état {dk-1, dk-2,.....dk-m-1}. A chaque
arrivée d'un élément binaire dk, une sortie (un mot de
code) est générée, puis juste après le codeur passe
dans l'état
suivant qui est {dk, dk-1, dk-m}.
Le treillis est formé de noeuds reliés par des
branches : les noeuds représentent les différents états du
codeur possibles : il y en a 2m-1 s'il y a une
entrée 2(m-1)k s'il y a k
entrées, les branches représentent les différentes
transitions possibles d'un noeud à un autre (ou d'un état du
codeur au suivant) lors de l'arrivée d'un bit d'entrée.
Voici le treillis de la figure II.4 : les états sont
00, 01, 10,11. Partant, par exemple de l'état 00, l'arrivée d'un
0 mène le codeur à l'état 00 (transition en
pointillé pour l'arrivée d'un 0) et l'arrivée d'un 1
mène le codeur à l'état 10 (transition en trait plein pour
l'arrivée d'un 1). A chaque branche on peut associer le mot codé
soit les 2 bits de code sur la figure II.4.
Figure II.4 : Exemple de treillis.
Alors la figure II.5 représente un tel diagramme pour le
codeur C (2, 1, 3) précédent.
Le diagramme en treillis peut être vu comme un
déroulement du diagramme d'état sur une échelle
temporelle, en partant de l'état 00 à l'instant initial. A partir
d'un certain moment, le treillis consiste en la répétition d'un
motif, témoin de la structure cyclique du diagramme d'état.
Figure II.5 : Diagramme en treillis du codeur C (2, 1, 3).
|