FR 3022712 A1 20151225 FR 1455719 A 20140620 1 PROCÉDÉ DE DÉMODULATION AUTO-ADAPTATIVE DE SIGNAUX QUASI-ORTHOGONAUX, UNITÉ DE DÉMODULATION ET RÉCEPTEUR DE SIGNAUX RADIO DESCRIPTION DOMAINE TECHNIQUE Le domaine de l'invention est celui des radiocommunications, et plus particulièrement celui de la démodulation de signaux radio modulés selon la technique d'étalement de spectre par séquence directe. ÉTAT DE LA TECHNIQUE ANTÉRIEURE Le standard IEEE 802.15.4, qui définit notamment la couche physique du protocole basse consommation ZigBee destiné à être utilisé dans la bande ISM (« industriel, scientifique, et médical ») à 2450 MHz, repose sur la technique d'étalement de spectre par séquence directe pour transmettre les données, couplée à une modulation numérique de phase type O-QPSK (« Offset Quadrature Phase Shift Keying »). Les informations à transmettre sont initialement sous la forme d'un flot de données binaire (bits). Ces bits sont groupés par 4 ce qui induit 16 combinaisons possibles, soit 16 symboles de données. Chacun de ces symboles est alors étalé sur 32 « chips » (bits de modulation) par une séquence d'étalement de spectre qui lui est propre et permet de différencier le symbole ainsi modulé des autres symboles de données du fait de la quasi-orthogonalité des séquences entre elles. Ces symboles modulés sont transmis à l'émetteur radio après une modulation O-QPSK, les bits de modulation pairs étant sur la voie en phase I et les bits de modulation impairs sur la voie en quadrature Q du modulateur. La constellation des 4 points de modulation QPSK subit une rotation de 45° qui se traduit d'un point de vue temporel par un retard d'une période chip sur la voie en quadrature Q, ce qui permet d'avoir, avec un échantillonnage au débit des bits de modulation, une alternance I/Q des bits de modulation échantillonnés. 3022712 2 Par construction, les séquences de code d'étalement sont considérées quasiment orthogonales entre elles, c'est à dire que la corrélation de deux séquences différentes est quasi-nulle alors que celle de deux séquences identiques est élevée (égale à la somme du produit des bits modulés). Cette propriété permet donc de discerner 5 facilement les séquences de code d'étalement et donc les symboles qui y sont associés. En outre, le standard IEEE 802.15.4 optimise la construction des séquences pour rendre leur génération et leur stockage simples. En effet, les 8 premières séquences parmi les 16 existantes sont construites par rotation de 4 bits de modulation de la séquence précédente. Les 8 dernières séquences sont construites par inversion des bits de modulation impairs 10 des 8 premières. Il y a donc une certaine cohérence entre toutes les séquences d'étalement telles que définis par le standard. La démodulation du signal radio reçu est basée sur la détection non- cohérente des séquences d'étalement de spectre, c'est à dire sans connaître la phase du signal, rendant le traitement moins complexe. Tout d'abord, le signal est synchronisé en 15 temps et en fréquence. La synchronisation temporelle permet d'aligner la fenêtre de détection sur les symboles modulés reçus et de connaître la position optimale des échantillons sur le signal. Pour cela une corrélation glissante durant un préambule contenant 8 fois la séquence 0 permet de détecter via les pics de corrélation l'alignement parfait. À partir de cette information, le récepteur va ensuite échantillonner à raison de 1 20 échantillon par bit de modulation le signal reçu, soit 32 échantillons par symbole modulé reçu. La seconde étape de la synchronisation est l'estimation de l'écart de fréquence entre l'émetteur et le récepteur. Une fois la synchronisation obtenue, le décodage d'un symbole consiste à corréler chaque symbole modulé reçu échantillonné par les 16 séquences existantes, 25 équivalent à 16*32 corrélations niveau bit de modulation. La mesure du maximum de corrélation (élevé au carré pour faire abstraction de la phase du signal modulé complexe) permet ensuite de connaître la séquence de modulation modulant le signal modulé reçu et donc quel symbole a été reçu. L'information est alors remise sous forme binaire comme elle l'était à l'émission. 3022712 3 Classiquement un récepteur radio est conçu pour fonctionner dans les pires conditions de transmission définies par le standard (bruit, atténuation lié aux pertes de propagations, brouilleurs). Or, cette situation n'est que rarement atteinte puisqu'elle représente un cas extrême. Par conséquent, le fonctionnement du récepteur est non- 5 optimal la plupart du temps puisqu'il y a un surplus de calcul et de consommation vis-à-vis des performances imposées par le standard. Concrètement, dans le cas de la démodulation de signaux IEEE 802.15.4, ce problème peut être observé sur les niveaux de corrélation obtenus. En effet, la détection sans erreur est conditionnée par la distance séparant les deux maximums de corrélation parmi les 16 valeurs obtenues en testant chaque séquence. 10 Si un aléa tel que du bruit très fort comparé à l'orthogonalité entre les séquences apparaît, une erreur de détection peut se produire. Il est donc nécessaire de garantir un certain degré d'orthogonalité des séquences pour que dans la pire situation la distance entre les deux maximums soit suffisante afin de correctement discerner les séquences. Cependant, si cette marge de fonctionnement est optimale dans le cas où la 15 qualité du signal est très mauvaise en ce sens qu'elle assure alors une démodulation sans erreur, elle est surévaluée la majeure partie du temps en raison de la variabilité de la qualité du signal. On a représenté sur la figure 1 les pics de corrélation observés pour chacune des 16 séquences de code d'étalement S0-515. Le maximum de corrélation est 20 observé pour la séquence S2, et le second pic, immédiatement inférieur au maximum de corrélation, est observé pour la séquence S14. Pour chacun des pics, une zone en noir représente la variation du niveau de corrélation en fonction du bruit. La marge de fonctionnement Mf correspond à la distance entre les deux maximums. Elle garantit une discrimination des deux pics immune aux aléas, à un taux d'erreur près. 25 On comprend de ce qui précède que le point de fonctionnement performance/consommation de la démodulation est figé pour assurer un fonctionnement correct dans le pire cas, ce qui engendre un surplus de calcul et de consommation par rapport aux performances requises et aux conditions effectives (qualité du signal reçu). 3022712 4 EXPOSÉ DE L'INVENTION L'invention vise à proposer une technique permettant d'adapter le point de fonctionnement performance/consommation de la démodulation pour minimiser les calculs et donc la consommation tout en garantissant globalement les mêmes 5 performances en termes de taux d'erreur que la solution optimale mentionnée précédemment. A cet effet, l'invention propose un procédé de décodage d'un symbole de données porté par un signal reçu par un récepteur d'un système de communication, le symbole de données étant modulé par une séquence de code d'étalement choisie parmi 10 une pluralité de séquences de code d'étalement quasi-orthogonales entre elles pour différencier le symbole d'autres symboles de données, et reçu sous la forme d'un ensemble de bits de modulation, le procédé comprenant une étape de corrélation du symbole de données modulé reçu avec chacune de la pluralité de séquence de code d'étalement, et étant caractérisé en ce que l'étape de corrélation est précédée d'une étape de sous- 15 échantillonnage du symbole de données modulé reçu pour y masquer un ou plusieurs des bits de modulation, de telle manière que l'étape de corrélation du symbole de données reçu sous-échantillonné n'est réalisée que pour les bits de modulation non masqués. Certains aspects préférés mais non limitatifs de procédé sont les suivants : 20 il comprend en outre, suite à l'étape de corrélation, les étapes de : o recherche du maximum de corrélation pour identifier celle de la pluralité de séquence de code d'étalement qui module le symbole de données modulé reçu ; et de o décodage du symbole de données modulé reçu à partir de la séquence de 25 code d'étalement identifiée ; il comprend en outre le calcul de l'écart entre les deux plus grandes valeurs de corrélation obtenues à l'issue de l'étape de corrélation, et la modification ou non, en fonction dudit écart ou d'une valeur calculée à partir dudit écart, du nombre de bits de modulations masqués lors de l'étape de sous-échantillonnage ; 3022712 5 - la modification du nombre de bits masqués lors de l'étape de sous-échantillonnage comprend la sélection d'un masque de sous-échantillonnage parmi une pluralité de masques de sous-échantillonnage. L'invention s'étend à une unité de démodulation configurée pour la mise en oeuvre 5 de ce procédé, ainsi qu'à un récepteur intégrant une telle unité. BRÈVE DESCRIPTION DES DESSINS D'autres aspects, buts, avantages et caractéristiques de l'invention apparaîtront mieux à la lecture de la description détaillée suivante de formes de réalisation préférées de celle-ci, donnée à titre d'exemple non limitatif, et faite en référence aux 10 dessins annexés sur lesquels : la figure 1, déjà discutée précédemment, est un exemple schématique représentant les pics de corrélation observés pour chacune des 16 séquences de code d'étalement S0-S15 dans le cadre d'un fonctionnement classique ; la figure 2 est un exemple schématique représentant les pics de corrélation 15 observés pour chacune des 16 séquences de code d'étalement S0-S15 dans le cadre du fonctionnement dégradé selon l'invention ; la figure 3 est un organigramme illustrant les différentes étapes d'un procédé de décodage selon un mode de réalisation possible de l'invention ; les figures 4 et 5 sont des schémas d'unités de démodulation selon deux modes 20 de réalisation possible de l'invention ; la figure 6 illustre le principe de l'invention d'adaptation aux conditions réelles du point de fonctionnement performance/consommation. EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS 25 L'invention concerne un procédé de décodage d'un symbole de données porté par un signal reçu par un récepteur d'un système de communication. L'invention s'étend également à une unité de démodulation d'un récepteur pour système de communication configurée pour permettre la mise en oeuvre de ce procédé de décodage. 3022712 6 Dans le cadre de l'invention, le symbole de données reçu par le récepteur est modulé par une séquence de code d'étalement choisie parmi une pluralité de séquences de code d'étalement quasi-orthogonales entre elles pour différencier le symbole d'autres symboles de données. Il est reçu sous la forme d'un ensemble de bits de 5 modulation. L'invention s'applique en particulier, mais non exclusivement, à un étalement de spectre par séquence directe (DSSS : « Direct Sequence Spread Spectrum »), répondant au standard IEE 802.15.4Tm-2011. En particulier, l'invention n'est pas limitée à la modulation 0-QPSK préconisée par ce standard, son principe restant valable quel que 10 soit le type de transmission dès lors qu'une orthogonalité entre les séquences d'étalement permet de les différencier par corrélation. La description suivante repose sur ce standard. Mais l'invention n'est bien entendu pas limitée à cette implémentation particulière. Ainsi on prend uniquement à titre d'exemple illustratif dans ce qui suit une modulation côté émetteur qui utilise 16 15 séquences de code d'étalement différentes pour différencier 16 symboles correspondant chacun à 4 bits de données. Chacun de ces symboles est étalé sur 32 bits de modulation par une séquence d'étalement de spectre qui lui est propre pour former un symbole modulé qui est alors transmis sur le canal de communication de l'émetteur vers le récepteur. 20 Côté récepteur, et au sein d'une unité de démodulation, le symbole modulé reçu est soumis à une opération de corrélation avec chacune des 16 séquences de code d'étalement. Dans la mesure où une séquence de code d'étalement prend typiquement la forme d'une séquence pseudo-aléatoire de 1 et de -1, l'opération de corrélation fournissant un maximum permet d'identifier la séquence de code d'étalement 25 modulant le symbole codé reçu. En effet, dans la mesure où 1 x 1 = 1 et -1 x -1 = 1, la somme de la multiplication de chacun des bits de modulation du symbole modulé reçu avec les bits de modulation correspondant d'une séquence de code d'étalement fournit un maximum (égal à 32 avant élévation au carré) lorsqu'il s'agit de la séquence modulant le symbole. A contrario, lorsque l'on corrèle deux séquences différentes, la somme des +1 et de -1 se compense quasiment. 3022712 7 Dans le cadre de l'invention, le procédé de décodage comprend une étape, mise en oeuvre avant la corrélation du symbole de données modulé reçu avec chacune de la pluralité de séquence de code d'étalement, de sous-échantillonnage du symbole de données modulé reçu pour y masquer un ou plusieurs des bits de modulation, 5 de telle manière que l'étape de corrélation n'est réalisée que pour les bits de modulation non masqués du symbole de données reçu sous-échantillonné. L'invention propose ainsi de réduire dans la corrélation des symboles modulés reçus le nombre de bits de modulation pris en compte. Cette réduction prend la forme d'un sous-échantillonnage conduisant au total à moins de 1 échantillon par bit de 10 modulation. Il est alors possible d'effectuer un nombre variable de corrélations niveau bit de modulation pour décoder un symbole, allant de 1 à 32. L'impact de ce mécanisme de masquage de certains bits de modulation pour les exclure de l'opération de corrélation est une diminution de l'orthogonalité entre les séquences de code d'étalement, ce qui diminue intrinsèquement la marge de 15 fonctionnement. En effet, d'une part le maximum de corrélation sera plus faible en raison d'une séquence plus courte (norme du signal plus petite) et d'autre part la quasi-orthogonalité des séquences sera moins nette, rendant la corrélation de deux séquences différentes largement non-nulle. En contrepartie de cette dégradation du fonctionnement optimal, un nombre réduit d'opérations est réalisé, ce qui permet de diminuer la 20 consommation. Par ailleurs, comme cela sera détaillé ci-après, cette dégradation peut être réalisée tout en maîtrisant le niveau de performance de manière à respecter un taux d'erreur imposé. On a ainsi représenté sur la figure 2 les pics de corrélation observés dans le cadre de l'invention pour chacune des 16 séquences de code d'étalement S0-515. Le 25 maximum de corrélation est observé pour la séquence S2, et le second pic, immédiatement inférieur au maximum de corrélation, est observé pour la séquence S14. On constate une marge de fonctionnement Mf' entre les deux maximums réduite par rapport à la marge Mf de la figure 1. Pour quantifier le sous-échantillonnage, on définit un taux correspondant 30 au rapport entre le nombre de bits de modulation effectivement utilisés et le nombre total 3022712 8 de bits de modulation dans une séquence, soit 32 dans l'exemple ici retenu. Un sous-échantillonnage à un taux de 50 %, par exemple, équivaut à dire que seulement la moitié des bits de modulation reçus est prise en compte lors de la corrélation. En outre, la position des bits de modulation masqués peut être choisie de 5 manière aléatoire afin d'être le moins cohérent possible avec la structure des séquences d'étalement définies par le standard. Cela évite notamment de confondre deux codes complémentaires qui sont uniquement différents du fait de leurs bits de modulation impairs. En effet, un taux de sous-échantillonnage de seulement 50 % pourrait rompre complétement l'orthogonalité de ces séquences d'étalement deux à deux si les bits de 10 modulation impairs étaient masqués. Le procédé selon l'invention comprend en outre suite à l'étape de corrélation, les étapes de recherche du maximum de corrélation pour identifier celle de la pluralité de séquence de code d'étalement qui module le symbole de données modulé reçu, et de décodage du symbole de données modulé reçu à partir la séquence de code 15 d'étalement identifiée. Dans un mode de réalisation, on vient ajuster dynamiquement la marge de fonctionnement Mf' afin de minimiser les calculs et donc la consommation tout en garantissant les mêmes performances en termes de taux d'erreur. Pour ce faire, le procédé comprend, à l'issue de l'étape de corrélation, le calcul de l'écart entre les deux plus grandes 20 valeurs de corrélation, et la modification ou non, en fonction dudit écart ou d'une valeur calculée à partir dudit écart, du nombre de bits de modulations masqués lors de l'étape de sous-échantillonnage qui sera appliquée au symbole modulé reçu suivant dans le flot de données reçu par le récepteur. L'écart entre les deux plus grandes valeurs de corrélation fournit la marge 25 de fonctionnement Mf'. L'intérêt de cette mesure est multiple car elle permet d'être sensible à différents paramètres qui peuvent influer sur la différence entre les deux maximums. Cette mesure englobe en effet le niveau de bruit, la qualité de la synchronisation temporelle, la qualité de la synchronisation fréquentielle, l'orthogonalité entre les séquences et l'intensité du signal reçu (équivalente à l'amplitude des 30 échantillons). 3022712 9 La modification du nombre de bits de modulation masqués peut être basée sur la valeur instantanée de la marge de fonctionnement Mf' ou encore sur une moyenne de la marge de fonctionnement correspondant à la démodulation de plusieurs symboles modulés successivement reçus. La décision de modification peut reposer sur un 5 tableau de configurations préétablies ou encore reposer sur un traitement algorithmique. La modification du nombre de bits de modulation masqués lors de l'étape de sous-échantillonnage peut être une augmentation du nombre de bits masqués lorsque ledit écart ou la valeur calculée à partir dudit écart est supérieur à un seuil et une réduction du nombre de bits masqués lorsque ledit écart ou la valeur calculée à partir dudit écart est 10 inférieur à un seuil. En particulier, en fonction de la marge mesurée, une décision est prise pour dégrader les performances de la démodulation, c'est-à-dire pour augmenter le nombre de bits masqués, jusqu'à une limite de fonctionnement nominal, c'est-à-dire un taux d'erreur imposé. La figure 3 illustre de manière schématique les différentes étapes du 15 procédé selon l'invention dans son mode de réalisation avec boucle de reconfiguration utilisant la mesure de la marge de fonctionnement Mf'. On retrouve ainsi l'étape de corrélation « CORR » et l'étape de recherche du maximum de corrélation « MAX » permettant de décoder le symbole modulé reçu. Le résultat de l'étape de corrélation « CORR » est également utilisé lors de l'étape de calcul « MAX-MAX' » de l'écart entre les 20 deux plus grandes valeurs de corrélation. Une décision de reconfiguration « DEC » est prise en fonction du résultat du calcul « MAX-MAX' », et vient commander la réalisation de l'étape de sous-échantillonnage « SUB-SPL » d'un symbole modulé reçu avant la corrélation « CORR ». On a représenté sur les figures 4 et 5 deux exemples de réalisation d'une 25 unité de démodulation destinée à être intégrée dans un récepteur de signaux de radio et configurée pour mettre en oeuvre le procédé précédemment décrit. Sur ces figures, les différents modules de cette unité portent les références des différences étapes de la figure 3 qu'ils mettent en oeuvre. L'unité de démodulation 1 de la figure 4 exploite un corrélateur de code 30 de taille fixe 2, et un sous-échantillonnage des bits de modulation d'un symbole modulé 3022712 10 reçu intégré au corrélateur de code 2. Le corrélateur de code 2 reçoit les échantillons du signal radio EE et stocke dans un registre de taille fixe 3 les 32 échantillons du signal radio correspondant aux 32 bits de modulation d'un symbole modulé reçu. Le corrélateur de code 2 présente 32 canaux de traitement en parallèle, chaque canal comprenant un étage 5 de masquage MSQ d'un bit de modulation suivie d'un étage de corrélation CORR avec un bit correspondant de chacune des séquences de code d'étalement. L'étage de masquage MSQ comprend une porte logique ET 4 ayant deux entrées : une première entrée reliée à une case mémoire du registre 3 et sur laquelle on retrouve un bit de modulation du symbole modulé reçu, et une deuxième entrée reliée à 10 la sortie d'un multiplexeur 5, dit de masquage, et sur laquelle on retrouve un niveau logique 0 ou 1 selon que le bit de modulation doit être masqué ou non. Le multiplexeur de masquage 5 dispose de plusieurs entrées M0-M3 correspondant à différents masques de sous-échantillonnage décrivant quels bits de modulation sont à masquer et ainsi écarter de la corrélation. Ainsi la seconde entrée de la porte ET 4 est reliée, via le multiplexeur 5, à 15 des cases mémoires de registres stockant les masques de sous-échantillonnage. Le multiplexeur 5 est commandé par un module de sélection du sous-échantillonnage SUBSPL indiquant celui des masques qui doit être utilisé. La sortie de la porte ET 4 est reliée à l'étage de corrélation CORR. Un niveau logique 0 constant sur cette sortie vient inhiber la corrélation du bit de modulation correspondant. 20 L'étage de masquage MSQ forme ainsi avec le module de sélection du sous-échantillonnage SUB-SPL un étage de sous-échantillonnage en amont de l'étage de corrélation CORR, le registre de taille fixe 3 étant agencé en amont de cet étage de sous-échantillonnage. L'étage de corrélation CORR comprend un multiplicateur 6 ayant pour 25 entrées d'une part la sortie de la porte ET 4 et d'autre part la sortie d'un multiplexeur 7 dit de corrélation ayant pour entrées un bit de modulation de chacune des séquences de code d'étalement R0-R15. Le multiplexeur de corrélation 7 est commandé par un module SLCT configuré pour balayer successivement, et en parallèle sur les différents canaux, les 16 séquences M0-M16. 3022712 11 Ainsi, lors de l'étape de corrélation du symbole de données reçu sous-échantillonné, la corrélation avec l'une de la pluralité de séquences de code d'étalement consiste à ne réaliser une multiplication d'un bit de modulation du symbole de données reçu sous-échantillonné avec un bit de modulation correspondant de la séquence de code 5 d'étalement que pour les bits de modulation non masqués. Ne sont ainsi utilisés que les multiplicateurs associés aux bits non masqués, ce qui diminue le nombre de calculs (réduction correspondant au nombre de bits masqués fois le nombre de séquences de code d'étalement) et donc la consommation. La sortie de chacun des 32 multiplicateurs 8 est fournie à un additionneur 10 1. La sortie de l'additionneur est délivrée à un module MAX chargé de rechercher le maximum de corrélation parmi les 16 séquences balayées. Lorsque le signal est complexe, comme c'est le cas avec la modulation 0-QPSK préconisée par le standard IEEE 802.15.4, le carré de la somme est pris en considération pour cette recherche. Un fois ce maximum identifié, un module S réalise le décodage du symbole modulé reçu. La sortie de 15 l'additionneur est également fournie à un module MAX-MAX' chargé de calculer la marge de fonctionnement. La marge de fonctionnement ainsi calculée alimente un module DEC chargé de prendre une éventuelle décision de reconfiguration, laquelle décision est ensuite transmise au module de sélection du sous-échantillonnage SUB-SPL. Les différents masques de sous-échantillonnage M0-M3 présentent de 20 préférence différents taux d'échantillonnage, par exemple 100%, 75%, 50% et 25%, ce qui permet une reconfiguration de l'unité de démodulation selon différents points de fonctionnement possibles. Lors de la définition de ces masques, les bits de modulation devant être masqués sont de préférence choisis de manière aléatoire comme indiqué précédemment. 25 L'unité de démodulation 10 de la figure 5 exploite quant à elle un corrélateur de code de taille variable 20, et un sous-échantillonnage des bits de modulation d'un symbole modulé réalisé à l'extérieur du corrélateur de code par un échantillonneur SPL. L'échantillonneur SPL reçoit les échantillons du signal radio EE et les sous-échantillonne sous commande d'un module de sélection du sous-échantillonnage SUB-SPL 30 conforme à celui de la figure 4. L'échantillonneur SPL peut être propre à l'unité de 3022712 12 démodulation 10. Il peut également être placé au niveau de la conversion analogique-numérique de la chaîne de réception du récepteur. L'échantillonneur SPL et le module de sélection du sous-échantillonnage SUB-SPL forment l'étage de sous-échantillonnage, ici non intégré au corrélateur de code. 5 Dans cette réalisation les bits de modulation masqués sont éliminés dès l'échantillonnage, à la volée. Le masque de sous-échantillonnage sélectionné est lu progressivement en même temps que les échantillons du signal radio EE afin de savoir s'il faut ou non échantillonner les bits de modulation du symbole modulé reçu. Les séquences de code d'étalement R0-R15 sont par ailleurs sous-échantillonnées de la même manière. 10 Les bits de modulation non masqués SEE sont fournies au corrélateur de code de taille variable 20 qui les stocke dans un registre de taille variable 30. Le corrélateur de code 20 ne comporte ici qu'un étage de corrélation CORR ayant un nombre variable de canaux en parallèle et réalisant la corrélation des bits de modulation sous-échantillonnés avec chacune des 16 séquences de code d'étalement sous-échantillonnées. Dans ce mode 15 de réalisation, le registre de taille variable est intercalé entre l'étage de sous- échantillonnage SUB-SPL, SPL et l'étage de corrélation CORR. Les autres éléments de l'unité de démodulation de la figure 5 sont identiques à ceux de la figure 4 et ne sont pas décrits plus en avant. On a représenté sur la figure 6 le taux d'erreur binaire BER en fonction du 20 ratio signal à bruit SNR pour le cas d'un fonctionnement non dégradé (courbe N) et dans le cas d'un fonctionnement dégradé conforme à l'invention (courbe D). On comprend aisément que pour respecter un taux d'erreur B lorsque le ratio signal à bruit est égal à A, il est préférable, à performance constante, de privilégier le fonctionnement dégradé qui s'accompagne d'une réduction de consommation plutôt que le fonctionnement non 25 dégradé. L'invention trouve ainsi avantageusement application dans les réseaux de capteurs sans fil, et d'une manière plus générale dans l'Internet des objets où la question de la consommation apparaît primordiale. L'invention n'est pas limitée au procédé tel que précédemment décrit, mais s'étend également à une unité de démodulation configurée pour mettre en oeuvre ce 30 procédé, et en particulier à une unité de démodulation d'un symbole de données reçu par 3022712 13 un récepteur d'un système de communication, le symbole de données étant modulé par une séquence de code d'étalement choisie parmi une pluralité de séquences de code d'étalement quasi-orthogonales entre elles pour différencier le symbole d'autres symboles de données, et reçu sous la forme d'un ensemble de bits de modulation, l'unité 5 comprenant une étage de corrélation du symbole de données modulé reçu avec chacune de la pluralité de séquence de code d'étalement, et étant caractérisée en ce qu'elle comporte en amont de l'étage de corrélation un étage de sous-échantillonnage du symbole de données modulé reçu configurée pour masquer un ou plusieurs des bits de modulation, de telle manière que la corrélation du symbole de données reçu sous-échantillonné n'est 10 réalisée que pour les bits de modulation non masqués. L'unité de démodulation peut comprendre un registre de taille fixe en amont de l'étage de sous-échantillonnage pour l'enregistrement des bits de modulation du symbole modulé reçu. Alternativement, elle peut comprendre un registre de taille variable intercalé entre l'étage de sous-échantillonnage et l'étage de corrélation pour 15 l'enregistrement des bits de modulation non masqués du symbole modulé reçu. L'invention s'étend également à un récepteur pour système de communication comprenant une telle unité de démodulation. 20 REVENDICATIONS1. Procédé de décodage d'un symbole de données porté par un signal reçu par un récepteur d'un système de communication, le symbole de données étant modulé par une séquence de code d'étalement choisie parmi une pluralité de séquences de code d'étalement (R0-R15) quasi-orthogonales entre elles pour différencier le symbole d'autres symboles de données, et reçu sous la forme d'un ensemble de bits de modulation, le procédé comprenant une étape de corrélation (CORR) du symbole de données modulé reçu avec chacune de la pluralité de séquence de code d'étalement (R0-R15), et étant caractérisé en ce que l'étape de corrélation est précédée d'une étape de sous-échantillonnage (SUB-SPL, MSQ; SUB-SPL, SPL) du symbole de données modulé reçu pour y masquer un ou plusieurs des bits de modulation, de telle manière que l'étape de corrélation du symbole de données reçu sous-échantillonné n'est réalisée que pour les bits de modulation non masqués. 2. Procédé selon la revendication 1, comprenant en outre, suite à l'étape de corrélation, les étapes de : - recherche du maximum de corrélation (MAX) pour identifier celle de la pluralité de séquence de code d'étalement qui module le symbole de données modulé reçu ; et de - décodage du symbole de données modulé reçu à partir de la séquence de code d'étalement identifiée. 3. Procédé selon la revendication 2, comprenant en outre le calcul (MAX-MAX') de l'écart entre les deux plus grandes valeurs de corrélation obtenues à l'issue de l'étape de corrélation, et la modification ou non (DEC), en fonction dudit écart ou d'une valeur calculée à partir dudit écart, du nombre de bits de modulations masqués lors de l'étape de sous-échantillonnage. 3022712 15 4. Procédé selon la revendication 3, dans lequel la modification du nombre de bits de modulation masqués lors de l'étape de sous-échantillonnage est une augmentation du nombre de bits masqués lorsque ledit écart ou la valeur calculée à partir dudit écart est supérieur à un seuil et une réduction du nombre de bits masqués lorsque ledit écart ou la 5 valeur calculée à partir dudit écart est inférieur à un seuil. 5. Procédé selon la revendication 3, dans lequel la modification du nombre de bits masqués lors de l'étape de sous-échantillonnage comprend la sélection d'un masque de sous-échantillonnage parmi une pluralité de masques de sous-échantillonnage (M0-M3). 10 6. Procédé selon l'une des revendications 1 à 5, dans lequel lors de l'étape de corrélation du symbole de données reçu sous-échantillonné, la corrélation avec l'une de la pluralité de séquences de code d'étalement consiste à ne réaliser une multiplication d'un bit de modulation du symbole de données reçu sous-échantillonné avec un bit de 15 modulation correspondant de la séquence de code d'étalement que pour les bits de modulation non masqués. 7. Procédé selon l'une des revendications 1 à 6, dans lequel les bits de modulation du symbole modulé reçu sont enregistrés dans un registre de taille fixe (3) avant l'étape de 20 sous-échantillonnage (SUB-SPL). 8. Procédé selon l'une des revendications 1 à 6, dans lequel les bits de modulation non masqués du symbole modulé reçu sont enregistrés dans un registre de taille variable (30) après l'étape de sous-échantillonnage (SUB-SPL). 25 9. Unité de démodulation (1, 10) d'un symbole de données reçu par un récepteur d'un système de communication, le symbole de données étant modulé par une séquence de code d'étalement choisie parmi une pluralité de séquences de code d'étalement (R0-R15) quasi-orthogonales entre elles pour différencier le symbole d'autres symboles de données, et reçu sous la forme d'un ensemble de bits de modulation, l'unité comprenant une étage de corrélation (CORR) du symbole de données modulé reçu avec chacune de la pluralité de séquence de code d'étalement (R0-R15), et étant 3022712 16 caractérisée en ce qu'elle comporte en amont de l'étage de corrélation un étage de sous-échantillonnage (SUB-SPL, MSQ ; SUB-SPL, SPL) du symbole de données modulé reçu configurée pour masquer un ou plusieurs des bits de modulation, de telle manière que la corrélation du symbole de données reçu sous-échantillonné n'est réalisée que pour les bits 5 de modulation non masqués. 10. Unité de démodulation selon la revendication 9, comprenant un registre de taille fixe (3) en amont de l'étage de sous-échantillonnage (SUB-SPL, MSQ) pour l'enregistrement des bits de modulation du symbole modulé reçu. 11. Unité de démodulation selon la revendication 9, comprenant un registre de taille variable (30) intercalé entre l'étage de sous-échantillonnage (SUB-SPL, SPL) et l'étage de corrélation (CORR) pour l'enregistrement des bits de modulation non masqués du symbole modulé reçu. 12. Récepteur pour système de communication comprenant une unité de démodulation (1, 10) selon l'une des revendications 9 à 11. 10 15