IV Exemples de codes utilisés dans des matériels

Documents pareils
Guide pour l Installation des Disques Durs SATA et la Configuration RAID

EX4C Systèmes d exploitation. Séance 14 Structure des stockages de masse

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Codage hiérarchique et multirésolution (JPEG 2000) Codage Vidéo. Représentation de la couleur. Codage canal et codes correcteurs d erreur

Transmission d informations sur le réseau électrique

Signalisation, codage, contrôle d'erreurs

Guide pour l Installation des Disques Durs SATA et la Configuration RAID

ISO/CEI NORME INTERNATIONALE

I. TRANSMISSION DE DONNEES

Chapitre 13 Numérisation de l information

Chaine de transmission

Chapitre 2 : communications numériques.

Guide pour l Installation des Disques Durs SATA et la Configuration RAID

Théorie et codage de l information

Concepts et systèmes de stockage

Chap17 - CORRECTİON DES EXERCİCES

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

1 - Rappel. Historique

Distinguer entre «Enregistrer» et «Sauvegarder»

Informatique pour scientifiques hiver Plan général Systèmes d exploitation

Le Raid c est quoi? Comment ca marche? Les différents modes RAID :

Sauvegarde collaborative en pair-à-pair

Multimedia. Systèmes, Communications et Applications. Ahmed MEHAOUA

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

La couche physique de l ADSL (voie descendante)

Guide pour l Installation des Disques Durs SATA et Configuration RAID

Codage d information. Codage d information : -Définition-

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

Cours 13. RAID et SAN. 2004, Marc-André Léger

Transmission de données. A) Principaux éléments intervenant dans la transmission

Etudier l influence de différents paramètres sur un phénomène physique Communiquer et argumenter en utilisant un vocabulaire scientifique adapté

Programmation C. Apprendre à développer des programmes simples dans le langage C

Chapitre 18 : Transmettre et stocker de l information

Internet et Multimédia Exercices: flux multimédia

Télécommunications. Plan

Programmation parallèle et distribuée

Outils permettant la diffusion de l information. Un point sur le droit numérique

Chapitre 22 : (Cours) Numérisation, transmission, et stockage de l information

Programmation parallèle et distribuée

Mes documents Sauvegardés

Régler les paramètres de mesure en choisissant un intervalle de mesure 10µs et 200 mesures.

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

Université de La Rochelle. Réseaux TD n 6

Gestion des sauvegardes

Enregistrement et transformation du son. S. Natkin Novembre 2001

Systèmes de communications numériques 2

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Architecture de systèmes de stockage

Le e s tocka k ge g DAS,NAS,SAN

Une introduction aux codes correcteurs quantiques

Livre blanc Haute disponibilité sous Linux

Les techniques de multiplexage

Université Montpellier II Sciences et Techniques du Languedoc MÉMOIRE DE STAGE DE MASTER M2

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

Haute Disponibilité High-Availability : HA. Les enjeux

M1 Informatique, Réseaux Cours 9 : Réseaux pour le multimédia

NORMES DE LIVRAISON DES MESSAGES PUBLICITAIRES ET MESSAGES D INTÉRÊT PUBLIC COMMERCIAUX APTN

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Errata et mises à jour

Les Réseaux sans fils : IEEE F. Nolot

Cours d analyse numérique SMI-S4

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

Thomas Briet Ingenieurs 2000 Cyril Muhlenbach

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

Stockage Réseau. Le stockage s'échappe du système pour devenir une fonction réseau

1. Fournir aux Entreprises des outils de télécommunications essentiels mais jusque alors inabordables pour les petites/moyennes structures,

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Limitations of the Playstation 3 for High Performance Cluster Computing

Immobilier de prestige, biens d exception, Tour d horizon. de stockage 48 // 49

Manuel de l'utilisateur

NanoSense. Protocole Modbus de la sonde Particules P4000. (Version 01F)

Interception des signaux issus de communications MIMO

Algorithmique des Systèmes Répartis Protocoles de Communications

TABLE DES MATIERES. I. Objectifs page 2. II. Types de réseaux page 2. III. Transmission page 2. IV. Câbles page 3. V.

Chapitre 1. Introduction aux applications multimédia. 1. Introduction. Définitions des concepts liés au Multimédia (1/2)

Master 1 Informatique MIF11 - Réseau Codage et éléments de théorie de l'information

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Introduction à l étude des Corps Finis

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

Système de stockage Cisco NSS baies Gigabit

3 Approximation de solutions d équations

ENVOI EN NOMBRE DE MESSAGES AUDIO

Cours Informatique 1. Monsieur SADOUNI Salheddine

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Digital Subscriber Line

Puis le convertisseur bloque en mémoire cette valeur pendant une période d échantillonnage.

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Systèmes distribués et virtualisation de ressources

Contrat de Services Serenity Backup

Numérisation du signal

TELEVISION NUMERIQUE

COMMUTEL PRO VM3 INTERFACE GSM VOIX POUR EMULATION DE LIGNE RTC ET TRANSMETTEUR DE SMS D ALERTES ET TECHNIQUES.

Traitement numérique de l'image. Raphaël Isdant

Gestion de gros fichiers binaires (images) en APL*PLUS III

Transcription:

IV Exemples de codes utilisés dans des matériels 256

Code du minitel Faible taux d erreur, mais paquets longs : Code de Hamming + detection paquets Source = suite de paquets de 15 octets = 120 bits Correction d 1 erreur : Code Hamming(127,120,3) : 7 bits + 1 bit parité pour les 7 bits contrôle = 1 octet Détection de paquets: 1octet avec que des 0 Si erreur détectée : ARQ Total : 17 octets, rendement = 15/17 = 88% 257

Codes réseaux informatiques CRC : cyclic redundancy check avec r bits de redondance Polynome générateur g= Σ i g i.x i de degré r sur F 2 Source: x=k bits! m(x) polynome de degré k-1 Exemple: m=01101 m(x) = x+x 2 +x 4 Codage: c = m.x r - (m.x r mod g) = m.x r + (m.x r mod g) On a c multiple de g Redondance r bits (g r = 1) Propriétés: CRC détecte : erreurs de poids 1 si : g 0 = 1 erreurs de poids 2 si g(x) a un facteur avec au moins 3 termes nombre impair d erreurs si g a (x+1) comme facteur 258

CRC standards CRC-8 : x 8 +x 2 +x+1 CRC-10 : x 10 +x 9 + x 5 +x 4 x+1 CRC-12 : x 12 +x 11 + x 3 +x 2 +1 CRC-16 : x 16 +x 15 + x 2 +1 CRC-CCITT : x 16 +x 12 + x 5 +1 CRC-32 : x 32 +x 26 +x 23 +x 22 +x 16 +x 12 +x 11 +x 10 + x 8 +x 7 +x 5 +x 4 + x 2 +x+1 259

Disques RAID Redundant Array of Independent (or inexpensive) Disks Grappe de N disques RAID 0 : disk stripping: accélérer le débit. RAID 1 : mirroring : tolère la défaillace de n-1 éléments G grappes de N disques chacune : RAID 0+1 versus RAID 1+0=RAID 10 260

Disques RAID Redundant Array of Independent (or inexpensive) Disks RAID 2 : n 3 code de Hamming: tolère 2 effacements ou 1 erreur de donnée RAID 5 : Block-level striping with distributed parity : tolère 1 défaillance RAID 6 : Block-level striping with double distributed parity 261

PAR-2 : Stockage pour systèmes P2P Stockage d'un fichier de 2km octets, soit k fichiers de m mots de 16 bits codé par n = k+r fichiers, répartis et dupliqués dans le système P2P Code: linéaire canonique G = [I R ] Ajout de r fichiers de redondance les fichiers de redondance contiennent aussi les hash des n fichiers Décodage: demande du téléchargement de tous les exemplaires possibles arrêt dès qu'on a obtenu k exemplaires corrects (vérification hash) décodage pour reconstruire les k fichiers source 262

Correction des effacements d un code linéaire Théorème: un code linéaire (n,k) sur V systématique de distance d permet de corriger (d-1) effacements Preuve constructive: Codage [x 1,,x k ]. G (k,n) = [c 1,, c i,, c j,,c n ] (sous forme systématique: toute sous-matrice kxk est inversible) i j = [c 1,,? i,,? j,,c n ] Canal avec effacements [x 1,,x k ] = G -1 (k,k). [c 1,,? i,,? j,,c n ] (avec k colonnes non effacées) Décodage avec correction Correction : résolution d un système linéaire 264

Table d entrelacement : principe simple Entrelacement avec profondeur p (exemple p=3) Message à coder: a b c d e f g Après codage (n=5): a 1 a 2 a 3 a 4 a 5 b 1 b 2 b 3 b 4 b 5 c 1 c 2 c 3 c 4 c 5 d 1 d 2 d 3 d 4 d 5 e 1 e 2 e 3 e 4 e 5 f 1 f 2 Table entrelacement à profondeur 3 : (table p x n remplie à la volée) a 1 a 2 a 3 a 4 a 5 b 1 b 2 b 3 b 4 b 5 c 1 c 2 c 3 c 4 c 5 Après entrelacement (écriture de la table par colonne): a 1 b 1 c 1 a 2 b 2 c 2 a 3 b 3 c 3 a 4 b 4 c 4 a 5 b 5 c 5 d 1 e 1 f 1 d 2 e 2 f 2 d 3 e 3 f 3 d 4 e 4 Comme 2 symboles d un même mot de code sont distants de p positions: Propriété: si le code initial corrige des rafales de longueur l, l entrelacement à profondeur p corrige des rafales de longueur L: L = p.l Exemple: Un code de Hamming entrelacé à profondeur 10 corrige des rafales de longueur 10. 269

Table d entrelacement à retard ρ$ Entrelacement dans une table à n lignes et nr colonnes Exemple n= 5, ρ = 2. Message à coder: a b c d e f g Après codage (n=5): a 1 a 2 a 3 a 4 a 5 b 1 b 2 b 3 b 4 b 5 c 1 c 2 c 3 c 4 c 5 d 1 d 2 d 3 d 4 d 5 e 1 e 2 e 3 e 4 e 5 f 1 f 2 Table n x (ρ.n) remplie à la volée (ici n=5, ρ=2) a 1 b 1 c 1 d 1 e 1 f 1 g 1 h 1 i 1 j 1 a 2 b 2 c 2 d 2 e 2 f 2 g 2 h 2 a 3 b 3 c 3 d 3 e 3 f 3 a 4 b 4 c 4 d 4 a 5 b 5 Initialisation [ajout de r.n.(n-1)/2 symboles vides] m 1 n 1 o 1 p 1 q 1 r 1 s 1 t 1 u 1 v 1 k 2 l 2 m 2 n 2 o 2 p 2 q 2 r 2 s 2 t 2 i 3 j 3 k 3 l 3 m 3 n 3 o 3 p 3 q 3 r 3 g 4 h 4 i 4 j 4 k 4 l 4 m 4 n 4 p 4 p 4 e 5 f 5 g 5 h 5 i 5 j 5 k 5 l 5 m 5 n 5 En régime de croisière Après entrelacement (écriture de la table par colonne): a 1 - - - - b 1 - - - - c 1 a 2 - - - d 1 b 2 - - - e 1 c 2 a 3 - - f 1 d 2 b 3 - - g 1 e 2 c 3 a 4 - h 1 f 2 d 3 b 4 - i 1 g 2 e 3 c 4 a 5 j 1 h 2 f 3 d 4 b 5 Comme 2 symboles d un même mot de code sont distants de ρ.n+1 positions: Propriété: si le code initial corrige des rafales de longueur l, l entrelacement à retard ρ corrige des rafales de longueur L: L = (ρ.n+1).l Exemple: Un code de Hamming binaire (15,11) entrelacé à retard 4 corrige des rafales de longueur 61 bits. (avec une table de taille 15 x (15.4) = 900 bits) 270

Algorithme entrelacement: Lire le mot suivant (n symboles) et placer ses bits dans la table à partir de la colonne courante Transmettre la colonne courante sur le canal ++colonne courante modulo (ρ.n) Table d entrelacement Entrelacer(a 1 a 2 a 3 ) Entrelacer(b 1 b 2 b 3 ) Entrelacer(c 1 c 2 c 3 ) a 1 - - - - - - - a 2 - - - - - - - a 3 - a 1 b 1 - - - - - - a 2 b 2 - - - - - - a 3 b 3 a 1 b 1 c 1 - - - - - a 2 b 2 c 2 - c 3 - - - a 3 b 3 canal «a 1 - - canal «b 1 - - canal «c 1 a 2 - Entrelacer(d 1 d 2 d 3 ) Entrelacer(e 1 e 2 e 3 ) Entrelacer(f 1 f 2 f 3 ) Entrelacer(g 1 g 2 g 3 ) a 1 b 1 c 1 d 1 - - a 1 b 1 c 1 d 1 e 1 - a 1 b 1 c 1 d 1 e 1 f 1 g 1 b 1 c 1 d 1 e 1 f 1 - - a 2 b 2 c 2 d 2 e 2 - a 2 b 2 c 2 d 2 e 2 f 2 a 2 b 2 c 2 d 2 e 2 f 2 g 2 b 2 c 2 d 2 c 3 d 3 - - a 3 b 3 canal «d 1 b 2 - c 3 d 3 e 3 - a 3 b 3 c 3 d 3 e 3 f 3 a 3 b 3 c 3 d 3 e 3 f 3 g 3 b 3 canal «e 1 c 2 a 3 canal «f 1 d 2 b 3 canal «g 1 e 2 c 3 Entrelacer(h 1 h 2 h 3 ) Entrelacer(i 1 i 2 i 3 ) Entrelacer(j 1 j 2 j 3 ) Entrelacer(k 1 k 2 k 3 ) g 1 h 1 c 1 d 1 e 1 f 1 g 1 h 1 i 1 d 1 e 1 f 1 g 1 h 1 i 1 j 1 e 1 f 1 g 1 h 1 i 1 j 1 k 1 f 1 e 2 f 2 g 2 h 2 c 2 d 2 e 2 f 2 g 2 h 2 i 2 d 2 e 2 f 2 g 2 h 2 i 2 j 2 k 2 f 2 g 2 h 2 i 2 j 2 c 3 d 3 e 3 f 3 g 3 h 3 i 3 d 3 e 3 f 3 g 3 h 3 i 3 j 3 e 3 f 3 g 3 h 3 i 3 j 3 k 3 f 3 g 3 h 3 canal «h 1 f 2 d 3 canal «i 1 g 2 e 3 canal «j 1 h 2 f 3 canal «k 1 i 2 g 3 271

Désentrelacement Algorithme décentrelacement: Recevoir une colonne et la placer dans la table en colonne courante Construire le mot et le décoder ++colonne courante modulo (ρ.n) canal» d 1 b 2 - canal» a 1 - - canal» b 1 - - canal» c 1 a 2 - a 1 - - - - - a 1 b 1 - - - - a 1 b 1 c 1 - - - - - - - - - - - - - - - - - a 2 - - - - - - - - - - - - - - - - - - - - - Décoder (- - - ) Décoder (- - - ) Décoder (- - - ) canal» e 1 c 2 a 3 canal» f 1 d 2 b 3 canal» g 1 e 2 c 3 a 1 b 1 c 1 d 1 - - a 1 b 1 c 1 d 1 e 1 - a 1 b 1 c 1 d 1 e 1 f 1 g 1 b 1 c 1 d 1 e 1 f 1 - - a 2 b 2 - - - - a 2 b 2 c 2 - - - a 2 b 2 c 2 d 2 e 2 - a 2 b 2 c 2 d 2 - - - - - - Décoder (- - - ) - - - - a 3 - - - - - a 3 b 3 c 3 - - - a 3 b 3 Décoder (a 1 a 2 a 3 ) Décoder (b 1 b 2 b 3 ) Décoder (c 1 c 2 c 3 ) canal» h 1 f 2 d 3 canal» i 1 g 2 e 3 canal» j 1 h 2 f 3 canal» k 1 i 2 g 3 g 1 h 1 c 1 d 1 e 1 f 1 g 1 h 1 i 1 d 1 e 1 f 1 g 1 h 1 i 1 j 1 e 1 f 1 g 1 h 1 i 1 j 1 k 1 f 1 e 2 f 2 g 2 h 2 c 2 d 2 e 2 f 2 g 2 h 2 i 2 d 2 e 2 f 2 g 2 h 2 i 2 j 2 k 2 f 2 g 2 h 2 i 2 j 2 c 3 d 3 e 3 f 3 g 3 h 3 i 3 d 3 e 3 f 3 g 3 h 3 i 3 j 3 e 3 f 3 g 3 h 3 i 3 j 3 k 3 f 3 g 3 h 3 Décoder (d 1 d 2 d 3 ) Décoder (e 1 e 2 e 3 ) Décoder (f 1 f 2 f 3 ) Décoder (g 1 g 2 g 3 ) 272

Effacements 263

Code raccourci Exemple Reed-Solomon Def 4 : code raccourci : soit s V et 1 i n fixés: C = raccourci(c,i,s) ={c 1 c i-1 c i+1 c n tq c 1 c i-1 s c i+1 c n C} Remarque: on a d d Exemple de construction de code raccourci Matrice génératrice sous forme canonique mots de code qui ont ρ 0 aux ρ première positions Suppression des ρ premières lignes et colonnes Code (n-ρ, k-ρ, d) Application: code (100,68) dans GF(256) raccourci de Reed-Solomon Matrice initiale RS(255, 223) sous forme canonique Suppression des 155 premières lignes et colonnes 1 1 1 0 0 1 0 0 1 n=255 1 R 68 x32 R 223 x32 n=100 k = 223 k = 68 265

Satellites : ex. Voyager Photos de Saturne et Jupiter (1977) Données peu critiques (images 800x800-8 bits) Données critiques: GSE (General Science&Engineering) Mesures Contrôle Données GSE codées par Golay(24,12) sur F 2 (6-correcteur) Autres données: code convolutif 266

GSM Signal parole: par tranche de 20 ms Codec: Numérisation : 260 bits = 50 très critiques + 132 critiques + 78 complémentaires Codage de canal : 456 bits» 50 bits : CRC (X3+x+1)» 182+3 : codage convolutif : x2 : 378 bits» +78= 4 bits controles : Entrelacement (diagonal : sur plusieurs trames de 456 bits) Chiffrement / modulation 267

Entrelacement Rafales d'erreurs 268

Code CIRC Cross Interleaved Reed-Solomon code Code de Reed-Solomon entrelacé croisé 273

CDROM / DVDROM (1/3) Codes par bloc cycliques Exemple : CD Audio : Données = octets K=trame = 24 octets codés sur 32 octets sur le CD CIRC = Code de Reed-Solomon entrelacé croisé Code (32, 24) = entrelacement de 2 codes cycliques Base: code de Reed-Solomon (255, 251, 5) Code C1(28,24, 5) Code C2(32,28,5) Codes en détail Description de l entrelacement 274

275

276

Code CIRC (32,24) Codage C1(28, 24) : ajout de 4 octets de parité puis entrelacement avec retard 4 C2(32,28) : ajout de 4 octets de parité Décodage CIRC : Lecture bloc de 32 octets Décodage par C2 : récupération de 28 octets corrige 0 ou 1 erreur. Si 2 erreurs (ou plus), les 28 octets sont effacés Désentrelacement des mots de 28 octets Décodage par C1(28,24) : corrige jusqu à 4 effacements. 277

Code CIRC / CD Audio Fréquence echantillonage = 44.1 khz 44100 * 2 (stéréo) * 16 = 1 411 200 bits pour 1 seconde audio Une rayure de 1 mm modifie environ 3300 bits sur la piste Bitstream source structuré en trames de 6 échantillons stéréo : Bloc : 1 trame = 6*16*2=192 bits = 24 octets source Codage C1(28, 24) : ajout de 4 octets de parité puis entrelacement avec retard 4 C2(32,28) : ajout de 4 octets de parité : corrige rafale de 3840 bits 1 octet supplémentaire C&D «Control&Display» => 33 octets (informations pour affichage durée, etc) Ecriture sur le disque: codage EFM (Eight-toFourteen Modulation) 1 trame de 192 bits = 33 * (14 + 3 [bits liason]) +27 [bits synchro]=588 bits Au final: 588*44100/6 = 4 321 800 bits «gravés» pour 1 second audio NB un 2 ème entrelacement corrige une rafale de 12288 bits par interpolation 278