• Aucun résultat trouvé

Optimisation du coût énergétique de la synchronisation selon le modèle

La démarche que nous adoptons afin d’optimiser le coût énergétique de la synchronisa-tion selon le modèle maître-esclave est la suivante. Nous constatons dans un premier temps que la synchronisation des nœuds esclaves sur l’horloge du nœud maître comporte deux étapes : la transmission du préambule qui a pour but d’informer les nœuds esclaves du temps restant avant que les données de synchronisation ne soient transmises et la réception des donnés de synchronisation qui permet d’associer à cet instant une valeur commune à l’ensemble des nœuds esclaves.

Fonction et optimisation du préambule Dans sa forme la plus simple, nous consta-tons en particulier qu’en plus de signaler la transmission des données, le préambule contient une information implicite sur le temps restant avant envoi de la date. Lorsqu’un nœud es-clave identifie le préambule, il apprend en effet que la date va être transmise dans les Tpreambule unités de temps à venir. En somme, le rôle formalisé du préambule est de ren-seigner le nœud esclave du décalage existant entre son horloge et celle du nœud maître.

Optimalement, lorsqu’un nœud esclave se réveille afin de synchroniser son horloge, il ne reçoit que l’information nécessaire et suffisante pour déduire la valeur du décalage. Soit un décalage maximum Dmax et un pas de quantification psync, le temps passé à recevoir cette information correspond à la durée nécessaire pour recevoir un mot de I bits, I étant donné par la formule :

I = dlog2(2Dmax psync

)e (4.1)

Ici, I représente donc le nombre de bits d’information utiles à la synchronisation des nœuds esclaves. Ainsi, optimiser le coût énergétique de la synchronisation selon le modèle maître

esclave est équivalent à assurer que tout fragment de taille I bits contienne l’information de la durée résiduelle de préambule.

Fonction et optimisation de la date courante La date courante a pour objectif d’associer une date de référence à l’instant de fin de transmission de la trame de synchro-nisation. Elle permet ainsi à un nœud esclave sans référence préalable d’en obtenir une. Dans l’hypothèse qu’un nœud a déjà obtenu cette référence, la réception de l’information de synchronisation est donc optionnelle. Elle peut en effet être déduite de la date antérieure connue et de la période de resynchronisation.

4.6.1 Construction du préambule de synchronisation optimal

L’équation 4.1 garantit un coût énergétique optimal du modèle si et seulement tout fragment de taille I bits du préambule permet de déduire le temps restant avant la fin du préambule. Nous constatons que cet énoncé admet un corollaire : le coût énergétique du modèle est optimal si et seulement si tout fragment de taille I bits du préambule apparaît de manière unique dans le préambule et que cette propriété est caractéristique des séquences à longueur maximale générées par un registre à décalage linéaire de taille m = I. Une telle séquence, on parle de m-sequence, possède en effet les caractéristiques suivantes : la séquence est périodique de période 2m− 1 et toute sous-séquence de taille m n’apparaît qu’une unique fois dans une période.

Nous proposons donc de construire le préambule de synchronisation sur la base d’une telle séquence. Nous rappelons pour cela la contrainte à laquelle est soumis le préambule : celui-ci doit couvrir un intervalle de 2Dmax unités de temps, et le critère d’optimalité : chaque mot de I bits doit être unique dans la séquence.

En premier lieu, nous déterminons la taille de la m-sequence à utiliser. Soit M la taille de l’alphabet de la modulation utilisée, la contrainte de couverture des 2Dmax unités de temps implique l’inéquation suivante :

d 2 m− 1 log2(M )eTs ≥ 2Dmax d 2 m− 1 log2(M )e ≥ 2Dmax Ts

où Ts est le temps symbole du circuit radio considéré.

En choisissant comme pas de quantification en temps la durée d’un symbole radio, i.e. psync = Ts on doit vérifier qu’il est possible de coder l’ensemble des décalages en temps sachant une taille de séquence m :

m ≥ I

m ≥ dlog2(2Dmax Ts

)e

Conformément au Chapitre 2, si l’on considère des modulations pour lesquelles l’alpha-bet M est de taille 2 (BPSK) ou 4 (QPSK et GFSK), on obtient les équations suivantes.

Pour M = 2 : 2m− 1 ≥ 2Dmax Ts m ≥ dlog2(2Dmax Ts + 1)e

et on pose : m2 = dlog2(2Dmax Ts + 1)e (4.2) Pour M = 4 : d2m−11 2e ≥ 2Dmax Ts 2m−12Dmax Ts m ≥ dlog2(2Dmax Ts )e + 1 et on pose : m4 = dlog2(2Dmax Ts )e + 1 (4.3)

Les valeurs m2et m4 permettent ainsi la construction d’une séquence à longueur maxi-male couvrant l’intervalle des décalages. On constate par ailleurs les propriétés remar-quables suivantes :

I  m2  I + 1 (4.4)

m4 = I + 1 (4.5)

Ces propriétés démontrent la quasi-optimalité d’un préambule basé sur des séquences à longueur maximales telles que définies. En effet, un nœud esclave peut se contenter de recevoir respectivementm2 et m4 bits de la séquence pour déduire le décalage d’horloge ce qui est la valeur optimale à un bit près.

4.6.2 Construction de la date optimale

Afin d’optimiser la consommation énergétique, nous proposons que la réception de la date soit optionnelle pour les nœuds ayant déjà une référence de temps à jour (et ajustée par la réception du préambule). De fait, tout nœud esclave ayant déjà été synchronisé se contentera de la réception d’un fragment du préambule.

4.6.3 Implémentation du modèle quasi-optimal

Nous venons de présenter la composition d’un préambule permettant une synchro-nisation des nœuds esclaves après l’écoute d’un nombre de bits m. Nous présentons ici l’algorithme permettant de calculer la valeur du décalage à partir de la réception de ces m bits.

L’algorithme de calcul du décalage se base sur l’identification de la position du fragment reçu dans le préambule. À cette fin, les nœuds esclaves calculent la corrélation croisée du fragment reçu Srec à la sortie de la chaîne de réception (après démodulation et demapping) avec la séquence de référence supposée connue Sref. La corrélation croisée de ces séquences

binaires admet l’expression suivante1 :

Γ(⌧ ) =

argmin(|Srec|,|Sref|−⌧ )

X

i=0

(−1)(Srec(i)+Sref(i+⌧ )) (4.7)

En l’absence d’erreur sur le signal reçu, le signal corrélé Γ admet un maximum pour : ⌧ = d2

m− 1 2 e + D

En présence d’un décalage2, on déduit la valeur de D en temps bits par la formule :

D = ⌧ − d2

m− 1

2 e (4.8)

4.6.4 Adaptation du modèle en présence de bruit et d’interférence

Nous avons considéré jusqu’à maintenant une réception sans erreur des fragments de préambule. En présence de bruit et d’interférence, le fragment que reçoit un nœud esclave peut être erroné et mener à une erreur sur l’estimation du décalage.

Afin de pallier à l’apparition de ces erreurs, nous proposons d’étendre la période d’écoute du nœud esclave de façon à augmenter la taille du fragment reçu. Cette solution a l’avan-tage par rapport aux méthodes classiques de codage de ne pas nécessiter un codage par l’émetteur du signal. Par ailleurs, chaque nœud esclave peut adapter la taille du fragment reçu en fonction de son évaluation du lien et du canal.

La Figure 4.9 illustre les performances du modèle de synchronisation proposé en pré-sence de bruit. Pour cet exemple, nous avons considéré une resynchronisation journalière avec une précision au temps symbole près. La dérive des nœuds esclaves est définie arbi-trairement à 20 ppm. On constate que pour une large plage de taux d’erreur binaire (Bit Error Rate ou BER) , une réception d’une cinquantaine de bits suffit pour garantir des taux de succès de synchronisation supérieurs à 99,9%.

4.7 Généralisation du modèle maître-esclabe au réseau