Brevet FR2010550A1 — publié le 19700220

i 2010550 La présente invention concerne un ensemble modulaire rapide de traitement de l'information ou ordinateur modulaire rapide comportant plusieurs modules fonctionnels. Elle concerne plus particulièrement un ensemble modulaire de traitement 5 de l'information comprenant une mémoire centrale rapide composée de plusieurs modules de mémoire à noyaux magnétiques ou tores magnétiques présentant une capacité de mémoire variable et des vitesses opérationnelles variables, ainsi qu'un module de traitement central perfectionné ou plusieurs modules de ce genre, un ou plusieurs modules de commande d'entrées/sorties et un ou plusieurs modules de demande de données. On sait que le développement des circuits et des éléments logiques a amené les ensembles de calcul rapides actuels au plus près d'un dilemne ridicule. En effet, les circuits arithmé-15 tiques perfectionnés qui utilisent les éléments logiques les plus avancés fonctionnent avec une propagation de signaux par rafales isolées et fantastiques, puis attendent patiemment pendant des périodes relativement longues soit le transfert de l'information d'entrée/sortie, soit, de façon de plus en plus importante, le 20 transfert de l'instruction suivante à partir de la mémoire centrale de l'ordinateur. Des mémoires rapides utilisant des éléments de mémoire plus rapides tels que des éléments superconducteurs, des twistors magnétiques, des films magnétiques minces et des lames 25 de ferrite, que l'on pensait il y a quelques années avoir supplanté les mémoires à tores de grande capacité, se sont maintenant révélées être trop lentes. De nombreuses tentatives pour fabriquer des mémoires de capacité faible et constante en utilisant ces variantes rapides ont rencontré des difficultés consi-30 dérables. On ajcependant construit avec succès quelques unités de mémoire rapide de dimensions modestes. C'est ainsi que l'ordinateur décrit dans le brevet français n° 1.390.242 utilise une mémoire à films magnétiques minces de petites dimensions dans chacun de ses modules de calcul. On a également présenté d'autres 35 ensembles de calcul utilisant des mémoires à films minces ayant pratiquement les mêmes faibles dimensions. On appelle en général ces mémoires "mémoires à tampon d'effacement". Comme le nom l'indique, ces unités étaient en général utilisées par les organes de calcul de l'ordinateur bad original 69 18492 2 2010550 lorsqu'il effectuait ses manipulations arithmétiques. Elles servaient par exemple à la mise en mémoire temporaire des résultats intermédiaires obtenus au cours d'un calcul arithmétique de grande longueur. On les utilisait également pour la mise en mémoire 5 de l'information mathématique qui doit être souvent utilisée. Ceci permettait à l'unité de calcul de fonctionner avec plus d'efficacité, étant donné que cette information pouvait être mémorisée pluçfcapidement ou être disponible plus rapidement dans le temps d'identification réduit de cette mémoire rapide de très faibles 10 dimensions. Ceci constituait évidemment un perfectionnement considérable, mais cependant le problème de base de l'ordinateur n'a pas été résolu. La durée relativement longue du cycle de la mémoire centrale à grande capacité demeure pour l'ordinateur une entrave qu'il faut bien en fin de compte affronter. 15 C'est pourquoi l'invention se propose d'éliminer la limitation de l'ordinateur que constitue la vitesse d'accès de la mémoire centrale. Ce problème se résoud essentiellement à l'aide d'un ordinateur présentant une mémoire centrale rapide, A cet effet, l'invention a pour objet un ensemble 20 modulaire de traitement de l'information comprenant plusieurs modules de mémoire, plusieurs modules de commande d'entrées/sorties connectés à ces modules de mémoire de façon à fournir une communication bidirectionnelle entre chacun de ces modules de commande et chacun de ces modules de mémoire et plusieurs modules centraux 25 de traitement connectés à ces modules de mémoire pratiquement de la même manière, chacun de ces modules de mémoire comprenant une parmi plusieurs piles de mémoires de capacités de mémoire différentes et chacun de ces modules centraux de traitement comprenant des moyens de sélection pour choisir l'une de ces piles de mé-JO moires en vue de son utilisation dans le^fnodules de mémoire de l'ensemble. La figure 1 illustre schématiquement la disposition générale d'un ensemble maximum conforme à l'invention. . La figure 2 est un schéma synoptique de l'ensemble 35 de la figure 1. La figure 3 représente un schéma de câblage simplifié montrant les trajets de communication des données entre les blocs principaux. La figure 4 représente également un schéma de câ-40 blage intermodules montrant des .lignes de commande supplémentaires bad original 69 18492 3 2010550 entre les blocs principaux. La figure 5 est un schéma synoptique fonctionnel des modes opérationnels du Module de Calcul sous la commande des signaux d'interruption. 5 La figure 6 est un schéma synoptique de base illus trant le trajet d'un signal d'interruption au cours d'une opération d'entrée/sortie. Les figures 7 et 8a à 8E illustrent.les divers formats de mots descriptifs utilisés par les Modules de Commande 10 d'entrées/sorties I/O pour commander l'opération de passage d'entrée/sortie de la figure 6. La figure 9 représente un schéma de câblage extérieur du Module de Calcul de l'ensemble de la figure 1. La figure 10 représente un schéma de câblage exté-15 rieur d'un Module de Commande d'Entrées/Sorties de cet ensemble. La figure 11 représente un schéma de câblage extérieur d'un Module de Mémoire de cet ensemble. La figure 12 représente un format de mot d'opération pour les divers types d'opérations que peut effectuer le 20 Module de Mémoire. La figure 13 représente un schéma de câblage du central de commutation d'entrées/sorties illustrant les interconnexions entre les armoires des Modules de Commande d'Entrées/ Sorties I/O et les dispositifs périphériques. 25 La figure 14 est un schéma synoptique fonctionnel d'un Module de Calcul individuel montrant sa zone de mémoire à films minces, sa zone arithmétique et sa zone de commande/logique. Les figures 15A à 15R représentent les formats de tous les mots de données utilisés dans le Module de Calcul. 30 La figure 16 constituée par la juxtaposition des figures 16A et lôB représente une carte qui permet d'identifier les emplacements d'adresse de la zone de mémoire à films minces du Module de Calcul de la figure 14-. La figure 17 est un schéma synoptique détaillé de 35 la zone arithmétique du Module de Calcul de la figure 14. Les figures l8A à l8c représentent un schéma de connexion du commutateur logique de la zone arithmétique de la figure 17- La figure 19 est un schéma synoptique de l'organe bâç original 69 18492 4 2010550 de traitement du programme. La figure 20 illustre en détail la section d'interruption de la figure 19. La figure 21 représente un schéma synoptique de 5 l'organe de commande de la mémoire. La figure 22 est un schéma synoptique détaillé de la zone de mémoire à films minces du Module de Calcul. La figure 23 constituée par la juxtaposition des figures 23A et 23B représente un schéma synoptique détaillé d'un 10 Module de Commande d'entrées/sorties I/O comprenant les première et seconde unités de commande d'entrées/sorties I/O. La figure 24 constituée par la juxtaposition des figures 24A et 24B représente un schéma synoptique détaillé d'un Module de Mémoire centrale individuel tel qu'il est utilisé dans 15 l'ensemble de la figure 1. L'ensemble modulaire de traitement de l'information ou ordinateur modulaire décrit est supposé être le premier ensemble à pleine échelle à employer des modules à noyaux magnétiques ou tores magnétiques non seulement de capacités diffé-20 rentes, mais encore de vitesses différentes. Il suffit de passer par commutation des modules ayant une capacité donnée à des modules ayant une autre capacité. C'est ainsi qu'on peut passer par commutation manuelle de modules ayant une capacité de 4096 mots à des modules ayant 16.384 mots. 25 Les suites de chiffres de référence utilisées dans les autres figures se déduisent logiquement de celles utilisées dans la figure 1. C'est ainsi que les Modules de Calcul qui portent la référence générale 200 sur la figure 1 portent plus précisément les références 201, 202, etc.. sur la figure 2. 30 La figure 1 représente schématiquement un mode de réalisation d'ordinateur. Celui-ci est divisé par des lignes interrompues pour montrer ses parties principales. La mémoire centrale 100 qui comporte un total de seize modules est reliée par plusieurs connexions de communication distinctes à la partie 35 de calcul ou de traitement constituée de modules de calcul 200 par l'intermédiaire d'un central de commutation à enclenchements. L'information des dispositifs périphériques 600 est utilisée par une partie de commande constituée de modules de commande d'entrés^/ sorties 400 qui est reliée d'une façon analogue à la mémoire bas original^ 69 18492 5 2010550 centrale 100 par l'intermédiaire du central 300. Un central d'entrées/sorties 500, très analogue au central 300, est connecté entre la partie de commande 400 et les périphériques 600. Le central 300 constitue des moyens de communication simultanée 5 entre chacun des Modules de Mémoire de la mémoire centrale 100 et un nombre égal de Modules de Calcul distincts de la partie de traitement 200 et de Modules de Commande dfentrées/sorties ou 1/0 de la partie de commande d'entrées/sorties ou I/O 400. Les périphériques comprennent des horloges spé-10 ciales àjtemps réel-convertisseurs de données 600a, des imprimantes de lignes rapides 600b, des consoles imprimantes à clavier o00ç_, des lecteurs de cartes rapides 600d, des dérouleuses de bandes magnétiques 600e, des lecteurs et perforateurs de bandes papier 600f, des tambours magnétiques 600£, des piles de disques 15 magnétiques 600h et leurs contrôleurs 6003., des consoles spéciales de représentation visuelle 600j_, des perforateurs de cartes 600k, des lecteurs de cartes lents 6001 et des tampons ou mémoires intermédiaires de liaison interne de données 600m. La figure 2 représente plus en détail la configu-20 ration modulaire de l'ensemble, chacun des modules étant respectivement représenté par un rectangle ou bloc. Les seize modules de Mémoire portent les références 101 à 116 ou MO à M15. Les quatre Modules de Calcul 201, 202, 203 et 204 ou Cl, C2, C3 et C4, les dix Modules de Commande d'Entrées/Sorties ou Modules 25 d'Entrées/Sorties ou encore Modules de Commande I/O 401 à 410 et les deux Modules de Demande de Données 700.(701 et 702 ou DDM 1 et DDM 2)sont tous reliés à chacun de ces Modules de Mémoire par l'intermédiaire du central 300. Chacun des Modules de Commande I/O est en outre divisé en deux unités de commande, ce qui donne 30 un total de vingt unités de commande d'entrées/sorties ou unités de commande I/O (I/O 0 à I/O 19)si l'on ne tient pas compte des modules de demande de données. Tous les Modules de Commande I/O sont reliés par l'intermédiaire du central ou réseau d'entrées/ sorties 500 à soixante-quatre périphériques 600. Ceux-ci peuvent 35 comprendre trente-deux dispositifs simples d'entrée et trente- deux dispositifs simples de sortie ou bien trente-deux dispositifs complexes ou mixtes ou encore des combinaisons de dispositifs simples et complexes. La figure 2 représente encore deux groupes de 40 modules tampons de données DBM 1 à DBM 8 avec deux liaisons 2a bad original ' 69 18492 2010550 et 2b vers le réseau de communications (255 lignes complexes-rapides et lentes). Les références 2c signifient enfin "OU". Les figures 3 et 4 sont des schémas du central 300 montrant les modules de l'ordinateur et leurs interconnexions 5 respectives, la figure 3 illustrant le transfert des données à travers l'interface centrale et la figure 4 des lignes de commande supplémentaires dans cette interface. Les nombres entourés d'un cercle indiquent les nombres de lignes des câbles. Considérons d'abord les données quittant la mémoire. Cette information 10 est conduite par les câbles à quarante neuf lignes qui proviennent de la partie inférieure de chacun des Modules de Mémoire 101 à 116, l'ensemble de ces câbles portant ce que l'on appelle "Données d'information provenant de la Mémoire" 3a. Ce groupe de 16 câbles à 49 lignes est représenté par un trait noir épais de 15 largeur uniforme qui est successivement relié à chacun des treize autres modules 201 à 203, 401 à 408, 701 et 702 de l'ordinateur. La connexion initiale est représentée sur le Module de Calcul 201, mais cependant aucun ordre particulier n'est obligatoire. La commande de l'écoulement des données d'infor-20 mation le long des 16 câbles à 49 lignes est obtenue grâce à un groupe de 16 câbles de commande à 13 lignes, chacun de ces câbles provenant de l'un des seize modules de mémoire, l'ensemble de ces 16 câbles constituant ce que l'on appelle "Données de Commande provenant de la Mémoire" 3b. Ce sont les signaux qui se pro-25 pagent le long de ce groupe de câbles qui dirigent l'écoulement des données d'information de l'un des 16 Modules de Mémoire 101 à 116 à l'un des treize autres modules restants 201 à 203, 401 à „408, 7°1 et 702 de l'ordinateur. On peut également en général appeler ce groupe de modules restants "modules de non-mémoire", 30 étant donné qu'ils ne font pas partie de la mémoire centrale. On pourrait également les appeler "modules utilisateurs de la mémoire". Le câble de commande à 13 fils qui sort de chacun des 16 Modules de Mémoire 101 à 116 est connecté aux autres mo-35 dules d'une façon complètement différente de celle du câble à 49 lignes indiquée plus haut. Chaque Module de Mémoire de l'ordinateur est connecté séparément par une ligne de commande unique à chaque module de non-mémoire. L'un des 13 fils du Module de Mémoire 101 est connecté au Module de Calcul 201, un autre au bad ORIGINAL 69 18492 7 2010550 Module de Calcul 202 et ainsi de suite jusqu'à ce que chacun des 13 fils issus du Module de Mémoire 101 soit connecté à un autre module de non-mémoire distinct. Ce schéma de connexion se répète pour chacun des autres Modules de Mémoire 102 à 116. On obtient 5 ainsi un groupe de 13 câbles à 16 fils chacun, un de ces câbles à 16 fils étant connecté à chacun des trois Modules de Calcul 201 à 203* à chacune des huit armoires des Modules d'entrées/sorties ou Modules I/O 401 à 408 et aux modules DDM 701 et J02 comme le montre la partie inférieure de la figure 3. 10 Si l'on considère maintenant les câbles d'entrée arrivant aux quatre Modules de Mémoire comme le montre la figure 3, leur connexion s'obtient d'une autre manière. Les données d'information destinées à la Mémoire sont encore transférées par un câble à 49 lignes; cependant, dans ce cas, chacun des treize 15 modules de non-mémoire 201 à 203» 401 à 408, 701 et 702 connecte son propre câble de commande à 49 lignes distinct au Module de Mémoire 101. Dans ce cas, les trois câbles de commande provenant des Modules de Calcul 201, 202 et 203 et les câbles de commande provenant des huit Modules de Commande I/O 401 à 4o8 et des deux 20 modules DDM 701 et 702 présentent deux lignes. Ainsi, comme le montre la figure 3» vingt-six câbles sont connectés au Modules de Mémoire 101, treize de ces câbles étant des câbles pour données d'information à 49 lignes dont on appelle l'ensemble "Données/ Adresse à destination de la Mémoire" 3ç et treize des câbles pour 25 données de commande à 2 lignes dont on appelle l'ensemble "Commande de Données à destination de la Mémoire" 3d et qui proviennent des armoires de Modules de Contrôle I/O 401 à 410, des modules DDM 701 et 702 et des Modules de Calcul 201, 202 et 203. Ces vingt-six câbles sont ensuite connectés successivement à 30 chacun des Modules de Mémoire 102 à 116. Si l'on considère maintenant sur la figure 4 les lignes de commande provenant des Modules de Mémoire 101 à 116, ces lignes, que l'on appelle "Lignes de Détection d'Erreur provenant de la Mémoire" 4a, sont utilisées pour apporter une infor-35 mation supplémentaire telle qu'une erreur de parité sur une adresse ou sur des données ou une tentative d'écrire en dehors des limites de l'ordinateur. Chaque Module de Mémoire est connecté à chaque Module de Calcul par l'intermédiaire de lignes uniques, le Module de Mémoire 101 envoyant par exemple une ligne vers 69 18492 8 2010550 chaque Module de Calcul 201 à 203- Par conséquent, un groupe de 3 câbles de 16 fils chacun est connecté aux Modules de Calcul 201 à 2C-3. Considérons maintenant les lignes d'interruption 5 provenant des Modules de Calcul 2C1 à 2C3• Chaque Module de Calcul ou Calculateur est prévu de faoon à pouvoir s'interrompre lui-même ou interrompre n'importe quel autre nodule de calcul de l'ordinateur, chaque Module de Calcul envoyant un câble à trois lignes, que l'on appelle "Lignes d'Interruption des Modules 10 de Calcul" 4b , vers tous les autres Modules de Calcul. Les deux lignes qui quittent chacun des modules LDM 701 et 702 sont une ligne de requête extérieure et une ligne d'accusé de réception de mot descriptif. Ces lignes sont également connectées à tous les Modules de Calcul. Par conséquent, deux 15 câbles de deux lignes chacun sont connectés successivement à chacun des trois Modules de Calcul 201 à 2C3. Les Modules d'Entrées/ Serties envoient d'une façon analogue des lignes vers les Modules de Calcul. Chaque Module I/O, en raison de son caractère double, envoie deux lignes de requête extérieure, deux lignes d'accusé 2C de réception de mot descriptif et deux lignes d'achèvement I/O, ce qui donne un groupe total 4c_ de six lignes envoyé de chacun des modules i/C à tous les Modules de Calcul. Il en résulte qu'un groupe de £ câbles de c lignes chacun est connecté successivement à chacun des treis Modules de Calcul. £5 Comme le montre la figure chaque Module de Mémoire est simplement connecté au précédent et en veit que le groupe de 2c câbles, ainsi que le groupe de 16 cables d'information à 49 limes, le groupe de 16 câbles de commande à 13 lignes provenant des Modules de Mémoire ICI à 11'^, les 16 câbles 30 de commande à 3 lignes provenant également de ces Modules de Mémoire, les 3 câbles à trois lignes entre les calculateurs, le groupe de deux câbles à ceux lignes provenant des DDM et le groupe de c câcles à 6 lignes prévenant des Modules I/O ou I/O peuvent voir leur nombre aupenter lorsque la taille de l'ordinateur -* l'exige. Le oen-ral 3CC représenté par 1e figure 1 est en fait -institué par le .s ;âbles que l'on "lent de décrire. T! n'existe pas comme entité physique distincte, mais es:: piuôt autcmatl -quement créé par l'interconnexion modulaire. Il s'adapte automatiquement pour se conformer aux changements de taille de 4C l'ordinateur lorsqu'on ajoute ou ôte des modules. bad obiginai 69 18492 9 2010550 La figure 5 illustre le système de commande d'interruption réalisé dans l'ordinateur. Ce système non seulement détecte les défauts de fonctionnement et les conditions particulières et corrige ces conditions ou y répond, mais encore tente 5 de protéger l'ordinateur contre une panne totale sans arrêter tout le traitement. Ceci s'obtient en faisant reconnaître au Module de Calcul les signaux d'interruption d'erreur lorsque le module fonctionne déjà dans le mode d'interruption. L'ensemble fonctionne alors non seulement dans un mode normal et dans un 10 mode (de commande) d'interruption, mais en outre dans encore un autre mode d'interruption. Le terme "interruption" ici utilisé ne l'est pas dans son sens habituel pour indiquer une suspension ou une cessation, mais plutôt pour indiquer un décalage ou un transfert. On 15 peut le considérer comme une requête adressée au Module de Calcul de transférer son attention d'un programme à un autre sous la direction des organes du système d'interruption. Ces requêtes peuvent être engagées intérieurement (à l'intérieur de chacun des Modules de Calcul) ou extérieurement (à partir des autres modules 20 de 1'ordinateur). Comme le montre la figure 5» des moyens de sélection des signaux d'interruption 5-10 reçoivent tous les signaux d'interruption 5a et en choisissant un 5b destiné à être pris en considération par le Module de Calcul 5-12. Bien que ces 25 moyens de sélection 5-10 soient représentés séparément, ils sont en fait intérieurs au Module de Calcul 5-12 et ne sont ici représentés que pour faciliter l'explication. Bien que la figure 5 représente plusieurs Modules de Calcul, on comprendra qu'ils ne font simplement qu'illustrer schématiquement les différents modes 30 de fonctionnement de ces modules. Ce ne sont pas des modules différents du point de vue structurel, mais plutôt le même module dans différents modes de fonctionnement. Un Module de Calcul 5-12 répond à la réception d'un signal d'interruption en décalant son mode de fonctionnement 35 Un Module de Calcul fonctionnant dans le mode normal (5-12) va exécuter les opérations d'un programme objet. La réception d'un signal d'interruption choisi 5b amène alors le Module de Calcul à transférer son attention (son fonctionnement) à une consigne de commande. Ce décalage de fonctionnement correspond àun trans-40 fert du fonctionnement dans le mode Normal à un fonctionnement bad original 69 18492 10 2010550 dans le mode de Commande. Le premier mode de contrôle est appelé "Mode de Commande A 5-16" pour le distinguer du second Mode de Commande B 5-20. Sur la figure 5» la référence 5ç. représente n'importe quel signal d'interruption reçu par le module de cal-5 cul fonctionnant dans le mode normal. Le choix d'un signal d'interruption par les moyens 5-10 lorsque le Module de Calcul 5-12 fonctionne dans le mode Normal N l'amène à subir un décalage de mode de fonctionnement pour passer au Mode de Commande A 5-16. Dans cet état, le 10 Module de Calcul exécutera un programme de commandé appartenant à un groupe de programmes de commande convenables et associé à chacune des conditions d'interruption. Ces programmes sont situés dans des parties déterminées de la mémoire centrale désignées par le IARA (registre de base d'interruption pour le traitement 15 dans le Mode de Commande A) et par l'interruption particulière considérée. On appelle ici l'ensemble de ces programmes "Table d'interruption pour le Mode de Commande A". Outre les programmes de correction et de vérification habituellement associés au terme "interruption", il est prévu des programmes supplémentaires 20 pour diriger toutes les opérations de commande requises par l'ordinateur. Toutes les opérations d'entrée/sortie ou opérations I/O sont déclenchées par l'utilisation d'un signal de commande d'interruption et l'achèvement de ces opérations est reconnu par leur utilisateur. 25 Pour tous les signaux, le Module de Calcul va servir le signal d'interruption, puis retourner de lui-même à son mode N en créant un signal de retour d'interruption IRR qui traduit un retour au fonctionnement dans le mode normal. A son retour au traitement dans le mode Normal, il récupère dans sa 30 propre mémoire à film mince l'information qu'il avait arrêtée à la réception du signal d'interruption. Cette information mémorisée comprend toute l'information nécessaire pour reprendre le traitement au point du programme où l'interruption est survenue. Si, tant que le Module de Calcul fonctionne dans 35 le Mode de Commande A 5-16, il reçoit un signal d'interruption ou interruption-erreur 5-14 qui indique qu'une erreur s'est produite, il se décale dans encore un autre mode de fonctionnement 5-20 ici appelé "Mode de Commande B". Sur la figure 5» la référence 5d représente un signal d'interruption-erreur reçu par le bad original ' 69 18492 ii 2010550 module de calcul fonctionnant dans le mode de commande A. Dans le mode de commande B, le Module de Calcul exécute des programmes situés dans une autre table désignée par 2e IARB (registre de base d'interruption pour le traitement dans le Mode de Commande B) 5 et par l'interruption particulière considérée. On appelle cette table "table d'interruption dans le Mode de Commande B" et elle ne comprend que des programmes ayant un but de correction, étant donné que seule une interruption-erreur peut provoquer un tel décalage de fonctionnement. Ici encore le Module de Calcul re-10 tourne de son mode B 5-20 à son mode N 5-12 lorsqu'il a fini d'exécuter le programme de correction convenable. Si, pendant qu'il se trouve dans le mode B 5-20, il reçoit un autre signal d'interruption-erreur 5-18 qui indique qu'une erreur s'est produite au cours de l'exécution du programme de correction ou qui 15 ordonne au Module de Calcul d'arrêter le traitement, le module réagit conformément à cet ordre et arrête le traitement en passant à l'état 5-22 qui correspond à un module de calcul arrêté. L'avantage de cette caractéristique devient évident si l'on considère que sans elle le Module de Calcul continuerait à exé-20 cuter le programme de correction même si les ordres qui y sont donnés étaient erronés. Si, pendant que le Module de Calcul fonctionne dans le mode A 5-16, il reçoit un signal d'interruption lui ordonnant d'arrêter le traitement, il va également s'y conformer en passant immédiatement à l'état arrêté 5-22, au lieu de se 25 décaler dans le mode de fonctionnement B 5-20. Sur la figure 5» la référence 5e. indique que le mode de coiamande B s'arrête ou qu'un second signal d'interruption-erreur a ébé reçu et la référence 5f indique que le mode de commande A s'arrête,un signal d'interruption ayant été reçu. 30 Les constituants nécessaires pour réaliser cette caractéristique d'interruption sont essentiellement fournis par deux registres de la mémoire locale à film mince logée dans chaque Module de Calcul de l'ordinateur. La figure 16 représente une carte des emplacements de registre de la mémoire locale à 35 film mince. Ces emplacements comprennent deux registres d'adresse de base d'interruption IARA et IARB de codes respectifs 063 (ADRESSE DE BASE A D'INTERRUPTION) et 067 (ADRESSE DE BASE B D'INTERRUPTION). Ces deux registres contiennent l'adresse de base des tables d'interruption mentionnées plus haut telles bad original 69 18492 12 2010550 qu'elles sont mémorisées dans les Modules de Mémoire centrale 100 de la figure 1. Cette information d'adresse de base est utilisée pour déterminer l'adresse initiale du programme de service d'interruption. La table d'interruption pour le Mode de Commande A 5 n'est pas, et ne doit pas être, située dans le même Module de Mémoire centrale que la table d'interruption pour le Mode de Commande B. Ceci empêche les tables d'interruption d'être toutes les deux inaccessibles lorsqu'un seul Module de Mémoire centrale tombe en panne. 10 La table d'interruption représentée par le tableau I des pages 13 à 15 présente les dix-huit conditions d'interruption utilisées dans l'ordinateur. Normalement, l'arrivée de n'importe lequel de ces signaux d'interruption amènera le Module de Calcul qui le reçoit à se décaler de l'exécution d'un 15 programme objet à l'exécution d'un programme de commande. Le programme de commande particulier choisi dépendra de la condition d'interruption reçue et il existe dans la mémoire centrale des programmes de commande appropriés associés à chacune des conditions d'interruption. 20 Etant donné que l'apparition de certaines condi tions requiert une attention plus immédiate que d'autres, on a donné aux dix-huit conditions une criorité déterminée à l'avance et indiquée par leur ordre' numérique. Les conditions d'interruption correspondantes sont indiquées dans la seconde colonne 25 en regard de leurs positions respectives. Chacun des Modules de Calcul de l'ordinateur comprend un registre d'interruption à quinze bits, chacun de ces bits étant associé à une condition d'interruption particulière. Ce registre est utilisé pour mémoriser temporairement, jusqu'à ce qu'ils servent, les signaux 3C d'interruption des quinze conditions d'interruption d'ordre inférieur. D'une façon analogue, chaque Module de Calcul comprend également un registre connecté au registre d'interruption et qui fonctionne simultanément avec celui-ci, de façon à commander l'activation de certains bits du registre d'interruption. Ce der-35 nier registre est ici appelé "registre de masquage". 3a principale fonction est de prévenir certains des Modules de Calcul de répondre à certaines des conditions d'interruption. Il procure à l'ordinateur des moyens cte prévenir tous les Modules de Calcul de répondre simultanément à une seule requête de ecmmande. bad original * o «JD TABLEAU PRIORITE CONDITIONS D'INTERRUPTION BITS DU REGISTRE D'INTERRUPTION MODULES DE CALCUL AFFECTES BIT MIS A UN DANS LES MODES INTERRUPTION RECONNUE DANS LES MODES BITS DE MASQUAGE DANS LE L3R REPONSE DANS LE MODE DE COMMANDE REPONSE DANS LE MODE NORMAL 1 PANNE / D'ALIMENTATION PRINCIPALE - TOUS SYNCHRONES - NAB AUCUN MISE EN MEMOIRE AUTOMATIQUE MISE EN MEMOIRE AUTOMATIQUE 2 HORLOGE A TEMPS REEL DE COMPTAGE - TOUS ASYNCHRONES - NAB AUCUN RTC+I DIRECTEUR RTC DIRECTEUR RTC+I UTILISATEURS ^ RTC UTILISATEURS 3 MISE A JOUR DU REGISTRE DE JOUR - TOUS SYNCHRONES - NAB AUCUN ENVOI,DU NOUVEAU JOUR DANS LE FILM MINCE h REMISE EN MARCHE APRES , PANNE D'ALIMENTATION 0 TOUS NAB NAB AUCUN RESTAURATION AUTOMATIQUE ET SAUT DE PROGRAMME 5 REQUETE EXTERIEURE 1 DISPONIBLES n n 21-36 - SAUT PROG. 6 INTERRUPTION DES COMMUNICATIONS DES DDM 2 DISPONIBLES NAB N 1,3 - SAUT PROG. 7 ARRET ENTREES/SORTIES 3 DISPONIBLES NAB n 5-20 - SAUT PROG. CO -o K> H VjJ K> O O Lrt en o o o TABLEAU I (Suite) priorite conditions d'interruption bits du registre d'interruption modules de calcul affectes bit mis a un dans les modes interruption reconnue dans les modes bits de masquage dans le lsr reponse dans le mode de commande reponse dans le mode normal 8 interruption par un autre module de calcul 4 un a quatre nab n aucun - saut prog. 9 depassement rtc directeur 5 un nab n 41 - saut prog. 10 limites indirectes exterieures ■ 6 un nab nab aucun a-saut prog. b-arret saut prog. 11 instruction illegale 7 un nab nab aucun a-saut prog. b-arret saut prog. 12 pas d'acces a la memoire ecriture en dehors des limites de l'ordinateur erreur de parite vers la memoire 8 un nab nab aucun a-saut prog. b-arret saut prog. 13 condition arithmetique anormale 9 un N N 43-45 - saut prog. OO ■o NJ ho o CD in en o cr- vO TABLEAU I (Suite) PRIORITE CONDITIONS D'INTERRUPTION BITS DU REGISTRE D'INTERRUPTION MODULES DE CALCUL AFFECTES BIT MIS A UN DANS LES MODES INTERRUPTION RECONNUE DANS LES MODES BITS DE MASQUAGE DANS LE LSR REPONSE DANS LE MODE DE COMMANDE REPONSE DANS LE MODE NORMAL 14 INSTRUCTION D'ARRET 10 UN N N AUCUN ARRET SAUT PROG. 15 BIT D'OBSTACLE 11 UN NAB NAB AUCUN A-SAUT PROG. B-ARRET SAUT PROG. 16 ERREUR DE PARITE EN PROVENANCE DE LA MEMOIRE 12 UN- NAB NAB AUCUN A-SAUT PROG. B-ARRET SAUT PROG. 17 SAUT DE SOUS-ROUTINE 13 UN N N 46 - SAUT PROG. 18 INSTRUCTION UNIQUE 14 UN N N 47 - SAUT PROG. SAUT PROG. = SAUT DE PROGRAMME RTC = HORLOGE A TEMPS REEL SJ O O en tn o 69 18492 16 2010550 Les différents bits du registre d'interruption sont indiqués dans la troisième colonne du tableau I. Les trois conditions d'interruption présentant les première, seconde et troisième priorités n'ont pas d'emplacement parmi les bits du 5 registre d'interruption de la troisième colonne. Ces trois conditions sont les trois seules sur les dix-huit conditions d'interruption qui peuvent affecter sans réserve tous les Modules de Calcul de l'ordinateur sans faire intervenir aucun bit du registre d'interruption à 15 bits contenu dans chaque Module de 10 Calcul. Ce sont, par ordre de priorité, la Panne d'Alimentation Principale, l'Horloge à Temps Réel de Comptage et la Mise à ,:;our du Registre de Jour. Chacune des quinze autres conditions d'interruption coopère avec un bit du registre d'interruption à 15 bits situé dans chaque Module de Calcul. Sur les quinze bits 15 indiqués dans la troisième colonne du tableau I, sept bits du registre d'interruption peuvent être masqués à l'égard d'un fonctionnement actif. Ceci prévient un Module de Calcul particulier de répondre à l'interruption masquée choisie. Les bits du mot de données à 48 bits qui occupe le registre de masquage 20 correspondent aux bits du registre d'interruption. Ils sont présentés par emplacements de rangées adjacentes dans la septième colonne marquée "Bits de masquage" dans l'opérande Registre Spécial de Charge (LSR). Ainsi que le montrent les septième et troisième colonnes du tableau I, les bits du mot de données 1 et 3 25 (colonne 7) sont utilisés avec le bit 2 du registre d'interruption (colonne 3), les bits du mot de données 5 à 20 avec le bit 3 du registre d'interruption, tandis que les bits 21 à 36 se rapportent au bit 1 ou bit de requête extérieure du registre d'interruption. Le bit 5 du registre d'interruption peut être masqué 30 par l'activation du bit 4l du mot de données et les bits 43 à 45 peuvent être utilisés pour bloquer l'activation du bit 9 du registre d'interruption. Les bits du mot de données 46 et 47 peuvent masquer respectivement le fonctionnement des bits 13 et 14 du registre d'interruption. La quatrième colonne indique quels 35 Modules de Calcul sont affectes par chacune des conditions d'interruption. Tous les modules de l'ordinateur répondent à la présence du signal d'interruption "Panne d'Alimentation Principale", étant donné que tous doivent se. préparer à la coupure. Dans le oas d'une interruption "Horloge à Temps Réel de Comptage", bien bad original. 69 18492 17 2010550 que sa présence affecte tous les Modules de Calcul, chacun répond Individuellement à sa demande. Seules six des quatorze conditions indiquées peuvent être reconnues lorsqu'un Module de Calcul fonctionne dans le mode d'interruption A. La reconnaissance de 5 n'importe laquelle de ces six conditions amène le module à décaler son fonctionnement vers le mode d'interruption B. Ce sont î Remise en marche après Panne d'Alimentation, Ecriture en dehors des Limites Indirectes, Instruction illégale, Pas d'Accès à la Mémoire, Erreur de Parité vers la Mémoire, Bit d'Obstacle et 10 Erreur de Parité en provenance de la Mémoire. Les bits du registre d'interruption peuvent être mis à un dans n'importe lequel des modes indiqués dans la cinquième colonne marquée "Bit mis à un dans les Modes". Dans les deux dernières colonnes de droite du ta- . 15 bleau, à savoir "Réponse dans le Mode de Commande" et "Réponse dans le Mode Normal" sont indiquées les réponses respectives données par un Module de Calcul fonctionnant dans chacun de ces modes pour chacune des dix-huit interruptions. Le Module de Calcul mémorise automatiquement l'information qu'il est en train de 20 traiter à la réception d'un signal d'interruption "Panne d'Alimentation Principale" quel que soit son mode de fonctionnement actuel. La réponse à une interruption "Temps Réel de Comptage" est également la même pour les deux modes Normal et de Commande, étant donné que dans l'un et l'autre cas l'Horloge à Temps Réel 25 avance d'une unité. La figure 6 illustre une opération d'entrée/sortie ou opération I/O de l'ordinateur qui utilise des signaux d'interruption convenables pour démarrer et terminer l'opération. Le système de base illustré n'utilise qu'un seul Module de Mémoire 30 principale 101, une armoire de Module de Commande d'Entrées/ Sorties 401 avec deux unités ou sous-modules de commande I/O 401-1 et 401-2 et un Module de Calcul 201. Un rectangle unique portant la référence "Dispositi fs Terminaux" 600 représente un groupe de périphériques. Le genre particulier de dispositifs uti-35 lisé n'est pas important dans la présente discussion dans la mesure où est généré au moins un 6a. des signaux d'interruption par requête extérieure mentionnés plus haut. Chacune des deux unités de commande 1/0 401-1 et 401-2 est en fait un petit calculateur à programme déterminé 18492 18 2010550 qui reçoit, transmet et remet en format des données, en réponse aux mots de commande à 48 bits appelés mots descriptifs ou descriptifs. Il existe six types de base de ces descriptifs, chacun présentant son propre format de bits distinct et une fonction 5 correspondante. Ce sont les mots descriptifs d'établissement (6b), de coupure {6c), d'ordre (6d), d'essai de uns partout (6e), d'essai de zéros partout (6f ) et de résultat . Les cinq premiers sont logés dans la mémoire centrale et sont envoyés (ligne 6g : descriptifs envoyés) à partir de celle-ci vers un ou plusieurs 10 des Modules de Commande I/O. Le contenu du descriptif de résultat est créé dans le Module de Commande I/O et retourné (ligne 6h î descriptifs retournés) vers un emplacement de la mémoire qui est défini à l'intérieur du Module de Commande. Le Module de Calcul 201 fonctionne initialement 15 dans son mode N 201-N. A la réception du signal d'interruption d'achèvement I/O (6ji) provenant d'une Unité de Commande I/O 401-1 ou 401-2 dont le bit de masquage correspondant est mis à 1, ce Module de Calcul 201 se décale du fonctionnement dans le mode N 201-N vers le fonctionnement dans son mode de commande 201-C. Dans 20 ce mode, le Module de Calcul provoque l'envoi de l'un des cinq descriptifs logés dans la Mémoire Centrale vers une unité I/O déterminée d'un module I/O. Etant donné que les Lignes de Communication de Mémoire 401-12 vers l'une et l'autre unités 1/0 d'un module sont communes, un bit sur les lignes de données est 25 soumis à un partage de temps avec les données, de façon à indiquer quelle unité d'un module 1/0 doit recevoir le descriptif. Le premier transfert dans le Mode. - de Commande est habituellement l'envoi (6jJ d'un descriptif d'établissement à une unité 1/0 particulière. Ce descriptif d'établissement fournit 30 l'adresse de base pour le retour de tous les descriptifs de résultat provenant d'un module 1/0. Bien qu'un descriptif d'établissement soit adressé à une unité 1/0 déterminée, il n'existe qu'un seul registre d'adresse de base par module I/O et l'une et l'autre unités d'un module d'unité I/O utilisent la même adresse de 35 base. L'unité I/O recevra un descriptif d'établissement à n'importe quel moment pourvu que la parité soit correcte. Une ligne d'accusé de réception 1/0 (6k) est envoyée au calculateur à chaque réception d'un établissement. Un descriptif de résultat est retourné à la nouvelle adresse de base plus le numéro de l'unité 40 I/O, si cette unité n'est pas connectée à un dispositif terminal. bâd original 18492 19 2010550 Un autre transfert vers le Mode de Commande peut être l'envoi (6l) d'un descriptif d'ordre à une unité i/o. Ce mot est accepté par cette unité si celle-ci n'est pas en train de traiter un autre descriptif et si la parité est correcte. Une 5 ligne d'accusé de réception est envoyée au Module de Calcul à chaque fois que le descriptif d'ordre est accepté et que le dispositif terminal requis est disponible. Un descriptif de résultat ainsi que le numéro de l'unité I/O sent retourné au registre d'adresse de base à la fin de chaque opération. 10 S'il est nécessaire de terminer une opération, un autre transfert s'effectue vers le Mode de Commande pour l'envoi (6m) d'un descriptif de coupure et ce descriptif est envoyé à l'unité voulue. Il existe deux types de descriptifs de coupure qui peuvent être envoyés î achèvement immédiat ou achèvement à 15 la fin du mot. Le descriptif de coupure est accepté à tout moment où la parité est correcte et une ligne d'accusé de réaêption est envoyée au calculateur. Une ligne d'interruption est envoyée au calculateur à chaque fois que c'est la seconde option î achèvement à la fin du mot qui est spécifiée et la fin de mot est alors 20 détectée . Un descriptif de résultat est retourné à chaque fin d'opération. D'autres transferts vers le Mode de Commande peuvent provoquer l'envoi (6n) vers une unité I/O d'un descriptif d'essai soit de zéros partout, soit de uns partout. Ces des-25 criptifs sont acceptés à chaque fois que l'unité I/O n'est pas en train de traiter un autre descriptif et que la paribé est correcte. Une ligne d'accusé de réception est envoyée au Module de Calcul si le descriptif d'essai est accepté. Les descriptifs d'essai testent les transferts intérieurs à l'unité I/O. Le même 30 mot envoyé à l'unité I/O sera retourné au registre d'adresse de base comme descriptif de résultat. Il comprendra également le numéro de l'unité I/O. Des signaux sur une ligne de requête extérieure 1/0 (6j3) sont élevés (décalés vers leurs niveaux supérieurs) à 35 destination du Module de Calcul si une unité I/O a de la difficulté à retourner un descriptif de résultat vers la mémoire. La figure 6 représente encore l'interface vers les périphériques 401-10, la liste de descriptifs Ô£ , la ligne de transfert de données 1/0 6r , la ligne de commande et de données BAD ORIG!m/s,l* 69 18492 2010550 d'entrées/sorties 6s^ et la ligne de commande et d'état de disponibilité d'unité 6t. Le format de bits de chacun des six descriptifs utilisés en jonction avec l'opération i/o qui vient d'être de-5 crite est représenté par les figures 7 et 8a à 8e. Le format de descriptif d'établissement représenté par la figure 7 contient dans les bits 17 à 31 l'adresse appelée adresse de base de la liste de descriptife Ja, qui fournit l'adresse de base pour le retour de tous les descriptifs de résultat provenant d'un Module 10 i/o déterminé. L'un et l'autre modules ou unités I/O de l'armoire utilisent cette adresse comme base à partir de laquelle déterminer leur adresse de mémoire particulière dans la liste de descriptifs. Cette détermination s'obtient en ajoutant le numéro de l'unité à l'adresse de base. 15 Le format de descriptif de coupure représenté par la figure 8A fournit à l'ordinateur la possibilité de faire passer une Unité de Commande I/O de l'état occupé à l'état non-occupé (libre). Ce passage termine l'opération active du i/C. Le bit 43 du descriptif sert à informer l'Unité de Commande de l'ins-2C tant où elle doit s'arrêter. Si ce bit 43 est dans l'état 1, ceci signifie "libérer à la fin du mot", c'est-à-dire qu'il est notifié à l'Unité de Commande I/O de retourner lorsqu'est terminé le dernier caractère du mot de mémoire en cours de transfert. Si ce bit 43 est dans l'état O, ceci signifie "libérer immédiatement", 25 c'est-à-dire qu'il est notifie à l'Unité de Commande I/O de répondre immédiatement même si cela correspond à un achèvement prématuré de l'opération de transfert en cours. Toute unité de commande non-occupée ignore un descriptif de libération présentant une parité correcte et une 30 unité occupée ne reconnaît un descriptif de libération que si le descriptif est bien adressé à cette unité. Le Module de Commande I/O vérifie que individuellement les parités de tous les descriptifs sont correctes. Si le module détecte une parité incorrecte, le descriptif est traité 3^ comme un descriptif d'établissement ou d'ordre présentant une parité incorrecte, cas dans lequel, si l'unité de l'armoire I/O n'est pas occupée, cette unité se met en action et provoque le retour à la Mémoire d'un descriptif de résultat. Ce descriptif contient une information d'état indiquant toute erreur de parité. bao orjgin^ 69 18492 21 ' 2010550 Si l'unité choisie est occupée, elle ignore le descriptif de libération et elle continue sa tâche en cours. L'Unité de Commande I/O qui reçoit avec succès un descriptif de libération accusera réception de l'achèvement avec 5 succès de la transmission du descriptif en envoyant un signal au calculateur qui a déclenché l'opération. Cet accusé de réception n'est pas un signal d'interruption étant donné qu'une interruption d'achèvement I/O ne survient jamais lorsqué l'opération I/O se termine par un descriptif de libération. L'accusé de réception 10 et l'interruption sont des signaux différents envoyés par le module i/o vers le Module de Calcul. Toutes les opérations des périphériques commencent par un descriptif d'ordre. Le format de ce dernier est représenté par la figure 8B. Ce descriptif est également envoyé à une unité 15 I/O déterminée et celle-ci l'accepte pourvu qu'il présente une parité correcte et pourvu que cette unité ait achevé une opération périphérique précédente. Le descriptif d'ordre sert à désigner le genre de périphérique qui doit être utilisé. Pour simplifier cette dési-20 gnation, les genres de périphériques utilisés par l'ordinateur sont d'abord classés en dispositifs simples et en dispositifs complexes. Orj&ppelle dispositif simple un dispositif qui n'exige qu'une seule voie du central d'entrées/sorties. Il existe deux genres de dispositifs simples, à savoir les dispositifs simples 25 d'entrée et les dispositifs simples de sortie. On appelle ici périphérique d'entrée un dispositif qui accepte une information pour la transférer dans l'ordinateur, tandis qu'on appelle périphérique de sortie un dispositif qui prépare une information en vue de son transfert à partir de l'ordinateur. Des exemples en 30 sont pour le premier un lecteur de cartes et pour le second une imprimante. Un périphérique complexçêst un dispositif bidirectionnel qui exige plus d'une voie du central I/O. On peut le considérer comme une paire de dispositifs simples. Dans le descriptif d'ordre dont le format est 35 représenté par la figure 8b, le bit 45 est utilisé pour désigner un dispositif complexe. Si ce bit 45 est dans l'état 1, ceci signifie "dispositif complexe", c'est-à-dire qu'un dispositif complexe est requis d'exécuter l'ordre, tandis que si ce bit est dans l'état 0, ceci signifie "dispositif simple", c'est-à-dire BAD Original ' 69 18492 22 2010550 que c'est un dispositif simple qui est requis. Les bits 39 à 44 du mot descriptif désignent le périphérique choisi. Etant donné que ce groupe, appelé "numéro de dispositif" 7b, comprend six bits, ceci permet de choisir parmi un nombre total de 64 possi-5 bilités. Les quatre bits 13 à 16 du descriptif d'ordre sont utilisés pour modifier le fonctionnement d'une unité de commande i/o lorsqu'elle exécute une opération. Si le bit l4 est dans l'état 1, l'unité de commande I/O qui utilise ce descriptif ne 10 terminera pas sur une erreur de parité détectée sur le transfert d'information en provenance du dispositif terminal comme elle le fait habituellement-. Elle attendra jusqu'à l'achèvement du transfert à partir du dispositif avant d'enregistrer l'erreur. Si le bit 45 est à 1, le canal de commande i/o en possession de ce des-15 criptif n'attendra pas son tour pour gagner l'accès au tampon de communication C.B. du Module de Commande I/O, mais la priorité lui sera donnée par rapport à son unité jumelée de la même armoire I/O. Si à son tour cette armoire se trouve sur une voie de mémoire qui a la priorité dans le Module de Mémoire, auquel elle 20 a accès, l'unité I/O aura immédiatement accès à sa destination dans la mémoire. On propose comme utilisation de cette modification le cas où un canal d'un Module de Commande I/O communique avec un périphérique présentant une vitesse de fonctionnement de un mégacycle, l'autre canal communiquant avec un périphérique 25 présentant une vitesse de fonctionnement de 100 kilocycles. Il serait souhaitable que le dispositif rapide ait la priorité sur le dispositif lent. Etant donné que la priorité peut dans un module de commande être donnée à l'une ou l'autre des unités, ces unités ne peuvent toutes deux commander simultanément des opéra-30 tions qui exigent la mise à un du bit de priorité. Les bits 13 et 16 sont utilisés pour indiquer une opération de compte d'enregistrement. Si ces bits sont respectivement l'un à l'état 0 et l'autre seuns indication (X), aucun compte d'enregistrement ne sera utilisé. S'ils sont tous deux à 35 l'état 1, le compteur d'enregistrement sera automatiquement rempli par un 1. Si ces bits sont respectivement l'un à l'état 1 et l'autre à l'état 0, l'opération doit commencer comme une opération de sortie. Ceci se résume de la façon suivante î BAD °*IGINAC 69 18492 23 2010550 13 16 O X -ne pas utiliser compte enregistrement 10 - utiliser 1er mot sortie comme compte enregistrement 11 - utiliser compte enregistrement de un 5 Le premier mot reçu en provenance de la mémoire contiendra le champ de compte d'enregistrement. Dans les deux cas où le compte d'enregistrement est utilisé, le descriptif de résultat contiendra le compte d'enregistrement restant dans les bits 45 à 48 comme le montre la figure 8b. 10 Les douze premiers bits (1 à 12) du descriptif d'ordre sont appelés "champ de compte de mots" Jc_. Ce champ précise le nombre des mots impliqués dans l'opératiai I/O. Un maximum de 4096 mots peut être indiqué et être transféré avec un descriptif d'ordre. Le champ à 20 bits qui recouvre les bits 17 à 15 36 précise l'adresse de mémoire initiale ou adresse de mémoire de départ 7d qui doit être utilisée par l'unité de commande I/O. Trois des bits du descriptif d'ordre fournissent les codes d'ordre qui sont envoyés aux unités de commande I/O en vue de leur transmission aux périphériques. Ce sont les bits 46, 20 47 et 48. Dans le ca£ d'un dispositif simple d'entrée, deux des huit codes d'ordre possibles sont réservés pour désigner des descriptifs d'établissement et de libération et seuls trois des six codes d'ordre restants sont utilisés. Ce sont 010, 011 et 100. Les trois autres codes (101, 110 et 111), même s'ils sont envoyés, 25 sont interprétés par le dispositif exactement comme s'il s'agissait du code 010. Ces trois bits de code d'ordre 46 à 48 sont également utilisés pour fournir diverses instructions aux dispositifs simples de sortie aussi bien qu'à n'importe quel dispositif 30 complexe. Le bit 46 est utilisé par le Module de Commande 1/0 pour notifier à un dispositif complexe effectuant une opération de sortie que le dernier caractère de la communication est en train d'être envoyé et les huit bits les moins significatifs du champ de compte de mots à 12 bits sont à zéro . 35 Le bit 15 du descriptif d'ordre fournit la "prio rité du tampon de communication" et le bit 14, s'il est à 0, signifie "essai de parité d'opération d'entrée", tandis que, s'il est à 1, il signifie "passer par-dessus l'essai de parité d'entrée". bad original' 18492 24 2010550 Le format du descriptif de résultat est représenté par lafigure 8C. Ce descriptif de résultat n'est que l'un des quatre descriptifs représentés dont la direction du trajet du signal est dirigée de l'unité de commande I/O vers la mémoire. 5 Son rôle principal est de fournir à l'ordinateur une information concernant l'état d'une opération I/O. Ses douze premiers bits indiquent le nombre de mots restant à transférer (compte de mots final - mots à aller Jf). Les quatre bits suivants (13 à 16) indiquent le motif de l'achè-10 vement. Ces bits du descriptif fournissent de façon spécifique à l'ordinateur une information sur la condition ou l'état d'une opération i/C. Ces bits sont partagés entre le Module de Commande i/C ou IOCM et le périphérique. Le bit 13 indique si l1achèvement a été provoqué par le IOCM (bit 13 = O, qui signifie donc "achè-15 vement IOCM") ou par le dispositif terminal (bit 13 = 1, qui signifie donc "achèvement dispositif terminal"). Les huit codes suivants peuvent être communiqués à l'ordinateur par les bits 14 à 16 ("état d'achèvement" 7e) au sujet de certaines conditions d'état du Module de Commande I/O. Ces codes sont î 20 Bits 14 ]J5 16 C 0 0 Un descriptif d'établissement a été correctement reçu par une unité I/O non-occupée. O 0 1 Le périphérique désigné par le descriptif d'ordre n'est pas disponible ou bien, dans le cas 25 de bandes magnétiques, le contrôleur était dis ponible, mais l'entraînement de bandes ne l'était pas. 0 10 L'opération en cours du périphérique a été achevée prématurément par un descriptif de li-30 bération transmis par une commande du programme à cette Unité de Commande I/O. 0 1 1 Le champ de compte de mots défini par les bits 1 à 12 du descriptif d'ordre est à zéro, indiquant que le transfert de données considéré a eu ^5 lieu. 1 0 0 La requête à la mémoire a excédé une limite de temps de 511*75 ou bien une erreur de parité d'adresse a été détectée par la mémoire. 1 O 1 Le I/O a détecté une erreur de parité en rro-40 venance de la mémoire ou bien la mémoire a dé tecte une erreur de parité de données en provenance du I/O sur une opération d'écriture. 1 1 0 Un caractère transmis à l'unité I/O à partir d'un dispositif d'entrée a été reçu avec une parité exacte. BAo original 69 18492 25 2010550 1 1 1 Le I/O a détecté une erreur de parité dans son cadre d'adresse à destination de la mémoire. Une erreur de parité a été détectée sur le "rebond" du descriptif en ce qui concerne 5 le C.B. Une erreur de parité a été détectée dans le comptage du compteur de mots. L'essai de parité des données caractère par caractère ne concorde pas avec celle envoyée à la mémoire ou reçue de cette mémoire. 10 Le champ formé par le module I/O et le champ formé par le dispositif terminal s'excluent mutuellement. S'ils sont simultanément présents dans le descriptif de retour, ^ordinateur donne la priorité à l'information d'état qui concerne le périphérique. Etant donné qu'il y a un certain nombre de périphériques 15 différents, l'information d'état doit concerner le dispositif particulier en cours d'utilisation. Un jeu général de codes d'état ne sera pas établi comme c'était le cas pour l'achèvement i/o. Afin d'illustrer un cas particulier, les modèles d'état suivants peuvent être retournés à partir d'une unité de commande i/o qui 20 est en train de commander un périphérique perforateur de cartes. Bits Pas de réponse à la commande d'état. Perforer dans le mode LOAD (alimentation) ou bien niveau de lecture terminée trop tôt. Instruction illégale ou bien perforation d'une carte partielle. Erreur de perforation. Données trop lentes. Erreur de parité. L'adresse à vingt bits indiquée par les bits 17 à 30 36 du descriptif de résultat indique sa destination au retour dans la mémoire centrale. Cette adresse peut être une adresse supérieure à la dernière utilisée ou bien ce peut être la dernière adresse de mémoire utilisée elle-même. Les bits 17 à 36 fournissent la "dernière adresse de mémoire utilisée ou dernière + 1 adresse de 35 mémoire utilisée" 7g • Les bits 39 à. 44 du descriptif de résultat constituent le "numéro de dispositif" 7h ou numéro d'identification du périphérique qui a réalisé l'opération, tandis que les bits 45 à 48 sont presque invariablement de simples copies des bits corres-40 pondants du descriptif d'ordre à moins qu'un compte d'enregistrement ait été utilisé. Le contenu 7i du groupe de ces bits 45 à 48 "est le même que celui envoyé par le dispositif complexe, si 25 14 15 16 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 original1 18492 26 2010550 le bit 13 du dispositif complexe -= O" et ce contenu 7^ "est le compte d'enregistrement restant, si le bit 13 du dispositif complexe = l". Il existe une exception lorsque l'unité terminale utilisée est un dispositif simple d'entrée; le descriptif de 5 résultat retourné peut alors comprendre différents bits pour indiquer comment l'opération- a débuté. Les figures 8d et 8e représentent respectivement un descriptif d'essai de zéros et un descriptif d'essai de uns. Les figures 9, 10 et 11 représentent respectivement 10 les schémas de câblage extérieur du Calculateur, de la Commande i/o et des Modules de Mémoire. Dans chaque cas n'est représenté qu'un simple schéma synoptique simplifié de la partie intérieure du module de façon à permettre un tracé du trajet des signaux à travers ce module. Le Module de Calcul 201 ou "Module de Calcul se 15 l" (figure 9) présente les quatre parties principales de chacun des modules de ce genre. Ce sont l'unité de traitement du programme 201-40, l'unité arithmétique 201-20 qui comporte des registres A, B et C et un totalisateur à 48 bits, l'unité de commande de mémoire 201-30 et la mémoire à film mince locale ou in-20 terne 201-10 qui comporte 128 registres 9a à film mince à 49 bits. L'unité de commande de mémoire 201-30 dirige l'information 201-22 de commande à destination de tous les modules de mémoire et l'information 201-18 de commande en provenance de tous les modules de mémoire demandant qu'une information de mémoire située 25 en un emplacement particulier soit lue hors de la mémoire, soit écrite dans la mémoire, soit envoyée à un IOCM ou envoyée pour réaliser des opérations de commande dans la mémoire. L'unité de commande 201-30 réalise cette opération sous des ordres provenant de l'unité de traitement déprogrammé 201-40 qui exécute les 30 pas d'un programme particulier. En général, cette unité de traitement 201-40 est l'unité de commande du Module de Calcul 201. Ceci devient apparent lorsqu'on considère que c'est la seule unité qui est couplée de façon bidirectionnelle aux trois autres parties principales restantes. Elle peut non seulement transférer 35 l'information à l'unité de mémoire à film mince 201-10, à l'unité arithmétique 201-20 et à l'unité de commande de mémoire 201-30, mais elle peut encore ordonner aussi bien à ces unités de lui transférer l'information. Les données d'information et de commande entrent BAD ORIGINAL 69 18492 27 2010550 dans le Module de Calcul par l'intermédiaire des connexions représentées à la partie supérieure de la figure 9> tandis qu'elles quittent le module par l'intermédiaire des connexions inférieures. Les connexions d'entrée et de sortie peuvent comprendre des câbles 5 à destination de et en provenance de tous les autres modules de l'ordinateur. L'information de mémoire pénètre dans le Module de Calcul par l'intermédiaire d'un câble à 49 lignes qui est choisi parmi un groupe de câbles qui comporte un câble par Module de Mémoire. Ce groupe de câbles est relié à des récepteurs d'en-10 trée du Module de Calcul à partir du central de commutation à blocage 201-12 et les connexions sont établies, comme le montre la figure 9$ d'une part avec l'information de mémoire en provenance de tous les Modules de Mémoire 9b «t d'autre part vers chaque module de calcul restant 9ç. De même, les données de commande 15 entrent par l'intermédiaire d'une ligne appartenant à un groupe de lignes 9d "information de commande en provenance de tous les Modules de Mémoire" et qui comporte une connexion de commande par Module de Mémoire. L'information de mémoire quitte le Module de Cal-20 cul à partir d'entraîneurs de lignes de sortie du Module de Calcul vers le central de commutation à enclenchements 201-14 par un câble à 49 lignes unique qui est connecté d'une façon habituelle à tous les Modules de Mémoire de l'ordinateur. L'information de commande est envoyée à partir du module parun câble à deux lignes 25 unique qui est également connecté d'une façon habituelle à tous les modules de mémoire. Cette connexion "information provenant de chaque module de calcul vers tous les modules de mémoire" 9e comprend également des câbles "provenant du module de calcul *2" à deux lignes 9£, "provenant du module de calcul *3" à deux lignes 3^ 9fi, "provenant du module de calcul 3Ê2" à 49 lignes 9h et "provenant du module de calcul à 49 lignes 9Î« La figure 10 est également un schéma de câblage extérieur qui représente le câblage d'un Module de Commande d'Entrées/Sorties. Tous les modules de ce genre présentent les 35 mêmes connexions et on ne va donc en décrire qu'un seul. Les connexions de câblage de ce module de commande sont uniques parmi les modules de l'ordinateur ici décrit en ce qu'elles comprennent, outre les connexions d'entrée et de sortie vers tous les modules de mémoire, des connexions d'entrée et de sortie vers 18492 28 2010550 tous les périphériques de l'ordinateur. Les connexions avec tous les Modules de Mémoire sont représentées à la partie supérieure de la figure, tandis que les connexions avec les périphériques sont représentées à la partie inférieure. Le Module de Commande 5 I/O k01 représenté par la figure comprend deux unités de commande I/O identiques 401-1 ou "unité xl" et 401-2 ou "unité x2". Ces unités comprennent chacune un bloc "information" respectivement 401-110 et 401-120, un bloc "tampon" respectivement 401-111 et 401-121, un bloc "descriptif" respectivement 401-112 et 401-122 10 et un bloc "commande" respectivement 401-114 et 401-124. Ces unités se partagent des circuits d'interface communs, à la fois vers la mémoire principale et vers les périphériques, à savoir un circuit d'interface avec la mémoire centrale 401-12, un circuit d'interface de données et de commande des dispositifs périphéri-15 ques de sortie (2n) 401-100 et un circuit d' interface de données et de commande des dispositifs périphériques d'entrée (2n +1) 401-101. Le circuit d'interface avec la mémoire centrale 401-12 reçoit à partir de la mémoire centrale les données d'information 10^ à travers des lignes 10-30 et les données de commande 10b à 20 travers des lignes 10-40, l'ensemble des données 10a et 10b constituant les données d'ordinateur 10£ provenant des modules de mémoire X1 à sl6. A cet égard, le module est analogue au Module de Calcul représenté par la figure 9» Le câble de retour d'information 10-20 vers la mémoire est également analogue, étant 25 donné qu'il comprend aussi 49 lignes et il en est de même du câble de commande 10-10 avec ses deux lignes d'information de commande. Le câble 10-20 comprend une ligne de parité lOd et l'en-semble des câbles 10-10 et 10-20 donne les données d'ordinateur 10e_ vers les modules de mémoire *1 à Xl6. 30 Comme on le voit sur la partie inférieure de la figure 10, l'interface entre un Module de Commande I/O et l'ensemble des périphériques comprend les lignes de données et de commande nécessaires pour établir et maintenir la communication-entre n'importe lequel des soixqnte-quatre périphériques et l'une 35 ou l'autre des unités l/C. Le circuit d'interface d'entrée 401-1C1 reçoit une connexion multicâûles 10-50 constituée de 32 câbles d'entrée présentant chacun 12 lignes. Chacun de ces câbles d'entrée peut permettre à un dispositif simple d'entrée de communiquer avec une unité l/C. Le circuit d'interface de sortie bad original 69 18492 29 2010550 401-100 est connecté à un ensemble analogue de cables 10-60 donnant la même possibilité pour chaque dispositif simple de sortie. Chacun de ces câbles de sortie présente également 12 lignes et chacun contient 5 lignes de commande et 7 lignes d'informa-5 tion. Six des lignes d'information ou lignes de données d'information lOf donnent un caractère d'information à la fois et la septième ligne appelée "parité" 10g donne un signal de parité. Tous les câbles d'entrée et de sortie peuvent être utilisés par l'une ou par l'autre des unités I/O 401-1 et 401-2 comprises dans 10 le module. Cinq lignes de commande sont contenues dans chacun des câbles que comportent les connexions multicâbles 10-50 et 10-60. Ce sont i une ligne Marche/Arrêt lOh, une ligne Requête de Caractère 101., une ligne Unité Disponible 10j_, une ligne Impulsion cie Caractère 10k et une ligne Etat de Dispositif 10m. Un 15 dispositif complexe exige deux câbles, un pour l'entrée et un autre pour la sortie. Le nombre des câbles d'entrée est toujours supérieur de un au nombre des câbles de sortie. Il existe ainsi, côté périphériques, c'est-à-dire à la partie inférieure de la figure, un ensemble lOn constitué par 32 groupes de 12 lignes 20 chacun, un groupe se dirigeant vers chaque périphérique (d'entrée) de numéro impair *1 à *63 et un ensemble- 10£ constitué également par 32 groupes de 12 lignes chacun, mais un groupe se dirigeant vers chaque périphérique (de sortie) de numéro pair *0 à *62. 25 Dans le Module de Mémoire 101 ou Module de Mémoire *1 illustré par la figure 11, on voit une mémoire à tores (de 16.384 x 49 ou de 65.536 x 49) 101-120 connectée entre des moyens de sélection d'information d'entrée ou "sélection du module d'information d'entrée de la mémoire" 101-110 et les entraî-30 neura d'information de sortie ou "entraîneurs de mémoire" 101-130. Dans les moyens de sélection entrent treize câbles à 49 lignes qui sont respectivement couplés un à un à chacun des trois Calculateurs ou Modules de Calcul lia, à chacun des huit Modules de Commande 1/0 ou Modules 1/0 11b et à chacun des deux Modules de 35 Demande de Données ou modules DDM 11 1849 2 30 2010550 treize autres modules ; ce sont les câbles lle_ provenant des Modules de Calcul, llf provenant des Modules i/o et 11g provenant des modules DDM: on a également les "voies de commande de l'ordinateur vers tous les modules de mémoire" llh. Tous ces câbles 5 de commande provenant de tous les Modules de Calcul, Modules de Commadde i/o et Modules de Demande de Données DDM sont identiques. Ces câbles fournissent l'information de commande nécessaire pour requérir l'accès à un Module de Mémoire particulier. Chaque requête DDM ou I/O est accompagnée par un ensemble 10 supplémentaire de 23 lignes de commande qui occupent les 3 bits les plus significatifs et les 20 bits les moins significatifs du câble d'information à 49 lignes. Les 3 bits les plus significatifs indiquent à la mémoire le code d'opération 12a (figure 12); ce code peut être un Lire ou un Ecrire. 15 Chaque requête de Calculateur est accompagnée par un ensemble supplémentaire de 27 lignes de commande qui occupent les 7 bits les plus significatifs et les 20 bits les moins significatifs. Les 7 bits les plus significatifs (figure 12) indiquent quelle opération la mémoire doit effectuer (code d'opération 12a 20 et code de modification d'opération 12b). Ce peut être une opération de lecture, une opération d'écriture ou un ordre d'envoyer un descriptif à un DDM ou à une unité I/O (il existe deux unités I/O dans chaque module I/O). Le Module de Calcul dispose de trois opérations de commande pour diriger les Modules de Mémoire. Ce 25 sont : (1) Lire un emplacement déterminé dans la mémoire et l'envoyer au Calculateur. Avant de passer à la requête suivante, examiner ce premier bit. S'il est à l'état un, passer à la requête suivante. S'il est à l'état zéro, le mettre à un et 30 compléter le bit de parité. (2) Faire lire seulement dans la mémoire les 4096 bits inférieurs de ce Module de Mémoire et inhiber tout accès pour écrire dans ce bloc à partir de n'importe quel module de non-mémoire de 1'ordinateur. 35 (3) Retourner le Module de Mémoire entier à un module de lecture et d'écriture. La première de ces opérations de commande consiste à s'assurer que dans un ordinateur à plusieurs calculateurs un travail déterminé n'est pris en charge que par un seul Module de bad original 69 18492 31 2010550 Calcul. La seconde et la troisième des opérations de commande consistent à s'assurer qu'un programme vital n'es1/i>as détruit par inadvertance par un mauvais fonctionnement quelconque, laissant ainsi une voie de récupération à partir de chaque type d'er-5 reur. Les 20 bits les moins significatifs du câble d'information à 49 lignes contiennent l'adresse du Module de Mémoire et l'adresse du mot dans ce module. Pour les modules les plus petits du type 16K qui contiennent 16.384 adresses, 14 des lignes donnent l'adresse du mot, les six bits restants étant utilisés pour indi-10 quer l'adresse du Module de Mémoire. Pour les modules les plus grands du type 65K qui contiennent 65.536 mots, 16 des lignes donnent l'adresse du mot, les quatre bits restants étant utilisés pour donner l'adresse du Module de Mémoire. La figure 12 montre les 20 bits d'adresse 12£ permettant de déterminer l'un des 15 1.048.576 mots. Le lit de parité 49 12d contient la parité pour les vingt-trois bits d'information provenant d'un I/O ou d'un DDM ou pour les vingt-sept bits d'information provenant d'un Module de Calcul, ce bit rendant impairs les bits 1 à 7 et 29 à 49. Chaque 20 Module de Mémoire (figure 11) ne peut satisfaire qu'une seule requête à chaque instant rendant ainsi nécessaire de prévoir une priorité dans chaque Module de Mémoire. Ceci s'obtient à l'aide du circuit de détermination de priorité entre des requêtes simultanées 101-142. S'il ne se présente pas de conflit, la requê-25 te d'accès à la mémoire est accordée 101-150 au module requérant choisi et cela est notifié à ce module requérant par l'une des lignes de commande de sortie qui sortent à la partie inférieure de la figure (vers les Modules DDM lli, les Modules I/O llj_ et les Modules de Calcul 11k). Le mot choisi est ensuite transféré 30 à partir de la mémoire 101-120 et transmis au module requérant par les entraîneurs de sortie de la mémoire 101-130 en un transfert simultané unique à 49 bits (voie de données d'information de sortie de la mémoire vers tous les Modules 1/0, de Calcul et DDM (treize places en tout) 111). 35 Les tableaux II et III de la page 32 présentent les divers types d'opérations dont est capable le Module de Mémoire. La figure 11 montre également la commande d'opération 101-141, la sélection du-module de mémoire 101-143, la bad original * o -o TABLEAU ii 1 2 3 4 5 S' o 7 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 1 1/0 1 0 1 1 0 0 i/o 1 0 1 1 0 1 1/0 i 1 0 0 0 1 1/0 1 1 0 0 1 0 1/0 1 1 0 0 1 1 1/0 1 1 0 1 0 0 1/0 1 1 0 1 0 1 i/o 1 0 0 0 0 0 0 calculateur co ■—N KJ lire les donnees dans l'adresse indiquee et renvoyer operation de commande - faire lire et ecrire la memoire entiere operation de commande - paire lire seulement 4096 bits ecrire les donnees qui apparaissent sur les 49 lignes peu apres l'envoi du croisement envoyer le descriptif dans l'adresse indiquee au ddm*1 " ddm*2 a l'iocm*! unite 0 ou 1 (suit le bit 7) fl operation de commande - mettre le bit 1 a i0cm*2 iocms? i0cm*4 i0cm*5 iocmx6 iocm*7 i0cm*8 "l" et ajuster la parite tableau iii 1 2 3 4 5 6" 7 i/o et ddm 0 0 0 x X X X lire les donnees dans l'adresse indiquee et renvoyer 0 1 1 y X X X ecrire les donnees qui apparaissent sur les DU croisement 49 lignes peu apres l'envoi Z > 69 18492 33 20T0550 requête de sélection pour l'accès à ce module de mémoire 101-144, la détection d'erreur 11m reliée aux Modules de Calcul par les lignes lin et enfin la sortie du module de mémoire ll£. La figure 13 illustre l'interconnexion entre les 5 modules de commande I/O et l'ensemble des 64 périphériques. Cette interconnexion est représentée d'une façon générale sur les figures 1 et 2 par le central I/O 500, le central 300 étant également représenté sur ces figures. De chacun des huit modules de commande 1/0 401 à 408 sortent des groupes de câbles identiques 10 couplés à chacun des 64 périphériques 600. Chaque groupe de 64 câbles comprend 32 câbles d'entrée et 32 câbles de sortie, la figure ne représentant qu'un certain nombre de ces câbles et des dispositifs périphériques qui y correspondent (trente deux dispositifs simples d'entrée 13a 1 u sr 15 à 13a 63 et trente deux dispositifs simples de sortie 13b 0 à 13b *62). Chaque câble d'entrée est connecté à l'entrée 13ç. de chacun des huit Modules de Commande i/o 13d X1 à 13d x8 et il comprend un total de 12 lignes. Dix de ces lignes portent l'information du périphérique vers le module et on peut par consé-20 quent les considérer par rapport au module comme étant des lignes pour signaux d'entrée. Les deux autres lignes du câble d'entrée transfèrent une information dans le sens opposé et elles sont utilisées par le module par exemple pour mettre en marche ou ci ' ©ritrés arrêter le périphérique/ou pour requérir une information de celui-25 ci. Chacun des câbles de sortie connecté à chacune des sorties 13e. des huit Modules de Commande I/O comprend 12 lignes. Celles-ci se répartissent cependant d'une façon légèrement différente, 9 des lignes de chacun des 32 câbles de sortie portant une information du Module de Commande I/O aux périphériques, tandis que les 3 30 lignes restantes de chaque câble sont utilisées pour transférer une information dans le sens opposé, c'est-à-dire des périphériques vers le Module de Commande I/O. La figure 13 montre encore du côté du central 300 les unités de communication 13f.- Il ressort de la figure 13 qu'on obtient un ré-35 seau ou central I/O en branchant, enti^cbacun des dix Modules de Commande I/O et le groupe de 32 périphériques d'entrée 13.a et de 32 périphériques de sortie 13b, 32 câbles d'entrée et sortie tels que ceux décrits ci-dessus. La réalisation d'un tel réseau permet non seulement à n'importe lequel des Modules de Commande I/O de 18492 34 2010550 communiquer avec n'importe lequel des périphériques disponibles, mais permet également l'obtention simultanée d'un certain nombre de communications de ce genre. La figure 14 représente un schéma synoptique d'un 5 Module de Calcul 2C1 illustrant ses zones fonctionnelles. On peut dans un ordinateur maximal utiliser trois Modules de Calcul de ce genre. Un quatrième Module de Calcul peut être utilisé à la place du huitième Module de Commande i/o. Les Modules de Calcul sont logés dans des armoires individuelles et ils présentent essentielle lement trois zones fonctionnelles : (l) logique et commande, (2) arithmétique et (3) mémorisation. La zone de logique et commande l4a est utilisée pour l'exécution des instructions, l'indexage, l'adressage indirect et relatif et le traitement des interruptions. La zone arithmétique l4b effectue les opérations arithmé-15 tiques, le décalage et les comparaisons. La zone de mémorisation l4£ constitue une mémoire locale à film mince qui est facilement disponible et rapidement accessible. La figure l4 représente encore la voie de transfert 201-50 et le pupitre d'opérateur l4d, les lignes continues munies de flèches représentant des données et les 20 lignes interrompues munies de flèches des commandes. Le Module de Calcul fonctionne à une vitesse de 4 me. comme une machine à trois adresses variable dont les Instructions de programme sont traitées sous forme de files de syllabes. Les figures 15A à 15Q, représentent un certain nombre 25 de formats de mots. Le mot de programme de la figure 15A comporte 4 syllabes de 12 bits plus un bit de parité. Les figures 15B à 15E illustrent quatre genres possibles de syllabes pour un mot de programme î ce sont respectivement l'opérateur, la variante, l'adresse et l'index. La syllabe opérateur comporte un code d'or-30 dre de 6 bits 15a et 3 indicateurs d'adresse à 2 bits Al, A2 et A3. Le code d'ordre indique quelle instruction parmi 6l possibles le calculateur doit exécuter. Les indicateurs d'adresse indiquent combien de syllabes sont nécessaires pour terminer l'instruction: 00 - utiliser la pile normale pour cette adresse 35 01 - utiliser le maintien de pile pour cette adresse 10 - utiliser une syllabe pour cette adresse 11 - utiliser deux syllabes pour cette adresse. La longueur des instructions peut aller de une à sept syllabes. La syllabe de variante comporte un modificateur d'instruction à 69 18492 35 2010550 12 bits; elle permet des ordres supplémentaires pour les instructions. Une syllabe d'adresse comporte 11 bits d'adresse littérale 15b et un bit pour un indicateur d'adresse indirecte 15ç. (1 = indirecte, O = directe). Les syllabes d'index comprennent trois 5 champs de quatre bits chacun; chaque champ de quatre bits indique un registre d'index à 20 bits à ajouter à l'adresse. Ces syllabes d'index peuvent être utilisées avec des syllabes de variante ou d'adresse, mais non avec des syllabes d'opérateur. Les syllabes d'adresse et d'index peuvent être combinées pour réaliser un 10 adressage à la fois indirect et direct. Un nombre infini de niveaux d'adressage indirect est possible avec un indexage au dernier niveau. Les formats des mots d'adresse indirecte sont ensuite représentés sur les figures 15F et 15G : ce sont deux mots d'adresse indirecte, l'un SY 20 pour l'ordinateur 20 et l'autre 15 SY 16 pour l'ordinateur 16. Le Module de Calcul est capable de fonctionner soit comme un dispositif d'adresse à 16 bits (utilisant 65.536 mots de la Mémoire Centrale), soit comme un dispositif d'adresse à 20 bits (utilisant 1.04-8.576 mots de la Mémoire Centrale). Ceci s'obtient à l'aide d'un commutateur disposé sur 20 le pupitre de surveillance qui règle automatiquement les formats de n'importe quel mot d'adressage ou mot à film mince (figures 15A à 15R). L'adressage indirect procure la possibilité automatique d'un contrôle de limites volantes dynamiques. Toutes les 25 lectures indirectes, excepté celles de la deuxième à la nième fois au cours d'une instruction à itération, et toutes les écritures indirectes sont contrôlées par l'intermédiaire des limites volantes. Au cours d'une chaîne indirecte, il y aura un mot d'adresse indirecte qui aura le bit B (bit 25) égal à un. Au moment 30 de la détection de ce fait, le registre X ou registre des Limites Supérieures se remplira des bits 5 à 24 pour le SY 20 ou des bits 9 à 24 pour le SY 16 et le registre Y ou registre des Limites Inférieures se remplira des bits 29 à 48 pour le SY 20 ou des bits 33 à 48 pour le SY 16. Une fois l'adresse finale obtenue, par 35 l'intermédiaire de plusieurs niveaux d'adressage indirect et d'indexage, cette adresse finale sera vérifiée pour voir si elle se trouve à l'intérieure des limites volantes, 16 (interruption des Limites Indirectes extérieure ) seront mises à un. bad original' 18492 36 2010550 pour les bits 5 à 24 : 26 = 0 : 26 = 1 : 27 — 0 : 27 = 1 : 28 = 0 : 28 = 1 : 29 à 48 : Sur la figure 15F, on a les indications suivantes r « limites supérieures lorsque le bit B = 1 (bit 25) -ne pas remplir les limites - prendre les bits 5 à 24 comme limites supérieures Bt les bits 29 à 48 comme limites inférieures - en remplir les registres de limites - pas de bit d'obstacle - bit d'obstacle: indique qu'il ne s'agit pas d'une 10 adresse indirecte légale - ce mot contient la dernière adresse dans la chaîne indirecte - ce mot est indirect - limites inférieures lorsque le bit B =* 1 - adresse 15 de mémoire suivante sans tenir compte du bit B - Sur la figure 150, on a également les indications suivantes pour les bits ; 9 à 24 : l6 bits - même usage que les bits 5 à 24 sur la figure 15F - 20 26 = O : ne pas remplir les limites - 26 = 1 : prendre les bits 9 à 24 comme limites supérieures et les bits 33 à 48 comme limites inférieures - en remplir les registres de limites - bit 31 même chose que pour le bit 27 de la figure 15F -25 bit 32 : même chose que pour le bit 28 de la figure 15F - 33 à 48 : 16 bits - même usage que les bits 29 à 48 de la figure 15F - Outre les formats mentionnés ci-dessus, le calculateur utilise différents formats de mot pour les Mots Binaires, 30 les Mots à Virgule Flottante , les mots à Caractères et les mots à film mince (figures 15H à 15R). Le mot de données binaires de la figure 15H comprend un bit de signe : zéro pour positif (nombre positif) et un pour négatif (virgule négative) et 47 bits de données (mot de données binaires fractionnaire); la figure 15H 35 illustre encore la virgule décimale 15d. Le mot de données à virgule flottante (figure 15J) contient deux bits de signe avec la même convention que précédemment (bit 1=0: exposant négatif et bit 1=1: exposant positif, bit 13 = C : mantisse positive et bit 13 = 1 : mantisse négative). L'exposant (il bits) et la 40 mantisse (35 bits) ont une valeur (bits 2 à 12 : valeur de l'exposant et bits 14 à 48 : valeur de la mantisse) précédée par un bit de signe; la figure 15J montre encore la virgule décimale 15e.. bad original 69 18492 37 2010550 Le mot de données alphanumérique ou mot alphanumérique de la figure 15K est utilisé pour les instructions à caractères et comprend 8 caractères de 6 bits. Les formats de mot à film mince (en mémoire ou pile prêts à être mémorisés sur film) de la figure 5 15L sont utilisés pour remplir la mémoire à film mince de différentes façons. Pour un ordinateur qui requiert 16 bits de possibilité d'adressage, il existe quatre formats pour film mince : le "un registre de seize bits" (SY 16 seulement, bits 33 à 48 s données pour le registre indiqué) de la figure 15L, le "deux 10 registres de seize bits" (SY 16 seulement, bits 33 à 48 s données pour le premier registre indiqué et bits 9 à 24 : données pour le second registre indiqué) de la figure 15L» le "trois registre de seize bits" (SY 16 et SY 20, bits 33 à 48 j données pour le premier registre indiqué, bits 17 à 32 î données pour le second 15 registre indiqué et.bits 1 à 16 s données pour le troisième registre indiqué) de la figure 15Q et le "un registre de 48 bits" (SY 16 et SY 20, bits 1 à 48 : données pour le registre indiqué) de la figure 15R. Pour l'ordinateur 20, il existe également quatre formats : le "un registre de vingt bits" (SY 20 seulement, 20 bits 29 à 48 s données pour le registre indiqué) de la figure 15M, le "deux registres.de vingt bits" (SY 20 seulement, bits 29 à 48î données pour le premier registre indiqué et bits 5 à 24 pour le second registre indiqué) de la figure 15P, le "trois registres de seize bits" de la figure 15Q et lé "un registre de 48 bits" 25 de la flgre 15R. La zone de logique et commande l4a (figure 14) contient une unité de traitement de programme (PPU) 201-40 et une unité de commande de la mémoire centrale (MCU) 201-30. Les circuits de cette zone sont utilisés pour effectuer des opérations 30 d'indexage, d'adressage indirect et de calcul d'adresse, ainsi que d'autres opérations logiques. L'unité de traitement de programme (PPU) 201-40 constitue le système de commande central du Module de Calcul. Tous les mots de données et de programme sont manipulés dans cette unité avant de faire route à travers le œrtraL 35 de commutation à enclenchements 300 vers la mémoire centrale ou unité arithmétique 201-20. L'unité de traitement de programme établit les données et les instructions. Elle lit le programme, une syllabe à la fois, à partir de la mémoire locale à film mince à 128 registres de 48 bits chacun 201-10, elle calcule l'adresse 69 18492 38 2010550 pour aller chercher les données., elle effectue l'indexage et elle met en marche l'unité arithmétique 201-20 ou l'unité de commande de mémoire 201-30 (MCU). Elle traite alors la syllabe suivante pendant que les autres unités remplissent leurs fonctions. Cette 5' aptitude à traiter simultanément des syllabes de programme successives constitue une caractéristique particulière du dispositif dit "à chevauchement de programme". Ceci s'effectue au cours du fonctionnement de l'unité arithmétique 201-20 (ou de l'unité de commande de mémoire 201-30) au moment où la PPU va chercher le mot 10 de programme suivant, calcule l'adresse de branchement ou de mémoire et commence à préparer l'instruction suivante pour l'unité arithmétique. Le temps nécessaire pour aller chercher le programme est habituellement négligeable. La PPU 201-40 contient le registre de masquage qui 15 est utilisé avec l'instruction de registre spécial d'alimentation (LSR) décrite au sujet du système d'interruption.Elis contient également les registres de limites volantes décrits plus haut et le Registre d'Interruption également mentionné plus haut. Autrement ëlle n'est pas accessible au prôgrami^e. 20 Les services de la PPU programment tous les inter ruptions en mémorisant toute l'information de commande pertinente dans les registres à film mince de la mémoire à film mince 201-10 à la réception d'un signal de condition d'interruption. Cette information est nécessaire pour restaurer le programme au point 25 d'interruption à un moment ultérieur. Cela branche alors la commande sur un programme d'interruption et remet sélectivement à zéro le registre d'interruption. L'unité de contrôle de mémoire (MCU) 201-30 est utilisée par l'unité de traitement de programme (PPU). Quand la 30 ppu lui a établi une adresse, l'unité de commande de mémoire 201-30 établit la commande et attend pour accéder à la mémoire centrale» Lorsque l'accès lui est permis* ~;lle place l'information obtenue dans le registre M de la PPU» Ls PPU va alors placer les données dans 1*emplacement convenable» Filas peuvent être placées 35 dans l'unité arithmétique en vue d'un traitement ou dans le registre de mémorisation de programme (PSE) contenu dans la mémoire locale à film mince 201-10 en cas de chevauchement, ou de branchement des programmes ou encore être utilisées pour des calculs d'adresse indirecte» L'essai de limites volantes est également 40 contenu dans la MCU» Dans le cas d'une opération de mémorisation bad original 69 18492 39 2010550 dans la mémoire centrale, la MCU attend le mot de données résultant en provenance de l'unité arithmétique avant d'accéder à la mémoire principale et de transmettre les données. Si pour une raison quelconque l'accès à un module de mémoire est requis, 5 mais n'est pas accordé après dix millisecondes, une condition d'interruption se trouve créée et l'instruction est terminée. L'unité de commande de mémoire 201-30 commande également les lignes d'erreur en provenance de chacun des 16 modules de mémoire pour déterminer si le mot de données ou d'adresse 10 contenait une erreur de parité ou si le mot qu'il essayait d'écrire se trouvait dans un bloc de mémoire protégé. Elle vérifie également si un bit d'obstacle se trouve présent au cours d'une chaîne indirecte, elle détermine quand continuer la recherche indirecte et elle décide quand alimenter le registre de limites 15 volantes. La MCU se rappelle également quelle adresse a provoqué une condition d'erreur et elle notifie à la PPU de maintenir cette adresse d'erreur dans le registre d'adresse effective à film mince jusqu'à ce que la condition d'erreur soit traitée. Elle détermine également quand il est légal de vérifier les limites 20 volantes indirectes pour établir si l'adresse à traiter est en dehors des limites volantes. Chaque fois que la MCU transmet une adresse à la Mémoire Centrale, elle génère un bit de parité pour le code d'opération et le champ d'adresse. La zone arithmétique du Module de Calcul (figure 25 14) comprend une unité arithmétique 201-20. Cette unité comprend les trois registres arithmétiques A, B et C et leurs commandes associées. Les registres A et B effectuent les calculs arithmétiques réels. Les trois registres sont tous utilisés comme registres de décalage pour les opérations en virgule flottante et en 30 virgule fixe. Les registres de l'unité arithmétique ne sont pas accessibles au programme. La zone de mémoire à film mince du Module de Calcul contient une unité de mémoire à film mince 201-10. Cette unité de mémoire locale à film minee est composée de cent vingt huit 35 (128) registres à 49 bits à film mince. Elle fonctionne en jonction avec l'unité de traitement de programme 2C1-40 pour constituer des moyens de mise en mémoire rapide qui réduisent substantiellement le nombre des accès de données aux modules de la mémoire centrale. bad original1 69 18492 40 2010550 Plusieurs lignes de commande supplémentaires, les commandes extérieures 201-60 (qui demandent les interruptions avec accusé de réception), sont également connectées à la PPU 201-40. Ces lignes réalisent des opérations d'interruption en requérant 5 l'attention du Module de Calcul et en accusant réception des signaux d'interruption. Les figures 16, 17 et 18 concernent de façon encore plus détaillée chacune des zones fonctionnelles du Module de Calcul. 10 La figure 16 montre que les 128 registres à film mince peuvent tous être adressés à l'aide d'un numéro de code octal (057 par exemple). On peut aussi les indiquer à l'aide d'un nom (registre d'index 10) ou à l'aide d'un groupe de lettres majuscules que l'on appelle "identificateur d'adresse à film mince"; 15 par exemple, PCR sert également à identifier l'adresse du registre à film mince 057 (COMPTE PROGRAMME). La carte à film mince sert à identifier les registres et groupes de registres à film mince aussi bien par leur numéro que par leur nom. La zone à film mince comprend cinq registres opé-20 randes î les quatres registres piles opérandes de numéros de ' code octal 140 (PILE 1), 144 (PILE 2), 150 (PILE 3) et 154 (PILE4) et le registre C à film mince (TFC) en 124 (C FILM MINCE). Le registre TFC maintient la partie de données la moins significative pour des instructions de division double longueur (DDV), de Divi-25 sion Flottante (FD?) et de décalage double longueur (SHF). Il met également en mémoire la moitié la moins significative du produit double longueur d'une opération de multiplication et lé reste d'une opération de division et le résultat de l'instruction de décalage double longueur. 30 Les deux Registres de Mise en Mémoire de Programme (PSR1 et PSR2) de numéro octal 100 (MISE EN MEMOIRE PROGRAMME l) et 104 (MISE EN MEMOIRE PROGRAMME 2) servent à la mémorisation des huit syllabes d'instruction et permettent la recherche des instructions en chevauchement pendant les instructions de grande 35 longueur. Le Registre d'Adresse de Base (BAR) en 055 (ADRESSE BASE) contient l'adresse de base de la zone d'adresse de données. Le Registre de Programme de Base'(BPR) en 054 (PROGRAMME BASE) contient l'adresse de base de la sorie d'adresses de programmes de bad original 18492 41 2010550 branchement. Le Registre de Compte de Programme (PCR) en 057 (COMPTE PROGRAMME) maintient l'adresse du dernier mot (recherché le plus récemment à partir de la mémoire) dans les registres de mise ei mémoire de programme. 5 Quinze registres d'index et quinze registres de limites de comparaison sont disposés suivant les trente premiers numéros de code octal 000 à G37 (000 à 017 î INDEX 0 à INDEX 15, 020 à 037 î LIMITE 0 à LIMITE 15) dans la mémoire locale dans chaque syllabe d'adresse d'index et ils peuvent être utilisés 10 pour modifier chaque adresse d'opérande. On peut donner aux registres d'index des incréments ou des décréments et on peut les comparer de six façons différentes avec les registres limites. Le registre d'incréments d'index (XIR) d'emplacement 122 (INCREMENT INDEX) est utilisé par la logique au cours de l'exécution de l'irs-15 truction d'incrément d'index. Le registre d'index 0 et le registre de limite 0 sont des registres spéciaux utilisés avec des opérations de comparaison. Les deux contiennent toujours zéro. Une information peut être mise en mémoire dans le registre de limite 0, mais il contient toujours un zéro lorsque sont effectuées des 20 opérations de comparaison. L'information peut d'une autre façon être mise en mémoire dans le registre de limite 0 d'emplacement octal 020, mais jamais dans le registre d'index 0 d'emplacement 000. Le contenu à 20 bits du registre d'Horloge à Temps 25 Réel Directrice (RTC) d'emplacement 114 (HORLOGE TEMPS REEL-RTC DIREC.) se trouve automatiquement lu et augmenté d'un incrément une fois toutes les 10 millisecondes. L'Horloge à Temps Réel Directrice peut être corrigée périodiquement et ajustée par le programme directeur. Une interruption est provoquée lorsque le compte dé-30 passe si le bit de masquage est à un. Le contenu à 36 bits du Registre d'Horloge à TempsjRéel des Utilisateurs d'emplacement 115 (HORLOGE TEMPS REEL-RTC UTILISATEUR) se trouve automatiquement lu et augmenté d'un incrément une fois toutes les 10 millisecondes. Le Registre d'Horloge à Temps Réel des Utilisateurs peut être 35 corrigé périodiquement, mais ne peut être ajusté . Une condition de dépassement provoque la remise à zéro du registre, mais ne provoque pas d'interruption. Le Registre de Compte de Caractère (CCR) d'emplacement 123 (COMPTE CARACTERE) est utilisé par l'ir&ruction de bad original 42 69 18492 2010550 recherche de caractère (CSE) pour indiquer la position de caractère examinée en dernier pour le caractère indiqué. L'emplacement 40 (COMPTE DIVISION) maintient le Registre de Compte de Division qui détermine combien de bits seront contenus dans la réponse 5 d'une Instruction de Division Double Longueur. Lorsqu'on utilise une instruction à itération, le Registre de Programme d'Itération (RPR) d'emplacement 04l (PROGRAMME ITERATION) permet une mise en mémoire des quatre syllabes du mot de programme à répéter; le Registre de Compte à Itération 10 (RCR) d'emplacement 120 (COMPTE ITERATION) contient le nombre d'itérations qui restent à effectuer, tandis que le Registre d'incrément en Itération (RIR) d'emplacement 130 (INCREMENT ITERATION) contient les incréments correspondant aux adresses contenues dans trois registres d'adresse en Itération (RAR) d'em-15 placements 44, 45 et 46 (ADRESSE ITERATION) de l'instruction d'itération. Lorsqu'un sous-programme est exécuté, les registres de mise en mémoire de sous-programme SSR ï SSA (MISE EN MEMOIRE SOUS-PROGRAMME (BAR)), SSP (MISE EN MEMOIRE SOUS-PROGRAMME (BPR)) 20 et SSC (MISE EN MEMOIRE SOUS-PROGRAMME (PCR)) maintiennent l'information du sous-programme, c'est-à-dire le contenu précédent des BAR, BPR et PCR. Le registre de programme d'interruption (IPR) d!emplacement 110 (PROGRAMME INTERRUPTION) permet la mise en mémoire du contenu du dernier PSR adressé au cours de l'inter-25 ruption, tandis que le registre de transfert en interruption (IDR) d'emplacement 070 (TRANSFERT INTERRUPTION) maintient le PSR et répète la commande pour le retour d®interruption. Le registre de transfert en panne d'alimsntation (FOR) d2emplacement 064 (TRANSFERT PAME ALIMENTATION) maintient le contenu des étages compteurs 30 binaires ou flip-flops de commande et des étages compteurs binaires ou flip-flops du registre d3interruption dans l'éventualité d'une panne d'alimentation „ La zone de programme à perfcir de laquelle a été . effectué le dernier branchement est contenue dans un registre 35 (BRR) d'emplacement 112 (REFERENCE BRANCHEMENT). Le Registre de Référence de Branchement en Interruption d'emplacement 102 (REF. BRANCHEMENT IMMHHWPÏÏON) contient l'adresse du dernier branchement précédant 18apparition d*une interruption« Les registres d'adresse effective EAR1 et EAR2 (111 ? ADRESSE EFFECTIVE-EARX2, 40 113 s ADRESSE EFFEGïIfS-EAR^l) gardent trace de tout l'adressage bad or/gfwal_ 18492 43 2010550 de mémoire, même en mode d'itération, jusqu'^ée qu'ait lieu une erreur de communication de mémoire. Ils demeurent inchangés, tels que les a commandés la MCU, jusqu'à ce que cette condition d'erreur soit servie. 5 Le registre à film mince 060 (IBR) ou Registre de Limites Indirectes contient la dernière valeur du contenu des limites volantes. Cette valeur peut être réalimentée au cours d'un retour d'interruption survenu lorsque le programme a été interrompu au cours d'une instruction à itération. Le registre 077 10 (TOD) (HEURE) contient le mois, le jour, l'heure et la minute en cours, sous forme décimale codée binaire. Le système d'interruption manipule les interruptions provoquées par des conditions telles qu'un dépassement arithmétique, un dépassement de l'horloge à temps réel, une ins-15 truction illégale, des erreurs de parité, des requêtes d'entrée/ sortie extérieures et des situations de résultat d'entrée/sortie. Chaque Module de Calcul possède un registre d'interruption. Lorsqu'une condition particulière a fait apparaître un UN binaire dans une position de bit quelconque du registre d'interruption, 20 une interruption de programme survient. Cette interruption arrête le programme en cours d'exécution, met en mémoire dans ces registres à film mince une information suffisante pour permettre la continuation du programme interrompu à un moment ultérieur et transfère la commande à un programme spécial pour servir l'inter-25 ruption. Si une erreur survient pendant un fonctionnement dans le mode de commande, la commande est transférée à un autre programme spécial pour servir l'erreur. Le retour par l'intermédiaire de l'instruction de retour en interruption (IRR) se fait toujours vers le mode normal initial. Les registres à film mince de la 30 carte de la figure 16 de la mémoire locale qui ne sont pas utilisas sont réservés à l'usage du Programme de Commande Directeur. La figure 16 montre encore parmi les registres à 50 bits (16a) de code octal (16b) des registres : RESERVE (l6çj, INCREMENT ITERATION-RIR (130) et MISE EN MEMOIRE INTERRUPTION 35 (BAR), (BPR) et ( PCR )-ISA,/ef PISC (074, 075 et 076). La figure 17 concerne la. zone arithmétique AA représentée par la figure 14 et donne un schéma synoptique détaillé de l'unité arithmétique 201-20 comprise dans cette zone. Pour faciliter la comparaison des figures, une partie de la voie de 69 18492 44. 2010550 transfert 201-50 de la figure 14 est représentée sur la gauche de la figure 17. L'unité arithmétique comprend les trois registres arithmétiques de travail du Module de Calcul avec leurs commandes associées-. Ce sont le registre A 201-20-16 (48 bits), 5 le registre b 201-20-12 (48 bits) et le registre C 201-20-10 (48 bits). Les registres A 201-20-16 et b 201-20-12 effectuent les opérations arithmétiques réelles et les trois registres sont tous utilisés comme registres de décalage pour des opérations en virgule flottante et en virgule fixe. 10 Le totalisateur 201-20-14 compris dans cette uni té arithmétique est capable d'ajouter deux nombres à 48 bits en une seule période d'horloge. Etant donné que l'ordinateur fonctionne à une vitesse d'horloge de 4 mégacycles, on obtient une somme complète en 250 nanosecondes. Cette somme est alors placée 15 dans le registre A 201-20-16 (commande d'addition 17a) et disposée suivant la nature de l'instruction. Un décalage complet de 48 bits est également effectué en une période d'horloge comme l'est un transfert à 48 bits d'un registre à un autre. Ceci entraîne un temps d'exécution grandement réduit pour des instructions itéra-20 tives telles que multiplier ou diviser. La caractéristique de cette unité arithmétique est son aptitude à mettre en position le mot dans le registre A. Cette mise en position du mot s'accomplit par un décalage du résultat vers la gauche ou vers la droite alors qu'il est transféré dans 25 le commutateur logique 201-20-18 î 8 trajets îgmllM.es à 48 bits 17b (détails sur la figure 18). Ce commutateur/comporte plusieurs positions de commutation dont on peut faire varier le nombre pour satisfaire à n'importe quelle dimension de l'information à commuter, ce qui lui permet ainsi de commuter n'importe quelle 30 quantité d'information logique voulue en une seule période d'horloge. Un registre D 201-20-22 à .6 bits applique à son tour l'information de. décalage nécessaire à des décodeurs R et L (droite et gauche) 201-20-24 qui décident de l'information de décalage et provoquent.de façon correspondante l'orientation convenable de 35 l'information contenue dans le commutateur logique 201-20-18. Dans le registre S 201-20-26 à 12 bits se trouve la syllabe de variante qui accompagne l'instruction de décalage et commande le type de décalage qui doit être exécuté î à droite ou à gauche, de sortie ou circulant, arithémtique ai logique, bad original 69 18492 45 2010550 simple ou double. Un décalage simple est effectué sur un mot de 48 bits. Le décalage double est effectué sur deux mots de 48 bits dont la partie la moins significative est contenue dans le registre TFC de la mémoire locale à film mince. 5 Le décalage est- aussi utilisé dans des instructions qui ont besoin d'être normalisées. Un résultat non normalisé d'une instruction arithmétique est l'instruction CBF (convertir Binaire en Virgule Flottante). Ces instructions provoquent le décalage du mot de 48 bits vers la gauche et l'ajustage de l'exposant. Ce pro-10 cessus est connu sous le nom de "justification" 201-20-20 et se poursuit jusqu'à ce qu'il y ait un 1 binaire dans la position la plus significative de la mantisse. Les moyens de sélection de caractère 201-20-30 répondent à des signaux du registre S 201-20-26. Ces moyens de 15 sélection de caractère ont à leur tour leur sortie appliquée sur les registres A, B et C (remise à zéro des registres A, B et C) de façon à leur permettre d'indiquer de façon sélective l'un des caractères contenus dans chacun de ces registres de travail. La figure 17 représente encore le registre K à 20 6 bits 17d» les décodeurs d'instruction 17e» les commandes de traitement de données 17f et le distributeur de minutage d'exécution 201-20-50. Ell^baprésente aussi les lignes de commande des voies de transfert 17jS> de remises à zéro de 8 caractères de 6 bits (l7h î registre A, 17i î registre B et 17J. î registre C), en pro-25 venance de la commande PPU 201-40-32 vers la commande PPU 201-40-32, en provenance des commandes 17k* en provenance des commandes A.U. 17m , vers les registres 17n, de décalage à gauche 17£> de décalage à droite 17â> de compte vers en haut 17r» de compte vers en bas 17s , de remise à zéro 17t, du registre M 201-40-38, 30 de commande de comparaison d'addition 17u, d'addition à gauche 17v et d'addition à droite 17w> Les figures l8A, l8B et l8c représentent un schéma détaillé du commutateur logique 201-20-18 de la figure 17. Les groupes de lignes horizontales l8a sont les lignes provenant de 35 la matrice de commutation.Les figures représentent encore les bits de niveau inférieur l8b, les lignes en provenance du niveau inférieur l8_ç, les bits de niveau supérieur ULB, les lignes de transfert direct l8d, de transfert circulant l8e^, de zéro l8f, de transfert arithmétique 18g, les" bits l8h et les sorties vers 40 la voie de transfert l8i. 18492 46 2010550 La figure 19 représente un schéma synoptique détaillé de l'Unité de Traitement de Programme. Les figures 20, 21 et 22 représentent également des parties détaillées du Module de Calcul. La figure 20 représente la partie d'interruption du mo-5 dule, tandis que les figures 21 et 22 représentent respectivement l'Unité de Commande de Mémoire (MCU) et la Zone de Mémoire à Film Mince (TFMA) 201-10. Etant donné que l'unité de traitement de programme constitue le système de commande central du Module de Calcul» elle est utilisée pour lire le programme et mettre en 10 marche les unités de commande de mémoire et arithmétique. Elle est également utilisée pour adresser et activer la partie de mémoire à film mince du module. Les entraîneurs d'information à 4-9 bits 201-40-18 (figure 22) de la TFMA sont activés par le contenu du registre W 201-40-16 (figure 21) ou du registre M 201-40-38 15 (figure 19) pour entraîner les 48 lignes d'information de la mémoire locale à film mince au cours d'une opération d'écriture. Le bit restant est entraîné par le générateur de parité (générateur et vérificateur de parité à 48 bits) 21a à partir du registre W ou par le générateur de parité du registre M 19a à partir 20 de ce registre M. Le bit est généré pour rendre impaire la parité d'ensemble. En variante, le registre H à 49 bits 201-40-20 (figure 22) reçoit la sortie à 49 bits des amplificateurs de détection à 49 bits 201-40-21 de la mémoire locale lorsqu'est ef-25 fectucb une opération de lecture » Au cours d'une opération de lecture- » 1s registre R à 49 bits est soumis à un essai pour s'assurer que la parité d'ensemble est impaire. Si on©"parité paire est détectés, l'horloge mère du calculateur &?-t arrêtée st le traitement est- également arrêté. Le contenu de ce registre est repré-30 senfcé visuellement. Il faut également remarquer que la sortie du registre H esÇ&etournée aux entraîneurs d* information pour accomplir 1*opération Je récriture régénératrice nécessaire à ce type de mémoire « Un isultiplss: de PFJ à 20 bits ou portes de multiplexage à film minc-s 201--*!0-22 (figure 19) fonctionne de façon à pro-35 curer un trajet- .i-f. tr-r-nssaission simultanés pour plusieurs fonctions® II" reçoit le sertie du registre II 201-^-0-20 (figure 22), ainsi bad original 69 18492 *7 2010550 accomplir l'indexage nécessaire de l'information de commande et ses variations concomitantes nécessaires dans les instructions de commande. La sortie du multiplex 201-40-22 est reliée à un certain nombre de registres qui effectuent les opérations de 5 décodage et de codage nécessaires aux fonctions multiples comprises dans le contenu particulier du multiplex. .C'est ainsi que le registre F 201-40-24 est un registre à 12 bits qui reçoit l'information fonctionnelle contenue dans le multiplex. Cette information est décodée par les décodeurs de fonction 201-40-28 de 10 façon à identifier la fonction et elle est couplée aux commandes de PPU 201-40-32 nécessaires prévues pour le traitement des données et à leurs commandes concomitantes de calcul d'adresse 201-40-32. Le registre N 201-40-26 est un autre registre à 12 bits connecté de façon à recevoir la sortie du multiplex. Il fournit 15 une information qui doit être codée. Le registre d'interruption à 15 bits 201-40-12 (figures 19 et 20) et son registre de masquage à 40 bits 201-40-10 fonctionne également pour fournir une information qui doit être codée. Le codifieur d'interruption 201-40-13 (figure 19) dirige 20 une telle information pour qu'elle soit indexée de façon convenable en 201-40-30 en vue de son multiplexage avant qu'elle ne soit oouplée au codifieur d'adresse à film mince 201-40-34 en vue de la création d'une adresse dans la mémoire locale à film mince. Cette adresse est alors placée dansi le registre d'adresse 25 201-40-36 en vue d'un adressage ultérieur de l'emplacement de la mémoire à film mince qui doit être activé. Le registre M à 20 bits 201-40-38 est également connecté au multiplex pour recevoir une information qui requiert une manipulation mathématique. Il reçoit une information qui doit 30 être envoyée au totalisateur.201-40-42 dans lequel elle est combinée avec le contenu provenant du.registre E à 20 bits 201-40-40. Il reçoit' également' du-multiplex une information qui doit être -envoyée au registre S 201-20-26 de l'unité arithmétique (figure 17) de façon à fournir l'information pour n'importe 35 quelle-fonction de décalage qui doit être effectuée. Sur la figure 21, l'information de commande d'entrée destinée au Module de Calcul entre dans le registre W à-48 bits 201-40-16 (Entrées/Sorties vers la Mémoire et Entrées dans Film Mince) comme le font les données d'entrée provenant du 69 18492 48 2010550 Module de Mémoire» Les données de mémoire provenant des mémoires S1 à sl6 entrent tout d'abord dans plusieurs récepteurs de données 201-40-14 qui sont capables de manipuler 49 bits de ces données. 5 Les données qui doivent subir ou qui ont subi une manipulation mathématique dans l'unité arithmétique passent à travers le registre W par l'intermédiaire de la voie de transfert interne 201-50 (figures 19 et 21) du Module de Calcul. L'unité de commande de mémoire (MCU) (figure 21) 10 manipule des assignations de commande et de transfert qui lui ont été données par l'unité de traitement de.programme (figure 19). Elle contient et commande les entraîneurs de ligne à 51 bits 20tj50-l8 (entraîneurs de bit de parité 21b, entraîneurs de commande 21c et entraîneurs de données 21d) qui transmettent une 15 adresse et des données à l'ensemble 2l£ des seize Modules de Mémoire. Elle comprend les moyens de minutage de mémoire 201-30-10 ("registre MT (temps de mémoire) à 20 bits et commandes" ou "commande de minutage de mémoire")qui,maintiennent le synchronisme entre le Module de Mémoire et le Module de Calcul qui 20 communique avec lui. Tous les sous-ordres. qui affectent ce transfert sont, émis et commandés par ces moyens 201-30-10. Le registre d'adresse G à 27 bits 201-30-12 reçoit et contient une information qui doit être avancée vers les entraîneurs de lignes 201-30-18 après avoir subi une manipulation 25 d'adresse de la part du totalisateur à 20 bits 201-40-42 de l'unité de traitement de programme PPU. Il reçoit également, outre l'information d'adressage provenant du totalisateur, des ordres de commande d'opération 21f qui indiquent la fonction à effectuer et une information de données provenant du registre W. Une parité 30 est engendrée a partir du registre G (générateur de parité d'adresse 21g) pour accompagner la requête d'adresse vers la mémoire (21h). Une information de parité est également créée par le générateur de parité 21a branché sur le registre W en vue d'accompagner les données (21i_). Le réseau de sélection de parité 21j_ 35 détermine quel bit de parité est envoyé aux entraîneurs de lignes mentionnés plus haut. Une paire 201-30-16 de registres à 20 bits appelés séparément "registre X" (20 bits - limites supérieures) et "registre Y" (20 bits - limites inférieures), fournissent le moyen de soumettre à un essai l'adresse indirecte pour voir si 69 18492 49 2010550 elle se trouve à l'intérieur des limites prédéterminées. Ceci s'accomplit à l'aide d'un comparateur de limites indirectes ou "limites indirectes extérieures" 201-30-20 qui compare l'adresse indirecte finale recherchée par le contenu du registre G avec 5 les limites supérieures et inférieures contenues dans les deux registres à 20 bits 201-30-16. La figure 19 représente encore des entraîneurs de calculateur d'interruption 19b avec une ligne 19£ à destination de chaque module de calcul de l'ordinateur, ainsi que des lignes 10 en provenance des commandes M de mise à 1 19d, en provenance des commandes MCU 19£ et en provenance des commutateurs 19f et un ensemble de lignes de sous-commandes 19g. Les commandes de PPU 201-40-32 se présentent enfin de la façon suivante i Registre T (minutage) (9 bits) 15 Registre PH (phase) (6 bits) Commande des piles (3 bits) Commande des syllabes (6 bits) Commande des itérations (5 bits) Commande film mince (5 bits) 20 La figure 20 représente encore des récepteurs d'interruption-calculateurs 21b avec des lignes 21ç en provenance des calculateurs *1 à *4, des récepteurs d'interruption-l/0 21d, des récepteurs d'interruption-DDM 21e, des récepteurs de requête extérieure 21f avec des lignes de requête extérieure ER 1 25 à ER*l6, des portes d'interruption-calculateurs 21g, une sélection d'interruption 1/0 21h, une sélection d'interruption DDM 21^, une sélection de requête extérieure 21j_, une .sélection de dépassement de la RTC directrice 21k avec une ligne 21m de dépassement de la RTC directrice en provenance de la AA, des portes de sélec-30 tion 21n avec une ligne 2l£ de tentative d'écrire dans les registres à film mince à lecture uniquement en provenance de la AA, une sélection d'instruction illégale 2l£ avec une ligne 21r d'instruction en mode normal illégale et une ligne 21j[ d'instruction illégale, une sélection pas d'accès à la mémoire 21t avec 35 une ligne 21u pas d'accès £ la mémoire et une ligne 21u' indicateur d'erreur en provenance de la MCU, des sélections de condition arithmétique anormale 21v, une instructions de maintien 21w, un bit d'obstacle 21x, une sélection de commande, de branchement 2l£ avec une ligne 2l£* de" commande de branchement à partir de 69 18492 50 2010550 la AA et une sélection de commande d'instruction unique 21z avec une ligne 21z' de commande d'instruction unique. La figure 21 représente encore une sélection de ae croisement 21k avec des lignes en provenance des mémoires 1 à 5 *16, des récepteurs d'erreur 21m avec des lignes en provenance des mémoires X1 à Ml6; une ligne 21n en provenance de la commande de calcul.d'adresse dans la PPU, une ligne 2l£ vers les commandes film mince, un vérificateur de parité d'entrée 2l£P l'heure à partir de l'horloge (B„C.D.) 21r, des commutateurs octaux 21s, 10 des lignes de requête extérieure 21t, le numéro du calculateur 2lu et une ligne 21v vers les entraîneurs d'information à film mince« La figure 22 représente encore un registre d'adresse-registre FR à 7 bits 22a., des commutateurs de mot 22b 15 et 22e_, des portes de multiplexage à film mince 22d, une sélection de parité d'entrée à film mince 22e avec une ligne 22f de commandes, un vérificateur de parité à film mince 22g avec une ligne 22h vers les commandes d'horloge et des lignes 22_i de commande en provenance de la PPU. 20 La figure 22 représente enfin la zone de mémoire à film mince 201-10 à 128 registres;, à 49 bits par mot et avec un d'accès (écriture/lecture) de 0.„25y&s. Cette zone se présente de la façon suivante ; Heure (TOD) 25 Limites d'écriture indirectes (IWB) 15 Registres d3index (AXE) . 15 Registres de limites (ALR) Registre de compte de divisions (DCR) Registre de programme à itération (RPR) 30 3 Registres d'adresse en itération (BAR) . Mise en mémoire du BAR pour le SRJ (SRA) Mise en. mémoire du BPR poas? le SM (SRP) Mise en mémoire du PCR pour le^SFJ (SRC) Registre de programme às base (BPR) 35" Registre d'adresse de bas© (BMl) Registre de compte dé progrssL*?.#s (PCR) ; Registre d1 adresse de base dinterruption (Mode de ccsasands A) (XARA) Registre d'adresse de base sz- interruption (Mode de 40 commande B) (ÏARB ) Registre de transfert en panne d.'alimentation (PDR) Registre 6e transfert en interruption (IDR) 2 Registres de mise en mémoire de programme (PSR1, PSR2) Registre de programme d*intérimption (XPE) 45 2 Horloges à temps réel (RTC) ' Registre de- compte-d! itérations (RGR) Registre, cl3incrément d'index C&ÏR)_ bad original 69 18492 51 2010550 Registre de compte de caractères (CCR) Registre C à film mince (TFC) Registre d'incrément en itération (RIR) 4 Piles 5 Zone de programme (BRR) 2 Registres d adresse effective (EAR) Mise en mémoire du BAR pour interruption (ISA) Mise en mémoire du BPR pour interruption (ISP) Mise en mémoire du PCR pour interruption (ISC) 10 (Instruction STF et LTF peut adresser n'importe quel registre) Référence de branchement en interruption (IBR) Il faut considérer les figures 17# l8A, l8B, 18C et 19 à 22 comme un tracé complet du Module de Calcul. Les regis-15 très contenus dans la mémoire locale à film mince (figure 22) seront spécifiés en utilisant des "identificateurs", par exemple BAR, BPR, etc... Une fois une condition d'interruption survenue, le Module de Calcul doit reconnaître et traiter l'interruption 20 aussi rapidement que possible. Chaque condition d'interruption met à 1 un bit déterminé du registre d'interruption 201-40-12. Une fois que l'instruction en cours d'exécution (lorsqu'est survenue, l'interruption) a été complétée, le Module de Calcul accuse réception de la condition d'interruption en entrant en 25 mode de commande. Le transfert du mode normal au mode de commande est déclenché par la réception d'un signal provenant du flip-flop de commande (ITE). La reconnaissance d'une condition d'interruption démarre une séquence décrite ci-dessous. Les contenus des registres à film mince BAR, BPR 30 et PCR sont respectivement, mémorisés dans les ISA, ISP et ISC. La valeuç&u PCR mémorisée est l'adresse du mot de programme à exécuter après retour au : mode de fonctionnement normal, d'où exécution du programme interrompu , ou un de moins que le mot à exécuter, suivant la syllabe en cours de traitement au .moment de 1'inter-35 ruption. Si un recouvrement était survenu,- l'-adresse contenue dans le PCR aurait été corrigée, automatiquement. Le contenu du registre de mémorisation de programme approprié PSRl ou PSR2 est mémorisé dans le registre de programme d'interruption (IPR). Les contenus des flip-flops de com-40 mande nécessaires pour-reprendre-.l'opération à la syllabe correcte dans le programme sont mémorisés dans le IDR (Registre de Transfert en Interruption). La.liste ci-dessous présente la connotation donnée à chaque bit du IDE.' ' - 69 .18492 Bit 1 Bits 2 à 8 5 Bits 9 à 12 Bits 13 à 27 10 Bit 28 Bit 29 15 Bits 30 et 31 20 Bit 32 25 Bits 33 à 35 30 ' ' 35 Bit 36 Bit 37 40 Bit 38 45 '• Bit 39 50 s'î52 2010550 • Si ce bit est un UN, un prégroupement bloqué de code était en cours de traitement lorsque l'interruption est survenue. Non utilisés. Ces bits, spécifient le numéro du calculateur qui a été interrompu. Ces bits indiquent l'état du registre d'interruption entier lorsque survient une interruption. Si ce bit est un UN, ceci signifie que le Registre d'Adresse Effective 113 possède l'adresse de la condition d'erreur qui a provoqué 1'interruption-par-erreur. Si ce bit est un UN, ceci signifie que le Module de Mémoire a détecté une erreur de parité d'adresse, une erreur de parité de données ou une tentative d'écriture dans une section de mémoire à lecture seulement. Ces bits indiquent la syllabe qui a été la dernière utilisée au cours d'une instruction à itération. Si ce bit est un UN, ceci signifie que le dispositif de traitement se trouvait dans le milieu- d'une Instruction à Quatre syllabes à Itération lorsqu'est survenue l'interruption. Ces bits.indiquent l'adresse de la syllabe suivante du PSR . C'est une syllabe d'opérateur, étant donné que le transfert en mode de commande ne peut survenir qu'à la fin d'une instruction. Les syllabes sont dans le PSRl numérotées 3-2-1-0 à partir de l'extrémité la plus significative du registre. Les syllabes sont d'une façon analogue'dans le PSR2 numérotées 7-6-5-4. Si ce bit est un.UN, une instruction à itération a été interrompue. Si ce bit est un UN, une Instruction à'itération a été interrompue avait exécution de sa première itération. Un UN dans cette position indique que le PSRl contenait encore une information après exécution de la dernière instruction avant que l'interruption ait été traitée. Si les bits 38 et 39 sont tous les deux des UN en raison d'un remplissage avec recouvrement, l'un de ces bits sera remis à zéro une fois restauré, étant donné que le recouvrement sera perdu lors du retour au mode normal. Un UN indique ici que le PSR2 contenait encore une information après l'exécution de la dernière instruction avant que l'interruption ait été traitée. Si - les bits 38 et 39|s ont- tous- 69 18492 53 2010550 deux des UN, en raison d'un remplissage avec recouvrement, l'un de ces bits sera remis à zéro après avoir été restauré, étant donné que le recouvrement sera perdu. 5 Bit 40 Un UN dans cette position de bit indique que le flip-flop POV (dépassement supérieur) est mis à un et que son indicateur correspondant est allumé. Bit 4l Un UN indique ici que le flip-flop PUN (dépas- 10 sement inférieur) est mis à un et son indica teur allumé. Bit 42 Un UN dans cet emplacement indique que le flip-flop PNN (non normalisé) est mis à un et son indicateur allumé. 15 Bits 43 et 44 Ces bits concernent le contenu du compteur de piles et indiquent quel registre de pile est placé à la partie supérieure : 0, 1, 2 ou 3 (correspondant respectivement aux positions 1 à 4). 20 Bit 45 Un UN indique ici que le Module de Calcul fonctionnait en mode de commande. Bit 46 Un UN indique ici que la condition d'inter ruption du moment est une panne d'alimentation principale. 25 Bit 47 Un UN dans cette position indique un fonction nement inverse du compteur de piles. Bit 48 Un UN indique ici que le Module de Calcul fonctionnait dans le mode de commande B. Le flip-flop de mode de commande est mis à un sur 30 certaines instructions qui sont Indisponibles en fonctionnement en mode normal et il prévient temporairement le traitement d'autres conditions d'interruption à l'exception des deux interruptions de priorité les plus élevées î panne d'alimentation principale et horloge à temps réel de comptage. 35 Le contenu du IAR (Registre d'Adresse en Interrup tion) est alimenté dans les BAR et BPR. Le IAR ne peut être alimenté qu'en mode de commande et contient l'adresse de base d'une table de douze mots de données qui spécifient les adresses de démarrage des routines de service des douze conditions d'inter- 40 ruption. Cette table est dressée par le programmeur de telle façon que chaque condition d'interruption soit servie par la routine convenable. Le programmeur est également responsable de l'écriture de ces routines de service, à moins que le programme ne doive être mené sous la commande d'un programme directeur. Les 45 routines de service d'interruption sont analogues- à un groupe de sous-routines dont chacune effectue une série d'opérations, pour bad orignal 69 18492 54 2010550 soit (a) déterminer la cause de la condition d'interruption et en venir à bout» soit (b) by-passer la partie du programme qui a été interrompue, soit- (c) redémarrer le programme et tenter à nouveau la section suspecté, soit enfin (d) imprimer une identification 5 de l'interruption et arrêter. L'adresse de mémoire du premier emplacement de la routine de service d'interruption pour une condition d'interruption déterminée est calculée en ajoutant le numéro d'interruption provenant de la table de la figure 6 au contenu du registre 10 d'adresse de base en interruption IAR. Le bit du registre d'interruption 201-40-12 qui correspond à la condition d'interruption qui est à traiter est remis à zéro. Les POV, PUN, PNN et tous les autres flip-flops de 15 commande nécessaires sont alors remis à zéro pour permettre au programme en mode de commande qui est en cours d'exécution de les utiliser sans les remettre d'abord, à zéro» Si l'interruption a été provoquée par une condition de défaut telle que POV, PUN ou PNN* les flip-flops qui 20 provoquent l'interruption ne sont pas remis à zéro. Les autres ont leur contenu mémorisé et sont remis à zéro de telle façon qu'ils puissent être restaurés lorsque l'instruction IRR est exécutéeo Les flip-flops qui sont associés aux conditions qui provoquent l'interruption sont remis à zéro lorsque la IRR est 25 exécutée s'ils n'ont pas été précédemment remis à zéro. L'action par le programme de commande en réponse à une interruption (autre que les deux premières interruptions indiquées dans le tableau 1} se présente par conséquent habituellement sous la forme d'une routine de service qui dirige les 30 actions nécessaires qui sont à entreprendre, Ces routines de service sont logées.dans une table placée les Modules de Mémoire Centrale et à chacune des conditions d * interruption da la liste est associée l'une des routines plaoé®: -i une adresse particulière correspondante -1-3 3a liste mémorisée, 35 Si aucune action de pro-graiime n'est nécessaire en réponse à us signal d1 interruption., uns Instruction IRR peut être codée dans cet emplacement d.e tabj.s- La table suivante illustre des activités typiques utilisées au servies des interruptions indiquées« bad original 69 18492 55 2.010550 10 15 20 25 30 35 Panne d'Alimen- (PPP) tation Primaire Requêtes Exté- (EXR) rieures Achèvement dfEn- (IOT) trée/Sortie Interruption de (INTC) Calculateur Dépassement de (RTC) l'Horloge à Temps Réel Limites Indirectes (OIB) Extérieures Instruction (ILIN) Illégale Pas d'Accès à la (NOAM) Mémoire Communications DDM (DDM) Saut de Sous- . (SRJ) routines Instruction Simple (SIN) Condition Anormale (ABCN) Arrêt Bit d'Obstacle 40 Erreur de Parité (HLT) (SNAG) Redémarrer n'importe quelle opération d'entrée/sortie altérée par la panne d'alimentation. Requêtes extérieures de service à l'attention du Calculateur. Etat d'essai dans le. descriptif de résultat pour un achèvement convenable de l'opération d'entrée/sortie. Rechercher dans la table de travail la tâche à accomplir. Effectuer l'opération lorsque l'intervalle de temps spécifié s'est écoulé. Procéder à un essai pour découvrir si l'adresse effective est en dehors des limites de mémoire. Démarrer l'opération d'entrée/sortie lorsqu'un code de numéro inutilisé provoque l'interruption. Procéder à un essai pour découvrir pourquoi une adresse d'opérande se réfère à un emplacement de mémoire qui n'est, pas dans l'ordinateur. Commencer le service de la pile de descriptifs DDM. Enregistrer qu'une sous-routine' a pu entrer.(Utilisé essentiellement pour un tracé de liaison).. Interpréter l'instruction suivante à exécuter.(Utilisé essentiellement pour éliminer les défauts des programmes). Ajuster les valeurs des données en raison d'un dépassement supérieur ou inférieur. Effectuer une opération en modé de commande telle que changer lés limites de mémoire. Procéder, à. une action de, programme lorsque survient un blocage à partir d'une table ou d'un mot dé mémoire. Régénérer les données en raison d'une erreur dans un mot de. mémoire... (PER) erreur dans un mot de. mémoire.. L'exécution, d'une instruction: appelée " instruction de requête extérieure de. mémorisation" (SER) provoque la mémorisation du contenu du registre d'interruption 201-40-12 dans 45 les bits 21 à 32 de l'adresse de mémorisation d'instruction SER. Ceci identifie les signaux d'interruption qui attendent d'être traités. . • • . i 69 18492 56 2010550 La figure 23 représente un schéma synoptique détaillé d'une armoire de Module de Commande d'Entrées/Sorties complète qui comprend deux unités ou canaux de commande I/O (*1 et x2) complètement séparés. Dans la présente description, mo-5 dule signifie armoire et ces termes peuvent êtreutilisés indifféremment. De même, chacune des deux unités d'un module est également appelée canal ou sous-module. Dans ce qui précède de la description, on a décrit les armoires de Module de Commande I/O 401 et les canaux ou unités ont reçu les références 401-1 et 401-2, 10 l'unité 401-1 était encore appelée unité K1 ou unité A et l'unité 401-2 unité s2 ou unité B. De plus, dans- le module les parties d'interface avec les périphériques et de communication avec la mémoire ont reçu respectivement les références 401-10 et 401-12. Ces parties numériques à références de base sont utilisées pour 15 permettre une description des détails supplémentaires illustrés par la figure 23. Pour accroître les performances du i/o, un registre tampon a été ajouté à chaque module de l'armoire I/O. Du point de vue fonctionnel, il est disposé entre le registre d'information 20 et le tampon de communication„ Avec cette modification et un changement dans la logique de priorité, les deux canaux peuvent maintenant fonctionner simultanément avec un dispositif périphérique à un mégacycle et prendre des données à partir du même organe de commande de mémoire qui peut avoir une durée de cycle atteignant 25 3,25 microsecondes par cycle. Si on utilise des dispositifs périphériques plus lents, la durée du cycle de mémoire peut augmenter. Si par exemple on utilise un dispositif à 500 kilocycles, on peut utiliser une mémoire à 8,5 microsecondes par cycle. Si on utilise seulement'une unité de l'armoire 1/0, le dispositif à 30 un mégacycle peut fonctionner avec une mémoire à 8 microsecondes et le dispositif à 500 kilocycles"avec une mémoire à jusqu'à 16 microsecondes, etc... Les durées données ci-dessus ne sont que des exemples et supposent qu'aucun autre bloc principal ne requiert d'al-35 1er à l'organe de commande de la mémoire qui est utilisé par le i/c. Etant donné que ceci constitue une restriction impraticable, dans bien des circonstances les vitesses"de cycles de mémoire indiquées ci-dessus sont considérées être les vitesses maximales qui peuvent être permises. Des vitesses aussi élevées que possible 69 18492 57 2010550 pourraient être introduites si on utilisait des dispositifs à un mégacyele ou bien on pourrait utiliser une combinaison de mémoires à plusieurs vitesses pour optimiser l'ordinateur, par exemple si on utilisait des dispositifs rapides et lents, on pourrait utili-5 ser les mémoires rapides avec des transferts à tambour ou à disque et les mémoires lentes pour le fonctionnement de l'imprimante. Etant donné (jiil est possible que le Module I/O n'obtienne pas en temps utile l'accès à la mémoire, en raison . -10 du traitement d'autres requêtes de priorité plus élevée adressées à la mémoire, tous les dispositifs ainsi constitués sont équipés pour achever l'opération I/O si le I/O n'a pas de données disponibles lorsque nécessaire. Tottes les lignes de données du I/O vers la mémoire 15 et les dispositifs périphériques comportent un bit de parité. Les lignes de données de mémoire comportent une parité à la fois sur les bits d'adresse et de données à destination de la mémoire. Les lignes de données des dispositifs périphériques comportent une parité sur le code d'ordre et le compte d'enregistrement aussi 20 bien que sur les données à destination des dispositifs. Le I/O présente également certaines caractéristiques de vérification de parité intérieure. Celles-ci comprennent l'examen de parité en avant de la mise à jour pour vérifier à la fois les compteurs de mots et d'adresses, en déterminant la 25 parité des mots de données caractère par caractère pour s'assurer que la parité envoyée à la mémoire ou reçue de celle-ci concorde avec la parité déterminée par cette méthode. Cette dernière technique montre si les bits ont été changés ou non pendant un décalage à l'intérieur du I/O. 30 Pour vérifier le transfert de descriptifs inté rieurs tous les descriptifs sont décalé en arrière vers le tampon de communications après transfert au registre de descriptifs pour voir si la parité engendrée dans le tampon de communications (CB) est encore la même que celle reçue de la mémoire. 35 Cet essai peut prévenir des erreurs lors de l'essai de démarrer un mauvais dispositif, de lire ou d'écrire une mauvaise information dans la mémoire, d'écrire ou de lire trop ou trop peu d'informations avec un dispositif périphérique particulier ou d'obtenir qu'un dispositif périphérique effectue une mauvaise 40 opération. 69 18492 "58 2010550 On a également prévu un descriptif d'essai qui suit le trajet ci-dessus, mais retourne un descriptif de résultat au lieu de démarrer un dispositif,, Ceci devrait permettre au programme de déterminer quel bit doit être relevé ou abandonné si 5 un problème devait se présenter dans le transfert des descriptifs. Cet essai des descriptifs avec l'examen en avant de la mise à jour de parité sur les compteurs de mots et d'adresses devrait faire beaucoup pour prévenir le I/O de détruire ou de superposer des informations soit dans la mémoire, soit dans les 10 dispositifs périphériques qui ne devraient pas être atteints. Avec ces protections du matériel, la zone de mémoire soit dans le bloc périphérique, soit dans le bloc central se trouve bien protégée contre une destruction dans des emplacements inconnus. Avec ces caractéristiques, la zona de mauvaise 15 mémoire devrait être à la fois connue et limitée à trois mots ou moins. Si un défaut apparaît dans l'emplacement dans le I/O du code d'ordre ou du numéro du dispositif compteur d'adresses, il n'y aura pas de mauvais emplacements ni dans le bloc central, ni dans la mémoire périphérique. 20 Etant donné que les huit armoires de module de commande i/o que comporte l'ordinateur ici décrit sont toutes identique?r, il n'est nécessaire de décrire qu'une seule armoire. Cette armoire permet l'exécution d'opérations d'entrée/sortie simultanément à un traitement de données. Elle commande également 25 le transfert et le format des données entre les périphériques et les Modules de Mémoire centrale. Las actions d'entrée/sortie sont engagées par le Module de Calcule Lors de Inachèvement du transfert des données, tout l'équipement est automatiquement renvoyé à un état où il est prêt pour de nouvelles requêtes et, 30 au moyen de 1 ' interruption.» il informe le programme directeur de l'achèvement de l'opération d4entrée/sortie « Le contact entre la aéaoi'/e cls l'ordinateur et chacun-des Modules de Calcul I/O est maintenu par 1* intermédiaire de la partie "de coisaunie at i on avec la œ£rac«ire du module I/O repré-35 sentée à la partie supérieure die la figure 23-. Cette partie du module est h€.bitv 69 18492 59 2010550 bidirectionnel, toute description du trajet de passage d'un signal à travers le module doit être identifiée à une opération particulière, à savoir d'entrée ou de sortie, En général, une opération de sortie comprend le transfert de données d'infor-5 mation de la mémoire sous forme de segments ou mots de 48 bits à travers le central et vers le registre tampon de communication ' 401-12-l8 à 49 bits (bit de parité,23a avec des lignes 23b en provenance des commutateurs et 23e/en provenance de la mémoire) du Module de Commande I/O. De là, elles sont envoyées au registre 10 tampon, puis au registre d'information 401-2-12 de l'unité s2. Dans l'un ou l'autre cas, le mot à 48 bits est ensuite transféré suivant une séquence en série de segments de caractères à 6 bits vers un dispositif périphérique extérieur sous la commande du dispositif. 15 Par contre, une opération d'entrée a lieu lorsque ces caractères d'information sont transférés de façon séquentielle à partir d'un dispositif périphérique d'entrée, assemblés en un mot de 48 bità dans l'une ou l'autre des unités de commande I/O, puis envoyés au registre tampon à 48 bits (23d pour l'unité A) et 20 ensuite au tampon de communications 401-12-18 en vue de leur transmission le long des lignes du central de commande vers un emplacement de mémoire particulier. Etant donné que l'une ou l'autre opération commence de la même façon, c'est-à-dire par un transfert de descriptif de la mémoire de l'ordinateur vers un Module 25 I/O sous les ordres d'un Module.de Calcul, toutes les opérations commencent de la même manière et suivent par conséquent le même motif. Toutes les opérations des unités d'Entrées/Sorties débmtent en réponse à une instruction 1/0 provenant d'un Module 30 de" Calcul traitant dans son mode de.Commande A. Cette instruction est ici appelée- "Transmettre un descriptif à l'i/o" (TI0). Elle présente la séquence suivante î le Module de Calcul requiert l'accès à un Module de Mémoire> -lorsque celui-ci est accordé, il provoque la transmission du contenu de 1'emplacement de mot de 35 mémoire (descriptif) vers le Module de Commande 1/0 désigné dans le code d'ordre qui accompagne la requête de mémoire; ce mot initial entre dans le registre de descriptif 401-1-26 (compteur de mots 23^, parité 23f, état 23^, compteur d'adresses de mémoire 23h, parité 23i.> numéro de dispositif 23J. et code d'ordre 23k, bad qf'^nal/ 69 18492 60 2010550 avec une ligne 23m C.B. entrée un côté) par l'intermédiaire du registre tampon de communications 401-12-18. L'entrée dans le registre tampon de communications partagé en commun s'accomplit par l'intermédiaire d'un dispositif 5 de porte sélectif, appelé "moyens d'entrée un côté" 401-12-16 de la figure 23 (avec des lignes 23n ï I.R. Mode B, 23£ ï 'D.R. Mode A et 23£ î D.R. Mode B). En faisant passer l'information par une porte sélective dans le registre tampon de communications 401-12-18, ces moyens d'entrée un côté 401-12-16 permettent à ce tampon 10 de communications d'accepter l'information provenant de la mémoire si une opération de sortie est spécifiée. Ils permettent au contraire au tampon de communications d'accepter un mot assemblé par caractères à partir de l'un des registres tampons ou registres d'information à 48 bis 401-1-12 et 401-2-12 si c'est une opéra-15 tion d'entrée qui est indiquée. Les données d'information de mémoire qui entrent dans le tampon de communications 401-12-18 à partir des moyens d'entrée un côté 401-12-16 au cours d'une opération de sortie sont transférées vers l'un ou l'autre des registres tampons ou registres d'information 401-1-32 et 401-2-12. 20 Si le transfert à partir de la mémoire comporte des données de commande, c'est-àdire un descriptif, le transfert à partir du . tampon de communications se fait alors vers l'un ou l'autre des registres de descriptif 401-1-26 et 401-2-26, qu'il s'agisse d'une opération d'entrée ou de sortie. 25 Les données qui entrent dans le tampon de communi cations, que ce soit une information ou une commande, qui sont en train de retourner à la mémoire, c'est-à-dire des données d'information d'entrée ou des descriptifs de résultat, non seulement suivent une route différente lorsqu'elles quittent le tampon 30 de communications, mais encore sont manipulées d'une manière différente. La route suivie se dirige du tampon de communications vers des groupes d'entraîneurs de lignes. Un groupe de ces entraîneurs 401-12-38 comporte.un total de 25 entraîneurs de li-35 gnes (avec des lignes 23.r vers la mémoire), tandis qu'un second groupe 401-12-32 en comporte 23 (avec également des lignes 23r vers la mémoire). Un entraîneur de parité 401-12-36 est également prévu (avec aussi une ligne 23r vers la mémoire) et il lui est fourni un signal de parité provenant du générateur de parité 40 401-12-34. bad original 69 18492 61 2010550' Alors que les entraîneurs à 25 lignes 401-12-38 reçoivent leurs données directement du tampon de communications, ce n'est pas le cas des entraîneurs à 23 lignes 401-12-32. Parmi ceux-ci, 20 sont alimentés (par l'intermédiaire d'un registre 5 d'adresse à 20 bite 401-12-28) à partir d'un second dispositif de porte sélectif, également appelé "entrée un côté" 401-12-26, avec des lignes 23s d'adresse de module de mémoire D.R. i 23s' en mode A et 23s" en mode B , tandis que les 3 entraîneurs restants sont alimentés par un commutateur lecture/écriture à 3 bits 10 401-12-30 qui indique l'opération à effectuer à partir de moyens de commande 23t. associés à chaqueunité X1 et x2 (mode A s 23_t* et mode B : 23t"). Les entraîneurs à 23 lignes alimentés à partir des entrées un côté 401-12-26 sont alternativement fournis en 15 données d'information et de commande. Les entrées un côté 401-12-26 peuvent sélectivement conditionner (ou faire passer à travers une porte) l'information vers l'ensemble des 20 entraîneurs à partir du registre tampon 401-12-18. Une information combinant le contenu à 15 bits du registre d'adresse de base de descriptif 20 401-12-20 et les 5 bits qui identifient le dispositif périphérique qui requiert le service d'établissement ou de libération 401-12-22 peut également être fournie à ces entraîneurs à 20 lignes. Dans la figure 23, il n'est fait référence que de façon symbolique aux instructions contenues dans le mot descriptif 25 logé dans chacun des registres de descriptif 401-1-26 et 401-2-26. Le mot descriptif contiaat le numéro de dispositif périphérique courant 23j_, le code d'opération du dispositif extérieur ou ordre de code 23k, le nombre d'enregistrements à traiter ou compteur de mots 23e, l'emplacement de mémoire à utiliser ou compteur d'adres-30 se de mémoire 23h et le champ d'état opérationnel ï/0 ou état 23f. Un décodeur de descriptif 401-1-28 et des moyens logiques de commande appropriée 401-1-36 sont associés à ce registre de descriptif, ainsi qu'ils le sont avec le registre d'instruction du Module de Calcul. Le dispositif périphérique à utiliser pour cette 35 opération est choisi par des moyens de sélection de paire de lignes de dispositifs 401-1-30 (avec une ligne 23u î mélangeur de sortie) en réponse au signal d'identification à 5 bits provenant du registre de descriptif 401-1-26. Lsirf ormation d'état- ESL provenant à la fois des dispositifs périphériques d'entrée et de bad original" 69 18492 62 2010550 sortie entre dans l'unité par 1'intermédiaire des mélangeurs receveurs LRX 401-1-32, comme le fait l'information provenant des deux types de dispositifs en ce qui concerne la disponibilité d'unité (UA). 5 Etant donné que l'unité doit déterminer cette in formation à partir des dispositifs,,elle requiert des moyens pour imposer certains signaux de commande aux caractères envoyés à ces dispositifs. Pour les dispositifs périphériques d'entré®,? cette commande est fournie par le mélangeur 401-1-34, tandis que,, pour 10 les dispositifs de sortie, c'est le mélangeur 401-1-22 (avec des lignes 23v £ parité O.C. (code d'ordre), 23w î code d'ordre et 23x î compteur d'enregistrements =1) qui pourvoit à cette nécessité. Chaque Module de Commande I/O communique avec 15 1* équipamenVterminal (dispositifs périphériques) par l'intermédiaire des circuits d'interface d'entrée et de sortie„ Le circuit d'interface de sortie 23^ comprend plusieurs mélangeurs/entr albeui'B de sortie 401-10-1 (avec des lignes 23,2, P°ur Ie module A et 23z" pour le module B) qui comprennent les éléments de décodage, de 20 mélange et d'entraînement .pour toutes les lignes passant du module I/O vers les dispositifs périphériques* Ce circuit de sortie nécessite des récepteurs pour le signal de requête de caractère provenant du dispositif. Le circuit d*interface, d'entrée 23a1 comprend non seulement plusieurs moyens récepteurs ou entraîneurs 25 mélangeurs d'entrée 401-10-8r mais encore 'Ses moyens de sélection d'entrée (avec des lignes 23b' S C,ES Mode â et 23£f s Marche Mode A provenant de Commandes 2j*k|3 et de» lignes 23e' s C Mode B et 23f* s Marche Mode E) ou sélect-surs d'entrée TaEe 401-10-6. Lss signaux d'entrée sont multiplets dans les unités de 30 commande 1/0 par 1* intermédiaire des mélangeurs récepteurs I/o 401-10-2 et des mélangeurs de donnés?, 4ci-"t0-4j) puis dans le tampon à deux caractères 401-1-10 eu 401-2-10 BAD ORIGINAL ' 69 18492 2010550 septième et huitième caractères dans le tampon à deux caractères se trouve simultanément effectué. A ce moment, le registre d'information est disponible pour le transfert du mot suivant à partir du registre tampon 401-12-18, même si les septième et hui-5 tième caractères n'ont pas encore été transférés au dispositif périphérique. Chaque unité I/O est susceptible de fournir un recouvrement opérationnel entre 11 information en cours de transfert et l'information en cours d'utilisation. Ce tampon à deux caractères est également opéra-10 tionnel au cors d'une séquence d'entrée. Dans ce mode, il opère de façon à accepter en série les deux premiers caractères du mot suivant en cours de transfert à partir du dispositif périphérique au cours de la période de temps où le mot précédemment assemblé dans le registre d'information se trouve décalé à tra-15 vers le registre tampon et le tampon de communication et-dans la mémoire centrale. Au cours de cette période de temps, l'unité i/o remplit simultanément deux fonctions pour fournir le recouvrement opérationnel. Les parties d'interface de dispositif d'entrée 20 23a' et d'interface de dispositif de sortie 23^; représentées à la partie inférieure de la figure 23 comportent chacune un câble d'interconnexion présentant 224 lignes, appelées "données" et portant les références 23j£T. et 23h'. Cette connexion est constituée de 32 groupes de 7 lignes chacun fournissant le caractère 25 à 6 bits et le bit de parité. Chaque groupe de 7 lignes forme avec un groupe de 5 lignes de commande un câble séparé. Les signaux sur ces lignes se rapportent aux tois types de base de dispositifs périphériques, à savoir dispositifs périphériques simples d'entrée, dispositifs périphériques simples de sortie 30 et dispositifs périphériques complexes. , Un dispositif -simple d'entrée fournit les dix •signaux de sortie suivants. Bien qu'ils soient appelés "signaux •de sortie du -dispositif", ce sont des signaux d'entrée pour l'unité I/O de la figure 23. Les signaux étaient précédemment 35 indiquésjdu point de vue directionnel en référence à un Module de Commande 1/0. Dans la description suivante du dispositif périphérique individuel, les signaux sont indiqués du point de vue directionnel en référence au dispositif lui-même. bad original * 69 18492 64 2010550 1. Unité Disponible (UA) Un signal de niveau élevé, "l" binaire , sur cette ligne indique que le dispositif est capable de transférer une information et n'esb pas connecté à une unité I/O quelle qu'elle soit 5 Le dispositif transmet un niveau de tension faible, ici appelé "O" binaire, chaque fois qu'il ne peut pas transférer des données ou dans les 1,0 microseconde après que l'unité I/O ait tenté d'engager une opération avec les lignes de lecture de départ/arrêt (RSS) ou de lecture de requête de caractère (RCR) émanant des 10 entraîneurs mélangeurs d'entrée 401-10-8. 2. Impulsion de Caractère (CS) L'apparition d'un sigial de niveau "l" provenant d'un dispositif périphérique simple d'entrée constitue un ordre pour une unité I/O d'interroger les lignes de données pour un 15 caractère de données. Ce signal CS entre dans l'unité I/O à travers le Mélangeur/Receveur LRX 401-1-32. L'impulsion de caractère ne précède pas les entrées de données vers l'unité 1/0. Le dispositif d'entrée engendre un signal d'impulsion de caractère aussi rapidement que possible après avoir reçu un signal de niveau "l" 20 sur la ligne de signal lecture de départ/arrêt. Le dispositif engendre ensuite un signal d'impulsion de caractère aussi rapidement que possible après avoir reçu un niveau "l" sur la ligne de requête de caractère. Le signal d'impulsion de caractère est maintenu au niveau "l" pendant un minimum de 0,31 microseconde 25 pour l'unité I/O. Lorsqu'il se trouve au niveau inférieur "0n, ce signal est maintenu pendant un minimum de 0,31 microseconde pour l'unité 1/0. Le taux de répétition maximal du signal d'impulsion de caractère est de 1,0 mégaimpulsion par seconde. 3• Données (7 lignes au total. 6 de données, une de parité). Le dispositif d'entrée engendre sept signaux de sortie de données, six de ceux-ci représentant le caractère et le septième étant engendré pour rendre la parité d'ensemble impaire. Des signaux de. données existent au départ du niveau "l" binaire 35 du signal d'impulsion de caractère. Ils demeurent ensuite pendant un minimum de 0,60 microseconde pour l'unité 1/0 de priorité supérieure ét pendant un minimum de 0,85 microseconde pour l'autre unité I/O de la même armoire de modïLe. De^éignaux de données peuvent être transmis à n'importe quel moment après la transition BAD origine ■ 69 18492 65 2010550 du signal de lecture de départ/arrêt du niveau "O" au niveau "l" et par suite à la réception d'un signal de requête de caractère à l'intérieur de la limitation de délai spécifiée pour le signal d'impulsion de caractère. Les lignes de données sont numérotées 5 de 1 à 7, la 1 portant le bit de données le plus significatif et la 7 1® bit de parité. 4. Etat Le signal d'état est identique du point de vue fonctionnel au signal d'impulsion de caractère. La présence de 10 l'un ou l'autre de ces signaux'd'état ou d'impulsion de caractère indique que des niveaux de signal valables existent sur les lignes de données. Les spécifications de délais données pour le signal d'impulsion de caractère s'appliquent également au signal d'impulsion d'état. Lorsque le signal d'état est au niveau "l", 15 les lignes de données qui alimentent l'unité I/O en informations à partir d'un dispositif simple d'entrée contiennent un code d'état spécial qui indique l'apparition d'un événement significatif. Les niveaux de signal d'état existent sur les lignes de données au départ du niveau nl* sur la ligne d'état. Ils y res-20 tent pendant un minimum de 1,10 microseconde pour l'une ou l'autre unités I/O. Les délais pour les niveaux de signal d'état supposent que des dispositifs périphériques n'élèvent pas simultanément leurs signaux d'impulsion de caractère et d'impulsion d'état. Les signaux sont considérés âtre simultanés lorsque les 25 fronts des deux impulsions ne présentent pas de séparation supérieure a 0,31 microseconde. Les codes d'état suivants sont utilisés par les dispositifs périphériques de l'ordinateur. Ces codes apparaissent sur les 7 lignes de données *1 à *7 présentées et définies ci-30 dessus. CODES D'ETAT Signaux sur les Lignes de Données 123-^56-7 X00-000-X Ce code d'état est utilisé par un dispositif simple d'entrée qui détecte un niveau "l" sur sa 35 ligne de requête de caractère pour déterminer si o le dispositif va exécuter une opération de lecture ou une opération de commande. Pour une opération de lecture, l'unité I/O répondra dans les 69 18492 66 2010550 2,0 microsecondes (comprend ^ 91,4 m. de fil) par un niveau nl,s sur la ligne de début de lecture et elle mettra à un le champ de code d'ordre du descriptif, bits 46-48 à 101. Si le dispositif 5 simple ..d'entrée ne reçoit pas un niveau "l" sur la ligne de début de lecture dans les 2,0 microsecondes, il. enverra un état d'achèvement à l'unité I/O et exécutera l'opération de commande spécifiée . 10 X00-000-X Ce code d'état est utilisé par un dispositif d'entrée transférant des données pour provoquer la mémorisation par l'unité I/O d'un mot partiel d'au moins un, mais pas plus de sept caractères. Les positions de caractère les plus significa-15 tives du mot partiel contiendront des caractères de suppression (tous un). Si l'unité I/O est en train de traiter* mais n'a pas fini le dernier mot, la réception de c© signal d'état provoquera la mémorisation du mot partiel par l'unité I/O 20 et terminera alors avec la fin de l'état de mot (0011) dans le registre «i'état. X0I-000-X Ce code d'état est utilisé par les dispositifs d'entrée pour supprimer un mot partiel envoyé à l'i/O. Lorsque l'uiité I/O détecte cette condi-25 tion d'état, elle place des caractères de sup pression dans ses tampons de données et remet à zéro son compteur de caractères. 010-000-X Ce code d'état amène Ieunité 1/0 à compter les champs de mots et diadresses du descriptif dans 30 l'ordre inverse. XOO-OOl-X Ce code d'état est utiliS'J par un dispositif lisant par. enregistreEsnt- pour interroger le champ de Compte de Registres dans l'unité I/O. A la réception de ce signal de code d'état, si le 35 registre d8 information' contient un mot partiel, l'unité 1/0 mémorisera eoamae décrit ci-dessus ce mot d^au moins un, m®.Z& pas plus de sept caractères» remettra à zér-u le compteur de caractères et provoques'a un décrément dans le compteur de bad original 69 18492 67 2010550 registres. Si l'unité I/O était en train de traiter le dernier mot ou si l'état a amené le compteur de registres à aller à zéro, l'unité I/O terminera l'opération avec la fin de l'état de 5 registre (1001) dans le champ d'état. XOO-X1X-X Ces codes d'état sont utilisés par le dispositif VAA "I YY V" " pour indiquer une condition d'erreur ou de fin d'opération et on les appelle "conditions d'état d'achèvement". L'interprétation du code est uni-10 que pour chaque dispositif. Dans tous les cas, l'unité I/O transférera à la mémoire avec des caractères de suppression de tête tous les mots partiels du contenu de son registre d'information et elle terminera l'opération avec un code 15 provenant des lignes des données de dispositif 4, 5 et 6 placées dans le champ d'état du descriptif de résultat, bits 201 37 et 38. Le dispositif simple d'entrée accepte comme signal d'entrée les deux signaux de sortie suivants provenant de l'en-20 traîneur/mélangeur d'entrée 401-10-8 . Les deux lignes portant ces signaux sont également identifiées par une abréviation de leur nom. 1. Début/Arrêt de Lecture (RSS). La transition du signal du niveau "0" au niveau 25 "l" sur cette ligne indique que le dispositif d'entrée a été connecté à une unité I/O et que l'unité I/O est prête à accepter le premier caractère. La transition au niveau "l" ne surviendra au début de l'opération que si le dispositif est en train de transmettre un niveau "l" sur sa ligne 30 d'unité disponible (UA). Si la ligne de requête de caractère de lecture (RCR) précède la ligne RSS, la transition au niveau "l" sur le début de lecture surviendra dans les 2,0 microsecondes en réponse au signal de code d'état X00-000-X. Cette transition du signal du niveau "l" au niveau 35 "0" indique que le dispositif d'entrée a été déconnecté de l'unité I/O. Cette transition surviendra toutes les fois . qu'un code d'état est inséré dans le champ d'état. 2. Requête de Caractère de Lecture (RCR). Cette transition du signal au niveau "l" avant la 69 18492 -68 2010550 ligne RSS indique que le dispositif devrait interroger l'unité I/O avec le signal de code d'état XOO-OOX pour déterminer si l'opération d'entrée requise est une opération de lecture ou une opération de commande. Si l'opération 5 requise est une opération de lecture, l'unité I/O placera un niveau "l" sur la ligne de début/arrêt de lecture dans les 2,0 microsecondes. Un transfert de données aura alors lieu. Si l'unité I/O ne transmet pas un niveau "l" sur la ligne de début/arrêt de lecture dans les 2,0 microsecondes, une opé-10 ration de commande sera exécutée. Le dispositif doit alors transmettre un code d'état d'achèvement pour accuser réception de l'instruction. Cet accomplissement épuise les possibilités de codage binaire simple des deux lignes portant l'information de l'unité I/O au dispositif d'entrée pour des 15 variations d'instruction de dispositif. Si le niveau du signal sur la ligne de début de lecture est déjà au niveau "l" binaire lorsque le niveau de la ligne de requête de. caractère y est décalé, ceci indique qufune unité I/O a reçu avec succès un. caractère et est prête 20 à accepter le caractère suivant. Si le transfert de données tel que spécifié par le compte de mots du descrljtif d'ordre est complété par la transmission d'un caractère, l'unité I/O accusera réception de la transmission avec succès du caractère avec un niveau "l" sur la ligne de requête de caractère, 25 mais elle ne terminera l'opération que lorsque le signal de requête de caractère de lecture aura été maintenu pour l'unité I/O pendant un|ninimum de 0,25 microseconde. La réponse normale du signal de requête de caractère surviendra au dispositif d'entrée pour des dispositifs connectés à l'unité 30 l/C de priorité supérieure du module de commande I/O avec moins de 15.» 2 m de câble dans les 0,5 À 0,7 microseconde après la transition n0" .à "l" de la ligne d'impulsion de caractère pour le dispositif d'entrée. Pour les dispositifs connectés à l'unité I/O de priorité inférieure restant avec 35 moins de 15j2 m de câble, la réponse normale du signal de requête de caractère surviendra au dispositif d'entrée dans les 0,5 à 1,25 microseconde après la transition "0" à "l" de la ligne d'impulsion de caractère au dispositif d'entrée. L'unité I/O maintient un niveau "l" sur la ligne de requête 40 de caractère jusqu'à la transitionau niveau "0" sur la ligne bad original * 8492 69 2010550 d'impulsion de caractère. La réponse de l'unité i/o à l'impulsion de caractère avec une transition ,!0" à "l" de la requête de caractère à partir de l'unité I/O est un délai indéfini; le dispositif est par conséquent préparé à attendre cette réponse. Le dispositif d'entrée utilise le signal de requête de caractère comme une indication du fait que l'unité I/O a accepté le caractère et qu'il faut transmettre le signal d'impulsion de caractère suivant. La transition du signal de la ligne de requête de caractère au niveau "lM survient en réponse à un signal d'état de non-achèvement. Ce signal survient lorsque la ligne de requête de caractère est au niveau "o". La réponse normale de la ligne de requête de caractère à un état de non-achèvement survient au dispositif d'entrée pour des dispositifs connectés à l'une ou à l'autre unité I/O avec moins de 15,2 m de câble. Elle survient au dispositif d'entrée dans les 0,5 à 1,25 microseconde après la transition "On à Bl" de la ligne d'impulsion de caractère. Les 32 câbles interconnectant les dispositifs périphériques de sortie avec la partie d'interface de sortie de chacun des Modules de Commande I/O sont constitués de la métoe pluralité de lignes capables de porter des signaux identiques entre eux. La description qui suit concerne chacun de ces signaux et leur relation avec un dispositif périphérique de sortie. Pour que. l'unité I/O démarre un dispositif périphérique de sortie, un niveau "l" doit être présent sur la ligne d'unité disponible provenant du dispositif. Le module I/O commence l'opération en transmettant un caractère d'instruction au dispositif terminal sur les 7 lignes de données qui vont à ce dispositif. En même temps, il requiert de la mémoire un mot. Le dispositif périphérique de sortie répond à la transmission du caractère d'instruction en changeant de "l" à nO" le signal binaire sur sa ligne d'unité disponible. Lorsque l'unité I/O reçoit de la mémoire son second mot de données, elle va le signaler au dispositif de sortie avec un niveau "l" sur la ligne de début/arrêt d'écriture. Le module I/O continuera à transférer le caractère d'instruction sur les lignes de bits de données jusqu'à la bad origine 70 69 18492- 2010550 réception d'un niveau "i,; sur la ligne de requête de caractère à partir du dispositif. Dès qu'un signal de requête de caractère est reçu, l'unité I/O place un caractère de données sur les lignes de données et signale le transfert au disposi-5 tif de sortie sur la ligne d'impulsion de caractère. Le mo dule I/O continue à répondre à chaque requête de caractère provenant du dispositif de sortie jusqu'à ce que les entraîneurs/mélangeurs binaires 401-10-1 aillent au niveau n0w. Le dispositif simple de sortie fournit aux unités 10 1/0 les trois signaux d'entrée suivants. Il faut noter cependant que, pour le dispositif périphérique, ee sont des signaux de sorti e. 1. Unité Disponible - Un niveau wl33 sur la ligne d'unité dispo nible provenant du dispositif simple de sortie signifie à 15 l'unité I/O que le dispositif «st capable d9 accepter une information et n'est pas connectée à une autre unité I/O. Un dispositif transmettant un niveau !50'; sur la ligne d*unité disponible soit est connecté à une autre unité 1/0, soit nsest- pas prêt pour un transfert de données, Après que l'unie 20 iê i/o ait tenté de s^éonnecter au dispositif périphérique en transmettant le caractère d3instruction, le signal d'unité disponible tombera à un niveau i!0SJ dans las 1,0 microseconde. Le signal afunité disponible restera au niveau "0W Jusqu'à ce que l'unité 1/0 transmette un nivoau "0" sur la ligne de 25 début/arr^t d'écriture et que le dispositif périphérique soit prêt à accepter 1!informat ion. 2. Requête de Caractère - La transition au niveau "l* sur la ligne ûq requête de caractère se produit chaque fois que la ligne de début d?écriture provenant des unités ï/0 est au 30 niveau wl* et que le dispositif est yvêt à recevoir de l'uni té ï/0 un caractère à 6 bits. La liga«i de requête de caractère restera au niveau wl" vers l'unité 1/0 pendant une durée miniaiusï de 0,31 microseconde, & réception d'un signal sur la llgns de requête de caractère, la module I/O répondra 35 par un signal sur sa ligne d1impulsion de caractère et avec des données régulières -sur ses ii^ios de données. Le niveau "0" de la ligne de requête. de cara-r- cère sera maintenu vers l'unité 1/0 pour un minimum -ds 0s3i microseconde. Le taux de répétition aaximal du. signal a-a requête d® caractère est 40 de IjO raégaispulsion par seconde» bad ORIGINAL 69 18492 71 2010550 3. Etat - Un niveau "l" de signal binaire sur la ligne d'état indique soit qu'une erreur de parité a été trouvée sur un caractère reçu de l'unité I/O, soit que le dispositif a expérimenté une sorte quelconque de mauvais fonctionnement. 5 Ce niveau "l" de signal binaire sur la ligne d'état est maintenu vers- les modules I/O pour un minimum de 0,31 microseconde. Le code d'ordre de 000-010 estjalimenté dans le registre d'état et le module i/Ô termine l'opération et transmet un niveau "0" de signal binaire sur la ligne de début/ 10 arrêt d'écriture. L'existence d'un niveau "o" binaire sur la ligne d'état indique que l'opération se déroule normalement. L'unité I/O fournit à un dispositif périphérique simple de sdrtie les signaux d'entrée suivants. Bien qu'ils soient appelés "signaux d'entrée" pour le dispositif périphérique, 15 ce sont des signaux de sortie provenant de l'ordinateur. 1. Début/arrêt d'écriture - Un niveau "l" binaire sur la ligne de début/arrêt d'écriture est envoyé au dispositif simple de sortie après que le Module I/O ait été connecté au dispositif par l'intermédiaire du caractère d'instruction et que l'unité 1/0 ait reçu de la mémoire le premier mot à transférer au dispositif. Là réception d'un niveau "l" binaire sur la ligne de début/arrêt d'écriture amène le dispositif à commencer d'envoyer des signaux de requête de caractère à l'urrité 1/0. Un niveau "l" binaire restera sur la ligne de début/ arrêt d'écriture jusqu'à ce qu'une condition d'état d'achèvement arrive dans l'unité i/o ou soit reçue à partir du dispositif terminal. L'apparition d'un code d'état dans le champ d'état du descriptif amènera l'unité I/O à se déconnecter du dispositif périphérique en transmettant un niveau "0" binaire sur la ligne de début/arrêt d'écriture. tpulsion de caractère - L'unité 1/0 place un "l" sur la ligne d'impulsion de caractère pour un minimum de 0,25 microseconde vers l'unité 1/0 en réponse à un signal de niveau "l" binaire sur la ligne de requête de caractère provenant du dispositif. 35 Avec cette transition du signal de la ligne d'impulsion de caractère, un caractère de données valable existe sur les six lignes de données arrivant à l'unité 1/0. Pour les dispositifs connectés au module I/O avec moins de 15,2--m de câble, cette réponse arrive normalement au dispositif de 20 25 30 O Tm 69 18492 72 201Q 5 5 0 sortie entre 0,4l et 1,00 microseconde après le moment où le signal de requête de caractère est allé à un niveau nl" binaire. Le dispositif périphérique est préparé à attendre indéfiniment une réponse à l'impulsion de caractère. Après 5 son arrivée, le signal d'impulsion de caractère restera au niveau "l" binaire jusqu'à ce que le signal sur la ligne de requête de caractère aille au niveau "o" binaire. Le dispositif périphérique transmettra alors son signal de requête de caractère suivant et la séquence ci-dessus se répétera. 10 Une communication entre le dispositif périphérique de sortie et l'unité I/O sur les lignes de requête de caractère et d'impulsion de caractère ne se produit que lorsque la ligne de début/arrêt d'écriture est au niveau "l" binaire. 3. Données - L'unité I/O opératrice transmet un caractère de 15 données à 7 bits au dispositif périphérique de sortie 60 nano secondes avant que le signal sur la ligne d'impulsion de caractèi'e pour l'écriture aille à un niveau "l" binaire. Le caractère de données à 6 bits reste valable pendant un minimum de 1,00 microseconde. La longueur de temps dépend de la 20 vitesse de transfert des signaux de requête de caractère à partir du dispositif périphérique de sortie. Le caractère de données est transmis sur des lignes numérotées de 1 à 6, le signal sur la ligne 1 étant le bit le plus significatif. Le bit sur la ligne 7 est généré de telle façon que la parité 25 totale soit impaire. Pendant au moins 1,5 microseconde avant . la transition du signal d'un niveau ,f0n binaire à un "l" binaire sur la ligne de début/arrêt d'écriture, les lignes de données sont utilisées pour transférer des bits spécifiques du descriptif d'ordre au dispositif périphérique en 30 tant'que caractère d'instruction. Le dispositif périphérique utilise cette instruction à 3 bits pour modifier ses opérations. Le champ de Code d'Ordre, bits 46-48 du descriptif, est transmis sur des lignes de données 4, 5 et 6 avec la parité sur le bit 7. La transmission de cette instruction 35 est maintenue après la transition du signal au niveau "l" binaire sur la ligne de début/arrêt d'écriture jusqu'à ce que l'unité X/0 reçoive un niveau "l" sur la ligne de requête de caractère à écrire provenant du dispositif. Un dispositif périphérique complexe est mis en 40 marche et fait fonctionner de la manière suivante î saetob1ginal 69 1*8492 73 2 01,0.550 Tout d'abord l'unité I/O tentera de démarrer seulement les dispositifs complexes dont la ligne- d'unité disponible présente un signal binaire au niveau "l". Ensuite, l'unité I/O essaiera de se connecter au dispositif en transmettant un carac-5 tère d'instruction sur les lignes de données se dirigeant vers le dispositif périphérique complexe d'une manière décrite pour un dispositif simple d'entrée. Pour un dispositif d'entrée complexe, le bit 3 du dispositif de sortie ira à "l" et tous les autres iront à n0" et ils resteront ainsi jusqu'à achèvement sur toute 10 impulsion d'état qui est présente lorsque le compte d'enregistrement = 1. Le dispositif répondra à la tracsaission du caractère d'instruction èn abaissant le signal sur sa ligne d5unité disponible . Après que le dispositif périphérique complexe ait 15 reçu de l'unité i/o l'instruction, lsune des trois opérations suivantes peut avoir lieu. Ce sont l 1. Une opération d'entrée complexe requérant seulement un caractère dTinstruction. 2. Une opération d'entrée complexe requérant plus d'un 20 caractère d1instruction. 3. Une opération de sortie complexe. Un exemple d'un dispositif périphérique complexe est un dispositif connu sous le nom commercial de "Plexowriter". C'est également un exemple d'un dispositif dont l'opération 25 d'entrée ne requiert qu'un caractère d'instruction. Dans les 0,60 microseconde après que le caractère d'instruction ait été placé sur les lignes de données à destination du dispositif, l'unité 1/0 transmet un niveau "l" de signal binaire sur la ligne de début/arrêt de lecture. Le caractère d'instruction contenu 30 dans le descriptif d'ordre reste sur les lignes de données pendant la durée de l'opération ou jusqu'à ee que le compte d'enregistrement = 1, moment auquel le bit 3 va à nl" et tous leqâutres vont • à "0". Le transfert des données se déroule de là manière décrite pour un dispositif périphérique simple d'entrée, à l'exception 35 que, sur le dernier caractère du dernier mot tel qu'il est déterminé par le compteur de caractères et le champ de compte de mots du descriptif d'ordre, le module i/o indique au dispositif qu'il a accepté ce dernier caractère. Il le fait en transmettant un niveau "lw de signal binaire à la fois sur ses lignes de requête 40 de caractère à lire et d'impulsion de caractère à écrire. Il bad origjna^' 18492 74 2010550 maintient un niveau "lra de signal binaire sur sa ligne de début/ arrêt jusqu!à ce que le dispositif" soie renvoie un niveau !,0W de signal binaire sur la ligne d'impulsion de caractère à lire pour ce dernier caractère, soit alimente une condition dfétat 5 d'achèvement dans le champ da Un ruban magnétique est un exemple d'un dispositif périphérique complexe dont l'opération d'entrée requiert plus d'un caractère d'instruction. L'opération de ce dispositif est engagée et se déroule de la mime façon que 1:opération de sortie simple» 1C Lorsque le dispositif a obtenu le nombre requis de caractères d3instruction, il envoie à lsunité i/o un signal d'état 100-000-X» Lfunité 1/0 répond à ce signal d3état en transmettant un niveau K0'3 de signal binaire sur la ligne de début/arrêt d'écriture et un niveau-nl" de signal binaire sur la ligne de début/arrêt de 15 lecture et en plaçant le caractère d''instruction contenu dans le descriptif sur les 7 lignes de données. Lorsque le dispositif reconnaît le niveau "l" binaire sur la ligne de début/arrêt de lecture, l'opération se déroule ainsi qu8il a été décrit pour un dispositif d'entrée complexe. 20 La troisième opération Eantionnêe dans la liste ci-dessus a lieu lorsqu'un dispositif périphérique complexe est démarré comme un dispositif de sortie simple. Cette opération peut se dérouler de deux façons différentes suivant que le bit 46 du mot descriptif à 48 bits est un binaire ou un "o" binaire.Si 25 le bit 46 du mot descriptif d5ordre est ai.. "Jô"j binaire, le transfert des données se déroule coasse pour un dispositif de sortie simple sauf" pour le dernier caractère du damier mot de données à transf érer c Celui-ci est déte-riainé par les champs de compte de mots et de caractères du mot descriptif" d'ordre, l'unité ï/0 in-30 diquera au dispositif périphérique oat en train de trans mettre ce dernier caractère en plaçant or: niveau "l* de signal binaire à la fois sur les lignes cl3 ia-pu.: a.;.on de caractère a écrire et de requête de caractère à liiv, Le Module ï/0 maintient un niveau. "l" de signal binaire sur la de débat/arrêt 35 d'écriture jusqu'à se que.le dispositif périphérique transmette un niveau !;0'" VXfc -S i, Kl'l&lX binaire sur ligne de requête de caractère à écrire pour ït, dernier câraotèî\-; ou jusqu'à ce qu'une condition d5état. d:;. achèvement soit aiisieïitéBdans le champ d'état du descriptif». SI - le bit. 46 du descriptif d'ordre est un "'lM, le bad original, 69 18492 75 2010550 transfert des données se déroule en général comme un dispositif de sortie simple. Lorsque le dernier caractère du mot est transmis et que les 8 bits les moins significatif du champ de compte de mots du mot descriptif sont des zéros, le processus est légère-5 ment différent. Lorsque l'unité i/o transfère ce dernier caractère elle le signale au dispositif périphérique complexe en transmettant un niveau "l" à la fois sur les lignes d'impulsion de caractère à écrire et de requête de caractère à lire. Le dispositif périphérique peut déterminer si cette réception simultanée de 10 niveaux "l" de signal binaire indique que l'unité I/O est en train de transférer le dernier caractère du mot en retournant un signal d'état 000-000-X à l'unité I/O. Si l'unité I/O n'est pas en train de traiter le dernier mot (c'est-à-dire si le compte de mots n'est pas égal à zéro), la requête de caractère à lire 15 restera au niveau "l" binaire. Lorsque ceci se produit, le dispositif périphérique termine l'opération soit en plaçant un niveau "0" sur la ligne de requête de caractère à écrire, soit en transmettant un code d'état d'achèvement à l'unité I/O. Les trois signaux de sortie suivants provenant du 20 dispositif périphérique complexe sont fournis au module I/O comme signaux d'entrée. Ce sont î 1. Unité Disponible -Un niveau "l" de signal binaire sur la ligne d'unité disponible provenant du dispositif périphérique complexe signifie qu'il est prêt à l'dilisation et qu'il n'est pas présentement connecté à une autre unité I/O. Si le dispositif périphérique fournit un niveau de signal "o" binaire sur la ligne d'unité disponible, soit il est connecté à une autre unité I/O, soit il n'est pas prêt pour un transfert de données. Lorsque l'unité I/O tente de se connecter au dispositif périphérique en transmettant le caractère d'instruction, le niveau "l" de signal binaire sur la ligne d'unité disponible tombera à un niveau "0" binaire dans les 1,0 microseconde. Après cela, le signal d'unité disponible restera au niveau "0" binaire jusqu'à ce que l'unité I/O transmette un signal binaire "0" sur la ligne de début/arrêt d'écriture ou de début/arrêt de lecture. 2. Requête de Caractère à Ecrire/impulsion de Caractère à Lire (WCR/RCS) - Sur un dispositif d'entrée complexe, la ligne portant ce signal remplit la même fonction que la ligne qui 25 30 35 bad original ■« 18492 76 2010550 porte le signal d'impulsion de caractère pour le dispositif d'entrée simple. Pour un dispositif de sortie complexe, cette ligne fonctionne de la même façon que la ligne qui porte habituellement la ligne de requête de caractère pour 5 un dispositif de sortie simple. Chaque fois qu'un dispositif complexe détecte un niveau "l" de signal binaire à la fois sur la ligne d'impulsion de caractère à écrire et la ligne de requête de caractère à lire provenant du Module I/O, le dispositif doit être 10 préparé à maintenir un niveau "l" de signal binaire sur la ligne WCR/RCS jusqu'à ce qu'il ait complété sa communication avec l'unité I/O. Si le dispositif n'a pas envoyé un état d'achèvement tandis qu'il maintient le WCR/RCS au niveau "lrt, l'unité I/O à la réception d'un niveau "O" sur la ligne WCR/ 15 RCS continuera à traiter des mots aussi longtemps que le comp te de mots n'est pas à zéro. Il terminera lorsque le compte de mots atteint zéro. 3. Ligne d'état - La description et l'utilisation du signal d'état pour un dispositif d'entrée simple s'applique également 20 au dispositif complexe. Pour un dispositif complexe connecté pour une opération d'entrée, pratiquement tous les codes d'état précédemment définis pour une opération d'entrée simple s'appliquent également à l'opération d'entrée complexe. 25 Lorsqu'un dispositif complexe est connecté pour une opération de sortie, les codes d'état sont transmis à l'unité i/o sur les lignes de données et leurs significations sont les suivantes î CODES D'ETAT DES DISPOSITIFS COMPLEXES 30 POUR UNE OPERATION DE SORTIE Signaux sur les Lignes de Données 123-456-7 000-000-X Ce code d'état est utilisé par les dispositifs périphériques complexes dont le descriptif d'or- 35 dre présente un "l" de. signal binaire dans le bit 46 pour faire la différence entre la fin de l'opération.et la fin d'un enregistrement. Lorsque le dispositif détecte simultanément la présence d'un niveau "l" à la fois sur les lignes d'impul-40 sion de caractère à écrire efc de requête de bad original* 77 201(5550 caractère à lire, il maintiendra le niveau "l" sur la ligne de requête de caractère à écrire et pendant ce temps signalera à-l,unité I/O, sur la ligne d'état avec le code OOO-OOO-X sur les lignes de données, de déterminer si les signaux concurrents signifient fin d'opération ou fin d'enregistrement. Si la ligne de requête de caractère à lire va au niveau "0" dans les 2,0 microsecondes et y reste jusqu'à ce que sur la ligne d'état il y ait un signal "0"* binaire de façon correspondante, le dispositif périphérique se prépare alors pour accepter un autre enregistrement. Si la ligne de requête de caractère à lire reste au niveau "l" plutôt que d'aller au niveau "0", le dispositif périphérique se prépare à terminer l'opération. Lorsque ceci se produit, le module I/O se déconnectera du dispositif dans les 1,0 microseconde après que le signal sur la ligne de requête de caractère à écrire se soit commuté au niveau "0" binaire. Ce code est utilisé pour rejeter le contenu présent des tampons de données de lrunité I/O et pour requérir l'accès à l'emplacement de mémoire suivant. Le contenu de ce nouvel emplacement de mémoire est alorçàlimenté dans les tampons de données, le compte de caractères retourné à "O" et le transfert de sortie repris. Ce code est utilisé par le dispositif périphérique complexe pour compter le champ du compteur de mots et du compteur d'adresses du descriptif dansjl'ordre inverse. Ce code est illégal. Ce code d'état est utilisé pour amener le Module I/O à se connecter au dispositif complexe pour une opération de sortie. La réception de ce signal de code d'état amène l'unité I/O à placer un niveau de signal "0" binaire sur la ligne de début/arrêt d'écriture et un niveau "l" binaire sur la ligne de"début/arrêt de lecture à destination du dispositif et ensuite à procéder comme bad original* 9 1049 2 78 2010550 un dispositif d'entrée* Ce code provoque lsenvoi- d'un état 0001 dans 13-16 du champ d'état» Il indique que l'organe de commande était disponible, mais que le dispositif désiré ne l'était pas. Ce code n'est pas utilisé» . Ces codes d'état sont utilisés par le dispositif pour indiquer une erreur ou une fin de condition d'opération et ce sont des conditions d'état d'achèvement pour l'opération de sortie complexe. Dans tous les cas. l'unité I/O terminera l'opération avec le code provenant des lignes de données 4a 5 et 6 placées dans le champ d'état du descriptif de résultat, bits 20s 37 et 38. Les caractères restants dans les tampons de données de l'unité I/O lorsque ce code d'état survient ne sont pas transmis au dispositif,, L1 interprétation des codes d'état est unique pour chaque dispositif. 4. Données - La deseription et l'utilisation des lignes de don-20 nées vers l'i/O pour un dispositif d'entrée simple s'applique au dispodtif complexe lorsqu'il est connecté à l'unité I/O pour une opération d'entrée, Le dispositif complexe ainsi connecté pour une opération de sortie n'utilise les lignes de données que pour transmettre des conditions d'état à 25 l'unité I/O. Un dispositif périphérique complexe reçoit le groupe suivant de cinq signaux comme signaux de sortie provenant de l'ordinateur. 1. Début/Arrêt d'Ecriture - L'unité i/o place un "l" sur la 3C ligne de début/arrêt d'écriture à destination du dispositif périphérique, que l'opération à effectuer soit une opération de sortie complexe ou une opération d'entrée complexe qui requiert d'autres caractères d*instruction» Cette dernière opération se produit chaque" fois que le Module i/o est eonnsc-35 té au dispositif par la transmission du caractère d'instruc tion contenu dans le descriptif et que le premier mot a été reçu à partir de la mémoire, La ligne de début/arrêt d'écriture est au niveau "l" durant tous les transferts de données et y reste jusqu'à ce qu'un signal d'état d'achèvement ou un ÏXI-000-X XXX-XXI-X XXX-X1X-X XXX-1XX-X 10 15 bad original' 69 1.8492 79 2010550 signal d'état de conversion en opération d'entrée soit envoyé par le dispositif périphérique complexe ou jusqu'à ce que survienne dans l'unité I/O une condition qui change l'état de l'unité. L'apparition d'un signal d'achèvement, 5 d'un signal de conversion ou d'un signal de condition d'état amènera l'unité I/O à transmettre un niveau "O" sur la ligne de début/arrêt d'écriture. 2. Début/Arrêt de Lecture - Une transition de signal sur cette ligne du niveau "O" binaire au "l" binaire notifie au dis-10 positif périphérique qdil a été connecté à l'unité I/O en tant que dispositif d'entrée complexe et que l'unité I/O est prête à accepter le premier caractère de données. Cette transition du signal vers le niveau "l" se produit dans les 0,60 microseconde à partir du moment où le caractère d'ins-15 truction a été placé sur les lignes de données, pourvu que la ligne d'unité disponible provenant du dispositif soit au niveau "l", ou en réponse au code d'état 100-000-X provenant d'un dispositif complexe qui est connecté à l'unité I/O en tant que dispositif de sortie. La transition du signal du 20 niveau "l" au "0" indique que le dispositif complexe a été déconnecté de l'unité I/O. La transition vers le niveau n0" est provoquée par une condition d'état générée à l'intérieur du I/O ou par un état d'achèvement transmis à partir du dispositif à 1'i/o. 25 3* Impulsion de Caractère à Ecrire - L'utilisation et la description de l'impulsion de caractère à écrire pour un dispositif de sortie simple s'appliquent au dispositif complexe qui est connecté à l'unité I/O pour une opération de sortie ou pour une opération d'entrée qui requiert d'autres caractères 30 d'instruction. Outre la fonction décrite pour le dispositif de sortie simple, lorsque l'unité I/O est connectée à un dispositif complexe de la manière décrite ci-dessus, l'impulsion de caractère à écrire indique une réponse avec succès de la part de l'unité I/O à un état de commande ou de non-35 achèvement/^u°^ispositif complexe. La spécification de délai pour la réponse de la requête de caractère à lire à un signal d'état pour l'opération d'entrée simple s'applique également à la réponse de l'impulsion de caractère à écrire à un signal d'état. bad original* 69 18492 8o 20.10550 Lorsque le dispositif complexe est connecté en tant que dispositif d'entrée, la transition au niveau "l" sur la ligne d'impulsion de caractère à écrire signale au dispositif que l'unité i/o a accepté le dernier caractère 5 pour un transfert de données spécifié par le compteur de caractères et le champ de compte de mots du descriptif. Cette transition vers le niveau "l" arrivera à l'unité i/o dans les 20 nanosecondes de la transition vers le niveau "l" sur la requête de caractère à lire qui accuse réception 10 au dispositif de la transmission avec succès du dernier caractère. La ligne d'impulsion de caractère à écrire restera au niveau "l" jusqu'à ce que la ligne d'impulsion de caractère à lire provenant du dispositif aille au niveau "0" ou que l'opération soit terminée par une condition 15 d'état d'achèvement. 4. Requête de Caractère à Lire - L'utilisation et la description de la requête de caractère à lire pour un dispositif d'entrée simple s'appliquent au dispositif complexe qui est connecté à l'unité I/O pour une opération d'entrée. 20 Lorsque l'unité I/O et le dispositif complexe sont connectés pour une opération de sortie, la transition de la requête de caractère à lire vers le niveau "l" se produira à des moments différents suivant que le bit 46 du descriptif est ou non un un ou un zéro. Si le bit 46 du 25 descriptif est "o", cette transition se produira chaque fois que le dernier caractère du dernier mot, tel qu'il est déterminé par le compteur de caractères et le compteur de mots, es1/ên train d'être transféré au dispositif. Si le bit 46 du descriptif est "l", cette transition se produira sur 30 le dernier caractère du mot transmis chaque fois que les 8 bits les moins significatifs du champ de compte de mots du descriptif sont des zéros. Dans l'un et l'autre cas, la transition vers "le niveau "l" arrive à l'unité I/O dans les 20 nanosecondes de la transition vers le niveau "l" de la 35 ligne d'impulsion de caractère à écrire pour ce caractère. Dans l'un et l'autre cas, la ligne de requête de caractère à lire restera au niveau '^"-jusqu'à ce que l'impulsion de caractère à écrire aille au niveau "0". Si le compte de mots n'est pas à "0", la requête de caractère à lire ira au bad original 18492 niveau "0" pour la durée du niveau d'état si le dispositif transmet le code d'état 000-000-X.-5. Données - L'utilisation et la description des lignes de données pour un dispositif de sortie simple s'appliquent aux lignes 5 de données allant de l'unité I/O au dispositif complexe qui est connecté pour une opération de sortie. Lorsque le dispositif complexe est connecté pour une opération d'entrée, le caractère d'instruction du descriptif d'ordre est transmis sur les lignes de données de 10 sortie pour la durée de l'opération. Si le dispositif est connecté pour une opération de sortie ou pour une opération d'entrée qui requiert des caractères d'instruction supplémentaires, le caractère d'instruction contenu dans le descriptif est transmis sur les lignes de données de sortie 15 jusqu'à la réception de la première requête de caractère en provenance du dispositif complexe. Dans le dernier cas, une fois que lés caractères supplémentaires ont été reçus et que l'état a été envoyé à partir du dispositif complexe pour convertir l'opération 20 en une opération d'entrée, le caractère d'instruction contenu dans le descriptif est placé sur les lignes de données de sortie pour le reste de l'opération. La figure 23 représente encore un registre de mémorisation à 48 bits 401-12-42 avec des lignes 23i' en prove-25 nance des commutateurs, des récepteurs I/O LRX 23A' avec une ligne 23k' de 49 bits provenant de chaque mémoire 1 à 16, des commandes de réception de descriptif 401-12-40, des récepteurs LRX 23m' avec une ligne 23n' de sélecteur d'unité provenant des mémoires 1 à 16, des récepteurs I/O RX 23£' avec une ligne 23c[' 30 de croisements provenant des mémoires 1 à 16, un désignateur d'unité 401-12-24, une parité pour le DBAR (401-12-20) et le désignateur d'unité 23r', une ligne 23u' v«rs les commandes d'opération et les commandes de réception de descriptif, un bit de parité 23v', une ligne 23w' de parité du compteur d'adresses 35 de la mémoire (modes A et B), de parité du DBAR (401-12-20) et de parité accumulée des données (modes A et B) et un vérificateur générateur de parité à 49 bits 401-12-44 avec une ligne 23x' vers les commandes; un générateur de parité à J bits > un tampon de sortie à 7 bits 23z/,„un accumulateur et vérificateur 81 2010550• bad original, 69.18492 2010550 , de. parité, de caractère. 23as avec un© ligne 23b" vers les coamandes et le bit de parité, un compteur de caractères 23c", une commande d'opération 23dtt, une ligne 23s'" vers 1© Â0R0 entrées un côté, des lignes 23f" vers un mélangeur, un compteur d'enregistrement 5 23s" et un générateur de parité 23h"; une ligne 23i" vers des modificateurs de commande d5 opération, une sélection de paires de lignes de dispositif 401-2-30, un tampon de sortie 23^' s une ligne 23J." de début vers un mélangeur d'entrée 23k", des lignes 23m" vers un sélecteur d5entrée Jr«,Ee et 25n" vers un mélangeur 10 de sortie et enfin des lignes 23£" vers le C.B. des entrées un côté. La figure 24 comprend les figures 24A et 24b. Elle représente un schéma synoptique logique du module de mémoire utilisé dans l'ordinateur (numéro du module de mémoire 24a - 6 pour 15 les modules lôK et 4 pour les modules 65K). Il peut y avoir jusqu'à seize modules de ce genre danois configuration décrite. Chaque module comprend une mémoire à tores 101-24 (lôK ou 65K) présentant une capacité soit de 16,384 mots, soit de 65.536 mots. Chaque mot est long de 49 bits y compris un bit de parité et 20 chaque mot est séparément adressable. Cette sélection est accomplie par les moyens de sélection d3adresse ou portes de sélection d'adresse 101-24-105. Sur la partie gauche de la figure 24, un ensemble de câbles à 49 lignes et de câbles à 2 lignes entre dans le module. Chacun des câbles d'information d'entrée provient 25 respectivement de chacun des treize modules restants de l'ordinateur. Chaque câble à deux lignes, qui spécifie une requête régulière (ligne 24b), est combiné avec le contenu provenant des moyens d'adresse de module 101-24-12 à partir du 30 câble à 49 lignes et comparé avec l'adresse du module de mémoire particulier dans les moyens de Comparaison d'Adresse de Module 101-24-14, 101-24-16, 101-24-18 et 101-24-20. Si la comparaison est favorable, une requête (lignes 24c de requête pour le module considéré) provenant de la voie correspondante est envoyée 35 aux moyens de résolution de conflit des 13 voies 101-24-22 (choisit lrune des-treize)» Ces moyens de résolution de conflit choisissent une requête en donnant d'abord la priorité aux DDM, puis aux I/O et enfin aux Modules de Calcul. Une fois que l'une des treize voies a été choisie, la. matrice de sélection d'entrée 40 24d se voit notifier, quel groupe dp. 49 bits envoyer à travers elle. bad original 69 18492 83 2010550 La Sélection de Mode d'Opération 101-24-24 (commandes mères, opération de commande, commandes de délai) choisit quelle opération doit être effectuée et en notifie la mémoire à tores. L'adresse est également envoyée à cette mémoire à tores (ligne 5 24e de sélection d'adresse coté un et zéro - 28 pour les modules 16K et 32 pour les modules 65K et ligne 24f adresse reçue). Dans le cas d'une opération de lecture, les données seront lues hors de la mémoire à tores et placées sur les entraîneurs de données 101-24-26 (49 lignes de données vers tous les 13 modules 24g). 10 Une ligne de croisement sera envoyée au module auquel l'accès a été donné par les moyens de résolution de conflit (lignes de croisement 24h). Les signaux provenant des moyens de croisement 101-24-28 (sélection de croisement et croisement d'indications d'erreur vers DDM et I/O indique également une erreur lorsque 15 applicable) signifient que l'accès a été obtenu et que des données sont présentes sur les lignes. Dans le cas d'une opération d'écriture, le signal de croisement sera envoyé au module correspondant qui a gagné l'accès. Ce module change l'adresse pour les données et place 49 bits de données sur les lignes, 20 signaux qui sont envoyés à la mémoire à tores pour y être mémorisés (ligne 24i de données - valable su cours d'une opération d'écriture environ 500 ns après que le module considéré ait envoyé un signal de croisement). A l'intérieur du module de mémoire, la parité est 25 vérifiée sur tous les mots d'adresse (par un vérificateur de parité d'adresse 101-24-30 avec une ligne 24vers les commandes mères) et sur tous les mots de données (par un vérificateur de parité de données d'entrée 101-24-32) envoyés à partir de chacun des 13 modules de non-mémoire. Dans le cas du Module de Calcul, 30 la ligne d'erreur est élevée pour indiquer qu'une erreur de parité a été détectée sur l'adresse ou les données. Ces lignes d'erreur 24k sont représentées dans le coin inférieur droit de la figure 24. Les modules 1/0 et DDM sont notifiés de leur erreur par un allongement ou un raccourcissement de la durée du signal de 35 croisement. Dans le cas d'une détection d'erreur de parité d'adresse, le module de mémoire ignorera l'opération et notifiera le dispositif fautif. Si une erreur est détectée sur les données, le dispositif sera à nouveau notifié. L'information sera ajustée 40 pour une parité correcte et mémorisée. 69 18492 M 20Î0S50 , Sur la gauche de la figure 24 se trouvent des signaux d'autorisation 24m qui proviennent d'un panneau de commutation situé sur la console de représentation visuelle dfétat. Il y a pour chacun des 13 modules de non-mémoire, une ligne allant 5 à chacun des 16 modules de mémoire. Un bloc de 13 x 16 ou 208 commutateurs commande la requête dans chaque module de mémoire. Normalement le commutateur EN-LIGNE situé sur ce panneau est ouvert et toutes les requêtes sont permises dans tous les modules de mémoire. Si un module de non-mémoire particulier est trouvé 10 produire des erreurs, il peut être connecté à un module de mémoire particulier et désautorisé dans tous les autres modules de mémoire dans le but d'isoler le problème. Lorsque le problème est corrigé, le module a à nouveau la permission d'avoir accès à tous les modules de mémoire. Ces lignes sont également utilisées pour 15 séparer l'ordinateur en différents sous-ensembles dans le but d'éliminer les défauts des modules et des programmes. Les circuits de commande et de délai de mémoire des moyens de sélection de mode 101-24-24 sont prévus pour fournir le minutage nécessaire associé à la mémoire à tores. Ils 20 reçoivent des signaux à la fois de la mémoire à tores 101-24 (ligne 24n pour compléter le cycle de mémoire) et de ses moyens de sélection de mots 101-24-105 et appliquent également des signaux à l'une (lignes 24jd pour engager le cycle, 24ç[ de commande d'écriture/lecture et 24r pour modifier le bit un et la parité) 25 et aux autres. Les instructions (langage machine) du programme par syllabes engendrées par l'assembleur sont composées de files de une à sept syllabes suivant l'instruction à exécuter. La file de syllabes représentant une instruction suit la dernière syl-30 labe de lrinstruction précédente, permettant aux zones de mémoire dé programme d'être utilisées avec le maximum d'efficacité. Chaque mot de programme contient quatre syllabes; une instruction à sept syllabes, de longueur maximum, peut recouvrir jusqu'à trois mots de programme. 35 La connaissance de la programmation par syllabes est nécessaire au programmeur de l'ordinateur pour changer les programmes assemblés, lire les listes d'assemblage et analyser les transferts de mémoire. La figure 24 représente encore des sélections 40 de code d'opération 24s;, des lignes de commande (3) de lecture, bad original 69 18492 85 201 *0550 d'écriture, de descriptif 24t vers la sélection d'opération de commande et opération 24u, des lignes de lecture ou d'écriture 24v vers la sélection d'opération 24w, un registre de données d'essai 24x, un essai de registre d'adresse seulement' 24^, des 5 lignes de lecture, d'écriture ou de descriptif 24jz, une sélection d'opération de commande 24a1 avec des lignes de commande•24b' et des lignes d'autorisation de toutes les opérations 24ç', de modification du bit "un" et de correction de parité pour le calculateur spécifié 24d' et d'autorisation de lecture et d'inhibition 10 d'écriture dans les 4096 mots inférieurs 24e/, une adresse de comparaison pour déterminer si adressage de lecture seulement de mémoire 24f', le registre d'adresse à 14 bits pour lôK et à 16 bits pour 6f>K 101-24-10, une ligne 24g' en provenance du vérificateur de parité d'adresse, une ligne 24h' d'adresse valable 15 jusqu'à ce que les données apparaissent et des lignes de module de mémoire 24i', de bit de parité 24et de noyau opération 24k' avec 3 pour les DDM et IOCM et 7 pour les calculateurs. 69 18492 .-86 2010550 A.,># - . REVEHD1GAT1GNS ;• L- Ensemble modulaire de traitement de 1*infor mation comprenant plusieurs modules de mémoire, plusieurs modules de commande d'entrées/sorties connectés à ces modules de mémoire 5 de façon à fournir une communication bidirectionnelle entre chacun de ces modules de commande et chacun de ces modules de mémoire et plusieurs modules centraux de traitement connectés à ces modules de mémoire essentiellement de la même manière,chacun de ces modules de mémoire comprenant une parmi plusieurs piles 10 de mémoires de capacités de mémoire différentes et chacun de ces modules centraux de traitement comprenant des' moyens de sélection pour choisir l'une de ces piles de mémoires en vue de son utilisation dans les modules de mémoire de l'ensemble. 2.- Ensemble selon la revendication 1, dans le-15 quel les moyens de sélection sont des moyens de commutation capables d© commuter de l'un des genres de capaeité de module de mémoire à l'autre. 3.- Ensemble selon la revendication 2, dans lequel les moyens de commutation comprennent des moyens de minutage et 20 de commande pour constituer une interface compatible de plusieurs modules de mémoire centrale de vitesses opérationnelles différentes avec les modules de non-mémoire centrale restants de l'ensemble. 4. - Ensemble selon l'une des revendications 2 ou 25 3a clans lequel sont couplés aux. moyens d© commutation au moins des premiers moyens de registre avec des moyens de sélection qui leur sont connectés pour indiquer au moins une première et une seconde valeurs de bit d'adresse de mémoire de l'ensemble. 5.- Ensemble selon l'une des revendications 2, 3 30 ou 4, dans lequel sont couplés aux moyens de commutation des moyens pour fournir différents formats de r ,ot en vue de permettre à .11 ensemble d'opérer sur des formats de mot simples et multiples de différentes longueurs de mot . 6o- Ensemble selon l'une des revendications 2 à 5s 35 dans lequel les moyens de commutation comprennent des moyens de sélection de mode opérationnel, un registre d'adresse couplé à ces moyens .et plusieurs portes de sélection d'adresse connectées à ce registre d'adresse„ - 7.- Ensemble selon 13une des revendications 1 à 6, 40 dans lequel les modules centraux de traitement comprennent §AD ORIGINAL 18492 '87 2010550 d'autres moyens pour aider à éliminer les défauts aussi bien que pour protéger des programmes à défauts non éliminés, mémorisés dans les modules de mémoire centrale, ces autres moyens comprenant des premiers et des seconds moyens d'emplacement de bit 5 d'interruption, de façon à fournir une aptitude d'interruption supplémentaire à l'ensemble. 8.- Ensemble selon la revendication 7* dans lequel les premiers et seconds moyens d'emplacement de bit d'interruption peuvent répondre de façon connectable à une interruption de saut 10 de sous-routine et à une source de signal d'interruption d'instruction simple. 9.- Ensemble selon l'une des revendications 1 à 8, qui comprend encore d'autres moyens pour aider à éliminer les défauts aussi bien que pour protéger des programmes à défauts 15 non éliminés, mémorisés dans les modules de mémoire centrale, ces autres moyens comprenant un tableau de contrôle monté sur. des moyens de représentation d'état et pouvant opérer avec ceux-ci, ce tableau de contrôle comprenant dès moyens pour séparer de façon commutable l'ensemble entier en sous-ensembles séparés. 20 10.- Ensemble modulaire de traitement de données comprenant plusieurs modules de mémoire, plusieurs modules centraux de traitement dont chacun est connecté individuellement à tous ces modules de mémoire, plusieurs modules de demande de données connectés d'une façon analogue à tous ces modules de mé-25 moire et plusieurs modules de commande d'entrées/sorties connectés de la même façon à chacun des modules de mémoire, chacun de ces modules de mémoire, chacun de ces modules de demande de données et chacun de ces modules de commande d'entrées/sorties comprenant des moyens pour générer tous les transferts d'adresse 30 et de données entre les modules de l'ensemble et des moyens pour vérifier la parité sur ces transferts. 11.- Ensemble selon l'une des revendications 1 à 10, dans lequel chacun des modules centraux de traitement comprend des moyens pour changer de façon dynamique les limites pour véri-35 fier que les données correctes et l'adresse correcte ont été envoyées chercher à partir des modules de mémoire. 12.-Ensemble selon l'une des revendications 1 à 11, dans lequel chacun des modules centraux de traitement comprend des premiers moyens de minutage à horloge capables de fournir le 69 18492 ,88 2010550 temps correct sous la forme du mois a de l'heure, de la minute et de la seconde et des seconds moyens de minutage à horloge capables de donner le temps par intervalles d'une milliseconde. 13.-Ensemble selon la revendication 10, dans le-5 quel chacun des modules centraux de traitement comprend des moyens pour aider à éliminer les défauts des programmes de l'ensemble, ces moyens comprenant un registre d'interruption présentant plusieurs emplacements de bit individuels, chacun de ces emplacements comprenant des moyens pour fournir un signal de 10 condition d'interruption, au moins un de ces moyens fournisseurs de signaux comprenant des moyens pour fournir un signal d'interruption de saut de sous-routine et des moyens capables de transmettre ce signal et au moins un autre de ces moyens fournisseurs de signaux comprenant des moyens pour fournir un signal d'inter-15 ruption d'instruction unique et des moyens capables de transmettre ce signal. 14.-Ensemble selon l'une des revendications 10 ou 13, comprenant une console 20 nant des moyens pour permettre à l'opérateur de l'ensemble de séparer l'ensemble entier en plusieurs sous-ensembles séparés de façon à aider à éliminer les défauts des programmes et à protéger ces programmes dont les défauts ne sont pas en train d'être éliminés. 25 15.-Ensemble modulaire de traitement des données présentant une première et une seconde pluralités de modules de mémoire, plusieurs modules centraux de traitement dont chacun est connecté de façon individuelle à chacun des modules de mémoire de chaque pluralité et plusieurs modules de commande d'en-30 trées/sorties connectés d'une façon analogue aux modules de mémoire, chacun des modules de mémoire de la première pluralité présentant une capacité de mise en mémoire de n mots multibits, chacun des modules de mémoire de la seconde pluralité présentant une capacité de mise en mémafce de m mots multibits et.chacun 35 des modules centraux de traitement présentant des moyens de commutation avec une première position pour choisir n'importe lequel de n mots dans n'importe lequel des modules de mémoire de la première pluralité et au moin.3 une autre position pour choisir n'importe lequel de m mots multibits dans n'importe lequel des 40 modules de mémoire de la seconde pluralité. 69 ' 18492 89 2010550 16.-Ensemble selon la revendication 15# dans .lequel les moyens de commutation,comprennent des moyens pour changer l'adresse à bits multiples de l'ensemble d'une pluralité de-bits à l'autre. . . 5 ; 17.- Ensemble selon l'une des-revendications 15 et 16, dans lequel chacun des modules centraux de;traitement comprend des moyens pour commuter entre une adresse à n bits et une adresse à m bits, avec m supérieur à n pour rendre l'ensemble capable de s'adapter à une extension et à. une contraction de mémoire et 10 pour s'adapter à diverses pluralités de formats de mot utilisables par l'ensemble. 18.- Ensemble modulaire de traitement"de données comprenant plusieurs modules de mémoire, plusieurs modules centraux de traitement dont chacun est connecté de façon individuelle 15 à tous ces modules de mémoire, plusieurs modules de commande d'entrées/sorties connectés d'une façon analogue à ces modules de mémoire et plusieurs modules de demande de données connectés de la même façon à ces modules de. mémoire, chacun des modules de l'ensemble comprenant des moyens de vérification interne pour s'assu-20 rer que les transferts corrects sont effectués à l'intérieur des modules. 19.- Ensemble selon l'une des revendications 1 à 18, dans lequel plusieurs unités de commande sont connectées chacune de façon individuelle à tous les modules de commande d'entrées/ 25 sorties et plusieurs unités de mémoire sont connectées par l'intermédiaire d'une matrice d'interconnexion à chacune de ces unités de commande pour permettre à n'importe laquelle de ces unités de lire et d'écrire dans n'importe laquelle des unités de mémoire et de lui commander. JO 20.- Ensemble modulaire de traitement de données comprenant plusieurs modules de mémoire présentant une capacité de mise en mémoire totale de m mots, .plusieurs modules centraux de traitement dont chacun est connecté de façon, individuelle à tous ces modules de mémoire, chacun de ces modules centraux de 35 traitement de données comprenant des moyens de commutation capables d'adresser sélectivement n'importe lequel des m mots dans une première position commutée et capables dans une seconde position commutée d'adresser sélectivement n'importe lequel de n mots lorsque lôs modules de mémoire présentent une capacité totale de 40 mise en mémoire de n mots. 20105-50 21.- Ensemble selon la revendication 20, dans lequel la pluralité des modules de mémoire est une pluralité x lorsque la capacité de mise en mémoire est de m mots et cette pluralité est une pluralité £ lorsque cette capacité de mise en mémoire est de n mots. 18492- bad qr/g/nal