Vous êtes sur la page 1sur 52

INTRODUCTION A LEGALISATION EN

COMMUNICATIONS NUMERIQUES






ENSIL ELT 3
me
anne -2012/2013



Anne JULIEN-VERGONJANNE
2

Table des matires

CHAPITRE I ........ Dfinition de lgalisation ................................................ 3
1. ..... Introduction ............................................................................................................... 3
2. .... La chane de transmission ......................................................................................... 3
2.1 Rappel : Critre de Nyquist ................................................................................................. 3
2.1 Modle discret quivalent .................................................................................................... 5
3. .... Classification ............................................................................................................. 7
4. .... Performances ............................................................................................................. 8
CHAPITRE II ...... Egalisation Linaire ........................................................ 10
1. ..... Introduction ............................................................................................................. 10
2. .... Critre du Zro Forcing (ZF) ............................................................................... 12
2.1 Enonc du critre ZF......................................................................................................... 12
2.2 Rapport signal bruit ........................................................................................................ 13
2.3 Mise en uvre pratique du critre ZF ............................................................................... 14
2.4 Exercice sur le ZF ............................................................................................................. 16
2.5 Utilisation de MATLAB .................................................................................................... 16
2.6 Conclusion ......................................................................................................................... 17
3. .... Egaliseur MMSE ( Minimum Mean Square Error ) ........................................... 17
3.1 Principe .............................................................................................................................. 17
3.2 Mise en oeuvre .................................................................................................................. 18
3.3 Exercice ............................................................................................................................. 19
3.5 Conclusion ......................................................................................................................... 20
CHAPITRE III .... Simulation dgaliseurs linaires avec MATLAB ........... 21
1. ..... Egaliseur ZF ............................................................................................................ 21
1.1 Exemple du chapitre II ..................................................................................................... 21
1.2 Canal dfini par une quation .......................................................................................... 23
1.3 Impact du bruit ................................................................................................................. 25
2. .... Egaliseur MMSE ..................................................................................................... 26
2.1 Exemple du chapitre II .................................................................................................... 26
2.2 Impact du bruit ................................................................................................................ 28
3. .... Matlab - Simulink ................................................................................................... 31
a. ..... Test sur une modulation damplitude MDA-4 .............................................................. 31
b. ..... Test sur une modulation de phase MDP-4 .................................................................... 33
CHAPITRE IV ..... Egalisation adaptative .................................................... 34
1. ..... Introduction ............................................................................................................. 34
2. .... Algorithme LMS ( Least Mean Square ) ............................................................. 35
3. .... Simulation dgalisation adaptative avec Matlab ................................................... 37
4. .... Simulation dgalisation adaptative avec Matlab Simulink .............................. 39
5. .... Algorithme RLS ( Recursive Least Square ) ........................................................ 40
6. .... Egalisation autodidacte ........................................................................................... 41
CHAPITRE V ....... Egalisation non linaire retour de dcision ................ 43
1. ..... Introduction ............................................................................................................. 43
2. .... Filtre annuleur .................................................................................................... 44
3. .... Structure retour de dcision ou DFE ................................................................... 47
Annexe 1 : ................. Filtre de NYQUIST ........................................................ 49
Annexe 2 : ................. Filtre Blanchissant .......................................................... 51
Rfrences .............. 52



3
CHAPITRE I Dfinition de lgalisation

1. Introduction

Les performances dun systme de transmission numrique sexpriment en termes de
FIABILITE. Elle peut tre assure par :

a) le codage de canal, ou codage correcteur derreur ( Forward Error Correction FEC)
(cours de V. Meghdadi, M1) qui introduit de la redondance dans le message mis.
b) lgalisation qui permet dexploiter au mieux la bande passante du canal en compensant
en rception les distorsions introduites par le milieu de transmission, les quipements
lectroniques etc

Il existe en fait deux approches :

c) une approche optimale (algorithme de Viterbi : cours de JP Cances) qui consiste
dterminer les donnes mises, par lapplication du critre du Maximum de
Vraisemblance (MV) ; cest une mthode souvent lourde en complexit.

d) une approche sous optimale quon appelle EGALISATION :
o en labsence de bruit, lgaliseur est un simple filtre inverse dont le rle est de
rendre plate la rponse frquentielle de lensemble (canal + galiseur)
o en prsence de bruit, le filtre inverse amplifie le bruit et un autre critre est utilis
afin deffectuer un compromis entre rduction du bruit et des interfrences
(critre de lerreur quadratique moyenne)
2. La chane de transmission
2.1 Rappel : Critre de Nyquist

Avant transmission sur le canal, les signaux sont moduls et dmoduls en rception.
On se place dans le cours, dans le concept de la modlisation bande de base , qui consiste
considrer que lopration modulation dmodulation est transparente.
Dans ce cas, la chane de transmission est modlise de la faon suivante :



4














Figure 1 Modle bande de base dune chane de transmission sur canal dispersif

p(t) reprsente la rponse impulsionnelle quivalente ) ( * ) ( t h t h
c t
; le bruit b(t) est additif
gaussien, centr de DSP bilatrale N
0
/2.
Le rcepteur doit extraire de {x(t)}, une suite discrte {y
k
} permettant de prendre les dcisions.
On pose H(f) = Ht(f).Hc(f).Hr(f) = P(f). Hr(f). Dans ce cas, labsence dinterfrence entre
symboles (IES) se traduit par le critre de Nyquist :

+
=
=
n
T
T
n
f H ) ( (1)

Pour une rapidit de modulation R=1/T la bande requise B pour ne pas avoir d IES doit tre
suprieure ou gale 1/2T en Hz en bande de base. Cette condition fixe le dbit maximum
possible sans IES lorsque la bande du canal est fixe.

Lorsquon considre une rapidit de modulation R< 2B, la fonction globale de filtrage H(f)
satisfaisant (1) et utilise couramment est la fonction cosinus surlev (annexe 1). Pour que la
probabilit derreur soit minimale, on a vu (cours de 2
me
anne) que H(f) doit tre rparti en
amplitude quitablement entre mission rception (filtres en racine de cosinus surlev ).
Le principal problme de cette mthode est quil faut connatre la rponse du canal avant de
dterminer les filtres dmission et de rception.

k
y

) ( ) ( ) ( t b nT t p a t x
n
n
+ =


) (t y

) t ( x

=
k
t k
kT t h a t m ) ( ) (

=
k
k
kT t a t a ) ( ) (
Codage
Bits 0,1
AWGN
Mise en
forme
ht(t) ; Ht(f)
CANAL
hc(t) ;Hc(f)
Filtre de
rception
hr(t) ; Hr(f)
kT

k
a

+


5
Une alternative est de fixer le filtre dmission et de choisir le filtre de rception qui satisfait (1)
(filtres en racine de cosinus surlev ). Il faut donc rajouter un lment en rception pour
compenser l IES due au canal. En pratique, on choisit un schma constitu dun simple filtre
analogique Hr(f) suivi dun chantillonneur et dun filtre numrique appel Egaliseur qui permet
dliminer lIES :








Figure 2 Rception en prsence dgaliseur

Lavantage principal dune telle approche est quun filtre numrique galiseur est facile raliser.
Cest cette approche que nous appelons EGALISATION.
2.1 Modle discret quivalent

Lobjectif est de dfinir le filtre galiseur capable de rduire ou supprimer lIES. Pour cela , on
transforme la chane de communication en un modle quivalent discret plus simple traiter.
Dans un premier temps, au lieu de considrer le bruit additif avant le filtre de rception, on
considre le bruit filtr appel bruit color ( figure 3 (a)).







Figure 3 (a) Modle du systme de communication quivalent discret en prsence de bruit color

Le bruit color est le bruit gaussien en sortie du filtre de rception.

k
y

) ( ) ( ) ( t b nT t p a t x
n
n
+ =


) (t y
Filtre de
rception
hr(t) ; Hr(f)
kT

k
a

Egaliseur
k
a

k
y

=
k
k
kT t a t a ) ( ) (
Bruit
color
ht(t) ; Ht(f)
CANAL
hc(t) ;Hc(f)
kT

hr(t) ; Hr(f)
Egaliseur
+


6
Dans ce cas, on peut grouper les 3 blocs de filtres linaires Ht(f), Hc(f) et Hr(f) en un seul bloc
de fonction de transfert quivalente H(f) :






Figure 3 (b) Modle du systme de communication quivalent discret en prsence de bruit color

On peut crire : + + = + =


k n
k n k n
n
0 k k n k n k
w h a h a w h a ' y (2)
Avec w
k
chantillon de bruit color.
Lgaliseur est compos de deux parties : un filtre blanchissant de fonction de transfert Hw(f),
dont le rle est de rendre indpendant les chantillons du bruit, et un circuit dgalisation.
Hw(f) dpend uniquement de Hr(f) et peut tre dtermin priori ( annexe 2).
Posons G(z)=H(z)Hw(z). Le systme quivalent discret de la source la sortie du filtre
blanchissant peut alors se reprsenter de la manire suivante :







Figure 4 Modle du systme de communication quivalent discret

Avec la fonction de transfert du canal quivalent discret :
=

k
k
k
z g ) z ( G , =

k
jkfT 2
k
e g ) f ( G


On aura dans ce cas :
+ + = + =


k n
k n k n
n
0 k k n k n k
w
~
g a g a w
~
g a y
~
(3)
Le circuit galiseur doit liminer lIES la sortie du canal quivalent discret G(z).
Supposons que lgaliseur soit un filtre linaire de fonction de transfert H
E
(z) et de rponse
impulsionnelle {h
Ek
}. A la sortie du filtre galiseur on aura : =

j
j k , E j k
h y
~
z
k
' y

k
a

=
k
k
) kT t ( a ) t ( a
Bruit
color
H(f), h(t)
kT

Egaliseur
+
k
y
~


k
a

k
a

k
w
~

Bruit AWGN
G(z)
H
E
(z)
+


7
3. Classification
Un problme dgalisation est donc un problme de filtrage. En gnral, on classifie les
galiseurs en deux grandes catgories :
e) les galiseurs linaires ou transverses
f) les galiseurs non linaires ou retour de dcision

On peut galement grouper les galiseurs suivant quils sont :
g) dtermins lavance (lorsque le canal est connu et ne varie pas)
h) adaptatifs (lorsque par exemple le canal varie au cours du temps) .On distingue dans ce
cas deux catgories : les galiseurs adaptatifs par squence dapprentissage (connue du
rcepteur) pour assurer la convergence et les galiseurs sans squence dapprentissage ou
autodidactes.

Rsum :
EGALISEUR Type : Linaire ou Non linaire Structure : Transverse (MA),
Rcursive (AR), ARMA Algorithme : adaptatif, autodidacte ou pas dalgorithme (canal connu).

On peut galement distinguer deux cas dgalisation en fonction de lchantillonnage :
i) si les symboles sont chantillonns 1 point par symbole
j) si les symboles sont chantillonns plusieurs points par symbole (galiseur fractionn)
Lgalisation fractionne consiste travailler avec plusieurs chantillons par dure
symbole. Le choix le plus courant est 2 points / symbole, cest un bon compromis
complexit performances qui rend le filtre galiseur moins sensible une erreur sur
linstant dchantillonnage.


Rappels sur le filtrage numrique :

Un filtre numrique est un algorithme de calcul par lequel une squence { } ) (n x est transforme
en { } ) (n y .
Trois oprations sont ncessaires : addition, multiplication, retard.
Lalgorithme dun filtre linaire et causal (LTI) se dfinit partir dune relation de rcurrence :

= =
=
M
k
N
j
j k
j n y b k n x a n y
0 1
) ( ) ( ) (


8
Pour un filtre linaire causal :

=
k
k h k n x n y ) ( ). ( ) ( n , cest une convolution.
La rponse impulsionnelle { } ) (n h est dfinie par:

=
0
) ( ) (
n
n
z n h z H

La fonction de transfert H(z) du filtre scrit :
) (
) (
1
) (
) (
) (
1
0
z D
z N
z b
z a
z X
z Y
z H
N
j
j
j
M
k
k
k
=
+
= =


Un ple du filtre est une racine de D(z)=0 ( le filtre est stable si tous les ples ont un module
infrieur 1)
Un zro est une racine de N(z)=0
Filtre rponse impulsionnelle finie (RIF) ou transverse:

= =
M
k
k
k
z a
z X
z Y
z H
0
) (
) (
) (
Filtre rponse impulsionnelle infinie (IIF) ou rcursif:

+
=
N
j
j
j
M
k
k
k
z b
z a
z H
1
0
1
) (
4. Performances

Le critre du minimum de la probabilit derreur est le plus adapt dans tout systme de
communication numrique. Mais en pratique il est difficile de raliser des dispositifs sur ce
critre, on a donc besoin dautres indicateurs de performance.
x(n-k)
x(n-2) x(n-1)
h(k) h(k-1) h(2) h(1)
h(0)
z
-1
z
-1
z
-1
z
-1



y(n)
x(n)


9

k) l EQM (Erreur Quadratique Moyenne) : utilise comme critre dans la conception de
certains galiseurs, elle permet galement de chiffrer les performances dun galiseur.
l) Le diagramme de lil : obtenu en superposant toutes les trajectoires possibles de la sortie
du canal ou de lgaliseur sur une dure symbole. Il est utilis pour mesurer
qualitativement le degr dInterfrence Entre Symboles (IES).
m) Les interfrences rsiduelles : en sortie de lgaliseur, il est intressant de quantifier le taux
dinterfrences rsiduelles. Cette donne permet de chiffrer lcart entre la rponse
globale ( chane + galiseur) et celle dun dirac.

2
max
2
max
2
s
s s
ISI
k
k

=
avec s rponse impulsionnelle liant les donnes mises aux donnes en sortie de
lgaliseur.
max
s est la composante la plus grande du module de s.

On dfinit galement le maximum de distorsion :
max
max
s
s s
MD
k
k

=


10

CHAPITRE II Egalisation Linaire

1. Introduction
Les chantillons reus scrivent : + + = + =


k n
k n k n
n
0 k k n k n k
w
~
g a g a w
~
g a y
o
k
w
~
est un chantillon de bruit additif gaussien centr (AWGN) de variance
)
~
(
2
2
k
w E = .

Lide gnrale consiste appliquer un filtre galiseur H
E
(z) aux chantillons y
k
pour
compenser le canal quivalent G(z) dfini au Chapitre I.







Le problme est : sur quel critre choisir H
E
(z) ?

Considrons un filtre transverse (2N+1) coefficients. Les galiseurs transverses sont les plus
simples mettre en uvre. En effet, il sagit simplement dutiliser un filtre numrique
rponse impulsionnelle finie pour lesquels les mthodes de calcul et dimplantation sont bien
connues.
=
+
=
N
N n
n , E
h ) n k ( y ) k ( z







k
z

k
y

k
a
k
a

k
w
~

Bruit AWGN
G(z)
H
E
(z)
+
y(n-k)
y(n-1)
h
E
(N)

h
E
(N-1)

h
E
(-N+1)

h
E
(-N)
z
-1
z
-1
z
-1
z
-1



z
k

y
k



11


k reprsente le temps qui scoule de -2N 2N pour (2N+1) chantillons dentre :

On peut crire la relation de convolution sous la forme matricielle: Z=Y.H
E

Avec :
|
|
|
|
|
|
|
|

\
|
+

=
) 2 (
) 0 (
) 1 2 (
) 2 (
N z
z
N z
N z
Z
M
M
vecteur colonne de dimension (4N+1)
|
|
|
|
|
|
|
|

\
|
=
+

N E
E
N E
N E
E
h
h
h
h
H
,
0 ,
1 ,
,
M
M
vecteur colonne de dimension (2N+1)

|
|
|
|
|
|
|
|
|

\
|

+
+

=
) ( 0 0 0
) 1 ( 0
0
) ( ) 1 ( ) 2 ( ) 1 ( ) (
0 0 0 ) ( ) 1 (
0 0 0 ) (
N y
N y
N y N y N y N y N y
N y N y
N y
Y
L L L
M M M M M
M L L L M M
L L
M M M M M M M
L L
L L L

Y est une matrice de dimension (4N+1)(2N+1)

Le but de lgalisation est de dterminer les coefficients { }
n E
h
,
pour minimiser la probabilit
derreur sur les prises de dcisions en sortie. Cette probabilit derreur est une fonction non
linaire des coefficients. On dfinit diffrents critres pour minimiser Pe.
Le premier critre est le critre dit du Zro Forcing (ZF).





12
2. Critre du Zro Forcing (ZF)

Le moyen le plus simple denlever l IES est de choisir la fonction de transfert du circuit
galiseur H
E
(z) de telle sorte que la sortie de lgaliseur donne :
k k
a a = pour tout k et en
labsence de bruit. Cela peut se raliser en choisissant dinverser le canal discret quivalent :
) z ( G
1
) z ( H
E
= .
Cette mthode est appele galisation par zro forcing puisque les termes dIES en
sortie dgaliseur sont forcs zro.
2.1 Enonc du critre ZF







Considrons un seul bloc quivalent au canal discret et lgaliseur. Il est reprsent par sa
rponse impulsionnelle { } ) k ( q telle que :
) t ( h ) t ( g ) t ( q
E
= , c'est--dire : =
+
=

j
j n j , E n
g h q (1)
A la sortie de lgaliseur on peut donc crire : + + =

+
=

k n n
n k n , E k n n k 0 k
w
~
h q a a q z (2)
On retrouve trois termes : le signal utile, le terme d IES et le terme de bruit en sortie du filtre
galiseur.
La distorsion maximum est la valeur maximale du terme d IES, soit :
=


+
= 0 n j
j n j , E
0 n , n
n
g h q (3)
La valeur de la distorsion dpend des coefficients de lgaliseur pour un canal donn.
Donc, sil est possible de choisir les { }
j , E
h de telle sorte que ce terme de distorsion soit nul, on
aura limin l IES. Cette condition recherche ( 0 n , 0 q
n
= ) scrit :

=
= =
+
=

0 n 0
0 n 1
g h q
j
j n j , E n
cest le critre ZF (4)
k
z

k
y

k
a

k
a

k
w
~

Bruit AWGN
G(z)
H
E
(z)
+


13
On peut remarquer que le bruit est nglig dans le dveloppement du critre ZF. En pratique, le
bruit est cependant toujours prsent et bien que les termes d IES soient limins, il y a des
chances que le filtre galiseur amplifie leffet du bruit et donc dgrade les performances.
Pour examiner cet effet, on peut dterminer le rapport signal bruit en sortie de lgaliseur
lorsque le filtre dmission est fix et le filtre de rception est le filtre adapt.
2.2 Rapport signal bruit

On se place dans le cas : ) f ( H ) f ( H ) f ( H
*
c
*
t r
= ( figure 3 du Chapitre 1)
Donc, le filtre H(z) correspondant au regroupement des filtres E/R et du canal, est donn partir
de :
2
n
c t
jfT 2
)
T
n
f ( H )
T
n
f ( H
T
1
) e ( H =

=

(5)
La densit de puissance du bruit color dont les chantillons sont w
k
est alors donne
par :
2
n
c t
0
w
)
T
n
f ( H )
T
n
f ( H
T 2
N
) f ( =

=
(6)
On peut choisir un filtre blanchissant H
W
(z) tel que :
) e ( H
1
) e ( H
jfT 2
jfT 2
w

= et la densit
de puissance du bruit devient simplement
2
N
0
.
La fonction de transfert du filtre quivalent scrit alors :
) e ( H ) e ( H ) e ( H ) e ( G
jfT 2 jfT 2
w
jfT 2 jfT 2
= = (7)
Pour le filtre galiseur bas sur le critre ZF on choisit donc :
) e ( H
1
) e ( G
1
) e ( H
jfT 2
jfT 2
jfT 2
E

= = (8)
Le rapport signal bruit en sortie de lgaliseur scrit dans ce cas :

(
(

|
|
|

\
|

T 2
1
T 2
1
1
2
n
c t
0
2
T 2
1
T 2
1
2
E
0
2
T 2
1
T 2
1
2
k
df )
T
n
f ( H )
T
n
f ( H
2
N
T
1
df ) f ( H
2
N
df ) a ( E
SNR (9)

Le SNR dpend du spectre du signal transmis et reu lentre du rcepteur. On voit que sil
existe des vanouissements par exemple dans ce signal, le SNR en sortie de lgaliseur devient trs


14
faible. Il y a donc possibilit damplification du bruit. Cest un des inconvnients majeurs du
critre ZF.


2.3 Mise en uvre pratique du critre ZF

Considrons un filtre galiseur (2N+1) coefficients { }
N , E 0 , E N , E
h , , h , , h K K


On aura dans ce cas : =
+
=

N
N j
j n j , E n
g h q
N N , E 0 0 , E 1 N 1 N , E N N , E
N
N j
j j , E 0
g h g h g h g h g h q
+
+
=

+ + + + + = = K K (10)
N n N , E n 0 , E 1 N n 1 N , E N n N , E 0 n , n
g h g h g h g h q
+ + +
+ + + + + = K K

) e ( G
1
jfT 2

) e ( G
jfT 2



15
On suppose que la rponse impulsionnelle du canal quivalent { }
n
g comporte (2L+1)
chantillons non nuls{ }
L 0 L
g , , g , , g K K

. Alors { }
n
q comporte 2(L+N)+1 chantillons non
nuls.
Le critre du ZF consiste chercher les { }
j , E
h tels que :

=
=
+ + + + + = + =

+
0 q
1 q
avec
a ) g h g h g h g h ( q a a q z
0 n
0
k
k n
N N , E 0 0 , E 1 N 1 N , E N N , E k n n k 0 k
K K
(11)
dautre part :
N , E 1 N , E
N
N n
N , E En
h ) N k ( y h ) 1 N k ( y h ) N k ( y h ) n k ( y ) k ( z + + + + + + = =
+
+
=

K (12)
Cela revient donc chercher les { }
j , E
h tels que :
E
H . Y Z
et
N , 2 , 1 k pour 0
0 k pour 1
) k ( z
=

=
=
=
K
(13)

Exemple : L=1




Lgaliseur doit avoir au moins 3 coefficients (N=1). Dans ce cas, { }
n
q comporte 2(L+N)+1=5
chantillons non nuls :
1 1 , E 1 1 , E 2 0 , E 3 1 , E 2
0 1 , E 1 0 , E 0 1 , E 1 0 , E 2 1 , E 1
1 1 , E 0 0 , E 1 1 , E 0
1 0 , E 0 1 , E 2 1 , E 1 0 , E 0 1 , E 1
1 1 , E 3 1 , E 2 0 , E 1 1 , E 2
g h g h g h g h q
g h g h g h g h g h q
g h g h g h q
g h g h g h g h g h q
g h g h g h g h q
= + + =
+ = + + =
+ + =
+ = + + =
= + + =





Le critre du ZF impose : 0 q q , 0 q q , 1 q
2 2 1 1 0
= = = = =


La rsolution des quations permet de calculer les coefficients de lgaliseur. On se limite la
rsolution de (2N+1)= 3 quations.
g
n

n
-1 0 1


16
|
|
|

\
|

|
|
|
|
|
|

\
|

1 , E
0 , E
1 , E
h
h
h
) 1 ( y 0 0
) 0 ( y ) 1 ( y 0
) 1 ( y ) 0 ( y ) 1 ( y
0 ) 1 ( y ) 0 ( y
0 0 ) 1 ( y
=
|
|
|
|
|
|

\
|

) 2 ( z
) 1 ( z
) 0 ( z
) 1 ( z
) 2 ( z
=
|
|
|
|
|
|

\
|
0
0
1
0
0

Tout se passe comme si la dimension de la matrice Y tait ramene (2N+1)(2N+1).
Cela permet dinverser la matrice : Z . Y H
1
E

=

2.4 Exercice sur le ZF
On considre la rponse impulsionnelle discrte du canal quivalent telle que :







Le filtre galiseur dterminer comporte dabord 3 coefficients puis 5 coefficients.
a) dterminer les coefficients des galiseurs suivant le critre du ZF
b) En dduire la distorsion maximum en sortie de lgaliseur.
2.5 Utilisation de MATLAB
On peut utiliser les capacits de MATLAB traiter des problmes matriciels.
Dans ce cas il suffit de dfinir la matrice Y carre de dimension (2N+12N+1), puis un
vecteur colonne Z de dimension (2N+1) contenant des zros et un 1 central.
On utilisera la commande qui permet dinverser une matrice : inv(Y) pour obtenir le vecteur des
coefficients (cof) et la commande : filter , pour obtenir la sortie galise.

Le filtre galiseur dterminer comporte maintenant 5 coefficients. Raliser le script (.m) afin de :
c) Calculer les coefficients de lgaliseur suivant le critre du ZF.
d) Calculer les valeurs des chantillons de la sortie galise.
e) Dterminer la distorsion maximum en sortie de lgaliseur.
f) On peut galement utiliser un autre indicateur de performances : le Taux dErreur Binaire
ou TEB dune transmission sans et avec galisation, en prsence de bruit gaussien. Pour
cela, on gnre une suite de symboles NRZ :
n
T
-2T 0
0,9
0,1 0,2
-0,3
-T 2T


17
Exemple dun script du calcul du TEB dans le cas de la transmission NRZ
de 10000 symboles dans un canal galis :

x=[ 0.0 0.2 0.9 -0.3 0.1 ];%canal
LLc=length(x);% longueur du canal
n_coeff=length(cof);%longueur de lgaliseur
RSB=[5 10 15 20 25 30 40 50];%rapport signal sur bruit
R=(n_coeff+LLc)/2-1;% retard introduit par canal et galiseur
ya=2*randint(10000,1,2)-1;% generation de 10000 symboles NRZ
y=ya';
ly=length(y);
yf=filter(x,1,y);% filtrage des symboles par le canal

%calcul du TEB ou BER
for i=1:length(RSB)
yb=yf+10^(-RSB(i)/20)*randn(1,ly);% ajout du bruit correspondant
un RSB donn
eqz=filter(cof,1,yb);% sortie galise
dec=sign(eqz(1+R:ly));%prise de dcision
err=y(1:ly-R)-dec;% calcul de l erreur entre symboles mis et
dcids
BER(i)=length(find(err))/ly;%comptage des erreurs
end;

2.6 Conclusion

Lannulation de lIES par le critre du ZF se fait gnralement au prix dune augmentation
sensible du niveau de bruit. Donc, en dehors du cas o on est assur dun faible niveau de bruit
dans le canal (il parfaitement ouvert), cette solution nest pas retenir.
Ces conclusions seront illustrs dans le Chapitre 2 (simulations Matlab) pour diffrents canaux.
Dautre part, il faut noter que le canal est suppos parfaitement connu. Dans cette mthode
(appele supervise) on passe par lestimation pralable de la rponse impulsionnelle du canal.
Des erreurs dans son estimation vont se rpercuter sur le calcul des cfficients de lgaliseur et
donc sur les performances.

3. Egaliseur MMSE ( Minimum Mean Square Error )

3.1 Principe

Lgaliseur bas sur le critre ZF annule l IES mais ne donne pas de bonnes performances car il
ne tient pas compte du bruit dans le systme. Lgaliseur bas sur le critre MMSE tient compte
du bruit. Il est bas sur le critre de lerreur quadratique moyenne (EQM) ou MSE Mean
Sqaure Error . Cest un critre robuste qui permet de dterminer les coefficients de lgaliseur en
minimisant lEQM.


18
LEQM scrit : ( ) [ ]
2
k k
2
k
z a E ) ( E EQM = = (14)




Si lgaliseur compense parfaitement le canal quivalent et le bruit, en sortie on rcupre
lestimation z
k
des donnes mise a
k
avec fiabilit.
Contrairement au cas du ZF, pour calculer les coefficients on tient compte du signal total reu y
k

donc du bruit.
3.2 Mise en oeuvre
Considrons un filtre galiseur (2N+1) coefficients :











( ) [ ]
(
(

|
|

\
|
= =

=

2
,
2
N
N j
j E j k k k k
h y a E z a E EQM
(15)
( ) [ ] ( ) [ ] ( ) ( ) [ ] ( ) ( ) [ ]
E k
T T
E
T
k E k
T
E k E k k k
YH a Y H a E YH a YH a E YH a E z a E EQM = = = =
2 2
[ ] [ ] [ ] [ ]
E
T T
E k
T T
E E
T
k k
T
k
YH Y H E a Y H E YH a E a a E + =
On cherche minimiser lEQM par un choix judicieux des coefficients. On cherche donc
annuler la drive de lEQM par rapport aux valeurs
j , E
h .
k


Donnes mises
k
z
k
a
k
y

EGALISEUR

Donnes reues
y(n-k)
y(n-1)
h
E
(N)

h
E
(N-1)

h
E
(-N+1)

h
E
(-N)
z
-1
z
-1
z
-1
z
-1



z
k

y
k



19
En utilisant les proprits des transposes ( [ ] [ ]
k
T T
E E
T
k
a Y H E YH a E = ), la drive de lEQM par
rapport H
E
donne : [ ] [ ] 0 2 2 = + Y Y E H Y a E
T T
E
T
k
(16)

Minimiser lEQM revient donc chercher le vecteur des coefficients H
E
tels que :
[ ] [ ] Y Y E H Y a E
T T
E
T
k
=
On pose :
Avec
) (
) (
Y a E Ray
Y Y E Ry
T
k
T
=
=
(17)
Donc on a rsoudre :
ay y
T
E
R R H = (18)

Ry est la matrice de corrlation des donnes reues et Ray est le vecteur dinter corrlation entre
les donnes reues et les donnes mises.


Il est donc ncessaire pour la mise en uvre pratique de connatre les donnes mises !!
Pour contourner la difficult, on utilise une squence connue du rcepteur appele squence
dapprentissage qui permet de calculer les coefficients partir du calcul de linverse de la matrice
dauto corrlation :

1
.

=
y ay
T
E
R R H
(19)

Avec [ ] [ ]
k
T T
k ay
a Y E Y a E R . . . = =
k
a est la squence dapprentissage (20)

Cependant, la ncessit dinclure dans lmission, une squence dapprentissage ventuellement
rpte priodiquement si le systme est non stationnaire, limite le dbit des donnes utiles.

3.3 Exercice

Le signal reu lentre de lgaliseur possde 7 chantillons non nuls :
y(3)= 0.0108 ; y(2)=-0.0558 ; y(1)=0.1617 ; y(0)=1 ; y(-1)=-0.1749 ; y(-2)=0.227 ; y(-3)=0.011
Supposons que la squence dapprentissage soit un simple dirac.
On cherche un galiseur 7 coefficients qui permet de retrouver en sortie le dirac mis.


20
a) A laide de Matlab dterminer la matrice Y
k
de dimension (4N+1)(2N+1)
puis [ ]
k
T
k y
Y Y E R . = .
b) Calculer [ ]
k
T
k
Y a E d . =
k
a est la squence dapprentissage (dirac), vecteur colonne de
dimension (4N+1)
c) Dterminer les coefficients de lgaliseur et le taux de distorsion.


3.5 Conclusion

On va vrifier dans la suite, grce aux simulations Matlab, que lgalisation obtenue par le critre
de lEQM est de meilleure qualit que celle fournie par le ZF en raison de la prise en compte
effective du bruit. Mais elle reste mdiocre en prsence dvanouissements slectifs dans le canal.
Ceci est li lutilisation dune structure transverse.
Par ailleurs, pour la mise en uvre pratique, il est ncessaire dutiliser une squence connue du
rcepteur pour calculer les coefficients ce qui limite le dbit utile.






21

CHAPITRE III Simulation dgaliseurs linaires avec
MATLAB

1. Egaliseur ZF
Dans cette partie, vous allez programmer le calcul des coefficients dun filtre galiseur
bas sur le critre du ZF, partir des valeurs des chantillons reus lentre du rcepteur, en
considrant que la squence dapprentissage est un Dirac. Cela signifie que les chantillons reus
sont les valeurs discrtes de la rponse impulsionnelle du canal.
1.1 Exemple du chapitre II

Pour comprendre la structure du programme ou script MATLAB, on reprend lexemple
trait dans le chapitre II.
Le principe est le suivant :

a) Dfinition des chantillons dentre ({x}) :
x=[ 0.0 0.2 0.9 -0.3 0.1 ];
LL=length(x); % longueur de la rponse impulsionnelle LL= 2*L+1
L=round((LL-1)/2) ;

b) Dfinition du temps t discret et trac de la rponse impulsionnelle:
T=1 ; % T reprsente un facteur dchantillonnage
t=-L*T:T:L*T;
figure(1)
stem(t,x)
title('reponse impulsionnelle du canal')

c) Choix du nombre de coefficients du filtre galiseur n_coeff=2*N+1 :
Ici :
n_coeff=5 ;
Donc :
N=round((n_coeff-1)/2) ;



22
d) Cration de la matrice carre X des chantillons
La dimension de la matrice des chantillons est (4N+1 2N+1) donc ici 95;
Comme le nombre dchantillons va de x(-2N) x(2N) dans la matrice carre, on insre 2N
zros dans le vecteur x si sa longueur est infrieure (4N+1):
If L<2*N
x=[zeros(1, 2*N),x,zeros(1, 2*N)];
LL=length(x);
L=round((LL-1)/2) ;
else
x=x;
end;

xx=x'; % on transforme x en un vecteur colonne
X=[]; % initialisation de la matrice X
for m=-N:1:N
for n=-N:1:N
X(m+N+1,n+N+1)=xx(L+m-n+1);
end;
end;

e) Inversion de la matrice
K=inv(X);

f) Calcul des coefficients par le critre ZF: c_opt
z=zeros(n_coeff,1); % cration dun vecteur colonne de longueur n_coeff rempli de zros
z((N+1),1)=1; % on force 1 la valeur centrale du vecteur
c_opt=K*z
c_opt'

g) Calcul et trac de la sortie galise
equalized_x=filter(c_opt,1,[x,zeros(1,N)]);
figure(2)
stem(equalized_x)
title('reponse en sortie de l egaliseur')




23

h) Calcul de la distorsion max
nouvz=equalized_x';
distorsion =0;
for i=1:length(nouvz)
distorsion=distorsion+abs(nouvz(i));
end
distorsion=100*abs(max(nouvz)-distorsion);
disp('la distorsion max en % est')
distorsion

a) Utilisez le script pour retrouver les rsultats obtenus prcdemment pour les deux
canaux tests :
- Canal A =[ 0.0 0.2 0.9 -0.3 0.1] galis par un filtre 5 coefficients
On doit retrouver les mmes rsultats que dans le chapitre prcdent cest--dire :
0.0443
-0.1994
0.9637
0.3419
0.0069
Et une distorsion de 4.17%
- Canal B =[ 0.011 0.227 -0.1749 1 0.1617 -0.0558 0.0108 ] galis par un
filtre 7 coefficients

b) Modifiez le nombre de coefficients et examiner la valeur de la distorsion pour les
deux canaux.

1.2 Canal dfini par une quation

Diffrents canaux peuvent maintenant tre tests. Ils peuvent tre dfinis par par un vecteur des
chantillons comme dans lexemple trait ou bien par une quation dont on prend les valeurs
discrtes aux instants kT.
Considrons par exemple, le canal de rponse impulsionnelle dfinie par lquation :


24
)
4 . 0
1 (
1
) (
2
|

\
|
+
=
T
t
t x

Modifiez le script en remplaant le vecteur x par :
t=-20*T:T:20*T;
x=1./(1+((0.4/T)*t).^2);
Le reste ne change pas.
Lorsquon applique le critre du ZF avec une longueur dgalisation de 5 (nombre de coefficients
du filtre galiseur), vrifiez quon retrouve bien un Dirac en sortie sur 5 points dchantillons : le
point central 1 et les deux points adjacents de part et dautre 0.



25
Le choix de la longueur dgalisation est l encore un lment important par rapport ltalement
de la rponse impulsionnelle du canal.
On peut augmenter le nombre de coefficients pour mieux galiser, par exemple avec 17
coefficients :

1.3 Impact du bruit
Linconvnient du critre du ZF est la non prise en compte du bruit. Pour illustrer cet
inconvnient, un bruit blanc gaussien et centr est ajout aux chantillons de donnes reues.
On dfinit le rapport signal bruit (SNR en dB) , puis on utilise la commande matlab awgn :
y=awgn(x,SNR,'measured',1234)
Par la suite, on remplace x par y.
Voici par exemple, le trac des chantillons bruits y pour deux niveaux de bruit ( 20 et 15 dB) :


On peut rajouter des commandes pour le trac des diffrentes courbes :
Au dbut du script, pour visualiser le bruit dans le canal
figure(2)


26
plot(t,x,'o-',t,y,'ko-')
title('reponse impulsionnelle du canal sans et avec bruit')
et la fin du script, pour comparer les rsultats :
equalized_x=equalized_x((N+1):length(equalized_x));
LL=length(x);
L=round((LL-1)/2) ;
ti=-L*T:T:L*T;
LLe=length(equalized_x);
Le=round((LLe-1)/2);
te=-Le*T:T:Le*T;
figure(4)
plot(ti,x,te,y,'k-',te,equalized_x,'ko-')
title('comparaison entres sans bruit avec bruit - sortie de l galiseur')

a) Dans le cas du canal B =[0.011 0.227 -0.1749 1 0.1617 -0.0558 0.0108 ] et un
galiseur 7 coefficients, comparer les valeurs des coefficients et examiner la
sortie galise (distorsion) lorsque le SNR varie (de 5 100 dB par exemple).
b) Conclusion sur la robustesse du ZF face au bruit.

A lissue de ce paragraphe, vous disposez de scripts Matlab complets pour traiter
lgalisation dun canal de communication par le critre du ZF.
2. Egaliseur MMSE

Le critre de l Erreur Quadratique Moyenne est un critre plus robuste par rapport au bruit. IL
permet de raliser un compromis entre rduction de l IES et du bruit.
Pour calculer les coefficients de lgaliseur par le critre de l EQM, on utilise une squence
connue du rcepteur appele squence dapprentissage, qui ici est un simple Dirac.
Cela permet de calculer les coefficients partir du calcul de linverse de la matrice dauto
corrlation des donnes reues Y :
ay y E
R R H .
1
= avec [ ]
k k ay
Y a E R . = et
k
a la
squence dapprentissage, c'est--dire un Dirac.

2.1 Exemple du chapitre II
On reprend lexemple trait dans le chapitre II.
%Dfinition des chantillons dentre ({x}) :


27
x=[0.011 0.227 -0.1749 1.0 0.1617 -0.0558 0.0108 ];
LL=length(x); % longueur de la rponse impulsionnelle LL= 2*L+1
L=round((LL-1)/2) ;
T=1 ; % T reprsente un facteur dchantillonnage
t=-L*T:T:L*T;
figure(1)
stem(t,x)
title('reponse impulsionnelle du canal')

%Choix du nombre de coefficients du filtre galiseur n_coeff=2*N+1 :
n_coeff=7 ;
N=round((n_coeff-1)/2) ;
%Cration de la matrice X des chantillons
Comme le nombre dchantillons va de x(-3N) x(3N) dans la matrice carre, on a :
if L<3*N
x=[zeros(1, 3*N),x,zeros(1, 3*N)];
LL=length(x);
L=round((LL-1)/2) ;
else
x=x;
end;
xx=x'; % on transforme x en un vecteur colonne
X=[]; % initialisation de la matrice X
for m=-2*N:1:2*N
for n=-N:1:N
X(m+2*N+1,n+N+1)=xx(L+m-n+1);
end;
end;
%Matrice de corrlation des donnes reues
Rx=X*X
%Inversion de la matrice
K=inv(Rx);
%Matrice d intercorrlation des donnes reues avec la squence dapprentissage ( un
dirac)
ap=zeros((4*N+1),1) ; % cration dun vecteur colonne de longueur 4N+1 rempli de
zros


28
ap((2*N+1),1)=1 ; % on force 1 la valeur centrale du vecteur
D=X*ap;
%Calcul des coefficients par le critre MMSE: c_opt
c_opt=K*D;
c_opt'

%Calcul et trac de la sortie galise
equalized_x=filter(c_opt,1,[x,zeros(1,N)]);
figure(2)
stem(equalized_x)
title('reponse en sortie de l egaliseur')
%Calcul de la distorsion max
nouvz=equalized_x';
distorsion =0;
for i=1:length(nouvz)
distorsion=distorsion+abs(nouvz(i));
end
distorsion=100*abs(max(nouvz)-distorsion);
disp('la distorsion max en % est')
distorsion

a) Utilisez le script pour retrouver les rsultats obtenus prcdemment.
b) Pour un nombre de coefficients de 7, comparer les performances des 2 critres
(ZF et EQM) sur cet exemple en labsence de bruit. Conclusion.
c) Modifiez le nombre de coefficients et examiner la valeur de la distorsion.
Conclusion.

On peut vrifier ainsi que dans le cas sans bruit, les deux critres conduisent des rsultats quasi-
identiques.

2.2 Impact du bruit

Dans le cas o le signal reu est bruit on constate que, contrairement au critre ZF qui
ne tient pas compte du bruit pour le calcul des coefficients, le critre de lEQM conduit un
signal de sortie mieux galis.


29
Pour comparer les deux critres, on utilise un seul script matlab.
De plus, le taux de distorsion nest pas le meilleur indicateur pour comparer les
performances des deux critres ; on lui prfrera le calcul le lerreur quadratique moyenne :
( ) [ ]
2
k k
2
k
z a E ) ( E EQM = = .
On se place pour cet exercice dans le cas dune transmission par modulation damplitude
(MDA-4 ou ASK-4) sur un canal dfini par la commande : H=fir1(8,0.8) ;
Fir1(N,Wn) correspond un filtre numrique FIR linaire passe bas dordre N
cre un vecteur de longueur N+1 correspondant aux coefficients du filtre ; la frquence de
coupure dfinie par Wn doit tre telle que : 0 < Wn < 1.0 ( Wn=1.0 correspond 1/2T).
La rponse impulsionnelle du filtre tudi est :
H=[-0.0038 0.0218 -0.0821 0.1625 0.8031 0.1625 -0.0821 0.0218 -0.0038]
1 2 3 4 5 6 7 8 9
-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9

Une suite de M symboles MDA-4 est gnre et applique lentre du canal :
M=4000;
a=[-3 -1 1 3];
Ak=a(randint(M,1,4)+1);
figure(1)
plot(Ak,zeros(1,M),'o');
title('constellation de la modulation MDA-4');


30
-3 -2 -1 0 1 2 3
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
constellation de la modulation MDA-4

H=fir1(8,0.8) ;
Rk1=filter(H,1,Ak);
figure(2)
plot(Rk1,zeros(1,length(Rk1)),'o');
title('constellation de la modulation MDA-4 en sortie du canal');

-4 -3 -2 -1 0 1 2 3 4
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
constellation de la modulation MDA-4 en sortie du canal

Le canal a introduit de la distorsion et ncessite une galisation en rception.
Le script correspondant est demander lenseignant.

a) Pour un nombre de coefficients de 9, vrifiez sur le canal dfini dans lexercice
quon retrouve les mmes rsultats avec les deux critres EQM et ZF, dans le cas
sans bruit (correspondant un SNR de 50dB) : valeurs des coefficients, distorsion
et erreur quadratique.

b) Comparer ensuite les performances des 2 critres (ZF et EQM) sur cet exemple
pour un SNR variant de 1 dB 50 dB. Conclusion.





31
3. Matlab - Simulink

a. Test sur une modulation damplitude MDA-4

Pour tester lgalisation sur Simulink , on considre une chane de transmission bande de base en
ASK-4. La modlisation lmission est reprsente sur la figure suivante :
Random Integer
Generator
Random
Integer
Q
M-PAM
Modulator
Baseband
4-PAM
I
Constellation MDA -4
Complex to
Real -Imag
Re
Im

- Vrifiez le diagramme de constellation et les voies I et Q de la modulation
damplitude MDA-4

Le canal de transmission quivalent sera reprsent dans Simulink par un bloc Digital Filter dans
Signal Processing Blockset/Filtering/Filter Designs.
Les paramtres rentrer sont :
FIR(all zeros)
direct form
[-0.0038 0.0218 -0.0821 0.1625 0.8031 0.1625 -0.0821 0.0218 -0.0038] vecteur qui
reprsente les coefficients du canal dfini prcdemment avec la fonction fir1(8,0.8)

Random Integer
Generator
Random
Integer
Q
M-PAM
Modulator
Baseband
4-PAM
I
Constellation aprs canal
Constellation MDA -4
Complex to
Real -Imag
Re
Im
CANAL
Digital
Filter

- Vrifiez le diagramme de constellation et les voies I et Q en sortie du canal :



32




Le bloc de bruit de type additif Gaussien (AWGN) est ajout en cascade. Lgaliseur sera
galement insr en cascade avec le canal laide du mme type de bloc fonctionnel (Digital
Filter).
Par contre, les coefficients du filtre galiseur seront ceux calculs prcdemment avec les scripts
Matlab (*.m)
Pour calculer la performance en terme de taux derreur, il faut ensuite dmoduler ( M-PAM
demodulator Baseband) et insrer le bloc Error Rate Calculation comme sur la figure suivante :

Random Integer
Generator
Random
Integer
Q
M-PAM
Modulator
Baseband
4-PAM
M-PAM
Demodulator
Baseband
4-PAM
I
Error Rate
Calculation
Error Rate
Calculation
Tx
Rx
EGALISEUR
Digital
Filter
Display
Constellation aprs galisation
Constellation aprs canal et bruit Constellation aprs canal
Constellation MDA -4
Complex to
Real -Imag
Re
Im
CANAL
Digital
Filter
AWGN
Channel
AWGN



a) On considre le canal tudi prcdemment. Calculez sans bruit (variance du bloc
AWGN 0 ou SNR 50dB), le taux derreur binaire (TEB) obtenu.


33
b) Toujours dans le cas sans bruit, placez un galiseur en cascade avec le canal, dont
les 9 coefficients sont ceux calculs prcdemment par les 2 critres EQM et ZF.
Calculez le TEB et vrifiez lefficacit de lgalisation.
c) Pour tester lgalisation avec bruit, on considre le cas dun SNR de 10dB et 20dB.
Grce aux scripts Matlab, calculez les 9 coefficients des galiseurs correspondants
aux 2 critres.
Insrez les coefficients dans le bloc reprsentant lgaliseur dans la chane
simulink et dterminez les nouvelles valeurs du TEB. Conclusion.
b. Test sur une modulation de phase MDP-4

On reprend le mme exercice avec un signal modul en phase 4 tats , MDP-4 ou QPSK :
Random Integer
Generator
Random
Integer
Q
M-PSK
Modulator
Baseband
M-PSK
M-PSK
Demodulator
Baseband
M-PSK
I
Error Rate
Calculation
Error Rate
Calculation
Tx
Rx
Display
0.05617
56
997
Constellation aprs canal et bruit Constellation aprs canal
Constellation MDA -4
Complex to
Real -Imag
Re
Im
CANAL
Digital
Filter
AWGN
Channel
AWGN

- Vrifiez le diagramme de constellation et les voies I et Q de la modulation
damplitude MDP-4 et calculer le TEB dans le cas sans bruit.
- Les coefficients des galiseurs sont inchangs car ils dpendent du canal et pas de
la modulation. Testez les performances en calculant les TEB pour des galiseurs
EQM et ZF et des SNR de 50 et 20 dB. Conclusion.



34

CHAPITRE IV Egalisation adaptative

1. Introduction
Dans lapproche tudie jusqu prsent, lgalisation est ralise par bloc . Cette approche peut
se rsumer ainsi :







Elle comporte quelques inconvnients lis la ncessit dune estimation prcise du canal et au
calcul de la matrice de corrlation des donnes reues et de son inverse. Dautre part, si le canal
varie dans le temps, cette approche ne permet pas dajuster les coefficients de lgaliseur.
En effet, lgaliseur transverse sur le critre EQM, est bas sur la minimisation de la fonction de
cot suivante : ( ) [ ]
2
) (
k k E
z a E h J =
On est donc amen calculer le gradient tel que : 0 ) ( 2 ) ( = = Ray RyH h J
E E
ce qui conduit
une solution analytique coteuse en complexit :
ay y E
R R H .
1
=

Dans lapproche adaptative, on peut se passer de lestimation du canal et donc tenir compte des
variations temporelles du canal:










Squence dapprentissage

donnes

Estimation du canal
quivalent G(z)
Calcul de lgaliseur H
E
(z)
Dtection des donnes en
utilisant le mme galiseur
chaque instant
Squence dapprentissage

donnes

A linstant n on utilise lgaliseur ) (
) (
z H
n
E

On ajuste au fil de leau ) (
) (
z H
n
E
) (
) 1 (
z H
n
E
+



35
2. Algorithme LMS ( Least Mean Square )






Dans la mise en uvre du critre de l EQM, une alternative pour viter linversion de R
y
consiste
appliquer une mthode itrative pour calculer les coefficients qui minimisent la fonction de
cot : ) (
E
h J .
A partir des valeurs de ) 1 k ( h
E
on peut calculer les valeurs de ) k ( h
E
en utilisant lalgorithme
du Gradient :
)) 1 ( ( ) 1 ( ) ( + = k h R R k h k h
E y ay E E

avec constante positive appele coefficient dadaptation ( qui remplace ) R
1
y

permettant de
contrler la convergence.
Cependant, le calcul de ) (
) (n
E
h J ncessite toujours de connatre
y
R et
ay
R par lutilisation
dune squence dapprentissage.

On modifie alors lalgorithme en remplaant le gradient par son estime (le LMS est un
algorithme du gradient dit stochastique et non plus dterministe). On remplace chaque tape
y
R et
ay
R par les estimations
T
k k
Y Y . et
k k
Y a . . Lquation devient :
k k E k k k E k E
T
k k E E
Y e ) 1 k ( h Y ) z a ( ) 1 k ( h Y )) 1 k ( h Y a ( ) 1 k ( h ) k ( h + = + = + =


Le signal derreur
k
e reprsente la diffrence entre la donne dsire linstant k et la sortie
actuelle z(kT).

Le LMS permet donc chaque instant, de remettre jour les coefficients du filtre galiseur
proportionnellement lerreur destimation
k
e .
En cas de variations du canal, lgaliseur sera capable de sadapter dautant plus rapidement que la
constante est grande.
k
z

k
y

k k
a ou a

Signal derreur
H
E
(z)
Algorithme
dadaptation

+


36
On peut admettre quune valeur adquate de permettant dassurer la convergence dans le cas de
canaux variations lentes est :
) 1 2 )( (
2 . 0
+ +
=
N P P
n s
avec (2N+1) nombre de coefficients de
lgaliseur, Ps puissance du signal et Pn puissance du bruit.

On distingue alors deux phases de fonctionnement :

Une phase dapprentissage o les donnes a
k
sont connues (squence dapprentissage) et
qui permet dajuster les coefficients de lgaliseur ( pas destimation du canal). Cette phase
est appele mode supervis .







Une phase de donnes ou de poursuite ( pilote par les dcisions ou decison directed )
ou encore mode oprationnel : on remplace les
k
a par les donnes estimes
k
a







L'algorithme du gradient stochastique est un algorithme simple dont le cot de calcul est
proportionnel l'ordre du filtre identifier. A condition de respecter un pas d'adaptation
suffisamment faible, cet algorithme est stable et optimise un critre des moindres carrs moyens.
C'est encore aujourd'hui l'algorithme de filtrage adaptatif le plus employ dans les applications
temps rel.
Le problme principal dans son emploi rside dans le choix du pas d'adaptation. Un pas faible
entrane une convergence lente souvent incompatible des applications envisages. Un pas trop
fort va conduire, quant lui, des rsultats imprcis.
k
z

k
y

k
a

k
a

k
w
~


G(z)
) (
) (
z H
k
E

+
Actualisation
de ) (
) (
z H
k
E

-
k
z

k
y

k
a

k
a

k
w
~


G(z)
) (
) (
z H
k
E

+
Actualisation
de ) (
) (
z H
k
E

-


37
Il existe un grand nombre de mthodes qui tendent faire varier ce pas au cours de la phase de
convergence. Cela peut avoir pour effet d'acclrer la convergence mais il faut rester circonspect
vis vis de ces mthodes car la convergence de l'algorithme n'est assure que dans le cas du pas
fixe.
3. Simulation dgalisation adaptative avec Matlab
On considre lexemple du canal fir1(8,0.8) et dune modulation damplitude 4 tats (ASK-4)
transmise en prsence de bruit additif gaussien, avec une galisation 9 coefficients.
On a trouv prcdemment les valeurs des coefficients pour un SNR de 50 dB et par les deux
critres :
Coefficients EQM :
0.0652 -0.1480 0.2814 -0.4215 1.4793 -0.4228 0.2832 -0.1524 0.0705
Coefficients ZF :
0.0816 -0.1640 0.2958 -0.4346 1.4921 -0.4365 0.2986 -0.1698 0.0883

On va mettre en uvre un calcul itratif des coefficients :
%............................................................
%symboles Maire 4 etats
%............................................................
a=[-3 -1 1 3];
%............................................................
%nombre de symboles ASK 4 etats
%............................................................
M=7000;
%............................................................
% creation de la suite de symboles
%............................................................
Ak=a(randint(M,1,4)+1);
p=length(Ak);
data_original=Ak;
%............................................................
% canal
%............................................................
H=[0.407 0.815 0.407];
L=(length(H)-1)/2;
%............................................................
%filtrage de la squence par le canal
%............................................................
Rk=filter(H,1,[Ak,zeros(1,2*L)]);
%............................................................
% rapport signal bruit en dB
%............................................................
SNR=50;
ps=sum(Rk.*Rk)/length(Rk) ;
sigPower=10*log10(ps);
%............................................................
%puissance du bruit Pn
%............................................................
noisePower=sigPower-SNR;


38
pn_lin=10^(noisePower/10);
%............................................................
% canal+ bruit
%............................................................
Rk=awgn(Rk,SNR,'measured',1234);
Rk=Rk' ;

NN=9;% nombre de coefficient du filtre egaliseur
N=round((NN-1)/2);

On calcule le pas de convergence du LMS:
mu=0.2/((ps+pn_lin)*(2*N+1));

Puis, le script du calcul itratif par LMS:
if N<L
ak=[zeros(1,L-N) Ak zeros(1,L-N)];
else
ak=Ak(N-L+1:p-(N-L));
end;
he=zeros(2*N+1,1);
ek_i=zeros(1,p+2*L-2*N);
for i=1:(p+2*L-2*N)
Yk_i=Rk((i+2*N):-1:i,1);
ek_i(i)=ak(i)-Yk_i'*he(:,i);
he(:,i+1)=he(:,i)+(mu*ek_i(i)*Yk_i);
end;
%............................................................
%Trac des coefficients et de l erreur en ft du nombre d iterations
%............................................................
figure(4)
plot(he');ylabel('Coefficients'); xlabel('Itration');
he(:,p+2*L-2*N)
figure(5)
plot(1:(p+2*L-2*N),ek_i);title('Erreur en fonction du nombre d''itrations');
xlabel('Nombre d''itrations');
ylabel('EQ');
0 1000 2000 3000 4000 5000 6000 7000 8000
-0.5
0
0.5
1
1.5
C
o
e
f
f
i
c
i
e
n
t
s
Itration
0 1000 2000 3000 4000 5000 6000 7000
-3
-2
-1
0
1
2
3
Erreur en fonction du nombre d'itrations
Nombre d'itrations
E
Q


Les valeurs des coefficients la dernire itration sont :
0.0606
-0.1416
0.2679


39
-0.4096
1.4707
-0.4099
0.2667
-0.1381
0.0603

On reprend le canal du chapitre 2 : H=[0.011 0.227 -0.1749 1 0.1617 -0.0558 0.0108]
Utilisez le script pour calculer les 7 coefficients de lgaliseur dans le cas sans bruit.
Quel est lordre de grandeur du nombre ditrations ncessaire la convergence ?
On se place SNR=10dB, le bruit a-t-il un impact sur le nombre ditrations ?
On augmente le nombre de coefficients (de 7 21). Mme question.

4. Simulation dgalisation adaptative avec Matlab Simulink

Afin de mettre en uvre une galisation adaptative on peut galement utiliser le bloc LMS de la
librairie signal Processing Blockset / Filtering/Adaptative Filters dans Simulink.
Le bloc LMS possde :
-Lentre Input reoit les donnes galiser
-Lentre Desired reoit le signal dsir, retard du retard cumul des donnes travers le canal
+ le filtre LMS soit : (n-1)/2 avec n nombre de coefficients des filtres.
-La sortie Wts permet de visualiser les coefficients du filtre adaptatif LMS.
-La sortie Error permet de visualiser lerreur.
-La sortie Output permet de visualiser la sortie filtre.


erreur
coeff
Scatter Plot
mission
Scatter Plot
galis
Scatter Plot
+bruit +canal
Scatter Plot
+bruit
Random -Integer
Generator
Random
Integer
M-PSK
Modulator
Baseband
M-PSK
LMS Filter
LMS
Input
Desired Desired Desired Desired
Output
Error
Wts
Integer Delay 1
z
-2
Display
-0.4649 - 0.02599
1.455 + 0.000719
-0.4808 + 0.01004
Digital Filter
Digital
Filter
Complex to
Real -Imag 2
Re
Im
Complex to
Real -Imag 1
Re
Im
AWGN
Channel
AWGN


On considre le canal fir1(8,0.8) dfini par 9 valeurs.


40
Effectuez le calcul itratif des 9 coefficients dun galiseur pour un SNR de 50 dB et
retrouvez les valeurs obtenues prcdemment :
0.0606
-0.1416
0.2679
-0.4096
1.4707
-0.4099
0.2667
-0.1381
0.0603
Rajoutez des blocs de dmodulation et de calcul de taux derreur pour retrouver les
rsultats en TEB.
o Donnez le nombre ditrations ncessaires la convergence des
coefficients.
o Calculez pour un galiseur ayant le mme nombre de coefficients (9) les
TEB pour des SNR de 20, 10 et 5 dB (mu=0.01).
o Faire varier le pas de convergence mu par exemple mu=0.1. Conclusion.

5. Algorithme RLS ( Recursive Least Square )
Lalgorithme de base du LMS est le gradient stochastique ( steepest descent ) dans lequel le
vecteur gradient est approxim par une estimation provenant des donnes.
Cependant, lorsque le canal galiser a une rponse impulsionnelle trs tale, le LMS converge
trs lentement du fait dun seul paramtre de contrle ( le pas dadaptation).
On peut mettre en uvre des algorithmes qui sont plus rapides au prix dune certaine complexit.
Cest le cas de lalgorithme RLS.
Il consiste :
c) calculer le signal derreur linstant kT dpendant des coefficients linstant (k-1)T
prcdent : ) 1 k ( h Y a z a e
E
T
k k k k k
= =
d) actualiser les coefficients : ) z a ( Y ) k ( P ) 1 k ( h ) k ( h
k k k E E
+ =
La diffrence par rapport au LMS se situe dans le terme P(k) ; cest une estimation de
1
y
R

obtenue de manire rcursive :


|
|

\
|
+

=
k
T
k
T
k k
Y ) 1 k ( P Y 1
) 1 k ( P Y Y ) 1 k ( P
) 1 k ( P
1
1
) k ( P


Le terme P(k) permet une actualisation optimale des divers coefficients ce qui explique la
supriorit de lalgorithme RLS en termes de rapidit de convergence.



41
Pour tester la convergence reprendre lexemple trait prcdemment dans simulink
en remplaant le LMS par le RLS situ dans la mme librairie (on prendra un
facteur doubli de 0.95) :
o Calculez nouveau les coefficients
o Quelle est le nombre ditrations correspondant la convergence
o Conclusion par rapport au LMS

La forme matricielle correspondante dans le bloc RLS est donne par:

1
est appel facteur doubli et est compris entre 0 et 1 (typiquement entre 1 et 0.95, 1
correspondant une mmoire infinie)

6. Egalisation autodidacte
Les mthodes prcdentes ncessitent une phase dapprentissage avec une squence connue du
rcepteur, ce qui peut pnaliser certains systmes de communications. Par exemple, lorsque le
canal subit des variations brutales, les algorithmes adaptatifs ont du mal suivre ces variations.
On doit dans ce cas, utiliser un apprentissage de manire rgulire ce qui rduit le dbit des
donnes utiles.
Les mthodes dites autodidactes ont t dveloppes pour saffranchir de la squence
dapprentissage. La seule connaissance disponible en rception est la statistique du signal mis.
Il existe beaucoup dalgorithmes autodidactes qui se diffrencient les uns des autres par leur
rapidit de convergence et par leur aptitude viter les minimums locaux ( Sato , Kurtosis,
Godard).
Parmi eux, lalgorithme propos en 1980 par Godard sannonce trs robuste en terme de capacit
de convergence notamment pour des canaux svres.
Il ne ncessite ni la connaissance des donnes mises, ni celle des donnes dcides.
La fonction cot utilise est appele fonction de dispersion dordre p . Cette fonction est la
suivante :


42
( )
)
`

=
2
p
p
p
Godard
z[n] E (C) J
o
p
est une constante relle dfinie par :
{ }
{ }
p
n
2p
n
p
a E
a E
=
La fonction de dispersion est gnralement prise lordre 2 (p=2). Lalgorithme dactualisation
des coefficients est alors : ) ) k ( z )( k ( z Y 2 ) k ( h ) 1 k ( h
2
2
T
k E E
+ = +
Cet algorithme tend annuler le signal derreur et privilgie les solutions de module constant,
do son autre nom CMA ( Constant Modulus Algorithm ). Mais il peut prsenter des
minimums locaux et donc ne pas converger vers la solution optimale au sens de la minimisation
de l EQM. Cet inconvnient pourra tre vit en augmentant le pas dadaptation au dtriment
de la stabilit de convergence des coefficients.
Un autre inconvnient de cet algorithme est quil peut entraner une erreur de phase quil faut
estimer et compenser.









43
CHAPITRE V Egalisation non linaire retour de dcision

1. Introduction
Les galiseurs linaires sont limits en performances surtout dans le cas des canaux trs svres (
forts vanouissements par exemple).
Lide de lgalisation par retour de dcision est base sur une approche consistant reconstruire
une partie de linterfrence pour venir la soustraire au signal reu.
Reprenons le modle initial de la chane de transmission :








Avec la fonction de transfert du canal quivalent discret :
=

k
k
k
z g ) z ( G , =

k
jkfT 2
k
e g ) f ( G


On a :
+ + = + =


k n
k n k n
n
0 k k n k n k
w
~
g a g a w
~
g a y
~


Le signal lentre du rcepteur est compos de trois termes : le signal utile
0 k
g a , le terme
dinterfrence
n k n
k n
g a

et le bruit.
Si on connat les autres symboles tels que k n on peut imaginer reconstruire linterfrence et
la soustraire au signal reu :


k n
n k n k
g a y
~

Mais, il faut connatre
n
g et en gnral ce nest pas possible.
Il est possible cependant, dutiliser les symboles dcids aux instants prcdents (en sortie du
rcepteur) pourvu que les dcisions prises aient t bonnes. Cest lapproche appele galisation
retour de dcision ou Decision Feedback Equalization .
k
y
~


k
a

k
a

k
w
~

Bruit AWGN
G(z)
H
E
(z)
+


44
Lide gnrale est celle de lannulation, on va donc commencer par traiter le cas du filtre
annuleur .

2. Filtre annuleur
Considrons la rponse impulsionnelle du canal quivalent :





Le retard introduit par le canal est.
Donc : + + =


j
k j j k k k
w
~
g a g a y
~










Le filtre annuleur , de longueur (N+1) sera un filtre permettant de construire le terme :


j
j , E j k
h a avec j=0,1,,-1, +1,,N
Le signal nettoy de son interfrence sera :
k k k
w
~
g a z + =


Les coefficients
E
h du filtre peuvent tre calculs par application du critre de l EQM, c'est--
dire en minimisant
2
k k
) a z ( E

. Cependant, il faut disposer des donnes en rception ou
dune squence dapprentissage.
La structure optimale dun filtre annuleur dinterfrence bas sur le critre de lEQM est une
structure constitue de deux filtres FIR :
-un filtre adapt la rponse du canal appel filtre avant ( ou feedforward ) charg de
rduire la puissance du bruit
- un filtre charg de reconstruire linterfrence en sortie du filtre adapt.
g
n

n
-1 +1
+ k
y
~


k
z

k
a

Filtre
annuleur
Signal
nettoy
-



45









La fonction de transfert du filtre avant scrit : ) f ( G
*
2 2
a
2
a

+

La fonction de transfert du filtre annuleur est : ( ) 1 ) f ( G
2
2 2
a
2
a



Exemple
Considrons un canal svre prsentant un vanouissement important : canal de Proakis [0.407
0.815 0.407] avec un bruit significatif ( SNR de 15dB) :

Les coefficients du canal sont quasi normaliss car 1 ) k ( h
2
k
, les donnes sont normalises
( 1
2
a
= ), le rapport signal bruit est donc :
2
1
SNR

= ( pour un SNR de 15 dB ) 0316 . 0


2


+
k
y
~


k
z

k k
a a =

Filtre
annuleur
-

Filtre
avant
k
a



46
Tester les performances du canal dans une chane en modulation de phase
QPSK : afficher la constellation et calculer le TEB pour un SNR de 50dB puis de
15dB (ou une variance de 0.0316).

Utiliser le critre de lEQM en appliquant lalgorithme du LMS pour calculer les
coefficients dun galiseur de longueur 3 et tester les performances de lgalisation
pour un SNR de 15dB(TEB).

Calcul des lments de lgaliseur annuleur
Filtre avant :
[ ] [ ] 407 . 0 815 . 0 407 . 0 ) 0 ( g ) 1 ( g ) 2 ( g z ) k ( g e ) k ( g e ) k ( g ) f ( G
k
2
0
2
0 k
jkfT 2
2
0 k
jkfT 2 * *
= = =
+
= =

Pour un SNR de 15 dB il faut pondrer ce vecteur par le coefficient 969368 . 0
1
1
2

+


Filtre annuleur :
) f ( G ). f ( G ) f ( G
*
2
=
[ ][ ]
[ ] ) 2 ( g ) 0 ( g ) 2 ( g ) 1 ( g ) 1 ( g ) 0 ( g ) 2 ( g ) 1 ( g ) 0 ( g ) 2 ( g ) 1 ( g ) 1 ( g ) 0 ( g ) 2 ( g ) 0 ( g
) 0 ( g ) 1 ( g ) 2 ( g . ) 2 ( g ) 1 ( g ) 0 ( g
2 2 2
+ + + +

Ce qui donne : [ ] 16565 . 0 6634 . 0 1 6634 . 0 16565 . 0
On enlve 1 donc 0 pour le coefficient central.

De plus, comme prcdemment, pour un SNR de 15 dB il faut pondrer ce vecteur par le
coefficient 969368 . 0
1
1
2

+


Tester la chane avec galisation par annulation dans le cas dun SNR de 15dB,
afficher les constellations avant et aprs galisation et calculer le TEB



47
Scatter Plot
mission
Scatter Plot
galis
Scatter Plot
+bruit
Random -Integer
Generator
Random
Integer
M-PSK
Modulator
Baseband
M-PSK
M-PSK
Demodulator
Baseband 1
QPSK
Error Rate
Calculation
Error Rate
Calculation
Tx
Rx
Display 1
0
0
6999
Digital Filter 2
Digital
Filter
Digital Filter 1
Digital
Filter
Digital Filter
Digital
Filter
AWGN
Channel
AWGN



3. Structure retour de dcision ou DFE
La structure raliste nest pas lannuleur car on ne dispose pas des donnes mises.
Reprenons la rponse impulsionnelle du canal quivalent :





Si on considre que lannulation sopre uniquement partir de +1, on a un terme dannulation
qui scrit :
N , E N k 2 , E ) 2 ( k
N
1 n
1 , E ) 1 ( k n , E n k
h a h a h a h a
+ +
+ =
+ +
+ + + = K



A linstant (kT) o on veut dterminer z(k) c'est--dire prendre une dcision
k
a , les symboles
N k 2 k 1 k
a , , a , a

K

ont t obtenus partir de dcisions prcdentes. Ces chantillons
appels post cursor ou arrires ou feedback sont la base de la structure rcursive.
La partie manquante ( n<) est la partie due aux chantillons pre - cursor ou avant ou
feedforward .
La structure retour de dcision ou DFE est la suivante :









g
n

n
-1 +1
+
k
y
~


k
z

k k
a a =

Filtre
arrire
-

Filtre
avant
k
a



48
Supposons que le filtre avant soit dordre N
1
+1 et que le filtre arrire soit dordre N
2
.
Alors en sortie de lgaliseur on a : + =
= =

0
1
N j
2
N
1 j
j , E j k j , E j k k
h a h y
~
z
Les coefficients { }
j , E
h peuvent tre calculs partir de la minimisation de l EQM.
Considrons que les dcisions ont t bonnes. Alors :
B , E
T
B F , E
T
F k
H Y H Y z + =

Avec : [ ]
T
k
1 1
N k
1
N k F
y
~
y
~
y
~
Y K

+ +
= [ ]
T
k
1 1
N k
1
N k B
a a a Y K

+ +
=

[ ]
T
0 , E
1 1
N , E
1
N , E F , E
h h h H K
+

= [ ]
T
2
N , E 2 , E 1 , E B , E
h h h H K =
On cherche les filtres qui minimisent l EQM tels que :
( ) [ ] ( )
(

+ =
2
B , E
T
B F , E
T
F k
2
k k
H Y H Y a E z a E
En drivant et en annulant cela conduit :
( ) [ ] 0 H Y H Y a Y E
B , E
T
B F , E
T
F k F
= +
( ) [ ] 0 H Y H Y a Y E
B , E
T
B F , E
T
F k B
= +
Cela se rduit :
[ ] [ ] [ ]
F k B , E
T
B F F , E
T
F F
Y a E H Y Y E H Y Y E = +
[ ] 0 H H Y Y E
B , E F , E
T
F B
= +
En rsolvant ces quations, on obtient les coefficients :
[ ] [ ] [ ] ( ) [ ]
F k
1
T
F B
T
B F
T
F F F , E
Y a E Y Y E Y Y E Y Y E H

=
[ ]
F , E
T
F B B , E
H Y Y E H =
Comme dans le cas de lgaliseur linaire on peut dterminer les coefficients de manire itrative
et utiliser une squence dapprentissage.
Ce type dgaliseurs est en gnral plus performant que les galiseurs linaires.


49

Annexe 1 : Filtre de NYQUIST
T 2
1
f
T 2
1
pour
T 2
1
f pour 0
)
T 2
1
f (
T
cos 1
2
T
T 2
1
f 0 pour T
) f ( X


=
est appel facteur de retombe ou roll-off .

) T / t 4 1 ( T / t
) T / t cos( ) T / t sin(
) t ( x
2 2 2



=



50



51
Annexe 2 : Filtre Blanchissant

Le bruit en sortie du filtre de rception nest pas un bruit blanc, cest un bruit color.
Le signal reu avant galisation scrit :
[ ] + = + =

k
n k k n n n n
w h a w a ) z ( H ' y
n
w est le bruit color.
Lide est dappliquer un filtre de blanchiment H
w
(z) la suite
'
k
y pour rendre le bruit blanc.
=

k
k
k , W W
z h ) z ( H
[ ] [ ] [ ]
n W n W
'
n W
w ) z ( H a ) z ( H ) z ( H y ) z ( H + =
On choisit Hw(z) de telle sorte que : [ ]
n n W
w
~
w ) z ( H = soit une suite dchantillons blancs.
Pour cela, on factorise H(z) sous la forme:
*
*
)
z
1
( G ) z ( G ) z ( H =
En effet, supposons que H(z) soit de degr fini. Soit racine de H(z). Comme
*
k k
h h k

= (symtrie
hermitienne)
*
1

est aussi racine de H(z).


On pose :
*
*
W
)
z
1
( G
1
) z ( H =
Comme ) z ( G )
z
1
( G ) z ( G
)
z
1
( G
1
) z ( H ) z ( H
*
*
*
*
W
= = , on a en sortie du filtre de
blanchiment :
[ ] [ ] [ ] [ ]
n n n W n
'
n
W n
w
~
a ) z ( G w ) z ( H a ) z ( G y ) z ( H y
~
+ = + = =
Le filtre G(z) est connu et le bruit
n
w
~
est blanc.





52

Rfrences

[1] R.W. Lucky , Techniques for adaptive equalization of digital communication 255-286, 1965.
[2] Proakis J. G. Digital Communications, 4e dition, New York, Mc Graw-Hill, 2000.
[3] M. Bellanger, Analyse des signaux et filtrage numrique adaptatif, Masson 1989.
[4] Picinbono B. Signaux alatoires (en trois tomes), Bases du traitement statistique du signal
(tome 3), Paris, Dunod, 1995.
[5] Haykin S., Adaptive Filter Theory, 3e dition, Upper Saddle River, New Jersey, 1996.
[6] Macchi O. Lgalisation numrique en communications, Annales des tlcommunications,
vol. 53, n_1-2, pp. 39-58, 1998.
[7] Brossier J.M. Egalisation et synchronisation, Signal et communication numrique, collection
Traitement du Signal, Hermes 1997
[8] Sklar B. Digital Communications Fundamentals and applications, Prentice Hall 2001.
[9] Labat J., Macchi O., Laot C. Adaptive decision feedback Equalizers : Can you skip the training
period, IEEE trans. on Communications, 1996.
[10] Tugnait J. K., Tong L., Ding Z. Single User Channel Estimation and Equalization, IEEE Signal
Processing Magazine, pp. 17-28, may 2000.
[11] D. Godard, Self recovering equalization and carrier tracking in two-dimensional data communication
systems IEEE trans. on Communications, vol. COM-28 no. 11, nov. 1980, pp. 1867-1875.