Brevet FR2845176A1 — publié le 20040402

Domaine de l'invention La présente invention concerne un procédé d'échange ou de communication de données. L'invention concerne également un périphérique configuré pour appliquer ce procédé de communication de données. Les systèmes de communication hôtes sont généralement reliés à des périphériques. Par exemple un assistant numérique portable (PDA) peut être relié à un appareil " dent bleue " (bluetooth) pour permettre des communications sans fil avec d'autres dispositifs ou appareils " dent bleue ". Le système " dent bleue " (bluetooth) est une spécification 10 de l'industrie des calculateurs et des communications qui indique comment des téléphones mobiles, des calculateurs et des assistants numériques personnels (PDA) peuvent être facilement reliés entre eux ainsi qu'avec des téléphones fixes utilisant une connexion sans fil de courte distance. Chaque dispositif BT (" dent bleue ") est équipé d'un émetteur15 récepteur de fréquence radio qui émet et reçoit dans une bande de fréquence précédemment non utilisée de 2,45 GHz globalement disponible, (avec certaines différences de largeur de bande dans certains pays). Dans certaines applications telles que l'assistant PDA donné ci-dessus, le système de communication hôte et/ou le périphérique 20 sont alimentés par batterie. Dans de tels systèmes alimentés par batterie utilisant des bus de communication de type série-parallèle, le périphérique consomme de la puissance pour rester en alerte et permettre à l'ordinateur hôte d'envoyer les données vers le périphérique. Cet état de préparation consomme une certaine puissance servant principalement à 25 alimenter les horloges internes des périphériques permettant la réception des données à partir du système de communication hôte. But de l'invention La présente invention se propose de développer un procédé et des moyens permettant de réduire la puissance consommée par des 30 systèmes de communication hôtes et/ou des périphériques. Exposé et avantage de l'invention A cet effet l'invention concerne un procédé de transfert de données à partir d'un dispositif de communication hôte vers un périphérique par un canal de données, le périphérique comportant des moyens de 35 réception pour traiter les données reçues, caractérisé en ce que (i) on contrôle la quantité de données à transférer à partir du dispositif de communication hôte vers le périphérique, (il) on détermine si la quantité de données à transférer est égale ou inférieure à une quantité prédéterminée, (iii) on interdit le moyen de réception du périphérique en réponse à la quantité de données transférées qui est égale ou inférieure à la quan5 tité prédéterminée, et (iv) on réautorise le moyen de réception du périphérique si les données peuvent être transférées au périphérique. Ce procédé permet une réduction de la puissance consommée en neutralisant la réception des données par le périphérique si au1o cune donnée n'est transmise par le canal de données et en mettant effectivement le périphérique en mode basse puissance. Cela peut se faire en interdisant les signaux d'horloge dans le périphérique jusqu'au moment o une donnée est prête a été transmise par le canal de données. Le procédé comprend en outre l'émission d'un signal de 15 commande à partir du périphérique vers le dispositif de communication hôte lorsque la quantité de données transférées est au niveau ou endessous d'une quantité prédéterminée, le dispositif de communication hôte étant configuré pour arrêter l'émission d'autres données en réponse à la réception du signal de commande. Le canal de données peut comporter un bus de communication et une ligne d'accusé de réception, cette ligne servant à transmettre le signal de commande du périphérique vers le dispositif de communication hôte, le bus de communication étant utilisé pour envoyer les données du dispositif de communication hôte vers le périphérique. Le canal de 25 données peut servir de bus de communication combiné comprenant la ligne d'accusé de réception comme partie de sa configuration. Selon un mode de réalisation préférentiel à l'état initial, l'étape (ii) est seulement exécutée après un retard prédéterminé. De même si l'on constate que la quantité de données à transférer est inférieure ou 30 égale à une quantité prédéterminée, on répète l'étape (ii) après un second retard prédéterminé et on effectue l'étape (iii), seulement si la quantité de données à transférer reste égale ou inférieure à la quantité prédéterminée. Après l'étape suivante (iii), le moyen de réception du périphérique reste interdit pendant une troisième période de temps prédéterminée et l'étape 35 (iv) est effectuée seulement après une troisième période de temps prédéterminée. La quantité de données prédéterminée à transférer est de préférence égale à zéro. Comme indiqué ci-dessus, le périphérique peut recevoir des données en utilisant le protocole RS232. D'autres protocoles de données sérieparallèles peuvent utiliser le procédé. Le périphérique peut être un périphérique système BT. Selon une seconde caractéristique de l'invention, il est prévu un programme d'ordinateur installé dans un support utilisable par un ordinateur et comportant des instructions que l'ordinateur peut lire, pour demander à un moyen de traitement d'exécuter des étapes d'un procédé consistant à transférer des données d'un dispositif de communication hôte 10 vers un périphérique par un canal de données, le périphérique comportant des moyens de réception pour traiter les données reçues, et exécuter le procédé selon l'invention. Selon une troisième caractéristique de l'invention, il est prévu un périphérique pour recevoir les données, ce périphérique comprenant i5 des moyens de réception pour traiter les données reçues et des moyens de commande pour: (i) contrôler la quantité de données à recevoir du dispositif de communication hôte, (ii) déterminer si la quantité de données à transférer est égale ou infé20 rieure à une quantité prédéterminée. (iii) interdire le moyen de réception en réponse à la quantité de données reçues si celle-ci est égale ou inférieure à la quantité prédéterminée, et (iv) réautoriser le moyen de réception si les données peuvent être 25 transférées vers le périphérique. Le moyen de réception peut être réautorisé en réponse au dispositif de communication hôte indiquant que les données doivent être transférées vers le périphérique. En variante, le périphérique peut contrôler périodiquement si les données peuvent être transférées à partir du dis30 positif du communication hôte. Cela peut se faire sur une base de temps. Le moyen de contrôle peut en outre être disposé pour envoyer un signal de commande vers le dispositif de communication hôte si la quantité de données à transférer est égale ou inférieure au seuil prédéterminé de manière à éviter l'envoi d'autres données par le dispositif de 35 communication hôte. Le périphérique peut également comporter un bus de communication et une ligne d'accusé de réception reliés au canal de données, le moyen de commande étant disposé de manière à: i) transmettre le signal de commande par la ligne d'accusé de réception vers le canal de données, ii) recevoir les données par le bus de communication. Le moyen de commande peut être disposé de façon qu'à 5 l'état initial, il ne détermine pas si la quantité de données à transférer est égale ou inférieure à la quantité déterminée jusqu'après une première période de retard prédéterminée. Le moyen de commande peut être réalisé de façon que s'il est indiqué que la quantité de données à transférer est égale ou inférieure 10 à la quantité prédéterminée, le moyen de commande répète l'opération de détermination une fois de nouveau après un second retard prédéterminé, le moyen de commande étant disposé de façon à exécuter l'opération d'interdiction seulement si la quantité de données à transférer reste égale ou inférieure à la quantité prédéterminée après la seconde période de re15 tard. Le moyen de commande peut être disposé pour maintenir le moyen de réception à l'état interdit pendant une troisième période prédéterminée et à réautoriser le moyen de réception seulement après la fin de la troisième période prédéterminée. De façon préférentielle, le moyen de commande est disposé pour que la quantité prédéterminée de données pour laquelle le moyen de réception est interdit est fixée à zéro. Dessins La présente invention sera décrite ci-après de manière plus 25 détaillée à l'aide d'un exemple de réalisation représenté dans les dessins, dans lesquels: - la figure 1 est un schéma par blocs d'un système de communication comportant un dispositif de communication hôte et un périphérique BT, - la figure 2 est un schéma par blocs plus détaillé du système de communication représenté à la figure 1, - la figure 3 est un ordinogramme montrant les étapes d'un procédé de communication de données. Description d'un mode de réalisation de l'invention Selon la figure 1, un système de communication comporte un dispositif de communication hôte 1 et un périphérique BT 3 " dent bleue " (Bluetooth). Le dispositif de communication hôte 1 de ce mode de réalisation est un agenda PDA. Cette expression sera utilisée dans le res- tant de la description. Le périphérique BT 3 comporte une antenne 5 fixée au périphérique. Il est relié au système PDA 1 par l'intermédiaire d'un canal de données 7. Le périphérique BT 3 autorise l'agenda PDA i à communiquer avec des réseaux de données à distance en utilisant le protocole sans câble BT. Selon la figure 2 qui est un diagramme plus détaillé du système de communication de la figure 1, le canal de données 7 comporte un bus de communication de données 8 et une ligne d'accusé de réception 10. Le bus de communication de données 8 est configuré pour échanger 10 des données entre l'agenda PDA 1 et le périphérique BT 3. De manière précise, le bus de communication de données 8 est relié à une machine d'état ou récepteur 11 destiné à recevoir des données par le bus si l'horloge du récepteur (non représentée) fonctionne. Le signal d'horloge de récepteur qui en résulte est appliqué à la machine d'état 11 par une porte 15 ET21. L'élément de commande central du périphérique BT 3 est une machine d'état d'économie d'énergie 9. La machine 9 reçoit un signal " récepteur actif " de la machine d'état du récepteur 11 si une donnée est reçue par le bus d'échange de données 8. La machine d'état d'économie de 20 puissance 9 fournit en sortie un signal d'autorisation d'horloge à la porte ET 21 de manière à autoriser l'envoi du signal d'horloge du récepteur à la machine d'état du récepteur 11. De plus la machine d'état d'économie de puissance 9 donne en sortie la ligne d'accusé de réception 10 (évoquée cidessus) au canal de données 7. Une horloge 13 est reliée à la machine 25 d'état d'économie de puissance 9 par des lignes d'entrée et de sortie respectives 14, 16. La raison d'être des signaux " récepteur actif " et " horloge autorisée " ainsi que de la ligne d'accusé de réception 10 et des lignes d'entrée et de sortie d'horloge 14, 16 seront explicités ultérieurement. La machine d'état d'économie de puissance 9 est configurée 30 pour appliquer un signal à la ligne d'accusé de réception 10 pour indiquer à l'agenda PDA 1 que les données devraient être envoyées ou non au périphérique BT 3 par le bus d'échange de données 8. La ligne d'accusé de réception 10 est destinée à indiquer que le périphérique BT 3 peut recevoir des données et à indiquer l'information inverse que le périphérique BT ne 35 peut recevoir de données. Une latence est autorisée si le signal inverse est appliqué pour tenir compte de ce que certains registres de l'agenda PDA 1 (en général des registres premier entré/premier sorti (FIFO)) sont vides de données de leur pile pendant une période de temps prédéterminée. La machine d'état d'économie de puissance 9 fonctionne selon un algorithme prédéterminé qui sera décrit ci-après en détail en référence à l'ordinogramme de la figure 3. On note que l'algorithme peut être facilement réalisé sous la forme d'un programme d'ordinateur qui peut 5 être chargé dans un dispositif périphérique d'échange tel qu'un dispositif BT 3 décrit dans ce mode de réalisation. Selon la figure 3, dans l'état initial 23, la machine d'état d'économie de puissance 9 charge la première valeur de données prédéterminée dans l'horloge 13 par la ligne d'entrée 14. La ligne d'accusé de 10 réception 10 indique que les données peuvent être envoyées par l'agenda PDA 1, par le bus de communication de données 8. L'horloge est également autorisée par l'application d'un signal haut " horloge autorisée " à la porte ET 21. Le signal d'horloge résultant est appliqué à la machine d'état du récepteur 11. La première valeur de données prédéterminée enregistrée 15 dans l'horloge 13 se décrémente lorsque la ligne d'accusé de réception 10 est confirmée. Le temps nécessaire à l'horloge 13 pour atteindre le niveau zéro est fixé de manière appropriée pour être égal à la quantité maximale de temps nécessaire à l'agenda PDA 1 pour démarrer la transmission de données disponibles après confirmation de la ligne d'accusé de réception 20 10. Ainsi le système tiendra compte de tout retard qui lui est propre. Ainsi dans l'étape suivante 25, l'horloge 13 est autorisée à terminer avant de passer à l'étape 27 suivante. A la fin du temps de l'horloge 13, la machine d'état d'économie de puissance 9 reçoit un signal par la ligne de sortie 16. Le bus de communication de données 8 peut maintenant 25 transmettre des données au périphérique BT 3. Dans l'étape suivante 27, la machine d'état d'économie de puissance 9 contrôle la machine d'état de récepteur 11 pour voir si des données sont reçues à partir de l'agenda PDA 1. De manière plus précise, la machine d'état d'économie de puissance 9 contrôle le signal " récepteur actif " de la machine d'état de récep30 teur i1; ce signal est au niveau haut en cas de réception de données; il est au niveau bas si aucune donnée ne doit être reçue (même si un seuil non nul est fixé). Si le signal " récepteur actif " est au niveau bas, on passe à l'étape suivante 29 au cours de laquelle la ligne d'accusé de réception 10 est confirmée de manière négative et la machine d'état d'économie de 35 puissance 9 charge la seconde valeur prédéterminée stockée dans le registre de configuration 2 dans l'horloge 13. La déconfirmation de la ligne d'accusé de réception 10 indique à l'agenda PDA 1 qu'il n'y a plus de données à transmettre. Toutefois comme indiqué ci-dessus, comme les registres FIFO de l'agenda PDA 1 peuvent nécessiter d'évacuer après déconfirmation de la ligne d'accusé de réception 10, il faut prévoir une latence pour le système. Cela est assuré par la seconde valeur prédéterminée contenue dans l'horloge 13. Dans 5 l'étape 31, l'horloge 13 décrémente comme précédemment et dans l'étape 33 suivante, à la fin du temps de l'horloge 13, le signal " récepteur actif " est de nouveau contrôlé. Si le signal " récepteur actif" est au niveau haut, alors l'agenda PDA 1 envoie toujours des données vers le périphérique BT 3. 10 Ainsi dans l'étape 39, la ligne d'accusé de réception 10 est confirmée pour autoriser l'agenda PDA 1 à poursuivre l'envoi de données; la machine d'état d'économie de puissance 9 attend alors que le signal " récepteur actif " passe de nouveau au niveau bas. Si le signal " récepteur actif " est au niveau bas, dans l'étape i5 35, la machine d'état d'économie de puissance 9 charge la troisième valeur prédéterminée du troisième registre de confirmation 19 dans l'horloge 13. En même temps, le signal d'horloge est interdit par l'envoi d'un signal d'autorisation d'horloge de niveau bas à la porte ET 21. Le temps nécessaire pour que la troisième valeur prédéterminée soit décrémentée jusqu'à 20 zéro dans l'horloge 13 est le temps maximum pendant lequel le périphérique BT 3 peut rester en veille. Cette valeur est fixée de manière à représenter la latence maximale acceptable dans le transfert de données de l'agenda PDA 1 vers le périphérique BT. Dans cette étape, le périphérique BT 3 passe en mode basse puissance puisque le signal d'horloge est inter25 dit et qu'il n'y a pas de données à recevoir. Dès que l'horloge atteint le niveau zéro dans l'étape 37, l'algorithme revient à l'état initial 23 et le procédé se répète comme ci-dessus. Le procédé et le système décrits ici autorisent le périphérique BT 3 à passer effectivement dans un mode de puissance extra-basse 30 dans lequel les horloges associées au transfert de données peuvent être interdites s'il n'y a pas de données à transmettre. On évite les pertes de données en utilisant un mécanisme d'accusé de réception, câblé, qui arrête l'ordinateur hôte PDA 1 dans l'émission de données pendant que le périphérique BT 3 est en mode basse puissance. La latence dans l'agenda 35 PDA 1 répond à un changement des signaux d'accusé de réception. Comme déjà indiqué, l'algorithme de la figure 3 peut être réalisé par une machine câblée ou par un programme. On peut également envisager une combinaison de circuits et de programmes. Bien que la des- cription ci-dessus concerne un système de communication utilisant le protocole RS232, le procédé s'applique dans les mêmes conditions à des protocoles de transfert de données de type série ou parallèle. TRADUCTION DES FIGURES Figure 2 1 hôte configuration l registre 17 configuration 2 registre 19 configuration 3 registre A ligne d'accusé de réception 11 machine d'état du récepteur B horloge C récepteur actif D autorisation horloge 9 machine d'état d'économique de puissance 13 horloge Figure 3 39 ligne de confirmation d'accusé de réception 23 charger le contenu du registre de configuration 1 dans l'horloge confirmer la ligne d'accusé de réception, autoriser l'horloge pour la machine d'état de récepteur, attendre la fin de l'horloge 27 attendre que le signal de récepteur actif soit neutralisé, 29 déconfirmer la ligne d'accusé de réception, charger l'horloge avec l'autocontenu du registre de configuration 2 31 attendre la fin du décompte de l'horloge, 33 signal récepteur actif et qu'il est coupé ? charger l'horloge avec le contenu du registre de configuration 1 in30 terdire l'horloge pour la machine d'état de récepteur, 37 attendre la fin de l'horloge. REVENDICATIONS ) Procédé de transfert de données à partir d'un dispositif de communication hôte vers un périphérique par un canal de données, le périphérique comportant des moyens de réception pour traiter les données reçues, caractérisé en ce que (y) on contrôle la quantité de données à transférer à partir du dispositif de communication hôte vers le périphérique, (vi) on détermine si la quantité de données à transférer est égale ou inférieure à une quantité prédéterminée, (vii) on interdit le moyen de réception du périphérique en réponse à la quantité de données transférées qui est égale ou inférieure à la quantité prédéterminée, et (viii) on réautorise le moyen de réception du périphérique si les données peuvent être transférées au périphérique. 15 2 ) Procédé selon la revendication 1, caractérisé en ce qu' il comprend en outre l'émission d'un signal de commande du périphérique vers le dispositif de communication hôte si la quantité de données à 20 transférer est égale ou inférieure à la quantité prédéterminée, le dispositif de communication hôte étant configuré pour arrêter l'émission d'autres données en réponse à la réception du signal de commande. ) Procédé selon la revendication 2, 25 caractérisé en ce que le canal de données comporte un bus de communication et une ligne d'accusé de réception, cette ligne servant à transmettre le signal de commande du périphérique vers le dispositif de communication hôte et le bus de communication est utilisé pour envoyer les données du dispositif de 30 communication hôte vers le périphérique. ) Procédé selon l'une des revendications précédentes, caractérisé en ce que dans l'état initial, l'étape (ii) n'est pas éxécutée avant la fin d'un temps de 35 retard prédéterminé. ) Procédé selon l'une des revendications précédentes, caractérisé en ce que s'il est déterminé que la quantité de donnés à transférer est égale ou inférieure à la quantité prédéterminée, on répète l'étape (ii) après un second temps de retard prédéterminé, et l'étape (iii) est exécutée seulement si la quantité de données à transférer reste égale ou inférieure à la quantité prédéterminée. ) Procédé selon la revendication 1, caractérisé en ce qu' après l'étape (iii), le moyen de réception du périphérique reste interdit 10 pendant une troisième période de temps prédéterminée et l'étape (iv) est exécutée seulement après une troisième période de temps prédéterminée. ) Procédé selon la revendication 1, caractérisé en ce que la quantité prédéterminée de données à transférer est égale à zéro. ) Procédé selon la revendication 1, caractérisé en ce que le périphérique reçoit des données en utilisant le protocole RS232. 20 ) Programme d'ordinateur enregistré sur un support utilisable par un ordinateur et comportant des instructions lisibles par un ordinateur pour faire exécuter les étapes du procédé selon l'une quelconque des revendications 1 à 8. ) Périphérique pour recevoir des données d'un dispositif de communication hôte par un canal de données, le périphérique comportant des moyens de réception pour traiter les données reçues et des moyens de commande disposés pour: (i) contrôler la quantité de données à recevoir du dispositif de communication hôte, (ii) déterminer si la quantité de données à transférer est égale ou inférieure à une quantité prédéterminée, (iii) interdire le moyen de réception en réponse à la quantité de données 35 reçues qui est égale ou inférieure à la quantité prédéterminée, et (iv) réautoriser le moyen de réception si les donnés peuvent être transférées au périphérique. ) Périphérique selon la revendication 10, caractérisé en ce que le moyen de commande est en outre réalisé pour envoyer un signal de commande vers le dispositif de communication hôte si la quantité de don5 nées à transférer et égale ou inférieure au seuil prédéterminé, de manière à éviter que d'autres données ne soient envoyées par le dispositif de communication hôte. 12 ) Périphérique selon la revendication i1, io caractérisé en ce qu' il comporte en outre un bus de communication et une ligne d'accusé de réception qui peuvent être reliés au canal de données, le moyen de commande étant prévu pour: (i) transmettre le signal de commande par la ligne d'accusé de réception 15 vers le canal de donnés, (ii) recevoir les données du bus de communication. 13 ) Périphérique selon l'une quelconque des revendications 10 à 12, caractérisé en ce que le moyen de commande est installé pour qu'à l'état initial, il ne détermine pas si la quantité de données à transférer est égale ou inférieure à la quantité prédéterminée, jusqu'à la fin de la première période de temps prédéterminée. 14 ) Périphérique selon l'une quelconque des revendications 10 à 13, caractérisé en ce que le moyen de commande est disposé de façon que s'il est déterminé que la quantité de données à transférer est égale ou inférieure à la quantité prédéterminée, le moyen de commande répète cette opération de détermina30 tion une nouvelle fois après un second retard prédéterminé, le moyen de commande étant disposé de façon à effectuer l'opération d'interdiction seulement si la quantité de données à transférer reste égale ou inférieure à la quantité prédéterminée et après le second retard de temps prédéterminé. ) Périphérique selon l'une quelconque des revendications 10 à 14, caractérisé en ce que le moyen de commande est destiné à maintenir le moyen de réception interdit pendant une troisième période de temps prédéterminée et à rétablir le moyen de réception seulement à la fin de cette troisième période de temps prédéterminée. ) Périphérique selon l'une quelconque des revendications 10 à 15, caractérisé en ce que la quantité prédéterminée de données pour lesquelles le moyen de réception est interdit est égale à zéro. 10