Brevet FR2627606A1 — publié le 19890825

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 lois. De façon générale, on connaît 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, leprocessus 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. 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. 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 bccupé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 ceiui 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 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 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 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 Z62?606 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 nombre 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 demandeur, 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'arbitrage reçoit alors la demande et détermine si la 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 é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 é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 à une autorisation d'accès a 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ésente 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 n0 0 et la broche de demande d'accès au bus local 68 est associé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 nh 0 ou par le demandeur no 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 O O O NEANT O O 1 GRAPHIQUE 0 1 0 - ENTREE/SORTIE 0 1 1 MEMOIRE 35. 1 0 0 -TEST 1 0 1 RESERVE - 1 1 0 LOCAL 1 1 1 RETOUR 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 partitions 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 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 cirbulaire. 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 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 1D 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 il est utilisé pour produire le signal BUSAMOI de contrôle d'activation. La figure 4 illustre un bus 70 relié à une carte 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 le mode de réalisation -préféré, la carte processeur 71 contient quatre réseaux de portes d'arbitrage 72, 73, 74 et 75. Parmi ceux-ci, le réseau de portes d'arbitrage 72 peut être associé à une unité de traitement d'entiers de la carte processeur, le réseau de portes d'arbitrage 73 peut être associé à la voie de mémorisation d'une unité de traitement en virgule flottante et les deux réseaux de portes Cc ee, (Dl . qoYb e s _Kl e. ee3/ K,',,e {. o:Oes ','OC c _e \.;;, 1 -,- r.- - \le CIp5.e [ _,,À -_O" Ce,.,0. _.f..;v,:-5.'O',c,>.. j: e _Gose gs ', ?,' {,a 3' 'ç3.,3 *'.',5'',o"6c,..- J,..35.o ec,,.s'., '"%9% 9 S',- '..o ,_e -,,. j v. -_.' COoe, '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. -30 REVENDICATIONS 1. Un procédé de contrôle de l'accès à 'des ressources d'un système informatique, caractérisé en ce qu'il comprend les étapes suivantes: émission par un demandeur d'une.demande de prisé-en compte par une ressource, - détermination du point de savoir si cette ressource est ou non en mesure de prendre en compte la demande, et - si cette ressource est en mesure de prendre en compte la demande, autorisation donnée au demandeur d'accéder à cette ressource, de telle sorte que le demandeur n'obtienne l'accès à la ressource que si cette ressource est en mesure de prendre en compte la demande. 2. Le procédé de la revendication 1, comprenant en outre l'étape de détermination, parmi plusieurs demandeurs, de celui auquel on doit autoriser l'accès à la ressource. 3. Le procédé de la revendication 2, dans lequel ladite détermination est effectuée en fonction de priorités prédéterminées attribuées aux demandeurs. 4. Le procédé de la revendication 3, dans lequel les demandeurs comprennent des processeurs d'entrée/sortie (79)-, des processeurs graphiques (77) et des unités tentrales-de traitement (71). 5. Le procédé de la revendication 4, dans lequel les ressources comprennent un processeur d'entrée/sortie (79), un processeur graphique (77) et une pluralité de mémoires imbriquées (81).. 6. Le procédé de la revendication 5, dans lequel le demandeur émet la demande en direction d'un circuit d'arbitrage (50; 72-75, 78, 80) responsable de la détermination du point de savoir si la ressource est en mesure ou non de prendre en compte cette demande, et de la détermination du point de savoir si ce demandeur a ou non la priorité la plus élevée. 7. Le procédé de la revendication 6, dans lequel c'est au moyen d'un signal d'autorisation d'accès au bus émis par le circuit d'arbitrage que l'on autorise un demandeur a accéder à la ressource. 8. Un procédé pour contrôler l'accès à un bus (70) dans un système informatique, caractérisé en ce qu'il comprend les étapes suivantes: émission par un demandeur d'une demande de prise en compte par une ressource, - réception de cette demande par un circuit d'arbitrage (50; 72-75, 78, 80) associé à ce demandeur, ce circuit d'arbitrage déterminant si la ressource est ou non en mesure de prendre en compte la demande, - si la ressource est en mesure de prendre en compte la demande: (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 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. 9. Le procédé de la revendication 8, dans lequel les demandeurs comprennent un processeur d'entrée/sortie (79), un processeur graphique (77) et 'une pluralité d'unités centrales de traitement (71). 10. Le procédé de la revendication 9, dans lequel les ressources comprennent un processeur d'entrée/sortie (79), un processeur graphique (77) et une pluralité de mémoires imbriquées (81)' 11. Le procédé de la revendication 8, dans lequel le système informatique comporte une pluralité de circuits d'arbitrage (50; 72-75, 78, 80). 12. Le procédé de la revendication 11, dans lequel chacun des circuits d'arbitrage peut arbitrer entre une pluralité de demandeurs. 13. Le procédé de la revendication 12, comprenant en outre l'étape de détermination par chacun des circuits d'arbitrage de celui, parmi les demandeurs qui lui sont associés, qui possède la priorité la plus élevée. 14. Le procédé de la revendication 13, comprenant en outre l'étape consistant à effectuer, après chaque arbitrage favorable d'accès à une ressource, une permutation entre les niveaux de priorité des différents demandeurs affectés à un circuit d'arbitrage donné. 15. Un procédé de contrôle de l'accès d'une pluralité de demandeurs à un bus (70) dans un système informatique, caractérisé en ce qu'il comporte les étapes suivantes: - détermination, parmi une pluralité de demandeurs, de celui qui sera autorisé à accéder au bus, - autorisation d'accès donnée à un demandeur sélectionné, - changement d'.état d'un premier moyen formant signal, ce premier moyen formant signal étant appliqué à chacun des demandeurs de la pluralité de demandeurs, - changement d'état d'un second moyen formant signal, ce changement d'état du second moyen formant signal ayant lieu 62T1606 après le changement d'état du premier moyen formant signal, - restauration du premier moyen formant signal à -son état originel, - après cette restauration à son état originel du premier moyen formant signal, 'accès au bus par le demandeur sélectionné. 16. Un procédé applicable à un système informatique comportant une pluralité de ressources et une pluralité de - demandeurs demandant une prise en compte par ces ressources, caractérisé en ce qu'il comprend les étapes suivantes: émission, par un premier demandeur appartenant à ladite pluralité de demandeurs, d'une première demande de prise enr compte par une première desdites ressources, - détermination du point de savoir si cette ressource est ou non en mesure de prendre en compte la première demande, cette détermination étant faite en fonction d'une priorité attribuée au premier demandeur, - si la ressource est en mesure de prendre en compte la demande, autorisation donnée au demandeur d'accéder à cette ressource, modification de la priorité de ce premier demandeur en fonction d'un ensemble de conditions prédéterminées. 17. Le procédé de la revendication 16, dans lequel on modifie ladite priorité après un nombre prédéterminé de cycles d'horloge. 18. Le procédé de la revendication 17, dans lequel ledit nombre prédéterminé-est quatre. 19. 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. 20. Le dispositif de la revendication 19, 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. 21. Le dispositif de la revendication 20, dans lequel chacun des seconds moyens peut être relié à une pluralité de demandeurs. 22. Le dispositif de la revendication 21, 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). 23. Le dispositif de la revendication 22, 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). 24. Le dispositif de la revendication 23, comprenant en outre un bus (70) de liaison de la ressource aux demandeurs. 25. 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 21 2627606 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. 26. Le dispositif de la revendication 25, comprenant en outre un bus' (70) de liaison de la ressource aux demandeurs. 27. Le dispositif de la revendication 25, 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). 28. Le dispositif de la revendication 25, 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). 29. Un circuit de cont.rôle de l'accès d'une pluralité de demandeurs à un bus (70) dans un système informatique, caractérisé en ce qu'il comprend un premier moyen formant signal pour contrôler l'accès à ce bus, ce premier moyen formant signal étant relié à un premier demandeur appartenant à la pluralité de demandeurs, - un second moyen formant signal, ce second moyen formant -signal étant appliqué à chacun des demandeurs de la pluralité de demandeurs de manière à produire un signal de contrôle commun pour l'accès au bus, - un moyen formant circuit, pour permettre au premier demandeur de la pluralité de demandeurs d'accéder au bus, ce meyen formant circuit coopérant avec le premier moyen formant signal et avec le second moyen formant signal, ce moyen formant circuit permettant l'accès au bus lorsqu'un signal est émis à la fois par le premier et le second moyen formant signal et ne permettant pas l'accès au bus lorsqu'un signal n'est pas émis par le premier ou.par le second moyen formant signal, de manière à contrô61er l'accès à un bus par un signal de contrôle global et un signal de contrôle local. 30. Le circuit de la revendication 29, dans lequel le premier moyen formant signal ne peut changer d'état que lorsque le second moyen formant signal cesse d'émettre un signal., 31. Le circuit de la revendication 29, comprenant en outre un moyen formant signal de cadencement, ce moyen formant signal de cadencement produisant des impulsions d'horloge, le second moyen formant signal cessant d'être émis son signal pendant un intervalle de temps prédéterminé après que le front montant de chaque impulsion-d'horloge ait empêché tout conflit sur le bus.