Brevet FR2531550A1 — publié le 19840210

La présente invention concerne un disposi- tif d'informations de couplage universel, pour la mise en communication d'ensembles de traitements compre- nant au moins des calculateurs ou processeurs, avec au moins une unité périphérique Elle s'applique notam- ment aux ensembles multicalculateurs dans lesquels il est nécessaire d'échanger des informations entre les mémoires de plusieurs ensembles de traitement et une ou plusieurs unités périphériques, telles que dérou- leurs de bandes magnétiques ou disques par exemple. D'une façon générale, un ensemble de traite- ment est une entité logique de traitement pouvant com- porter un ou plusieurs processeurs ou calculateurs, éventuellement réalisés à l' aide de microprocesseurs et des unités d'entrée-sortie et éventuellement des unités périphériques. On connaît des dispositifs de couplage qui permettent de gérer les échanges d'informations entre plusieurs ensembles de traitement et au moins une uni- té périphérique; généralement, ces dispositifs de couplage sont conçus en fonction de chaque type de périphérique à mettre en communication avec plusieurs ensembles de traitement; il en résulte que la con- nexion d'un autre type de périphérique, oblige l'uti- lisateur à concevoir un nouveau dispositif de couplage adapté au nouveau périphérique choisi Cette impossi- bilité de banaliser le raccordement de périphériques de types quelconques dans un ensemble multicalcula- teurs entraîne des délais très longs de raccordement, un investissement élevé à l'occasion de chaque coupla- ge d'un nouveau périphérique, un nombre de dispositifs distincts de couplage pour un même ensemble multical- culateur, des choix difficiles d'unités périphéri- ques. L'invention a pour but de remédier à ces in- convénients, et notamment de réaliser un dispositif de couplage entre plusieurs ensembles de traitement cal- culateurs par exemple, et au moins une unité périphé- rique qui permet, de façon simple, le raccordement d'une unité périphérique d'un type quelconque avec plusieurs processeurs ou calculateurs, même si cette unité et ces processeurs ont des spécifications fonc- tionnelles qui rendent ordinairement leurs fonction- nements difficilement compatibles Ce dispositif de couplage, outre le fait qu'il autorise et qu'il sim- plifie la connexion de n'importe quelle unité périphé- rique avec des ensembles de traitement, permet égale- ment de gérer facilement les conflits de demandes d'accès des ensembles de traitement à chaque unité pé- riphérique De plus, l'invention a pour but d'augmen- ter la disponibilité d'accès entre des ensembles de traitement et une unité périphérique en offrant un ac- cès par deux bus physiquement distincts. L'invention a pour objet un dispositif de couplage universel pour la mise en communication d'en- sembles de traitement d'informations et d'au moins une unité périphérique, chaque ensemble de traitement com- prenant au moins un processeur et un bus d'éhanges pour échanger des informations avec l'unité périphéri- que Ce dispositif est caractérisé en ce qu'il com- prend des contrôleurs de bus reliés respectivement aux bus d'échanges et à un bus local lui-même relié à l'unité périphérique par l'intermédiaire de moyens de commande d'échanges de données et de traitement des informations de commandes et d'états, les contrôleurs de bus étant aptes à gérer les protocoles d'accès aux bus d'échanges, les échanges d'informations sur les bus d'échanges et sur le bus local ainsi que toute demande faite par un processeur pour accéder au bus local. Selon une autre caractéristique, les moyens de commande comprennent un microprocesseur de gestion de priorités des demandes d'accès des processeurs et de traitement des commandes et des états contenus dans les informations échangées sur le bus local des moyens de sélection reliés aux contrôleurs de bus et commÉn- dés par le microprocesseur de gestion, pour sélection-. ner en fonction des priorités, le contrôleur apte à assurer un-échange de données sur le bus locale et un registre tampon d'entrée et de sortie relié au bus local et à l'unité périphérique pour recevoir les don- nées à transmettre à l'unité périphérique ou pour re- cevoir les données à transmettre à l'un des proces- seurs. Selon une autre caractéristique, les moyens de sélection comprennent un circuit de contrôle de co- de des données, reliant le bus local avec le registre tampon d'entrée et de sortie. Enfin, selon une autre caractéristique, le circuit de contrôle comprend une mémoire tampon reliée au bus local et au registre tampon d'entrée et de sor- tie, et un dispositif relié à cette mémoire, pour con- trôler un code de type "cyclique" des données. Les caractéristiques et avantages de l'in- vention resortiront bien de la description qui va sui- vre donnée en référence à la figure unique annexée qui représente schématiquement l'ensemble de couplage conforme à l'invention. L'ensemble de couplage 1 représenté schéma- tiquement sur la figure, permet de mettre en communi- cation des ensembles de traitement 4 et 5, avec au moins une unité périphérique 6, telle qu'un dérouleur de bande magnétique ou un disque par exemple Les pro- cesseurs 2, 3 de ces ensembles de traitement sont res- pectivement reliés à des contrôleurs de bus 7, 8 qui permettent l'échange des informations entre les ensem- bles de traitement et l'unité périphérique 6 Ces échanges d'informations sont effectués à travers des bus d'échanges 9, 10, chacun de ces bus étant associé aux processeurs de chaque ensemble de traitement Ces informations contiennent de façon connue, des données, des commandes et des états, exprimés sous forme binai- re Les commandes sont des ordres qui sont donnés aux ensembles de traitement ou à l'unité périphérique pour l'exécution d'une action Les états permettent d'ex- primer sous forme binaire les situations dans lesquel- les se trouvent l'unité périphérique, avant, pendant ou après l'exécution d'une action Les bus 9, 10 d'échanges représentés schématiquement sur cette fi- gure, sont bien connus dans l'état de la technique et peuvent être par exemple des bus définis par la norme I EEE 488 Dans l'exemple de réalisation considéré, on a -limité à un le nombre d'unités périphériques, et à deux le nombre de bus d'échanges 9, 10, mais il est bien évident que ces nombres peuvent être différents. Par exemple, l'unité périphérique 6 pourrait être rem- placée par une série d'unités périphériques reliées en série ou en parallèle. L'ensemble de couplage 1 comprendpour chaque bus d'échanges 9, 10, un contrôleur de bus Ces con- trôleurs de bus 18, 19 sont reliés à un bus local 17 et assurent la gestion des protocoles d'accès aux bus spécifiques 9, 10 correspondants Ces contrôleurs de bus sont connus et peuvent être par exemple des con- trôleurs du type TMS 9914 définis par la norme I EEH 488 Les protocoles, de façon connue, sont des conven- tions qui définissent le déroulement des échanges d'informations entre les bus spécifiques 9, 10 et les contrôleurs de bus 18, 19. Le dispositif comprend aussi des moyens de commande 21 qui comportent un microprocesseur 22 -asso- cié à une mémoire programme 23 e ce microprocesseur permet de gerer les priorités des demandes d'accès des processeurs 2, 3 des ensembles de traitement 41 5 et il permet également de traiter les commandes et les états contenus dans 'les informations échangées sur le bus local 17 o Ces commandes et ces états sont fournis. ou reçus par le microprocesseur de gestion 22 sur un îo bus de commande 24 et sur un bus d'état 25 Les moyens de conimande comprennent aussi des moyens de sélection 26 qui sont reliés aux contrôleurs de bus 18, 19 et qui sont commandés par le microprocesseur de gestion. 22, pour sélectionner'en fonction des priorités, celui de ces contrôleurs qui peut assurer 'à un instant don- né, un échange de données - Les moyens de commande comprennent aussi un registre d'entrée et de sortie 27 qui est relié au bus local 17 et à l'unité périphérique 6, pour recevoir les données à transmettre à cette unité périphérique ou pour rece- voir les données à transmettre à l'un des processeurs 2, 3 Les moyens de commande 21 comprennent aussi un circuit 30 contrôlant le code des données échangées sur le bus local 17 et reliant ce bus avec le registre d'entrée et de sortie 27 Ce circuit de contrôle peut être constitué, de façon connue, par une mémoire tam- pon 29 reliée au bus local 17 et au registre d'entrée et de sortie 27, ainsi qu'un dispositif 30 relié à cette mémoire tampon 29, pour contrôler le code de type cyclique des données échangées sur le bus 17. Les moyens de sélection 26 comprennent pour chaque contrôleur de bus d'échange un circuit de com- mande d'écriture ou de lecture, associé au micropro- cesseur de gestion, pour commander, par l'intermé- diaire du contrôleur correspondant, la lecture ou l'écriture des informations sur les bus d'échanges 9, 10. Les moyens de sélection 26 comprennent aussi un circuit de commande d'écriture ou de lecture, relié au microprocesseur de gestion 22 et au registre d'en- trée et de sortie 27, pour commander la lecture des données qui sont fournies par l'unité périphérique 6 et qui sont contenues dans le registre d'entrée et de sortie 27, ou pour comimander l'écriture dans ce regis- tre, de données qui proviennent du bus local 17 et qui sont fournies par l'un des ensembles de traitement 2, 3. Les moyens de sélection 26 sont bien connus dans l'état de la technique et n'ont pas besoin d'être décrits ici en détail. L'ensemble qui vient d'être décrit fonc- tionne de la manière suivante: lorsque l'ensemble de traitement 4 par exemple souhaite accéder à l'unité périphérique 6, il envoie au microprocesseur de ges- tion 22 un bloc de données appelé bloc de commande En fonction de la disponibilité du périphérique 6, par rapport à d'autres demandes que celle de l'ensemble de traitement 5 par exemple, le microprocesseur de ges- tion 22 répond par l'émission d'un bloc de données appelé "accusé de réception" commande et positionne les commandes nécessaires au périphérique 6 sur le bus de commande 24, avec, si nécessaire, contrôle des états du périphérique sur le bus d'état 25 Ensuite lorsque, par exemple l'ensemble de traitement 4 sou- haite écrire des données dans le périphérique 6, il envoie son bloc de données sur le bus 9 à destination de la mémoire tampon 29 Sous le contrôle du micropro- cesseur 22 le dispositif de contrôle 30 vérifie l'ab sence d'erreur dans le bloc de données Ce bloc de données est enfin transmis de la mémoire tampon 29 au périphérique 6 par le registre d'entrée et de sortie 27 Après lecture du bus d'état 25, le microprocesseur 22 envoie à l'ensemble de traitement 4 un bloc de don- nées appelé compte rendu d'exécution précisant si le transfert global des données a été correctement exécu- té jusqu'au périphérique 6. Dans ce qui précède l'échange élémentaire d'information fonctionne de la manière suivante: lorsque l'ensemble de traitement 4 par exemple, sou- haite envoyer une donnée élementaire à l'ensemble de couplage 1, le contrôleur de bus 18 envoie au moyen de sélection 26 une demande REQ Le moyen de sélection 26 fournit un signal d'acceptation de demande ACQ et transfère la donnée élementaire, dans la mémoire tam- pon 29, grâce au bus local 17, en envoyant au contr 8- leur de bus 18, un signal de commande de lecture R. De la même manière, le moyen de sélection 26 fournit également au registre d'entrée ou de sortie 27, un signal W de commande d'écriture de données Les données sont transférées dans ce registre, après avoir été renregistrées dans la mémoire tampon 29, de maniè- re que le dispositif 30 contrôle le code cyclique de ces données Les autres informations telles que les commandes ou les états, qui sont transmises par le bus spécifique 9 et qui proviennent de l'ensemble de trai- tement 4, transitent sur le bus local 17; elles sont traitées par le microprocesseur de gestion 22, de ma- nière à être fournies à l'unité périphérique 6 Les mêmes opérations seraient effectuées si l'unité péri- phérique 6 émettait une demande pour accéder à l'en- semble de traitement 4 ou à l'ensemble de traitement 5. Il est bien évident que dans l'ensemble qui vient d'être décrit, les moyens utilisés auraient pu être remplacés par des moyens équivalents, sans sortir du cadre de l'invention. 253-1550 REVENDICATIONS 1 Dispositif de couplage universel pour la mise en communication d'ensembles de traitement ( 4, 5) d'informations et d'au moins une unité périphérique ( 6), chaque ensemble ( 4 ou 5) de traitement comprenant au moins un processeur ( 2 ou 3) et un bus d'échanges ( 9 ou 10) pour échanger des informations avec l'unité périphérique ( 6), dispositif caractérisé en ce qu'il comprend des contrôleurs de bus ( 18, 19) reliés res- pectivement aux bus d'échanges ( 9, 10) et à un bus local ( 17) lui-même relié à l'unité périphérique ( 6) par l'intermédiaire de moyens de commande ( 21) d'échanges de données et de traitement des informa- tions de commandes et d'états, les contrôleurs de bus étant aptes à gérer les protocoles d'accès aux bus d'échanges ( 9, 10), les échanges d'informations sur les bus d'échange ( 9, 10) et sur le bus local ( 17), ainsi que toute demande faite par un processeur pour accéder au bus local ( 17). 2 Dispositif de couplage selon la revendi- cation 1, caractérisé en ce que les moyens de commande ( 21) comprennent un microprocesseur ( 22) de gestion de priorités des demandes d'accès des processeurs ( 2, 3) et de traitement des commandes et des états contenus dans les informations échangées sur le bus local ( 17), des moyens de sélection ( 26) reliés aux contrôleurs de bus ( 18, 19) et commandés par le microprocesseur de gestion, pour sélectionner en fonction des priorités, le controleur apte à assurer un échange de données sur le bus local ( 17), et un registre tampon ( 27) d'entrée et de sortie relié au bus local ( 17) et à l'unité périphérique ( 6) pour recevoir les données à transmet- tre à l'unité périphérique ( 6) ou pour recevoir les données à transmettre à l'un des processeurs ( 2, 3). 3 Ensemble de couplage selon la revendica- tion 2, caractérisé en ce que les moyens de sélection ( 26) comprennent un circuit de contrôle ( 28) de code des données, reliant le bus local ( 17) avec le regis- tre tampon ( 27) d'entrée et de sortie. 4 Ensemble de couplage selon la revendica- tion 3, caractérisé en ce que le circuit de contrôle ( 28) comprend une mémoire tampon ( 29) reliée au bus local ( 17) et au registre tampon d'entrée et de sortie 1: ( 27), et un dispositif ( 30) relié à cette mémoire ( 29), pour contrôler un code de type Ccyclique W des données.