Codage - matrice de controle
-
SScytale dernière édition par
Bonjour,
Je bloque sur une question d'un exercice concernant les codages linéaires.
L'énoncé me donne uniquement la liste de syndromes et les message correcteur :
Syndromes | Message correcteur :
00 | 0000
01 | 0001
10 | 0010
11 | 1000On me demande de fournir la matrice de contrôle H correspondante.
Bien entendu, depuis la une matrice génératrice je sais parfaitement comment créer la matrice de contrôle H ainsi que sa transposée afin de pouvoir corriger des mots qui ne sont pas des mots-codes.
Au vu de cette liste de syndromes, je comprends que c'est un codage B[sup]2[/sup] vers B[sup]4[/sup] et donc la matrice H sera une matrice de 2 lignes et 4 colonnes.
Au vu de la composition de la matrice H : Transposée de la matrice de parité juxtaposant une matrice identité, je peux déduire que les deux dernières colonnes seront :
. . 1 0
. . 0 1Mais je ne comprends pas comment je peux trouver la matrice de parité à partir de la liste des syndromes ...
Je vous remercie d'avance pour votre éclaircissement.
-
@Scytale Bonjour,
L'énoncé est-il complet ?
Une matrice de contrôle :
H=[1 0 0 1 0 1 1 0 ]H = \begin{bmatrix} 1 \ 0 \ 0 \ 1 \ \cr 0\ 1 \ 1 \ 0 \ \end{bmatrix}H=[1 0 0 1 0 1 1 0 ]
-
SScytale dernière édition par
Bonjour,
Tout d'abord, je tiens à vous remercier d'avoir pris le temps de me répondre.
Comment avez-vous trouvé cette matrice de controle ?
J'ai compris que chaque colonne de la matrice de contrôle H représente un syndrome qui représente une correction au i-ème bit.
Donc selon moi la première colonne devrait être 11 et on aurait donc la matrice de controle suivante :1 ? 1 0
1 ? 0 1Je ne sais pas comment trouve la deuxieme colonnes car je ne peux mettre le syndrome 00 si ?
Mais du coup en voyant votre matrice proposé je me pose la question si j'ai bien compris ou pas ...
Voici l'énoncé complet :
*Soit la liste des syndromes suivante définie pour une fonction de codage linéaire systématique.
Syndrome Message
00 0000
01 0001
10 0010
11 1000- Proposez une matrice de contrôle H qui pourrait mener à cette liste de syndromes. Expliquez votre démarche.
- En fonction, donnez la matrice génératrice G et le tableau standard.
- Combien d'erreurs peuvent être détectées certainement ? pourquoi ?*
-
Une piste :
A partir des syndromes- Syndrome 00 : pas d'erreur
- Syndrome 01 : erreur dans le 1er bit
- Syndrome 10 : erreur dans le 2ème bit
- Syndrome 11 : erreur dans le 4ème bit
L'énoncé indique de proposer une matrice, donc exemple :
H=(1 0 0 1 10 1 0 1 10 0 1 0 1)H = \begin{pmatrix} 1 \ 0 \ 0 \ 1 \ 1 \cr 0 \ 1 \ 0 \ 1 \ 1 \cr 0 \ 0 \ 1 \ 0 \ 1 \end{pmatrix}H=⎝⎜⎛1 0 0 1 10 1 0 1 10 0 1 0 1⎠⎟⎞Ensuite, tu vérifies des syndromes en calculant
Pour vérifier que cette matrice de contrôle produit les bons syndromes, nous calculons (H⋅e)( H \cdot e )(H⋅e), où (e)( e )(e) est un vecteur d'erreur. Par exemple :
Pour e=(1,0,0,0,0)e = (1, 0, 0, 0, 0)e=(1,0,0,0,0) (erreur dans le 1er bit) :
H⋅e=(1 0 0 1 10 1 0 1 10 0 1 0 1)⋅(1 0 0 0 0)=(1 0 0)=01H \cdot e = \begin{pmatrix} 1 \ 0 \ 0 \ 1 \ 1 \cr 0 \ 1 \ 0 \ 1 \ 1 \cr 0 \ 0 \ 1 \ 0 \ 1 \end{pmatrix} \cdot \begin{pmatrix} 1 \ 0 \ 0 \ 0 \ 0 \end{pmatrix} = \begin{pmatrix} 1 \ 0 \ 0 \end{pmatrix} = 01H⋅e=⎝⎜⎛1 0 0 1 10 1 0 1 10 0 1 0 1⎠⎟⎞⋅(1 0 0 0 0)=(1 0 0)=01