Egalisation-11-12

84
Égalisation en communications numériques

description

signal

Transcript of Egalisation-11-12

Page 1: Egalisation-11-12

Égalisation en communications numériques

Page 2: Egalisation-11-12

But de l’égalisation• Réduire l’effet de l’Interférence Entre Symboles (IES ou ISI) due au canal

de transmission

• Si le canal varie dans le temps (mobilité) � adaptation

Channel

Bruit

Egaliseur

Page 3: Egalisation-11-12

Comment faire ?– Approche optimale :Estimation des données par le critère du maximum de

vraisemblance (MV ou MLSE « Maximum Likelihood Sequence Estimator »)

Exemple : égalisation de VITERBISouvent trop lourde en complexité

– Approche sous optimale : ÉgalisationAppliquer un filtre ´égaliseur ` de telle sorte que la sortie ≈ données

émises

Différents types de filtres :- Linéaires : par exemple des filtres transverses ( « feedforward

filter »)- Non linéaires : deux structures (« feedforward and feedback” )

avec retour de décision (DFE ou « Decision Feedback Equalizers”)

- Un design : déterminé (ou « preset ») ou adaptatif

Page 4: Egalisation-11-12

1. la chaîne de transmission

• Système bande de base

• Modèle équivalent

Tx filter Channel

)t(wblanc

)t(x Rx. filterDetector

ky

kTt =

{ }ka{ }ka1a 2a

3aTT

)(

)(

fH

th

t

t

)(

)(

fH

th

r

r

)(

)(

fH

th

c

c

Equivalent system

)t(wcoloré

)t(yDetector

ky

kTt =

{ }ka{ }ka1a 2a

3aTT

)(

)(

fH

th

Bruit filtré

)()()()( fHfHfHfH rct=

Page 5: Egalisation-11-12

Nyquist

– Critère de Nyquist:

• La bande minimale requise pour détecter sans IES un débit symbole R =1/T [symbols/s] est Bmin=R/2=1/2T [Hz].

• De manière équivalente, un système avec une bande fixée B=R/2=1/2T [Hz], peut supporter sans IES un débit maximum de 2B=1/T=RMax [symbols/s].

∑+∞

−∞==−

nT)

T

nf(H

Hz][symbol/s/ 2B

RB

2

R

T2

1 ≤⇒≤=

Page 6: Egalisation-11-12

Nyquist -Cas idéal

T2

1

T2

1−

T

)( fH

f t

)T/tsinc()t(h π=1

0 T T2T−T2−0

T2

1B =

Ideal Nyquist filter Ideal Nyquist pulse

Page 7: Egalisation-11-12

Nyquist – cas réel• Nyquist pulses: Pas d’IES aux instants d’échantillonnage • Nyquist filter: Filtre réalisable B> 1/2T

Exemple : Raised-Cosine filter

α+>

α+<<α−

α−−απ+

α−<

=

T2

1|f|for 0

T2

1|f|

T2

1for

T2

1f(

Tcos1

2

TT2

1|f|for T

)f(H

Roll-off factor10 ≤α≤

)T/t41(T/t

)T/tcos()T/tsin()t(h

222α−⋅ππαπ=

Page 8: Egalisation-11-12

2

R)1(B Baseband sSB α+=

|)(||)(| fHfH RC=

0=α5.0=α

1=α1=α

5.0=α

0=α

)()( thth RC=

T2

1

T4

3

T

1T4

3−T2

1−T

1−

1

0.5

0

1

0.5

0 T T2 T3T−T2−T3−

R)1(B Passband DSB α+=

)f(H)f(H)f(H)f(H rctRC =Pas d’IES à l’instant d’échantillonnage

Page 9: Egalisation-11-12

• Problème : il faut connaître le canal (Hc(f))• Une alternative :

– Ajouter un filtre égaliseur en réception (He(f)) :

– Méthode :

)()()()(

)()()(

SRRCRC

RC

fHfHfHfH

fHfHfH

tr

rt

===

= Tenir compte de l’IES due

aux filtres

)()()()()(RC fHfHfHfHfH erct=

)(

1)(

fHfH

ce = Tenir compte

de l’IES due au canal

)f(jcc

ce)f(H)f(H θ=

Non-constant amplitude

Amplitude distortion

Non-linear phase

Phase distortion

Page 10: Egalisation-11-12

Filtre Égaliseur• Système bande de base

• Modèle équivalent

Tx filter Channel

)t(wblanc

)t(x

Detectorkz

kTt =

{ }ka1a

2a 3aT )(

)(

fH

th

t

t

Rx. filter

)(

)(

fH

th

r

r

)(

)(

fH

th

c

c

Equivalent system

)t(wcoloré

Detector

k'y

kTt =)(

)(

fH

th

Bruit filtré ou coloré

)()()()( fHfHfHfH rct=

∑ −k

k kTta )(δ Equalizer

)(

)(

fH

th

e

e

1a

2a 3aT

∑ −k

k kTta )(δ Equalizer

)(

)(

fH

th

e

e

)t(h)t(w)t(w rbc ∗=

{ }ka

Problème: le bruit n’est pas AWGN

Filtre numérique

Page 11: Egalisation-11-12

Bruit coloré � Bruit blanc

Equivalent system

)t(wc

Detector

k'y

kTt =)(

)(

fH

th

1a

2a 3aT

∑ −k

k kTta )(δ Equalizer

)(

)(

fH

th

e

e

{ }ka

FiltreBlanchissant

)f(HW

FiltreÉgaliseur

)f(He

kw~

kzEquivalent systemDetector

ky~

)z(H)z(H)z(G w⋅=ka Égaliseur

)z(Heka

∑ +∑ +=+=≠

−−kn

knknn

0kknknk w~gagaw~gay~

• En temps discret :

∑= −j

jk,Ejk hy~z?

Page 12: Egalisation-11-12

Critères de performances

• Diagramme de l’oeil

time scale

amp

litu

de

scal

e Marge au bruit

sensibilité“timing error”

Distortionliée à l’IES

“timing jitter”

Page 13: Egalisation-11-12

Pas de bruit – Pas d’IES

Page 14: Egalisation-11-12

Bruit – Pas d’IES

Page 15: Egalisation-11-12

Pas de Bruit - IES

Page 16: Egalisation-11-12

Bruit - IES

Page 17: Egalisation-11-12

Critères de performances• EQM : Erreur Quadratique Moyenne

e(n) représente l’erreur d’estimation des donnéesτ est le retard du filtre

• Interférences résiduelles

• Maximum de distorsion

))n(z)n(a(E))n(e(E 22 −τ−=

2max

k

2max

2k

z

zz

ISI∑ −

=

max

kmaxk

z

zz

MD∑ −

=

Page 18: Egalisation-11-12

SOMMAIRE– Égaliseurs linéaires

• Filtrage transversal– Égaliseur « Zero-forcing » (ZF)– Égaliseur « Minimum Mean Square Error » (MMSE)

– Simulations : MATLAB– Égaliseurs adaptatifs

• LMS, RLS, autodidacte

– Égaliseurs non linéaires • Decision feedback (DFE)

– Utilise les décisions antérieures pour réduire l’IES

Page 19: Egalisation-11-12

Égalisation Linéaire

kw~

kzEquivalent systemDetector

ky~

)z(H)z(H)z(G w⋅=ka Égaliseur

)z(Heka

τ τ ττ

)N(he

− )1N(he +− )1N(he − )N(he

ky

kz

Calcul descoefficients

)kn(y −

Filtre transverse à (2N+1) coefficients

Page 20: Egalisation-11-12

Égalisation Linéaire• Filtre transverse à (2N+1) coefficients

∑−=

−=−=−⋅=N

Nnn,e N2,...,N2k N,...,Nn )nk(yh)k(z

τ τ ττ

)N(he

− )1N(he +− )1N(he − )N(he

ky

kz

Calcul descoefficients

)kn(y −

Page 21: Egalisation-11-12

• La relation matricielle Z=Y.He

−+−−−

−+−−

=

=

=

)N(y0000

)1N(y)N(y000

)N(y)1N(y)2N(y)1N(y)N(y

0)N(y)1N(y

0000)N(y

Yet

h

h

h

eH

)N2(z

)0(z

)N2(z

Z

N,e

0,e

N,e

L

L

MMM

L

MMM

LLL

L

M

M

M

M

Pour un nombre d’échantillons égal à la longueur du filtre (2N+1), on observe :y(-N), y(-N+1), … y(N-1), y(N)

∑−=

−=−=−⋅=N

Nnn,e N2,...,N2k N,...,Nn )nk(yh)k(z

Page 22: Egalisation-11-12

−−−

−+−−−

−−−+−−+−−−−−−

=

)N(y)1N(y)1N3(y)N3(y

)1N(y)N(y)N3(y

)N(y)1N(y)2N(y)1N(y)N(y

)1N(y)N(y)1N(y

)N3(y)1N3(y)2N(y)1N(y)N(y

Y

LL

LLM

MMM

L

MMM

LLL

L

Si le nombre d’échantillons est plus grand y(-3N)…y(3N) on a :

EXERCICE : écrire les relations pour un filtre à 3 coefficients

Page 23: Egalisation-11-12

Comment calculer les coefficients { he,n} pour minimiser les erreurs en sortie ?

• Deux critères : Zero Forcing et MMSE

1) Zéro Forcing ou ZF : Inversion du canal � le moyen le + simple

�Dans le cas sans bruit : on retrouve exactement les symboles d’info

)z(G

1)z(H E =

Page 24: Egalisation-11-12

Critère ZF• On posed’où:

)t(h)t(g)t(q E∗=

∑ ∑ ⋅++=≠

+∞

−∞=−−

kn nnkn,Eknnk0k w~hqaaqz

utile

IES bruit

• Pour un canal donné (g(t)), si on peut choisir les {he,j} tels que:

ou

On aura éliminé l’IES � c’est le ZF

0n,0qn ≠∀=

≠=

=⋅= ∑+∞

−∞=− 0n0

0n1ghq

jjnj,En

Page 25: Egalisation-11-12

• Problème : le bruit n’est pas pris en compte et il risque même d’être amplifié car la densité de puissance du bruit est divisée par qui peut devenir nulle à certaines fréquences

2)f(G

Critère ZF

Page 26: Egalisation-11-12

• On cherche les {he,j} tels que :

• On se limite à la résolution de (2N+1) équations

Mise en œuvre du critère ZF

EH.YZ

et

N,2,1kpour0

0kpour1)k(z

=

±±±==

=K

−−

1,E

0,E

1,E

h

h

h

)1(y00

)0(y)1(y0

)1(y)0(y)1(y

0)1(y)0(y

00)1(y

−−

)2(z

)1(z

)0(z

)1(z

)2(z

0

0

1

0

0

= = Z.YH 1E

−=

Page 27: Egalisation-11-12

Exercice ZF

•Égaliseur à 3 coefficients ? Distorsion ?

•Égaliseur à 5 coefficients ? Distorsion ?

•Utilisation de MATLAB.

Page 28: Egalisation-11-12

Solution pour 3 coefficients

• Consider a three-taps transversal filter, the given received data {y(k)} are

[0.0, 0.2, 0.9, -0.3,0.1]

−−=

−−−

=

=

1,e

0,e

1,e

1,e

0,e

1,e

h

h

h

9.03.01.0

2.09.03.0

02.09.0

h

h

h

)0(y)1(y)2(y

)1(y)0(y)1(y

)2(y)1(y)0(y

0

1

0

YHez

−=

∴−

3448.0

9631.0

2140.0

1,

0,

1,

e

e

e

h

h

h

MD= 8.4%

Page 29: Egalisation-11-12

Solution pour 5 coefficients

• [0.0, 0.2, 0.9, -0.3,0.1]

Les 5 coefficients de l’égaliseur sont :0.0443-0.19940.96370.34190.0069

La distorsion maximum est : MD= 4.17%

Page 30: Egalisation-11-12

Script MATLAB%zeroforcing 3 coeffy1=[ 0.9 -0.3 0.1]'y2=[ 0.2 0.9 -0.3 ]'y3=[0 0.2 0.9 ]'

xx=[y1,y2,y3]

zer=[ 0 1 0 ]'cof=inv(xx)*zer

y=[ 0 0 0 0 0 0.2 0.9 -0.3 0.1 0 0 0 0 ];z=filter(cof,1,y)sum=0;for i=1:length(z)

sum=sum+abs(z(i));endsum=sum-max(z);MD=sum/max(z)

% calcul des perfs en BERx=[ 0.0 0.2 0.9 -0.3 0.1 ];LLc=length(x); n_coeff=length(cof);RSB=[1 2 3 4 5 7 8 9 10 12 15];R=(n_coeff+LLc)/2-1;ya=2*randint(10000,1,2)-1;y=ya';ly=length(y);yf=filter(x,1,y);for i=1:length(RSB)

yb=yf+10^(-RSB(i)/20)*randn(1,ly);eqz=filter(cof,1,yb);dec=sign(eqz(1+R:ly));err=y(1:ly-R)-dec;BER(i)=length(find(err))/ly%BER=length(find(err))/ly

end;figure(4)semilogy(RSB,BER)

Page 31: Egalisation-11-12

TEB en fonction du RSB3 coeffs

En bleu : sans égalisationEn vert : avec égalisationOn voit qu’on a 10-4 pour 12dB

0 5 10 1510

-4

10-3

10-2

10-1

100

Page 32: Egalisation-11-12

Script MATLAB%zeroforcing 5 coeffy1=[ 0.9 -0.3 0.1 0 0]'y2=[ 0.2 0.9 -0.3 0.1 0]'y3=[0 0.2 0.9 -0.3 0.1 ]'y4=[0 0 0.2 0.9 -0.3]'y5=[0 0 0 0.2 0.9]'

xx=[y1,y2,y3,y4,y5]

zer=[ 0 0 1 0 0]'cof=inv(xx)*zer

y=[ 0 0 0 0 0 0.2 0.9 -0.3 0.1 0 0 0 0 ];z=filter(cof,1,y)% Calcul taux distorsion egaliseursum=0;for i=1:length(z)

sum=sum+abs(z(i));endsum=sum-max(z);MD=sum/max(z)

% calcul des perfs en BERx=[ 0.0 0.2 0.9 -0.3 0.1 ];LLc=length(x); n_coeff=length(cof);RSB=[1 2 3 4 5 7 8 9 10 12 15];R=(n_coeff+LLc)/2-1;ya=2*randint(10000,1,2)-1;y=ya';ly=length(y);yf=filter(x,1,y);for i=1:length(RSB)

yb=yf+10^(-RSB(i)/20)*randn(1,ly);eqz=filter(cof,1,yb);dec=sign(eqz(1+R:ly));err=y(1:ly-R)-dec;BER(i)=length(find(err))/ly;

end;figure(4)semilogy(RSB,BER)

Page 33: Egalisation-11-12

TEB en fonction du RSB5 coeffs

En bleu : sans égalisationEn vert et rouge : avec égalisation 3 et 5 coeffsRésultats en TEB identiques

0 5 10 1510

-5

10-4

10-3

10-2

10-1

100

Page 34: Egalisation-11-12

2) Critère de l’erreur quadratique moyenne (EQM) ou MMSE

• Objectif : minimiser l’erreur quadratique moyenne EQM (ou MSE) de tous les termes (IES + bruit) à la sortie de l’égaliseur

• Critère plus robuste que le ZF en présence de bruit

( )[ ]2kk

2k zaE)(EEQM −== ε

Equalizer

+Error signal

ky

kz ka Données émises

[ ]2))((min kakTzE −

Page 35: Egalisation-11-12

Critère EQM ou MMSE

• Filtre transverse :

∑ ∑ ∑∑−= −= −=

−−=

− −+=

−=

N

Nj

N

Np

N

Npayp,Epjyp,Ej,Ek

N

Njj,Ejkk p

RhRhh)a(EhyaEEQM 222

kz)yy(ERy pk

*jkpj −−− =Corrélation des données reçues :

Inter corrélation entre les données reçues et les données émises :

)ay(ERay *kjkp −=

Page 36: Egalisation-11-12

Critère EQM ou MMSE

• Minimiser l’EQM revient à résoudre (2N+1) équations telles que :

• Sous forme matricielle :

N,,,ppourRayRyhN

Njppjj,E ±±±==∑

−=− K210

ayEy RHR =.

[ ]Tkky YYER .=

[ ]kkay YaER .= Mais : on ne connaît pas les données émises !!!!!

Page 37: Egalisation-11-12

Critère EQM ou MMSE

• Solution : une séquence d’apprentissage

TrainingSequence Data transmissionTraining

Sequence Data transmission

ayyE RRH .1−=

[ ]kkay YaER .=

ka

Page 38: Egalisation-11-12

Critère EQM ou MMSE

• Exercice

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 séquence d’apprentissage soit un simple dirac.

Quel est l’ égaliseur à 7 coefficients qui permet de retrouver en sortie le dirac émis?

Page 39: Egalisation-11-12

Critère EQM ou MMSE

Les coefficients obtenus sont :-0.0835-0.15380.20880.9227

-0.11920.0635

-0.0254Et la distorsion : MD=5.92%

Inv(R) =0.9227 0.0513 -0.1232 -0.0710 0.0202 0.0169 0.00110.0513 0.9256 0.0444 -0.1271 -0.0698 0.0213 0.0169

-0.1232 0.0444 0.9417 0.0535 -0.1285 -0.0698 0.0202-0.0710 -0.1271 0.0535 0.9467 0.0535 -0.1271 -0.07100.0202 -0.0698 -0.1285 0.0535 0.9417 0.0444 -0.12320.0169 0.0213 -0.0698 -0.1271 0.0444 0.9256 0.05130.0011 0.0169 0.0202 -0.0710 -0.1232 0.0513 0.9227

R=1.1116 -0.0600 0.1427 0.0683 -0.0128 0.0018 0.0001-0.0600 1.1116 -0.0600 0.1427 0.0683 -0.0128 0.00180.1427 -0.0600 1.1116 -0.0600 0.1427 0.0683 -0.01280.0683 0.1427 -0.0600 1.1116 -0.0600 0.1427 0.0683

-0.0128 0.0683 0.1427 -0.0600 1.1116 -0.0600 0.14270.0018 -0.0128 0.0683 0.1427 -0.0600 1.1116 -0.06000.0001 0.0018 -0.0128 0.0683 0.1427 -0.0600 1.1116

Ray =d=0.0108

-0.05580.16171.0000

-0.17490.22700.0110

Page 40: Egalisation-11-12

Programmation MATLABcritère ZF

Définition des échantillons d’entrée ({x}) :x=[ 0.0 0.2 0.9 -0.3 0.1 ]; % réponse du canal à un diracLL=length(x); % longueur de x : LL= 2*L+1L=round((LL-1)/2) ;

Définition du temps ( t ) et tracé :T=1 ; % T représente un facteur d’échantillonnaget= -L*T:T:L*T;figure(1)stem(t,x) title('reponse impulsionnelle du canal')

Page 41: Egalisation-11-12

Choix du nombre de coefficients du filtre égaliseurn_coeff=5 ;N=round((n_coeff-1)/2) ; % n_coeff= 2*N+1

Création de la matrice carrée X des échantillonsLa dimension de la matrice des échantillons est (4N+1 × 2N+1) donc ici 9×5;Le nombre d’échantillons va de x(-2N) à x(2N) dans la matrice carrée.On insère donc 2N zéros dans le vecteur x si sa longueur est < (4N+1):If L<2N

x=[zeros(1, 2*N),x,zeros(1, 2*N)];LL=length(x); L=round((LL-1)/2) ;

elsex=x;

end;Remarque : MATLAB indice les vecteurs à partir de 1: x(1), x(2)….pas à partir de 0 !!!

Page 42: Egalisation-11-12

xx=x'; % on transforme x en un vecteur “colonne” de dimension 4N+1

X=[ ]; % initialisation de la matrice X carrée de dimensions (2N+1×2N+1)for m=-N:1:N

for n=-N:1:NX(m+N+1,n+N+1)=xx(L+m-n+1);

end;end;

Inversion de la matriceK=inv(X);

Calcul des coefficients par le critère ZF: c_optz=zeros(n_coeff,1); % création d’un vecteur « colonne » de longueur n_coeff

rempli de zérosz((N+1),1)=1; % on force à 1 la valeur centrale du vecteurc_opt=K*zc_opt‘

Page 43: Egalisation-11-12

• Utilisez le script pour retrouver les résultats obtenus précédemment sur l’exemple .

• Modifiez le nombre de coefficients et examiner la valeur de la distorsion.

Page 44: Egalisation-11-12

Autre exemple

)4.0

1(

1)(

2

+

=

T

ttx

Page 45: Egalisation-11-12

Impact du bruit

Page 46: Egalisation-11-12

Impact du bruit

Page 47: Egalisation-11-12

Programmation MATLABcritère MMSE

Création de la matrice X des échantillons ( elle n’est plus carrée !!)

if L<3*Nx=[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 Xfor m=-2*N:1:2*N

for n=-N:1:NX(m+2*N+1,n+N+1)=xx(L+m-n+1);

end;end;

Page 48: Egalisation-11-12

Matrice de corrélation des données reçuesRx=X’*X

Inversion de la matriceK=inv(Rx);

Intercorrélation des données reçues avec la séquence d’apprentissage ( un dirac)

ap=zeros((4*N+1),1) ; % vecteur de longueur 4N+1 rempli de zéros

ap((2*N+1),1)=1 ; % on force à 1 la valeur centrale du vecteur

D=X’*ap;

Calcul des coefficients par le critère MMSE: c_optc_opt=K*D;

Page 49: Egalisation-11-12

• Utilisez le script pour retrouver les résultats obtenus précédemment.

• Modifiez le nombre de coefficients et examiner la valeur de la distorsion.

• Pour un nombre de coefficients de 7, comparer les performances des 2 critères (ZF et EQM) sur cet exemple en l’absence de bruit. Conclusion.

Page 50: Egalisation-11-12

Impact du bruit

• Pour comparer les 2 critères : 1 seul programme pour que le bruit aléatoire généré soit identique

Page 51: Egalisation-11-12

Impact du bruit

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

Nouveau canal : fir1(8,0.8)H=[-0.0038 0.0218 -0.0821 0.1625 0.8031 0.1625 -0.0821 0.0218 -0.0038]

Page 52: Egalisation-11-12

Impact du bruit

• Génération d’un signal modulé MDA-4

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');

Page 53: Egalisation-11-12

Impact du bruit

• Impact du canal sans bruit

-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

1constellation de la modulation MDA-4 en sortie du canal bruité

Page 54: Egalisation-11-12

Impact du bruit

• Impact du canal avec bruit (SNR=12dB)

-5 -4 -3 -2 -1 0 1 2 3 4 5-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1constellation de la modulation MDA-4 en sortie du canal bruité

Page 55: Egalisation-11-12

Impact du bruit

• Impact du canal avec bruit (SNR=5dB)

-8 -6 -4 -2 0 2 4 6 8-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1constellation de la modulation MDA-4 en sortie du canal bruité

Page 56: Egalisation-11-12

• Utilisez le script fourni (eqm_zf_ask.m) pour égaliser la sortie du canal non bruité par les 2 critères EQM et ZF (égaliseur avec 9 coefficients); on prendra SNR=50dB

• Même opération pour le cas bruité : SNR entre 10 et 20 dB

Impact du bruit

Page 57: Egalisation-11-12

Solution

• Pour un SNR=50dB :Coefficients EQM :0.0652 -0.1480 0.2814 -0.4215 1.4793 -0.4228 0.2832 -0.1524 0.0705nombre de symboles faux = 0taux d erreur par symboles SER = 0Distortion mmse= 13.6353 %EQM mmse= 0.01285

Coefficients ZF :0.0816 -0.1640 0.2958 -0.4346 1.4921 -0.4365 0.2986 -0.1698 0.0883nombre de symboles faux = 0taux d erreur par symboles SER = 0Distortion zf = 10.3075 %EQM zf = 0.014828

Page 58: Egalisation-11-12

SNR=50dB

-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

1constellation de la modulation MDA-4 en sortie égaliseur EQM

-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

1constellation de la modulation MDA-4 en sortie égaliseur ZF

Page 59: Egalisation-11-12

Solution

• Pour un SNR=20dB :EQM :nombre de symboles faux = 0taux d erreur par symboles SER = 0Distortion mmse= 26.7841 %EQM mmse= 0.049556ZF :nombre de symboles faux = 0taux d erreur par symboles SER = 0Distortion zf = 20.5456 %EQM zf = 0.061398

Page 60: Egalisation-11-12

Solution

• Pour un SNR=12dB :EQM :nombre de symboles faux = 0taux d erreur par symboles SER = 0Distortion mmse= 49.7648 %EQM mmse= 0.10203ZF:nombre de symboles faux = 5taux d erreur par symboles SER = 0.0012525Distortion zf = 39.9726 %EQM zf = 0.14139

Page 61: Egalisation-11-12

Comparaison ZF - MMSE

• Dans les 2 cas , plus le nombre de coefficients est grand, plus la distorsion est faible.

• Sans bruit, les deux critères donnent à peu près les mêmes résultats.

• En présence de bruit, le MMSE est plus robuste.• Le paramètre distorsion est insuffisant pour évaluer seul

la qualité d’égalisation en présence de bruit � souvent on préfère calculer l’EQM.

Page 62: Egalisation-11-12

SIMULINK

Page 63: Egalisation-11-12

Égalisation Adaptative

• On peut tenir compte des variations du canal en actualisant les coefficients de l’égaliseur ( par un algorithme adaptatif )

• L’approche adaptative est liée à un signal d’erreur :e(k) = z(k)-x(k)

L’objectif est de minimiser:2

kJ E e=

EqualizerChannel

+

Error signal

Page 64: Egalisation-11-12

Égalisation Adaptative

L’approche adaptative comporte deux phases :• 1ère phase : Initialisation ou mode supervisé ou

« Training mode »Une séquence d’apprentissage est nécessaire.Elle permet

d’ajuster les coefficients de l’égaliseur.

EqualizerChannel

+

Page 65: Egalisation-11-12

Égalisation Adaptative

• 2ème phase : phase de poursuite ou « Decision Directed Mode »

Les décisions sont utilisées pour générer le signal d’erreur.

L’actualisation en mode DD est efficace si les variations du canal sont lentes

EqualizerChannel

+

Page 66: Egalisation-11-12

Égalisation Adaptative

• Un des algorithmes les + simples : le gradient stochastique ou « Least Mean Square » (LMS)– À partir des coefficients à l’instant (k-1) on calcule les

coefficients à l’instant k

– Avantage : calcul itératif simple qui ne nécessite plus de calculer des matrices d’auto et inter corrélations.

kkEE Ye)1k(h)k(h µ+−=

Signal reçuSignal d’erreur

Constante ou pas d’adaptation

Page 67: Egalisation-11-12

Mise en œuvre du LMS• MATLAB : exemple de la transmission d’un signal ASK-4

sur le canal fir1(8,0.8) – égalisation 9 coefficientsPour 50dB : 0.0652 -0.1480 0.2814 -0.4215 1.4793 -0.4228 0.2832

-0.1524 0.0705

0 1000 2000 3000 4000 5000 6000 7000 8000-0.5

0

0.5

1

1.5C

oef

fic

ien

ts

It érati on

Page 68: Egalisation-11-12

Canal du chapitre 2 : H = 0.0110 0.2270 -0.1749 1.0000 0.1617 -0.0558 0.0108

- Calculez les 7 coefficients de l’égaliseur par application de l’algorithme LMS

- Quel est le nombre d’itérations pour assurer la convergence?

Mise en œuvre du LMS

Page 69: Egalisation-11-12

Mise en œuvre du LMS

H = 0.0110 0.2270 -0.1749 1.0000 0.1617 -0.0558 0.0108SNR=100 dB

-0.0800-0.15280.20460.9185-0.12050.0632-0.0273

Page 70: Egalisation-11-12

Mise en œuvre du LMS

H = 0.0110 0.2270 -0.1749 1.0000 0.1617 -0.0558 0.0108SNR=10 dB

-0.0767-0.15050.20930.9191

-0.12910.0486

-0.0240

0 200 400 600 800 1000 1200-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Coe

ffic

ient

s

Itération

Page 71: Egalisation-11-12

Mise en œuvre du LMSH = 0.0110 0.2270 -0.1749 1.0000 0.1617 -0.0558 0.0108SNR=10dB7 coefficients 21 coefficients

Page 72: Egalisation-11-12

LMS - Simulink

erreur

coeff

Scatter Plotémission

Scatter Plotégalisé

Scatter Plot+bruit +canal

Scatter Plot+bruit

Random -IntegerGenerator

RandomInteger

M-PSKModulatorBaseband

M-PSK

M-PSKDemodulatorBaseband 1

QPSK

LMS Filter

LMS

Input

DesiredDesiredDesiredDesired

Output

Error

Wts

Integer Delay 1

z-8

Error RateCalculation

Error Rate Calculation

Tx

Rx

Display 1

0

0

7993

Display

0.06599 + 0.001947 i

-0.1492 - 0.0009534 i

0.2835 + 0.004401 i

-0.4217 - 0.001342 i

1.478 - 0.0002475 i

-0.421 + 0.001593 i

0.2829 - 0.003933 i

-0.1488 + 0.001293 i

0.06545 - 0.001703 i

Digital Filter

DigitalFilter

Complex toReal -Imag 2

Re

Im

Complex toReal -Imag 1

Re

Im

AWGNChannel

AWGN

Page 73: Egalisation-11-12

Égalisation Adaptative

• Le LMS devient inapproprié lorsque les variations du canal sont rapides

• Un autre algorithme qui est plus performant mais qui est complexe : « Recursive Least Square » (RLS) : Optimisation de la vitesse de convergence en fonction des coefficients.

Page 74: Egalisation-11-12

RLS - Simulink

erreur

coeff

Scatter Plotémission

Scatter Plotégalisé

Scatter Plot+bruit +canal

Scatter Plot+bruit

Random -IntegerGenerator

RandomInteger

RLS Filter

Input

Desired

Output

Error

Wts

RLSM-PSK

ModulatorBaseband

M-PSK

M-PSKDemodulatorBaseband 1

QPSK

Integer Delay 1

z-8

Error RateCalculation

Error Rate Calculation

Tx

Rx

Display 1

0

0

2493

Display

0.06003 - 0.01277 i

-0.1503 + 0.01938 i

0.2811 - 0.01806 i

-0.4185 + 0.01052 i

1.475 - 0.002859 i

-0.4196 + 0.0003463 i

0.2819 + 0.009577 i

-0.1506 - 0.01111i

0.06654 + 0.009081 i

Digital Filter

DigitalFilter

Complex toReal -Imag 2

Re

Im

Complex toReal -Imag 1

Re

Im

AWGNChannel

AWGN

Page 75: Egalisation-11-12

Égalisation Adaptative

• Pour initialiser la convergence, une séquence d’apprentissage est nécessaire � pénalisation

• Exemple : une trame d’apprentissage est régulièrement émise pour actualiser la convergence lorsque le canal varie très rapidement � réduction du débit utile

• Une solution : égalisation autodidacte• Sans séquence d’apprentissage; ex du CMA pour les

modulations à enveloppe constante

Page 76: Egalisation-11-12

Égalisation à retour de décisionou DFE « Decision Feedback Equalizer »

• Egaliseurs non linéaires utilisés lorsque le canal présente des distorsions d’amplitude sévères

• Le DFE utilise des désicions antérieures (feedback) pour annuler les interférences dues aux symboles déjà détectés.

• L’idée de base est que si les valeurs des symboles déjà décidés sont connues ( ou supposées correctes) alors il est possible d’annuler exactement l’IES due à ces symboles

Page 77: Egalisation-11-12

Exemple du concept de l’annulationSimulink – Proakis

Scatter Plotémission

Scatter PlotégaliséScatter Plot

+bruit

Random -IntegerGenerator

RandomInteger

M-PSKModulatorBaseband

M-PSK

M-PSKDemodulatorBaseband 1

QPSK

Error RateCalculation

Error Rate Calculation

Tx

Rx

Display 1

0

0

6999

Digital Filter 2

DigitalFilter

Digital Filter 1

DigitalFilter

Digital Filter

DigitalFilter

AWGNChannel

AWGN

• Le retard pour le calcul du TEB est 2 (1canal +1 filtre adapté)

Page 78: Egalisation-11-12

• Pour un SNR de 50dB le TEB=0.18• Pour un SNR de 15dB TEB=0.238

Exemple du concept de l’annulationSimulink – Proakis SNR=50 et 15dB

Page 79: Egalisation-11-12

Exemple du concept de l’annulationSimulink – Proakis SNR= 15dB

erreur

coeff

Scatter Plotémission

Scatter Plotégalisé

Scatter Plot+bruit +canal

Scatter Plot+bruit

Random -IntegerGenerator

RandomInteger

M-PSKModulatorBaseband

M-PSK

M-PSKDemodulatorBaseband 1

QPSK

LMS Filter

LMS

Input

DesiredDesiredDesiredDesired

Output

Error

Wts

Integer Delay 1

z-2

Error RateCalculation

Error Rate Calculation

Tx

Rx

Display 1

0.06676

534

7999

Display

-0.465 + 0.007991 i

1.396 + 0.007524 i

-0.4524 - 0.01769 i

Digital Filter

DigitalFilter

Complex toReal -Imag 2

Re

Im

Complex toReal -Imag 1

Re

Im

AWGNChannel

AWGN

Les coefficients sont : -0.465 1.396 -0.452

TEB = 0.066

Page 80: Egalisation-11-12

Exemple du concept de l’annulationSimulink – Proakis SNR= 15dB

Scatter Plotémission

Scatter PlotégaliséScatter Plot

+bruit

Random -IntegerGenerator

RandomInteger

M-PSKModulatorBaseband

M-PSK

M-PSKDemodulatorBaseband 1

QPSK

Error RateCalculation

Error Rate Calculation

Tx

Rx

Display 1

0

0

6999

Digital Filter 2

DigitalFilter

Digital Filter 1

DigitalFilter

Digital Filter

DigitalFilter

AWGNChannel

AWGN

Page 81: Egalisation-11-12

Égalisation à retour de décision

• Structure d’un DFE

The forward and feedback coefficients may be adjusted simultaneously to minimize the MSE

Feed forward filter (FFF)

Feed back filter (FBF)

Adjustment of filter coefficients

Input Output

++

Symbol decision

Page 82: Egalisation-11-12

Égalisation à retour de décision

InputFeed forward

C(z)

Feedback

F(z)

Adjustment of filter coefficients

Output

++

Symbol decision

Page 83: Egalisation-11-12

Égalisation à retour de décision

InputFeed forward

C(z)

Feedback

F(z)

Adjustment of filter coefficients

Output

++

Symbol decision

Page 84: Egalisation-11-12

Égalisation à retour de décision

• Utilisez le script fourni pour calculer les coefficients par le LMS…..