FR 2920930 A1 20090313 FR 0706236 A 20070906 1 L'invention concerne les systèmes de distribution de signaux comportant au moins deux dispositifs couplés entre eux de manière continue par une liaison sans fil. Elle s'applique très avantageusement aux liaisons sans fil de type Blue- tooth (marque déposée du Bluetooth SIG, Inc.). En effet, les spécifications Bluetooth offrent la possibilité de piloter à dis-tance par une liaison sans fil bidirectionnelle un dispositif éloigné. En pratique, il s'agit le plus souvent d'un téléphone portable ou d'un périphérique informatique, mais les spécifications Bluetooth ne se limitent pas à ce type d'appareil et incluent notamment des profils compatibles avec la transmission de flux audio multicanal codés de haute qualité (profil A2DP : Advanced Audio Distribution Profile), ainsi que des profils assurant l'interopérabilité des appareils Bluetooth avec des fonctions de commande audio et vidéo (profil AVRCP : Audio Video Remote Control Profile). La technologie Bluetooth est particulièrement intéressante compte tenu de son caractère universel et évolutif, de l'existence de nombreuses fonctionnalités, ainsi que de nombreux composants, au surplus peu coûteux, spécialement conçus pour sa mise en oeuvre. Ce choix n'est cependant aucunement limitatif, et la liaison sans fil peut être mise en oeuvre au moyen d'autres techniques de transmission sans fil, dès lors que ces techniques offrent un débit de données suffisant pour permettre la transmission d'un flux continu de données (par exemple des signaux audio ou vidéo numériques de haute qualité) : tel est par exemple le cas de la norme IEEE 802.11 (ISO/IEC 8802-11) dite "WiFi". L'invention concerne tout particulièrement, mais de façon non limitative, les systèmes de distribution de signaux audio entre une pluralité d'enceintes actives communiquant entre elles par des moyens de transmission sans fil, pour restituer les signaux d'une source audio sur les diverses en-ceintes respectives. Un tel système est notamment décrit dans le document WO-A-2007/074245 (Seydoux). Dans ce système, chaque enceinte comprend des moyens, avantageusement de type Bluetooth, d'interfaçage sans fil avec toute autre enceinte du système. Les enceintes se configurent automatiquement en un réseau, en établissant: une table des visibilités mutuelles et en définissant à partir de cette table une topologie de réseau hiérarchisé, dont l'une des enceintes sera désignée "tête de réseau". La tête de réseau a pour fonction, entre autres, d"établir une liaison (filaire ou, de préférence, radio) avec un périphérique distant produisant un signal audio codé ou un signal de télé- commande. Les autres enceintes reçoivent des signaux qui leur sont destinés, encapsulés dans des messages incluant des données de routage et diffusés dans le réseau à partir de l'enceinte de tête, directement ou après que ces signaux aient été relayés par une autre enceinte du système. Dans la mesure où les diverses enceintes actives du système sont physi- quement indépendantes (la seule contrainte étant le branchement de l'alimentation de l'enceinte à une prise de courant), chacune enceinte comporte son horloge propre, assurant le pilotage de ses divers circuits, notamment le circuit d'émission/réception et d'interfaçage Bluetooth et les circuits de traitement numérique du signal, généralement regroupés dans un processeur DSP spécifique. Les données audio sont diffusées en streaming, c'est-à-dire en flux continu, entre les différentes enceintes à partir de l'enceinte de tête de réseau qui joue le râle du serveur d'une architecture client/serveur, les autres en-ceintes étant des enceintes clientes. Une diffusion en streaming requiert que le client (récepteur) consomme les données qui lui sont transmises au même rythme que celles-ci sont diffusées par le serveur (la source, émettrice). Si le client consomme les données trop lentement, il sera tôt ou tard en surcharge de données non consommées, avec débordement du tampon d'interfaçage ; inversement, si la consommation des données est trop rapide, le client va se trouver tôt ou tard en manque de données, avec sous-dépassement du tampon. Pour éviter cette difficulté, les spécifications Bluetooth requièrent que tous les dispositifs appariés possèdent une horloge très précise, à � 20 ppm. Cette prescription s'applique à tous les types de dispositifs, même ceux qui jouent un rôle privilégié tels que les dispositifs maîtres dans un réseau maître/esclave de type piconet ou scatternet. La variabilité subsistante entre les horloges des différents dispositifs est gérée en utilisant un mécanisme consistant à reconnaître un pattern ou configuration binaire particulière dans des paquets de bas niveau, puis en 3 ajoutant ou retranchant un décalage ou offset permettant de corriger le séquencement pour obtenir la synchronisation voulue. Cette technique de gestion des désynchronisations, qui fait partie intégrante des spécifications Bluetooth, est mise en oeuvre en interne, dans le chipset ou jeu de puces assurant les fonctions radio/interfaçage Bluetooth. Elle permet d'obtenir, en sortie des chipsets respectifs de tous les dispositifs du réseau, des données transmises qui seront synchronisées sur un même séquencement d'horloge. En revanche, la correction n'est pas reportée vers les composants extérieurs au chipset, c'est-à-dire vers les circuits de traitement numérique du signal capté et restitué en sortie du chipset, tels que les processeurs DSP destinés à mettre en oeuvre l'applicatif particulier du réseau utilisant la transmission Bluetooth. Cet aspect n'est habituellement pas gênant, car la technologie Bluetooth a été conçue pour permettre une transmission ponctuelle de données sur une durée limitée, par exemple la durée d'une conversation téléphonique, ou la durée de l'envoi d'un fichier à une imprimante. Mais dans le cas particulier d'un système audio tel que celui décrit dans le WO-A-2007/274245 précité, la technologie Bluetooth est utilisée de manière quelque peu différente de sa finalité originelle û toutefois sans modification des protocoles, de manière à rester parfaitement compatible avec les prescriptions des spécifications Bluetooth. En effet, dans ce système particulier, la technologie Bluetooth est utilisée pour établir une liaison permanente dans le système, liaison qui perdure tant que les enceintes ne sont pas désalimentées, c'est-à-dire physique-ment débranchées de la prise secteur. Plus précisément, lorsque le système est en veille, c'est-à-dire apparemment inactif pour un utilisateur, les liaisons sans fil entre les diverses enceintes restent actives, quoiqu'avec un trafic d'informations réduit, de manière à permettre le maintien de la configuration du réseau et la détection à tout moment de l'apparition d'un signal externe par le réseau. La liaison peut ainsi être maintenue de façon continue, persistante, pendant plusieurs heures ou plusieurs jours sans interruption. De ce fait, la dérive, même faible, de l'horloge des composants externes (DSP) par rapport au cadencement du flux Bluetooth peut provoquer des incidents de traitement du signal. Et ce, d'autant plus que l'horloge est imprécise, du fait du cumul plus rapide des diverses désynchronisations. Pour cette raison, dans les dispositifs connus, outre le choix d'une horloge de précision relativement élevée (typiquement � 2 ppm), il est prévu à intervalles périodiques un forçage de la resynchronisation, par exemple toutes les deux heures. Le plus souvent, cette resynchronisation passe inaperçue, mais cette ma- nière de procéder n'est cependant pas satisfaisante, et il serait souhaitable de pouvoir s'affranchir totalement de ce mécanisme. Outre la suppression d'une resynchronisation périodique, il serait égale-ment avantageux d'utiliser avec le dispositif une horloge moins précise (jusqu'à � 20 ppm au lieu de � 2 ppm), donc moins coûteuse et plus sim- ple à implémenter. Pour atteindre ce but, l'invention propose un système de distribution de signaux du type divulgué par exemple dans le WO-A-2007/074245 précité, c'est-à-dire comportant au moins deux dispositifs couplés de manière continue par une liaison sans fil, avec un dispositif maître et au moins un dispositif esclave. Le dispositif maître comprend des premiers moyens de transmission et d'interfaçageä un premier processeur numérique de traitement de signaux, et une première horloge, pour le cadencement commun des premiers moyens de transmission et d'interfaçage et du premier processeur numé- rique, de manière à émettre par la liaison sans fil des signaux à une cadence définie par ladite première horloge. Le dispositif esclave comprend des seconds moyens de transmission et d'interfaçage, un second processeur numérique de traitement de signaux, et une seconde horloge, pour le cadencement commun des seconds moyens de transmission et d'interfa- çage et du second processeur numérique. Les seconds moyens de transmission et d'interfaçage incluent des moyens corrélateurs et compensateurs, pour déterminer un décalage de fréquence entre, d'une part, la cadence des signaux reçus par les seconds moyens de transmission et d'interfaçage et, d'autre part, la fréquence de la seconde horloge, et pour corriger le débit des signaux délivrés au second processeur numérique par les seconds moyens de transmission et d'interfaçage en fonction du décalage de fréquence ainsi déterminé. De façon caractéristique de l'invention, la seconde horloge est un horloge dont la fréquence est pilotable autour de sa valeur nominale, et le disposi- 5 tif esclave comprend en outre des moyens interrogateurs, pour extraire des moyens corrélateurs et compensateurs la valeur dudit décalage de fréquence, et des moyens d'asservissement, pour piloter la fréquence de la seconde horloge en réponse à ladite valeur de décalage de fréquence, dans le sens de la minimisation dudit décalage. Les moyens interrogateurs sont très avantageusement des moyens, incorporés au second processeur numérique, pour lire le contenu d'un registre interne des moyens corrélateurs et compensateurs. De préférence, le second processeur numérique comprend des moyens pour délivrer un signal de pilotage de la fréquence de la seconde horloge, notamment un signal numérique tel qu'un signal à modulation de largeur d'impulsion délivré à la seconde horloge via un filtre passe-bas. La précision des première et seconde horloges peut être aussi faible que 10 ppm au plus, de préférence 20 ppm au plus. 0 On va maintenant décrire un exemple de mise en oeuvre de l'invention, en référence aux dessins annexés où les mêmes références numériques dé-signent d'une figure à l'autre des éléments identiques ou fonctionnelle- ment semblables. La Figure 1 illustre de façon schématique les différents dispositifs d'un système dans lequel la distribution des signaux est assurée par des moyens sans fil. La Figure 2 est une vue schématique des divers éléments d'un système de distribution de signaux audio dans un réseau d'enceintes sans fil. La Figure 3 est un schéma fonctionnel par blocs des divers éléments assurant la mise en oeuvre de l'invention dans le système de la Figure 2. 0 La Figure 1 illustre de façon schématique un réseau constitué de divers dispositifs échangeant entre eux des signaux par des moyens sans fil, par exemple des liaisons de type Bluetooth. Cependant, comme indiqué en introduction, le choix de cette technologie n'est aucunement limitatif et l'in- vention peut être appliquée à d'autres techniques de transmission sans fil opérant de manière comparable. Les spécifications Bluetooth permettent de réaliser non seulement des liaisons point à point entre deux éléments, mais également d'établir et de gérer des réseaux plus ou moins complexes constitués entre un certain nombre de ces éléments. Un premier type de réseau est le piconet, ou micro-réseau, qui se crée de manière automatique lorsque plusieurs éléments compatibles Bluetooth se trouvent dans un même rayon. Le piconet suit une topologie en étoile, avec un maître 10 et plusieurs esclaves 20 : les communications sont di- rectes entre le maître 10 et les esclaves 20, et les esclaves 20 ne peuvent pas communiquer entre eux. Plus précisément, chaque dispositif maître 10 ou esclave 20 comprend un circuit émetteur/récepteur et d'interfaçage Bluetooth, désigné respective-ment 12, 22. Le circuit maître M (le circuit 12) communique avec chacun des circuits esclaves SI, S2, S3,... (les circuits 22) par une liaison respective 32. Ces circuits 12 et 22 forment ainsi un réseau sans fil 30 comprenant un maître M (avec le circuit 12) et plusieurs esclaves SI, S2, S3 (avec les circuits 22). Chaque dispositif 10, 20 comprend également, outre le circuit émet- teur/récepteur et d'interfaçage 12, 22, un circuit applicatif spécifique 14, 24 destiné à traiter les données échangées à l'intérieur du réseau sans fil 30 par les divers dispositifs. On notera que, fonctionnellement, ces circuits applicatifs 14, 24 sont extérieurs au réseau 30, qui n'est en tant que tel destiné qu'à l'échange des signaux, sans rôle applicatif. Sur la Figure 2, on a illustré un exemple concret d'un tel réseau, appliqué à la distribution de signaux audio. Dans ce système, les dispositifs sont des enceintes actives configurées mutuellement en un réseau sans fil, dont l'une des enceintes 10 est l'en- ceinte maîtresse et l'autre (les autres) enceinte(s) 20 est (sont) une (des) 35 enceinte(s) esclave(s). Pour la simplicité, le système illustré est un sys- tème stéréo ne comportant que deux enceintes, mais on peut réaliser de la même façon un système avec un plus grand nombre d'enceintes, notamment pour des installations de type "cinéma à la maison" avec des configurations sonores de type "5.1", "7.1", etc., comprenant diverses en- ceintes satellites d'ambiance, caisson de basses, etc. L'enceinte maîtresse 10 peut être couplée à divers périphériques, par exemple un baladeur numérique 40 pourvu d'un module Bluetooth (in-terne ou externe) émettant vers le système un flux audio selon un profil A2DP, ou encore un téléphone portable 42 envoyant de la même façon des données audio au système. Les périphériques peuvent être égale-ment des périphériques de commande envoyant au système des signaux de commande selon un profil AVRCP. Le périphérique peut également être un périphérique susceptible d'envoyer à la fois des signaux audio et des commandes, par exemple le téléphone portable 42 dont les touches du clavier pourront être utilisées pour piloter le système (sélection des sources, volume, balance, ...). Le système peut être également relié à des éléments traditionnels 44 tels que syntoniseur (tuner) FM, lecteur/enregistreur CD ou DVD, téléviseur, etc., par une liaison filaire au moyen de fiches connectées à des prises d'entrée correspondantes prévues sur l'enceinte 10. Comme cela est illustré sur le schéma fonctionnel de la Figure 3, le circuit émetteur/récepteur et d'interfaçage Bluetooth 12 de l'enceinte 10 délivre des signaux à un circuit applicatif 14 de traitement numérique des signaux (DSP). Les deux circuits numériques 12, 14 de l'enceinte 10 sont séquen-cés par une horloge commune 16, par exemple une horloge de fréquence nominale 26 MHz avec une stabilité de l'ordre de � 20 ppm. En ce qui concerne l'enceinte esclave 20, celle-ci comprend, de la même façon, un circuit émetteur/récepteur et d'interfaçage Bluetooth 22 qui délivre des signaux à un circuit applicatif 24 de traitement numérique des si- gnaux (DSP). Les deux circuits numériques 22, 24 de l'enceinte 20 sont séquencés par une horloge commune 26, par exemple une horloge de fréquence nominale 26 MHz avec une stabilité de l'ordre de � 20 ppm. Les horloges 16 et 26 des deux enceintes 10 et 20 du système sont de même fréquence nominale mais, concrètement, leur fréquence réelle pré- sente toujours un léger écart par rapport à la valeur nominale. En ce qui concerne la transmission des données entre les deux circuits 12 et 22 (liaison sans fil 32), on a expliqué plus haut comment les spécifications Bluetooth prévoient des moyens pour compenser cette différence, en ajoutant ou en retranchant, côté esclave, à chaque paquet de données un offset ou décalage correspondant à l'écart de fréquence constaté. L'écart par rapport à la fréquence nominale est détecté par un corrélateur propre à reconnaître dans le flux de données un pattern ou séquence particulière de bits envoyée au début des paquets, en analyser la position temporelle, et par voie de conséquence déterminer l'offset nécessaire. La correction a pour effet que le flux de données en sortie du circuit 22 pré-sente exactement le même cadencement que celui en sortie du circuit 12 du dispositif maître distant. Mais cette resynchronisation reste interne au réseau, c'est-à-dire qu'elle ne concerne que les circuits d'interfaçage radio 12, 22. De façon caractéristique de l'invention, le décalage déterminé par le circuit 22 est utilisé pour synchroniser également le circuit numérique applicatif 24 du dispositif esclave. A cet effet, le circuit 24 est contrôlé pour lire un registre 50, interne au circuit 22, contenant la valeur du décalage déterminée par le corrélateur Bluetooth. Ce registre, désigné Clock Offset dans les spécifications Bluetooth, contient la valeur du décalage temporel entre le signal d'horloge côté maître et le signal d'horloge côté esclave, ainsi qu'un indicateur de validité. La liaison 52 symbolise la lecture du contenu de ce registre 50 par le circuit 24. La valeur lue permet ainsi au circuit 24 de savoir si l'horloge 26 côté es-clave prend de l'avance ou du retard par rapport à l'horloge 16 côté maître. À partir de cette indication, la fréquence de base de l'horloge 26 côté es-clave va être ajustée pour la rendre la plus synchrone possible avec celle de l'horloge 16 côté maître (on notera que cet ajustement ne se fait que côté esclave, car les spécifications Bluetooth prohibent toute action sur l'horloge côté maître). Cette opération consiste, en d'autres termes, à externaliser l'offset conte-nu dans le registre pour l'appliquer à l'horloge principale. La régulation de l'horloge 26 est par exemple commandée par une sortie numérique 54 du circuit 24 délivrant un signal à modulation de largeur d'impulsions PWM. Ce signal numérique est utilisé pour générer une tension de pilotage de l'horloge, par exemple au moyen d'un filtre passe-bas 56 du second ordre avec une fréquence de coupure de l'ordre de 10 Hz. La tension continue obtenue en sortie du filtre 56, par exemple comprise entre 0,5 et 2,5 V, reflète ainsi la valeur du décalage entre les horloges des deux dispositifs 10 et 20. Cette tension est appliquée à une entrée 58 de pilotage de l'horloge 26, qui est un oscillateur à quartz pilotable par une tension (VCXO). En faisant varier la tension appliquée à l'entrée 58 dans une plage allant de 0,5 à 2,5 V, on autorise un ajustement de la fréquence générée par l'horloge 26 allant de -8 ppm à +8 ppm. Le circuit applicatif 24, chargé du traitement des données reçues, pourra ainsi être parfaitement synchronisé sur la fréquence d'horloge du réseau sans fil assurant le transfert des données entre les divers dispositifs. Concrètement, dans un souci d'homogénéité, on prévoit que tous les dis-positifs auront la même structure interne, et ce ne sera qu'au moment de la configuration automatique du réseau qu'un dispositif sera défini comme étant maître ou esclave. Dans la mesure où les corrections sont appliquées seulement aux dispositifs esclaves et non au dispositif maître, il suffit pour ce dernier d'appliquer une tension nulle à l'entrée de pilotage de l'oscillateur de l'horloge 16. Ainsi, le VXCO côté maître se comportera comme un simple XO, oscillant sur sa fréquence nominale avec une certaine imprécision, mais qui sera compensée côté esclave. REVENDICATIONS 1. Un système de distribution de signaux, notamment de signaux audio dans un réseau d'enceintes sans fil, comportant au moins deux dispositifs (10, 20) couplés de manière continue par une liaison sans fil (32), avec : ù un disposiitif maître (10) comprenant : des premiers moyens de transmission et d'interfaçage (12), un premier processeur numérique (14) de traitement de signaux, et une première horloge (16), pour le cadencement commun des premiers moyens de transmission et d'interfaçage et du premier processeur numérique, le dispositif maître émettant par ladite liaison sans fil (32) des signaux à une cadence définie par ladite première horloge (16), au moins un dispositif esclave (20) comprenant : ^ des seconds moyens de transmission et d'interfaçage (22), • un second processeur numérique (24) de traitement de signaux, et • une seconde horloge (26), pour le cadencement commun des se- conds moyens de transmission et d'interfaçage et du second pro- cesseur numérique, les seconds moyens de transmission et d'interfaçage (22) incluant des moyens corrélateurs et compensateurs, pour déterminer un décalage de fréquence entre, d'une part, la cadence des signaux reçus par les seconds moyens de transmission et d'interfaçage et, d'autre part, la fréquence de la seconde horloge, et pour corriger le débit des signaux délivrés au second processeur numérique par les seconds moyens de transmission et d'interfaçage en fonction du décalage de fréquence ainsi déterminé, système caractérisé en ce que la seconde horloge (26) est un horloge dont la fréquence est pilotable autour de sa valeur nominale, et en ce que le dispositif esclave comprend en outre : des moyens interrogateurs, pour extraire des moyens corrélateurs et compensateurs la valeur dudit décalage de fréquence, et des moyens d'asservissement (54, 56, 58), pour piloter la fréquence de la seconde horloge en réponse à ladite valeur de décalage de 'Fréquence, dans le sens de la minimisation dudit décalage. 2. Le système de la revendication 1, dans lequel les moyens interrogateurs sont des moyens pour lire (52) le contenu d'un registre interne (50) des moyens corrélateurs et compensateurs. 3. Le systèrne de la revendication 1, dans lequel les moyens interrogateurs sont incorporés au second processeur numérique (24). 4. Le système de la revendication 1, dans lequel le second processeur numérique (24) comprend des moyens pour délivrer un signal (54) de pilo-tage de la fréquence de la seconde horloge. 5. Le système de la revendication 4, dans lequel le signal de pilotage (54) est un signal numérique. 6. Le système de la revendication 5, dans lequel le signal de pilotage (54) est un signal à modulation de largeur d'impulsion (PWM). 7. Le système de la revendication 6, dans lequel le signal de pilotage (54) est délivré à la seconde horloge (26) via un filtre passe-bas (56). 8. Le système de la revendication 1, dans lequel la précision des première et seconde horloges (16, 26) est d'au plus 10 ppm, de préférence au plus 20 ppm.20