implémentation analogique de décodeurs correcteurs derreurs hamid meghdadi superviseur: prof. jean...
TRANSCRIPT
Implémentation analogique de décodeurs correcteurs
d’erreurs
Hamid Meghdadi
Superviseur:
Prof. Jean Pierre Cances
Juillet 2007
Sommaire
• Introduction
• Logiciel CADENCE
• Décodage analogique
• Travaux réalisés– Hamming (8,4)– Tail biting Convolutif (7,5)– LDPC Quasi-cyclique
• Conclusion
Introduction
• Bruit
Émetteur RécepteurCanal
Bruit
Les informations reçues peuvent être différentes de celles envoyées
• Bruit Erreur
Introduction
• Bruit Erreur• Parité• Bruit Erreur• Parité
– Détection d’erreur– Correction d’erreur
Utiliser parité paire
Envoyer deux fois la même séquence d’information
Avec les codages plus efficaces on peut détecter ou éventuellement
corriger les erreurs
Codage
n
iix
1
0
Introduction
• Bruit Erreur• Parité
– Détection d’erreur– Correction d’erreur
• Codage:– Rate: R = k / n– Distance Hamming (d)
• Pouvoir de détection : d – 1• Pouvoir de correction :
2
1d
Coût Protection
Distance de Hamming:Le minimum du nombre de positions où deux mots de codes sont différents
Rateenvoyés bits des totalNombre
ninformatiol' de bits des Nombre
Introduction
Codes convolutifs
0
1
0
10110
1
1
10
0
1
0
1 1 0 0 0
111000Séquence codée:
11
1
1 10
Code convolutifCode convolutif (7,5)
(111)8 (101)8
Message à coder:
Introduction
Code en blocs– Couper la séquence de
l’information en blocs de taille k– Coder chaque bloc de taille k en un
bloc de taille n
Espace vectoriel k dimensionnel(2k vecteurs)
Espace de message
Espace vectoriel n dimensionnel
(2n vecteurs)Espace de code
Introduction
Code en blocs (suite)nkkn Gux 11
11 0 knTnnkn xH
message matrice génératrice
Code
Matrice de vérification de
parité kknT
knnkn GH 0
Introduction
Code en blocs (suite)
Chaque ligne de matrice H:
Une équation de parité
11000110
11110000
01101100
0000111187654321
H
xxxxxxxx
07643 xxxx
Logiciel CADENCE
• Simulateur spectre• Le logiciel le plus répandu
pour la conception des circuits intégrés
• Démarche:– Schematic– Symbol– Simulation– Optimisation
Décodage analogique(Factor graph)• Une méthode pour présenter la
matrice H.• Pour chaque ligne de H on a un nœud
de vérification de parité• Pour chaque colonne de H on a un nœud
de variable• Un nœud de variable (VNj) est connecté à
un nœud de vérification(FNi) si et seulement si hi,j est 1.
• Un nœud de vérification vaut 1 si la somme des valeurs de tous les nœuds de variable connectés à celui-ci est égale à 0
Décodage analogique(Factor graph)
4
3
2
1
87654321
11000110
11110000
01101100
00001111
f
f
f
f
xxxxxxxx
H
• Exemple: Hamming (8,4)
Décodage analogique(Notion de LLR)• Projection
• 0 ↔ 1• 1 ↔ -1
• LLR (Log-Likelihood Ratio)
• Bit soft
2
)(tanh)(
XLXEX
)1(
)0(ln)(
xP
xPXL
X
X
Bit hardBit softLLR
Symbolexλ(X)L(X)
Domaine-1,1[-1,+1][-∞,+∞]
Décodage analogique(Soft XOR- Boxplus)
)().()( 213 UUU
2
)(tanh
2
)(tanhtanh2 211
21
ULULULUL
Décodage analogique(Soft XOR- Boxplus)Boxplus à trois entrées:
Décodage analogique(Algorithme de Sum-Product)
ij
jfx XLi
)( )( jxf XLi
j≠i
Décodage analogique(Circuits de base)
Décodage analogique(Réalisation de Boxplus)
T
T
TT V
V
V
VVV
2tanh
2tanhtanh2 11
3
Décodage analogique(Réalisation de Boxplus)
• MOS:– Saturation:
• Parabolique
– Subthreshold:• Exponentiel• VGS≈ VTh
• IDS ≈ qq nA
• Avantage:– Consommation
• Inconvénient:– Rapidité
Courant Rapidité
Décodage analogique(Réalisation de Boxplus)
• Product:– Multiplicateur– Vx et Vy :Niveaux
differents• Norm:
– Normaliser la sortie de Product pour être utilisable par les étages suivants
Décodage analogique(Simulation de Boxplus)
1
2
3
1
2
3
Boxplus – théorique
Boxplus – pratique
Boxplus – 3D (pratique)
Décodage analogique(Entrée de circuit)
• Résultat:– Bonne linéarité
– Peu d’offset
– V=34 mV * LLR
0
2
N
xLLR
Émetteur Canal
Bruit
x
Hamming (8,4)
Hamming (8,4)
BitMot de code sélectionné
Mot de code erroné
P(ui=0)
(a priori)Tension d’entrée
(mV)Tension de sortie (mV)
Décision hard
1000.9+74.7+2330
2000.1-74.7+1810
3110.1-74.7-2181
4100.9+74.7-1151
5000.9+74.7+2260
6110.1-74.7-1901
7110.1-74.7-1381
8000.9+74.7+1940
• Simulation DC
Hamming (8,4)
• Simulation du mode transitoire
Tail biting (7,5)convolutif
• ci: Informations du canal
• ui:Message décodé (Pas de probabilité à priori)
Tail biting (7,5)convolutif
Tail biting (7,5)convolutif
Mesure de rapidité(600 Kbit/sec)
Réponse transitoire
Tail biting (7,5)convolutif
Simulation très lente ≈ 20 heures par point
LDPC Quasi-cyclique• LDPC
– Low Density Parity Check– Codes très puissants– Proposé par Gallager en 1963
• Génération– Aléatoire– Matrices circulantes– ….
• Ix est la matrice d’identité 7x7 dont les lignes sont permutées à gauche de x-1 positions.
LDPC Quasi-cyclique
Nœuds de vérification de parité
Nœuds de variable
• Période = 1
LDPC Quasi-cyclique
LDPC Quasi-cyclique• Rate = 8/21• Chaque bloc:
– 8 bits– 7 éléments de base– 21 nœuds de variable– 14 nœuds de vérification
LDPC Quasi-cyclique
1 2
• Code modulaire
• On peut choisir le nombre de bits de l’information
• Connectique simple
Conclusion
• Perspectives:– Analyse de TEB– Optimisation des
paramètres de circuit
– Fabrication des circuit conçus
– Utiliser plus d’un décodeur à la fois afin d’augmenter la rapidité
– Étudier des décodeur plus efficaces
• Bilan:– Autonomie– Approfondir ses
connaissances de théorie de l’information
– Prise en main du logiciel CADENCE
– Se familiariser avec les décodeurs analogique
Merci de votre attention
Hamid Meghdadi
Master Recherche 2 - CHFO
ENSIL 3 – ELT
5 Juillet 2007