Brevet FR2047938A1 — publié le 19710319

La présente invention concerne des systèmes calculateurs modulaires comprenant plusieurs unités de traitement, plusieurs unités d'emmagasinage et plusieurs unités périphériques d'entrée-sortie, et des-circuits de commutation associés à chaque 5 unité pour commander les interconnexions entre les unités» Le "brevet des Etats-Unis d'Amérique n° 3.386.082 du 28 mai 1968(correspondant au brevet britannique 1.108.819) décrit un système calculateur-modulaire-'dans-" lequel les unités peuvent être réagencées pour déconnecter des "unités dé-10 fectueuses et maintenir le système en fonctionnement. On connaît donc déjà un système calculateur" modulaire dans lequel les unités défectueuses peuvent être remplacées par des unités en parfait é tat de marche. De tels systèmes sont utilisés pour un 15 grand nombre d'applications de traitement de données. Les diverses exigences qu'imposent ce grand nombre d'applications diverses peuvent être satisfaites en utilisant les -unités en temps partagé mais, dans ce cas, il faut beaucoup de temps pour exécuter les opérations de surveillance et pour procéder aux 20 affectations, ce qui limite- l'utilité de- ces systèmes. Le'problème qui vient d'être évoqué est résolu selon l'invention par un système calculateur modulaire dans lequel un montage commande les circuits de commutation afin d'effectuer une répartition des unités du système en plu-25 sieurs systèmes calculateurs séparés'fonctionnant indépendamment l'un de l'autre. Cette solution présente 1'a.vanta.ge de permettre l'utilisation de ce même montage pour isoler les unités •défectueuses. 20 Un autre développement de l'invention se caractérise en ce que ledit montage peut comprendre une matrice de logique séparant les unités demanderesses des unités qui accordent le service, chaque point de croisement de la matrice de logique fournissant des signa,ux pour empêcher la communication 35 entre une seule unité demanderesse et une seule unité accordant un service. 0e montage organise les combinaisons possibles permettant des r4>artLtions dans un montage maniable,et il permet une commande aisée. 70 23463 2047938 Un autre développement de 1'invention se caractérise en ce que la matrice de logique peut être commandée par des signaux engendrés par un programme emmagasiné dans la matrice de logique. De cette manière la répartition en plusieurs 5 systèmes indépendants peut être réal'isée à des vitesses compatibles avec les vitesses de la machine» L'invention apparaîtra plus clairement à la lecture de la description détaillée qui va suivre,faite en regard des dessins joints sur lesquels : 1C - la figure 1 est un schéma fonctionnel général d'un système de commande de processus utilisant un système de traitement de données ; - la figure 2 est un schéma synoptique du câblage requis entre les unités de la commande centrale repré- 15 sentée sur la figure 1 ; - la figure 3 est un schéma fonctionnel montrant les relations entre les unités de la commande centrale; - la figure 4 est un schéma plus détaillé des montages d'accès de mémoire utilisés par lé processeur de la 20 commande centrale représentée sur la figure 3 ; - la figure 5 est un schéma plus détaillé de l'imité de commande de programme du processeur; = la figure 6 est un schéma plus détaillé de l'unité de commande .d'opérande du processeur; 25 - la figure 7 est un schéma plus détaillé de l'unité de commande arithmétique du processeur ; - la figure 8 est un schéma plus détaillé des unités de mémoire; - la figure 9 est un schéma plus détaillé 30 de l'imité de commutation d'interface; - la figure 10 est un schéma plus détaillé du contrôleur d'entrée-sortie; - la figure 11 est un schéma plus détaillé de l'unité de cadence et d'état ; 35 - la figure 12 est un schéma plus détaillé de la section état de l'unité de cadence et d'état de la figure 11 ; " - la figure 13 illustre un tableau d'affichage utile pour indiquer l'état d'un ordinateur tel que celui 'de la 40 figure 2 : 70 23463 2047938 -la figure 14 est un schéma général de la section logique de blocage de l'unité d'état de l'a figure' 12; - la figuré 15 est un exemple de fonctionnement du.circuit de blocage montré sous forme générale sur la 5 figure 14; - la figure 16 est vui schéma de là logique de commande de la matrice d'un dispositif demandeur de répartition montré sous forme simplifiée sur la figure 14» - la figure 17 est un schéma de là logique -]0 de commande de la matrice d'un dispositif à qui est demandé une répartition dans le montage de la figure 14; - lg. figure 18 est un schéma de la logique de commande de la matrice d'un dispositif isolé demandant ou à qui est demandé une répartition; 15 - la figure 19 est un schéma de la logique d'un point de croisement de la matrice ; Dans la forme de réalisation décrite à titre d'exemple, la répartition est réalisée par un système d'unités de commutation d'interface réalisant les interconnexions entre 20 chacune des unités connectées dans le système de traitement de damées,, Chaque imité de commutation est commandée par un signal de blocage qui inhibe tout transfert de signal entre chaque paire d'unités sélectionnées. Ces signaux de blocage sont engendrés, dans la forme de réalisation décrite, par une matrice de logique à n dimen-25 sions, où n est le nombre total de répartitions voulues „Chaque unité du système de traitement de données est représentée par les colonnes, rargs et plans de la matrice, et chaque interconnexion est représenté par un point de croisement de la matrice» Les colonnes, rangs et plans de la matrice de logique peuvent être 3C utilisés pour sélectionner la répartition à laquelle appartient chaque unité.La matrice peut être commandée par des signaux engendrés par des commutateurs manuels ou des signaux engendrés par un programme. Ce montage présente l'avantage supplémentaire 35 d'assurer l'isolement, la segmentation ainsi que la répartition. Par "isolement" on entend la séparation d'une seule unité du restant du système de traitement de données, c'est-à-dire que toutes • ses unités de commutation d'interface sont bloquées. L'isolement est normalement utilisé pour les processus de maintenance. 70 23463 4 2047938 la"segmentation"consiste à séparer plusieurs ■unités du système de traitement de données, le nombre d'unités ainsi séparées étant inférieur au nombre requis pour réaliser un système fonctionnant de manière indépendante„La segmentation est 5 normalement utilisée pour des processus de test. Par "répartition" on entend la séparation des unités en plusieurs systèmes de traitement de données fonctionnant de manière indépendante l'un de. l'autre. La figure 1 est un schéma fonctionnel géné-10 ral d'un système de traitement de données en temps réel 10 qui accepte des données en temps réel provenant de sources de données 11 et fournit des signaux de commande en temps réel à plusieurs processus commandés 12,13 et 14.Le système de traitement de données 10 comprend une commande centrale 15 qui comprend les 15 unités de mémoire,les unités de commande d'entrée-sortie e.t les unités d'exécution d'instructions normalement associées à un système de calculateur numérique. Un sous-système d'enregistrement 16 est associé à la commande centrale 15 pour assurer l'enregistrement permanent des données dérivées de la commande centrale 15 20 et pour introduire des signaux d'entrée dans celle-ci. Le sous-système d'enregistrement 16 comprend l'équipement à carte perforée, des équipements à bandes magnétiques et à disques magnétiques normalement associés à un système de traitement de données. Un sous-système d'affichage 17 est également associé à la 25 commande centrale 15 et comprend un dispositif affichant en temps réel certaines des caractéristiques opératoires de la commande centrale 15. Un sous-système de maintenance et de diagnostic 18 est également associé à la commande centrale 15 et com-30 prend tous les circuits nécessaires à la surveillance du fonctionnement de la commande centrale 15 afin de détecter les erreurs dans le fonctionnement de la commande centrale et pour amorcer les processus automatiques de correction d'erreur et de ré-organisation du système. Un contrôleur de transmission de données 19 i 33 reçoit les données en temps réel provenant de la commande centrale 15 et utilise ces données pour dériver les signaux de commande destinés à commander les processus 12,13 et 14» Ceux-ci comprennent des moyens pour engendrer des signaux d'indication et de vérification destinés à être renvoyés à la commande centrale 15 par 1'in- 70 23463 5 2047938 termédiaire du contrôleur de transmission 1 g afin d"indiquer l'évolution et l'état des opérations commandées» - Le système"de commande représenté sur la figure 1 peut être utilisé pour n'importe quelle opération en 5 temps réel commandée par calculateur tel que, par exemple, une installation de traitement de pétrole à commande automatique, un système de magasin automatisé, ou même un-système de commande de tir pour application militaire» Cous ces systèmes ont en commun le fait qu'ils doivent recevoir des données d'entrée 10 en temps réel, qu'ils doivent exécuter des ^piculs détaillés sur ces données d'entrée et qu'ils doivent engendrer des signaux de commande en temps réel. De nombreuses autres applications: d'un tel système sont évidemment bien connues de l'homme de l'art» La commande centrale 15 est l'organe de 15 commande central de tout le système» Dans les cas où il est nécessaire de commander des processus de grande envergure et compliqués, il est nécessaire que la commande centrale 15 ait une capacité de calcul appréciable » Dans ce but, la commande centrale 15 est organisée sous forme modulaire» Chaque fonction requise 20 de 1a. commande centrale 15 est réalisée par plusieurs unités identiques, dont le nombre peut varier d'après les exigences spécifiques imposées par le traitement des données» La figure 2 est un schéma simplifié d'une commande centrale pouvant être utilisée dans le système représen-25 té sur la figure 1 » Les unités modulaires de base dans la commande centrale de la figure 2 sont la mémoire de programme,, l'unité de traitement, la mémoire d'opérande, le contrôleur d'entrée -sortie et l'unité de cadence et d'état . -Comme on peut le voir sur la figure 2, plusieurs mémoires de programme 30,31 et 32 sont pré-30 vues pour emmagasiner la séquence des instructions machine nécessaire pour faire fonctionner le système tout entier» Plusieurs unités de traitement 33,34 et 35 sont prévues pour exécuter les instructions lorsque celles-ci sont extraites des mémoires de programme 30 à 32» Plusieurs mémoires d'opérande 35 36,37 et 38 sont prévues comme mémoir® temporaire pour emmagasiner les données qui servent d'opérande lors de l'exécution des instructions par des -unités de traitement 33 à 35» Plusieurs contrôleurs d'entrée-sortie 39 et 40 sont prévus pour commander le transfert" des données entre la commande centrale de la figure 2 40 e-h le restant flu système de traitement donnees» 70 23463 6 2047938 Une unité de cadence et d'état 41 est prévue pour engendrer et distribuer les signaux temporaires de base requis dans la commande centrale et dans les autres unités du système. De plus, l'unité de cadence et d'état 41 reçoit les 5 informations d'état de toutes les autres unités sous forme de signaux binaires et enregistre ces informations dans des registres appropriés afin de les utiliser lors de processus de maintenance et de diagnostic. Afin de tirer pleinement parti du montage 10 modulaire de la commande centrale de la figure 2,il est nécessaire que chacune des unités 30 à 41 puisse être interconnectée avec l'une quelconque des autres unités du système. Pour ce faire, on a prévu dans chacune des unités 30 à 41 une unité de commutation d'interface ISU quifa.it partie de l'unité à 15 laquelle elle est associée. Les unités de commutation d'interface sont les terminaisons de câbles, illustrés sur la figure 2 par des traite pleins et connectés entre les diverses unités. Les imités de commutation d'interface assurent le transfert sélectif des données pour assurer les diverses connexions et elles ac-20 cordent aux'diverses interconnexions, le degré de priorité voulu. Une unité de maintenance et de diagnostic 42 sert à collecter certaines informations provenant de toutes les autres unités de la figure 2 au moyen d-'un conducteur omnibus de données multiplex 43 et à utiliser ces informations pour diagnos-25 tiquer et surveiller la commande centrale. Cette unité 42 ne fait pas partie de la commande centrale du point de vue fonctionnel mais elle est représentée sur la figure 2 pour illustrer la séparation et l'indépendance complète qui existe entre le conducteur omnibus d'acquisition de données 43 et les trajets normaux de don-30 nées qui s'étendent entre les unités de commutation d'interface des diverses unités du système. On peut donc voir que la collection des informations de maintenance et de diagnostic ne dépend pas de l'état de fonctionnement de tous ou de certains trajets normaux de traitement de données. Cela simplifie considérablement 35 la fonction de surveillance et accroît la fiabilité du système dans une mesure très appréciable. Afin de mieux comprendre le fonctionnement de la commande centrale, la. figure 3 montre les relations fonctionnelles entre les diverses unités du système. Une seule imité 40 de chaque type est représentée sur la figure 3,-afin de simplifier 70 23463 7 2047938 le dessin, étant bien entendu cependant que des interconnexions similaires existent entre les autres unités.comme montré de manière générale sur la figure 2.' Sur la figure 3 les trajets de données sont 5 représentés par des traits gras tandis que les trajets de signaux de commande sont représentés par des traits minces. Le nombre de positions binaires ou bits acheminé par chaque.ligne est représenté par un nombre entre parenthèses à côté des lignes en traits gras , On peut voir qu'un câblage uniforme a été réalisé en nor-10 malisant la capacité des câbles à 34 bits. On peut voir sur la figure 3 que la commande centrale comprend une unité de traitement 50 avec son unité de commutation d'interface 51 associée,, qui est divisée en deux parties, Une partie communique avec la partie commande de pro--15 gramme CP de l'unité de traitement 50, tandis que l'autre, communique avec la partie opérande OP de l'unité de traitement 50, La partie commande de programme CP reçoit les instructions de programme des mémoires de programme 52 et 53 par l'intermédiaire des unités de commutation d'interface 54 et 55 respectivement» 20 Dans un but de fiabilité, les mêmes instructions de programme sont enregistrées dans deux mémoires différentes. La mémoire 52 est appelée mémoire de programme principale, tandis que la mémoire 53 est appelée mémoire de programme secondaire. Des demandes d'instructiers suivantes identiques sont appliquées aux deux 25 mémoires 52 et 53 et la première mémoire de programme à répondre automatiquement annule la demande faite à l'autre mémoire. De cette façon, si des instructions de programme dans une mémoire de programme quelconque se trouve'nt perdues par suite d'une défectuosité quelconque, le système peut continuer à fonctionner 30 sensiblement sans perte de temps. La partie commande d'opérande OP de l'unité de traitement 50 recherche les données dans la mémoire d'opérande 51' et dans l'unité de commutation d'interface 57° Un contrôleur d'entrée-sortie 58 est agencé 35 en sorte de communiquer avec toutes les autres unités du système par l'intermédiaire de l'unité de commutation d'interface 59» Ce contrôleur peut échanger les données et les instructions avec la partie commande d'opérande OP de l'unité de traitement 50 par l'intermédiaire des unités de commutation d'interface 51' et 59» 70 23463 O 2047938 Il peut également échanger les données et les instructions avec la mémoire d'opérande 56 par 1'intermédiaire des unités de. commutation d'interface 57 et .59= Enfin, il peut échanger des données et des instructions avec l'unité de cadence et d'état 60 5 par l'intermédiaire de l'unité de commutation d'interface 61, Le contrôleur 58 commande évidemment les transferts d'information entre la commande centrale de la figure 3 et toutes les autres unités du système de traitement de données représentées sur la figure 1, 10 L'unité de cadence et d'état 60 comprend trois sous-systèmes indépendants nécessaires pour le fonctionnement général de la commande centrale« Un sous-système de transfert de mémoire commande l'inscription des instructions de programme dans les mémoires de programme 52 et 53» Le sous-système 15 de transfert de mémoire est en effet le seul moyen pour modifier des instructions de programme et communiquer avec les mémoires de programme par 1'intermédiaire de l'unité de commutation d'interface 61', qui est en réalité une partie de l'unité de commutation d'interface 61 » 20 Le sous-système générateur, de cadence et l'unité de cadence et d'état 60 fournit tous les signaux de cadence et d'horloge requis pour faire fonctionner le système» Utilisant des signaux d'horloge-mère, ce sous-système générateur de cadence maintient les signaux de cadence et fournit des 25 instructions pour synchroniser divers cycles de traitement de données en temps réel. Le sous-système d'état de 1'unité de cadence et d'état 60 maintient un enregistrement de l'état de toutes les unités de la commande centrale, il transfère pério-30 diquement des informations aux diverses mémoires d'opérande telles que la mémoire 56, et il contient les circuits de commande pour assurer 1 'isolement,la segmentation et la répartition. On peut voir également que la. partie commande de programme CP de l'unité de traitement 50 peut recevoir 35 des instructions de programme de la mémoire d'opérande 56 par l'intermédiaire des unités de commutation d'interface 51 et 57° Cela permet d'emmagasiner des séquences de programme temporaires dans la mémoire d'opérande 56 et d'utiliser ces séquences dans l'unité de traitement 50, On remarquera également que tous les 70 23463 9 2047938 câbles s'étendant entre les diverses unités de la commande centrale de la figure 3 ont une capacité de 34 bits d'information, ce qui permet d'assurer une réalisation uniforme du câblage» Comme on l'a mentionné précédemment, la 5 commande centrale est le coeur du système de traitement de données de la figure 1 » la commande centrale exécute toutes les fonctions de traitement et de calcul de données requises pour le système tout entier, la commande centrale comprend par conséquent de nombreux dispositifs demandeurs qui sont capables de de-10 mander et de recevoir de manière asynchrone accès aux diverses mémoires du système. Toutes les paires possibles de ces unités sont interconnectées par des trajets de commutation directs pour assurer un traitement de données à vitesse élevée et très souple. La construction modulaire de la commande centrale permet de di-15 mensiormer sa capacité de traitement de données d'après les nécessités de l'application particulière envisagée ainsi que de procurer au système une fia.bilité élevée sans duplication excessive. Seule la mémoire de programme est doublée afin de garantir de manière certaine que les programmes soient disponibles lors-20 qu'ils sont requis . Chaque unité de mémoire est indépendante et une défectuosité qui survient dans l'une quelconque de ces unités n'invalide pas pour autant la mémoire toute entière. La figure 4 est un schéma plus détaillé des circuits d'accès des diverses unités de mémoire et leur re-25 lation avec l'unité de traitement. L'imité de traitement 50 comprend une unité de commande de programme 71, une. unité de commande d'opérande 72 et une unité de commande arithmétique 73» L'unité de commande de programme 71 émet simultanément des demandes sur les conducteurs 74 et 75 afin d'extraire des instruc-30 tions de programme des mémoires de programme 52 et 53, respectivement. La requête acheminée sur le conducteur 74 est appliquée aux circuits de priorité 76 dans l'imité de commutation d'interface 54. La requête acheminée sur le conducteur 75 est appliquée aux circuits de priorité 77 dans l'imité de commutation d'inter-35 face 55. Les circuits de priorité 76 et 77 forment une file d'attente des requêtes émanant des diverses unités de traitement et, lorsqu'ils sont consultés, ils attribuent des priorités particulières aux requêtes émanant des unités particulières. La requête qui est la première à être desservie est appliquée 70 23463 2047938 à la mémoire de programme 52 par l'intermédiaire du conducteur 78 et à la mémoire de programme 53 par l'intermédiaire du conducteur 79» En. même temps, un signal est appliqué au circuit de priorité secondaire 80 afin d'indiquer que la requête est 5 desservie» le circuit de priorité secondaire 80 fonctionne en sorte de supprimer, dans la file d'attente dans l'autre des circuits de priorité 76 et 77, la requête destinée à la mémoire de programme secondaire » L'unité de programme de mémoire qui reçoit 10 finalement 1a. requête, reçoit également une adresse d'instruction de l'unité de commande de programme 71 par l'intermédiaire du circuit tampon de sortie 72 et du circuit tampon d'entrée 91 ou 93» En réponse à cette adresse, l'unité de mémoire de programme appropriée 52 ou 53 fournit l'instruction demandée au cir-15 cuit tampon de sortie 81 ou 82 d'où elle est acheminée vers l'unité de traitement appropriée» Elle est donc appliquée à l'organe tampon d'entrée 82 de l'unité de commutation d'interface 51 dans le montage de la figure 4» L'organe tampon d'entrée 82 sert à réunir les instructions demandées aux diverses mémoires 2C de programme et à fournir ces instructions à l'unité de commande de programme 71 » L'unité de commande de programme 71 exécute certaines opérations initiales sur les instructions de programme reçues de l'organe tampon d'entrée 82 et elle transmet ces ins-25 tructions à l'unité de commande d'opérande 72 ou à l'unité de commande arithmétique 73» L'unité de commande d'opérande 72 reçoit l'adresse d'opérande contenue dans l'instruction et envoie sur le conducteur 84 une requête qui est appliquée à la mémoire d'opérande adressée afin de fournir la donnée requise» 30 Cette requête est reçue sur le conducteur 85 émanant du circuit de priorité 86, lequel, à son tour, permet à l'unité de commande d'opérande 72 d'envoyer une adresse à l'organe tampon d'entrée 88 dans 1'-unité de commutation d'interface 57 par l'intermédiaire de l'organe tampon de sortie 87 dans l'unité de commutation 35 d'interface 57 par l'intermédiaire de l'organe tampon de sortie 87 dans l'unité de commutation d'interface 51'» Cette adresse est appliquée à la mémoire d'opérande 56 afin d'avoir accès à l'opérande requis , lequel , à son tour, est appliqué à l'organe tampon de sortie 89 dans l'unité de commutation d'interface 40 57. Cet opérande est transféré à l'unité de commande d'apéran- 70 23463 n 2047938 de 72 par l'intermédiaire de l'unité de commutation d'interface 51'• Utilisant cet opérande, l'unité de commande arithmétique 73 est alors apte à achever l'exécution de l'instruction de programme, 5 On peut voir que chaque unité de commutation d'interface comprend des organes tamponspour recevoir les informations provenant de l'une quelconque des unités et des organes tampors séparés pour fournir des informations destinées à l'une quelconque des autres unités. De plus, chaque imité de commuta-10 tion d'interface comprend des circuits de priorité qui sont utilisés pour commander l'ordre dans lequel les requêtes émanant des autres unités doivent être desservies. Avant de procéder à la description de la figure 5, il sera utile de décrire d'abord le format des instruc-15 tions reçues des mémoires de programme 52 et 53 de la figure 4, Ces mémoires de programme sont organisées par mots de 68 bits. Chaque adresse fournit à la mémoire de programme donne lieu à l'envoi à l'imité de commutation d'interface d'un mot de 68 bits» Ce mot est divisé en demi-mots de 34 bits chacun, qui sont envoyés 20 séquentiellement à l'unité de traitement» Du point de vue fonctionnel, chaque mot de 68 bits est divisé en 4 segments de 17 bits chacun, chaque segment comportant 16 bits d'information d'instruction et un bit de parité. Les bits de parité sont négligés avant l'exécution des 25 instructions» Ces instructions peuvent se présenter sous un format de 16 bits ou un format de 32 bits» Chaque segment peut donc constituer une instruction de 16 bits ou deux segments adjacents peuvent constituer une instruction de 32 bits» Dans le présent mémoire, on considérera que le dernier segment d'un mot de mémoire 30 de programme et le premier segment du mot de mémoire de programme suivant sont adjacents et peuvent donc constituer une instruction unique de 32 bits, La figure 5 est un schéma fonctionnel de l'unité de commande de programme 71 de la figure 4,faisant partie 35 de l'unité de traitement 50, L'unité de commande de programme représentée sur la figure 5 comprend un registre d'instruction à quatre étages contenant les registres 101,102,103 et 104» Chacun des registres 101 à 104 peut emmagasiner un mot de mémoire de programme à 68bits. Les mots de mémoire de programme sont reçus.initia-40 lement dans le registre 101„ Normalement• à mesure que l'exécu 70 23463 2047938 tion du programme se poursuit, le contenu du registre d'instruction 101 est transféré dans le registre 102, Le sélecteur de segment 105 transfère deux segments adjacents du mot contenu dans le registre d'instruction 5 102, ou deux segments adjacents de mots contenus dans les registres d'instruction 102 et 103, dans le registre commun 106» Lorsque tous les segments du registre 102 ont été transférés dans le registre commun 106, le contenu de chacun des registres 101,102 et 103 est transféré dans le registre suivant^ c'est-à-dire que 10 le contenu, du registre 101 est transféré dans le registre 102, le contenu du registre 102 est transféré dans le registre 103 et le contenu du registre 103 est transféré dans le registre 104» A ce moment, le générateur d'adresse 107 engendre une adresse afin d'amorcer une phase de recherche du mot de mémoire suivant 15 afin de l'introduire dans le registre d'instruction 101» Le contenu originel du registre 104 est détruit par le transfert du contenu du registre 103» Si le registre d'instruction 102 se trouve vidé avant que le nouveau mot de mémoire de programme soit reçu par le registre 101, ce nouveau mot se trouve immédiatement 20 transféré dans le registre 102 à travers le registre 101» Les registres d'instruction 103 et 104 assurent l'emmagasinage des soi-disant "boucles courtes" dans lesquels line séquence d'instruction (contenant jusqu'à 16 se.gme.nts) peut être répétée un certain nombre de fois sans exiger de pro-25 cessus d'extraction supplémentaire de la mémoire de programme» Ce montage économise un temps appréciable qui autrement serait nécessaire pour les processus d'extraction additionnels requis pour la répétition de l'exécution des instructions'» Chaque adresse de mémoire de programme 30 comporte cinq bits qui identifient l'unité de mémoire appropriée» Les treize autres bits identifient un des 8192 mots de l'unité de mémoire» Deux bits supplémentaires sont utilisés pour identifier un des quatre segments de chaque mot de 68 bits» Un bit final sert de bit de parité» Ces adresses d'instructions sont engendrées 35 par le générateur d'adresse 107 qui comprend quatre compteurs de programme indépendants» Ces compteurs peuvent être utilisés à des instants différents sous la commande du programme afin de contrôler l'extraction des instructions »■ Les instructions de branchement servent, par l'intermédiaire du traducteur 108, à modifier 40 le fonctionnement séquentiel normal du générateur d'adresse 107 70 23463 13 2047936 afin de diriger l'extraction d'un mot non séquentiel de la mémoire de programme» Il faut remarquer que les deux bits qui identifient un segment sont transférés au sélecteur de segment 105 et dès lors ne quittent jamais l'unité"de commande de programme de 5 la figure 5. . Les instructions contenues dans le registre commun 106 sont analysés afin de déterminer si elles peuvent être exécutées dans l'unité de commande de programme elle-même ou si elles doivent être dirigées vers l'unité de commande d'opérande 10 ou vers l'unité de commande arithmétique. Dans ces deux derniers cas, les instructions sont placées dans l'un quelconque de deux registres d'attente à quatre étages appelés liste d'instructions d'opérande 109 et liste d'instructions arithmétiques 110,De plus, des circuits modificateurs d'adresse 111 sont prévus pour modi-15 fier les adresses des instructions. Les circuits 111 comprennent quatre registres C à quatre bits qui sont utilisés pour indiquer la valeur de la modification de 1'adresse«Après une telle modification, les instructions sont transférées aux listes d'instructions 109 et 110 comme précédemment, 20 Ces instructions, qui peuvent être retenues dans l'unité de commande de programme de la figure 5 et être exécutées par celle-ci,sont des manipulations des registres C, des modifications de zones d'adresse des registres et des instructions de branchement. Les instructions requérant l'extraction ou 25 l'emmagasinage de mots de données dans les unités de mémoire d'opérande sont placées dans la liste d'instructions.d'opérande 109, Les instructions requérant des manipulations arithmétiques ou logiques de données ont normalement lieu dans l'unité de commande arithmétique et sont ensuite placées dans la liste'd"instruc-30 tions arithmétiques 110, La figure 6 est un schéma de l'unité de commande d'opérande 72 de la figure 4, Cette unité comprend un registre d'instructions d'opérande 120 qui reçoit des instruc*-tions de la liste d'instructions d'opérande 109(figure 5)= La 35 partie code opération de l'instruction est appliquée au décodeur d'instruction 121 dans lequel elle est décodée et des signaux de commande sont engendrés pour diriger l'exécution de l'instruction identifiée. L'unité de commande d'opérande comprend également seize registres B 122 qui'servent de registres index pour la modi-40 fication d'adresse d'opérande. Un traducteur d'adresse B 123 sé 70 23463 14 2047938 lectionne un registre B approprié en convertissant certaines zone d'identification de l'instruction contenue dans le registre 120» D'une manière similaire, seize registres Z 124 servent à. emmagasiner divers paramètres requis pour des interruptions de program-5 me, Ces paramètres comprennent, par exemple, les adresses de points d'interruption, les adresses de restitution d'erreur, les adresses de retour d'erreur et d'autres quantités similaires. Un traducteur d'adresse Z 125 identifie un des seize registres Z en convertissant une zone appropriée de l'instruction contenue dans 10 le registre 120, Le registre E 1 26 sert à emmagasiner des paramètres explicites qui constituent une partie de l'instruction elle-même,Ces paramètres sont stockés dans le registre E 126 avant l'exécution d'opérations arithmétiques dans un additionneur 15 à trois entrées 127, Le registre K 128 et le registre L 129 emmagasinent d'autres quantités requises pour l'opération d'addition. Ces quantités peuvent être dérivées des registres B 122, des registres Z 124 ou du registre 130, Un traducteur de décalage et d'édition 131 20 convertit les zones appropriées de l'instruction contenue dans le registre 120 en signaux propres à commander des circuits de décalage 132 et des circuits d'édition ou de mise en forme 133 afin de décaler et de mettre en forme des quantités dans les divers autres registres, 25 Les résultats d'additions dans le circuit additionneur 127 sont emmagasinés dans le registre D 134 d'où ils sont acheminés vers le registre d'adresse d'entrée de mémoire d'opérande 135, vers le registre d'adresse de sortie de mémoire d'opérande 136 ou vers le registre de sortie 137 de l'unité de 30 commande arithmétique. Enfin, les données extraites des unités de mémoire d'opérande sont envoyées aux registres de données d'entrée 138 et les données qui doivent être emmagasinées dans les unités de mémoire d'opérande sont envoyées aux registres de données de sortie 139, Un registre F 140 est prévu pour emmaga-35 siner les données avant leur introduction dans les registres Z 124 ou les registres B 122, Ces données peuvent être reçues des unités de mémoire d'opérande par l'intermédiaire des registres 138 ou bien elles peuvent provenir du registre D 134 comme résultat d'une opération arithmétique. 70 23463 15 2047938 la figure 7 est un schéma de l'imité de commande arithmétique 73 de la figure 4» Cette unité comprend un registre d'instructions arithmétiques 150 qui reçoit les instructions arithmétiques de la liste d'instructionarithméti-5 ques 110 de la figure 5» "Ces instructions sont délivrées au registre 150 une à une et elles sont à leur tour appliquées .aux circuits traducteurs•151 - Les traducteurs 151 décodent les ins~ . tructions arithmétiques et engendrent les signaux.de commande nécessaires pour 1 ^exécution de ces instructions 10 Plusieurs registres de stockage local, les registres A 152, emmagasinent les opérandes arithmétiques pendant le déroulement et pendant 1'exécution des instructions arithmétiques, les registres A 152 communiquent avec l'unité -i de commande d'opérande de la figure 6 par 1'intermédiaire de 15 registres tampons 153= les opérandes peuvent par conséquent être acheminés- alternativement vers l'unité de commande d'opérande de la figure 6 et vers les registres A 152, l'unité de commande arithmétique comprend également les circuits logiques et de commande de calcul 154 qui 20 contiennent tous les circuits logiques et tous les circuits de commande arithmétiques nécessaires pour exécuter ces opérations sur les opérandes emmagasinés dans les registres.A 152, Afin d'empêcher des délais indus dans 1'exécution des instructions arithmétiques, des circuits multiplicateurs rapides 155 assurent 25 l'exécution des instructions qui impliquent des multiplications. Ainsi qu'il est bien connu, ces instructions exigent autrement pour leur exécution un temps considérablement plus grand que les autres catégories d'instructions", la figure 8 est un schéma détaillé des unités 30 de mémoire illustrées sur 1a. figure 4 par les blocs 52,53 et 56, les unités de mémoire d'opérande et les unités 'de mémoire de programme comprennent des dispositifs d'emmagasinage essentiellement identiques, la différence principale entre ces mémoires est que les unités de mémoire de programme ont toutes leurs 35 entrées doublées. Cette différence donne lieu à une certaine variation dans, les circuits de commande et dans 1 «^plicationdessignaux de commande,mais elle a peu d'effet sur la nature des dispositifs eux-mêmes et sur leur fonctionnement, Sur la figure 8 on voit qu'une unité de mé 70 23463 16 2047938 moire d'une matrice de tores magnétique 160 contenant un réseau de tores magnétiques et des conducteurs de commande associés reliant ces noyaux, selon une technique bien connue = Les noyaux magnétiques de la matrice 160 sont adressés par signaux coïncidente 5 à partir de la matrice de sélection X 161 et de la matrice de sélection Y 1620 Pendant le cycle de lecture, un demi-courant de sélection est envoyé sur la ligne sélectœ de la matrice X 161 et un demi-courant de sélection est envoyé sur les lignes de la 10 matrice Y 162 dans chaque position de bits, faisant passer les noyaux magnétiques 160 sélectés dans l'état 0o Durant le cycle d'écriture, un demi-courant de sélection est envoyé sur la ligne sélectée de la matrice X 161 et un demi-courant de sélection additif conditionnel est appliqué aux lignes•sélectées de la matri-15 ce Y 171 dans chaque position, de bit afin de faire basculer le noyau dans l'état 1. Le courant additif conditionnel est appliqué sélectivement aux lignes de la matrice Y 162 dans chaque position de bit par l'intermédiaire du commutateur shunt Y 171«Comme les données sont insérées dans chaque position de bit d'un mot sélec-20 tionné par l'intermédiaire d'une . sélection logique ouccnâitionnelie d'un demi-courant de sélection additif . on doit utiliser pour chaque position de bit de la mémoire une matrice Y 162 indépendante . ■ Ces matrices de sélection 161 et 162 sont 25 à leur tour commandées par des circuits de commande X 163 et des circuits de commande Y 164, respectivement.,-Les circuits de commande 163 et 164 reçoivent des informations d'adresse du décodeur d'adresse 165 qui,à son tour, reçoit les adresses du registre d'adresse 166„ Ces adresses ne sont évidemment pas envoyées 3C dans l'unité de mémoire de la figure 8 à partir des circuits d'accès de mémoire situés dans d'autres parties du système de traitement de données«Toutes les adresses emmagasinées dans le registre 166 sont vérifiées dans le circuit de commande de parité d'adresse 167 afin de déceler les erreurs de parité.Toute erreur 3T décélée dans ces adresses est signal-ée par 1 [lnterméd±sîre- -de- la ligne 168, L'information emmagasinée dans la matrice 160 qui est adressée à partir des matrices de sélection 161 et 162 fournissent des signaux de sortie représentatifs de l'infor-40 mation binaire emmagasinée dans cet emplacement de la matrice 160. 70 23463 17 2047938 Ces signaux sont détectés par des amplificateurs de lecture 169 et l'information "binaire est emmagasinée dans le registre de données 170» Comme la lecture d'information dans les noyaux magnétiques détruit cette information, la même information est-appliquée 5 sélectivement aux lignes de bits par 1'intermédiaire du commutateur shunt Y 171 afin de rétablir l'information dans les mêmes emplacements des noyaux magnétiques de la matrice 160» De cette manière la lecture se fait d'une manière non destructive et l'information emmagasinée dans la matrice 160 y est conservée en vue 10 d'une utilisation ultérieure» Toutes les données emmagasinées dans la matrice 160 contiennent des bits de contrôle de parité qui peuvent être utilisés pour vérifier la parité des données emmagasinées» Chaque mot de donnée emmagasiné dans le registre 170 est par con-15 séquent vérifié par les circuits de contrôle de parité 172 et les erreurs de parité dans les données sont signalées par l'intermédiaire de la ligne 173» Des données elles-mêmes sont acheminées sur la ligne 174» Lorsque l'on désire emmagasiner une informa--0 tion dans l'unité de mémoire de la figure 8, cette donnée est appliquée sur la ligne 175 et emmagasinée dans le registre de données 170, Au même moment, des signaux d'adresse sont envoyés au registre d'adresse 166, indiquant l'emplacement précis dans lequel 1a. donnée d'entrée doit être emmagasinée» L'information -5 emmagasinée précédemment dans l'adresse désignée, dans la matrice 160 est d'abord extraite des noyaux magnétiques de la matrice 160, détruisant cette information. Les signaux résultant ne sont pas détectés par des amplificateurs de lecture 169 dans ce cas» La donnée d'entrée emmagasinée dans le registre de donnée 170 est .30 appliquée à la matrice 160 par l'intermédiaire du commutateur shunt Y 171 en même temps que des signaux-de commande d'adresse sont engendrés par le décodeur d'adresse 165, les circuits de commande 163 et 164 et les matrices de sélection 161 et 162„ De cette manière, 1'information d'entrée se trouve emmagasinée 35 dans la matrice 160 en vue d'une utilisation ultérieure» La donnée d'entrée est également vérifiée par les circuits de contrôle de parité 172 et les erreurs de parité éventuelles sont signalées par l'intermédiaire de la ligne 173» Le fonctionnement de tous les circuits du 10" montage de la figure 8 se trouve sous la dépendance de signaux 70 23463 2047938 engendrés par le circuit de cadence et de commande 176, le circuit de commande 176 est à son tour commandé par des instructions de commande acheminées sur la ligne 177 de manière à engendrer les signaux de commande appropriés aux instants corrects et dans 5 la séquence appropriée. Afin de mieux comprendre le fonctionnement de l'unité de mémoire de la figure 8, on décrira plus en détails ci-après les instructions de commande. On remarquera tout d'abord que chaque .mot dans la matrice 160 comprend 68 bits d'information binaire , ■jq chaque mot comprenant un multiplet gauche (bits 0-33) et un multiplet droit (bits 34-67), La mémoire est capable de fournir l'un ou l'autre de ces multiplets en réponse à une demande de multiplet et, de plus, elle détecte et signale les erreurs de parité de données dans chaque multiplet séparément, Enfin, .je l'unité de-mémoire de la figure 8 est prévue en sorte d'insérer un "1" dans les positions des premier et second bits d'un mot adressé durant chaque cycle de lecture. Ces bits peuvent alors être utilisés par le système extérieur pour détecter que le mot a été lu précédemment dans la mémoire. L'unité de mémoire 2q est également capable de modifier un cycle de lecture en un cycle d'écriture après la partie lecture d'un cycle de mémoire quelconque en réponse à des signaux provenant du système extérieur. Cette dernière possibilité est appelée "mémoire conditionnelle". Les instructions de commande appliquées aux 25 circuits de commande 176, qui comprennent donc divers: types de signaux, actionnent les circuits 176 afin d'engendrer les signaux de commande et de cadence propre à exécuter les actions voulues^ Les signaux envoyés à l'unité de mémoire de 30 la figure 8 et restitués par celle-ci sont traités par l'intermédiaire d'une unité de commutation d'interface indiquéepar les lettres ISIJ à la droite de la figure 8, Cette unité de commutation d'interface fait partie de l'unité de mémoire et exécute la fonction d'un organe tampon entre l'unité de mémoire et les di-35 verses autres unités demandant le service de l'unité de mémoire. Comme toutes ces unités de commutation d'interface ont la même fonction et sont de construction similaire, on ne décrira ci-après qu'un seul type d'unité de commutation d'interface, La figure 9 est un schéma détaillé d'une unité de commutation d'inter-40 face de mémoire d 'onRT'aridF!, Hvm>ioT î hp nny 1p Vfl rir» 57 sur la fi.— - — — } -r*/ —»-r'» — — " 70' 23463 19 2047938 gure 4» ' ' • ' Cette unité de commutation d'interface comprend des circuits de priorité -180 auxquels sont appliquées des demandes'de service acheminées sur les conducteurs 1810 On se 5 rappelera que les unités dé mémoire d'opérande reçoivent des demandes de service des unités de traitement- et des contrôleurs d'entrée-sortie» Ces demandes de service sont appliquées aux circuj.ts.de priorité 180 et la demande de service ayant la priorité la plus élevée est desservie en premier lieu, La donnée 10 apparaissant sûr la ligne 182 et l'adresse apparaissant sur la ligne 183, qui sont associées à la demande de service de priorité la'plus élevée acheminée sur le conducteur 181, sont-sélectionnées par le commutateur 184 et le commutateur 185, respectivement,, et elles sont emmagasinées dans le registre de données 186 et le 15 registre d'adresse 187, respectivement» A ce moment, les signaux de commande associés à cette demande-de service sont enregistrés dans le circuit de commande primaire 188„ Ces signaux de commande comprennent les bits de sélection de multiplet, les signaux dé-. signant la fonction d'extraction et la fonction d'emmagasinage, 20 et un signal de demande d'annulation. Ce dernier signal peut être utilisé pour annuler la demande de service à un moment quelconque avant que l'accès n'ait été effectivement établi avec l'unité de mémoire d'opérande» Les signaux de commande dans le circuit de 25 commande primaire 188 sont emmagasinés, "traités, synchronisés et transférés au circuit de commande 189,qui engendre les signaux de commande effectifs propres à entamer un cycle de mémoire dans l'unité de mémoire d'opérande .198» De plus, les signaux provenant du circuit de commande primaire 188 et du circuit de com-30 mande 189 sont appliqués au circuit d'accusé de réception 191 qui engendre un signal sur la ligne 192 afin de signaler que la demande de service correspondante est exécutéeb L'unité demanderesse utilise ce signal d'accusé de réception pour mettre fin à la demande de service puisque celle-ci est à présent exécutée « 35 ' f' Les informations d'adresse et de données provenant des registres 186 et 187 sont transférées à l'unité de mémoire d'opérande 190 en même temps que le signal de démarrage provenant du circuit 189» Au même moment, les autres signaux de commande sont transférés au circuit de commande secondaire 192» t 70 23463 20 2047938 Ces signaux de commande dans le circuit 192, ainsi que les signaux de commande provenant de l'unité de mémoire d'opérande 190, sont appliqués au circuit d'erreur de parité d'adresse 1,93« Ce dernier circuit engendre et transfère aux imités demanderesses une indica-5 tion d'une'erreur de parité d'adresse dans la demande de service qui vient d'être reçue. Les signaux de commande provenant du circuit de commande secondaire 192 sont transférés au circuit de commande tertiaire 194= Gomme l'unité de mémoire d'opérande 190 est agencé en sorte d'avoir accèsà et de fournir des multiplets 10 constituant des demi-mots, le circuit de commande 194 est utilisé pour diriger le circuit de commande de multiplet 195 en vue de traiter les multiplets de la manière convenable» Comme un mot complet provenant de l'unité de mémoire d'opérande 190 est fourni \ au circuit de commande 195 sous la forme d'une séquence de deux 15 multiplets, les circuits de commande de multiplets 195 sont commandés de telle manière qu'ils unissent des multiplets de données en un mot de données complet» Les erreurs de parité de données détectées par l'unité de mémoire d'opérande 190 sont signalées au circuit 20 d'erreur de parité de données 196 par le circuit de commande tertiaire 194 et ensuite à l'unité ayant émis la demande de service» Les signaux de commande émanant du circuit de commande tertiaire 194 sont également transférés au circuit de commande quaternaire 197 qui commande un distributeur de données 198 de manière à 25 transférer les données de sortie à l'unité demanderesse appropriée au moment où l'unité demanderesse est prête à recevoir ces donnée s » Le circuit d'édition d'erreur et d'état 199 est prévu pour détecter et emmagasiner des indications d'erreurs 30 internes qui se produisent dans l'un quelconque des autres circuits de l'unité de commutation d'interface de la mémoire» Le circuit 199 prépare et fournit la situation des états de fonctionnement de toute l'unité de commutation d'interface à l'unité d'état représentée par le bloc 60 sur 1a. figure 3° 35 Le circuit de commande de l'unité de commu tation d'interface de la figure 9 est divisé en quatre niveaux (primaire,secondaire, tertiaire et quaternaire)afin de séparer la synchronisation et la commande requise à chaque stade d'exécution d'une demande de service» De plus, cette séparation de 40 la commande permet un recouvrement des demandes de service succès- 70 23*63 2047938 sives,permettant le traitement de chaque demande de service avant que ne soit achevé le traitement de la demande de service précédente» . Suivant la forme de réalisation de l'inven-5 tion, décrite à titre d'exemple, les circuits de priorité 180 sont agencés en sorte de bloquer sélectivement une ou plusieurs unités demanderesses particulières» Pour ce faire, des signaux de blocage acheminés sur les conducteurs 200 sont appliqués aux. circuits de priorité 180» Des signaux de blocage empêchent que ne 10 soient exécutés les demandes de service correspondantes tout en en permettant que soient exécutées toutes les autres demandes de service» De cette manière, la communication entre cette unité de mémoire d'opérande particulière et toute unité demanderesse prend fin» Des blocages similaires sont évidemment assurés pour 15 bloquer toute autre unité du système de traitement de données en invalidant sélectivement -une telle communication dans les unités de commutation d'interface appropriées »On reviendra plus loin sur les détails de cette commande de blocage» La figure 10 est un schéma du contrôleur 20 d'entrée-sortie représenté par le bloc 58 sur la figure 3 et du' sous-système d'enregistrement représenté par le bloc 16 sur la figure 1» Le contrôleur d'entrée-sortie 58 comprend l'unité de commutation d'interface 59, une unité d'interface de processeur 210, une unité de commande d'entrée 211, une unité de commande 25 de sortie 212, une unité de commande principale 213 et une mé= moire de mot d'instruction 214» Avant d'aborder la description détaillée du fonctionnement de ces unités, on donnera un aperçu général des fonctions du contrôleur d'entrée-sortie» Le contrôleur d'entrée-sortie 58 dirige 30 1'acheminement.des instructions entre les unités de traitement et les organes périphériques faisant partie du sous-système d'enregistrement» Sur la figure 10 les organes périphériques sont représentés par les dispositifs de transport de bande 215, 216 et 217 se trouvant sous la commande des dispositifs de com-35 mande de bande 218; les dispositifs à disque magnétique 219 et 220 commandés par les dispositifs de commande 221; les imprimantes 222, les dispositifs de perforation de cartes 225, les dispositifs lecteuœ de cartes 226 et les enregistreurs à microfilm 229, qui se trouvent tous sous la commande des dispositifs de 70 3 2047938 commande multiplex 224® Tous ces organes périphériques sont bien connus de l'homme de l'art» Le contrôleur d'entrée-sortie 58 dirige l'acheminement des instructions entre les unités de traitement 5 et ces organes périphériques, permettant ainsi aux unités de traitement d'exercer la commande sur les organes périphériques, et il dirige également l'acheminement des données entre les imités de mémoire d'opérande et les organes périphériques.Durant l'exécution de cette fonction, le contrôleur d'entrée-sortie 58 10 reçoit et exécute les instructions provenant des unités de traitement ou de l'un quelconque des organes périphériques afin d'entamer les fonctions d'entrée et de sortie» De plus, le contrôleur d'entrée-sortie 58 peut diriger les organes périphériques afin d'exécuter des fonctions d'entrée et de sortie indépendamment 15 des unités de traitement» Les unités de traitement sont réalisées en sorte de considérer le contrôleur d'entrée-sortie 58 comme une partie de la mémoire d'opérande et de rendre ainsi le contrôleur d'entrée-sortie 58 complètement indépendant de tout processeur 20 particulier sauf pendant l'instant où il est adressé par une unité de traitement particulière» Les instructions sont transférées au contrôleur d'entrée-sortie 58 de la. même manière que les opérations de mémoire sont transférées aux unités de mémoire d'opérande à partir de l'imité de traitement» Une demande de mémoire 25 de processeur adressée au contrôleur d'entrée-sortie 58 a pour effet que celui-ci reçoit un mot d'instruction de l'unité de traitement» Sous la commande des mots d'instruction provenant de l'unité de traitement, le contrôleur d'entrée-sortie 58 30 peut retrouver dans les unités de mémoire d'opérande, les séquences détaillées d'instructions nécessaires pour établir toutes les opérations d'entrée et de sortie» De cette manière, d'après une seule instruction émanant de l'unité de traitement, le contrôleur d'entrée-sortie est apte à fonctionner de manière complè-35 tement indépendante de toutes les unités de traitement et d'exécuter un nombre relativement grand de fonctions d'entrée et de sortie sans avoir plus besoin de faire appel aux unités de traitement . L'unité de commande principale. 213 sur la 40 figure 10 conserve la commande sur l'entièreté du contrôleur 70 23463 23: 2047938 d'entrée-sortie 58 et elle exécute toutes les fonctions de comptabilité requises pour le fonctionnement du contrôleur d'entrée-sortie . Elle exécute toutes les instructions de commande et de supervision sauf quelques instructions directes émanant de l'unité de 5 traitement» L'unité de commande principale 213 entame les opérations de transfert de données à la fois dans l'unité de commande d'entrée 211 et dans l'unité dé commandede sortie 2\2,ëBe met fin à ces opérations et elle traite toutes les erreurs internes du contrôleur d'entrée-sortie» Comme il n'y a. pas de trajet d'ache-10 minement de données entre l'imité de commande principale 213 et les unités extérieures au contrôleur d'entrée-sortie 58, l'unité de commande principale 213 utilise l'unité de commande d'entrée 211 lorsqu'il est nécessaire d'inscrire un mot dans la mémoire d'opérande et elle utilise l'unité de commande de sortie 212 15 lorsqu'il est nécessaire d'extraire un mot de la mémoire d'opérande» Ces mêmes unités sont utilisées pour transmettre des mots d'instructions aux organes périphériques et pour recevoir des mots d'instructions de ces organes périphériques» L'unité d'interface 210 du processeur assure 20 directement les liaisons avec les unités de traitement» Elle con= tient tous les circuits d'interruption et exécute toutes les instructions reçues des unités de traitement» La mémoire de mots d'instructions 214 est une mémoire temporaire de petite capacité ayant un emplacement 25 pour chacun des câbles d'entrée 231 et chacun des câbles de sortie 232» Ces emplacements sont utilisés par l'unité de commande principale 213 pour l'emmagasinage temporaire des instructions de transfert pour la voie associée » L'unité de commande de sortie 212 commande 30 le transfert de mots binaires provenant des unités de mémoire d'opérande"vas les organes périphériques» C'est une unité asynchrone qui, sur demande d'un ^organe périphérique ou de l'unité de commande principale 213, transfère le ou les mots voulus de l'unité de mémoire d'opérande vers l'unité demanderesse» L'in-35 formation d'adresse et de commande nécessaire à de tels transferts est extraite de l'emplacement associé dans la mémoire 214» Le placement du mot d'instruction approprié dans l'emplacement associé de la mémoire 214 est un signal vers l'unité de commande de sortie 212 afin de répondre à la demande émanant des organes 70 23463 24 2047938 périphériques associés«Lorsque le dernier mot de donnée ou d'ordre est transféré à l'organe périphérique,une indication de fin est envoyée par l'unité de commande de sortie 212 à l'unité de commande principale 213«Les transferts de mots multiples sont 5 traités en diminuant le contenu d'une zone dans le mot d'instruction de transfert emmagasiné dans la mémoire de mot d'instruction 214» L'unité de commande d'entrée 211 est très similaire à l'unité de commande de sortie 212 sauf qu'elle comman-10 de le transfert de mots de données binaires dés organes périphériques vers la mémoire d'opérande» Elle se trouve également sous la commande de mots d*instruction emmagasinés dans la mémoire de mots d'instructions 212» Chaque contrôleur d'organe périphérique 15 a un câble d'entrée et un câble de sortie servant à transférer les informations binaires vers les organes périphériques et de ceux-ci» Une paire de câbles d'entrée et de sortie ainsi que les fils de commande associés sont appelés canal I/O et seize canaux sont ainsi prévus dans le montage de la figure 100 Chaque canal 20 se termine à une paire d'accès logiques « Les 32 accès sont numérotés consécutivement de 0 à 31 pour faciliter le format des instructions» Il y a trois types différents de mots binaires qui peuvent être transférés entre le contrôleur d'entrée-sortie 58 25 et les organes périphériques» Ce sont : l)les mots d'instructions contenant les informations de commande pour l'unité de commande principale 213; 2) les mots d'ordre servant d'informations de commande pour les organes périphériques; 3) les mots de données qui doivent être envoyés soit aux unités de mémoire d'opérande,soit 30 aux organes périphériques « Les mots d'instructions sont acheminés sur les câbles d'entrée, les mots d'ordre sur les câbles de sortie et les mots de données sur les deux câbles» Les fils de commande servent à commander ces transferts» Le transfert d'un ou plusieurs mots7 d'ordre 35 et d'un ou plusieurs mots de données est appelé fonction de transfert d'ordre et fonction de transfert de donnée, respectivement» Le nombre de mots à transférer au cours de l'exécution d'une fonction est contenu dans un mot d'instruction correspondant à cette fonction. L'unité de commande d'entrée 211 traite les fonctions 40 de transfert de données d'entrée, tandis que l'unité de commande 70 23463 25 2047938 de sortie 212 traite les fonctions de transfert de données de sortie et les fonctions de transfert d'ordre » Toutes ces fonctions sont entamées par l'unité de commande principale 213,mais, une fois entamées, elles sont commandées par le contenu de la mé-5 moire de mots d'instructions 213«Lorsque les unités de commande 211 et 212 achèvent la fonction, un signal- d'achèvement, est envoyé à l'unité de commande principale 213 afin de permettre d'entamer la séquence d'opérations suivante» L'unité de commande principale 213 comprend 1C deux registres d'archives à 64 "bits qui contiennent les informations relatives aux états de tous les accès à tous les moments. Le registre d'archives 1 contient les informations relatives à la disponibilité des accès 0 à 19, le registre d'archives contient les informations relatives à la disponibilité des accès 20 à 31° 15 L'état de chaque accès est représenté par un code à 3 bits conformément au tableau ci-après : Code Signification 000 Accès libre mais non inhibé 001 Accès inhibé 20 010 Transfert d'ordre en cours 011 Accès inhibé pendant- transfert d > ordre 100 Transfert de donnée en cours 101 Accès inhibé pendant transfert de 25 donnée D'autres indications d'états sont possibles avec les autres codes à 3 bits. Une partie du-registre d'archives (bits 39-46) est appelée registre d'adresse de base et contient une adresse 30 de base à 8 bits« L'adresse de base identifie le premier emplacement d'un bloc de 2048 mots, dans les unités de mémoire d'opérande, Comme les séquences détaillées de mots d'instructions sont emmagasinées dans l'imité de mémoire d'opérande, cette adresse de base constitue une référence au secteur approprié des -unités 35 de mémoire d'opérande pour ces séquences. L'adresse de base est utilisée comme on le verra plus loin. Tous les mots sont transférés d'une manière asynchrone par l'emploi d'une impulsion de demande et d'une impulsion d'accusé de réception pour chaque transmission d'un mot. 70 23463 2047938 Les demandes sont envoyées par l'unité demandant une action et les accusés de réception sont renvoyés à l'unité demanderesse pour indiquer que l'action a été exécutée. Par exemple, si un organe périphérique a obtenu des données qu'il désire transférer 5 à l'unité de mémoire d'opérande,1'organe périphérique envoie une impulsion de demande au contrôleur d'entrée-sortie 58 et applique le mot de donnée au câble approprié pour l'envoyer à l'unité de commande d'entrée 211, Celle-ci emmagasine temporairement le mot dans un registre tampon et envoie une impulsion d'accusé de ré-10 ception à l'organe périphérique afin d'indiquer que le mot a été reçu. L'organe périphérique peut alors supprimer le mot binaire sur le câble,de donnée et il procède ensuite à l'envoi d'une nouvelle demande intéressant le mot suivant. L'unité de commande d'entrée 211 décode la 15 partie adresse dans la donnée reçue et engendre une demande d'inscription, dans l'unité de mémoire d'opérande appropriée. Le restant de l'adresse, ainsi que le mot de donnée,sont alors appliqués à l'unité de commutation d'interface 59= L'imité de mémoire d'opérande accepte les données et l'adresse, et renvoie 20 une impulsion d'accusé de réception à la commande d'entrée 211, Celle-ci peut alors supprimer les mots de donnée et d'adresse et procéder à la fonction suivante. Lorsqu'un organe périphérique demande des données aux imités de mémoire, la partie adresse du mot d'instruc-25 tion est décodée par la commande de sortie 212 afin d'engendrer une demande d'extraction de l'unité de mémoire appropriée. L'adresse dans celle-ci est appliquée aux lignes de sortie et lorsque la demande est exécutée, un signal d'accusé de réception est renvoyé à la commande de sortie 212, Le mot extrait est in» 3C troduit dans la mémoire tampon de la commande de sortie 212 et envoyé à l'organe périphérique approprié sur le câble de sortie convenable en même temps que l'accusé de réception qui indique que la demande originelle a été exécutée. Bien que les unités de commande 211 et 212 ne 35 puissent fonctionner que pour une demande à la. fois, ces demandes peuvent être envoyées par un organe périphérique quelconque à tout moment. Ces demandes sont mises en attente dans les unités de commande jusqu'à ce qu'elles puissent être exécutées. Pour permettre de comprendre le déroulement 4C du programme il est nécessaire d'indiquer tout d'abord 1'organi- 70 23463 2047938 sation d'une partie des imites de mémoire d'opérande» Le bloc de 79 mots indiqué par le registre d'adresse de base et appelé boîte de dépôt, est mis de côté pour être utilisé par le contrôleur d'entrée-sortie 58» La boîte de dépôt est analogue à un 5 policier dirigeant le trafic et sert a commander et â diriger la mise en route et le déroulement du programme « Les diverses fonctions et les diverses listes d'états auxquelles il doit être fait appel au cours de l'exécution des fonctions par lë contrôleur d'entrée-sortie, sont or-10 ganisées sous forme d'une chaîne de mailles» Ces chaînes sont branchées sur des mots appelés indicateurs de tête»Ces indicateurs sont emmagasinés dans la boîte de dépôt» L'indicateur de tête contient deux adresses : une adresse d'indicateur de maille et une adresse d'indicateur d'instruction qui situe le premier 15 mot d'instruction d'une fonction qui doit être exécutée«Seuls les indicateurs de tête doivent être emmagasinés dans la boîte de dépôt; les chaînes de mailles et les programmes peuvent être emmagasinés n'imporle où dans la mémoire variable» L'unité de commande principale 213 comprend un compteur d'instructions 20 pour passer successivement à chacune des instructions de programme appelées par les indicateurs de tête» La figure 11 est un schéma de l'unité de cadence et d'état 60 de la figure 3° Cette unité comprend trois sous-unités principales,à savoir : l'unité d'état 240, le géné-25 rateur de cadence 241 et l'unité de transfert de mémoire 242» Chacune de ces sous-unités exécute une fonction particulière pour le système de traitement tout entier» L'unité d'état 240, par exemple, constitue l'équipement de communication avec un pupitre d'états qui est utilisé par le personnel pour surveiller 30 le fonctionnement du système, pour extraire les données du système et pour insérer des données dans le système à des fins de maintenance et de contrôle«De plus, l'unité d'état 240 collecte, emmagasine et fournit une quantité considérable d'informations d'états concernant le système» Elle est interconnectée 35 à toutes les autres imités du système par des lignes d'état 243 qui permettent de collecter les informations d'é.tats indépendamment de tous les trajets de données nouveaux dans le système» Le générateur de cadence 241 est un équipement intermédiaire entre le système et l'horloge 244» Celle-ci 40 assure la cadence fondamentale du système de traitement"tout en 70 23463 28 2047938 tier. Le générateur 241 engendre des mots d'instruction qu'il envoie au contrôleur d'entrée-sortie afin que celui-ci exécute des séquences spécifiques d'opérations à des instants spécifiques. Le générateur 241 fournit également-des impulsions en temps réel 5 aux organes périphériques de la figure 10 afin de commander la cadence des opérations de ceux-ci»De plus, le générateur 241 peut fournir le temps machine aux unités de traitement ou aux contrôleur d'entrée-sortie sur demande» L'horloge 244 fournit un signal à 5MHz au 10 générateur de cadence 241 qui comprend un compteur de temps machine à 48 bits- Le bit de plus faible poids du contenu de ce compteur représente donc 0,2 microseconde et le contenu entier est égal à line année approximativement» En outre ,l'horloge 244 fournit au générateur de cadence un mot décimal codé en binaire 15 comptant 42 bits dont le bit de plus faible poids représente "une - milliseconde »Une imité de traitement peut demander ce mot afin de synchroniser l'horloge 244 et le générateur de cadence 241> L'unité de transfert de mémoire 242 a uniquement pour but de modifier les contenus des mémoires de programme 20 52 et 53 (figure 3)« C'est la seule imité qui a cette capacité et toutes les modifications des mémoires de programme doivent. être effectuées .par l'intermédiaire de cette unité de transfert 242oCelle-ci reçoit des mots d'ordre et de données et distribue les modifications des mémoires de programme par l'intermédiaire de 25 l'imité de commutation d'interface 61'» L'unité de transfert 242 surveille également les erreurs dans l'information reçue et signale ces erreurs à l'unité d'état- 240» Les trois unités qui viennent d'être décrites partagent des voies de communication d'entrée et de sortie » Une 30 de ces voie"sr passe par l'unité de commutation d'interface 61 0 Les données sont acheminées vers l'unité de commutation d'interface 61 et, à partir de celle-ci,de la même manière que celle suivant laquelle elles sont acheminées vers les autres unités principales ou à partir de celles-ci» Afin de pouvoir normaliser les unités 35 de commutation d'interface on prévoit une unité de transfert d'interface 245 pour multiplexér l'accès à l'imité d'état 240, au générateur de cadence 24' et à l'unité de transfert de mémoire 242, dans la seule unité de commutation d'interface 61» Afin qu'il y ait un moyen pour interrompre 40 le système en fonctionnement, on fait partager un canal unique 246 70 23463 29 2047938 du contrôleur d'entrée-sortie aux trois unités 240f241 et 242» Ce partage du canal se trouve sous la dépendance d'une unité de commande de voie 247» ' Le sous-système de maintenance et de diagnos-5 tic 18 est également connecté à l'unité de cadence et d'état 60 par 1'intermédaire du registre tampon 248«Le sous-système 18 peut ainsi recevoir des indications de l'unité 60 et commander le fonctionnement de celle-ci. L'unité d'état 240 comporte quatre dispositifs 10 d'interface principaux* Ces dispositifs comprennent l'interface manuelle entre le pupitre de commande d'état et l'unité d'état par l'intermédiaire des conducteurs 249, l'interface câblée entre l'unité d'état 240 et toutes les autres unités de 1a. commande centrale par l'intermédiaire des conducteurs 243, et deux inter-15 faces à logique réalisées par l'unité de commutation d'interface 61 et le canal 246» Le but de l'unité d'état est de collecter les informations d'états du système, d'inforner les programmes des états du système, et d'exécuter les fonctions mises en route par la logique et distribuées par ^interface câblée. Un des signaux 20 ainsi distribués est le signal de blocage propre à inhiber les transferts de données dans l'unité de commutation d'interface, et permet ainsi" de partager, segmenter et isoler le système. L'unité d'état 240 utilise le canal 246 pour interrompre le système lorsqu'une modification notable survient dans l'état du 25 système„ La. figure 12 est un schéma plus détaillé de l'unité d'état 240, Celle-ci comprend plusieurs registres d'état divisés en deux types de base : les registres à bascule 260 et les registres à déclenchement 261„ Il y a 108 registres du pre-30 mier type et 12 du second type, soit 120 registres au total. Chaque registre d'état est associé à un module particulier du système dè traitement de données. Les communications avec l'unité d'état 240 se font par l'intermédiaire d'un registre d'entrée 262 pour rece-35 voir l'information dans l'unité d'état 240 et d'un registre de. sortie 263 pour transférer l'information émanant de l'unité d'état. Le registre d'entrée 262 distribue les mots de données et d'ordre par l'intermédiaire du distributeur 264 aux registres à bascule 260, aux registres à déclenchement 261 et au circuit de commande 70 23463 30- 2047938 de matrice 265» Outre qu'il est commandé par des signaux de programme provenant du distributeur 264,le circuit de commande 265 se trouve sous la commande de signaux envoyés par l'opérateur, de son pupitre de commande, sur les conducteurs 249°Le circuit de commande de matrice 265 ainsi que le circuit de matrice 266 C constituent le système de blocage fondamental pour les circuits de traitement de données. En généralt on prévoit une matrice à points de croisement dans laquelle on utilise la coïncidence des demandes de blocage émanant des diverses unités pour engendrer 10 des signaux de blocage qui commandent l'interruption réelle des transferts de données entre ces unités» Ces signaux de blocage sont distribués par l'intermédiaire de registres à bascule 260 aux diverses unités de commutation d'interface auxquelles le blocage est effectué» 15 L'état des registres à. bascule 260 est sur veillé d'une façon continue afin de vérifier les états dans la commande centrale « Ces indications d'états sont ordonnées dans le circuit de priorité 267 et les actions de correction ou d'interruption appropriées sont mises en route par des signaux engendrés 20 dans le circuit de commande 268 et transférés au contrôleur d'entrée-sortie par l'intermédiaire de l'unité de commande de voie 247» Les 120 mots d'état dans les registres 261 et 262 sont associés aux diverses unités du système de traite-25 ment de données par une correspondance bi-univoque dans la plupart des cas. Seize mots d'état sont ainsi disponibles et correspondent aux seize unités de mémoire variable; trente-deux mots d'état sont disponibles et correspondent aux trente-deux imités de mémoire de programme; et dix mots d'état sont disponibles 30 pour correspondre aux dix unités de traitement»Certaines des unités, telle que l'imité de cadence et d'état, requièrent cinq mots différents pour représenter toutes les informations d'état relatives à cette unité. Des mots d'état sont également disponibles pour représenter l'état des divers organes périphériques il-35 lustrés sur la figure 10 ainsi que des diverses unités extérieures à la commande centrale 15 de la figure 1» La figure 13 illustre un modèle possible d'affichage pour les états des unités du système de traitement de données représenté sur la figure 2„ Ces unités sont divisées 70 23463 31 2047938 en deux types fondamentaux : les unités demanderesses et les unités solicitées. Les uni tés demanderesses: comprennent le.s processeurs, les contrôleurs d'entrée-sortie, et les imités de cadence et d'état. Elles sont appelées demanderesse car elles sont propres 5 à émettre des demandes de service aux autres unités» D'une manière similaire, les unités sollicitées comprennent les mémoires de programme, les mémoires d'opérande, les contrôleurs d'entrée-sortie et les unités de cadence et d'état» La matrice d'affichage représentée sur la figure 13 convient particulièrement pour afficher 1C les états de ces unités d'une manière graphique» La position dAffichage au droit 'de chaque point de croisement, correspondant à une des unités demanderesses et une des unités soDicLtœ s peut être utilisée pour indiquer 11 état 5ss interconnexions entre cette unité demanderesse et cette unité sollicitée c. Par exemple, si des lampes 15 sont utilisées à ces points d'affichage, une seule lampe allumée peut être utilisée pour indiquer l'interruption d'une communication entre les deux unités» De plus, différentes lampes de couleurs peuvent être utilisées pour représenter les états de ces unités en ce qui concerne la répartition, la segmentation et l'iso-20 lement» Par exemple, les unités intéressées dans une répartition particulière peuvent être identifiées par des lampes de couleur similaire au point d'intersection approprié» Comme on peut le voir sur la figure 13, des bancs séparés de positions d'affichage sont prévus pour distinguer entre l'isolement et la répartition 25 pour chacune des unités» Comme toutes les unités demanderesses n'ont pas accès à toutes les unités sollicitées des lampes d'affichage ne sont pas requises à certains points de croisement» Le dispositif d'affichage de la figure 13 30 fait partie du pupitre de commande d'état connecté'à l'unité d'état 240 de la figure 11».Pont également partie de ce pupitre de commande d'état les bancs de commutateurs manuels qui peuvent être utilisés pour engendrer des signaux de commande de répartition, de segmentation et d'isolement» Ces signaux engendrés ma-35 nuellement, et les signaux engendrés pa.r logique à partir du registre à bascule 260 (voir figure 12),sont utilisés pour commander la génération des signaux de blocage nécessaires pour exécuter les opérations d'isolement, de segmentation et de répartition» La figure 14 montre un schéma détaillé de la 40 logique de blocage qui fait partie de l'unité d'état 240(fig«1l) 70 23463 32 2047938 et, plus particulièrement, du circuit de commande de matrice 265 et de la matrice 260 de la figure 12» Les circuits de commande de matrice sont divisés en deux types,: les circuits de commande demandeurs 330 et les circuits de commande sollicités ."331 „Panni 5 les circuits de commande demandeurs figurent les circuits de commande de mémoire variable 332, dont le nombre est de 16 pour correspondre aux 16 unitJfe de mémoire variable. Ce typé de circuit de commande comprend également deux circuits de commande de cadence et d'état 333, quatre circuits de commande de contrôleur d'en-10 trée-sortie 334,et trente-deûx circuits de commande de mémoire de programme 335° Les circuits de commande sollicités 331 comprennent dix circuits de commande d'unité de traitement 336, deux circuits de commande de cadence et d'état 337 et quatre circuits de commande de contrôleur d'entrée-sortie 338» La sortie de cha-15 cun de ces circuits de commande comprend une ligne de matrice telle que les lignes 339 et 340 que l'on appellera ci-après li-gnœ demanderesses et ligne s demandée s, respectivement. Au point d'intersection de chaque ligne demanderesse avec chaque ligne demandée se trouve un circuit lo-20 gique 341s Tous les circuits logiques 341 sont identiques et utilisent les signaux acheminés sur la ligne demanderesse et sur la ligne demandée afin d'engendrer des signaux de commande à des fin de blocage. On reviendra plus loin sur les détails de ces circuits. 25 Afin de faire mieux comprendre le. montage de blocage, on a représenté sur la figure 15 un exemple simplifié de génération et d'utilisation des signaux de blocage. On rappellera tout d'a.bord que deux unités de cadence et d'état sont prévues dans le système de traitement de données. Sur la figure 15 30 ces deux unités sont représentées par l'unité 350 et par 1'-unité 351. Ces unités sont identiques à tous égards mais ils engendrent des signaux de blocage indépendante, Comme on peut le voir dans la partie de la figure qui représente l'unité 350, les signaux demandeurs sont appliqués aux circuits de commande de matrice 330 35 tandis que les signaux demandés sont appliqués aux circuits de commande de matrice 331, La matrice 266 engendre des signaux de blocage qui sont appliqués a.u registre à bascule 260. Le signal de blocage est appliqué à la position appropriée de la matrice 260 par l'intermédiaire de la porte 355 et engendre un signal 40 de blocage sur le conducteur 356, Les états de blocage sont emma 70 23463 33 2047938 gasinés dans les circuits de commande 330,331 et ils peuvent être lus et testés par les unités de traitement»-Le bit d'état 353 peut être mis à la valeur 1 par 'des signaux de programme et, s'il n'est pas invalidé par la porte ET 354, il fournit des si— 5 gnaux de blocage indépendante , par paire, sur le conducteur 356» Le signal de blocage s'u? le conducteur 356 est appliqué à l'unité de commutation d'interface de l'unité qui doit être bloquée, dans l'exemple choisi il s'agit de l'unité de commutation d'interface 357 de l'unité de mémoire variable 1» 1C Le signal appliqué sur le conducteur 356 se trouve appliqué à la porte OU 358 dans laquelle il est réuni par voie logique à un signal similaire provenant de l'unité de cadence et d'état 351» La sortie de 1a. porte OU 358, qui apparaît sur le conducteur 359, est appliquée à un dispositif d'affichage 15 tel que celui qui est illustré sur la figure 13, et elle est également appliquée à la porte ET 360»Celle-ci inhibe le transfert des données entre l'unité de mémoire variable 1 et l'unité de traitement 1 en inhibant les demandes de transfert . De cette manière, le blocage devient effectif dans l'unité de commutation d'interface afin d'empêcher le transfert des signaux entre les deux unités» Il est bien entendu que le montage représenté sur la figure 15 n'est qu'un simple exemple d'interconnexion et de logique similaires prévœs pour bloquer les communications entre deux quelconque des unités du système de traitement de données de la figure 2» Une unité est isolée lorsqu'elle est bloquée par rapport à toutes les unités du système» Plusieurs unités sont séparées lorsqu'elles sont coupées de toutes les autres -unités du système sauf de celles qui font partie de leur groupe» Chacune de ces fonctions, c'est-à-dire l'isolement et la répartition, sont commandées par le même type de signaux de blocage engendré d'une matière similaire dans les unités .de commutation d'interface pour empêcher les transferts de données» La segmentation constitue un degré de liberté qui ne peut toujours être traité par le circuit de commande de matrice puisqu'un segment peut également être considéré_comme line répartition à l'intérieur d'une répartition» En conséquence un segment peut être établi par action directe de la logique sur les positions de bit d'état 353 par l'intermédiaire d'un dispositif 70 23463 34 2047938 d'interface 353 qui court-circuite le circuit de commande de matrice. Cette particularité est incorporée dans l'unité d'état et est accessible par des instructions émanant de l'unité de traitement. La figure 16 est un schéma détaillé d'une logique 5 utilisant les circuits logiques des figures 19 à 23, de la partie répartition de la logique de commande demanderesse représentée par le bloc 330 sur la figure 14. Une bascule 420 est prévue pour emmagasiner les demandes de répartition initiées par un programme. La bascule 420 se trouve sous la commande des portes ÏTON-ET 421 et 10 422. Ces demandes de répartition sont formulées par des instructions, une demande de répartition particulière étant représentée par une configuration de bits de données appliquée à des portes similaires aux portes ÎTOU-ET 421 et 422 dans les circuits logiques généraux des circuits de commande de répartition des unités demanderesses. 15 Les demandes manuelles sont engendrées par des commutateurs sur le pupitre de commande d'état et elles arrivent sur le conducteur 423 en même temps qu'un signal de validation de mode manuel sur le conducteur 424* Ces signaux sont appliqués aux circuits collecteurs communs425 et 426, respectivement, dont 20 les sorties sont appliquées à la porte ïïON-ET 427. La sortie de la porte NOÏT-ET 427, ainsi que la sortie 0 de la bascule 420, sont appliquées à la porte Kl 428 dont la sortie est appliquée au circuit de commande de câble 429• On peut voir qu'une demande de répartition 25 émanant du programme, telle qu'enregistrée dans la bascule 420, ou une demande provenant d'une manipulation manuelle indiquée par la sortie de la porte M)ÏJ-ET 427, engendre un signal sur le conducteur 430 afin d'indiquer la demande de répartition. La sortie "1" de la bascule 420 est appliquée au circuit indicateur 431 30 afin de procurer un accès bilatéral à la bascule 420 au profit du sous-système de maintenance et de diagnostic. Un circuit logique de circuit de.commande tel que représenté sur la figure 16 est prévu pour chacune des unités demanderesses, c'est-à-dire qu'il y a 16 circuits logiques de ce 35 type, un pour chacun des modules de mémoire variables, deux pour les modules de cadence et d'état, quatre pour les contrôleurs d'en-trée-sortie, et un circuit logique pour chacun des 32 modules de mémoire de programme. 70 23463 35 2047938 La figure 17 montre le circuit logique de commande de répartition pour les unités sollicitées telles que le bloc 331 sur la figure 14. Dans.un but de simplicité on a supposé que deux répartitions séparées seulement sont nécessaires pour 5 le système de traitement de données selon l'invention. Ces deux répartitions sont identifiées respectivement par les chiffres 1 et 2. Une bascule 440 sert à enregistrer une demande de répartition 1 (SR 1 ) émanant d'un programme. Cette demande SE. 1 apparaît sous forme de signaux à l'entrée des portes ÎTOÏT-ET 441 et 442. 10 D'une manière similaire, la bascule 443 emmagasine une demande de répartition 2 (SR 2) émanant d'un programme et apparaissant sous forme de signaux à l'entrée des portes NOET-Eî 444 et 445. Les demandes de répartition manuelles (MR) apparaissent sur un conducteur unique 446 sur lequel un signal 15 "1" indique une demande de répartition 1, et un signal "0" indique une demande-de répartition 2. Ces signaux sont appliqués au circuit collecteur commun 447 dont la sortie normale apparaît sur le conducteur 448 et dont une sortie inversée apparaît sur le conducteur 449- Un signal de validation de mode manuel présent 20 sur le conducteur 450 est appliqué au circuit collecteur commun 451. D'une manière similaire, un signal de validation de mode automatique présent sur le conducteur 452 est appliqué au circuit collecteur commun 453. Les sorties "0" des bascules 440 et 443, 25 ainsi que les sorties des collecteurs communs 447, 451 et 453, • sont appliquées sélectivement au jeu de portes U0ÏÏ-ET comprenant les portes 454,455,456 et 457. Les" portes N0ÏF-ET 454 et 455 produisent des signaux qui indiquent une demande d'insertion dans la répartition 1. Ces signaux sont appliqués à la porte NI 458 30 et de là au circuit de commande de câble 459- D'une manière similaire, les portes ÏTOÏT-EÏ 456 et 457 produisent des signaux qui indiquent des demandes d'insertion dans la répartition 2. Ces signaux sont appliqués à la porte HT 460 et de là au circuit de commande de câble 461. Un signal apparaissant sur le conducteur 462 35 indique donc une demande d'insertion dans la répartition 1 tandis qu'un signal qui apparaît sur le conducteur 463 indique une demande d'insertion dans la répartition 2. Les circuits indicateurs 464 et 465 servent 70 23463 3 2047938 à procurer l'accès aux bascules 440 et 443 d'une manière similaire au. circuit 431 sur la figure 16. On soulignera qu'un circuit logique similaire à celui de la figure 17 est requis pour chacune des unités sollicitées repré-5 sentées par le bloc 331 sur la figure 14. C'est ainsi que le système comprend dix circuits logiques, pour la commande des modules de processeur, deux circuits logiques pour la commande des modules de cadence et d'état, et quatre circuits logiques pour la commande des contrôleurs d'entrée-sortie. Bien que les circuits des figures 16 et 10 17 aient été décrits comme étant destinés à établir des répartitions, il est bien évident que l'on peut tout aussi bien établir des segmentations dans le système. Chacun des circuits de commande demandeurs et chacun des circuits de commande sollicités de la figure 14 comprend également 15 un circuit logique de commande de demande d'isolement tel que le circuit représenté sur la figure 18. Une bascule 470 emmagasine des demandes d'isolement émanant d'un programme tel que lès demandes SR qui sont appliquées aux portes NON-ET 471 et 472. Une demande manuelle MR, arrivant sur le conducteur 473, est appliquée au circuit 20 collecteur commun 474. D'une manière similaire, un signal indiquant que l'unité associée a perdu son énergie, est disponible sur le conducteur 475 et est appliqué au circuit collecteur commun 476. Comme la perte d'énergie dans un module demande que ce module soit isolé du restant du système, un tel signal de coupure d'alimentation est traité 25 de la même manière qu'une demande d'isolement. La sortie "1" de la bascule 470, ainsi que les sorties des collecteurs communs 474 et 476, sont appliquées à la porte NI 477 dont la sortie est appliquée au circuit de commande de câble 478 .Un signal de sortie sur le conducteur 479 indique par conséquent que le mo-30 dule correspondant doit être isolé du restant du système. Le circuit indicateur 480 est connecté à la sortie "0" de la bascule 470 à des fins similaires a celles décrites à propos des figures 16 et 17. La figure 19 montre le,circuit logique requis 35 à chacun des points de croisement sur la -figure 14- La figure 19 représente par conséquent la logique 341 de la figure 14. On remarquera qu'un seul circuit logique est requis pour chaque paire ligne demanderesse - ligne demandée. Le conducteur d'entrée 479 achemine un signal indiquant une demande d'isolement. Ce si- 70 23463 37 2047938 gnal est dérivé d'un circuit similaire au circuit de la figure 18„ Le conducteur 479'*achemine un signal indiquant une demande d'isolement émanant d'un module sollicité et ce signal est également dérivé d'un circuit similaire à celui de la figure 18„ 5 Un signal sur le conducteur 430 indique une demande de répartition émanant d'une unité demanderesse et ce signal est dérivé d'un circuit similaire à celui de la figure 16« Un signal sur le conducteur 462 indique une demande d'insertion dans la répartition 1, émanant d'un module sollicité tandis 1C qu'un signal sur le conducteur 463 indique une demande d'insertion dans la répartition 2, émanant d'un module sollicité«, Les signaux sur les conducteurs 462 et 463 sont dérivés de circuits similaires à celui de la figure 17» . Le signal sur le conducteur 430 est appli-15 qué directement à la porte HON-ET 490 et, par l'intermédiaire d'un circuit inverseur 491, à la porte NON-ET 492» Les sorties des portes NON-ET 490 et 492, ainsi que les signaux sur les conducteurs 479 et 479', sont appliqués à la porte NI 493 dont la sortie est appliquée aux circuits de commande de câble 494 et 2C 495« Le signal de sortie apparaissant sur le conducteur 496 est un signal de blocage qui peut être appliqué au circuit de commutation d'interface de chaque module sollicité et peut être utilisé pour inhiber l'accès, à un module sollicité spécifique,par ce module demandeur., L'utilisation spécifique de l'un de ces; si-25 gnaux de blocage a été décrit à propos de l'unité de commutation d'interface de 1a. figure 9» On peut voir que les signaux de blocage engendrés par les circuits similaires à celui de la figure 19 assurent -un moyen pour empêcher les communications entre chaque 30 paire de modulœ demandeur-sollkité du système de traitement de données-. L'inhibition de communication sépare, effectivement ces paires de modules puisqu'aucune communication n'est permise entre eux. Lorsqu'ils sont ainsi séparés, les modules peuvent participer à des opérations de traitement de données séparées et indé-35 pendantes, sous la commande de programmes différents, en utilisant des unités de traitement différentes et des unités de mémoire variable différentes, ainsi que des unités de cadence et d'état et des contrôleurs d'entrée-sortie différents» Les répartitions différentes deviennent par essence des systèmes de trai 70 23463 38 2047938 tement de données différents et elles peuvent être utilisées comme telles aussi longtemps que la répartition se maintient» Cet aspect est particulièrement utile dans de grands systèmes de traitement de données qui sont occasionnellement très chargés en tant réel mais qui, à d'autres moments, ne sont que faiblement chargés et où il est par conséquent souhaitable d'utiliser l'excès de capacité de traitement en données du système à d'autres utilisations» A titre d'exemple d'utilisation des capacités de traitement de données en temps réel en dehors des heures de pointes, une partie du système peut être séparée des travaux de calcul en temps réel et utilisée pour un traitement de données en temps non réel tel que; par exemple, des fonctions d'assemblage, de compilation et divers processus de maintenance et de diagnostic » • 70 23463 39 2047938 REVENDICATION S 1.- - Système calculateur modulaire comprenant plusieurs unités de traitement, plusieurs .unités d'emmagasinage 5 et "plusieurs unités périphériques d'entrée-sortie, et des circuits de commutation associés à chaque unité pour commander les interconnexions entre les unités,caractérisé en ce qu'un montage commande les circuits de commutation pour effectuer une répartition des unités du système en plusieurs systèmes calculateurs se-10 parés travaillant indépendamment l'un de l'autre» 2»- Système calculateur modulaire selon la revendication 1, caractérisé en ce que ledit montage comprend une matrice logique séparant les unités demandant un service des unités accordant un service, chaque point de croisement 15 de la matrice logique fournissant des signaux pour empêcher les communications entre une seule unité demandant un service et ■une seule unité accordant un service » 3„- Système calculateur modulaire selon la revendication 2, caractérisé en ce que la matrice logique est 20 commandée par des signaux engendrés par un programme et emmagasinés dans la matrice logique » 4„- Système calculateur modulaire selon la revendication 2, caractérisé en ce que la matrice logique est commandée par des signaux engendrés manuellement à partir d'un 25 panneau de commande» 5„- Système calculateur modulaire selon la revendication 1, caractérisé en ce que ledit montage commande également les circuits de commutation pour isoler une seule unité quelconque du système » 30 6.- Système calculateur modulaire selon la re vendication 1, caractérisé en ce que ledit montage comprend un panneau d'affichage indiquant dans quelle répartition est insérée chaque unité»