Vous êtes sur la page 1sur 8

Compte rendu TP N1 : Transmission de donnes

Le codage de Hamming
Implmentation sous
Proteus 8 Professional

Ralis par : El GHAZAOUI MONSIF

EL GHAZAOUI MOUATAZ
Encadre par : M.ABDESSAMAD.EL RHARRAS

1. Introduction

En tlcommunications, le signal transportant une information doit passer


par un moyen de transmission entre un metteur et un rcepteur. Le signal
est rarement adapt la transmission directe par le canal de
communication choisi, hertzien, filaire, ou optique.

Cette transmission peut tre parasite ce qui conduit une inversion de


certains bits (le taux d'erreur est de l'ordre de 10-5 sur une ligne tlphonique
et de 10-11 en fibre optique) Sans contrle, l'information est alors
irrmdiablement altre. Voyons diffrents schmas transformant un
message donn en un message contrl permettant de dtecter la
prsence d'erreurs, voire de corriger celles-ci.
Le code utilis, appel code de Hamming, est obtenu de la faon
suivante :

On fixe un entier k et on code chaque bloc de bits par


un bloc de bits obtenu en ajoutant certaines positions
dans un bloc de m bits (dits bits d'information) un ensemble
de k bits de correction (voir Figure 3).

Figure 3: Un bloc avec k=n-m bits de correction

Donc en gnrale, un code de Hamming est un code correcteur linaire. Il


permet la dtection et la correction automatique d'une erreur si elle ne porte
que sur une lettre du message.

Un code de Hamming est parfait : pour une longueur de code donne il


n'existe pas d'autre code plus compact ayant la mme capacit de correction.
En ce sens son rendement est maximal.

Il existe une famille de codes de Hamming ; le plus clbre et le plus simple


aprs le code de rptition binaire de dimension trois et de longueur un est
sans doute le code binaire de paramtres 7-4.

Dans ce TP on vas faire limplmentation de ce type de transmission de deux


faon diffrents :
1- Une chaine de transmission logique sous Proteus 8
Professional

2- Une chane de transmission numrique sous Matlab

I. Chane de transmission du code Hamming :

-Dtection

-Correction
Codage de Dcodage de
hamming hamming

Canal de
propagation

Message Message reue


mettre sur sur 4bits
Chane globale
4bits
II. Implmentation sur Proteus 8
Professional :
Le codage :

Dans notre cas le message a transmis prend la forme suivant :

D3 D2 D1 D0
Donc le codage de hamming va gnrer un message de 7bits de la forme :

D3 D2 D1 C2 D0 C1 C0

Aprs, la simplification des tables de vrit les coefficients Ci seront calculs de la faon
suivante :

C0 = P { C0 , D0 , D1 , D3 }

C1 = P { C1 , D0 , D2 , D3 }

C2 = P { C2 , D1 , D2 , D3 }

Donc le circuit sous Proteus 8 Professional :

Canal de propagation :

Dans cette tape se fait la transmission de notre message cod sur 7 bits, or sur tout canal de
transmission il est ya le risque davoir une erreur sur un bit lors de la transmission.
Dans ce sens on va crire une fonction qui va nous permettre de gnrer un bruit sur un bit de
faon alatoire :

Dans notre circuit les bits dentre Ei sont de contrle, par exemple si on met E3 1 alors le bit D3 sera
invers. De mme pour les bits Ei* qui vont contrle les bits Ci.

Dcodage de Hamming :

Dans cette partie, on doit tout dabord vrifie sil ya erreur lors de la transmission, donc on doit
calculer lemplacement de lerreur :
C0 = C0 + D0 + D1 + D3

C1 = C1 + D0 + D2 + D3

C2 = C2 + D1 + D2 + D3

A cette tape on a calcule lemplacement de lerreur, donc il suffit dinverse se bit.

Afin de tester lensemble des fonctions (Codage, Canal Bruit, Dcodage), on prend par exemple
le message 0 0 0 1 :
Le codage de hamming :
Si on met E0=1 qui va perturbe le bit D0 alors la rception on trouve :

Pour la partie dtection derreur on trouve :

C.--d. lemplacement (011)2 =3 ou il y a erreur, qui correspond au bit D0 quon a chang


pendant la transmission.

Donc aprs la correction on trouve :


III. Conclusion :
L'objectif d'un code de Hamming est la dtection ou la correction d'erreurs aprs la
transmission d'un message. Cette correction est permise grce l'ajout d'informations
redondantes. Le message est plong dans un ensemble plus grand, la diffrence de
taille contient la redondance, l'image du message par le plongement est transmise. En
cas d'altration du message, la redondance est conue pour dtecter ou corriger les
erreurs. Un code de Hamming procde de cette logique, la redondance permet
exactement la correction d'une altration sur une unique lettre du message.