synchronisation - perso.esiee.fr
TRANSCRIPT
Synchronisation
Extrait de Radiocommunications numériques, Tome 1 (sous la direction de G. Baudoin), Dunod, Paris 2002.
Chapitre rédigé par Jean-Marc Brossier (ENSIEG/INPG) et Jean-François Bercher (ESIEE-Paris)
5.1 Introduction Avant de traiter des problĂšmes de synchronisation, il est sans doute utile de rappeler
quâune transmission synchrone nâa dâintĂ©rĂȘt que lorsque le canal de transmission est suffisamment stable au cours du temps. Sinon, lâavantage dâune dĂ©tection cohĂ©rente par rapport aux mĂ©thodes de dĂ©tection incohĂ©rente est perdu du fait de lâimportance excessive des erreurs de synchronisation.
Un signal passe-bande autour dâune frĂ©quence porteuse 0Îœ porte une suite de symboles binaires1 na . La rĂ©ponse impulsionnelle du filtre dâĂ©mission, typiquement un demi Nyquist, est notĂ©e ( )ts et la durĂ©e symbole T . Le signal en bande translatĂ©e Ă©mis sâĂ©crit :
( )
â= â
nn
ti nTtsaete 02Re)( ÏÎœ
AprÚs passage dans un canal de transmission linéaire, le récepteur observe :
( ) ( ) ( )
+â= â
nn
ti tnTtqaetr ηÏÎœ 02Re
La rĂ©ponse ( )tq est constituĂ©e de la mise en cascade du filtre dâĂ©mission et du canal, ( )tη est un bruit additif. Lorsque lâenveloppe complexe de ( )tr est parfaitement
rĂ©cupĂ©rĂ©e, il est possible de construire une statistique suffisante en filtrant ( ) ( )â +â
nn tnTtqa η par ( )tq â* , filtre adaptĂ© Ă ( )tq , puis en Ă©chantillonnant de
maniĂšre synchrone au rythme de un point par durĂ©e symbole. En notant ( ) ( ) ( )tqtqtp ââ= * et ( ) ( ) ( )tqttn ââ= *η , le signal discret ainsi construit sâĂ©crit :
1 Les algorithmes dĂ©crits dans ce chapitre sâadaptent trĂšs simplement aux modulations PSK ou QAM. Nous nous limitons essentiellement aux signaux BPSK pour simplifier la prĂ©sentation.
( ) ( )kTtn
nk tnnTtpay=
â +â=
Notons quâil est difficile voire impossible de rĂ©aliser le filtre adaptĂ© ( )tq â* dans le
domaine analogique du fait de la prĂ©sence du canal inconnu. De plus, une mise en Ćuvre numĂ©rique offre plus de souplesse. Pour quâune mise en Ćuvre purement numĂ©rique du filtre adaptĂ© soit possible sans perte dâoptimalitĂ©, il suffit dâĂ©chantillonner le signal en bande de base en respectant le thĂ©orĂšme dâĂ©chantillonnage de Shannon. Cela suppose de
préfiltrer le signal dans la bande
+â
ee TT 21,
21 avant de lâĂ©chantillonner aux instants
ekT . Par commoditĂ©, la pĂ©riode dâĂ©chantillonnage eT sera un sous-multiple de T ( eTT λ= avec λ entier, typiquement 2 ou 4) ; notons ( )ek kTzz = le signal discret ainsi obtenu et ( )th la rĂ©ponse impulsionnelle qui relie z aux donnĂ©es transmises.
Lâobjectif de ce chapitre est de donner un aperçu des techniques de base pour la
rĂ©cupĂ©ration du rythme et de la porteuse. Pour aborder correctement les problĂšmes de synchronisation, il faut tout dâabord
modĂ©liser le signal Ă temps continu sortant du dĂ©modulateur en prĂ©sence dâune erreur de dĂ©modulation et dâun dĂ©calage temporel.
Ce signal est de la forme :
( ) ( ) ( ) ( )â +ââ=n
nti tnnTtpaety ÏΟ
oĂč le retard TÎ”Ï = est une fraction de la durĂ©e symbole et oĂč la phase ( )tΟ modĂ©lise
lâerreur liĂ©e au changement de frĂ©quence. TrĂšs souvent, lâerreur de phase est bien approchĂ©e par une dĂ©rive linĂ©aire : ( ) 02 ΟÏΎΟ += tt oĂč ÎŽ reprĂ©sente une erreur de frĂ©quence et 0Ο une erreur sur la phase.
Deux dispositifs sont utilisés pour lutter contre les asynchronismes : 1. Un dispositif de récupération de porteuse qui assure que le démodulateur
complexe est parfaitement synchronisé avec le modulateur. 2. Un dispositif de récupération de rythme qui estime les instants
dâĂ©chantillonnage optimaux. Les systĂšmes de synchronisation estiment pour les compenser lâerreur de phase ( )tΟ
ainsi que le dĂ©calage temporel Ï . Lorsque ces deux paramĂštres sont parfaitement estimĂ©s, on retrouve le modĂšle synchronisĂ© :
( ) ( )[ ] ( )â ++â=+=
nnk kTnTnkpakTyy ÏÏ
Dans une approche numĂ©rique, le signal prĂ©filtrĂ© Ă©chantillonnĂ© sâĂ©crit :
( ) ( ) ( ) ( )â +ââ==n
eenkTi
ek kTnnTkThaekTzz e ÏΟ
Dans ce chapitre nous supposons que le systĂšme de transmission respecte le critĂšre
de Nyquist. Typiquement, cela signifie quâun demi-Nyquist est utilisĂ© du cĂŽtĂ© de lâĂ©metteur ainsi quâau rĂ©cepteur et que la rĂ©ponse frĂ©quentielle du canal est constante dans la bande utile. Dans ce cas, aprĂšs normalisation de lâamplitude, le modĂšle synchronisĂ© se rĂ©duit Ă ( ) kkk nakTyy +=+= Ï avec ( )Ï+= kTnnk et la sĂ©quence ky peut directement servir dâentrĂ©e Ă un dĂ©codeur, si un code correcteur dâerreur a Ă©tĂ© utilisĂ© Ă lâĂ©mission, ou Ă une simple dĂ©cision si aucun codage nâa Ă©tĂ© mis en Ćuvre.
Dans le cas plus complexe dâun canal non idĂ©al, il faudra Ă©galement dĂ©tecter les symboles Ă lâaide dâun dĂ©tecteur de Viterbi ou de toute autre mĂ©thode. Dans ce cas, la synchronisation symbole et lâestimation du canal sont Ă©troitement liĂ©es.
5.1.1 Synchronisation totalement numérique
TĂȘte de rĂ©ception optimale
Lorsque le signal sortant du dĂ©modulateur complexe est affectĂ© dâune erreur de rythme et dâune erreur de phase, la tĂȘte de rĂ©ception optimale pour un rĂ©cepteur totalement numĂ©rique est celle de la figure suivante :
Figure 5.1 - TĂȘte de rĂ©ception optimale numĂ©rique
Dans cette structure, les oscillateurs locaux utilisés pour la démodulation comme
pour lâĂ©chantillonnage sont libres, câest-Ă -dire non asservis par une quelconque commande. Cette situation est Ă opposer Ă celle de rĂ©cepteurs plus traditionnels pour lesquels les oscillateurs sont asservis soit par un systĂšme analogique (tĂȘte de rĂ©ception analogique) soit par un algorithme numĂ©rique (systĂšmes hybrides analogique-numĂ©rique).
Dans un rĂ©cepteur numĂ©rique, le signal reçu est dĂ©modulĂ© autour de la frĂ©quence porteuse attendue ; ce faisant, une erreur de phase subsiste ; un traitement en bande de base est Ă mĂȘme de compenser cette fluctuation de phase.
Le signal issu du dĂ©modulateur est ensuite traitĂ© par le filtre adaptĂ© Ă lâensemble de la chaĂźne de transmission, puis Ă©chantillonnĂ©. Une premiĂšre possibilitĂ© consiste Ă aligner les instants dâĂ©chantillonnage sur les symboles transmis grĂące Ă un asservissement de lâĂ©chantillonneur. Lâalternative numĂ©rique consiste Ă employer un Ă©chantillonneur non asservi pour ensuite procĂ©der Ă un changement numĂ©rique du rythme. Pour que le rĂ©-
DEMODULATEUR LIBRE( )kiÏâexp
DECIMATEUR
)(ty FILTRE ADAPTE
ekT Ă©chantillonneur libre
FILTRE INTERPOLATEUR
ALGORITHME DE SYNCHRONISATION
âDĂ©modulateur complexe
Ă©chantillonnage numĂ©rique du signal soit possible, la frĂ©quence dâĂ©chantillonnage doit respecter le critĂšre de Shannon, câest-Ă -dire ĂȘtre strictement supĂ©rieure Ă deux fois la frĂ©quence maximale contenue dans le signal. LâexcĂšs de bande (roll-off) des signaux de communication est gĂ©nĂ©ralement compris entre 0 et 100% et la frĂ©quence dâĂ©chantillonnage doit ainsi ĂȘtre supĂ©rieure Ă deux points par symbole. On utilise typiquement une valeur de deux ou de quatre fois la cadence symbole. Les oscillateurs utilisĂ©s par lâĂ©metteur et par le rĂ©cepteur ayant des frĂ©quences incommensurables, le dispositif numĂ©rique de changement de rythme doit utiliser un filtre interpolateur variant en temps capable dâinterpoler dans lâintervalle [ ]2/,2/ ee TT +â suivi dâun systĂšme de dĂ©cimation permettant dâeffectuer un dĂ©calage dâun nombre entier de symboles.
Ce schĂ©ma de rĂ©ception suppose que les paramĂštres de synchronisation, rythme et porteuse, sont estimĂ©s par ailleurs. Lâobjectif de ce chapitre est de fournir quelques schĂ©mas Ă©lĂ©mentaires pour lâestimation de ces deux paramĂštres.
5.1.2 Cas particulier : récupération de porteuse
Lorsque lâĂ©chantillonnage est parfait ( ) ( ) ( )
kTt
ti
nnk etnnTtpay
=
+â= â Ο se rĂ©duit2
Ă ki
kk beay k += Ο car le systĂšme respecte le critĂšre de Nyquist. Il faut alors estimer la phase kΟ Ă partir du signal discret ky . Le bruit kb est supposĂ© blanc, gaussien, centrĂ© et circulaire de variance 2Ï .
5.1.3 Cas particulier : récupération de rythme
En lâabsence dâerreur de phase, la sortie du dĂ©modulateur complexe est de la forme ( ) ( ) ( )â +ââ=
nn tnnTtpaty Ï et il faut estimer les instants kTtk = Ă partir de
( )ty ou du signal échantillonné ( ){ }ekTz .
5.1.4 Cas général : estimation conjointe
Il est Ă©galement possible dâestimer conjointement plusieurs paramĂštres de synchronisation. Par exemple, lâerreur de dĂ©modulation peut ĂȘtre essentiellement une erreur sur la frĂ©quence de dĂ©modulation et le dĂ©calage de rythme est gĂ©nĂ©ralement supposĂ© constant sur lâintervalle dâobservation. Dans ce cas, les deux paramĂštres peuvent ĂȘtre dĂ©duits dâune mĂȘme procĂ©dure dâestimation.
5.2 RĂ©cupĂ©ration de porteuse Il convient de distinguer deux cas qualitativement diffĂ©rents selon lâordre de grandeur
de lâerreur sur la porteuse.
2 A un facteur constant prĂšs.
5.2.1 Décalages forts : estimation de fréquence
Typiquement, dans des cas tels quâune communication par satellite, lâerreur sur la porteuse liĂ©e au dĂ©calage Doppler peut ĂȘtre grande vis Ă vis de la largeur de bande du signal, il est alors nĂ©cessaire dâestimer et de compenser ce dĂ©calage avant tout traitement en bande de base. Pour sâen convaincre, il suffit de considĂ©rer le cas extrĂȘme dans lequel le dĂ©calage est si important que le signal reçu sort de la bande passante du filtre de rĂ©ception. Dans ce cas, il est clair quâaucun traitement en bande de base ne rĂ©soudra le problĂšme. Des systĂšmes capables dâestimer de gros Ă©carts frĂ©quentiels existent : on peut par exemple construire une mesure de lâerreur de frĂ©quence en mesurant la diffĂ©rence dâĂ©nergie entre deux bandes de part et dâautre de la porteuse et utiliser cette mesure pour asservir la dĂ©modulation. Câest la technique des filtres duaux. Cette approche est Ă©quivalente aux systĂšmes connus sous le nom de quadricorrĂ©lateurs. De nombreuses variantes ont Ă©tĂ© proposĂ©es ; nous ne dĂ©taillons pas ce problĂšme plus avant, le lecteur intĂ©ressĂ© peut consulter [4,5] et ses rĂ©fĂ©rences secondaires.
5.2.2 DĂ©calages faibles : poursuite de phase
A partir de maintenant, nous considĂ©rons que le dĂ©calage frĂ©quentiel rĂ©siduel est suffisamment faible pour quâil soit possible dâenvisager un traitement numĂ©rique en bande de base.
Fréquence pure
Approche du maximum de vraisemblance (MV)
Supposons que le signal nâest pas modulĂ© ( 1=ka pour tout k ) et que la phase est constante ; les observations sont alors de la forme k
ik bey += Ο . La vraisemblance des
1+k observations ( )kT
k yyY ,,0= sâĂ©crit :
( )
ââ= â
=2
2
02 exp1,
ÏÏÏΟ
Οin
k
nk
eyYP
La solution du maximum de vraisemblance kÏ est la valeur du paramĂštre Ο qui rend la probabilitĂ© ( )Ο,kYP maximale, celle qui explique au mieux les observations. Elle vĂ©rifie
lâĂ©quation implicite ( ) 0,log =ââ ΟΟ kYP , câest-Ă -dire ( )â
=
â =k
n
in
key0
0Im Ï .
Dans ce cas trĂšs simple, lâestimateur sâĂ©crit explicitement :
( )
( )
=
â
â
=
=k
nn
k
nn
k
y
yArc
0
0
Re
ImtanÏ
Boucle de phase dâordre un
+
-
+
+
Pour des problĂšmes dâestimation non linĂ©aires, il est le plus souvent impossible dâobtenir une forme explicite pour lâestimateur du maximum de vraisemblance et lâon doit se contenter dâapprocher la solution par une procĂ©dure itĂ©rative du type :
( )ki
kkk ey ÏÎłÏÏ â++ += 11 Im
Cette forme approchée correspond au schéma de la figure suivante.
Figure 5.2 - Boucle Ă verrouillage de phase
Ce dispositif est appelĂ© « boucle Ă verrouillage de phase ». Remarquons quâil sâagit
dâune approximation obtenue en supposant la phase constante et que le paramĂštre Îł doit ĂȘtre choisi. Pratiquement, Îł doit ĂȘtre choisi en fonction du rapport signal Ă bruit et de la vitesse de variation de la phase (voir plus loin).
Adaptation au cas dâune dĂ©rive de phase
Voyons tout dâabord comment la boucle de phase peut ĂȘtre adaptĂ©e pour tirer parti dâune connaissance a priori sur lâĂ©volution de la phase. Commençons pour cela par spĂ©cifier un modĂšle statistique rĂ©aliste pour dĂ©crire les fluctuations de la phase.
En pratique, deux oscillateurs nâont jamais exactement la mĂȘme frĂ©quence. Il est rĂ©aliste de supposer quâune petite erreur de frĂ©quence kΔ existe, cette frĂ©quence pouvant elle mĂȘme ĂȘtre affectĂ©e dâune faible gigue alĂ©atoire modĂ©lisĂ©e par une variable gaussienne centrĂ©e 2
kw . Ajoutons que la phase kΟ est Ă©galement perturbĂ©e par une gigue gaussienne 1
kw . Ces considĂ©rations conduisent au modĂšle dâĂ©volution suivant :
21
11
kkk
kkkk
w
w
+=
++=
+
+
ΔΔ
ΔΟΟ
Cette information a priori permet de raffiner la boucle de phase et de la remplacer par lâalgorithme suivant3 :
3 Cet algorithme sâobtient en calculant le filtre de Kalman Ă©tendu associĂ© au modĂšle dâĂ©volution et Ă lâĂ©quation dâobservation
ki
k bey k += Ο
Filtre de boucle
Phase estimée
Phase du signal observé
1+kÏ
sin
1âz
Ο
kb
Îł
kkk
kkkk
Î+=Î++=
+
+
21
11
γΎΎγΎÏÏ
Pour la boucle de phase décrite précédemment ( )ki
kk eyE Ïâ+= 1Im . kÏ est un
estimateur de la phase et kÎŽ un estimateur de sa dĂ©rive moyenne entre deux observations successives. Cet algorithme diffĂšre du prĂ©cĂ©dent par un filtrage de lâerreur kE Ă lâaide
dâun filtre de rĂ©ponse ( ) 12
11
1 ââ
â+=
zzH Îł
γ . Pour mettre en évidence ce « filtre de
boucle », on écrit volontiers cet algorithme sous la forme :
kkk Ez
â++= â+ 1
211 1
γγÏÏ
On le nomme « boucle de phase du second ordre ». LâintĂ©grateur supplĂ©mentaire qui apparaĂźt pour 02 â Îł permet de suivre sans erreur statique une dĂ©rive linĂ©aire de phase.
Cette modification de lâalgorithme initial rend le systĂšme plus performant en poursuite lorsque le modĂšle concorde avec la rĂ©alitĂ©. Par contre, la robustesse est moindre : clairement, si lâinformation a priori est fausse, il vaut mieux en rester Ă une boucle dâordre un. De plus lâaccrochage est plus dĂ©licat pour la boucle du second ordre et il est gĂ©nĂ©ralement nĂ©cessaire de lui adjoindre une aide pour lâinitialiser avec une valeur de la dĂ©rive proche de la rĂ©alitĂ©.
Signal modulé à deux états de phase
Nous allons maintenant adapter les méthodes précédentes au cas de signaux modulés par déplacement de phase à deux états ( 1±=ka ).
Approche du maximum de vraisemblance
Les observations ki
kk beay += Ο dĂ©pendent maintenant des symboles binaires 1±=ka . La vraisemblance dâun bloc dâobservations ( )k
Tk yyY ,,0= conditionnée par
les symboles Ă©mis sâĂ©crit :
( )
ââ= â
=2
2
021 exp1,,/,
ÏÏÏΟ
Οinn
k
nkk
eayaaYP
Ces symboles Ă©tant inconnus du rĂ©cepteur, celui-ci doit sâen affranchir. En supposant les ka indĂ©pendants, Ă©quiprobables et uniformĂ©ment rĂ©partis sur { }1,1 +â , il est possible d'intĂ©grer sur les ka inconnus :
( )
( )
( )â= â
â
+
++â+
+ââ
=
k
n inn
inn
k
kkeyy
eyy
aaYP0
2
2
2
2
1
211Re2
exp21
1Re2exp
21
1,,/,
Ï
Ï
ÏÏΟ
Ο
Ο
Lâannulation de la log vraisemblance conduit Ă la solution implicite :
( ) ( ) 0Re2tanhIm22
02 =
â
=
ââ kk in
k
n
in eyey ÏÏ
ÏÏ
et Ă lâalgorithme approchĂ© :
( ) ( )
+= â
+â
++kk i
ki
kkk eyey ÏÏ
ÏÎłÏÏ 1211 Re2tanhIm
Selon le rapport signal sur bruit, le terme ( )
â
+ki
k ey Ï
Ï 12 Re2tanh peut ĂȘtre approchĂ©
essentiellement de deux façons. 1. Rapport signal sur bruit fort. Lorsque 2Ï est petit, lâargument de la tangente
hyperbolique est grand et celle-ci est bien approchée par une fonction signe. Le
terme ( )
â
+ki
k ey Ï
Ï 12 Re2tanh est donc une « dĂ©cision dure » 1~
+ka quant au
symbole Ă©mis 1+ka et lâalgorithme se rĂ©duit Ă ( )kikkkk eya ÏÎłÏÏ â
+++ += 111~Im . Les
symboles inconnus sont Ă©liminĂ©s en remodulant, câest Ă dire en multipliant par les dĂ©cisions 1
~+ka . DâoĂč le nom de boucle Ă remodulation donnĂ© Ă cet algorithme.
Cet algorithme se gĂ©nĂ©ralise Ă des constellations QAM ou PSK Ă plus grand nombre dâĂ©tats de la maniĂšre suivante :
( )kikkkk eya ÏÎłÏÏ â
+++ += 1*
11~Im
2. Rapport signal sur bruit faible. Lorsque son argument est faible, la tangente hyperbolique est approximativement linĂ©aire et lâalgorithme sâapproche de ( )ki
kkk ey ÏÎłÏÏ 2211 Im â
++ += . La mise au carrĂ©e est une autre maniĂšre dâĂ©liminer la modulation. Cet algorithme est appelĂ© « boucle de Costas ». Il se gĂ©nĂ©ralise Ă des modulations de phase Ă N Ă©tats comme suit :
( )kiNNkkk ey ÏÎłÏÏ â
++ += 11 Im
Ces diffĂ©rents algorithmes peuvent ĂȘtre adaptĂ©s Ă des dĂ©rives de phase de forme connue a priori en ajoutant un filtre de boucle exactement de la mĂȘme maniĂšre que dans le cas de lâestimation dâune frĂ©quence pure. On prĂ©sentera en section 5.5.2 une implantation en Matlab et quelques rĂ©sultats de simulation des boucles de Costas dâordre 1 et 2, pour la rĂ©cupĂ©ration de porteuse sur une modulation Ï/4 QPSK.
RĂ©glage des pas
La qualitĂ© du fonctionnement des algorithmes prĂ©cĂ©dents dĂ©pend du rĂ©glage du Îł (pour les boucles dâordre un) ou des pas 21 ,γγ (pour les boucles dâordre deux). En toute rigueur, il est nĂ©cessaire de distinguer deux modes de fonctionnement :
âą Lâaccrochage ou convergence initiale. Câest la premiĂšre Ă©tape. La boucle est initialisĂ©e Ă lâaide de valeurs de la phase ( 0Ï ) et de la dĂ©rive ( 0ÎŽ ) qui peuvent ĂȘtre trĂšs diffĂ©rentes des vraies valeurs. Le comportement est alors non linĂ©aire et difficile Ă Ă©tudier thĂ©oriquement [4,5]. Dâun point de vue pratique le comportement des boucles de phase est assez mĂ©diocre durant cette premiĂšre Ă©tape et il est prĂ©fĂ©rable dâaider la boucle en lui fournissant une estimĂ©e grossiĂšre de la dĂ©rive (estimateur de frĂ©quence).
âą La poursuite. La boucle est verrouillĂ©e sur la phase et suit ses variations. Les boucles Ă verrouillage de phase sont trĂšs efficaces dans cette phase de leur fonctionnement. Un rĂ©glage prĂ©cis des pas les rend trĂšs proches de lâoptimum thĂ©orique.
La distinction entre ces deux modes de fonctionnement extrĂȘmes cache une particularitĂ© importante du comportement dâune boucle de phase : les glissements de cycle. Il peut arriver que la phase estimĂ©e varie brutalement, conduisant la boucle Ă changer de dĂ©termination. Dans ce cas, une nouvelle acquisition se produit avant que la boucle ne se stabilise Ă nouveau au voisinage de sa nouvelle trajectoire. En pratique, les glissements de cycle doivent ĂȘtre inexistants (extrĂȘmement rares) pour que le fonctionnement de la boucle puisse ĂȘtre qualifiĂ© de correct.
Lorsque le modĂšle dâĂ©volution de la phase est connu, les pas optimaux du point de vue de la poursuite des non-stationnaritĂ©s ainsi que les performances obtenues pour ce rĂ©glage optimal peuvent ĂȘtre calculĂ©es. Il est mĂȘme possible de construire des algorithmes qui estiment conjointement la phase et les valeurs optimales des pas (cf. [1], [2], [3]).
5.3 RĂ©cupĂ©ration du rythme Conceptuellement, la synchronisation est un cas particulier de lâestimation du canal de
transmission dans lequel le canal est connu Ă un paramĂštre inconnu prĂšs. Remarquons Ă©galement que dans les systĂšmes qui traitent les donnĂ©es reçues par bloc et pour lesquelles le canal de transmission ne peut pas ĂȘtre supposĂ© constant sur la bande utile, le problĂšme de la synchronisation symbole est directement intĂ©grĂ© Ă la procĂ©dure dâestimation du canal. La prise en considĂ©ration explicite de la synchronisation symbole est particuliĂšrement importante lorsque le dĂ©calage de rythme Ï ne peut pas ĂȘtre supposĂ© constant sur la durĂ©e dâun bloc, dans les transmissions en flot continu ou lorsque le canal est proche de lâidĂ©al. Nous nous plaçons Ă nouveau dans ce dernier cas.
Pour des modulations de type PSK ou QAM, le signal reçu ne contient aucune pĂ©riodicitĂ© liĂ©e Ă la pĂ©riode symbole, il nâest donc pas possible de rĂ©cupĂ©rer le rythme symbole par une simple boucle Ă verrouillage de phase. Nous verrons quâune sous catĂ©gorie importante des systĂšmes de synchronisation est celle des mĂ©thodes dites de « raie spectrale » dans lesquelles la cyclostationnaritĂ© du signal est transformĂ©e en une vĂ©ritable raie spectrale, laquelle peut ĂȘtre suivie par un systĂšme bouclĂ©, tel quâune boucle de phase, ou par un simple filtrage passe-bande centrĂ© autour de la frĂ©quence symbole attendue.
En supposant que la phase est parfaitement compensĂ©e, le signal en sortie du dĂ©modulateur complexe sâĂ©crit :
( ) ( ) ( )â +ââ=
nn tnnTtpaty Ï
Lâobjectif est dâĂ©chantillonner ( )ty aux instants Ï+= kTtk . Pour cela, la frĂ©quence
T/1 dâĂ©mission des symboles doit ĂȘtre estimĂ©e et le peigne dâĂ©chantillonnage de frĂ©quence T/1 doit ĂȘtre alignĂ© sur celui quâutilise lâĂ©metteur.
5.3.1 Approche du maximum de vraisemblance
Comme nous lâavons fait pour lâestimation de la phase, nous utilisons ici lâapproche du maximum de vraisemblance pour dĂ©duire une solution approchĂ©e au problĂšme de
synchronisation sur un bloc dâobservations. Nous approchons Ă©galement les solutions obtenues par des systĂšmes bouclĂ©s simples. A titre dâillustration, nous montrons comment certaines de ces boucles de synchronisation peuvent ĂȘtre obtenues Ă lâaide dâautres approches (algorithmes adaptatifs par exemple).
Comme nous lâavons dĂ©jĂ mentionnĂ©, il est souvent plus intĂ©ressant dâĂ©chantillonner le signal reçu aprĂšs un simple prĂ©filtrage pour rĂ©aliser numĂ©riquement le filtre adaptĂ©, cette approche permet Ă©galement dâĂ©tudier la synchronisation dans le domaine numĂ©rique.
Les Ă©chantillons prĂ©levĂ©s en sortie du prĂ©filtrage sâĂ©crivent :
( ) ( ) ( ) ( )â +ââ==n
eenkTi
ek kTnnTkThaekTzz e ÏΟ
La variation de phase ( )tΟ est typiquement de la forme ( ) 02 ΟÏΎΟ += tt . Nous nous
intĂ©ressons Ă lâestimation du rythme sous diffĂ©rentes hypothĂšses concernant lâerreur de frĂ©quence ÎŽ . Le problĂšme consiste Ă estimer les erreurs de synchronisation Ă partir des
kz . Contrairement au problĂšme de rĂ©cupĂ©ration de porteuse dans lequel le modĂšle dâobservation est instantanĂ©, nous devons ici travailler avec un modĂšle convolutif dans lequel chaque Ă©chantillon observĂ© dĂ©pend de plusieurs symboles transmis. En supposant la rĂ©ponse ( )th approximativement finie, une suite ( )kk
T zzz +â= ,, de 12 +k observations dĂ©pend de 12 +L symboles selon une relation linĂ©aire de la forme nxHz += avec ( )kk
T nnn +â= ,, , [ ]LL hhH +â= ,, , [ ] 0,, ΟiLL
T eaax +â= et
( ) ( )[ ]ee kTie
kTie
T eTkTheTkThh ÏÎŽÏΎλ ÏλÏλ 22 ,, +â ââ+âââ=
DâoĂč, pour un bruit blanc et gaussien, la vraisemblance de lâobservation :
( )
âââÎ
22
1exp,, xHzxzÏ
ÎŽÏ
En développant la vraisemblance, il vient :
( ) ( )
â
ââÎ xHzxHHxzzxz HHHH Re2exp1exp1exp,, 222 ÏÏÏ
ÎŽÏ
Il est clair que le premier terme ne dépend pas des paramÚtres de synchronisation. Un
simple dĂ©veloppement montre quâil en est de mĂȘme pour le deuxiĂšme terme (lorsque k est grand). Ainsi, lâoptimisation peut ĂȘtre faite en considĂ©rant seulement :
( ) ( )
âÎ xHzxz HRe2exp,, 2Ï
ÎŽÏ
De cette expression, il est possible de tirer des systĂšmes de synchronisation utilisant
les données (dits DA, Data Aided), des systÚmes pilotés par des décisions quant aux données transmises (dits DD, Decision Directed) ou des systÚmes « aveugles» (dits NDA, Non Data Aided). Les deux premiers cas étant assez immédiats, nous nous concentrons
surtout sur les systĂšmes NDA. Nous donnerons tout de mĂȘme un exemple de systĂšme DA ou DD dans le cas des signaux Ă spectre Ă©talĂ©.
De mĂȘme que pour la rĂ©cupĂ©ration de phase, la dĂ©pendance par rapport aux symboles porteurs dâinformation peut ĂȘtre Ă©liminĂ©e en intĂ©grant sur la constellation. Malheureusement, cette approche conduit ici Ă des calculs inextricables et des simplifications doivent ĂȘtre faites.
La premiĂšre simplification classique consiste Ă supposer le rapport signal Ă bruit faible pour dĂ©velopper lâexponentielle en sĂ©rie, ainsi :
( ) ( ) ( )zHxCzHxBAxz HHHH 2ReRe,, ++âÎ ÎŽÏ
A, B et C sont des constantes indépendantes des paramÚtres de synchronisation. Des
systĂšmes NDA peuvent ĂȘtre obtenus en intĂ©grant sur la constellation, câest la mĂ©thode qui a Ă©tĂ© utilisĂ©e pour obtenir des boucles de phase adaptĂ©es aux signaux BPSK (Costas et remodulation). Cette mĂ©thode permet de dĂ©finir des algorithmes adaptĂ©s Ă des constellations particuliĂšres. Il est Ă©galement possible dâobtenir des systĂšmes plus gĂ©nĂ©raux en faisant une hypothĂšse approximativement valable pour un grand nombre de constellations. Cela est par exemple possible en supposant la phase Ă©quirĂ©partie sur lâintervalle [ [Ï2,0 .
Sous cette hypothÚse, une intégration donne :
( ) 2, zHzHHzz HHH =âÎ ÎŽÏ
Selon que lâerreur frĂ©quentielle est connue ou non, diffĂ©rents dispositifs pratiques
pour la synchronisation peuvent ĂȘtre dĂ©duits de cette expression.
Erreur sur la fréquence connue
Pour de grands Ă©chantillons, la fonction de vraisemblance ( ) 2, zHz HâÎ ÎŽÏ
reprĂ©sente lâĂ©nergie en sortie du filtre adaptĂ© Ă©chantillonnĂ© Ă un point par symbole (aux instants Ï+kT ) aprĂšs compensation de lâerreur de frĂ©quence. Ce rĂ©sultat peut donner lieu Ă une implantation itĂ©rative du type « boucle de synchronisation ». Le principe dâune boucle de synchronisation consiste Ă reconstruire localement, au niveau du rĂ©cepteur, un signal de rĂ©fĂ©rence pĂ©riodique puis Ă amener cette rĂ©fĂ©rence en synchronisme avec le signal reçu. Une mesure de lâerreur entre la rĂ©fĂ©rence locale et le signal reçu permet dâasservir le signal de rĂ©fĂ©rence donc lâĂ©chantillonnage. En dĂ©rivant la vraisemblance, nous choisissons le signal dâerreur :
( ) ( ) ( )( ) ( ) ( )
ââ
=ââ
= ÏÏ
ÏÏÏÏ
Ï kkkk yyyyE ** Re2
oĂč ( ) ( )ÏÏ += kTyyk reprĂ©sente la sortie du filtre adaptĂ© pour le retard Ï aprĂšs
compensation de lâerreur de frĂ©quence. Cette erreur ( )ÏE conduit Ă la boucle de synchronisation suivante :
( ) ( )
ââ
â=+ kkkkkk yy ÏÏ
ÏÎłÏÏ *1 Re
En pratique, la dĂ©rivĂ©e peut ĂȘtre approchĂ©e par une simple diffĂ©rence finie (cf. les
simulations ; cf. aussi lâexemple de la boucle « early-late » pour les signaux Ă spectre Ă©talĂ©). De mĂȘme que pour les boucles de phase, le pas Îł peut ĂȘtre remplacĂ© par un filtre ; le
rĂ©glage de ce filtre peut ĂȘtre effectuĂ© en tenant compte des informations a priori disponibles quant Ă lâĂ©volution du rythme. En 5.5.3, nous prĂ©sentons lâimplantation Matlab ainsi que quelques rĂ©sultats de simulation pour un tel dispositif de rĂ©cupĂ©ration de rythme.
Bien que la sortie du filtre adaptĂ© soit exempte dâinterfĂ©rences entre symboles
lorsquâon lâĂ©chantillonne de maniĂšre synchrone au rythme de un point par symbole, il nâen est pas de mĂȘme pour la dĂ©rivĂ©e de ce filtre. Ainsi, le systĂšme de synchronisation symbole obtenu grĂące Ă lâapproximation rapport signal Ă bruit faible souffre dâun bruit propre prĂ©sent mĂȘme en lâabsence de bruit sur lâobservation. Ceci constitue la limitation majeure de ces systĂšmes simples.
Autre approche : algorithmes adaptatifs.
Dans le paragraphe prĂ©cĂ©dent, nous avons abordĂ© le problĂšme de la synchronisation symbole sous forme « bloc » tout en prĂ©cisant comment il est possible de dĂ©duire des boucles de synchronisation Ă partir dâune solution en bloc. Lorsque lâobjectif est dâobtenir une simple boucle de synchronisation, cette approche nâest pas la seule possible. A titre dâillustration, voyons comment la boucle de synchronisation prĂ©cĂ©dente peut ĂȘtre obtenue par dâautres voies. Pour plus de simplicitĂ©, supposons lâerreur de frĂ©quence connue et dĂ©jĂ compensĂ©e.
Lâobjectif est dâamener ( ) ( )ÏÏ kykTy =+ , sortie du filtre adaptĂ© avancĂ© de Ï , en synchronisme avec les donnĂ©es transmises. En supposant dans un premier temps les donnĂ©es connues du rĂ©cepteur (apprentissage), considĂ©rons la fonction de coĂ»t naturelle :
( ) ( ) 2
kkk ayEaJ â= ÏÏ Un algorithme du gradient stochastique pour la minimisation de J conduit Ă la
boucle de synchronisation suivante :
( )( ) ( )
ââ
ââ=+ kkkkkkk yay ÏÏ
ÏÎłÏÏ **1 Re
Ce systĂšme est du type DA. Il peut Ă©galement ĂȘtre utilisĂ© en mode DD en remplaçant
ka par une dĂ©cision prise en sortie du filtre adaptĂ©. Pour obtenir une version NDA, il suffit dâintĂ©grer sur la constellation des ka , ceci permet de retrouver lâalgorithme obtenu par approximation du maximum de vraisemblance.
Bien sĂ»r, de nombreuses autres boucles de synchronisation peuvent ĂȘtre trouvĂ©es
dans la littĂ©rature spĂ©cialisĂ©e. Parmi les procĂ©dures les plus efficaces, Mueller & MĂŒller [4,
5] ont proposĂ© une boucle de synchronisation pilotĂ©e par les dĂ©cisions ka quant aux symboles transmis qui utilise lâerreur ( ) ( )ÏÏ Ë~Ë~
1 +ââ+â TkTyakTya kk .
Erreur sur la fréquence inconnue
Lorsque quâaucune information a priori nâest disponible quant Ă lâerreur sur la frĂ©quence de dĂ©modulation, cette erreur peut ĂȘtre supposĂ©e uniformĂ©ment rĂ©partie sur la
bande
+â
ee TT 21,
21 . En intégrant par rapport à la loi de Ύ , il vient :
( ){ } [ ]zHHzz HH
ÎŽÎŽ ÎŽÏ E,E âÎ Il est facile de voir que la matrice [ ]HHHÎŽE est diagonale avec comme Ă©lĂ©ment
diagonal ( ) ( )â+
â=
â+=L
Lne nTlThlq 2ÏÏ . Dans ces conditions, la vraisemblance sâĂ©crit :
( ) ( )
âÎ â
+
â=
2
Re,k
kllzlqz ÏÎŽÏ
( )lqÏ est une rĂ©fĂ©rence locale qui tend Ă ĂȘtre eTT / -pĂ©riodique lorsque ââl . En
approchant cette rĂ©fĂ©rence par des formes plus simples (premier harmonique par exemple), il est possible dâobtenir des algorithmes plus faciles Ă implanter comme lâalgorithme de Oerder [6].
5.3.2 MĂ©thode de la raie spectrale
Lâapproche du maximum de vraisemblance, quoique thĂ©oriquement satisfaisante, ne conduit Ă des systĂšmes pratiquement utilisables quâau prix de simplifications drastiques. Les synchroniseurs obtenus perdent ainsi beaucoup des bonnes propriĂ©tĂ©s dâun vĂ©ritable estimateur au sens du MV. Cette assertion est particuliĂšrement claire lorsque lâon sâinterroge sur lâorigine du bruit propre des synchroniseurs : ce dĂ©faut majeur est une consĂ©quence directe de lâapproximation rapport signal Ă bruit faible.
Dans ces conditions, il est raisonnable de construire des systĂšmes de synchronisation en tirant profit de diverses propriĂ©tĂ©s statistiques des signaux de communications. Une propriĂ©tĂ© fondamentale pour lâestimation du rythme dâĂ©mission des symboles est la cyclostationnaritĂ© du signal ( )ty , câest-Ă -dire le fait que ses propriĂ©tĂ©s statistiques varient de maniĂšre pĂ©riodique au cours du temps. Les plus simples des mĂ©thodes qui utilisent la cyclostationnaritĂ©, ou mĂ©thodes cycliques, sont dites « mĂ©thodes de raie spectrale ».
Leur principe consiste Ă faire apparaĂźtre une frĂ©quence pure liĂ©e Ă la frĂ©quence symbole puis Ă suivre cette raie spectrale. La variance de ( )ty sâĂ©crit :
( ) ( ) ( ) 2222 E Ï+â= â
nk nTtpatyE
Câest une fonction T-pĂ©riodique dont le Ăšmen coefficient de Fourier vaut :
( ) ( ) nk
n dTnPP
Ta
c ÎŽÏΜΜΜ 2*2E
+
â= â«
â+
ââ
oĂč ( )ÎœP dĂ©signe la transformĂ©e de Fourier de ( )tp . Pour un excĂšs de bande4 infĂ©rieur Ă 100%, ( )ÎœP est contenu dans lâintervalle
[ ]TT /1,/1 +â et seuls les termes 0c , 1âc et 1+c peuvent ĂȘtre non nuls. Pour que 1âc et
1+c soient non nuls, il faut que le signal présente un excÚs de bande (roll-off non nul). Dans ce cas, la variance instantanée fait apparaßtre une raie spectrale de période T .
Ainsi, une mise au carrĂ© du signal fait apparaĂźtre une vĂ©ritable pĂ©riodicitĂ© quâil est possible de suivre simplement.
5.3.3 Interpolation numérique
Les mĂ©thodes dĂ©crites jusquâici utilisent le signal Ă temps continu ( )ty ou une version correctement surĂ©chantillonnĂ©e ( )ek kTzz = . En pratique, il faudra Ă©chantillonner le signal Ă des instants prĂ©cis soit physiquement, en pilotant lâĂ©chantillonneur Ă lâaide du retard estimĂ© Ï , soit numĂ©riquement en interpolant le signal numĂ©rique ( )ekTz . Cette derniĂšre solution tend Ă se gĂ©nĂ©raliser du fait des progrĂšs de la microĂ©lectronique. Nous donnons maintenant les bases concernant les techniques dâinterpolation numĂ©rique.
Principe
AprĂšs Ă©chantillonnage Ă la cadence eT , les Ă©chantillons observĂ©s ( )ekTz correspondent Ă lâĂ©chantillonnage du signal retardĂ© de Ï . Pour reconstituer les Ă©chantillons associĂ©s au signal non retardĂ©, il suffit de translater numĂ©riquement dâun nombre non entier dâĂ©chantillons. Une simple application de la formule de Shannon donne une solution Ă ce problĂšme lorsque la cadence dâĂ©chantillonnage eT respecte le critĂšre de Shannon :
( ) ( ) ( )
â+=+ â
+â
ââ=e
ene nTkT
TSincnTzkTz ÏÏÏ
Pratiquement, deux problĂšmes majeurs se posent : 1. Pour implanter un tel filtre, le sinus cardinal doit ĂȘtre tronquĂ© et il devient
nĂ©cessaire de centrĂ© correctement la rĂ©ponse de ce filtre sur lâĂ©chantillon Ă estimer. Pour cela, on limite lâinterpolation Ă lâintervalle [ ]2/,2/ ee TT +â et lâon compense la partie entiĂšre du dĂ©calage indĂ©pendamment.
2. Les pĂ©riodes dâĂ©chantillonnage eT et T sont incommensurables et le filtre interpolateur devient variant en temps. Il est alors impĂ©ratif de sĂ©parer la partie fractionnaire et la partie entiĂšre du retard dâinterpolation et dâexprimer les instants utiles en fonction de la pĂ©riode eT , seule horloge connue du rĂ©cepteur.
4 roll-off
Il faut déterminer les valeurs du signal aux instants
+=+
eee T
TTTnTnT Î”Ï , en
décomposant ee T
TTTn Δ+ en sa partie entiĂšre nn et sa partie fractionnaire nÎœ , il est clair
que cela nĂ©cessite dâinterpoler au dĂ©calage nÎœ puis de sĂ©lectionner lâĂ©chantillon nn en sortie de cet interpolateur.
ComplexitĂ© de lâinterpolateur, filtres polyphasĂ©s
Pratiquement, il est hors de question dâappliquer directement la formule dâinterpolation de Shannon, fut-elle tronquĂ©e. Une maniĂšre classique de mettre en Ćuvre un filtre interpolateur consiste Ă utiliser un filtrage polyphasĂ©. LâidĂ©e consiste Ă stocker en mĂ©moire plusieurs Ă©chantillonnages dĂ©calĂ©s dâune fraction de eT du sinus cardinal puis Ă sĂ©lectionner pour interpoler, le filtre Ă rĂ©ponse impulsionnelle finie fournie par la table la plus proche du dĂ©calage souhaitĂ©. Cette procĂ©dure peut ĂȘtre raffinĂ©e en interpolant entre les tables. Le plus simple consiste Ă interpoler linĂ©airement ou par des cubiques. Le lecteur intĂ©ressĂ© par ces aspects pourra consulter [8].
5.4 Cas des signaux Ă spectre Ă©talĂ© Les techniques prĂ©sentĂ©es jusquâici sont basiques et peuvent ĂȘtre aisĂ©ment adaptĂ©es Ă
divers cas particuliers. A titre dâexemple, nous donnons maintenant un exemple de synchroniseur pour les systĂšmes Ă Ă©talement de spectre par sĂ©quence directe.
Les systÚmes de communication pour la téléphonie mobile ont pour la plupart opté pour le partage de la ressource à répartition par codage (CDMA) afin de gérer l'aspect multi-utilisateurs. Parmi les méthodes d'étalement de spectre, l'étalement de spectre par séquence directe (Direct Sequence CDMA, DS-CDMA) sera utilisé par le systÚme européen UMTS5.
Pour un signal DS-CDMA, l'impulsion de mise en forme comprend un code )(tc qui doit posséder de bonnes propriétés d'autocorrélation (« proche d'un Dirac »). Le code est généralement une séquence binaire composée de M chips ; la vitesse des transitions entre chips étant M fois plus élevée que la vitesse des transitions entre les symboles, le spectre est étalé d'un facteur M . Notons MTTc /= la durée d'un chip.
Donnons quelques notions de base sur la synchronisation d'un signal DS-CDMA.
Synchronisation grossiĂšre, acquisition.
L'autocorrĂ©lation du code Ă©tant proche d'une impulsion de Dirac, une simple intercorrĂ©lation entre le signal reçu et le code permet de synchroniser approximativement. Lorsque le canal prĂ©sente des trajets multiples, il reste possible ''d'accrocher'' le trajet dominant. En pratique, diffĂ©rentes stratĂ©gies, comme la vĂ©rification sur plusieurs symboles consĂ©cutifs de la position du pic, peuvent ĂȘtre adoptĂ©es pour s'assurer du bon accrochage initial.
5 Universal Mobile Telecommunications System.
Synchronisation fine, poursuite.
Les boucles de synchronisation du rythme s'adaptent trÚs simplement aux signaux à spectre étalé. Le signal observé en sortie du filtre adapté à l'ensemble de la chaßne de transmission est toujours de la forme :
( ) ( ) ( )â +ââ=
nn tnnTtpaty Ï
et la vraisemblance des observations est proportionnelle Ă :
( )( )
+â
kk kTya Ï
Ï*
2 Re1exp
Pratiquement, en remplaçant les données inconnues par une décision sur la sortie du
filtre adaptĂ© (fonction signe en BPSK), la maximisation de la vraisemblance peut ĂȘtre atteinte Ă l'aide d'une procĂ©dure itĂ©rative :
( ) ( )
kkYkk ttyttytyÏ
ÎłÏÏ++ ââââ+â= )()(Re)(sign.1
Cet algorithme6 est appelé une boucle à verrouillage de délai, ou boucle « early-late »,
du fait qu'elle utilise la corrĂ©lation du signal reçu par le code pour trois valeurs du retard ( tt â+ââ ,0, ). La valeur tâ est le plus souvent rĂ©glĂ©e Ă la moitiĂ© de la durĂ©e du chip.
MĂȘme si les algorithmes s'Ă©crivent formellement de la mĂȘme façon pour des signaux
avec ou sans Ă©talement, il existe tout de mĂȘme quelques diffĂ©rences de comportement liĂ©es aux propriĂ©tĂ©s des codes utilisĂ©s. Pour certains codes, e.g. les sĂ©quences binaires de longueur maximale, la fonction de corrĂ©lation est constante, et proche de zĂ©ro, pour toutes les valeurs du retard, sauf celles comprises entre cTâ et cT+ (voisinage du pic de corrĂ©lation). Ainsi, pour qu'une boucle « early-late » fonctionne, il est nĂ©cessaire qu'elle soit initialisĂ©e dans cette plage, d'oĂč la nĂ©cessitĂ© de dĂ©composer la synchronisation en une phase grossiĂšre consistant Ă se caler Ă un chip prĂšs (acquisition) et une phase fine durant laquelle un algorithme affine l'estimation du retard puis suit ses Ă©ventuelles variations (poursuite). Si, au cours de son fonctionnement, la boucle sort de cette plage d'accrochage, le verrouillage est perdu : d'oĂč la nĂ©cessitĂ© pratique de surveiller son fonctionnement pour dĂ©cider, le cas Ă©chĂ©ant, d'une rĂ©acquisition, c'est-Ă -dire du dĂ©clenchement d'une nouvelle procĂ©dure d'acquisition. Notons qu'en pratique, la plage de recherche pourra tout de mĂȘme ĂȘtre plus rĂ©duite que pour la premiĂšre acquisition, mais que, fondamentalement, la dĂ©marche reste la mĂȘme. Le pendant de cette perte d'accrochage pour les boucles de phase classiques est le phĂ©nomĂšne de glissement de cycle (changement de dĂ©termination de la phase estimĂ©e). Les glissements de cycles sont gĂȘnants mais ne conduisent pas Ă une perte de synchronisation de longue durĂ©e. A contrario, la perte d'accrochage pour une boucle « early-late » la place dans un Ă©tat dans laquelle elle peut rester trĂšs longtemps...
D'autres remĂšdes Ă ce problĂšme de perte d'accrochage peuvent ĂȘtre envisagĂ©s :
6 Notez que cet algorithme est de la forme de l'algorithme de Gardner.
⹠Corrélateurs étendus. La construction d'une mesure de l'erreur non nulle sur une plage plus large est possible en combinant plus de deux sorties du filtre adapté au code, c'est l'idée des corrélateurs étendus. Naturellement, cette extension de la plage d'accrochage se traduit aussi par une augmentation du bruit dans la boucle.
⹠Une estimation optimale... Il est important de noter que l'apparition de la distinction entre acquisition et poursuite ne surgit que lorsque les méthodes de résolution utilisées sont sous optimales. Dans une approche du type filtrage non linéaire, il n'y a pas de raison de distinguer acquisition et poursuite [1].
5.5 Exemples de mise en Ćuvre en MATLAB Dans cette section, nous illustrons les idĂ©es dĂ©veloppĂ©es dans ce chapitre Ă lâaide
dâune simulation sous Matlab. Nous considĂ©rons lâexemple dâune modulation de phase en quadrature Ă 4 Ă©tats (QPSK), et nous nous intĂ©resserons uniquement Ă la transmission ramenĂ©e en bande de base. Dans un premier temps, il sâagira donc de mettre en place les signaux QPSK qui serviront par la suite. Dans un second temps, on sâintĂ©ressera Ă la synchronisation de porteuse, en considĂ©rant que le signal obtenu aprĂšs dĂ©modulation est entachĂ© dâun rĂ©sidu de porteuse. Dans un troisiĂšme temps, on considĂ©rera le problĂšme de la synchronisation de rythme.
5.5.1 Mise en place des signaux
Il sâagit ici de mettre en place les diffĂ©rents signaux. On sâappuie ici sur des scripts de la Communication Toolbox de Matlab.
Puisque lâon simule ici en partie des signaux analogiques, on introduit un facteur de surĂ©chantillonnage Surech par rapport Ă la frĂ©quence symbole. Si on note Fs la frĂ©quence dâĂ©chantillonnage effective (s pour sampling) et Fd la frĂ©quence symbole, (d pour digital) on aura Surech=Fs/Fd. On aura alors Surech points par pĂ©riode symbole.
Les symboles sont mis en forme par un filtre en cosinus ajustĂ© surĂ©levĂ©, pour lequel on choisit un facteur de roll-off diffĂ©rent de 0, de sorte Ă avoir un peu dâexcĂšs de bande. La rĂ©ponse impulsionnelle du cosinus surĂ©levĂ© nâest pas causale, et on doit alors introduire un retard Delay afin de la rendre causale. Ce filtre est un filtre de Nyquist, qui rĂ©sulte de la concatĂ©nation de deux filtres en « racine de cosinus surĂ©levĂ© », le premier placĂ© Ă lâĂ©mission et le second Ă la rĂ©ception.
PlutĂŽt que de travailler avec deux signaux en phase et quadrature, il est plus simple sous Matlab de travailler directement avec lâenveloppe complexe. La fonction Symb=randint(S,1,[0,M-1]) permet dâobtenir une sĂ©quence de longueur S, sur M niveaux entre 0 et M-1. Dâautre part, la modulation en bande de base, sur M niveaux, sans surĂ©chantillonnage -- câest-Ă -dire simplement le mapping des symboles sur des niveaux complexes, est effectuĂ©e par dmodce(Symb,Fd,Fd,'qask',M). Enfin, la rĂ©ponse impulsionnelle du cosinus surĂ©levĂ© est fournie par rcos=(rcosine(Fd,Fs,'default',RollOff,Delay)).
LISTING 5.1 - CRĂATION DES OBSERVATIONS
% Fichier CreaObs.m
% Date : novembre 1999 - mise a jour avril 2001 % Auteur : jfb % Variables % ******************************************************************** Surech=8; % Facteur de surechantillonnage = Fs/Fd S=128*8; % Nombre de symboles M=4; % Nombre de niveaux pour M-PSK Fd=1; % Frequence symbole (frequence baud) RollOff=0.4; % Pour le filtre de mise en forme Delay=10; % Retard = longueur de la partie non causale % = etendue de la RI : de -Delay a +Delay en symbole Delta=0; % Retard d'echantillonnage (eventuel) % Creation des signaux % ********************************************************************* % Symb : sequence de symboles % ymodbb : signal module en bande de base % ymodbb_s signal module en bande de base, surechantillonne % ymodbb_sf signal module en bande de base, surechant. et filtre % ymodbb_sf signal module en bande de base, surechantillonne,
filtre, % et complete par des zeros Fs=Surech*Fd; % Frequence d'echantillonnage % Creation de la sequence de symboles Symb=randint(S,1,[0,M-1]); % sur M niveaux entre 0 et M-1 % Modulation QPSK, en bande de base, ymodbb=dmodce(Symb,Fd,Fd,'qask',M); % sans surechantillonnage % ---> surechantillonnage : ymodbb_s=zeros(1,Surech*S); ymodbb_s(1:Surech:Surech*S)=ymodbb(1:S); % Creation du cosinus sureleve rcos=(rcosine(Fd,Fs,'default',RollOff,Delay)); ymodbb_sf=conv(rcos,ymodbb_s); ymodbb_sc=[zeros(1,Delay*Surech) (ymodbb_s) zeros(1,Delay*Surech)]; % signal en bb surechant % et complete de zeros pour recalage a cause % de la convolution Lsf=length(ymodbb_sf); % longueur de la seq surech et filtree
La figure 5.3 représente la partie réelle du signal modulé, en bande de base, avant et
aprĂšs filtrage par le filtre en cosinus surĂ©levĂ©. En dĂ©but de sĂ©quence, on note ainsi un « transitoire », liĂ© au retard introduit par le filtre. On note Ă©galement que le filtre est bien un filtre de Nyquist, puisque lâon retrouve la valeur des symboles en Ă©chantillonnant la sortie du filtre de Nyquist.
figure 5.3 - Parties réelles du signal bande de base avant et aprÚs filtrage de Nyquist.o
5.5.2 Récupération de porteuse
Le signal en bande de base est contaminĂ© par un rĂ©sidu de porteuse caractĂ©risĂ©e Ă la fois par un dĂ©phasage phi0 et une phase linĂ©aire. On choisit ici pour pente de la dĂ©viation linĂ©aire un Deltaf de 10-3 (en normalisĂ© par rapport Ă la frĂ©quence dâĂ©chantillonnage Fd). Rappelons que la dĂ©rive linĂ©aire correspondrait au cas ou lâon a un Ă©cart de frĂ©quence entre les oscillateurs de lâĂ©metteur et du rĂ©cepteur. Le terme phi0 ne correspond quâĂ un dĂ©calage des deux oscillateurs ou Ă un dĂ©phasage introduit par les diffĂ©rents filtres. Pour inclure ce rĂ©sidu de porteuse dans le signal recueilli au niveau du rĂ©cepteur, il suffit de multiplier celui-ci par un exponentielle complexe :
smod=ymodbb_sf.*exp(j*2*pi*Deltaf*[1:Lsf] + j*Phi0) ; Il sâagit maintenant dâĂ©liminer ce rĂ©sidu du signal, ce qui revient Ă utiliser un
algorithme qui estime les paramĂštres du dĂ©phasage. On peut alors mettre en place une boucle de Costas. La boucle de Costas dâordre 1 permet de corriger un dĂ©phasage constant et de « suivre » une dĂ©rive linĂ©aire, tandis quâĂ lâordre 2, la boucle de Costas est capable de corriger la dĂ©rive linĂ©aire.
Rappelons que le principe fondamental de ces deux boucles est dâutiliser un
algorithme de gradient stochastique estimant le rĂ©sidu de porteuse ou de phase au fur et Ă mesure que le rĂ©cepteur reçoit des Ă©chantillons. Pour cela on se dĂ©finit une erreur dâestimation donnant lâĂ©cart le symbole reçu et le symbole thĂ©orique, tout en annulant lâeffet de la modulation.
Ici, les symboles sont Ă©mis en Ï/4 QPSK, câest-Ă -dire que les symboles ak sont de la forme exp(jmÏ/4), avec m=1..4. La constellation est ainsi dĂ©phasĂ©e de Ï/4. On a alors (ak)4=-1, pour tout k, et lâeffet de la modulation est ainsi gommĂ©. Ainsi, si y(k) est le signal reçu entachĂ© dâune phase Ïk*, lâerreur :
( ) ( )( ) 144/ â= ââ kii eekyke ÏÏ
sâannule lorsque Ïk=Ïk*. En minimisant alors lâerreur quadratique moyenne, Ă lâaide dâun algorithme de gradient stochastique, on obtient une rĂ©currence de la forme7 :
( )( )144
1 Im âââ â= ki
kk eky Ï”ÏÏ Cette boucle est trĂšs simple de mise en Ćuvre, comme lâindique le listing 5.2 :
LISTING 5.2 - BOUCLE DE COSTAS DâORDRE 1
% Fichier Costas.m % Date : novembre 1999 - mise a jour avril 2001 % Auteur : jfb % Creation du signal avec residu de porteuse et dephasage % ******************************************************************* Lsf=length(ymodbb_sf); % longueur de la seq surech et filtree Peigne = zeros(1,Lsf); % creation d'un peigne de Dirac Peigne(1+Delta:Surech:Lsf)=ones(1,length([1+Delta:Surech:Lsf])); Phi0=0.1; % Initialisation du residu
7 Le changement de signe du pas dâadaptation par rapport Ă lâexpression fournie en 5.2.2 est liĂ©e au dĂ©calage de Ï/4 de la constellation. Si on nâen tenait pas compte a priori, la phase identifiĂ©e serait biaisĂ©e de Ï/4.
Deltaf=0.001; % Signal avec residu de phase smod=ymodbb_sf.*exp(j*2*pi*Deltaf*[1:Lsf] + j*Phi0); smod_e=smod.*Peigne; % echantillonne a la periode symbole smod_es=smod(1+Delta:Surech:Lsf); phiopt=((2*pi*Deltaf*Surech)*[1:S] + Phi0 ); % Mise en oeuvre de la boucle de Costas d'ordre 1 % ********************************************************************* % % phik : phase courante % phik1 : phase precedente % % Phi=[]; phik=0; phik1=0.2; for k=1:S yk=smod_es(k); Erreur(k)=abs(-yk^M*exp(-j*M*phik1)-4)^2; phik=phik1 - gamma*imag(yk^M*exp(-j*M*phik1)); Phi=[Phi phik]; phik1=phik; end;
En ce qui concerne le choix du pas dâadaptation, voir la figure 5.4, on retrouve
que plus il est important, plus la convergence vers la valeur du rĂ©sidu est rapide mais oscille autour de la valeur optimale. Pour diminuer ces sur-oscillations, on peut diminuer la valeur du pas. On aura alors un algorithme plus lent mais moins sensible aux rapides variations de phase (cas de sauts de phases importants ou prĂ©sence de bruit). Si le pas est trop faible, lâalgorithme nâarrive plus Ă estimer le rĂ©sidu car le terme correctif nâest pas assez influent pour suivre la dĂ©viation temporelle de la phase.
Enfin, la figure 5.5 confirme lâexistence dâun biais dâestimation : la phase estimĂ©e est toujours en retard par rapport Ă la phase linĂ©aire.
Figure 5.4 - Ăvolution de la phase identifiĂ©e par une boucle de Costas dâordre 1, pour diffĂ©rentes valeurs de mu.
Figure 5.5 - DiffĂ©rence entre la vrai phase et la phase identifiĂ©e par une boucle de Costas dâordre 1, pour diffĂ©rentes valeurs de mu.
Pour compenser ce biais, il faudrait « prĂ©dire » lâĂ©volution de la phase, comme
nous lâavons prĂ©sentĂ© en 5.2.2 -- Adaptation Ă une dĂ©rive de phase. Câest prĂ©cisĂ©ment ce que rĂ©alise la boucle de Costas dâordre 2, qui comporte un filtrage de lâerreur, Ă la maniĂšre dâun correcteur PI, bien connu des automaticiens. Lâestimation de la phase rĂ©pond alors Ă la relation symbolique :
( )( )1441
211 Im
1ââ
ââ
â+â= ki
kk ekyz
ÏγγÏÏ
Lâimplantation de cette boucle, donnĂ©e sur le listing 5.3 est Ă©galement fort
simple :
LISTING 5.3 - BOUCLE DE COSTAS DâORDRE 2
% Boucle de Costas Phi=[]; phik=0; phik1=0; % Initialisations des différentes Epsilon=[];epsilonk1=0; % variables utilisees deb=1; for k=deb:S yk=smod_es(k); Erreur(k)=abs(-yk^M*exp(-j*M*(phik1+epsilonk1))-sqrt(2)^M)^2; gradient= imag(yk^M*exp(-j*M*(phik1+epsilonk1))); phik=phik1 + epsilonk1 - gamma1*gradient; epsilonk = epsilonk1 - gamma2*gradient; phik1=phik; epsilonk1 = epsilonk; Phi(k)=phik; % Sauvegarde des resultats Epsilon(k)=epsilonk; end;
Sur la figure 5.6, nous donnons lâerreur entre la phase thĂ©orique et la phase identifiĂ©e par cette boucle, pour quelques valeurs des paramĂštres. On remarque alors la disparition du biais dâestimation, mais aussi des oscillations caractĂ©ristiques dâun systĂšme du second ordre lors de la convergence.
Figure 5.6 - Ăcart entre la phase thĂ©orique et la phase estimĂ©e par la boucle de Costas dâordre 2, pour diffĂ©rentes valeurs des paramĂštres.
5.5.3 Récupération de rythme
Il sâagit maintenant de prendre en compte une mĂ©connaissance du rythme. Cette mĂ©connaissance peut ĂȘtre liĂ©e Ă un retard entre les horloges de lâĂ©metteur et du rĂ©cepteur ou au fait que la pĂ©riode symbole utilisĂ©e au niveau du rĂ©cepteur est diffĂ©rente de celle de lâĂ©metteur. Dans les deux cas, ceci se traduit par un mauvais Ă©chantillonnage des signaux reçus, qui ne permet plus de retrouver les symboles de dĂ©part. On introduit alors un retard Ïk Ă la rĂ©ception, de maniĂšre Ă compenser la mĂ©connaissance du rythme. Si Tsâ est la pĂ©riode symbole utilisĂ©e en rĂ©ception, et ât le dĂ©calage entre les horloges, alors il faut que y(kTsâ - Ïk) = ak pour que lâĂ©chantillonnage soit correct, soit Ïk=k(Ts-Tsâ) - ât. En cas dâerreur sur la pĂ©riode symbole, le retard Ïk devra ainsi ĂȘtre une pente linĂ©aire.
On utilise ici lâapproche adaptative prĂ©sentĂ©e en 5.3.1 : on cherche Ă minimiser lâerreur quadratique moyenne J(Ïk)=E[|y(kTsâ - Ïk) - ak|2]. Le gradient instantanĂ© de cette fonction de coĂ»t sâĂ©crit :
( ) ( )( ) ( )
ââ
ââ=â
ââ
â= kskTtkks
k
ks
ttyakTy
kTJ
Ï
ÏÏ
Ï
'
*'Re'
Ce gradient est utilisĂ© pour estimer de maniĂšre itĂ©rative la valeur de Ïk. Dans la
mesure ou lâon peut sâattendre Ă une variation linĂ©aire, on choisit de construire une boucle du second ordre Ă la maniĂšre de la boucle de Costas dâordre 2. Le problĂšme est ici compliquĂ© par le fait que le signal nâest connu quâaux instants dâĂ©chantillonnage, et non en tout instant (kTsâ - Ïk), et quâil faut Ă©galement accĂ©der Ă la dĂ©rivĂ©e du signal. On utilise ici une fonction dâinterpolation quadratique, interp3.m, fournie en annexe Ă ce chapitre, qui rend la valeur interpolĂ©e et le gradient correspondant (on pourrait Ă©galement utiliser une interpolation et un calcul de dĂ©rivĂ©e par diffĂ©rences finies). Dâautre part, la sĂ©quence de symboles ak nâest pas connue nĂ©cessairement, et lâon remplacera alors les ak par la dĂ©cision sur les symboles interpolĂ©s. Muni de ces remarques, on peut implanter un algorithme du second ordre rĂ©pondant Ă la relation symbolique :
( ) ( )( )[ ] ( )
ââ
âââ
â+â=
â=ââ
kskTtkskskk t
tykTydeckTyz Ï
ÏÏγγÏÏ'
*1
211 ''Re
1
Le listing 5.4 fournit lâimplantation Matlab de cette boucle de rĂ©cupĂ©ration de rythme.
LISTING 5.4 - RĂCUPĂRATION DE RYTHME
% Fichier RecupRythme.m % Date : novembre 1999 - mise a jour avril 2001 % Auteur : jfb % Creation du signal % **************************************************************** Deltaf=0.0; Phi0=0; smod=ymodbb_sf.*exp(j*2*pi*Deltaf*[1:Lsf] + j*Phi0); y=smod; %***** Recuperation de rythme ************************************** % Avec decision dans la boucle et derive lineaire % (ie on n'a pas passe le bon temps symbole) % On travaille avec Surech echantillons par periode symbole % ****************************************************************** S=300; % Nombre de symboles Ts=7.2; % Longueur du temps symbole Deltat=0; % Erreur sur la synchro % initialisations des variables tauk1=Deltat/Surech; tauk=0; Tau=[]; Erreur=[]; Y=[]; epsilonk1=0; % Boucle d'asservissement sur le rythme for k=21:S % Boucle sur les symboles % Instant courant = (k-1)*Ts + tauk1 + 1
% qu'on divise en une partie entiere et un reste tps_courant=fix((k-1)*Ts + tauk1 + 1); % partie entiere Dt=(k-1)*Ts + tauk1 + 1 - tps_courant % reste % On interpole ensuite la valeur de y((k-1)*Ts + tauk1 + 1) % et de son gradient [y_inter,y_delta,y_grad]=interp3(y(tps_courant-1:tps_courant+1),Dt); % Calcul des decisions... deck=sign(real(y_delta)) + j*sign(imag(y_delta)); % et de l'erreur et de son gradient erreur=abs(y_delta-deck)^2; grad=real(conj(y_delta-deck)*y_grad); % Mise a jour de tau(k) tauk=tauk1 + epsilonk1 - gamma1*grad; epsilonk = epsilonk1 - gamma2*grad; epsilonk1 = epsilonk; tauk1=tauk; % Sauvegarde des resultats Erreur=[Erreur erreur]; Y=[Y y_delta]; Tau=[Tau tauk]; end;
Les figures 5.7 et 5.8 illustrent le comportement de lâalgorithme dans le cas dâune
erreur sur la pĂ©riode symbole : alors que la pĂ©riode symbole Ă lâĂ©metteur Ă©tait ici de 8 pĂ©riodes dâĂ©chantillonnage (8 Ă©chantillons par pĂ©riode symbole), on a supposĂ© que la pĂ©riode Ă©tait de 7.2 pĂ©riodes dâĂ©chantillonnage. Sans correction, il sâen suit une dĂ©synchronisation complĂšte du rĂ©cepteur. La boucle permet ici de corriger lâerreur en moins de 50 symboles. Sur la figure 5.9, on a donnĂ© les rĂ©sultats obtenus pour un retard entre les deux horloges : on a utilisĂ© ici un dĂ©calage de 3 pĂ©riodes dâĂ©chantillonnage, soit pratiquement la moitiĂ© dâun symbole.
Figure 5.7 - RĂ©cupĂ©ration de rythme pour une erreur sur la pĂ©riode symbole : diffĂ©rence entre lâinstant dâĂ©chantillonnage optimal et lâinstant calculĂ©, au cours des itĂ©rations, pour diffĂ©rentes
valeurs des paramĂštres.
Figure 5.8 - Récupération de rythme pour une erreur sur la période symbole : erreur quadratique entre le signal interpolé et la décision, au cours des itérations, pour différentes valeurs des
paramĂštres.
Figure 5.9 - RĂ©cupĂ©ration de rythme pour un retard dâĂ©chantillonnage : diffĂ©rence entre lâinstant dâĂ©chantillonnage optimal et lâinstant calculĂ©, pour diffĂ©rentes valeurs des paramĂštres.
On a prĂ©sentĂ© dans cette section quelques exemples dâimplantation et des rĂ©sultats de simulation dâalgorithmes de synchronisation. Il sâagit dâune prĂ©sentation forcĂ©ment
parcellaire et incomplĂšte. En effet, les algorithmes ont Ă©tĂ© considĂ©rĂ©s comme des blocs indĂ©pendants du rĂ©cepteur. En rĂ©alitĂ©, dans la conception dâun rĂ©cepteur, on devra faire face Ă la fois Ă des problĂšmes de synchronisation de rythme, de phase, mais Ă©galement aux problĂšmes dâĂ©galisation. Il faudra donc coupler les diffĂ©rents algorithmes dâestimation et de rĂ©cupĂ©ration.
LISTING 5.5 - FONCTION DâINTERPOLATION QUADRATIQUE
function [y_inter,y_delta,y_grad]=interp3(y,delta); % SYNTAX: function [y_inter,y_delta,y_grad]=interp3(y,delta); % % DESCRIPTION: Interpolates between three points using a quadratic model. % Return the interpolated value y_delta, and also the gradient % y_grad at point delta with delta in [-1,1]. % Nota: the "distance" between two points is considered as 1, % and the points are labelled {-1,0,1}. % % Author: jfb - Nov. 1999 L=100; y=y(:); if length(y)~=3 error('input y must be of length 3'); end; yr=real(y); yi=imag(y); %y=ax^2 + bx +c x=[1:4*L]/L - 2; % x=[1:2*L]/L - 1; A=[1 -1 1; 0 0 1; 1 1 1]; % for x={-1 0 1} % y=A*coeffs; coeffsr=inv(A)*yr; % coeffs=[a b c]' coeffsi=inv(A)*yi; % coeffs=[a b c]' yr_inter=coeffsr(1)*x.^2 + coeffsr(2)*x + coeffsr(3); yi_inter=coeffsi(1)*x.^2 + coeffsi(2)*x + coeffsi(3); y_inter=yr_inter+j*yi_inter; yr_delta=yr_inter(2*L+round(L*delta)); yi_delta=yi_inter(2*L+round(L*delta)); y_delta=yr_delta+j*yi_delta; % Gradient: yr_grad = 2*coeffsr(1)*delta + coeffsr(2); yi_grad = 2*coeffsi(1)*delta + coeffsi(2); y_grad = yr_grad + j*yi_grad;
5.6 Conclusion Ce chapitre a présenté quelques notions de base concernant la synchronisation7. Les
Ă©tudes dâalgorithmes efficaces, cruciaux pour le bon fonctionnement dâun systĂšme de
7 Remerciements Ă Pierre-Olivier Amblard et Thierry Lenez pour leurs contributions.
transmission, restent largement ouvertes, en particulier pour des schémas de modulation récents tels que les multiporteuses, les mélanges OFDM/CDMA ou les modulations non linéaires de type CPM.
Références bibliographiques [1] P.O. Amblard, J.M. Brossier. Phase Tracking : what do we gain from optimality ? Particle
filtering vs PLL. Soumis Ă Signal Processing. [2] A. Benveniste, M. MĂ©tivier, P. Priouret. Adaptive algorithms and stochastic
approximations, Springer Verlag, Applications of Mathematics, vol. 22, Berlin, Heidelberg, New York, 1990.
[3] H.J. Kushner, J. Yang. Analysis of Adaptive Step-Size SA Algorithms for Parameter Tracking IEEE transaction on Automatic Control, vol. 40, N°8, August 1995.
[4] Heinrich Meyr, G. Ascheid. Synchronization in Digital communication, Wiley 1989. [5] Heinrich Meyr, Marc Moeneclaey, Stefan A. Fechtel. Digital communication receivers.
Synchronization, channel estimation and signal processing, Wiley 1998. [6] M. Oerder, H. Meyr. Digital Filter and Square Timing Recovery, IEEE transaction on
Communications, vol. 36, n°5, May 1988. [7] Jaune Riba, Gregori Vazquez. Non-Data-Aided Frequency Offset and Symbol Timing
Estimation for Binary CPM : Performance Bounds, ICASSP 2000. [8] P.P. Vaidyanathan. âMultirate Systems and Filteranksâ Prentice Hall 1993.