FR 2547934 A1 19841228 FR 8310247 A 19830621 Installation de calcul à commutation automatique de périphériques et périphérique propre à de telles commutations La présente invention concerne les installations de calcul susceptibles d'incorporer plusieurs calculateurs fonctionnant de façon indépendante, prévus pour être associés à des périphériques d'entrée ou de sortie (tels que lecteurs de cartes, unités de disques, imprimantes, modems, ) Dans les installations actuelles, chaque calculateur indépendant est muni de périphériques qui lui sont affectés, même lorsque chacun de ces périphériques serait propre à être utilisé, éventuellement par l'intermédiaire d'un adaptateur, avec l'un quelconque des calculateurs On connaît toutefois des dispositifs permettant de commuter, par voie mécanique, un périphérique sur l'un ou l'autre des calculateurs, pour remplir les besoins pour un programme de calcul particulier. Ces commutations mécaniques présentent les défauts de commu15 tation inhérents a la technologie et, au surplus, s'adaptent très mal au caractère aléatoire du besoin de connexion des divers calculateurs à un périphérique déterminé. La présente invention vise à réaliser une économie notable sur les installations comportant plusieurs calcula20 teurs qui, au cours de leur fonctionnement, doivent temporairement coopérer avec des périphériques de même nature pour plusieurs calculateurs Dans ce but, l'invention propose notamment une installation comprenant plusieurs calculateurs numériques et un périphérique capable de coopérer avec l'un 25 quelconque des calculateurs, caractérise en ce qu'elle comprend des moyens pour, en réponse à une demande d'accès au périphérique émise par l'un des calculateurs, provoquer l'6 tablissement de la liaison entre le calculateur et le périph 6rique, si ce dernier est libre, et interdire l'accès au périphérique par les autres calculateurs pendant une durée déterminée ou la durée d'occupation. 254 ? 934 L'invention est susceptible de nombreux modes de réalisation, chaque fois qu'il y a un nombre de calculateurs supérieur au nombre de périphériques de même type Plusieurs périphériques de types différents peuvent chacun être équipé 5 de façon à être utilisable en alternance par les divers calculateurs. Les moyens d'établissement de la liaison dépendront évidemment de la nature du périphérique Dans certains cas, par exemple celui d'un périphérique d'entrée tel qu'un lecteur, il suffira d'établir la liaison, le calculateur se chargeant ultérieurement des commandes nécessaires Dans d'autres cas, par exemple celui d'une imprimante, des commandes supplémentaires pourront être nécessaires pour bien séparer les données provenant des divers calculateurs Cette 15 séparation peut notamment se faire par saut de page ou inscription d'indications de référence O L'invention porte non seulement sur l'installation dans son ensemble, mais aussi sur des périphériques équipés des moyens nécessaires pour les incorporer directement dans 20 l'installation, notamment par branchement sur chacun des calculateurs de l'installation, comme on le verra plus loin. L'invention sera mieux comprise à la lecture de la description qui suit d'installations qui en constituent des modes particuliers de réalisation donnés à titre d'exemples 25 non limitatifs La description se réfère aux dessins qui l'accompagnent, dans lesquels: la fig 1 est un synoptique de principe montrant les moyens de commutation prévus dans l'installation pour permettre l'accès de trois calculateurs appartenant à l'ins30 tallation à un périphérique d'entrée commun, constitué par un lecteur de cartes, la fig 2 est un synoptique de principe montrant une installation à quatre calculateurs et deux périphériques banalisés, la fig 3 est un chronogramme des signaux échangés dans l'installation lors de l'établissement du dialogue entre les calculateurs et le lecteur de cartes. les fig 4 a et 4 b sont des synoptiques de principe montrant la logique et les moyens de cnommutation prévus dans 1 ' installation pour permettre l'accès de deux calculateurs appartenant à l'installation à un périphérique de sortie cmimun, constitué par une imprimante, la fig 5 est un chronogramme des signaux échangés entre calculateurs et imprimante,les diverses lignesmontrant l'allure des signaux qui apparaissent aux points des fig 4 a et 4 b portant la meme désignation. 45 Les moyens de commutation représentés schématiquement -3 à la figure 1 sont destinés à être raccordés, d'une part, à un connecteur 10 équipant le lecteur de cartes d'autre part, aux connecteurs 12 a, i 2 b et 12 c équipant chacun l'un des calculateurs (non représentés). Le mode de fonctionnement des calculateurs et celui du lecteur de cartes restent inchangés Lorsqu'un calculateur doit accéder au lecteur de cartes, il y a émission d'un signal sur un plot particulier du connecteur associé (ces plots étant représentés en 13 a, 13 b-et 13 c) On supposera 10 que la logique interne du calculateur est telle que le signal de demande d'accès est constitué par un passage au niveau logique 1 sur le plot correspondant 13, le niveau revenant à zéro une fois la carte lue Il faut noter à ce sujet que les moyens de commutation peuvent être adaptés au 15 cas o un calculateur fonctionne en logique positive, un autre en logique négative, moyennant la simple adjonction d'adaptateurs. Les moyens montrés en figure 1 sont prévus pour autoriser l'accès au lecteur de cartes par un calculateur lorsque 20 le lecteur est libre, puis pour interdire l'accès par les autres calculateurs pendant que le premier dialogue avec le lecteur de cartes. Pour cela, les moyens représentés utilisent le fait que le dialogue n'est établi qu'à réception par le calcula25 teur d'un signal "PRET" du lecteur Les moyens inhibent la réception de ce signal par les autres calculateurs une fois une demande d'accès reçue du premier calculateuro Ce résultat est atteint, en interposant, entre la borne de demande d'accès 13 (émission du signal fréquemment dénommé "Pick command" et la borne 14 de réception du signal "PRET" sur le connecteur correspondant, un circuit qui est le même pour chacun des calculateurs Seul le circuit 15 a associé au premier calculateur sera décrit Il comporte, à partir du plot 13 a, un organe de mise en forme 16 a qui sera géné35 ralement une bascule de Schmitt,qui attaque une porte ET 17 a à autant d'entrées qu'il y a de calculateurs La sortie de cette porte 17 a est appliquée à une mémoire, constituée sur la figure 1 par un monostable 18 a dont la durée de maintien est compatible avec le temps de lecture: cette durée de maintien sera par exemple de 4 secondes Au lieu d'un mono5 stable, on pourrait utiliser un circuit qui change d'état à réception du signal provenant de la porte 17 a et y reste jusqu'à libération du lecteur de cartes Les deux autres entrées de la porte ET 17 a sont reliées aux sorties Q des monostables 18 b et 18 c commandés par les signaux de demande 10 d'accès provenant des deux autres calculateurs De même, la sortie T du monostable 18 a est appliquée aux portes ET 17 b et 17 c des circuits associés aux autres calculateurs. La sortie Q du monostabie 18 a attaque un bloc 19 a destiné à autoriser ou à inhiber l'arrivée du signal "prêt" fourni par un plot 20 du connecteur 10 du lecteur, à la borne de réception 14 a Le bloc 19 a comporte une porte 21 a qui reçoit sur une entrée le signal provenant de la sortie Q du monostable, sur l'autre entrée, le signal "prêt" provenant du lecteur La sortie de la porte ET 21 a 20 est transmise, par une porte OU 22 a, au plot 14 a. La seconde entrée de la porte 22 a est reliée à la sortie d'une porte OU/NON 23 dont les entrées sont reliées aux trois portes ET 17 a, 17 b et 17 c et dont la sortie constitue l'ordre "Pick command" appliqué au plot 24 corres25 pondant du connecteur 10 du lecteur. Le dispositif qui vient d'être décrit fonctionne de la façon suivante On supposera tout d'abord que le-lecteur est libre, n'étant en liaison avec aucun des calculateurs Les trois monostables 18 a, 18 b et 18 c sont en position de repos Leurssorties T appliquent des niveaux hauts aux portes 17. Si l'on suppose qu'un signal "Pick command" de demande d'accès au lecteur est appliqué par le premier calculateur sur le plot 13 a, ce signal est transmis par la porte 17 a 35 débloquée et par la porte OU 23 au plot 24 de demande d'accès du lecteur Ce changement d'état de la sortie de la porte 23 est reproduit sur l'entrée des portes OU des blocs 19 a, 19 b et 19 c Le changement d'état de la sortie de la porte 17 a ayant fait basculer le monostable 18 a, la sortie Q de ce-dernier a changé d'état et débloqué la porte ET 21 a autorisant le passage du signal "prêt" fourni par le lecteur sur sa sortie 20 à la porte OU 22 a: cette dernière transfère le signal "prêt" au plot 14 a, autorisant l'établissement de la liaison. Si, pendant que la liaison est établie, un autre calculateur demande l'accès au lecteur de cartes, la demande d'accès se trouve bloquée par la porte 17 correspondante. Les moyens de commutation montrés en fig 1 peuvent être utilisés tels quels ou avec des modifications limitées dans des installations très diverses. Les moyens montrés en figures 4 a et 4 b sont prévus pour autoriser l'accès à une imprimante par deux calculateurs A et B Pour l'installation donnée à titre d'exemple, dix-neuf signaux sont échangés entre l'interface calculateur et l'imprimante 34. -ad (Prêt): signale que l'imprimante 34 est prête à être mise en ligne par l'opérateur. -On line (en ligne): l'imprimante est connectée en automatique. -Data demand (demande de données): signal de transmission de données. -Data stobe (validation de données): signal de validation des données. -Data 1 7 (données 1 7): signaux de données (code ASCII) -Paper instruction(instruction papier):signal de déroulement du papier. -TOP (haut): position haut de page. Les autres signaux sont des données d'état. Dans le cas particulier évoqué, une priorité est donnée au calculateur A Dans le cas o une permutation est demandée par le calculateur prioritaire alors que l'imprimante est occupée, la permutation n'est effective qu'à la détection du signal "haut de page" Le retour vers le calculateur B en fin de transfert de A est précédé d'une commande de saut de page, de manière à bien séparer les informations. Si aucun calculateur n'a besoin de l'imprimante, cellle-ci est connectée au calculateur B Les signaux P et N sont à zéro. ( 1) L'arrivée du signal de validation du calculateur prioritaire (data Strobe A) entraîne la montée du mo10 nostable 40 a) si le monostable 42 est à zero (ce qui indique que l'imprimante est libre), le monostable 44 passe à 1 et force le basculeur 46 à l'état 1, entrainant une cranutation nédiate sur le calculateur A; 15 b) si le monostable 42 est à l'état 1 (ce qui indique que l'imprimante 34 est occupée par le calculateur B) le monostable 44 ne sera déclenché qu'à la détection du signal TOP (haut de page) Le basculement de 44 mémorise l'état de 42 et entraîne le passage à l'état 1 du basculeur 46 qui assure la commutation. ( 2) Lorsque le calculateur A a terminé ses transferts, et après temporisation, le monostable 40 retombe à zéro, le monostable 48 passe à l'état 1 11 s'ensuit que: 25 a) si le basculeur 50 est à l'état zéro (ce qui indique que le calculateur B n'utilisait pas l'imprimante), le basculeur 46 est forcé à zéro: l'imprimante est immédiatement aiguillée vers le calculateur B. b) si le basculeur 50 est à l'état 1 (ce qui indique que le calculateur B utilisait l'imprimante), le basculeur 52 passe à l'état 1 et force un saut de page (Génération du signal "Paper Instruction" avec nise à zéro-de DATA 1 7) A l'apparition 35 du signal TOP (haut de page), le basculeur 52 est remis à zéro, entrainant la remise à zéro de 50 puis de 46 L'imprimante est alors aiguillée vers le calculateur B. Le chronogramme de la fig 5 montre, à titre d'exemple, l'échelonnement des signaux à la suite d'une demande de commutation de l'imprimante 34 sur le calculateur A, à l'ins5 tant t 1 alors que le monostable 42 est à l'état haut (cas lb ci-dessus) La commutation sur le calculateur A n'intervient alors qu'en réponse à la détection du signal TOP à l'instant t 2 Le monostable reconductible 40 reste à l'état 1 pendant une durée déterminée ( 20 S par exemple) après l'instant t 3 de fin de transfert à partir du calculateur A Le retour à zéro du monostable 40 provoque le passage à 1 du monostable 48,de durée très faible par rapport à celle de 40 ( 200 ns au lieu de 20 S par exemple) et l'émission de l'ordre de saut de page "paper instruc15 tion" à l'instant t 4 Puis, dès apparition du signal TOP, à l'instant t 5, il y a retour du branchement de l'imprimante sur le calculateur B et fin du signal "PAPER INSTRUCTION". La fig 2 montre, à titre d' autre mode particulier d'exé20 cution, une installation comportant un centre de calcul à trois calculateurs 26 a, 26 b et 26 c travaillant en parallèle et un calculateur de rechange 26 do Le centre de calcul peut par exemple constituer un simulateur de conduite de réacteur de puissance à eau sous pression Le cen25 tre de calcul doit alors permettre: l'exécution des calculs de simulation, le contrôle et la commande du processus simulé, le contrôle et la commande des périphériques, l'exécution des programmes de maintenance, l'exécution des programmes d'aide au développement de logiciel. Pour cela, le centre de calcul comporte de nombreuses entrées/sorties industrielles 28 vers la salle de commande, des mémoires à grande capacité (à disque dur 29 et bande magnétique 30 par exemple), un générateur de caractères 31, etc ainsi qu'une mémoire vive 32 accessible par tous les calculateurs et s'ajoutant aux mémoires individuelles telles que 33 a des unités centrales, ou CPU. Deux périphériques de l'installation sont peu utili40 sés: il s'agit de l'imprimante 34 et du lecteur de cartes S'ils sont en effet indispensables pour l'initialisation et le démarrage journalier du simulateur, le reste du temps ils ne sont guère utilisés que sur le centre-de cal- _ 8 _ 2547934 cul annexe employant le calculateur 26 d et pendant les travaux de maintenance. L'utilisation d'un seul lecteur 35 et d'une seule imprimante 34 au lieu de quatre représente une économie considérable. De façon plus précise, le lecteur de cartes 35 est utilisé pendant les phases d'initialisation, de démarrage et de maintenance des calculateurs 26 a-c et sur le centre de calcul annexe 26 d pour le développement de logiciel. Aucune priorité n'a été définie: la commutation s'effectue automatiquement vers le calculateur qui en fait la demande. Un système d'occupation interdit toute nouvelle commutation tant que le lecteur de cartes est occupé. Par contre, l'imprimante 34 est normalement connec15 tée sur le calculateur 26 a du simulateur pour permettre l'impression des messages du moniteur temps réel qui n'est pas capable d'éditer ses messages à posteriori Mais l'imprimante est surtout utilisée comme périphérique de sortie du centre de calcul annexe, pour les -travaux en lots sur le 20 simulateur et pour les opérations de maintenance. La banalisation du lecteur de cartes 35 et de l'imprimante 34 s'effectue en affectant à chacun un commutateur 36 ou 37 du genre montré en figure 1, relié aux coupleurs 38 a 38 d des calculateurs. Les signaux échangés entre le calculateur demandant l'accès et le périphérique banalisé dépendent de la nature du matériel, Dans une installation représentative, dont les calculateurs sont des SEL 32/77 et le lecteur un modèle de commerce, la liaison entre le lecteur de cartes 35 et le coupleur 38 a-d d'un calculateur est assurée par dix-neuf signaux, dont dix-huit sont envoyés par le lecteur au coupleur. -9 Ces signaux et leur identification sur le matériel sont: 12 signaux de données (DATA 1 à DATA 12), 1 signal d'erreur (ERROR), 1 signal de vérification du magasin (HOPPER CHECK), 1 signal occupé (BUSY), 1 signal de validité des données (INDEX MARKS), 1 signal de vérification des mouvements (MOVER CHECK), 1 signal "prêt" (READY). Le coupleur 38 a-d n'émet qu'un seul signal vers le lecteur 35, le signal de demande de lecture (PICK COMMAND). Lorsqu'un calculateur, 38 a par exemple, fait une demande pour lire des cartes, deux cas peuvent se présenter: 1) Le lecteur est occupé; le calculateur voit alors le 15 lecteur "No Ready" Le signal de demande de lecture (PICK COMMAND) est bloqué. 2) Le calculateur voit le lecteur "Ready" Le commutateur signale alors aux trois autres calculateurs que le lecteur est "No Ready" (signal "Ready" à 9) De plus, 20 afin d'éviter tout conflit entre calculateurs et lecteur, le signal "Ready" modifié est mémorisé pendant un temps T. En résumé, seul le signal "Ready" est modifié à partir des signaux "PICK COMMAND" issus des différents cal25 culateurs Le signal "PICK COMMAND" n'est pas modifié si le calculateur est en dialogue avec le lecteur; par contre ce signal n'est pas transmis si le lecteur est déjà en liaison avec un autre calculateur ou si la période T n'est pas terminée. Tous les autres signaux sont transmis sans aucune altération, par l'intermédiaire de circuits tampons en général. Le logigramme de la figure 3 montre un échelonnement possible d'utilisation -du lecteur de cartes par les trois calculateurs Les lignes A 1, B 1, C 1 et D 1 donnent le niveau logique du signal "Ready" arrivant aux coupleurs des calculateurs; les lignes A 2, B 2, C 2 et D 2 donnent les si- gnaux "Pick Command" émis par ces coupleurs. On voit qu'aux instants to, t 1, t 2 les signaux "Ready" sont à 1 et que les calculateurs 26 c, 26 a et 26 b obtiennent l'accès immédiat en provoquant le passage à zéro du signal "Ready" pour les trois autres calculateurs, ce qui leur interdit de dialoguer avec le lecteur jusqu'à l'expiration du temps To Dans la pratique, on pourra réaliser les portes et les monostables de temporisation en logique TTL et implan10 ter le commutateur dans une armoire de calculateur L'alimentation peut être prévue à partir du lecteur pour eviter d'avoir à mettre le calculateur sous tension lorsqu'on veut relier le lecteur aux autres calculateurs Les liaisons peuvent être réalisées par des connecteurs plats classiques. 15 L'installation pourrait comporter un nombre de calculateurs différents de 4 et les périphériques banalisés être en nombre accru et comprendre par exemple une unité à bandes magnétiques. Il va sans dire que la portée du présent brevet s'étend à de telles variantes, ainsi plus généralement qu'à toutes autres restant dans le cadre des équivalences. REVENDICATIONS 1 Installation de calcul comprenant plusieurs calculateurs numériques ( 26 a, 26 b, 26 c, 26 d) et au moins un périphérique ( 34,35) capable de coopérer avec l'un quelconque des calculateurs, caractérisé en ce qu'elle comprend 5 des moyens ( 36,37) pour, en réponse à une demande d'accès au périphérique émise par l'un quelconque des calculateurs, provoquer l'établissement de la liaison entre le calculateur et le périphérique, si ce dernier est libre, et interdire l'accès au périphérique par les autres calculateurs pendant une durée déterminée (T) ou la durée d'occupation. 2 Installation suivant la revendication 1, caractérisé en ce que les moyens sont prévus pour donner une priorité d'accès au périphérique à l'un des calculateurs. 3 Installation selon la revendication 1 ou 2, ca15 ractérisé en ce que, le dialogue n'étant établi qu'à réception par le calculateur d'un signal "Prêt" du périphérique, les dits moyens sont prévus pour inhiber la réception du signal "Pret" par les autres calculateurs une fois une demande d'accès reçu d'un premier calculateur. 4 Installation selon la revendication 3, caractérisé en ce que les dits moyens comprennent, entre la borne de demande d'accès ( 13) de chaque calculateur et la borne ( 14) de réception du signal "Prêt" par le même calculateur, un circuit particulier pour chaque calculateur, comprenant 25 une porte ET ( 17) à autant d'entrées qu'il y a de calculateurs, la sortie de cette porte étant appliquée à une memoire de maintien d'inhibition ( 18), l'une des entrées de la porte ET affectée à un calculateur étant reliée à la borne de demande d'accès du calculateur tandis que les au30 tres entrées de la porte ET sont reliées aux mémoires comnandées par les signaux de demande d'accès provenant des autres calculateurs, la sortie de la mémoire affectée à un calculateur donné attaquant un bloc ( 19) d'autorisation et d'inhibition de l'arrivée du signal "Prêt" provenant du 35 périphérique.