FR2630840A1 - Procede et dispositif de controle de l'acces a un bus dans un systeme informatique - Google Patents

Procede et dispositif de controle de l'acces a un bus dans un systeme informatique Download PDF

Info

Publication number
FR2630840A1
FR2630840A1 FR8908458A FR8908458A FR2630840A1 FR 2630840 A1 FR2630840 A1 FR 2630840A1 FR 8908458 A FR8908458 A FR 8908458A FR 8908458 A FR8908458 A FR 8908458A FR 2630840 A1 FR2630840 A1 FR 2630840A1
Authority
FR
France
Prior art keywords
bus
resource
request
access
signal
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.)
Withdrawn
Application number
FR8908458A
Other languages
English (en)
Inventor
Jon Rubinstein
Glen S Miranker
John Sanguinetti
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.)
Ardent Computer Corp
Original Assignee
Ardent Computer Corp
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 Ardent Computer Corp filed Critical Ardent Computer Corp
Publication of FR2630840A1 publication Critical patent/FR2630840A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

Ce procédé de contrôle de l'accès à un bus dans un système informatique comprend les étapes suivantes : - émission par un demandeur d'une demande 27 de prise en compte par une ressource, - réception de cette demande par un circuit d'arbitrage associé à ce demandeur, ce circuit d'arbitrage déterminant si la ressource est ou non en mesure de prendre en compte la demande, - dans l'affirmative : a) émission par le circuit d'arbitrage d'une demande d'accès au bus, b) examen par le circuit d'arbitrage de toutes les demandes d'accès au bus actives du système informatique, pour déterminer si la priorité de ses demandeurs associés est la plus élevée de toutes les demandes actives, et c) délivrance audit demandeur, par le circuit d'arbitrage, d'une autorisation 36 d'utiliser un bus système si ce demandeur a la priorité la plus élevée, de sorte que ce demandeur n'obtienne l'accès à la ressource que si cette ressource est en mesure de prendre en compte la demande et si ce demandeur a la priorité la plus élevée de toutes les demandes actives du système informatique.

Description

1i 2630840 La présente invention concerne le domaine des procédés
permettant, dans un système informatique, de contrôler
l'accès d'un certain nombre de demandeurs à un bus système.
Les systèmes informatiques comportent généralement plusieurs ressources telles que blocs processeurs, contrôleurs d'entrée/sortie, mémoires, etc. qui partagent toutes un bus système leur permettant de communiquer entre elles. Il est nécessaire de contrôler l'accès au bus système pour éviter d'avoir plus d'une ressource accédant au bus à
la fois.
De façon générale, on connalt deux-techniques de contrôle d'accès au bus système. Dans une première technique, on utilise un point central de contrôle pour contrôler toutes les demandes d'accès au bus système. Dans une seconde technique, le contrôle des demandes d'accès au bus système est distribué, par exemple en permettant aux ressources situées sur une même carte d'être contrôlées toutes par un même contrôleur. Dans un tel système distribué, tous les contrôleurs doivent coopérer à l'autorisation d'accès pour
éviter les collisions sur le bus.
Dans l'un et l'autre cas, le processus d'arbitrage du bus système est conçu de manière à répondre à une ou plusieurs des exigences suivantes: (1) minimisation du temps nécessaire à la prise en compte d'une demande, (2) réduction de l'utilisation des ressources du bus système, et (3) possibilité d'avoir des priorités modifiables pour la prise en compte des demandes d'accès au bus
système.
Dans un procédé connu de contrôle d'accès à un bus système, on permet aux demandeurs de former une demande -indépendamment du point de savoir si la ressource demandée est occupée. Si la ressource est occupée, le bus système est bloqué par la demande jusqu'à que celle-ci puisse être prise en compte. Un tel procédé occupe les ressources de bus système pendant toute la période d'attente de la prise en
compte de la demande.
- 2 26308.40
Une variante possible consiste à mettre en file d'attente les demandes à l'endroit des répondeurs, ce qui libère le bus système. Cependant, un tel procédé nécessite pour chaque ressource des circuits supplémentaires pour pouvoir mémoriser les informations de demande de la file d'attente, et présente en outre l'inconvénient de la taille limitée des
files d'attente.
Pour ces raisons, il serait souhaitable de disposer d'un processus d'arbitrage de bus qui réponde à chacune des exigences ci-dessus et qui résolve les problèmes de l'art antérieur. Les systèmes distribués connus permettant de partager une ressource de bus souffrent d'un ou plusieurs inconvénients
lorsque l'on transfère le bus d'une ressource à une autre.
Pour un certain nombre de raisons, ces systèmes souffrent du fait que les horloges qui contrôlent l'accès aux bus système ou à d'autres éléments présentent un certain degré de
non-simultanéité des signaux d'horloge entre divers ports.
Plusieurs systèmes, connus pour tels, permettent au bus de rester inutilisé pendant un cycle d'horloge entre le moment o le bus est libéré par une ressource et celui o il est utilisé par une autre. Ceci permet d'éviter tout concours
d'accès au bus par les deux ressources à l'égard du bus.
Cependant, un tel procédé sous-utilise la ressource qu'est le bus, en le laissant passer pendant la durée d'un cycle d'horloge à un état inutilisé, lors de la transition d'une
ressource à l'autre.
Un autre procédé connu de gestion des concours d'accès à un bus dans un système distribué consiste à concevoir le système de manière à minimiser la non-simultanéité des signaux d'horloge entre ressources. Dans ces systèmes, pour autant qu'elles surviennent, les concours d'accès sont ignorés. Un tel procédé augmente cependant la complexité de
conception des circuits du système.
Un troisième procédé connu de contrôle des concours d'accès à un bus utilise plusieurs horloges de bus décalées d'une quantité précise. L'une des horloges peut être utilisée pour l'activation et -une autre pour la désactivation. Un tel procédé introduit cependant des difficultés liés au contrôle de plusieurs horloges'avec des
décalages précis.
O La présente invention décrit un processus d'arbitrage de bus dans lequel les demandeurs ne demandent une ressource
qu'après avoir détecté que la ressource n'est pas occupée.
Dans le mode de réalisation préféré de la présente invention, on prévoit dix-huit ressources, à savoir seize ressources de mémoire, une ressource d'entrée/sortie et une ressource graphique. On associe à chaque ressource un signal sur le bus système qui indique si la ressource est ou non occupée. Le système comporte une pluralité d'arbitres, chacun étant relié à un ou deux demandeurs. Les demandeurs -peuvent déterminer d'après le signal si une ressource qu'il
souhaitent utiliser est occupée ou non.
- Après qu'un demandeur ait déterminé qu'une ressource qu'il souhaite demander n'est pas occupée, le demandeur doit alors effectuer l'arbitrage d'utilisation du bus. Au-cours d'un cycle d'horloge, on formule une demande d'utilisation du bus pour le cycle qui suit l'arbitrage favorable. Si la demande n'est pas accordée, le demandeur continue à demander le bus voulu jusqu'à ce qu'il lui soit accordé. Dans le mode - de réalisation préféré, l'arbitrage est réparti en deux niveaux, global et local. L'arbitrage local détermine celui
des demandeurs d'une carte qui a accès aux bus locaux.
L'arbitrage global détermine celle des cartes qui a accès au -
- bus système.
Après qu'un demandeur ait déterminé si une ressource est ou non en mesure de prendre en compte une transaction, le demandeur applique une ressource de bus. L'arbitre détermine, en fonction d'un ensemble de règles'de priorité,
celui des demandeurs qui va recevoir le bus local.
Parallèlement à cette détermination, on applique sur le bus système une demande d'accès au bus. L'arbitre examine
4 2630840
ensuite toutes les demandes d'accès au bus système actives et détermine si la priorité du demandeur est supérieure à toutes les demandes actives. Si le demandeur qui lui est associé n'a pas la priorité la plus élevée, l'arbitre délivre à ce demandeur une autorisation d'accès au bus système. Au même moment, l'arbitre émet un signal d'occupation de la ressource demandée jusqu'à ce que la ressource soit en mesure d'émettre son propre signal d'occupation. Ceci empêche que d'autres demandeurs ne demandent la ressource au cours des cycles d'horloge suivants. La présente invention décrit en outre un procédé de contrôle d'accès à un bus au moment o l'on transfère l'accès d'une ressource à l'autre dans un système, qui utilise un contrôle distribué de la ressource que constitue le bus, ainsi qu'une technique pour empêcher les conflits en chaîne. L'un des buts de l'invention est d'empêcher les concours d'accès au bus système, tout en utilisant complètement tous
les cycles d'horloge disponibles sur le bus.
Dans le mode de réalisation préféré, une ressource ne peut utiliser le bus système que lorsque son signal d'autorisation d'accès au bus (BUSAMOI) est émis. Le signal BUSAMOI ne peut être émis ou supprimé que lorsque une ligne d'activation centrale est- désactivée. L'accès au bus est contrôlé de telle sorte qu'une ressource ne peut pas accéder au bus sauf si les lignes BUSAMOI et d'activation centrale
sont toutes deux actives.
0
On va maintenant décrire un exemple de réalisation de
l'invention, en référence aux dessins annexés.
La figure 1 est un organigramme illustrant un processus d'arbitrage susceptible d'être utilisé par la présente invention. La figure 2 est un chronogramme illustrant un séquencement de demandes et d'autorisations d'accès au bus
2630840
susceptible d'être utilisé par la présente invention.
La figure 3 est un schéma par blocs illustrant un réseau de portes d'arbitrage susceptible d'être utilisé par la
présente invention.
La figure 4 est un schéma par blocs illustrant les cartes et les réseaux de portes d'arbitrage d'accès à un bus système susceptibles d'être utilisé par la présente invention. -La figure 5 est un chronogramme illustrant les signaux de séquencement permettant d'obtenir l'accès au bus susceptible
sd'être utilisé par la présente invention.
La figure 6 est une illustration schématique des circuits qui peuvent être utilisés pour le contrôle de l'accès au bus
par la présente invention.
On va décrire un procédé et un dispositif d'arbitrage de
bus. Dans la description qui va suivre, on a donné de
nombreux détails spécifiques tels que numéros de broches, niveaux de priorité, etc. afin de permettre une compréhension complète de la présente invention. Il sera cependant évident pour l'homme de l'art que la présente
invention peut être réalisée sans ces détails spécifiques.
Inversement, des circuits, structures et techniques bien connus n'ont pas été décrits en détail afin de ne pas
alourdir inutilement la description de la présente
invention. La présente invention décrit un procédé et un dispositif pour partager un bus commun relié- à -une pluralité de ressources par une pluralité de demandeurs de ces ressources. Dans le mode de réalisation préféré, on a dix-huit ressources: seize ressources de mémoire, une ressource d'entrée/sortie et une-ressource graphique. Les seize ressources de mémoire comportent seize mémoires imbriquées (par exemple, des mémoires séparées susceptibles de fonctionner en parallèle). Il sera cependant évident pour l'homme de l'art que l'on peut avoir d'autres configurations
6 2630840
de ressources sans sortir du cadre de la présente invention.
On pourrait par exemple utiliser ainsi un système à plusieurs ressources d'entrée/sortie ou plusieurs ressources graphiques. Dans la présente invention, un demandeur ne demande une ressource que lorsque la ressource n'est pas occupée. Le demandeur est capable de déterminer si une ressource est ou non occupée par examen d'un signal d'occupation associé à chaque ressource. Les signaux du mode de réalisation préféré qui permettent d'identifier si une ressource est ou non occupée seront décrits plus en détail à propos de la
figure 3.
Après qu'un demandeur a déterminé si une ressource particulière est libre, le demandeur arbitre l'utilisation
d'un bus pour permettre la communication avec la ressource.
Le procédé d'arbitrage d'utilisation de bus utilisé dans le
mode de réalisation préféré est décrit sur la figure 1.
Tout d'abord, un demandeur émet une demande en direction de son réseau de portes d'arbitrage (bloc 10). Le réseau de portes d'arbitrage est associé à un bus et peut assurer l'arbitrage pour un ou deux demandeurs. Le réseau de portes d'arbitrage assure l'arbitrage à la fois pour le bus système et, en tant que de besoin, pour un bus local susceptible
d'alimenter le bus système.
Le réseau de portes d'arbitrage accepte ensuite la demande du demandeur (bloc 11) et détermine si la ressource demandée sera ou non disponible dans deux cycles d'horloge (bloc 12). Comme on le verra à propos de la figure 2, si une demande est formulée au cours du cycle d'horloge courant, on aura besoin de la ressource au plus tôt dans deux cycles d'horloge, ces deux cycles correspondant l'un à l'arbitrage et l'autre au transfert de bus. Chaque ressource désactive son signal d'occupation deux cycles d'horloge avant d'être
prête à recevoir une autre demande.
Supposons que la ressource soit disponible. Le réseau de portes d'arbitrage détermine alors celui des demandeurs qui sera autorisé à accéder au bus local et produit un signal d'autorisation d'accès au bus local en direction de ce demandeur (bloc 13). Cette étape présente un intérêt lorsque plusieurs demandeurs partagent un bus local et que-deux, ou plus, d'entre eux formulent une demande au cours du même cycle d'horloge. Parallèlement, une demande d'accès au bus est émise sur le bus système (bloc 14). Le réseau de portes d'arbitrage examine ensuite toutes
les demandes d'accès au bus système actives (bloc 15).
Chaque réseau de portes d'arbitrage du système est, de la même manière, responsable de la surveillance de toutes les demandes d'accès au bus système actives. On sélectionne ensuite le réseau de portes d'arbitrage qui a déterminé que son demandeur possède la priorité la plus élevée parmi tous les demandeurs demandant-le bus système, afin qu'il puisse recevoir le bus système lors du cycle d'horloge suivant
(bloc 16).
Le réseau de portes d'arbitrage sélectionné émet ensuite une autorisation d'accès au bus système en direction du demandeur qui lui est associé (bloc 17). Au même moment, un signal d'occupation est émis, pour la ressource sélectionnée, par le réseau de portes d'arbitrage pendant le cycle d'horloge en cours plus deux cycles d'horloge (bloc 18). Ceci permet d'avoir une ressource qui, pour les autres demandeurs, paraisse occupée jusqu'au moment o la ressource
sera capable de délivrer son propre signal d'occupation.
La figure 2 illustre un chronogramme représentant un certain nomibre de signaux importants utilisés par la présente invention. Ce chronogramme illustre un signal d'horloge 26, un signal de demande 27 provenant d'un demndeur,.un signal d'autorisation d'accès au bus local 28, un signal d'autorisation d'accès au bus système 29, un signal d'activation de bus (BUSAMOI) 36, un signal d'adresse
de bus local 37 et un signal d'adresse de bus système 38.
Pendant un premier cycle d'horloge, un demandeur formule une demande 20. Le réseau de portes d.'arLitrage reçoit alors la demande et détermine sila ressource demandée sera libre dans deux cycles d'horloge. Le réseau de portes d'arbitrage détermine également que ce demandeur devra être autorisé-à accéder au bus local soit parce qu'il a la priorité la plus
2630&40
élevée de tous les demandeurs de la même carte, soit parce qu'il est le seul demandeur de la carte demandant l'accès au bus. Le réseau de portes d'arbitrage signale alors l'autorisation d'accès au bus local 21 pour cette demande et
- 5 émet une demande d'accès au bus système (non représentée).
Dans ce cas particulier, la demande d'accès au bus système reçoit une suite favorable et un signal d'autorisation d'accès au bus système, un signal BUSAMOI est émis par le réseau de portes d'arbitrage 24. Le signal BUSAMOI est
utilisé'en entrée d'un circuit trois-états du demandeur.
Lorsque le signal BUSAMOI est émis et qu'un signal central d'activation (non représenté) est émis, la ressource a accès au bus système. La ressource applique ensuite au bus système
l'information d'adresse.
La demande n 5 illustre le cas d'une demande o l'on donne à la demande l'autorisation d'accéder au bus local, mais o l'on ne donne pas l'autorisation d'accéder au bus système avant plusieurs cycles d'horloge. Ceci peut être dû au fait que le bus système est occupé à prendre en compte d'autres demandeurs qui ont des priorités plus élevées. Une demande 30 est émise et l'on donne des autorisations d'accès au bus local en 31, 32 et 33. Les demandes 31 et 32
n'aboutissent pas à une autorisation d'accès au bus système.
Le réseau de portes d'arbitrage réémet donc la demande d'accès au bus système jusqu'à obtenir une autorisation
d'accès au bus système en 34.
La demande 6 illustre une demande qui, à la première tentative, n'aboutit ni a une autorisation d'accès au bus local ni à une autorisation d'accès au bus système. La demande 40 et la demande 41 n'aboutissent pas à une autorisation d'accès au bus local et sont réémises par le demandeur. La demande 42 aboutit à une autorisation d'accès au bus local 43. Cependant, la demande d'accès au bus système correspondante n'aboutit pas à une autorisation d'accès au bus système. La demande d'accès au bus système est donc réémise jusqu'à réception d'une autorisation d'accès au bus système 45. Un signal BUSAMOI 46 est alors
émis en direction du demandeur.
La figure 3 illustre un réseau de portes d'arbitrage 50
utilisable pour la mise en oeuvre de la présente invention.
On a illustré cinquante-quatre broches du réseau de portes d'arbitrage 50, mais le mode de réalisation préféré de la présente invention utilise en fait un réseau à cent broches. L'homme de l'art notera que les autres broches comprennent des broches telles que les broches de réinitialisation, de tension d'alimentation, d'horloge ainsi que d'autres broches
qui ne sont pas essentielles à la description de la présenté
invention.
Lorsqu'un demandeur du système souhaite arbitrer l'accès au bus système, il émet sa demande d'accès au bus-local sur les broches 60 et 68. Dans le mode de réalisation préféré, chaque réseau de portes d'arbitrage peut gérer jusqu'à deux demandeurs. Comme illustré- sur la figure 3, la broche de demande d'accès au bus local 60 est associée au demandeur nO 0 et la broche de demande d'accès au bus local 68 est as-sociée au demandeur n 1. Un signal sur les broches 60 ou 68 de demande d'accès au bus local indique qu'une demande valide est émise par le demandeur n 0 ou par le demandeur
n 1, respectivement.
Un demandeur demande l'accès aux bus en émettant son type
de demande sur les broches 48 et 54 de type de demande.
Chaque demandeur a besoin de broches de type de demande distinctes. Comme illustré sur la figure 3, les broches 48 sont associées au demandeur n 0 et les broches 54 sont associées au demandeur n 1. Il y a trois broches de type de -demande 48 et 54 associées à chaque demandeur. Leurs-signaux sont interprétés de la manière décrite par le tableau
ci-dessous.
Type de demande Type
______________- --------------------_
0. O O NEANT
0 O 1 GRAPHIQUE
0 1 0 ENTREE/SORTIE
0 1 1 MEMOIRE
1 0 0 TEST
1 0 1 RESERVE
1 1 0 LOCAL
1 i 1 RETOUR
2630840
Si le type de demande est une demande d'accès mémoire (type de demande = '011'), le demandeur délivre également une adresse sur les broches spécifiques 49 et 58 d'adressage de mémoire imbriquée. Dans le mode de réalisation préféré de la présente invention, on utilise une mémoire à seize partitions imbriquées. A chaque demandeur correspond quatre broches d'adresse 49 et 58, afin de pouvoir adresser les
seize partitions.
Les broches 47 et 53 de demande de lecture spécifient si l'accès est un accès en lecture ou en écriture. Dans le mode de réalisation préféré, si un demandeur émet un signal sur
cette broche c'est une lecture qui est demandée.
Le réseau de portes d'arbitrage utilise en entrée la broche d'occupation de lecture 52 lorsque l'on détermine si l'on doit ou non autoriser l'accès au bus à un demandeur qui a formulé une demande d'écriture. La broche d'occupation de lecture 52 indique que le bus de données sera occupé à renvoyer des données de lecture pendant les deux cycles d'horloge qui suivront le cycle au cours duquel le signal est produit. Un demandeur qui formule une demande d'écriture se verra refuser l'accès au bus si ce signal est émis, afin d'éviter une collision de données sur le bus. Le sous-système mémoire contrôle le signal de la broche d'occupation de lecture 52, forçant le sous-système d'entrée/sortie et le sous-système graphique a arbitré en
faveur du renvoi des données par le bus.
Le réseau de portes d'arbitrage détermine, en examinant la broche d'occupation appropriée, si la ressource est occupée. Il y a, dans le mode de réalisation préféré, seize broches 55 d'occupation des partitions, correspondant à chacune des p.rtitions de mémoire imbriquée. La broche 56 d'occupation d'entrée/sortie indique si le sous-système d'entrée/sortie est occupé ou non. La broche 57 d'occupation graphique indique si le sous-système graphique est occupé ou
non.
Chacune des broches d'occupation 55, 56 et 57 constitue à la fois une broche d'entrée et une broche de sortie. Les broches d'occupation 55, 56 et' 57 sont utilisées -en tant qu'entrée-du réseau de portes d'arbitrage lorsque le réseau de portes d'arbitrage détermine si une ressource particulière est occupée ou non. Le réseau de portes d'arbitrage émettra donc (en sortie) un signal pendant trois cycles d'horloge sur la broche d'occupation appropriée 55, 56 ou 57 lorsqu'il aura pu effectuer un arbitrage de bus favorable. Dans le mode de réalisation préféré, il est nécessaire que le réseau de portes d'arbitrage émette le signal pendant la durée de trois cycles d'horloge car la ressource ne commencera pas à émettre d'elle-même le signal
avant que trois cycles d'horloge ne se soient écoulés.
Si la ressource vient à être disponible, une demande d'accès au bus est émise sur l'une des broches 51. Il y-a dans le mode de réalisation préféré huit broches de demande d'accès au bus, une pour chaque demandeur de bus. Comme décrit plus haut, le réseau de portes d'arbitrage 50 émet le
signal sur la broche d'occupation appropriée après que.
l'accès à la ressource ait été accordé à un demandeur pendant trois cycles d'horloge. La ressource est ensuite responsable de l'émission du signal d'occupation correct jusqu'à exécution de la demande et mise en disponibilité pour la demande suivante. Comme décrit plus haut, en fait, la ressource désactive la broche d'occupation deux cycles d'horloge avant qu'elle ne soit prête à recevoir une autre demande, car une demande n'arrivera pas à la ressource avant deux cycles d'horloge, au plus tôt. Ceci permet d'utiliser au mieux les cycles d'horloge pendant les périodes de recouvrement. Le réseau de portes d'arbitrage détermine celui des demandeurs qui, en fonction des priorités de chaque demandeur local, doit recevoir l'autorisation d'accès au'bus local. Le demandeur ayant la priorité la plus-élevée reçoit l'autorisation d'accès au bus local,donnée par le réseau de portes d'arbitrage 50 qui émet le signal d'autorisation d'accès au bus local sur les broches 61 et 69. Il y a sur chaque réseau de portes d'arbitrage deux broches 61 et-69 d'autorisation d'accès au bus local, une pour chaque demandeur susceptible d'être relié au réseau de portes
12 2630840
d'arbitrage 50 et contrôlé par celui-ci.
Le réseau de portes d'arbitrage 50 examine toutes les demandes d'accès au bus système actives et détermine si le
demandeur qui lui est associé a la priorité la plus élevée.
Dans l'affirmative, un signal d'autorisation d'accès de bus global est émis sur la broche 62 d'autorisation d'accès de bus global. Un signal BUSAMOI est également émis sur la broche 63 afin de permettre l'accès au bus système, comme
décrit à propos de la figure 1.
Dans le mode de réalisation préféré de la présente invention, on gère en fonction des priorités les demandes simultanées d'accès au bus système. Il y a huit niveaux de priorité d'accès au système, chaque niveau de priorité étant associé à l'une des broches des demandes d'accès au bus 51. Les niveaux de priorité sont attribués de la manière suivante: le niveau '8' est une priorité de secours, le niveau '7' correspond aux demandes issues du sous-système d'entrée/sortie, le niveau '6' correspond aux demandes issues du sous-système graphique, les niveaux '4' et '5' correspondent aux demandes issues des unités de traitement d'entiers, le niveau '2' et '3' correspondent aux demandes issues des unités de traitement à virgule flottante, et le
niveau '1' est un niveau de priorité de secours.
On peut soumettre les niveaux de priorité des processeurs du système à une permutation de type circulaire. Dans le mode de réalisation préféré, on prévoit une commutation possible entre deux modes de permutation circulaire. *La sélection d'un mode ou de l'autre est contrôlée par la broche de permutation circulaire 65. Si un signal est émis sur cette broche 65, il y aura permutation circulaire des
priorités entre tous les niveaux compris entre '2' et '5'.
Si aucun signal n'est émis sur la broche 65, on permute les priorités d'une part entre les niveaux '4' et '5' et d'autre part entre les niveaux '2' et '3'. Les niveaux '1', '6', '7'
et '8' conservent des priorités fixes.
Une broche 83 de priorité d'arbitrage global signale qu'il y a permutation des priorités entre les cartes. Si ce signal est un '0', le processeur de la carte n 0 aura la
13 2630840
priorité pour l'arbitrage. Si le signal est un '1', c'est le processeur de la carte n 1 qui aura la priorité. On permute l'état de la broche 83 de priorité d'arbitrage global tous
les quatre cycles d'horloge.
Le signal sur la broche 84 de priorité d'arbitrage de carte signale qu'il y a priorité avec permutation -entre réseaux de portes d'arbitrage de la même carte. Le signal sur la broche de priorité d'arbitrage de carte 84 bascule d'un réseau de portes d'arbitrage vers l'autre chaque fois
qu'une demande a été prise en compte.
Le signal sur la broche 85 d'arbitrage interne signale qu'il y a priorité avec permutation entre deux demandeurs contrôlés par le même réseau de portes d'arbitrage. Lorsque ce signal 85 est un '0', le demandeur n 0 a la priorité la plus élevée, tandis que si ce signal est un '1', c'est le demandeur n 1 qui a la priorité la plus élevée. Le signal bascule d'un demandeur à l'autre- chaque fois qu'une
demande a été prise en compte.
En raison de l'aléa introduit par la modification des niveaux relatifs de priorité entre les différents demandeurs du système, on évite les problèmes de conflits en chaîne. Un
signal d'horloge est appliqué en entrée, sur la broche 66, -
au réseau de portes d'arbitrage 50. Un signal d'activation de bus- est appliqué en entrée sur la broche 67. Le signal d'activation de bus 67 contrôle les activations de bus pour toutes les cartes du système et ilest utilisé pour produire
le signal BUSAMOI de contrôle d'activation.
La- figure 4 illustre un bus 70 relié à une darte processeur 71, à une carte graphique 77, à une carte d'entrée/sortie 79 et à une mémoire 81 d'une manière susceptible d'utiliser la présente invention. Dans e mode de réalisation préféré, la carte processeur 71- coDntient - quatre réseaux de portes d'arbitrage 72, 73, 74 et 75. Pàrmi ceux-ci, le réseau de portes d'arbitrage 72 peut être associé à une unité de traitement d'entiers de a carte processeur, le réseau de portes d'arbitrage 73 peut être associé à la voie de mémorisation d'une unité de -tratement en virgule flottante et les deux réseaux -e portes
14 26308&40
d'arbitrage 74 et 75 peuvent être associés aux voies de
chargement de cette unité de traitement à virgule flottante.
La carte graphique 77 ne possède qu'un seul réseau de portes d'arbitrage 78. La carte d'entrée/sortie 79 ne possède également qu'un seul réseau de portes d'arbitrage 80. Les figures 5 et 6 décrivent plus en détail le procédé et le dispositif permettant de transférer l'accès au bus d'un demandeur à un autre. On souhaite pouvoir transférer l'accès d'une ressource vers une autre ressource tout en empêchant les problèmes de concours d'accès au bus pendant le
transfert de l'accès d'une ressource à une autre.
La figure 5 est un chronogramme montrant l'accès au bus transféré d'un premier demandeur, contrôlé par le signal BUSAMOI1 91, à un seconddemandeur, contrôlé par le signal BUSAMOI2 92. Le second demandeur garde le contrôle du bus pendant un cycle d'horloge et le contrôle est retransféré au
premier demandeur au cours du cycle d'horloge suivant.
Un signal d'horloge de bus 90 assure le séquencement du bus. Un signal d'activation 93 est supprimé à l'instant 97 en réponse au front montant du signal d'horloge qui est apparu à l'instant 96. Le signal BUSAMOI1 91 est supprimé à l'instant 98 et le signal BUSAMOI2 92 est émis à l'instant 99. Les signaux BUSAMOI 91 et 92 ne changent d'état qu'après que le signal d'activation 93 ait été supprimé. Le signal
d'activation 93 est à nouveau émis à l'instant 100.
Le signal d'activation 93 est délivré à toutes les cartes du système, et il est contrôlé par un circuit générateur d'horloge central. Ce signal est produit de manière à& être supprimé après le front montant de l'horloge de bus, et il est émis après avoir laissé s'écouler un temps suffisant pour compenser les non-simultanéités d'horloge dans le système. A l'instant 101, on produit un second front montant du signal d'horloge 90. Le signal d'activation 93 est supprimé à l'instant 102. A l'instant 103, on émet le signal BUSAMOI1 91. Entre les instants 102 et 103, on émet à la fois le signal BUSAMOI1 91 et BUSAMOI2 92. Ainsi, pendant cet intervalle de temps, le demandeur n0 1 et le demandeur no 2
2630840
peuvent, en l'absence de tout contrôle supplémentaire, accéder tous deux au bus système. Comme décrit plus haut, tout accès au bus système est interdit pendant les
intervalles de temps o le signal d'autorisation 93 est-
supprimé, ce qui constitue ce contrôle supplémentaire. A l'instant-103, le signal BUSAMOI2 92 est supprimé et, à l'instant 104, le signal d'activation 105 est émis. Par utilisation d'un signal de contrôle d'autorisation central 93, on évite tout concours d'accès au bus pendant
l'intervalle de temps compris entre les instants 102 et 103.
La figure 6, enfin, illustre les circuits utilisés pour contrôler l'accès au bus système. Le signal BUSAMOI sur la ligne 110 et le signal d'activation sur la ligne 111 sont combinés par le circuit ET 115. Ce n'est que quand la ligne de signal BUSAMOI 110 et la ligne de signal d'activation 111 sont toutes deux au niveau haut que le circuit troisétats
113 permet à la ligne 114 d'accéder au bus 112.
On peut voir, d'après la description qui précède, que
l'on dispose ainsi d'un procédé et d'un dispositif d'arbitrage de bus permettant aux demandeurs, avant de formuler une demande, de détecter si une ressource est occupée ou non et permettant l'arbitrage d'un bus dans
l'intervalle d'un unique cycle d'horloge.

Claims (10)

REVENDICATIONS
1. Un dispositif de contrôle de l'accès & des ressources dans un système informatique, caractérisé en ce qu'il comprend: - une ressource, - une pluralité de demandeurs demandant une prise en compte par cette ressource, - un premiers moyen pour déterminer si cette ressource est en mesure de prendre en compte une demande relative à cette ressource et à ces demandeurs, de sorte que les demandeurs puissent émettre des demandes à prendre en compte par la ressource lorsque cette ressource
sera en mesure de prendre en compte ladite demande.
2. Le dispositif de la revendication 1, comprenant en outre au moins un second moyen pour arbitrer, entre les demandeurs, celui qui peut émettre sa demande, ce second
moyen étant relié à chacun desdits demandeurs.
3. Le dispositif de la revendication 2, dans lequel chacun des seconds moyens peut être relié à une pluralité de demandeurs.
4. Le dispositif de la revendication 3, dans lequel la ressource peut être constituée d'un processeur d'entrée/sortie multiple (79), d'un processeur graphique
multiple (77) ou de mémoires imbriquées (81).
5. Le dispositif de la revendication 4, dans lequel le demandeur peut être un processeur d'entrée/sortie (79), un processeur graphique (77), une unité centrale de traitement
(71) ou une unité de traitement en virgule flottante (71).
6. Le dispositif de la revendication 5, comprenant en
outre un bus (70) de liaison de la ressource aux demandeurs.
26308 4 0
7. Un circuit d'un dispositif de contrôle d'accès à des ressources d'un système informatique, ce système informatique comprenant au moins une ressource et une pluralité de demandeurs, circuit caractérisé en ce qu'il comprend: - un premier moyen, relié à la ressource et aux demandeurs, pour déterminer si la ressource est ou non en mesure de prendre en compte une demande, - au moins un second moyen, relié à chacun des demandeurs, pour -arbitrer parmi ces demandeurs celui qui pourra émettre sa demande, de sorte que ces demandeurs ne puissent émettre des demandes à prendre en compte par la ressource que lorsque cette ressource sera en mesure de prendre en compte cette
demande.
8.Le dispositif de la revendication 7, comprenant en
outre un bus (70) de liaison de la ressource aux demandeurs.
9.Le dispositif de la revendication 7, dans lequel la ressource peut être un processeur d'entrée/sortie (79), un processeur graphique (77), une unité centrale de traitement
(71) ou une unité de traitement en virgule flottante (71).
10.Le dispositif de la revendication 7, dans lequel le demandeur peut être un processeur d'entrée/sortie (79), un processeur graphique (77), une unité centrale de traitement
(71) ou une unité de traitement en virgule flottante (71).
FR8908458A 1988-02-24 1989-06-26 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique Withdrawn FR2630840A1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15976988A 1988-02-24 1988-02-24

Publications (1)

Publication Number Publication Date
FR2630840A1 true FR2630840A1 (fr) 1989-11-03

Family

ID=22573943

Family Applications (3)

Application Number Title Priority Date Filing Date
FR8902289A Withdrawn FR2627606A1 (fr) 1988-02-24 1989-02-22 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique
FR8908457A Withdrawn FR2630839A1 (fr) 1988-02-24 1989-06-26 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique
FR8908458A Withdrawn FR2630840A1 (fr) 1988-02-24 1989-06-26 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique

Family Applications Before (2)

Application Number Title Priority Date Filing Date
FR8902289A Withdrawn FR2627606A1 (fr) 1988-02-24 1989-02-22 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique
FR8908457A Withdrawn FR2630839A1 (fr) 1988-02-24 1989-06-26 Procede et dispositif de controle de l'acces a un bus dans un systeme informatique

Country Status (6)

Country Link
JP (1) JPH028948A (fr)
AU (1) AU3022589A (fr)
DE (1) DE3905478A1 (fr)
FR (3) FR2627606A1 (fr)
GB (1) GB2216368B (fr)
IL (1) IL89355A0 (fr)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438222A (en) * 1989-08-28 1995-08-01 Semiconductor Energy Laboratory Co., Ltd. Electronic device with plural pad connection of semiconductor chip to leads
DE3928481C2 (de) * 1989-08-29 1994-09-22 Diehl Gmbh & Co Prioritätsorientiertes dezentrales Busvergabesystem
US5515516A (en) * 1994-03-01 1996-05-07 Intel Corporation Initialization mechanism for symmetric arbitration agents
US6061599A (en) * 1994-03-01 2000-05-09 Intel Corporation Auto-configuration support for multiple processor-ready pair or FRC-master/checker pair
TW400483B (en) * 1994-03-01 2000-08-01 Intel Corp High performance symmetric arbitration protocol with support for I/O requirements
GB2337138B (en) * 1998-01-30 2002-12-18 * Sgs-Thomson Microelectronics Limited Arbitration
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7434219B2 (en) 2000-01-31 2008-10-07 Commvault Systems, Inc. Storage of application specific profiles correlating to document versions
US6658436B2 (en) 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
JP2005505039A (ja) 2001-09-28 2005-02-17 コムヴォールト・システムズ・インコーポレーテッド 情報記憶装置にオブジェクトをアーカイブする装置及び方法
US7454569B2 (en) 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US7546324B2 (en) 2003-11-13 2009-06-09 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
US7603672B1 (en) * 2003-12-23 2009-10-13 Unisys Corporation Programmable request handling system and method
US7734669B2 (en) 2006-12-22 2010-06-08 Commvault Systems, Inc. Managing copies of data
US8396838B2 (en) 2007-10-17 2013-03-12 Commvault Systems, Inc. Legal compliance, electronic discovery and electronic document handling of online and offline copies of data
US8769048B2 (en) 2008-06-18 2014-07-01 Commvault Systems, Inc. Data protection scheduling, such as providing a flexible backup window in a data protection system
US9128883B2 (en) 2008-06-19 2015-09-08 Commvault Systems, Inc Data storage resource allocation by performing abbreviated resource checks based on relative chances of failure of the data storage resources to determine whether data storage requests would fail
US8352954B2 (en) 2008-06-19 2013-01-08 Commvault Systems, Inc. Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
US8725688B2 (en) 2008-09-05 2014-05-13 Commvault Systems, Inc. Image level copy or restore, such as image level restore without knowledge of data object metadata
US20100070474A1 (en) 2008-09-12 2010-03-18 Lad Kamleshkumar K Transferring or migrating portions of data objects, such as block-level data migration or chunk-based data migration
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US8849762B2 (en) 2011-03-31 2014-09-30 Commvault Systems, Inc. Restoring computing environments, such as autorecovery of file systems at certain points in time
US8490107B2 (en) 2011-08-08 2013-07-16 Arm Limited Processing resource allocation within an integrated circuit supporting transaction requests of different priority levels
US10157184B2 (en) 2012-03-30 2018-12-18 Commvault Systems, Inc. Data previewing before recalling large data files
US9633216B2 (en) 2012-12-27 2017-04-25 Commvault Systems, Inc. Application of information management policies based on operation with a geographic entity
US9459968B2 (en) 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
US9798596B2 (en) 2014-02-27 2017-10-24 Commvault Systems, Inc. Automatic alert escalation for an information management system
US9648100B2 (en) 2014-03-05 2017-05-09 Commvault Systems, Inc. Cross-system storage management for transferring data across autonomous information management systems
US9823978B2 (en) 2014-04-16 2017-11-21 Commvault Systems, Inc. User-level quota management of data objects stored in information management systems
US9740574B2 (en) 2014-05-09 2017-08-22 Commvault Systems, Inc. Load balancing across multiple data paths
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9444811B2 (en) 2014-10-21 2016-09-13 Commvault Systems, Inc. Using an enhanced data agent to restore backed up data across autonomous storage management systems
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10838821B2 (en) 2017-02-08 2020-11-17 Commvault Systems, Inc. Migrating content and metadata from a backup system
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10891069B2 (en) 2017-03-27 2021-01-12 Commvault Systems, Inc. Creating local copies of data stored in online data repositories
US10776329B2 (en) 2017-03-28 2020-09-15 Commvault Systems, Inc. Migration of a database management system to cloud storage
US11074140B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Live browsing of granular mailbox data
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10795927B2 (en) 2018-02-05 2020-10-06 Commvault Systems, Inc. On-demand metadata extraction of clinical image data
US10754729B2 (en) 2018-03-12 2020-08-25 Commvault Systems, Inc. Recovery point objective (RPO) driven backup scheduling in a data storage management system
US10789387B2 (en) 2018-03-13 2020-09-29 Commvault Systems, Inc. Graphical representation of an information management system
US10860443B2 (en) 2018-12-10 2020-12-08 Commvault Systems, Inc. Evaluation and reporting of recovery readiness in a data storage management system
US11308034B2 (en) 2019-06-27 2022-04-19 Commvault Systems, Inc. Continuously run log backup with minimal configuration and resource usage from the source machine

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1063296A (en) * 1963-05-31 1967-03-30 Automatic Telephone & Elect Improvements in or relating to data handling systems
GB2076191B (en) * 1978-12-26 1983-06-02 Honeywell Inf Systems Improvements in or relating to terminal systems for data processors
IT1126474B (it) * 1979-12-03 1986-05-21 Honeywell Inf Systems Apparato per l'accesso a risorse comuni di memoria da parte di piu' processori interconnessi mediante un bus comune
DE3374464D1 (en) * 1983-03-29 1987-12-17 Ibm Arbitration device for the allocation of a common resource to a selected unit of a data processing system
FR2547934B1 (fr) * 1983-06-21 1988-12-02 Electricite De France Installation de calcul a commutation automatique de peripheriques et peripherique propre a de telles commutations
US4719569A (en) * 1985-10-11 1988-01-12 Sun Microsystems, Inc. Arbitrator for allocating access to data processing resources
US4785394A (en) * 1986-09-19 1988-11-15 Datapoint Corporation Fair arbitration technique for a split transaction bus in a multiprocessor computer system

Also Published As

Publication number Publication date
IL89355A0 (en) 1989-09-10
DE3905478A1 (de) 1989-09-07
GB2216368B (en) 1992-04-08
GB8903961D0 (en) 1989-04-05
AU3022589A (en) 1989-08-24
FR2630839A1 (fr) 1989-11-03
GB2216368A (en) 1989-10-04
JPH028948A (ja) 1990-01-12
FR2627606A1 (fr) 1989-08-25

Similar Documents

Publication Publication Date Title
FR2630840A1 (fr) Procede et dispositif de controle de l'acces a un bus dans un systeme informatique
EP0167193B1 (fr) Système d'arbitrage des demandes d'accès de plusieurs processeurs à des ressources communes, par l'intermédiaire d'un bus commun
EP0063071B1 (fr) Procédé et dispositif de transmission de données numériques
BE1000819A3 (fr) Ordinateur comportant une unite de commande d'acces direct en memoire programmable.
FR2632096A1 (fr) Systeme de microcalculateur a bus multiple avec arbitrage d'acces aux bus
EP0063972B1 (fr) Procédé et dispositif d'allocation d'une ressource dans un système comportant des unités de traitement de données autonomes
CH616251A5 (fr)
AU1807988A (en) Node for servicing interrupt request messages on a pended bus
FR2578071A1 (fr) Installation de multitraitement a plusieurs processus
FR2517442A1 (fr) Dispositif d'interruption pour un systeme de multitraitement, procede pour sa commande et systeme pour sa mise en oeuvre
FR2490434A1 (fr) Dispositif de resolution des conflits d'acces et d'allocation d'une liaison de type bus interconnectant un ensemble de processeurs non hierarchises
FR2519442A1 (fr) Systeme d'attribution de l'acces a un bus utilise en mode partage
WO2010070222A1 (fr) Gestionnaire physique de barriere de synchronisation entre processus multiples
EP0421614B1 (fr) Système de calculateur avec appareil pour améliorer l'efficience de communication entre un processeur maître et des dispositifs périphériques connectés par un bus SCSI
AU1930388A (en) Interrupting node for providing interrupt requests to a pended bus
FR3103585A1 (fr) Procédé de gestion de la configuration d’accès à des périphériques et à leurs ressources associées d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant
FR2860896A1 (fr) Procede d'arbitrage de l'acces a une ressource partagee
CA2006936C (fr) Procede de deblocage d'un systeme multiprocesseurs multibus
EP0032862A1 (fr) Dispositif pour superposer les phases successives du transfert des informations entre plusieurs unités d'un système de traitement de l'information
FR2702061A1 (fr) Dispositif de traitement d'informations.
FR2656707A1 (fr) Procede d'exploitation d'un bus d'ordinateur.
CA2190927A1 (fr) Systeme de regulation de trains d'information pour commutateur paquet
EP0463901B1 (fr) Procédé de dialogue entre les processeurs d'un système, système pour sa mise en oeuvre et utilisation pour la répartition des processus aux processeurs
FR2717921A1 (fr) Dispositif de gestion de conflit d'accès entre un CPU et des mémoires.
FR2632093A1 (fr) Memoire modulaire

Legal Events

Date Code Title Description
ST Notification of lapse
AR Application made for restoration
DS Decision of the director general to state about an appeal