FR 2703534 A1 19941007 FR 9303770 A 19930331 Dispositif de contrôle numérique d'un oscillateur numérique variable. Le domaine de l'invention est celui de la récupération de rythme et, plus généralement, du contrôle d'un oscillateur numérique. L'invention trouve de nombreuses applications dans les circuits numériques. Elle peut s'appliquer en particulier à la récupération d'une horloge à partir d'un signal de données reçu, et à l'augmentation de la fréquence d'une horloge d'entrée. I1 est courant de transmettre des signaux de données sans horloge d'accompagnement, notamment dans le cas des transmissions à haut débit. Ceci permet d'une part de limiter les échanges de signaux, et donc le nombre de connexions nécessaires, et d'autre part d'éviter les imprécisions de phasage relatif entre l'horloge et les données que peuvent introduire les conditions de transmission. I1 est alors nécessaire de retrouver l'horloge à partir du seul train de données, pour fournir aux circuits de réception cette horloge et les données régénérées en phase. Ce traitement est classiquement effectué par une boucle à verrouillage, ou PLL ("Phase Lock Loop", en anglo-saxon). Une telle boucle comprend un oscillateur contrôlé en tension (VCO :"Voltage Controlled Oscillator" en anglosaxon), un comparateur de phase et/ou de fréquence et un filtre. L'ensemble de ces moyens fonctionnent de façon analogique, même dans les circuits numériques. Cela pose de nombreux problèmes. On constate tout d'abord que ces PLL sont sensibles au process de fabrication, lorsqu'elles sont implantées dans des circuits intégrés. I1 est donc nécessaire d'effectuer des réglages particuliers pour chaque boucle produite. De même, les paramètres de boucle sont très dépendants du process, et difficile à corriger. Par ailleurs, le filtre analogique et les moyens d'asservissement nécessitent des composants extérieurs. Ces composants extérieurs présentent plusieurs inconvénients, tels que l'encombrement, la nécessité de connexions particulières, l'absence de précision,... On connaît également des boucles à verrouillage de phase numérique. Cependant, pour des liaisons à haut débit, il ne s'agit dans la pratique que de simples déphaseurs asservis, qui ont besoin d'une horloge de référence présentant la même fréquence, mais une phase quelconque. Les PLL réelles entièrement numériques connues ne peuvent fonctionner qu'à basse fréquence. La présente invention a pour objectif de pallier ces différents inconvénients de l'état de la technique. Plus précisément, un objectif de l'invention est de fournir un dispositif de contrôle d'un oscillateur numérique variable qui permette un contrôle très précis et très stable de la fréquence d'oscillation de l'oscillateur. Ainsi, l'invention a pour objectif de fournir un tel dispositif, qui maintienne l'accrochage d'une boucle à verrouillage de phase à partir d'un signal de données reçu, même lorsque celui-ci présente une longue série de données sans aucune transition. Un autre objectif de l'invention est de fournir un tel dispositif, qui fonctionne à de hauts débits, et par exemple à un débit de l'ordre de 150 Mbits/s. Un objectif important de l'invention est de fournir un tel dispositif permettant un contrôle très précis de la fréquence d'oscillation, et notamment un contrôle avec une précision supérieure à celle que représente le pas élémentaire de variation de I'oscillateur variable. Un autre objectif est encore de fournir un tel dispositif, qui contrôle la phase du signal délivré par l'oscillateur. L'invention a aussi pour objectif de fournir un tel dispositif, qui assure d'une part un accrochage rapide d'une boucle à verrouillage, puis un contrôle précis de la phase du signal délivré. L'invention a également pour objectif de fournir un tel dispositif, qui soit de réalisation simple et d'encombrement réduit. En particulier, un objectif est de réduire le nombre de connexions (internes et externes au composant portant le dispositif) nécessaires au dispositif. Un autre objectif de l'invention est de fournir un tel dispositif, qui soit complètement intégrable dans un circuit intégré. Encore un autre objectif de l'invention est de fournir un tel dispositif, supprimant ou limitant les problèmes dus aux parasites de commutation pouvant apparaître dans l'oscillateur variable. Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints selon l'invention à l'aide d'un dispositif de contrôle de la fréquence d'oscillation d'un oscillateur numérique variable, ledit oscillateur délivrant un signal d'horloge de sortie, ledit dispositif étant constitué de moyens entièrement numériques de contrôle de ladite fréquence d'oscillation, commandant l'augmentation, le maintien ou la réduction de ladite fréquence d'oscillation, en fonction d'une comparaison entre au moins un signal d'entrée et ledit signal d'horloge de sortie. Ainsi, selon l'invention, tous les éléments de la récupération de rythme sont numériques, et peuvent donc être implantés dans un circuit intégré. Aucun élément analogique interne ou externe n'est nécessaire. L'invention prévoit de nombreuses caractéristiques secondaires avantageuses, permettant notamment d'augmenter l'efficacité, la précision ou la stabilité du dispositif. Ces différentes caractéristiques peuvent être mises en oeuvre indépendamment, ou être prises en combinaison. De façon avantageuse, ledit dispositif peut ainsi comprendre des moyens de comparaison de fréquences, comparant ladite fréquence d'oscillation avec la fréquence d'un signal d'horloge de référence et délivrant un premier signal de contrôle dudit oscillateur numérique variable, et agissant sur ledit oscillateur de façon que ladite fréquence d'oscillation soit proportionnelle à la fréquence dudit signal d'horloge de référence. Ce comparateur de fréquences peut notamment être utilisé pour l'accrochage d'une boucle, le signal de sortie étant comparé à une horloge plésiochrone. Préférentiellement, la fréquence dudit signal d'horloge de référence est sensiblement un sous-multiple de ladite fréquence d'oscillation. Dans ce cas, avantageusement, lesdits moyens de comparaison de fréquences comprennent un compteur, comptant le nombre de périodes dudit signal d'horloge de référence comprises dans une période dudit signal d'horloge de sortie, et des premiers moyens de décodage délivrant ledit premier signal de contrôle, en fonction dudit nombre de périodes comptées par ledit compteur. Si la fréquence d'oscillation est sensiblement égale à N fois la fréquence du signal d'horloge, le premier signal de contrôle porte avantageusement - une demande d'augmentation de ladite fréquence d'oscillation, si ledit nombre de périodes est supérieur à N-1; - une demande de maintien de ladite fréquence d'oscillation, si ledit nombre de périodes est égal à N1 ; et - une demande de diminution de ladite fréquence d'oscillation, si ledit nombre de périodes est inférieur à N-l. Le gain de la boucle réalisé peut être aisément ajusté, en modifiant la périodicité des corrections (ici :1 coup sur N). Avantageusement, lesdits moyens de comparaison de fréquences comprennent des moyens de mise en phase dudit signal d'horloge de référence et dudit signal d'horloge de sortie, ladite comparaison étant effectuée sur lesdits signaux mis en phase. Préférentiellement, lesdits moyens de mise en phase comprennent au moins une bascule recevant ledit signal d'horloge de référence et contrôlée par ledit signal d'horloge de sortie. En régime permanent, ce comparateur de fréquences assure une erreur statique nulle, du fait de l"'intégration" assurée par le compteur. Il est à noter que ce comparateur de fréquences permet l'asservissement de l'horloge de sortie à tout multiple ou sous-multiple, entier ou fractionnaire, de cette horloge de sortie, en introduisant un diviseur sur la fréquence de l'horloge de référence et en changeant les calculs effectués par les premiers moyens de calcul. Les moyens de contrôle numériques peuvent également comprendre des moyens de comparaison de phases, comparant la phase dudit signal d'horloge de sortie avec la phase d'un signal de référence et délivrant un second signal de contrôle dudit oscillateur numérique variable agissant de façon que la phase dudit signal de sortie soit asservie à la phase dudit signal de référence. Dans un mode de réalisation préférentiel de l'invention, ledit signal de référence est un signal de données, et ledit second signal de contrôle est généré de façon que les fronts montants dudit signal de sortie apparaissent sensiblement au milieu de chaque donnée dudit signal de données. On assure ainsi une bonne fiabilité des traitements à suivre. De façon avantageuse, lesdits moyens de comparaison de phases comprennent des moyens d'échantillonnage dudit signal de référence, échantillonnant ledit signal de référence sous le contrôle dudit signal d'horloge de sortie, et délivrant un jeu d'au moins trois échantillons à chaque période dudit signal d'horloge de sortie et des seconds moyens de décodage, associant à chacun desdits jeux d'au moins trois échantillons consécutifs une information représentative de l'écart de phase entre ledit signal d'horloge de sortie et ledit signal de référence. On obtient ainsi un comparateur de phases particulièrement simple. On constate toutefois, dans la pratique, que cette information représentative de l'écart de phase ne doit pas, préférentiellement, agir directement sur l'oscillateur variable. Sinon, le système risque d'être instable (du fait que l'on introduit un retard pur et une intégration due au contrôle de la phase et à l'action sur la fréquence). Avantageusement, lesdits moyens de comparaison de phases comprennent des premiers moyens de calcul d'une séquence de contrôle de phase comprenant au moins deux commandes consécutives formant ledit second signal de contrôle, ladite séquence induisant, en moyenne, un décalage de la phase dudit signal de sortie. Préférentiellement, ladite séquence de contrôle de phase comprend un même nombre de commandes d'augmentation de ladite fréquence d'oscillation et de commandes de diminution de ladite fréquence d'oscillation. En d'autres termes, on agit ainsi directement sur la phase (sur plusieurs périodes), en induisant une commande d'augmentation de fréquence, suivie d'une commande de diminution de fréquence. Dans un mode de réalisation particulier, chacune desdites séquences de contrôle de phase comprend quatre commandes, chacune desdites commandes correspondant à une période dudit signal d'horloge de sortie. De façon avantageuse, lesdits premiers moyens de calcul comprennent un accumulateur alimenté par une série de M informations consécutives représentatives chacune de l'écart de phase à un instant donné, et des moyens de décodage et de séquencement délivrant lesdites séquences de contrôle de phase, en fonction de la valeur contenue dans ledit accumulateur. Préférentiellement, des moyens de détection d'un décalage de fréquence dudit signal d'horloge de sortie par rapport audit signal de référence. Ainsi, les moyens de comparaison de phases permettent de pallier également les décalages de fréquence. On obtient ainsi une très grande stabilité de la boucle d'asservissement. Par exemple, lesdits moyens de détection comprennent deux modules de comptage/décomptage, comptant respectivement des commandes d'augmentation de la fréquence d'oscillation et des commandes de diminution de la fréquence d'oscillation, des moyens de comparaison des valeurs contenues dans chacun desdits modules de comptage/décomptage, et des seconds moyens de calcul d'une séquence de contrôle de fréquence comprenant au moins deux commandes consécutives formant ledit second signal de contrôle, ladite séquence induisant, en moyenne, un décalage de la fréquence d'oscillation dudit signal d'horloge de sortie. Dans un mode de réalisation préférentiel de l'invention, ledit dispositif comprend des moyens de sélection d'un signal de contrôle dudit oscillateur numérique variable, parmi ledit premier signal de contrôle et ledit second signal de contrôle. Les moyens de comparaison de fréquences permettent un accrochage rapide de la boucle. Ensuite, l'asservissement est contrôlé par les moyens de comparaison de phases. Avantageusement, des moyens de surveillance pilotant lesdits moyens de sélection, de façon que lesdits moyens de sélection délivrent dans un premier temps ledit premier signal de contrôle, puis, lorsque ladite fréquence d'oscillation est sensiblement égale à la fréquence dudit signal d'horloge de référence, ledit second signal de contrôle. De façon préférentielle, lesdits moyens de surveillance comprennent des moyens de comparaison dudit signal d'horloge de sortie et dudit signal d'horloge de référence, sur un nombre élevé de périodes dudit signal d'horloge de sortie. Par exemple, ces moyens de comparaison comprennent des moyens de division de la fréquence d'oscillation dudit signal d'horloge de sortie, délivrant un signal de comptage de fréquence sensiblement égale à la fréquence dudit signal d'horloge de référence, des moyens de comptage/décomptage additionnant le nombre de fronts montants dudit signal de comptage et soustrayant le nombre de fronts montants dudit signal d'horloge de référence, et des moyens de décision délivrant une information d'accrochage de boucle lorsque la valeur contenue dans lesdits moyens de comptage/décomptage est comprise dans une plage de valeur prédéterminée, ladite information d'accrochage de boucle entraînant le basculement desdits moyens de sélection dudit premier signal de contrôle vers ledit second signal de contrôle, lesdits moyens de décision étant activés à des intervalles de temps réguliers, correspondant à un nombre élevé de périodes dudit signal d'horloge de sortie. Selon une caractéristique essentielle de l'invention, ledit dispositif comprend des moyens de contrôle en moyenne de ladite fréquence d'oscillation, associant à au moins deux entrées de commande de correction de ladite fréquence d'oscillation une série d'au moins deux commandes de correction, lesdites commandes de correction agissant effectivement sur la fréquence d'oscillation dudit oscillateur numérique variable. De cette façon, on contrôle la fréquence d'oscillation en moyenne, et il est possible d'obtenir une très grande précision de contrôle. Avantageusement, lesdits moyens de contrôle en moyenne comprennent des moyens de détermination de l'erreur de phase entre ledit signal d'horloge et un signal de référence avec une précision de Tlk, T représentant la résolution de contrôle dudit oscillateur numérique variable et k étant un entier, et des moyens de génération de commandes effectives de correction, en fonction de ladite erreur de phase, lesdites commandes effectives de correction étant calculées de façon que le nouvel écart de phase induit par chaque commande effective de correction soit le plus faible possible, par rapport à la phase dudit signal de référence. La précision de contrôle est alors de T/k. Dans un mode de réalisation avantageux, lesdits moyens de contrôle en moyenne comprennent des moyens de calcul d'une consigne de valeur de période moyenne théorique, en fonction d'au moins deux entrées de commande de correction de ladite fréquence d'oscillation, et des moyens de calcul de ladite série de commandes effectives de correction, en fonction de ladite consigne, d'au moins une des commandes effectives de correction précédentes et de l'erreur de phase précédente. Lesdits moyens de calcul d'une consigne de valeur de période moyenne théorique comprennent préférentiellement un accumulateur recevant lesdites entrées de commande de correction, deux commandes de signes opposés s'annulant, le contenu dudit accumulateur formant ladite consigne de période moyenne théorique, et lesdits moyens de calcul de ladite commande de correction moyenne comprennent un additionneur, alimenté par lesdits moyens de calcul d'une consigne, et des troisièmes moyens de décodage, délivrant lesdites commandes de correction moyenne, en fonction de la valeur contenue dans ledit additionneur. De façon préférentielle, ledit oscillateur numérique variable comprend une chaînes de portes élémentaires montées en série, la sortie de chacune desdites portes étant connectée à un multiplexeur dont la sortie est rebouclée sur la première porte élémentaire, par l'intermédiaire d'une porte inverseuse, ledit multiplexeur étant contrôlé par lesdits moyens entièrement numériques de contrôle de ladite fréquence d'oscillation. Avantageusement, ledit multiplexeur comprend un registre à décalage dans lequel une commande d'augmentation de ladite période d'oscillation se traduit par l'ajout d'un 1 à gauche et une commande de diminution de ladite période d'oscillation se traduit par l'ajout d'un 0 à droite, et des moyens de sélection de la sortie de la porte élémentaire associée au couple (0, 1) contenu dans ledit registre à décalage. Cette structure permet de supprimer les parasites ("glitches") pouvant apparaître dans un multiplexeur classique. Ce dispositif peut notamment être utilisé dans une boucle à verrouillage de phase numérique, ledit signal d'horloge de sortie étant asservi à la fréquence d'un signal d'entrée, notamment lorsque ledit signal d'entrée est un signal codé au format NRZ. I1 trouve également une application avantageuse dans la réalisation d'un multiplieur d'horloge, ledit signal d'horloge de sortie ayant une fréquence d'oscillation multiple de celle d'une horloge d'entrée, le contrôle dudit oscillateur numérique étant effectuée par comparaison entre ladite horloge d'entrée et une horloge de contrôle, obtenue par division de la fréquence d'oscillation dudit signal d'horloge de sortie. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donné à titre de simple exemple indicatif et non limitatif, et des dessins annexés, dans lesquels - la figure 1 est un schéma bloc global d'un mode de réalisation d'un dispositif selon l'invention, comprenant un comparateur de fréquences et un comparateur de phases - la figure 2 illustre un mode de réalisation particulier de l'oscillateur variable, à base de portes élémentaires en série - la figure 3 présente un mode de réalisation avantageux du multi plexeur de la figure 2, permettant d'éviter les parasites de commu station - la figure 4 représente le schéma électrique d'une cellule du multiplexeur de la figure 3 - la figure 5 est un chronogramme illustrant le problème de la perte de données, en présence d'un signal d'horloge décalé - la figure 6 présente un mode de réalisation des moyens de contrôle de l'oscillateur variable de la figure 1; - la figure 7 est un mode de réalisation particulier des moyens de contrôle de la figure 6 - la figure 8 illustre un schéma bloc d'un mode de réalisation du comparateur de fréquences de la figure 1; - la figure 9 présente un schéma détaillé des moyens de mise en phase de la figure 8; - la figure 10 est un schéma bloc d'un mode de réalisation des moyens de comparaison de phases (comparateur de phases et séquenceur) de la figure 1;; - la figure 1 1 est un chronogramme illustrant le fonctionnement du comparateur de phases de la figure 10; - la figure 12 présente un schéma électrique détaillé des moyens de comparaison et de décodage de la figure 11; - la figure 13 est un tableau illustrant le fonctionnement des moyens de comparaison et de décodage de la figure 12; - la figure 14 illustre le fonctionnement des moyens de séquencement de la figure 10 - la figure 15 présente un mode de réalisation particulier des moyens de surveillance de la figure 1 - la figure 16 illustre un autre mode de réalisation de l'invention, réalisant une multiplication de la fréquence d'une horloge. Ainsi qu'on l'a déjà mentionné, l'invention concerne un dispositif de contrôle de la fréquence d'oscillation d'un oscillateur variable numérique, dont tous les constituants sont entièrement numériques. Le dispositif de l'invention peut donc être implanté complètement dans un circuit intégré. La figure 1 est le schéma synoptique d'un mode de réalisation d'un tel dispositif 11, contrôlant un oscillateur numérique variable 12 délivrant une horloge de sortie 13. Cette horloge de sortie est réinjectée dans les moyens 1 1 de contrôle, de façon à former, par contre-réaction, une boucle d'asservissement. Dans ce mode de réalisation, les moyens 11 de contrôle comprennent un comparateur de fréquences 14 et un comparateur de phases 15 qui sont mis en oeuvre sélectivement. I1 est clair cependant qu'un dispositif selon l'invention peut ne comprendre qu'un seul type de comparateur, si cela est suffisant pour l'application envisagée. Ici, ce dispositif est prévu pour récupérer le rythme d'une horloge d'émission, à partir d'un train de données 16 émis à 155 Mbits/s série, les données étant codées en NRZ (Non Retour à Zéro). Pour faciliter l'accrochage de la boucle, on met en oeuvre tout d'abord le comparateur de fréquences 14, qui utilise une horloge de référence (interne) plésiochrone 17. Cette horloge 17 fonctionne par exemple à une valeur proche du quart de la fréquence rythme. Lorsque la boucle est accrochée, c'est-à-dire lorsque la fréquence de l'horloge de sortie 13 est proportionnelle à la fréquence de l'horloge plésiochrone 17, on met en oeuvre le comparateur de phases 15, qui cale la phase du signal de sortie 13 sur celle du signal de données 16. Le basculement du comparateur de fréquences 14 vers le comparateur de phases 15 est assuré par des moyens de surveillance 18, qui délivrent une information 19 d'accrochage de boucle, en fonction d'une comparaison entre une horloge 110 générée par comparateur de fréquence 14 et l'horloge de sortie 13. Cette information d'accrochage 19 contrôle un multiplexeur 2 vers 1 111, qui reçoit les informations 112 et 113 de contrôle de 1' oscillateur délivrées par Ie comparateur de fréquences (112) et le comparateur de phases (113) et délivre celles (114) sélectionnées par les moyens 18 de surveillance. Ces données de commande 114 peuvent contrôler directement un oscillateur numérique. Toutefois, selon une caractéristique importante de l'invention, le dispositif de contrôle 11 comprend avantageusement des moyens 115 de décodage, qui permettent de contrôler très précisément les variations de l'oscillateur 12. Plus précisément, ces moyens 115 de contrôle délivrent des commandes 116 de contrôle de la valeur de la fréquence, qui tiennent compte des commandes 114 reçues. Ainsi qu'on le verra par la suite, cela permet de contrôler très précisément les variations de fréquence en valeur moyenne. On décrit maintenant ci-dessous en détail un mode de réalisation préférentiel de ces différents moyens 1 - oscillateur à fréquence variable incrémental t12); 2 - moyens de décodage de la fréquence moyenne (115) 3 - comparateur de fréquences (14); 4 - comparateur de phases (15); 5 - moyens de surveillance (18). 1. Oscillateur à fréquence variable incrémental L'oscillateur 12 de la figure 1 est représenté en détail en figure 2. Il comprend un ensemble de portes non inverseuses élémentaires 21l à 21N montés en série. La sortie 22o à 22N de chaque porte élémentaire est dirigé vers un multiplexeur N + 1(23), qui délivre le signal d'horloge de sortie 24. Ce signal de sortie 24 est rebouclé en début de chaîne, par l'intermédiaire d'une porte inverseuse 26, de façon à former un oscillateur en anneau. Le multiplexeur 23 permet de faire varier la longueur de la chaîne prise en compte, c'est-à-dire le nombre de portes (ou retards) élémentaires appliquées à une demie-période du signal d'horloge de sortie 24. La commande de contrôle 25 agissant sur le multiplexeur 23 permet de faire varier, par pas de 1, le nombre de retards. Dans le mode de réalisation décrit, chaque retard (temps de traversée d'une porte élémentaire) est T = 250 ps. La période du signal de sortie 24 vaut donc 2n. T = n.500 ps. Lorsqu'une commande d'augmentation de la période (CU "count up" en anglo-saxon) est reçue, le multiplexeur 23 passe de l'ancienne entrée 22i à la nouvelle entrée 22i + l Inversement, s'il s'agit d'une commande de diminution de la période (CD "count down" en anglo-saxon), on passe de l'entrée 22i à l'entrée 22i 1. Sinon, l'entrée courante 22 est conservée. Un tel oscillateur présente cependant l'inconvénient de générer des parasites de commutation (ou "glitch"en anglo-saxon), lorsque le multiplexeur 23 est d'un type classique. Pour éviter ce problème, l'invention prévoit un multiplexeur particulier, tel qu'illustré en figure 3. Il s'agit d'un registre à décalage droite ou gauche 31, qui se remplit de 1 par la gauche lorsqu'une commande CU est reçue, et de 0 par la droite lorsqu'une commande CD est reçue. Le registre 81 contient donc une série de 1, puis une série de 0. La transition 32 entre les 1 et les 0 est unique. Elle correspond à la sélection souhaitée : le nombre de 1 représente le nombre de portes prises en compte. Chaque sortie 33i du registre à décalage 31 est dirigé vers deux portes logiques 34i (une seule, celle active, étant représentée). Chaque porte 34 reçoit d'une part une sortie 33i, puis la sortie suivante 33i + l inversée par un inverseur logique 35. Ainsi, seule la porte 34i correspondant à la transition 32 est validée. La porte 34i reçoit également le signal d'horloge retardé 36i (correspondant à i retards élémentaires, qui se trouve dupliqué en sortie 37i de la porte 34i, lorsque celle-ci correspond à la transition. Les N + 1 sorties des portes 34i, dont une seule porte un signal d'horloge, sont regroupées dans une porte OU, dont la sortie correspond à la sortie de l'oscillateur. Cette sortie 37i est dirigée vers une porte OU 38, dont le rôle est expliqué en liaison avec la figure 4. Ainsi, ce multiplexeur "sans glitch" permet la sélection d'une des sorties de la chaîne, le passage sans parasite à la sortie suivante (CU) ou précédente (CD) ou le maintien de la sortie courante. La figure 4 présente un schéma logique détaillé d'une cellule i de ce multiplexeur, selon un mode de réalisation avantageux. Chaque cellule comprend un multiplexeur 4 vers 1 41, contrôlé par les signaux CU et CD, et recevant en entrée les valeurs Qi (sortie de la cellule i), Qi l (sortie de la cellule précédente) et Q1 + I (sortie de la cellule suivante i + 1). Le multiplexeur 41 fonctionne de la façon indiquée en table I. TABLE I CU CD Sortie (42) 0 0 Qi 0 1 Qi+1 1 0 Qi-1 1 1 Qi La sortie 42 est ensuite dirigée vers une bascule 43, contrôlée par le signal d'horloge retardé CKi, inversé par un inverseur 44. La bascule 43 délivre le signal Qi, qui est reboucIé sur le multiplexeur 41 et dirigé vers les cellules i - 1 et i + I. Une porte ET 45 reçoit les valeurs Qi et Qi+l inversées par un inverseur 46, et le signal CU, ainsi que cela a déjà été mentionné. Un OU logique 47 reçoit les sorties 48i de toutes les cellule, et délivre le signal d'horloge 49. 2. Movens de décodage L'oscillateur de la figure 2 présente un autre inconvénient, à savoir la discontinuité de la variation de fréquence. En effet, celle-ci n'est contrôlée que par incréments de période et non en continu. Plus précisément, la période ne pourra être que de la forme K + n7 où n E N et où T représente l'incrément de période égale au retard de deux portes élémentaires dans notre schéma (par exemple 7 = 500ps dans l'application décrite). Les valeurs intermédiaires sont impossibles. Par ailleurs, une telle boucle nécessite la présence en permanence d'une information de recalage (signal de référence). La fréquence du signal délivré par la boucle peut alors encadrer la fréquence de référence par une fréquence immédiatement supérieure (période n T) puis une autre immédiatement inférieure (période (n + 1) T), et ce, en séquences dépendant de la valeur des deux périodes. Or il existe de nombreuses applications dans lesquelles on ne dispose pas en permanence d'un signal de référence. Ainsi, dans une application de récupération de rythme, il faut pouvoir maintenir la boucle accrochée même lorsque le signal de données reçu comprend une longue suite de "0"ou de "1"consécutifs apparaît et que l'on n'a donc pas la possibilité de "recaler" la valeur de la fréquence (du fait de l'absence de transition dans le signal de données). La figure 5 illustre ce problème par un exemple. On considère que la période rythme 51 de l'horloge idéale 52 (c'est-à-dire l'horloge de génération du train de données 53 vaut T = 6ns. Si la résolution de l'oscillateur est T = 500ps, la période 54 de l'horloge réelle 55 peut différer, à un instant donné, de (500ps - E) (56 sur la figure) de la période idéale 51. Si l'on est alors en présence d'une série de "0" ou de "1" (absence d'information de recalage), les temps 56 se cumulent, jusqu'à atteindre la valeur 57 d'une demie-période idéale (soit 3ns), ce qui entraîne une perte de données du signal 53. Dans l'exemple donné, cette perte de donnée peut intervenir au bout de 3ns/500ps, soit 6 coups d'horloge. Cela est nettement insuffisant pour certaines applications (telle que la récupération de rythme sur un signal NRZ). Pour pallier cet inconvénient, le dispositif de l'invention comprend des moyens de "contrôle en moyenne" (115, figure 1), insérés entre l'oscillateur et le (ou les) comparateur. Ces moyens de contrôle en moyenne reçoivent donc les commandes (CD ou CU) des comparateurs et, en fonction d'une analyse faite en fonction des commandes reçues et des actions préalablement effectuées, génèrent les commandes réelles de l'oscillateur. En d'autres termes, l'oscillateur, qui est contrôlé par deux commandes (CU et CD) pour incrémenter ou décrémenter Ia période, au lieu d'être commandé directement par le comparateur de phase (ou de fréquence), va l'être par l'intermédiaire de moyens de calcul où entrera une information de consigne "fréquence désirée". Le rôle de ces moyens de calcul est de "panacher" convenablement les commandes CU et CD, qui, appliquées à l'oscillateur, conduiront à la fréquence moyenne de consigne. I1 est ainsi possible de contrôler très précisément la période de l'oscillateur, par des incréments sous-multiples de T. Dans l'application décrite, on a choisi de pouvoir faire varier la période moyenne par incréments de 1/16 T. Toute autre résolution peut bien sûr être retenue (il s'agit en fait d'un compromis entre la précision et le temps de réaction). La figure 6 illustre le principe de ces moyens 115 de contrôle en moyenne. Un premier module 61 reçoit les commandes 62 (CU) et 63 (CD) de l'un des comparateurs, et détermine la période théorique désirée, ou consigne, 64.Cette consigne 64 est exprimée avec une précision de 1/16 T. La consigne 64 est fournie à un second module 65 de détermination des commandes réelles 66 (CU) et 67 (CD) destinées à l'oscillateur 12. Ces commandes réelles sont calculées à partir de la valeur de consigne 64, de l'erreur de phase précédente et des commandes précédentes, de façon à minimiser la valeur absolue de l'erreur de phase du signal réel (13) par rapport à celle du signal théorique désiré calculée dans le module 65 en fonction de la consigne 64. La table II illustre le fonctionnement du module 65 de génération de commandes, sur un exemple de sept périodes consécutives. TABLE II Action du Période Erreur de Période Nouvelles Nouvelle CHOIX: compara- désirée phase précédente périodes erreur de CU,O,CD teur (consigne) précédente possibles phase 0 (n+3/16)t 0 nt (n + 1) t 13/16 t -(CU) nt -3/16 t - (0) (n - 1) t -19/16 t -(CD) 0 (n+3/16) t -3/16 t nt (n + 1) t 10/16 t nt -6/16 t (n -1) t -22/16 T 0 (n+3/16) t -6/16 t nt (n + 1) t 7/16 t nt -9/16 t (n - 1) t -25/16 t 0 (n+3/16) t 7/16 t (n + 1) t (n + 2) t 36/16 t (n + 1) t 20/16 t n T 4/16 T 0 (n+3/16) t 4/16 t nt (n + 1) t 17/16 t nt 1/16 t (n - 1)t -15/16t CU (n+4/16) t 1/16t nt (n + 1) t 13/16 t nt -3/16 t (n - 1) t -19/16 t CU (n+5/16) t -3/16 t nt (n + 1) t 8/16 t nt -8/16 t (n - 1) t -24/16 T - 8/16 T (n + 1) t etc... Les commandes reçues du comparateur sont (colonne 1): 0 0 0 0 O CU CU mais les commandes réelles générées sont (colonne 8) 0 0 CU CD 0 0 CU. A chaque période (c'est-à-dire chaque ligne du tableau), on calcule trois erreurs de phases possibles (colonne 6), correspondant aux trois possibilités de commandes: augmentation, maintien, diminution (colonne 5). Ces erreurs de phase sont calculées à partir de la consigne (colonne 2), de l'erreur de phase précédente (colonne 3 - report de la colonne 6, ligne précédente) et de la période précédente. Parmi les trois erreurs de phase possibles, on sélectionne Ia plus faible de la colonne 7, et on génère la commande correspondante (colonne 8). Quand un choix doit être fait entre 8/16 7 et -8/16 7 (ligne 7), on choisit arbitrairement 8/16 T. Dans cette application, l'erreur de phase possible se situe donc entre -7/16 7 et 8/16 T. Ainsi - en ligne 1, l'erreur de phase minimale (-3/16 T) correspond à la période courante n 7 qui est donc maintenue - en ligne 3, l'erreur minimale correspond à la période (n + 1) T. La période est donc augmentée (commande CU) - inversement, en ligne 4, Ia période est ramenée à n 7 (commande CD); - en ligne 6, une demande d'augmentation (CU) est reçue, ce qui se traduit par une augmentation de 1/16 7 de la consigne (colonne 2). Toutefois, cette demande CU n'est pas répercutée instantanément sur l'oscillateur (colonne 8). On décrit maintenant un mode de réalisation pratique de ces moyens de contrôle en moyenne, en relation avec la figure 7. Pour simplifier les moyens mis en oeuvre et les traitements effectués, on réalise les adaptations suivantes - pour la consigne, de la forme (n + k/16)T, on garde la valeur k et on ne s'intéresse pas à la valeur n mais seulement à ses incréments (ce qui permet de diminuer le nombre de bits à traiter et donc de gagner sur le temps de calcul - on utilise un additionneur - non soustracteur (d'où la nécessité d'un changement de variables) - on multiplie toutes les valeurs par 16, de façon à travailler sur des valeurs entières. Ces moyens comprennent donc tout d'abord un accumulateur 71, recevant les commandes CU 72 (qui sont ajoutées) et les commandes CD 73 (qui sont soustraites). Il délivre la valeur de consigne A', codée sur 5 bits. Cette valeur A' est égale à 16-A, A correspondant à la consigne de la table II (en fait, A' correspond directement à k, et non pas à (n + k/16) T). L'accumulateur 71 délivre également des commandes CY et BW (CARRY et BORROW). La valeur A' est délivrée à un additionneur - non soustracteur 74, fournissant une valeur X' sur 5 bits dont on expliquera le rôle par la suite. Cette valeur X' [5, 0] est séparée en deux éléments - X' [5, 4], alimentant deux modules 75 et 76 de calcul - X' [3, 0], correspondant à B' = B + 7 (B correspondant à la valeur de l'erreur de phase de la table II), qui alimente un registre 77, contrôlé par le signal d'horloge CK. La sortie 78 du registre 77 est rebouclée sur l'additionneur 74. Le module 75 de calcul, contrôlé par les commandes CY et BW de l'accumulateur 71, délivre les commandes "réelles" CU 79 et CD 710 destinées à l'oscillateur. Le module 76 délivre une donnée 711 à une bascule 712, contrôlée par le signal CK. Cette bascule 712 délivre C' (correspondant à la mémoire de la table II) qui est rebouclée sur l'additionneur 74 et le module 76 de calcul. La table III illustre la façon dont ont été modifiées les valeurs utilisées dans la figure 7. TABLE III Action Consigne Erreur P Mémoire X= CU 0 CD Erreur C x 16 x 16 +160-16 # (A) (B) (C) C+B-A nouveau nouveau CU 13 0 16 + 3 0 + 3 16 CU 14 +3 16 +5 0 +5 16 CU 15 + 5 16 + 6 0 + 6 16 CU 0+CY + 6 16 + 22 CD # 0 + 6 0 CU 1 + 6 0 + 5 0 + 5 0 CU 2 + 5 0 + 3 0 + 3 0 CD 1 + 3 0 + 2 0 + 2 0 CD 0 + 2 0 + 2 0 + 2 0 CD 15+BW + 2 0 - 13 CU # 0 + 3 16 Les actions de "Carry" (CY) et "Borrow" (BW) se traduisent dans les modules de calcul 75 et 76 par des changements de CD en 0 ou de CU en 0 et le forçage de C à 0 ou 16 de la façon suivante - module de calcul 75:: 0 et CY # CD # 0 C=0 # 0 # CU C=0 - module de calcul 76: 15 et BW # CU - 0 C = 16 #0 # CD C=16. Les changements de variables utilisés sont les suivants A' = 16-A (d'où l sA' s 16) B'=B + 7 (d'où 0#B' # 15) C' = C (d'où C' = 0 ou 16). Ces transformations conduisent donc de X = C + B - A (d'où -22 9 X s + 24) à X' = C' + B' + A' = C + B - A + 23 soit X' = X + 23 (d'où + 1 s X' s 47). La table IV présente les actions effectuées (0, CU, CD) en fonction de X, puis en fonction de X'. TABLE IV x Résultat Action B Nouveau Action B'nouveau C+B-A (C' +B' +A') -7 s X s +8 0 B = X 16 s X' s 31 0 B' =Xt0:3] X # -8 CU B = X + 16 X' # 15 CU B' = X'[0:3] X > +8 CD B = X - 16 X' > 31 CD B' = X'[0::3] Cette table IV montre que le changement de variables permet la réinjection de B' en prenant les 4 bits de poids faible de X' [3, 0]. Les actions CU, 0 ou CD ne sont des conséquences que des deux bits de poids forts (X' [5, 4]). Le module 75 de calcul effectue le traitement suivant: - si X' [5, 4] = 00 alors CU - si X' [8] = 0 et X' [4] = 1 alors 0 - si X' [5] = 1 alors CD. L'oscillateur ainsi réalisé, comprenant l'oscillateur de la figure 2 et les moyens de contrôle de la figure 6, constitue un "oscillateur variable" dont on peut faire varier la période moyenne par pas de 1/16 7 (environ 30 ps) (Toutefois, la gigue en sortie reste de valeur T). Dans l'application à un signal NRZ, ce pas de 30ps permet donc, dans le cas le plus défavorable, de supporter sans erreur une suite de 3ns/30ps = 100 "0" ou 100 "1"consécutifs. 3. Comparateur de fréquences Le comparateur de fréquences est utilisé pour faciliter l'accrochage de la boucle d'asservissement. La figure 8 présente un mode de réalisation avantageux de ce comparateur. Ce comparateur utilise une horloge plésiochrone 81 (CKREF), ayant une fréquence sensiblement égale au quart de la fréquence du signal de données (à 10-5 près), que l'on compare au signal de sortie (CK) de l'oscillateur). Il comprend tout d'abord un module 83 de mise en phase des deux signaux à comparer. Le module 83 traite l'asynchronisme entre les horloges 81 et 82, et délivre une horloge 84 de référence synchrone (CKREFSYNCH). I1 peut être réinitialisé par une commande 85 de RESET. La figure 9 illustre un exemple de réalisation de ce module 83 de mise en phase, mettant en oeuvre trois bascules D 91, 92 et 93 en série. L'entrée 94 de la bascule 91 est maintenue en permanence à 1, et reçoit sur son entrée d'horloge 95 le signal d'horloge CKREF. Sa sortie est connectée (96) à l'entrée de la bascule 92, dont la sortie est elle-même connectée (97) à la bascule 93. Les bascules 92 et 93 sont contrôlées, sur leurs entrées d'horloge, par le signal d'horloge de sortie CK 98. Le signal RESET 99 entraîne la réinitialisation (912) des bascules 92 et 93 et, par l'intermédiaire d'une porte ET 910 recevant également la sortie inversée 911 de la bascule 93, celle (913) de la bascule 91. Par ailleurs, la bascule 93 délivre le signal 914 CKREFSYNCH, qui est identique au signal 95 CKREF, mais synchrone avec le signal 98 CK. Le signal CKREFSYNCH 84 (914 sur la figure 9) alimente un compteur 86 saturable synchrone qui compte les périodes du signal CK 82 et qui est remis à zéro à chaque impulsion du signal CKREFSYNCH. En régime d'égalité CKREF = CK/4 (ce que l'on désire), le compteur 86 passe par les états 0 - 1 - 2 - 3, puis est alors remis à 0 par CKRESYNCH et ainsi de suite. Par contre si CK/4 est supérieur (en fréquence) à CKREF, le compteur 86 atteindra quelquefois la valeur 4 (ou d'avantage) avant d'être remis à zéro. Inversement, si CK/4 est plus lent que CKREF, le compteur 86 n'atteindra pas toujours la valeur 3 avant la remise à zéro. La sortie 87 du compteur 86 est transmise à un décodeur 88, contrôlé par le signal CKREFSYNCH 84, qui délivre les commandes CU et CD (89 et 810), en fonction de la valeur 87 du compteur 86. Le fonctionnement du décodeur 88 est illustré par la table V suivante. TABLE V RAZ Compteur CU CD Commentaires 0 X 0 0 Pas d'action 1 3 0 1 CK/4 CKREF Diminue période de CK 1 3 0 0 CK/4 = CKREF Pas d'action 1 > 3 1 0 CK/4 > CKREF Augmente période de CK Ainsi, à la sortie du comparateur de fréquences 14, on dispose à chaque série de quatre coups de l'horloge CK les informations CU, 0 ou CD qui changent la fréquence de l'oscillateur variable 12 jusqu'à l'équilibre CK = 4 x CKREF. En régime permanent, l'erreur statique de fréquence est nulle, du fait de "l'intégration" du compteur. I1 est à noter qu'un tel comparateur permet l'asservissement de CK à tout multiple ou sous multiple entier ou fractionnaire de CK, en introduisant un diviseur sur CKREF et en changeant Ie décodage du résultat du compteur. On peut également noter que, la boucle d'asservissement possédant un "retard pur" dû au traitement (bascules D, additionneur, etc...),le gain de boucle ne peut pas être choisi aussi élevé que l'on désire, sous peine d'instabilité. Ce gain est cependant facilement ajustable par la périodicité des corrections (CU, 0, CD) (ici I coup sur 4). 4. Comparateur de phases Le comparateur de phases 15 est mis en service (c'est-à-dire est connecté sur l'oscillateur 12) lorsque la boucle d'asservissement est accrochée en fréquence sur l'horloge de référence plésiochrone 17 par le comparateur de fréquences 14. Avant de décrire le mode de réalisation d'un comparateur de phases selon l'invention, en relation avec la figure 10, on précise rapidement le but de la comparaison de phases. La figure Il présente le signal de données reçu DATA, et le signal d'horloge souhaité correspondant CK. Le signal DATA comprend des données successives 1101,, 11012, Le rôle du comparateur de phase est d'assurer un asservissement en phase de l'horloge CK délivrée par l'oscillateur, de façon à lire les données 1101i en leur milieu (11021, 11022). La figure 10 illustre un mode de réalisation avantageux de ce comparateur de phase. Il comprend tout d'abord un module 1001 de comparaison, qui constitue le comparateur de phase proprement dit. Dans un mode de réalisation avantageux de l'invention, ce comparateur comprend un échantillonneur 1002, qui délivre trois valeurs (au moins) A, B, C du signal de données DATA pour une période du signal d'horloge CK. Ces trois valeurs A, B, C, ainsi que les valeurs inversées AN, BN, CN sont transmises à un décodeur 1003, qui détermine les commandes CU 1004 et CD 1005 adéquates. Ce comparateur et ce décodeur peuvent par exemple être réalisés selon le schéma de la figure 12. Le comparateur 1002 est constitué de 6 bascules D disposées selon deux voies parallèles comprenant chacune trois bascules montées en série 1201, à 12013 et 1202, à 12023 respectivement. Les premières bascules 1201, eqt 12022 de chaque voie reçoivent le signal de données DATA. Les bascules 1201, à 12013 de la première voie sont contrôlées par le signal d'horloge CK, celles 1202, et 12022 de la seconde voie par le signal d'horloge inversé CK, et celle 12023 par CK. L'échantillonneur 1002 délivre les valeurs - A et AN : sorties de la bascule 12013 - B et BN sorties de la bascule 12023; - C et CN : sorties de la bascule 12012. Le décodeur 1003 comprend quatre portes ET à 3 entrées 12031 à 12034, qui délivrent respectivement les combinaisons AN.BN.C, A.B.CN, AN.B.C, A.BN.CN. Les sorties des deux premières portes ET 12031 et 12032 forment les entrées d'une première porte OU 1204i qui fournit la commande CD 1005. De même, une seconde porte OU 12042 reçoit les sorties des deux autres portes ET 12033 et 12034 et délivre la commande CU 1004. Le tableau de la figure 13 illustre le fonctionnement de ce comparateur. On a représenté sur ce tableau - colonne 1 : la position relative du premier signal de données (DATA) et du signal d'horloge de sortie CK; - colonne 2 : les valeurs possibles des trois échantillons A, B, C - colonne 3 : le type d'action à effectuer sur le signal d'horloge CK (commandes CU, CD ou rien) - colonnes 4 et S : les commandes CU et CD correspondantes. On constate que - lorsque le calage est bon, ou que l'information ne permet pas de déduction, aucune action n'est effectuée CU = CD = 0 (lignes 1 et 3); - si le signal d'horloge CK est en retard, une commande CD est générée (ligne 2) (diminution de Ia période) - si le signal d'horloge CK est en avance, une commande CU est générée (ligne 4) (augmentation de la période). Il est à noter qu'un tel comparateur est décrit plus en détail dans la demande de brevet conjointe déposée au nom des mêmes déposants et portant pour titre "Dispositif d'évaluation de temps de propagation de signaux à l'intérieur d'un circuit intégré". On constate toutefois que, dans Ia pratique, si I'on raccordait directement les sorties 1004 et 1005 à 1' oscillateur variable, le système serait instable (du fait du retard pur et de l'intégration due au contrôle de la phase et à l'action sur la fréquence). L'invention prévoit donc des moyens qui permettent de ne pas agir directement sur la fréquence d'oscillation, mais sur la phase du signal de sortie. Le principe général des moyens de contrôle de la phase est de générer, à l'entrée de l'oscillateur variable une commande CU suivi, après une ou plusieurs périodes, d'une commande CD. Ainsi, la fréquence est à nouveau identique, mais la phase a changé. I1 est à noter que, en réalité, si l'on fait un CU suivi d'un CD, la phase ne change pas forcément, car, en fin de compte, seules des variations de 7 sont permises, alors que le changement demandé est plus faible (1/16 7 par exemple). Cette action peut se traduire soit par un changement de n en n + 1 ou de n en n - 1, ou encore par un changement de valeur de l'erreur de phase dans le module de calcul décrit par la suite, qui provoquera alors un changement effectif à un instant différent de celui qui aurait lieu si l'on n'avait pas fait d'action. En d'autres termes, on effectue donc un contrôle de la phase moyenne, et non de la phase instantanée. La table "VI" suivante illustre ce fonctionnement. TABLE VI Action (A) (B) (C) (C+B-A) Choix (B) (C) Consigne Erreur p Mémoire x Nouveau Nouveau M 0 3 -5 0 -8 CU +8 16 0 3 8 16 21 CD +5 0 CU | 4 5 0 1 0 +1 0 0 4 1 0 -3 0 -3 0 CD 3 -3 0 -6 0 -6 0 0 3 -6 0 -9 CU 7 16 0 3 7 16 20 CD +4 0 0 3 4 0 1 0 +1 0 0 3 5 0 2 0 +2 0 O 3 2 O -1 O -1 O 0 3 -1 0 4 0 -4 0 0 3 -4 0 -7 0 -7 0 0 3 -7 0 -10 CU +6 16 O 0 3 +6 | 16 +19 CD +3 0 Cette table s'interprète de la façon suivante - lignes 1-2 : partie commune - lignes 3-8 : avec CU, O, CD : la commande CU intervient au 4e coup - lignes 9-4 : sans CU, 0, CD : la commande CU n'intervient qu'au 5" coup. Dans le mode de réalisation décrit, la séquence de correction de phase utilisée est CU, CU, CD, CD. La figure 14 illustre l'effet de cette séquence de quatre coups, qui fait "glisser" la phase moyenne de - 1/16 7 pour la première commande CU (1401); - 2/16 7 pour la seconde commande CU (1402); - 1/16 7 pour la troisième commande CU (1403); - 0 pour la quatrième commande CU (1404); soit un glissement global de 4/16 T, et donc un glissement moyen de 1/16 T par coup d'horloge. Le schéma de la figure 10 comprend donc un décodeur-séquenceur 1006, qui peut délivrer soit cette séquence (CU, CU, CD, CD), soit la séquence inverse (CD, CD, CU, CU), soit encore (0, 0, 0, 0), selon le résultat 1007 issu d'un moyenne sur 4 coups des résultats du comparateur de phase 1001. Le résultat 1007 du moyennage est délivré par un compteur/décompteur à 16 1008, qui reçoit les commandes CU 1004 et CD 1005. Le compteur 1008 et le décodeur 1006 travaillant sur 4 coups d'horloge consécutifs, ils sont contrôlés par une horloge 1009 au quart de la fréquence de l'horloge CK, obtenu à l'aide d'un diviseur 1010 de fréquence par 4. Chaque front montant de l'horloge 1009 assure une remise à huit (RA8) du compteur 1008 et un chargement (LOAD) du décodeur 1006. Selon que Ie résultat 1007 est supérieur, égal, ou inférieur à 8 lors du "Load + Reset", le décodeur 1006 délivre la séquence (CU, CU, CD, CD) ou (0, 0, 0, 0) ou (CD, CD, CU, CU) provoquant ainsi les variations de phase désirées. La fréquence moyenne n'évolue que par incréments de 1/16 T, cela signifie que dans le cas le plus défavorable la période effective moyenne peut être éloignée de (T - E) de la fréquence idéale. L'action du comparateur de phase doit donc permettre de ratrapper cet écart de fréquence en agissant par des variations de phase, ce qui est le cas. Toutefois, celui-ci comprend de plus un module 1011 de surveillance constitué de deux compteurs/décompteurs saturables à 0, qui surveille la répartition des CU (1004) et CD (1005) donnés par le comparateur de phase 1001. En effet, si on suppose que la période réelle est éloignée d'une valeur voisine de T de la période idéale, le comparateur de phase doit rattraper cet écart et ce, en envoyant une forte majorité d'un type donné de séquence. C'est le rôle du module de surveillance 1011 qui délivre un signal d'alarme 1012 lorsqu'il a plus de deux fois plus d'erreurs de phase dans un sens que dans l'autre (par comparaison du contenu des deux compteurs de CU et de CD). Ce signal 1012 est exploité par le décodeur 1006 qui change alors la fréquence moyenne en modifiant les séquences commes indiqué dans la table VII suivante TABLE VII SEQUENCE PREVUE 1011 SEQUENCE REELLE CU CU CD CD + CU CU CD O O CU CD CD O O O O + CU O O O CD O 0 0 CD CD CU CU + O CD CU CU CD CD CU O Ce changement de fréquence moyenne repositionne ainsi la valeur de la fréquence (hors correction du comparateur de phase) à la valeur la plus proche de Ia valeur théorique (période à moins de 1/2.1/16.# de la valeur idéale). Ce contrôle est essentiel car la fréquence moyenne délivrée par l'oscillateur variable est sujette à des variations (dues par exemple à la température ou à la tension d'alimentation) qui peuvent changer la fréquence après accrochage de la boucle. Ainsi, le comparateur de phase de la figure 10 agit en général en modifiant la phase de l'oscillateur variable mais lorsque son action sur la phase devient trop importante, il agit en changeant de fréquence. Cela permet d'obtenir une bonne stabilité de boucle d'asservissement. Les données entrant dans le comparateur de phase peuvent ainsi être échantillonnés avec le flanc montant de l'horloge et la marge garantie est de plus ou moins 2,5 ns. 5. Moyens de surveillance Enfin, le dispositif de l'invention comprend des moyens de surveillance, destinés à gérer le passage du comparateur de fréquence au comparateur de phase et à délivrer un signal d'accrochage de boucle. La figure 15 présente un mode de réalisation de ces moyens de surveillance. Un compteur/décompteur 1501 saturable aux valeurs 0 et 7 sur 3 bits reçoit - sur son entrée de comptage (CU) 1502, un signal CK/4 obtenu par la division 1503 par 4 de la fréquence du signal CK - sur son entrée de décomptage (CD) 1504, le signal CKREFSYNCH délivré par les moyens de remise en phase 83 (figure 8). Ce compteur 1501 est interrogé tous les 216 coups d'horloge CK (car les horloges sont plésiochrones à 10-5 = 1/216). Un diviseur 1505 par 216 délivre un signal de chargement 1506 au compteur 1501, ainsi qu'à un décodeur 1507, qui reçoit alors la valeur 1508 contenue dans le compteur 1501. Le contenu 1508 du compteur 1501 doit, lorsque la boucle est accrochée, être égal à 4 à 1 près. Le décodeur 1507 fonctionne donc de façon à générer le siganl "boucle accrochée" 1509 si la valeur 1508 vaut 4, 3, 5. Ce signal "boucle accrochée" 1509 provoque la mise en service du comparateur de phase et la mise hors service du comparateur de fréquence. 6. Conclusion Le dispositif décrit ci-dessus permet une récupération de rythme d'un train de données NRZ à 155Mbits/s série, capable de délivrer une horloge dont la gigue crête à crête est de 500ps environ. L'invention n'est pas limitée à la récupération de rythme. La figure 16 présente une autre application avantageuse de l'invention, à savoir la multiplication de la fréquence d'une horloge. Ce dispositif permet de multiplier la fréquence d'une horloge 1601, par exemple à 25 MHz, de façon à délivrer une horloge 1602 plus rapide, par exemple à 150 MHz. Il comprend des moyens 1603 de comparaison de fréquence et de phase, tels que ceux décrits en figures 6 et 10, qui compare le signal d'horloge source 1601 avec un signal d'horloge 1604 obtenu par division 1605 par 6 (plus généralement par n, pour une multiplication par n de la fréquence) de l'horloge de sortie 1602. Le comparateur 1602 génère un signal de contrôle 1606 à un oscillateur variable 1607, qui est avantageusement tel que décrit en relation avec la figure 2. REVENDICATIONS 1. Dispositif de contrôle de la fréquence d'oscillation d'un oscillateur (12) numérique variable, ledit oscillateur (12) délivrant un signal d'horloge (13) de sortie, caractérisé en ce qu'il est constitué de moyens (11) entièrement numériques de contrôle de ladite fréquence d'oscillation, commandant l'augmentation, le maintien ou la réduction de ladite fréquence d'oscillation, en fonction d'une comparaison entre au moins un signal d'entrée (16, 17) et ledit signal d'horloge (13) de sortie. 2. Dispositif selon la revendication 1, caractérisé en ce qu'il comprend des moyens (115) de contrôle en moyenne de ladite fréquence d'oscillation, associant à au moins deux entrées de commande (62, 63) de correction de ladite fréquence d'oscillation une série d'au moins deux commandes (66, 67) effectives de correction, lesdites commandes effectives de correction agissant effectivement sur la fréquence d'oscillation dudit oscillateur (12) numérique variable. 3. Dispositif selon la revendication 2, caractérisé en ce que lesdits moyens (115) de contrôle en moyenne comprennent des moyens (61) de détermination de l'erreur de phase entre ledit signal d'horloge et un signal de référence avec une précision de r/k, 7 représentant la résolution de contrôle dudit oscillateur numérique variable et k étant un entier, et des moyens (65) de génération de commandes effectives de correction (66, 67), en fonction de ladite erreur de phase, lesdites commandes effectives de correction (66, 67) étant calculées de façon que le nouvel écart de phase induit par chaque commande effective de correction soit le plus faible possible, par rapport à la phase dudit signal de référence. 4. Dispositif selon la revendication 3, caractérisé en ce que lesdits moyens (115) de contrôle en moyenne comprennent des moyens (61) de calcul d'une consigne (64) de valeur de période moyenne théorique, en fonction d'au moins deux entrées de commande de correction (62, 63) de ladite fréquence d'oscillation, et des moyens (65) de calcul de ladite série de commandes de correction effectives (66, 67), en fonction de ladite consigne (64), d'au moins une des commandes effectives de correction précédentes et de l'erreur de phase précédente. 5. Dispositif selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il comprend des moyens (15) de comparaison de phases, comparant la phase dudit signal d'horloge de sortie (13) avec la phase d'un signal de référence (16) et délivrant un premier signal de contrôle (113) dudit oscillateur (12) numérique variable, agissant de façon que la phase dudit signal de sortie (13) soit asservie à la phase dudit signal de référence (16). 6. Dispositif selon la revendication 5, caractérisé en ce que lesdits moyens (15) de comparaison de phases comprennent des moyens (1002) d'échantillonnage dudit signal de référence (DATA), échantillonnant ledit signal de référence (DATA) à la fréquence d'oscillation dudit signal d'horloge de sortie (CK), et des premiers moyens (1003) de décodage, associant à un jeu d'au moins trois échantillons (A, B, C) consécutifs délivrés par lesdits moyens (1002) d'échantillonnage une information (1004, 1005) représentative de l'écart de phase entre ledit signal d'horloge de sortie (CK) et ledit signal de référence (DATA). 7. Dispositif selon l'une quelconque des revendications 5 et 6, caractérisé en ce que lesdits moyens (15) de comparaison de phases comprennent des premiers moyens (1006, 1008) de calcul d'une séquence de contrôle de phase comprenant au moins deux commandes (CU, CD) consécutives formant ledit premier signal de contrôle (113), ladite séquence de contrôle de phase comprenant un même nombre de commandes d'augmentation (CU) de ladite fréquence d'oscillation et de commandes de diminution (CD) de ladite fréquence d'oscillation, de façon à induire, en moyenne, un décalage de la phase dudit signal de sortie (CK). 8. Dispositif selon l'une quelconque des revendications 5 à 7, caractérisé en ce qu'il comprend des moyens (1011) de détection d'un décalage de fréquence dudit signal d'horloge de sortie (CK) par rapport audit signal de référence (DATA), lesdits moyens (1011) de détection comprenant - deux modules de comptage/décomptage, comptant respectivement des commandes d'augmentation de la fréquence d'oscillation et des commandes de diminution de la fréquence d'oscillation, - des moyens de comparaison des valeurs contenues dans chacun desdits modules de comptage/décomptage, et - des seconds moyens de calcul d'une séquence de contrôle de fréquence comprenant au moins deux commandes consécutives formant ledit premier signal de contrôle (113), ladite séquence induisant, en moyenne, un décalage de la fréquence d'oscillation dudit signal d'horloge de sortie. 9. Dispositif selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comprend des moyens (14) de comparaison de fréquences, comparant ladite fréquence d'oscillation avec la fréquence d'un signal (17) d'horloge de référence et délivrant un second signal (112) de contrôle dudit oscillateur (12) numérique variable, et agissant sur ledit oscillateur (12) de façon que ladite fréquence d'oscillation soit proportionnelle à la fréquence dudit signal (17) d'horloge de référence. 10. Dispositif selon la revendication 9, caractérisé en ce que la fréquence dudit signal (17) d'horloge de référence est sensiblement un sous-multiple de ladite fréquence d'oscillation. 11. Dispositif selon la revendication 10, caractérisé en ce que lesdits moyens (14) de comparaison de fréquences comprennent un compteur (86), comptant le nombre (87) de périodes dudit signal (CKREFSYNCH) d'horloge de référence comprises dans une période dudit signal d'horloge de sortie (CK), et des seconds moyens de (88) décodage délivrant ledit second signal de contrôle (89, 810), en fonction dudit nombre (87) de périodes comptées par ledit compteur (86). 12. Dispositif selon l'une quelconque des revendications 5 à 8 et l'une quelconque des revendications 9 à 11, caractérisé en ce qu'il comprend des moyens (111) de sélection d'un signal (114) de contrôle dudit oscillateur (12) numérique variable, parmi ledit premier signal (113) de contrôle et ledit second signal (112) de contrôle. 13. Dispositif selon la revendication 12, caractérisé en ce qu'il comprend des moyens (18) de surveillance pilotant lesdits moyens (111) de sélection, de façon que lesdits moyens (111) de sélection délivrent dans un premier temps ledit second signal (112) de contrôle, puis, lorsque ladite fréquence d'oscillation est sensiblement égale à la fréquence dudit signal (17) d'horloge de référence, ledit premier signal (113) de contrôle. 14. Dispositif selon la revendication 13, caractérisé en ce qu'il comprend des moyens (1503) de division de la fréquence d'oscillation dudit signal d'horloge de sortie (CK), délivrant un signal de comptage (1502) de fréquence sensiblement égale à la fréquence dudit signal d'horloge de référence (1504), des moyens (1501) de comptage/décomptage additionnant (CU) le nombre de fronts montants dudit signal (1502) de comptage et soustrayant (CD) le nombre de fronts montants dudit signal (1504) d'horloge de référence, et des moyens (1507) de décision délivrant une information (1509) d'accrochage de boucle lorsque la valeur (1508) contenue dans lesdits moyens (1501) de comptage/décomptage est comprise dans une plage de valeur prédéterminée, ladite information (1509) d'accrochage de boucle entraînant le basculement desdits moyens (111) de sélection dudit second signal (112) de contrôle vers ledit premier signal (113) de contrôle, lesdits moyens (1507) de décision étant activés à des intervalles de temps réguliers, correspondant à un nombre élevé (1506) de périodes dudit signal d'horloge de sortie (CK). 15. Dispositif selon l'une quelconque des revendications 1 à 14, caractérisé en ce que ledit oscillateur (12) numérique variable comprend une chaîne de portes élémentaires (21l, 21N) montées en série, la sortie (22o' 22N) de chacune desdites portes (21X,21N) étant connectée à un multiplexeur (23) dont la sortie est rebouclée sur la première porte élémentaire, par l'intermédiaire d'une porte inverseuse (26), ledit multiplexeur (23) comprenant un registre à décalage (31) dans lequel une commande d'augmentation (CU) de ladite période d'oscillation se traduit par l'ajout d'un 1 à gauche et une commande de diminution (CD) de ladite période d'oscillation se traduit par l'ajout d'un 0 à droite, et des moyens de sélection de la sortie (22i) de la porte élémentaire (21; ;) associée au couple (0, 1) (33, 33;+1) contenu dans ledit registre à décalage (31).