Brevet FR2629608A1 — publié le 19891006

La présente invention concerne un procédé de synchronisation en réception d'une horloge locale d'une station d'un réseau de communication, notamment d'un véhicule automobile et un dispositif pour la mise en oeuvre de ce procédé. Lorsque dans un réseau de communication dif- férentes stations sont interconnectées, elles réa- lisent localement des opérations de communication à partir de leur propre horloge locale. Ces horloges locales fournissent des réfé- rences de temps pour interpréter en réception et engendrer en émission, des trames de communication. En émission, une station engendre des données au rythme de son horloge locale sous forme d'un signal encodé. Afin de faciliter l'interprétation de la trame, l'encodage du signal peut contenir à chaque bit l'information d'horloge, ceci étant réalisé par codage en largeur d'impulsions, codage biphasé, ou tout autre variante. D'autres procédés de transmission ne four- nissent pas de référence de temps à chaque bit. Ainsi par exemple, le codage NRZ (Non Retour à Zéro) repro- duit directement les données. Seules les transitions des données permettent de repérer les transitions de l'horloge locale de la station émettrice. Si le signal comporte une série de bits identiques, on ne peut plus identifier le signal d'horloge. On peut alors adjoindre à ce signal, un bit de début (start) et deux bits de fin {stop) systémati- ques et avoir en réception une horloge assez précise pour entretenir le synchronisme de la station pendant la durée de transmission. Un autre procédé de transmission consiste à insérer un bit de bourrage dans le signal, si un nombre défini de bits successifs sont égaux, de façon à créer une transition permettant de recaler les hor- loges des stations. Ce bit de bourrage doit être retiré de la trame au cours du décodage en réception. Tous ces procédés ne permettent donc de recevoir et d'émettre des messages que si la précision de l'horloge locale de la station concernée est suf- fisamment élevée pour assurer des références de temps correctes entre les recalages d'horloge successifs, en fonction du procédé de codage choisi. On conçoit alors que ces procédés présentent un certain nombre d'inconvénients, dans la mesure o on est obligé de mettre en oeuvre des horloges identi- ques et relativement précises dans chaque station. Le but de l'invention est de résoudre ces problèmes en proposant un procédé et un dispositif de synchronisation qui permettent d'obtenir des référen- ces de temps correctes avec des horloges locales moins précises, voire différentes. A cet effet, l'invention a pour objet un procédé de synchronisation en réception d'une horloge locale d'une station d'un réseau de communication, notamment d'un véhicule automobile, caractérisé en ce qu'on réalise une division temporelle d'un délimiteur de début d'un message reçu par la station, de durée m, par un nombre n déterminé, de manière à obtenir un quotient q et un reste r de division, et ensuite on supprime du signal d'horloge locale de la station, par période de temps m, un nombre de créneaux correspon- dant au reste r de la division, et on divise le nombre de créneaux du signal résultant de cette opération par le quotient q, pour obtenir un signal d'horloge locale synchronisée. Selon un autre aspect, l'invention a égale- ment pour objet un dispositif pour la mise en oeuvre du procédé'tel que décrit précédemment. Il est donc possible dans certains cas, de remplacer un oscillateur à quartz dans la station, par un résonateur céramique, ou un oscillateur résistance- capacité compensé par le procédé selon l'invention. Ce procédé repose sur l'hypothèse que bien qu une horloge soit peu précise, elle reste stable pendant la durée d'une trame et que cette trame contient un délimiteur de début de message-que l'on peut utiliser comme référence commune de temps. L'invention sera mieux comprise à l'aide de la description qui va suivre, donnée uniquement à titre d'exemple et faite en se référant aux dessins annexés, sur lesquels: - les Fig.1 et 2 représentent.deux exemples de procédés de transmission de l'état de la technique; - la Fig.3 représente une trame codée en modulation de largeur d'impulsions, précédée d'un délimiteur de début de message; - la Fig.4 représente un dispositif de l'é- tat de la technique permettant de diviser le délimi- teur de début de message; - les Fig.5 et 6 représentent deux modes de réalisation de dispositifs de synchronisation selon l'invention; et - la Fig.7 illustre un exemple d'applica- tion de signaux obtenus par l'intermédiaire d'un procédé et d'un dispositif selon l'invention. Comme cela est représenté sur la Fig.1, les horloges ' locales de stations fournissent des références de temps pour interpréter en réception et engendrer en émission, des trames de communication. Ainsi, en émission, une station engendre des données 1 au rythme de son horloge interne 2 sous forme d'un signal encodé. Pour faciliter l'interpré- tation de la trame, l'encodage du signal peut contenir à chaque bit l'information d'horloge en utilisant par exemple le codage en largeur d'impulsions comme c'est le cas pour le signal 3 représenté sur cette figure ou le codage biphasé comme c'est le cas pour le signal 4. D'autres procédés de transmission ne fournissent pas de référence de temps à chaque bit, comme le codage NRZ mentionné précédemment, et illustré par le signal sur la Fig.1, qui reproduit directement les données. Seules les transitions des données permettent de re- pérer les transitions de l'horloge de la station émet- trice. Si comme représenté sur la Fig.2, le signal 6 comporte une série de bits identiques, on ne peut plus identifier le signal d'horloge. Il est alors possible d'adjoindre à ce signal un bit de début (start) 7 et deux bits de fin (stop) 8 et 9 et avoir en réception une horloge assez précise pour entretenir le synchronisme pendant la durée de la transmission. Un autre procédé représenté sur la Fig.2, consiste à insérer dans le signal, un bit de bourrage 10 si un nombre défini de bits successifs sont égaux de façon à créer la transition permettant de recaler les horloges. La Fig.3 donne un exemple d'une trame codée en modulation de largeur d'impulsions, précédée d'un délimiteur de début de trame 11. Ce délimiteur est réalisé par un niveau 0 logique durant une première durée de bit, suivi d'un niveau 1 logique durant une deuxième durée de bit. Si l'on veut utiliser la référence de temps de ce créneau, pour fournir à la station locale, l'horloge de référence, il faut la diviser en éléments de temps plus fins qui permettront l'encodage et le décodage des bits. Ainsi par exemple, si l'on souhaite obtenir n divisions de temps de cette référence, on peut réa- liser cette opération par un ensemble de compteurs et de diviseurs programmables représenté sur la Fig.4. Sur cette figure, un signal d'horloge de station 13 et un signal d'entrée 12 sont reliés aux entrées d'une porte ET 14 dont la sortie est reliée à l'entrée d'un diviseur programmable par n, 15, dont la sortie est reliée à un compteur 16, n étant un nombre entier déterminé, et le signal d'entrée 12 étant le créneau de référence de temps du délimiteur de début de message obtenu à partir du signal reçu, par un circuit logique non représenté. La sortie de ce compteur 16 est reliée à un compteur-diviseur programmable 17 dont l'entrée reçoit également le signal d'horloge 13 et dont la sortie. est référencée en 18. On mesure donc la durée m du créneau de référence en utilisant le signal d'horloge 13 qui est inhibé ou autorisé par le signal d'entrée 12 par l'in- termédiaire de la porte 14, pour incrémenter n fois le diviseur programmable 15. Ce diviseur programmable 15 assure la division temporelle par n de la référence pour incrémenter le compteur 16 jusqu'à la valeur q 19, q étant le quotient de la division de la référence par n. Cette valeur mémorisée dans le compteur 16 permet de programmer le compteur-diviseur program- mable 17,et le signal d'horloge ainsi divisé par q à la sortie 18 de ce compteur-diviseur permet d'obtenir environ n tops par durée de référence, mais d'une façon approximative. En effet, si la durée de référence est de par exemple m = 46 tops, qu'on souhaite diviser en n = 16 subdivisions, on obtient q = 2 avec un reste r de 14 tops dont on ne tient pas compte. On génère alors par durée m, 23 tops de référence au lieu des 16 initialement souhaités. Pour pallier cette imprécision liée à la non prise en compte du reste r, on peut soit augmenter la fréquence d'horloge jusqu'à la multiplier par n, soit pour éviter les difficultés liées à cette augmentation de la fréquence, tenir compte du reste par le disposi- tif représenté sur la Fig.5. Ce dispositif, outre les différents compo- sants décrits précédemment en regard de la Fig.4, comme la porte ET 14, recevant sur ses entrées les signaux d'horloge 13 et d'entrée 12, le diviseur pro- grammable 15,le compteur 16 et le compteur-diviseur programmable 17, comporte également un multiplicateur binaire 21 (BRM, Binary Rate Multiplier) constitué par exemple par un composant du type SN 5497 commercialisé par la société Texas Instruments, recevant du diviseur programmable 15, le reste r, 23, de la division de la référence par n. Ce multiplicateur 21 est incrémenté par la sortie 18 du dispositif qui est reliée à son entrée de comptage et la sortie du multiplicateur est reliée à un circuit logique 22 réalisé à partir de bascules et connecté à l'entrée du compteur-diviseur programmable 17. Ce circuit logique 22 permet de supprimer des tops ou créneaux issus du signal d'horloge 13. Ainsi, le multiplicateur binaire 21 programmé par le reste r, 23, de la division par n de la référence, intercepte par l'intermédiaire du circuit logique 22, en temps réel pendant le traitement, r créneaux correspondant au reste de la division, à l'entrée du compteur-divi- seur programmable 17 et donc les supprime du signal d'horloge locale, par période de temps m, avant la division du nombre de créneaux restant de ce signal dans ce compteur-diviseur par le quotient q de la di- vision. Le signal présent à la sortie 18 et résultant de cette division fournit pour la suite du message, en moyenne n tops de référence par durée nq + r = m. Un tel multiplicateur binaire a déjà été utilisé dans des dispositifs pour comparer les durées de deux créneaux, comme décrit par exemple dans le document FR-A-2 577 049 au nom de la Demanderesse, et on ne décrira pas son fonctionnement plus en détail. Dans le cas o la tolérance des horloges est beaucoup plus restreinte, et donc compte tenu du fait que le quotient q de la division est égal à 1, il est également possible de se contenter d'une version simplifiée du dispositif, comme celle représentée sur la Fig.6, dans laquelle le compteur-diviseur program- mable 17 n a pas été représenté dans la mesure o c est un compteurdiviseur par 1, les signaux d'entrée 12 et d'horloge 13 sont toujours raccordés aux entrées d'une porte ET 14 dont la sortie est reliée à un compteur 24 dont les sorties sont reliées aux entrées de commande d'un multiplicateur binaire 25. Ce multi- plicateur binaire est relié à un circuit logique 26 dont l'entrée reçoit le signal d'horloge 13 et dont la sortie 27 est également reliée à l'entrée de comptage du multiplicateur binaire 25. En limitant les toléran- ces d'horloge dans un rapport de 1 à 2, on utilise alors uniquement les bits de poids faible du comptage par le compteur unique 24 comme entrée du multiplica- teur 25. Par exemple, à partir d'une horloge nominale de 4,6 MHz comprise entre 3, 2 et 6,4 MHz, on obtient une durée de référence m de 46 tops, le reste r = 14 programmant le multiplicateur 25 qui supprime r = 14 tops ou créneaux par période de n + r soit 32 + 14 = 46 = m. Le multiplicateur 25 réalise la distribution des 32 tops au cours des 46 tops de la durée de réfé- rence. La distribution est plus régulière si n est une puissance de 2, mais l'utilisation de valeurs autres telles que par exemple n = 3, n = 10 est également possible. L'utilisation de la référence de temps don- née par le délimiteur de début de message n'est pas limitée à la réception et au décodage des trames. En effet, certaines techniques d'accès au réseau utili- sent des procédés dits de collision dans lesquels les stations émettrices peuvent émettre simultanément tout en observant la ligne, comme dans les procédés en accès multiples avec écoute de porteuse CSMA (Carrier Sense Multi Access). Dans ce cas, l'ensemble des stations émet-. trices engendrent des délimiteurs de début de message qui peuvent être légèrement décalés dans le temps et de durées différentes. Si le réseau admet une logique dominante, les délimiteurs de début de trame, comme les délimiteurs 28, 29 et 30 représentés sur la Fig.7, forment un délimiteur commun de début de trame 31 qui sert de référence de temps commune. Les références de temps locales ainsi synchronisées, permettent par exemple de réaliser un procédé de collision bit à bit. Une autre conséquence de ceci est que le réseau s'adapte automatiquement aux décalages d'émis- sion ainsi qu'aux vitesses de transmission les plus lentes. -9 On conçoit donc que le procédé proposé per- met de corriger différents types d'imprécision liés aux horloges locales utilisées, aux problèmes de transmission ou encore aux procédés d'accès aux ré- seaux de transmission. Le procédé et le dispositif qui viennent d'être décrits trouvent des applications notamment dans les réseaux de communication de véhicules auto- mobiles. REVENDICATIONS 1. Procédé de synchronisation en réception d'une horloge locale d'une station d'un réseau de communication, notamment d'un véhicule automobile, S caractérisé en ce qu'on réalise une division tempo- relle d'un délimiteur de début d'un message reçu par la station, de durée m, par un nombre n déterminé, de manière à obtenir un quotient q et un reste r de division, et ensuite on supprime du signal d'horloge locale de la station, par période de temps m, un nom- bre de créneaux correspondant au reste r de la divi- sion, et on divise le nombre de créneaux du signal résultant de cette opération par le quotient q, pour obtenir un signal d'horloge locale synchronisée. 1.5 2. Procédé selon la revendication 1, carac- térisé en ce que, dans un dispositif de transmission à accès multiples au réseau par plusieurs stations, en émission, l'horloge local-e de chaque station se syn- chronise en réception sur un délimiteur commun (31) formé par les délimiteurs de début de message (28, 29, ) de chaque station. 3. Dispositif pour la mise en oeuvre du pro- cédé selon la revendication 1 ou 2, caractérisé en ce qu'il comporte des moyens (15;24) de division tempo- relle du délimiteur de début de message reçu par la station, de durée m, par un nombre n déterminé, de manière à obtenir un quotient q (19) et un reste r (23) de division, des moyens (21,22; 25,26) de suppression du signal d'horloge locale (13) de la 0 station, par période de temps m, d'un nombre de créneaux correspondant au reste r (23) de la division., et des moyens (17) de division du nombre de créneaux du signal résultant de cette opération par le quotient q (19), pour obtenir un signal d'horloge locale syn- 262?608 11I chronisée. 4. Dispositif selon la revendication 3, ca- ractérisé en ce que les moyens de soustraction du res- te r, comprennent un multiplicateur binaire (21;25).