CA1257006A - Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusion - Google Patents
Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusionInfo
- Publication number
- CA1257006A CA1257006A CA000494659A CA494659A CA1257006A CA 1257006 A CA1257006 A CA 1257006A CA 000494659 A CA000494659 A CA 000494659A CA 494659 A CA494659 A CA 494659A CA 1257006 A CA1257006 A CA 1257006A
- Authority
- CA
- Canada
- Prior art keywords
- collision
- coupler
- count
- channel
- indexes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000000034 method Methods 0.000 title claims description 48
- 230000005540 biological transmission Effects 0.000 claims abstract description 66
- 230000006870 function Effects 0.000 claims description 12
- 230000007704 transition Effects 0.000 claims description 10
- 238000003066 decision tree Methods 0.000 claims description 5
- 238000009792 diffusion process Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 230000000284 resting effect Effects 0.000 claims description 4
- 230000002250 progressing effect Effects 0.000 claims description 2
- KCXVZYZYPLLWCC-UHFFFAOYSA-N EDTA Chemical compound OC(=O)CN(CC(O)=O)CCN(CC(O)=O)CC(O)=O KCXVZYZYPLLWCC-UHFFFAOYSA-N 0.000 claims 1
- 230000003247 decreasing effect Effects 0.000 claims 1
- 230000001419 dependent effect Effects 0.000 claims 1
- 229960001484 edetic acid Drugs 0.000 claims 1
- 230000000737 periodic effect Effects 0.000 description 39
- 238000012360 testing method Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 18
- 238000004891 communication Methods 0.000 description 17
- 238000000926 separation method Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 238000009434 installation Methods 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 150000002500 ions Chemical class 0.000 description 3
- 210000000056 organ Anatomy 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000011282 treatment Methods 0.000 description 3
- 206010011469 Crying Diseases 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241001408197 Eois Species 0.000 description 1
- 235000014066 European mistletoe Nutrition 0.000 description 1
- OAKJQQAXSVQMHS-UHFFFAOYSA-N Hydrazine Chemical compound NN OAKJQQAXSVQMHS-UHFFFAOYSA-N 0.000 description 1
- 101100384355 Mus musculus Ctnnbip1 gene Proteins 0.000 description 1
- 235000012300 Rhipsalis cassutha Nutrition 0.000 description 1
- 241000221012 Viscum Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 150000001768 cations Chemical class 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000001061 forehead Anatomy 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Dans un réseau de transmission de messages du type CSMA-CD, chaque station est reliée par un coupleur au canal de transmission commun. A chaque coupleur, on affecte un ou plusieurs index ainsi qu'un automate possédant un état de repos et un état de travail, dit époque, et propre à établir une séquence prédéterminée de sousensembles d'index, telle qu'un arbre dichotomique. Un compteur d'époque évolue à la cadence d'ordres de fin de phase canal. Le coupleur n'émet librement que si son comptage est à zéro. Lorsqu'il apparaît, dans cet état, une collision, tous les coupleurs mettent en action leurs automates qui évoluent aussi à la cadence des fins de phase canal tandis que le compteur part d'un état de forçage choisi, Les coupleurs vont par la suite pouvoir émettre un à un sans collision.
Description
;'7~
Procédé et dispositif pour la transmission de messages entre _ différentes stations à travers un réseau local à diffusion~
_, _ L'inven-tion concerne la transmission automati~ue d'informa-tions entre différents équipemen-ts qui sont interconnectes par un réseau local à diffusion.
Dans un réseau local à diffusion, le support de la transmis-sion d'informations entre les équipements est d'une nature qui permet à chaque équipement de percevoir les messages transmis. Le moyen physique employé pour engendrer les signaux élémentaires des messages est quelconque. Le message peut par exemple être défini sous forme électro-magnétique, c'est-à-dire porté par des électrons, ou sous forme optique, c'est-à-dire porté par des photons.
Pour leur part, les supports d'une communication à diffusion peuvent être passifs, semi-passifs ou actifs. Ils sont dits passifs lorsqu'ils ne comportent aucun élément chargé de régénérer ou d'amplifier les signaux du message. (De tels élements requièrent naturellement l'utilisation d'une source d'énergie extérieure). Les supports sont dits semi-actifs lorsqu'ils recèlent de tels éléments régénérateurs ou amplificateurs. Enfin, les supports actifs comportent des éléments qui sont chargés, lors de leur passage, de modifier tout ou partie des signaux du message. La présente invention s'applique à ces différentes catégories de supports à diffusion, étant observé que les supports actifs mentionnés en dernier lieu peuvent présenter en certains cas des particularités d'application.
Pour leur part, les équipemen-ts automatisés qui vont être interconnectés par le réseau peuvent être quelconques. Il s'agit, par exemple, de capteurs/actionneurs, d'automates ;~
,~
programmables, de contrôleurs/regulateurs, de terminaux informatiques, d'ordina-teurs, d'équipements télephoniques, de -terminaux vidéo.
Ces équipements sont raccordés à des stations d'accès qui assurent la gestion des communications sur le ou les supports partagés. Chaque station fonctionne de manière autonome et asynchrone par rapport aux autres stations.
Chaque station est physiquement raccordée au support à
diffusion, qu'elle partage avec les autres stations, au moyen d'un ensemble de matériel et de logiciel appelé
coupleur.
Ainsi, un coupleur a pour fonction d'assurer la génération et la réception des signaux physiques sur le support de communication, ainsi que d'exécuter un protocole d'accès gérant le partage de ce support, la transmission et la réception des informations structurées sous forme de messages.
La présente invention concerne plus particulièrement le fonctionnement de ces coupleurs.
Il y a autant de coupleurs que de stations raccordées au réseau local. Ils sont, en principe, tous identiques. La seule ressource commune partagée par les stations est donc le support de communication physique. Les coupleurs fonctionnent de manière asynchrone, et ne peuvent connaître instantanément ce que font les autres coupleurs à tout moment. Un tel système entraine la possibilité d'une -tentative de transmission simultanée de différents messages, émis par plusieurs coupleurs. Une telle tentative de transmission simultanée provoque ce que l'on appele une collision.
~2,5~
Dans le domaine des réseaux informatiques, on connaît une technique dite CSMA (Carrier Sense Multiple Access), c'es-t-à-dire "accès mult:iple avec écoute prealable". Selon cette technique, lorsqu'un coupleur décide d'émettre un message, il doit au préalable écouter le support de communication.
Ce n'est que lorsqu'aucune transmission n'est en cours qu'un coupleur a le droit d'émettre.
Toutefois, les delais de propagation des signaux sur le support de communication n'étant pas nuls, plusieurs stations peuvent au même moment détecter l'absence de tr~ns-mission et émettre leurs messages. Il y a donc collision.
La publication du Brevet français n~ 2 306 478, au nom de ZEROX CORPORATION propose un protocole qui permet de détec-ter de telles collisions, et de gérer les retransmissions après détection de collision (retransmission car, par hypo-these, la tentative de transmission initiale est demeurée infructeuse du fait de la collision).
Dans ses développements actuels, le protocole en question est connu sous le nom de CSMA-CD/BEB (Collision Detection and Binary Exponential Backoff). Voir notamment le document : The Ethernet Local Network : Three Reports, publié par Xerox, Palo Alto Research Center Etats-Unis Février 1980.
L'inconvénient de ce protocole connu est qu'il est de nature probabiliste. En effet, il ne peut garantir avec certitude qu'un message soumis au support de communication par une station déterminée pourra être transmis avec succès sur le support en un temps fini, susceptible d'être fixé a priori.
Si un message urgent, c'est-à-dire prioritaire par rapport aux autres messages, doit être transmis, il sera soumis aux i'~..
mêmes regles qu'un message non urgent sans priorité, et de ce ~ait pourra eventuellement ne pas etre transmis dans les délais voulus.
Or, de nombreux systèmes automatiques et informatiques opérant en temps réel imposent que tout ou partie des messages engendrés par les équipements soient transmis en des délais finis, bornés supérieurement, la borne étant connue a priori.
Dans un contexte très différent, où la transmission s'effec-tue dans des créneaux temporels prédéterminés d'une manière commune pour tous les équipements, ce problème a été étudié
par J.I. Capetanakis, dans l'article intitulé "Generalized TDMA : The Multi-accessing Tree Protocol", IEEE Transactions on Communications, Vol. l, Com. 27, N~ 10, Octobre 1979.
Capetanakis propose un algorithme de résolution de collision pour les supports de transmission de type canaux satellite.
Outre le fait qu'il est appliqué à des supports de communi-cation à longue distance, puisqu'un satellite géostation-naire est situé à 36 000 kilomètres de la Terre, l'algorithme proposé fait intervenir les considérations suivantes:
- le canal satellite est synchrone, tous les coupleurs possédant chacun une horloge physique parfaitement synchrone avec toutes les autres horloges, et les messages ne sont transmis que dans des tranches de temps parfaitement déter-minées et toutes égales (c'est le principe du système TDMA, pour Time Division Multiple Access).
- Il n'existe pas de priorité absolue ou relative entre les coupleurs ou les messages.
- Chaque message tient exactement dans une tranche de temps.
~l apparai-t immediatement que les propositions faltes par Capetanakis ne sont pas transposables aux protocoles de nature CSMA-CD, dont le fonctionnement est tout à fait différent de ceux des transmissions TDMA. De plus, Capetanakis n'expose pas selon quelles règles un coupleur, impliqué ou non dans une collision, sait s'il a de nouveau le droit d'émettre. Enfin, l'algoritAme proposé par Capetanakis ne traite pas les cas d'erreurs ou de pannes.
Il demeure donc ~ue, dans les réseaux connus du type CSMA-CD, une collision est résolue de manière probabiliste, comme précédemment indiqué. En cas de collision entre messages urgents, il n'y a aucune possibilité de garantir la transmission de tous ceux-ci en un délai fixé a priori.
Dans ces conditions, la présente invention a pour but d'ap-porter une solution aux problèmes qui viennent d'être relevés.
Plus précisément, l'invention a pour but de fournir un procédé et un dispositif nouveaux qui possèdent les avanta-ges suivants:
- le procédé peut être un procédé à options, toute option pouvant être sélectionnée au moment de la construction des coupleurs ou au moment de leur installation après construc-tion.
- Lorsque les options sont sélectionnées à l'installation, le changement d'option est possible en cours d'utilisation du réseau ou système de communication, sans qu'il soit nécessaire d'arrê-ter complètement son fonctionnement.
- Une première option, correspondan-t à un mode dit "géneral", perme-t de gérer des coupleurs génerant du trafic mixte périodique et apériodique.
- Une autre op-tion, correspondant à un mode dit "periodique", permet de gérer spécifiquement des coupleurs générant du trafic périodique.
- Le procédé n'impose aucune limite superieure particulière pour la taille des messages.
- Tous les messages soumis à transmission sur le support physique sont transmis en un délai fini, dont la borne supérieure est connue a priori pour une taille maximum de messages donnée, qu'il y ait ou non apparition de collision.
Lorsque se produit une collision, on appelle époque l'inter-valle nécessaire à la résolution complète de cette collision.
- Lorsque les messages ou les noms des coupleurs sont répartis dans plusieurs classes de priorités différen-tes, l'ordre de transmission des messages entrés en collision s'effectue dans une époque dans l'ordre des priorités.
- A l'intérieur d'une époque, chaque coupleur peut émettre un nombre quelconque mais fixé de messages. Ce nombre peut être fixé à l'installation des coupleurs et peut être modifié pendant le fonctionnement du système de communica-tion.
- L'apparition d'une panne complète de coupleur, d'une erreur de transmission ou d'un retrait de coupleur n'entraîne pas la panne globale du système. Et il est possible d'insérer un nouveau coupleur ou d'en enlever sans ~i;'7~
interrompre le fonctionnement du sys-tème.
Le procédé peut tolerer des compor-tement fautifs (tels que des brouillages intempestifs) pourvu que ces comportements soient détectés par tous les coupleurs. Plus généralement, le procédé possède les memes propriétés de Eiabilité que le procédé CSMA-CD.
Enl'absence de collision, le mode d'accès au support est de type CSMA-CD. Le procédé proposé s'intègre dans la structure des boîtiers implantant le protocole CSMA-CD/BEB.
Comme on le verra plus loin, lorsque le mode général est sélectionné, le système alterne en permanence entre les deux états de fonctionnement suivants:
- état "époque en cours" : une époque est définie précisément comme l'intervalle de temps compris entre l'apparition d'une collision alors que le canal est dans l'état "hors époque" et la résolution complète de cette collision; au cours d'une époque, des collisions peuvent se produire; le mode d'accès est dit "tranché" et est défini par le procédé décrit dans le présent-document.
- état "hoxs époque" : toute collision antérieure a été
résolue; le mode d'accès est dit "aléatoire" (CSMA-CD).
Lorsque le mode périodique est sélectionné, le système est en permanence dans l'état "époque en cours", chaque époque étant précédee d'une collision ~énérale détectée par le procédé CSMA-CD. Dans ce mode, en l'absence de fautes de fonctionnement, aucune collision ne peut se produire dans une époque.
~5~
- 7a -L'invention permet également d'étendre la gamme des classes de trafic gérées par les protocoles du type CSMA-CD/BEB. En particulier, le procédé de l'invention pour la résolution deterministe des collisions permet d'asc;urer une gestion efficace d'un -trafic de messages à caractère périodique aussi bien que d'un trafic à priorités multiples.
Pour une meilleure compréhension de l'invention, il est fait reference au Brevet français n~ 2 306 478 précite, ainsi qu'à la norme IEEE 802.3, qui décrit les caractéristiques génerales des reseaux de type ETHERNET.
Dans la suite, on appelle p le délai de propagation des signaux d'un bout à l'autre du support de communication.
,~
~5'70~6 On note par TC une durée supér.ieure à deux :Eois p, et définie comme ~tant la " t:ranche cana:L" (channel slot -time dans la norme IEEE 802.3 préc.itée).
Selon l'invention, on appelle " phase canal" l'intervalle correspondant soit à une transmission complète et réussie d'un message de durée quelconque au molns égale à TC, soit à une tranche canal dans laquelle il s'est produi-t une collision (avec les brouillages correspondants) soit à une tranche canal de silence, sans émission ni colli-sion.
Plus spécifiquement, selon l'invention, il est prévu un procédé de transmission de messages entre différentes stations, du type dit CSMA-CD, dans lequel:
- chaque station est munie d'au moins un coupleur qui la connecte à un canal de transmission commun, à diffusion, - chaque coupleur est capable d'émission-réception sur ce canal, en mode asynchrone, en définissant une tran-sition à chaque fin d'émission ou de réception, (l'émis-sion se traduit, en règle générale, par la présence d'une porteuse sur le canal, à partir de laquelle sont définies les transitions), - chaque coupleur écoute en permanence ledit canal et le scrute après chaque transi-tion pendant une durée prédéterminée, qui est la tranche canal, - un coupleur ne peut commencer à émettre un message, sur demande de sa station, qu'en l'absence de signal (porteuse) sur le canal, tandis qu'il interrompt ou invalide son émission s'il-apparalt, pendant la tranche ; .
~2~7~
- 8a -canal correspondante, un signal indicatif d'une collision, tel qu'un broui:Llage, manlfestant un début d'émlsslon simultanee par ~ rs.
!
~:5~ 6 ' D'une manière générale, le procédé selon l'invent:ion est rema:rquable en ce que:
- initialement, on affecte à chaque coupleur au moins un index qui lui est propre, choisi dans un ensemble d'inclex prédéterminé, et on munit chaque coupleur d'un automate qui possède un état de repos e-t un état de travail, dit ~poque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et de pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est ~onction de sa structure et du nombre total des index, - on établit un or~ce de changement de pas, dit fir de phase canal, dans chaque coupleur à la fin de toute tran~
che canal ayant donné lieu à silence ou collision, ou à la fin de l'émission réussie d'un message, - dans chaque coupleur, on en-tretient au moins un premier comptage qui évolue à la cadence des fins de phase canal, et en ~ fonction de la présence ou de l'absence de collision pen-dans chaque phase canal, jusqu'à une valeur de reférence choisie, un coupleur n'est autorisé à émettre librement que si son comptage se trouve à la valeur de référence, et - en présence d'une collision lorsq~e ledlt comptage est à
sa valeur de référence, tous les coupleurs en service met-tent leur comptage à une valeur de for$age choisie, alorsqu'au moins les coupleurs actifs! c'est-à-dire qui ont ~mis lors de la collision, font passer leur automate~ à l'é~
tat de travail ou époque, et lui font parcourir ladite séquence à la cadence des fins de phase canal, cependant que seuls les coupleurs munis d'un lnde~Y appartenant au sous-ensemble désigné par ce pas sont autorisés à émettre un message associé à cet index, la valeur de forçage et la valeur de réEérence étant choisies de fason que le com~ta~e ne revienne ~ la valeur ~e ré~érence clu'après résolution compl~te cle la collislon qlll a encJendre l'époq-le, les cou-pleurs étant alors autorisés à nouveau à émettre librement, -tandis que les automates reviennent en leur état de repos.
Ceci permet de résoudre -toute collision en un temps limi-té.
Selon un aspect avantageux de l'inventlon, les coupleurs clont l'automate est dans l'état de travail entretiennent un second comptage, qui évolue aussi à la cadence des fins de phase canal et en fonction de la présence ou de ~'absence de collision pendant chaque phase canal,' mais à l'intérieur de l'époque et avec des valeurs de forçage et de référence dont l'une au moins est différente de celles du premier comptage.
Pour la mise en oeuvre de ce procédé, l'invention fait usage de coupleurs comportant, de façon connue~ :
- un circuit de contrôle du canal de transmission, propre à fournir au moins trois signaux logiques respectivement représentatifs d'une émission en cours par le coupleur (TxD), d'une réception en cours sur le canai (RxD), et d'une collision détectée sur le canal (CD) et, - un circuit de commande qui assure la liaison entre le reste de la station et le circuit de contrôle, en fonction des signaux reçus sur le canal, et des demandes d'émission de message en provenance de la station.
Dans un coupleur selon l'invention, le circuit de commande comprencl :
~5~6 - des moyens propres ~ mémoriser au molns un index binai.re qui lui est propre, et au moins une denlGInde d'émlssion de message en relat.ion avec cet index, - des moyens locJiques de phase canal pour cleEinir les fins de tranche canal, ainsi que des Eins de phase canal corres-pondant soit ~ une fin de tranche canal ayant donné lieu à
silence ou collision, soit à la fin de ]'émission réussie d'un message, - des premiers moyens de comptage pour effectuer un premier comptage évo-luant à la cadence des fins de phase canal jusqu'à une valeur de référence choisie, - des moyens logiques multi-états, définissant un automate possédant un état de repos et un état de t~vail~ dit époque, ~ans lequel il établit une séquence prédéterminée de 50U5-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index! et pour pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nom-bre de pas maximum qui est fonc-tion de sa s-tructure et du nombre total des index, -- des moyens n'autorisant le coupleur à emettre libremer.t que si le premier comptage se trouve à sa valeur de réfé-rence, - des moyens propres à réagir à la présence d'une collision lorsque le premier comp-tage est à sa valeur de réference en mettant ce premier comptage à une valeur de forçc,ge choi-sie, et en faisant passer l'automate en scn état d~ travail, ou époque, e-t des moyens n'autorisant alors le coupleur ~ émettre que si son index appartient au sous-ensemble désigné à chaque fois par l'automate, la valeur de forsa~e et la valeur de réference ~ -:Y
~L2S7~ 6 étant choisies de Eaçon que le comptage ne revienne à
la valeur de référence qu'après résolution complè-te de la collision qui a engendré l'époque, les coupleurs étant alors au-torisés à nouveau à émettre librement, tandis que les automa-tes reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
De préférence, le coupleur comporte desseconds moyens de comptage, évoluant aussi à la cadence des Eins de phase canal, et en fonction de la présence ou de l'absence de collision pendant chaque phase canal, mais à l'intérieur de l'époque, et avec des valeurs de forçage e't de réfé-rence dont l'une au moins est dlfférente de celles des premiers moyens de comptage.
D'autres aspects préférés de l'invention seront maintenant exposés. Ils s'appliquent tant au niveau du procédé qu'à
celui du dispositif. On s'intéressera d'abord au mode général, ensuite au mode périodique.
En mode général, les moyens logiques multi-états sont agencés pour définir une séquence prédéterminée structurée en un arbre de décision binaire, propre à subdiviser l'ensemble des index par dichotomies successives jusqu'à
les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à une collision, ou à l'émission réussie d'un message, et les valeurs de forçage et de référence du premier comptage sont espacées de 2 pas, ce comptage évoluant d'un pas, en progression ou régression par rapport à la valeur de référence, sui-vant que la phase canal précédente a ou non fait l'objet ~i7~
- 12a -d'une collis.ion.
Selon un au-tre aspect de ce mode géné.ral, les moyens logiques multi-états sont agencés pour exécu-ter une règle d'exploration/décision qui comprend:
- le passage à l'autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une /
.. . _ . .. . .
, .
;;7~
phase canal d'emission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en presence d'une phase canal de collision, et les valeurs de forçage et de référence du second comptage sont les memes, ce comptage évoluant d'un pas comme le premier, en progression ou régression par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de détermin0r qu'il a réintégré un sous-ensemble l'autorisant à émettxe.
Selon une variante avantageuse, en présence d'une phase canal de silence, la règle d'exploration/décision comprend une nouvelle dichotomie immédiate de l'autre sous-ensemble de la dichotomie en cour$.
Selon une autre variante avantageuse, en présence d'une collision au cours de laquelle son premier comptage se trouve à la valeur de référence, le coupleur fait passer systématiquement son automate à l'état de travail; dans la suite de l'époque, l'émission d'un message par le coupleur demeure autorisée pour les index appartenant à un sous-ensemble ayant donné lieu à une collision non encore résolue.
En pratique, les moyens logiques multi-états sont agencés de sorte que ledit arbre binaire est défini d'après les bits successifs des index, et l'ordre dans lequel ils se présentent.
Selon un mode de réalisation particulier, les moyens logiques multi-états comprennent des moyens formant un registre à décalage, de capacité au moins égale au nombre maximum de bits significatifs présents dans les index de l'ensemble pxédétermine, la dichotomie comportant un décalage du contenu de ce registre, et des moyens pour comparer le contenu du registre à l'index en cours.
Selon un autre aspect de l'invention, le coupleur re~oit initialement plusieurs index de priorités differentes, ladite règle d'exploration/décision explore les sous-ensembles d'index dans l'ordre des priorités, et les demandes d'émission de message sont associees chacune à l'un des index en fonction de leur priorité.
Selon encore une autre variante avantageuse, s'il n'a pas reçu de demande d'émission de message de la part de sa sta-tion, le coupleur se comporte comme désirant émettre unmessage 'nil' (l'emission ne sera pas exécutée, sauf si un vrai message vient entre temps se substituer au message 'nil'). Le coupleur fait ainsi passer systématiquement son automate à l'état de travail ou époque, dès lors qu'il se produit une collision pendant l'état de repos de ce même automate.
En mode périodique, ladite séquence prédéterminée est une suite de tous les index, pris à un un, et la différence entre les valeurs de forcage et de référence du premier comptage est au moins égale au nombre de pas de ladite suite, ce comptage progressant vers la valeur de référence à
chaque fin de phase canal sans collision.
Très avantageusement, on affecte à ce coupleur plusieurs index, ce qui permettra au coupleur de faire passer au moins un autre message avec un autre index dans la meme époque.
Selon un mode de réalisation particulier, l'un au moins des ~s~
- 14a premiers et seconds moyens de comptage comprend un registre à décalage.
Selon un autre aspect de l'invention, pour son en-trée en service, le premier comptage du coupleur est mis à une valeur /
.~, " ~S7~6 ,au moins égale au nombre de pas maximllm de la séquence prédé-terminée.
~lnsi, le réseau de commun.icat.ion peut etre commutclble entre S un Eonct.tonnement e~ mode générc,l e-t un fonctionnemerlt en mode periodique.
L'invention couvre aussi le réseau constitué de plusieurs cou-pleurs tels que déEinis ci-dessus, connectés à un support de transmission cornmun~ à diffusion.
D'autres caractéristiques et avantages de l'invention appa-raitront à l'examen de la description détaillée et non limitative ci-après, et des dessins annexés, sur lesquels:
- la figure l illustre le schéma général d'un réseau de commu-nication;
- la figure 2 est le schéma de principe d'un coupleur;
- la figure 3 est le schéma partiellement détaillé d'un cir-cuit du coupleur de la figure 2 ;
- la figure 4 est le schéma plus détaillé du circuit de la figure 3;
- les Eigures 4A et 4B sont des chronogrammes relatifs au circuit des figures 3 et 4;
- la figure 5 est le schéma d'une variante de ~éallsation du circuit de la figure 2;
- la figure 6 est un diagramme illustran-t le fonctionnement du "compteur d'~poque" ;
- les figures 7A ~ 7C sont les schémas de trois modes de réa-., ~
'~2.~
lisation du compteur d'époque;
- la figure ~ est un diagramme illustrant le fonc-tionnement d'un dispositif selon l'invention;
- les figures 9A et 9B sont les schémas de deux modes de réalisation du second compteur;
- la figure 10 illustre une variante du diagramme de la figure 6; et - la figure 11 illustre une variante de la partie R, encadrée en tireté, du diagramme de la figure ~.
Les dessins annexés comportent de nombreux éléments de caractère certain qu'ils peuvent seuls apporter. Ils font donc partie intégrante de la description, pour servir à
faire comprendre l'invention, aussi bien qu'à la définir.
Sont également incorporés à la présente description les éléments connus relatifs aux réseaux CSMA-CD et/ou Ethernet, notamment le Brevet, les articles et la norme déjà cités.
La figure 1 illustre une pluralité de stations Sl,... Si,...
Sn. A chacune d'entre elles sont connectés un ou plusieurs équipements automatisés, tels que des capteurstactionneurs, des automates programmables, des contrôleurs/régulateurs, des terminaux informatiques, des ordinateurs, des équipements téléphoniques, ou encore des terminaux vidéo.
Chaque station Si est physiquement raccordée à un support ou canal de transmission SC, par l'intermédiaire d'un matériel ou d'un ensemble de matériel et de logiciel que l'on appelle coupleur et que l'on note Ci. La s~ation Si comprend aussi une unite de commande UCi, reliee au coupleur Ci par un bus lnterne BIi.
Dans certains cas, on peut aussi incorporer le coupleur dans un équipement.
Pour sa part, le canal de transmission SC est un support à
diffusion, de type electromagnétique ou optique, passiE, semi-passif ou actif (c'est-à-dire muni d'amplificateurs-régénérateurs). Il comporte au moins une ligne de transmission, étant rappelé que plusieurs lignes sont souvent utiles pour réaliser une sécurité par redondance des supports et/ou des matériels d'émission~réception et/ou des informations transmises.
La figure 2 illustre, à titre d'exemple, une réalisation d'un coupleur Ci ~on omet l'indice i dans la suite~. Ce coupleur se compose principalement d'un circuit noté GSC, qui gère l'accès physique au support de transmission SC, et d'un circuit noté GER, qui réalise la gestion des émissions, des réceptions ainsi que des collisions.
Le circuit GSC peut être réalisé, de manière connue, à
l'aide de boîtiers de circuit intégré tels que le modèle 82 501 de la Société des ETATS~UNIS INTEL CORPORATION, ou à
l'aide d'éléments discrets. Ce circuit doit fournir au moins trois signaux logiques et leurs compléments:
CD représentant une detection de collision, et son complément CD, TxD, indiquant que la ligne de transmission du coupleur est active, et son complément TxD, RxD, ind.iquant que la ligne de réception du coupleur est act.ive, et son complement RxD.
L'état de TxD et TxD est entièrement sous le contrôle du coupleur concerné, tandis que ceux de R~D et CD ainsi que de leurs compléments dépendent des autres coupleurs.
Si un seul des coupleurs émet, alors RxD deviendra vrai dans tous les coupleurs, au plus tard après une durée égale à p (p étant le délai de propagation des signaux d'un bout à
l'autre du support de communication, comme défini plus haut).
Si deux coupleurs ou plus détectent l'état RxD et décident d'émettre, alors l'état CD deviendra vrai pour tous les coupleurs dans un délai de 2.p au plus.
Le fait qu'un message est en cours de transmission sans collision est représenté par la condition suivante:
CD & RxD
le symbole & représentant l'opérateur logique ET.
Enfin, RxD est toujours vrai lorsque CD est vrai, car s'il y a collision, une réception (probablement incohérente ou brouillée) est necessairement en cours.
Ce qui précède suppose un découpage dans le temps. Dans la technique CSMA-CD, ce découpage temporel s'effectue de manière asynchrone au niveau de chaque coupleur selon des transitions et des tranches canal (TC). Pour la mise en oeuvre de l'invention, ce découpage s'effectue selon des "phases canal". Une phase canal est:
- soit llintervalle de temps correspondant à une transmis-sion complète et reussie d'~ln message (condi-tion CD et RxD;
duree variable), - soit llintervalle de temps de durée égale à une tranche canal pendant lequel apparaît une collision ainsi que les brouillages correspondants (conditions CD et RxD), - soit un intervalle de temps du durée égale à la tranche canal, pendant lequel le canal est silencieux, sans émission ni collision (CD et RxD).
Ce découpage dans le temps est réalisé au niveau du circuit GER (figure 2) dont un exemple de réalisation principalement matériel est illustré sur les figures 3 et 4, tandis que les figures 5 et suivantes illustrent des variantes préféren-tielles de réalisation de ce même circuit.
Réalisation matérielle :
Sur les figures 3 et 4, on reconnait en partie basse le bus interne BI, ainsi qu'à droite les trois signaux CD, RxD et TxD échangés par le circuit GER avec le circuit GSC déjà
cité.
En présence d'une demande d'émission par la station, et du message numérique correspondant à transmettre, le bus interne BI applique ce message à un circuit 10 dit sérialisateur/désérialisateur. Il est réalisé par exemple à
l'aide d'un circuit intégré du type 2652 vendu en France par la Société RTC.
Pour l'émission, la fonction du circuit 10 est de mettre sous forme série le message que lui présente en parallèle le 7~
- ~o -bus :interne BI en lui ajoutant un en-tête et/ou des bi-ts de synchronisation. Ce message transite alors par le signal TxD. Inversement, pour une réception sarls brouillage, le circuit 10 va remettre sous forme parallèle les informations S qui lui proviennent en séxie, à travers le canal de transmission, d'un autre coupleur. L'en-tête et les bits de synchronisation sont alors éliminés. Les signaux RxD et TxD
sont donc échangés directement entre le circuit 10 et le circuit GSC de la figure 2. Le circuit 10 reproduit toute-fois le signal RxD, maintenant sous forme logique, pourqu'il puisse servir aux éléments qui l'accompagnent. Le circuit 10 comporte encore une entrée 101, reliée à la sortie d'une porte logigue 11.
Cette entrée 101 permet la validation et l'initialisation de l'émission, en présence d'une demande d'émission d'un message numérique par la station locale.
Un circuit d'horloge (non représenté) fournit un signal d'horloge rapide H à une entrée d'une porte ET 21. L'autre entrée de la porte 21, qui est inverseuse, recoit le signal logique RxD fourni par le circuit 10. La sortie de cette porte ~T 21 est appliquée à un compteur-temporisateur 20, capable d'établir une temporisation pendant une durée TC
c'est-à-dire la tranche canal. On vérifie bien que la tranche canal est définie, de manière asynchrone, au niveau de chacun des coupleurs, à partir de l'horloge rapide H qui lui est propre.
Au terme de la temporisation, une sortie 201 du circuit 20 fait entrer en fonction le circuit 22, pour la détection des "phases canal". Le circuit 22 reçoit comme autres entrées les signaux CD et RxD. Il possède deux sorties notées +:=
ainsi que -:=. Par convention, ~:= est associé à un ~%s~
décalage à droite dans un registre à décalage, tandis que -:=
est associe à un décalage à gauche.
Le signal +:= est mémorise dans une bascule 23. La sor-tie de cette bascule 23, notée +:=', ainsi que les deux signaux de sortie du circuit 22 sont appliqués d'une part à un circuit 24 de gestion des époques E, d'autre part à un circuit 26 propre à établir une division dichotomique. Le circuit 26 peut également recevoir le bus interne BI.
La sortie du circuit 26, ainsi que celle de la bascule 23, sont appliquées à un circuit 28, qui Eorme un second compteur pour la mise en oeuvre de l'invention.
Enfin, la sortir du circuit 24 est appliquée, en même temps que le signal d'horloge rapide H, à une porte ET 30. La sortie de cette porte actionne une bascule 31, gui reçoit ici un fil provenant du bus interne, et commande par sa propre sortie la porte ET 11 déjà citée.
Il est maintenant fait référence à la figure 4, qui illustre un mode de réalisation particulier des organes de la figure 3.
Une bascule 225 reçoit comme signal d'horloge le signal logi-que RxD. Elle reçoit sur son entrée D un signal logique '1', ici de + 5 volts. Sa sortie Q passe donc au niveau logique 'l' au terme de la première impulsion presente dans le signal RxD. Le signal de la sortie Q de la bascule 225, noté RxD', complémenté, est appliqué à une entrée de commande de chargement du circuit 20, qui est ici un registre à décalage. Sur activation de cette entrée, le registre à décalage 20 reçoit un signal logique 'O' en toutes ses cellules sauf une, qui reçoit un signal logique '1'. Il est alors pulse par son entrée de signal. SL, à
l'aide du signal de sor-tie de la porte ET Z1, lequel est constitue d'impulsions d'horloge rapide ~l, limitées à la durée du signal RxD complémenté. Les "tranches canal" ne sont donc élaborées qu'en l'absence de réception en cours~
La sortie HTC du circuit 20 es-t immédiatement exci-tée pendant une durée égale à un cycle d'horloge rapide. Elle le sera à nouveau, en l'absence du signal RxD, après un nombre d'implusions d'horloge rapide correspondant à la temporisation désirée TC. Cette sortie est appliquée tout d'abord à l'entrée D d'une autre bascule mémoire 228, dont l'entrée d'horloge reçoit l'horloge rapide H. La sortie Q
de cette bascule 228 produit dès la fin de la première impulsion d'horloge rapide qui suit l'apparition du signal HTC, une impulsion de remise à zéro, appliquée à l'entrée R
de la bascule 225. Cette dernière est alors prête à prendre en compte un nouveau signal RxD.
La sortie Q de la bascule 228 produit également une remise à
zéro d'une autre bascule 229, dont l'entrée D reçoit un signal logique '1', et dont l'entrée d'horloge est le signal CD.
La sortie Q de la bascule 229 fournit un signal de détection de collision noté CD', qui est donc ainsi rafraichi après chaque tranche canal, telle que mesurée par le circuit de temporisation 20.
Maintenant, le signal +:= est fourni par une porte ET 221 qui re,coit d'une part le signal ~ITC, d'autre part le signal CD'. Le signal -:= est fourni par une porte ET 222. Une entrée de celle-ci est fournie par une porte ou 223 qui re,coit d'une part le signal HTC, d'autre part le signal RxD'. L'autre entrée de la porte ET 222, complémentée, ~s~
reçoit le signal CD'.
La bascule 23 recoit le signal ~:- sur son entrée D. Elle reçoit comme horloge le signal d'horloge rapide H. Elle va donc prendre en compte le signal +:= à la première impulsion d'horloge rapide H qui la suit, ce qui fournit un signal +:=' qui est retardé d'un cycle d'horloge par rapport au signal +:=.
La première fonction du circuit qui vient d'être décrite est d'établir la détection des phases canal, une phase canal étant:
- une collision apparue pendant un intervalle de temps de durée égale à la tranche canal, ou - un message passant avec succès, pendant un intervalle de temps variable avec la durée du message, ou - une tranche canal pendant laquelle il ne s'est produit ni collision ni messag~.
La partie gauche de la figure 4A intéresse le cas d'une collision. La montée du signal RxD signifie qu'un ou des messages transitent sur le canal de transmission. La montée du signal CD signifie qu'il y a collision, donc qu'il s'agit de plusieurs messages. Les signaux RxD' et CD' passent à
l'état vrai, respectivement au front descendant des signaux RxD et CD. Le front montant du signal RxD' valide le chargement du contenu du registre à décalage, qui produit alors le signal HTC au terme de la première impulsion suivante de l'horloge rapide H. Par la bascule 228, la retombée de l'impulsion HTC produit le retour à l'état O des signaux RxD' et CD'. Entre temps, l'impulsion HTC a produit ~2,~ 6 un signal +:= sur la sortie de la porte ET 221.
On note que le temporisateur 20 est bloqué clès que le signal RxD est actif, du fait de la porte ET 21. L'homme de l'art aura également compris que les bascules et registres se chargent sur le front montant de l'horloge qui leur est appliquée tandis qu'elles valident en sortie sur le front descendant de l'horloge, c'est-à-dire que leur signal de sortie n'est fourni qu'au front descendant qui suit le front montant de l'horloge.
La partie droite de la figure 4A illustre un message passant avec succès. Cette fois, il n'est pas apparu de signal CD
pendant le signal RxD. RxD' s'est produit comme précédem-ment, suivi de HTC après une impulsion d'horloge. La remise à zéro n'intéresse que le signal RxD', puisque le signal CD' n'est pas passé à l'état vrai, en l'absence de tout signal CD. Dans C2 cas, c'est la porte ET 222 qui fournit un signal -:= pendant l'impulsion HTC.
La figure 4B illustre le cas où n'apparait ni collision ni message. Dans cette situation, le registre à décalage 20 est bouclé sur lui-meme. Son unique bit à 'l' apparaît périodiquement sur sa sortie 201 pour produire le signal HTC. Celui-ci est immédiatement suivi d'une impulsion de remise à zéro qui n'a d'ailleurs pas dieffet sur les bascules 225 et 229. Comme c'est la condition CD qui est vraie, on observe que la porte ET 222 fournit un signal -:=.
Cette situation se répète trois fois sur la figure 4B, montrant ainsi trois tranches canal consecutives sans collision ni message.
Le circuit de la figure 4 est propre à fonctionner selon deux modes différents, qui doivent etre sélectionnés con-jointement dans tous les coupleurs qui -travaillent sur le même support de communication.
Le mode est déEini par un bit de mode qui prend:
- la valeur '0' pour le mode général, correspondant à une séquence dichotornique, - la valeur '1' pour le mode périodique, qui correspond à
une séquence où l'on examine les index un par un.
Dans ce mode de réalisation, le circuit 24 comprend un organe 241, qui reçoit le bit de mode. L'organe 241 est un démultiplexeur permettant le prépositionnement des entrées d'un registre à décalage 240 ~en deux blocs de k+1 entrées d'une part, n-k-2 entrées d'autre part) selon que le bit de mode est à 0 ou 1. Maintenant, n désigne le nombre de coupleurs potentiellement connectables au canal, et n est codable sur k bits, k étant l'approximation entière par excès de log2n, où log2 désigne la fonction logarithme de base 2.
Il convient d'observer maintenant que le mode général peut se subdiviser en deux cas, l'un dit entrées bloquées (EB), l'autre dit entrées libres (EL). En mode entrées bloquées, un interrupteur 305 transmet directement le signal de la sortie 242 vers une entrée complémentée de la porte 30. En moae entrées libres, c'est la sortie Q de la bascule 306 qui est transmise. On rappelle que la seconde entrée de la porte 30 recoit le signal d'horloge H. Sa sortie définit l'horloge de la bascule 31, dont l'entrée D reçoi-t l'un des fils du bus interne BI, qui correspond à une demande d'émission de message. ~orsque la sortie 242 du registre 240 indique que celui-ci est à zéro, la sortie Q de la ~7~6 bascule 31 produit un signal DT qui va servir à valider et initlaliser l'émission, par son action sur l'une des entrées de la porte ET ll. Celle-ci n'autorise effectivement l'émission que d'une part si il n'y a pas de réception en cours (signal RxD vrai), d'autre part si le registre 280 que comprend l'organe 28 possède une sortie 281 dans un état prédéterminé, représentatif d'une valeur 0 comme on le verra plus loin. L'état 1 de la sortie 281 correspond à un coupl0ur perdant après une dichotomie.
La même sortie 281 est prise en compte sur l'entrée d'horloge d'une bascule 306, qui passe alors à l'état vrai, et sa sortie Q peut, dans la condition "entrées libres",être prise en compte dans l'état correspondant de l'interrupteur 305 pour alimenter la porte ET 30 déjà citée.
Enfin, la même sortie 281 arrive sur une entrée complémentée d'une porte ET 261, qui reçoit comme autre entrée le signal +:= provenant de la porte ET 221, ainsi que le signal DT
fourni par la sortie Q de la bascule 31.
La sortie de la porte ET 261 est appliquée à un registre à
décalage de dichotomie, noté 260, sur l'entrée de décalage à
- droite SR de celui-ci. Ce registre à décalage 260 contient un index x. Il reçoit comme horloge l'horloge rapide H.
Comme commande de chargement, il reçoit la sortie d'une porte ET 265. Une première entrée, complémentée, de cette porte, est le signal issu de la sortie 242 du registre de gestion d'époque 240. Une seconde entrée de la porte 265 est le signal d'entrées libres issu de la sortie Q de la bascule 306. Une troisième entrée de la porte ET 265 est fournie par une porte OU 266. Celle-ci reçoit d'une part le fil de sélection qui est appliqué aussi à la bascule 31.
D'autre part, elle reçoit la sortie d'un circuit de retard 5~
~monostable), du type 7~ 121, qui a pour entrée le signal de la sortie 2~2 du registre de gestion d'époque 2~0.
Enfin, la sortie du circuit 74 121 est également appliquée à
une batterie de portes ET 270, qui reçoivent comme autres entrées les sorties d'un circuit 290.
Le circuit 290 peut être chargé à partir du bus interne BI, par une valeur x' qu'il transmet donc aux portes 270 déjà
citées, ainsi ~u'au circuit 280. Cette valeur x' définit un ou plusieurs autres index utilisables dans l'époque.
Quant au registre à décalage 260 sa sortie de bit de poids le plus faible, notée LSB, valide une porte ET 275, dont l'autre entrée est le signal +:='. La sortie de cette porte 275 est reçue par un démultiplexeur 282, commandé par le signal de mode.
Ceci fait que le registre à décalage 280, qui définit une grandeur j de n bits, reçoit sur son entrée de décalage à
gauche le signal -:= issu de la porte ET 222. Il reçoit un signal tiré de ~:=' et du bit de poids le plus faible du registre 260, et ce soit sur son entrée de décalage à droite SR, soit sur son entrée de chargement, selon l'état du bit de mode appliqué au démultiplexeur 282. Comme les autres, . le registre à décalage 280 est alimenté par l'horloge rapide .~ .
La bascule 306 recoit sur son entrée D un signal "1" note ~5V. Sur son entrée d'horloge, elle reçoit le signal présent sur la ligne 281, qui correspond au bit le plus à
gauche du registre 280. L'homme de liart comprendra que lorsque ce circuit est décale à droite pour la première fois, le signal 281 passe de "0" à "1". Par la suite, et en ~s~
Eonction des décalages successi~s de ce registre (à gauche ou à droite), ce signal reviendra à "0" (après un nombre su~Eisant de décalages à gauche). Alors l'entrée d'horloge de la bascule 306 aura vu une impulsion complète et sa sortie passe à "1". En mode entrées libres, elle alimente l'entrée complémentée de la porte 30 et interdit donc la prise en compte d'une demande d'émission ultérieure. Le fait que le signal 281 passe de "1" à "0", signifie que le coupleur a de nouveau le droit d'émettre. On interdit donc bien la transmission pour ce coupleur lorsque celui-ci a eu une fois le droit d'émettre après la collision initiale.
L'interdiction d'émettre est invalidée lorsque le signal 242 repasse à 0, c'est-à-dire que l'époque est terminée. Ceci est réalisé par le fait que le signal 242 complémenté est appliqué à l'entrée R (remise à zéro) de la bascule 306.
Le fonctionnement de ces éléments des figures 3 et 4 sera décrit plus loin, sous forme fonctionnelle, et d'une manière commune avec les autres modes de réalisation de la présente invention.
Ces autres modes de réalisation utilisent une architecture matérielle ~ui est illustrée sur la figure 5. On y retrouve le circuit GSC, en prise directe sur le canal de transmission SC. Comme précédemment, ce circuit fournit les signaux CD, RXD, TXD et leurs compléments. I,e signal RxD
est appliqué à un sérialisateur/désérialisateur 110, qui recoit par ailleurs le bus interne et produit le signal série TxD. Une unité de traitement pour la communication est constituée d'un circuit 120, qui peut etre fondé sur un microprocesseur 8751 ou 8080 de la Société INTEL
Corporation. Cette unité 120 est munie d'une interface 121, qui lui permet d'échanger des informations avec le bus interne BI. L'unité de traitement re~oit, sous forme de , ~
, , ~, ~2 57 ~
commandes d'interruption, les signaux CD et RxD élaborés par le ~ircuit GSC.
Le fonctionnement demandé à l'unité de tra:itement 120 sera décrit ci-après par des schémas de la ~orme réseau de Petri, dans lesquels on a toutefois incorporé des tests comparables à ceux des représentations en organigramme classique.
Compteur d'époque ou compteur E (figure 6).
Le point de départ du schéma de la figure 6 est l'initiali-sation d'un coupleur (bloc 50). L'initialisation débute par un test de mode 51, le mode étant défini par un bit qui est mis à '0' (mode général) ou 'll (mode périodique) à la construction des coupleurs ou bien à leur mise en place sur le terrain. Dans le mode général, la sortie du test 51 est une étape 52 consistant à forcer un compteur ~ à une valeur k+lo (Le symbole := illustre l'affectation d'une valeur numérique à une variable). En mode périodique, la sortie du test Sl va, à l'étape 53, affecter la valeur N au compteur E. On verra plus loin que N vaut n en mode périodique et 2 en mode général.
Ensuite, il apparaît en 54 une "place", comme connu dans les réseaux de Petri. La ligne horizontale épaisse 56 représente l'interrogation du support de transmission. Il vient aussi sur cette ligne 56 une autre place 55, libellée FPC, pour "fin de phase canal". C'est seulement lorsque les deux places 54 et 55 possèdent chacune leur jeton que l'on peut exécuter l'interrogation du support à la ligne 56.
(Ceci correspond au bloc 2 de la figure 3).
Il est rappelé que le comp-teur E est ici à zéro dans l'é-tat de repos de l'automate selon l'invention. Il passera à des valeurs entières positives lorsque l'automate est dans son état de tra~ail, tout en consexvant une relation prédéter-minée avec la séquence de sous-ensemblec d':index suivant laquelle évolue l'automate. Quatre situations peuvent se produire:
- CD et E positif. Un test 60 examine alors à nouveau le bit de mode. En mode général, on effactue une incrémenta-tion d'un pas à l'étape 61, dans le compteur E. En mode périodigue, la situation est anormale. Une étape 62 effectue un traitement d'erreur convenable pour permettre la remise en fonction du réseau de communication.
- CD et E = 0. L'étape 63 affecte la valeur N au compteur E, étant rappelé gue N vaut 2 en mode général, et n en mode périodique.
- CD et E positif. L'étape 64 effectue une décrémentation d'un pas du compteur E, quel gue soit le mode.
- CD et E = 0. On retourne directement à la place 54.
On comprendra mieux le schéma de la figure 6, de même que le montage du circuit 24 gui lui correspond sur les figures 3 et 4, à l'examen des schémas détaillés des figures 7A à 7C.
On admet maintenant que le comptage de la grandeur E est réalisé par un registre à décalage possédant au moins k+1 bits (de préférence k-~2) pour le mode général, et n bits pour le mode périodique. On parlera néanmoins du "compteur R".
En mode général (figure 7A), tous les bits du registre à
décalage 240 sont initialement mis à 1. Une valeur 1 est ~S~6 - 3l -présentée à gauche, de façon que lors d'un décalage vers la droite, une valeur 1 soit insérée dans le bit de premier rang du registre 240. Inversement, une valeur 0 est présentée à droite, de façon qu'en cas de décalage à gauche, une valeur 0 soit introduite dans la position de bit k+2 qui est la plus à droite.
Les bits 2 à k-~2 du registre à décalage 240 sont de plus bouclés sur eux-mêmes, c'est-à-dire qu'on peut les recopier à l'identique si nécessaire. Ainsi, à chaque collision on recharge sur eux-mêmes les bits 2 à k+2 du registre, alors que le premier bit (bit 1) est chargé à 1, puis on décale à
droite. Ceci réalise aussi le forcage ini-tial, sans faire de différence entre la première collision et les suivantes.
La sortie du compteur E est l'état de son premier bit, comme l'illustre la figure 7A (équivalent du signal 242 figure 4).
La figure 7B concerne-le cas du mode périodique. Le registre à décalage 240 comprend maintenant n bits. Tous peuvent être mis à 1 simultanément sur une commande de chargement extérieure. Lors du decalage à droite, une valeur 1 est présentée à gauche, tandis que lors des décalages à gauche, une valeur 0 est présentée à droite. Là
encore, la sortie du compteur ~ est définie par l'état de son premier bit.
La figure 7C illustre un mode de réalisation combiné, permettant de réaliser à partir du même registre les fonctions des figures 7A et 7B. Un multiplexage (fonction du circuit 241, figure 4) est établi par les organes 241A et 24lB. Il s'agit de multiplexeurs 1 parmi 2. Pour le mode général, le bit de mode vaut 0. Le multiplexeur 24lA
recycle les bits 2 à k+2 du registre à l'identique, tandis ~%~ 6 que le multiplexeur 241B introdui-t des O dans les n-k-2 autres bits. Au con-tra.ire, en mode périodi~ue~ le ~ multlplexeur 2~lA introduit des 1 dans les bi-ts 2 à }c~2/
tandis que le multiplexeur 24lB introduit des 1 dans les n-k-2 autres bits. Llhomme de l'art comprendra que le circuit ainsi obtenu est capable, en fonc-tion de l'état du bit de mode, de fournir au choix soit le fonctionnement de la figure 7A, soit celui de la Eigure 7B.
On décrira maintenant brièvement le fonctionrlement des dispositifs selon l'invention, dans les deux modes général et périodique.
Mode géneral.
Le Demandeur a observé que le nombre maximal de collisions successives pouvant survenir à l'intérieur dlune époque en mode général est k-1, avec la convention que la collision initiale ouvrant une époque n'est pas comptabilisée. Il a également observé que, dans ce mode général, le nombre maximum de tranches vides consécutives à l'intérieur d'une époque est k-l si l'on suppose des coupleurs totalement fiables ou k+1 si l'on souhaite tolérer les défaillances.
Clest pourquoi, sur les figures 7A et 7C, le compteur E est mis à la valeur initiale k+1 dans les coupleurs en initialisation. L'homme de l'art comprendra que le fait que le coupleur en initialisation ne soit pas synchronisé avec les autres coupleurs sur les tranches vides (en supposant qu'une époque soit en cours) n'a pas d'importance, car - soit cette synchronisation est inutile dès lors que le compteur E atteint la valeur 0, .
- soit la synchronisation necessaire est ob-l;enue normalement en cas de canal devenant actif avant que E nlatteigne la valeur 0.
A l'initialisation, l'étape 52 (figure 6) force E à k+l. Un jeton est pose à la place 54, et l'on entre en fonctionne-ment normal. Des fonctions analogues ~non représentees) sont exécutées dans le dispositif des figures 3 et 4.
'10 L'analyse détaillée des différents cas possibles permet de vérifier que le compteur E d'un coupleur en initialisation atteint la valeur 0 en un délai fini, borné supérieurement, et que cette valeur 0 n'est jamais atteinte alors qu'une époque est en cours. Le bit k+2 permet de détecter le fonctionnement erratique d'un coupleur.
Mode périodique .
En l'absence d'erreur, ce n'est qu'en début d'époque que peut se produire une collision, laquelle permettra à un coupleur en initialisation de se synchroniser avec les coupleurs en fonctionnement. En cas de collision, chaque coupleur assigne à son compteur E la valeur N = n, qui est aussi la valeur d'initialisation.
Si E atteint la valeur 0 sans que ne se produise de collision, cela signiFie que le coupleur est seul dans le système.
On peut donc initialiser le système en initialisant un seul coupleur ou plusieurs coupleurs simultanément.
Lorsque les coupleurs sont initialisés, la surveillance des époques s'effectue selon le mécanisme illustré sur la figure - 3~ -6.
Ce mécanisme es-t e~écu-té en permanence par tous les coupleurs. Il peut être câblé comme c'était le cas des figures 3, ~ et 7, ou bien microprogrammé à partir du matériel de la figure 5 et d'un logiciel conforme aux schémas illustrés dans les figures suivantes.
Dans un coupleur en fonctionnement, la valeur courante de E
peut etre interprétée comme indiquant le nombre de phases canal à inspecter avant la fin de l'époque en cours.
La condition CD et E = 0 signifie qu'il n'y a pas d'époque en cours. Tant qu'une collision n'apparait pas, le compteur E n'évolue pas.
La condition CD et E = 0 se traduit, dès que la ligne CD
passe à vrai - marquant ainsi la présence d'une collision -par le fait que le compteur E prend la valeur N, qui vaut soit 2 en mode général, soit n en mode périodique.
Condition CD et E positif. Lorsqu'un message passe ou que le support reste libre pendant une tranche canal à
l'intérieur d'une époque, alors le compteur E est décrémenté. On revient à l'observation du support seulement après la réception complète du message, ou après avoir détecté la fin d'une -tranche canal vide.
Condition CD et E positif. Lorsqu'il y a collision à
nouveau à l'intérieur d'une époque, alors E est incrémenté
si l'on est en mode général. En mode périodique, ce cas ne doit pas se produire. L'étape 62 invoque alors une procédure de traitement d'erreur propre à restaurer le bon fonctionnement du réseau.
~S7~6 On s'lntéressera mai.ntenant, en référence a la figure 8, à
la gestion proprement dite des émissions de messages.
Il est rappele que le procedé proposé peut fonctionner selon deux modes : général et périodique. Le mode est sélectionné
à la fabrication des coupleurs ou à leur installation. En mode général, chaque coupleur peut à volonté fonctionner en entrées bloquées ou en entrées libres. Dans un coupleur à
entrées bloquées, aucun nouveau message, en dehors des messages effectivement entrés en collision, ne pourra être transmis durant une époque. Dans un coupleur à entrées libres, au contraire, un coupleur n'ayant pas soumis de message au moment de la collision ouvrant une époque peut, sous réserve de respecter des conditions visant à ce qu'il ne perturbe pas le fonctionnement des autres coupleurs, émettre dans l'époque un message fraîchement arrivé~
La soumission d'un message par la station au coupleur s'effectue dans tous les cas par activation d'une primitive, que l'on peut écrire Soumission (m, index, F), dont l'exécu-tion conduit au stockage dans une zone de mémoire Z, connue du circuit de gestion des émissions GER, des données suivantes:
- le message m lui-même, - l'index associé, - un Booléen F qui indiquera que le message aura été
transmis avec succès par le coupleur sur le support lorsqu'il passera à l'état vrai.
On notera qu'en mode général à entrées bloquées, un coupleur n'est actif à l'intérieur d'une époque que s'il a effective-~2~Q~
ment tenté de transmettre un rnessage en début d'époque (avec collision). Par contre, en mode géneral à entrées libres ainsi qu'en mode périodique, le procédé perme-t à un coupleur de devenir ac-tif à l'intérieur d'une époque, meme si aucun message n'avait été soumis à ce coupleur en début d'époque.
En mode général à entrées libres, ainsi qu'en mode périodi-que, lorsqu'aucun message n'a été soum:is, le coupleur émettra un message "nil" qui correspond à un silence.
L'exécution des primitives Soumission, que l'homme de l'art sait réalis~r, est indépendante et asynchrone de l'exécution du protocole de gestion des émissions. Ce pro-tocole est permanent, et on le décrira maintenant.
Les emplacements suivants de la zone de mémoire Z sont utilisés:
- message : =m ou "nil", - x := index (l'index étant f~xé à l'avance si le message est "nil"), - fin := F.
Le premier test 70 constitue une attente que le compteur E
atteigne la valeur 0. On suppose qu'une époque vient juste de se terminer, ce qui correspond donc à un tel passage de E
à 0. Le test suivant 71 examine le mode utilisé.
L'émission (de type CSMA-CD) d'un message est illustrée en la place 74. On tente toujours une telle émission en mode périodique, ainsi qu'en mode général si un message a été
soumis (passage par les phases d'attente 72 et 73, mais sans 7B\C~6 attendre, puisque E est par hypothèse à 0).
La ligne 75 illustre l'observation du support, qui répond aux deux conditions que des jetons aient été poses aux places 74 et 76 (fin de -tranche canal).
En mode périodique, on est certain de provoquer une collision CD d'où une ouverture d'époque, sauf dans le cas où un seul coupleur désire émettre.
A partir de la figure 8, on décrira maintenant séparément le mode général et le mode périodique.
Mode général En mode général, il peut se produire une collision, mais il est possible également que l'émission se déroule normalement (CD). Dans ce dernier cas, l'étape 91 termine l'émission, laquelle est d'une durée au moins egale à la tranche canal.
L'étape 92 met à l'état vrai le Booléen de fin F. L'étape 93 examine si le mode en cours est le mode général, auquel cas on retourne au test 70. Et le test 71 fait à nouveau la distinction entre les deux variantes, "entrées bloquées" et "entrées libres" du mode général.
Il convient maintenant de revenir à l'observation du support (ligne 75), pour examiner l'autre hypothèse où il se produit une collision. On pose alors un jeton dans la place 77.
Ensuite, l'étape 78 affecte la valeur 0 à la grandeur j, et l'étape 7g exécute un pas de la division dichotomique qui s'écrit X := X/2.
Un test 80 établit si cette séparation dichotomique est ,, possible ou impossible. L'impossibilité signifle une erreur, traitée par invocation d'une proc~dure appropriée (étape 80~).
Si la separation est possible, on passe à un test 81 qui détermine si l'index en cours x appartient au sous-ensemble gagnant G ou au sous-ensemb:Le perdant P. Slil appartient au sous-ensemble gagnant, on tente à nouveau l'émission du message à la place 74. Si l'index x en cours appartient au sous-ensemble perdant, la suite dépend d'un nouveau test 82, portant sur le fait qu'on est en mode général ou périodique.
En mode général, on saute directement à la place 84. La sortie de la place 84 est à nouveau l'observation du support en 85, avec cette fois la condition qu'on observe le support non plus par fin de tranche canal, mais bien par fin de phase canal (FPC en la place 86).
S'il n'y a pas de collision et que j est nul, la ligne 87 renvoie à la place dlémission de message 74 (toutes les collisions précedentes ont été résolues).
S'il y a collision, intervient un nouveau test de mode en 88. En mode général, l'étape 89 modifie j par incrémenta-tion d'un pas.
S'il n'y a pas collision, mais que la grandeur j n'es-t pas nulle, l'étape 90 décrémente j d'un pas.
Les sorties des deux étapes 89 et 90 retournen-t à la place 84 (collision pas encore résolue).
Les éléments de la figure 8 dont les numéros vont de 81 à 90 sont encadrés d'un trait tireté léger, référencé R, afin de matérialiser qu'il s'agi-t là des éléments chargés à
proprement parler de la résolu-tion de collision.
La sortie de droite de la phase dlatten-te 73 rappelle qu'un mode général à entrées bloquées, on s'interdit d'emettre si une époque est en cours (E different de 0) lorsqu'un message a été soumis.
La sortie de gauche de la phase d'attente 72 rappelle qu'en mode général à entrées libres, le coupleur exécute le mécanisme de gestion des émissions à l'ouverture d'une époque, c'est-à-dire dès que E devient différent de 0. Il va donc à la place 77, préparant l'émission d'un message.
Si sa zone de mémoire Z ne contient que le message "nil" au moment où il sera autorlsé à émettre, il n'y aura pas d'émission effective, ce coupleur restant silencieux. Dans le cas contraire il émet son message.
Il convient de décrire un peu plus en détail la séparation dichotomique de l'ensemble des index, afin d'isoler ceux ~ui correspondent aux coupleurs ayant un message à transmettre.
L'ensemble X tel qu'il a été défini plus haut représente l'ensemble des valeurs possibles des index associés aux messages et aux coupleurs. On note x la valeur courante d'index utilisée par un coupleur actif, c'est-à-dire participant à l'époque.
Un eoupleur peut posséder un seul ou plusieurs index. Dans ce dernier cas, les index sont utilisés par le coupleur dans l'ordre des valeurs croissantes.
A l'ouverture d'une époque, l'ensemble d'index choisi par un coupleur actif est noté X0. On suppose, pour simplifier, que cet ensemble d'index de départ comprend toutes les ~ %S~06 valeurs de 0 à 2k-1.
L'arbre binaire est parcouru en choisissant un balayage de droite à gauche ou de gauche à droite, le choix droite/gauche ou gauche/droite étant le même pour -tous les noeuds, depuis le tronc (I'hautll de l'arbre) jusqulaux feuilles ("bas" de l'arbre).
L'ensemble X0 est donc séparé en deux sous-ensembles, et ce de manière identique par tous }es coupleurs actifs. Le sens choisi pour le balayage détermine un sous-ensemble gagnant G
et un sous-ensemble perdant P. Chaque coupleur examine si son index en cours x fait partie de G.
Si oui, le coupleur tente à nouveau la transmission du message. En cas de collision à nouveau, la même procédure de séparation dichotomique de l'ensemble d'index G en deux nouveaux sous-ensembles G et P est exécutée et ainsi de suite jusqu'à ce qu'une transmission de message sans collision soit réussie.
C'est cela que note l'expression X : = X/2 sur la figure 8, en 79. C'est aussi ce qui est opéré, à chaque décalage (à
droite), par le registre 260 (figure 4).
Chaque fois qu'un coupleur découvre que son index x appartient à P, il s'abstient d'émettre, et surveille le support (ligne 85). Une variable locale, notée j, lui permettra de savoir à quel moment il sera autorisé à tenter à nouveau l'émission de son message. On y reviendra ci-après.
On observe que la règle de séparation en deux sous-ensembles peut être quelconque. Par exemple G et P correspondront aux ~ ~ ~j7~06 index pairs et impairs respectivement, ou bien pour tout ensemble de depart (0, 2k-1), G correspondra aux index de ~'ensemble (o, 2k 1_1) e-t P aux index de l'ensemble (2k 1,
Procédé et dispositif pour la transmission de messages entre _ différentes stations à travers un réseau local à diffusion~
_, _ L'inven-tion concerne la transmission automati~ue d'informa-tions entre différents équipemen-ts qui sont interconnectes par un réseau local à diffusion.
Dans un réseau local à diffusion, le support de la transmis-sion d'informations entre les équipements est d'une nature qui permet à chaque équipement de percevoir les messages transmis. Le moyen physique employé pour engendrer les signaux élémentaires des messages est quelconque. Le message peut par exemple être défini sous forme électro-magnétique, c'est-à-dire porté par des électrons, ou sous forme optique, c'est-à-dire porté par des photons.
Pour leur part, les supports d'une communication à diffusion peuvent être passifs, semi-passifs ou actifs. Ils sont dits passifs lorsqu'ils ne comportent aucun élément chargé de régénérer ou d'amplifier les signaux du message. (De tels élements requièrent naturellement l'utilisation d'une source d'énergie extérieure). Les supports sont dits semi-actifs lorsqu'ils recèlent de tels éléments régénérateurs ou amplificateurs. Enfin, les supports actifs comportent des éléments qui sont chargés, lors de leur passage, de modifier tout ou partie des signaux du message. La présente invention s'applique à ces différentes catégories de supports à diffusion, étant observé que les supports actifs mentionnés en dernier lieu peuvent présenter en certains cas des particularités d'application.
Pour leur part, les équipemen-ts automatisés qui vont être interconnectés par le réseau peuvent être quelconques. Il s'agit, par exemple, de capteurs/actionneurs, d'automates ;~
,~
programmables, de contrôleurs/regulateurs, de terminaux informatiques, d'ordina-teurs, d'équipements télephoniques, de -terminaux vidéo.
Ces équipements sont raccordés à des stations d'accès qui assurent la gestion des communications sur le ou les supports partagés. Chaque station fonctionne de manière autonome et asynchrone par rapport aux autres stations.
Chaque station est physiquement raccordée au support à
diffusion, qu'elle partage avec les autres stations, au moyen d'un ensemble de matériel et de logiciel appelé
coupleur.
Ainsi, un coupleur a pour fonction d'assurer la génération et la réception des signaux physiques sur le support de communication, ainsi que d'exécuter un protocole d'accès gérant le partage de ce support, la transmission et la réception des informations structurées sous forme de messages.
La présente invention concerne plus particulièrement le fonctionnement de ces coupleurs.
Il y a autant de coupleurs que de stations raccordées au réseau local. Ils sont, en principe, tous identiques. La seule ressource commune partagée par les stations est donc le support de communication physique. Les coupleurs fonctionnent de manière asynchrone, et ne peuvent connaître instantanément ce que font les autres coupleurs à tout moment. Un tel système entraine la possibilité d'une -tentative de transmission simultanée de différents messages, émis par plusieurs coupleurs. Une telle tentative de transmission simultanée provoque ce que l'on appele une collision.
~2,5~
Dans le domaine des réseaux informatiques, on connaît une technique dite CSMA (Carrier Sense Multiple Access), c'es-t-à-dire "accès mult:iple avec écoute prealable". Selon cette technique, lorsqu'un coupleur décide d'émettre un message, il doit au préalable écouter le support de communication.
Ce n'est que lorsqu'aucune transmission n'est en cours qu'un coupleur a le droit d'émettre.
Toutefois, les delais de propagation des signaux sur le support de communication n'étant pas nuls, plusieurs stations peuvent au même moment détecter l'absence de tr~ns-mission et émettre leurs messages. Il y a donc collision.
La publication du Brevet français n~ 2 306 478, au nom de ZEROX CORPORATION propose un protocole qui permet de détec-ter de telles collisions, et de gérer les retransmissions après détection de collision (retransmission car, par hypo-these, la tentative de transmission initiale est demeurée infructeuse du fait de la collision).
Dans ses développements actuels, le protocole en question est connu sous le nom de CSMA-CD/BEB (Collision Detection and Binary Exponential Backoff). Voir notamment le document : The Ethernet Local Network : Three Reports, publié par Xerox, Palo Alto Research Center Etats-Unis Février 1980.
L'inconvénient de ce protocole connu est qu'il est de nature probabiliste. En effet, il ne peut garantir avec certitude qu'un message soumis au support de communication par une station déterminée pourra être transmis avec succès sur le support en un temps fini, susceptible d'être fixé a priori.
Si un message urgent, c'est-à-dire prioritaire par rapport aux autres messages, doit être transmis, il sera soumis aux i'~..
mêmes regles qu'un message non urgent sans priorité, et de ce ~ait pourra eventuellement ne pas etre transmis dans les délais voulus.
Or, de nombreux systèmes automatiques et informatiques opérant en temps réel imposent que tout ou partie des messages engendrés par les équipements soient transmis en des délais finis, bornés supérieurement, la borne étant connue a priori.
Dans un contexte très différent, où la transmission s'effec-tue dans des créneaux temporels prédéterminés d'une manière commune pour tous les équipements, ce problème a été étudié
par J.I. Capetanakis, dans l'article intitulé "Generalized TDMA : The Multi-accessing Tree Protocol", IEEE Transactions on Communications, Vol. l, Com. 27, N~ 10, Octobre 1979.
Capetanakis propose un algorithme de résolution de collision pour les supports de transmission de type canaux satellite.
Outre le fait qu'il est appliqué à des supports de communi-cation à longue distance, puisqu'un satellite géostation-naire est situé à 36 000 kilomètres de la Terre, l'algorithme proposé fait intervenir les considérations suivantes:
- le canal satellite est synchrone, tous les coupleurs possédant chacun une horloge physique parfaitement synchrone avec toutes les autres horloges, et les messages ne sont transmis que dans des tranches de temps parfaitement déter-minées et toutes égales (c'est le principe du système TDMA, pour Time Division Multiple Access).
- Il n'existe pas de priorité absolue ou relative entre les coupleurs ou les messages.
- Chaque message tient exactement dans une tranche de temps.
~l apparai-t immediatement que les propositions faltes par Capetanakis ne sont pas transposables aux protocoles de nature CSMA-CD, dont le fonctionnement est tout à fait différent de ceux des transmissions TDMA. De plus, Capetanakis n'expose pas selon quelles règles un coupleur, impliqué ou non dans une collision, sait s'il a de nouveau le droit d'émettre. Enfin, l'algoritAme proposé par Capetanakis ne traite pas les cas d'erreurs ou de pannes.
Il demeure donc ~ue, dans les réseaux connus du type CSMA-CD, une collision est résolue de manière probabiliste, comme précédemment indiqué. En cas de collision entre messages urgents, il n'y a aucune possibilité de garantir la transmission de tous ceux-ci en un délai fixé a priori.
Dans ces conditions, la présente invention a pour but d'ap-porter une solution aux problèmes qui viennent d'être relevés.
Plus précisément, l'invention a pour but de fournir un procédé et un dispositif nouveaux qui possèdent les avanta-ges suivants:
- le procédé peut être un procédé à options, toute option pouvant être sélectionnée au moment de la construction des coupleurs ou au moment de leur installation après construc-tion.
- Lorsque les options sont sélectionnées à l'installation, le changement d'option est possible en cours d'utilisation du réseau ou système de communication, sans qu'il soit nécessaire d'arrê-ter complètement son fonctionnement.
- Une première option, correspondan-t à un mode dit "géneral", perme-t de gérer des coupleurs génerant du trafic mixte périodique et apériodique.
- Une autre op-tion, correspondant à un mode dit "periodique", permet de gérer spécifiquement des coupleurs générant du trafic périodique.
- Le procédé n'impose aucune limite superieure particulière pour la taille des messages.
- Tous les messages soumis à transmission sur le support physique sont transmis en un délai fini, dont la borne supérieure est connue a priori pour une taille maximum de messages donnée, qu'il y ait ou non apparition de collision.
Lorsque se produit une collision, on appelle époque l'inter-valle nécessaire à la résolution complète de cette collision.
- Lorsque les messages ou les noms des coupleurs sont répartis dans plusieurs classes de priorités différen-tes, l'ordre de transmission des messages entrés en collision s'effectue dans une époque dans l'ordre des priorités.
- A l'intérieur d'une époque, chaque coupleur peut émettre un nombre quelconque mais fixé de messages. Ce nombre peut être fixé à l'installation des coupleurs et peut être modifié pendant le fonctionnement du système de communica-tion.
- L'apparition d'une panne complète de coupleur, d'une erreur de transmission ou d'un retrait de coupleur n'entraîne pas la panne globale du système. Et il est possible d'insérer un nouveau coupleur ou d'en enlever sans ~i;'7~
interrompre le fonctionnement du sys-tème.
Le procédé peut tolerer des compor-tement fautifs (tels que des brouillages intempestifs) pourvu que ces comportements soient détectés par tous les coupleurs. Plus généralement, le procédé possède les memes propriétés de Eiabilité que le procédé CSMA-CD.
Enl'absence de collision, le mode d'accès au support est de type CSMA-CD. Le procédé proposé s'intègre dans la structure des boîtiers implantant le protocole CSMA-CD/BEB.
Comme on le verra plus loin, lorsque le mode général est sélectionné, le système alterne en permanence entre les deux états de fonctionnement suivants:
- état "époque en cours" : une époque est définie précisément comme l'intervalle de temps compris entre l'apparition d'une collision alors que le canal est dans l'état "hors époque" et la résolution complète de cette collision; au cours d'une époque, des collisions peuvent se produire; le mode d'accès est dit "tranché" et est défini par le procédé décrit dans le présent-document.
- état "hoxs époque" : toute collision antérieure a été
résolue; le mode d'accès est dit "aléatoire" (CSMA-CD).
Lorsque le mode périodique est sélectionné, le système est en permanence dans l'état "époque en cours", chaque époque étant précédee d'une collision ~énérale détectée par le procédé CSMA-CD. Dans ce mode, en l'absence de fautes de fonctionnement, aucune collision ne peut se produire dans une époque.
~5~
- 7a -L'invention permet également d'étendre la gamme des classes de trafic gérées par les protocoles du type CSMA-CD/BEB. En particulier, le procédé de l'invention pour la résolution deterministe des collisions permet d'asc;urer une gestion efficace d'un -trafic de messages à caractère périodique aussi bien que d'un trafic à priorités multiples.
Pour une meilleure compréhension de l'invention, il est fait reference au Brevet français n~ 2 306 478 précite, ainsi qu'à la norme IEEE 802.3, qui décrit les caractéristiques génerales des reseaux de type ETHERNET.
Dans la suite, on appelle p le délai de propagation des signaux d'un bout à l'autre du support de communication.
,~
~5'70~6 On note par TC une durée supér.ieure à deux :Eois p, et définie comme ~tant la " t:ranche cana:L" (channel slot -time dans la norme IEEE 802.3 préc.itée).
Selon l'invention, on appelle " phase canal" l'intervalle correspondant soit à une transmission complète et réussie d'un message de durée quelconque au molns égale à TC, soit à une tranche canal dans laquelle il s'est produi-t une collision (avec les brouillages correspondants) soit à une tranche canal de silence, sans émission ni colli-sion.
Plus spécifiquement, selon l'invention, il est prévu un procédé de transmission de messages entre différentes stations, du type dit CSMA-CD, dans lequel:
- chaque station est munie d'au moins un coupleur qui la connecte à un canal de transmission commun, à diffusion, - chaque coupleur est capable d'émission-réception sur ce canal, en mode asynchrone, en définissant une tran-sition à chaque fin d'émission ou de réception, (l'émis-sion se traduit, en règle générale, par la présence d'une porteuse sur le canal, à partir de laquelle sont définies les transitions), - chaque coupleur écoute en permanence ledit canal et le scrute après chaque transi-tion pendant une durée prédéterminée, qui est la tranche canal, - un coupleur ne peut commencer à émettre un message, sur demande de sa station, qu'en l'absence de signal (porteuse) sur le canal, tandis qu'il interrompt ou invalide son émission s'il-apparalt, pendant la tranche ; .
~2~7~
- 8a -canal correspondante, un signal indicatif d'une collision, tel qu'un broui:Llage, manlfestant un début d'émlsslon simultanee par ~ rs.
!
~:5~ 6 ' D'une manière générale, le procédé selon l'invent:ion est rema:rquable en ce que:
- initialement, on affecte à chaque coupleur au moins un index qui lui est propre, choisi dans un ensemble d'inclex prédéterminé, et on munit chaque coupleur d'un automate qui possède un état de repos e-t un état de travail, dit ~poque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et de pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est ~onction de sa structure et du nombre total des index, - on établit un or~ce de changement de pas, dit fir de phase canal, dans chaque coupleur à la fin de toute tran~
che canal ayant donné lieu à silence ou collision, ou à la fin de l'émission réussie d'un message, - dans chaque coupleur, on en-tretient au moins un premier comptage qui évolue à la cadence des fins de phase canal, et en ~ fonction de la présence ou de l'absence de collision pen-dans chaque phase canal, jusqu'à une valeur de reférence choisie, un coupleur n'est autorisé à émettre librement que si son comptage se trouve à la valeur de référence, et - en présence d'une collision lorsq~e ledlt comptage est à
sa valeur de référence, tous les coupleurs en service met-tent leur comptage à une valeur de for$age choisie, alorsqu'au moins les coupleurs actifs! c'est-à-dire qui ont ~mis lors de la collision, font passer leur automate~ à l'é~
tat de travail ou époque, et lui font parcourir ladite séquence à la cadence des fins de phase canal, cependant que seuls les coupleurs munis d'un lnde~Y appartenant au sous-ensemble désigné par ce pas sont autorisés à émettre un message associé à cet index, la valeur de forçage et la valeur de réEérence étant choisies de fason que le com~ta~e ne revienne ~ la valeur ~e ré~érence clu'après résolution compl~te cle la collislon qlll a encJendre l'époq-le, les cou-pleurs étant alors autorisés à nouveau à émettre librement, -tandis que les automates reviennent en leur état de repos.
Ceci permet de résoudre -toute collision en un temps limi-té.
Selon un aspect avantageux de l'inventlon, les coupleurs clont l'automate est dans l'état de travail entretiennent un second comptage, qui évolue aussi à la cadence des fins de phase canal et en fonction de la présence ou de ~'absence de collision pendant chaque phase canal,' mais à l'intérieur de l'époque et avec des valeurs de forçage et de référence dont l'une au moins est différente de celles du premier comptage.
Pour la mise en oeuvre de ce procédé, l'invention fait usage de coupleurs comportant, de façon connue~ :
- un circuit de contrôle du canal de transmission, propre à fournir au moins trois signaux logiques respectivement représentatifs d'une émission en cours par le coupleur (TxD), d'une réception en cours sur le canai (RxD), et d'une collision détectée sur le canal (CD) et, - un circuit de commande qui assure la liaison entre le reste de la station et le circuit de contrôle, en fonction des signaux reçus sur le canal, et des demandes d'émission de message en provenance de la station.
Dans un coupleur selon l'invention, le circuit de commande comprencl :
~5~6 - des moyens propres ~ mémoriser au molns un index binai.re qui lui est propre, et au moins une denlGInde d'émlssion de message en relat.ion avec cet index, - des moyens locJiques de phase canal pour cleEinir les fins de tranche canal, ainsi que des Eins de phase canal corres-pondant soit ~ une fin de tranche canal ayant donné lieu à
silence ou collision, soit à la fin de ]'émission réussie d'un message, - des premiers moyens de comptage pour effectuer un premier comptage évo-luant à la cadence des fins de phase canal jusqu'à une valeur de référence choisie, - des moyens logiques multi-états, définissant un automate possédant un état de repos et un état de t~vail~ dit époque, ~ans lequel il établit une séquence prédéterminée de 50U5-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index! et pour pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nom-bre de pas maximum qui est fonc-tion de sa s-tructure et du nombre total des index, -- des moyens n'autorisant le coupleur à emettre libremer.t que si le premier comptage se trouve à sa valeur de réfé-rence, - des moyens propres à réagir à la présence d'une collision lorsque le premier comp-tage est à sa valeur de réference en mettant ce premier comptage à une valeur de forçc,ge choi-sie, et en faisant passer l'automate en scn état d~ travail, ou époque, e-t des moyens n'autorisant alors le coupleur ~ émettre que si son index appartient au sous-ensemble désigné à chaque fois par l'automate, la valeur de forsa~e et la valeur de réference ~ -:Y
~L2S7~ 6 étant choisies de Eaçon que le comptage ne revienne à
la valeur de référence qu'après résolution complè-te de la collision qui a engendré l'époque, les coupleurs étant alors au-torisés à nouveau à émettre librement, tandis que les automa-tes reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
De préférence, le coupleur comporte desseconds moyens de comptage, évoluant aussi à la cadence des Eins de phase canal, et en fonction de la présence ou de l'absence de collision pendant chaque phase canal, mais à l'intérieur de l'époque, et avec des valeurs de forçage e't de réfé-rence dont l'une au moins est dlfférente de celles des premiers moyens de comptage.
D'autres aspects préférés de l'invention seront maintenant exposés. Ils s'appliquent tant au niveau du procédé qu'à
celui du dispositif. On s'intéressera d'abord au mode général, ensuite au mode périodique.
En mode général, les moyens logiques multi-états sont agencés pour définir une séquence prédéterminée structurée en un arbre de décision binaire, propre à subdiviser l'ensemble des index par dichotomies successives jusqu'à
les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à une collision, ou à l'émission réussie d'un message, et les valeurs de forçage et de référence du premier comptage sont espacées de 2 pas, ce comptage évoluant d'un pas, en progression ou régression par rapport à la valeur de référence, sui-vant que la phase canal précédente a ou non fait l'objet ~i7~
- 12a -d'une collis.ion.
Selon un au-tre aspect de ce mode géné.ral, les moyens logiques multi-états sont agencés pour exécu-ter une règle d'exploration/décision qui comprend:
- le passage à l'autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une /
.. . _ . .. . .
, .
;;7~
phase canal d'emission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en presence d'une phase canal de collision, et les valeurs de forçage et de référence du second comptage sont les memes, ce comptage évoluant d'un pas comme le premier, en progression ou régression par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de détermin0r qu'il a réintégré un sous-ensemble l'autorisant à émettxe.
Selon une variante avantageuse, en présence d'une phase canal de silence, la règle d'exploration/décision comprend une nouvelle dichotomie immédiate de l'autre sous-ensemble de la dichotomie en cour$.
Selon une autre variante avantageuse, en présence d'une collision au cours de laquelle son premier comptage se trouve à la valeur de référence, le coupleur fait passer systématiquement son automate à l'état de travail; dans la suite de l'époque, l'émission d'un message par le coupleur demeure autorisée pour les index appartenant à un sous-ensemble ayant donné lieu à une collision non encore résolue.
En pratique, les moyens logiques multi-états sont agencés de sorte que ledit arbre binaire est défini d'après les bits successifs des index, et l'ordre dans lequel ils se présentent.
Selon un mode de réalisation particulier, les moyens logiques multi-états comprennent des moyens formant un registre à décalage, de capacité au moins égale au nombre maximum de bits significatifs présents dans les index de l'ensemble pxédétermine, la dichotomie comportant un décalage du contenu de ce registre, et des moyens pour comparer le contenu du registre à l'index en cours.
Selon un autre aspect de l'invention, le coupleur re~oit initialement plusieurs index de priorités differentes, ladite règle d'exploration/décision explore les sous-ensembles d'index dans l'ordre des priorités, et les demandes d'émission de message sont associees chacune à l'un des index en fonction de leur priorité.
Selon encore une autre variante avantageuse, s'il n'a pas reçu de demande d'émission de message de la part de sa sta-tion, le coupleur se comporte comme désirant émettre unmessage 'nil' (l'emission ne sera pas exécutée, sauf si un vrai message vient entre temps se substituer au message 'nil'). Le coupleur fait ainsi passer systématiquement son automate à l'état de travail ou époque, dès lors qu'il se produit une collision pendant l'état de repos de ce même automate.
En mode périodique, ladite séquence prédéterminée est une suite de tous les index, pris à un un, et la différence entre les valeurs de forcage et de référence du premier comptage est au moins égale au nombre de pas de ladite suite, ce comptage progressant vers la valeur de référence à
chaque fin de phase canal sans collision.
Très avantageusement, on affecte à ce coupleur plusieurs index, ce qui permettra au coupleur de faire passer au moins un autre message avec un autre index dans la meme époque.
Selon un mode de réalisation particulier, l'un au moins des ~s~
- 14a premiers et seconds moyens de comptage comprend un registre à décalage.
Selon un autre aspect de l'invention, pour son en-trée en service, le premier comptage du coupleur est mis à une valeur /
.~, " ~S7~6 ,au moins égale au nombre de pas maximllm de la séquence prédé-terminée.
~lnsi, le réseau de commun.icat.ion peut etre commutclble entre S un Eonct.tonnement e~ mode générc,l e-t un fonctionnemerlt en mode periodique.
L'invention couvre aussi le réseau constitué de plusieurs cou-pleurs tels que déEinis ci-dessus, connectés à un support de transmission cornmun~ à diffusion.
D'autres caractéristiques et avantages de l'invention appa-raitront à l'examen de la description détaillée et non limitative ci-après, et des dessins annexés, sur lesquels:
- la figure l illustre le schéma général d'un réseau de commu-nication;
- la figure 2 est le schéma de principe d'un coupleur;
- la figure 3 est le schéma partiellement détaillé d'un cir-cuit du coupleur de la figure 2 ;
- la figure 4 est le schéma plus détaillé du circuit de la figure 3;
- les Eigures 4A et 4B sont des chronogrammes relatifs au circuit des figures 3 et 4;
- la figure 5 est le schéma d'une variante de ~éallsation du circuit de la figure 2;
- la figure 6 est un diagramme illustran-t le fonctionnement du "compteur d'~poque" ;
- les figures 7A ~ 7C sont les schémas de trois modes de réa-., ~
'~2.~
lisation du compteur d'époque;
- la figure ~ est un diagramme illustrant le fonc-tionnement d'un dispositif selon l'invention;
- les figures 9A et 9B sont les schémas de deux modes de réalisation du second compteur;
- la figure 10 illustre une variante du diagramme de la figure 6; et - la figure 11 illustre une variante de la partie R, encadrée en tireté, du diagramme de la figure ~.
Les dessins annexés comportent de nombreux éléments de caractère certain qu'ils peuvent seuls apporter. Ils font donc partie intégrante de la description, pour servir à
faire comprendre l'invention, aussi bien qu'à la définir.
Sont également incorporés à la présente description les éléments connus relatifs aux réseaux CSMA-CD et/ou Ethernet, notamment le Brevet, les articles et la norme déjà cités.
La figure 1 illustre une pluralité de stations Sl,... Si,...
Sn. A chacune d'entre elles sont connectés un ou plusieurs équipements automatisés, tels que des capteurstactionneurs, des automates programmables, des contrôleurs/régulateurs, des terminaux informatiques, des ordinateurs, des équipements téléphoniques, ou encore des terminaux vidéo.
Chaque station Si est physiquement raccordée à un support ou canal de transmission SC, par l'intermédiaire d'un matériel ou d'un ensemble de matériel et de logiciel que l'on appelle coupleur et que l'on note Ci. La s~ation Si comprend aussi une unite de commande UCi, reliee au coupleur Ci par un bus lnterne BIi.
Dans certains cas, on peut aussi incorporer le coupleur dans un équipement.
Pour sa part, le canal de transmission SC est un support à
diffusion, de type electromagnétique ou optique, passiE, semi-passif ou actif (c'est-à-dire muni d'amplificateurs-régénérateurs). Il comporte au moins une ligne de transmission, étant rappelé que plusieurs lignes sont souvent utiles pour réaliser une sécurité par redondance des supports et/ou des matériels d'émission~réception et/ou des informations transmises.
La figure 2 illustre, à titre d'exemple, une réalisation d'un coupleur Ci ~on omet l'indice i dans la suite~. Ce coupleur se compose principalement d'un circuit noté GSC, qui gère l'accès physique au support de transmission SC, et d'un circuit noté GER, qui réalise la gestion des émissions, des réceptions ainsi que des collisions.
Le circuit GSC peut être réalisé, de manière connue, à
l'aide de boîtiers de circuit intégré tels que le modèle 82 501 de la Société des ETATS~UNIS INTEL CORPORATION, ou à
l'aide d'éléments discrets. Ce circuit doit fournir au moins trois signaux logiques et leurs compléments:
CD représentant une detection de collision, et son complément CD, TxD, indiquant que la ligne de transmission du coupleur est active, et son complément TxD, RxD, ind.iquant que la ligne de réception du coupleur est act.ive, et son complement RxD.
L'état de TxD et TxD est entièrement sous le contrôle du coupleur concerné, tandis que ceux de R~D et CD ainsi que de leurs compléments dépendent des autres coupleurs.
Si un seul des coupleurs émet, alors RxD deviendra vrai dans tous les coupleurs, au plus tard après une durée égale à p (p étant le délai de propagation des signaux d'un bout à
l'autre du support de communication, comme défini plus haut).
Si deux coupleurs ou plus détectent l'état RxD et décident d'émettre, alors l'état CD deviendra vrai pour tous les coupleurs dans un délai de 2.p au plus.
Le fait qu'un message est en cours de transmission sans collision est représenté par la condition suivante:
CD & RxD
le symbole & représentant l'opérateur logique ET.
Enfin, RxD est toujours vrai lorsque CD est vrai, car s'il y a collision, une réception (probablement incohérente ou brouillée) est necessairement en cours.
Ce qui précède suppose un découpage dans le temps. Dans la technique CSMA-CD, ce découpage temporel s'effectue de manière asynchrone au niveau de chaque coupleur selon des transitions et des tranches canal (TC). Pour la mise en oeuvre de l'invention, ce découpage s'effectue selon des "phases canal". Une phase canal est:
- soit llintervalle de temps correspondant à une transmis-sion complète et reussie d'~ln message (condi-tion CD et RxD;
duree variable), - soit llintervalle de temps de durée égale à une tranche canal pendant lequel apparaît une collision ainsi que les brouillages correspondants (conditions CD et RxD), - soit un intervalle de temps du durée égale à la tranche canal, pendant lequel le canal est silencieux, sans émission ni collision (CD et RxD).
Ce découpage dans le temps est réalisé au niveau du circuit GER (figure 2) dont un exemple de réalisation principalement matériel est illustré sur les figures 3 et 4, tandis que les figures 5 et suivantes illustrent des variantes préféren-tielles de réalisation de ce même circuit.
Réalisation matérielle :
Sur les figures 3 et 4, on reconnait en partie basse le bus interne BI, ainsi qu'à droite les trois signaux CD, RxD et TxD échangés par le circuit GER avec le circuit GSC déjà
cité.
En présence d'une demande d'émission par la station, et du message numérique correspondant à transmettre, le bus interne BI applique ce message à un circuit 10 dit sérialisateur/désérialisateur. Il est réalisé par exemple à
l'aide d'un circuit intégré du type 2652 vendu en France par la Société RTC.
Pour l'émission, la fonction du circuit 10 est de mettre sous forme série le message que lui présente en parallèle le 7~
- ~o -bus :interne BI en lui ajoutant un en-tête et/ou des bi-ts de synchronisation. Ce message transite alors par le signal TxD. Inversement, pour une réception sarls brouillage, le circuit 10 va remettre sous forme parallèle les informations S qui lui proviennent en séxie, à travers le canal de transmission, d'un autre coupleur. L'en-tête et les bits de synchronisation sont alors éliminés. Les signaux RxD et TxD
sont donc échangés directement entre le circuit 10 et le circuit GSC de la figure 2. Le circuit 10 reproduit toute-fois le signal RxD, maintenant sous forme logique, pourqu'il puisse servir aux éléments qui l'accompagnent. Le circuit 10 comporte encore une entrée 101, reliée à la sortie d'une porte logigue 11.
Cette entrée 101 permet la validation et l'initialisation de l'émission, en présence d'une demande d'émission d'un message numérique par la station locale.
Un circuit d'horloge (non représenté) fournit un signal d'horloge rapide H à une entrée d'une porte ET 21. L'autre entrée de la porte 21, qui est inverseuse, recoit le signal logique RxD fourni par le circuit 10. La sortie de cette porte ~T 21 est appliquée à un compteur-temporisateur 20, capable d'établir une temporisation pendant une durée TC
c'est-à-dire la tranche canal. On vérifie bien que la tranche canal est définie, de manière asynchrone, au niveau de chacun des coupleurs, à partir de l'horloge rapide H qui lui est propre.
Au terme de la temporisation, une sortie 201 du circuit 20 fait entrer en fonction le circuit 22, pour la détection des "phases canal". Le circuit 22 reçoit comme autres entrées les signaux CD et RxD. Il possède deux sorties notées +:=
ainsi que -:=. Par convention, ~:= est associé à un ~%s~
décalage à droite dans un registre à décalage, tandis que -:=
est associe à un décalage à gauche.
Le signal +:= est mémorise dans une bascule 23. La sor-tie de cette bascule 23, notée +:=', ainsi que les deux signaux de sortie du circuit 22 sont appliqués d'une part à un circuit 24 de gestion des époques E, d'autre part à un circuit 26 propre à établir une division dichotomique. Le circuit 26 peut également recevoir le bus interne BI.
La sortie du circuit 26, ainsi que celle de la bascule 23, sont appliquées à un circuit 28, qui Eorme un second compteur pour la mise en oeuvre de l'invention.
Enfin, la sortir du circuit 24 est appliquée, en même temps que le signal d'horloge rapide H, à une porte ET 30. La sortie de cette porte actionne une bascule 31, gui reçoit ici un fil provenant du bus interne, et commande par sa propre sortie la porte ET 11 déjà citée.
Il est maintenant fait référence à la figure 4, qui illustre un mode de réalisation particulier des organes de la figure 3.
Une bascule 225 reçoit comme signal d'horloge le signal logi-que RxD. Elle reçoit sur son entrée D un signal logique '1', ici de + 5 volts. Sa sortie Q passe donc au niveau logique 'l' au terme de la première impulsion presente dans le signal RxD. Le signal de la sortie Q de la bascule 225, noté RxD', complémenté, est appliqué à une entrée de commande de chargement du circuit 20, qui est ici un registre à décalage. Sur activation de cette entrée, le registre à décalage 20 reçoit un signal logique 'O' en toutes ses cellules sauf une, qui reçoit un signal logique '1'. Il est alors pulse par son entrée de signal. SL, à
l'aide du signal de sor-tie de la porte ET Z1, lequel est constitue d'impulsions d'horloge rapide ~l, limitées à la durée du signal RxD complémenté. Les "tranches canal" ne sont donc élaborées qu'en l'absence de réception en cours~
La sortie HTC du circuit 20 es-t immédiatement exci-tée pendant une durée égale à un cycle d'horloge rapide. Elle le sera à nouveau, en l'absence du signal RxD, après un nombre d'implusions d'horloge rapide correspondant à la temporisation désirée TC. Cette sortie est appliquée tout d'abord à l'entrée D d'une autre bascule mémoire 228, dont l'entrée d'horloge reçoit l'horloge rapide H. La sortie Q
de cette bascule 228 produit dès la fin de la première impulsion d'horloge rapide qui suit l'apparition du signal HTC, une impulsion de remise à zéro, appliquée à l'entrée R
de la bascule 225. Cette dernière est alors prête à prendre en compte un nouveau signal RxD.
La sortie Q de la bascule 228 produit également une remise à
zéro d'une autre bascule 229, dont l'entrée D reçoit un signal logique '1', et dont l'entrée d'horloge est le signal CD.
La sortie Q de la bascule 229 fournit un signal de détection de collision noté CD', qui est donc ainsi rafraichi après chaque tranche canal, telle que mesurée par le circuit de temporisation 20.
Maintenant, le signal +:= est fourni par une porte ET 221 qui re,coit d'une part le signal ~ITC, d'autre part le signal CD'. Le signal -:= est fourni par une porte ET 222. Une entrée de celle-ci est fournie par une porte ou 223 qui re,coit d'une part le signal HTC, d'autre part le signal RxD'. L'autre entrée de la porte ET 222, complémentée, ~s~
reçoit le signal CD'.
La bascule 23 recoit le signal ~:- sur son entrée D. Elle reçoit comme horloge le signal d'horloge rapide H. Elle va donc prendre en compte le signal +:= à la première impulsion d'horloge rapide H qui la suit, ce qui fournit un signal +:=' qui est retardé d'un cycle d'horloge par rapport au signal +:=.
La première fonction du circuit qui vient d'être décrite est d'établir la détection des phases canal, une phase canal étant:
- une collision apparue pendant un intervalle de temps de durée égale à la tranche canal, ou - un message passant avec succès, pendant un intervalle de temps variable avec la durée du message, ou - une tranche canal pendant laquelle il ne s'est produit ni collision ni messag~.
La partie gauche de la figure 4A intéresse le cas d'une collision. La montée du signal RxD signifie qu'un ou des messages transitent sur le canal de transmission. La montée du signal CD signifie qu'il y a collision, donc qu'il s'agit de plusieurs messages. Les signaux RxD' et CD' passent à
l'état vrai, respectivement au front descendant des signaux RxD et CD. Le front montant du signal RxD' valide le chargement du contenu du registre à décalage, qui produit alors le signal HTC au terme de la première impulsion suivante de l'horloge rapide H. Par la bascule 228, la retombée de l'impulsion HTC produit le retour à l'état O des signaux RxD' et CD'. Entre temps, l'impulsion HTC a produit ~2,~ 6 un signal +:= sur la sortie de la porte ET 221.
On note que le temporisateur 20 est bloqué clès que le signal RxD est actif, du fait de la porte ET 21. L'homme de l'art aura également compris que les bascules et registres se chargent sur le front montant de l'horloge qui leur est appliquée tandis qu'elles valident en sortie sur le front descendant de l'horloge, c'est-à-dire que leur signal de sortie n'est fourni qu'au front descendant qui suit le front montant de l'horloge.
La partie droite de la figure 4A illustre un message passant avec succès. Cette fois, il n'est pas apparu de signal CD
pendant le signal RxD. RxD' s'est produit comme précédem-ment, suivi de HTC après une impulsion d'horloge. La remise à zéro n'intéresse que le signal RxD', puisque le signal CD' n'est pas passé à l'état vrai, en l'absence de tout signal CD. Dans C2 cas, c'est la porte ET 222 qui fournit un signal -:= pendant l'impulsion HTC.
La figure 4B illustre le cas où n'apparait ni collision ni message. Dans cette situation, le registre à décalage 20 est bouclé sur lui-meme. Son unique bit à 'l' apparaît périodiquement sur sa sortie 201 pour produire le signal HTC. Celui-ci est immédiatement suivi d'une impulsion de remise à zéro qui n'a d'ailleurs pas dieffet sur les bascules 225 et 229. Comme c'est la condition CD qui est vraie, on observe que la porte ET 222 fournit un signal -:=.
Cette situation se répète trois fois sur la figure 4B, montrant ainsi trois tranches canal consecutives sans collision ni message.
Le circuit de la figure 4 est propre à fonctionner selon deux modes différents, qui doivent etre sélectionnés con-jointement dans tous les coupleurs qui -travaillent sur le même support de communication.
Le mode est déEini par un bit de mode qui prend:
- la valeur '0' pour le mode général, correspondant à une séquence dichotornique, - la valeur '1' pour le mode périodique, qui correspond à
une séquence où l'on examine les index un par un.
Dans ce mode de réalisation, le circuit 24 comprend un organe 241, qui reçoit le bit de mode. L'organe 241 est un démultiplexeur permettant le prépositionnement des entrées d'un registre à décalage 240 ~en deux blocs de k+1 entrées d'une part, n-k-2 entrées d'autre part) selon que le bit de mode est à 0 ou 1. Maintenant, n désigne le nombre de coupleurs potentiellement connectables au canal, et n est codable sur k bits, k étant l'approximation entière par excès de log2n, où log2 désigne la fonction logarithme de base 2.
Il convient d'observer maintenant que le mode général peut se subdiviser en deux cas, l'un dit entrées bloquées (EB), l'autre dit entrées libres (EL). En mode entrées bloquées, un interrupteur 305 transmet directement le signal de la sortie 242 vers une entrée complémentée de la porte 30. En moae entrées libres, c'est la sortie Q de la bascule 306 qui est transmise. On rappelle que la seconde entrée de la porte 30 recoit le signal d'horloge H. Sa sortie définit l'horloge de la bascule 31, dont l'entrée D reçoi-t l'un des fils du bus interne BI, qui correspond à une demande d'émission de message. ~orsque la sortie 242 du registre 240 indique que celui-ci est à zéro, la sortie Q de la ~7~6 bascule 31 produit un signal DT qui va servir à valider et initlaliser l'émission, par son action sur l'une des entrées de la porte ET ll. Celle-ci n'autorise effectivement l'émission que d'une part si il n'y a pas de réception en cours (signal RxD vrai), d'autre part si le registre 280 que comprend l'organe 28 possède une sortie 281 dans un état prédéterminé, représentatif d'une valeur 0 comme on le verra plus loin. L'état 1 de la sortie 281 correspond à un coupl0ur perdant après une dichotomie.
La même sortie 281 est prise en compte sur l'entrée d'horloge d'une bascule 306, qui passe alors à l'état vrai, et sa sortie Q peut, dans la condition "entrées libres",être prise en compte dans l'état correspondant de l'interrupteur 305 pour alimenter la porte ET 30 déjà citée.
Enfin, la même sortie 281 arrive sur une entrée complémentée d'une porte ET 261, qui reçoit comme autre entrée le signal +:= provenant de la porte ET 221, ainsi que le signal DT
fourni par la sortie Q de la bascule 31.
La sortie de la porte ET 261 est appliquée à un registre à
décalage de dichotomie, noté 260, sur l'entrée de décalage à
- droite SR de celui-ci. Ce registre à décalage 260 contient un index x. Il reçoit comme horloge l'horloge rapide H.
Comme commande de chargement, il reçoit la sortie d'une porte ET 265. Une première entrée, complémentée, de cette porte, est le signal issu de la sortie 242 du registre de gestion d'époque 240. Une seconde entrée de la porte 265 est le signal d'entrées libres issu de la sortie Q de la bascule 306. Une troisième entrée de la porte ET 265 est fournie par une porte OU 266. Celle-ci reçoit d'une part le fil de sélection qui est appliqué aussi à la bascule 31.
D'autre part, elle reçoit la sortie d'un circuit de retard 5~
~monostable), du type 7~ 121, qui a pour entrée le signal de la sortie 2~2 du registre de gestion d'époque 2~0.
Enfin, la sortie du circuit 74 121 est également appliquée à
une batterie de portes ET 270, qui reçoivent comme autres entrées les sorties d'un circuit 290.
Le circuit 290 peut être chargé à partir du bus interne BI, par une valeur x' qu'il transmet donc aux portes 270 déjà
citées, ainsi ~u'au circuit 280. Cette valeur x' définit un ou plusieurs autres index utilisables dans l'époque.
Quant au registre à décalage 260 sa sortie de bit de poids le plus faible, notée LSB, valide une porte ET 275, dont l'autre entrée est le signal +:='. La sortie de cette porte 275 est reçue par un démultiplexeur 282, commandé par le signal de mode.
Ceci fait que le registre à décalage 280, qui définit une grandeur j de n bits, reçoit sur son entrée de décalage à
gauche le signal -:= issu de la porte ET 222. Il reçoit un signal tiré de ~:=' et du bit de poids le plus faible du registre 260, et ce soit sur son entrée de décalage à droite SR, soit sur son entrée de chargement, selon l'état du bit de mode appliqué au démultiplexeur 282. Comme les autres, . le registre à décalage 280 est alimenté par l'horloge rapide .~ .
La bascule 306 recoit sur son entrée D un signal "1" note ~5V. Sur son entrée d'horloge, elle reçoit le signal présent sur la ligne 281, qui correspond au bit le plus à
gauche du registre 280. L'homme de liart comprendra que lorsque ce circuit est décale à droite pour la première fois, le signal 281 passe de "0" à "1". Par la suite, et en ~s~
Eonction des décalages successi~s de ce registre (à gauche ou à droite), ce signal reviendra à "0" (après un nombre su~Eisant de décalages à gauche). Alors l'entrée d'horloge de la bascule 306 aura vu une impulsion complète et sa sortie passe à "1". En mode entrées libres, elle alimente l'entrée complémentée de la porte 30 et interdit donc la prise en compte d'une demande d'émission ultérieure. Le fait que le signal 281 passe de "1" à "0", signifie que le coupleur a de nouveau le droit d'émettre. On interdit donc bien la transmission pour ce coupleur lorsque celui-ci a eu une fois le droit d'émettre après la collision initiale.
L'interdiction d'émettre est invalidée lorsque le signal 242 repasse à 0, c'est-à-dire que l'époque est terminée. Ceci est réalisé par le fait que le signal 242 complémenté est appliqué à l'entrée R (remise à zéro) de la bascule 306.
Le fonctionnement de ces éléments des figures 3 et 4 sera décrit plus loin, sous forme fonctionnelle, et d'une manière commune avec les autres modes de réalisation de la présente invention.
Ces autres modes de réalisation utilisent une architecture matérielle ~ui est illustrée sur la figure 5. On y retrouve le circuit GSC, en prise directe sur le canal de transmission SC. Comme précédemment, ce circuit fournit les signaux CD, RXD, TXD et leurs compléments. I,e signal RxD
est appliqué à un sérialisateur/désérialisateur 110, qui recoit par ailleurs le bus interne et produit le signal série TxD. Une unité de traitement pour la communication est constituée d'un circuit 120, qui peut etre fondé sur un microprocesseur 8751 ou 8080 de la Société INTEL
Corporation. Cette unité 120 est munie d'une interface 121, qui lui permet d'échanger des informations avec le bus interne BI. L'unité de traitement re~oit, sous forme de , ~
, , ~, ~2 57 ~
commandes d'interruption, les signaux CD et RxD élaborés par le ~ircuit GSC.
Le fonctionnement demandé à l'unité de tra:itement 120 sera décrit ci-après par des schémas de la ~orme réseau de Petri, dans lesquels on a toutefois incorporé des tests comparables à ceux des représentations en organigramme classique.
Compteur d'époque ou compteur E (figure 6).
Le point de départ du schéma de la figure 6 est l'initiali-sation d'un coupleur (bloc 50). L'initialisation débute par un test de mode 51, le mode étant défini par un bit qui est mis à '0' (mode général) ou 'll (mode périodique) à la construction des coupleurs ou bien à leur mise en place sur le terrain. Dans le mode général, la sortie du test 51 est une étape 52 consistant à forcer un compteur ~ à une valeur k+lo (Le symbole := illustre l'affectation d'une valeur numérique à une variable). En mode périodique, la sortie du test Sl va, à l'étape 53, affecter la valeur N au compteur E. On verra plus loin que N vaut n en mode périodique et 2 en mode général.
Ensuite, il apparaît en 54 une "place", comme connu dans les réseaux de Petri. La ligne horizontale épaisse 56 représente l'interrogation du support de transmission. Il vient aussi sur cette ligne 56 une autre place 55, libellée FPC, pour "fin de phase canal". C'est seulement lorsque les deux places 54 et 55 possèdent chacune leur jeton que l'on peut exécuter l'interrogation du support à la ligne 56.
(Ceci correspond au bloc 2 de la figure 3).
Il est rappelé que le comp-teur E est ici à zéro dans l'é-tat de repos de l'automate selon l'invention. Il passera à des valeurs entières positives lorsque l'automate est dans son état de tra~ail, tout en consexvant une relation prédéter-minée avec la séquence de sous-ensemblec d':index suivant laquelle évolue l'automate. Quatre situations peuvent se produire:
- CD et E positif. Un test 60 examine alors à nouveau le bit de mode. En mode général, on effactue une incrémenta-tion d'un pas à l'étape 61, dans le compteur E. En mode périodigue, la situation est anormale. Une étape 62 effectue un traitement d'erreur convenable pour permettre la remise en fonction du réseau de communication.
- CD et E = 0. L'étape 63 affecte la valeur N au compteur E, étant rappelé gue N vaut 2 en mode général, et n en mode périodique.
- CD et E positif. L'étape 64 effectue une décrémentation d'un pas du compteur E, quel gue soit le mode.
- CD et E = 0. On retourne directement à la place 54.
On comprendra mieux le schéma de la figure 6, de même que le montage du circuit 24 gui lui correspond sur les figures 3 et 4, à l'examen des schémas détaillés des figures 7A à 7C.
On admet maintenant que le comptage de la grandeur E est réalisé par un registre à décalage possédant au moins k+1 bits (de préférence k-~2) pour le mode général, et n bits pour le mode périodique. On parlera néanmoins du "compteur R".
En mode général (figure 7A), tous les bits du registre à
décalage 240 sont initialement mis à 1. Une valeur 1 est ~S~6 - 3l -présentée à gauche, de façon que lors d'un décalage vers la droite, une valeur 1 soit insérée dans le bit de premier rang du registre 240. Inversement, une valeur 0 est présentée à droite, de façon qu'en cas de décalage à gauche, une valeur 0 soit introduite dans la position de bit k+2 qui est la plus à droite.
Les bits 2 à k-~2 du registre à décalage 240 sont de plus bouclés sur eux-mêmes, c'est-à-dire qu'on peut les recopier à l'identique si nécessaire. Ainsi, à chaque collision on recharge sur eux-mêmes les bits 2 à k+2 du registre, alors que le premier bit (bit 1) est chargé à 1, puis on décale à
droite. Ceci réalise aussi le forcage ini-tial, sans faire de différence entre la première collision et les suivantes.
La sortie du compteur E est l'état de son premier bit, comme l'illustre la figure 7A (équivalent du signal 242 figure 4).
La figure 7B concerne-le cas du mode périodique. Le registre à décalage 240 comprend maintenant n bits. Tous peuvent être mis à 1 simultanément sur une commande de chargement extérieure. Lors du decalage à droite, une valeur 1 est présentée à gauche, tandis que lors des décalages à gauche, une valeur 0 est présentée à droite. Là
encore, la sortie du compteur ~ est définie par l'état de son premier bit.
La figure 7C illustre un mode de réalisation combiné, permettant de réaliser à partir du même registre les fonctions des figures 7A et 7B. Un multiplexage (fonction du circuit 241, figure 4) est établi par les organes 241A et 24lB. Il s'agit de multiplexeurs 1 parmi 2. Pour le mode général, le bit de mode vaut 0. Le multiplexeur 24lA
recycle les bits 2 à k+2 du registre à l'identique, tandis ~%~ 6 que le multiplexeur 241B introdui-t des O dans les n-k-2 autres bits. Au con-tra.ire, en mode périodi~ue~ le ~ multlplexeur 2~lA introduit des 1 dans les bi-ts 2 à }c~2/
tandis que le multiplexeur 24lB introduit des 1 dans les n-k-2 autres bits. Llhomme de l'art comprendra que le circuit ainsi obtenu est capable, en fonc-tion de l'état du bit de mode, de fournir au choix soit le fonctionnement de la figure 7A, soit celui de la Eigure 7B.
On décrira maintenant brièvement le fonctionrlement des dispositifs selon l'invention, dans les deux modes général et périodique.
Mode géneral.
Le Demandeur a observé que le nombre maximal de collisions successives pouvant survenir à l'intérieur dlune époque en mode général est k-1, avec la convention que la collision initiale ouvrant une époque n'est pas comptabilisée. Il a également observé que, dans ce mode général, le nombre maximum de tranches vides consécutives à l'intérieur d'une époque est k-l si l'on suppose des coupleurs totalement fiables ou k+1 si l'on souhaite tolérer les défaillances.
Clest pourquoi, sur les figures 7A et 7C, le compteur E est mis à la valeur initiale k+1 dans les coupleurs en initialisation. L'homme de l'art comprendra que le fait que le coupleur en initialisation ne soit pas synchronisé avec les autres coupleurs sur les tranches vides (en supposant qu'une époque soit en cours) n'a pas d'importance, car - soit cette synchronisation est inutile dès lors que le compteur E atteint la valeur 0, .
- soit la synchronisation necessaire est ob-l;enue normalement en cas de canal devenant actif avant que E nlatteigne la valeur 0.
A l'initialisation, l'étape 52 (figure 6) force E à k+l. Un jeton est pose à la place 54, et l'on entre en fonctionne-ment normal. Des fonctions analogues ~non représentees) sont exécutées dans le dispositif des figures 3 et 4.
'10 L'analyse détaillée des différents cas possibles permet de vérifier que le compteur E d'un coupleur en initialisation atteint la valeur 0 en un délai fini, borné supérieurement, et que cette valeur 0 n'est jamais atteinte alors qu'une époque est en cours. Le bit k+2 permet de détecter le fonctionnement erratique d'un coupleur.
Mode périodique .
En l'absence d'erreur, ce n'est qu'en début d'époque que peut se produire une collision, laquelle permettra à un coupleur en initialisation de se synchroniser avec les coupleurs en fonctionnement. En cas de collision, chaque coupleur assigne à son compteur E la valeur N = n, qui est aussi la valeur d'initialisation.
Si E atteint la valeur 0 sans que ne se produise de collision, cela signiFie que le coupleur est seul dans le système.
On peut donc initialiser le système en initialisant un seul coupleur ou plusieurs coupleurs simultanément.
Lorsque les coupleurs sont initialisés, la surveillance des époques s'effectue selon le mécanisme illustré sur la figure - 3~ -6.
Ce mécanisme es-t e~écu-té en permanence par tous les coupleurs. Il peut être câblé comme c'était le cas des figures 3, ~ et 7, ou bien microprogrammé à partir du matériel de la figure 5 et d'un logiciel conforme aux schémas illustrés dans les figures suivantes.
Dans un coupleur en fonctionnement, la valeur courante de E
peut etre interprétée comme indiquant le nombre de phases canal à inspecter avant la fin de l'époque en cours.
La condition CD et E = 0 signifie qu'il n'y a pas d'époque en cours. Tant qu'une collision n'apparait pas, le compteur E n'évolue pas.
La condition CD et E = 0 se traduit, dès que la ligne CD
passe à vrai - marquant ainsi la présence d'une collision -par le fait que le compteur E prend la valeur N, qui vaut soit 2 en mode général, soit n en mode périodique.
Condition CD et E positif. Lorsqu'un message passe ou que le support reste libre pendant une tranche canal à
l'intérieur d'une époque, alors le compteur E est décrémenté. On revient à l'observation du support seulement après la réception complète du message, ou après avoir détecté la fin d'une -tranche canal vide.
Condition CD et E positif. Lorsqu'il y a collision à
nouveau à l'intérieur d'une époque, alors E est incrémenté
si l'on est en mode général. En mode périodique, ce cas ne doit pas se produire. L'étape 62 invoque alors une procédure de traitement d'erreur propre à restaurer le bon fonctionnement du réseau.
~S7~6 On s'lntéressera mai.ntenant, en référence a la figure 8, à
la gestion proprement dite des émissions de messages.
Il est rappele que le procedé proposé peut fonctionner selon deux modes : général et périodique. Le mode est sélectionné
à la fabrication des coupleurs ou à leur installation. En mode général, chaque coupleur peut à volonté fonctionner en entrées bloquées ou en entrées libres. Dans un coupleur à
entrées bloquées, aucun nouveau message, en dehors des messages effectivement entrés en collision, ne pourra être transmis durant une époque. Dans un coupleur à entrées libres, au contraire, un coupleur n'ayant pas soumis de message au moment de la collision ouvrant une époque peut, sous réserve de respecter des conditions visant à ce qu'il ne perturbe pas le fonctionnement des autres coupleurs, émettre dans l'époque un message fraîchement arrivé~
La soumission d'un message par la station au coupleur s'effectue dans tous les cas par activation d'une primitive, que l'on peut écrire Soumission (m, index, F), dont l'exécu-tion conduit au stockage dans une zone de mémoire Z, connue du circuit de gestion des émissions GER, des données suivantes:
- le message m lui-même, - l'index associé, - un Booléen F qui indiquera que le message aura été
transmis avec succès par le coupleur sur le support lorsqu'il passera à l'état vrai.
On notera qu'en mode général à entrées bloquées, un coupleur n'est actif à l'intérieur d'une époque que s'il a effective-~2~Q~
ment tenté de transmettre un rnessage en début d'époque (avec collision). Par contre, en mode géneral à entrées libres ainsi qu'en mode périodique, le procédé perme-t à un coupleur de devenir ac-tif à l'intérieur d'une époque, meme si aucun message n'avait été soumis à ce coupleur en début d'époque.
En mode général à entrées libres, ainsi qu'en mode périodi-que, lorsqu'aucun message n'a été soum:is, le coupleur émettra un message "nil" qui correspond à un silence.
L'exécution des primitives Soumission, que l'homme de l'art sait réalis~r, est indépendante et asynchrone de l'exécution du protocole de gestion des émissions. Ce pro-tocole est permanent, et on le décrira maintenant.
Les emplacements suivants de la zone de mémoire Z sont utilisés:
- message : =m ou "nil", - x := index (l'index étant f~xé à l'avance si le message est "nil"), - fin := F.
Le premier test 70 constitue une attente que le compteur E
atteigne la valeur 0. On suppose qu'une époque vient juste de se terminer, ce qui correspond donc à un tel passage de E
à 0. Le test suivant 71 examine le mode utilisé.
L'émission (de type CSMA-CD) d'un message est illustrée en la place 74. On tente toujours une telle émission en mode périodique, ainsi qu'en mode général si un message a été
soumis (passage par les phases d'attente 72 et 73, mais sans 7B\C~6 attendre, puisque E est par hypothèse à 0).
La ligne 75 illustre l'observation du support, qui répond aux deux conditions que des jetons aient été poses aux places 74 et 76 (fin de -tranche canal).
En mode périodique, on est certain de provoquer une collision CD d'où une ouverture d'époque, sauf dans le cas où un seul coupleur désire émettre.
A partir de la figure 8, on décrira maintenant séparément le mode général et le mode périodique.
Mode général En mode général, il peut se produire une collision, mais il est possible également que l'émission se déroule normalement (CD). Dans ce dernier cas, l'étape 91 termine l'émission, laquelle est d'une durée au moins egale à la tranche canal.
L'étape 92 met à l'état vrai le Booléen de fin F. L'étape 93 examine si le mode en cours est le mode général, auquel cas on retourne au test 70. Et le test 71 fait à nouveau la distinction entre les deux variantes, "entrées bloquées" et "entrées libres" du mode général.
Il convient maintenant de revenir à l'observation du support (ligne 75), pour examiner l'autre hypothèse où il se produit une collision. On pose alors un jeton dans la place 77.
Ensuite, l'étape 78 affecte la valeur 0 à la grandeur j, et l'étape 7g exécute un pas de la division dichotomique qui s'écrit X := X/2.
Un test 80 établit si cette séparation dichotomique est ,, possible ou impossible. L'impossibilité signifle une erreur, traitée par invocation d'une proc~dure appropriée (étape 80~).
Si la separation est possible, on passe à un test 81 qui détermine si l'index en cours x appartient au sous-ensemble gagnant G ou au sous-ensemb:Le perdant P. Slil appartient au sous-ensemble gagnant, on tente à nouveau l'émission du message à la place 74. Si l'index x en cours appartient au sous-ensemble perdant, la suite dépend d'un nouveau test 82, portant sur le fait qu'on est en mode général ou périodique.
En mode général, on saute directement à la place 84. La sortie de la place 84 est à nouveau l'observation du support en 85, avec cette fois la condition qu'on observe le support non plus par fin de tranche canal, mais bien par fin de phase canal (FPC en la place 86).
S'il n'y a pas de collision et que j est nul, la ligne 87 renvoie à la place dlémission de message 74 (toutes les collisions précedentes ont été résolues).
S'il y a collision, intervient un nouveau test de mode en 88. En mode général, l'étape 89 modifie j par incrémenta-tion d'un pas.
S'il n'y a pas collision, mais que la grandeur j n'es-t pas nulle, l'étape 90 décrémente j d'un pas.
Les sorties des deux étapes 89 et 90 retournen-t à la place 84 (collision pas encore résolue).
Les éléments de la figure 8 dont les numéros vont de 81 à 90 sont encadrés d'un trait tireté léger, référencé R, afin de matérialiser qu'il s'agi-t là des éléments chargés à
proprement parler de la résolu-tion de collision.
La sortie de droite de la phase dlatten-te 73 rappelle qu'un mode général à entrées bloquées, on s'interdit d'emettre si une époque est en cours (E different de 0) lorsqu'un message a été soumis.
La sortie de gauche de la phase d'attente 72 rappelle qu'en mode général à entrées libres, le coupleur exécute le mécanisme de gestion des émissions à l'ouverture d'une époque, c'est-à-dire dès que E devient différent de 0. Il va donc à la place 77, préparant l'émission d'un message.
Si sa zone de mémoire Z ne contient que le message "nil" au moment où il sera autorlsé à émettre, il n'y aura pas d'émission effective, ce coupleur restant silencieux. Dans le cas contraire il émet son message.
Il convient de décrire un peu plus en détail la séparation dichotomique de l'ensemble des index, afin d'isoler ceux ~ui correspondent aux coupleurs ayant un message à transmettre.
L'ensemble X tel qu'il a été défini plus haut représente l'ensemble des valeurs possibles des index associés aux messages et aux coupleurs. On note x la valeur courante d'index utilisée par un coupleur actif, c'est-à-dire participant à l'époque.
Un eoupleur peut posséder un seul ou plusieurs index. Dans ce dernier cas, les index sont utilisés par le coupleur dans l'ordre des valeurs croissantes.
A l'ouverture d'une époque, l'ensemble d'index choisi par un coupleur actif est noté X0. On suppose, pour simplifier, que cet ensemble d'index de départ comprend toutes les ~ %S~06 valeurs de 0 à 2k-1.
L'arbre binaire est parcouru en choisissant un balayage de droite à gauche ou de gauche à droite, le choix droite/gauche ou gauche/droite étant le même pour -tous les noeuds, depuis le tronc (I'hautll de l'arbre) jusqulaux feuilles ("bas" de l'arbre).
L'ensemble X0 est donc séparé en deux sous-ensembles, et ce de manière identique par tous }es coupleurs actifs. Le sens choisi pour le balayage détermine un sous-ensemble gagnant G
et un sous-ensemble perdant P. Chaque coupleur examine si son index en cours x fait partie de G.
Si oui, le coupleur tente à nouveau la transmission du message. En cas de collision à nouveau, la même procédure de séparation dichotomique de l'ensemble d'index G en deux nouveaux sous-ensembles G et P est exécutée et ainsi de suite jusqu'à ce qu'une transmission de message sans collision soit réussie.
C'est cela que note l'expression X : = X/2 sur la figure 8, en 79. C'est aussi ce qui est opéré, à chaque décalage (à
droite), par le registre 260 (figure 4).
Chaque fois qu'un coupleur découvre que son index x appartient à P, il s'abstient d'émettre, et surveille le support (ligne 85). Une variable locale, notée j, lui permettra de savoir à quel moment il sera autorisé à tenter à nouveau l'émission de son message. On y reviendra ci-après.
On observe que la règle de séparation en deux sous-ensembles peut être quelconque. Par exemple G et P correspondront aux ~ ~ ~j7~06 index pairs et impairs respectivement, ou bien pour tout ensemble de depart (0, 2k-1), G correspondra aux index de ~'ensemble (o, 2k 1_1) e-t P aux index de l'ensemble (2k 1,
2 -1).
L'homme de l'art comprendra qu'il y a lieu de choisir la règle de calcul d'index, ~ partir de classes de priorités, de telle manière que lorsqu'on élabore un index, tous les messages de plus forte priorité se trouvent dans le premier sous-ensemble gagnant, puis ceux de priorité immédiatement inférieure dans le second sous-ensemble gagnant lors de la seconde itération, et ainsi de suite. On garantit ainsi que l'ordre de transmission des messages à l'intérieur d'une époque respecte l'ordre des priorités.
Par exemple, dans un système à priorités statiques comprenant plusieurs classes, le rang de priorité sera égal à la classe ou à une fonction de cette classe selon les conventions retenues pour numéroter les priorités. Dans un système à priorités temporelles (échéances physiques), le rang sera égal par exemple au délai restant à courir avant échéance ou à une fonction de ce délai selon les conventions retenues pour numéroter et ranger les priorités.
On examine maintenant l'autorisation d'émettre à nouveau dans une époque, à partir de la variable j.
La valeur initiale de la variable j est 0 en mode général.
En l'absence d'erreur, la valeur finale de j sera 0.
Les différents cas possibles à l'issue de la ligne 85 peuvent être exposés comme suit:
- collision détectée CD : il y a encore une collision à
résoudre, j est incrémenté (signal 281 à l'état 1, figure ) ;
- pas de collision CD, ce qui correspond à un message ou à
une tranche canal vide:
. si j est différent de 0, il y a encore au moins une collision qui n'est pas totalement résolue, ~ est donc décrementé d'un pas (j correspond à l'état du signal 281) . si j = 0, toutes les collisions précédentes ont été
résolues, le coupleur a le droit d'émettre à nouveau à
l'intérieur de l'époque.
La valeur courant de j peut être interprétée comme indiquant le nombre de phases canal demeurant à inspecter, moins une, avant que le coupleur ne puisse être autorisé à émettre à
nouveau.
En mode général, un coupleur calcule toujours un index en concatenant un nom logique (unique pour ce coupleur dans le système) avec le rang du message en attente le plus priori-taire. En mode général à entrées libres, si le coupleur entre en époque avec un message "nil", il calcule l'index en concaténant son nom avec un rang fixé à l'avance, l'index ne pouvant pas changer en cours d'époque (chargement de x' dans x en fin d'époque, figure 4).
Dans un mode de réalisation particulier de l'invention, la séparation dichotomique est réalisée par le fait que chaque coupleur possède un registre à décalage de longueur k. Dans ce registre est écrit l'index correspondant au message à
transmettre.
~S~ 6 Diviser X en deux sous-ensembles revient alors à décaler d'une position les bits de ce registre à gauche ou à clroite.
Selon la valeur du bit qui sort du regis-t:re à ce moment (valeur 0 ou 1), un coupleur actif saura s'il a gagné ou perdu. Le choix de 0 Oll 1 pour gagner ou perdre est libre, sous réserve qu'il soit identique pour tous les coupleurs.
A cha~ue itération, on exécute l'opération de décalage.
Cette realisation n'est bien entendu donnée qu'à t;tre d'exemple, car de nombreuses réalisations équivalentes peuvent être envisagées.
Dans cet exemple d'une réalisation par registre à décalage, les règles permettant de prendre en compte les priorités sont alors les suivantes:
- si le registre est décalé à gauche, les index sont discriminés en fonction de la parité des bits de plus fort poids. Tout index possédant par exemple un bit O à gauche sera gagnant par rapport à un index possédant un bit 1 à
gauche. En ce cas, le rang de priorité constitue la partie de fort poids de l'index. Les valeurs de rang sont égales aux priorités statiques ou égales au délai restant à courir avant échéance, et bien évidemment la valeur 0 représente alors la valeur de priorité et de rang la plus élevée.
- si le registre est au contrairedécalé à droite, les index sont bien entendu discriminés en fonction de la parité des bits de plus faible poids. Tout index possédant un bit 0 à
droite sera gagnant par rapport à un index possédant un bit 1 à droite. En ce cas, le rang constitue la partie de faible poids de l'index. Le calcul des valeurs de rang à
partir des priorités ou des échéances est le même que ci-dessus. Par contre, les valeurs de rang calculées sont écrites invers~es dans le registre, le bit fort poids du ~L2~
- ~4 -rang devenant bit faible poids du rang, et ainsi de suite.
Pour leur part, les compteurs de la valeur j sont avantageu-sement réalisés par l'intermédiaire d'un registre à décalage de taille au moins égale a k bits utiles en mode général.
'Comme on l'a VLI précédemment, lorsque le coupleur pexd, est chargé avec la valeur 0 en mode général.
En résume, le compteur E sert à déterminer la présence d'une époque, et sa durée. Il fonctionne dans tous les coupleurs en service. Lorsqu'un coupleur est mis en marche, son compteur E est mis à k+1 (figure 6), nombre maximum de pas de la dichotomie (quoiqu'une initialisation plus rapide et plus sophistiquée d'un tel coupleur puisse être envisagée).
Pour le reste deux cas peuvent se produire, suivant que l'absence de messages à émettre est considérée comme état d'inaction du coupleur, ou bien une demande d'émission d'un message "nil".
Dans le premier cas (inaction), seuls les coupleurs actifs exécutent le reste du processus (étapes 74 à 93).
Dans le second cas (message "nil"), ou bien en mode "entrées libres", tous les coupleurs en service exécutent le reste du processus (étapes 74 à 93).
Mode périodique (figure 8).
Les considérations générales ci-dessus sont pour la plupart valables en mode périodique. En revanche, la séquence d'exploration des index est figée, et les examine un par un, ici dans l'ordre croissant.
~2~
Si E = 0 (fin d'une époque), on passe par la place 74.
Dans la grande majorité des cas, deux coupleurs au moins auront de vrals messages à éme-ttre, d'où une collision, et l'ouverture immédiate d'une nouvelle époque.
La condition CD veut alors que l'on passe par l'etape 78 pour arriver en 79. L'étape 79 subdivise l'ensemble des index en un sous-ensemble gagnant, à un seul élément, l'index 0, les autres index definissant le sous-ensemble perdant. (Si le test 80 montre que la subdivision est impossible, un traitement d'erreur convenable 80A est effectué).
Le test 81 autorise le coupleur possédant l'index 0 à
émettre immédiatement par retour à la place 74. Dans les autres coupleurs, l'etape 83 donne au second comptage j la valeur x-1 et l'on va à la place 84.
Le coupleur qui a l'index x = 1 possède maintenant j = 0.
La sortie 87 de la ligne 85 le renvoie à la place 74, pour émettre à son tour, dans la phase canal suivante (jeton dans la place 86).
Les autres coupleurs passent par l'étape 90, qui décrémente j d'une unité, et retournent à la place 84. Chacun leur tour ils vont arriver à j = 0, et obtenir ainsi le droit d'émettre.
Une collision en cours d'époque est anormale. Le test 88 fait alors qu'une procédure de traitement d'erreur 88A est invoquée.
Les coupleurs qui ont émis chacun leur -tour sont passes à
~z~;7~
cette occasion par les é-tapes 91 et 92.
Les tests 93 et 94 leur permettent de faire valo:ir dans la même épo~ue un autre index, le cas echéant/ ou encore le plus petit parmi plusieurs index qu'ils possèdent encore.
On affecte à i la valeur ~ - x - 2, et l'on affecte à x la valeur y.
Le test 96 fait alors retourner le coupleur à la place 84 si j est positif ou nul.
L'homme de l'art comprendra que si j = -l, le coupleur doit émettre immédiatement, et le test 96 le renvoie en consequence à la place 74.
Exceptionnellement, il peut arriver qu'un seul coupleur désire vraiment émettre après la fin d'une époque. Dans ce cas, il n'y a pas d'ouverture d'époque, car le coupleur passe directement de la place 74 aux étapes 91 et 92.
Il apparaitra à l'homme de l'art que ce mode périodique est totalement différent des procédés de transmission à accès multiples par répartition dans le temps (TDMA).
L'homme de l'art comprendra aussi que le mode périodique peut être modifié pour examiner l'ensemble des index par sous-ensembles disjoints de 2 index chacun.
Plus généralement, il existe d'autres modes intermédiaires entre le mode général et ce mode périodique modifié; les modes intermédiaires seront à chaque fois définis par une partition de l'ensemble des index, et par une règle d'exploration associée à cette partition, le cas échéant.
~2~7~
Après ces explications, on pourra mieux comprendre le fonctionnement des organes 24, 26 et 28 des figures 3 et 4, en se reféran-t aussi aux figures 6 à 9. La correspondance s'établit comme suit:
- le bloc 24 ou 240 et 2A1 des Eigures 3 e-t 4 correspond au mécanisme de la figure 6, et s'explique comme lui en référence aux figures 7A à 7C;
- le bloc 26 de la figure 3 (260 et son entourage sur la figure 4) correspond aux blocs 78 à 81 de la figure 8;
- les blocs 282 et 290 de la figure 4 correspondent aux blocs 82 et 83 de la figure 8;
15 - - le bloc 28 de la figure 3 (280 sur la figure 4) correspond aux blocs 84 à 90 de la figure 8, ainsi qu'aux blocs 94 à
96, pour la gestion d'un ou plusieurs autres index dans la même époque, en mode périodique.
On aura observé que la fin de tranche canal (FTC) est signalée (en l'absence de réception en cours) par le fil 201 (signal HTC) sur les figures 3 et 4. Le circuit 22 (ensemble 221 à 229) sert à signaler la fin de phase canal (FPC).
Il est à noter aussi que, dans le mode de réalisation matériel des figures 3 et 4:
- le chargement du contenu du registre 290 dans le registre 260 se fait en fin d'époque, de sorte que, pour la prochaine époque, la division (dichotomique) se fait sur cette valeur si le coupleur n'a rien à émettre (figure 8, test 72, sor-tie E ~ 0) dans le mode général à entrées libres ou dans le mode périodique.
''' .,' ~ . .
- 4~ -- La présence de l'un des signaux -~:= et -:= correspond à la pose d'un jeton de marquage dans les places FTC (76, figure 8), FPC (86, figure 8), FPC (55 figures 6 et 10), FPC (86 ~igure 11). On note que la réalisa~ion matérielle, rapide, n'utilise que FPC.
- La porte 275 (figure 4) définit l'appartenance de l'index en cours au sous-ensemble gagnant.
Enfin, les figures 9A et gB montrent comment réaliser le compteur j (28 ou 280 et 290) à partir d'un re~istre à
décalage.
Pour le seul rnode général (figure 9A), le registre est d'abord remis à zéro. a chaque décalage, il rentre '1' à
gauche ou '0' à droite. Son état est défini par le premier bit, et la tai'le du registre peut se limiter à k bits.
Pour travailler au choix sur les deux modes (figure 9B), la taille du registre passe à n bits. Le fonctionnement demeure le meme en mode général.
En mode périodique, la valeur de j = x - 1 (étape 83, figure 8) est chargée sous la forme d'un mot de n bits dont (en principe) seul le (j-1)-ème bit est à '0', definissant ainsi le nouvel index. Il en est de m8me à l'étape 95, avec une nouvelle valeur de j. ~ien entendu, plusieurs nouveaux index peuvent etre définis par plusieurs bits à zéro dans j.
On examinera maintenant différentes variantes du procédé
selon llinvention, qui s'appliquent essentiellement au mode général, et n'intéressent donc pas le mode périodique.
Lorsqu'il se produit une collision pendant une époque, en mode général, le Demandeur a observé qu'il existe au moins deux index relatiEs à des coupleurs ac-tifs, désirant émettre, dans l'ensemble X considéré, lequel est alors separe en deux sous-ensembles G. et P. On peut en déduire que si aucun de ces index nlappartient au sous-ensemble gagnant, ce que matérialisera une tranche vide detectée après la collision, c'est donc qu'ils appartiennent tous au sous-ensemble perdant. Il est dans ce cas inutile de permettre à
tous les coupleurs du sous-ensemble perdant de transmettre à
nouveau après détection de la tranche vide, puisqu'il y aura forcément collision.
L'invention prévoit donc d'appliquer immédiatement la procédure de séparation dichotomique au sous-ensemble perdant, ce qui économise une tranche canal. Ceci sera donc effectué après toute détection d'une tranche vide au moins, consécutivement à une collision.
A cet effet, le schéma de la figure 10 apporte une modification par rapport à celui de la figure 6 (débarrassé
de tout ce qui concerne le mode périodique).
Les étapes 61 et 63 demeurent les mêmes. Par contre, la condition CD et E positif est subdivisée, suivant l'état de RxD.
De plus, après l'etape 63, une étape 66 fait passer à vrai une grandeur Booléenne C. Apr's l'étape 61, une étape 67 fait de même.
Après l'étape 64A, qui a décrémenté d'un pas la valeur de E, une étape 68A fait passer à faux le Booléen C, si l'absence de collision correspond en fait à une émission réussie.
~25~ 6 Dans le cas contraire, où l'absence de collision correspond à un silence, en test 64B examine le Booléen C, qui est bien entendu stocké en memoire à chaque fois~ S'il est vrai, on revient ~ la place 54. Si le Booleen C est ~aux, l'étape 68B réalise la décrementation d'un pas de Eo Ainsi, le Booléen C permet de suivre l'apparition des séquences propres à l'optimisation, en ~aisant la distinction entre une phase canal d'emission sans collision et une tranche canal vide. La règle d'évoLution du Booléen C est la même que celle du Booléen B que l'on décrira plus loin.
La figure ll illustre le mécanisme optimisé de gestion des autorisations d'émettre à nouveau, ou résolution de collisions, qui correspond à la partie R de la figure 8, débarrassée de ce qui concerne le mode périodique.
Si l'inde~ en cours X s'avère d'après~le test 81 appartenir à l'ensemble perdant, on franchit une place 81A, pour mettre ensuite un Booléen B à la valeur vraie, par une étape 81D.
On parmient alors à la place 84.
A l'observation du support en 85, les choses restent les mêmes que précédemment en présence d'une collision, par l'étape 89 sauf que l'on revient en 81A et non en 84. Les autres cas sont subdivisés.
S'il n'y a pas de collision, que la valeur j est à 0, mais qu'il y a eu émission (RxD vrai), la sortie 87A donne le même résultat que précédemment. S'il n'y a pas de collision avec j = 0, mais qu'aucun signal ne transite sur le canal, un test 87B examine le Booléen B. Si celui-ci est fau~, la sortie est la même que par 87A. S'il est vrai, on retourne à la place 77 de la figuxe 8.
S'il n'y a pas de collision, que j est différen-t de 0, et qu'il n'y a pas non plus de signal sur le canal, un test 90A
examine là encore le Booléen B. S'il est vrai, la sortie retourne à la place 84. S'il est faux, on fait de même, mais après avoir décrémenté d'un pas la grandeur j.
~nfin, s'il n'y a pad de collision, que j est différent de 0, mais qu'un message a transité sur le canal de transmission, alors l'étape 90C décrémente d'un pas la grandeur j, et l'étape 90D met à faux le Booléen B, avant de revenir à la place 84.
On comprendra que ce Booléen B prendra la valeur vraie en cas de collision, et conserve cette valeur tant que l'on ne détecte pas une transition de message réussie (conditions RxD et CD). Et ce Booléen est testé lorsque c'est une tranche vide qui est détectée ~conditions CD et RxD) quelle que soit la valeur de j.
Lorsque j = OJ si B est faux, alors la phase canal précédente correspondait à une transmission de message réussie. Dans ce cas, c'est une émission normaLe qui est tentée, sans sauter d'étapes dichotomiques. Si B est vrai, on se trouve au contraire dans une séquence permettant l'optimisation, et on procède immédiatement à une séparation dichotomique avant d'examiner si une nouvelle collision se produit~
L,orsque j est différent de 0, si B est faux, on effectue normalement une décrémentation de j. Si B est vrai, on n'effectue pas cette décrémentation. Ces deux choix correspondent à ce qui vient d'être décrit.
La présente description n'est pas étendue jusqu'au traite-ment des fau-tes ou erreurs propres aux coupleurs, ou au canal de transmlsslon commun. Ces traitements ne sont pas en effe-t directernent reliés au procéde selon l'inven-tion.
Pour prendre un exemple, il est bien entendu utile de prévoir des signalisations et des traitements de fautes appropriés dans des cas anormaux tels que:
- CD et E positif en mode périodique (test 60, figure 6 et test 88, figure 8J, - séparation impossible (sortie horizontale de l'étape 80, figure 8), - j inférieur à -1 (sortie non représentée du test 96, figure 8J.
Le comportement en présence de fautes du procédé selon l'invention est au moins équivalent de celui des procédés CSMA-CD connus.
Par ailleurs, l'invention peut être réalisée sous forme matérielle et/ou logicielle, avec un degré d'intégration des composants choisis en fonction de l'application concernée.
Enfin, bien qu'elle vise spécifiquement la transmission de messages numériques, l'invention peut aussi s'appliquer à la transmission de messages analogiques.
L'homme de l'art comprendra qu'il y a lieu de choisir la règle de calcul d'index, ~ partir de classes de priorités, de telle manière que lorsqu'on élabore un index, tous les messages de plus forte priorité se trouvent dans le premier sous-ensemble gagnant, puis ceux de priorité immédiatement inférieure dans le second sous-ensemble gagnant lors de la seconde itération, et ainsi de suite. On garantit ainsi que l'ordre de transmission des messages à l'intérieur d'une époque respecte l'ordre des priorités.
Par exemple, dans un système à priorités statiques comprenant plusieurs classes, le rang de priorité sera égal à la classe ou à une fonction de cette classe selon les conventions retenues pour numéroter les priorités. Dans un système à priorités temporelles (échéances physiques), le rang sera égal par exemple au délai restant à courir avant échéance ou à une fonction de ce délai selon les conventions retenues pour numéroter et ranger les priorités.
On examine maintenant l'autorisation d'émettre à nouveau dans une époque, à partir de la variable j.
La valeur initiale de la variable j est 0 en mode général.
En l'absence d'erreur, la valeur finale de j sera 0.
Les différents cas possibles à l'issue de la ligne 85 peuvent être exposés comme suit:
- collision détectée CD : il y a encore une collision à
résoudre, j est incrémenté (signal 281 à l'état 1, figure ) ;
- pas de collision CD, ce qui correspond à un message ou à
une tranche canal vide:
. si j est différent de 0, il y a encore au moins une collision qui n'est pas totalement résolue, ~ est donc décrementé d'un pas (j correspond à l'état du signal 281) . si j = 0, toutes les collisions précédentes ont été
résolues, le coupleur a le droit d'émettre à nouveau à
l'intérieur de l'époque.
La valeur courant de j peut être interprétée comme indiquant le nombre de phases canal demeurant à inspecter, moins une, avant que le coupleur ne puisse être autorisé à émettre à
nouveau.
En mode général, un coupleur calcule toujours un index en concatenant un nom logique (unique pour ce coupleur dans le système) avec le rang du message en attente le plus priori-taire. En mode général à entrées libres, si le coupleur entre en époque avec un message "nil", il calcule l'index en concaténant son nom avec un rang fixé à l'avance, l'index ne pouvant pas changer en cours d'époque (chargement de x' dans x en fin d'époque, figure 4).
Dans un mode de réalisation particulier de l'invention, la séparation dichotomique est réalisée par le fait que chaque coupleur possède un registre à décalage de longueur k. Dans ce registre est écrit l'index correspondant au message à
transmettre.
~S~ 6 Diviser X en deux sous-ensembles revient alors à décaler d'une position les bits de ce registre à gauche ou à clroite.
Selon la valeur du bit qui sort du regis-t:re à ce moment (valeur 0 ou 1), un coupleur actif saura s'il a gagné ou perdu. Le choix de 0 Oll 1 pour gagner ou perdre est libre, sous réserve qu'il soit identique pour tous les coupleurs.
A cha~ue itération, on exécute l'opération de décalage.
Cette realisation n'est bien entendu donnée qu'à t;tre d'exemple, car de nombreuses réalisations équivalentes peuvent être envisagées.
Dans cet exemple d'une réalisation par registre à décalage, les règles permettant de prendre en compte les priorités sont alors les suivantes:
- si le registre est décalé à gauche, les index sont discriminés en fonction de la parité des bits de plus fort poids. Tout index possédant par exemple un bit O à gauche sera gagnant par rapport à un index possédant un bit 1 à
gauche. En ce cas, le rang de priorité constitue la partie de fort poids de l'index. Les valeurs de rang sont égales aux priorités statiques ou égales au délai restant à courir avant échéance, et bien évidemment la valeur 0 représente alors la valeur de priorité et de rang la plus élevée.
- si le registre est au contrairedécalé à droite, les index sont bien entendu discriminés en fonction de la parité des bits de plus faible poids. Tout index possédant un bit 0 à
droite sera gagnant par rapport à un index possédant un bit 1 à droite. En ce cas, le rang constitue la partie de faible poids de l'index. Le calcul des valeurs de rang à
partir des priorités ou des échéances est le même que ci-dessus. Par contre, les valeurs de rang calculées sont écrites invers~es dans le registre, le bit fort poids du ~L2~
- ~4 -rang devenant bit faible poids du rang, et ainsi de suite.
Pour leur part, les compteurs de la valeur j sont avantageu-sement réalisés par l'intermédiaire d'un registre à décalage de taille au moins égale a k bits utiles en mode général.
'Comme on l'a VLI précédemment, lorsque le coupleur pexd, est chargé avec la valeur 0 en mode général.
En résume, le compteur E sert à déterminer la présence d'une époque, et sa durée. Il fonctionne dans tous les coupleurs en service. Lorsqu'un coupleur est mis en marche, son compteur E est mis à k+1 (figure 6), nombre maximum de pas de la dichotomie (quoiqu'une initialisation plus rapide et plus sophistiquée d'un tel coupleur puisse être envisagée).
Pour le reste deux cas peuvent se produire, suivant que l'absence de messages à émettre est considérée comme état d'inaction du coupleur, ou bien une demande d'émission d'un message "nil".
Dans le premier cas (inaction), seuls les coupleurs actifs exécutent le reste du processus (étapes 74 à 93).
Dans le second cas (message "nil"), ou bien en mode "entrées libres", tous les coupleurs en service exécutent le reste du processus (étapes 74 à 93).
Mode périodique (figure 8).
Les considérations générales ci-dessus sont pour la plupart valables en mode périodique. En revanche, la séquence d'exploration des index est figée, et les examine un par un, ici dans l'ordre croissant.
~2~
Si E = 0 (fin d'une époque), on passe par la place 74.
Dans la grande majorité des cas, deux coupleurs au moins auront de vrals messages à éme-ttre, d'où une collision, et l'ouverture immédiate d'une nouvelle époque.
La condition CD veut alors que l'on passe par l'etape 78 pour arriver en 79. L'étape 79 subdivise l'ensemble des index en un sous-ensemble gagnant, à un seul élément, l'index 0, les autres index definissant le sous-ensemble perdant. (Si le test 80 montre que la subdivision est impossible, un traitement d'erreur convenable 80A est effectué).
Le test 81 autorise le coupleur possédant l'index 0 à
émettre immédiatement par retour à la place 74. Dans les autres coupleurs, l'etape 83 donne au second comptage j la valeur x-1 et l'on va à la place 84.
Le coupleur qui a l'index x = 1 possède maintenant j = 0.
La sortie 87 de la ligne 85 le renvoie à la place 74, pour émettre à son tour, dans la phase canal suivante (jeton dans la place 86).
Les autres coupleurs passent par l'étape 90, qui décrémente j d'une unité, et retournent à la place 84. Chacun leur tour ils vont arriver à j = 0, et obtenir ainsi le droit d'émettre.
Une collision en cours d'époque est anormale. Le test 88 fait alors qu'une procédure de traitement d'erreur 88A est invoquée.
Les coupleurs qui ont émis chacun leur -tour sont passes à
~z~;7~
cette occasion par les é-tapes 91 et 92.
Les tests 93 et 94 leur permettent de faire valo:ir dans la même épo~ue un autre index, le cas echéant/ ou encore le plus petit parmi plusieurs index qu'ils possèdent encore.
On affecte à i la valeur ~ - x - 2, et l'on affecte à x la valeur y.
Le test 96 fait alors retourner le coupleur à la place 84 si j est positif ou nul.
L'homme de l'art comprendra que si j = -l, le coupleur doit émettre immédiatement, et le test 96 le renvoie en consequence à la place 74.
Exceptionnellement, il peut arriver qu'un seul coupleur désire vraiment émettre après la fin d'une époque. Dans ce cas, il n'y a pas d'ouverture d'époque, car le coupleur passe directement de la place 74 aux étapes 91 et 92.
Il apparaitra à l'homme de l'art que ce mode périodique est totalement différent des procédés de transmission à accès multiples par répartition dans le temps (TDMA).
L'homme de l'art comprendra aussi que le mode périodique peut être modifié pour examiner l'ensemble des index par sous-ensembles disjoints de 2 index chacun.
Plus généralement, il existe d'autres modes intermédiaires entre le mode général et ce mode périodique modifié; les modes intermédiaires seront à chaque fois définis par une partition de l'ensemble des index, et par une règle d'exploration associée à cette partition, le cas échéant.
~2~7~
Après ces explications, on pourra mieux comprendre le fonctionnement des organes 24, 26 et 28 des figures 3 et 4, en se reféran-t aussi aux figures 6 à 9. La correspondance s'établit comme suit:
- le bloc 24 ou 240 et 2A1 des Eigures 3 e-t 4 correspond au mécanisme de la figure 6, et s'explique comme lui en référence aux figures 7A à 7C;
- le bloc 26 de la figure 3 (260 et son entourage sur la figure 4) correspond aux blocs 78 à 81 de la figure 8;
- les blocs 282 et 290 de la figure 4 correspondent aux blocs 82 et 83 de la figure 8;
15 - - le bloc 28 de la figure 3 (280 sur la figure 4) correspond aux blocs 84 à 90 de la figure 8, ainsi qu'aux blocs 94 à
96, pour la gestion d'un ou plusieurs autres index dans la même époque, en mode périodique.
On aura observé que la fin de tranche canal (FTC) est signalée (en l'absence de réception en cours) par le fil 201 (signal HTC) sur les figures 3 et 4. Le circuit 22 (ensemble 221 à 229) sert à signaler la fin de phase canal (FPC).
Il est à noter aussi que, dans le mode de réalisation matériel des figures 3 et 4:
- le chargement du contenu du registre 290 dans le registre 260 se fait en fin d'époque, de sorte que, pour la prochaine époque, la division (dichotomique) se fait sur cette valeur si le coupleur n'a rien à émettre (figure 8, test 72, sor-tie E ~ 0) dans le mode général à entrées libres ou dans le mode périodique.
''' .,' ~ . .
- 4~ -- La présence de l'un des signaux -~:= et -:= correspond à la pose d'un jeton de marquage dans les places FTC (76, figure 8), FPC (86, figure 8), FPC (55 figures 6 et 10), FPC (86 ~igure 11). On note que la réalisa~ion matérielle, rapide, n'utilise que FPC.
- La porte 275 (figure 4) définit l'appartenance de l'index en cours au sous-ensemble gagnant.
Enfin, les figures 9A et gB montrent comment réaliser le compteur j (28 ou 280 et 290) à partir d'un re~istre à
décalage.
Pour le seul rnode général (figure 9A), le registre est d'abord remis à zéro. a chaque décalage, il rentre '1' à
gauche ou '0' à droite. Son état est défini par le premier bit, et la tai'le du registre peut se limiter à k bits.
Pour travailler au choix sur les deux modes (figure 9B), la taille du registre passe à n bits. Le fonctionnement demeure le meme en mode général.
En mode périodique, la valeur de j = x - 1 (étape 83, figure 8) est chargée sous la forme d'un mot de n bits dont (en principe) seul le (j-1)-ème bit est à '0', definissant ainsi le nouvel index. Il en est de m8me à l'étape 95, avec une nouvelle valeur de j. ~ien entendu, plusieurs nouveaux index peuvent etre définis par plusieurs bits à zéro dans j.
On examinera maintenant différentes variantes du procédé
selon llinvention, qui s'appliquent essentiellement au mode général, et n'intéressent donc pas le mode périodique.
Lorsqu'il se produit une collision pendant une époque, en mode général, le Demandeur a observé qu'il existe au moins deux index relatiEs à des coupleurs ac-tifs, désirant émettre, dans l'ensemble X considéré, lequel est alors separe en deux sous-ensembles G. et P. On peut en déduire que si aucun de ces index nlappartient au sous-ensemble gagnant, ce que matérialisera une tranche vide detectée après la collision, c'est donc qu'ils appartiennent tous au sous-ensemble perdant. Il est dans ce cas inutile de permettre à
tous les coupleurs du sous-ensemble perdant de transmettre à
nouveau après détection de la tranche vide, puisqu'il y aura forcément collision.
L'invention prévoit donc d'appliquer immédiatement la procédure de séparation dichotomique au sous-ensemble perdant, ce qui économise une tranche canal. Ceci sera donc effectué après toute détection d'une tranche vide au moins, consécutivement à une collision.
A cet effet, le schéma de la figure 10 apporte une modification par rapport à celui de la figure 6 (débarrassé
de tout ce qui concerne le mode périodique).
Les étapes 61 et 63 demeurent les mêmes. Par contre, la condition CD et E positif est subdivisée, suivant l'état de RxD.
De plus, après l'etape 63, une étape 66 fait passer à vrai une grandeur Booléenne C. Apr's l'étape 61, une étape 67 fait de même.
Après l'étape 64A, qui a décrémenté d'un pas la valeur de E, une étape 68A fait passer à faux le Booléen C, si l'absence de collision correspond en fait à une émission réussie.
~25~ 6 Dans le cas contraire, où l'absence de collision correspond à un silence, en test 64B examine le Booléen C, qui est bien entendu stocké en memoire à chaque fois~ S'il est vrai, on revient ~ la place 54. Si le Booleen C est ~aux, l'étape 68B réalise la décrementation d'un pas de Eo Ainsi, le Booléen C permet de suivre l'apparition des séquences propres à l'optimisation, en ~aisant la distinction entre une phase canal d'emission sans collision et une tranche canal vide. La règle d'évoLution du Booléen C est la même que celle du Booléen B que l'on décrira plus loin.
La figure ll illustre le mécanisme optimisé de gestion des autorisations d'émettre à nouveau, ou résolution de collisions, qui correspond à la partie R de la figure 8, débarrassée de ce qui concerne le mode périodique.
Si l'inde~ en cours X s'avère d'après~le test 81 appartenir à l'ensemble perdant, on franchit une place 81A, pour mettre ensuite un Booléen B à la valeur vraie, par une étape 81D.
On parmient alors à la place 84.
A l'observation du support en 85, les choses restent les mêmes que précédemment en présence d'une collision, par l'étape 89 sauf que l'on revient en 81A et non en 84. Les autres cas sont subdivisés.
S'il n'y a pas de collision, que la valeur j est à 0, mais qu'il y a eu émission (RxD vrai), la sortie 87A donne le même résultat que précédemment. S'il n'y a pas de collision avec j = 0, mais qu'aucun signal ne transite sur le canal, un test 87B examine le Booléen B. Si celui-ci est fau~, la sortie est la même que par 87A. S'il est vrai, on retourne à la place 77 de la figuxe 8.
S'il n'y a pas de collision, que j est différen-t de 0, et qu'il n'y a pas non plus de signal sur le canal, un test 90A
examine là encore le Booléen B. S'il est vrai, la sortie retourne à la place 84. S'il est faux, on fait de même, mais après avoir décrémenté d'un pas la grandeur j.
~nfin, s'il n'y a pad de collision, que j est différent de 0, mais qu'un message a transité sur le canal de transmission, alors l'étape 90C décrémente d'un pas la grandeur j, et l'étape 90D met à faux le Booléen B, avant de revenir à la place 84.
On comprendra que ce Booléen B prendra la valeur vraie en cas de collision, et conserve cette valeur tant que l'on ne détecte pas une transition de message réussie (conditions RxD et CD). Et ce Booléen est testé lorsque c'est une tranche vide qui est détectée ~conditions CD et RxD) quelle que soit la valeur de j.
Lorsque j = OJ si B est faux, alors la phase canal précédente correspondait à une transmission de message réussie. Dans ce cas, c'est une émission normaLe qui est tentée, sans sauter d'étapes dichotomiques. Si B est vrai, on se trouve au contraire dans une séquence permettant l'optimisation, et on procède immédiatement à une séparation dichotomique avant d'examiner si une nouvelle collision se produit~
L,orsque j est différent de 0, si B est faux, on effectue normalement une décrémentation de j. Si B est vrai, on n'effectue pas cette décrémentation. Ces deux choix correspondent à ce qui vient d'être décrit.
La présente description n'est pas étendue jusqu'au traite-ment des fau-tes ou erreurs propres aux coupleurs, ou au canal de transmlsslon commun. Ces traitements ne sont pas en effe-t directernent reliés au procéde selon l'inven-tion.
Pour prendre un exemple, il est bien entendu utile de prévoir des signalisations et des traitements de fautes appropriés dans des cas anormaux tels que:
- CD et E positif en mode périodique (test 60, figure 6 et test 88, figure 8J, - séparation impossible (sortie horizontale de l'étape 80, figure 8), - j inférieur à -1 (sortie non représentée du test 96, figure 8J.
Le comportement en présence de fautes du procédé selon l'invention est au moins équivalent de celui des procédés CSMA-CD connus.
Par ailleurs, l'invention peut être réalisée sous forme matérielle et/ou logicielle, avec un degré d'intégration des composants choisis en fonction de l'application concernée.
Enfin, bien qu'elle vise spécifiquement la transmission de messages numériques, l'invention peut aussi s'appliquer à la transmission de messages analogiques.
Claims (33)
1. Procédé de transmission de messages entre différentes stations, du type dit CSMA-CD, dans lequel:
- chaque station (Si) est munie d'au moins un coupleur (Ci) qui la connecte à un canal de transmission commun, à diffusion (SC), - chaque coupleur (Ci) est capable d'émission-réception sur ce canal (SC), en mode asynchrone, en définissant une transition à chaque fin d'émission ou de réception, - chaque coupleur (Ci) écoute en permanence ledit canal (SC) et le scrute après chaque transition pendant une durée prédéterminée, dite tranche canal (TC), - un coupleur (Ci) ne peut commencer à émettre un message, sur demande de sa station, qu'en l'absence de signal sur le canal, tandis qu'il interrompt et invalide son émission s'il apparaît, pendant la tranche canal correspondante, un signal indicatif d'une collision, tel qu'un brouillage, manifestant un début d'émission simultanée par plusieurs coupleurs, caractérisé en ce qu'initialement, on affecte à chaque coupleur (Ci) au moins un index qui lui est propre, choisi dans un ensemble d'index prédéterminé, et on munit chaque coupleur (Ci) d'un automate (26; 70-97) qui possède un état de repos et un état de travail, dit époque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et pour pouvoir cou-vrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est fonction de sa structure et du nombre total des index, - en ce qu'on établit un ordre de changement de pas, dit fin de phase canal (FPC), dans chaque coupleur à la fin de toute tranche canal (FTC) ayant donné lieu à silence ou collision, ou à la fin de l'émission réussie d'un'message, - en ce que, dans chaque coupleur (Ci), on entretient au moins un premier comptage (E) qui évolue à la cadence des fins de phase canal, et en fonction de la présence ou de l'absence de collision pendant chaque phase cànal, jusqu'à
une valeur de référence choisie (E=O), - en ce qu'un coupleur (Ci) n'est autorisé à émettre librement que si son comptage se trouve à la valeur de référence (E=O), et en ce qu'en présence d'une collision (CD) lorsque ledit comptage est à sa valeur de référence (E=O), tous les coupleurs (Ci) en service mettent leur comptage à une valeur de forçage choisie (E=N) alors qu'au moins les coupleurs qui ont émis lors de la collision font passer leur automate à l'état de travail ou époque, et lui font parcourir ladite séquence à la cadence des fins de phase canal (FPC), ce-pendant que seuls les coupleurs munis d'un index appartenant au sous-ensemble désigné par ce pas sont autorisés à émettre un message associé à cet index, la valeur de forçage (E=N) et la valeur de référence (E=O) étant choisies de façon que le comptage ne revienne à la valeur de référence qu'après résolution complète de la collision qui a engendré l'époque, les coupleurs étant alors autorisés à nouveau à émettre librement, tandis que les automates reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
- chaque station (Si) est munie d'au moins un coupleur (Ci) qui la connecte à un canal de transmission commun, à diffusion (SC), - chaque coupleur (Ci) est capable d'émission-réception sur ce canal (SC), en mode asynchrone, en définissant une transition à chaque fin d'émission ou de réception, - chaque coupleur (Ci) écoute en permanence ledit canal (SC) et le scrute après chaque transition pendant une durée prédéterminée, dite tranche canal (TC), - un coupleur (Ci) ne peut commencer à émettre un message, sur demande de sa station, qu'en l'absence de signal sur le canal, tandis qu'il interrompt et invalide son émission s'il apparaît, pendant la tranche canal correspondante, un signal indicatif d'une collision, tel qu'un brouillage, manifestant un début d'émission simultanée par plusieurs coupleurs, caractérisé en ce qu'initialement, on affecte à chaque coupleur (Ci) au moins un index qui lui est propre, choisi dans un ensemble d'index prédéterminé, et on munit chaque coupleur (Ci) d'un automate (26; 70-97) qui possède un état de repos et un état de travail, dit époque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et pour pouvoir cou-vrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est fonction de sa structure et du nombre total des index, - en ce qu'on établit un ordre de changement de pas, dit fin de phase canal (FPC), dans chaque coupleur à la fin de toute tranche canal (FTC) ayant donné lieu à silence ou collision, ou à la fin de l'émission réussie d'un'message, - en ce que, dans chaque coupleur (Ci), on entretient au moins un premier comptage (E) qui évolue à la cadence des fins de phase canal, et en fonction de la présence ou de l'absence de collision pendant chaque phase cànal, jusqu'à
une valeur de référence choisie (E=O), - en ce qu'un coupleur (Ci) n'est autorisé à émettre librement que si son comptage se trouve à la valeur de référence (E=O), et en ce qu'en présence d'une collision (CD) lorsque ledit comptage est à sa valeur de référence (E=O), tous les coupleurs (Ci) en service mettent leur comptage à une valeur de forçage choisie (E=N) alors qu'au moins les coupleurs qui ont émis lors de la collision font passer leur automate à l'état de travail ou époque, et lui font parcourir ladite séquence à la cadence des fins de phase canal (FPC), ce-pendant que seuls les coupleurs munis d'un index appartenant au sous-ensemble désigné par ce pas sont autorisés à émettre un message associé à cet index, la valeur de forçage (E=N) et la valeur de référence (E=O) étant choisies de façon que le comptage ne revienne à la valeur de référence qu'après résolution complète de la collision qui a engendré l'époque, les coupleurs étant alors autorisés à nouveau à émettre librement, tandis que les automates reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
2. Procédé selon la revendication 1, caractérisé en ce que les coupleurs (Ci) dont l'automate est dans l'état de travail entretiennent un second comptage (j), qui évolue aussi à la cadence des fins de phase canal (FPC) et en fonction de la présence ou de l'absence de collision pen-dant chaque phase canal, mais à l'intérieur de l'époque et avec des valeurs de forçage et de référence dont l'une au moins est différente de celles du premier comptage.
3. Procédé selon la revendication 1, caractérisé en ce que ladite séquence prédéterminée est structurée en un arbre de décision binaire, propre à subdiviser l'ensemble des index en sous-ensembles par dichotomies successives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à
une collision, ou à l'émission réussie d'un message, et en ce que les valeurs de forçage (E=N) e-t de référence (E=O) du premier comptage sont espacées de 2 pas (N=2), ce comptage évoluant d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précédente a ou non fait l'objet d'une collision.
une collision, ou à l'émission réussie d'un message, et en ce que les valeurs de forçage (E=N) e-t de référence (E=O) du premier comptage sont espacées de 2 pas (N=2), ce comptage évoluant d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précédente a ou non fait l'objet d'une collision.
4. Procédé selon la revendication 2, caractérisé en ce que ladite séquence prédéterminée est structurée en un arbre de décision binaire, propre à subdiviser l'ensemble des index en sous-ensembles par dichotomies successives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à une collision, ou à l'émission réussie d'un message, et en ce que les valeurs de forcage (E=N) et de référence (E=O) du premier comptage sont espacées de 2 pas (N=2), ce comptage évoluant d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précédente a ou non fait l'objet d'une collision.
5. Procédé selon la revendication 4, caractérisé en ce que la règle d'exploration/décision comprend:
- le passage à un autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une phase canal d'émission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en présence d'une phase canal de collision, et en ce que les valeurs de forçage et de référence du second comptage sont les mêmes (j=O), ce comptage évoluant d'un pas comme le premier, en progression ou régression par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de déterminer qu'il a réintégré un sous-ensemble l'autorisant à émettre.
- le passage à un autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une phase canal d'émission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en présence d'une phase canal de collision, et en ce que les valeurs de forçage et de référence du second comptage sont les mêmes (j=O), ce comptage évoluant d'un pas comme le premier, en progression ou régression par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de déterminer qu'il a réintégré un sous-ensemble l'autorisant à émettre.
6. Procédé selon la revendication 5, caractérisé en ce qu'en présence d'une phase canal de silence, la règle d'exploration/décision comprend une nouvelle dichotomie immédiate de l'autre sous-ensemble de la dichotomie en cours.
7. Procédé selon la revendication 5 ou 6, caractérisé
en ce qu'en présence d'une collision (CD) au cours de laquelle leurs comptages se trouvent à la valeur de référence (E=O), tous les coupleurs (Ci) font passer leurs automates à l'état de travail, et en ce que, dans la suite de l'époque, on autorise également l'émission d'un message par de tels coupleurs pour les index appartenant à
un sous-ensemble ayant donné lieu à une collision non encore résolue.
en ce qu'en présence d'une collision (CD) au cours de laquelle leurs comptages se trouvent à la valeur de référence (E=O), tous les coupleurs (Ci) font passer leurs automates à l'état de travail, et en ce que, dans la suite de l'époque, on autorise également l'émission d'un message par de tels coupleurs pour les index appartenant à
un sous-ensemble ayant donné lieu à une collision non encore résolue.
8. Procédé selon la revendication 3, 5 ou 6, caractérisé
en ce que lesdits index sont des index binaires, et en ce que ledit arbre binaire est défini d'après des bits successifs des index, et l'ordre dans lequel ils se présentent.
en ce que lesdits index sont des index binaires, et en ce que ledit arbre binaire est défini d'après des bits successifs des index, et l'ordre dans lequel ils se présentent.
9. Procédé selon la revendication 3, 5 ou 6, caractérisé
en ce qu'on affecte à chaque coupleur (Ci) plusieurs index binaires, qui correspondent respectivement à des niveaux de priorité différents, et en ce que ladite règle d'ex-ploration/décision explore les sous-ensembles d'index dans l'ordre des priorités.
en ce qu'on affecte à chaque coupleur (Ci) plusieurs index binaires, qui correspondent respectivement à des niveaux de priorité différents, et en ce que ladite règle d'ex-ploration/décision explore les sous-ensembles d'index dans l'ordre des priorités.
10. Procédé selon la revendication 1, caractérisé en ce que ladite séquence prédéterminée est une suite de tous les index, pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E-O) du premier comptage est au moins égale au nombre de pas de ladite suite, ce comptage pro-gressant vers la valeur de référence à chaque fin de phase canal sans collision.
11. Procédé selon la revendication 2, caractérisé en ce que ladite séquence prédéterminée est une suite de tous les index, pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E=O) du premier comptage est au moins égale au nombre de pas de ladite suite, ce comptage pro-gressant vers la valeur de référence à chaque fin de phase canal sans collision.
12. Procédé selon la revendication 1, 10 ou 11, carac-térisé en ce qu'on affecte à chaque coupleur plusieurs index, ce qui permet à un coupleur de faire passer au moins un autre message avec un autre index dans la même époque.
13. Procédé selon la revendication 1, caractérisé en ce qu'un coupleur (Ci) n'ayant pas reçu de demande d'émission de message de la part de sa station est considéré comme désirant émettre un message " nil" , tous les coupleurs faisant ainsi passer simultanément leur automate à l'état de travail ou époque.
14. Procédé selon la revendication 1 ou 2, caractérisé
en ce que pour des coupleurs entrant en service, on met le premier comptage (E) de ces coupleurs à une valeur au moins égale au nombre de pas maximum de la séquence prédéterminée.
en ce que pour des coupleurs entrant en service, on met le premier comptage (E) de ces coupleurs à une valeur au moins égale au nombre de pas maximum de la séquence prédéterminée.
15. Dispositif pour la mise en oeuvre du procédé selon la revendication 1, comportant un coupleur défini par:
- un circuit de contrôle du canal de transmission (GSC), propre à fournir au moins trois signaux logiques respecti-vement représentatifs d'une émission en cours par le cou-pleur (TxD), d'une réception en cours sur le canal (RxD), et d'une collision détectée sur le canal (CD), - un circuit de commande (GER) qui assure la liaison entre le reste de la station et le circuit de contrôle (GSC), en fonction des signaux reçus sur le canal, et des demandes d'émission de message en provenance de la station, caractérisé en ce que le circuit de commande comprend:
- des moyens propres à mémoriser au moins un index binaire qui lui est propre, et au moins une demande d'émission de message en relation avec cet index, - des moyens logiques de phase canal (24; FPC) pour défi-nir les fins de tranche canal, ainsi que des fins de phase canal correspondant soit à une fin de tranche canal ayant donné lieu à silence ou collision, soit à la fin de l'é-mission réussie d'un message, - des premiers moyens de comptage (24; E) pour effectuer un premier comptage évoluant à la cadence des fins de phase canal jusqu'à une valeur de référence choisie, des moyens logiques multi-états (26; 75-80), définis-sant un automate possédant un état de repos et un état de travail, dit époque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et pour pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est fonction de sa structure et du nombre total des index, - des moyens (11; 70-74) n'autorisant le coupleur à
émettre librement que si le premier comptage se trouve à
sa valeur de référence (E=O), - des moyens (24;63) propres à réagir à la présence d'une collision lorsque le premier comptage est à sa valeur de référence, en mettant ce premier comptage à
une valeur de forçage choisie, et en faisant passer l'automate en son état de travail, ou époque, et - des moyens (11; 81) n'autorisant alors le coupleur à
émettre que si son index appartient au sous-ensemble désigné à chaque fois par l'automate, la valeur de for-çage et la valeur de référence étant choisies de façon que le comptage ne revienne à la valeur de référence qu'après résolution complète de la collision qui a engendré l'épo-que, les coupleurs étant alors autorisés à nouveau à
émettre librement, tandis que les automates reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
- un circuit de contrôle du canal de transmission (GSC), propre à fournir au moins trois signaux logiques respecti-vement représentatifs d'une émission en cours par le cou-pleur (TxD), d'une réception en cours sur le canal (RxD), et d'une collision détectée sur le canal (CD), - un circuit de commande (GER) qui assure la liaison entre le reste de la station et le circuit de contrôle (GSC), en fonction des signaux reçus sur le canal, et des demandes d'émission de message en provenance de la station, caractérisé en ce que le circuit de commande comprend:
- des moyens propres à mémoriser au moins un index binaire qui lui est propre, et au moins une demande d'émission de message en relation avec cet index, - des moyens logiques de phase canal (24; FPC) pour défi-nir les fins de tranche canal, ainsi que des fins de phase canal correspondant soit à une fin de tranche canal ayant donné lieu à silence ou collision, soit à la fin de l'é-mission réussie d'un message, - des premiers moyens de comptage (24; E) pour effectuer un premier comptage évoluant à la cadence des fins de phase canal jusqu'à une valeur de référence choisie, des moyens logiques multi-états (26; 75-80), définis-sant un automate possédant un état de repos et un état de travail, dit époque, dans lequel il établit une séquence prédéterminée de sous-ensembles d'index, structurée pour pouvoir aboutir à des choix successifs d'un seul des index, et pour pouvoir couvrir ainsi tout l'ensemble des index, ladite séquence comprenant un nombre de pas maximum qui est fonction de sa structure et du nombre total des index, - des moyens (11; 70-74) n'autorisant le coupleur à
émettre librement que si le premier comptage se trouve à
sa valeur de référence (E=O), - des moyens (24;63) propres à réagir à la présence d'une collision lorsque le premier comptage est à sa valeur de référence, en mettant ce premier comptage à
une valeur de forçage choisie, et en faisant passer l'automate en son état de travail, ou époque, et - des moyens (11; 81) n'autorisant alors le coupleur à
émettre que si son index appartient au sous-ensemble désigné à chaque fois par l'automate, la valeur de for-çage et la valeur de référence étant choisies de façon que le comptage ne revienne à la valeur de référence qu'après résolution complète de la collision qui a engendré l'épo-que, les coupleurs étant alors autorisés à nouveau à
émettre librement, tandis que les automates reviennent en leur état de repos, ce qui permet de résoudre toute collision en un temps limité.
16. Dispositif selon la revendication 15, caractérisé
en ce qu'il comporte des seconds moyens de comptage (28; j) pour effectuer un second comptage évoluant aussi à la cadence des fins de phase canal (FPC), et en fonc-tion de la présence ou de l'absence de collision pen-dant chaque phase canal, mais à l'intérieur de l'époque, et avec des valeurs de forçage et de référence dont l'une au moins est différente de celles des premiers moyens de comptage.
en ce qu'il comporte des seconds moyens de comptage (28; j) pour effectuer un second comptage évoluant aussi à la cadence des fins de phase canal (FPC), et en fonc-tion de la présence ou de l'absence de collision pen-dant chaque phase canal, mais à l'intérieur de l'époque, et avec des valeurs de forçage et de référence dont l'une au moins est différente de celles des premiers moyens de comptage.
17. Dispositif selon la revendication 15, caractérisé
en ce que les moyens logiques multi-états comportent des moyens pour définir une séquence prédéterminée, structurée en un arbre de décision binaire, propre à
subdiviser en sous-ensembles l'ensemble des index par dichotomies successives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné
lieu à un silence, à une collision, ou à l'émission réus-sie d'un message, et en ce que les valeurs de forçage et de référence du premier comptage (E) sont espacées de 2 pas, les premiers moyens de comptage comprenant des moyens pour faire évoluer le premier comptage d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précédente a ou non fait l'objet d'une collision.
en ce que les moyens logiques multi-états comportent des moyens pour définir une séquence prédéterminée, structurée en un arbre de décision binaire, propre à
subdiviser en sous-ensembles l'ensemble des index par dichotomies successives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné
lieu à un silence, à une collision, ou à l'émission réus-sie d'un message, et en ce que les valeurs de forçage et de référence du premier comptage (E) sont espacées de 2 pas, les premiers moyens de comptage comprenant des moyens pour faire évoluer le premier comptage d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précédente a ou non fait l'objet d'une collision.
18. Dispositif selon la revendication 16, caractérisé
en ce que les moyens logiques multi-états comportent des moyens pour définir une séquence prédéterminée, structurée en un arbre de décision binaire, propre à subdiviser en sous-ensembles l'ensemble des index par dichotomies succes-sives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à une collision, ou à l'émission réussie d'un message, et en ce que les valeurs de forçage et de référence du premier comptage (E) sont espacées de 2 pas, les premiers moyens de comptage comprenant des moyens pour faire évoluer le premier comptage d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précé-dente a ou non fait l'objet d'une collision.
en ce que les moyens logiques multi-états comportent des moyens pour définir une séquence prédéterminée, structurée en un arbre de décision binaire, propre à subdiviser en sous-ensembles l'ensemble des index par dichotomies succes-sives jusqu'à les atteindre un par un, et auquel est associée une règle d'exploration/décision en fonction du fait que la phase canal précédente a donné lieu à un silence, à une collision, ou à l'émission réussie d'un message, et en ce que les valeurs de forçage et de référence du premier comptage (E) sont espacées de 2 pas, les premiers moyens de comptage comprenant des moyens pour faire évoluer le premier comptage d'un pas en progression ou régression par rapport à la valeur de référence, suivant que la phase canal précé-dente a ou non fait l'objet d'une collision.
19. Dispositif selon la revendication 18, caractérisé
en ce que les moyens logiques multi-états comportent des moyens pour exécuter une règle d'exploration/décision, qui comprend:
- le passage à un autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une phase canal d'émission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en présence d'une phase canal de collision, et en ce que les valeurs de forçage et de référence du second comptage (j) sont les mêmes, les seconds moyens de comp-tage comprenant des moyens pour faire évoluer le second comptage d'un pas comme le premier, en progression ou régression, par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de déterminer qu'il a réintégré un sous-ensemble l'autori-sant à émettre.
en ce que les moyens logiques multi-états comportent des moyens pour exécuter une règle d'exploration/décision, qui comprend:
- le passage à un autre sous-ensemble de la dichotomie en cours, en présence d'une phase canal de silence, ou d'une phase canal d'émission réussie, ou bien - une nouvelle dichotomie du sous-ensemble en cours d'examen, en présence d'une phase canal de collision, et en ce que les valeurs de forçage et de référence du second comptage (j) sont les mêmes, les seconds moyens de comp-tage comprenant des moyens pour faire évoluer le second comptage d'un pas comme le premier, en progression ou régression, par rapport à sa propre valeur de référence, si bien que ce second comptage permet à un coupleur de déterminer qu'il a réintégré un sous-ensemble l'autori-sant à émettre.
20. Dispositif selon la revendication 19, caractérisé
en ce qu'en présence d'une phase canal de silence, les moyens d'exécution de la règle d'exploration/décision comprennent des moyens pour réaliser une nouvelle dicho-tomie immédiate de l'autre sous-ensemble de la dichotomie en cours.
en ce qu'en présence d'une phase canal de silence, les moyens d'exécution de la règle d'exploration/décision comprennent des moyens pour réaliser une nouvelle dicho-tomie immédiate de l'autre sous-ensemble de la dichotomie en cours.
21. Dispositif selon la revendication 19 ou 20, carac-térisé en ce qu'en présence d'une collision (CD) au cours de laquelle son premier comptage se trouve à la valeur de référence (E=O), le coupleur comprend des moyens pour faire passer systématiquement son automate à l'état de travail, et ledit coupleur comprend des moyens pour autoriser dans la suite de l'époque l'émission d'un message par ledit coupleur pour les index appartenant à un sous-ensemble ayant donné lieu à une collision non encore résolue.
22. Dispositif selon la revendication 17, caractérisé
en ce que les index sont des index binaires et en ce que les moyens logiques multi-états comprennent des moyens pour définir ledit arbre binaire d'après des bits suc-cessifs des index, et l'ordre dans lequel ils se pré-sentent.
en ce que les index sont des index binaires et en ce que les moyens logiques multi-états comprennent des moyens pour définir ledit arbre binaire d'après des bits suc-cessifs des index, et l'ordre dans lequel ils se pré-sentent.
23. Dispositif selon la revendication 22, caractérisé en ce que les moyens logiques multi-états comprennent des moyens formant un registre (260), de capacité au moins égale à un nombre maximum de bits significatifs présents dans les index de l'ensemble prédéterminé, et des moyens pour comparer le contenu du registre à l'index en cours.
24. Dispositif selon la revendication 23, caractérisé
en ce qu'en réponse à une époque, le coupleur comprend des moyens pour charger son index en cours dans le registre (260) qui est un registre à décalage actionné
à chaque dichotomie, la comparaison portant sur le bit situé à l'extrémité utile du registre du côté du déca-lage.
en ce qu'en réponse à une époque, le coupleur comprend des moyens pour charger son index en cours dans le registre (260) qui est un registre à décalage actionné
à chaque dichotomie, la comparaison portant sur le bit situé à l'extrémité utile du registre du côté du déca-lage.
25. Dispositif selon la revendication 17, 19 ou 20, caractérisé en ce que, le coupleur recevant initialement plusieurs index de priorités différentes, lesdits moyens logiques multi-états comprennent des moyens pour exécuter une règle d'exploration/décision qui inclut une explora-tion des sous-ensembles d'index dans un ordre des priori-tés, et ledit dispositif comprend des moyens pour associer les demandes d'émission de message à l'un des index en fonction de leur priorité.
26. Dispositif selon la revendication 15, caractérisé
en ce que ladite séquence prédéterminée est une suite de tous les index pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E=O) du premier comptage est au moins égale au nombre de pas de ladite suite, les premiers moyens de comptage comprenant des moyens pour faire pro-gresser ledit premier comptage vers la valeur de référence à chaque fin de phase canal sans collision.
en ce que ladite séquence prédéterminée est une suite de tous les index pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E=O) du premier comptage est au moins égale au nombre de pas de ladite suite, les premiers moyens de comptage comprenant des moyens pour faire pro-gresser ledit premier comptage vers la valeur de référence à chaque fin de phase canal sans collision.
27. Dispositif selon la revendication 16, caractérisé
en ce que ladite séquence prédéterminée est une suite de tous les index pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E=O) du premier comptage est au moins égale au nombre de pas de ladite suite, les premiers moyens de comptage comprenant des moyens pour faire progresser ledit premier comptage vers la valeur de référence à chaque fin de phase canal sans collision.
en ce que ladite séquence prédéterminée est une suite de tous les index pris un à un, et en ce que la différence entre les valeurs de forçage (E=N) et de référence (E=O) du premier comptage est au moins égale au nombre de pas de ladite suite, les premiers moyens de comptage comprenant des moyens pour faire progresser ledit premier comptage vers la valeur de référence à chaque fin de phase canal sans collision.
28. Dispositif selon la revendication 27, caractérisé en ce que plusieurs index sont affectes au coupleur qui comprend des moyens pour faire passer au moins un autre message avec un autre index dans la même époque.
29. Dispositif selon la revendication 15, caractérisé
en ce que, s'il n'a pas reçu de demande d'émission de message de la part de sa station, le coupleur comprend des moyens pour se comporter comme désirant émettre un message " nil" , et pour ainsi faire passer systématique-ment son automate à l'état de travail ou époque, dès lors qu'il se produit une collision pendant l'état de repos de ce même automate.
en ce que, s'il n'a pas reçu de demande d'émission de message de la part de sa station, le coupleur comprend des moyens pour se comporter comme désirant émettre un message " nil" , et pour ainsi faire passer systématique-ment son automate à l'état de travail ou époque, dès lors qu'il se produit une collision pendant l'état de repos de ce même automate.
30. Dispositif selon la revendication 16, caractérisé
en ce que l'un au moins des premiers et seconds moyens de comptage comprend un registre à décalage.
en ce que l'un au moins des premiers et seconds moyens de comptage comprend un registre à décalage.
31. Dispositif selon la revendication 15 ou 16, carac-térisé en ce qu'il comprend des moyens pour mettre le premier comptage du coupleur, pour l'entrée en service de ce coupleur, à une valeur au moins égale au nombre de pas maximum de la séquence prédéterminée (E = k+l ou E = N).
32. Dispositif selon la revendication 15, 17 ou 26, caractérisé en ce qu'il comprend des moyens de commutation permettant de passer d'un premier mode de fonctionnement du dispositif à un second mode de fonctionnement de celui-ci, ou vice versa.
33. Dispositif selon la revendication 15, 16 ou 17, caractérisé en ce qu'il comprend plusieurs coupleurs connectés à un support de transmission commun, à
diffusion.
diffusion.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR8416957A FR2597686B1 (fr) | 1984-11-07 | 1984-11-07 | Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusion. |
FR8416957 | 1984-11-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1257006A true CA1257006A (fr) | 1989-07-04 |
Family
ID=9309353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000494659A Expired CA1257006A (fr) | 1984-11-07 | 1985-11-06 | Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusion |
Country Status (7)
Country | Link |
---|---|
US (1) | US4847835A (fr) |
CA (1) | CA1257006A (fr) |
DE (1) | DE3539510A1 (fr) |
FR (1) | FR2597686B1 (fr) |
GB (1) | GB2188215B (fr) |
IT (1) | IT1185725B (fr) |
SE (1) | SE462775B (fr) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3930316A1 (de) * | 1989-09-11 | 1991-03-21 | Carmelita Dr Rer Nat Goerg | Kanalzugriffsverfahren fuer ein als bus-system konfiguriertes lokales uebertragungsnetz |
FR2675324B1 (fr) * | 1991-04-15 | 1994-07-29 | Cap Sesa | Procede et dispositif pour la resolution de collisions au cours d'une transmission de messages entre differentes stations, a travers un reseau local a diffusion. |
FR2689713B1 (fr) | 1992-04-02 | 1994-09-23 | Inst Nat Rech Inf Automat | Dispositif de transmission de données pour réseau à accès aléatoire, avec résolution de collision perfectionnée, et procédé correspondant. |
FR2726954B1 (fr) | 1994-11-15 | 1997-01-24 | Dassault Electronique | Unite-relais entre station et canal de communication, en particulier pour reseau ethernet |
JPH1098787A (ja) * | 1996-09-24 | 1998-04-14 | Matsushita Electric Ind Co Ltd | 送受信方式 |
FR2760161B1 (fr) * | 1997-02-27 | 1999-09-24 | Alsthom Cge Alcatel | Reseau informatique a acces non deterministe, mais a temps d'acces deterministe |
US6807189B1 (en) * | 1999-04-09 | 2004-10-19 | Advanced Micro Devices, Inc. | Method for reducing collisions, latency and latency jitter in a network by maintaining a contention-resolution derived queue ordering |
US6765924B1 (en) * | 1999-08-19 | 2004-07-20 | Intel Corporation | Networking method and apparatus using silent slots to facilitate transmission collision detection |
US20080016248A1 (en) * | 2006-07-14 | 2008-01-17 | George Tsirtsis | Method and apparatus for time synchronization of parameters |
US9408746B2 (en) | 2010-03-31 | 2016-08-09 | Ocuject, Llc | Device and method for intraocular drug delivery |
US9421129B2 (en) * | 2012-04-02 | 2016-08-23 | Ocuject, Llc | Intraocular delivery devices and methods therefor |
US9504603B2 (en) | 2012-04-02 | 2016-11-29 | Ocuject, Llc | Intraocular delivery devices and methods therefor |
GB2526810B (en) * | 2014-06-03 | 2017-07-05 | Canon Kk | Method and apparatus for transmitting sensor data in a wireless network |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4063220A (en) * | 1975-03-31 | 1977-12-13 | Xerox Corporation | Multipoint data communication system with collision detection |
US4199661A (en) * | 1978-05-05 | 1980-04-22 | Control Data Corporation | Method and apparatus for eliminating conflicts on a communication channel |
US4531238A (en) * | 1981-12-03 | 1985-07-23 | Xerox Corporation | Statistical contention control for star configured communication networks |
US4466096A (en) * | 1982-03-11 | 1984-08-14 | International Business Machines Corporation | Apparatus and method for providing transmitter hierarchy control for efficient channel management |
JPS5913444A (ja) * | 1982-07-14 | 1984-01-24 | Fuji Xerox Co Ltd | 再送制御方式 |
US4513370A (en) * | 1982-07-19 | 1985-04-23 | Amdahl Corporation | Data transfer control system and method for a plurality of linked stations |
US4513427A (en) * | 1982-08-30 | 1985-04-23 | Xerox Corporation | Data and clock recovery system for data communication controller |
US4593282A (en) * | 1983-04-14 | 1986-06-03 | At&T Information Systems Inc. | Network protocol for integrating synchronous and asynchronous traffic on a common serial data bus |
JPS59194546A (ja) * | 1983-04-19 | 1984-11-05 | Nec Corp | アクセス方式 |
US4598285A (en) * | 1983-05-27 | 1986-07-01 | At&T Bell Laboratories | Scheme for reducing transmission delay following collision of transmissions in communication networks |
US4628311A (en) * | 1983-10-19 | 1986-12-09 | International Business Machines Corporation | Carrier sense multiple access with collision avoidance utilizing rotating time staggered access windows |
US4630264A (en) * | 1984-09-21 | 1986-12-16 | Wah Benjamin W | Efficient contention-resolution protocol for local multiaccess networks |
-
1984
- 1984-11-07 FR FR8416957A patent/FR2597686B1/fr not_active Expired
-
1985
- 1985-11-05 US US06/820,254 patent/US4847835A/en not_active Expired - Lifetime
- 1985-11-05 GB GB08527202A patent/GB2188215B/en not_active Expired
- 1985-11-06 CA CA000494659A patent/CA1257006A/fr not_active Expired
- 1985-11-06 SE SE8505234A patent/SE462775B/sv not_active IP Right Cessation
- 1985-11-06 IT IT22734/85A patent/IT1185725B/it active
- 1985-11-07 DE DE19853539510 patent/DE3539510A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
FR2597686B1 (fr) | 1988-12-23 |
FR2597686A1 (fr) | 1987-10-23 |
SE462775B (sv) | 1990-08-27 |
DE3539510A1 (de) | 1988-01-07 |
GB8527202D0 (en) | 1987-07-08 |
US4847835A (en) | 1989-07-11 |
GB2188215A (en) | 1987-09-23 |
IT1185725B (it) | 1987-11-12 |
GB2188215B (en) | 1988-07-13 |
DE3539510C2 (fr) | 1990-03-08 |
IT8522734A0 (it) | 1985-11-06 |
SE8505234D0 (sv) | 1985-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1257006A (fr) | Procede et dispositif pour la transmission de messages entre differentes stations, a travers un reseau local a diffusion | |
EP1261151B1 (fr) | Procédé d'attribution de ressources dans un système de télécommunications du type MF-TDMA | |
EP0094717B1 (fr) | Procédé et dispositif d'allocation déterministe explicite du jeton dans un réseau local distribué de transmission avec priorités | |
EP0084389B1 (fr) | Dispositif de transmission de données et réseau de communications avec récupération préventive des erreurs | |
FR2682203A1 (fr) | Systeme de transmission de donnees. | |
FR2723652A1 (fr) | Procede pour ordonnancer des taches successives | |
FR2694828A1 (fr) | Bus d'ordinateur à transfert de paquets. | |
EP0112953B1 (fr) | Procédé d'affectation dynamique de vitesses dans un système de transmission multiplex | |
FR2519441A1 (fr) | Systeme de selection de priorite pour l'acces a un bus utilise en mode partage | |
FR2677473A1 (fr) | Procede et bus d'arbitrage pour transmission de donnees serie. | |
FR2482746A1 (fr) | ||
EP0505281B1 (fr) | Synchronisation de stations terminales dans un réseau arborescent à l'alternat et multidébit | |
FR2543767A1 (fr) | Dispositif d'echange de messages codes entre stations | |
EP0080232B1 (fr) | Procédé utilisé pour la gestion du trafic d'informations dans une cellule formée de plusieurs chaines radio et dispositif mettant en oeuvre ce procédé | |
EP0849914B1 (fr) | Détection de collision, en transmission de données par réseau radio | |
FR2679723A1 (fr) | Procede de transmission de donnees numeriques emises sous forme de trames de signaux differentiels. | |
EP0635184B1 (fr) | Dispositif de transmission de donnees pour reseau a acces aleatoire, avec resolution de collision perfectionnee, et procede correspondant | |
EP1772808B1 (fr) | Dispositif et procédé de lecture d'informations dans un ensemble de composants électroniques reliés à un bus de communication, appliqué à la lecture d'une matrice de pixels | |
EP0190060B1 (fr) | Procédé de diffusion sûre de messages dans un réseau en anneau et dispositif permettant la mise en oeuvre du procédé | |
EP3776946A1 (fr) | Dispositifs, systèmes et procédés de communication sans fil pour le décodage de paquets de données pour l'établissement de services critiques en latence | |
EP0190951A1 (fr) | Procédé d'échange de messages dans un réseau en anneau et dispositif permettant la mise en oeuvre du procédé | |
FR2710804A1 (fr) | Dispositif numérique de connexion d'une pluralité de stations de travail sur un réseau local en anneau. | |
EP0165185A1 (fr) | Procédé et système de transmission de messages entre plusieurs stations d'un réseau local industriel décentralisé à protocole d'accès déterministe par circulation de jeton | |
EP1052573A1 (fr) | Procédé et dispositif pour commander l'ordre de départ d'informations ou d'objets stockés temporairement | |
FR2675324A1 (fr) | Procede et dispositif pour la resolution de collisions au cours d'une transmission de messages entre differentes stations, a travers un reseau local a diffusion. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKEX | Expiry |