Étude de la modulation par codes complémentaires cck
Post on 16-Jun-2022
1 Views
Preview:
TRANSCRIPT
HACENEBENREDOUANE
ÉTUDE DE LA MODULATION PAR CODES COMPLÉMENTAIRES CCK
Mémoire présenté à la Faculté des études supérieures de l'Université Laval
dans le cadre du programme de maîtrise en génie électrique pour l'obtention du grade de Maître ès sciences (M.Sc.)
FACULTÉ DES SCIENCES ET DE GÉNIE UNIVERSITÉ LA V AL
QUÉBEC
2009
© Hacene Benredouane, 2009
Résumé
À travers ce travail de recherche, nous étudions la modulation par code
complémentaire CCK (Complementary Code Keying) . dans un réseau local sans
fil. La modulation CCK permet d'optimiser le débit de la transmission. Elle consiste
à coder plusieurs bits de données en un seul chip. Ainsi en codant 4 bits, la méthode
CCK permet d'obtenir un débit de 5.5 Mbps et elle permet d'obtenir un débit de Il
Mbps en codant 8 bits de données.
Dans le cadre de nC?tre recherche, nous étudions la modulation à Il Mbps utilisées par
le standard 802.11b et la modulation à 22 Mbps proposé par Haitham, Ata et Liang.
Nous proposons d'étudier deux modulations à 16.5 Mbps et 27.5 Mbps qui sont inédites.
Pour étudier les performances d'une telle modulation, nous avons décider d'utili
ser Matlab pour simuler une chaîne de communication composée d'une source binaire
suivi d'un codeur de source et d'une modulation par codes complémentaires (CCK).
L'information ainsi constituée sera passée dans un canal de propagation de N aftali et
un canal à bruit additif gaussien. Après une égalisation de type à retour de décision
(DFE), l'information reçue subira une démodulation suivi d'un décodage pour restituer
l'information originale. Nous terminons cette simulation par un calcul de probabilité
d'erreur.
Pour respecter les spécifications du groupe de travail du 802.11, l'environnement uti
lisé sera de type intérieur caractérisé par le canal de N aftali. Nous allons générer trois
canaux avec différents delais de dispersion du canal Trms (25 ns, 50 ns, 75 ns) , et deux
Résumé ii
autres canaux avec Trms = 25 ns , mais qui présentent des évanouissements de profondeur
différents.
Avant-propos
Je tiens tout d'abord à remercier mon directeur de recherche, le Professeur Huu
Tuê Huynh et mon codirecteur, le Professeur Paul Fortier, pour l'honneur qu 'il m'ont
fait en acceptant de diriger mes travaux de recherche et qui m'ont fait découvrir et
partager leur vision de la recherche, sans oublier leur aide, leurs conseils ainsi que leurs
encouragements tout au long de ce mémoire.
J'adresse mes vifs remerciements aux membres du jury. Leurs commentaires et sug
gestions seront trés importants pour contribuer au développement de ce travail de re
cherche.
Le travail présenté dans ce mémoire a été éffectué au sein du laboratoire de radio
communications et de traitement du signal (LRTS) de l'université Laval. J'adresse mes
remerciements à tout le personnel, professeurs et étudiants et à tous ceux qui m'ont
aidé de prés ou de loin.
Je souhaite exprimer toute ma reconnaissance et gratitude à l'état Algérien pour leur
soutien financier.
Table des matières
Résumé
Avant-propos
Table des matières
Table des figures
Liste des tableaux
liste des acronymes
1 Introduction
2
1.1 Motivation et pn?blématique .
1.1.1 Canal radio intérieur
1.2 Plan du mémoire . . . . . .
Chaîne de communication numérique
2.1
2.2
2.3
Introduction . . . . . . . . . . . . . . .
Éléments fonctionels d'une chaîne de communication numérique
Les modulations numériques . . '., . . . . . . . . . . .
2.3.1 Modulation ASK (Amplitude Shift Keying)
2.3.2 Modulation FSK (Frequency Shift Keying) .
2.3.3 Modulation PSK (Phase Shift Keying)
2.4 Le canal de propagation
2.4.1 Trajets multiples
iii
iv
viii
x
1
3
4
5
5
7
7
9
9
10
Il _
12
13
13
Table des matières
2.4.2
2.4.3
Model de canal multitrajets .
Modèle de canal de Rayleigh .
2.4.4 Modèle de canal de Proakis
2.4.5 Canal de Naftali
2.5 Conclusion....
3 Le standard 802.11
3.1 Introduction. . ........
3.2 Les différentes normes 802.11
3.3 Réglementation des réseaux locaux sans fil
3.3.1 La norme 802.11 ...... .
3.3.2 Les modes de fonctionnement
3.4 Architecture de services d'IEEE 802.11
3.4.1 Les services de bases . . . . .
3.4.2 Les services complémentaires.
3.5 Protocoles et techniques de transmission de données .
3~5.1 La couche physique . . . . .
3.5.2 Les canaux de transmission
3.6 Les technologies de transmission ..
3.6.1 La technique d'étalement de spectre ..
3.7 La technique des codes complémentaires CCK
3.7.1 Modulation a 5.5 Mbit/s
3.7.2 Modulation à Il Mbit/s
3.8 Extension de la modulation CCK
3.8.1 Modulation à 16.5 Mbit/s
3.8.2 Modulation à 22 Mbit/s .
3.8.3 Modulation à 27.5 Mbit/s
3.9 Conclusion.......... ...
4 Simulation d'un système de communication utilisant la modulation
CCK
v
14
15
16
19
20
21
21
22
2~)
23
24
26
27
28
28
28
29
29
:30
~3 ~l
:36
37
37
:3'7
38
:39
40
41
. Table des matières
4.1 Introduction .
4.2 Paramètres des simulations .
4.2.1 Source d'information
4.2.2 Modulation de base .
4.2.3 Modulation CCK
4.2.4 Canal
4.2.5 Égalisation
4.2.6 Démodulation et décodage .
4.3 Résultats des simulations . ..
4.3.1 Comparaison du CCK à Il Mbps et du DQPSK dans un canal à
VI
41
42
42
43
43
44
53
54
56
bruit blanc additif gaussien (AWGN) . . . . . . . . . . . . . . 56
4.3.2 Simulation du CCK (11, 16.5, 22,27.5) dans un canal AWGN 57
4.4 Simulation du CCK avec différents débits dans un canal de Naftali . 59
4.4.1 Récapitulatif des paramètres de simulation . . . . . . . . . . 60
4.4.2 Modulation CCK dans un canal de N aftali avec différents Trms 60
4.4.3 Modulation CCK dans un canal de N aftali (Trms = 25 ns) et
différents degrés de difficultés . . . . . . . . 63
4.4.4 La modulation CCK pour différents débits dans des canaux de
N aftali avec différents degrés de difficultés . . . . . . . . . . .. 66
4.4.5 La modulation CCK pour différents débits dans un .canal de N af-
tali avec Trms = 50 ns et Trms = 75 ns
4.5 Conclusion .
5 Conclusion
Bibliographie
A Code Matlab
A.1 Code Matlab pour la modulation CCK à Il Mbps
A.2 Code Matlab pour la modulation CCK à 16.5 Mbps
A.2.1 Modulation codée CCK à 16.5 Mbps .....
69
71
74
77
77
83
84
Table des matières
A.2.2 Démodulation et décodage . . . . . . . . .
A.3. Code Matlab pour la modulation CCK à 22 Mbps
A.3.1 Modulation codée CCK à 22 Mbps
A.3.2 Démodulation et décodage . . . . .
A.4 Code Matlab pour la modulation CCK à 27.5 Mbps
A.4.1 Modulation codée CCK à 27.5 Mbps
A.4.2 Démodulation et décodage . . . . . .
VIl
86
91
91
92
99
99
101
Table des figures
2.1 Schéma de base d 'une chaîne de communication numérique ..
2.2 Schéma de la modulation ASK.
2.3 Schéma de la modulation FSK.
2.4 Schéma de la modulation PSK.
8
10
I l
12
2.5 Génération des trajets multiples. 14
2.6 Canal multi-trajets. . 14
2.7 Angle d'incidence. . . 15
2.8 Caractéristiques du canal A de Proakis. a) Réponse impulsionnelle. b)
Les zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence. 17 ·
2.9 Caractéristiques du canal B de Proakis. a) Réponse impulsionnelle. b)
Les zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence. 18
2.10 Caractéristiques du canal C de Proakis. a) Réponse impulsionnelle. b)
Les zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence. 19
2.11 Réponse impulsionnelle du canal. .. . . . . . . . . . . . . . . . . . . . 20
3.1 Les différents services proposés par la norme 802.11 ..
3.2 Construction des codes de Walsh.
3.3 Modulateur CCK. . . . . . . . . .
3.4 Attribution du PSDU pour le CCK à 5.5Mbit/s et 11Mbit/s.
27
34
::35
35
4.1 Schéma du simulateur. . . . . . . . . . 42
4.2 Canal à bruit additif avec atténuation. 45
4.3 Caractéristiques du canal avec Trms = 25 ns. a) Réponse impulsionnelle.
b) Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase. . 47
Table des figures ix
4.4 Caractéristiques du canal avec Trms = 50 ns: a) Réponse impulsionnelle.
b) Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.. 49
4.5 Caractéristiques du canal avec Trms = 75 ns. a) Réponse impulsionnelle.
b) Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.. 51
4.6 Caractéristiques du canal avec Trms= 25 ns. a) Réponse impulsionnelle.
b) Les zéros de canal. c) Réponse en amplitude. d)Réponse en phase.. 52
4.7 Caractéristiques du canal avec Trms = 25 ns. a) Réponse impulsionnelle.
b) Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.. 53
4.8 Probabilité d'erreur de la modulation codée CCK à Il Mbps et de la
modulation DQPSK (théorique et empirique). . . . . .
4.9 Comparaison de différent CCK dans un canal AWGN ..
4.10 Comparaison du CCK à un débit de Il Mbps dans un canal de Naftali
57
59
avec différents Trms . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 61
4.11 Comparaison du CCK à un débit de 16.5 Mbps dans un canal de Naftali
avec différents Trms ' . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 62
4.12 Comparaison du CCK à un débit de 22 Mbps dans un canal de N aftali
avec différents Trms . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 62
4.13 Comparaison du CCK à un débit de 27.5 Mbps dans un canal de N aftali
avec différents Trms ' ....................... .
4.14 Comparaison du CCK à Il Mbps dans des différents canaux.
4.15 Comparaison du CCK à 16.5 Mbps dans des différents canaux.
4.16 Comparaison du CCK à 22 Mbps dans des différents canaux. .
4.17 Comparaison du CCK à 27.5 Mbps dans des différents canaux.
4.18 Comparaison des différents CCK dans un canal facile. .
65
65
66
67
4.19 Comparaison des différents CCK dans un canal moyen. 68
4.20 Comparaison des différents CCK dans un canal difficile. . 68
4.21 Comparaison du CCK(11, 16.5, 22, 27.5) dans un canal avec Trms = 50 ns. 70
4.22 Comparaison du CCK(11, 16.5, 22,27.5) dans un canal Trms = 75 ns.. 70
Liste des tableaux
2.1 Coeeficients du canal A de Proakis.
2.2 Coeeficients du canal B de Proakis.
2.3 Coefficients du canal C de Proakis.
3.1 Les différentes normes 802.11. ....
3.2 Différentes techniques de modulations.
3.3 Fréquences associées aux canaux de la bande 2.400-2.4835 GHz.
3.4 <{Jl en fonction de (do, dl)' .....
3.5 <{J2, <{J3, <{J4 en fonction de (di, di+d·
3.6 <{Jl en fonction de (do,dd et <{J2, <{J3, <{J4 en fonction de (di,di+l ).
3.7 <{Jl en fonction de (do, dd et <{J2, <{J3 , <{J4 en fonction de (di, di+l ).
3.8 <{JI en fonction de (do, dl) et <{J2, <{J3, <{J4 en fonction de (di, di+l ).
4.1 Nombre de bits par bloc en fonction du débit de transmission.
4.2 Modulation appropriée pour chaque débit de tran'smission.
4.3 Coefficients du canal de N aftali avec Trms = 25 ns, facile .
4.4 Coefficients du canal de N aftali avec Trms = 50 ns, facile.
4.5 Coefficients du canal de N aftali avec Trms = 75 ns, facile.
4.6 Coefficients du canal de Naftali avec Trms = 25 ns, moyen.
4.7 Coefficients du canal de Naftali avec Trms = 25 ns, difficile.
4.8 Valeurs de i et de w en fonction du débit de transmission .. .
4.9 Différence en terme du rapport signal à bruit. . . .
4.10 Paramètres du simulateur dans un canal de Naftali.
17
18
1.9
23
31
~~2
36
37
38
:39
40
43
43
46
48
50
51
52
55
58
60
liste des acronymes
AP
ASCII
ASK
BSS
BSSID
CCK
DCF
DFE
DLC
DLL
DPSK
DQPSK
DS
DSSS
ESS
FHSS
FSK
GSM
IBSSS
IEEE
ISO/CEl
Access Point
American Standard Code for Information Interchange
Amplitude Shift Keying
Basic Service Set
Basic Service Set Identifier
Complementary Code Keying
Distributed Coordination Function
Decision-Feedback Equalization
Data Link Control
Data Link Layer
DifferentiaI Phase-Shift Keying
DifferentiaI Quadrature Phase-Shift Keying
Distribution System
Direct Sequence Spread Spectrum
Extended Service Set
Frequency Hopping Spread Spectrum,
. Frequency-Shift Keying
Global System for Mobile
Independent Basic Service Set
Institute of Electrical and Electronics Engineers
Organisaton Internationale de Normalisation
/ Commission Electrotechnique Internationale
liste des acronymes 2
IP Internet Protocol
IR Infra Red
LLC Logical Link Control Layer
MAP Medium Access Control
MBOK M -ary Bi-Orthogonal Keying
PCF Point Coordination Function
PRY Physical Layer
PSK Phase-Shift Keying
PSDU Physical Layer Service Data Unit
STA Station
WLAN Wireless Local Area N etwor k
WEP Wired Equivalent Privacy
Chapitre 1
Introduction
Les dernières décennies ont vu l'avènement des systèmes de communication
numérique dans notre vie de tous les jours. Les transmissions numériques ont fait
l'objet de très nombreuses études depuis la publication des travaux de Shannon en
1948 qui ont posé les bases théoriques de ce domaine. Ces études couvrent aujourd'hui
un champ très vaste, en expansion continue et comprenant entre autres, la théorie
de l'information, la théorie de la détection et de l'estimation et la théorie du codage
correcteur d'erreur. Les résultats obtenus se sont rapidement concrétisés en pratique
par l'amélioration de la conception des systèmes de communication numérique.
Depuis leur apparition dans les années 1990, les premiers réseaux locaux sans fil
WLAN (Wireless Local Area Network) ont été introduits dans le but de se substituer
aux réseaux filaires à l'intérieur des bâtiments et de fournir un accès radio du type
Ethernet en offrant des gammes de service et donc de débits comparables mais avec
l'avantage d'une mobilité supplémentaire, même si cette mobilité est faible par rapport
à celle des réseaux cellulaires mobiles. Cet objectif initial a été étendu à un accès
sans fil large bande et une connectivité aux réseaux IP, mais a également donné
naissance à de nombreux autres types de réseaux sans fil qu'on peut désigner sous
l'acronyme WxAN, qui se distinguent par la nature des services offerts et donc des
Ch api tre 1. Introduction 4
débits, des bandes de fréquence et qui sont conçus pour être les mieux adaptés à leur
environnement. Depuis la standarisation d'IEEE 802.11 en 1997, mais surtout dés
l'approbation de l'amendement 802.11 b en 1999 [5] avec une vitesse de transmission
maximale passant à Il Mbits/s cQntre 2 Mbits/s auparavant, ces types de réseaux ont
commencé à rencontrer un véritable succées.
Avec un débit de Il Mbps, le groupe de travail d'IEEE 802.11 a fixé le type
de modulation à utiliser, soit une modulaion . par codes complémentaires (CCK). La
modulation CCK employée dans le 802.11 utilise un code de 8 chips. L'émetteur
partitionne les données en bloc de 4 ou 8 bits selon le débit de transmission. À un
débit de 5.5 Mbps, il emploie 2 de ces 4 bits pour générer 4 codes complexes, les 2 bits
restants sont utilisés pour la modulation QPSK. À Il Mbps, 8 bits sont utilisés, 6 sont
codés pour générer 64 codes complexes, les 2 autres sont utilisés pour la modulation
DQPSK .
. 1.1 Motivation et problématique
Dans notre recherche, nous nous intéressons à la modulation par code
complémentaire CCK dans un canal radio intérieur. Dans un premier temps nous trai
tons le cas de la modulations à Il Mbps utilisée par le standard 802.11 b, puis le cas
de la modulation à 22 Mbps proposé par Haitham, Ata et Liang [16]. Nous terminons
notre étude en proposant deux autres débit à savoir 16.5 Mbps et 27.5 Mbps. Cette
démarche a été adoptée pour pouvoir montrer l'intérêt d'une telle modulation à savoir
sa souplesse et possiblement sa robustesse.
Chapitre 1 . . Introduction 5
1.1.1 Canal radio intérieur
Dans un environnement où la mesure des performances d'un même sytème radio
sont effectuées, le résultat peut être différent. Cette ambiguïté des résultats ·est due
au changement de position des personnes dans la pièce et les légers changements de
l'environnement, qui peuvent produire des changements cruciaux de la puissance de
signal au récepteur.
Pour remédier à cette problématique, · un modèle de canal est exigé pour permettre
la comparaison des différents systèmes WLAN et fournir des résultats consistants. Le
groupe de travail d'IEEE 802.11 a adopté un modèle de canal, soit le modèle de Naftali.
1.2 Plan du mémoire
Ce mémoire comporte cinq chapitres organisés comine suit:
Chapitre l. C'est le présent chapitre, introduisant le cadre de notre travail de
recherche, la modulation par codes complémentaires pour les WLAN.
Chapitre 2. Ce chapitre présente une chaîne de communication numérique où
l'on se limite aux fonctions de bases et les techniques de modulations utilisées
(modulations ASK, FSK et PSK), ainsi que le canal radio intérieur.
Chapitre 3. Dans cette partie nous abordons le standard 802.11, la réglementation des
réseaux locaux sans fil) l'architecture des services d'IEEE 802.11, les services MAC,
les protocoles et les techniques de transmission de données et lès technologies de
transmission ainsi que la technique des codes complémentaires.
Chapitre 4. Ce chapitre traite de la simulation d 'une chaîne de communication
Chapitre 1. Introduction 6
en utilisant la modulation par codes complémentaires, dans un canal radio intérieur.
Nous traitons différents débits de transmissions , à savoir Il Mbps, 16.5 Mbps, 22
Mbps et 27.5 Mbps dans un canal qui présente différents Trms (25 ns, 50 ns , 75 ns) , et
différents degrés de difficulté pour le canal a 25 ns.
Chapitre 5. Ce dernier chapitre conclut le mémoire.
Chapitre 2
Chaîne de communication , .
numerlque
2.1 Introduction
Dans un système de transmission numérique, l'information sera acheminée de
l'émetteur vers le récepteur via un support physique, qu'il soit un câble à paire torsadée,
une fibre optique ou encore, un canal radioélectrique. Les signaux transmis peuvent être
soit directement d'origine numérique, comme dans les réseaux de données, soit d'ori
gine analogique (parole, image, ... ) mais convertis sous une forme numérique. Le rôle du
système de transmission est d'assurer l'acheminement de l'information de la source vers
le destinataire avec le plus de fiabilité possible.
Le schéma synoptique d'une chaîne de communication numérique est donné à la figure
2.1 , où l'on se limite aux fonctions de base.
• La source d'information est une suite de combinaisons binaires.
• Le codeur peut être un codeur de source ou un codeur de canal. Le codeur de
Chapitre 2. Chaîne de communication numérique 8
source supprime les bits non significatifs (compression de données), tandis que
le codeur de canal introduit de la redondance pour protéger l'information contre
le bruit et les perturbations causés par le canal multitrajets. Le codage de canal
peut amener la probabilité d'erreur, Pe, arb~trairement prés de 0 à condition que
le débit de source soit inférieur à la capacité du canal de transmission (d'après les
travaux de Hartley - Shannon).
• La modulation a pour rôle çl'adapter le spectre du signal au canal (milieu phy
sique) sur lequel il sera émis.
• Enfin, du côté récepteur, les fonctions de démodulation et de décoqage sont
les inverses respectifs des fonctions de modulation et de codage situées du côté
émetteur.
Source d'informations
Destinataire
Codeur
Décodeur
Modulateur r--
Canal
Démodulateur 1+--
FIG. 2.1 - Schéma de base d'une chaîne de communication numérique.
Les caractéristiques principales permettant de comparer les différentes techniques de
transmission sont les suivantes :
• La probabilité d'erreur Pe par bit transmis permet d'évaluer la qualité d 'une
chaîne de communication de transmission. Elle dépend de la technique de trans
mission utilisée (codage, modulation, etc) et du support de communication (le
canal).
• L'occupation spectrale du signal émis doit être connue pour utiliser efficacement
Chapitre 2. Chaîne de communication numérique 9
la bande passante du canal de transmission. On est contraint d'utiliser de plus en
plus des modulations a grande efficacité spectrale.
• La complexité du récepteur dont le rôle est de restituer l'information émise avec
le plus de fi.abilité possible.
2.2 Éléments fonctionels d'une chaîne de communi-
cation numérique
La source d'information discrète délivre des symboles prenant leur valeur dans un
alphabet a q éléments. Une source est caractérisée par les paramètre suivants : son al
phabet, la probabilité d'occurence des symboles, la dépendance statistique des symboles
dans une. séquence et le taux d'émission de ces symboles. La théorie de l'information
permet de modéliser une source à partir de ces 4 paramètres en définissant les deux
notions suivantes : Pentropie H de la source définie comme le nombre moyen de bits
d'information par symboles comme le montre l'équation 2.1 et le taux R de bits d'in
formation par seconde [4].
K
. H(X) = - LP(Xk) logp(xk) (2.1) k=l
X étant la source d'information, X = {Xk} l'ensemble des messages et Ixl = K la taille
de l'alphabet.
2.3 Les modulations numériques
La modulation a pour objectif d'adapter le signal à émettre au canal de transmission.
C'est un processus qui peut être réalisé en utilisant une porteuse haute fréquence, dont
Chapitre 2. Chaîne de communication numérique 10
les paramètres varient suivant des fonctions linéaires du message à transmettre. Au
niveau du récepteur, ce processus est inversé par des méthodes de démodulation.
2.3.1 Modulation ASK (Amplitude Shift Keying)
L'expression analityque d'une modulation ASK est donnée par [1] :
J2E(i) Si(t) = f cos(wot + 4J) (2.2)
avec 0 ~ t ~ T, i = 1, ... , M. Le terme d'amplitude J2Ei(t)/T a M valeurs discrètes,
et le terme de phase 4J est une constante arbitraire. La forme d'onde est illustrée à la
figure 2.2.
Signal binaire
2 .
o .
-1
-2 .
100 200 300 400 500
Modulation ASK
100 200 300 400 500
FIG. 2.2 - Schéma de la modulation ASK.
Chapitre 2. Chaîne de communication numérique Il
2.3.2 Modulation FSK (Frequency Shift Keying)
La figure 2.~3 donne l'allure du signal modulé FSK dont l'expression générale est
donnée par [1].
(2.3)
avec 0 ::; t ::; T, i = 1, ... , M. Le terme de fréquence Wi(t) a M valeurs discrètes, et le
terme de phase <p est une constante arbitraire.
Signal binaire
0 .. . 1 1 ..
-1 . . .. . . . . . . . . . .. .
-2
100 200 300 400 500
Modulation FSK
-2 .
100 200 300 400 500
FIG. 2.3 - Schéma de la modulation FSK.
Ch api tre 2. Chaîne de communication numérique 12
2.3.3 Modulation PSK (Phase Shift Keying)
La modulation PSK est une modulation pour laquelle les formes d'ondes sont
données par [1] :
(2.4)
avec 0 :::; t :::; T, i = 1, .. . , M. Le terme de phase, ifJi (t) a M valeurs discretes . L'allure
du signal modulé est illustré à la figure 2. 4.
Signal binaire
o .
-1 .
-2 .
100 200 300 400 500
Modulation PSK
-1
-2 .
100 200 300 400 500
FIG. 2.4 - Schéma de la modulation PSK.
Modulation DPSK
La modulation DPSK diffère de la modulation PSK p'arce qu'il n'y a aucun assi
gnement direct de la phase à chaque symbole; au lieu de cela, la différence entre la
Ch api tre 2. Chaîne de communication numérique 13
phase courante et la phase précédente est détectée et ce changement de phase indiquent
le changement du symbole comme l'indique l'équation 2.5. Par exemple, sous la forme
la plus simple du DPSK, un bit 1 peut causer un déphasage de 7r tandis qu 'un bit 0
ne cause aucun changement de phase, ou vice versa. Au récepteur la phase de chaque
symbole est comparée à celle du symbole précédent, ce qui signifie qu'il faut retarder le
signal reçu par une periode de symbole. Un changement de phase indique qu'un bit 1 est
reçu, aucun changement de phase indique qu'un bit 0 est reçu. Le PSK différentiel est
utilisé dans la norme d'IEEE 802.11b parce que la modulation différentielle surmonte
le besoin d'une détection cohérente, en d'autres termes, il n'y a aucun besoin d'évaluer
la phase de la porteuse, donc la conception de récepteur est beaucoup moins complexe.
~<Pi = <Pi - <Pi-l (2.5)
2.4 Le canal de propagation
Dans une chaîne de communication numérique, l'objectif est de pouvoir reconstituer
le signal à la réception, après qu'il a subit des dégradations dans le canal de transmission.
2.4.1 'frajets multiples
Les trajets multiples sont un phénomène qui détériore le signal transmis. Du fait des
nombreuses réflections que le signal peut subir en environnement fermé, le récepteur
recevra une série d'échos d'amplitudes et de retards variables comme le montre la figure
2.5 [2]. Cette problématique du canal à trajets multiples est critique dans le cas d'un
canal intérieur pour la mesure des performances d'un système de communicaton WLAN.
Ch api tre 2. Chaîne de communication numérique
802.11 WLAN émetteur
"~
\ ~ \ 1
\ 1 \ 1
\ 1 Trajet- \ 1
rétléchi \ Il
\ 1 \ 1
\ 1
\1
Meubles de bureau
Mur
802.11 WLAN récepteur
FIG. 2.5 - Génération des trajets multiples.
2.4.2 Model de canal multitrajets
14
Les canaux à trajets multiples peuvent être modélisés par un filtre linéaire plus
un bruit additif. La figure2.G illustre ce types de canaux qui contiennent plusieurs
paramètres ou facteurs d'atténuation.
x(t) y(t) = x(t) ®h(t) + n(t)
n(t)
FIG. 2.6 - Canal multi-trajets.
La réponse impulsionnelle d'un tel canal est donnée par:
L
h(T) = Lan expj8n 8(T - Tn) (2.6) n=l
où L est le nombre de trajets et an, ()n et Tn sont respectivement le facteur d'atténuation ,
Chapitre 2. Chaîne de communication numérique 15
le déphasage et le retard de propagation du n ieme trajet.
Mathématiquement, un signal traverssant un canal mulitrajets subira une convolution
avec le filtre linéaire du canal. Ce phènomene est caractérisé par la relation suivante:
y(t) x(t) ® h(t) + n(t)
L:f h(t)x(t - T)dT + n(t)
L
E Qne?°x(t - r) + n(t) (2.7) n=l
où ® dénote la convolution.
2.4.3 Modèle de canal de Rayleigh
L'effet Doppler cause un décalage de la fréquence du signal transmis. Ce décalage
dépend de la vitesse v du mobile et de la longueur d'onde À = cl le et de l'angle
d'incidence Q par rapport à la direction du déplacement du mobile comme illustré à la
figure 2.7. La fréquence de décalage par effet Dopller est donnée par [20, 21].
v V Id = le~ cos a = ~ cos a (2.8)
Direction du déplacement
FIG. 2.7 - Angle d'incidence.
Ch api tre 2. Chaîne de communication numérique ' 16
Le champ étectrique reçu est donné par :
(2.9)
OÙ El est la composante en phase et EQ est la composante en quadrature de phase.
L
El (t) = Ea L Cn cos(27r idt + 4Jn) (2.10) n=l
L
EQ(t) = Ea L en sin(27r fd t + CPn) (2 .11 ) n=l
où L est le nombre de trajets, Cn est l'amplitude du champ transmis, id et cPn sont, res
pectivement, la fréquence de décalage par effet Doppler et la phase d'onde. On suppose
que les deux amplitudes sont gaussiennes, de moyennes nulles et de même variance.
L'enveloppe du signal reçu est donnée par l'équation suivante:
(2.12)
Puisque les deux amplitudes sont gaussiennes, alors l'enveloppe r(t) suit une loi de
Rayleigh et sa densité de propabilité est donnée par :
(2.13)
2.4.4 Modèle de canal de Proakis
Canal A
Les coefficients du canal A de Proakis sont donnés au tableau 2.1 et ses ca-
ractéristiques sont illustrées à la figure 2.8. La réponse en amplitude de ce canal présente
un évanouissement de profondeur moyenne et sa réponse en phase est quasiment linéaire.
Ce canal peut être utilisé comme un modèle pour les canaux téléphoniques.
Ch api tre 2. Chaîne de communication numérique
ho hl h2 h3 h4 h5 h6 h7 hg hg h10
0.04 -0.05 0.07 -0.21 -0.5 0.72 0.36 0 0.21 0.03 0.07
.D 1:J 1
Q) 1:J
È a. E <
TAB. 2.1 - Coeeficients du canal A de Proakis.
(a) QS ....... .. .. .. .. ... .
( '
0.6 -- . ... .... .. ...
0.4
0.2
0 c Q
0 5 10 15
(c) 5
0 .. . '\ .: !~ \ 1
\ . 1
-5 \:/ ···IJ ··
-10 0 0.5
Frequence normalisee
(b) 3
~ 2 x
'Cü c 1 -; --:- -, " .. - . . ... 'ëJ co .ê 0
x: x \ .. .. : .. )( . ·\x
~ ~ .. ~ / ~ -1 co c.. -2
-3 -2 o
Partie reelle (d)
2
o~----~------~
fi)
@ -10 . =0 co ~ -20 . Q) fi)
co 5: -30 .
.~ . .. .... .
.. ........ . ~ -40 L--____ ---'-__ ~ __ ~
o 0.5 Frequence normalisee
17
FIG. 2.8 - Caractéristiques du canal A de Proakis. a) Réponse impulsionnelle. b) Les
zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence.
Canal B
Les coefficients du canal B de Proakis sont donnés au tableau 2.2 et ses ca-
ractéristiques sont illustrées à la figure 2.9. La réponse en amplitude de ce canal présente
un évanouissement de profondeur moyenne et sa réponse en phase est quasi linéaire. Ce
canal génère des interférences entre symboles sévères.
Ch api tre 2. Chaîne de communication numérique
ho hl h2
0.407 -0.815 0.407
TAB. 2.2 - Coeeficients du canal B de Proakis.
(a)
0.8
0.6 .
0.4 ;
0.2
0 1 1.5 2.5 3
(cl 10 r------,-------,
~ 0 1
Cl) "0 . ~ -10 a. ~ -20 .
~\ · ·· ··r \ . 1 \ / .
\ · 1 \ ' \ 1 ·rr II
-30 '------'------' o 0.5
Frequence normalisee
(b) 3
~ ïa t; 1 'Ol ro
0 . . . . :~ . . . ... .ê .~ -1
/
ro a. -2
-3 -2 0 2
Partie reelle (d)
0
CIl
~ -2 15 ro a: -4 1 Cl) CIl ro .!:. -6 ... . . . .......... . . . . ... a.
-8 0 0.5
Frequence normalisee
18
FIG. 2.9 - Caractéristiques du canal B de Proakis. a) Réponse impulsionnelle. b) Les
zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence.
Canal C
Les coefficients du canal C de Proakis sont donnés au tableau 2.3 et ses ca-
ractéristiques sont illustrées à la figure 2.10. La réponse en amplitude de ce canal
présente un évanouissement de profondeur moyenne et sa réponse en phase est quasi
linéaire. Ce canal génère des interférences entre symboles trés sévères.
Chapitre 2. Chaîne de communication numérique
ho hl h2 h3 h4
0.227 0.460 0.688 0.460 0.227
TAB. 2.3 - Coefficients du canal C de Proakis.
(a) 0.8
0.6
0.4
o.
o '-----'------'-----'-------' 1 4
(c) 20 r-----..-------,
-40 '------'--------" o 0.5
Frequence normalisee
~ 2 ïij .~ 1 Cl lU
.S 0
~ -1 lU a. -2 .
0
fi)
c: lU
-5 :0 lU a: 1
Q)
~ -10 ~ a.
-15 0
(b)
-2 0 2 Partie reelle
(d)
0.5 Frequence normalisee
19
FIG. 2.10 - Caractéristiques du canal C de Proakis. a) Réponse impulsionnelle. b) Les
zéros du canal. c) Réponse en amplitude. d) Réponse en fréquence.
2.4.5 Canal de Naftali
Le groupe de travail IEEE 802.11 a adopté le modèle suivant de canal comme ligne de
base pour prévoir les trajets multiples pour les modulations utilisées dans les standards
802.11a (5 GHz) et 802.11b (2.4 GHz). Ce modèle est idéal pour simuler les performances
d'une implémentation donnée. La réponse impulsionnelle du canal est illustrée à la figure
2.11 [2]. Elle se compose d'échantillons complexes avec une distribution uniforme de la
phase et une distribution de Rayleigh pour l'amplitude.
Chapitre 2. Chaîne de communication numérique
Le modèle mathématique pour le canal est comme suit :
1 2 . 1 2 hk = N(O , 2ak ) + )N(O, 2ak)
(J~ = (J5e-kTsITrm.s
avec N(O, ~(Jk) une distribution gaussienne de moyenne nulle et de variance ~(Jk.
0.9
0.8
0.7
0.6 (1)
1J ::l
'5. 0.5 E «
0.4
0.3
0.2
0.1
0 0
temps
FIG. 2.11 - Réponse impulsionnelle du canal.
2.5 Conclusion
20
(2.14)
(2.15)
(2.16)
Ce chapite a été consacré à l'étude d'une chaîne de communication ainsi que des
modulations numériques. Nous avons vu aussi le modèle de canal sans fil, et le modèle
proposé par le groupe du travail 802.11.
Chapitre 3
Le standard 802.11
3.1 Introduction
L'objectif pricipal des réseaux locaux sans fil est de permettre l'interconnexion entre
plusieurs équipements informatiques en utilisant un support radioélectrique et de par
tager certaines ressources présentes dans la zone de couverture (de calcul, d'impression,
de sauvegarde, etc.) qui s'étale sur plusieurs dizaines de mètres. Depuis leur appari
tion, les réseaux locaux sans fil ont connu plusieurs améliorations qui ont entrainé le
développement de l'architecture des systèmes informatiques.
Grâce a leur facilité de déploiement, les réseaux locaux sans fil ont pris une place très
importante dans les applications de tous les jours, mais aussi dans les applications mi
litaires, ce qui leur a valu un développement très accéléré.
Vu que le support utilisé est de type radioélectrique, alors une réglementation est
nécessaire pour chaque pays afin de limiter les interférences, en définissant une plage
de fréquence et une puissance d'émission pour chaque application, qu'elle soit militaire,
scientifique ou amateure.
Chapitre 3. Le standard 802.11 22
3.2 Les différentes normes 802.11
La norme . 802.11 est la norme principale des réseaux sans fil, qui offre à la base,
des débits de 1 ou 2 Mbps. Des corrections et des améliorations ont été apporté afin
d'augmenter le débit de transmission ou bien ajouter des spécifications afin d 'accroître
la sécurité et assurer une meilleur intéropérabilité. Voici un tableau récapitulatif des
révisions de la normes et leur signification.
Nom de la norme Description
802.11a La norme 802.11a utilise la bande 5 GHz et permet d'at
teindre des débits de 54 Mbps en utilisant la technique
OFDM.
802.11b
802.11c
802.11d
802.11e
802.11f
802.11g
La norme 802.11b utilise la bande 2.4 GHz, elle est l'ob
jectif de notre travail. Elle utilise la modulation CCK
qui offre un débit de Il Mbps.
La norme 802.11c est un amendement qui apporte des
modifications sur la norme 802.11d afin d'etablir un pont
avec les trames du 802.11.
La norme 802.11d est une normalisation additionnelle
qui permet une utilisation mondiale du 802.11.
La 802.11e a été approuvée comme norme qui définit un
ensemble de qualité de service pour des applications de
LAN.
La norme 802.11f est un protocole qui fixe les ca
ractéristiques du point d'accès pour pouvoir assurer
l'intéropérabilité entre différents fournisseurs.
La norme 802.11g est un pont entre les normes 802.11a
et 802.11 b, elle offre un débit de 54 Mbps en utilisant la
bande de 2.4 GHz.
Chapitre 3. Le standard 802.11
802.11h
802.11i
802.11j
La norme 802.11h concerne le spectre et la puissance.
Elle résout les problèmes d'interférence avec les satellites
et les radars qui utilisent la · même bande de fréquence
de 5 GHz.
La norme 802.11 i a été certifiée le 24 juin 2004 pour
remplacer les spécifications précédentes de la sécurité.
La norme 802.11j fonctionne dans la bande de 4.9 GHz
à 5 GHZ conforme aux règles japonaises pour des appli
cations radio intérieure, extérieure et mobile.
TAB. 3.1: Les différentes normes 802.11.
3.3 Réglementation des réseaux locaux sans fil
23
L'architecture d'IEEE 802.11 peut apparaître excessivement cornplexe. Cependant,
cette complexité apparente fournit à l'IEEE 802.11 WLAN sa robustesse et sa flexibilité.
3.3.1 La norme 802.11
En. 1997, le groupe d'IEEE a adopté la première norme pour les réseaux locaux sans
fil WLANs, IEEE 802.11-97 Std. Cette norme a été mise à jour en 1999, en définissant
deux nouvelles normes 802.11a qui utilise la bande de 5.5 GHz et 802.11b qui utilise la
bande de 2.4 GHz. IEEE 802.11-1997 Std définit trois couches physiques, et une couche
de contrôle de l'accès au medium de transmission (MAC-Medium Access Control). Les
trois couches physiques sont l'infrarouge (IR) qui offre un débit de transmission pouvant
atteindre 2 Mbps et les deux autres couches utilisent un support radioélectrique, la
Ch api tre 3. Le standard 802.11 24
première avec l'étalement de spectre par séquence direct DSSS (Direct Séquence Spread
Spectrum) et la deuxième avec l'étalement de spectre par saut de fréquence FRSS
(Frequency Ropping Spread Spectrum). Les extensions a et b de la norme pricipale
802.11 déterminent respectivement une couche PRY OFDM (Orthogonal Frequency
Division Multiplexing) à 5 GHz offrant des · débits de plus en plus satisfaisants qui
peuvent atteindre jusqu'à 54 MbpS', et une couche PRY CCK (Complementary Code
Keying) à 2.4 GHz permettant des débits allant jusqu'à Il Mbps. C'est avec cette
dernière que le standard 802.11 s'est imposé.
3.3.2 Les modes de fonctionnement
Dans le standard 802.11, on distingue deux architectures différentes l'une de l'autre.
La première étant le mode infrastructure avec point d'accès, qui offre la possibilité
de connecter des stati'lns 802.11 à d'autre type de réseaux, généralement des réseaux
filaires (IP, ATM, etc.). La deuxième est le mode ad-hoc qui permet d'établir des réseaux
indépendants de stations 802.11.
Mode infrastructure avec point d'accès
Le mode infrastructure est mis à part par son architecture qui offre à chaque station
STA une connexion sans fil via un point d'accès. Ainsi la cellule formée par le point
d'accès et les stations qui se trouvent dans la zone de couverture sont appelès ensemble
de services de base (BSS-basic service set) . Chaque BSS est identifié par un BSSID.
Dans le mode infrastructure, le BSSID correspond à l'adresse MAC du point d'accès.
Il est possible de relier plusieurs BSS entre elles (ou plusieurs cellules) par une liaison
nommée système de distribution (DS) afin de constituer un ensemble de service étendu
(extended service set ESS). Le système de distribution (liaison entre les points d'accès)
Ch api tre 3. Le standard 802.11 25
peut être un réseau filaire, un câble entre deux points d'accès ou tout simplement un
réseau sans fil.
Un ESS est decelé par un ESSID (Service Set Identifier), c'est-à-dire un identifiant de
32 caractères de long (au format ASCII). L'ESSID est le premier niveau de sécurité si la
-- --------- - --- - -connaissance-du-SSlD--est-obligatoir:e-p-Qur- PQu,vru-r:-eft€Gtue-F une-li-ais0Il-;-Il-est-ègalement---- ---
possible de passer d'un point d'accès à un autre sans perdre la communication. Cette
fonctionnalité est apellée « roaming ».
Mode ad-hoc
En mode ad-hoc, chaque station joue un doule rôle, à la fois le rôle du client et le
rôle de point d'accès. Un réseau ainsi constitué est apellé réseau point à point (peer to
peer). L'ensemble de toutes les stations formant un tel réseau est nommé ensemble de
service de base indépendant IBSS (independant basic sevice set).
Donc, un réseau sans fil constitué d'au moins deux stations et ne disposant pas de
points d'accès est appelé IBSS. L'IBSS constitue un réseau provisoire permettant à des
utilisateurs se trouvant dans la même surface de couverture d'échanger des informations.
Il est identifié par un SSID, comme l'est un ESS en mode infrastructure.
Dans un réseau ad-hoc, si deux stations sont hors portée, alors il ne pourront jamais
communiquer, même dans le cas ou elles voient d'autres stations, parce que chaque
station ne pourra pas jouer le rôle de relais. Donc la portée du BSS indépendant est
determiné par la portée de chaque station.
Connexion au réseau
Afin qu'un utilisateur extérieur accède au réseau ou précisément un ensemble de
service de base (BSS), il aura besoin d'information de synchronisation des autres
utilisateurs (mode ad hoc) , ou de la part du point d 'accès (mode infrastructure). Ces
Chapitre 3. Le standard 802.11 26
informations seront obtenues par deux méthodes différentes, soit l'écoute passive ou
l'écoute active. Dans le premier cas , la station attend la réception d'une trame balise
qui contient les informations de synchronisation envoyées periodiquement par le point
d'accès. Dans le deuxième cas, l'utilisateur cherche un point d'accès en envoyant une
trame de requête (Probe Request Frame).
Après que la station ait reçu un signal prouvant la présence d'un point d'accès
et ait décidé de se connecter, le mècanisme d'authentification se lance, où chaque
partie prouve son identité par la biais d'un mot de passe ou d'une clef. Une fois
l'authentification terminée, le mécanisme d'association se lance, ce qui consiste à
échanger des informations sur la capacité de· la céllule et authoriser le service DSS
(Distribution System Service). C'est uniquement avec ce service que l'utilisateur peut
émettre et recevoir les données.
Synchronisation
La synchronisation est très importante pour pouvoir garder la connexion. Elle est
obtenue par l'émissiom périodique du poin~ d'accès d'une trame balise qui contient
la valeur de l'horloge. Les stations réceptrices vérifient la valeur de leur horloge et la
corrige au fur et à mesure pour rester synchronisé avec l'horloge du point d'accès.
3.4 Architecture de services d'IEEE 802.11
Selon l'architecture du mode utilisé, à savoir le mode ad-hoc ou le mode infrastruc
ture, une station appartenant à un réseau 802.11 doit offrir différents services comme
illustré à la figure 3.1 [3].
Ch api tre 3. Le standard 802.11 27
· Association-Station désassociation Services du système
d'un BSS · Distribution de distribution
· Intégration (AP)
· Authentification Station · Sécurité Services de base
d'un BSS · Acheminement d'une station des paquets
FIG . 3.1 - Les différents services proposés par la norme 802.11.
3.4.1 Les services de bases
Les services de bases d'une station 802.11 sont les services d'un client oeuvrant en
mode ad-hoc dans un IBSS. Ces services sont aussi obligatoires pour un fonctionnement
en mode infrastructure. Les services de base sont les suivants:
• authentification.
• acheminement des trames.
• sécurité.
Le service d'authentification est une option qui donne un premier niveau de sécurité, si
l'authentification est requise pour entrer dans le réseau. Tandis que le service d'ache
minement de trame permet la transmission des paquets de données de l'émetteur vers
le récepteur. Le service de sécurité comme son nom l'indique est une méthode de chif
frement de données pour contrer l'écoute passive et l'intrusion dans le réseau.
Ch api tre 3. Le standard 802.11 28
3.4.2 Les services complémentaires
Pour un fonctionnement en mode infrastructure, d'autres services sont requis. Ces
servives complémentaires sont les suivants :
• association-désassociation.
• distribution.
• intégration
Le service association est un service qui permet de grouper les stations autour des
points d'accès. Le service désassociation permet de couper la connexion et mettre
fin à l'échange de trafic d'une station. Le service distribution permet de définir les
chemins pour qu'un paquet de données puisse atteindre sa destination. Le service
d'intégration permet la communication entre deux points d'accès via un canal de trans
mission différent de celui procuré par le médium d'IEEE 802.11.
3.5 Protocoles et techniques de transmission de
données
3.5.1 La couche physique
Tel que mentionné à la section 3.3.1, les trois couches physiques définies à l'origine
par 802.11 incluaient ~eux techniques radios à étalement de spectre e~ une spécification
infrarouge.
Les techniques d'étalement de spectre, en plus de satisfaire aux conditions
règlement aires imposées par le groupe du travail du 802.11, augmentent la fiabilité,
permettant des débits plus élevés et diminuant les interférences entre les stations adja
centes.
Ch api tre 3. Le standard 802.11 29
3.5.2 Les canaux de transmission
On designe par le mot canal de transmission toute bande de fréquence utilisée pour
permettre de créer un lien de communication entre un émetteur et un récepteur. Dans la
pluspart des pay~, le gouvernement est le seul vérificateur pour une utilisation adéquate
du spectre de fréquences. Parmis les organismes chargés de la régulation pour une
utilisation responsable des fréquences radio on retrouve :
• Le CRTC(Conseil de la Radiodiffusion et des Télécommunications Canadiennes)
au Canada
• l'ETSI (European Télécommunications Standards Institute) en Europe
• la FCC (Federal Communications Commission) aux Etats-Unis
• le MKK (Kensa-kentel Kyokai) au Japon
3.6 Les technologies de transmission
Le support utilisé dans les réseaux locaux sans fil pour créer un lien de transmission
est de type radioélectrique ou infrarouge. La technique utilisée à l'origine pour les
transmissions radio est appelée transmission en bande étroite. Elle consiste à passer
les différentes communications sur des canaux différents. Les transmissions radio sont
toutefois soumises à de nombreuses contraintes rendant ce type de transmission non
suffisant. Ces contraintes sont :
• Le partage de la bande passante entre les différentes stations présentes dans une
même cellule.
• La propagation par des chemins multiples d'une onde radio. Une onde radio peut
en effet emprunter différents chemins et subir éventuellement des réflexions ou
des réfractions par des obstacles présent dans l'environnement de propagation.
Ces phénomènes peuvent entrainer la réception de deux informations identiques
'à des instants distinct ayant emprunté des trajectoires différentes par réflexions
Ch api tre 3. Le standard 802.11 30
successives.
3.6.1 La technique d'étalement de spectre
Le standard IEEE 802.11 présente deux types de modulation de fréquence pour
la transmission de l'information. Ces techniques, appelées étalement de spectre (spread
spectrum) ont permis d'améliorer la qualité de service et de sécuriser les communications
numériques. Elles consistent à utiliser une large bande de fréquence afin de transmettre
des données à faible puissance. On distingue deux techniques d'étalement de spectre :
• La technique de l'étalement de spectre à saut de fréquence;
• La technique de l'étalement de spectre à séquence directe.
La technique de saut de fréquence
La technique de saut de fréquence FHSS (Frequency Hopping Spread Spectrum)
repose sur le principe de division de la bande de fréquences en un minimum de 75
canaux d'une largeur de 1 MHz, puis de transmettre en utilisant une combinaison de
canaux connue par tous les utilisateurs du BSS (cellule). Dans la norme 802.11b, la
bande de fréquence 2.4-2.4835 GHz peut être diviser en 79 canaux d'une largeur de 1
MHz. Le principe de transmission est basé sur le saut de fréquence, ' en transmettant
successivement sur un canal puis sur un autre pendant une durée très courte (environ
400 ms), ce qui accroît l'immunité au bruit.
La technique FHSS a été à l'origine conçue pour des applications militaires dans le but
de faire obstacle à l'écoute radio. En effet, une station qui ignore la combinaison de
fréquences à utiliser ne pouvait pas écouter la communication car il lui était impossible
dans le temps imparti de localiser la fréquence sur laquelle le signal était émis puis de
chercher la nouvelle fréquence. Présentement les réseaux utilisant cette technologie sont
Chapitre 3. Le st andard 802.11 31
des standards ce q ui signifie que la combinaison de fréquences utilisées est connue de
Le FHSS ne garantie donc plus cette fonction de sécurité. toutes les stations.
Etalement du sp ectre à séquence directe
La technique
séquence directe) c
DSSS (Direct Sequence Spread Spectrum, étalement de spectre à
onsiste à diviser la bande de 2.4 GHz en 14 cannaux. Elle est basée
convertir chaque bit de données en une séquence de symboles bi
ps ». Dans le standard 802.11, la séquence Barker est utilisée. Ainsi
1 est remplacé par une séquence de bits et chaque bit valant 0 par
sur le principe de
naires apellés « chi
chaque bit valant
'son complément.
La couche physiqu
pour coder un 1 e
(appelée chipping)
nique de chipping
intrinsèque contre
e de la norme 802.11 définit une séquence de Il chips (10110111000)
t son complément (01001000111) pour coder un O. Cette technique
revient donc à moduler chaque bit avec la séquence Barker. La tech
provoque un étalement de spectre qui procure une certaine diversité
les évanouissement sélectifs
Pour augmenter le s débits de transmiss~on, la norme 802.11 utilise des techniques de
lutât que de s'arrêter aux deux séquences de Barker sur Il bits, le codage avancées. P
standard définit la technique de modulation CCK que nous allons voir plus en detail.
stre les différents technique de modulation [19]. Le tableau 3.2 illu
Débit Codage Modul ation Vitesse de Symbole Nombre de
bits/Symbole
1 Mbps 11(Sé quence de Barker) BPS K 1 MSps 1
2 Mbps ' 11(Sé quence de Barker) QPS K 1 MSps 2
5.5 Mbps CCK QPS K 1.375 MSps 4
Il Mbps CCK QPS K 1.375 MSps 8
TAB. 3.2: Différentes techniques de modulations.
Ch api tre 3. Le standard 802.11 32
Dans le standard 802.11b, la bande de fréquence 2.400-2.4835 GHz (d'une largeur
de 83.5 MHz) a été divisée en 14 canaux d'une ' largeur qe 5MHz, dont seuls les Il
premiers sont utilisables aux États-Unis. Seuls les canaux 10 à 13 sont utilisables en
France. Voici les fréquences associées aux 14 canaux [2].
Canal Fréquence ( GHZ) Amerique du nord Europe
1 2.412 X X
2 2.417 X X
3 2.422 X X
4 2.427 X X
5 2.432 . X X
6 2.437 X X
7 2.442 X X
8 2.447 X X
9 2.452 X X
10 2.457 X X
Il 2.462 X X
12 2.467 X
13 2.472 . X
14 2.483
TAB. 3.3: Fréquences associées aux canaux de la bande
2.400-2.4835 GHz.
Ainsi, certains canaux chevauchent les canaux adjacents; c'est la raison pour laquelle
les canaux l, 6 et Il distants les uns des autres de 25 MHz sont généralement utilisés.
Le standard 802.11a utilise la bande de fréquence 5.15 GHz à 5.35 GHz et la bande
5.725 GHz à 5.825 GHz, ce qui permet de définir 8 canaux distincts d'une largeur de 20
MHz chacun, c'est-à-dire une bande suffisamment large pour ne pas avoir de parasitage
entre canaux.
Chapi tre 3. Le standard 802.11 33
Afin de supporter les environnement très bruyants et étendre la portée des équipements,
les réseaux locaux sans fil. utilisent la variation dynamique du débit (Dynamic Rate
Shifting), qui permet un ajustement automatique du taux de transmission en fonction
des variations du canal radio. Dans une situation optimale, les stations se connectent
à un débit de Il Mbps. Si les conditons optimales ont subit un changement dû aux
inteférences ou au déplacement des équipement au delà de leur portée optimale, alors les
équipements haute vitesse transmettent à des débit inférieurs, redescendant à 5.5, 2 et 1
Mbps. Si les conditions optimales reviennent alors le débit augmente automatiquement.
3.7 La technique des codes complémentaires CCK
Le CCK est une variation sur une modulation MBOK (M-ary Bi-Orthogonal
Keying) où un mot-code unique est choisi pour la transmission. Le CCK emploie l'en
semble de fonctions complexes de Walsh/Hadamard, connues sous le nom de codes
complémentaires. Une méthode trés simple pour construire les codes de Walsh est
donnée par [18]. Comme illusté à la figure :3.2, . nous prenons une matrice de base 2 x 2
constituée de 1, dont la quadrant inférieur droit est inversé. Pour construire une ma
trice 4 x 4 , il suffit de prendre la matrice de base 2 x 2 est de la répliquer sur une
dimension 4 x 4 et d'inverser la quadrant inférieur droit. La procédure est répétée pour
des dimensions superieures.
Ch api tre 3. Le standard 802.11 34
1111 11 11 10 10 10 10
11 11 11 00 11 00 11 10 10 10 01 10 10 10 11 00 11 11 00 00
10 01 10 10 01 01 M=2 11 00 00 11
M=4 1001 01 10
M=8
FIG. 3.2 - Construction des codes de Walsh.
Le standard 802.11 b a adopté comme modulation pour les hauts débits la modu
lation de type CCK (Complementary Code Keying). La séquence d'information est
envoyée par l'intermédiaire des codes spéciaux qui ont de très bonnes propriét~s de
corrélation. La vitesse du chip est de Il Mchip/s, comme le montre la figure 3.3 [2].
Pour transmettre à Il Mbits/s, il faut être capable de transmettre 8 bits par symbole,
et 4 bits pour transmettre à 5.5 Mbits/s, comme illustré à la figure 3.4 [2].
La formule suivante doit être utilisée pour dériver les codes CCK [2, 9, Il, 13] :
c = { ej(<Pl +<P2+<P3+<P4) ej(<Pl +<P3+<P4) ej(<Pl +<P2+<P4) -ej(<Pl +<P4) , , , ,
(3.1)
Le terme CPl modifie la phase de tous les chips de la séquence à transmettre, et
doit' être une modulation de base DQPSK, soit pour 5.5 Mbits/s ou Il Mbits/s. Le
quatrième et le septième chip ont subi une rotation de 1800 (c'est l'explication du signe
« - » ), pour optimiser les propriétés de corrélation de la séquence transmise et minimiser
l'effet de la composante continue (offset) dans le code.
Ch api tre 3. Le standard 802.11
11MHz
6-bits Selecteur t---r---tI
Modulateur DQPSK Q
PSDU , --- Melangeur
2-bits Multiplexeur t----...........
1.375MHz
FIG. 3.3 - Modulateur CCK.
5.5 Mbits/s PSDU bits groupés en
« nibbles »
~~ 2 bits sont 2 bits sont codés· pour utilisés
générer pour la 4 codes modulation
complexes QPSK
Message complexe I/Q longueur 8 chips à 1.375 Mbits/s
11 Mbits/s PSDU bits groupés en
« octet»
1 1 1
..... '111111 ___ ........ ___ .lr \...........J V -y-
6 bits sont codés pour générer 64
codes complexes
2 bits sont utilisés pour la modulation
QPSK
Message complexe IIQ longueur 8 chips à 1.375 Mbits/s
FIG. 3.4 - Attribution du PSDU pour le CCK à 5.5Mbit/s et IlMbit/s.
35
Ch api tre 3. Le standard 802.11 36
3.7.1 Modulation a 5.5 Mbit/s
Dans la modulation CCK à 5.5 Mbit/s, 4 bits ( do, dl, d2 , d3 ; do transmis en
premier) sont transmis par symbole. Le couple (do, dl) détermine <{Jl basé sur un codage
DQPSK. Le codeur DQPSK est spécifié dans le tableau 3.4.
Tous les symboles impairs doivent avoir une rotation de 1800 (1f), en addition à la
. modulation DQPSK standard. Les symboles du PSDU doivent être énumérer en
commençant par « 0 » pour le premier symbole, dans le but de déterminer les symboles
impairs ou pairs. Dans ce cas la transmission du PSDU commence avec un symbole
pair.
(do, dd <{Jl symbole pair <{JI symbole impair
00 0 1f
01 11" 311"
2 "2
Il 7r 0
10 311" 11"
"2 2"
TAB. 3.4 - <{Jl en fonction de (do, dl)'
En fonction du couple (d2 , d3), nous pouvons calculer (<{J2, <{J3, «J4) en utilisant les
formules suivantes : 7r
<{J2 = (d2 X 7r) + "2
<{J3 = 0
Chapitre 3. Le standard 802.11 37
3.7.2 Modulation à Il Mbit/s
Dans la modulation CCK à 11Mbit/s, 8 bits (do à d7 ; do transmis en premier) sont
transmis par symbole. CPI est obtenu suivant la valeur du couple (do, dd donnée au
tableau 3.4. CP2, CP3, CP4 sont obtenus respectivement suivant la valeur des couples (d2,
d3 ) , (d4 , d5 ) et (d6 , d7 ) comme indiqué au.tableau 3.5.
(di , di+1 ) CP2 ,CP3 ,CP4
00 0
01 7r
2"
Il 7r
10 3i 2"
3.8 Extension de la modulation CCK
Dans cette partie nous allons décrire le codage utilisé pour générer des modulations
CCK à des vitesses différentes.
3.8.1 Modulation à 16.5 Mbit/s
Dans la modulation CCK à 16.5 Mbit/s , 12 bits (do à du ; do transmis en premier)
sont transmis par symbole. CPI est obtenu suivant la valeur du couple (do , dd et CP2, CP3 ,
CP4 sont obtenus respectivement suivant la valeur des couples (d2 , d3), (d4 , d5) et (d6 ,
Chapitre 3. Le standard 802.11 38
d7 ) comme indiqué au tableau 3.6.
(do, dl) «JI (di, di+l ) «J2 ,«J3 ,«J4.
000 0 000 0
001 7r 001 7r 4 4
011 7r 010 7r 2 2
010 37r 011 37r 4"" 4""
110 7f 100 7f
111 57r 101 57r 4"" 4""
101 37r 110 37r 2" 2"
100 77r 111 77r 4"" 4""
TAB. 3.6 - «JI en fonction de (do, dd et «J2, «J3, «J4 en fonction de (di, di+d.
3.8.2 Modulation à 22 Mbit/s
Dans la modulation CCK à 22 Mbit/s, 16 bits (do à du ; do transmis en premier)
sont transmis par symbole. «JI est obtenu suivant la valeur du couple (do, dd et «J2, «J3 ,
«J4 sont obtenus respectivement suivant la valeur des couples (d2, d3), (d4, d5) et (d61
d7 ) comme indiqué au tableau 3.7.
Chapitre 3. Le standard 802.11 39
(do, dt) CP1 (di, di+1) CP2 ,CP3 ,CP4
0000 0 0000 0
0001 7r 0001 7r 8 8
0011 7r 0010 1[' 4 4
0010 37r 0011 31[' 8" 8"
0110 7r 0100 7r "2 "2
0111 51[' 0101 51[' S- S-
0101 31T 0110 31[' ""4 ""4
0100 71[' 0111 71[' 8" 8"
1100 1f 1000 1f
1101 97r 1001 91[' 8" 8"
1111 57r 1010 51T ""4 4
1110 1br 1011 111[' 8 8
1010 37r 1100 37r 2" 2"
1011 131[' 1101 131[' 8 8
1001 71[' 1110 71[' 4 ""4
1000 157r 1111 157r 8 8
3.8.3 Modulation à 27.5 Mbit/s
Dans la modulation CCK à 27.5 Mbit/s, 20 bits (do à d11 ; do transmis en premier)
sont transmis par symbole. CP1 est obtenu suivant la valeur du couple (do, d1)et CP2, C{J3 ,
C{J4 sont obtenus respectivement suivant la valeur des cou-pIes (d2 , d3 ), (d41 d5 ) et (d61
d7 ) comme indiqué au tableau :3.8.
Chapitre 3. Le standard 802.11 40
(do, dt) 'Pl (di, di+t) 'P2 , 'P3 , 'P 4 (do, dd 'Pl (di, di+d 'P2 ,'P3 ,'P4
00000 0 00000 0 10111 1f 10000 1f
10000 ~ 00001 ~ 10101 l77r 10001 l77r 16 16 16 16
11000 7r 00010 7r 10001 97r 10010 97r 8 8 S- 8
11100 37r 00011 37r 11001 197r 10011 197r 16 ï6 16 16
11110 7r 00100 7T" 11101 57r 10100 57r 4 4 4 4
11111 57r 00101 57r 01101 2l7r 10101 2l7r 16 16 16 16
01111 311" 00110 31r 01100 1111" 10110 1111" S- 8 B B
01110 77r 00111 77r 01000 2311" 10111 237r 16 16 16 16
00110 47r 01000 47r 01010 67r 11001 257r S- 8 4 16
00010 97r 01001 97r 11010 257r 11010 l37r 16 ï6 16 S-
00011 57r 01010 57r 11011 l37r 11010 l37r S- 8 B S-
01011 117r 01011 117r 10011 277r 11011 277r 16 16 16 16
01001 37r 01100 3ïr 10010 77r 11100 77r 4 4 4 4
00001 l37T" 01101 l37r 10110 297r 11101 297r 16 16 16 16
00101 77r 01110 7ïr 10100 l5-rr 11110 l5-rr S- 8 B B
00111 l5-rr 01111 l57r 00100 3l-rr 11111 3l-rr 16 16 16 16
3.9 Conclusion
Dans ce chapitre, nous avons présenté le standard 802.11, ainsi que les techniques de
transmision à savoir la technique à bande etroite et la technique d'étalement de spectre.
Nous avons vu en detailla technique de modulation par codes complémentaires qui est
l'objectif de notre étude.
Chapitre 4
Simulation d'un système de
communication utilisant la
modulation CCK
4.1 Introduction
Ce chapitre est voué à l'étude comparative des performances de la modulation CCK
dans un canal de N aftali avec différent Trms ' Nous allons commencer par comparer la
modulation CCK avec une modulation DQPSK dans un canal à bruit blanc additif
gaussien (AWGN). Puis nous allons comparer les performances des modulations à Il
Mbps, 16.5 Mbps, 22 Mbps et 27.5 Mbps et terminer cette étude par une comparaison
des performances entre les différents débits.
La figure 4.1 présente le schéma du simulateur utilisé dans cette étude. Les différents
blocs seront commentés à la section suivante.
Chapitre 4. Simulation d'un système de communication utilisant la. modulation CCK42
Source Modulation Modulation d'informat!on t------tt de base t------tC CCK ~--
Canal
Signal reçu
Démodulation de base
Démodulation CCK
Égalisation ~
FIG. 4.1 - Schéma du simulateur.
4.2 Paramètres des simulations
Pour la simulation nous avons adopté une approche basée sur la méthode de Monte
Carlo en utilisant le logiciel Matlab. Nous supposons que le canal est fixe et sera généré
une seule fois pour toute la simulation.
4.2.1 Source d'information
La source d'information est composée d'une séquence binaire, qui sera partitionnée
en bloc de 8 bits, 12 bits, 16 bits ou 20 bits suivant le débit de transmission utilisé
comme le montre le tableau 4.1.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK43
Débit de transmission N ombre de bits par bloc
Il Mbps 8
16.5 Mbps 12
22 Mbps 16
27.5 Mbps 20
TAB. 4.1 - Nombre de bits par bloc en fonction du débit de transmission.
4.2.2 Modulation de base
Le tableau 4.2 résume les modulations utilisées pour chaque débits. Pour Il Mbps
nous avons utilisé une modulation DQPSK comme suggéré par le standard 802.11 ,
pour 16.5 Mbps nous avons utilisé le 8 PSK, pour 22 Mbps nous avous utilisé la même
modulation donnée par [16], à savoir le 16 PSK et finalement pour 27.5 Mbps nous
avons utilisé le 32 PSK.
Débit de transmission Modulation
Il Mbps DQPSK
16.5 Mbps 8PSK
22 Mbps 16PSK
27.5 Mbps 32PSK
TAB. 4.2 - Modulation appropriée pour chaque débit de transmission.
4.2.3 Modulation CCK
Dans cette section nous allons utiliser un exemple pour illustrer comment un code
CCK est généré. On assume une modulation à Il Mbps et une séquenece d'information
d7 ,d6 ,d5 , ... ,do = 10110101
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK44
D'aprés les tableaux :3.4 et 3.5 on trouve :
En utilisant l'équation 3.1 on trouve le code suivant:
c = {ej (7r+7r+3-n-j2+7r /2} ej (7r+37r /2+7r /2) ej (7r+7r+7r /2) _ej (7r+7r /2) , , , ,
( 4.1)
(4.2)
On utilisant la formule d'Euler on trouve finalement:
c = {1, -l,j,j, -j,j, -1, -l}
4.2.4 Canal
Pour toutes les simulations, nous avons utilisé un canal de transmission composé
d'un canal à bruit blanc additif gaussien (AWGN) et un canal multitrajets proposé par
le groupe de "travail 802.11.
Canal à bruit additif
Le bruit se rapporte aux signaux non désirés qui sont toujours présents dans les
systèmes électriques. La superposition du bruit au signal tend à obscurcir ou masquer le
Chapitre 4. Simulation d 'un système de communication utilisant la modulation CCK45
signal; elle limite la capacité du récepteur de prendre une décision correcte du symbole
reçu, et limite de ce fait le taux de transmission de l'information. Le bruit résulte
d'une variété de sources, synthétiques et naturelles. Le bruit synthétique inclut les
signaux électromagnétiques de rayonnement. Le bruit naturel inclut des éléments tels
que l'atmosphère, le soleil, et d'autres sources galactiques.
Une bonne étude peut éliminer une grande partie du bruit ou de son effet indésirable par
le filtrage, le choix de la modulation, et le choix d'un emplacement optimum du récepteur
(antenne). Toutefois il y a une source naturelle de bruit, appelée le bruit thermique ou
le bruit de Johnson, qui ne peut pas être éliminée. Le bruit thermique est provoqué
par le mouvement des électrons dans tous les composants dissipatifs, résistances, fils ,
et ainsi de suite. Les mêmes électrons qui sont responsables de la conduction électrique
sont également responsables du bruit thermique.
Nous pouvons caractériser le bruit thermique par .un processus aléatoire Gaussien de
moyenne nulle et de variance a~.
Comme illustré à la figure 4.2, nous pouvons incorporer l'effet de l'atténuation du canal.
À la réception, le signal devient :
y(t) = Ctx(t) + n(t)
où Ct denote le facteur d'atténuation et n( t) le bruit additif.
x(t) y ( t) = ax ( t) + n ( t ) +
net)
FIG. 4.2 - Canal à bruit additif avec atténuation.
Chapitre 4. ~imulation d'un système de communication utilisant la modulation CCK46
Canal multitrajets
Le canal multitrajets utilisé pour toutes les simulations, est celui présenté à la section
2.4. Le modèle mathématique pour le canal est comme suit :
où N(O, ~a~) est une distribution gaussienne avec une moyenne nulle et une variance
l 2 'iak·
Dans le choix du canal nous avons procédé de la manière suivante. Nous avons généré
plusieurs canaux pour les utiliser dans la simulation à un débit de Il Mbps. En fonction
des performances des résultats de simulation obtenus, nous avons choisi trois canaux
avec T rms = 25 ns, qui seront appelés par la suite canal facile, moyen et difficile, respec
tivement. Pour Trms = 50 ns et Trms = 75 ns, nous avons opté pour un niveau facile ,
car le nombre de trajets du canal influe beaucoup sur les résultats de simulation.
Canal multitrajets avec Trms = 25 ns Les coefficients du canal sont donnés au
tableau 4.3 et ses caractéristiques sont illustrées à la figure 4.3. Il possède cinq zéros
qui sont à l'intérieur du cercle unité. La réponse en amplitude de ce canal présente un
évanouissement de profondeur moyenne.
ho -0.6784 - 0.6131i
hl 0.0436 - 0.2188i
h2 -0.0639 - 0.0825i
h3 -0.0010 + 0.0374i
h4 . -0.0235 + O. 0227i
h5 0.0070 + 0.0044i
TAB. 4.3 - Coefficients du canal de Naftali avec T~ms = 25 ns, facile.
Chapitre 4. Simulation d'un systè_me de communication utilisant la modulation CCK47
0.8
0.6
0.4 .
0.2
(a)
;,. 0~~~--~~~G)~0
024 6
(c)
~ o · ·· \/~ l · m \ / ~ -1 \ f
1-2 \ l -3~------------~
o 0.5 Frequence normalisee
CIl c
~ '(ij c '5
.ê 0
~ -1 l'ti a.. -2
(b)
, : . x .~ x \
,.)<, . ~x_ / ..
-3 ~......o.....-____ ~ __ --,----,
-2 o Partie reelle
(d)
2
-1.5 r-------...---------,
:6 -2 l'ti cr: 1 m ~ -2.5 .r:. a..
_3L-------~----~
o 0.5 Frequence normalisee
FIG. 4.3 - Caractéristiques du· canal avec Trms = 25 ns. a) Réponse impulsionnelle. b)
Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK48
Canal multitrajets avec Trms = 50 ns Les coefficients du canal sont donnés au
tableau 4.4 et ses caractéristiques sont illustrées à la figure 4.4. Il possède onze zéros
qui sont à l'intérieur du cercle unité. La réponse en amplitude de ce canal présente un
évanouissement de profondeur plus importante que celle du canal avec Trms = 25 ns.
ho 0.7738 - 0.4084i
hl -0.0866 + 0.1827i
h 2 -0.1156 - 0.0008i
h3 -0.0931 - 0.2008i
h4 -0.0371 - 0.1179i
h5 -0.0441 + 0.0440i
h6 0.0230 + 0.0146i
h7 -0.0017 - 0.0070i
h8 -0.0161 + 0.0094i
hg 0.0027 + 0.0170i
hlO 0.0055 + 0.G019i
hu 0.0019 + 0.G035i
TAB. 4.4 - Coefficients du canal de Naftali avec Trms = 50 ilS, facile.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK49
(a)
la 15
(c) 2~------~----~
1\
1 0 1 \ Tv \ /\ ~ 1 \ / \
~ -2 1· · ... .. . . .. \/ ..,. \ 1 \i .... \! Il
\/ _4~è~. -----~----~
o 0.5 Frequence normalisee
-2
(b)
a Partie reelle
(d)
2
0.5 ~-----.-------,
VI
~ O · U «!
Of -0.5 . a> VI «! ~ -1
-1.5 L-______ ~ ___ ~
o 0.5 Frequence normalisee
FIG. 4.4 - Caractéristiques du canal avec Trms = 50 ns. a) Réponse impulsionnelle. b)
Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.
Canal multitrajets avec Trms = 75 ns Les coefficients du canal sont donnés au
tableau 4.5 et ses caractéristiques sont illustrées à la figure 4.5. Il possède onze zéros
qui sont à l'intérieur du cercle unité. La réponse en amplitude de ce canal présente un
évanouissement profond.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK50
ho 0.4685 + 0.4529i
hl -0.1825 + 0.0453i
h2 0.0853 + 0.1711i
h3 0.0452 - 0.2255i
h4 0.0031 - 0.0659i
hs -0.1064 - 0.0278i
h6 -0.0744 - 0.0952i
h7 -0.0218 - 0.0767i
h8 -0.0511 + 0.0401i
hg -0.0337 + 0.0004i
hlO 0.0348 - 0.0153i
hu 0.0010 + 0.0141i
hl2 -0.0158 + 0.0030i
hl3 -0.0004 - 0.0095i
hl4 -0.0080 + 0.0095i
hlS -0.0071 + 0.0015i
hl6 -0.0010 + O.OO58i
TAB. 4.5 - Coefficients du canal de Naftali avec Trms = 75 ns, facile.
Chapitre 4. Simulation d 'un système de communication utilisant la modulation CCK51
(a) 0.8
10 15 20
(c)
(b) 3~~--------~~
~ 2 'n; ,~ 1 Cl
,ê 0 ,
'f -1 (\j
a.. -2
-2 Partie reelle
(d)
2
5~------------~
-15 ~------"---------' -1~----~------~
o 0.5 Frequence normalisee
o 0.5 Frequence normalisee
FIG. 4.5 - Caractéristiques du canal avec Trms = 75 ns. a) Réponse impulsionnelle. b)
Les zéros de canal. c) Réponse en amplitude. d) Réponse en phase.
Canal multitrajets avec Trms = 25 ns moyen Les coefficients du canal sont
données au tableau 4.6 et ses caractéristiques sont illustrées à la figure 4.6. Il possède
cinq zéros qui sont à l'intérieur du cercle unité. La réponse en amplitude de ce canal
présente un évanouissement de profondeur importante.
ho -0.5254 + 0.2425i
hl -0.2193 + 0.1241i
h2 0.2238 + 0.0330i
h3 -0.0613 - 0.0299i
h4 0.0091 + 0.0013i
h5 0.0095 + 0.0026i
TAB. 4.6 - Coefficients du canal de Naftali avec Trms = 25 ns, moyen.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK52
(a) 0.8
0.6
0.4
0.2
o '----'-----'-----'------L----;~-.v o 2 4
(c) o.-------------~
D : 1
(b) 3.-------------~
~ 2
:~ 1 Cl
.ê 0
:ë -1 co
Q. -2
-2
' .. :., - ,
, x " ' { ' K/ i"
o Partie reelle
(d)
2
4.-------~----~
II)
c '\ . 1
.. .'\ 1 : 1 ~ 3 "? -5
Q)
u .~
~ -10 ~
\ 1 il ' :\1 .
: ~
co cr:
1 al
~ 2 1: Q.
-15 ~------'------' 1~----'------~ o 0.5
Frequence normalisee o 0.5
Frequence normalisee
FIG. 4.6 - Caractéristiques du canal avec Trms = 25 ns. a) Réponse impulsionnelle. b)
Les zéros de canal. c) Réponse en amplitude. d)Réponse en phase.
Canal multitrajets avec Trms = 25 ns difficile Les coefficients du canal sont
données au tableau 4.7 et ses caractéristiques sont illustrées à la figure 4.7. Il possède
cinq zéros qui sont à l'intérieur du cercle unité. La réponse en amplitude de ce canal
présente un évanouissement de profondeur trés importante.
ho -0.6784 - 0.6131i
hl 0.0436 - 0.2188i
h2 -0.0639 - 0.0825i
h3 -0.0010 + 0.0374i
h4 -0.0235 + 0.0227i
h5 0.0070 + O.0044i
TAB. 4.7 - Coefficients du canal de Naftali avec Trms = 25 ns, difficile.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK53
(a) 0.2
0.15 . ··· · 0
0.1
0.05 .
o '-""""-----'------'-----'------"" o 2 4 6
(c) o.---~---~
.0 ~ : ~- ............ "0 f".... / \ . / 1 -10~ :'V ... . .. :/ .. .. .. . ~ \ J :l Il
.~ 1/· g. -20 . ... ~ : <{
-30 "-----'------' o 0.5
Frequence normalisee
(b)
~ 2 ··· · · ·· ··· ··· '(ij c 1 .c>
. ê 0
-f -1 ~
a.. -2
" /'~' ·< · ·x ··
. . : .. . . .;, . . .. x ... .. i X . X
-2
' .
o Partie reelle
(d)
-6~--~---~
o 0.5 Frequence normalisee
FIG. 4.7 - Caractéristiques du canal avec Trms = 25 ns. a) Réponse impulsionnelle. b)
Les zéros de canal. c). Réponse en amplitude. d) Réponse en phase.
4.2.5 Égalisation
Le but de l'égalisation est de tenter de récupérer à partir d'une séquence de sym
boles reçue {y [n]}, présentant des interférences entre symboles (lES) introduite par la
sélectivité du canal, la séquence de symboles émise {x [n]} . U il égalisateur à retour de
décision (DFE) est constitué de deux filtres, un filtre direct C(z) et un filtre récursif
Q( z). Le filtre direct est tout simplement un filtre linéaire, tandis que le filtre récursif
est utilisé pour éliminer l'interférence entre symboles de l'estimation courante et l'es
timation précédente. Dans ce travail nous avons utilisé un filtre diréct d'ordre 5et un
filtre récursif d'ordre 4, et une séquence d'apprentissage de 1000 bits.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK54
Algorithme d'égalisation entrainée LMS
L'algorithme LMS est une procédure itérative d'ajustement du vecteur des coeffi
cients d'égaliseur. Chaque vecteur de coefficients d'égaliseur est associé à une valeur
d'erreur entre la sortie estimée et la sortie égalisée.
E'n utilisant cette erreur, l'algorithme LMS tente de trouver le vecteur désiré. L'équation
récursive utilisée par l'algorithme LMS est donnée par:
(4.3)
où vk désigne le conjugué de Vk. Ck est le vecteur des cofficients d'égaliseur de longueur
K, Vk est le vecteur des échantillons du signal de longueur K et le paramètre ~ est
le pas d'adaptation de l'algorithme LMS qui .contrôle la stabilité et la convergence de
l ' algorithme.
4.2.6 Démodulation et décodage
Pour la démoduation, nous avons opté pour la méthode décrite par [10]. Nous allons
commencer par la modulation à Il Mbps et généraliser par la suite pour les autres
débits. Dans la modulation CCK, l'information est un bloc de 4 symboles (co, Cl, C2, C3)
avec Ci E {l, 2, 3, 4}. Ceux-ci sont modulés en utilisant le DQPSK aux valeurs qyi = wei ,
avec w = exp7rj/2, et par la suite codé dans huit symboles complexes en utilisant la
fonction de codage suivante, Yo = qyo, YI = -qyOqyl, Y2 = qyOqy2, Y3 = qyOqyl qy2, Y4 = -qyOqy3 ,
Y5 = qyOqylqy3, Y6 = qyOqy2qy3, Y7 = qyOqylqy2qy3
Ces symboles vont être corrompus par le canal et les symboles reçus seront dénotés
Le principe du décodage de la logique de majorité est d'employer des calculs simples sur
les bits reçus pour produire des votes pour la valeur de chaque symbole de l'information.
Dans la logique à majorité de décisions dures, la valeur qui reçoit le plus de votes devient
le symbole décodé de l'information. Dans la logique à majorité de décisions douces , les
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK55
votes sont sur des valeurs douces à plusieurs niveaux, et elles sont arrangées pour former
une évaluation douce pour chaque symbole de l'information.
Dans les codes complémentaires CCK, nous employons" (<Pl , <P2, <P3, <P4), et calculons
chacune d 'elles, en se basant sur quatre votes comme suit :
Par une decision dure la valeur de Ci est:
Ci = arg min IwCi - <Pi 1
cEO,I,2,3
Polir estimer la valeur de <Po qui sera dénotée <Po, on utilise l'équation suivante:
La valeur de la phase reçue est calculée à partir de l'équation 4.4 en se basant sur
une décision dure, où i varie selon le codage utilisé pour un débit binaire donné.
Le tableau 4.8 donne les valeurs de i utilisées dans ce travail, ainsi que les w pour les
autres débits à savoir 16.5 Mbps, 22 Mbps et 27.5 Mbps
Débit binaire Modulation de base w Valeurs de i
Il Mbps DQPSK exp7rj/2 de 0 à 3
16.5 Mbps 8PSK . exp7rj/4 de 0 à 7
22 Mbps 16PSK exp7rj/8 de 0 à Il
27.5 Mbps 32PSK exp7rj/16 de 0 à 15
TAB. 4.8 - Valeurs de i et de w en fonction du débit de transmission.
Chapitre 4. Simulation d 'un système de communication utilisant la modulation CCK56
4.3 Résultats des simulations
4.3.1 Comparaison du CCK à Il Mbps et du DQPSK dans un
canal à bruit blanc additif gaussien (AWGN)
Pour débuter , il est primordial de comparer la modulation codée CCK avec une
autre modulation connue, pour voir les performances d'une telle modulation. La modu
lation élue est de type DQPSK.
La figure 4.8 présente la probabilité d'erreur du CCK avec un débit de Il Mbps et la
modulation DQPSK (théorique et empirique), avec un SNR variant de -4 dB à 12 dB
dans un canal à bruit blanc additif gaussien.
D'aprés la figure 4.8, nous constatons que la modulation CCK performe plus efficace- _
ment que la modulation DQPSK.
Malgré que le nombre de bits par symbole soit diffierents (8 bits pour le CCK et 2 bits
pour le QPSK), et un débit de Il Mbps pour le CCK et 22 Mbps pour la DQPSK avec
la même largeur de bande, la différence en terme du rapport signal à bruit est de 8 dB
pour un BER de 10-5 .
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK57
10° ~~~~~~~~~~~~~------------~ : : ::: i:: ; : i: i i i: i:: 1: ·: ... .. ::::::::.::: .. : ~ OQPSKTheorique
a: -4 W 10 ". Cl) .
10-5
10-6
... . . . .
.. .. . .
. . . .... .
. . . . . --e- OQPSK Empirique ~ : : : : :: -e- CCK
10~~--~--~----~--~----~--~----~--~ -4 -2 o 8 10 12
FIG. 4.8 - Probabilité d'erreur de la modulation codée CCK à Il Mbps et de la modu
lation DQPSK (théorique et empirique).
4.3.2 Simulation du CCK (11, 16.5, 22, 27.5) dans un canal
AWGN
Dans ce volet du travail, nous avons simulé la modulation par codes complémentaires
à différents débits avec la même largeur de bande dans un canal à bruit blanc additif
gaussien. Pour cela nous avons utilisé une source d'information composée de 1 million
de bits.
Les différents débits ont été calculé en se basant sur les directives du groupe de travail
du 802.11, à savoir que chaque message complexe est de longueur 8 bits à 1.375 Mbps
comme indiqué à la figure 3.4.
• Pour le système à Il Mbps on a :
Il Mbps == 8( bits / symbole) x 1.375 Mbps
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK58
• Pour le système à 16.5 Mbps on a :
16.5 Mbps = 12(bitsj symbole) x 1.375 Mbps
• Pour le système à 22 Mbps on a :
22 Mbps = 16(bitsj symbole) x 1.375 Mbps
• Pour le système à 27.5 Mbps on a :
27.5 Mbps = 20(bitsj symbole) x 1.375 Mbps
La figure 4.9 présente la probabilité d'erreur de la modulation par codes
complémentaires CCK pour difféerents débits à savoir Il Mbps, 16.5 Mbps, 22 Mbps
et 27.5 Mbps. Nous remarquons qu'en augmentant le débit on augmente la probabilité
d'erreur. C'est le compromis habituel à faire entre le choix du débit et la probabilité
d'erreur.
La différence en terme du rapport signal à bruit pour un BER de 10-3 est résumée dans
le tableau 4.9.
Débit binaire en Mbps Différence en terme du rapport signal à bruit en dB
entre Il et 16.5 5
entre 16.5 et 22 6
entre 22 et 27.5 6
TAB. 4.9- Différence en terme du rapport signal à bruit.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK59
4.4
a: w co
to--2
10~
.......... . .. . . : ... . ....... . .. : ... . .. . ...... : .. . .. . ....... : . . .. . ...... . . .
.. .. . .. .. .. .. . .. . . .:.. .. .. .. .. .. .. .. . .. . .... ~ .. .. .. . .. .. . .. .. .. .. ~ ....... ... ............ . . . .
.... . ................. -:- .. .. .. .. .. .... .. ....... ~ .. .. .. • .. .. . .. .. ...... ~ ....... .. 1" .. .. .. .. .. • .. ~ . ................. . .. ..
. ' . .. . .. . ! ~ : ! ~ ~ ~ ! ! ! ! ! : ~! ~ ~ ~ ! ~ ! ! ! ~ ! : j ~ i ! !! !! .: ~ ~ : ~ ~ ! ~! ! : ! ! : ! j j j j j : : ~ : ............. ......... . ..
.. . ...... . .... : ........ . .. . .. ; ... . ..... . .... : ..... . ........ : ... . ...... . . . .. : . . .. . .. . ...... . : .... . ............ . . .. ..... . . . . .
lO-~~------~---------L--------~ ________ ~ ______ ~ o 5 10 15 20 25
EbNa (dB)
FIG. 4.9 - Comparaison de différent CCK dans un canal AWGN.
Simulation du CCK avec différents débits dans
un canal de N aftali
Les paramètres du simulateur sont donnés au tableau 4.10.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK60
4.4.1 Récapitulatif des paramètres de simulation
Paramètres Valeur
Nombre du tajets du canal avec Trms = 25 ns 6
Nombre du tajets du canal avec Trms = 50 ns 12
Nombre du tajets du canal avec Trms = 75 ns 17
Rapport signal à bruit o dB à 25 dB
Taux de transmission Il Mbps, 16.5 Mbps, 22 Mbps
et 27.5 Mbps
Modùlation de base pour un débit de Il Mbps DQPSK
Modulation de base pour un débit de 16.5 Mbps 8PSK
Modulation de base pour un débit de 22 Mbps 16PSK
Modulation de base pour un débit de 27.5 Mbps 32PSK
Pas d'adaptation des coefficients, 0.001
Séquence d'apprentissage 1000 bits
Nombre de coefficients du filtre direct, C(z) 5
Nombre de coefficients du filtre récursif, Q(z) 4
TAB. 4.10 - Paramètres du simulateur dans un canal de Naftali.
4.4.2 Modulation CCK dans un canal de Naftali avec
différents Trms
Les figures 4.10 à 4.1:3 présentent les performances de la modulation par codes
complémentaires CCK avec dans un canal de N aftali avec différents Trms et ce, pour
des débits de Il Mbps, 16.5 Mbps, 22 Mbps et 27.5 Mbps. On compare trois canaux
différents à savoir un canal avec Trms= 25 ns , un deuxiême avec Trms = 50 ns et un
troisième avec Trms = 75 ns.
Sur les quatre figures, on constate qu'en augmentant Trms , ce qui se traduit par une
---- -- ~---------------------~
Cbapitre 4. Simulation d'un système de communication utilisant la modulation CCK61
augmentation du nombre de trajets, on obtient une diminution des performances de la
modulation CCK.
La différence en terme du rapport signal à bruit pour la modulation codée CCK à un
débit de Il Mbps est de 2 dB pour un BER de 10-4 entre les canaux avec Trms = 25 ns
et Trms = 50 ns et elle est de 3.5 dB pour un BER de 10-2 entre les canaux avec Trms
= 25 ns et Trms = 75 ns.
Pour un débit de 16.5 Mbps, elle est de 1 dB pour un BER de 10-4 entre les canaux
avec Trms = 25 ns et Trms = 50 ns.
Pour un débit de 22 Mbps, elle est de 2 dB pour un BER de 10-3 entre les canaux avec
Trms = 25 ns et Trms == 50 ns.
Pour un débit de 27.5 Mbps, elle est de 2 dB pour un BER de 10-2 entre les canaux
avec Trms == 25 ns et Trms == 50 ns.
Ceci est dû à l'infuence du nombre de trajets, ainsi que la modulation de base utilisée
pour chaque débit.
r.r. w Cû
· ............ ': ............... : ......... ..... : ......... ..... ~. ..... . .. . 1 0 _4 111! l ! l ~ ! 1 ~ 1 ! !~! 111 ! ! l ! ! l ! ! 11 j ! ! ! ~ ! ! ! ! ! l ! 11 Ê! ! ! ! ! ! ! ! ; l ! ! 1 ! ~ ! ! ! ! : ~ l ! l ! l ~ :
• •••••••••• •• ••••••••••••••• , ........... . .. . _ ••••••••• • ••••••••••••• t •••
• •••••••••• t , .:' •••••••••••• 1 ~ ••••••••• • • ••• : •••••••••••••• ; • • • • • • • • • ' "
1 0-5
II ~ ~ III ~ l ~ ~ lll~lll ~ ~ ~ ~ ~ ~ lll l l j ~ l ~ ~ III ~ l ~ ll l l~l ~ l ~ ll'; ~ ~ l llll ~ l ~ ~ ~ ~ III ! ! ! ~ . : : : : : ; : : : : : : : ::: : : : : : : : : : : : : : ~ : : : : : : : : : : : : ; ::: : : : : : : : : ; : : : : ~ : : : : : : : : ; : : : : ............. '., ............ , .......... ,., ............ .............. .... .
... - ... ... i o-f- '---__ ----IL....-__ --L ___ ---'-___ ----'-___ ---'
() G 10
FIG. 4.10 - Comparaison du CCK à un débit de Il Mbps dans un canal de Naftali avec
différents Trms '
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK62
o.:: lU c::o
10- 1
10- 2
10-,)
......... .. , ...... ; .. : : : : : : : : : : : : : : : ~ : : : : : : : : : : : : : : : : : ~ : , ••••••••••• 4 ••••• ; •••• • •••••••• ••• • ; •••••••• 1 •••••••• ~ • • ••••••••••• , •••
1 n-~ L------------L ___________ ~ __________ __L ____________ ....J
- 0 10 EbNo (dB}
15 20
FIG. 4.11 - Comparaison du CCK à un débit de 16.5 Mbps dans un canal de Naftali
avec différents Trms '
...... ',", .. ... . ~ .... . . . .
~ n ! ! ~ m ! ! ~ i ~ ~ ~ n ~ H ~ ~~ ~ H ~ ~ ! n ~ ! ! ~ ~ ~: ~ ! : : : : __ .
. . - - - . .. -:- .. - - - . ! - - - . - - -~ . - - - . . ~- - .. - .. -: . - - ... . -:- . . . . - . ! . - - - ... :- - . . .... ~. - -. . .. " t O-3 .. .... 1
~ ~ ~ ~ ~ ll~l ~ 11111 ; lll1111 ~ 1111 ~ l ~ ~ 111lll j ~ llllll~1111111 ! 111 ~ l11 ~ 1l111l ~ i : : l i i : ............... , .... .. .............................. , .... , ........... , .... ... ". • .. .. . - - ' . . . - • - . z - ••.••• ' • • •••.. l " • •• ••• ~ ... ..... ...... . . ..... : • a a a •• a' ... . .... .. _ _ _ .. .. . .. .. .. . . . ••• • f •••• " ••• , ............ . .............. .... .. , ..... . ............ .. . . .......... ,.
iV4L----L--__ ~ __ ~ ____ ~ __ ~ ____ ~ __ ~~ __ _L ____ L_ __ ~
o 2 4 8 10 12 14 113 ifS 20 EbNo (dB.!
FIG. 4.12 - Comparaison du CCK à un débit de 22 Mbps dans un canal de Naftali avec
différents Trms '
Chapitre 4. Simulation d 'un système de communication utilisant la modulation CCK63
II W ru
1 00 ~~~~~~~~~~~~ ____________ ~ ::: : :::: : :::: : :::: : ::: :: :: : : : ;:: : : :::: : ::::: :::: ----- GCK 27.5 Trm·;=2S :::: ::::: ::::: ~::: : ::::: ::::: ~:::: ::::: ::::: r -e- CCK 27.5 Trms=50
r~§~·~~~··~··~· l·:· '" ......... .. : .. -.- CCK 27.5 Trms= 75 ••• • •••• , 1 ••• 1 ~ ••• 1 • •• • 1 •••
1 0 - ~ : ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ î ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ i ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ :i: ; .. ::: " :: ~ : ::. : : : : : : : : : : : : : :
.. .. . . . ~ .. .. .. ....... : .. .. .. . . .. .. ...... ....... . ~ ....... ... .. .. . ... .. ... . : .. .... ... .... .. ... .. .... . ... , .... .. .. . . ...... .. .. · . . . · . . . 1 0-
2
::: : :::: ; :::::;::: : :::: : :::: : ~: : : : : : : : : : : : : : :~: : : : : : : : : : : : : : :~: : : : : • : : : : : : : : : : : : :: : : : :: : : ;: : : : : : : : : : : : : : ~: : :: : : : : : : : : : : : :: : : : : : : : : : : : : : ::: : : : :. " : ::: : 1
•••• t .... .. . , • • ; ••••••• • 1 . ..... ~ •••• • ••• •• ••• •• ; ... . ....... . .. . . ; •••••• " ••• • • •
........ ...... : .. ....... .... . :. ... ...... ....... : ... ............. : ... ..... . .. .. . , , , , . ... .. ... .. ... ..... .. ... .. ... ....... .. .... ................................ ... '" . .. . . . · . . . A A • •
1 0-3 ~----.......... ' ----__ ......J''--____ ---L-. ______ -L-____ ---'
o 10 15 20 25 EbNo (dB)
FIG. 4.13 - Comparaison du CCK à un débit de 27.5 Mbps dans un canal de Naftali
avec différents Trms '
4.4.3 Modulation CCK dans un canal de Naftali (Trms 25
ns) et différents degrés de difficultés
Les figures 4.14 à 4.17 présentent les performances de la modulation par codes
complémentaires CCK pour les quatre débits dans un canal de Naftali avec Trms = 25
ns. On compare trois canaux différents à savoir un canal facile avec Trms = 25 ns, un
canal moyen avec le même Trms et un troisième difficile avec le même Trms . On constate,
naturellement, que la probabilté d'erreur augmente en fonction du degré de difficulté
du canal.
La différence en terme du rapport signal à bruit pour la modulation codée CCK à un
débit de Il Mbps est de 2.5 dB pour un BER de 10- 3 entre le canal facile et le canal
moyen et elle de 5 dB pour un BER de 10-2 entre le canal facile et le canal difficile.
Pour un débit de 16.5 Mbps, elle est de 2.5 dB pour un BER de 10-4 entre le canal
facile et le canal moyen et elle est de 5 dB pour un BER de 10-4 entre le canal facile
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK64
et le canal difficile.
Pour un débit de 16.5 Mbps, elle est de 4 dB pour un BER de 10-3 entre le canal facile
et le canal moyen et elle est de 6 dB pour un BER de 10-3 entre le canal facile et le
canal difficile.
Pour un débit de 16.5 Mbps, elle est de 2.5 dB pour un BER de 10-2 entre le canal
facile et le canal moyen et elle est de 5 dB pour un BER de 10-2 entre le canal facile
et le canal difficile.
Ces résultats sont dûs à l 'influence du canal qui introduit des interférences intersym- \
boles.
cr: W al
10~~------~------~~----~------~------~ o 2 4 6 8 10
EbNo (dB)
FIG. 4.14 - Comparaison du CCK à Il Mbps dans des différents canaux.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK65
a: w (0
••••••••... . ••••••••.. .• •• • •••• . . 1.; ••••••. 11 . ••••••• .: . . .•••••• .. .. .. .. .. .. .. .. • • , 1 .. .. ........... 1 ....... III ........ . , , 1 ............. , 1 ................ ~ • 1 . .......... ..
i O- f, L---------__ ~~ __________ ~ ____________ ~ ____________ ~ (1 10
EbN o {{lB ) 1.:5 20
FIG. 4.15 - Comparaison du CCK à 16.5 Mbps dans des différents canaux.
cr: w (0
1 lF~
. .
l H n l n l ~ 11 nn n H 111 H n n H ~ 11 ~ ~ n H n 1~1 ~ 1 n H H H ~ 11 H HH H ; ~ ~ ~ II ....... . , . .. .. ; ...... . ..... -. .; .. . .......... . ; .. . ...... ····· f ··· · ····
i(!- S{._L, •.. -------"-------L-----'--------'----~~ ~.I 10 15 2'(J .25
FIG. 4.16 - Comparaison du CCK à 22 Mbps dans des différents canaux.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK66
0':: tU rD
r (, ~; ......... ... ........ .. .. . .... .. ...... .
•••••• • • • 1 . ...... . ... . , . .......... , •• ••• • ••
--e-- CCI-< 2 7. .. 5kll:lJ-.s rn o~~~n
r.~~l·~· .~ .. ~ .. ~- -~. ·~~t ... . ::::: ::: --e- cu< 2ï..5 '>.-Hü s cHf . . - . . .. , ......... ... . : ....... ... .... : ..
... ............ . . , . .. : .. .......... . . . ....... ~ .. '" .. .. . ... ...... .... :. .. ~ . .......... " " .:. . .. .. .. .. .. . .: .. .. . . . .
1 0 - ;' '-------'---_-L-___ -L-__ --' ___ -'---'
(J 10 1 S 20 EbN u ,cF.?,!
FIG. 4.17 - Comparaison du CCK à 27.5 Mbps dans des différents canaux.
4.4.4 La modulation CCK pour différents débits dans des ca
naux de Naftali avec différents degrés de difficultés
Les résultats de la section précédente sont représentés ici de façon différente afin de
mieux voir l'effet de la variation du débit binaire. Les figures 4.18 à 4.20 présentent les
performances de la modulation par codes complémentaires CCK pour différents débits
sur une même figure dans un canal de Naftali. On constate que l'utilisation du QPSK
comme modulation de base donne de meilleurs résultats.
La différence en terme du rapport signal à bruit entre la modulation codée CCK à un
débit de Il Mbps et 16.5 Mbps est de 5.5 dB pour un BER de 10-3 dans un canal de
Naftali facile, entre les débit de Il Mbps et 22 Mbps, elle est de Il dB et entre les débit
de Il Mbps et 27.5 Mbps, elle est de 17 dB.
Pour un canal moyen la différence en terme du rapport signal à bruit entre les débits
Il Mbps et 16.5 Mbps est de 5.5 dB pour un BER de 10-3 , entre les débit de Il Mbps
et 22 Mbps, elle est de 12 dB et entre les débit de Il Mbps et 27.5 Mbps, elle est de 16
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK67
dB,
Pour un canal difficile la différence en terme du rapport signal à bruit entre les débits
Il Mbps et 16.5 Mbps est de 5.5 dB pour un BER de 10-2 , entre les débit de 12 Mbps
et 22 Mbps, elle est de Il dB et entre les débit de Il Mbps et 27.5 Mbps, elle est de 16
dB.
Ceci s'explique par le fait que le principe de la modu~ation PSK est de répartir les
symboles de manière uniformes sur un cercle unité, donc le risque de faire des erreurs
sur le 32 PSK est beaucoup plus important que pour le DQPSK.
iC" "". "00. 00. "
TiC
:: :::::::::: : :::::::::::::; ;: l::::::::: ;;:: ::::: --==i -=· CCK ) ~3 . 5t .... 11:;:-; , . : ::.: : ::: : : ::: ::::::::::: : :: :::::::::: .. : :::: : -e- CO< 2 :~ r'>/lbi :$
. . ...... . . . ~ ...... , .. ... . ':' ,. --&-- CCV. 27 . 5 t·/lI:: i ~!;
. .. ... . . .. . ... " . ':' . . --é- CCf< l l r·>.'1IJi:s·
10 15 25
FIG. 4.18 - Comparaison des différents CCK dans un canal facile.
Chapitre 4. Simulation d 'un système de communication utilisant la modulation CCK68
••••••••• •• 1 • i •••.•• • 1 • •••• ~ ••• 1 • • •• • • • •• j. 1 •• 1 . ..
..... .. ........ . . . . . i ....... .. . . . ....... , ..... . ... ......... 1; . . .. .. ..
_ CCK1
--e-- CCK 1 G. 5
--e-- CCl< 22
. ;0-5 L.-_ ___ ..I.-____ ..L-____ -'--____ .....L.-___ ~--L-....J
o 5 10 15 2fJ 25 EbNo {dB}
FIG. 4.19 - Comparaison des différents CCK dans un canal moyen.
cr: 1.1.1 m
1fT1
i O~ · . .. .. · . . ~
~ ~ ; ~ ; ; ;; ! ~ ; ; ; ~ ; ; ; ; ; ~ ! ; ; ; ; ; ;! ~ ~ ; ; ; ! ; ; ; ~ ; ; ;~ ; ; ; ! ! . : ; ; ; ! ~ !:; ! ; ; ; ; ; ~ ; ~ ! ; ! ;:! ! : : : ~ ~ : : : : : : : : ~ : : : : : : : : : : : : : ~ : : : : : : : : : : : : : ~ : : : : : : . .. : : : : ::: : : : : : : : : : : ~ : :: ~ : ........... .. . 1 ......... 1 l , •• li . ~ •• • l , 1 1 •••• •• -. 1 • • • • • •• • •• • 1. t •••••••• • 1 l , l , • · . . . . . ...... . .. . .. . . . . ..... .. . ...... " ' . .... . ...... . .......... .......... .. ,1 ••
t------.;.... ---, : : . .
1Ü~ =E ~~~ ii, 1: ,:! :llml: ,,:: 1111::H: ~ lllllL: :::! 11lll11l ~ T-ll 10- 5 ~ ::;ck27,S.
o 1 () 15 . EbNo(::lB";
20 25
FIG. 4.20 - Comparaison des différents CCK dans un canal difficile.
---- ---- ~------ ------------------------------------------------------------~
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK69
4.4.5 La modulation CCK pour différents débits dans un canal
de Naftali avec Trms == 50 ns et Trms == 75 ns
Nous présentons encore les résultats précédents d'une autre façon. Les figures 4.21
et 4.22 présentent les performances de la modulation par codes complémentaires CCK
à des débit de Il Mbps, 16.5 Mbs, 22 Mbps et 27.5 Mbps dans un cànalde Naftali avec
Trms = 50 us et Trms = 75 ns. En augmentant le nombre de trajets, cela se traduit par
l'augmentation de la probabilité d'erreur.
La différence en ter,me du rapport signal à bruit entre la modulation codée CCK à un
débit de Il Mbps et 16.5 Mbps est de 8 dB pour un BER de 10-3 dans un canal de
N aftali facile avec Trms = 50 ns, entre les débit de Il Mbps et 22 Mbps, elle est de 12
dB et entre les débit de Il Mbps et 27.5 Mbps, elle est de 20 dB.
Pour un canal de N aftali facile avec Trms = 75 ilS la différence en terme du rapport
signal à bruit entre les débits Il Mbps et 16.5 Mbps est de 6 dB pour un BER de 10-1 ,
entre les débit de Il Mbps et 22 Mbps, elle est de 10 dB et entre les débit de Il Mbps
et 27.5 Mbps, elle est de 16 dB.
On constate aussi que pour Trms = 75 ns, seul la modulation à Il Mbps offre des
performances acceptables.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK70
iX: UJ m
1 ()_.:l
_ CCI<1 1 ---e-- CCI< 117 .5 --a- CCI< 22 -V-- CCI< 27.5
~: ~;i~~~~j~~ . . . ,. .,. .. .. . •••• 1 • ••••••• .... , ........ .
~!H~nHL!! .. . ,., ...... . , ..
... . ' ...... ;~HH~HL ~ ~ '. . ~ . .. ~ . .. . . . . . ..... . - .. ... .... , .......... .
...... · · · ·i· · · ····· ·· ·i······· ·· ··;········ · · .. ;······ . . .. , .......... . 10-f. L...--__ ---'-----'--__ ---'--___ -'--__ --" ___ ___'_ __ ---J
C 5 10 15 Et.f'Jc:,; ::iB }
20 2:·~.
FIG. 4.21 - Comparaison du CCK(ll, 16.5, 22,27.5) dans un canal avec Trms = 50 ilS.
:: !~!H m: l: !1!nl~!: ' : H .. , ..................... .. .. . . . . .... .• ' ... . .. •.. .... • ... .. _., . . . • • .. 1
... ... .. .
n~nn~~1l1nHnnll~nnn ~~lllnnH~l ........... . .. . ... _ . ..... . .. . . .
.. . .. . • .. . ! ' , ...... ~ ....... 1 ~ t • • ... • ~ 1 • , • t •• ~ .... 1 , ......... . , . ....... , .... . · . . · . . · . . ~~ ~nn nlld~ n:~:~ ~i~ l~ ., .................. "' .. : : : :::: :::::.:: ::: ~: : ... : : •• • ~ • •• ..". \ 1 ... .. ... -\ ••• , •
FIG. 4.22 - Comparaison du CCK(ll, 16.5, 22, 27.5) dans un canal Trms = 75 ilS.
Chapitre 4. Simulation d'un système de communication utilisant la modulation CCK71
4.5 Conclusion
Ce chapitre nous a permis de présenter les résultats obtenus. Dans un premier temps,
nous avons exposé les details du simulateur implanté en Matlab pour réaliser les simu
lations.
Durant cette étude nous sommes arrivés au resultat qu'il faut penser à d'autre types de
modulations de base pour pouvoir contrer les limitations du PSK. Le QAM et comment
l'adapter pourrait faire l'objet des études futures pour amélio,rer les performanes de la
modulation CCK.
Nous avons introduit deux nouvelles modulations, à savoir le CCK à 16.5 Mbps et à
27.5 Mbps, en plus du débit suggéré par le standard à Il Mbps et du débit proposé par
Haitham, Ata et Liang [16] à 22 Mbps.
Pour les résultats obtenus dans les différents canaux, naturellement, il y a un compromis
à faire entre débits et probabilité d'erreur. Les performances en terme de probabilité
d'erreur diminuent en augmentant le débit.
Il demeure vraisemblable que l'on puisse encore améliorer les performances par l'uti
lisation d'autre types de modulations de base et l'introduction des codes correcteurs
d'erreurs pour corriger les erreurs de transmission.
Chapitre 5
Conclusion
Dans ce travail de maîtrise, des analyses sur les systèmes 802.11 et en particulier
ceux qui utilisent la modulation CCK, à savoir le 802.11 b, sont présentés. Le modèle
de canal pris dans cette étude répond aux directives du groupe de travail 802.11.
Le deuxième chapitre a été consacré à l'étude d'une chaîne de communication ainsi
qu'aux modulations numériques de base et en particulier les modulations PSK et
DQPSK qui sont utilisées dans la modulation codée CCK. Nous avons aussi vu le
modèle de canal multitrajets, le modèle de Rayleigh et le modèle de Proakis qui ont
été cités à titre d'exemple. Nous avons terminé ce chapitre en présentant le modèle de
canal de N aftali proposé par le groupe de travail de 802.11.
Le troisième chapitre a présenté le standard 802.11, ainsi que les techniques de trans
mission, à savoir la technique à bande étroite et la technique d'étalement de spectre.
Nous avons vu en détail la technique de modulation par codes complémentaires qui
. est l'objectif de notre étude. Nous avons commencé par présenter la modulation codée
CCK standard à 5.5 Mbps et Il Mbps, puis celle proposée par Haitham, Ata et Liang
[16] à 22 Mbps. Nous avons introduit deux nouvelles modulations à des débits de 16.5
Mbps et 27.5 Mbps ainsi que les modulations de base utilisées.
Le quatrième chapitre a été dédié- à l'étude de la modulation CCK. Nous avons étudié
Chapitre 5. Conclusion 73
la modulation à Il Mbps proposée par le groupe de travail du standard 802.11 , une
modulation à 16.5 Mbps utilisant une modulation de base 8 PSK a été proposée, une
troisième modulation ayant un débit de 22 Mbps proposée par Haitham, Ata et Liang
[16] et finalement une modulation ayant un débit de 27.5 Mbps utilisant une modula
tion de base 32 PSK. Tous les systèmes étudiés l'ont été pour une transmission dans le
canal de N aftali. Les résulats obtenus montrent la souplesse et la robustesse du CCK
dans un canal multitrajets. L'utilisation du PSK limite les performances d'une telle
modulation, ce qui nous pousse à penser à l'utilisation d'autres modulations de base et
leur adaptation pour améliorer les performances.
Avec l'introduction des deux nouvelles modulations, la première à 16.5 Mbps et l'autre
à 27.5 Mbps, nous avons montré que nous pouvons augmenter le débit sans trop perdre
dans les perfomances en utilisant la même formule suggérée par le groupe de travail du
802.11b.
L'utilisation de plusieurs débits à savoir le Il Mbps, 16.5 Mbps, 22 Mbps et 27.5 Mbps
nous a permis de montrer qu'il y a toujours un prix à payer et un compromis à faire
entre débit et performance. Les résultats montrent une diminution de performances en
augmentant le débit. Par contre, les nouveaux débits obtenus ajoutent de la souplesse
au 802.11 pour des milieux plus difficiles où le taux de 54 Mbps ne serait pas possible.
Les perspectives offertes par ce travail de recherche sont multiples. Tout d'abord, il
serait pertinent d'utiliser la modulation CCK et la modulation OFDM dans la même
transmission (et non pas utiliser le CCK pour l'entête uniquement). Introduire les codes
correcteurs d'erreurs pour corriger les erreurs de transmission est une autre possibilité.
L'utilisation d'une modulation de base de type QAM et l'adaptation de l'équation 3.1,
developpée pour une utilisation avec des modulations de phase est une autre piste.
Étant donné la contrainte de temps, nous n'avons pas pu comparer l'extension de la
modulation CCK à 22 Mbps avec la modulation standard 802.11 à 22 Mbps utilisant
l'OFDM.
Bibliographie
[1] Bernard Sklar, Digital Communication Fundamentals and Applications, Prentice~
Hall, Inc, N J 2001 .
[2] 'Bob O'Hara, Al Petrick, IEEE 802.11 Handbook A Designer 's Companion, Stan
dard Information Network IEEE Press.
[3] Paul Mühlethaler, 802.11 et les Réseaux Sans Fil, Eyrolles.
[4] M. Cover, A. Thomas, Elements Of Information Theory, second edition, Wiley
Interscience, NJ 2006.
[5] LAN/MAN Syandars Committee of the IEEE Computer Society, Part 11 : Wire
less LAN Medium Access Control (MAC) and Physical Layer (PHY) specification:
Higher-speed Physical Layer Extension in the 2.4 GHz Band, The Institute of Elec
trical and Electronics Engineers, Inc, 1999.
[6] 'J. G. Proakis, Digital communications, Mc Graw-Hill, New York, 4th edition, 200l.
[7] T. H. Kim, C. K. Kim, J. W. Chong, A new architecture of CCK modem based on
iterative differential-modulation and phase detection. The 8th IEEE International
Conference on Electronics, Circuits and Systems, 2-5 Sept. 2001, pages: 333-336
vol.l.
[8] V. Erceg, D. G. Michelson, S. S. Ghassemzadeh, L. J. Greenstein, A. J. Rustako
Jr., P . B. Guerlain, M. K. Dennison, R. S. Roman, D. J. Barnickel, S. C. Wang, R.
R. Miller, A model for the multipath delay profile of fixed wireless channels. IEEE
Bibliographie 75
Journal on selected Areas in Communications. March 1999, pages: 399-410 vol.
17.
[9] S. Liu, A. Huang, Z. Y. Zhang, Z. Zhang, Performance analysis of CCK modulation
under multipath fading channel. Signal Processing Symposium, 2004, pages : 276-
279.
[10] J. Feldman, I. Abou-Faycal, M. Frigo, A noise-adaptive algorithm for first-order
Reed-Muller decoding. IEEE VTC 2002-Fall, pages: 758-762, Vol. 2.
[11] W. Jeong, H. Park, H. Lee, S. Hwang, Performance improvement techniques for
CCK-OFDM WLAN modem. IEEE Transactions on Consumer Electronics. Août
2003, pages: 602-605, Vo1.49.
[12] M. Frigo, Aigorithmic advances for software radios. 2002 Software Defined Radio
Technical Conference, San Diego, Nov 2002.
[13] B. Pearson, Complementary code keying made simple. Intersil application note,
Mai 2002.
[14] W . . Gerstacker, C. Jonietz, R. Schober, Equalization for WLAN IEEE
802.11 b.IEEE International Conference on Communications, Juin 2004, pages :
3439-3444, Vol. 6.
[15] A. Kedia, R. V. Rajakumar, A novel decision feedback equalizer for CCK signaIs
in fading channels. IEEE Region 10 Conference TENCON 2004, pages: 505-508,
Vol. 2.
[16] I.H. M. Ata, Q. P. Liang, Using modified fast Walsh transform (MFWT) ta accom
modate increasing data rate of IEEE 802.11b PHY WLAN ta 22 Mbps. IEEE 2002
International Communications, Circuits and Systems and West Sino Expositions,
29 Juin-1er Juillet 2002 Pages: 534-538, Vol.l.
[17] M. Sellathurai, S. Haykin, T-BLAST for wireless communications: first experi
mental results. IEEE Transactions on Vehicular Technology, Mai 2003. Pages :
530-535, Vol. 52.
Bi bliographie 76
[18] M. Fainberg, A performance analysis of the IEEE 802.11 b local area network in
the presence of bluetooth personeal area network. Université Polytechnique. France,
Juin 200l.
[19] T. Chiueh, S. Li, Trellis-Coded Complementary Code Keying for High-Rate Wire
less Lan Systems. IEEE communication letters, Mai 2001, pages: 191, VoLS.
[20] B. R. Lee, H. K. Chiang, C. D. Kuo, W. L. Lin, S. K. Lee, Doppler Angle and
Flow Velocity Estimations Using the Classic and Transverse Doppler Eff,ects. IEEE
Transaction on Ultrasonics, Ferroelectrics and Frequency Control, Janvier ·1999,
pages: 252-256, Vol. 46.
[21] C. K. Yeh et P. C. Li, Doppler Angle Estimation Using AR Modeling. IEEE Tran
saction on Ultrasonics, Ferroelectrics and Frequency Control, Juin 2002" pages:
683-692, Vol. 49.
Annexe A
Code Matlab
A.l Code Matlab pour la modulation CCK à Il
Mbps
clear aIl; cIe; ï.============================================ ï.Codage de phase DQPSK pour les symboles pairs ï.============================================ pe(l,l)=O; ï. dOdl =00 pe(1,2)=pi/2; %dOdl =01 pe(1,4)=pi; ï.dOdl = 11 pe(1,3)=3*pi!2; %dOdl =10 %================================================ %Codage de phase DQPSK pour les symboles impairs ï.================================================ po(l,i)=pi; ï.dOdl = 00 po(1,2)=3*pi/2; ÏodOdl = 01 po(1,4)=0; %dOdl = 11 po(1,3)=pi/2; ï.dOdl = 10 ï.======================= ï.Codage de phase QPSK %======================= p(l,l)=O; %did(i+l) = 00 p(1,2)=pi/2; %did(i+l) = 01 p(1,4)=pi; %did(i+l) = 11 p(1,3)=3*pi/2; %did(i+l) = 10
Annexe A. Code Matlab
len=120000;%len = nombre d'octet data=randint(1,len*8); p1=0; code=[] ; snr = [0:10]; for n=l:len octet=data(8*(n-1)+1:8*n); dO=octet(l); d1=octet(2); d2=octet(3); d3=octet(4); d4=octet(5); d5=octet(6); d6=octet(7); d7=octet(8); d01=bin2dec(dec2base(2*dO,2))+bin2dec(dec2base(d1,2)); d23=bin2dec(dec2base(2*d2,2))+bin2dec(dec2base(d3,2)); d45=bin2dec(dec2base(2*d4,2))+bin2dec(dec2base(d5,2)); d67=bin2dQc(dQc2ba9Q(2.d6.2))+bin2dQc(dQc2ba9Q(d7.2)): if mod(n-1,2) == 1 %verification si le symbole est pair/impair p1=po(1,dOl+l)+p1; %si impaire, nouvelle phasel = phasel precedente+rotation DQPSK if pl>2*pi p1=pl-2*pi; end; else p1=pe(1,d01+1)+p1; %si paire, nouvelle phase1 = phase precedente)+ rotaion DQPSK if pl>2*pi pl=pl-2*pi; end; end; pl; p2=p(1,d23+1); %determine p2 p3=p(1,d45+1); ï.determine p3 p4=p(1,d67+1); %determine p4 Ïo================================ ï.l'equation qui donne le Code CCK %================================ cck(n,:)=[exp(j*(p1+p2+p3+p4)),exp(j*(pl+p3+p4)),exp(j*(p1+p2+p4)),-exp(j*(p1+p4)), exp(j*(pl+p2+p3)),exp(j*(pl+p3)),-exp(j*(p1+p2)),exp(j*pl)]; for t=1:8 code=horzcatCcode,cck(n,t)); end; end; %================= ï.Canal de NAFT AL l ï.================= chan=[-0.6784 - 0.6131i 0.0436 - 0.2188i -0.0639 - 0.0825i -0.0010 + 0.0374i -0.0235 + 0.0227i 0.0070 + 0.0044i]; code1=filterCchan,1,code); figure; stem(abs(chan),'b') ï.=================== ï.La partie reception %=================== for j = l:length(snr) rx = awgn(code1 ,snr(j), 'measured"'); Ïo============== %DFE equalizer %============== M=4; trainlen =1000;
78
Annexe A. Code Matlab
nFwdWts=5; nFbkWts=4; eqobj=dfe(nFwdWts,nFbkWts,lms(O.OOl)); eqobj .SigConst '= pskmod( [O:M-l] ,M); Rx=equalize(eqobj,rx,code(l:trainlen )); symb=O; rxdata=[]; symb_pair=O; symb_impair=O; phasl=[] ; cc2= [] ; cc3= [] ; cc4= [] ; ccl= [] ; 'le======================== %Démodulation et Décodage 'le======================== for n=1:8:size(Rx,2) Rxcode=Rx(n:n+7); rO=Rxcode(8); rl=Rxcode(7); r2=Rxcode(6); r3=Rxcode(5); r4=Rxcode(4); r5=Rxcode(3); r6=Rxcode(2); r7=Rxcode(1); c2=(-rl*conj(rO)+r3*conj(r2)-r5*conj(r4)+r7*conj(r6))/4; c3=(r2*conj(rO)-r3*conj(rl)-r6*conj(r4)+r7*conj(r5))/4; c4=(-r4*conj (rO)-r5*conj(rl)+r6*conj(r2)+r7*conj (r3))/ 4;
79
cl=(rO-rl*conj(c2)+r2*conj (c3)+r3*conj(c2)*conj (c3)-r4 *conj(c4)+r5*conj (c2)*conj (c4) +r6*conj (c3)*conj (c4)+r7*conj (c2)*conj (c3)*conj (c4))/8 ; ccl=horzcat(ccl,cl); cc2=horzcat(cc2,c2); cc3=horzcat(cc3,c3); cc4=horzcat(cc4,c4); end; phal=[]; phase2=[]; phase3=[]; phase4=[]; 'le==================================== %Estimation de la valeur de la phasel %==================================== for i=l:len al(i)=real(ccl(i)); bl(i)=imag(ccl(i)); . if al(i)<O pl_est=atan(bl(i)/al(i))+pi; else pl_est=atan(bl(i)/al(i)); end; if pl_est<O & abs(pl_est»pi/4 pl_est=2*pi+pl_est; else pl_est=pl ..... est; end; if abs(O-pl_est)<abs(pi/2-pl_est)& abs(O-pl_est)<abs(pi-pl_est)& abs(O-pl_est)<abs(3*pi/2-pl_est) pl_est=O; elseif abs(pi/2-pl_est)<abs(O-pl_est)& abs(pi/2-pl_est)<abs(pi-pl_est)& abs(pi/2-pl_est)<abs(3*pi/2-pl_est) pl_est=pi/2;
Annexe A. Code Matlab
elseif abs(pi-pl_est)<abs(O-pl_est)& abs(pi-pl_est)<abs(pi/2-pl_est)& abs(pi-pl_est)<abs(3*pi/2-pl_est) pl_est=pi;
elseif abs(3*pi/2-pl_est)<abs(O-pl_est)& abs(3*pi/2-pl_est)<abs(pi/2-pl_est)& abs(3*pi/2-pl_est)<abs(pi-pl_est) pl_est=3*pi/2; end; phal=horzcat(phal,pl_est); end; %==================================== %Estimation de la valeur , de la phase2 %==================================== for i =2:1en
phasl(l)=phal(l); phasl(i)=phal(i)-phal(i-l) end; for i=l:len if phasl(i)<O phasel(i)=2*pi+phasl(i); else phasel(i)=phasl(i); end; end; for i=l:len a2(i)=real(cc2(i)); b2(i)=imag(cc2(i)); if a2(i)<O p2_est=atan(b2(i)/a2(i))+pi; else p2_est=atan(b2(i)/a2(i)); end; if p2_est<O & abs(p2_est»pi/4 p2_est=2*pi+p2_est; else p2_est=p2_est; end; if abs(O-p2_est)<abs(pi/2-p2_est)& abs(O-p2_est)<abs(pi-p2_est)& abs (O-p2_est) <abs (3*pi/2-p2_est) p2_est=O; elseif abs(pi/2-p2_est)<abs(O-p2_est)& abs(pi/2-p2_est)<abs(pi-p2_est)& abs (pi/2-p2_est) <abs (3*pi/2-p2_est) p2_est=pi/2; elseif abs(pi-p2_est)<abs(O-p2_est)& abs(pi-p2_est)<abs(pi/2-p2_est)& abs(pi-p2_est)<abs(3*pi/2-p2_est) p2_est=pi;
elseif abs(3*pi/2-p2_est)<abs(O-p2_est)& abs(3*pi/2-p2_est)<abs(pi/2-p2_est)& abs(3*pi/2-p2_est)<abs(pi-p2_est) p2_est=3*pi/2; end; phase2=horzcat(phase2,p2_est); end; %==================================== %Estimation de la valeur de la phase3 Ïo====================================
80
Annexe A. Code Matlab
for i=l:len a3(i)=real(cc3(i»; b3(i)=imag(cc3(i»; if a3(i)<O p3_est=atan(b3(i)/a3(i»+pi; else p3_est=atan(b3(i)/a3(i»; end; if p3_est<O & abs(p3_est»pi/4 p3_est=2*pi+p3_est; else p3_est=p3_est; end;
if abs(O-p3_est)<abs(pi/2-p3_est)& abs(O-p3_est)<abs(pi -p3_est)& abs (O-p3_est) <abs (3*pi/2-p3_est) p3_est=O; elseif abs(pi/2-p3_est)<abs(O-p3_est)& abs(pi/2-p3_est)<abs(pi-p3_est)& abs(pi/2-p3_est)<abs(3*pi/2-p3_est) p3_est=pi/2; elseif abs(pi-p3_est)<abs(pi/2-p3_est)& abs(pi-p3_est)<abs(O-p3_est)& abs (pi-p3_est) <abs(3*pi/2-p3_est) p3_est=pi; elseif abs(3*pi/2-p3_est)<abs(pi/2-p3_est)& abs(3*pi/2-p3_est)<abs(pi-p3_est)& abs (3*pi/2-p3_est)<abs (O-p3_est) p3_est=3*pi/2; end; phase3=horzcat(phase3,p3_est); end; %==================================== %Estimation de la valeur de la phase4 %==================================== for i=l:len a4(i)=real(cc4(i»; b4(i)=imag(cc4(i»; if a4(i)<O p4_est=atan(b4(i)/a4(i»+pi; else p4_est=atan(b4(i)/a4(i»; end; if p4_est<O & abs(p4_est»pi/4 p4_est=2*pi+p4_est; else p4_est=p4_est; end; if abs(O-p4_est)<abs(pi/2-p4_est)& abs(O-p4_est)<abs(pi-p4_est)& abs (O-p4_est) <abs (3*pi/2-p4_est) p4_est=O; elseif abs(pi/2-p4_est)<abs(O-p4_est)& abs(pi/2-p4_est)<abs(pi-p4_est)& abs(pi/2-p4_est) <abs(3*pi/2-p4_est) p4_est=pi/2; elseif abs(pi-p4_est)<abs(pi/2-p4_est)& abs(pi-p4_est)<abs(O-p4_est)& abs(pi-p4_est)<abs(3*pi/2-p4_est) p4_est=pi; elseif abs(3*pi/2-p4_est)<abs(pi/2-p4_est)& abs(3*pi/2-p4_est)<abs(pi/2-p4_est)&
81
Annexe A. Code Matlab
abs(3*pi/2-p4_est)<abs(0-p4_est) p4_est=3*pi/2; end; phase4=horzcat(phase4,p4_est); end; for i=l:len if mod(symb,2)==1 %C'est un symbole impaire symb_impair=l; %affirmation que le symbole est impair symb_pair=O; else symb_impair=O; symb_pair=l; %affirmation que le symbole est pair Qnd: symb=symb+ 1 ; %======================= ï.décodege des bits dO,d1 ï.======================= if symb_pair == 1 if phase1(i)==0 rxdata=horzcat(rxdata,[O 0]); elseif phase1(i)==pi/2 rxdata=horzcat(rxdata;[O 1]); elseif phase1(i)==pi rxdata=horzcat(rxdata,[ll]); elseif phase1(i)==3*pi/2 rxdata=horzcatCrxdata,[10]); end; end; if symb_impair == 1 if phase1(i)==pi rXdata=horzcat(rxdata,[O 0]); elseif phase1(i)==3*pi/2 rxdata=horzcat(rxdata,[O 1]); elseif phase1(i)==0 rxdata=horzcat(rxdata,[ll]); elseif phase1(i)==pi/2 rxdata=horzcat(rxdata,[10]); end; end; ï.======================= ï.décodage des bits d2,d3 %======================= if phase2(i)==0 rxdata=horzcatCrxdata,[O 0]); elseif phase2(i)==pi/2 rxdata=horzcat(rxdata,[O 1]); elseif phase2(i)==pi rxdata=horzcat(rxdata,[11]); elseif phase2(i)==3*pi/2 rxdata=horzcat(rxdata,[10]); end; %======================= ï.décodage des bits d4,d5 %=======================
82
Annexe A. Code Matlab 83/
if phase3(i)==O rxdata=horzcat(rxdata,[O 0]); elseif phase3(i)==pi/2 rxdata=horzcat(rxdata,[O 1]); elseif phase3(i)==pi rxdata=horzcat(rxdata,[ll]); elseif phase3(i)==3*pi/2 rxdata=horzcat(rxdata,[10]); end; ï.======================= ï.décodage des bits d6,d7 ï.======================= if phase4(i)==Q
rxdata=horzcat(rxdata,[O 0]); elseif phase4(i)==pi/2 rxdata=horzcat(rxdata,[O 1]); elseif phase4(i)==pi rxdata=horzcat(rxdata, [1 1]); elseif phase4(i)==3*pi/2 rxdata=horzcat(rxdata, [1 0]); end; end; data; rxdata; ï.================================= ï. Calcul du taux d'erreur par bit ï.================================= [nErrors, BER(j)] =biterr(data(trainlen+l:end),rxdata(trainlen+l:end)) end; ï. Plot . ï.===== figure;semilogy(snr,BER,'g-*'); xlabel('EbNo (dB)'); ylabel('BER')
A.2 Code Matlab pour la modulation CCK à 16.5 Mbps
clear aIl; cIe; ï.=========================== ï.Codage gray de phase 8-PSK ï.=========================== pg(l,l)=O; ï.dOdld2 =000 pg(1,2)=pi/4; ï.dOdld2 =001 pg(1,4)=pi/2; ï.dOdld2 =011 pg(1,3)=3*pi/4; ï.dOdld2 =010 pg(1,7)=pi; ï.dOdld2 =110 pg(1,8)=5*pi/4; ï.dOdld2 =111
Annexe A. Code Matlab
pg(1,6)=3*pi/2; %dOd1d2 =101 pg(1,S)=7*pi/4; %dOd1d2 =100 Ïe======================= %Codage de phase 8-PSK %======================= p(l,l)=O; Ïod3(i-1) à d3(i - 1)+2 =000 p(1,2)=pi/4; Ïod3(i-1) à d3(i-1)+2 =001 p(1,3)=pi/2; Ïod3(i-1) à d3(i-1)+2 =010 p(1,4)=3*pi/4; %d3(i-1) à d3(i-1)+2 =011 p(l,S)=pi; Ïod3(i-1) à d3(i-1)+2 =100 p(1,6)=S*pi/4; Ïod3(i-1) à d3(i-1)+2 =101 p(1,7)=3*pi/2; %d3(i-1) à d3(i-1)+2 =110 p(1,8)=7*pi/4; %d3(i-1) a d3(i-1)+2 =111 len=85000; %len : nombre d'octet data=randint(1,len*12); code= [] ; snr = [0:2:14]; for n=l:len octet=data(12*(n-1)+1:12*n);
84
dO=octet(l) ;d1=octet(2) ;d2=octet(3) ;d3=octet(4); d4=octet(S); dS=octet(6); d6=octet(7); d7=octet(8);d8=octet(9); d9=octet(10); d10=octet(11); d11=octet(12) ; d012=bin2dec(dec2base(4*dO,2~)+bin2dec(dec2base(2*d1,2»+bin2dec(dec2base(d2,j»; d34S=bin2dec(dec2base(4*d3,2»+bin2dec(dec2base(2*d4,2»+bin2dec(dec2base(dS,2»; d678=bin2dec(dec2base(4*d6,2»+bin2dec(dec2base(2*d7,2»+bin2dec(dec2base(d8,2»; d9101l=bin2dec(dec2base(4*d9,2»+bin2dec(dec2base(2*d1O,2»+bin2dec(dec2base(d11,2»; p1=pg(1,d012+l); Ïodetermine pl p2=p(1,d34S+1); %determine p2 p3=p(1,d678+1); Ïodetermine p3 p4=p(1,d91011+1); %determine p4
A.2.1 Modulation codée CCK à 16.5 Mbps
clear aIl; clc; %=========================== ÏoCodage gray de phase 8-PSK Ïo=========================== pg(l,l)=O; %dOd1d2 =000 pg(1,2)=pi/4; ÏodOd1d2 =001 pg(1,4)=pi/2; %dOd1d2 =011 pg(1,3)=3*pi/4; %dOd1d2 =010 pg(1,7)=pi; %dOd1d2 =110 pg(1,8)=S*pi/4; %dOd1d2 =111 pg(1,6)=3*pi/2; %dOd1d2 =101 pg(1,S)=7*pi/4; %dOd1d2 =100 %======================= %Codage de phase 8-PSK %======================= p(l,l)=O; %d3(i-1) à d3(i-l)+2 =000 p(1,2)=pi/4; %d3(i-1) à d3(i-1)+2 =001
Annexe A. Code Matlab
p(l,3)=pi/2; %d3(i-1) à d3(i-1)+2 =010 p(l,4)=3*pi/4; Ïod3(i-1) à d3(i-1)+2 =011 p(l,5)=pi; Ïod3(i-1) à d3(i-1)+2 =100 p(l,6)=5*pi/4; ï.d3(i~1) à d3(i-1)+2 =101 p(l,7)=3*pi/2; %d3(i-1) à d3(i-l)+2 =110 p(l,8)=7*pi/4; ï.d3(i-l) à d3(i-l)+2 =111 len=85000; ï.len : nombre d'octet data=randint(1,len*12); code= [] ; snr = [0:2:14]; for n=1:1en octet=data(12*(n-l)+1:12*n);
85
dO=octet(1) jd1=octet(2) jd2=octet(3) jd3=octet(4)j d4=octet(5)j d5=octet(6)j
d6=octet(7); d7=octet(8);d8=octet(9); d9=octet(10); d10=octet(11); d11=octet(12); d012=bin2dec(dec2base(4*dO,2))+bin2dec(dec2base(2*d1,2))+bin2dec(dec2base(d2,2)); d345=bin2dec(dec2base(4*d3,2))+bin2dec(dec2base(2*d4,2))+bin2dec(dec2base(d5,2)); d678=bin2dec(dec2base(4*d6,2))+bin2dec(dec2base(2*d7,2))+bin2dec(dec2base(d8,2)); d91011=bin2dec(dec2base(4*d9,2))+bin2dec(dec2base(2*dlO,2))+bin2dec(dec2base(d11,2)); pl=pg(1,d012+1); %determine pl p2=p(1,d345+1); Ïodetermine p2 p3=p(1,d678+1); ï.determine p3 p4=p(1,d91011+1); ï.determine p4
Annexe A . Code Matlab
A.2.2 Démodulation et décodage
%======================== %Démodulation et Décodage %======================== for n=1:8:size(Rx,2) Rxcode=Rx(n:n+7); rO=Rxcode(8); rl=Rxcode(7); r2=Rxcode(6); r3=Rxcode(5); r4=Rxcode(4); r5=Rxcode(3); r6=Rxcode(2); r7=Rxcode(1); c2=(-rl*conj(rO)+r3*conj(r2)-r5*conj(r4)+r7*conj(r6))/4; c3=(r2*conj(rO)-r3*conj(r1)-r6*conj(r4)+r7*conj(rS))/4; c4=(-r4*conj(rO)-r5*conj(rl)+r6*conj(r2)+r7*conj(r3))/4; cl=(rO-rl*conj (c2)+r2*conj (c3)+r3*conj (c2)*conj (c3)-r4 *conj(c4) +r5*conj (c2)*conj (c4)+r6*conj (c3)*conj (c4)+r7*conj (c2) *conj(c3)*conj(c4))/8; ccl=horzcat(ccl,cl); cc2=horzcat(cc2,c2); cc3=horzcat(cc3,c3); cc4=horzcat(cc4,c4); end; phasell=[] ;phase22=[];phase33=[];phase44=[]; %==================================== %Estimation de la valeur de la phasel %==================================== for i=l:len al(i)=real(ccl(i)); bl(i)=imag(ccl(i)); if al (i) <0 pl_est=atan(bl(i)/al(i))+pi; else pl_est=atan(bl(i)/al(i)); end; if pl_est<O pl_est=2*pi+pl_est; else pl_est=pl_est; end; phal=[O pi/4 pi/2 3*pi/4 pi 5*pi/4 3*pi/2 7*pi/4 2*pi]; [Y,I]=min(abs(phal-pl_est)); if 1==1 phasel=O; elseif 1==2 phasel=pi/4; . elseif 1==3 phasel=pi/2; elseif 1==4 phasel=3*pi/4; elseif 1==5 phasel=pi; elseif 1==6 phasel=5*pi/4; elseif 1==7 phasel=3*pi/2;
86
Annexe A. Code Matlab
elseif 1==8 phase1=7*pi/4; elseif 1==9 phase1=O; end; phase11=horzcat(phase11,phase1); end; Ïo==================================== ÏoEstimation de la valeur de la phase2 Ïo==================================== for i=1:len a2(i)=real(cc2(i)); b2(i)=imag(cc2(i)); if a2(i)<O p2_est=atan(b2(i)/a2(i))+pi; else p2_est=atan(b2(i)/a2(i)); end; if p2_est<O p2_est=2*pi+p2_est; else p2_est=p2_est; end; pha2=[O pi/4 pi/2 3*pi/4 pi 5*pi/4 3*pi/2 7*pi/4 2*piJ; [Y,1]=min(abs(pha2-p2_est)); if 1==1 phase2=O; elseif 1==2 phase2=pi/4; elseif 1==3 phase2=pi/2; elseif 1==4 phase2=3*pi/4; elseif 1==5 phase2=pi; elseif 1==6 phase2=5*pi/4; elseif 1==7 phase2=3*pi/2; elseif 1=~8 phase2=7*pi/4; elseif 1==9 phase2=O; end; phase22=horzcat(phase22,phase2); end; %==================================== ÏoEstimation de la valeur de la phase3 %==================================== for i=1:len a3(i)=real(cc3(i)); b3(i)=imag(cc3(i)); if a3(i)<O p3_est=atan(b3(i)/a3(i))+pi;
87
Annexe A. Code Matlab
else p3_est=atan(b3(i)/a3(i)); end; if p3_est<O p3_est=2*pi+p3_est; else p3_est=p3_est; end; pha3=[O pi/4 pi/2 3*pi/4 pi 5*pi/4 3*pi/2 7*pi/4 2*pi]; [Y,I]=min(abs(pha3-p3_est)); if 1==1 phase3=O; elseif 1==2 phase3=pi/4; elseif 1==3 phase3=pi/2; elseif 1==4 phase3=3*pi/4; elseif 1==5 phase3=pi; elseif 1==6 phase3=5*pi/4; elseif 1==7 phase3=3*pi/2; elseif 1==8 phase3=7*pi/4; elseif 1==9 phase3=O; end; phase33=horzcat(phase33,phase3); end; ï.==================================== ï.Estimation de la valeur de la phase4 ï.==================================== for i=1:len a4(i)=real(cc4(i)); b4(i)=imag(cc4(i)); if a4(i)<O p4_est=atan(b4(i)/a4(i))+pi; else p4_est=atan(b4(i)/a4(i)); end; if p4_est<O p4_est=2*pi+p4_est; else p4_est=p4_est; end; pha4=[O pi/4 pi/2 3*pi/4 pi 5*pi/4 3*pi/2 7*pi/4 2*pi]; [Y,I]=min(abs(pha4-p4_est)); if 1==1 phase4=O; elseif 1==2 phase4=pi/4; elseif 1==3
88
Annexe A. Çode Matlab
phase4=pi/2; elseif 1==4 phase4=3*pi/4; elseif 1==5 phase4=pi; elseif 1==6 phase4=5*pi/4; elseif 1==7 phase4=3*pi/2; elseif 1==8 phase4=7*pi/4; elseif 1==9 phase4=O; end; phase44=horzcat(phase44,phase4); end; for i=1:1en %============================== %décodage des bits dO,d1,d2 Ïo============================== if phase11(i)==0 rxdata=horzcat(rxdata,[O 0 0]); elseif phase11(i)==pi/4 rxdata=horzcat(rxdata,[O 0 1]); elseif phase11(i)==pi/2 rxdata=horzcat(rxdata,[O 1 1]); elseif phase11(i)==3*pi/4 rxdata=horzcat(rxdata,[O 1 0]); elseif phase11(i)==pi rxdata=horzcat(rxdata,[1 1 0]); elseif phase11(i)==5*pi/4 rxdata=horzcat(rxdata,[111]); elseif phase11(i)==3*pi/2 rxdata=horzcat(rxdata,[101]); elseif phase11(i)==7*pi/4 rxdata=horzcat(rxdata,[100]); end; %============================== %décodage des bits d3,d4,d5 %============================== if phase22(i)==0 rxdata=horzcat(rxdata,[O 0 0]); elseif phase22(i)==pi/4 rXdata=horzcat(rxdata,[O 0 1]); elseif phase22(i)==pi/2 rxdata=horzcat(rxdata, [0 1 0]); elseif phase22(i)==3*pi/4 rxdata=horzcat(rxdata,[O 1 1]); elseif phase22(i)==pi rxdata=horzcat(rxdata,[100]); elseif phase22(i)==5*pi/4 rxdata=horzcat(rxdata,[101]); elseif phase22(i)==3*pi/2 rxdata=horzcat(rxdata,[1 1 0]);
89
Annexe A. Code Matlab
elseif phase22(i)==7*pi!4 rxdata=horzcat(rxdata,[lll]); end; ï.=============================== ï.décodage des bits d6,d7,d8 ï.=============================== if phase33(i)==0 rxdata=horzcat(rxdata,[O 0 0]); elseif phase33(i)==pi!4 rxdata=horzcat(rxdata,[O 0 1]); elseif phase33(i)==pi!2 rxdata=horzcatCrxdata,[O 1 0]); elseif phase33(i)==3*pi!4
rxdata=horzcatCrxdata,[O 1 1]); elseif phase33(i)==pi rxdata=horzcat(rxdata,[l 0 0]); elseif phase33(i)==5*pi!4 rxdata=horzcat(rxdata,[101]); elseif phase33(i)==3*pi!2 rxdata=horzcat(rxdata,[l 1 0]); elseif phase33(i)==7*pi!4 rxdata=horzcat(rxdata,[lll]); end; ï.================================== ï.décodage des bits d9,dl0,dl1 ï.================================= if phase44(i)==0 rxdata=horzcat(rxdata,[O 0 0]); elseif phase44(i)==pi!4 rxdata=horzcat(rxdata,[O 0 1]); elseif phase44(i)==pi!2 rxdata=horzcat(rxdata, [0 1 0]); elseif phase44(i)==3*pi!4 rxdata=horzcat(rxdâta,[O 1 1]); elseif phase44(i)==pi rxdata=horzcat(rxdata,[l 0 0]); elseif phase44(i)==5*pi!4 rxdata=horzcat(rxdata,[101]); elseif phase44(i)==3*pi!2 rxdata=horzcat(rxdata,[l 1 0]); elseif phase44(i)==7*pi!4 rxdata=horzcat(rxdata,[lll]); end; end;
90
Annexe A. Code Matlab 91
A.3 Code Matlab .pour la modulation CCK à 22 Mbps
A.3.1 Modulation codée CCK à 22 Mbps
clear aIl; clc; %============================ ÏoCodage gray de phase 16-PSK %============================ pg(l,l)=O; %dOd1d2d3 =0000 pg(1,2)=pi/S; %dOd1d2d3 =0001 pg(1,4)=pi/4; %dOd1d2d3 =0011 pg(1,3)=3*pi/S; ÏodOd1d2d3 =0010 pg(1,7)=pi/2; %dOd1d2d3 =0110 pg(1,S)=5*pi/S; %dOd1d2d3 =0111 pg(1,6)=3*pi/4; %dOd1d2d3 =0101 pg(1,5)=7*pi/S; %dOd1d2d3 =0100 pgC1,13)=pi; %dOd1d2d3 =1100 pg(1,14)=9*pi/S; %dOd1d2d3 =1101 pg(1,16)=5*pi/4; ÏodOd1d2d3 =1111 pg(1,15)=11*pi/S; %dOd1d2d3 =1110 pg(1,11)=3*pi/2; %dOd1d2d3 =1010 pg(1,12)=13*pi/S; %dOd1d2d3 =1011 pg(1,10)=7*pi/4; %dOd1d2d3 =1001 pg(1,9)=15*pi/S; %dOd1d2d3 =1000 Ïo=========~=============
%Codage de phase 16-PSK %======================= p(l,l)=O; %d4(i-1) à d4(i-1)+3 =0000 p(1,2)=pi/S; %d4(i-1) à d4(i-l)+3 =0001 p(1,3)=pi/4; %d4(i-1) à d4(i-1)+3 =0010 p(1,4)=3*pi/S; %d4(i-1) à d4(i-1)+3 =0011 p(1,5)=pi/2; %d4(i-1) à d4(i-1)+3 =0100 p(1,6)=5*pi/S; %d4(i-1) à d4(i-1)+3 =0101 p(1,7)=3*pi/4; %d4(i-1) à d4(i-1)+3 =0110 p(1,S)=7*pi/S; %d4(i-1) à d4(i-1)+3 =0111 p(1,9)=pi; %d4(i-1) à d4(i-1)+3 =1000 p(1,10)=9*pi/8; %d4(i-l) à d4(i-1)+3 =1001 p(1,11)=5*pi/4; %d4(i-l) à d4(i-l)+3 =1010 p(1,12)=11*pi/S; Ïod4(i-1) à d4(i-1)+3 =1011 p(1,13)=3*pi/2; %d4(i-1) à d4(i-1)+3 =1100 p(1,14)=13*pi/S; %d4(i-1) à d4(i-l)+3 =1101 p(1,15)=7*pi/4; %d4(i-1) à d4(i-1)+3 =1110 p(1,16)=15*pi/S; Ïod4(i-1) à d4(i-1)+3 =1111 len=65000;%len = nombre d'octet data=randint(1,len*16); code= [J ; snr = [0:2:20J;
Annexe A. Code Matlab
for n=1:1en octet=data(16*(n-l)+1:16*n); dO=octet(l) ;dl=octet(2) ;d2=octet(3) ;d3=octet(4); d4=octet(5); d5=octet(6); d6=octet(7); d7=octet(8);d8=octet(9); d9=octet(10); dl0=octet(11); dll=octet(12); d12=octet(13); d13=octet(14); d14=octet(15); d15=octet(16); d0123=bin2dec(dec2base(8*dO,2))+bin2dec(dec2base(4*dl,2))+ bin2dec(dec2base(2*d2,2))+bin2dec(dec2base(d3,2)); d4567=bin2dec(dec2base(8*d4,2))+bin2dec(dec2base(4*d5,2))+ bin2dec(dec2base(2*d6,2))+bin2dec(dec2base(d7,2)); d8910ll=bin2dec(dec2base(8*d8,2))+bin2dec(dec2base(4*d9,2))+ bin2dec(dec2base(2*dl0,2))+bin2dec(dec2base(dll,2)); d12131415=bin2dec(dec2base(8*d12,2))+bin2dec(dec2base(4*d13,2))+ bin2dec(dec2base(2*d14,2))+bin2dec(dec2base(d15,2)); pl=pg(1,d0123+l); Ïodetermine pl p2=p(1,d4567+l); Ïodetermine p2 p3=p(1,d89l0ll+l); %determine p3 p4=p(1,d12l3l4l5+l); %determine p4
A.3.2 Démodulation et décodage
Ïo======================== ï.Démodulation et Décodage Ïo======================== for n=1:8:size(Rx,2) Rxcode=Rx(n:n+7); rO=Rxcode(8); rl=Rxcode(7); r2=Rxcode(6); r3=Rxcode(5); r4=Rxcode(4); r5=Rxcode(3); r6=Rxcode(2); r7=Rxcode(1); c2=(-rl*conj (rO)+r3*conj(r2)-r5*conj(r4)+r7*conj (r6))/ 4; c3=(r2*conj(rO)-r3*conj(rl)-r6*conj(r4)+r7*conj(r5))/4; c4=(-r4*conj(rO)-r5*conj(rl)+r6*conj(r2)+r7*conj(r3))/4; cl=(rO-rl*conj (c2)+r2*conj (c3)+r3*conj (c2)*conj (c3)-r4 *conj(c4)+ r5*conj (c2)*conj (c4)+r6*conj (c3)*conj (c4)+r7*conj (c2)* conj(c3)*conj(c4))/8; ccl=horzcat(ccl,cl); cc2=horz~at(cc2,c2);
cc3=horzcat(cc3,c3); cc4=horzcat(cc4,c4); end; phasell=[] ;phase22=[] ; phase33=[] ;phase44=[]; Ïo=====================~==============
%Estimation de la valeur de la phasel %==================================== for i=1:1en al(i)=real(ccl(i)); bl(i)=imag(ccl(i)); if al(i)<O pl_est=atan(bl(i)/al(i))+pi; else pl_est=atan(bl(i)/al(i)); end;
92
· Annexe A. Code Matlab
if p1_est<0 p1_est=2*pi+p1_est; else p1_est=p1_est; end; pha1=[0 pi/8 pi/4 3*pi/8 pi/2 5*pi/8 3*pi/4 7*pi/8 pi 9*pi/8 5*pi/4 11*pi/8 3*pi/2 13*pi/8 7*pi/4 15*pi/8 2*pi]; [Y,I]=min(abs(pha1-p1_est»; if 1==1 phase1=0; elseif 1==2 phase1=pi/8; elseif 1==3
phase1=pi/4; elseif 1==4 phase1=3*pi/8; elseif 1==5 phase1=pi/2; elseif 1==6 phase1=5*pi/8; elseif 1==7 phase1=3*pi/4; elseif 1==8 phase1=7*pi/8; elseif 1==9 phase1=pi; elseif 1==10 phase1=9*pi/8; elseif 1==11 phase1=5*pi/4; elseif 1==12 phase1=11*pi/8; elseif 1==13 phase1=3*pi/2; elseif 1==14 phase1=13*pi/8; elseif 1==15 phase1=7*pi/4; elseif 1==16 phase1=15*pi/8; elseif 1==17 phase1=0; end; phase11=horzcat(phase11,phase1); end; %==================================== %Estimation de la valeur de la phase2 %==================================== for i=l:len a2(i)=real(cc2(i»; b2(i)=imag(cc2(i»; if a2(i)<0 p2_est=atan(b2(i)/a2(i»+pi; else
93
Annexe A. Code Matlab
p2_est=atan(b2(i)/a2(i)); end; if p2_est<0 p2_est=2*pi+p2_est; else p2_est=p2_est; end; pha2=[0 pi/8 pi/4 3*pi/8 pi/2 5*pi/8 3*pi/4 7*pi/8 pi 9*pi/8 5*pi/4 11*pi/8 3*pi/2 13*pi/8 7*pi/4 15*pi/8 2*pi]; [Y,I]=min(abs(pha2-p2_est)); if 1==1 phase2=0; elseif I==2
phase2=pi/8; elseif 1==3 phase2=pi/4; elseif 1==4 phase2=3*pi/8; elseif 1==5 phase2=pi/2; elseif 1==6 phase2=5*pi/8; elseif 1==7 phase2=3*pi/4; elseif 1==8 phase2=7*pi/8; elseif 1==9 phase2=pi; elseif 1:;:=10 phase2=9*pi/8; elseif 1==11 phase2=5*pi/4; elseif 1==12 phase2=11*pi/8; elseif 1==13 phase2=3*pi/2; elseif 1==14 phase2=13*pi/8; elseif 1==15 phase2=7*pi/4; elseif 1==16 phase2=15*pi/8; elseif 1==17 phase2=0; end; phase22=horzcat(phase22,phase2); end; %==================================== ï.Estimation de la valeur de la phase3 %==================================== for i=l:len a3(i)=real(cc3(i)); b3(i)=imag(cc3(i)); if a3(i)<0
94
Annexe A. Code Matlab
p3_est=atan(b3(i)/a3(i))+pi; else p3_est=atan(b3(i)/a3(i)); end; if p3_est<0 p3_est=2*pi+p3_est; else p3_est=p3_est; end; pha3=[0 pi/8 pi/4 3*pi/8 pi/2 5*pi/8 3*pi/4 7*pi/8 pi 9*pi/8 5*pi/4 11*pi/8 3*pi/2 13*pi/8 7*pi/4 15*pi/8 2*pi]; [Y,1]=min(abs(pha3-p3_est)); if I==l phase3=0; elseif 1==2 phase3=pi/8; elseif 1==3 phase3=pi/4; elseif 1==4 phase3=3*pi/8; elseif 1==5 phase3=pi/2; elsèif 1==6 phase3=5*pi/8; elseif 1==7 phase3=3*pi/4; elseif 1==8 phase3=7*pi/8; elseif 1==9 phase3=pi; elseif 1==10 phase3=9*pi/8; elseif 1==11 phase3=5*pi/4; elseif 1==12 phase3=11*pi/8; elseif 1==13 phase3=3*pi/2; elseif 1==14 phase3=13*pi/8; elseif 1==15 phase3=7*pi/4; elseif 1==16 phase3=15*pi/8; elseif 1==17 phase3=0; end; phase33=horzcat(phase33,phase3); end; Ïo==================================== ÏoEstimation de la valeur de la phase4 Ïo==================================== for i=l:len a4(i)=real(cc4(i));
95
Annexe A. Code Matlab '-
b4(i)=imag(cc4(i»; if a4(i)<O p4_est=atan(b4(i)/a4(i»+pi; else p4_est=atan(b4(i)/a4(i»; end; if p4_est<0 p4_est=2*pi+p4_est; else · p4_est=p4_est; end; pha4=[O pi/8 pi/4 3*pi/8 pi/2 5*pi/8 3*pi/4 7*pi/8 pi 9*pi/8 5*pi/4 11*pi/8 3*pi/2 13*pi/8 7*pi/4 15*pi/8 2*pi]; [Y,1]=min(abs(pha4-p4_est»; if 1==1 phase4=O; elseif 1==2 phase4=pi/8; elseif 1==3 phase4=pi/4; elseif 1==4 phase4=3*pi/8; elseif 1==5 phase4=pi/2; elseif 1==6 phase4=5*pi/8; elseif 1==7 phase4=3*pi/4; elseif 1==8 phase4=7*pi/8; elseif 1==9 phase4=pi; elseif 1==10 phase4=9*pi/8; elseif 1==11 phase4=5*pi/4; elseif 1==12 phase4=11*pi/8; elseif 1==13 phase4=3*pi/2; elseif 1==14 phase4=13*pi/8; elseif 1==15 phase4=7*pi/4; elseif 1==16 phase4=15*pi/8; elseif 1==17 phase4=0; end; phase44=horzcat(phase44,phase4); end; for i=1:1en Ïo============================== ï.décodage des bits dO,d1,d2,d3
96
Annexe A. Code Matlab
ï.============================== if phase11(i)==0 rxdata=horzcat(rxdata,[O 0 0 0]); elseif phase11(i)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1]); elseif phase11(i)==pi/4 rxdata=horzcat(rxdata,[O 0 1 1]); elseif phase11(i)==3*pi/8 rxdata=horzcat(rxdata,[O 0 1 0]); elseif phase11(i)==pi/2 rxdata=horzcat(rxdata,[O 1 0]); elseif phase11(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 1 1]) ;
elseif phase11(i)==3*pi/4 rxdata=horzcat(rxdata,[O 1 0 1] ) ; elseif phase11(i)==7*pi/8 rxdata=horzcat(rxdata,[O 1 0 0]) ; elseif phase11(i)==pi rxdata=horzcat(rxdata,[l 1 0 0]) ; elseif phase11(i)==9*pi/8 rxdata=horzcat(rxdata,[l 1 0 1]) ; elseif phasell(i)==5*pi/4 rxdata=horzcat(rxdata,[l 1 1 1]) ; elseif phasell(i)==11*pi/8 rxdata=horzcat(rxdata,[l 1 1 0]) ; elseif phasel1(i)==3*pi/2 rxdata=horzcat(rxdata,[10 1 0]) ; elseif phase11(i)==13*pi/8 rxdata=horzcat(rxdata,[10 1 1]) ; elseif phase11(i)==7*pi/4 rxdata=horzcat(rxdata,[10 0 1] ) ; elseif phase11(i)==15*pi/8 rxdata=horzcat (rxdata, [1 0 0 0]) ; end; %============================== ï.décodage des bits d4,d5,d6,d7 %============================== if phase22(i)==0 rxdata=horzcat(rxdata,[O 0 0 0]); elseif phase22(i)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1]); elseif phase22(i)==pi/4 rxdata=horzcat(rxdata,[O 0 1 0]); elseif phase22(i)==3*pi/8 rxdata=horzcat(rxdata,[O 0 1 1]); elseif phase22(i)==pi/2 rxdata=horzcat(rxdata,[O 100]); elseif phase22(i)==5*pi/8 rXdata=horzcat(rxdata,[O 101]); elseif phase22(i)==3*pi/4 rxdata=horzcat (rxdata, [0- 1 1 0]); elseif phase22(i)==7*pi/8 rxdata=horzcat(rxdata,[O 1 1 1]); elseif phase22(i)==pi
97
Annexe A. Code Matlab 98
rxdata=horzcat(rxdata,[l 000]); elseif phase22(i)==9*pi/8 rxdata=horzcat(rxdata,[l 001]);
~ elseif phase22(i)==5*pi/4 rxdata=horzcat(rxdata,[10 1 0]); elseif phase22(i)==11*pi/8 rxdata=horzcat(rxdata,[1011]); elseif phase22(i)==3*pi/2 rxdata=horzcat(rxdata,[l 100]); elseif phase22(i)==13*pi/8 rxdata=horzcat(rxdata,[l 101]); elseif phase22(i)==7*pi/4 rxdata=horzcatCrxdata,[ll 1 0]); elseif phase22(i)==15*pi/8 rxdata=horzcatCrxdata,[l 1 1 1]); end; %=============================== ï.décodage des bits d8,d9,dl0,dll Ïe=============================== if phase33Ci)==0 rxdata=horzcatCrxdata,[O 0 0 0]); elseif phase33(i)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1]); elseif phase33(i)==pi/4 rxdata=horzcat(rxdata,[O 0 1 0]); elseif phase33(i)==3*pi/8 rxdata=horzcat(rxdata,[O 0 1 1]); elseif phase33(i)==pi/2 rxdata=horzcat(rxdata,[O 1 -0 0]); elseif phase33(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 0 1]); elseif phase33(i)==3*pi/4 rxdata=horzcat(rxdata,[O 1 1 0]); elseif phase33(i)==7*pi/8 rxdata=horzcat(rxdata, [0 1 1 1]); elseif phase33(i)==pi rxdata~horzcat(rxdata,[l 000]); elseif phase33(i)==9*pi/8 rxdata=horzcat(rxdata, [1 001]); elseif phase33(i)==5*pi/4 rxdata=horzcat(rxdata,[10 1 0]); elseif phase33(i)==11*pi/8 rxdata=horzcat(rxdata,[1011J); elseif phase33(i)==3*pi/2 rxdata=horzcat (rxdata, [1 1 0 OJ); elseif phase33(i)==13*pi/8 rxdata=horzcat(rxdata,[l 1 0 lJ); elseif phase33(i)==7*pi/4 rxdata=horzcat(rxdata,[l 1 10J); elseif phase33(i)==15*pi/8 rxdata=horzcat(rxdata,[ll llJ); end; Ïe================================== ï.décodage des bits d12,d13,d14,d15
Annexe A. Code Matlab
Ï,================================= if phase44Ci)==0 rxdata=horzcat(rxdata,[O 0 0 0]); elseif phase44Ci)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1]); elseif phase44Ci)==pi/4 rxdata=horzcatCrxdata,[O 0 10]); elseif phase44Ci)==3*pi/8 rxdata=horzcatCrxdata,[O 0 11]); elseif phase44(i)==pi/2 rxdata=horzcatCrxdata,[O 1 0 0]); elseif phase44(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 0 1]) ; elseif phase44Ci)==3*pi/4 rxdata=horzcatCrxdata,[O 1 1 0]) ; elseif phase44(i)==7*pi/8 rxdata=horzcat(rxdata,[O 1 1 1]) ; elseif phase44(i)==pi rxdata=horzcatCrxdata,[l 0 0 0]) ; elseif phase44(i)==9*pi/8 rxdata=horzcatCrxdata,[10 0 1]) ; elseif phase44(i)==5*pi/4 rxdata=horzcat(rxdata,[10 1 0]) ; elseif phase44(i)==1~*pi/8 rxdata=horzcatCrxdata,[10 1 1]) ; elseif phase44(i)==3*pi/2 rxdata=horzcat(rxdata,[l 1 0 0]) ; elseif phase44(i)==13*pi/8 rxdata=horzcatCrxdata, [1 1 0 1]) ; elseif phase44(i)==7*pi/4 rxdata=horzcatCrxdata,[l 1 1 0]) ; elseif phase44(i)==15*pi/8 rxdata=horzcat(rxdata,[l 1 1 1]) ; end; end;
99
A.4 Code Matlab pour la modulation CCK à 27.5 .Mbps
A.4.1
clear aIl; cIe;
Modulation codée CCK à 27.5 Mbps
Ï,=========================== Ï,Codage gray de phase 32-PSK %===========================
Annexe A. Code Matlab
pg(l,l)=O; %dOd1d2d3d4 =00000 pg(1,17)=pi/16; %dOd1d2d3d4 =10000 pg(1,25)=pi/8; %dOd1d2d3d4 =11000 pg(1,29)=3*pi/16; %dOd1d2d3d4 =11100 pg(1,31)=pi/4; %dOd1d2d3d4 =11110 pg(1,32)=5*pi/16; %dOd1d2d3d4 =11111 pg(1,16)=3*pi/8; %dOd1d2d3d4 =01111 pg(1,15)=7*pi/16; %dOd1d2d3d4 =01110 pg(1,7)=pi/2; %dOd1d2d3d4 =00110 pg(1,3)=9*pi/16; %dOd1d2d3d4 =00010 pg(1,4)=5*pi/8; %dOd1d2d3d4 =00011 pg(1,12)=11*pi/16; %dOd1d2d3d4 =01011 pg(1,10)=3*pi/4j %dOd1d2d3d4 =01001
pg(1,2)=13*pi/16; %dOd1d2d3d4 =00001 pg(1,6)=7*pi/8; %dOd1d2d3d4 =00101 pg(1,8)=15*pi/16; %dOd1d2d3d4 =00111 pg(1,24)=pi; %dOd1d2d3d4 =10111 pg(1,22)=17*pi/16; %dOd1d2d3d4 =10101 pg(1,18)=9*pi/8; %dOd1d2d3d4 =10001 pg(1,26)=19*pi/16; %dOd1d2d3d4 =11001 pg(1,30)=5*pi/4; %dOd1d2d3d4 =11101 pg(1,14)=21*pi/16; %dOd1d2d3d4 =01101 pg(1,13)=11*pi/8; %dOd1d2d3d4 =01100 pg(1,9)=23*pi/16; %dOd1d2d3d4 =01000 pg(1,11)=3*pi/2; %dOd1d2d3d4 =01010 pg(1,27)=25*pi/16; %dOd1d2d3d4 =11010 pg(1,28)=13*pi/8; %dOd1d2d3d4 =11011 pg(1,20)=27*pi/16; %dOd1d2d3d4 =10011 pg(1,19)=7*pi/4; %dOd1d2d3d4 =10010 pg(1,23)=29*pi/16; %dOd1d2d3d4 =10110 pg(1,21)=15*pi/8; %dOd1d2d3d4 =10100 pg(1,5)=31*pi/16; %dOd1d2d3d4 =00100 %========================= %Codage de phase 32-PSK %========================= p(l,l)=O; %d5(i-1) à d5(i-1)+4 =00000 p(1,2)=pi/16; %d5(i-1) à d5(i-1)+4 =00001 p(1,3)=pi/8; %d5(i-1) à d5(i-1)+4 =00010 p(1,4)=3*pi/16; %d5(i-1) à d5(i-1)+4 =00011 p(1,5)=pi/4; %d5(i-1) à d5(i-1)+4 =00100 p(1,6)=5*pi/16; %d5(i-1) à d5(i-1)+4 =00101 p(1,7)=3*pi/8; %d5(i-1) à d5(i-1)+4 =00110 p(1~8)=7*pi/16; %d5(i-1) à d5(i-1)+4 =00111 p(1,9)=pi/2; %d5(i-1) à d5(i-1)+4 =01000 p(1,10)=9*pi/16; %d5(i-1) à d5(i-1)+4 =01001 p(1,11)=5*pi/8; %d5(i-1)à d5(i-1)+4 =01010 p(1,12)=11*pi/16; %d5(i-1) à d5(i-1)+4 =01011 p(1,13)=3*pi/4; %d5(i-1) à d5(i-1)+4 =01100 p(1,14)=13*pi/16; %d5(i-1) à d5(i-1)+4 =01101 p(1,15)=7*pi/8; %d5(i-1) à d5(i-1)+4 =01110 p(1,16)=15*pi/16; %d5(i-1) à d5(i-1)+4 =01111 p(1,17)=pi; %d5(i-1) à d5(i-1)+4 =10000 p(1,18)=17*pi/16; %d5(i-l) à d5(i-1)+4 =10001 p(1,19)=9*pi/8; %d5(i-1) à d5(i-1)+4 =10010
100
Annexe A . Code Matlab
p(1,20)=19*pi/16; ï.d5(i-1) à d5(i-1)+4 =10011 p(1,21)=5*pi/4;%d5(i-1) à d5(i-l)+4 =10100 p(1,22)=21*pi/16; %d5(i-1) à d5(i-1)+4 =10101 p(1,23)=11*pi/8; %d5(i-l) à d5(i-l)+4 =10110 p(1,24)=23*pi/16; %d5(i-l) à d5(i-l)+4 =10111 p(1,25)=3*pi/2; %d5(i-l) à d5(i-1)+4 =11000 p(1,26)=25*pi/16; ï.d5(i-1) à d5(i-l)+4 =11001 p(1,27)=13*pi/8; %d5(i-l) à d5(i-l)+4 =11010 p(1,28)=27*pi/16; %d5(i-l) à d5(i-l)+4 =11011 p(1,29)=7*pi/4; ï.d5(i-l) à d5(i~ 1)+4 =11100 p(1,30)=29*pi/16; %d5(i-l) à d5(i-1)+4 =11101 p(1,31)=15*pi/8; %d5(i-l) à d5(i-l)+4 =11110 p(1,32)=31*pi/16; %d5(i- 1) à d5(i-1)+4 =11111 len=50000;ï.len = nombre d'octet data=randint(1,len*20); code=[J; snr = [0:2:24J; for n=1:1en octet=data(20* (n-l) +1: 20*n) ;
101
dO=octet(l) ;dl=octet(2) ; d2=octet (3) ;d3=octet(4); d4=octet(5); d5=octet(6); d6=octet(7) ; d7=octet(8); d8=octet(9); d9=octet(10); dl0=octet(11); dl1=octet(12); d12=octet(13); d13=octet(14); d14=octet(15); d15=octet(16);d16=octet(17); d17=octet(18); d18=octet(19); d19=octet(20); d01234=bin2dec(dec2base(16*dO,2»+bin2dec(dec2base(8*d1,2»+bin2dec(dec2base(4*d2,2»+ bin2dec(dec2base(2*d3,2»+bin2dec(dec2base(d4,2»; d56789=bin2dec(dec2base(16*d5,2»+bin2dec(dec2base(8*d6,2»+ bin2dec(dec2base(4*d7,2»+bin2dec(dec2base(2*d8,2»+bin2dec(dec2base(d9,2»; dl011121314=bin2dec(dec2base(16*d10,2»+bin2dec(dec2base(8*d11,2»+ bin2dec(dec2base(4*d12,2»+bin2dec(dec2base(2*d13,2»+bin2decCdec2base(d14,2»; d1516171819=bin2decCdec2baseC16*d15,2»+bin2decCdec2base(8*d16,2»+ bin2dec(dec2base(4*d17,2»+bin2dec(dec2base(2*d18,2»+bin2decCdec2baseCd19,2»; p1=pg(1,d01234+1); %determine pl p2=p(1,d56789+1); %determine p2 ' p3=p(1,dl011121314+1); %determine p3 p4=p(1,d1516171819+1); %determine p4
A.4.2 Démodulation et décodage
%======================== %Démodulation et Décodage %======================== for n=1:8:size(Rx,2) Rxcode=Rx(n:n+7); rO=Rxcode(8); r1=Rxcode(7); r2=Rxcode(6); r3=Rxcode(5); r4=Rxcode(4); r5=Rxcode(3); r6=Rxcode(2); r7=Rxcode(1); c2=(-r1*conj (rO)+r3*conj (r2)-r5*conj (r4)+r7*conj (r6»/ 4; c3=(r2*conj(rO)-r3*conj (r1)-r6*conj (r4)+r7*conj (r5»/4 ; c4=(-r4*conj (rO)-r5*conj (r1)+r6*conj(r2)+r7*conj(r3»/ 4; cl=(rO-r1*conj (c2)+r2*conj (c3)+r3*conj(c2)*conj (c3)-r4 *conj(c4)+ r5*conjCc2)*conjCc4)+r6*conj(c3)*conj(c4)+r7*conj(c2)*conj(c3)*conj(c4»/8;
Annexe A. Code Matlab
cc1=horzcat(cc1,c1); cc2=horzcat(cc2,c2); cc3=horzcat(cc3,c3); cc4=horzcat(cc4,c4); end; phase11=[] ;phase22=[] ;phase33=[];phase44=[]; %==================================== ï.Estimation de la valeur de la phase1 %==================================== for i=l:len a1(i)=real(cc1(i)); b1(i)=imag(cc1(i)); if al(i)<O p1_est=atan(b1(i)/a1(i))+pi; else p1_est=atan(b1(i)/a1(i)); end; if p1_est<0 p1_est=2*pi+p1_est; else p1_est=p1_est; end;
102
pha1=[O pi/16 pi/8 3*pi/16 pi/4 5*pi/16 3*pi/8 7*pi/16 pi/2 9*pi/16 5*pi/8 11*pi/16 3*pi/4 13*pi/16 7*pi/8 15*pi/16 pi 17*pi/16 9*pi/8 19*pi/16 5*pi/4 21*pi/16 11*pi/8 23*pi/16 3*pi/2 25*pi/16 13*pi/8 27*pi/16 7*pi/4 29*pi/16 15*pi/8 31*pi/16 2*pi]; [Y,I]=min(abs(pha1-p1_est)); if 1==1 phase1=0; elseif 1==2 phase1=pi/16; elseif 1==3 phase1=pi/8; elseif 1==4 phase1=3*pi/16; elseif 1==5 phase1=pi/4; elseif 1==6 phase1=5*pi/16; elseif 1==7 phase1=3*pi/8; elseif 1==8 phase1=7*pi/16; elseif 1==9 phase1=pi/2; elseif 1==10 phase1=9*pi/16; elseif 1==11 phase1=5*pi/8; elseif 1==12 phase1=11*pi/16; elseif 1==13 phase1=3*pi/4; elseif 1==14 phase1=13*pi/16;
Annexe A. Code Matlab
elseif 1==15 phase1=7*pi/8; elseif 1==16 phase1=15*pi/16; elseif 1==17 phase1=pi; elseif 1==18 phase1=17*pi/16; elseif 1==19 phase1=9*pi/8; elseif 1==20 phase1=19*pi/16; elseif I==21 phase1=5*pi/4; elseif 1==22 phase1=21*pi/i6; elseif 1==23 phase1=11*pi/8; elseif 1==24 phase1=23*pi/16; elseif 1==25 phase1=3*pi/2; elseif 1==26 phase1=25*pi/16; elseif 1==27 phasel=13*pi/8; elseif 1==28 phase1=27*pi/16; elseif 1==29 phase1=7*pi/4; elseif 1==30 phase1=29*pi/16; elseif 1==31 phase1=15*pi/8; elseif 1==32 phase1=31*pi/16; elseif 1==33 phase1=0; end; phase11=horzcat(phase11,phase1); end; ï.==================================== ï.Estimation de la valeur de la phase2 ï.==================================== for i=1:len a2(i)=real(cc2(i)); b2(i)=imag(cc2(i)); if a2(i)<0 p2_est=at~(b2(i)/a2(i))+pi;
else p2_est=atan(b2(i)/a2(i)); end; if p2_est<0 p2_est=2*pi+p2_est;
103
Annexe A. Code Matlab
else p2_est=p2_est; end;
104
pha2=[0 pi/16 pi/8 3*pi/16 pi/4 5*pi/16 3*pi/8 7*pi/16 pi/2 9*pi/16 5*pi/8 11*pi/16 3*pi/4 13*pi/16 7*pi/8 15*pi/16 pi 17*pi/16 9*pi/8 19*pi/16 5*pi/4 21*pi/16 11*pi/8 23*pi/16 3*pi/2 25*pi/16 13*pi/8 27*pi/16 7*pi/4 29*pi/16 15*pi/8 31*pi/16 2*pi]; [Y,I]=min(abs(pha2-p2_est)); if 1==1 phase2=0; elseif 1==2 phase2=pi/16; elseif 1==3 phase2=pi/8;
elseif 1==4 phase2=3*pi/16; elseif 1==5 phase2=pi/4; elseif 1==6 phase2=5*pi/16; elseif 1==7 phase2=3*pi/8; elseif 1==8 phase2=7*pi/16; elseif 1==9 phase2=pi/2; elseif 1==10 phase2=9*pi/16; elseif 1==11 phase2=5*pi/8; elseif 1==12 phase2=11*pi/16; elseif 1==13 phase2=3*pi/4; elseif 1==14 phase2=13*pi/16; elseif 1==15 phase2=7*pi/8; elseif 1==16 phase2=15*pi/16; elseif 1==17 phase2=pi; elseif 1==18 phase2=17*pi/16; elseif 1==19 phase2=9*pi/8; elseif 1==20 phase2=19*pi/16; ' elseif 1==21 phase2=5*pi/4; elseif 1==22 phase2=21*pi/16; elseif 1==23 phase2=11*pi/8; elseif 1==24
Annoexe A. Code Matlab
phase2=23*pi/16; elseif 1==25 phase2=3*pi/2; elseif 1==26 phase2=25*pi/16; elseif 1==27 phase2=13*pi/8; elseif 1==28 phase2=27*pi/16; elseif 1==29 phase2=7*pi/4; elseif 1==30 phase2=29*pi/16; elseif 1==31 phase2=15*pi/8; elseif 1==32 phase2=31*pi/16; elseif 1==33 phase2=0; end; phase22=horzcat(phase22,phase2); end; Ïo==================================== ÏeEstimation de la valeur de la phase3 Ïo==================================== for i=l:len a3(i)=real(cc3(i)); b3(i)=imag(cc3(i)); if a3(i)<0 p3_est=atan(b3(i)/a3(i))+pi; else p3_est=atan(b3(i)/a3(i)); end; if p3_est<0 p3_est=2*pi+p3_est; else p3_est=p3_est; end;
105
pha3=[O pi/16 pi/8 3*pi/16 pi/4 5*pi/16 3*pi/8 7*pi/16 pi/2 9*pi/16 5*pi/8 11*pi/16 3*pi/4 13*pi/16 7*pi/8 15*pi/16 pi 17*pi/16 9*pi/8 19*pi/16 5*pi/4 21*pi/16 11*pi/8 23*pi/16 3*pi/2 25*pi/16 13*pi/8 27*pi/16 7*pi/4 29*pi/16 15*pi/8 31*pi/16 2*pi]; [Y,I]=min(abs(pha3-p3_est)); if 1==1 phase3=0; elseif 1==2 phase3=pi/16; elseif 1==3 phase3=pi/8; elseif 1==4 phase3=3*pi/16; elseif 1==5 phase3=pi/4; elseif 1==6 phase3=5*pi/16;
Annexe A. Code Matlab
elseif 1==7 phase3=3*pi/8; elseif 1==8 phase3=7*pi/16; elseif 1==9 phase3=pi/2; elseif 1==10 phase3=9*pi/16; elseif 1==11 phase3=5*pi/8; elseif 1==12 phase3=11*pi/16; elseif 1==13
phase3=3*pi/4; elseif 1==14 phase3=13*pi/16; elseif 1==15 phase3=7*pi/8; elseif 1==16 phase3=15*pi/16; elseif 1==17 phase3=pi; elseif 1==18 phase3=17*pi/16; elseif 1==19 phase3=9*pi/8; elseif 1==20 phase3=19*pi/16; elseif 1==21 phase3=5*pi/4; elseif 1==22 phase3=21*pi/16; elseif 1==23 phase3=11*pi/8; elseif 1==24 phase3=23*pi/16; elseif 1==25 phase3=3*pi/2; elseif 1==26 phase3=25*pi/16; elseif 1==27 phase3=13*pi/8; elseif 1==28 phase3=27*pi/16; elseif 1==29 phase3=7*pi/4; elseif 1==30 phase3=29*pi/16; elseif 1==31 phase3=15*pi/8; elseif 1==32 ' phase3=31*pi/16; elseif 1==33 phase3=0;
106
Annexe A. Code Matlab
end; phase33=horzcat(phase33,phase3); end; Ïo==================================== ÏoEstimation de la valeur de la phase4 ï.==================================== for i=1:len a4(i)=real(cc4(i)); b4(i)=imag(cc4(i)); if a4(i)<0 p4_est=atan(b4(i)/a4(i))+pi; else p4_est=atan(b4(i)!a4(i)); end; if p4_est<0 p4_est=2*pi+p4_est; else · p4_est=p4_est; end;
.107
pha4=[0 pi/16 pi/8 3*pi/16 pi/4 5*pi/16 3*pi/8 7*pi/16 pi/2 9*pi/16 5*pi/8 11*pi/16 3*pi/4 13*pi/16 7*pi/8 15*pi/16 pi 17*pi/16 9*pi/8 19*pi/16 5*pi/4 21*pi/16 11*pi/8 23*pi/16 3*pi/2 25*pi/16 13*pi/8 27*pi/16 7*pi/4 29*pi/16 15*pi/8 31*pi/16 2*pi]; [Y, 1] =min(abs (pha4-p4_est)) ; if 1==1 phase4=0; elseif 1==2 phase4=pi/16; elseif 1==3 phase4=pi/8; elseif 1==4 phase4=3*pi/16; elseif 1==5 phase4=pi/4; elseif 1==6 phase4=5*pi/16; elseif 1==7 phase4=3*pi/8; elseif 1==8 phase4=7*pi/16; elseif 1==9 phase4=pi/2; elseif 1==10 phase4=9*pi/16; elseif 1==11 phase4=5*pi/8; elseif 1==12 phase4=11*pi/16; elseif 1==13 phase4=3*pi/4; elseif 1==14 phase4=13*pi/16; elseif 1==15 phase4=7*pi/8; elseif 1==16
Annexe A. Code Matlab
phase4=15*pi/16; elseif 1==17 phase4=pi; elseif 1==18 phase4=17*pi/16; elseif 1==19 phase4=9*pi/8; elseif 1==20 phase4=19*pi/16; elseif 1==21 phase4=5*pi/4; elseif 1==22 phase4=21*pi/16; elseif 1==23 phase4=11*pi/8; elseif 1==24 phase4=23*pi/16; elseif 1==25 phase4=3*pi/2; elseif 1==26 phase4=25*pi/16; elseif 1==27 phase4=13*pi/8; elseif 1==28 phase4=27*pi/16; elseif 1==29 phase4=7*pi/4; elseif 1==30 phase4=29*pi/16; elseif 1==31 phase4=15*pi/8; elseif 1==32 phase4=31*pi/16; elseif 1==33 phase4=0; end; phase44=horzcat(phase44,phase4); end; for i=1:1en Ïo================================= ï.décodage des bits dO,dl,d2,d3,d4 Ïo================================= if phasell(i)==O rxdata=horzcat(rxdata, [0 0 0 0 0]); elseif phasell(i)==pi/16 rxdata=horzcat(rxdata,[1 0 000]); elseif phasell(i)==pi/8 rXdata=horzcat(rxdata, [1 1 000]); elseif phasell(i)==3*pi/16 rXdata=horzcat(rxdata,[ll 100]); elseif phasell(i)==pi/4 rxdata=horzcatCrxdata, [1 1 1 1 0]); elseif phasell(i)==5*pi/16 rxdata=horzcatCrxdata,[ll 1 1 1]);
108
Annexe A. Code Matlab
elseif phasell(i)==3*pi/8 rxdata=horzcat(rxdata,[O 1 1 1 lJ); elseif phasell(i)==7*pi/16 rxdata=horzcat(rxdata,[O 11 10]); elseif phasell(i)==pi/2 rxdata=horzcat(rxdata,[O 0 1 10]); elseif phasell(i)==9*pi/16 rxdata=horzcat(rxdata,[O 0 0 10J); elseif phasell(i)==5*pi/8 rxdata=horzcat(rxdata,[O 0 0 1 lJ); elseif phasell(i)==11*pi/16 rxdata=horzcat(rxdata,[O 1 0 1 lJ); elseif phasell(i)==3*pi/4
rxdata=horzcat(rxdata,[O 100 1]); elseif phase11(i)==13*pi/16 rxdata=horzcat(rxdata,[O 0 0 0 1]); elseif phasell(i)==7*pi/8 ' rxdata=horzcat(rxdata,[O 0 101]); elseif phase11(i)==15*pi/16 rxdata=horzcat(rxdata, [0 0 1 1 lJ); elseif phasel1(i)==pi rxdata=horzcat(rxdata, [1 0 1 1 1J); elseif phasell(i)==17*pi/16 rxdata=horzcat(rxdata,[10 101]); elseif phasel1(i)==9*pi/8 rxdata=horzcat(rxdata,[l 000 lJ); elseif phasell(i)==19*pi/16 rxdata=horzcat(rxdata, [1 100 1]); elseif phasel1(i)==5*pi/4 rxdata=horzcat(rxdata,[ll 101]); elseif ,phasell(i)==21*pi/16 rxdata=horzcat(rxdata,[O 11 0 1J); elseif phasel1(i)==11*pi/8 rxdata=horzcat (rxdata, [0 1 1 0 0]); elseif phasell(i)==23*pi/16 rxdata=horzcat(rxdata,[O 1 000]); elseif phasell(i)==3*pi/2 rxdata=horzcat(rxdata,[O 1 0 10J); elseif phase11(i)==25*pi/16 rxdata=horzcat(rxdata, [1 1 0 10J); elseif phasell(i)==13*pi/8 rxdata=horzcat(rxdata,[l 1011]); elseif phase11(i)==27*pi/19 rxdata=horzcat(rxdata, [1 0 0 1 lJ); elseif phasell(i)==7*pi/4 rxdata=horzcat(rxdata,[l 0 0 1 OJ); elseif phase11(i)==29*pi/16 rxdata=horzcat(rxdata,[101 10J); elseif phasel1(i)==15*pi/8 rxdata=horzcat(rxdat~,[l 0 100]); elseif phasel1(i)==31*pi/16 rxdata=horzcat(rxdata,[O 0 1 OOJ); end; %================================
109
Annexe A. Code Matlab
%décodage des bits d5,d6,d7,d8,d9 Ïe================================ if phase22(i)==0 rxdata=horzcatCrxdata, [0 000 0]); elseif phase22(i)==pi/16 rxdata=horzcat(rxdata,[O 0 001]); elseif phase22(i)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1 0]); elseif phase22(i)==3*pi/16 rXdata=horzcat(rxdata,[O 0 0 1 1]); elseif phase22(i)==pi/4 rxdata=horzcat(rxdata,[O 0 100]); elseif phase22(i)==5*pi/16
rxdata=horzcat(rxdata,[O 0 101]); elseif phase22Ci)==3*pi/8 rxdata=horzcat(rxdata,[O 0 1 1 0]); elseif phase22(i)==7*pi/16 rxdata=horzcat(rxdata, [0 0 1 1 1]); elseif phase22(i)==pi/2 rxdata=horzcatCrxdata,[O 1 000]); elseif phase22(i)==9*pi/16 rxdata=horzcat(rxdata,[O 100 1]); elseif phase22(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 0 1 0]); elseif phase22(i)==11*pi/16 rxdata=horzcatCrxdata,[O 1 0 1 1]); elseif phase22(i)==3*pi/4 rxdata=horzcat(rxdata,[O 1 100]); elseif phase22(i)==13*pi/16 . rxdata=horzcat(rxdata,[O 11 0 1]); elseif phase22(i)==7*pi/8 rxdata=horzcat(rxdata, [0 1 1 1 0]); elseif phase22(i)==15*pi/16 rxdata=horzcat(rxdata, [0 1 1 1 1]); elseif phase22(i)==pi rxdata=horzcatCrxdata, [1 0 0 0 0]); elseif phase22(i)==17*pi/16 rxdata=horzcat(rxdata,[l 000 1]); elseif phase22(i)==9*pi/8 rxdata=horzcat(rxdata,[l 0 0 10]); elseif phase22(i)==19*pi/16 rxdata=horzcat(rxdata, [1 0 0 1 1]); elseif phase22(i)==5*pi/4 rxdata=horzcat(rxdata,[10 100]); elseif phase22(i)==21*pi/16 rxdata=horzcat(rxdata,[10 101]); elseif phase22Ci)==11*pi/8 rxdata=horzcat(rxdata, [1 0 1 1 0]); elseif phase22(i)==23*pi/16 rxdata=horzcat(rxdata, [1 0 1 1 1]); elseif phase22(i)==3*pi/2 rxdata=horzcatCrxdata,[l 100 0]); elseif phase22(i)==25*pi/16 rxdata=horzcatCrxdata,[l 100 1]);
110
Annexe A. Code Matlab
elseif phase22(i)==13*pi/8 rxdata=horzcat(rxdata,[l 1 0 1 0]) ; elseif phase22(i)==27*pi/16 rxdata=horzcat(rxdata,[l 1 0 1 1]) ; elseif phase22(i)==7*pi/4 rxdata=horzcat(rxdata, [1 1 1 0 0]) ; elseif phase22(i)==29*pi/16 rxdata=horzcat(rxdata,[l 1 1 0 1] ) ; elseif phase22(i)==15*pi/8 rxdata=horzcat(rxdata,[l 1 1 0]) ; elseif phase22(i)==31*pi/16 rxdata=horzcat(rxdata,[l 1 1 1 1] ) ; end;
ï.===================================== ï.décodage des bits dl0,dll,d12,d13,d14 ï.===================================== if phase33(i)==0 rxdata=horzcat(rxdata, [0 0 000]); elseif phase33(i)==pi/16 rxdata=horzcat(rxdata,[O 0 001]); elseif phase33(i)==pi/8 rxdata=horzcat(rxdata, [0 0 0 1 0]); elseif phase33(i)==3*pi/16 rxdata=horzcat(rxdata,[O 0 0 1 1]); elseif phase33(i)==pi/4 rxdata=horzcat(rxdata,[O 0 100]); elseif phase33(i)==5*pi/16 rxdata=horzcat(rxdata, [0 0 101]); elseif phase33(i)==3*pi/8 rxdata=horzcat(rxdata,[O 0 110]); elseif phase33(i)==7*pi/16 rxdata=horzcat(rxdata,[O 0 1 1 1]); elseif phase33(i)==pi/2 , rxdata=horzcat(rxdata,[O 1 000]); elseif phase33(i)==9*pi/16 rxdata=horzcat(rxdata,[O 1 001]); elseif phase33(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 0 1 0]); elseif phase33(i)==11*pi/16 rXdata=horzcat(rxdata,[O 1 0 11]); elseif phase33(i)==3*pi/4 rxdata=horzcat(rxdata,[O 11 0 0]); elseif phase33(i)==13*pi/16 rxdata=horzcat(rxdata, [0 1 101]); elseif phase33(i)==7*pi/8 rxdata=horzcat(rxdata,[O 1 110]); elseif phase33(i)==15*pi/16 rxdata=horzcat(rxdata,[O 1 111]); elseif phase33(i)==pi rxdata=horzcat(rxdata,[l 0 0 0 0]); elseif phase33(i)==17*pi/16 rxdata=horzcat(rxdata,[l 0 0 0 1]); elseif phase33(i)==9*pi/8 rxdata=horzcat(rxdata, [1 0 0 1 0]);
111
Annexe A. Code Matlab
elseif phase33(i)==19*pi/16 rxdata=horzcat(rxdata,[1 0 0 1 1]) ; elseif phase33(i)==5*pi/4 rXdata=horzcat(rxdata,[10 1 0 0]) ; elseif phase33(i)==21*pi/16 rxdata=horzcat(rxdata,[10 1 0 1]) ; elseif phase33(i)==11*pi/8 rxdata=horzcat(rxdata,[10 1 1 0]) ; elseif phase33(i)==23*pi/16 rxdata=horzcat(rxdata,[10 1 1 1]) ; elseif phase33(i)==3*pi/2 rxdata=horzcat(rxdata,[l 1 0 0 0]) ; elseif phase33(i)==25*pi/16 rxdata=horzcat(rxdata,[l 100 1]) ; elseif phase33(i)==13*pi/8 rxdata=horzcat(rxdata,[l 1 0 1 0]) ; elseif phase33(i)==27*pi/16 rxdata=horzcat(rxdata,[l 1 0 1 1]) ; elseif phase33(i)==7*pi/4 rXdata=horzcat(rxdata,[l 1 1 0 0]) ; elseif phase33(i)==29*pi/16 rxdata=horzcat(rxdata t [11 1 0 1]) ; elseif phase33(i)==15*pi/8 rxdata=horzcat(rxdata,[1 1 1 1 0]) ; elseif phase33(i)==31*pi/16 rxdata=horzcat(rxdata, [1 1 1 1 1] ) ; end; ï.====================================== ï.décodage des bitsd15,d16,d17,d18,d19 ï.===================================== if phase44(i)==0 rxdata=horzcat(rxdata,[O 0 000]); elseif phase44(i)==pi/16 rxdata=horzcat(rxdata,[O 0 001]); elseif phase44(i)==pi/8 rxdata=horzcat(rxdata,[O 0 0 1 0]); elseif phase44(i)==3*pi/16 rxdata=horzcat(rxdata,[O 0 0 1 1]); elseif phase44(i)==pi/4 rxdata=horzcat(rxdata,[O 0 i 0 0]); elseif phase44(i)==5*pi/16 rxdata=horzcat(rxdata,[O 0 101]); elseif phase44(i)==3*pi/8 rxdata=horzcat(rxdata,[O 0 10]); elseif phase44(i)==7*pi/16 rxdata=horzcat(rxdata,[O Ù 1 1 1]); elseif phase44(i)==pi/2 rxdata=horzcat(rxdata,[O 100 0]); elseif phase44(i)==9*pi/16 rxdata=horzcat(rxdata,[O 100 1]); elseif phase44(i)==5*pi/8 rxdata=horzcat(rxdata,[O 1 0 1 0]); elseif phase44(i)==11*pi/16 rxdata=horzcat(rxdata,[O 1 0 11]);
112
Annexe A. Code Matlab 113
elseif phase44(i)==3*pi/4 rxdata=horzcat(rxdata, [0 1 1 0 0]) ; elseif phase44(i)==13*pi/16 rxdata=horzcat(rxdata,[O 1 1 0 1]) ; elseif phase44(i)==7*pi/8 rxdata=horzcat(rxdata,[O 1 1 1 0]) ; elseif phase44(i)==15*pi/16 rxdata=horzcat(rxdata,[O 1 1 1 1] ) ; elseif phase44(i)==pi rxdata=horzcat(rxdata, [1 000 0]) ; elseif phase44(i)==17*pi/16 rxdata=horzcat(rxdata,[l 0 0 0 1] ) ; elseif phase44(i)==9*pi/8 rxdata=horzcat(rxdata,[10 0 1 0] ) ; elseif phase44(i)==19*pi/16 rxdata=horzcat(rxdata,[100 1 1]) ; elseif phase44(i)==5*pi/4 rxdata=horzcat(rxdata,[10 1 0 0]) ; elseif phase44(i)==21*pi/16 rxdata=horzcatCrxdata, [1 0 1 0 1]) ; elseif phase44Ci)==11*pi/8 rxdata=horzcat (rxdata, [1 0 1 1 0]) ; elseif phase44(i)==23*pi/16 rXdata=horzcatCrxdata,[10 1 1 1]) ; elseif phase44(i)==3*pi/2 rxdata=horzcatCrxdata,[l 1 o 0 0]) ; elseif phase44Ci)==25*pi/16 rxdata=horzcatCrxdata,[l 100 1] ) ; elseif phase44(i)==13*pi/8 rxdata=horzcat(rxdata, [1 1 0 1 0]) ; elseif phase44(i)==27*pi/16 rxdata=horzcat(rxdata,[l 1 0 1 1] ) ; elseif p~ase44(i)==7*pi/4 rxdata=horzcat(rxdata,[l 1 1 0 0]) ; elseif phase44(i)==29*pi/16 rxdata=horzcat(rxdata,[l 1 1 0 1]) ; elseif phase44(i)==15*pi/8 rxdata=horzcat(rxdata,[l 1 1 1 0]) ; elseif phase44(i)==31*pi/16 rxdata=horzcatCrxdata,[l 1 1 1 1]) ; end; end;
top related