FR 2909242 A1 20080530 FR 0610310 A 20061124 1 CIRCUIT D'EXTRACTION D'HORLOGE A PARTIR D'UNE SEQUENCE DE DONNEES BINAIRES L'invention concerne un circuit électronique permettant d'extraire un signal d'horloge d'une séquence de données binaires incidente arrivant à un rythme constant correspondant au rythme auquel ces données ont été émises. Un tel circuit est utile dans les applications de transmission de données numériques de type série, dans lequel on reçoit les données sans recevoir en même temps un signal d'horloge qui permettrait de connaître la cadence exacte à laquelle les données ont été émises. C'est le cas typiquement de la transmission filaire selon les normes USB. C'est le cas aussi pour des transmissions infrarouge entre un périphérique d'ordinateur et un ordinateur ou plus généralement entre deux appareils. II est indispensable, pour traiter les données incdentes, de reconstituer la cadence d'émission, et c'est le rôle du circuit d'extraction que de produire un signal d'horloge dont la fréquence est identique à la cadence d'émission et qui de plus a une phase qui est correctement définie par rapport aux transitions des données binaires reçues. La question de la phase est particulièrement importante car il ne servirait à rien de reconstituer un signal d'horloge ayant la fréquence exacte souhaitée, celle de l'émission, mais dont les transitions coïncideraient avec les transitions des données ou seraient trop proches de ces dernières : on ne pourrait pas échantillonner les données avec une telle horloge. On cherche en pratique à reconstituer un signal d'horloge ayant un front de montée calé sensiblement au milieu de l'intervalle entre les instants théoriques auxquels peuvent se produire les transitions de données binaires. Dans ce qui suit, on considérera que la fréquence qu'on doit reconstituer est la fréquence à laquelle les données ont été émises, pour simplifier les explications ; cependant, l'invention s'applique de manière générale à la reconstitution d'une fréquence d'horloge préseni:e dans les données reçues, indépendamment de la fréquence émise, dans les cas où il y a un décalage (due à un effet doppler notamment) entre la fréquence reçue et la fréquence émise. 2909242 2 On a déjà proposé dans l'art antérieur des circuits de reconstitution de signal d'horloge à partir de données binaires incidentes. On en trouvera des exemples dans les publications suivantes: - US 2001/0043086 ; ce document fait une mesure numérique 5 d'une erreur de phase et génère des impulsions de largeur variable proportionnelle à l'erreur de phase ; ce principe de mesure numérique empêche un fonctionnement à très haute fréquence ; - US 5 124 669 ; ce document décrit aussi une mesure numérique - US 5 760 653 ; utilise une horloge à forme d'onde triangulaire, 10 difficile à mettre en oeuvre à très haute fréquence ; il utilise aussi un échantillonneur-bloqueur pour commander un oscillateur à fréquence contrôlée par une tension, de sorte que cet oscillateur voit une tension de commande varier de manière abrupte à chaque échantillonnage ; - JP 63094731 ; ce document décrit un système dans lequel on 15 transforme les fronts incidents des données entrantes en formes gaussiennes, ce qui tend à perdre l'information sur l'instant précis des transitions binaires ; - US 6 542 041 ; ce document fonctionne avec des détecteurs de phase numériques fournissant des largeurs d'impulsion variables ; il ne se 20 prête pas à un haut débit d'entrée. L'invention a pour but de proposer un circuit simple, facile à mettre en oeuvre, et ayant des performances améliorées, pour reconstituer un signal d'horloge à partir de données binaires en série. Pour cela l'invention propose un circuit électronique d'extraction 25 de signal d'horloge à partir d'une séquence de données binaires incidente, caractérisé en ce que le circuit comporte un oscillateur à fréquence contrôlée par une tension fournissant un signal sinusoïdal, un circuit d'extraction des fronts de transition de la séquence binaire produisant une impulsion brève à chaque transition, un échantillonneur pour prélever le niveau de la tension 3o sinusoïdale à l'instant de l'impulsion brève, et un intégrateur pour intégrer ce niveau au fur et à mesure des impulsions successives, la sortie de l'intégrateur étant appliquée en tant que tension de commande à l'oscillateur à fréquence contrôlée, la sortie de l'oscillateur étant la fréquence d'horloge désirée avec une phase asservie passant par zéro sensiblement au milieu de l'intervalle entre deux transitions de données binaires. 2909242 3 Le circuit d'extraction des fronts de transition comporte en principe un circuit dérivateur suivi d'un redresseur et d'un circuit de mise en forme. L'échantillonneur comporte un circuit de multiplication analogique de la tension sinusoïdale par l'impulsion brève ; ce multiplicateur peut être un 5 simple commutateur qui applique la tension sinusoïdale à l'intégrateur à l'instant de l'impulsion brève, ou encore un amplificateur à transconductance dont l'alimentation est activée par l'impulsion brève et désactivée en dehors de cette impulsion. L'intégrateur peut comporter une capacité chargée par un courant 10 proportionnel à la valeur de la tension sinusoïdale à l'instant de l'impulsion brève. De préférence, pour faciliter l'accrochage de la boucle d'asservissement ainsi constituée au début de l'application des données, ou en cas de perte d'asservissement, on prévoit un comparateur à seuil à 15 hystérésis recevant la tension de commande de l'oscillateur à fréquence contrôlée, ce comparateur forçant la sortie de l'intégrateur à une certaine valeur en cas de dépassement du seuil. Si le seuil est un seuil haut, on peut forcer la sortie de l'intégrateur à zéro. Il est cependant plus avantageux d'avoir un double seuil (seuil haut, seuil bas) et de forcer la sortie de 20 l'intégrateur à une valeur nominale en cas de franchissement du seuil haut vers le haut ou en cas de franchissement du seuil bas vers le bas. Cette valeur nominale est choisie au voisinage de la tension de commande qu'il faut appliquer à l'oscillateur pour obtenir la fréquence théorique à laquelle on s'attend à recevoir les données binaires. 25 D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit et qui est faite en référence aux dessins annexés dans lesquels : - la figure 1 représente un schéma du circuit d'extraction de 30 données selon l'invention ; - la figure 2 représente un chronogramme de signaux illustrant le fonctionnement d'une partie du circuit de la figure 1 ; - la figure 3 représente un chronogramme d'une autre partie avec une échelle de temps et d'amplitudes dilatée ; 2909242 4 - la figure 4 représente une variante de réalisation du circuit selon l'invention ; - la figure 5 représente une réalisation dans laquelle l'échantillonneur comprend un amplificateur à transconductance ; 5 - la figure 6 représente une réalisation de l'échantillonneur avec un amplificateur à transconductance dont l'alimentation en courant est commandée par l'impulsion brève. On fait l'hypothèse que la durée théorique d'un bit est To = 1/Fo, 10 c'est-à-dire que les transitions entre bits successifs sont séparées par l'intervalle To. On comprendra que le problème de la reconstitution d'horloge vient de ce que les transitions sont invisibles lorsque des bits successifs de même valeur sont émis. La première ligne du chronogramme de la figure 2 représente un exemple de séquence binaire reçue sur l'entrée A du circuit 15 d'extraction d'horloge de la figure 1 ; les 1 sont représentés par un niveau haut, les 0 par un niveau bas. De l'entrée A, les données binaires sont appliquées à un circuit de dérivation, représenté par sa configuration la plus simple, à savoir un ensemble en série d'une capacité Cp et une résistance R, la capacité étant 20 reliée à l'entrée A et la résistance à une masse M. La sortie B de ce circuit de dérivation est prise au point de jonction de la résistance et de la capacité. Cette sortie B fournit des impulsions positives sur les fronts montants des transitions binaires et des impulsions négatives sur les fronts descendants (deuxième ligne du chronogramme). 25 La sortie B est reliée à l'entrée d'un redresseur double alternance RD dont la fonction est de transformer les impulsions positives et négatives en impulsions positives sur sa sortie C (troisième ligne du chronogramme). La sortie C du redresseur peut être appliquée à un circuit de mise en forme qui uniformise l'amplitude des impulsions. Ce circuit de mise en 30 forme est ici composé de deux inverseurs 11 et 12 en cascade. La sortie D du deuxième inverseur produit des impulsions brèves rectangulaires d'amplitude et de durée pratiquement constantes à chaque front de transition de donnée binaire, qu'il soit montant ou descendant (quatrième ligne du chronogramme de la figure 2 et première ligne du chronogramme de la figure 3, ce dernier 35 étant dilaté selon l'échelle des temps et des amplitudes). 2909242 5 L'ensemble des éléments R, C, RD, I1, 12 constitue donc un circuit d'extraction des fronts de transition des données binaires incidentes. On comprendra que ce circuit d'extraction peut être réalisé de différentes manières, le résultat attendu étant une impulsion brève à chaque transition 5 montante et à chaque transition descendante. Le circuit d'extraction d'horloge de la figure 1 comprencl ensuite un oscillateur VCO à fréquence contrôlée par une tension (ou par un courant, mais dans cet exemple, on considère qu'il est commandé par une tension). L'oscillateur VCO fournit sur sa sortie E un signal sinusoïdal dont la 10 fréquence dépend de l'amplitude de la tension de commande Vc appliquée à son entrée (cinquième ligne du chronogramme de la figure 2 et deuxième ligne du chronogramme dilaté de la figure 3). Cette tension de commande Vc est fournie par un circuit d'asservissement qui la maintient à une valeur moyenne pour laquelle la 15 fréquence de l'oscillateur est égale à la fréquence Fo des données binaires entrantes (Fo=1/To). Une période de l'oscillateur est donc égale à la durée d'un bit de la séquence si la boucle est correctement asservie. Pour assurer l'asservissement, on mesure le niveau du signal sinusoïdal en sortie de l'oscillateur au moment de l'impulsion brève, et on 20 applique ce niveau pendant la durée de l'impulsion brève à un circuit d'intégration de tension. La mesure de niveau de tension sinusoïdale est faite par un échantillonneur. Dans sa version la plus simple, l'échantillonneur est un simple commutateur commandé par l'impulsion brève, qui transmet le niveau de tension qu'il reçoit au moment de l'impulsion. Dans une version 25 plus sophistiquée, l'échantillonneur peut être considéré comme un multiplicateur analogique, qui "multiplie" le niveau de tension qu'il reçoit par un gain déterminé pendant l'impulsion brève et par zéro en dehors de l'impusion, et qui produit une tension ou un courant proportionnel au niveau reçu. 30 La figure 1 représente une multiplicateur MLT qui reçoit le signal sur le noeud E qui constitue sa première entrée, et l'impulsion brève sur le noeud D qui constitue sa deuxième entrée. Le résultat sur la sortie F du circuit de multiplication MLT est une tension d'un niveau variable, selon le moment de l'impulsion par rapport à la 35 phase zéro du signal sinusoïdal, pendant la durée de l'impulsion brève 2909242 6 (troisième ligne du chronogramme de la figure 3). On a représenté sur la troisième ligne du chronogramme deux impulsions successives séparées par une période de la sinusoïde ; on doit comprendre que les impulsions peuvent être séparées par plusieurs périodes lorsque la séquence binaire d'entrée 5 comprend plusieurs 0 ou plusieurs 1 successifs. Le circuit d'intégration intègre la tension (ou le courant) sur la sortie F et sa tension de sortie Vc augmente d'autant plus à chaque impulsion que le niveau de tension de l'oscillateur au moment de cette impulsion est positif et plus élevé ; elle diminue d'autant plus que le niveau 10 est négatif et plus élevé. Elle reste constante si le niveau de tension au moment de l'impulsion brève est proche de zéro. La tension Vc va se stabiliser autour d'une valeur de commande Vco correspondant à une fréquence produite égale à la fréquence Fo et une phase telle que l'impulsion brève se cale sur une phase proche de zéro de la tension sinusoïdale ; en 15 effet, le circuit de multiplication fournit alors une tension nulle ou presque pendant l'impulsion brève et n'ajoute ni ne retranche à la tension de l'intégrateur. Ce principe fonctionne indépendamment de la fréquence d'apparition des impulsions brèves représentant les transitions binaires des 20 données d'entrée. Il n'y a pas d'impulsion produite pendant un certain temps si une succession de 0 ou de 1 se produit dans les données d'entrée, mais l'intégrateur conserve alors sa tension de sortie jusqu'aux prochaines impulsions. Le seul problème est que la constante de temps d'intégration s'allonge si les données binaires ne sont pas suffisamment souvent 25 alternées. La constante de temps d'intégration doit être lente pour que le système ne soit pas sensible au bruit de phase des données binaires entrantes ("jitter" ou gigue des données entrantes) mais pas trop pour que l'accrochage de la boucle ne soit pas trop long au départ ou après un 30 décrochage (rupture du lien infrarouge par exemple dans une communication par port infrarouge série). La sortie du circuit d'extraction d'horloge peut être directement la sortie de l'oscillateur VCO si on a besoin d'une horloge sinusoïdale ; si on a besoin d'un signal d'horloge carré CLK, la sortie de l'oscillateur est appliquée 35 à un circuit de mise en forme MF (un simple comparateur à grand gain peut 2909242 7 convenir) qui convertit la forme d'onde sinusoïdale en forme carrée sans en changer la phase. L'intégrateur peut être réalisé à partir d'un simple amplificateur opérationnel AOP ayant une entrée résistive (résistance R1) et un bouclage 5 capacitif entre l'entrée et la sortie. Dans l'exemple représenté, le bouclage capacitif comporte une capacité Cl en parallèle avec un ensemble en série d'une résistance R2 et une capacité C2 permettant de réaliser classiquement une intégration à avance de phase. La capacité Cl sert à l'intégration en haute fréquence, la capacité C2 sert plutôt à laisser passer les basses 10 fréquences ; aux fréquences moyennes, sources potentielles d'instabilité, l'intégrateur agit plutôt en amplificateur non intégrateur. La figure 4 représente une modification du circuit d'extraction d'horloge permettant de faciliter le recalage de l'asservissement en cas de perte de synchronisation ou au début de la réception d'une séquence binaire. 15 Ce perfectionnement comporte un circuit à seuil replaçant la tension de sortie de l'intégrateur ou la tension de commande de l'oscillateur à un niveau prédéterminé si cette tension sort d'une plage de valeurs normale compte-tenu de la fréquence attendue des données binaires. En d'autres mots, l'oscillateur devrait osciller à la fréquence Fo 20 correspondant à une tension nominale Vco, et les variations de tension autour de Vco ne devraient normalement pas excéder une certaine plage. Si on sort de cette plage, c'est vraisemblablement parce que l'asservissement a décroché. Dans ce cas, plutôt que de laisser la boucle retrouver lentement un état asservi qui risque d'être mauvais (asservissement sur une fréquence 25 double par exemple), on force la tension Vc à une valeur prédéterminée qui aide à retrouver plus rapidement une position asservie juste. Dans un exemple simple, on se contente de regarder à l'aide d'un comparateur à seuil (et à hystérésis) CMP si la tension Vc dépasse un seuil haut Vsh, et on force alors cette tension à zéro, ou à une valeur basse 30 inférieure à la plage normale de variation de Vc. De cette valeur basse elle ne pourra que remonter progressivement vers une valeur stable asservie dans la bonne plage de valeurs lorsque la séquence de données binaires incidente sera à nouveau stabilisée. La tension de sortie peut être forcée à une valeur basse en appliquant sur l'entrée de l'amplificateur opérationnel, 35 par une résistance R3, une tension fixe REF qui décharge les capacités de 2909242 8 bouclage Cl et C2. Le comparateur CMP commande un commutateur SW pour effectuer cette action lors d'un dépassement du seuil. Dans une solution plus sophistiquée et préférable, on compare la tension Vc à un seuil haut Vsh et à un seuil bas Vsbn à l'aide d'un double 5 comparateur à hystérésis. Si la tension Vc dépasse Vsh vers le haut ou Vsb vers le bas, on force alors la sortie à une valeur constante qui est par exemple la tension Vco théorique qui produit la fréquence Fo. Le retour de l'asservissement en cas de perte de données est ainsi à la fois plus rapide et plus sûr. 10 Dans un exemple, si l'ensemble du circuit est alimenté entre 0 volt et +5 volts, la tension nominale Vco donnant la fréquence F'o peut être de 3 volts, et la plage de variation admissible Vsb, Vsh peut être de 1,2volt à 4 volts. Pour forcer la sortie de l'intégrateur à une valeur intermédiaire 15 telle que Vco ou une valeur approchante, il peut être préférable de prévoir que le circuit d'intégration est un circuit d'intégration de courant plutôt que de tension. Ceci est représenté à la figure 5. La tension sinusoïdale de sortie de l'oscillateur VCO est appliquée au multiplicateur analogique ML.T (dont on rappelle qu'il peut être un simple commutateur fermé pendant l'impulsion 20 brève représentant une transition de donnée binaire). La sortie F du multiplicateur est appliquée à un amplificateur à transconductanc:e AGM qui convertit la tension qu'il reçoit en courant proportionnel à cette tension. Le courant de sortie de l'amplificateur AGM, qui dure autant que l'impulsion brève, est appliqué à un intégrateur qui comprend une capacité simple Cl 25 (ou un ensemble Cl, R2, C2 similaire à celui de la figure 4 si on veut une intégration à avance de phase). C'est la tension aux bornes de la capacité Cl qui est la tension Vc appliquée comme signal de commande à l'oscillateur VCO. Dans ce cas, il est facile, en cas de sortie de la plage Vsb, Vsh, de 3o fermer par un commutateur SW, sous la commande du comparateur à double seuil et à hystérésis CMP, un interrupteur reliant la capacité Cl à une référence de tension de valeur Vco (par exemple). La capacité se charge à cette valeur Vco, dans la plage admissible, ce qui rouvre le commutateur SW et permet à l'asservissement de s'établir à nouveau en partant d'une base 35 fiable. 2909242 9 Dans ce qui précède, on a considéré que l'échantillonneur et l'intégrateur étaient deux fonctions bien séparées. On notera que dans des réalisations électroniques pratiques sur circuit intégré, il peut être plus facile de mélanger ces fonctions pour aboutir à la même fonction globale. 5 Ainsi, la figure 6 représente une réalisation d'échantillonneur qui reçoit à la fois la tension sinusoïdale de l'oscillateur VCO et l'impulsion brève représentant une transition de donnée, et qui produit un courant de sortie proportionnel à la tension sinusoïdale pendant l'impulsion brève. Ce courant de sortie charge une capacité Cl (ou un ensemble Cl, C2, R2) aux bornes 10 de laquelle est prélevée la tension Vc qui commande l'oscillateur. La capacité agit en intégrateur du courant reçu. L'échantillonneur (ou multiplicateur analogique) comprend dans cet exemple une paire différentielle de deux transistors bipolaires NPN N1 et N2 dont les courants sont linéarisés par des résistances d'émetteur 15 identiques Re ; les collecteurs sont chargés l'un par un transistor PNP P1 monté en diode, l'autre par un transistor PNP P2 ayant sa base et son émetteur reliés à la base et à l'émetteur du transistor P1. La paire différentielle NI, N2 est alimentée en courant sortant par une source de courant SC1 pouvant être interrompue par un transistor N3 commandé par 20 l'impulsion brève présente au noeud D du circuit des figures / ou 4. Un transistor N4 est relié entre la source de courant et la tension d'alimentation Vcc de la paire différentielle pour absorber le courant de la source SC1 lorsque le transistor N3 est bloqué. Le transistor N4 est conducteur lorsque le transistor N3 est bloqué et réciproquement, l'impulsion brève au noeud D 25 étant de préférence appliquée directement entre les bases des transistors N3 et N4. En dehors de l'impulsion brève, la paire différentielle n'est pas alimentée en courant et ne produit pas de courant différentiel de sortie vers la capacité d'intégration. Pendant l'impulsion brève, un courant de 30 déséquilibre proportionnel à la tension de sortie de l'oscillateur est dirigé vers la capacité d'intégration connectée entre le collecteur du transistor N2 et la masse. Dans cette réalisation, on a considéré que la tension sinusoïdale au noeud E est une tension différentielle et non une tension simple par 35 rapport à la masse comme on l'avait représenté sur les figures 1 et 4 ; il en 2909242 10 est de même de l'impulsion brève au noeud D. II est en général très simple et avantageux de travailler avec des tensions et courants différentiels dans les circuits intégrés. Ce circuit de la figure 6 réalise la fonction de multiplication 5 analogique d'une tension (entre les bases de N1 et N2) par l'impulsion brève, en même temps qu'une fonction d'amplification à transconductance ; la capacité de sortie Cl assure la fonction d'intégration. L'amplificateur à transconductance constitué par la paire de branches différentielles (N1, N2, P1, P2) a son alimentation en courant (SC1) activée par l'impulsion brève. ~o Cette alimentation en courant est déviée par le transistor N4 en dehors de l'impulsion brève. REVENDICATIONS 1. Circuit électronique d'extraction de signal d'horloge à partir d'une séquence de données binaires incidente, caractérisé en ce que le circuit comporte un oscillateur (VCO) à fréquence contrôlée par une tension fournissant un signal sinusoïdal, un circuit (R, Cp, RD, I1, 12) d'extraction des fronts de transition de la séquence binaire produisant une impulsion brève à chaque transition, un échantillonneur (MLT) pour prélever le niveau de la tension sinusoïdale à l'instant de l'impulsion brève, et un intégrateur (AOP, RI, Cl) pour intégrer ce niveau au fur et à mesure des impulsions successives, la sortie de l'intégrateur étant appliquée en tant que tension de commande à l'oscillateur à fréquence contrôlée, la sortie de l'oscillateur étant la fréquence d'horloge désirée avec une phase asservie passant par zéro sensiblement au milieu de l'intervalle entre deux transitions de données binaires. 2. Circuit d'extraction d'horloge selon la revendication 1, caractérisé en ce que le circuit d'extraction des fronts de transition comporte un circuit dérivateur (R, Cp) suivi d'un redresseur (RD) et d'un circuit de mise en forme (I1, 12). 3. Circuit d'extraction d'horloge selon l'une des revendications 1 et 2, caractérisé en ce que l'échantillonneur comporte un circuit de multiplication analogique de la tension sinusoïdale par l'impulsion brève. 4. Circuit d'extraction d'horloge selon la revendication 3, caractérisé en ce que le circuit de multiplication analogique comprend un amplificateur à transconductance dont l'alimentation en courant est activée par l'impulsion brève. 5. Circuit d'extraction d'horloge selon l'une des revendications 1 à 30 4, caractérisé en ce que l'intégrateur comporte une capacité chargée par un 2909242 12 courant proportionnel à la valeur de la tension sinusoïdale à l'instant de l'impulsion brève. 6. Circuit d'extraction d'horloge selon l'une des revendications 1 à 5 5, caractérisé en ce qu'il comporte un comparateur à seuil à hystérésis (CMP) recevant la tension de commande de l'oscillateur à fréquence contrôlée, ce comparateur forçant la sortie de l'intégrateur à une valeur nulle en cas de dépassement du seuil. 10 7. Circuit d'extraction d'horloge selon l'une des revendications 1 à 5, caractérisé en ce qu'il comporte un comparateur (CMP) à seuil à hystérésis à seuil double, ayant respectivement un seuil haut et un seuil bas, ce comparateur forçant la sortie de l'intégrateur à une valeur nominale en cas de franchissement du seuil haut vers le haut ou en cas de 15 franchissement du seuil bas vers le bas.