Codes cycliques Hypothèse sur V = vocabulaire source Code linéaire - caractérisation Codage et décodage d’un code linéaire Code cyclique – caractérisation.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

de l’algorithme de Viterbi
Chapitre IV Protection contre les erreurs
Chapitre IV Protection contre les erreurs
Les matrices.
Architecture de machines Codage des informations
3. Variantes de l’algorithme
Algorithmes et structures de données avancés
Introduction à l’Algorithmique
ASR4 - Mars 2006Notions de codes1 Détection et correction derreurs… … au sein de la couche 2 : liaison de données.
Dpt. Télécommunications, Services & Usages Théorie de l information H. Benoit-Cattin Introduction 2. Sources discrètes & Entropie 3. Canaux discrets.
par Caaliph ANDRIAMISAINA, Catherine DEZAN
Chap 1 Grammaires et dérivations.
Transmission fiable et codes correcteurs
Chapitre II.Rappels mathématiques et complexité
Conception et analyse des algorithmes
VI – Rang d’une matrice Mots clés : Rang.
Algorithmes Branch & Bound
ASI 3 Méthodes numériques pour l’ingénieur
Rappel... Opérations élémentaires sur les matrices:
Optimisation linéaire
Théorie dinformation ELG3575 Introduction aux systèmes de télécommunication.
Examen partiel #2 Mercredi le 15 novembre de 13h30 à 15h20
Rappel... Solution itérative de systèmes linéaires (suite et fin).
Implémentation analogique de décodeurs correcteurs d’erreurs
Chiffrement de Lester Hill
Exemple en dynamique de population
Chapitre 4 Réduction des endomorphismes
Rappel... Systèmes dynamiques: discrets; continus.
Coloration gap sommet identifiante de graphes
Programmation linéaire en nombres entiers : la méthode du simplexe
Toutes les variables étaient mesurées au niveau intervalle et sans erreur Toutes les variables étaient mesurées au niveau intervalle et sans erreur ->
6.1 LE LANGAGE MATRICIEL Cours 16. Aujourdhui, nous allons voir La définition dune matrice Plusieurs définitions de matrice particulière La somme de matrices.
Optimisation linéaire
INF4420: Sécurité Informatique
Détection du meilleur format de compression pour une matrice creuse dans un environnement parallèle hétérogène Olfa HAMDI-LARBI.
Institut Supérieur des Etudes Technologiques de Djerba Exposé du Traitement de Données Réalisé par: Khalifa Marwa Magroun Amira Jawadi Souad L2MDW.
ASI 3 Méthodes numériques pour l’ingénieur
La théorie de la communication de C. Shannon
Programmation linéaire en nombres entiers : les méthodes de troncature
l’algorithme du simplexe
Cours du 25 octobre Mardi le 24 octobre
Rappel... Valeurs propres et vecteurs propres. Définitions;
L’endomorphisme le plus simple est l’ homothétie
ASI 3 Méthodes numériques pour l’ingénieur
Outils mathématiques pour le datamining
Cours n° 2 Liaison de données et trames
5 – Application: gestion de polynômes
Algorithmes Branch & Bound
Pr BELKHIR Abdelkader USTHB
Décodage souple de l’image binaire des codes de Reed-Solomon
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
CHAPITRE III Calcul vectoriel
6. Problème de flot à coût minimum.
ASI 3 Méthodes numériques pour l’ingénieur
Les propriétés des exposants
Cours 8 La transmission.

Analyse de données Cours 3 Analyse en composantes principales (ACP)
Structure de groupe Def: un groupe est un ensemble (G,*) où
Structures de données avancées : MLH (Multidimensional linear hashing) D. E ZEGOUR Institut National d ’Informatique.
Post-optimisation, analyse de sensibilité et paramétrage
Interpolation et Approximation
UED SIM – Département OLCI Année Arts & Métiers ParisTech CER ANGERS Probabilités et statistiques Cours n° 2.
MATHÉMATIQUES L1 Second Semestre Armand Taranco. BIBLIOGRAPHIE Dupont : Algèbre pour les sciences économiques, Flash U, A. Colin. Bernard Guerrien, Isabelle.
Département Informatique Codage de l’information Laurent JEANPIERRE IUT de CAEN – Campus 3.
Complexité algorithmique
Codes cycliques Hypothèse sur V = vocabulaire source
Transcription de la présentation:

Codes cycliques Hypothèse sur V = vocabulaire source Code linéaire - caractérisation Codage et décodage d’un code linéaire Code cyclique – caractérisation Distance d’un code cyclique Code de Reed-Solomon

Hypothèse sur le vocabulaire V du canal V est un corps fini : soient a,b  V : e 0, e 1, a+b, -a, a*b, a/b  V Possible ssi |V| = p m avec p premier Soit q = p m : V est alors isomorphe à GF q –Exemple: V= {0,1} ; V={mots de 32 bits} Implantation –GF q isomorphe à (Z/pZ[x])/Q(x) avec Q polynôme irréductible de degré m à coefficients dans Z/pZ –avec p= 2: facile registre à décalage !

Code linéaire V corps => V n est un espace vectoriel Déf : code linéaire  sev de dim k de V n l –Si x=[x 0, …, x n-1 ]  C, y=[y 0, …, y n-1 ]  C => x+y =[x 0 +y 0,…, x n-1 +y n-1 ]  C C est engendré par une matrice génératrice G C=Im(G) G = n lignes k colonnes

Exemple V = {a=00, b=01, c=10, d=11} Code (7,4) engendré par G G =

Décodage d’un code linéaire Il existe G génératrice = [Id k | A ] Codage( [s 0, …, s k-1 ] ) =[c 0,…, c k-1, c k …, c n-1 ] [c k …, c n-1 ] = [s 0, …, s k-1 ].A = [c 0, …, c k-1 ].A Donc: [c 0, …, c k-1 ].A - [c k …, c n-1 ].Id n-k = 0 Soit [-A t | Id n-k ].c t = H.c t = 0 H = Matrice de contrôle : (n-k, n)

Détection d’erreurs On émet x et on reçoit y; y est un mot de code  H.y t = 0 Syndrome d’erreur : s = H.y t s  0 => il y eu erreur de transmission

Correction d’erreurs Corriger  trouver x=y-c Or: s = H.y t = H.y t - H.c t = H.x t Le syndrome donne toute l’info pour corriger x non unique : pour chaque s on choisit le x s de poids minimal, stocké dans un tableau Cor[s]= x s Ex: V= {0,1}, n=64 k=52 : 2 64 erreurs possibles mais tableau de taille seulement 2 12 =4096

Distance d’un code linéaire d = Min { d H ( x, y) ;  x,y  C } = Min { w H (x - y) ;  x,y  C } = Min { w H ( z ) ;  z  C } Borne de singleton : d  n-k+1 Prop: d = nbre minimal de cols indép. de H  k colonnes quelconques de H sont indépendantes

Bon codes Facile et efficace à implémenter –Codes cycliques Etant donné un taux de correction, pouvoir facilement construire un code (n,k,d) qui donne ce taux de correction: –Codes de Reed-Solomon

Codes cycliques Décalage :  ( [c 0 …, c n-1 ] ) = [c n-1,c 0 …, c n-2 ] Déf: Code cyclique  code linéaire stable par  Description simple, de coût O(n-k=r): –Un code (n,k) est engendré par un mot de code m=[c 0, …, c n-k-1, c n-k =1, 0 …, 0] –Ex: code binaire (7,4) engendré{ }

Caractérisation Mot de code  polynôme de V[X] [c 0, …, c n-1 ]  P c =  i=0 n-1 c i.X i  (c) associé au polynôme : X. P c mod X n –1 m=[c 0, …, c k-2, c k-1 =1, 0 …, 0] associé à un polynôme: g(X) =  i=0 k-1 c i.X i Prop. g est un diviseur unitaire de X n –1de degré r

Codage/décodage code cyclique Codage : P [a.G] = g(X).P a mod X n –1 –Tout mot de code est un multiple de g mod X n –1 –Tout multiple de g mod X n –1 est un mot de code Détection : on reçoit y = P y –Si P y n’est pas multiple de g mod X n –1 => erreur –Syndrome d’erreur: P e = P y mod g Correction: à partir du syndrome (algorithme de Meggitt)

Distance minimale d’un code cyclique Théorème BCH ( n premier avec q) –Soit  racine primitive de X n –1 dans GF(q) –Soit g =  i  S (X –  i ) –Si il existe a entier tq {a+1, a+2, …, a+s}  S d( C )  s+1 C est au moins s-détecteur et [s/2]-correcteur

Codes de Reed-Solomon q = 2 m n = 2 m - 1 X n-1 x=  a  GF(q)* (X – a) Il suffit de prendre  générateur de GF(q)* et g =  i=s. s+r-1 (X –  i ) de degré r Code cyclique (n=k+r, k, r+1) Optimal, car atteint la borne de Singleton Ex. Galileo : RS(255,233) sur V={octets}