Brevet FR2843504A1 — publié le 20040213

PROCEDE ET SYSTEME POUR LA DETERMINATION AVEUGLE DE CARACTERISTIQUES DE SYSTEME A SAUTS DE FREQUENCE ET POUR LA SYNCHRONISATION AVEC CELUI-CI La présente invention concerne le domaine des systèmes de communication sans fil et, plus spécifiquement, l'obtention d'une synchronisation de fréquence avec un système de communication sans fil en 5 déterminant en aveugle ses caractéristiques de saut de fréquence. Les communications sans fil ont commencé à créer un ensemble toujours croissant d'utilisations et d'utilisateurs. Les communications sans fil d'abord 10 utilisées pour la communication bidirectionnelle en radiotéléphonie et en téléphonie cellulaire (téléphones cellulaires) comprennent maintenant des services tels que la transmission de texte bidirectionnelle et même l'accès à Internet. Cependant, la bande passante 15 disponible pour la communication sans fil n'augmente pas aussi rapidement que le nombre d'utilisateurs ou de services. Un protocole populaire pour la communication sans fil, appelé BLUETOOTH, utilise une séquence agile en 20 fréquence ou de sauts de fréquence à étalement de spectre AMRT pour répartir la bande passante disponible entre une pluralité d'utilisateurs. Le saut de fréquence et le multiplexage par répartition dans le temps sont bien connus dans l'art. La technologie 25 BLUETOOTH fonctionne sur 79 canaux ou fréquences à 1 MHz qui changent ou alternent de manière aléatoire à une fréquence de 1600 sauts par seconde. Dans chaque canal, des tranches de répartition dans le temps sont également attribuées à des utilisateurs actifs et contiennent une partie du message de l'utilisateur actif. La séquence agile en fréquence ou de sauts de 5 fréquence du protocole ou de la spécification BLUETOOTH est basée sur un nombre pseudo- aléatoire (PRN) qui est généré conformément à la valeur d'une horloge système de noeud maître. La longueur de la séquence pseudoaléatoire est telle que la séquence de nombres 10 aléatoires a une période de répétition de l'ordre d'un jour entier. Ainsi, un utilisateur souhaitant obtenir un accès au réseau doit connaître les paramètres utilisés pour générer la séquence de sauts de fréquence afin d'obtenir une synchronisation avec le noeud maître. 15 Ces paramètres sont fournis dans un message particulier provenant du noeud maître qui est transmis lorsque la connexion est établie. Dans le cas du protocole BLUETOOTH, ces paramètres comprennent la partie d'adresse supérieure de 8 bits (UAP), la partie 20 d'adresse inférieure de 24 bits (LAP) du maître et les 27 bits les plus significatifs (MSB) de sa valeur d'horloge associée, fournissant des informations suffisantes à un système de réception pour une synchronisation avec la séquence de sauts de fréquence. 25 Cependant, il existe de nombreuses circonstances o un utilisateur souhaite uniquement surveiller le réseau et non participer activement. Mais même dans ces cas, l'utilisateur doit obtenir les informations nécessaires du serveur afin de réaliser une 30 synchronisation avec la séquence de sauts de fréquence du noeud maître. Ce processus d'échange d'informations nécessite des ressources système et retarde (et peut même bloquer) l'entrée d'autres utilisateurs dans le réseau. Ainsi, il existe un besoin pour un procédé et un 5 système pour déterminer localement la séquence de sauts de fréquence de noeud maître et obtenir une synchronisation sans échanger toutes les informations nécessaires ou utiliser la bande passante disponible. Les figures 1 à 6 et la description détaillée 10 jointe contenues dans le présent document doivent être utilisées en tant que mode de réalisation illustratif de la présente invention et ne devraient pas être considérées comme la seule manière de mettre l'invention en pratique. La figure 1 illustre un schéma de principe d'un processus exemplaire pour déterminer une séquence de sauts de fréquence selon les principes de la présente invention; la figure 2a représente une partie de code d'accès 20 d'un format de paquet BLUETOOTH classique; la figure 2b illustre un organigramme d'un processus exemplaire pour déterminer une partie d'adresse inférieure selon les principes de la présente invention; la figure 3a représente une partie d'en-tête d'un format de paquet BLUETOOTH classique; la figure 3b illustre un procédé classique pour coder la partie HEC de l'en-tête illustré sur la figure 3a; la figure 3c illustre un procédé classique pour générer un code de blanchiment répétitif 1/3 pour la partie d'en-tête du paquet de données illustré sur la figure 3a; la figure 3d illustre un organigramme d'un processus de niveau haut pour déterminer une partie 5 d'adresse supérieure selon les principes de la présente invention; la figure 3e illustre un organigramme d'un processus exemplaire pour déterminer une partie d'adresse supérieure et six bits d'horloge selon les 10 principes de l'invention; la figure 4a illustre un organigramme d'un processus exemplaire pour enregistrer un saut de fréquence selon les principes de l'invention; la figure 4b illustre un organigramme d'un 15 deuxième processus exemplaire pour enregistrer un saut de fréquence selon les principes de l'invention; la figure 5 illustre un organigramme d'un processus exemplaire pour déterminer une valeur d'horloge utilisée pour générer la séquence de sauts de 20 fréquence enregistrée; et la figure 6 illustre un système exemplaire pour effectuer le traitement illustré selon les principes de l'invention. On doit comprendre que ces dessins sont destinés à 25 illustrer les concepts de l'invention et ne sont pas à l'échelle. On appréciera que les mêmes numéros de référence, éventuellement complétés par des caractères de référence lorsque cela est approprié, ont été utilisés sur tous les dessins pour identifier des 30 parties correspondantes. La figure 1 illustre un schéma de principe d'un processus exemplaire 100 pour déterminer en aveugle un saut de fréquence et obtenir une synchronisation dans un système de communication sans fil selon les principes de l'invention. Dans ce processus exemplaire, 5 au bloc 110, un récepteur est accordé à l'une sélectionnée d'une pluralité de fréquences connues dans la séquence de sauts. Au bloc 120, l'instant actuel est enregistré. Au bloc 130, un enregistrement de l'instant de chaque apparition de la détection de la fréquence 10 sélectionnée est effectué. Au bloc 140, un paquet d'informations est ensuite capturé et décodé. Au bloc 150, l'adresse inférieure, c'est-à-dire, LAP, du noeud maître est déterminée à partir du code d'accès. Au bloc 160, l'adresse supérieure, c'est-à-dire, UAP, du noeud 15 maître est déterminée à partir des informations d'entête et des 6 bits de l'horloge de noeud maître. Au bloc 170, les bits d'horloge de noeud maître restants sont déterminés en faisant correspondre les instants enregistrés d'apparition de la fréquence sélectionnée. 20 La figure 2a illustre une structure de paquet classique 200 d'un système de communication sans fil utilisant la technologie BLUETOOTH. Dans cette structure de paquet BLUETOOTH classique, 72 bits sont alloués à un code d'accès 210, 54 bits sont alloués à 25 des informations d'en-tête 240 et 2745 bits au maximum sont alloués à la charge utile. La figure 2a montre, en outre, que le code d'accès 210 est divisé en un préambule de 4 bits 211, un mot de synchronisation de 64 bits 212 et éventuellement une partie de queue de 30 4 bits 213. En outre, le mot de synchronisation 212 est basé sur un code de bloc expurgé (64, 30) avec une superposition d'une séquence de bruit pseudo-aléatoire d'une longueur totale de 64 bits, comme spécifié. Dans ce cas exemplaire, 24 bits de mot de synchronisation 212 sont alloués à la partie d'adresse inférieure de 5 noeud maître (LAP) 215. La partie d'adresse inférieure 215 est représentative d'une première caractéristique de l'adresse de la station maître contrôlant la séquence de sauts. La figure 2b illustre un organigramme d'un 10 processus exemplaire 270 pour déterminer la partie d'adresse inférieure de noeud maître 215 à partir des données transmises. Dans ce processus illustratif, un paquet de données transmis est obtenu au bloc 280. Au bloc 282, le code d'accès 210 est isolé du paquet de 15 données obtenu. Au bloc 284, le mot de synchronisation 212, dans le code d'accès isolé 210, est obtenu. Au bloc 286, la partie d'adresse inférieure 215 est isolée du mot de synchronisation 212. Au bloc 288, la partie d'adresse inférieure 215 est mémorisée pour un 20 traitement supplémentaire. tant donné que les positions de bits de chaque élément sont connues, des procédés pour isoler des bits sont bien connus des hommes du métier et ne doivent pas être examinés en détail. La figure 3a détaille la structure d'en-tête 240 de la structure de paquet 200 montrée sur la figure 2a. Dans ce cas, l'en-tête 240 consiste en 54 bits codés, blanchis et vérifiés quant aux erreurs. L'en-tête luimême, avant blanchiment et avant qu'une autocorrection 30 des erreurs ne soit appliquée, consiste en une adresse d'élément actif de 3 bits (AMADDR) 320, un type de 4 bits 318, un contrôle de flux de 1 bit 316, une indication d'acquittement de 1 bit (ARQN) 314, un numéro de séquence de 1 bit (SEQN) 312 et un contrôle d'erreurs d'en-tête de 8 bits. La figure 3b illustre un procédé exemplaire pour coder les bits de contrôle d'erreur d'en-tête (HEC) 310 de l'en-tête. Dans ce procédé exemplaire, un registre à décalage de 8 bits 325, ayant une configuration de rétroaction prédéterminée, est initialisé avec les 10 8 bits de la partie UAP de noeud maître, comme cela sera expliqué, aux positions de bits correspondantes, représentées par 330 à 337. La sélection d'une configuration de rétroaction pour déterminer des bits de HEC est bien connue dans l'art dans le domaine du 15 codage et du chiffrement et ne doit pas être examinée en détail dans le présent document. Dix bits d'informations sont ensuite appliqués, sur un front l'horloge, au registre à décalage 325, le bit le moins significatif en premier. La sortie du 20 registre à décalage 325 est représentative du HEC 310. Les 8 bits de HEC 310 sont ensuite ajoutés aux 10 bits d'informations, qui sont ensuite " blanchis " en utilisant un registre à décalage rebouclé (LFSR). Ensuite, un code répétitif 1/3 pour une correction 25 d'erreurs sans voie de retour (FEC) est appliqué. La figure 3c illustre un procédé exemplaire pour blanchir les 18 bits d'en-tête. Dans ce procédé exemplaire, un registre à décalage de 7 bits 340, présentant une configuration de rétroaction prédéterminée, est initialisé avec des bits d'horloge 6 à 1 avec un bit le plus significatif étendu de valeur 1 de la valeur d'horloge de système de noeud maître à des positions de bits correspondantes, représentées par 341 à 347. Les 18 bits d'en-tête, représentés par 348, sont ensuite entrés, le bit le moins significatif en 5 premier, dans le registre à décalage 340. La sortie du registre à décalage 340, représentée par 349, est soumise à une correction d'erreurs sans voie de retour en utilisant le code répétitif 1/3. Cela produit la séquence d'entrée blanchie, à correction d'erreurs sans 10 voie de retour, qui est composée de 18 groupes identiques de trois bits identiques. La figure 3d illustre un processus exemplaire 350 pour décoder l'en-tête 240 et déterminer une partie d'adresse supérieure de noeud maître (UAP). Ce processus 15 illustré 350 implique d'abord le décodage, au bloc 355, de l'en-tête de code de répétition 1/3 de FEC codé. Le processus de décodage convertit les 54 bits d'en-tête en une séquence blanchie de 18 bits (54/3 = 18). Au bloc 360, un registre à décalage rebouclé (LFSR) 20 initialisé avec six bits inférieurs supposés du site maître, référencés en tant que CLK6-1, est utilisé pour déblanchir l'en-tête au bloc 360. tant donné que les bits CLK6-1 ne sont pas connus, il existe 26 ou 64 valeurs qui peuvent être utilisées en théorie pour 25 initialiser le registre LFSR de déblanchiment. Afin de déterminer les bits CLK6-1 corrects sans connaître l'horloge de picoréseau du site maître, chacune des 64 valeurs possibles de CLK6-1 sont testées. Selon un aspect, les 64 valeurs possibles peuvent être obtenues 30 en augmentant de manière incrémentale une valeur hypothétique en commençant à une valeur connue, par exemple, 0. Au bloc 360, le facteur de blanchiment est retiré, c'est-à-dire, déblanchi, et un champ de données de 10 bits et un champ HEC de 8 bits sont produits. Au 5 bloc 365, la partie UAP est produite en inversant le processus HEC. Etant donné que les bits de HEC sont produits initialement en initialisant un registre LFSR avec les bits de la partie UAP et en faisant passer les bits de données à travers celui-ci, le processus 10 inverse peut être mis en oeuvre en initialisant un registre LFSR avec les bits de HEC et en faisant passer les données à travers celui-ci afin de produire une partie UAP. La partie UAP produite à partir des données d'en-tête et des bits de HEC est appelée partie UAP 15 d'en-tête. La figure 3e illustre un organigramme d'un processus exemplaire 370 représentant plus en détail le traitement examiné sur la figure 3d. Dans ce processus illustratif, les 54 bits d'informations d'en-tête sont 20 extraits du paquet de données reçu au bloc 371. Au bloc 372, le code FEC 1/3 est retiré, laissant, au bloc 373, 18 bits de données d'en-tête. Les 18 bits de données d'en-tête sont appliqués à un processus, simultanément à une valeur hypothétique 25 ou de test de CLK6-1, comme cela sera expliqué, au bloc 378. Bien que le processus illustré soit appelé un processus " OU exclusif ", on devrait comprendre que d'autres processus logiques similaires peuvent être facilement mis en oeuvre par les hommes du métier et, 30 ainsi, sont envisagés et considérés dans l'étendue de l'invention. Au bloc 381, dix (10) bits de données et huit (8) bits de HEC sont disponibles en conséquence du processus exécuté au bloc 378. Au bloc 382, les 8 bits de HEC sont chargés dans un registre LFSR et une partie 5 UAP hypothétique résultante est déterminée au bloc 383. La partie UAP hypothétique résultante est ensuite appliquée en même temps que les données de charge utile, comme cela sera expliqué, à un registre LFSR de CRC (code cyclique de redondance) afin de tester cette 10 valeur de partie UAP hypothétique par rapport à des données de charge utile hypothétiques, au bloc 391. Si le code cyclique de redondance résultant est une valeur connue, par exemple, zéro, 0, comme montré au bloc 393, alors le processus s'achève et les valeurs de la partie 15 UAP et de CLK61 hypothétiques actuelles sont mémorisées en tant que valeurs déduites de la partie UAP et de CLK6-1 du site maître. Cependant, si le code cyclique de redondance n'est pas égal, alors le traitement retourne au bloc 374, 20 auquel la valeur de CLK6-1 actuelle est modifiée, par exemple, incrémentée, et une valeur hypothétique suivante de CLK6-1 est obtenue. Au bloc 375, la valeur hypothétique de CLK6-1 est testée afin de garantir qu'elle est dans des limites autorisées, c'est-à-dire, 25 entre 0 et 63. Au bloc 376, la valeur hypothétique de CLK6-1 est appliquée à un registre LFSR de blanchiment dans lequel une séquence de blanchiment est déterminée, comme représenté au bloc 377. La séquence de blanchiment est ensuite appliquée simultanément à un 30 processus exécuté au bloc 378, qui a été examiné précédemment, et à un processus pour extraire les données de charge utile et le code cyclique de redondance au bloc 379. Le code FEC 2/3 est retiré des données de charge utile, représentées en tant que bloc 384, au bloc 385, 5 en utilisant un registre LFSR initialisé avec des 0, représenté en tant que bloc 386. Un résultat du retrait du code de correction d'erreurs est la détermination de la longueur de données utiles, qui est mémorisée dans les données utiles et qui est représentée par le bloc 10 387. Les données utiles blanchies, représentées en tant que bloc 388, sont ensuite appliquées au processus 379 en même temps qu'une valeur de CLK6-1 hypothétique afin de déblanchir les données utiles et de produire des 15 données utiles et de code cyclique de redondance, comme représenté par le bloc 390. La figure 4 illustre un organigramme 400 d'un processus exemplaire pour enregistrer l'apparition d'une fréquence sélectionnée selon un aspect de la 20 présente invention. Dans cet organigramme illustré, une fréquence connue parmi une pluralité de fréquences, c'est-à-dire, F1, est sélectionnée de manière arbitraire au bloc 410. Au bloc 420, une unité de réception est accordée afin de recevoir la fréquence 25 sélectionnée F1. Au bloc 430, un registre d'horloge de processus, c'est-à-dire, To, est initialisé et, comme cela sera expliqué, détermine le temps nécessaire pour exécuter le traitement qui détermine la séquence de sauts de fréquence. Dans un autre aspect, un registre 30 d'horloge de processus, To, est enregistré en tant qu'heure actuelle. Au bloc 440, il est déterminé si la fréquence sélectionnée F1 est détectée. Si la réponse est affirmative, alors un instant de détection ou d'apparition est enregistré. De préférence, l'instant de détection est enregistré en tant que nombre d'unités 5 de graduation d'horloge de système. Dans le cas de la technologie BLUETOOTH, chaque graduation d'horloge est de l'ordre de 312, 5 microsecondes. Cependant, on comprendra que le temps peut être n'importe quelle autre unité ou une valeur de temps absolue, utilisant, 10 par exemple, l'heure du méridien de Greenwich, l'heure GPS, etc. Si, cependant, la réponse est négative, alors il est déterminé, au bloc 460, si un nombre suffisant d'interceptions ou d'apparitions de la fréquence F1 ont 15 été enregistrées. Si la réponse est négative, alors le traitement avance au bloc 440 pour attendre une détection ou une apparition suivante/subséquente de la fréquence sélectionnée F1. Si, cependant, la réponse au bloc 460 est 20 affirmative, alors cet aspect du traitement est achevé au bloc 470. Dans un mode de réalisation préféré, dix (10) interceptions ou apparitions de la fréquence sélectionnée F1 sont suffisantes pour déterminer une séquence de sauts de fréquence. La figure 4b illustre un organigramme d'un deuxième mode de réalisation du traitement pour recueillir des données d'interception. Dans ce mode de réalisation, la fréquence F1 est sélectionnée au bloc 410, un récepteur est accordé à la fréquence F1 au bloc 30 420 et un registre d'horloge de processus To est initialisé ou enregistré au bloc 430. Au bloc 432, il est déterminé si une interception de la fréquence F1 s'est produite. Si la réponse est négative, alors le traitement continue d'attendre une détection de la fréquence Fi. Si, cependant, la réponse est 5 affirmative, alors au bloc 436, un compteur de temps est initialisé à une valeur connue. Ce compteur est représentatif d'une valeur initiale à partir de laquelle toutes les interceptions ou apparitions suivantes/subséquentes sont mesurées de manière 10 relative. Au bloc 440, il est déterminé si une interception de la fréquence F1 s'est produite. Si la réponse est négative, alors le traitement se poursuit afin d'attendre une détection de la fréquence F1. Si, 15 cependant, la réponse est affirmative, alors au bloc 450, un instant relatif d'interception mesuré par rapport au premier instant d'interception est enregistré. Dans un mode de réalisation préféré, cet instant relatif d'interception est mesuré en unités de 20 graduations d'horloge par rapport à la valeur de l'instant de la première interception. Au bloc 460, il est déterminé si un nombre suffisant d'interceptions ou d'apparitions de la fréquence F1 ont été enregistrées. Si la réponse est 25 négative, alors le traitement avance au bloc 440 afin d'attendre une apparition suivante/subséquente de la fréquence sélectionnée F1. La figure 5 illustre un organigramme d'un processus exemplaire 500 pour déterminer une valeur 30 d'horloge maître utilisée pour générer une séquence de sauts de fréquence. Dans ce processus 500, une valeur de compteur est initialisée à une valeur connue au bloc 510. De préférence, la valeur de compteur est initialisée à une valeur nulle ou supposée avoir une valeur nulle. Au bloc 520, une nouvelle valeur de 5 compteur supposée, appelée CLK, est obtenue en incrémentant la valeur de compteur supposée précédente. Dans un mode de réalisation préféré, la valeur d'horloge supposée est incrémentée d'une unité de l'horloge de référence. Dans un système de 10 communication sans fil BLUETOOTH, l'horloge de référence a une résolution ou une valeur unitaire de 312,5 microsecondes. Les hommes du métier apprécieront que la valeur initiale sélectionnée peut être d'abord utilisée en tant que valeur de compteur supposée en 15 contournant ou en n'exécutant pas l'étape d'incrémentation au bloc 520. Dans un autre aspect, la valeur initiale sélectionnée peut être fixée à une valeur incrémentale inférieure à une première valeur souhaitée à utiliser en tant que valeur de compteur 20 supposée. Au bloc 525, une valeur de fréquence supposée est déterminée en utilisant la partie LAP, la partie UAP et la valeur d'horloge supposée extraites. Comme cela est bien connu dans l'art, et à des fins d'illustration de 25 la présente invention, dans un système de communication BLUETOOTH, une valeur de fréquence d'émission est déterminée sur la base des parties d'adresse supérieure UAP et inférieure LAP de noeud maître et de la valeur d'horloge maître au moment de l'émission. Au bloc 530, il est déterminé si la valeur de fréquence déterminée sur la base de la valeur d'horloge supposée correspond à la valeur de la première valeur de fréquence sélectionnée F1. Si la réponse est négative, alors le traitement se poursuit au bloc 520 o une valeur d'horloge supposée suivante est obtenue. 5 Dans le processus illustré, une valeur d'horloge supposée suivante est obtenue en incrémentant la valeur de compteur actuelle. Si, cependant, la réponse est affirmative, le traitement se poursuit au bloc 550. Au bloc 550, une valeur d'instant suivant/subséquent d'apparition ou de détection de la fréquence sélectionnée F1 est obtenue à partir de la liste des occurrences enregistrées. Au bloc 555, une valeur de fréquence supposée suivante/subséquente est 15 déterminée en utilisant la partie LAP déterminée, la partie UAP déterminée, la valeur d'horloge supposée et la valeur d'instant suivant/subséquent de détection de la fréquence sélectionnée F1. Au bloc 560, il est déterminé si une fréquence déterminée est égale ou 20 correspond sensiblement à la valeur de la valeur de fréquence sélectionnée F1. Si la réponse est négative, alors le traitement se poursuit au bloc 520 o un nouveau compteur supposé est obtenu en incrémentant la valeur actuelle du compteur. 25 Le traitement se poursuit au bloc 525. Si, cependant, la réponse est affirmative, alors au bloc 570, il est déterminé si la fin des données enregistrées a été atteinte. Si la réponse au bloc 570 est négative, alors le 30 traitement se poursuit au bloc 550 o une valeur d'instant suivant/subséquent est obtenue et testée. Si, cependant, la réponse au bloc 570 est affirmative, alors le registre d'horloge de processus To est arrêté et enregistré au bloc 580. Le processus 500 s'achève ensuite et une valeur de l'horloge de noeud 5 maître utilisée pour générer la séquence de sauts de fréquence correspondant aux apparitions enregistrées de la détection d'une fréquence sélectionnée à l'instant initial d'enregistrement est déterminée. L'instant actuel dans la séquence de sauts de 10 fréquence est ensuite déterminé en ajustant la valeur déterminée de l'horloge système par: CLKactuel = CLK + AT0 o AT0 est représentatif d'une période de temps déterminée comme la différence entre les instants de 15 début et de fin du processus. La figure 6 illustre un système exemplaire 600 pour mettre en pratique les principes de l'invention. Dans ce système exemplaire, un processeur 620 est en communication avec une mémoire 630 et un dispositif 20 d'entrée 640 sur un réseau 645. Comme on l'appréciera, un réseau 645 et 650 peut être un réseau interne entre les composants, par exemple, un bus ISA, un bus de microcanal, un bus PCMCIA, etc., ou un réseau externe, tel qu'un réseau local, un réseau étendu, un réseau de 25 service téléphonique traditionnel, sans fil ou Internet. Le processeur 620 peut être n'importe quel calculateur portatif, téléphone cellulaire, assistant numérique personnel, système de traitement d'utilisation particulière ou générale qui peut effectuer les opérations illustrées sur les figures. Le processeur 620 peut comprendre un logiciel ou un code qui, lorsqu'il est exécuté, effectue les opérations et processus illustrés. Le code peut être contenu dans la mémoire 630. De même, les opérations illustrées sur les 5 figures peuvent être exécutées de manière séquentielle ou en parallèle en utilisant différents processeurs pour déterminer des valeurs spécifiques ou exécuter des processus particuliers. Le dispositif d'entrée 640, dans cet exemple particulier, reçoit des données d'une 10 ou de plusieurs sources de données 660 sur un réseau 650 et les données reçues peuvent être immédiatement accessibles par le processeur 620 ou peuvent être mémorisées dans la mémoire 630. Comme on l'appréciera, le dispositif d'entrée 640 peut également permettre une 15 entrée manuelle, telle qu'une entrée par clavier ou par clavier numérique, ou peut lire des données à partir d'un support magnétique ou optique (non montré). Après traitement des données d'entrée, le processeur 620 peut afficher la séquence résultante ou 20 une indication d'obtention de synchronisation sur l'affichage 680. Dans un mode de réalisation préféré, le codage et le décodage utilisant les principes de la présente invention sont mis en oeuvre par un code pouvant être 25 lu par un ordinateur exécuté par le processeur 620. Cependant, dans d'autres modes de réalisation, des éléments de circuit matériels peuvent être utilisés au lieu des instructions logicielles, ou en combinaison avec celles-ci, pour mettre en oeuvre l'invention. Par 30 exemple, les éléments illustrés dans le présent document peuvent également être mis en oeuvre en tant qu'éléments matériels discrets, ou peuvent être un matériel à usage particulier, tel que PAL, FPGA, ou ASIC, qui peut être programmé pour exécuter les processus exemplaires illustrés. Bien que des caractéristiques originales fondamentales de la présente invention telles qu'appliquées à un système de communication sans fil BLUETOOTH préféré aient été montrées, décrites et mises en évidence, on comprendra que diverses omissions, 10 substitutions et modifications du dispositif décrit, de la forme et des détails des dispositifs présentés, et de leur fonctionnement, peuvent être apportées par des hommes du métier sans s'écarter de l'esprit de la présente invention afin de mettre en oeuvre d'autres 15 types de protocoles de communication sans fil. Il est expressément voulu que toutes les combinaisons de ces éléments qui réalisent sensiblement la même fonction sensiblement de la même manièrepour obtenir les mêmes résultats soient dans l'étendue de l'invention. Des 20 substitutions d'éléments d'un mode de réalisation décrit à un autre sont également totalement envisagées et souhaitées. REVENDICATIONS 1. Système pour obtenir une synchronisation avec un système de communication sans fil transmettant des données dans une pluralité de paquets de données en utilisant une pluralité de fréquences connues 5 déterminées conformément à au moins deux caractéristiques alternées en utilisant un procédé connu, dans lequel au moins l'une desdites deux caractéristiques est contenue dans au moins un paquet de données transmis, ledit système comprenant: une unité de réception en communication avec un processeur (620) et une mémoire (630) dans laquelle ledit processeur peut être mis en oeuvre pour exécuter un code pour: accorder ledit récepteur sur une fréquence 15 sélectionnée de ladite pluralité de fréquences; enregistrer un instant d'apparition d'une pluralité d'apparitions de ladite fréquence sélectionnée; déterminer ladite première caractéristique à 20 partir dudit au moins un paquet de données transmis reçu sur ladite fréquence sélectionnée; déterminer ladite deuxième caractéristique, dans lequel ladite première caractéristique déterminée, ladite deuxième caractéristique déterminée et chacun 25 desdits instants enregistrés d'apparitions génèrent ladite fréquence sélectionnée à chacune desdites apparitions enregistrées de ladite fréquence sélectionnée; déterminer une période de temps pour déterminer lesdites première et deuxième caractéristiques; et ajuster ladite deuxième caractéristique par ladite période de temps. 2. Système selon la revendication 1, dans lequel 5 ledit processeur (620) peut, en outre, être mis en oeuvre pour exécuter un code pour: isoler un nombre de bits connu à une position connue dans ledit paquet de données. 3. Système selon la revendication 1, dans lequel 10 ledit processeur (620) peut, en outre, être mis en oeuvre pour exécuter un code pour: supposer ladite deuxième caractéristique; déterminer une valeur de fréquence résultante sur la base de ladite première caractéristique déterminée 15 et de ladite deuxième caractéristique supposée; et mémoriser ladite deuxième caractéristique supposée lorsque ladite valeur de fréquence résultante est égale à ladite fréquence sélectionnée. 4. Système selon la revendication 1, dans lequel 20 ledit processeur (620) peut, en outre, être mis en oeuvre pour exécuter un code pour: enregistrer un premier instant avant l'acquisition desdites informations de fréquence sélectionnée; enregistrer un deuxième instant après la 25 détermination de ladite au moins une deuxième caractéristique; et déterminer une différence entre lesdits premier et deuxième instants. 5. Système selon la revendication 1, dans lequel 30 ledit processeur (620) peut, en outre, être mis en oeuvre pour exécuter un code pour: déterminer que ladite première caractéristique est décodée en inversant ledit processus de codage. 6. Système selon la revendication 5, dans lequel ledit processeur (620) peut, en outre, être mis en oeuvre pour exécuter un code pour: supposer une valeur de décodage; et modifier ladite valeur de décodage supposée jusqu'à ce que la valeur de codage soit déterminée. 7. Procédé pour déterminer en aveugle des 10 caractéristiques utilisées pour la génération d'une pluralité de fréquences dans un système de communication sans fil à sauts de fréquence transmettant des données dans une pluralité de paquets de données, dans lequel une première desdites 15 caractéristiques est contenue dans au moins un desdits paquets de données transmis, ledit procédé comprenant les étapes consistant à: enregistrer un instant d'apparition d'une pluralité d'apparitions d'une fréquence sélectionnée 20 parmi ladite pluralité de fréquences; déterminer ladite première caractéristique à partir dudit au moins un paquet de données transmis reçu sur ladite fréquence sélectionnée; et déterminer au moins une deuxième caractéristique, 25 dans lequel ladite première caractéristique, ladite au moins une deuxième caractéristique déterminée et chacun desdits instants enregistrés d'apparitions génèrent ladite fréquence sélectionnée à chacune desdites apparitions enregistrées de ladite fréquence sélectionnée. 8. Procédé selon la revendication 7, dans lequel l'étape de détermination de ladite au moins une deuxième caractéristique comprend, en outre, les étapes consistant à: supposer ladite au moins une deuxième caractéristique; déterminer une valeur de fréquence résultante sur la base de ladite première caractéristique déterminée et de ladite au moins une deuxième caractéristique supposée; et mémoriser ladite au moins une deuxième caractéristique supposée lorsque ladite valeur de fréquence résultante est égale à ladite fréquence sélectionnée. 9. Procédé selon la revendication 7, comprenant en 15 outre: la détermination d'une période de temps comprenant les étapes consistant à: enregistrer un premier instant avant l'enregistrement desdites informations de fréquence 20 sélectionnée; enregistrer un deuxième instant après la détermination de ladite au moins une deuxième caractéristique; et déterminer une différence entre lesdits premier et 25 deuxième instants; et ajuster ladite au moins une deuxième caractéristique déterminée par ladite période de temps.