FR2526975A1 - Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede - Google Patents

Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede Download PDF

Info

Publication number
FR2526975A1
FR2526975A1 FR8208404A FR8208404A FR2526975A1 FR 2526975 A1 FR2526975 A1 FR 2526975A1 FR 8208404 A FR8208404 A FR 8208404A FR 8208404 A FR8208404 A FR 8208404A FR 2526975 A1 FR2526975 A1 FR 2526975A1
Authority
FR
France
Prior art keywords
unit
information
train
units
computer
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.)
Granted
Application number
FR8208404A
Other languages
English (en)
Other versions
FR2526975B1 (fr
Inventor
Henri Dulon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull SA
Original Assignee
Bull SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bull SA filed Critical Bull SA
Priority to FR8208404A priority Critical patent/FR2526975B1/fr
Publication of FR2526975A1 publication Critical patent/FR2526975A1/fr
Application granted granted Critical
Publication of FR2526975B1 publication Critical patent/FR2526975B1/fr
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/417Bus networks with decentralised control with deterministic access, e.g. token passing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)

Abstract

L'INVENTION CONCERNE UN PROCEDE POUR GERER L'ECHANGE D'INFORMATIONS ENTRE PLUSIEURS UNITES INTERCONNECTEES ENTRE ELLES PAR UN SUPPORT DE TRANSMISSION, ET SYSTEME POUR LA MISE EN OEUVRE DU PROCEDE. LE PROCEDE CONSISTE A ORDONNER LES DIFFERENTES UNITES M A M SUIVANT UNE BOUCLE VIRTUELLE ET DANS UN SENS DETERMINE; A NE FAIRE EMETTRE UN TRAIN D'INFORMATIONS IN PAR UNE UNITE M N M QU'APRES TOUTE UNITE DESIRANT EMETTRE, PRECEDANT L'UNITE M ET L'UNITE M QUI VIENT D'EMETTRE; A FAIRE LANCER PAR TOUTES LES UNITES, AUTRES QUE L'UNITE M QUI A LE DROIT D'EMETTRE, DES TEMPS D'ATTENTE TA DIFFERENTS POUR CHAQUE UNITE. UNE UNITE NE PEUT EMETTRE QU'APRES L'ECOULEMENT DE SON TEMPS D'ATTENTE. L'INVENTION S'APPLIQUE NOTAMMENT AU DIALOGUE INTERCALCULATEURS.

Description

L'invention concerne généralement les problèmes posés par les échanges d'informations entre plusieurs unités interconnectées, et a plus particulièrement pour objet un procédé pour gérer l'échange d'informations entre plusieurs unités interconnectées entre elles en local ou à distance par un support de transmission, et un système pour la mise en oeuvre d'un tel procédé, avec notamment pour objectif de permettre la transmission d'informations & la vitesse maximum autorisée par le support de transmission utilisé.
Compte tenu de l'évolution des technologies, il est actuellement possible de concevoir des systèmes informatiques très puissants composés par exemple de plusieurs calculateurs interconnectés, gérant un grand nombre de terminaux et accédant à des bases de données communes importantes.
A l'heure actuelle, peu de systèmes importants de cette nature sont opérationnels, mais il est probable que dans les prochaines années, une demande pressante se fasse sentir vers ce type d'architecture moins coûteuse à puissance égale qu'une machine unique.
Pour mettre en oeuvre une telle architecture, il faut résoudre deux sortes de problèmes
- les problèmes d'informatique classiques : cohérence de
toutes les informations réparties sur plusieurs
calculateurs et gestion d'un poste d'exploitation unique
pour l'ensemble du système ; et
- les problèmes de dialogue intercalculateurs et du
transport de l'information : gérer les liaisons
intercalculateurs, notamment à de très grandes vitesses
et gérer les conflits entre ces différents calculateurs.
C'est ce deuxième type de problèmes que vise à résoudre
l'invention à partir de l'enseignement des techniques
actuellement connues qui vont être succintement décrites
ci-après.
Il existe actuellement deux techniques permettant de faire communiquer plusieurs calculateurs par l'intermédiaire d'un support de transmission tel qu'un câble coaxial par exemple.
Une première technique dénommée "technique de contention ou accès aléatoire" consiste à interconnecter les différents calculateurs sur un support unique qui est leur seul moyen d'échange. Toutefois cette technique présente des inconvénients majeurs, notamment
- il n'y a pas de priorité définie au niveau des
calculateurs, si bien que les trains ou paquets
d'informations formant des messages et émis par les
calculateurs sont émis d'une façon aléatoire
- un inconvénient découlant du précédent qui réside dans
une forte probabilité de collision entre les messages
émis par différents calculateurs, entraînant de ce fait
des pertes de temps liées à ces collisions ;
- et il n'est pas possible de garantir un temps de
réponse maximum du fait de l'émission aléatoire des
messages.
Une deuxième technique dénommée "technique du droit & BR< émettre ou technique du jeton" consiste à connecter les calculateurs sur un support unique en anneau formant une boucle fermée. Le jeton est un paquet spécial d'informations formant une entête circulant sur la boucle reliant les différents calculateurs. Ce jeton est suivi des paquets d'informations ou messages émis à tour de rôle par les différents calculateurs. Le jeton est donc un élément matériel qui est successivement intercepté par chaque calculateur qui décide alors de joindre ou non son propre message directement à la suite de ce jeton ou à la suite du dernier message transmis par un calculateur le précédant dans la boucle.Cette technique, bien 'que garantissant un temps de réponse maximum, présente également des inconvénients majeurs, notamment
- risque de perte du jeton, ce qui peût être compensé par
une unité auxiliaire ou de contrôle qui assure Si
nécessaire la régénération du jeton
- un calculateur hors service peut ouvrir la boucle et
rendre le système inopérant
- et le jeton circule sur le même support que les données
proprement dites, si bien que l'on ne peut pas travailler
à la vitesse maximum du support.
L'invention propose une solution qui se rapproche de cette deuxième technique, mais elle s'en différencie essentiellement par le fait que le jeton envisagé n'est plus un jeton matériel, mais un jeton virtuel, ce qui permet d'éliminer tous les inconvénients précités de la technique antérieure. En outre, les différents calculateurs ne sont pas interconnectés entre eux suivant un réseau en anneau ou du type série, mais ils sont montés en parallèle sur le support de transmission qui les relie, évitant ainsi tout problème posé par un mauvais fonctionnement de l'un des calculateurs.
A cet effet, l'invention propose un procédé pour gérer l'échange d'informations entre plusieurs unités interconnectées entre elles par un support de transmission unique, chaque unité étant susceptible d'émettre sur le support et de recevoir un train ou paquet d'informations contenant au moins l'adresse de l'unité émettrice du train d'informations, l'adresse d'au moins une unité réceptrice du train d'informations et un repère indiquant la fin du train d'informations ; caractérisé en ce qu'il consiste
- à ordonner de 1 à m, suivant une boucle virtuelle et
dans un sens déterminé, les différentes unités par
exemple au nombre de m et ce, indépendamment de la
répartition géographique de ces unités sur le support de
transmission
- à ne faire émettre un train d'informations par une
unité n (n t m) qu'après toute unité désirant émettre,
précédant l'unité n dans ledit sens déterminé de la
boucle virtuelle et située entre l'unité n et l'unité i
qui a émis le dernier train d'informations circulant sur
le support de transmission
- à faire lancer par toutes les unités, autres que
l'unité n qui a le droit d'émettre, des temps d'attente
différents pour chaque unité
- à remettre à zéro et à bloquer l'émission des temps
d'attente précités, si l'unité n qui a#le droit d'émettre
émet avant l'écoulement du premier temps d'attente
- et à faire émettre, dans ce cas, la première unité
désireuse d'effectuer une émission et succédant à l'unité
n dans le sens déterminé précité de la boucle virtuelle
et dont le temps d'attente s'est écoulé.
Avantageusement, les différents temps d'attente précités ont une durée qui augmente d'une unité à l'autre dans le sens déterminé précité de la boucle et ce, à partir de l'unité qui suit l'unité qui a le droit d'émettre.
Chaque unité détermine elle-même son droit à émettre par la simple reconnaissance de la fin du train d'informations circulant sur le support de transmission et de l'adresse de l'unité émettrice de ce train d'informations. Chaque unité peut se situer immédiatement par rapport à toute unité qui vient d'émettre un train d'informations sur le support de transmission soit en parcourant la boucle virtuelle dans un sens prédéterminé, si les unités ont des adresses consécutives, soit en calculant un index dans une table d'adresses constituant la boucle virtuelle. Ainsi, chaque unité sait, a priori, qu'elle n'a pas le droit d'émettre avant toute unité située entre elle et l'unité qui vient d'émettre en parcourant la boucle virtuelle précitée dans un sens prédéterminé.
Cette technique conforme à l'invention ou technique du jeton virtuel présente les avantages suivants
- les différentes unités sont interconnectées par un
support de transmission unique
- il n'y a pas d'unité de contrôle
- tem#ps de réponse maximum garanti
- et surtout utilisation maximum de la vitesse du
support.
Dans l'esprit de l'invention, il faut entendre par unité toute unité informatique susceptible, entre autres, d'émettre et de recevoir des informations. En conséquence, une unité peut être un calculateur au sens large ou tout simplement une unité d'un calculateur qui dialogue avec au moins une autre unité de ce calculateur.
D'autres avantages caractéristiques et détails ressortiront de la description explicative qui va suivre faite en référence aux dessins annexes donnés uniquement à titre d'exemple et dans lesquels
- la figure 1 représente schématiquement un système
informatique auquel s'applique l'invention et qui
regroupe plusieurs unités interconnectées entre elles
par un support de transmission
- la figure 2 représente un chronogramme permettant
d'expliciter le procédé conforme à l'invention
- la figure 3 représente schématiquement une répartition
ordonnée des unités sur le support de transmission ; et
- la figure 4 représente un schéma de principe de
réalisation d'un dispositif assurant la mise en oeuvre du
procédé et incorporé dans chaque unité du système
informatique représenté à la figure 1.
A titre d'exemple, le système informatique représenté à la figure 1 comprend plusieurs unités telles que des machines de traitement de l'information dénommées ci-après calculateurs, par exemple au nombre de m, et dont seuls les calculateurs (M1) et (Mm) ont été représentés.
Ces différents calculateurs M1 à Mm sont interconnectés entre eux par un support de transmission (L) qui peut être à titre d'exemple, soit un câble coaxial, soit une fibre optique, soit une ligne téléphonique, soit un bus ... Plus généralement, la solution exposée ci-après peut être utilisée pour tout support de transmission série ou parallèle nécessitant l'utilisation d'un droit à émettre ou d'un arbitrage entre plusieurs unités désirant dialoguer entre elles par l'intermédiaire de ce support.
Dans cet exemple le support de transmission est supposé être un câble coaxial.
Chaque calculateur (M1... Mm) peut avoir une configuration particulière fonction des applications envisagées, mais dans l'exemple représenté, les calculateurs (M1) et (Mm).
pour des raisons de simplification, ont été considérés comme ayant une structure identique comprenant par exemple
- une mémoire (M),
- une unité centrale (UC),
- et un contrôleur de périphériques (CP) relié par
exemple à au moins un disque (D) extérieur à la machine.
Ces éléments sont reliés entre eux par un bus principal (B). Ce bus (B) est connecté à un interface (I), lui-même relié en sortie, à un MODEM raccordé au câble coaxial (L) par une prise (P).
Seul l'interface (I) va être décrit par la suite, les autres éléments ayant une structure et un fonctionnement bien connus dans la technique.
L'interface (I) est par exemple constitué par une carte å circuits imprimés comprenant essentiellement trois modules
- un module (GPI) ou précoupleur de raccordement avec le
bus (B)
- un module (CJV) propre à l'invention, dénommé
communicateur à jeton virtuel relié au MODEM
- et un module (GI) assurant l'interface entre les deux
modules précités (GPI) et (CJV).
Le module (CJV) qui permet la mise en oeuvre de l'invention est représenté en figure 4. Ce module ou communicateur a essentiellement pour fonction
- d'émettre des messages, sous la forme de trains ou
paquets d'informations, à la demande du calculateur
auquel il est connecté
- de recevoir des messages pour le compte du calculateur
associé
- de gérer, pour le compte du calculateur associé,
l'échange et le dialogue des informations circulant sur
la câble coaxial (L)
- de contrôler la qualité des messages reçus
- de contrôler le flot d'informations circulant sur le
câble coaxial (L)
- et de détecter à partir du flot d'informations
circulant sur le câble coaxial (L), le droit à émettre du
calculateur associé, sans perturber le fonctionnement des
autres calculateurs.
En se reportant à la figure 4, il va être décrit la structure de principe d'un communicateur (CJV) qui assure l'interface entre le calculateur (M) associé et le câble coaxial (L) via le MODEM.
Ce communicateur (CJV) comprend au moins
- un buffer tampon de réception (10) relié au MODEM et
ayant pour fonction de stocker provisoirement tout
message (IN) provenant d'un autre calculateur et destiné
au calculateur (M) ; ce buffer de réception (10) est par
exemple relié par un microbus (b) au module interface
(GI) qui transmettra ce message (IN) au bus interne (B)
du calculateur (M) via le module (GPI) ::
- une mémoire RAM statique (11) reliée au buffer de
réception (10) et dans laquelle va être stockée
l'adresse du calculateur qui a émis le message (IN)
reçu, adresse qui est prélevée dans le buffer de
réception (10)
- une mémoire RAM statique (12) qui contient l'adresse
du calculateur (M)
- un dispositif (13) relié aux deux mémoires (11),
(12) précitées et dont la fonction est de déterminer
le droit à émettre pour le calculateur (M) ; ce
dispositif (13) comprend par exemple un circuit de
comparaison (14) comparant les deux adresses
respectivement présentes dans les deux mémoires (11),
(12), et un compteur (15) relié au circuit de
comparaison (14) et dont la fonction est de définir un
temps d'attente (TA) avant la possibilité pour ce
calculateur (M) d'émettre un message (IN)
- un circuit de commande (16) relié, d'une part au
MODEM pour détecter la fin d'un message (IN) reçu, et
d'autre part, au compteur (15) pour lui envoyer un
signal de commande (SC) qui déclenche le temps
d'attente (TA) précité dès que le circuit de commande
(16) détecte la fin du message (IN) reçu
- et une logique d'émission (17) reliée au compteur
(15) pour valider, à la fin du temps d'attente (TA),
l'émission d'un message (IN) par le calculateur (M)
sur le câble coaxial (L) via le MODEM, ce message
(IN) étant préalablement stocké dans un buffer
tampon d'émission (18) lui-même relié au microbus
(b) précité.
Avant d'expliciter le principe de dialogue entre les différents calculateurs (Ml... Mm), il faut préciser les conditions préalables suivantes
- les différents calculateurs 1 à m ont des adresses qui
sont ordonnées de façon consécutive de 1 à m suivant une
boucle virtuelle parcourue dans un sens déterminé (S) et
telle que représentée à la figure 3 ; ce classement étant
indépendant de la répartition géographique des
calculateurs sur le câble coaxial (L) ;
- chaque machine (M1... Mm) par l'intermédiaire du câble
coaxial (L), est susceptible d'émettre un train
d'informations (IN) à destination des autres
calculateurs, et de recevoir tous les trains
d'informations (IN) émis par les autres calculateurs
- chaque train d'informations (IN) contient, en plus des
données proprement dites correspondant à un message
déterminé, trois informations de base : l'adresse du
calculateur émetteur d'un train d'informations circulant
sur le câble coaxial (L), ce qui permet à chaque
calculateur de connaître la machine en cours d'émission ;
l'adresse d'au moins un calculateur auquel est destiné le
train d'informations ; et un repère ou drapeau indiquant
la fin d'émission d'un train d'informations
- à un instant donné, un seul train d'informations peut
circuler sur le câble coaxial (L) ; autrement dit, à un
instant donné, un seul calculateur peut émettre un train
d'informations (IN), c'est-à-dire que les calculateurs
émettent à tour de rôle.
Ces conditions initiales étant satisfaites, supposons en référence à la figure 2 que le calculateur (M1) soit celui qui est dans la phase d'émission d'un train d'informations (IN1) sur le câble coaxial (L) ; ce qui correspond à la phase (T1) de la figure 2 et qui se termine à l'instant (tu)~
Supposons également le cas de huit calculateurs interconnectés, référencés de M1 à M8 et ordonnés dans le sens déterminé (S) de la boucle virtuelle telle que représentée sur la figure 3.
A l'instant (tl), c'est-à-dire à la fin de l'émission du message (IN1) par le calculateur (Ml), les autres calculateurs vont déterminer d'eux-mêmes leur droit à émettre ou non et ce, à partir des informations contenues dans le message précédemment émis (reconnaissance de l'adresse du calculateur émetteur et reconnaissance du repère indiquant la fin du du message précédemment émis).
En respectant l'ordre de classement des calculateurs tel que défini à la figure 3, le premier calculateur ayant le droit à émettre est le calculateur (M2) qui suit le calculateur (M1).
Si le calculateur (M2) a effectivement un message (IN2) à transmettre, il peut le faire à partir de l'instant (tel).
Toutefois, à l'instant (tl) il est possible qu'au moins un autre calculateur (de M3 à Me) soit désireux d'émettre également un message, mais & cet instant (tl) cet autre calculateur ne sait pas si un calculateur qui le précède, à partir du calculateur (M1) dans le sens (S) de la boucle représentée à la figure 3, désire effectivement émettre un message.
Pour régler ce problème et éviter une perte de temps entre l'émission de deux messages, il est institué des temps d'attente (TA) au niveau de chaque calculateur, ces temps d'attente étant définis par les communicateurs (CJV).
Dès qu'un calculateur est en droit d'émettre, tous les communicateurs (CJV) des autres calculateurs vont lancer des temps d'attente (TA) différents. A titre d'exemple, si le calculateur (M2) est en droit d'émettre en suivant le sens S de la boucle virtuelle représentée à la figure 3 le communicateur (CJV) du calculateur (M3) va lancer un temps d'attente (TA3) de 20 microsecondes par exemple, le communicateur (CJV) du calculateur (M4) va lancer un temps d'attente (TA4) double du précédent, c'est-à-dire 40 microsecondes, le communicateur (CJV) du calculateur (M5) va lancer un temps d'attente (TAs) triple, c'est-à-dire 60 microsecondes, ..., le communicateur (CJV) du calculateur (Mg) va lancer un temps d'attente (TAg) de 120 microsecondes et le communicateur (CJV) du calculateur (M1) va lancer un temps d'attente (TA1) de 140 microsecondes.
Il est à noter que le temps d'attente minimum ou de référence (20 microsecondes dans cet exemple) est fonction de la nature du support utilisé et de sa vitesse de transmission.
Dans ces conditions, si le calculateur (M2) émet avant la fin du temps d'attente (TA3) défini par le communicateur (CJV) du calculateur (M3), tous les temps d'attente précités sont remis et bloqués à zéro. Par contre, si le calculateur (M2) n'a rien à émettre, le calculateur (M3) pourra émettre au bout de son temps d'attente (TA3). Si le calculateur (M3) n'a rien à émettre, le calculateur (M4) pourra émettre au bout de son temps d'attente (TA4), etc... A chaque fois qu'un calculateur commence à émettre un message sur le câble coaxial (L), tous les temps d'attente (TA) précités sont remis et bloqués à zéro jusqu'à la fin de l'émission du message en cours.
Ce principe va maintenant être appliqué à l'exemple illustré à la figure 2 dans le cas de huit calculateurs interconnectés.
A l'instant (tl) et en respectant le sens (S) de la boucle virtuelle de la figure 3, on suppose que le calculateur (M1) a fini d'émettre un message (IN1) sur le câble coaxial (L).
Dans ces conditions, à l'instant (tl), tous les communicateurs (CJV) des calculateurs (M2) à (Mg) vont procéder aux opérations suivantes afin de déterminer quel est celui de ces calculateurs qui a le droit d'émettre.
Prenons le cas du calculateur (M2)
- le circuit de comparaison (14) du communicateur (CJV)
du calculateur (M2) fait la différence entre l'adresse du
calculateur (stockée dans la mémoire (11)) qui vient
d'émettre le dernier message, à savoir le calculateur
(M1), et l'adresse du calculateur (M2)
- comme cette différence est égale à 1, puisque le
calculateur (M2) suit le calculateur (M1) dans le sens
(S) de la boucle virtuelle définie à la figure 3, le
compteur (15) du communicateur (CJV) ne lancera pas de
temps d'attente (TA2) et validera, sous la commande du
signal (SC), la logique d'émission (17) pour autoriser la
transmission d'un message (IN2) préalablement stocké dans
le buffer d'émission (18). Autrement dit, à l'instant
(tl) le calculateur (M2) possède le droit à émettre.
Par contre, les communicateurs (CJV) des calculateurs (M3, M41 Ms, M6, M7, M8 et M1) vont lancer respectivement, sous la commande du signal (SC), des temps d'attente (TA3, TA4,
TAs, TA6, TA7, TA8, TA1) non nuls. Ces temps d'attente sont progressivement croissants et définis de la façon suivante. Le communicateur (CJV) du calculateur (M3) va calculer une différence d'adresse égale à 2 au niveau de son circuit de comparaison (14), cette différence de 2 correspondant à un temps d'attente (TA3) minimum ou de référence égal par exemple à 20 microsecondes.Le communicateur (CJV) du calculateur (M4) va calculer une différence d'adresse égale à 3 au niveau de son circuit de comparaison (14), et définir ainsi un temps d'attente
(TA4) double du précédent, c'est-à-dire 40 microsecondes, et ainsi de suite pour la définition des temps d'attente (TA) des autres calculateurs. Dès l'instant où le calculateur (M2) désire effectivement émettre un message (IN2), il doit commencer son émission avant l'écoulement du temps d'attente (TA3) défini par le communicateur (CJV) du calculateur (M3) qui le suit. Supposons cette condition réalisée à l'instant (t2), ce qui a pour conséquence de remettre à zéro et de bloquer tous les temps d'attente préalablement lancés (TA3, ... TA8 et TA1), et le calculateur (M2) émet son message (1N2) sur le câble coaxial (L).Cette phase correspond à la phase (T2) de la figure 2.
Supposons que la fin de l'émission du message (IN2) corresponde au temps (t3). A cet instant tous les autres calculteurs (M3) à (M8) et (M1) reconnaissent la fin du message (IN), et chacun de ces calculateurs détermine son droit à émettre. Selon la figure 3, ce droit à émettre appartient au calculateur (M3) qui suit le calculateur (M2).Dans. ces conditions, les communicateurs (CJV) des calculateurs (M4) à (M8) et (M1) et (M2) lancent des temps d'attente comme définis précédemment, c'est-à-dire que le communicateur (CJV) du calculateur (M4) lance un temps d'attente (TA4) de 20 microsecondes, le communicateur (CJV) du calculateur (Ms) lance un temps d'attente (TAs) de 40 microsecondes, ..., et le communicateur (CJV) du calculateur (M2) lance un temps d'attente (TA2) de 140 microsecondes.Si le calculateur (M3) désire effectivement lancer un message (IN3) sur le câble coaxial (L), il doit le faire avant la fin de l'écoulement du temps d'attente le plus court, c'est-à-dire avant 40 microsecondes correspondant au temps d'attente {TA4) du calculateur (M4) qui le suit dans le sens de la boucle virtuelle de la figure 3. Si tel est le cas, dès l'instant du début de l'émission du message (IN3), tous les temps d'attente
(TA4 ... TAg, TA1 et TA2) sont remis à zéro et bloqués pendant le temps d'émission du message (IN3). Cette phase correspond à la phase (T3) de la figure 2.
Supposons que la fin du message (IN3) intervienne à l'instant (tu). A cet instant, c'est le calculateur (M4) qui va posséder le droit à émettre. Dès cet instant (t5), les communicateurs (CJV) des calculateurs (M5) à (M8), (M1) à (M3) vont lancer respectivement des temps d'attente (TAs) à (TA8) et (TA1) à (TA3) de durée 20 microsecondes à 140 microsecondes, respectivement. Supposons que le calculateur (M4) n'ait pas de message (1N4) à émettre.
Dans ces conditions, le droit à émettre sera pris par le calculateur qui suit le calculateur (M4) dans la boucle virtuelle de la figure 3 et dont le temps d'attente (TA > sera écoulé. Dans notre exemple, le premier temps d'attente (TA) écoulé sera celui défini par le communicateur (CJV) du calculateur (M5) dont le temps d'attente (TAs) (20 microsecondes) est le plus court, c'est-à-dire celui qui correspond au calculateur qui suit le calculateur (M4) dans le sens (S) de la boucle virtuelle représentée à la figure 3.Si le calculateur (Ms) a un message (INs) à émettre, il doit le faire avant la fin de l'écoulement du temps d'attente (TA6) t40 microsecondes), c'est-à-dire avant l'écoulement du prochain temps d'attente le plus court, c'est- & dire celui défini par le communicateur (CJV) du calculateur (mu).
Supposons cette condition réalisée, ce qui a pour conséquence de bloquer et de remettre à zéro dès l'instant (t6) tous les autres temps d'attente (TA6) a (TAs), (TA1) à (TA4) lancés par les autres calculateurs. Cette phase correspond à la phase (T4) de la figure 2.
Supposons que la fin de la transmission du message (IN) sur le câble coaxial (L) intervienne à l'instant (tu).
Dans ces conditions, c'est la calculateur (M6) qui possède le droit à émettre. A cet instant (t8), des temps d'attente (TA7, TAg, TA1 à TAs) sont émis respectivement par les communicateurs (CJV) des calculateurs (M7, Mg,
M1 à Ms). Supposons que le calculateur (M6) n'ait pas de message (1N6) à émettre. Dans ces conditions, le calculateur (M7) possède le droit d'émettre à l'instant (tg) correspondant à l'achèvement du temps d'attente (TA7) le plus court, c'est-à-dire celui défini par le communicateur (CJV) du calculateur (M7). Supposons également que ce calculateur (M7) n'ait pas de message (IN7) à émettre, mais que le calculateur (M8) ait un message à émettre. Dans ces conditions, le calculateur (Mg) pourra émettre son message à la fin de l'écoulement de son temps d'attente (TA8) qui intervient à l'instant (tao). A cet instant (tao) les temps d'attentes (TA1) à (TA7) des autres calculateurs sont remis et bloqués à zéro. Cette phase correspond à la phase (Ts) de la figure 2.
Ce processus se répète en suivant toujours le sens (S) de la boucle virtuelle définie à la figure 3.

Claims (10)

REVENDICATIONS
1. Procédé pour gérer l'échange d'informations entre plusieurs unités interconnectées entre elles par un support unique de transmission (L), chaque unité étant susceptible d'émettre sur le support (L) et de recevoir un train ou paquet d'informations (IN) contenant au moins l'adresse de l'unité émettrice du train d'informations (IN), l'adresse d'au moins une unité réceptrice du train d'informations (IN) et un repère indiquant la fin du train d'informations (IN) ; caractérisé en ce qu'il consiste
- à ordonner de 1 à m, suivant une boucle virtuelle et
dans un sens déterminé (S), les différentes unités par
exemple au nombre de m et ce, indépendamment de la
répartition géographique de ces unités sur le support de
transmission
- à ne faire émettre un train d'informations par une
unité Mn (n R m) qu'après toute unité désirant émettre,
précédant l'unité Mn dans ledit sens déterminé de la
boucle virtuelle et située entre l'unité Mn et l'unité
Mi qui a émis le dernier train d'informations (IN)
circulant sur le support de transmission
- à faire lancer par toutes les unités, autres que
l'unité Mn qui a le droit d'émettre, des temps d'attente
(TA) différents pour chaque unité
- à remettre à zéro et à bloquer -l'émission des temps
d'attente précités, si l'unité Mn qui a le droit
d'émettre émet avant l'écoulement du premier temps
d'attente (TA)
- et à faire émettre, dans ce cas, la première unité
désireuse d'effectuer une émission et succédant à l'unité
Mn dans le sens déterminé (S) précité de la boucle
virtuelle et dont le temps d'attente (TA) s'est écoulé.
2. Procédé selon la revendication 1, caractérisé en ce qu'il consiste à faire déterminer par chaque unité ellemême son droit à émettre sur le support de transmission (L) précité, à partir de l'adresse de l'unité qui vient d'émettre un train d'informations, de sa propre adresse et du repère indiquant la fin du train d'informations émis.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce qu'il consiste à donner aux temps d'attente (TA) précités des durées qui augmentent d'une unité à l'autre dans le sens (S) de la boucle virtuelle précitée, le premier temps d'attente (TA) étant lancé par l'unité qui suit l'unité qui possède le droit d'émettre.
4. Système pour la mise en oeuvre du procédé tel que défini selon l'une des revendications 1 à 3, du type comprenant au moins deux unités interconnectées entre elles par un support unique de transmission (L), chaque unité étant susceptible d'émettre sur le support (L) un train ou paquet d'informations (IN) contenant au moins l'adresse de l'unité émettrice, l'adresse de l'unité réceptrice et un repère indiquant la fin du train d'informations (IN), caractérisé en ce que chaque unité comprend au moins un module (CJV), dénommé communicateur, assurant la liaison entre l'unité et le support de transmission (L), un communicateur (CJV) d'une unité comprenant au moins
- un buffer tampon de réception( 10) pour stocker tout
train d'informations (IN) provenant d'une autre unité
- une mémoire (11) reliée au buffer de réception (10)
pour stocker l'adresse de l'unité qui a émis ledit train
d'informations (IN)
- une mémoire (12) qui contient l'adresse de l'unité
associée audit communicateur (CJV)
- un dispositif (13) relié aux mémoires (11, 12) et dont
la fonction est de déterminer le droit à émettre pour
l'unité associée audit communicateur (CJV)
- un circuit de commande (16) pour détecter la fin du
train d'informations (IN) reçu et envoyer un signal de
commande (SC) audit dispositif (13) ; et
- une logique d'émission (17) reliée audit dispositif
(13) pour valider l'émission sur le support (L) d'un
train d'informations (IN) par l'unité associée audit
communicateur (CJV), ce train d'informations (IN) étant
préalablement stocké dans un buffer tampon d'émission
(18) de l'unité.
5. Système selon la revendication 4, caractérisé en ce que le dispositif (13) précité comprend
- un circuit de comparaison (14) pour comparer les deux
adresses des deux mémoires (11, 12) précitées, et
- un compteur (15) relié au circuit de comparaison (14)
et dont la fonction est de définir un temps d'attente
(TA) prédéterminé avant la possibilité pour l'unité
associée audit communicateur (CJV) d'émettre un train
d'informations (IN), ce temps d'attente étant fonction de
la position de l'unité désirant émettre par rapport à
l'unité qui vient d'émettre dans le sens (S) de la boucle
virtuelle précitée.
6. Système selon la revendication 5, caractérisé en ce que à la fin du temps d'attente (TA) précité, le compteur (15) valide la logique d'émission (17) précitée.
7. Système selon l'une des revendications 4 & 6, caractérisé en ce que les adresses des différentes unités sont des adresses consécutives dans le sens (S) de la boucle virtuelle précitée.
8. Système selon l'une des revendications 4 a 7, caractérisé en ce que tous les compteurs (15) des communicateurs (CJV) des unités autres que celui de l'unité qui possède le droit à émettre, définissent des temps d'attente (TA) prédéterminés différents les uns des autres.
9. Système selon la revendication 8, caractérisé en ce que les temps d'attente (TA) précités augmentent d'une unité a l'autre dans le sens (S) de la boucle virtuelle précitée.
10. Système selon l'une des revendications 4 à 9, caractérisé en ce que le support de transmission (L) est par exemple un câble coaxial ou une fibre optique.
FR8208404A 1982-05-14 1982-05-14 Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede Expired FR2526975B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8208404A FR2526975B1 (fr) 1982-05-14 1982-05-14 Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8208404A FR2526975B1 (fr) 1982-05-14 1982-05-14 Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede

Publications (2)

Publication Number Publication Date
FR2526975A1 true FR2526975A1 (fr) 1983-11-18
FR2526975B1 FR2526975B1 (fr) 1987-06-19

Family

ID=9274026

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8208404A Expired FR2526975B1 (fr) 1982-05-14 1982-05-14 Procede pour gerer l'echange d'informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede

Country Status (1)

Country Link
FR (1) FR2526975B1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2558667A1 (fr) * 1984-01-19 1985-07-26 Minisystemes Procede de transmission de donnees numeriques, reseau et module mettant en oeuvre le procede
EP0194673A2 (fr) * 1985-03-12 1986-09-17 Honda Giken Kogyo Kabushiki Kaisha Système de transmission multiplex
EP0216372A2 (fr) * 1985-09-25 1987-04-01 Bayerische Motoren Werke Aktiengesellschaft, Patentabteilung AJ-3 Système de bus de données pour véhicules
FR2618966A1 (fr) * 1987-07-31 1989-02-03 Applusix A X Procede et reseau de transmission d'informations en serie entre differents systemes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1314180A (en) * 1969-11-21 1973-04-18 Plessey Telecommunications Res Electrical data transmission systems
DE2442736B1 (de) * 1974-09-06 1976-02-12 Vdo Adolf Schindling Ag, 6000 Frankfurt Digitales Datenübertragungssystem
US3983540A (en) * 1975-09-08 1976-09-28 Honeywell Inc. Rapid bus priority resolution
US4209840A (en) * 1978-06-28 1980-06-24 Honeywell Inc. Data processing protocol system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1314180A (en) * 1969-11-21 1973-04-18 Plessey Telecommunications Res Electrical data transmission systems
DE2442736B1 (de) * 1974-09-06 1976-02-12 Vdo Adolf Schindling Ag, 6000 Frankfurt Digitales Datenübertragungssystem
US3983540A (en) * 1975-09-08 1976-09-28 Honeywell Inc. Rapid bus priority resolution
US4209840A (en) * 1978-06-28 1980-06-24 Honeywell Inc. Data processing protocol system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
INFORMATIQUE, no.146, décembre 1980 - janvier 1981, Paris (FR) *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2558667A1 (fr) * 1984-01-19 1985-07-26 Minisystemes Procede de transmission de donnees numeriques, reseau et module mettant en oeuvre le procede
WO1985003395A2 (fr) * 1984-01-19 1985-08-01 Minisystemes Procede de transmission de donnees numeriques, reseau et module mettant en oeuvre le procede
WO1985003395A3 (fr) * 1984-01-19 1985-09-12 Minisystemes Procede de transmission de donnees numeriques, reseau et module mettant en oeuvre le procede
EP0194673A2 (fr) * 1985-03-12 1986-09-17 Honda Giken Kogyo Kabushiki Kaisha Système de transmission multiplex
EP0194673A3 (en) * 1985-03-12 1988-07-06 Honda Giken Kogyo Kabushiki Kaisha Multiplex transmission system
EP0216372A2 (fr) * 1985-09-25 1987-04-01 Bayerische Motoren Werke Aktiengesellschaft, Patentabteilung AJ-3 Système de bus de données pour véhicules
EP0216372A3 (en) * 1985-09-25 1988-06-01 Bayerische Motoren Werke Aktiengesellschaft Data bus system for vehicles
FR2618966A1 (fr) * 1987-07-31 1989-02-03 Applusix A X Procede et reseau de transmission d'informations en serie entre differents systemes

Also Published As

Publication number Publication date
FR2526975B1 (fr) 1987-06-19

Similar Documents

Publication Publication Date Title
EP0046831B1 (fr) Système de retransmission de trames numérotées et reçues en erreur dans un système de transmission de données
EP1641197B1 (fr) Architecture de communication NoC (réseau sur puce ) pour applications de type flots de données
FR2519441A1 (fr) Systeme de selection de priorite pour l&#39;acces a un bus utilise en mode partage
FR2517442A1 (fr) Dispositif d&#39;interruption pour un systeme de multitraitement, procede pour sa commande et systeme pour sa mise en oeuvre
FR2480460A1 (fr) Dispositif pour transferer des informations entre des unites principales d&#39;un systeme de traitement de donnees et un sous-systeme central
EP0517609A1 (fr) Procédé et bus d&#39;arbitrage pour transmission de données série
FR2472234A1 (fr) Protocoles de communication geres par les modules de communication utilises dans un systeme de traitement de donnees reparti
FR2637997A1 (fr) Procede et dispositif pour mettre en file d&#39;attente des requetes et des reponses sur un bus
FR2490434A1 (fr) Dispositif de resolution des conflits d&#39;acces et d&#39;allocation d&#39;une liaison de type bus interconnectant un ensemble de processeurs non hierarchises
EP0005722A1 (fr) Système de sélection de circuit d&#39;interface prioritaire
EP0755010A1 (fr) Dispositif d&#39;interface entre un calculateur à architecture redondante et un moyen de communication
EP0917062B1 (fr) Dispositif d&#39;échange entre unités de traitement d&#39;informations à processeurs interconnectés par un bus commun
FR2925191A1 (fr) Architecture de traitement numerique a haute integrite a multiples ressources supervisees
FR2737030A1 (fr) Procede de transfert de messages dans un systeme informatique multinodal
FR2598575A1 (fr) Dispositif de commande de reseau de zone locale
CA2108812C (fr) Dispositif de resequencement pour un noeud d&#39;un systeme de commutation de cellules
FR2477809A1 (fr) Systeme de transmission rapide de messages entre calculateurs
FR2834361A1 (fr) Module de securisation de donnees par chiffrement/dechiffrement et/ou signature/verification de signature
FR2466808A1 (fr) Systeme pour controler la duree de l&#39;intervalle de temps entre blocs dans un systeme de communication calculateur a calculateur
EP3217290A1 (fr) Systeme sur puce et procede d&#39;echange de donnees entre noeuds de calculs d&#39;un tel systeme sur puce
EP0752669A1 (fr) Dispositif de communication entre une pluralité de modules fonctionnels installés dans une unité locale et un bus externe de type ARINC 629
FR2526975A1 (fr) Procede pour gerer l&#39;echange d&#39;informations entre plusieurs unites interconnectees entre elles par un support de transmission, et systeme pour la mise en oeuvre du procede
EP1772808A1 (fr) Dispositif et procédé de lecture d&#39;informations dans un ensemble de composants électroniques reliés à un bus de communication, appliqué à la lecture d&#39;une matrice de pixels
EP0011540B1 (fr) Dispositif d&#39;interface entrée-sortie entre un commutateur de données et une pluralité de voies de transmission
FR2497596A1 (fr) Machine informatique comportant une antememoire

Legal Events

Date Code Title Description
ST Notification of lapse