Brevet FR2869426A1 — publié le 20051028

La présente invention concerne la communication par l'intermédiaire d'un bus de données, et en particulier un circuit générateur de signaux d'horloge d'émission, pour l'utilisation dans un dispositif électronique qui communique avec un ordinateur hôte par un bus série. Une carte à circuit intégré (CI), par exemple un micro-ordinateur, peut être réalisée sous la forme d'une puce de semiconducteur mince sur une carte en matière plastique de la taille d'une carte de crédit. La carte à CI est plus stable et a un niveau de sécurité plus élevé qu'une carte magnétique caractéristique ayant une piste magnétique, du fait qu'il est beaucoup plus aisé d'extraire des données d'une carte magnétique que d'une carte dans laquelle un CI est incorporé. De ce fait, les cartes à CI sont de plus en plus utilisées comme des dispositifs de stockage multimédias. Des cartes à CI ont de façon caractéristique des formes et des dimensions semblables à celles de cartes à piste magnétique classiques. Il y a plusieurs types de cartes à CI. Par exemple, il y a des cartes à CI avec contacts, des cartes à CI sans contact et sans fil, et des Cartes à Communication par Couplage à Distance (RCCC pour "Remote Coupling Communication Card"). Une carte sans contact du type à proximité utilise la norme ISO/IEC (International Standard Organization / International Electrotechnical Commission) 14443 pour définir des protocoles pour des caractéristiques physiques, une alimentation radiofréquence (RF), le couplage de signal, l'initialisation et la prévention de collision. Conformément à la norme ISO/IEC 14443, la carte à CI sans contact comprend un CI pour remplir des fonctions de traitement et/ou de mémoire. De plus, la carte à CI sans contact échange des signaux et reçoit une tension d'alimentation par couplage inductif avec un dispositif à couplage de proximité tel qu'un lecteur de cartes, sans avoir à utiliser un élément galvanique. Lorsque le lecteur de cartes est couplé à la carte à CI sans contact, il produit un champ d'énergie RF, et transfère la tension d'alimentation vers la carte à CI sans contact. Une fréquence fc d'un signal RF produit par le lecteur de cartes lorsqu'il est couplé à la carte à CI sans contact est par exemple de 13,56 MHz 7 kHz. Une carte à CI qui a une unité centrale (UC) de traitement pour traiter des données est appelée une carte intelligente. Un bus série universel (USB pour "Universal Serial Bus") a été développé pour normaliser l'interface entre un ordinateur et des dispositifs périphériques tels qu'une souris, une imprimante, un modem et un hautparleur. L'USB est maintenant une interface standard qui est disponible avec presque chaque ordinateur personnel (PC) vendu sur le marché. Une vitesse de transmission de données caractéristique d'un port série est limitée à environ 100 kbit/s, tandis qu'une vitesse de transmission de données maximale de l'USB est d'environ 12 Mbit/s. Par conséquent, la vitesse de transmission de données de l'USB est suffisante pour connecter des dispositifs périphériques à un ordinateur personnel. Par exemple, l'USB peut connecter 127 dispositifs les uns aux autres sous la forme d'une chaîne. Lorsqu'une connexion à partir d'un dispositif périphérique vers un port USB est établie pendant l'utilisation d'un ordinateur personnel, une indication du fait que la connexion a été établie est possible même lorsque le dispositif périphérique n'a pas sa propre alimentation. De plus, lorsque le port USB est utilisé pour connecter des dispositifs périphériques à un ordinateur personnel, les dispositifs périphériques peuvent être couplés au même coupleur, sans nécessiter du logiciel ou du matériel d'installation supplémentaire. Ceci permet donc de réduire le nombre de ports et une taille d'un ordinateur personnel portable. En outre, le montage d'un port USB sur un ordinateur personnel portable est relativement simple. A l'heure actuelle, avec l'augmentation des applications pour des cartes à CI, il y a également une augmentation de la demande de communication entre un ordinateur hôte et une carte à CI par l'intermédiaire d'un port USB. Pour une communication USB à pleine vitesse, un signal d'horloge stable de 12 MHz 0,25% est exigé. Par conséquent, du fait que des dispositifs tels que des ordinateurs personnels, des assistants numériques personnels, des téléphones portables et des appareils photographiques numériques produisent un signal d'horloge stable au moyen d'un oscillateur, ils peuvent supporter un fonctionnement USB à pleine vitesse. De façon générale, la carte à CI, qui ne comprend pas un oscillateur, fonctionne en réponse à des signaux d'horloge reçus. Pour communiquer avec un ordinateur hôte en utilisant l'USB, la carte à CI doit avoir un générateur d'horloge pour la communication de données contenues à l'intérieur. Cependant, il est difficile de stabiliser un oscillateur tel qu'un oscillateur à quartz à l'intérieur d'une telle carte. Il existe donc un besoin portant sur un oscillateur prévu pour l'utilisation sur une carte à CI, capable de produire des signaux d'horloge stables pour la communication sur un bus série. Un aspect de la présente invention consiste à procurer un circuit générateur de signaux d'horloge comprenant: un premier générateur d'horloge pour générer un premier signal d'horloge; un détecteur de période pour détecter une période du signal d'horloge provenant du premier générateur d'horloge, et pour générer un code de commande conformément au résultat détecté; et un second circuit générateur d'horloge pour recevoir le premier signal d'horloge provenant du premier générateur d'horloge, et pour générer un second signal d'horloge conformément au code de commande provenant du détecteur de période. Le détecteur de période comprend: un générateur de signaux d'horloge d'échantillonnage pour recevoir le premier signal d'horloge provenant du premier générateur de signal d'horloge et pour générer une multiplicité de signaux d'horloge d'échantillonnage ayant différentes phases; et une logique de commande pour échantillonner un signal de synchronisation provenant d'un ordinateur hôte en utilisant les signaux d'horloge d'échantillonnage provenant du générateur de signaux d'horloge d'échantillonnage, et pour générer un code de commande correspondant au résultat échantillonné. Chacune des horloges d'échantillonnage a une fréquence supérieure à celle du premier signal d'horloge. La logique de commande comprend un moyen pour stocker une multiplicité de codes de commande. La logique de commande émet un code de commande correspondant au résultat échantillonné parmi la multiplicité de codes de commande. Le second générateur d'horloge comprend un circuit de boucle d'asservissement de phase (ou PLL pour "Phase Locked Loop") pour diviser en fréquence le premier signal d'horloge par un rapport de division de fréquence correspondant au code de commande, et pour fournir en sortie le signal d'horloge divisé, comme un signal d'horloge. Le circuit de PLL est un circuit de PLL fractionnaire. Le rapport de division de fréquence comprend un coefficient N (N étant un entier positif) correspondant à un rapport de division de fréquence entier et un coefficient K (K étant un entier positif) correspondant à un rapport de division de fréquence fractionnaire. Un rapport de division de fréquence du circuit de PLL fractionnaire est N + (K/F) (N, K et F étant des entiers). Le premier générateur d'horloge est un oscillateur résistance condensateur (RC). Selon un aspect supplémentaire de la présente invention, il est proposé un dispositif électronique comprenant: un premier générateur d'horloge pour générer un premier signal d'horloge; un générateur de signaux d'horloge d'échantillonnage pour recevoir le premier signal d'horloge provenant du premier générateur d'horloge et pour générer une multiplicité de signaux d'horloge d'échantillonnage ayant différentes phases; une logique de commande pour échantillonner un signal de synchronisation provenant d'un ordinateur hôte en utilisant les signaux d'horloge d'échantillonnage provenant du générateur de signaux d'horloge d'échantillonnage, et pour générer un code de commande correspondant au résultat échantillonné; et un second générateur d'horloge pour recevoir le premier signal d'horloge provenant du premier générateur d'horloge, et pour générer un second signal d'horloge conformément au code de commande provenant de la logique de commande. Le second générateur d'horloge comprend un circuit de PLL fractionnaire pour multiplier le premier signal d'horloge, un nombre réel de fois, par un rapport de division de fréquence correspondant au code de commande, et pour fournir en sortie un signal d'horloge ayant une fréquence prédéterminée. Le dispositif électronique est une carte à circuit intégré (CI). Selon un autre aspect de la présente invention, il est proposé une carte à circuit intégré (CI) pour communiquer avec un ordinateur hôte par un bus série, la carte à circuit intégré comprenant: un premier générateur d'horloge pour générer un premier signal d'horloge; un détecteur de période pour détecter une période du premier signal d'horloge provenant du premier générateur d'horloge, et pour générer un code de commande conformément au résultat détecté; et un second générateur d'horloge pour recevoir le premier signal d'horloge provenant du premier générateur d'horloge, et pour générer un second signal d'horloge conformément au code de commande provenant du détecteur de période. La logique de commande fournit en sortie un code de commande parmi la multiplicité de codes de commande correspondant à une somme d'un nombre d'impulsions des signaux d'horloge d'échantillonnage, pendant que le signal de synchronisation est à un premier niveau. Le bus série est un bus USB (Universal Serial Bus). La carte à CI est une carte intelligente. Selon encore un autre aspect de la présente invention, il est proposé une carte intelligente pour communiquer avec un ordinateur hôte par un bus série, la carte intelligente comprenant: un récepteur pour recevoir un signal de synchronisation provenant de l'ordinateur hôte par le bus série; un circuit générateur de signaux d'horloge pour recevoir le signal de synchronisation et pour générer un signal d'horloge d'émission; et un émetteur pour émettre des données vers l'ordinateur hôte par le bus série en synchronisme avec le signal d'horloge d'émission provenant du générateur de signaux d'horloge, le générateur de signaux d'horloge incluant: un générateur d'horloge interne pour générer un signal d'horloge interne; un détecteur de période pour détecter une période du signal d'horloge interne provenant du générateur d'horloge interne, et pour générer un code de commande conformément au résultat détecté; et un générateur d'horloge d'émission pour recevoir le signal d'horloge interne provenant du générateur d'horloge interne, et pour générer un signal d'horloge d'émission conformément au code de commande provenant du détecteur de période. Le détecteur de période comprend un premier circuit de PLL pour recevoir le signal d'horloge interne provenant du générateur d'horloge interne et pour générer une multiplicité de signaux d'horloge d'échantillonnage ayant différentes phases; des compteurs pour compter des périodes des signaux d'horloge d'échantillonnage provenant du premier circuit de PLL pendant un intervalle d'activation du signal de synchronisation; et un additionneur pour additionner les périodes des signaux d'horloge d'échantillonnage comptées par les compteurs; et une logique de commande pour fournir en sortie le code de commande correspondant à une sortie de l'additionneur. Le premier circuit de PLL est un circuit de PLL à rang de division entier, et comprend un oscillateur en anneau différentiel pour générer une multiplicité de signaux d'horloge d'échantillonnage ayant différentes phases. Chaque fréquence des signaux d'horloge d'échantillonnage est supérieure à celle du signal d'horloge interne. Le second générateur d'horloge comprend un second circuit de PLL pour diviser en fréquence le signal d'horloge interne, par un rapport de division de fréquence correspondant au code de commande, et est un circuit de PLL fractionnaire. Un procédé pour générer des horloges conforme à la présente invention comprend les étapes suivantes on génère un signal d'horloge interne; on détecte une période du signal d'horloge interne et on génère un code de commande conformément au résultat détecté; et on reçoit le signal d'horloge interne et on génère un signal d'horloge d'émission conformément au code de commande. Un procédé pour commander une carte intelligente pour communiquer avec un ordinateur hôte par un bus série, en conformité avec la présente invention, comprend les étapes suivantes: on reçoit un signal de synchronisation provenant de l'ordinateur hôte par le bus série; on génère un signal d'horloge interne; on détecte une période du signal d'horloge interne en utilisant le signal de synchronisation, et on génère un code de commande conformément au résultat détecté; on reçoit le signal d'horloge interne, et on multiplie le signal d'horloge interne reçu par un rapport en conformité avec le code de commande, pour générer un signal d'horloge constant; et on émet des données vers l'ordinateur hôte par le bus série, en synchronisme avec le signal d'horloge d'émission. Les caractéristiques précitées de la présente invention, ainsi que d'autres, ressortiront davantage de la description détaillée de modes de réalisation préférés de celle-ci, en référence aux dessins annexés dans lesquels: la figure 1 illustre une carte intelligente qui est couplée à un ordinateur hôte par un bus USB ("Universal Serial Bus") en conformité avec un mode de réalisation préféré de la présente invention; la figure 2 illustre une opération d'émission / réception de données entre un ordinateur hôte et un dispositif dans une phase d'établissement; la figure 3 illustre une transaction de sortie pour émettre des données à partir de l'ordinateur hôte vers le dispositif, et une transaction d'entrée pour émettre des données à partir du dispositif vers l'ordinateur hôte; la figure 4 illustre un signal de configuration de synchronisation; la figure 5 illustre un circuit générateur de 15 signaux d'horloge représenté sur la figure 1; la figure 6 illustre un circuit générateur de signaux d'horloge incluant un détecteur de période conforme à un autre mode de réalisation préféré de la présente invention; la figure 7 illustre un générateur de phases multiples du détecteur de période représenté sur la figure 6; la figure 8 illustre un oscillateur commandé par tension (VCO pour "Voltage-Controlled Oscillator") du générateur de phases multiples représenté sur la figure 7; la figure 9 illustre un compteur de périodes du détecteur de période représenté sur la figure 6; la figure 10 illustre le signal de configuration de synchronisation et des signaux d'horloge d'échantillonnage; la figure 11 illustre une boucle d'asservissement de phase (PLL) de rang N fractionnaire; la figure 12 est un tableau de rapports de division en relation avec des fréquences d'un signal d'horloge interne généré par une source d'horloge interne représentée sur la figure 6; la figure 13 est un organigramme montrant un procédé pour générer un signal d'horloge d'émission en conformité avec encore un autre mode de réalisation préféré de la présente invention; la figure 14 est un tableau montrant des changements d'un nombre d'impulsions d'échantillonnage et d'un rapport de division de fréquence conformément à une fréquence d'un signal d'horloge interne généré par la source d'horloge interne représentée sur la figure 6; et la figure 15 illustre une spécification de gigue d'un signal d'horloge d'émission USB qui est en conformité avec un mode de réalisation préféré de la présente invention. La figure 1 illustre une carte intelligente 200 qui est couplée à un ordinateur hôte 100 par l'intermédiaire d'un bus USB ("Universal Serial Bus") 10 en conformité avec un mode de réalisation préféré de la présente invention. L'ordinateur hôte 100 peut être par exemple un ordinateur personnel (PC), un ordinateur du type carnet de notes, un assistant numérique personnel (ou PDA pour "Personal Digital Assistant"), un caméscope, un appareil photographique numérique ou un téléphone portable. Bien que la description qui sera donnée ci-dessous illustre la carte intelligente 200 comme une carte à circuit intégré (CI) couplée à l'ordinateur hôte 100, la carte intelligente 200 peut être n'importe quel dispositif électronique qui ne comporte pas un oscillateur pour générer des signaux d'horloge stables. En se référant à la figure 1, on note que le bus USB 10 transmet des signaux et une source d'énergie par un câble à quatre fils. Par exemple, la source d'énergie est transférée de l'ordinateur hôte 100 vers la carte intelligente 200 par des lignes d'alimentation VCC et GND. Les signaux sont transmis entre deux lignes de signal D+ et D-. Bien que la communication entre l'ordinateur hôte 100 et la carte intelligente 200 qu'on décrira ci-dessous concernera une transmission de données à pleine vitesse entre l'ordinateur hôte 100 et la carte intelligente 200, il est possible d'utiliser diverses vitesses de transmission de données entre l'ordinateur hôte 100 et la carte intelligente 200. Lorsque la carte intelligente 200 accède à l'ordinateur hôte 100, un protocole USB conforme, par exemple, à la norme USB 2.0, définit un transfert de commande pour définir le couplage entre l'ordinateur hôte 100 et la carte intelligente 200. Le transfert de commande est divisé en une phase d'établissement, une phase de données et une phase d'ouverture de session. La figure 2 montre une opération d'émission / réception de données entre l'ordinateur hôte 100 et un dispositif 200 dans une phase d'établissement. La figure 3 illustre une transaction de sortie pour émettre de l'ordinateur hôte 100 vers le dispositif 200, et une transaction d'entrée pour émettre du dispositif 200 vers l'ordinateur hôte 100 pendant l'opération d'émission / réception de la figure 2. Comme représenté sur les figures 2 et 3, pour effectuer l'opération d'émission / réception de données entre l'ordinateur hôte 100 et le dispositif 200, un signal de transmission par paquets, tel qu'un signal de début de trame ou SOF ("Start Of Frame"), ou un signal SETUP, IN ou OUT, est émis par l'ordinateur hôte 100 vers le dispositif 200 avant l'opération d'émission / réception. Une configuration de synchronisation est placée à la tête de chaque paquet, comme représenté par exemple sur la figure 4. Une configuration de synchronisation pour la transmission à pleine vitesse comprend 8 intervalles de symbole. Comme représenté sur la figure 1, un récepteur 210 de la carte intelligente 200 détecte une configuration de synchronisation fournie par l'ordinateur hôte 100, et présente en sortie un signal de configuration de synchronisation SYNC_P, également représenté sur la figure 4. Le récepteur 210 comprend un circuit de restauration 211 qui produit un signal d'horloge qui est deux fois plus rapide qu'un signal d'horloge régulé, et restaure un signal de données reçu de l'ordinateur hôte 100. La carte intelligente 200 comprend également un circuit générateur de signaux d'horloge 220 pour générer un signal d'horloge d'émission stable USB_TX_CLK. Par exemple, le circuit générateur de signaux d'horloge 220 génère un signal d'horloge interne, détecte une période du signal d'horloge généré sur la base du signal de configuration de synchronisation SYNC_P et génère le signal d'horloge d'émission stable USB TX CLK conformément au résultat détecté. La carte intelligente 200 comprend en outre un émetteur 230 qui émet vers l'ordinateur hôte 100 un signal de données qui est synchronisé avec le signal d'horloge d'émission stable USB TX CLK reçu du circuit générateur de signaux d'horloge 220. La figure 5 illustre le circuit générateur de signaux d'horloge 220 représenté sur la figure 1. En se référant à la figure 5, on note que le circuit générateur de signaux d'horloge 220 comprend une source d'horloge interne 221, un détecteur de période 222 et un générateur d'horloge 223. La source d'horloge interne 221 est constituée par exemple d'un oscillateur à résistance - condensateur (RC), et génère un signal d'horloge interne ICLK. En plus de l'oscillateur RC, la source d'horloge interne 221 peut être constituée de n'importe quel type d'oscillateur qui peut être utilisé par un CI. Le détecteur de période 222 détecte une période du signal d'horloge interne I CLK émis par la source d'horloge interne 221, sur la base du signal de configuration de synchronisation SYNC P, et génère un code de commande conformément au résultat détecté. Le générateur d'horloge 223 reçoit le signal d'horloge interne I_CLK et génère le signal d'horloge d'émission USBTXCLK qui est réglé conformément à un code de commande. Le signal d'horloge d'émission USB TX CLK est transféré à l'émetteur 230 représenté sur la figure 1. La figure 6 illustre un circuit générateur de signaux d'horloge 300 incluant un détecteur de période 320. Comme représenté sur la figure 6, une source d'horloge interne 310 peut être un oscillateur RC. Une erreur en pourcentage de l'oscillateur RC est de façon caractéristique de 15%. Par exemple, si la source d'horloge interne 310 est conçue pour générer un signal d'horloge de 10,41 MHz, elle générera en réalité un signal d'horloge interne I_CLK de 10,41 MHz 15%, le pourcentage d'erreur compensant des circonstances externes telles que la température. Un signal d'horloge ayant un grand écart ne convient pas pour la transmission USB. Par conséquent, le circuit générateur de signaux d'horloge 300 convertit un signal d'horloge interne I_CLK ayant un grand écart, généré par la source d'horloge interne 310, pour donner et fournir en sortie un signal d'horloge à l'intérieur d'une plage de 12 MHz 0,25%, définie par exemple par la norme USB 2.0, en utilisant une configuration de synchronisation fournie par un ordinateur hôte. Le détecteur de période 320 comprend un générateur de phases multiples (par exemple un générateur d'horloge d'échantillonnage) 330, un compteur de périodes 340, un registre 350 et une logique de commande 360. La figure 7 illustre le générateur de phases multiples 330 représenté sur la figure 6. En se référant à la figure 7, on note que le générateur de phases multiples 330 comprend un détecteur de phase 331, une pompe de charge 332, un filtre de boucle 333, un oscillateur commandé par tension (VCO) 334 et un diviseur de fréquence 335. Comme représenté sur la figure 7, le détecteur de phase 331 compare une phase du signal d'horloge interne I CLK généré par la source d'horloge interne 310 avec celle d'un signal d'horloge émis par le diviseur de fréquence 335, et il fournit en sortie des signaux de différence de phase UP1 et DN1 correspondant à leur différence de phase. La pompe de charge 332 règle une charge qui est fournie au filtre de boucle 333 conformément aux signaux de différence de phase UP1 et DN1 provenant du détecteur de phase 331. Le filtre de boucle 333 génère une tension continue (DC) proportionnelle à la charge reçue de la pompe de charge 332. L'oscillateur commandé par tension 334 fournit en sortie un signal d'horloge ayant une fréquence correspondant à la tension continue provenant du filtre de boucle 333. Le diviseur de fréquence 335 divise par 8 la fréquence du signal d'horloge émis par l'oscillateur commandé par tension 334. L'oscillateur commandé par tension 334 émet en outre six signaux d'horloge d'échantillonnage CLKl-CLK6 ayant différentes phases. Comme représenté sur la figure 8, l'oscillateur commandé par tension 334 est un oscillateur en anneau différentiel. Les six signaux d'horloge d'échantillonnage CLKl-CLK6 ont la même fréquence et des phases différentes pendant une période. Une phase, par exemple Phase_CLKn, des signaux d'horloge d'échantillonnage CLKl-CLK6, est exprimée par l'équation suivante. [Equation 1] Phase CLKn = SIN ((2n * (8 * I CLK) * t) + nn / 3) avec n = 0, 1, 2, 3, 4, 5 Bien que le nombre de signaux d'horloge représentés comme étant émis par l'oscillateur commandé par tension 334 soit de six, le nombre de signaux d'horloge émis peut être changé conformément à une fréquence du signal d'horloge interne I CLK généré par la source d'horloge interne 310, et à un rapport de division de fréquence du générateur de phases multiples 330. La figure 10 est un diagramme temporel du signal de configuration de synchronisation SYNC P et des signaux d'horloge d'échantillonnage CLKl-CLK6. En se référant à la figure 6, on note que pour détecter une période du signal d'horloge interne I CLK, le compteur de périodes 340 compte le nombre d'impulsions des six signaux d'horloge d'échantillonnage CLKl-CLK6 provenant du générateur de phases multiples 330, pendant que le signal de configuration de synchronisation SYNC_P est un "1" logique, et il fournit en sortie une somme CNT du nombre d'impulsions compté pour les six signaux d'horloge d'échantillonnage CLK1-CLK6. Le signal de configuration de synchronisation SYNC_P est un "1" logique pendant 8 intervalles de symbole et il a une période de 666,6 ns. La figure 9 est un schéma synoptique montrant le compteur de périodes 340 du détecteur de période 320 représenté sur la figure 6. En se référant à la figure 9, on note que le compteur de périodes 340 comprend six compteurs 341 - 346 pour compter respectivement les six signaux d'horloge d'échantillonnage CLKl-CLK6, et un additionneur 347. Les compteurs 341 346 comptent le nombre d'impulsions des signaux d'horloge appliqués en entrée pendant que le signal de configuration de synchronisation SYNC_P est un "1" logique, respectivement. Du fait que la fréquence de chacun des signaux d'horloge d'échantillonnage CLK1-CLK6 est supérieure dans un rapport de 8 à celle du signal d'horloge interne I CLK, une somme CNT du nombre d'impulsions des six signaux d'horloge d'échantillonnage CLK1-CLK6 pendant que le signal de configuration de synchronisation SYNC_P est un "1" logique est identique au nombre d'impulsions obtenu en échantillonnant le signal de configuration de synchronisation SYNC_P par un signal ayant une fréquence (par exemple 8 * 6 = 48) fois supérieure à celle du signal d'horloge interne I CLK. Comme décrit ci-dessus en référence à la figure 6, lorsque le signal de configuration de synchronisation SYNCP a un intervalle représenté par un "1" logique, il a une période de 666,6 ns 0,25% = 666,6 ns 116 ps. Une période d'un symbole du signal de configuration de synchronisation SYNC_P est 83,3 ns 200 ps. En d'autres termes, une période d'un signal d'horloge d'émission USB USBTXCLK que le circuit générateur d'horloge 300 génère est 83,3 ns 200 ps. Lorsque le circuit générateur de signaux d'horloge 300 produit un signal d'horloge ayant une période de 10,41 ns 25 ps, il divise le signal d'horloge ayant la période de 10,41 ns 25 ps pour obtenir un signal d'horloge d'émission USB_TX_CLK ayant une période de 838,3 ns 200 ps. Lorsqu'une période du signal d'horloge généré est de 10,375 ns, qui est la valeur minimale de 10,41 ns 25 ps, et le signal de configuration de synchronisation SYNC_P est un "1" logique, des impulsions de 666,6/10,375 = 64,25 ns sont présentes. Au contraire, lorsqu'une période du signald'horloge généré est de 10,425 ns, qui est la valeur maximale de 10,41 ns 25 ps, et le signal de configuration de synchronisation SYNC_P est un "1" logique, des impulsions de 666,6/10,425 = 63,94 ns sont présentes. Par conséquent, une erreur de 64,25 ns - 63,94 ns, c'est-à-dire environ 0, 3 ns, est présente. Ainsi, pour distinguer une erreur d'environ 0,3 ns, il est nécessaire de distinguer un ordre d'environ 0,16 en générant des signaux d'horloge d'échantillonnage CLK1-CLK6 ayant six phases, à partir d'un signal ayant une période de 10,41 ns 25 ps. Une boucle d'asservissement de phase (PLL) à division de fréquence par 48 peut être substituée au générateur de phases multiples 330 représenté sur la figure 6. Cependant, une boucle d'asservissement de phase de fréquence élevée conduit de façon caractéristique à des difficultés au moment de la conception d'un CI. Par conséquent, conformément à un mode de réalisation préféré de la présente invention, on peut utiliser une boucle d'asservissement de phase à division de fréquence par 8 à la place de la boucle d'asservissement de phase à division de fréquence par 48 pour générer les signaux d'horloge d'échantillonnage CLK1-CLK6 ayant différentes phases, ce qui permet d'avoir un processus de conception plus aisé pour un CI. En retournant à la figure 6, on note que la logique de commande 360 fournit en sortie des coefficients N et K correspondant à une somme du nombre d'impulsions appliquées à un diviseur de fréquence fractionnaire (par exemple une boucle d'asservissement de phase de rang N fractionnaire) 370. Les coefficients N et K correspondent à la somme du nombre d'impulsions stocké dans une table 361. La table 361 est formée par un dispositif de stockage tel qu'une mémoire morte (ou ROM). La logique de commande 360 peut être composée de portes logiques sans la table 361, pour fournir en sortie les coefficients N et K correspondant à une somme du nombre d'impulsions. La logique de commande 360 peut être modifiée selon diverses formes. Le diviseur de fréquence fractionnaire 370 divise en fréquence le signal d'horloge interne ICLK par un rapport de division de fréquence correspondant aux coefficients N et K, et fournit en sortie un signal d'horloge d'émission USB, USB_TX_CLK, ayant par exemple une fréquence de 12 MHz 0,25%. La figure 11 illustre en détail le diviseur de fréquence fractionnaire 370. En se référant à la figure 11, on note que le diviseur de fréquence fractionnaire 370 comprend un détecteur de phase 371, une pompe de charge 372, un filtre de boucle 373, un oscillateur commandé par tension (VCO) 374, un diviseur de fréquence 375, un modulateur delta sigma 376, un circuit d'extension de modulo 377 et un diviseur à double modulo 378. Le détecteur de phase 371 compare une phase d'un signal d'horloge de rétroaction provenant du diviseur à double modulo 378 avec une phase du signal d'horloge interne I CLK provenant de la source d'horloge interne 310, et il fournit en sortie des signaux de différence de phase UP2 et DN2. La pompe de charge 372 règle une charge à fournir au filtre de boucle 373 conformément aux signaux de différence de phase UP2 et DN2 provenant du détecteur de phase 371. Le filtre de boucle 373 génère une tension continue proportionnelle à la charge provenant de la pompe de charge 372. L'oscillateur commandé par tension 374 fournit en sortie un signal d'horloge Fvoc d'une fréquence correspondant à la tension continue provenant du filtre de boucle 373. Le diviseur de fréquence fractionnaire 370 divise de façon fractionnaire le signal d'horloge interne 1 _CLK sur la base des coefficients N et K correspondant à une somme du nombre d'impulsions que fournit le compteur de périodes 340. De façon générale, un diviseur de fréquence réalisé par un circuit numérique de bascules a un rapport de division de fréquence de 2n tel que 2, 4, 8, 16, .... Dans un mode de réalisation préféré de la présente invention, le diviseur de fréquence fractionnaire 370 peut diviser la fréquence d'un signal d'horloge par un rapport de division de fréquence qui est un nombre naturel, un rapport de division de fréquence fractionnaire, ou un rapport de division de fréquence qui est un nombre exponentiel (par exemple 2n). Si le rapport de division de fréquence du diviseur de fréquence à double modulo 378 est "pa + b", en fixant une valeur de "p" et en réglant "a" et "b", avec par exemple (0 b a), on peut obtenir des signaux d'horloge ayant des rapports de division de fréquence qui sont des nombres naturels. Un signal d'horloge ayant un rapport de division de fréquence fractionnaire (ou décimal) peut être obtenu en changeant périodiquement "b" au moyen du modulateur delta - sigma 376. Lorsqu'une fréquence du signal d'horloge interne ICLK est 10,41 MHz 14% et une fréquence désirée Fvco est 12 MHz 0,25%, la table 361 relative à un coefficient de rapport de division de fréquence N + K/F 'correspondant à la fréquence du signal d'horloge interne I CLK, est représentée sur la figure 12. La fréquence Fvco est exprimée par l'équation suivante: [Equation 2] Fvco = FI CLK (N + K/F) dans laquelle N, K et F sont des entiers positifs. En retournant à la figure 10, on note que si une période du signal d'horloge interne I_CLK est Ti, et chaque fréquence des signaux d'horloge d'échantillonnage CLK1--CLK6 est T2, alors pendant que le signal de configuration de synchronisation SYNC_P est un "1" logique, on obtient un diviseur à partir de Tl/10,41 ns en utilisant une somme CNT (=(666,6 ns/T2)*6) du nombre d'impulsions dans les signaux d'horloge d'échantillonnage CLKI-CLK6. Par exemple, lorsque la somme CNT du nombre d'impulsions dans les signaux d'horloge d'échantillonnage CLKI-CLK6 obtenu par le compteur de périodes 340 est par exemple 381, la logique de commande 360 émet respectivement 8 et 18 pour les coefficients N et K. Dans l'Equation 2, lorsque le modulateur delta - sigma 376 est conçu avec 8 bits, Fvco = FI cLK (N + K/28), et une résolution est 1/28 = 1/256 = 0,0039. Lorsque K = 18, le modulateur delta - sigma 376 émet séquentiellement 18 fois 1 et 238 fois 0 (par exemple 256 - 18 = 238). Le circuit d'extension de modulo 377 reçoit N de la table de division 361 et un 0 ou un 1 du modulateur delta - sigma 376, et il fournit en sortie "a" et "b". Par exemple, lorsque N = 8 et p = 2, a = 4. Ensuite, "b" est fixé à 0 ou 1 par le modulateur delta - sigma 376. Le diviseur à double modulo 378 obtient "pa + b" sur la base de "a" et "b" prpvenant du circuit d'extension de modulo 377. Le diviseur à double modulo 378 divise également par "pa + b" la fréquence d'un signal de sortie Fvco de l'oscillateur commandé par tension 374, et émet ce signal vers le détecteur de phase 371. Lorsque N = 8 et K = 18, le signal de sortie Fvco de l'oscillateur commandé par tension 374 est divisé en fréquence (par exemple dans le rapport 8 + 18/256) en répétant des opérations du modulateur delta - sigma 376, du circuit d'extension de modulo 377 et du diviseur à double modulo 378. Le circuit générateur de signaux d'horloge 300 peut obtenir un signal d'horloge d'émission USB TX CLK d'une fréquence désirée sans avoir à diminuer une fréquence du signal d'horloge interne I_CLK au moyen du diviseur de fréquence fractionnaire 370. Par conséquent, le filtre de boucle 373 ayant une grande largeur de bande peut être conçu de façon à avoir un temps de verrouillage court. Ainsi, lorsque la fréquence du signal d'horloge interne ICLK est supérieure à une fréquence désirée à cause d'une température d'environnement ou d'une tension d'alimentation, une somme du nombre d'impulsions émises par le détecteur de périodes 320 est réduite, ce qui conduit à une augmentation d'une valeur du coefficient K. Au contraire, lorsque la fréquence du signal d'horloge interne I_CLK est inférieure à une fréquence désirée, la somme du nombre d'impulsions émises par le détecteur de période 320 augmente, ce qui occasionne une diminution d'une valeur du coefficient K, grâce à quoi une fréquence du signal de sortie Fvco de l'oscillateur commandé par tension 374 est maintenue à une valeur constante. En d'autres termes, bien que des circonstances externes telles qu'une température ou une tension d'alimentation puissent varier, la fréquence du signal de sortie Fvco de l'oscillateur commandé par tension 374 est maintenue constante. Le diviseur de fréquence 375 divise par 8 la fréquence du signal de sortie Fvco de l'oscillateur commandé par tension 374 et fournit en sortie les signaux divisés en fréquence, sous la forme du signal d'horloge d'émission USB_TX_CLK. L'émetteur 230 représenté sur la figure 1 émet des données vers l'ordinateur hôte 100 par le bus USB 10 en synchronisme avec le signal d'horloge d'émission USB TX CLK. Lorsqu'une plage de changement de fréquence du signal d'horloge interne I_CLK généré par la source d'horloge interne 310 est grande, une valeur du coefficient N ainsi qu'une valeur du coefficient K doivent être changées. Ceci conduit à une conception complexe pour la logique de commande 360. Pour simplifier la conception de la logique de commande 360, un registre de valeur de décalage 350, comme représenté sur la figure 6, est incorporé pour changer la valeur du coefficient K. La figure 13 est un organigramme illustrant un procédé pour générer un signal d'horloge d'émission en conformité avec un autre mode de réalisation préféré de la présente invention. En se référant aux figures 6 et 13, on note que la source d'horloge interne 310 produit un signal d'horloge interne ICLK (étape S400). Le détecteur de période 320 reçoit le signal d'horloge interne I_CLK provenant de la source d'horloge interne 310, génère une multiplicité de signaux d'horloge d'échantillonnage ayant différentes phases, échantillonne un signal de configuration de synchronisation SYNC_P, et détecte une période du signal d'horloge interne I_CLK d'après le nombre CNT d'impulsions du signal échantillonné (étape S410). Le détecteur de période 320 génère en outre des coefficients N et K correspondant à la période détectée du signal d'horloge interne I_CLK (étape S420). Le diviseur de fréquence fractionnaire 370 fournit en sortie un rapport de division de fréquence "pa + b" correspondant aux coefficients N et K (étape S430), et multiplie le signal d'horloge interne I_CLK par le rapport de division de fréquence "pa + b" pour fournir en sortie un signal d'horloge d'émission USB_TX_CLK (étape S440). La figure 14 est un tableau qui montre des changements du nombre CNT d'impulsions d'échantillonnage CNT et d'un rapport de division de fréquence N + K/F en fonction d'une fréquence d'un signal d'horloge interne I CLK généré par la source d'horloge interne 310 représentée sur la figure 6. Lorsque la fréquence du signal d'horloge interne 1 CLK augmente, le nombre CNT d'impulsions d'échantillonnage diminue, ce qui occasionne une augmentation du rapport de division de fréquence N + K/F. Au contraire, lorsque la fréquence du signal d'horloge interne I_CLK diminue, le nombre CNT d'impulsions d'échantillonnage augmente, ce qui occasionne une diminution du rapport de division de fréquence N + K/F. Le circuit générateur de signaux d'horloge 300 de la figure 6 peut ainsi réaliser une rétroaction négative. Il en résulte que le circuit générateur de signaux d'horloge 300 peut obtenir une fréquence stable. On va maintenant envisager en référence à la figure 15 une spécification de gigue d'un signal d'horloge d'émission USB, USBTXCLK, pour l'utilisation avec un mode de réalisation préféré de la présente invention. Comme représenté sur la figure 15, une vitesse d'émission d'un signal d'émission / réception est par exemple de 12 MHz 0,25%, et une gigue d'une transition consécutive est N*TPERIODE + TXDJI. D'après, par exemple, la norme USB 2.0, lorsqu'un "1" logique est continuellement présent pendant 6 transitions, un bourrage avec un "0" logique est effectué pour la régulation. Dans ce cas, la gigue d'une transition consécutive est 7*TPERIODE 3,5 ns, et du fait qu'une gigue de transmission d'une paire JK est N*TPERIODE + TXDJ2, la gigue d'une transition consécutive devient 14*T=ERIODE 4 ns. Conformément à un mode de réalisation préféré de la présente invention, un signal d'horloge convenant pour la communication USB, en conformité avec des normes USB telles que la norme USB 2.0, peut être produit par un circuit générateur de signaux d'horloge sans utiliser un générateur d'horloge de précision tel qu'un oscillateur à quartz. De plus, le circuit générateur de signaux d'horloge peut être utilisé dans un dispositif électronique pour produire un signal d'horloge stable convenant pour la communication sur un bus série. En outre, le circuit générateur de signaux d'horloge peut être utilisé dans une carte à CI capable de communiquer avec un ordinateur hôte par l'intermédiaire d'un bus USB. Il va de soi que de nombreuses modifications peuvent être apportées au dispositif et au procédé décrits et représentés, sans sortir du cadre de l'invention. REVENDICATIONS 1. Circuit générateur de signaux d'horloge, caractérisé en ce qu'il comprend: un premier générateur d'horloge (310) pour générer un premier signal d'horloge (ICLK); un détecteur de période (320) pour détecter une période du premier signal d'horloge (I_CLK) provenant du premier générateur d'horloge (310), et pour générer un code de commande conformément à la période détectée; et un second générateur d'horloge (370) pour recevoir le premier signal d'horloge (I_CLK) provenant du premier générateur d'horloge (310), et pour générer un second signal d'horloge (USBTXCLK) conformément au code de commande reçu du détecteur de période (320). 2. Circuit générateur de signaux d'horloge selon la revendication 1, caractérisé en ce que le détecteur de période (320) comprend: un générateur de signaux d'horloge d'échantillonnage (330) pour recevoir le premier signal d'horloge (I_CLK) provenant du premier générateur de signal d'horloge (310) et pour générer une multiplicité de signaux d'horloge d'échantillonnage (CLK1-CLK6) ayant différentes phases; et une logique de commande (340, 360) pour échantillonner un signal de synchronisation (SYNC P) provenant d'un ordinateur hôte en utilisant les signaux d'horloge d'échantillonnage provenant du générateur de signaux d'horloge d'échantillonnage (330), et pour générer un code de commande correspondant au signal échantillonné. 3. Circuit générateur de signaux d'horloge selon la revendication 2, caractérisé en ce que chacune des horloges d'échantillonnage (CLK1-CLK6) a une fréquence supérieure à celle du premier signal d'horloge (I_CLK). 4. Circuit générateur de signaux d'horloge selon la revendication 2, caractérisé en ce que la logique de commande (340, 360) comprend un dispositif de stockage (361) pour stocker une multiplicité de codes de commande. 5. Circuit générateur de signaux d'horloge selon la revendication 4, caractérisé en ce que la logique de commande (340, 360) fournit en sortie un code de commande correspondant au signal échantillonné, parmi la multiplicité des codes de commande. 6. Circuit générateur de signaux d'horloge selon la revendication 1, caractérisé en ce que le second générateur d'horloge (370) comprend une boucle d'asservissement de phase (PLL) pour diviser la fréquence du premier signal d'horloge (I_CLK) par un rapport de division de fréquence correspondant au code de commande, et pour fournir en sortie le signal d'horloge divisé en tant que signal d'horloge (USE TX CLK) . 7. Circuit générateur de signaux d'horloge selon la revendication 6, caractérisé en ce que la boucle d'asservissement de phase (370) est une boucle d'asservissement de phase fractionnaire. 8. Circuit générateur de signaux d'horloge selon la revendication 7, caractérisé en ce que le rapport de division de fréquence comprend un coefficient N (N étant un entier positif) correspondant à un rapport de division de fréquence entier et un coefficient K (K étant un entier positif) correspondant à un rapport de division de fréquence fractionnaire. 9. Circuit générateur de signaux d'horloge selon la revendication 8, caractérisé en ce qu'un rapport de division de fréquence de la boucle d'asservissement de phase fractionnaire (370) est N + (K/F) (N, K et F étant des entiers). 10. Circuit générateur de signaux d'horloge selon la revendication 1, caractérisé en ce que le premier générateur d'horloge (310) est un oscillateur à résistance -condensateur (RC). 11. Circuit générateur de signaux d'horloge selon la revendication 1, caractérisé en ce que le circuit générateur de signaux d'horloge est placé sur une carte à circuit intégré (CI) (200) pour communiquer avec un ordinateur hôte (100) par l'intermédiaire d'un bus série (10). 12. Circuit générateur de signaux d'horloge selon la revendication 11, caractérisé en ce que la logique de commande (340, 360) fournit en sortie un code de commande parmi une multiplicité de codes de commande correspondant à une somme d'un nombre d'impulsions des signaux d'horloge d'échantillonnage (CLK1-CLK6) pendant que le signal de synchronisation (SYNC_P) est à un premier niveau. 13. Circuit générateur de signaux d'horloge selon la revendication 11, caractérisé en ce que le bus série est 10 un bus USB (Universal Serial Bus). 14. Dispositif électronique, caractérisé en ce qu'il comprend: un premier générateur d'horloge (310) pour générer un premier signal d'horloge (I_CLK); un générateur de signaux d'horloge d'échantillonnage (330) pour recevoir le premier signal d'horloge (ICLK) provenant du premier générateur d'horloge (310) et pour générer une multiplicité de signaux d'horloge d'échantillonnage (CLKI-.CLK6) ayant différentes phases; une logique de commande (340, 360) pour échantillonner un signal de synchronisation (SYNC P) provenant d'un ordinateur hôte (100) en utilisant les signaux d'horloge d'échantillonnage (CLK1-.CLK6) provenant du générateur de signaux d'horloge d'échantillonnage (330), et pour générer un code de commande correspondant au signal échantillonné; et un second générateur d'horloge (370) pour recevoir le premier signal d'horloge (I_CLK) provenant du premier générateur d'horloge (310), et pour générer un second signal d'horloge (USB TX CLK) conformément au code de commande provenant de la logique de commande (340, 360). 15. Dispositif électronique selon la revendication 14, caractérisé en ce que le second générateur d'horloge (370) comprend une boucle d'asservissement de phase fractionnaire pour multiplier le premier signal d'horloge un nombre réel de fois par un rapport de division de fréquence correspondant au code de commande, et pour fournir en sortie un signal d'horloge (USB_TX_CLK) ayant une fréquence prédéterminée. 16. Dispositif électronique selon la revendication 14, caractérisé en ce que le dispositif électronique est une carte à circuit intégré (CI) (200). 17. Carte intelligente (200) pour communiquer avec un ordinateur hôte (100) par un bus série (10), la carte intelligente comprenant: un récepteur (210) pour recevoir un signal de synchronisation provenant de l'ordinateur hôte (100) par le bus série (10); un circuit générateur de signaux d'horloge (220) pour recevoir le signal de synchronisation (SYNC_P) et pour générer un signal d'horloge d'émission (USB_TX_CLK); et un émetteur (230) pour émettre des données vers l'ordinateur hôte (100) par le bus série (10) en synchronisme avec le signal d'horloge d'émission (USBTXCLK) provenant du circuit générateur de signaux d'horloge (220), caractérisé en ce que le circuit générateur de signaux d'horloge (220) comprend un générateur d'horloge interne (221) pour générer un signal d'horloge interne (I_CLK); un détecteur de période (222) pour détecter une période du signal d'horloge interne (I CLK) provenant du générateur d'horloge interne (221), et pour générer un code de commande conformément au résultat détecté; et un générateur d'horloge d'émission (223) pour recevoir le signal d'horloge interne (I_CLK) provenant du générateur d'horloge interne (221), et pour générer un signal d'horloge d'émission (USB_TX_CLK) conformément au code de commande provenant du détecteur de période (222). 18. Carte intelligente selon la revendication 17, caractérisée en ce que le détecteur de période (222, 320) comprend: une première boucle d'asservissement de phase (330) pour recevoir le signal d'horloge interne (I_CLK) provenant du générateur d'horloge interne (221, 310) et pour générer une multiplicité de signaux d'horloge d'échantillonnage (CLK1-CLK6) ayant différentes phases; des compteurs (341-346) pour compter des périodes des signaux d'horloge d'échantillonnage (CLK1-CLK6) provenant de la première boucle d'asservissement de phase (330) pendant un intervalle d'activation du signal de synchronisation (SYNCP); un additionneur (347) pour additionner les périodes des signaux d'horloge d'échantillonnage (CLK1-CLK6) comptées par les compteurs (341-346); et une logique de commande (360) pour fournir en sortie le code de commande correspondant à un signal de sortie (CNT) de l'additionneur (347). 19. Carte intelligente selon la revendication 18, caractérisée en ce que la première boucle d'asservissement de phase (330) est une boucle d'asservissement de phase à rang de division entier. 20. Carte intelligente selon la revendication 19, caractérisée en ce que la première boucle d'asservissement de phase (330) comprend un oscillateur en anneau différentiel (334) pour générer une multiplicité de signaux d'horloge d'échantillonnage (CLK1-CLK6) ayant différentes phases. 21. Carte intelligente selon la revendication 17, caractérisée en ce que le second générateur d'horloge (223, 370) comprend une seconde boucle d'asservissement de phase pour diviser la fréquence du signal d'horloge interne (I_CLK) par un rapport de division de fréquence correspondant au code de commande. 22. Carte intelligente selon la revendication 21, caractérisée en ce que la seconde boucle d'asservissement de phase (370) est une boucle d'asservissement de phase fractionnaire. 23. Procédé pour générer des horloges, caractérisé en ce qu'il comprend les étapes suivantes: on génère un signal d'horloge interne (I_CLK); on détecte une période du signal d'horloge interne (I_CLK) et on génère un code de commande conformément à la période détectée; et on reçoit le signal d'horloge interne (I_CLK) et on génère un signal d'horloge d'émission (USB TX CLK) conformément au code de commande. 24. Procédé pour commander une carte intelligente (200) pour communiquer avec un ordinateur hôte (100) par un bus série (10) , le procédé étant caractérisé en ce qu'il comprend les étapes suivantes: on reçoit un signal de synchronisation (SYNC_P) provenant de l'ordinateur hôte (100) par le bus série (10); on génère un signal d'horloge interne (I_CLK) ; on détecte une période du signal d'horloge interne (I_CLK) en utilisant le signal de synchronisation (SYNC P), et on génère un code de commande conformément à la période détectée; on reçoit le signal d'horloge interne (I_CLK), et on multiplie le signal d'horloge interne reçu par un rapport conforme au code de commande, pour générer un signal d'horloge d'émission (USB TX CLK); et on émet des données vers l'ordinateur hôte (100) par le bus série (10) en synchronisme avec le signal d'horloge d'émission (USB TX CLK).