63
1 Orthogonal Frequency Division Multiplexing (OFDM) C.Alexandre

Ele207 Presentation Ofdm

Embed Size (px)

Citation preview

Page 1: Ele207 Presentation Ofdm

1

Orthogonal Frequency Division Multiplexing (OFDM)

C.Alexandre

Page 2: Ele207 Presentation Ofdm

2

Canal non-sélectif en fréquence

A n(t)

x + x(t) y(t)

A : coefficient d’atténuation complexe, n(t) : bruit blanc additif gaussien (BBAG)

Ce canal ne peut pas générer d’interférence inter symbole (ISI) car il ne comporte qu’un seul trajet.

Page 3: Ele207 Presentation Ofdm

3

Canal non-sélectif en fréquence : pas d’ISI

1. taille_trame=1000;2. data_bin=randint(1,taille_trame);3. data = 2*data_bin-1;

4. data_surech=zeros(4,taille_trame);5. data_surech(1,:)=data;6. data_surech=reshape(data_surech,1,taille_trame*4);

7. b=[1 0 -4 -7 -2 17 45 65 65 45 17 -2 -7 -4 0 1]/114.9695;8. data_out=conv(b,data_surech);

9. n = 0.0; % ou n = 0.110. bruit=n*randn(1,taille_trame*4+15);

11. data_rec=conv(b,data_out+bruit);12. data_recp = data_rec(16:4*taille_trame+15);13. eyediagram(data_recp, 4)

sans bruit (n = 0)

avec bruit (n = 0.1)

Page 4: Ele207 Presentation Ofdm

4

Canal sélectif en fréquence

n(t)

+ y(t)

h(t) x(t) h(t) est la réponse

impulsionnelle du canal

Un canal sélectif en fréquence est un canal multi-trajet, chaque trajet étant un canal non-sélectif en fréquence d’atténuation Ai associé à un retard τi.

.

.

.

A0

n(t)

x

+ x(t) y(t)

τ0

τ1

τL-1

A1

x

AL-1

x

+

Page 5: Ele207 Presentation Ofdm

5

Canal sélectif en fréquenceOn peut modéliser le canal multi-trajet avec un filtre à réponse impulsionnelle finie (FIR).Le retard maximum Δτ du canal est égal au nombre de coefficients du FIR multiplié par

Tech.

b0

n(t)

x

+ y(t)

b1

x

BM-1

x

+

Tech

Tech

x(t)

Page 6: Ele207 Presentation Ofdm

6

Canal sélectif en fréquenceOn définit la bande de cohérence Bc d’un canal comme étant l’écart qui doit séparer deux

porteuses afin qu’elles soient complètement décorrélées.

Bc est directement liée au retard maximum du filtre Δτ, c’est-à-dire au nombre de coefficients.

Illustrons le principe avec un simple FIR

1. nbc = 0; % Δτ = 12. b = [1 0.2*ones(1,nbc) 0.5];3. freqz(b,1)

Page 7: Ele207 Presentation Ofdm

7

1. nbc = 5; % Δτ = 62. b = [1 0.2*ones(1,nbc) 0.5];3. freqz(b,1)

Canal sélectif en fréquence

1. nbc = 9; % Δτ = 102. b = [1 0.2*ones(1,nbc) 0.5];3. freqz(b,1)

Bc

Exemple : Retard max Δτ = 10 => Bande de cohérence Bc ~ 0.1

Page 8: Ele207 Presentation Ofdm

8

Canal sélectif en fréquence : présence d’ISI

1. taille_trame=1000;2. data_bin=randint(1,taille_trame);3. data = 2*data_bin-1;

4. data_surech=zeros(4,taille_trame);5. data_surech(1,:)=data;6. data_surech=reshape(data_surech,1,taille_trame*4);

7. b=[1 0 -4 -7 -2 17 45 65 65 45 17 -2 -7 -4 0 1]/114.9695;8. data_out=conv(b,data_surech);

9. n = 0.0; % ou n = 0.110. bruit=n*randn(1,taille_trame*4+15);

11. cmt = [1 0 0 0.1]; % canal multi-trajet12. data_rec=conv(cmt,data_out+bruit);

13. data_recf=conv(b,data_rec);14. data_recp = data_rec(16:4*taille_trame);15. eyediagram(data_recp, 4, 1, 1)

sans bruit (n = 0)

avec bruit (n = 0.1)

Page 9: Ele207 Presentation Ofdm

9

Canal sélectif en fréquence : conséquences

Le taux d’erreurs symbole (TES) augmente avec l’ISI

• Solution 1 : augmenter la durée du symbole Ts.

Avantage : il y a toujours Interférence Entre Symboles (IES), mais on peut trouver facilement le bon instant de décision sans que le TES augmente.

Inconvénient : le débit diminue.

Page 10: Ele207 Presentation Ofdm

10

Canal sélectif en fréquence : conséquence• Solution 2 : on connait le canal h(t) ou on peut le découvrir et le canal varie lentement (cas de l’ADSL par exemple).

Préaccentuation : on filtre le signal à l’émission avec l’inverse du canal H(f). Le SNR est amélioré.

• Solution 3 : on ne connait pas le canal h(t) qui varie au cours du temps.

Egalisation : on filtre le signal à la réception avec l’inverse du canal H(f).

Inconvénients :

1) la complexité est en générale assez élevée (donc le circuit est coûteux) et l’égalisation ne fonctionne pas forcément dans tous les cas.

2) Le rapport signal sur bruit (SNR) n’est pas amélioré.

Page 11: Ele207 Presentation Ofdm

11

Canal sélectif en fréquence : conséquence• Solution 3 bis : Modulation multi-porteuses.

plutôt que d’émettre une seule porteuse modulée avec :

un débit R et une bande passante B supérieure à la bande de cohérence Bc ce qui provoque de l’ISI (Ts < ΔτΔτ)),

on va émettre N porteuses en parallèle ayant les caractéristiques :

BN = B/N et RN = R/N

N est suffisamment grand pour que BN << Bc (Ts >> ΔτΔτ)),

Chaque sous-porteuse ne subit donc que peu d’ISI.

Page 12: Ele207 Presentation Ofdm

12

Modulation multi-porteuses : principe

H(f), la réponse en fréquence du canal peut être décomposée en une

succession de canaux élémentaires autour de

chaque porteuse

Si les canaux élémentaires sont suffisamment étroits, ils sont non-sélectifs en fréquence et on peut écrire :

où les Hi(fi) sont de simples coefficients d’atténuation complexes dans la ième sous bande

∑=i

ii fHfH )()(

Ex : Combien de porteuses doit-on utiliser pour qu’elles ne subissent qu’une simple atténuation avec un canal urbain de largeur B = 1 MHz et d’étalement ΔτΔτ = 20 μs.

Bc = 1/ ΔτΔτ = 50 kHz. Si BN = Bc/10 = 5 kHz, alors on a B/BN = 200 porteuses dans B. Comme on utilise une TFD pour réaliser le modem OFDM, on prend la puissance de 2 supérieure : N = 256.

Page 13: Ele207 Presentation Ofdm

13

Modulation multi-porteuses : principe

Le signal s(t) à l’émission est de la forme :

Où :

si est le symbole associé à la ième sous porteuse,

φi est la phase de la ième sous porteuse,

fi est la fréquence de la ième sous porteuse,

g(t) est un filtre de mise en forme (racine de cos, par exemple).

Page 14: Ele207 Presentation Ofdm

14

Modulation multi-porteuses : émetteur

Page 15: Ele207 Presentation Ofdm

15

Modulation multi-porteuses : récepteur

Chaque signal si(t) d’une sous-bande est affecté par une pondération αi = |Hi(fi)Hi(fi)| correspondant au gain du ième canal.

Page 16: Ele207 Presentation Ofdm

16

Modulation multi-porteuses : limitations

• Par rapport à une modulation mono-porteuse, la modulation multi-porteuses ne devrait rien changer au débit total R = N.RN, à la bande occupée B = N.BN et au taux d’erreur en présence de bruit.

• Mais pour que les canaux soit orthogonaux, c’est-à-dire que la mise à 0 d’un canal ne modifie pas les signaux dans les autres canaux, il faut qu’ils soient suffisamment espacés. En pratique, il faudra avoir une bande occupée B’ = N(1+k) .BN ce qui est inefficace spectralement.

• La réalisation des N modulateurs et démodulateurs indépendants sont très difficiles à réaliser ainsi d’ailleurs que les filtres quasi-parfaits à la réception.

• Cette méthode a été abandonnée au profit des systèmes multi-porteuses avec recouvrement.

Page 17: Ele207 Presentation Ofdm

17

Modulation multi-porteuses avec recouvrement

On améliore l’efficacité spectrale est utilisant des canaux qui se recouvrent.

Les sous-porteuses doivent rester orthogonales pour pouvoir être séparées à la démodulation. Les sous-porteuses forment une base de fonctions orthogonales

sur la durée d’un symbole TN.

Le recouvrement des canaux implique une grande sensibilité aux décalages fréquentiels et temporels car ils détruisent l’orthogonalité des sous-porteuses.

Page 18: Ele207 Presentation Ofdm

18

Orthogonal Frequency Division Multiplexing (OFDM)La seule méthode simple et peu coûteuse pour réaliser une modulation multi-porteuses consiste à utiliser la TFD et la TFD inverse.

C’est l’OFDM. il existe des algorithmes rapides pour calculer les transformations (FFT et IFFT) et la base d’exponentielles complexes est orthogonale.

Page 19: Ele207 Presentation Ofdm

19

OFDM : émission

Longueur N Durée TN

x(t)

Symbole n Symbole n-1 Symbole n+1 t

Page 20: Ele207 Presentation Ofdm

20

OFDM : réception

Pour que le décodage soit possible :

- il faut être capable de reconnaitre le début du symbole OFDM,

- il faut que le signal OFDM soit ramené en bande de base.

Page 21: Ele207 Presentation Ofdm

21

simulation OFDM : émission% Nombre d'états de la QAM.M = 16;% Nombre de porteuses dans le symbole OFDMNb = 64;%Nombre de symboles OFDM dans la simulationNbSym = 10;% Tirage aléatoire d'entiers allant de 0 à M-1R = randint(Nb*NbSym,1,M);% Mise en constellation QAM.[I Q] = qaskenco(R,M);X = I+j*Q; scatterplot(X); figure

% Création signal OFDMx = zeros(size(X));

for i = 1:NbSym% calcul ième symbole OFDMsymbole=ifft(X((i-1)*Nb+1:i*Nb));% sauvegarde du symbole i dans xx((i-1)*Nb+1:i*Nb) = symbole;

end

subplot(2,1,1); plot(real(x))title('partie réelle de x')subplot(2,1,2); plot(imag(x))title('partie imaginaire de x')

Page 22: Ele207 Presentation Ofdm

22

simulation OFDM : réception% ajout de bruit complexex = x + 0.06*(randn(size(x)) + j*randn(size(x)));

for i = 1:NbSym% décodage du symbole iy=fft(x((i-1)*Nb+1:i*Nb));% sauvegarde du ième symbole décodéXdec((i-1)*Nb+1:i*Nb) = y;

end

scatterplot(Xdec)

% décodage des symboles décodésRdec=qaskdeco(real(Xdec), imag(Xdec), M);

% Calcul du taux d'erreurs symbolecnt_err = 0;

for i=1:Nb*NbSymif Rdec(i) ~= R(i)

cnt_err = cnt_err+1;end

end

TES = cnt_err / (Nb*NbSym)

TES =

0.0027

Page 23: Ele207 Presentation Ofdm

23

OFDM : x réel ou imaginaire ?X[0]

X[1]

X[N-1]

x[0]

x[1]

x[N-1]

x = I+j.Q

IFFT N points

Si on place N points complexes sur l’entrée de la IFFT, on obtient un signal complexe x = I+jQ.

Avec une IFFT 2N point, si on place N points sur la partie basse et le miroir complexe conjugué sur la partie haute, on obtient alors un signal x réel mais avec deux fois plus de points que quand il est complexe.

0

X[N-1]

x[0]

x[1]

x[2.N-1]

X[0]

X[N-2]

X*[N-2]

X*[0]

x réel, valeur

moyenne nulle

IFFT 2N points

.

.

.

.

Page 24: Ele207 Presentation Ofdm

24

OFDM : signal en sortie de IFFT• Le coefficient X[0] correspond à la

valeur moyenne du signal x.

• Le coefficient X[1] correspond à la fréquence fondamentale f0 du signal x, c’est-à-dire une période sur N points (cosinus sur la partie réelle, sinus sur la partie imaginaire).

• Le coefficient X[2] correspond à2.f0, c’est-à-dire deux périodes sur N points.

• Le coefficient X[i] correspond à i.f0(i<N/2), c’est-à-dire i périodes sur N points.

S’il y a plusieurs coefficients non nuls, le signal sur x est la somme des

signaux élémentaires.

x=ifft([0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0])plot(real(x), 'r+')hold onplot(imag(x), 'b*')legend('x réel','x imaginaire',2,'location','SouthWest')

Page 25: Ele207 Presentation Ofdm

25

OFDM : changement de fréquence

Pour l’instant, nous sommes restés en bande de base. Comment réalise-t-on le changement de fréquence ?

Si le signal x(t) est réel, on le multiplie par un cos(ω0.t).

Mais il faut un filtre analogique pour supprimer la partie

symétrique du spectre.

Si le signal est complexe, on le multiplie par

exp(j.ω0.t), puis on prend la partie réelle. Le

filtrage n’est plus nécessaire. C’est la méthode

à utiliser de préférence.

x(t) X

~cos(ω0.t)

s(t)

+

-

I(t) X

~cos(ω0.t)

s(t)

Q(t) X

π/2

sin(ω0.t)

+

Page 26: Ele207 Presentation Ofdm

26

OFDM : spectre après changement de fréquence% Création signal OFDM (suite du Transparent 21). Pour voir le spectre compris entre –Fech/2 et +Fech/2,% on utilise une IFFT 512 pts en mettant 32 valeurs en bas et% 32 valeurs en haut de la IFFT, les 448 valeurs au centre valant 0.% Cela permet de réaliser un surechantillonnage d'un facteur 8.% On considère que Fech = 8.x = zeros(NbSym*512,1);

for i = 1:NbSym% calcul ième symbole OFDMsymbole=ifft([X((i-1)*Nb+1:(i-1)*Nb+Nb/2); zeros(512 - Nb, 1); X((i-1)*Nb+Nb/2+1:i*Nb)], 512);% sauvegarde du symbole i dans xx((i-1)*512+1:i*512) = symbole;

end

% création d'un vecteur temps de même taille que x% avec une période d'échantillonnage 1/Fech.SS = size(x);t=(1:SS(1))/8;

% La fréquence porteuse passe de 0 à 2 Hzf0 = 2;% calcul du vecteur contenant la porteuse.porteuse = exp(j*2*pi*f0*t).';% changement de fréquence.x_mod = real(x.*porteuse);

% Affichage du spectre.f=linspace(0,8,SS(1));plot(f,20*log10(abs(fft(x_mod))+0.01))

Page 27: Ele207 Presentation Ofdm

27

OFDM : problème sur le bord du spectre

Le spectre du signal OFDM n’est pas limité sur les bords à cause de sa forme en sinus cardinal.

Cela pose des problèmes d’un point de vue réglementaire car la non limitation du spectre crée des interférences avec les canaux d’émission adjacents. Le filtrage est difficile, mais rien n’empêche de mettre à 0 les porteuses sur les extrémités du spectre afin qu’il tienne dans le gabarit demandé par la norme.

Zoom sur le spectre précédent.

1.4 1.45 1.5 1.55 1.6

10

15

20

25

30

35

40 1/TN = 1/64 = 15.625 ms

1/TN

Page 28: Ele207 Presentation Ofdm

28

OFDM : canal sélectif en fréquence

x(t)

Symbole n Symbole n-1 Symbole n+1

Symbole n Symbole n-1 Symbole n+1

Symbole n Symbole n-1 Symbole n+1 t

Récupération impossible

Trajet direct

Trajet retardé

Trajet retardé

En présence d’un canal multi-trajet, des version décalées du symbole n s’additionnent entre eux, créant de l’ISI entre symboles OFDM. La récupération

du symbole est impossible.

Le retard maximum entre les symboles est égal à ΔτΔτ

Page 29: Ele207 Presentation Ofdm

29

OFDM : canal sélectif en fréquencePour absorber ce retard, on va allonger le symbole OFDM avec un intervalle de garde (GI). Sa durée est généralement comprise entre 1/4 et 1/32 de la durée du symbole. Le débit utile est réduit dans les mêmes proportions. Le spectre est légèrement modifié sur les bords à cause de l’élargissement de la porte (on ne voit plus les lobes secondaires car les sinus cardinaux ne

s’annulent plus en même temps. L’allure générale du spectre ne change pas).x(t)

Symbole n Symbole n-1 Symbole n+1

t

Récupération possible ?

Symbole n Symbole n-1 Symbole n+1

Symbole n Symbole n-1 Symbole n+1

GI

GI

GI

GI

GI

GI

GI

GI

GI

GI

GI

GI

Que doit-on mettre dans l’intervalle de garde pour pouvoir décoder correctement le symbole n ?

Page 30: Ele207 Presentation Ofdm

30

OFDM : canal sélectif en fréquenceIl faut restaurer l’orthogonalité des porteuses qui a été perdue. Pour cela, on va

copier la fin du symbole au début.

Symbole n GI

Raisonnons sur des porteuses réelles. Chaque porteuse OFDM correspond à un nom entier de périodes sur le symbole OFDM (de 0 à N-1). En copiant la fin du

symbole dans l’intervalle de garde, on prolonge le signal sans créer de discontinuité. On appelle cette donnée le préfixe cyclique.

Symbole n GI

Page 31: Ele207 Presentation Ofdm

31

Symbole n GI

+

+

OFDM : canal sélectif en fréquenceQue se passe-t-il en présence d’ISI ?

Continuons la raisonnement avec une porteuse réelle. On additionne des versions décalées du symbole. Si l’intervalle de garde est plus long que le retard max du canal Δτ et si on sait retrouverl’emplacement du symbole, alors on obtient la somme de signaux sinusoïdaux de même fréquence, mais d’amplitude et de phase différents.

Cette somme est un signal sinusoïdal de même fréquence mais dont la phase et l’amplitude ont changé. Ce changement correspond au Hi(fi) de la porteuse. Ce raisonnement est valable pour toutes les porteuses, réelles ou complexes.

Page 32: Ele207 Presentation Ofdm

32

OFDM : canal sélectif en fréquence% création de trois symboles périodiques% avec un intervalle de garde 1/8 (t=-3/32 à 0)f0 = 3;t= -3/32:1/32:1; % Fech = 32symbole_1 = 0.7*sin(2*pi*f0*t);f0 = 2;symbole_2 = 0.5*sin(2*pi*f0*t+pi/2);f0 = 7;symbole_3 = sin(2*pi*f0*t+pi/4);

% concaténation des 3 symbolesx = [symbole_1 symbole_2 symbole_3];

% passage dans le canal multi-trajetcmt = [1 0 0.4];[h,f]=freqz(cmt,1,1024,32);subplot(2,1,1)plot(f,abs(h)) % réponse du canaltitle('réponse du canal')subplot(2,1,2)plot(f,angle(h)) % phase du canaltitle('phase du canal')xrec = conv(cmt,x);

S1 S2 S3

Page 33: Ele207 Presentation Ofdm

33

OFDM : canal sélectif en fréquence

figureplot(x, 'r-'); hold onplot(xrec, 'b-.')legend('x','xrec',2,'location','North')

%récupération du symbole 2 % après extraction de l'intervalle de gardesymb2rec = xrec(41:41+31);figureplot(symbole_2(5:36), 'r-')hold onplot(symb2rec, 'b-.')legend('Symb2','Symb2Rec',2)

Page 34: Ele207 Presentation Ofdm

34

OFDM : canal sélectif en fréquenceConséquences : Raisonnons sur 2 signaux sinusoïdaux.

1) Si la fréquence de la porteuse est faible (une période sur le symbole dans le cas du fondamental), le symbole retardé va être peu différend du symbole direct. Le signal résultant va avoir tendance a être renforcé.

2) Si la fréquence de la porteuse est plus élevée, le symbole retardé peut être proche de l’opposition de phase avec le symbole direct. Le signal résultant va avoir tendance a être diminué.

Du point de vue de la réponse du canal, le premier cas correspond à une bosse sur H(f), le second correspond à une atténuation, voir un zéro.

+ +

Page 35: Ele207 Presentation Ofdm

35

Correction du canal : émissionSi le nombre N de porteuses est suffisant, c’est-à-dire BN << Bc (Ts >> ΔτΔτ)), chaque porteuse i va donc être multipliée par le coefficient complexe Hi(fi) correspondant. Comment retrouver

la constellation de départ pour pouvoir décoder correctement les symboles ?

Il faut corriger l’influence du canal.

Il faut pouvoir l’estimer afin de le corriger. Pour cela, nous allons insérer des valeurs constantes sur certains point à l’entrée de la IFFT. On appelle ces valeurs des pilotes.

X[0]

X[N-1]

x[0]

x[N-1]

x = I+j.Q

IFFT N points pilotes

Page 36: Ele207 Presentation Ofdm

36

Correction du canal : réception

n

nn x

y=α̂

A la réception, pour le pilote sur le canal n, on va lire : yn = αn.xn + N, xn étant le symbole connu émis, yn le symbole reçu, αn le coefficient d’atténuation du canal et N le bruit.

Pour estimer le coefficient du canal n, il suffit de calculer (en complexe) :

PB : si α est faible, on va estimer sur la valeur du bruit N.

Pour chaque pilote, on va obtenir une estimation du canal. Par interpolation, on va déduire les coefficients d’atténuation αi pour les valeurs entre les pilotes. Une fois que l’on a obtenu tous les αi, il suffit de corriger les valeurs yi à la sortie de FFT. Le SNR n’est pas amélioré, car le bruit est amplifié en même temps que le signal. En cas de zéro sur une porteuse, la correction n’a plus grand sens.

R y(t)

x[0]

x[N-1]

X[0]

X[N-1]

FFT N points

1/α0

1/αN-1

Décodage QAM

Page 37: Ele207 Presentation Ofdm

37

Correction du canal : simulation% Nombre d'états de la QAM.M = 16;% Nombre de porteuses dans le symbole OFDMNb = 256;% Nombre de symboles OFDM dans la simulationNbSym = 1;% durée de l'intervalle de garde GI = 1/8NbGI = Nb/8;% Tirage aléatoire d'entiers allant de 0 à M-1R = randint(Nb*NbSym,1,M);% Mise en constellation QAM.[I Q] = qaskenco(R,M);

% insertion pilote 1+j tous les 16 symbolesdebut = 1;fin = 15;X = [1+j; I(debut:fin)+j*Q(debut:fin)];

for i = 1:15debut = debut + 15;fin = fin+15;X = [X; 1+j; I(debut:fin)+j*Q(debut:fin)];

end

% Création signal OFDMx = zeros(NbSym*(Nb + NbGI),1);symbole_GI = zeros(Nb + NbGI,1);

for i = 1:NbSym% calcul ième symbole OFDM et copie à la fin du symbolesymbole_GI(NbGI+1:Nb + NbGI)=ifft(X((i-1)*Nb+1:i*Nb));% copie du préfixe cycliquesymbole_GI(1:NbGI)=symbole_GI(Nb+1:Nb + NbGI);% sauvegarde du symbole i dans xx((i-1)*(Nb + NbGI)+1:i*(Nb + NbGI)) = symbole_GI;

end

% passage dans le canal multi-trajet (retard max < GI = 4)cmt = [1 0 0 0.1];xrec = conv(cmt,x);

for i = 1:NbSym% extraction du symbole reçu sans le préfixe cycliquesym_rec = xrec((i-1)*(Nb + NbGI)+NbGI+1:i*(Nb + NbGI));% décodage du symbole iy=fft(sym_rec);% sauvegarde du ième symbole décodéXdec((i-1)*Nb+1:i*Nb) = y;

end

Page 38: Ele207 Presentation Ofdm

38

Correction du canal : simulation% extraction des pilotes, puis calcul des estimationsalpha_pilotes = Xdec(1:16:256)/(1+j);% calcul par interpolation des coefficients de correction% pour les symboles autres que les pilotesxi=0:1/16:255/16;% on interpole séparément les parties réelles et imaginairesalpha = interp1(0:15, real(alpha_pilotes), xi) + j*interp1(0:15, imag(alpha_pilotes), xi); % correction des symboles (y compris les pilotes)Xdec_cor = Xdec./alpha;

freqz(cmt,1,1024,1); % réponse canal [0 à Fech/2]figureplot(20*log10(abs(alpha))) % réponse canal via les estimateurs [0 à Fech]

scatterplot(Xdec) % constellation avant correctionscatterplot(Xdec_cor) % constellation après correction

Page 39: Ele207 Presentation Ofdm

39

Considérons un canal de largeur B = 1 MHz et d’étalement maximum Δτ = 5 μs.

Un système mono-porteuse aurait un temps symbole TS = 1/B = 1 μs << Δτ et subirait donc une forte interférence inter symbole (ISI).

Supposons un système OFDM modulé en 16QAM. On va utiliser N = 128 porteuses pour supprimer l’ISI, ce qui donne TN = N.TS = 128 μs. On va fixer la durée de l’intervalle de garde (TGI) à 8 μs (> Δτ), c’est-à-dire TN / 16.

Quel est l’espacement entre porteuses, le surcout dû à GI ainsi que le débit total ?

BN = 1/TN = B/N = 7,812 kHz << bande de cohérence Bc = 200 kHz.Débit total sans GI = 4 bits x 128 porteuses / TN = 4 / TS = 4 Mbit/s identique au système mono-porteuse. La courbe de taux d’erreurs est aussi identique.

Durée totale du symbole OFDM = 128 + 8 = 136 μs => surcout = 8/136 = 5,9 %.Débit total avec GI = = 4 bits x 128 porteuses / (TN + TGI) = 3,76 Mbit/s.

Exemple de système OFDM

Page 40: Ele207 Presentation Ofdm

40

OFDM : réseau mono-fréquenceLes interférences entre émetteurs sont un des grands problèmes de la télévision. Pour éviter de trop dégrader l’image à la réception (chaque émetteur voisin étant vu comme une source de bruit par le récepteur), on utilise des fréquences différentes pour les émetteurs proches les uns des autres. Cela conduit à une très grande inefficacité spectrale puisqu’il faut environ 60 canaux analogiques pour émettre 6 chaines en France.

Avec l’OFDM, il suffit de synchroniser tous les émetteurs d’un territoire avec la même fréquence (par satellite par exemple) et on peut réaliser un réseau mono-fréquence (Single Frequency Network : SFN). Le réseau multi-fréquence (MFN) est aussi possible.

En effet, l’émetteur voisin sera vu comme un trajet retardé supplémentaire et traité par la correction du canal. Il faudra bien sur que l’intervalle de garde soit plus long que ce trajet supplémentaire (donc diminution du débit par rapport à une solution MFN et /ou plus d’émetteurs) et que les fréquences d’émission soit strictement identiques (problèmeaux frontières).

Sur la bande UHF (470 à 862 MHz, canal 21 à 69), c’est impossible à cause des émissions analogiques, mais sur la bande VHF, cela sera possible quand Canal+ aura libéré les 3 canaux entre 47 et 68 MHz.

Page 41: Ele207 Presentation Ofdm

41

Correction d’un canal sélectif en fréquence faiblement variable, voir statique

Pour un canal statique comme par exemple la ligne téléphonique pour l’ADSL, deux autres méthodes peuvent être utilisées :

1) La préaccentuation des porteuses. On renforce à l’émission les porteuses qui vont être atténuées par le canal. Le rapport signal sur bruit (SNR) est donc préservé à la réception.

2) La modulation adaptative. Comme on connait le SNR pour chaque porteuse, on peut faire passer des modulation avec plus d’états sur les porteuses où le SNR est le plus élevé. On peut faire varier par exemple de QAM4 à QAM256 en fonction du SNR qui est supposé connu de l’émetteur et du récepteur. Il y a donc une phase de négociation au début de la transmission pour découvrir les caractéristiques du canal. On appelle cet méthode le WaterFilling.

Page 42: Ele207 Presentation Ofdm

42

Canal sélectif en temps

Dans ce modèle, on considère que le récepteur est entouré de nombreux diffuseurs et est en mouvement avec une vitesse vm.

fD est l’étalement Doppler dû à vm.

Le canal équivalent consiste à retarder le signal d’un temps τ et à le multiplier avec une variable aléatoire complexe α.

Comme les parties réelles et imaginaires de αsuivent une loi gaussienne, on a :

- Le module de α suit une loi de Rayleigh,

- La phase de α suit une loi uniforme.

Page 43: Ele207 Presentation Ofdm

43

Canal sélectif en tempsLe spectre de α est la TF de la fonction d’autocorrelation Γ qui est une fonction de Bessel de premier genre à l’ordre 0 dans le modèle de Jakes. C’est le spectre en U bien connu de ce modèle.

Plus la vitesse du mobile augmente, plus l’étalement Doppler fD augmente et plus la fonction d’autocorrelation Γ décroit rapidement.

Or la vitesse de variation du canal (fading) est d’autant plus élevée que Γ décroit rapidement (le signal se ressemble moins d’un instant àl’autre. Il est même totalement décorrélé si Γtend vers un dirac).

On définit le temps de cohérence, TC, temps pendant lequel Γ est différent de 0. Après TC, le canal est décorrélé. Tc est environ égal à 1/fD.

Tc nous renseigne sur la vitesse de variation du canal qui est proportionnelle à l’étalement Doppler fD.

Page 44: Ele207 Presentation Ofdm

44

Canal sélectif en temps et en fréquence

C’est le modèle de Jakes multi-trajets. Les αi sont indépendants.

Page 45: Ele207 Presentation Ofdm

45

Canal sélectif en temps et en fréquence : COFDM

On peut bien sur ajouter des codes correcteurs d’erreurs pour améliorer la protection de l’information transmise dans ce canal, mais ajouter de la redondance s’avère inutile si tous les bits redondants sont transmis sur la même porteuse du canal affectée d’un évanouissement. Le codage avec entrelacement temporel et fréquentiel permet de lutter contre le fading (annulation du canal pendant un symbole OFDM) mais aussi contre l’annulation de sous porteuses.

- Entrelacement fréquentiel : on va encoder les bits à transmettre dans des mots-codes (avec redondance), puis entrelacer les mots-codes sur différentes porteuses. L’idée est que les différents bits d’un mot-code soient envoyés sur des porteuses espacées d’au moins Bc (bande de cohérence du canal). Les porteuses doivent être décorrélées pour exploiter la diversité fréquentielle.

Page 46: Ele207 Presentation Ofdm

46

Canal sélectif en temps et en fréquence : COFDM

- Entrelacement temporel : on va encoder les bits à transmettre dans des mots-codes (avec redondance), puis entrelacer les mots-codes dans plusieurs symboles OFDM consécutifs qui doivent être espacés d’au moins Tc (temps de cohérence du canal). Le canal est alors décorrélé et on exploite la diversité temporelle.

- Entrelacement spatial : on utilise plusieurs antennes à l’émission et à la réception. on va encoder les bits à transmettre dans des mots-codes (avec redondance), puis entrelacer les mots-codes sur les différentes antennes. Dans un environnement multi-trajet, on peut considérer qu’il y a plusieurs canaux décorrélés entre l’émetteur et le récepteur. On exploite alors la diversité spatiale.

La Coded OFDM (COFDM) utilise l’entrelacement temporel et fréquentiel pour lutter contre le canal sélectif en temps et en fréquence. La MIMO-OFDM utilise l’entrelacement spatial.

Page 47: Ele207 Presentation Ofdm

47

Facteur de crête : Peak to Average power Ratio (PAR ou PAPR)

Considérons la sortie de la IFFT :

Chaque x[i] est la somme sur N de variables aléatoires suivant une loi uniforme. Si N est grand (> 64), le théorème de la limite centrale s’applique et x[n] est une variable aléatoire qui suit une loi gaussienne centrée tant sur sa partie réelle que sur sa partie imaginaire. Le module de x[n] suit donc une loi de Rayleigh et sa phase suit une loi uniforme.

Le problème est que la loi de Rayleigh a un support infini et donc que x n’est pas borné. La valeur crête de x dépassera toujours un seuil donné avec une probabilité non-nulle.

Page 48: Ele207 Presentation Ofdm

48

OFDM : PAR

Pour un signal échantillonné quelconque, on définit le PAR comme le rapport entre la puissance crête et la puissance moyenne. Par exemple, pour un signal sinusoïdal, c’est (Vmax/Veff)2 = 2.

Le signal OFDM se comportant comme une gaussienne, il est important de comprendre que pour émettre un signal OFDM d’une certaine puissance, il va falloir utiliser un amplificateur beaucoup plus puissant car le signal comporte de nombreux pics de puissances.

Page 49: Ele207 Presentation Ofdm

49

OFDM : PAR

En première approximation, on peut considérer que pour un signal OFDM, le PAR croit linéairement avec N, N étant le nombre de porteuses.

Cela signifie que plus on augmente le nombre de porteuses, plus la puissance maximale de l’amplificateur devra être importante (à puissance moyenne identique), ce qui assez ennuyeux puisque le débit est proportionnel à N. C’est une des limitations de l’OFDM.

Il existe de nombreuses méthodes permettant de réduire ou bien de tolérer le PAR des signaux OFDM. Dans le pire des cas, le signal sera saturé (au préalable en numérique ou bien par l’amplificateur).

Page 50: Ele207 Presentation Ofdm

50

OFDM : simulation N = 64% Nombre d'états de la QAM.M = 16;% Nombre de porteuses dans le symbole OFDMNb = 64;%Nombre de symboles OFDM dans la simulationNbSym = 1000;% Tirage aléatoire d'entiers allant de 0 à M-1seq_em = randint(Nb*NbSym,1,M);% Mise en constellation QAM.[I Q] = qaskenco(seq_em,M);constel_emis = I+j*Q;

% Création signal OFDM sans GIxx = zeros(size(constel_emis));

for i = 1:NbSymx=ifft(constel_emis((i-1)*Nb+1:i*Nb));xx((i-1)*Nb+1:i*Nb) = x;

end

% histogramme pour vérifier la partie réelle et la partie imaginaire.% Elles tendent vers une gaussienne à partir d'environ 64 porteuses.% Le module tend vers une loi de Rayleigh, la phase est uniformehist(real(xx),100)title('partie réelle N=64')figurehist(imag(xx),100)title('partie imaginaire N=64')PAR = (max(abs(xx))^2)/var(abs(xx))

PAR =

57.0609

Page 51: Ele207 Presentation Ofdm

51

OFDM : simulation N = 1024% Nombre d'états de la QAM.M = 16;% Nombre de porteuses dans le symbole OFDMNb = 1024;%Nombre de symboles OFDM dans la simulationNbSym = 1000;% Tirage aléatoire d'entiers allant de 0 à M-1seq_em = randint(Nb*NbSym,1,M);% Mise en constellation QAM.[I Q] = qaskenco(seq_em,M);constel_emis = I+j*Q;

% Création signal OFDM sans GIxx = zeros(size(constel_emis));

for i = 1:NbSymx=ifft(constel_emis((i-1)*Nb+1:i*Nb));xx((i-1)*Nb+1:i*Nb) = x;

end

% histogramme pour vérifier la partie réelle et la partie imaginaire.% Elles tendent vers une gaussienne à partir d'environ 64 porteuses.% Le module tend vers une loi de Rayleigh, la phase est uniformehist(real(xx),100)title('partie réelle N=1024')figurehist(imag(xx),100)title('partie imaginaire N=1024')PAR = (max(abs(xx))^2)/var(abs(xx))

PAR =

73.0513

Page 52: Ele207 Presentation Ofdm

52

OFDM : évolution du PAR avec N

Nb = 15;PAR = zeros(1,Nb);for i=1:Nb

N = 2^(i+5);x=randn(1,N)+j*randn(1,N);PAR(1,i) = (max(abs(x))^2)/var(abs(x));

end

plot(PAR)line([1 15],[20 68],'LineStyle', '--')

Le PAR croit linéairement avec N

On utilise une approximation gaussienne pour les parties réelles et imaginaires du signal

Page 53: Ele207 Presentation Ofdm

53

OFDM : saturation du module (clipping)On reprend la simulation des transparents T21-T22 et on sature le module de x de façon à

ce que x(i)^2/variance(x) ne dépasse jamais 10 (quelque soit i).

% conversion rectangulaire/polairemod = abs(x);theta = angle(x);vari = var(mod);PAR = (max(mod)^2)/vari

% saturation canalSI = size(mod);cnt_sat = 0;retrait = 10;

for i=1:SI(1)if ((mod(i)^2)/vari) > retrait

mod(i) = sqrt(retrait*vari);cnt_sat = cnt_sat+1;

endend

% conversion polaire/rectangulairex_sat = mod.*exp(j*theta);PAR = (max(abs(x_sat))^2)/var(abs(x_sat))x=x_sat;taux_sat = cnt_sat/(Nb*NbSym)

PAR avant clipping = 56.3559PAR après clipping = 13.7832Taux échantillons saturés = 0.1167TES = 0.0018

Page 54: Ele207 Presentation Ofdm

54

OFDM : TEB en fonction du retrait et du SNR

Un retrait de 10 dB suffit (simulation BBAG, QAM16, N=16) avec un amplificateur radio SSPA (Solid-State Power Amplifier)

Page 55: Ele207 Presentation Ofdm

55

Décalage fréquentiel et temporelL’OFDM est très sensible au décalage fréquentiel à cause de l’orthogonalité des porteuses. En

cas de décalage en fréquence, même faible, on récupère sur la ième sortie de la FFT des données issues de toutes les fréquences porteuses. C’est l’interférence entre porteuses ICI.

Si le décalage est important (> BN/10), la récupération du signal OFDM est impossible.

Si le décalage est faible, cela va se traduire par un ajout de bruit sur les symboles et donc par une dégradation du taux d’erreurs.

Page 56: Ele207 Presentation Ofdm

56

Décalage fréquentiel et temporelExemple : avec un oscillateur à quartz grand public 50 ppm, on a une incertitude de 25 kHz à 500 MHz (bande UHF pour la TNT). Comme en TNT, on a un écart entre porteuses de 1116 Hz, la récupération du signal OFDM est impossible. Il faut un algorithme qui utilise l’information contenue dans les pilotes pour ramener le signal en bande de base. C’est impossible à réaliser en analogique.

L’effet d’un décalage temporel est moins important. En effet, du moment que l’on récupère un symbole OFDM complet sans ISI, la FFT sera correcte. L’intervalle de garde simplifie considérablement la tache car il est statistiquement peu utilisé jusqu’à son maximum (le pire des cas ne se produit pas très souvent). La précision nécessaire pour l’extraction du symbole n’en est que plus faible.

Symbole n Symbole n-1 Symbole n+1

t

Symbole n Symbole n-1 Symbole n+1

Symbole n Symbole n-1 Symbole n+1

GI

GI

GI

GI

GI

GI

Imprécision sur la récupération

Page 57: Ele207 Presentation Ofdm

57

Décalage fréquentiel et temporelOn connait la durée de l’intervalle de garde TGI et la durée du symbole OFDM TN en nombre d’échantillons. Supposons que TGI = 8 et TN = 64.

On lit le signal OFDM a un endroit quelconque. On va comparer les 8 premiers échantillons avec les 8 échantillons se trouvant 64 échantillons plus loin à l’aide de l’erreur quadratique moyenne EQM (on fait la somme des différences au carré). On décale d’un échantillon et on recommence. On fait cela 64 fois. L’emplacement donnant l’EQM la plus faible correspond àl’intervalle de garde, donc au début du symbole OFDM.

TGI

Symbole n Symbole n-1 Symbole n+1 GI GI GI GI

TN

EQM minimum

Pour réduire l’influence du bruit, il faut réaliser cette opération simultanément sur plusieurs symboles consécutifs. Cela permet de moyenner l’EQM.

Page 58: Ele207 Presentation Ofdm

58

Etude de cas : 802.11aLa norme WiFi 802.11a occupe un canal B = 20 MHz dans la bande des 5 GHz. La norme 802.11g est identique, mais dans la bande ISM 2.4 GHz (bande de 802.11b, l’ancienne norme de WiFi).

Nombre de porteuses 64 dont seules 52 sont utilisées (les 12 porteuses externes sont mises à 0 pour réduire l’interférence entre canaux adjacents

Durée symbole OFDM 3,2 μs (312.5 kHz entre porteuses)

Nombre de pilotes 4

Modulation BPSK, QPSK, QAM16, QAM64

Rendement du code interne 1/2, 2/3, 3/4

Intervalle de garde (étalement max 800 ns)

1/4 (durée totale symbole = 4 μs )

durée du préambule 16 μs

Page 59: Ele207 Presentation Ofdm

59

Etude de cas : 802.11aLa trame physique 802.11a est composée d’un préambule (16 μs), d’un champ signal (4 μs),

suivi d’un nombre variable de symboles OFDM (4 μs) portant les données utiles.

Le préambule permet d’assurer une synchronisation rapide en fréquence et en temps. Le champ signal contient les paramètres de la transmission (modulés en BPSK).

Les débits sont compris entre 6 et 54 Mbit/s.

Exemples de calcul :

Débit utile (64QAM, R=3/4) =(3/4)x(6x48)/(4.10-6) = 54 Mbit/s

Débit utile (BPSK, R=1/2) =(1/2)x(1x48)/(4.10-6) = 6 Mbit/s

Page 60: Ele207 Presentation Ofdm

60

Etude de cas : DVB-TIl y a deux modes 2k/8k qui indique le nombre de porteuses. Pour un débit utile identique, le mode 8k permet de choisir un intervalle de garde plus grand que le mode 2k, et donc une meilleure robustesse aux échos. En France, les paramètres sont les suivants :

Nombre total de porteuses 6817

Nombre de porteuses transportant des données utiles 6048

Durée symbole OFDM 896 μs (1116 Hz entre porteuses)

Modulation QPSK, QAM16, QAM64

Intervalle de garde (étalement max entre 4 et 224 μs) 1/32, 1/16, 1/8, 1/4

Rendement du code interne 1/2, 2/3, 3/4, 5/6, 7/8

Rendement du code externe 188/204

Contenu trame OFDM 68 symboles OFDM

Contenu Méga trame 4 trames

Page 61: Ele207 Presentation Ofdm

61

DVB-T : format de la trame769 porteuses (sur 6817) sont utilisées pour transporter 3 types de porteuses pilotes : pilotes fixes, disséminés et TPS(transmission parameter signal). Ces pilotes permettent au décodeur d’assurer la synchronisation en fréquence, en temps ainsi que l’estimation du canal.

Page 62: Ele207 Presentation Ofdm

62

DVB-T : Débits utiles dans un canal 8 MHzExemple de calcul : 64QAM, R=2/3, GI = 1/4

Débit utile = (188/204)x(2/3)x(6x6048)/((1+1/4)x896.10-6) = 19.9 Mbit/s