91
Égalisation en communications numériques

Egalisation-12-13(2)

Embed Size (px)

Citation preview

  • galisation en communications numriques

  • But de lgalisation Rduire leffet de lInterfrence Entre Symboles (IES ou ISI) due au canal

    de transmission

    Si le canal varie dans le temps (mobilit) adaptation

    Channel

    Bruit

    Egaliseur

  • Comment faire ? Approche optimale :Estimation des donnes par le critre 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 donnes

    mises

    Diffrents types de filtres :- Linaires : par exemple des filtres transverses ( feedforward

    filter )- Non linaires : deux structures ( feedforward and feedback )

    avec retour de dcision (DFE ou Decision Feedback Equalizers)

    - Un design : dtermin (ou preset ) ou adaptatif

  • 1. la chane de transmission Systme bande de base

    Modle quivalent

    Tx filter Channel

    )t(wblanc

    )t(x Rx. filterDetector

    ky

    kTt =

    { }ka{ }ka1a 2a

    3aT T

    )()(fHth

    t

    t

    )()(fHth

    r

    r

    )()(fHth

    c

    c

    Equivalent system

    )t(wcolor

    )t(yDetector

    ky

    kTt =

    { }ka{ }ka1a 2a

    3aT T

    )()(fHth

    Bruit filtr

    )()()()( fHfHfHfH rct=

  • Nyquist

    Critre de Nyquist:

    La bande minimale requise pour dtecter sans IES un dbit symbole R =1/T [symbols/s] est Bmin=R/2=1/2T [Hz].

    De manire quivalente, un systme avec une bande fixe B=R/2=1/2T [Hz], peut supporter sans IES un dbit maximum de 2B=1/T=RMax [symbols/s].

    +

    =

    =

    n

    T)Tnf(H

    Hz][symbol/s/ 2BRB

    2R

    T21 =

  • Nyquist -Cas idal

    T21

    T21

    T

    )( fH

    f t

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

    0 T T2TT20

    T21B =

    Ideal Nyquist filter Ideal Nyquist pulse

  • Nyquist cas rel Nyquist pulses: Pas dIES aux instants dchantillonnage Nyquist filter: Filtre ralisable B> 1/2T

    Exemple : Raised-Cosine filter

    +>

    +

  • 2R)1(B Baseband sSB +=

    |)(||)(| fHfH RC=

    0=5.0=

    1=1=5.0=

    0=

    )()( thth RC=

    T21

    T43

    T1

    T43

    T21

    T1

    1

    0.5

    0

    1

    0.5

    0 T T2 T3TT2T3

    R)1(B Passband DSB +=

    )f(H)f(H)f(H)f(H rctRC =Pas dIES linstant dchantillonnage

  • Problme : il faut connatre le canal (Hc(f)) Une alternative :

    Ajouter un filtre galiseur en rception (He(f)) :

    Mthode :

    )()()()()()()(

    SRRCRC

    RC

    fHfHfHfHfHfHfH

    tr

    rt

    ===

    = Tenir compte de lIES due

    aux filtres

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

    )(1)( fHfH ce

    =Tenir compte de lIES due

    au canal)f(j

    ccce)f(H)f(H =

    Non-constant amplitude

    Amplitude distortion

    Non-linear phase

    Phase distortion

  • Filtre galiseur Systme bande de base

    Modle quivalent

    Tx filter Channel

    )t(wblanc

    )t(xDetector

    kz

    kTt =

    { }ka1a

    2a 3aT )(

    )(fHth

    t

    t

    Rx. filter

    )()(fHth

    r

    r

    )()(fHth

    c

    c

    Equivalent system

    )t(wcolor

    Detector

    k'y

    kTt =)()(fHth

    Bruit filtr ou color

    )()()()( fHfHfHfH rct=

    k

    k kTta )( Equalizer

    )()(fHth

    e

    e

    1a

    2a 3aT

    k

    k kTta )( Equalizer

    )()(fHth

    e

    e

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

    { }ka

    Problme: le bruit nest pas AWGN

    Filtre numrique

  • Bruit color Bruit blancEquivalent system

    )t(wc

    Detector

    k'y

    kTt =)()(fHth

    1a

    2a 3aT

    k

    k kTta )( Equalizer

    )()(fHth

    e

    e

    { }ka

    FiltreBlanchissant

    )f(HW

    Filtregaliseur

    )f(He

    kw~

    kzEquivalent systemDetector

    ky~

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

    )z(He ka

    + +=+=

    knknkn

    n0kknknk w

    ~gagaw~gay~

    En temps discret :

    =

    jjk,Ejk hy~z

    ?

  • Critres de performances Diagramme de loeil

    time scale

    a

    m

    p

    l

    i

    t

    u

    d

    e

    s

    c

    a

    l

    e

    Marge au bruit

    sensibilittiming error

    Distortionlie lIES

    timing jitter

  • Pas de bruit Pas dIES

  • Bruit Pas dIES

  • Pas de Bruit - IES

  • Bruit - IES

  • Critres de performances EQM : Erreur Quadratique Moyenne

    e(n) reprsente lerreur destimation des donnes est le retard du filtre

    Interfrences rsiduelles

    Maximum de distorsion

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

    2max

    k

    2max

    2k

    z

    zz

    ISI

    =

    max

    kmaxk

    z

    zz

    MD

    =

  • SOMMAIRE galiseurs linaires

    Filtrage transversal galiseur Zero-forcing (ZF) galiseur Minimum Mean Square Error (MMSE)

    Simulations : MATLAB galiseurs adaptatifs

    LMS, RLS, autodidacte galiseurs non linaires

    Decision feedback (DFE) Utilise les dcisions antrieures pour rduire lIES

  • galisation Linaire

    kw~

    kzEquivalent systemDetector

    ky~

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

    )z(He ka

    )N(he

    )1N(h e + )1N(h e )N(h e

    ky

    kz

    Calcul descoefficients

    )kn(y

    Filtre transverse (2N+1) coefficients

  • galisation Linaire 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

  • 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(y0000)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 dchantillons 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

  • +

    +

    +

    =

    )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 dchantillons est plus grand y(-3N)y(3N) on a :

    EXERCICE : crire les relations pour un filtre 3 coefficients

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

    Deux critres : Zero Forcing et MMSE

    1) Zro Forcing ou ZF : Inversion du canal le moyen le + simple

    Dans le cas sans bruit : on retrouve exactement les symboles dinfo

    )z(G1)z(H E =

  • Critre ZF On posedo:

    )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 lIES cest le ZF

    0n,0qn =

    =

    == +

    =

    0n00n1

    ghqj

    jnj,En

  • Problme : le bruit nest pas pris en compte et il risque mme dtre amplifi car la densit de puissance du bruit est divise par qui peut devenir nulle certaines frquences

    2)f(G

    Critre ZF

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

    On se limite la rsolution de (2N+1) quations

    Mise en uvre du critre ZF

    EH.YZet

    N,2,1kpour00kpour1)k(z

    =

    ==

    =

    K

    1,E

    0,E

    1,E

    hhh

    )1(y00)0(y)1(y0)1(y)0(y)1(y

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

    )2(z)1(z)0(z)1(z)2(z

    00100

    = = Z.YH 1E

    =

  • Exercice ZF

    galiseur 3 coefficients ? Distorsion ?galiseur 5 coefficients ? Distorsion ?Utilisation de MATLAB.

  • 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

    hhh

    9.03.01.02.09.03.0

    02.09.0

    hhh

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

    010

    YHez

    =

    3448.09631.02140.0

    1,

    0,

    1,

    e

    e

    e

    hhh

    MD= 8.4%

  • Solution pour 5 coefficients

    [0.0, 0.2, 0.9, -0.3,0.1]Les 5 coefficients de lgaliseur sont :

    0.0443-0.19940.96370.34190.0069

    La distorsion maximum est : MD= 4.17%

  • 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=awgn(yf,RSB(i),0,1234);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)

  • TEB en fonction du RSB3 coeffs

    En bleu : sans galisationEn vert : avec galisation sur squence non bruiteOn voit quon a 10-4 pour 12dB

    0 5 10 1510-4

    10-3

    10-2

    10-1

    100

  • 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=awgn(yf,RSB(i),0,1234);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)

  • TEB en fonction du RSB5 coeffs

    En bleu : sans galisationEn vert et rouge : avec galisation 3 et 5 coeffs sur squence non bruiteRsultats en TEB identiques

    0 5 10 1510-5

    10-4

    10-3

    10-2

    10-1

    100

  • TEB en fonction du RSB 5 coeffs Si on tient compte du bruit la sortie du canal pour lgalisation (cas

    raliste), on met en vidence la non robustesse du critre face au bruit

    0 5 10 15 20 2510-5

    10-4

    10-3

    10-2

    10-1

    100

    TEB vs RSB Distorsion vs RSB

    0 5 10 15 20 25 300

    20

    40

    60

    80

    100

    120

    140

    160

    180

  • Comparaison ZF avec bruit et sans bruit

    0 5 10 15 20 2510-5

    10-4

    10-3

    10-2

    10-1

    100

    0 5 10 15 20 2510-5

    10-4

    10-3

    10-2

    10-1

    100

    Sans galisation

    avec galisation ZF et bruit

    avec galisation ZF sans bruit

  • 2) Critre de lerreur quadratique moyenne (EQM) ou MMSE

    Objectif : minimiser lerreur quadratique moyenne EQM (ou MSE) de tous les termes (IES + bruit) la sortie de lgaliseur

    Critre plus robuste que le ZF en prsence de bruit

    ( )[ ]2kk2k zaE)(EEQM ==

    Equalizer

    +Error signal

    ky

    kz kaDonnes mises

    k

    [ ]2))((min kakTzE

  • Critre EQM ou MMSE Filtre transverse :

    = = =

    =

    +=

    =

    N

    Nj

    N

    Np

    N

    Npayp,Epjyp,Ej,Ek

    N

    Njj,Ejkk pRhRhh)a(EhyaEEQM 2

    22

    kz)(

    *pkjkpj yyERy =Corrlation des donnes reues :

    Inter corrlation entre les donnes reues et les donnes mises :

    )(*

    jkkp yaERay =

  • Critre EQM ou MMSE Minimiser lEQM revient rsoudre (2N+1)

    quations telles que :

    Sous forme matricielle :

    N,,,ppourRayRyhN

    Njppjj,E ==

    =

    K210

    ayyTE RRH =.

    [ ]kTky YYER .=[ ]kTkay YaER .= Mais : on ne connat pas les donnes mises !!!!!

  • Critre EQM ou MMSE Solution : une squence dapprentissage

    TrainingSequence Data transmission

    TrainingSequence Data transmission

    1.

    = yayTE RRH

    [ ]kTkay YaER .=ka

  • Critre 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 squence dapprentissage soit un simple dirac.

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

  • Critre 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

  • Comparaison de la distorsion ZF-EQM vs le RSBsur le canal [0.0, 0.2, 0.9, -0.3,0.1]

    0 5 10 15 20 25 300

    20

    40

    60

    80

    100

    120

    140

    160

    180

    Distorsion EQM Distorsion ZF

  • Programmation MATLABcritre ZF

    Dfinition des chantillons dentre ({x}) :x=[ 0.0 0.2 0.9 -0.3 0.1 ]; % rponse du canal un diracLL=length(x); % longueur de x : LL= 2*L+1 ici LL=5 => L=2L=round((LL-1)/2) ;

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

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

    Cration de la matrice carre X des chantillonsLa dimension de la matrice des chantillons est (4N+1 2N+1) donc ici 95;Le nombre dchantillons va de x(-2N) x(2N) dans la matrice carre.cd de x(-4) x(4)On insre donc 2N (ici 4) zros dans le vecteur x si sa longueur est < (4N+1)

    soit ici 9,donc ce qui est le cas :If L

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

    X=[ ]; % initialisation de la matrice X carre de dimensions (2N+12N+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 critre ZF: c_optz=zeros(n_coeff,1); % cration dun vecteur colonne de longueur n_coeff

    rempli de zrosz((N+1),1)=1; % on force 1 la valeur centrale du vecteurc_opt=K*zc_opt

  • Utilisez le script pour retrouver les rsultats obtenus prcdemment sur lexemple .

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

  • Canal B : influence du nombre de coefficients

    7 8 9 10 11 12 13 14 15 16 170

    1

    2

    3

    4

    5

    6Distorsion %

    Nombre coefficients

  • Autre exemple)4.01(

    1)( 2

    +

    =

    Tt

    tx

  • Impact du bruit

    -20 -15 -10 -5 0 5 10 15 20-0.4

    -0.2

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2comparaison entres sans bruit avec bruit - sortie de l galiseur

    RSB=50 dB

  • Impact du bruit

    -20 -15 -10 -5 0 5 10 15 20-1.5

    -1

    -0.5

    0

    0.5

    1

    1.5

    2

    2.5comparaison entres sans bruit avec bruit - sortie de l galiseur

    RSB=5 dB

  • Canal BComparaison des valeurs des coefficients avec le bruit awgn:

    Sans bruit SNR=100dB SNR=50dB SNR=20dB SNR=10dB SNR=5dB

    -0.0851 -0.0851 -0.0841 -0.0544 -0.0135 -0.0195 -0.1581 -0.1581 -0.1592 -0.1929 -0.2696 -0.3476 0.2086 0.2086 0.2096 0.2432 0.3286 0.4574 0.9234 0.9234 0.9227 0.9027 0.8662 0.8124 -0.1187 -0.1187 -0.1194 -0.1441 -0.2164 -0.3183 0.0638 0.0638 0.0635 0.0570 0.0629 0.1072 -0.0269 -0.0269 -0.0258 0.0059 0.0733 0.1426

    Impact du bruit

  • Impact du bruit : distortion

    0 10 20 30 40 50 60 70 80 90 1000

    10

    20

    30

    40

    50

    60

    RSB

    Distorsion %

  • Programmation MATLABcritre MMSE

    Cration de la matrice X des chantillons ( elle nest plus carre !!)

    if L

  • Matrice de corrlation des donnes reuesRx=X*X

    Inversion de la matriceK=inv(Rx);Intercorrlation des donnes reues avec la squence

    dapprentissage ( un dirac)ap=zeros((4*N+1),1) ; % vecteur de longueur 4N+1 rempli de zrosap((2*N+1),1)=1 ; % on force 1 la valeur centrale du vecteurD=X*ap;

    Calcul des coefficients par le critre MMSE: c_optc_opt=K*D;

  • Utilisez le script pour retrouver les rsultats obtenus prcdemment.

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

    Pour un nombre de coefficients de 7, comparer les performances des 2 critres (ZF et EQM) sur cet exemple en labsence de bruit. Conclusion.

  • Influence du nombre de coefficients et comparaison au ZF

    7 8 9 10 11 12 13 14 15 16 170

    1

    2

    3

    4

    5

    6

    ZF

    EQM

    Nombre de coefficients

    Distorsion %

  • Impact du bruit Pour comparer les 2 critres : 1 seul

    programme

  • 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]

  • Impact du bruit Gnration dun 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');

  • 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

  • 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

  • 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

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

    Mme opration pour le cas bruit : SNR variant entre 1 et 50 dB

    Impact du bruit

  • 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

  • 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

  • Impact du bruit

    0 5 10 15 20 25 30 35 40 45 50-40

    -30

    -20

    -10

    0

    10

    20

    30

    40

    50

    ZF

    EQM

    SNR (dB)

    EQM (dB)

  • Distorsion

    SNR(dB)0 5 10 15 20 25 30 35 40 45 500

    50

    100

    150

    200

    250

    300

    ZF

    EQM

    Distorsion %

  • Comparaison ZF - MMSE Dans les 2 cas , plus le nombre de coefficients est

    grand, plus la distorsion est faible. Sans bruit, les deux critres donnent peu prs les

    mmes rsultats. En prsence de bruit, le MMSE est plus robuste. Le paramtre distorsion est insuffisant pour valuer seul

    la qualit dgalisation en prsence de bruit souvent on prfre calculer lEQM.

  • SIMULINK

  • galisation Adaptative On peut tenir compte des variations du canal en actualisant

    les coefficients de lgaliseur ( par un algorithme adaptatif )

    Lapproche adaptative est lie un signal derreur :e(k) = z(k)-x(k)

    Lobjectif est de minimiser:2

    kJ E e=

    EqualizerChannel

    +

    Error signal

  • galisation AdaptativeLapproche adaptative comporte deux phases : 1re phase : Initialisation ou mode supervis ou

    Training mode Une squence dapprentissage est ncessaire.Elle permet

    dajuster les coefficients de lgaliseur.

    EqualizerChannel

    +

  • galisation Adaptative 2me phase : phase de poursuite ou Decision Directed

    Mode Les dcisions sont utilises pour gnrer le signal derreur.

    Lactualisation en mode DD est efficace si les variations du canal sont lentes

    EqualizerChannel

    +

  • galisation Adaptative Un des algorithmes les + simples : le gradient

    stochastique ou Least Mean Square (LMS) partir des coefficients linstant (k-1) on calcule les

    coefficients linstant k

    Avantage : calcul itratif simple qui ne ncessite plus de calculer des matrices dauto et inter corrlations.

    kkEE Ye)1k(h)k(h +=Signal reuSignal derreur

    Constante ou pas dadaptation

  • Mise en uvre du LMS MATLAB : exemple de la transmission dun signal ASK-4

    sur le canal fir1(8,0.8) galisation 9 coefficients Pour 50dB :

    0.0625-0.13770.2624

    -0.39801.4569

    -0.39600.2592

    -0.13360.0572

    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

    It rati on

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

    - Calculez les 7 coefficients de lgaliseur par application de lalgorithme LMS

    - Quel est le nombre ditrations pour assurer la convergence?

    Mise en uvre du LMS

  • Mise en uvre du LMSH = 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

  • Mise en uvre du LMSH = 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

    C

    o

    e

    f

    f

    i

    c

    i

    e

    n

    t

    s

    Itration

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

  • LMS - Simulink

    erreur

    coeff

    Scatter Plotmission

    Scatter Plotgalis

    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

    ReIm

    Complex toReal -Imag 1

    ReIm

    AWGNChannel

    AWGN

  • 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.

  • RLS - Simulink

    erreur

    coeff

    Scatter Plotmission

    Scatter Plotgalis

    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

    ReIm

    Complex toReal -Imag 1

    ReIm

    AWGNChannel

    AWGN

  • galisation Adaptative Pour initialiser la convergence, une squence

    dapprentissage est ncessaire pnalisation Exemple : une trame dapprentissage est rgulirement

    mise pour actualiser la convergence lorsque le canal varie trs rapidement rduction du dbit utile

    Une solution : galisation autodidacte Sans squence dapprentissage; ex du CMA pour les

    modulations enveloppe constante

  • galisation retour de dcisionou DFE Decision Feedback Equalizer

    Egaliseurs non linaires utiliss lorsque le canal prsente des distorsions damplitude svres

    Le DFE utilise des dsicions antrieures (feedback) pour annuler les interfrences dues aux symboles dj dtects.

    Lide de base est que si les valeurs des symboles dj dcids sont connues ( ou supposes correctes) alors il est possible dannuler exactement lIES due ces symboles

  • Exemple du concept de lannulationSimulink Proakis

    Scatter Plotmission

    Scatter PlotgalisScatter 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)

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

    Exemple du concept de lannulationSimulink Proakis SNR=50 et 15dB

  • Exemple du concept de lannulationSimulink Proakis SNR= 15dB

    erreur

    coeff

    Scatter Plotmission

    Scatter Plotgalis

    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

    ReIm

    Complex toReal -Imag 1

    ReIm

    AWGNChannel

    AWGN

    Les coefficients sont : -0.465 1.396 -0.452

    TEB = 0.066

  • Exemple du concept de lannulationSimulink Proakis SNR= 15dB

    Scatter Plotmission

    Scatter PlotgalisScatter 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

  • galisation retour de dcision Structure dun 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

  • galisation retour de dcision

    InputFeed forward

    C(z)

    Feedback

    F(z)

    Adjustment of filter coefficients

    Output

    ++

    Symbol decision

  • galisation retour de dcision

    InputFeed forward

    C(z)

    Feedback

    F(z)

    Adjustment of filter coefficients

    Output

    ++

    Symbol decision

  • galisation retour de dcision Utilisez le script fourni pour calculer les

    coefficients par le LMS..