FR 2770704 A1 19990507 FR 9713992 A 19971103 Circuit verrouillé en phase. L'invention concerne un circuit verrouillé en phase. Un circuit classique verrouillé en phase, ou boucle à verrouillage de phase, est désigné couramment par l'acronyme PLL (Phase Locked Loop). Tel qu'illustré sur la figure 1, un PLL I comprend : un comparateur de phase 2 recevant un signal d'entrée IS et un signal de contre - réaction FBS; un filtre 3 recevant un signal de sortie CS du comparateur de phase 2 et un oscillateur commandé en tension 4, couramment appelé VCO (voltage Controlled Oscillator), qui reçoit un signal de sortie FS du filtre 3 et délivre un signal de sortie OS du PLL 1 et commande une boucle de contre - réaction pour produire le signal de contre - réaction fourni au comparateur de phase 2. La boucle de contre - réaction pourra être, par exemple, un diviseur de fréquence 5 recevant le signal de sortie OS et produisant le signal de contre - réaction FBS. Une des applications des PLL est la réalisation d'oscillateurs à faible gigue (jitter, en littérature anglaise) destinés à fournir des signaux d'horloge de fréquence précise et de gigue faible. Pour fournir un tel signal d'horloge, on utilise classiquement un quartz. Pour produire un signal d'horloge de fréquence donnée, on peut utiliser un quartz dont la fréquence propre correspond à la fréquence désirée. Cette solution est généralement acceptable pour des fréquences pouvant atteindre 25 mégahertz. Obtenir des fréquences plus élevées, par exemple de l'ordre de la centaine de mégahertz, pose par contre des problèmes, soit qu'il n'existe pas de quartz permettant d'obtenir la fréquence désirée, soit qu'un tel quartz soit onéreux. On préfère donc généralement utiliser des oscillateurs comprenant un quartz peu onéreux de fréquence faible, par exemple de 25 mégahertz, et un multiplieur de fréquence réalisé à partir d'un PLL. En pratique, on peut trouver des PLL présentant une gigue assez faible, par exemple de l'ordre de 150 picosecondes. Un problème est qu'une telle gigue, même si elle est faible, peut être trop importante dans certaines applications. Il en est ainsi dans les liaisons série à haut débit, illustrées par exemple dans les brevets US 5,268,937, US 5,414,830 et US 5,430,773, dans lesquelles on utilise plusieurs signaux d'horloge de 100 mégahertz décalés en phase pour piloter la transmission ou la réception série de données à une fréquence supérieure, par exemple de l'ordre de 1 gigahertz. On cherche alors à obtenir une gigue limitée à quelques dizaines de picosecondes, ce que ne permettent pas les PLL classiques. Un but de l'invention est de proposer un circuit verrouillé en phase amélioré en ce qui concerne la sensibilité à la gigue. Ainsi l'invention propose un circuit verrouillé en phase caractérisé en ce qu'il comprend un oscillateur en anneau programmable produisant des signaux de pilotage; un ensemble de bascules à verrouillage recevant un signal d'entrée du circuit, les bascules à verrouillage étant pilotées par les signaux de pilotage et produisant des échantillons par échantillonnage du signal d'entrée; un circuit logique de décodage recevant des échantillons produits par des bascules à verrouillage et pilotant en conséquence l'oscillateur en anneau programmable. Selon un mode de réalisation le circuit de décodage comprend des moyens pour comparer deux à deux des échantillons afin de déterminer si une transition d'état s'est produite dans un intervalle temporel séparant ces deux échantillons, cette comparaison étant effectuée sur au moins deux cycles, consécutifs ou non, de l'oscillateur en anneau de sorte que: - si, lors du deuxième cycle, une transition d'état comparable est détectée dans le même intervalle, la commande de l'oscillateur en anneau programmable n'est pas modifiée, - si, lors du deuxième cycle, une transition d'état comparable est détectée dans un intervalle postérieur, on commande une diminution de la période de l'oscillateur en anneau programmable, - si, lors du deuxième cycle, une transition d'état comparable est détectée dans un intervalle antérieur, on commande une augmentation de la période de l'oscillateur en anneau programmable. Selon un mode de réalisation, l'oscillateur en anneau programmable étant formé d'un ensemble d'éléments programmables montés en boucle, la modification de la commande de l'oscillateur, lorsque qu'une augmentation ou une diminution de sa période est commandée, est effectuée sur l'un des éléments programmables de l'oscillateur. Selon un mode de réalisation, la commande de l'oscillateur en anneau programmable est modifiée graduellement, en augmentant et/ou en diminuant sa période une fois tous les M périodes, avec M un nombre entier. Selon un mode de réalisation, l'oscillateur en anneau programmable est formé d'éléments de retard programmables montés en boucle. Selon un mode de réalisation, les éléments de retard sont non inverseurs et l'oscillateur en anneau programmable comprend des moyens pour modifier l'état d'un signal d'entrée du premier élément de retard, de sorte à permettre une oscillation de l'ensemble des éléments de retard. Selon un mode de réalisation, l'oscillateur en anneau programmable comprend des moyens de multiplexage agencés de sorte qu'une entrée du premier élément de retard soit reliée à une sortie du dernier élément ou reçoive un état logique permanent, lesdits moyens de multiplexage étant commandés par un signal de pilotage produit sur une sortie de l'un des éléments de retard. Selon un mode de réalisation, les signaux de pilotage sont combinés dans un additionneur logique pour produire un signal de sortie de fréquence multiple de la fréquence de l'oscillateur en anneau programmable. D'autres avantages et particularités apparaîtront à la lecture de la description qui suit d'un exemple de réalisation de l'invention, à lire conjointement aux dessins annexés dans lesquels - la figure I illustre un circuit verrouillé en phase classique, - la figure 2 illustre un oscillateur en anneau formé d'éléments de retard non inverseurs, - la figure 3 illustre un oscillateur comprenant un circuit verrouillé en phase selon l'invention, - les figures 4a à 4g illustrent des chronogrammes illustrant le fonctionnement de l'oscillateur de la figure 2, - les figures Sa à 5c représentent des chronogrammes illustrant le fonctionnement du circuit selon l'invention. A titre d'exemple, on va considérer une application typique d'un circuit verrouillé en phase qui est la réalisation d'un oscillateur 6, illustré sur la figure 3, fournissant un signal d'horloge CSN à faible gigue à partir d'un quartz. On supposera que la fréquence du signal d'horloge CSN est égale à la fréquence du signal produit à partir du quartz. Comme on le verra, le circuit verrouillé en phase peut être utilisé comme multiplieur de fréquence du signal produit originellement par le quartz. 1 - Structure de l'oscillateur. L'oscillateur 6 comprend un premier oscillateur 7, que l'on pourra qualifier d'oscillateur de base. Cet oscillateur de base 7 fournit un premier signal d'horloge CKI à un circuit verrouillé en phase 9 selon l'invention, ce dernier recevant an entrée le premier signal d'horloge et produisant un deuxième signal d'horloge CSN à faible gigue. 1.1 - Oscillateur basse fréquence. L'oscillateur de base 7 comprend un quartz 1 1 et un inverseur 13, de type CMOS, polarisé dans sa zone d'inversion et contre - réactionné par un élément résistif 15. L'élément de contre - réaction résistif 15 pourra être une résistance ou un transistor polarisé dans sa zone de fonctionnement résistif. L'entrée et la sortie de l'inverseur 13 sont reliées aux bornes du quartz 11. L'ensemble inverseur - élément résistif se comporte comme un résistance négative qui permet l'oscillation. Si l'on souhaite optimiser les conditions d'oscillation, on pourra placer deux éléments capacitifs 17 et 19 entre les entrée et sortie de l'inverseur et une masse, ces éléments capacitifs ayant des capacités sensiblement égales entre elles et à la valeur de la capacité du quartz. Le premier signal d'horloge CKl est produit par un inverseur 20, de type CMOS, dont l'entrée est reliée à la sortie de l'inverseur 13. L'inverseur 20 permet, typiquement, de mettre en forme le signal d'horloge et, plus précisément de produire un signal d'horloge à fronts raides. 1.2 - Circuit verrouillé en phase. Le premier signal d'horloge CKI est fourni au circuit verrouillé en phase 9. Ledit circuit verrouillé en phase comprend: - un oscillateur en anneau programmable 21, pour produire N signaux de pilotage CS1, CS2, . . CSN, de même fréquence et décalés en phase, pour piloter l'échantillonnage du premier signal d'horloge CK1, - un ensemble 23 de N bascules à verrouillage 231, 232 ... 23N recevant le premier signal d'horloge CK1 sur leur entrée D, ces bascules à verrouillage étant pilotées par les signaux de pilotage CS1, CS2 ... CSN et produisant des échantillons OS1, OS2, . OSN sur leur sortie Q, par échantillonnage du signal CKI. On supposera que ces bascules sont sensibles aux fronts montants dans les signaux de pilotage. - une boucle d'asservissement de phase comprenant un circuit logique de décodage 25 recevant tout ou partie des échantillons OS1, OS2, . .. OSN produits par les bascules à verrouillage et fournissant à l'oscillateur en anneau des signaux de commande CDE pour piloter en conséquence cet oscillateur, de sorte à obtenir la fréquence désirée pour le second signal d'horloge CSN. Avant de décrire plus en détails le fonctionnement du circuit verrouillé en phase selon l'invention, on va décrire une structure d'oscillateur en anneau programmable. 1.3 - Oscillateur en anneau programmable. La figure 2 illustre un exemple de réalisation de l'oscillateur en anneau programmable 21. I1 comprend un ensemble de N éléments de retard 211, 212 . . 21N en série, non inverseurs et programmables, montés en boucle. Les éléments de retard produisent les signaux de pilotage CSl, CS2 . . CSN utilisés pour échantillonner le premier signal d'horloge CK1 dans les bascules à verrouillage du circuit. Dans l'exemple illustré, on a choisi N = 5. On pourra bien sûr utiliser un nombre plus important ou moins important d'éléments, selon l'application envisagée. Chaque élément reçoit un ou des signaux de commande Cdel, Cde2 . . Cde5 permettant de faire varier la durée du retard de l'élément. On ne décrira pas en détails les éléments de retard, ce type de circuit étant connu de l'homme de l'art. On pourra, par exemple, se reporter aux brevets français 2 690 022 et 2 689 339. L'utilisation d'éléments non inverseurs permet, comme on va le voir, de ne pas avoir à considérer les différences de temps de propagation des fronts montants et des fronts descendants dans l'oscillateur en anneau. Cette particularité est particulièrement intéressante dans le cadre des applications de liaison série haut débit, décrites dans les brevets américains cités ci-dessus en référence. Elle permet de produire, en sortie des éléments de retard, des signaux partageant la période de l'oscillateur en intervalles égaux. Pour permettre une oscillation de l'ensemble des N éléments, l'oscillateur en anneau comprend des moyens pour modifier l'état du signal d'entrée du premier élément de retard. Comme on le verra, l'oscillateur comprend plus particulièrement des moyens de multiplexage agencés de sorte qu'une entrée du premier élément de retard reçoive un état logique permanent ou soit reliée à une sortie du dernier élément de retard. On utilise l'un des signaux de pilotage produits par les éléments de retard pour modifier l'état d'entrée du premier élément de retard 211 de l'oscillateur en anneau. On note R, avec bien entendu R Chacun des éléments de retard 21i produit le signal de pilotage CSi et reçoit en entrée le signal de sortie produit par l'élément de retard précédent. Le premier élément de retard 211 reçoit le signal de pilotage CS5 produit par le dernier élément de retard 215, par le biais d'un multiplexeur 27 comprenant deux entrées. Ce multiplexeur 27 reçoit sur ses entrées le signal de pilotage CS5 et un état logique "0". I1 reçoit un signal logique de sélection SEL sur une entrée de sélection. Lorsque le signal de sélection SEL est dans un premier état, par exemple l'état "0", on relie l'entrée de l'élément de retard 211 à la deuxième entrée du multiplexeur 27. Lorsque le signal de sélection SEL est dans un second état, par exemple l'état "1", on relie l'entrée de l'élément de retard 211 à la première entrée du multiplexeur 27, et cet élément 211 reçoit alors le signal de pilotage CS5. Le signal de sélection SEL est produit par combinaison logique d'un signal logique de mise en marche, noté ON, et du signal de pilotage CSR = CS2. On supposera que l'oscillateur est mis en marche lorsque le signal ON est dans un premier état, par exemple l'état "1", et qu'il est stoppé lorsque le signal est dans deuxième état, par exemple l'état "0". Pour ce faire, les signaux ON et CS2 sont fournis aux entrées d'une porte logique 29, de type ET, comprenant deux entrées et une sortie. La première entrée de la porte 29 reçoit le signal de mise en marche ON. Sa deuxième entrée reçoit un signal logique NCS2, produit par inversion du signal de pilotage CS2 dans un inverseur 30. La sortie de la porte 29 fournit le signal de sélection SEL. Le (R + 1) - ième élément de retard, autrement dit l'élément 213, reçoit le signal de pilotage CS2 par le biais d'un multiplexeur 31 comprenant deux entrées et une sortie. Ce multiplexeur 31 reçoit un signal logique d'état constant "1" sur sa deuxième entrée, et sa sortie est reliée à l'entrée de l'élément 213. I1 reçoit le signal logique de mise en marche ON sur une entrée de sélection. Lorsque le signal de sélection ON est à l'état "1", on relie l'entrée de l'élément de retard 213 à la deuxième entrée du multiplexeur 31. Lorsque le signal ON est à l'état "0", on relie l'entrée de l'élément 213 à la première entrée du multiplexeur 31, et cet élément 213 reçoit alors le signal de pilotage CS2. L'oscillateur en anneau illustré permet de produire des signaux déphasés avec un retard temporel constant, si l'on considère un type de front donné, ici les front montants. En considérant un élément de retard, on appellera Tm temps de propagation des fronts montants, autrement dit le délai entre le moment où un front montant apparaît en entrée de l'élément et le moment où un front montant induit apparaît dans le signal de pilotage produit. On appellera Td le délai de propagation des fronts montants, autrement dit le délai entre le moment où un front descendant apparaît en entrée de l'élément et le moment où un front descendant induit apparaît dans le signal de pilotage produit. On appellera tm le délai entre le moment où un front montant apparaît dans le signal de pilotage CSR et le moment où apparaît une modification résultante du signal CS1. On appellera td le délai entre le moment où un front descendant apparaît dans le signal de pilotage CSR et le moment où apparaît une modification résultante du signal CS 1. On va maintenant décrire le fonctionnement de l'oscillateur en anneau, en se référant aux figures 4a à 4g, qui représentent respectivement des chronogrammes des signaux logiques ON, SEL, CSl, CS2, CS3, CS4 et CS5. On supposera que les signaux de pilotage des éléments de retard sont tels que les retards dans les différents éléments sont égaux. Supposons que l'on ait ON = 0. L'oscillateur en anneau est alors stoppé. Comme on a SEL = 0, l'élément de retard 211 reçoit un état "0" sur son entrée. Par conséquent, on a CSl = CS2 = 0. Par ailleurs, L'entrée de l'élément de retard 213 reçoit un état " 1 " et on a CS3 = CS4 = CS5 = 1. Si le signal ON passe à l'état "1", on obtient ON = NCS2 = 1 et le signal SEL passe à l'état "1". On fournit alors le signal CS5, initialement à l'état "1", à l'entrée du premier élément de retard 211. Comme on modifie l'état en entrée de l'élément 211, on va successivement modifier les états des signaux en entrée des éléments suivants. En appelant t0 l'instant auquel le premier élément reçoit l'état "1", les signaux CSl et CS2 vont passer à l'état "1" aux instants (t0 + Tm) et (t0 + 2 * Tm). Lorsque le signal CS2 passe à l'état "1", on va obtenir NCS2 = 0 et SEL = 0. L'entrée du premier élément 211 va recevoir un état "0" à l'instant tl = (t0 + 2 * Tm) + tm. Les signaux CS1 et CS2 vont passer à l'état "0" aux instants (tl + Td) et (tl + 2 * Td). On a alors CS2 = 0 et à l'instant (tl + 2 * Td) + td, l'entrée du premier élément 221 reçoit le signal CS5. En ce qui concerne le sous-ensemble 213-215 des éléments de retard, la modification de l'état du signal ON va induire une modification de l'état du signal en entrée de l'élément 213, qui va recevoir un état "0". Les signaux en sortie des éléments 213, 214 et 215 vont donc être modifiés et vont successivement passer à l'état "0". Une fois que le signal CS2 passe à l'état "1", à l'instant (t0 + 2 * Tm), les signaux CS3, CS4 et CS5 vont passer à l'état "1", de sorte qu'à l'instant t0 + 5 * Tm, on obtient CS5 = 1. il suffit que l'on ait SEL = 1 lorsque le signal CS5 passe à l'état "1", pour que l'on produise un front montant dans le signal de pilotage CS1 suite au front montant dans le signal de pilotage CS5. On peut montrer que pour produire une oscillation entretenue des signaux de sortie, il suffit que l'on choisisse R tel que l'on ait cor * (Tm + Td) + tm + td] Cette condition impose qu'à l'instant où le front montant qui se propage dans l'ensemble des éléments de retard a atteint la sortie du N - ième élément de retard, l'état en entrée du premier élément de retard soit différent de l'état résultant du type de front qui se propage (dans le cas présent, cet état résultant est l'état "1"). De préférence, on disposera des multiplexeurs en entrée de tous les éléments de retard, pour garantir des temps de traversée égaux pour tous ces éléments. Dans le cas contraire, les éléments de retard comprenant des multiplexeurs en entrée supporteraient des retards plus importants dus au délai de traversée des multiplexeurs. On notera qu'en dehors de la phase de démarrage, pendant laquelle on peut avoir identité d'états en sortie d'éléments de retard placés en amont et en aval du R-ième élément de retard, on produit également des fronts descendants pouvant être équidistants. 2 - Fonctionnement de l'oscillateur 6. Le circuit verrouillé en phase 9 selon l'invention est, contrairement à un PLL classique, de type numérique. Son fonctionnement est basé sur un échantillonnage du premier circuit d'horloge CK1, cet échantillonnage étant piloté par les signaux de pilotage CS1, CS2 ... CSN produits par l'oscillateur en anneau 21. Par rapport à un PLL classique, dans lequel on cherche à localiser temporellement avec précision les fronts du signal d'horloge reçu, on ne peut localiser lesdits fronts qu'à la différence de phase près entre les signaux de pilotage pilotant l'échantillonnage. Autrement dit, la précision du circuit selon l'invention est inférieure à celle d'un PLL classique, puisqu'il existe une indétermination temporelle sur la position des fronts qui est égale à l'intervalle temporel entre deux échantillonnage. Cet intervalle temporel correspond au délai de traversée des éléments de retard de l'oscillateur en anneau. Pour assurer une précision suffisante du circuit 9, on ne va pas considérer la position des fronts du premier signal d'horloge CKl échantillonné mais, d'une part, la position des fronts pilotant l'échantillonnage du signal d'horloge échantillonné et, d'autre part, l'état du signal échantillonné comparativement à la position de ces fronts. En effet, l'indétermination n'est alors plus donnée par la différence de phase entre les signaux de pilotage mais par l'indétermination sur le temps de traversée des éléments de retard de l'oscillateur en anneau qui génèrent lesdits signaux de pilotage et par l'erreur sur l'instant d'échantillonnage dans les bascules à verrouillage. On pourra ainsi obtenir une précision de l'ordre de 40 picosecondes (30 picosecondes d'indétermination dans les éléments de retard et 10 picosecondes d'erreur dans les bascules à verrouillage), en considérant par ailleurs des intervalles d'échantillonnage de l'ordre de la nanoseconde. On va maintenant décrire le fonctionnement du circuit verrouillé en phase selon l'invention. On va supposer, pour simplifier, que l'on commande les éléments de retard de l'oscillateur en anneau 21 de telle sorte qu'une période du signal d'horloge CKl échantillonné corresponde à une période des signaux de pilotage produits par l'oscillateur en anneau 21. Pour ce faire, en considérant un signal logique à deux états, il suffit que l'état du signal d'horloge échantillonné ne soit modifié que deux fois lors d'un cycle de l'oscillateur en anneau. Par cycle de l'oscillateur, on comprendra la période temporelle correspondant à la fréquence individuelle des signaux de pilotage. Autrement dit, on va produire un deuxième signal d'horloge CSN de même fréquence que la fréquence du premier signal d'horloge. Bien entendu, on comprendra que l'on pourra diviser ou multiplier la fréquence du premier signal d'horloge. Dans le premier cas, il suffit que l'on échantillonne, dans le premier signal d'horloge, moins de deux modifications d'état par cycle d'oscillateur. Dans le second cas, il suffit que l'on échantillonne plus de deux modifications d'état lors d'un cycle d'oscillateur. Par ailleurs, on pourra multiplier la fréquence du premier signal d'horloge en combinant plusieurs signaux de pilotage en sortie du circuit, les signaux de pilotage étant par ailleurs de fréquence inférieure ou égale à la fréquence du premier signal d'horloge. Pour ce faire, on pourra par exemple utiliser un additionneur logique tel que l'additionneur logique portant la référence 16 qui est décrit dans le brevet européen 0 441 684. Dans l'invention, on cherche à commander l'oscillateur en anneau 21 de sorte que les transitions d'état dans le premier signal d'horloge CK1 se situent à la frontière entre deux intervalles d'échantillonnage et, plus précisément, commutent en permanence entre deux intervalles, autour d'un échantillon déterminé. Supposons qu'à un instant donné, lors d'un cycle de l'oscillateur, une transition d'état de type donné dans le premier signal d'horloge est détectée, entre un échantillon OSi et un échantillon OSi + 1. La détection se fera dans le circuit de décodage 25. On ne décrira pas en détails le circuit de décodage, celui-ci ne posant pas de problème de réalisation, une fois sa fonctionnalité définie (on pourra par exemple utiliser un outil de synthèse VHDL définissant de manière automatique la réalisation du circuit de décodage, en termes de portes logiques, à partir de la fonction souhaitée). Typiquement, la détection des transitions se fera par comparaison deux à deux des états des échantillons successifs CSi, CSi+l, i indice variant de 1 à N-l. Si leurs états sont identiques, il n'y a pas eu de transition dans l'intervalle temporel séparant l'échantillonnage du premier signal d'horloge par les bascules 23i et 23i+l. Si leurs états sont différents, il y a eu une transition lors de cet intervalle. En tenant compte des états respectifs des échantillons comparés, on pourra facilement déterminer si la transition était de type front montant ou front descendant. Une fois que l'on a détecté une transition, on va rechercher une deuxième transition de même type dans un cycle ultérieur de l'oscillateur. Dans l'exemple considéré, on souhaite que la fréquence de l'oscillateur soit sensiblement égale à celle du premier signal d'horloge et la deuxième transition sera recherchée dans le cycle suivant. Si l'on souhaite que cette fréquence soit plus élevée, on recherchera cette transition dans un cycle non consécutif au premier cycle. Enfin, si l'on souhaite que la fréquence de l'oscillateur soit plus basse, on recherchera d'autres transitions de même type dans le même cycle. Le procédé mis en oeuvre est le suivant: - si, lors du deuxième cycle, une transition est détectée dans un intervalle postérieur, par exemple entre l'échantillon OSi + 1 et l'échantillon OSi + 2 (voir figure 5a), la fréquence de l'oscillateur en anneau est plus basse que celle du premier signal d'horloge. On diminue alors la période de l'oscillateur en anneau en commandant celui-ci de sorte à diminuer les temps de traversée de ses éléments de retard. - si une transition est détectée dans un intervalle antérieur, par exemple entre l'échantillon OSi - 1 et l'échantillon OSi (voir figure 5b), la fréquence de l'oscillateur en anneau est plus élevée que celle du premier signal d'horloge. On augmente alors la période de l'oscillateur en commandant une augmentation du temps de traversée de ses éléments de retard. - si une transition est détectée dans le même intervalle, c'est-à-dire entre les échantillons OSi et OSi + 1 (voir figure 5c), on ne modifie pas la période de l'oscillateur en anneau. En pratique, on cherche à positionner les transitions du premier signal d'horloge entre deux intervalles voisins, [OSi - 1, OSi] et [OSi, OSi + 1], ou [OSi, OSi + 1] et [OSi + 1, OSi + 2]. Autrement dit, on cherche à obtenir une variation de l'état d'un échantillon donné, à chaque cycle. En procédant ainsi, l'indétermination sur la position des fronts dans le premier signal d'horloge sera égale à l'indétermination sur le moment où l'on produit cet échantillon, autrement dit à la somme de l'indétermination sur le délai de traversée des éléments de retard et de l'indétermination sur l'instant d'échantillonnage dans les bascules à verrouillage. Afin de disposer d'une précision importante, on pourra limiter la modification de la commande des éléments de retard à l'un des éléments, pour une décision d'incrémentation ou de décrémentation donnée. Par ailleurs, on pourra modifier graduellement cette commande, de sorte à moyenner son effet, ce qui permet également d'augmenter la précision du circuit selon l'invention. Pour ce faire, en notant dt l'incrément minimal du délai de traversée d'un élément de retard et le délai de traversée de cet élément étant du type (n * dt), on pourra par exemple, en considérant M cycles successifs, piloter le délai de traversée de l'élément commandé de sorte qu'il soit K * (n * dt) et (M - K) * ((n + 1) * dt). Si le circuit de décodage souhaite commander un incrément, alors on remplace K par K + 1, par exemple. Si le circuit de décodage souhaite un décrément, alors on remplacera par exemple K par K - 1. Si K = M et qu'un incrément est commandé, alors le délai de traversée de cet élément est maintenu à M * (n + 1) * dt et on applique K = 1 à l'élément suivant de l'oscillateur en anneau. Si K = 1 et qu'un décrément est commandé, alors le délai de traversée de l'élément est maintenu à M * n * dt, et on applique K = M à l'élément suivant de l'oscillateur en anneau. On pourra montrer que le procédé décrit est convergent. On produit un second signal d'horloge de fréquence stabilisée autour de la valeur recherchée, la période moyenne du deuxième signal d'horloge étant égale à la période du premier signal d'horloge. Par ailleurs, la gigue dans le second signal d'horloge est approximativement égale à l'indétermination sur le délai de traversée d'un élément de retard de l'oscillateur en anneau. Si la position initiale des transitions d'état dans le premier signal d'horloge est éloignée de l'échantillon autour duquel on souhaite positionner ces transitions, le procédé décrit nécessite un certain temps avant de converger. Une première solution pour pallier à cet inconvénient est d'appliquer ledit procédé aux différents échantillons, de sorte que l'on converge rapidement vers une position stable. Un inconvénient sera alors que la position d'équilibre ne sera pas déterminée à l'avance. Autrement dit, la différence de phase entre les premier et deuxième signaux d'horloge ne sera pas contrôlable précisém procédé aux différents échantillons permet d'assurer plus rapidement un tel verrouillage. Une seconde solution, pour accélérer la convergence du procédé lorsque l'on est loin de la position d'équilibre, est de modifier ledit procédé en modifiant plus fréquemment la commande des éléments de l'oscillateur en anneau. On pourra, ainsi, modifier la commande de l'un des éléments de l'oscillateur à chaque cycle, au lieu de la modifier une fois tous les M cycles. On pourra opérer ainsi lorsque la position des transitions s'éloigne de l'échantillon sélectionné, en décrémentant ou en incrémentant plus brutalement les délais de traversée des éléments de retard. Si le premier signal d'horloge est affecté de gigue, il se peut que cette gigue ne permette pas au procédé de converger pour "rattraper" le premier signal d'horloge. Dans ce cas, Le circuit de décodage laisse dériver le second signal d'horloge jusqu'à ce que la dérive du premier signal d'horloge soit telle que ledit premier signal soit synchronisé sur un autre échantillon. Autrement dit, le second signal d'horloge, même s'il reste verrouillé en fréquence, sera déphasé par rapport au premier signal d'horloge. Cela étant, ce comportement est inhérent à tout PLL filtrant la gigue du signal d'entrée. On va, par exemple, considérer un PLL recevant un signal d'entrée de 100 mégahertz affecté d'une gigue de plus ou moins 100 picosecondes, et l'on supposera que les périodes de l'horloge de base sont de 10.1 nanosecondes pendant 0.5 microseconde et de 99.9 nanosecondes pendant 0.5 microseconde. Si le PLL filtre complètement la gigue du signal d'entrée, il va produire un signal de sortie ayant une période de 10 nanosecondes. Si on suppose qu'à un instant tO donné les signaux sont en phase, leur déphasage augmentera de 100 picosecondes par période jusqu'à l'instant tO + 0.5 microseconde, instant auquel le déphasage est de 180 degrés, puis il diminuera de 100 picosecondes à chaque cycle, pour s'annuler à l'instant t0 + 1 microseconde. De même qu'un PLL classique, le circuit selon l'invention filtre la gigue haute fréquence affectant le premier signal d'horloge. Par contre, pour une gigue de fréquence basse, c'est-à-dire évoluant lentement d'un point de vue temporel, alors cette gigue ne sera pas filtrée. On pourra montrer que qu'au delà d'une fréquence de coupure dépendant de la fréquence de la gigue, de la valeur du délai de traversée des éléments de l'oscillateur en anneau et du facteur de multiplication, la gigue en sortie du circuit 9 est égale au délai de traversée d'un élément unitaire de l'oscillateur. En deçà de cette fréquence, la gigue de sortie est égale à la gigue en entrée, augmentée de la gigue intrinsèque du circuit, si le facteur de multiplication de la fréquence est 1. Si le facteur de multiplication est supérieur à 1, alors la gigue en entrée sera divisée par le facteur de multiplication, la gigue intrinsèque du circuit restant inchangée. Outre ses meilleures performances en terme de gigue, le circuit selon l'invention présente plusieurs avantages - la surface requise pour réaliser le circuit est inférieur à celui d'un PLL classique. En effet, il ne nécessite pas d'éléments analogiques, et plus particulièrement de condensateur, pour réaliser un filtre analogique. Or les dispositifs analogiques occupent traditionnellement une surface plus importante que les circuits numériques. - l'invention pourra être réalisée dans une technologie de type CMOS sans qu'il soit nécessaire de disposer d'étapes spécifiques de réalisation de composants analogiques destinés au filtrage. L'invention présente donc un avantage en terme de coût de fabrication. Par ailleurs, l'invention sera facilement adaptable à différentes applications. I1 suffira de modifier le circuit de décodage. On pourra prévoir d'utiliser un circuit de décodage programmable en fonction de l'application, ce qui facilitera la portabilité de l'invention, voire, dans une application, permettra d'utiliser un unique circuit verrouillé en phase pour réaliser des opérations différentes, sans que la surface requise soit impactée. - la consommation du circuit est également inférieure à celle d'un PLL classique, de type analogique, dans lequel le niveau de sortie du filtre est commandé par des sources de courant chargeant et déchargeant le condensateur de filtrage. Le circuit selon l'invention étant de type numérique, sa consommation provient essentiellement de modifications d'états logiques, ce qui ne nécessite pas généralement une consommation importante. - dans le cadre d'une application de type liaison série haut débit, l'invention est particulièrement avantageuse. On connalt l'utilisation, dans ce type d'application, d'élément de retard commandables utilisés pour produire des signaux d'horloge déphasés précisément. On pourra par exemple se reporter au brevet européen 0 441 684 (et aux brevets américains cités dans la demande) qui décrit un tel circuit. Un inconvénient de ce circuit est que la production des signaux d'horloge déphasés est pilotée directement par un signal d'horloge de base et que cela ne permet pas de filtrer la gigue dans ce signal de base. I1 est donc nécessaire que ledit signal d'horloge de base soit produit par un oscillateur précis, réalisé par exemple en utilisant un PLL. L'invention permet de remplacer ce dispositif par l'oscillateur décrit, le circuit verrouillé en phase remplaçant à la fois le PLL et le circuit produisant les signaux déphasés. Dans le circuit selon l'invention, on peut combiner la production de signaux d'horloge déphasés et le filtrage de la gigue dans le signal d'horloge de base. On réduit ainsi la surface occupée, cette surface ayant déjà été par ailleurs minimisée par rapport à un PLL classique. On élimine également la consommation due au circuit spécifique de production de signaux d'horloge déphasés. REVENDICATIONS 1 - Circuit verrouillé en phase (9), caractérisé en ce qu'il comprend - un oscillateur en anneau programmable (21) produisant des signaux de pilotage (cl 1, CS2,... CSN), - un ensemble (23) de bascules à verrouillage (231, 232, . . 23N) recevant un signal d'entrée (CK1) du circuit, les bascules à verrouillage étant pilotées par les signaux de pilotage et produisant des échantillons (OS 1, OS2, OSN) par échantillonnage du signal d'entrée, - un circuit logique de décodage (25) recevant des échantillons produits par des bascules à verrouillage et pilotant en conséquence l'oscillateur en anneau programmable. 2 - Circuit selon la revendication 1, caractérisé en ce que le circuit de décodage comprend des moyens pour comparer deux à deux des échantillons afin de déterminer si une transition d'état s'est produite dans un intervalle temporel séparant ces deux échantillons, cette comparaison étant effectuée sur au moins deux cycles, consécutifs ou non, de l'oscillateur en anneau de sorte que: - si, lors du deuxième cycle, une transition d'état comparable est détectée dans le même intervalle, la commande de l'oscillateur en anneau programmable n'est pas modifiée, - si, lors du deuxième cycle, une transition d'état comparable est détectée dans un intervalle postérieur, on commande une diminution de la période de l'oscillateur en anneau programmable, - si, lors du deuxième cycle, une transition d'état comparable est détectée dans un intervalle antérieur, on commande une augmentation de la période de l'oscillateur en anneau programmable. 3 - Circuit selon la revendication 2, l'oscillateur en anneau programmable étant formé d'un ensemble d'éléments programmables montés en boucle, caractérisé en ce que la modification de la commande de l'oscillateur, lorsque qu'une augmentation ou une diminution de sa période est commandée, est effectuée sur l'un des éléments programmables de l'oscillateur. 4 - Circuit selon l'une des revendications 2 ou 3, caractérisé en ce que la commande de l'oscillateur en anneau programmable est modifiée graduellement, en augmentant et/ou en diminuant sa période une fois tous les M périodes, avec M un nombre entier. 5 - Circuit selon l'une des revendications 1 à 4, caractérisé en ce que l'oscillateur en anneau programmable est formé d'éléments de retard (211, 212, 215) programmables montés en boucle. 6 - Circuit selon la revendication 5, caractérisé en ce que les éléments de retard sont non inverseurs et en ce que l'oscillateur en anneau programmable comprend des moyens (27, 29, 30) pour modifier l'état d'un signal d'entrée du premier élément de retard, de sorte à permettre une oscillation de l'ensemble des éléments de retard. 7 - Circuit selon la revendication 6, caractérisé en ce que l'oscillateur en anneau programmable comprend des moyens de multiplexage (27) agencés de sorte qu'une entrée du premier élément de retard soit reliée à une sortie du dernier élément ou reçoive un état logique permanent, lesdits moyens de multiplexage étant commandés par un signal de pilotage (CS2) produit sur une sortie de l'un des éléments de retard (212). 8 - Circuit selon l'une des revendications 1 à 7, caractérisé en ce que les signaux de pilotage sont combinés dans un additionneur logique pour produire un signal de sortie de fréquence multiple de la fréquence de l'oscillateur en anneau programmable.