CH629320A5 - Installation de traitement de donnees. - Google Patents

Installation de traitement de donnees. Download PDF

Info

Publication number
CH629320A5
CH629320A5 CH701477A CH701477A CH629320A5 CH 629320 A5 CH629320 A5 CH 629320A5 CH 701477 A CH701477 A CH 701477A CH 701477 A CH701477 A CH 701477A CH 629320 A5 CH629320 A5 CH 629320A5
Authority
CH
Switzerland
Prior art keywords
channel
data
register
memory
input
Prior art date
Application number
CH701477A
Other languages
English (en)
Inventor
Richard L Bishop
Stephen P Tulloh
Original Assignee
Amdahl Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amdahl Corp filed Critical Amdahl Corp
Publication of CH629320A5 publication Critical patent/CH629320A5/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Description

Le but de l'invention est d'améliorer la situation qui se présentait dans l'art antérieur.
Conformément à l'invention, ce but est atteint par la présence des caractères énoncés dans la revendication 1.
Les revendications dépendantes définissent des formes d'exécution particulièrement avantageuses, notamment quant à la constitution de l'unité de canal et de sa mémoire de canal, faisant partie de l'installation selon l'invention.
Les détails et particularités de l'invention ressortiront de la description ci-après, donnée à titre d'exemple et en se référant aux dessins annexés, dans lesquels:
La figure 1 est un schéma synoptique de l'installation de traitement de données général suivant l'invention.
La figure 2 est une représentation schématique de l'unité de canal.
La figure 3 est une représentation schématique plus détaillée de l'unité de canal.
La figure 4 est une représentation schématique du manipulateur de données qui constitue une partie de l'unité de canal de la figure 3.
La figure 5 est une représentation schématique plus détaillée de la logique de commande de canal qui fait partie de l'unité de canal de la figure 3.
La figure 6 est une représentation schématique de la logique de commande d'accès de données qui fait partie de la logique de 5 commande de canal de la figure 5.
La figure 7 est une représentation de la zone dans la mémoire d'état de canal à décalage.
La figure 8 est une représentation de la zone d'état de canal à décalage pour une opération d'entrée.
io La figure 9 est une représentation des zones d'état de canal à décalage pour une opération de sortie.
A la figure 1, l'installation de traitement de données suivant l'invention est représenté comme comprenant une mémoire principale 2, une unité de commande de mémorisation 4, une 15 unité d'instruction 8, une unité d'exécution 10, une unité de canal 6 avec des moyens entrée/sortie associés et une unité de pupitre 12. Le système de la figure 1 travaille sous la commande d'instructions de système dont un groupe organisé forme un programme de système. Les instructions de système et les don-20 nées sur lesquelles travaillent les instructions sont introduites à partir de l'équipement entrée/sortie, par l'intermédiaire de l'unité de canal 6 et de l'unité de commande de mémorisation 4, dans la mémoire principale 2. A partir de cette dernière, les instructions de système et les données sont recherchées par l'u-25 nité d'instruction 8, par l'intennédiaire de l'unité de commande de mémorisation 4, et sont traitées de manière à commander l'exécution dans l'unité d'exécution 10. On peut se référer à ce sujet à une publication «IBM System/370 Principles of Operation», SRL GA22-7000-3 publiée par IBM Corporation, qui 30 enseigne les détails généraux d'un système de traitement de données compatible avec la présente invention.
A la figure 2, l'unité de canal 6 de la figure 1 est représentée sous une forme schématique comme connectant les dispositifs de commande entrée/sortie 411' à l'unite S 4. Le nombre N de 35 cannaux est variable mais, aux fins de la présente description, N est 16, ce qui indique 16 cannaux. La logique de commande de canal CCL 403' fonctionne de manière à commander l'appareil de canal et l'attribution de ses différentes parties à des canaux particuliers. La logique de commande de canal 403' comprend 40 une unité d'adressage de mémoire et d'attribution de priorité 444 destinée à déterminer quelle partie de la logique de commande de canal 403' sera attribuée à un canal donné. La logique 403' comprend en outre quatre segments de commande (parties) qui sont sont fixés à l'unité d'adressage de mémoire 444. 45 Bien que la figure 2 représente une division en quatre segments, d'autres divisions sont possibles. Chacun des segments de logique de commande peut être dédié à des fonctions particulières, cas dans lequel chaque segment fonctionne indépendamment des autres. A la figure 2, une commande d'état 428' reçoit une 50 instruction pour un canal adressé particulier à partir de l'unité I sur un câblage d'entrée 426. La commande d'état 428' adresse alors convenablement et modifie l'emplacement parmi les seize emplacements de mémoire d'état de canal contenus dans les mémoires de canal 448 qui correspond au canal adressé. Ulté-55 rieurement, d'autres segments logiques de commande exécutent des opérations requises pour réaliser l'instruction à partir de l'unité I. Ces opérations comprennent d'une façon typique l'accès à l'unité S par la logique d'accès d'unité S 430', le traitement de mot de commande par la commande d'opérations 429' 60 ou le transfert de données vers une unité de commande 411'. D'une manière typique, chaque segment logique 428', 429', 430' ou 432' modifiera lui-même la mémoire d'état de canal, dans les mémoires de canal 448, alors qu'il exécute ses opérations. Les opérations exigent d'une façon typique des accès à 65 d'autres mémoires de canal contenues dans la mémoire 448.
L'entrée à partir de l'unité 18 de la figure 1 par l'intermédiaire de la ligne 426 est dérivée du registre d'adresse effective (non représenté) de cette unité I lorsque, à des moments appro
629 320
4
priés, un numéro de canal (quatre bits d'ordre inférieur d'un multiplet à huit bits) est produit pour désigner, dans un système à seize canaux, celui des seize canaux qui est alors traité. Le canal spécifié sur la ligne 426 est traité par différentes parties de l'unité de canal à différents moments. Pour un transfert donné, 5 la logique de commande d'état 428' reçoit l'ordre et le numéro de canal de l'unité I et modifie l'emplacement de mémoire d'état de canal associé à ce canal, de telle sorte que d'autres segments logiques de commande exécutent des actions coordonnées.
Dans l'exemple à seize canaux, le mémoire d'état de canal com- i0 prend seize emplacements et l'emplacement particulier associé au canal spécifié sur la ligne 426 est adressé par les circuits 444.
Les opérations pouvant être exécutées par l'unité de canal 6 de la figure 1 comprennent des transferts d'information entre l'unité S 4 et la mémoire de canal 448 et des transferts d'infor- 15 mation entre la mémoire de canal 448 et les dispositifs entrée/ sortie, par l'intermédiaire des unités de commande entrée/sortie 411'. Des transferts entre l'unité S et la mémoire de canal 448 se trouvent sous la commande de la mémoire d'accès d'unité S et des commandes 430'. De même, des transferts entre la mémoire 20 de canal 448 et les dispositifs de commande entrée/sortie 411' se trouvent sous la commande de la mémoire d'accès CTLR et les commandes 432'.
A la figure 3, l'unité de canal 6 représentée aux figures 1 et 2 25 est illustrée de façon plus détaillée, avec la mémoire de canal 448 de la figure 2 divisée en trois parties physiques et la logique de commande en quatre parties physiques. Les parties de la mémoire de canal sont la mémoire d'état de canal à décalage (SCS) qui comprend des étages SCSO à SCS15, y compris un 30 retard 431, la mémoire de canal locale (LCS) 406 qui comporte une mémoire tampon de canal (CBS) et ime mémoire d'état de sous-canal (SSS) et également la mémoire tampon de sous-canal (SBS) 408. Les parties de la logique de commande comprennent les commandes d'état 428, les commandes OCL 429, les com- 35 mandes DACL 430 et les commandes CIC432. En outre, à la figure 3, l'unité de canal 6 comprend des cirucits de registre 404, un manipulateur de données 405 et une logique d'interface à distance 407. Cette dernière (RIL) communique avec une multiplicité de dispositifs de commande entrée/sortie 411. L'unité C 40 6 fonctionne de manière à interconnecter des dispositifs entrée/ sortie associés aux dispositifs de commande entrée/sortie 411 avec le reste du système de traitement de données de la figure 8.
La logique de commande de canal (CCL) 403 comprend, une mémoire à registre de décalage (SCO à SCS15) qui est 45 adressable pour chaque canal de l'unité C 6. A la figure 3, cette mémoire comprend des emplacements d'état 428 destinés à commander et spécifier l'état d'un canal adressé, des emplacements de logique d'opération et de commande (OCL) 429 pour spécifier et commander les opérations des canaux, des emplace- 50 ments de logique de commande d'accès de données (DACL) 430 destinés à commander l'accès de l'information de données à partir de et vers l'unité S de la figure 1, et des emplacements de logique de commande d'interface centrale (CICL) 432 pour l'accès de l'information vers et à partir des dispositifs de com- 55 mande entrée/sortie 411, par l'intermédiaire de la logique d'interface à distance (RIL) 407. Dans la présente forme de réalisation de l'invention, les étages 428,429,430 et 431 sont réalisés par des étages de registre de décalage qui font circuler leur contenu. Dans une autre forme de réalisation, la mémorisation 60 dans les étages 428 à 431 est réalisée avec une mémoire à accès direct. Dans chaque forme de réalisation, il existe un emplacement de mémorisation associé à chaque canal et une méthode pour avoir accès à cet emplacement dans la mémoire.
En outre, la logique de commande de canal (CCL) 403 com- 65 prend une commande 433 qui communique avec l'unité de pupitre 12 de la figure 1 pour effectuer des ordres spécifiés par le pupitre.
Un registre de verrou d'ordre 450 reçoit, sur le câblage d'entrée, treize bits de données de commande qui sont verrouillés dans le registre de verrou d'ordre 450 sous un ordre sur la ligne de commande de verrou 545 désignée par C valable. Les bits dans le registre d'ordre 450 sont sortis sur le câblage 455 où les bits de sortie 12 et 11 sont appliqué à la mémoire tampon de sous-canal 408 afin de commander cette mémoire 408 en réponse aux ordres du pupitre.
Le bit 10 provenant du registre 450 est appliqué à la mémoire de canal locale (LCS) 406 afin de commander la mémoire de canal locale sous l'ordre provenant du pupitre 12.
Des bits 9,8 et 7 provenant duregistre 450 sont appliqués aux registres 404 afin de commander les registres avec l'information d'entrée sur le câblage 543.
Les commandes 433 comprennent un réseau d'horloge de canal 454 qui est bloqué ou mis en route sous la commande des bits 6,5 et 4 du registre 450. Les commandes 433 comportent également un circuit de mode de chargement de programme initial (IPL) 453 qui commande l'unité de canal pendant le mode de fonctionnement IPL en réponse au bit 3 provenant du registre 450. Le bit 2 du registre 450 est communiqué de celui-ci en tant qu'entrée à l'étage SCS15 des étages d'état 428. Le bit 1 du registre 450 est appliqué aux commandes d'accès de registre 452 qui commandent le chargement des circuits de registre 404 par l'intermédiaire du câblage d'entrée 543. Le bit 0 du registre 450 est appliqué aux commandes de remise à l'état initial 451 qui fonctionnent de manière à remettre à l'état initial les circuits de l'unité C 6, en réponse au bit 0 du registre d'ordre 450.
Les registres (REG) 404 de l'unité C comprennent un registre d'adresse d'unité de mémorisation à 32 bits (SUAR) 464, un registre de données d'unité de mémorisation ä 32 bits (SUDR) 465, un registre de travail à 32 bits (WR) 466, un registre d'adresse de mémoire de canal locale à 13 bits (LCSAR) 467 et un registre de données de recherche de mémoire de canal locale à 32 bits (LCSFDR) 468. Le registre WR 466 reçoit l'information de l'unité S par l'intermédiaire d'un câblage d'entrée 394 et sa sortie est connectée par un câblage 424 en tant qu'entrée vers le manipulateur de données de canal (CHDM) 405. Le registre WR 466 possède également une entrée dérivée du registre LCS FDR468 et de la mémoire tampon de sous-canal (SBS) 408, par l'intermédiaire d'un câblage 423. Les largeurs de parcours de données ont été données en général pour la simplicité de la description, en ignorant les bits de parité qui sont présents d'une manière classique. Par exemple, pour 32 bits, 4 bits de parité sont présents à raison de 1 par multiplet de 8 bits.
Le registre SUAR 464 reçoit aussi une entrée du registre LCS FDR 468 et fournit sa sortie à un diminueur d'adresse (DECR) 435 qui possède une entrée sur le câblage 353 qui est connectée en tant qu'entrée au registre d'adresse tampon (non représentée) dans l'unité S. Le registre SUAR 464, en coopération avec le diminueur 435, agit de manière à spécifier l'adresse dans l'unité de mémoire où l'information est mémorisée ou recherchée par l'unité C 6. Le registre SUDR 465 agit pour mémoriser des données dans l'unité de mémorisation par l'intermédiaire d'un déplaceur de multiplet 436 et d'un câblage de sortie 358. Les données recherchées sur le câblage 394 dans le registre de travail 466 ou mémorisées par l'intermédiaire du câblage 358 se trouvent à l'emplacement dans l'unité de mémorisation spécifié par l'adresse sur le câblage d'adresse 353.
L'information recherchée dans l'unité de mémorisation est mémorisée dans le registre WR 466 et transmise par un câblage 424 au manipulateur de données de canal 405. Les données provenant du manipulateur de données de canal sont reçues à , nouveau par le câblage 425 et mémorisées dans le registre de sortie de manipulateur de données (DMOR) 437. Ce dernier est connecté par sa sortie en tant qu'entrée pour un registre de manipulation de données (DHR) 439 dont la sortie, à son tour, est connectée en tant qu'entrée à la mémoire de canal locale
5
629 320
(LCS) 406 et à la mémoire tampon de sous-canal (SBS) 408. En partie de la mémoire de canal locale 406, en provoquant des outre, le registre DHR 439 reçoit une entrée du registre de accès au SSS sur la base du contenu accru successivement du données logiques d'interface (ILGDR) 438. Ce dernier est con- registre d'adresse de dispositif 479. La logique d'état 482 exa-
necté de manière à recevoir par l'intermédiaire de son câblage mine l'information sur le câblage 424 à la recherche du sous-
d'entrée 415, des données de la logique d'interface à distance 5 canal de priorité la plus élevée. La logique d'état de sous-canal
(RIL) 407. 482 communique au OCL une entrée vers celui-ci sur le câblage
La logique d'Interface à distance 407 représentée à la figure 497 et reçoit une sortie du OCL sur le câblage 499. En outre, la
3 est connectée aux dispositifs de commande entrée/sortie logique d'état de sous-canal 482 répond à l'information sur le
(unités de commande) 411 et, par conséquent, le transfert de câblage 482 et, dans le registre d'adresse de dispositif 479, éta-
données dans le système de traitement de données à partir des i0 blit une priorité qui est offerte en tant qu'entrée aux portes de dispositifs entrée/sortie se fait par l'intermédiaire du registre sélection d'entrée 487 pour une mémorisation dans les emplace-ILGDR 438. Lorsque des données sont reçues dans les registres ments d'état de sous-canal de la mémoire de canal locale 406.
404 par l'intermédiaire de la logique d'interface à distance 407, Le câblage 424 est également connecté en tant qu'entrée au elles passent par le registre de données 438 vers la mémoire de registre d'adresse de dispositif 479 lorsque celui-ci est utilisé
canal locale 406 ou la mémoire tampon de sous-canal 408 avant 15 pour spécifier quel dispositif doit être traité sous la commande d'être encore transmises vers le système de traitement de don- de l'unité C de la figure 3. Le registre d'adresse de dispositif 479
nées. Lorsqu'une information doit être transmise à partir des est également chargé directement à partir du registre d'adresse registres 404 vers des dispositifs entrée/sortie, on accède à cette effective (EAR, non représenté) sur le câblage 426. L'adresse information à partir de la mémoire de canal locale par l'intermé- de dispositif sur ce câblage 426 appliquée au registre 479 est de diaire du câblage 421 et elle est verrouillée dans le registre de 20 8 bits. Ces 8 bits conjointement avec 4 bits de rang supérieur,
données de recherche de mémoire de canal locale 468, dont la destinés à spécifier le numéro de canal, sont appliqués comme sortie est connectée en tant qu'entrée au registre ILPDR 440. A entrée sur le câblage 426 au multiplexeur de commande 704
partir de ce dernier, les données à transmettre à un dispositif dans la logique d'état 428 de la figure 6.
entrée/sortie sont sélectionnées 1 ou 2 multiplets à la fois à Le registre d'adresse de dispositif 479 est mis à jour par partir du registre 440, par un sélecteur de multiplet 441. Le 25 accroissement de 8 grâce au dispositif d'accroissement de 8 480
câblage de sortie 416 du sélecteur 441 comprend 16 bits de qui reçoit une sortie du registre 479 et forme une nouvelle en-
données, deux câblages à 8 bits (plus parité), qui sont connectés trée pour celui-ci. Un comparateur 481 reçoit une entrée du en tant qu'entrée à la logique d'interface à distance 407. Pour registre 479 et du câblage d'entrée 424 afin de détecter que le résumer, les registres 404 agissent de manière à mémoriser les registre d'adresse de dispositif 470 spécifie le même dispositif données recherchées à partir de l'unité S par l'intermédiaire du 30 qui est identifié sur le câblage 424. Les résultats de la comparai-
câblage 394 ou pour mémoriser des données dans cette unité S son dans le comparateur 481 sont mémorisés dans un registre par l'intermédiaire d'un câblage 458 en un emplacement d'à- 486 dont la sortie est connectée au OCL en tant que partie du dresse dans l'unité S spécifié par l'adresse sur le câblage 353. câblage 498.
L'information transférée entre les registres 404 et l'imité S est Le câblage 424 sert aussi d'une entrée pour le manipulateur également mémorisée dans la mémoire de canal locale 406 ou la 35 de données 483. Le manipulateur ou additionneur 483 reçoit mémoire tampon de sous-canal 408, par l'intermédiaire de câ- aussi des entrées de la logique de commande d'accès de données blages 419, à une adresse spécifiée par un câblage 420 et elle est (DACL) sur le câblage 495 pour une utilisation en combinaison renvoyée dans les registres 404 à partir de ces mémoires, par avec des transferts de données entre l'unité S et les mémoires de l'intermédiaire des câblages 421 et 423. Pour des transferts de canal. L'additionneur 483 est connecté par sa sortie aux portes données entre les registres 404 et les dispositifs entrée/sortie, 40 de sélection d'entrée, par l'intermédiaire d'un câblage 492, afin l'information est sortie par l'intermédiaire de la logique d'inter- de transmettre sous condition des adresses de mémoire princi-
face à distance sur le câblage 416 et est introduite dans les pale et des comptages de données dans la mémoire de canal registres 404 à partir de la logique d'interface à distance. locale 406 et la mémoire tampon de sous-canal 408 des mé-
On a représenté plus en détail à la figure 4 le manipulateur moires de canal, lorsqu'elles sont disponibles pour un accès en de données de canal 405 de l'unité C de la figure 3. Ce manipu- 45 combinaison avec des transferts d'information. L'additionneur lateur 405 reçoit l'entrée à 32 bits sur le câblage 424 qui est 483 reçoit également une entrée d'un générateur d'appui 491
connecté à de nombreux emplacements dans le manipulateur qui sous la commande, par l'intermédiaire du câblage d'entrée
405. Plus précisément, la câblage d'entrée 424 est connectée en 497, du OCL, fonctionne de manière à corriger l'adresse dans la tant qu'entrée vers les registres d'état 476, aux bits de drapeaux mémoire de canal à l'achèvement des procédures en liaison avec
477 et au registre d'ordre 446. 50 un canal.
Le registre d'état 476 fonctionne de manière à maintenir A la figure 4, l'additionneur de manipulateur de données l'information d'état concernant le fonctionnement des registres 483 reçoit une entrée des circuits de sélection de comptage de des canaux dans l'unité C 6 de la figure 3. Les registres 476 ont multiplet tampon 474. Les circuits 474 reçoivent un comptage une entrée vers les portes sélectionnées d'entrée 487 et font de multiplet en tampon à 5 bits (BBC) qui est constitué par les 5 partie de l'entrée vers le OCL 429, en tant que partie du câblage 55 bits d'ordre inférieur de la zone de comptage à 16 bits totale. La
498. Les drapeaux 477 fonctionnent en tant que dispositifs zone de comptage définit le nombre total de multiplets de don-d'emmagasinage destinés à indiquer que certaines fonctions sont nées à transférer entre l'unité de canal et l'unité de mémorisa-
survenues et, de même, ils ont une entrée vers OCL par l'inter- tion. Dans la plupart des cas, le comptage de multiplet en tam-
médiaire du câblage 498. Le registre d'ordre 446 focntionne de pon (BBC) est reçu à partir du registre d'action DACL 736 sur manière à verrouiller les mots d'ordre et à les rendre disponibles 60 la ligne 460. Dans certaines conditions, lorsque des erreurs ou par l'intermédiaire d'une porte 487. De même, le contenu du d'autres interruptions sont survenues, le comptage de multiplet registre 446 est recodé sous un format plus utile, dans une logi- en tampon est reçu à partir du OCL sur la ligne 461. Les circuits que de recodage 478 et il est alors appliqué en tant qu'entrée au 474 peuvent aussi sélectionner l'information à partir du câblage
OCL, par l'intermédiaire du câblage 498. 424, qui est dérivée du registre de travail 466 à la figure 3.
En outre, le câblage d'entrée 424 est connecté à la logique « Pendant la séquence de démarrage et chaque fois qu'une rete-
d'état de sous-canal 482 qui agit de manière à commander et nue est requise à partir des bits de rang supérieur de la zone de analyser l'information associée à l'information de sous-canal comptage, le registre de travail de la figure 3 est chargé avec la mémorisée dans la mémoire d'état de sous-canal (SSS) qui fait zone de comptage. Pendant la mise en route et avant tout trans-
629 320
6
fert de multiplet, la zone de comptage est appliquée en tant registre de sortie de manipulateur de données 437 dans l'unité
qu'entrée à la connexion de droite de l'additionneur 483. A de registre 404 de la figure 4. La contenu des 32 bits est sélec-
d'autres moments au cours du traitement et alors que la zone de tionné et formulé sous la commande des commandes de sélec-
rang supérieur du comptage de multiplet doit être mise à jour, tion 488. Les commandes de sélection 488 sélectionnent des les bits de rang supérieur sont obtenus à partir du registre de 5 informations à partir du câblage d'entrée 424, de la logique travail 466 et les bits de rang inférieur (comptage de multiplet d'état de sous-canal 482, des registres d'état 476, du registre en tampon) sont obtenus sur la ligne 460 et sont appliqués con- d'adresse de dispositif 479, de l'additionneur de manipulateur jointement à la connexion de droite de l'additionneur 483. La de données 492, du registre d'ordre 446 et du câblage d'entrée longueur de transfert reçue est habituellement de 4, étant don- 475.
née qu'il s'agit du nombre maximum de multiplets pouvant être 10 Le câblage d'entrée 475 vers les portes de sélection d'entrée envoyé à l'unité de mémorisation à chaque fois. Cette quantité 487 reçoit 8 bits constitués respectivement par l'information de doit également être soustraite de la zone de comptage (et par numéro de canal, l'information de registre de drapeau déclenché conséquent de BBC) à chaque transfert d'unité de mémorisation, et l'information d'état de canal. En outre, le câblage 475 reçoit 4
La connexion de gauche de l'additionneur 483 reçoit la Ion- bits de données concernant la nouvelle information d'état de gueur de transfert de multiplet effective (TL) qui est de 4 dans 15 sous-canal sur le câblage 497 à partir de OCL. De même, le les conditions habituelles, ce qui signifie un transfert de 4 multi- câblage 475 reçoit une information d'entrée du câblage 495
plets. La longueur de transfert de multiplet effective est sous- dérivée du calculateur d'état 703 de la figure 6, par l'intermé-
traite de la partie restante de la zone de comptage dans l'addi- diaire du câblage 495.
tionneur 483, sous la commande de la commande fonctionnelle La logique de commande de canal (CCL) 403 dans l'appa-
de manipulateur de données (DM FCN CTL) 490. 20 reil de la figure 3 est représentée plus en détail à la figure 6. A la
La sortie 492 de l'additionneur 483 comprend le nouveau figure 5, la logique d'état 428, la logique de commande d'opéra-
comptage restant. Pendant une opération de mise en route, rien tion (OCL) 429, la logique de commande d'accès de données n'est soustrait de la zone de comptage initiale et par conséquent (DACL) 430 et la logique de commande d'interface centrale la zone de comptage totale apparaît sur le câblage 492. Une (CICL) 432 forment les parties principales de la logique de courte séquence survient pendant le traitement pour mettre à 25 commande de canal qui coopèrent avec la mémoire d'état de jour le comptage de multiplet en tampon (5 bits de rang infé- canal. Chacune des ces parties peut être attribués à un canal ä la rieur), losque'une retenue à partir des bits de rang supérieur fois et chacune peut être attribuée à différents canaux par rap-
n'est pas requise. Dans cette courte séquence, le comptage de port aux autres.
multiplet en tampon mis à jour apparaît sur le câblage 492 et les La mémoire d'état de canal est constituée par des étages de bits de rang supérieur sont ignorés. Une longue séquence sur- 30 registre de décalage 710, à raison d'un pour chaque canal. Les vient lorsqu'il est nécessaire d'effectuer une retenue à partir des étages de registre de décalage 710 comprennent une mémoire bits de rang supérieur, qui sont d'abord obtenus de la mémoire d'état de canal de décalage (SCS) qui détermine l'état de chaque de canal pour le registre de travail 466. Les bits de rang supé- canal et indique quel canal est disponible pour l'attribution à des rieur du registre de travail, conjointement avec le comptage de parties de la logique de commande de cemal (CCL). Les 16 multiplet en tampon (bits rang inférieur) provenant des circuits 35 étages 710 identifiés comme SCS0, SCSI, ..., SCS15 contien-de sélection 474, sont appliqués à l'additionneur 483. La Ion- nent chacun, à un moment donné dans le temps, une informa-gueur de transfert effective est soustraite de manière à produire tion associée à un canal particulier correspondant parmi les cale nouveau comptage restant sur le câblage de sortie 492. naux identifiés en tant que canaux CH0, CHI, ... CH15. Pen-
La sortie de l'additionneur 483 envoie le comptage de multi- dant un cycle initial en un point dans le temps, SCS0 contient plet en tampon (5 bits de rang inférieur) sur le câblage 427 au 40 une information concernant CH0, SCSI contient une informa-
registre de résultat DACL 737. De même, les 11 bits de rang tion associée à CH15, et ainsi de suite, jusqu'à ce que SCS15
supérieur sont appliqués au calculateur de bit prolongé (EX contienne une information associée à CHI. Pendant le cycle
CAL) 471. Le calculateur 471 comprend une porte OU à 11 d'horloge suivant, SCS0 contient une information associée à
entrées (non représentée) qui détecte l'existence d'un 1 logique CHI, SCSI contient une information associée à CH0. A chaque dans un bit de rang supérieur quelconque de la zone de comp- 45 cycle d'hórloge suivant, l'information de canal est avancée à tage. La sortie de la porte OU est sélectionnée chaque fois qu'un travers les étages 710 à la façon d'un registre de décalage classi-nouveau signal de sélection EX apparaît sur la ligne 456 et sur la que. Après 16 cycles, l'information est à nouveau située comme ligne 418. En l'absence d'un signal sur la ligne 456, l'ancienne dans le cycle initial.
valeur de EX sur la ligne 457 est retenue et sortie sur la ligne Comme mentionné, l'état de canal de décalage (SCS) est un
418. La valeur de EX sur la ligne 418 est définie comme étant la 50 jeu de 16 registres de décalage, c'est-à-dire des étages de 0 à 15.
nouvelle valeur et elle est envoyée directement au registre de Chaque information d'état de canal occupe une position et est résultat DACL 737 et également verrouillée dans le registre de décalée d'un étage à chaque cycle de machine, d'une manière comptage de multiplet en tampon (BBCR) 470, conjointement annulaire. Un canal donné se trouvant dans l'étage 0 réapparaî-
avec la nouvelle valeur du comptage de multiplet en tampon tra en cet endroit 16 cycles de machine plus tard.
provenant du câblage 492 au moment où le OCL fournit un 55 L'information d'état de canal définit des états du processus signal de verrouillage sur la ligne 462. entrée/sortie et l'information de commande et d'erreur pour
L'addition ou fonction particulière exécutée par l'addition- chaque canal. La logique de commande d'opérations, la logique neur 483 est spécifiée par le dispositif de commande de fonction de commande d'accès de données et la logique de commande de manipulateur de données 490 dont les fonctions de com- d'interface du dispositif de commande ont accès à cette informa-
mande sont spécifiées par la logique de commande d'opération 60 tion en des points spécifiés le long du parcours SCS. Ceci permet
OCL sur le câblage d'entrée 496, à partir du décodage de point le traitement des 16 canaux sur une base de partage de temps,
de commande 706 du OCL. Les six entrées sur le câblage 496 à L'état de transfert global (GTS) est une zone de 6 bits qui partir du OCL sont le comptage correct, le comptage d'appui, définit l'état de logique de commande d'interface de dispositif les données correctes, les données d'appui, l'augmentation de 4 de commande (CICL) pour un canal. Les 6 bits sont interprétés et l'augmentation de 8. L'entrée sur la ligne 417 à partir du 65 suivant un code octal et les états GTS sont numérotés de 00 à
DACL spécifie s'il faut ajouter oU soustraire. 77.
Les portes de sélection d'entrée de DMOR 487 produisent L'état local OCL (OLS) est une zone de 6 bits'qui est déco-
les sorties sur le câblage à 32 bits 425 qui sert d'entrée pour le dée suivant un code octal et représente l'état de la logique de
7
629 320
commande d'opérations (OCL) en cours pour un canal. Les états principaux définis sont les suivants:
Etat
OCL inactif Sélection initiale SIOF
Enchaînement
Maintien
Transfert
Attente, enchaînement données Maintien éventuel
Bits OLS 012345
101E00
100ETT
1100TT
111000
111010
111100
OCPPPP
1101TT
Note:
Le bit «E» réglé indique qu'une vérification de canal ou de commande d'interface a été détectée avant de revenir à un code de condition et de libérer l'unité I au cours de l'exécution d'une instruction entrée/sortie.
La zone TT en sélection initiale et SIOF sont mis à l'état initial à partir de l'horloge d'interface et utilisés pour détecter un écoulement de temps d'interface.
La zone TT de maintien éventuel est mise à l'état initial à partir de l'horloge de maintien éventuel.
La zone CPPPP dans attente d'enchaînement données est une copie de l'indicateur de dernier multiplet de CICL conservé au cours de la recherche préalable.
La zone OLS définit l'état interne de la logique de commande d'opération (OCL). La différence fondamentale entre l'état de transfert global (GTS) et OLS est que ce dernier est un état dans OCL uniquement, tandis que GTS concerne à la fois OCL et la logique de commande d'interface de dispositif de commande (CICL) et peut être parcouru par l'un ou l'autre. Le but de OLS est d'attribuer un état distinct à chaque étape de commande de OCL pour un TS particulier. Par exemple, lorsque GTS est l'état «état initial», OLS fait une différence suivant que l'état est amorcé par un démarrage entrée/sortie (SIO) ou une chaîne d'ordre.
La zone d'opération de transfert (TOP), de 2 bits, contient le type d'opération de transfert de données spécifié par le mot d'ordre de canal (CCW).
00: essai entrée/sortie 01 : sortie ou commande 10: entrée
11: entrée en arrière.
La zone d'état d'interruption (IS), de 3 bits, contient l'état d'interruption du canal. Elle ne change pas lorsque des sous-canaux sont échangés. Les états d'interruption de tous les sous-canaux attribués à un canal particulier sont mémorisés dans la mémoire d'état de sous-canal (SSS). La zone I traduit l'état d'interruption de priorité la plus élevée de ces sous-canaux. Les 8 états représentés par cette zone sont énumérés ci-après de la plus haute à la plus basse priorité:
010: Vérification de commande fatale. Une vérification de commande a été détectée dans le canal. 111 : Vérification équipement. Le canal contient une interruption en cours par suite d'un défaut de fonctionnement d'équipement.
110: Interruption primaire. Une interruption de «fin de canal» est en cours dans le canal ou le sous-canal. 100: Interruption secondaire. Il existe une interruption asynchrone qui ne comprend pas «fin de canal». Un état secondaire n'est pas mémorisé dans le canal, mais est maintenu comme en cours dans le dispositif entrée/sortie.
011 : Canal disponible. Il existe une interruption de «canal disponible» en cours. Ceci s'applique aux canaux de multiplexeur de bloc uniquement.
001 : Aucun. Il n'existe pas d'interruption en cours dans le canal ou les sous-canaux.
000: SSS pas échantillonné. Ce code indique qu'un état d'interruption n'est pas connu, parce que la mémoire d'état s de sous-canal (SSS) n'a pas été échantillonnée. Ceci surviendra après qu'une interruption a été traité et subsistera jusqu'à ce que la logique de commande d'opération (OCL) puisse commencer un échantillonnage.
Le code de zone de terminaison inhabituelle (UTF) de 3 io bits, représente une condition qui termine le transfert de données pour des conditions inhabituelle quelconques. S'il doit y avoir plus d'une condition inhabituelle, la condition pour laquelle une valeur plus élevée est attribuée est réglée.
15 000: En ordre (aucune terminaison du transfert de données) 001 : Arrêt. Ceci est posé lors de la réception d'une instruction arrêt entrée/sortie.
010: Vérification de protection éminente. 011 : Vérification de programme éminente.
20
Note:
Les deux conditions précédentes sont réglées lorsque soit la vérification de protection, soit la vérification de programme est détectée pour un ordre ou des données recherchées préalable-25 ment dans un traitement d'enchaînement de données pour une opération de sortie. Ces conditions sont transformées en les vérifications réelles lorsque la condition d'opération entrée/sor-tie passe au nouvel ordre ou lorsque la délimitation de protection est franchie.
30
100: Vérification de protection.
101 : Vérification de programme.
110: Vérification de commande d'interface. Erreur détectée sur l'interface entrée/sortie.
35 111 : Vérification de commande de canal. Erreur détectée pour une opération de commande interne à l'imité C.
Le type de canal (CH. TYPE), un code de 2 bits, représente le type de canal. Les figures 1 et 6 représentent la façon dont le type de canal est déterminé en utilisant l'information provenant 40 de la mémoire d'adresse de canal (CAS). Les deux bits de type de canal ont la signification suivante:
00: Multiplexeur de multiplet 01: Multiplexeur de bloc 45 10: Canal de sélecteur 11: Pas installé.
Le code de distinction OCL (OCLDIST.), de 1 bit, est réglé si le OCL passe par la circulation d'ordre de chaîne OCL avant de pénétrer dans la circulation de démarrage entrée/sortie raso pide (SIOF). Ceci donne au OCL un procédé pour distinguer si SIOF a été commencé à partir d'une instruction de démarrage entrée/sortie rapide ou par l'intermédiaire de la circulation d'ordre de chaîne.
Le bit de distinction OCL est également utilisé au cours 55 d'une opération de données d'enchaînement. Dans ce cas, le bit est réglé lorsque l'indicateur CICL surpasse le CPPPP (dernier indicateur de multiplet du CCW en cours).
Dans l'un ou l'autre des cas décrits précédemment, le bit de distinction est réglé dans l'étage SCSI par le OCL. 60 L'indicateur de logique de commande d'accès de données (DACLP), de 5 bits, indique le multiplet de données suivant auquel le DACL aura accès dans la mémoire tampon de canal.
Les bits de comptage de multiplet en tampon (BBC), 0-4, sont les 5 bits de rang inférieur du comptage de multiplet prove-65 nant du mot d'ordre de canal (CCW). Au cours de la recherche de CCW, la logique de commande d'opération (OCL) copie les 5 bits de rang inférieur à partir de la zone de comptage CCW dans l'état de canal de décalage.
629 320
8
Le tampon DACL disponible (ADB), de 3 bits, constitue le tion de sortie de données d'enchaînement. Si un CCW est renombre de multiplets de données ou d'emplacements de don- cherché préalablement au cours de l'enchaînement de données nées disponibles pour le traitement par DÀCL. avec son drapeau PCI posé, le drapeau PŒ en cours est réglé.
Lorsque le transfert entrée/sortie est amorcé pour ce CCW
ADB est une mesure de contrainte de tampon. 5 (c'est-à-dire que le CCW précédent est achevé), ce bit est trans-
CICL contribue à la contrainte (ADB). féré au drapeau PCI.
DACL diminue la contrainte (ADB). On examinera à présent les vérifications, de 3 bits.
ADB à 0 est une contrainte maximum en sortie et une con- Interruption du dispositif de commande de programme trainte minimum en entrée (tampon de données vide (PCI). Ce bit est réglé si le mot d'ordre de canal contient le dans les deux cas). 10 drapeau PCI. Une interruption PCI est présenté à l'unité I lors-
ADB représente deux choses: que ce bit est posé.
1°) en entrée, ADB représente le remplissage du tampon de Note:
données LCS et est le nombre de multiplets de données dans le bien que ce bit soit situé dans la zone de vérification de SCS,
tampon. il fait partie logiquement de la zone de drapeau dans SCS.
2°) en sortie, ADB représente le vide du tampon de données 15 Vérification d'enchaînement (CCK) indique qu'une vérifi-
et est le nombre d'emplacements de multiplets qui sont vides cation d'enchaînement a eu lieu. La détection est effectuée par dans le tampon. la logique de priorité de DACL. Lorsqu'une vérification d'en-
ADB est une mesure de la contrainte de tampon de don- chaînement a été détectée, le bit CCK est placé dans SCS 3 par nées, plus grand est ADB et plus grande est la contrainte. La la logique de priorité de DACL.
logique de commande d'interface de dispositif de commande 20 Vérification de données de canal (CDC) indique que DACL
(CICL) augmente la contrainte, tandis que la logique de com- ou CICL a détecté ime vérification de données de canal.
mande d'ccès de données (DACL) diminue cette contrainte. On examinera à présent CICL (CCL), de 2 bits.
Lors d'une opération d'entrée, un tampon DACL disponible L'indicateur CICL (CICL IND.) est écrit dans SCS 0 ou 8 à
(ADB) de 0 signifie qu'aucun multiplet ne se trouve dans un deux occasions:
tampon de données de canal et que le tampon se trouve à sa 25 1 °) Au cours de la sélection intitiale si l'adresse provenant contrainte minimum. Alors que des multiplets sont reçus à partir des dispositifs entrée/sortie (au temps adresse entrée) corres-
du dispositif entrée/sortie, CICL les place dans le tampon de pond à l'adresse envoyée au dispositif entrée/sortie (au temps données et augmente le ADB, c'est-à-dire que le tampon de adresse sortie).
données est soumis à une plus forte contrainte. Etant donné que 2°) Pendant la sélection initiale si l'état initial (au temps le DACL retire ces multiplets du tampon de données et les 30 d'état entrée) était égal à 0.
envoie à l'unité S, il réduit également le ADB, c'est-à-dire que L'erreur de parité CICL (CICL P.E.) est écrite dans SCS 1
le tampon de données est soumis à une plus faible contrainte. ou 9 si CICL:
Lors d'une opération de sortie, le tampon DACL disponible 1°) détecte une erreur de parité dans les données d'interface
(ADB) à 0 est également un tampon vide. Toutefois, le tampon parvenant dans la mémoire de canal locale (LCS), ce qui est de données est à une contrainte maximum, parce que le CICL 35 détecté dans le registre de maintien de données (DHR), ou ne dispose pas de données à transférer au dispositif entrée/ 2°) si une erreur de parité est détectée pour des données sortie. Alors que DACL place des données dans le tampon, il recherchées à partir de LCS, ce qui est détecté dans le registre diminue le ADB et le tampon de données est soumis à plus de données recueillies dans la mémoire de canal locale faible contrainte. Lorsque la logique de commande d'interface (LCSFDR).
du dispositif de commande (CICL) retire ses données, elle aug- 40 On examinera à présent la largeur de transfert d'interface mente aussi le ADB, ce qui impose une plus grande contrainte (ITW), de 3 bits.
au tampon de données. Un interface de 4 multiplets (FBI) est utilisé pour indiquer
A titre d'exemple, on imaginera un tampon de données lors que ce canal travaille comme la moitié d'une paire de canaux d'une opération de sortie. Le DACL diminue ADB et le CICL utilisés pour une opération d'interface de 4 multiplets,
l'augmente. Si 4 multiplets sont placés dans le tampon par 45 Les bits 0—1 ont deux fonctions:
DACL, le ADB est réduit de 0 (32 positions vides) jusqu'à 28 1°) Le bit 0 est utilisé pour signaler un nouvel essai d'ordre
(29 positions vides). Quelques données sont alors disponibles vers OCL pendant entrée état, si l'état n'est pas zéro. Ceci est pour le CICL et le tampon est soumis à une plus faible con- effectué en transférant le bit 0 d'entrée de marque de l'interface trainte. Alors que CICL envoie un multiplet du dispositif en- entrée/sortie au bit 0 de ITW.
trée/sortie, ADB est augmenté jusqu'à 29 (29 emplacements 50 2°) Aux temps autres que le temps d'état, les bits 0-1 indi-
tampons vides) et le tampon est soumis à une plus forte con- quent la largeur logique de l'interface entrée/sortie, comme suit: trainte.
On examinera à présent les drapeaux de 4 bits. 00 — largeur 1 multiplet
Données d'enchaînement (CD) provient de la zone de dra- 01 — largeur 3 multiplets peau de mot d'ordre de canal (CCW). Il est conservé dans le 55 10-largeur 2 multiplets
SCS par l'instruction de mise à l'état initial SCS (observée dans 11 — largeur 4 multiplets.
les diagrammes de circulation OCL). On examinera ci-après la distance jusqu'à la page (DTP), de
Ordre d'enchaînement (CC) provient de la zone de drapeau 4 bits.
CCW et est conservé dans le SCS par l'instruction de mise à Le bit de page indique, lorsqu'il est posé, que le canal exé-
l'état initial SCS (observée dans les diagrammes de circulation 60 cute soit un adressage indirect de canal, soit une opération logi-
OCL). que. Les bits 0-2 ont la signification suivante:
Longueur illégale détectée (ILD) est posé dans SCS 4 ou C
lorsque la logique de commande d'interface de dispositif de 000 - délimitation de page à plus de 4 multiplets commande a détecté une longueur d'enregistrement incorrecte. 001 - délimitation de page à 1 multiplet
Saut/interruption dispositif de commande de programme 65 010-délimitation de page à 2 multiplets
(SKIP/PCI) est utilisé pour indiquer un saut lors d'une opéra- 011 - délimitation de page à 3 multiplets tion d'entrée (transfert de données supprimé) ou une interrup- 100 - délimitation de page à 4 multiplets tion de dispositif de commande de programme pour une opéra- 101—délimitation de page atteinte
9
629 320
110 - pas utilisé dant l'entrée. Alors que le CICL remplit le tampon LCS 406, le
111-pas utilisé. DACL le vide.
La clé de protection de mémorisation (KEY), de 4 bits, Pour achever une entrée, le CICL terminera le transfert de contient la clé de protection de mémorisation à partir du mot données avant que le DACL ne le fasse. Lorsqu'il existe moins d'adresse de canal (CAW). Cette zone est mise à l'état initial par 5 de 32 multiplets de données à transférer encore, le bit EX est le OCL. On se référera à la mise à l'état initial de SCS dans les annulé. Lorsque c'est le cas, BBC est le comptage de multiplet diagrammes de circulation OCL. restant. Le CICL cessera de faire entrer des données lorsque
Le numéro de canal de 4 bits identifie le canal auquel appar- BBC = ADB et que EX est annulé. A ce moment, le tampon de tient l'information d'état de SCS, dans l'étage affiché, (voir la données (LCS 406) contient tous les multiplets nécessaires bien production du numéro de canal). 10 que le DACL n'a pas achevé de transférer tous les multiplets à
On décrira à présent plus en détail la commande de tampon l'unité S. Le DACL cessera d'envoyer des données à l'unité S de données. Le mémoires de tampon de canal comprennent la lorsque le BBS est diminué jusqu'à 0 et que EX est annulé. Seul mémoire de tampon de sous-canal (SBS) et la mémoire de canal le DACL diminue BBS ; ainsi, lorsque BBC est zéro, tous les locale (LCS). Le SBS retient l'information de commande et multiplets ont été amenés à l'unité S.
d'état pour les sous-canaux inactifs. Le LCS est divisé en trois 15 Pour une opération de sortie, la description qui suit con-zones distinctes logiquement, la mémoire de tampon de canal 1 cerne les indicateurs en se référant à la figure 9. Les indicateurs (CBS I), la mémoire d'état de sous-canal (SSS) et la mémoire du DACL et du CICL commencent tous deux à zéro. Le DACL tampon de canal 2 (CBS II). CBS I et II contiennent des zones recueille 4 multiplets de données à partir de l'unité S, les places tampons de commande, d'état et de données pour les 16 canaux, dans CBS suivants l'indicateur de DACL et fait avancer l'indica-Le SSS mémorise les états fonctionnels des 1.024 sous-canaux 20 teur. A la figure 9, la DACL a agit six fois, de telle sorte que disponibles. l'indicateur se trouve au multiplet 24. Le CICL envoie des don-
II existe 16 tampons de données avec la mémoire tampon de nées au dispositif entrée/sortie et fait avancer l'indicateur de canal (CBS) comportant des mémoires 407 et 408 de la figure 5, CICL. Le CICL commence seulement et se trouve au multiplet une pour chaque canal. La logique de canal d'interface de dispo- zéro. Chaque transfert est d'un multiplet, de telle sorte que sitif de commande 432 et la logique de commande d'accès de 25 l'emplacement suivant sera le multiplet 1. L'indicateur de données 430 commandent ces tampons. Le DACL 430 com- DACL précède l'indicateur de CICL dans le sens des aiguilles mande le mouvement des données entre l'unité S 4 et la zone de d'une montre autour de la file d'attente. Alors que le DACL données de CBS. Le CICL 432 commande le mouvement des remplit le tampon LCS, le CICL le vide.
données entre le CBS et les dispositifs entrée/sortie, par l'inter- Pour achever une sortie, le DACL terminera le transfert des médiaire des dispositifs de commande 411. Lors d'une entrée, le 30 données avant que le CICL ne le fasse. Lorsqu'il existe moins de CICL 432 remplit les tampons de données, tandis que le DACL 32 multiplets à reprendre encore pour le DACL, le bit EX est 430 les vide. Lors de la sortie, le contraire est vrai, le DACL annulé. Dans ce cas, BBC est le comptage de multiplet restant, remplissant et le CICL vidant. Le DACL cessera de recueillir des données lorsque le BBC est
Chaque tampon contient 32 emplacements d'un multiplet ; diminué jusqu'à zéro (et que le bit EX est annulé). Le CICL toutefois, l'adressage est effectué sur des délimitations d'un mot. 35 cessera de déplacer des données vers le dispositif entrée/sortie Les tampons peuvent être considérés comme des files d'attente lorsque ADB=BBC=0.
circulaires. Un enveloppement d'adresse est utilisé de telle sorte Le générateur de numéro de canal est un compteur binaire à que les opérations de tampon soient continues. Ceci revient à 4 bits qui est réalisé en tant que partie de numéro de canal de dire que quand DACL ou CICL adresse le dernier mot (28), ils l'étage F de SCS. L'adresse de canal à 4 bits est propagée vers poursuivent par l'adresse zéro. 40 les étages 0,1 et 2 de SCS. Etant donné qu'il s'agit des seuls
Deux indicateurs sont utilisés pour permettre de suivre étages où les données SCS sont examinées ou modifiées, la par-
l'accès au tampon: l'indicateur DACL et l'indicateur CICL et tie d'adresse de canal de SCS tombe après l'étage 2. L'ordina-chacun d'eux indique l'un des 32 emplacements d'un multiplet. teur produit les numéros de canal affichés dans les autres étages
L'indicateur DACL est un indicateur de 5 bits conservé dans SCS.
SCS. Il existe 16 indicateurs DACL, un pour chaque canal. 45 Lors de la mise sous tension, ce compteur binaire à 4 bits L'indicateur est également utilisé par DACL pour produire une commence dans un état aléatoire, puis avance d'une unité à adresse CBS lors de l'accès au tampon de données. chaque cycle d'horloge, en comptant de 0 à F, et il répète conti-
L'indicateur CICL n'est pas conservé dans SCS. Il est pro- nuellement.
duit dans le CICL en ajoutant la zone de tampon DACL dispo- Le bit de rang inférieur de générateur de numéro bascule à
nible de 4 bits provenant de SCS à l'indicateur de DACL. Tout 50 chaque cycle. Ce bit de rang inférieur remplit un double but, en comme le DACL, le CICL utilise son indicateur pour produire ce sens qu'il est également dénommé le «verrou de cycle im-des adresses CBS qui sont chargées dans le registre d'adresse de pair». Lorsque le verrou est coupé, le cycle est considéré comme mémoire locale 467 lorsqu'un accès au CBS est nécessaire. étant «pair», tandis que quand il est armé, le cycle est considéré
comme «impair». Ce verrou possède une entrée vers le multi-Pour une opération d'entrée, la description qui suit concerne 55 plexeur SU/LCS afin de déterminer des cycles pair/impair par les indicateurs mentionnés à la figure 8. Les deux indicateurs rapport à la priorité CICL ou OCL/DACL. L'entrée d'horloge commencent à zéro. Le CICL recueille des données, un multi- (non représentée) vers chacun des étages 710 est classique.
plet à la fois, les mémorise dans CBS avec l'indicateur CICL et La première partie de la logique de commande de canal fait avancer l'indicateur, d'un comptage de multiplet. A la figure (CCL) 403 est constituée par les circuits d'état 428 qui répon-8, le CICL a chargé les multiplets 0 à 23 et indique remplace- eo dent aux étages SCS15 et SCS0 de la mémoire d'état de canal, ment suivant, celui du multiplet 24. Le DACL a accès aux don- L'étage SCS15 reçoit une entrée de l'étage SCS14, une entrée nées dans CBS à l'aide de l'indicateur DACL, envoie les don- du registre de verrou d'ordre 450 de la figure 3 sur la ligne 712 nées à l'unité S et met à jour l'indicateur DACL. A la figure 8, et une entrée sur la ligne 542 dérivée de l'unité de pupitre 12 de l'indicateur DACL se trouve au multiplet 0. Lors du premier la figure 1.
transfert, le DACL transférera 4 multiplets, 0 à 3, de telle sorte 6s L'information en SCS15, pendant toute période d'horloge que l'indicateur DACL se trouvera au mutliplet 4 après un donnée, offre une entrée au calculateur d'état 703 où le calcul transfert. L'indicateur CICL précède l'indicateur DACL dans le d'une configuration conformément aux entrées de fils volants sens des aiguilles d'une montre autour de la file d'attente pen- sur les lignes 708 rétablit la configuration des unités de canal et
629 320
10
mémorise les résultats dans SCSO. En outre, le précalculateur attendre l'achèvement de cette procédure. Lorsque la logique d'état 703 offre par l'intermédiaire d'un registre 702, une entrée 719 reçoit un signal sur le câblage d'entrée 498 indiquant vers la logique de priorité immédiate 714, à savoir l'état du qu'une procédure amorcée a été achevée, une décision est effec-
canal associé au contenu de SCS15. En même temps, l'unité de tuée quant à savoir ce qu'est la procédure suivante, s'il en existe multiplexage de commande 704 reçoit l'adresse de canal à 4 bits 5 une. Lorsque toutes les procédures spécifiées par la logique 719 sur le câblage d'entrée 426 à partir du EAR (non représenté) de ont été exécutées, la logique de procédure 719 indique une l'unité I de la figure 1. Le multiplexeur de commande 704 reçoit condition avec un signal vers la logique de résultat 725. Cette en outre un code d'opération et une information d'interruption dernière par la suite et lorsque l'information de canal associé sur le câblage 426, envoyés par le registre 702 à la logique de dans le registre d'organisation 721 est également décalée dans procédure immédiate OCL 714. En plus de l'entrée reçue à io l'étage SCS2, provoque une modification dans le réglage d'in-partir de l'unité I par l'intermédiaire du câblage 426, le multi- formation d'état de canal de «opération en cours» à «sélection plexeur de commande 704 renvoie une information de com- initiale».
mande à la commande de l'unité I par l'intermédiaire du câblage À la figure 5, le OCL 429 utilise le registre de résultat OCL 716 afin de régler des codes de condition et d'indiquer que les (OCLRR) 469 et le registre immédiat OCL (OCLIR) 722 pour opérations spécifiés par l'unité I sont terminées. Le multiplexeur 15 placer une novuelle information SCS dans SCS 2.
de commande 704 reçoit ce code de condition et l'information Le OCLIR est utilisé lorsque c'est possible pour effectuer d'opération terminée par l'intermédiaire d'entrées à partir de la des décisions d'un cycle quant au réglage de certaines zones logique de priorité immédiate OCL 714 et de la logique de SCS.
procédure OCL 719. Le réglage du OCLIR est déterminé par la logique immé-
L'information dans l'étage SCS15 est transférée de façon 20 diate OCL 714.
synchrone à chaque cycle dans l'étage SCS 0 où elle est verrouillée pendant 1 cycle. De même, l'étage SCS15 reçoit et verrouille Cette dernière reçoit l'information SCS (GTS, OLS, etc) à la nouvelle information dans chaque cycle à partir de l'étage partir de SCS 0 et l'information de conditionnement de com-SCS14. mande (telle que opération entrée/sortie maintenant) à partir
SCSO offre une entrée de 46 bits à la logique de procédure 25 du multiplexeur de commande 104. Cette information combinée immédiate OCL 714. Cette dernière attend que l'information est introduite dans la logique immédiate OCL pendant le cycle d'étage en circulation dans les étages 710 circule, et que l'infor- où le canal se trouve dans SCSO. La logique immédiate examine mation sur le canal spécifié par les 4 bits de canal sur le câblage cette information et effectue des décisions quant au réglage de 426 circule jusqu'à l'étage SCSI. Lorsque ce canal adressé pré- verrous dans OCLIR. Alors que le canal passe à SCS 1, les sente son information d'état dans SCSI, la logique 714 déter- 30 verrous de OCLIR sont réglés. Alors que le canal passe à SCS 2, mine l'opération qui doit être exécutée. Si le canal adressé tel les verrous OCLIR commandent l'introduction des zones SCS que déterminé par les circuits d'état 428 est à part cela inactif, le spécifiées dans SCS 2, par l'intermédiaire de la logique de résul-OCL 429 agit alors pour copier le contenu de SCSI dans le tat725.
registre d'organisation OCL 721 (OCLSR). Simultanément, la logique de procédure immédiate OCL 714 amène une «instruc- 35 Le registre de logique immédiate OCL 722 peut affecter tion» à être transférée au registre immédiat OCL 722 (OCLIR). sept zones de SCS:
Le registre 722 amène, par l'intermédiaire d'une de ses sorties,
la logique de résultat OCL 725 à modifier l'information d'état 1)UTF
de canal pour le canal adressé, situé à ce moment dans le SCSI, 2) GTS
de «inactif» à «opération en cours». Le passage d'inactif à en 40 3) DTP
cours survient lorsque l'information dans SCSI est transféré par 4)IS
la logique de résultat 725 au SCS2. 5) IS
Avec l'information dans SCS2 indiquant qu'une condition 6)bitsSKEP&PCl d'opération en cours existe, le registre d'organisation 721 con- 7) DACLP
tient une information quant à la nature de cette opération, con- 45 Le diagramme logique IM ci-après représente les états logi-jointement avec une information suffisante pour amorcer l'opé- ques et de sortie de la logique 714 et est construit en utilisant ration. Pendant ce temps, l'unité I attend le signal en retour sur des circuits logiques classiques:
les lignes 716, qui conditionnera l'unité I pour poursuivre le traitement des instructions dans le courant d'instructions. La Diagramme de logique IM OCL logique de procédure OCL 719 avec son entrée à partir du 50 PCI & SKIP (saut)
registre d'organisation 721, analyse le contenu de ce registre 0 -pas de changement pour amorcer les procédures qui auront accès à la mémoire de 1 - régler PCI & remettre SKIP à l'état initial canal (y compris la mémoire de canal locale 406 et la mémoire tampon de sous-canal 408). Les mémoires de canal sont rendues DIP accessibles pour obtenir et verrouiller l'état du sous-canal 55 0-pas de changement adressé. Le sous-canal est identifié par le manipulateur de don- 1-régler DTP à 0 nées avec son entrée de numéro de dispositif à 8 bits sur le câblage 426. La logique de procédure OCL 719 amorce, par UTF l'intermédiaire du registre (PRTR) 724 des séquences dans les 00 -pas de changement dispositif de séquence OCL 726. Ce dernier comprend des rou- 00 01 - pas utilisé tines logiques séquentielles pour effectuer des fonctions de com- 10 -régler UTF à 6 mande, par l'intermédiaire du décodeur de point de commande 11-régler UTF à 7 OCL 706, qui amème les registres 404, le manipulateur de données 405 et les quatre parties 428,429,430 et 432 de la logique IS de commande de canal 403 à exécuter les fonctions requises. 65 00- pas de changement
Lorsque la logique de procédure 719 a amené le dispositif 01—réglerSIàl de séquence 726 à amorcer une procédure particulière, la logi- 10-régler IS à 2 que de procédure 719 se trouve alors dans un état d'attente pour H-réglerISà3.
11
629 320
GTS
00 - pas de changement 01-régler GTS à 50 10-régler GTS â 00 11 - régler GTS à 66 et DACLP à 0
OLS
00 - pas de changement
01 - régler OLS à «inactif»
10 - régler OLS à «transfert»
11 - régler OLS à «fictif»
A la figure 5, la logique de priorité OCL 715 fonctionne conjointement avec le registre d'organisation OCL (OCLSR) 721 pour déterminer quelle procédure sera effectuée par le OCL 429. Ce dernier est capable d'exécuter de nombreuses procédures de commande différentes. Alors que chaque nouveau canal passe dans SCSO, la logique de priorité OCL 715 doit déterminer si oui ou non un nouveau canal doit être desservi par une procédure de commande et si le OCL 429 est inactif ou si la procédure requise pour ce canal possède une priorité supérieure à celle des autres canaux qui ont demandé les services du OCL 429.
Le registre d'organisation OCL 721 fonctionne sous la commande de la logique de priorité 715. Les registres d'organisation 721 comprennent une paire de verrous pour chacune des procédures initiales qui doivent être effectuées par le OCL 429. Chaque paire de verrous est une combinaison maître-esclave de verrous. La logique de priorité 715 interroge le SCSO pour déterminer si l'une quelconque des procédures qui peuvent être effectuées par OCL 429 est requise par le canal dans SCSO. Si une requête pour une procédure est effectuée, le verrou maître correspondant à cette procédure est réglé automatiquement dans le registre 721. Un seul verrou maître sera réglé à un moment donné quelconque. Les verrous maîtres dans le registre 721 sont synchronisés à chaque cycle (par des moyens classiques non représentés), chaque fois que SCS est synchronisé. La sortie de chaque verrou maître alimente son verrou esclave correspondant dans le registre 721. Toutefois, un transfert a lieu du verrou maître au verrou esclave uniquement lorsque la logique de priorité 715 détermine qu'un transfert devrait avoir lieu. La logique de priorité OCL est une logique classique pour comparer le contenu des verrous maîtres avec celui des verrous esclaves dans le registre 721, afin de déterminer si la procédure requise dans les verrous maîtres a une priorité supérieure à celle dans les verrous esclaves. Les différentes procédures que OCL 429 est capable d'exécuter et qui seront décrites ci-après à propos de la logique de procédure 719, possèdent toutes une priorité à attribuer préalablement. Par exemple, des procédures d'une priorité supérieure reçoivent un verrou d'emplacement numéroté supérieur et des procédures de priorité inférieure reçoivent un verrou d'emplacement de numérotation inférieure. La logique du priorité 715 est par conséquent essentiellement un comparateur classique. Si le verrou maître a un numéro supérieur à celui du verrou esclave, la sortie du comparateur à partir de la logique de priorité 715 synchronise les verrous esclaves dans le registre 720, en amenant la procédure de priorité supérieure à être transférée aux verrous esclaves. Si la procédure identifiée dans les verrous esclaves possède déjà une priorité égale ou supérieure, aucune sortie n'est produite par la logique de priorité 715 et la procédure précédente reste verrouillée dans le verrou esclave. Le contenu du verrou esclave dans le registre 721 spécifie la procédure suivante à exécuter par la logique de procédure 719. Bien que la logique de priorité 715 ait été décrite comme un simple comparateur et commande de porte entre les verrous maîtres et esclaves, d'autres circuits de priorité plus complexes peuvent être utilisés. Par exemple, le schéma de comparaison de priorité de base entre le contenu des verrous maîtres et esclaves peut être étendu en bloquant la sortie du comparateur dans certaines conditions ou en provoquant de force, d'une autre façon, le transfert des verrous maîtres aux verrous esclaves malgré que la sortie à partir du comparateur n'a pas eu lieu. Le 5 fonctionnement de la logique de priorité est celle d'une machine d'état à deux bits. Il existe quatre états pour la machine d'état, à savoir 00,01,10,11.
Les états de la machine d'état de registre d'organisation (SR) n'ont de signification que quand les verrous esclaves du io registre d'organisation contiennent une requête de procédure OCL (SR plein). La machine d'état SR détermine si les verrous esclaves du registre d'organisation doivent rester semblables, ou être remis à l'état initial et permettre le chargement d'une nouvelle requête à partir des verrous maîtres du registre d'organisa-15 tion.
Les états sont définis comme suit:
Etat 00 - Ré-écriture sur les verrous esclaves.
Lorsque SR plein est armé, cet état indique que la logique de procédure OCL est occupée à exécuter une procédure OCL, 20 mais pour un canal quelconque autre que celui se trouvant dans SCS 1.
On entre dans cet état lorsque :
1°) OCL n'est pas inactif,
2°) le numéro de canal dans SCS 1 n'est pas égal à celui dans 25 le registre d'action OCL 720 ou le registre de résultat OCL 469 (cette comparaison est effectuée lorsque le canal se trouve dans SCS 0 et verrouillé pour l'utilisation au cycle suivant, lorsque le canal se trouve dans SCS 1).
Action pendant l'état 00:
30 Une comparaison est effectuée entre les verrous maîtres et esclaves du registre d'organisation afin de déterminer si les verrous maîtres ont une priorité supérieure à celle des verrous esclaves.
Si les verrous maîtres du registre d'organisation ont une 35 priorité supérieure, les verrous esclaves sont synchronisés. Ceci amène une remise à l'état initial de la requête en cours et le transfert de la requête dans les verrous maîtres vers les verrous esclaves. Les verrous esclaves sont réglés alors que le canal effectuant la requête pénètre dans SCS 2.
40 Etat 01 (numéro de canal dans SCSO = numéro de canal dans les verrous esclaves):
Cet état indique que la logique de procédure OCL est en train d'exécuter une procédure OCL pour un canal quelconque, 45 que les verrous esclaves du registre d'organisation contiennent une requête à exécuter et que le canal se trouvant alors dans SCSO est le même canal pour lequel les verrous esclaves contie-nent une requête.
En ce point, il est possible que le canal dans SCSO n'exige so plus une procédure OCL ou exige une procédure différente de la précédente.
On entre dans cet état lorsque:
1°) la logique de procédure OCL est occupée ;
2°) les verrous esclaves du registre d'organisation contien-55 nent une requête de procédure qui n'a pas encore été acceptée par la logique de procédure (registre d'organisation plein) ;
3°) le numéro de canal dans SCSO est identique à celui se trouvant alors dans les verrous esclaves de registre d'organisation.
60 Les verrous esclaves du registre d'organisation seront synchronisés et il y a alors trois résultats possibles:
1°) le canal dans SCSO ne demande plus de procédure OCL. Le verrou esclave du registre d'organisation qui est réglé sera remis à l'état initial et SR plein est annulé.
65 2°) le canal dans SCSO demande toujours une procédure mais différente de la précédente. Le verrou esclave en cours qui était réglé est remis à l'état initial et un nouveau est réglé pour traduire cette nouvelle requête. SR plein reste réglé.
629 320
12
3°) le canal dans SCSO demande toujours le même procédure que précédemment. Les verrous esclaves du registre d'organisation sont synchronisés et le verrou esclave qui était réglé le reste. SR plein reste réglé.
Etat 10 (maintenir SR plein): 5
Cet état indique que le verrou de registre d'organisation plein doit rester réglé même si la logique de procédure OCL est inactive.
Certaines des procédures OCL exigent que l'information SCS soit chargée dans le registre d'action 720 à partir de SCSI io avant que la procédure puisse être exécutée.
Normalement, lorsque la logique de procédure OCL termine une procédure et devient inactive, la requête dans les verrous esclaves du registre d'organisation est acceptée par la logique de procédure et SR plein est annulé, ce qui permet à la 15 requête de procédure suivante d'être transférée des verrous maîtres du registre d'organisation aux verrous esclaves.
Toutefois, lorsque la logique de procédure OCL devient inactive et que la requête dans les verrous esclaves du registre d'organisation exige une information SCS, la machine d'état SR 20 passe à l'état 10. Elle y reste jusqu'à ce que le canal associé à la requête atteigne SCSI. A ce moment, le registre d'action 720 est chargé à partir de SCSI et SR plein est remis à l'état initial. On entre dans cet état lorsque:
1°) OCL est inactif (la logique de procédure n'est pas alors 25 occupée à exécuter une requête) ;
2°) les verrous esclaves du registre d'organisation contiennent une requête (SR plein réglé) ;
3°) la logique de procédure OCL n'a pas commencé à exécuter la requête parce que l'information SCS nécessaire n'a pas été 30 chargée oe SCSI dans le registre d'action.
Action pendant l'état 10:
1°) SR plein ne peut pas passer à l'état initial.
2°) les verrous esclaves du registre d'organisation ne peuvent pas se modifier. 35
Lorsque le canal avec la requête dans les verrous esclaves du registre d'organisation pénètre dans SCSO, des signaux sont produits pour permettre au registre d'action d'être chargé à partir de SCSI pendant le cycle suivant. A ce moment, OCL inactif sera annulé. 40
Etat 11 (régler SR vide):
Cet état indique que la requête dans les verrous esclaves du registre d'organisation sera acceptée par la logique de procédure OCL au cours du cycle suivant.
SR vide sera réglé, en permettant à toute requête dans les 45 verrous maîtres du registres d'organisation d'être transférée vers les verrous esclaves.
On entre dans cet état lorsque :
1°) OCL est inactif.
2°) les verrous esclaves du registre d'organistaion contien- 50 nent une requête.
3°) la requête dans les verrous esclaves n'exige pas une information SCS à partir de SCSI ou, si c'est le cas, l'information a déjà été chargée dans le registre d'action.
Action pendant l'état 11: 55
1°) SR plein est ramené à l'état initial.
2°) si les verrous maîtres du registre d'organisation contiennent une requête, les verrous esclaves du registre d'organisation seront synchronisés et réglés de manière à traduire cette requête. 60
La logique de priorité OCL 715 comprend, d'une façon typique, un verrou du registre d'organisation plein/vide (non représenté) qui se réfère aux verrous esclaves du registre d'organisation uniquement. Si les verrous esclaves contiennent une requête qui n'a pas été acceptée par la logique de procédure OCL, 65 le verrou est réglé. Lorsque la logique de procédure OCL termine son opération en cours et devient inactive, certaines conditions permettent à cette logique d'accepter la requête dans les verrous esclaves et le traitement de cette requête commence. A ce moment, le verrou de registre d'organisation plein est remis à l'état initial (et registre d'organisation vide devient actif).
Normalement, lorsque la logique de procédure OCL devient vide, la requête se trouvant alors dans les verrous esclaves est immédiatement acceptée par cette logique. Toutefois, certaines requêtes de procédures exigent que l'information de SCS soit chargée dans le registre d'action OCL avant que cette procédure ne puisse être accomplie (le parcours pour l'information SCS est de SCSI vers le registre d'action). Lorsque ceci a lieu, la machine d'état de registre d'organisation de priorité OCL passe à l'état 10, ce qui empêche le registre d'organisation plein de revenir à l'état initial jusqu'à ce que le canal effectuant la requête pénètre dans SCSI. Lorsqu'une requête dans les verrous esclaves a été acceptée par la logique de procédure OCL, les verrous esclaves du registre d'organisation sont logiquement vides (registre d'organisation plein est annulé). Toutefois, le verrou esclave en cours ne sera pas remis à l'état initial jusqu'à ce qu'un nouveau verrou esclave soit réglé.
Le verrou de registre d'organisation plein est réglé lorsque toutes les conditions suivantes surviennent:
1°) il n'y a pas de requête à ce moment dans les verrous esclaves.
2°) le canal dans SCSO possède une requête pour une procédure OCL.
3°) le canal dans SCSO n'est pas alors dans le registre d'action OCL 011 le registre de résultat OCL.
Le verrou est ramené à l'état initial lorsque l'une quelconque des conditions suivantes survient:
1°) une remise à l'état initial général du système a lieu.
2°) la machine d'état de priorité =11.
3°) la machine d'état de priorité = 01 et il n'y a pas de requête de procédure pour le canal se trouvant alors dans SCSI.
Le verrou est empêché de passer à l'état initial lorsque la machine d'état de priorité est égale à 10.
Il existe quatre numéros de canaux maintenus dans des registres dans OCL et chacun d'eux a une largeur de 4 bits. Les numéros de canaux sont le numéro de canal pour les verrous maîtres de registre d'organisation (CN-SM), le numéro de canal pour les verrous esclaves du registres d'organisation (CN-SS), le numéro de canal pour le registre d'action (CN-AR) et le numéro de canal pour le registre de résultat (CN-R).
Les numéros de canaux dans les registres permettent de suivre quel canal se trouve au moment considéré dans chaque phase de OCL (registre d'organisation 721, registre d'action 720 et registre de résultat 469). Les registres sont associés à la manière d'un systeme de liaison.
Le numéro de canal CN-SM est synchronisé par l'horloge normale et il est chargé à chaque cycle, tandis que les numéros de canaux restants sont chargés avec leur registre correspondant comme décrit précédemment.
La logique de priorité 715 de la figure 5 comprend d'une façon typique un verrou d'état canal pas en cours de procédure (CNIP) quin'est pas représenté. Ce verrou indique, lors-qu'il est réglé, que le canal dans SCSO n'est ni traité dans le registre d'action720, ni maintenu dans le registre de résultat 469 pour introduction dans SCS2.
Ce verrou informe la logiqu.e de priorité, OCL que le canal dans SCSO peut être placé dans les verrous esclaves du registre d'organisation si:
1°) le canal possède une requête de procédure, et
2°) les verrous esclaves sont disponibles pour accepter une nouvelle requête.
A chaque cycle, cette machine d'état est réglée ou remise à l'état initial pour traduire la condition du canal dans SCSO.
La logique de priorité 715 comprend également d'une façon typique un verrou de distinction OCL qui est réglé dans deux cas.
13
629 320
1°) lorsque la zone OLS dans SCSO est égale à chaîne. Ceci permet au OCL de reconnaître le fait que OLS est entré dans SIOF à partir d'une chaîne plutôt qu'à partir d'une instruction SIOF.
2°) lorsque le CICLP franchit CPPPP pendant les données de chaîne d'attente. Ceci permet au OCL de placer l'adresse CCW convenable dans le CSW dans le cas d'une terminaison du transfert des données avant que le comptage de multiplet n'atteigne 0.
A la figure 5, la logique de procédure OCL 719 comprend une machine d'état classique (non représentée), telle qu'un compteur ou un registre. La machine d'état de procédure OCL est constituée par cinq états, à savoir inactif, travail, travail 0, travail 1 et sortie.
La machine d'état est commandée par une logique de commande et de décodage classique dans la logique de procédure OCL 719 qui est définie comme suit en combinaison avec les états.
La machine d'état est «inactive» lorsque la logique de procédure OCL 719 n'est pas occupée à exécuter une procédure OCL.
Lorsque la logique de priorité OCL 719 détecte qu'une procédure est demandée par un canal, la requête est placée dans les verrous esclaves de registre d'organisation OCL 721 et le verrou SR plein est régie.
Si la requête de procédure est «rechercher CAW», «appui chaîne données» ou «fictif 1», le signal «attendre registre d'action » (WAAR) est mis en action. Si la requête est pour n'importe quelle autre procédère «WAAR» sera inactif.
En fonction de l'état de «WAAR», la machine d'état de procédure OCL procédera comme suit:
1°) elle passera à l'état «travail» lors du cycle pair suivant. Si «WAAR» est inactif et que SR plein est actif, la machine d'état de procédure OCL passera à l'état de travail lors du cycle pair suivant.
2°) Ou bien elle attendra AR plein, pour passer ensuite à l'état de «travail» lors du cycle pair suivant.
Ce signal permet de charger le numéro de canal du registre d'action OCL 720.
4°) Régler SR sur vide.
Ce signal conjointement avec l'état inactif de la machine 5 d'état de procédure OCL, règle la machine d'état de registre d'organisation de priorité OCL à 11. Ceci remet à l'état initial le verrou SR plein. SR plein étant annulé informe la logique priorité OCL 719 que la requête de procédure dans les verrous esclaves du registre d'organisation a été transférée au PRT 724 io et que les verrous esclaves sont à présent logiquement vides.
La machine d'état de procédure OCL se trouvant à l'état de traivail permet à la procédure verrouillée dans le registre PRT 724 d'être exécutée.
Lorsque l'exécution de la procédure est terminée (par exem-îs pie qu'un compteur atteint une valeur de comptage maximum et est remis à l'état initial), la machine d'état de séquence OCL parvient à l'état inactif, ce qui informe la machine d'état de procédure que la procédure a été exécutée.
Lorsque le dispositif de séquence OCL passe à l'état inactif, 2o l'état travail de procédure sera remis à l'état initial si AR plein est actif. Si ce n'est pas le cas, l'état travail reste réglé jusqu'à ce que AR plein devienne actif.
Comme indiqué précédemment, la procédure apparaissant en premier lieu peut être exécutée avant que le registre d'action 25 OCL soit chargé avec l'information des canaux SCS provenant de SCSI. Toutefois, si une seconde procédure doit être exécuté, l'information SCS doit toujours se trouver d'abord dans le registre d'action OCL. Par conséquent, le signal AR plein doit être présent avant que l'état de travail soit ramené à l'état initial. 30 La machine de procédure OCL passera de l'état de travail à l'état travail 0 lorsque toutes les conditions suivantes surviennent:
1°) le registre d'action est plein ;
2°) le dispositif de séquence OCL parvient à l'état inactif, ce 35 qui signale l'achèvement de la procédure en cours;
3°) il s'agit d'un cycle impair ;
4°) la procédure exécutée est l'une des suivantes:
Si «SR plein» et «WAAR» sont tous deux actifs, la machine de procédure OCL restera à l'état inactif jusqu'à ce que «AR 40
plein» devienne actif, pour passer ensuite à l'état de «travail»
pendant le cycle pair suivant. «WAAR» signale à la logique de procédure OCL que la requête de procédure est une requête qui exige que l'information SCS soit chargée dans le registre d'ac tion OCL 720 avant que la procédure puisse être exécutée. «
Lorsque le canal requérant pénètre dans SCSO, des signaux sont produits pour permettre au registre d'action d'être chargé avec l'information SCS nécessaire pendant le cycle suivant (alors que le canal est en SCSI).
Lorsque le registre d'action a été chargé, le signal «AR so plein» est produit et la machine d'état de procédure OCL passe à l'état «travail» pendant le cycle pair suivant.
Alors que la machine d'état de procédure OCL passe à l'état
«travail», quatre signaux de commande sont produits.
1°) conditionnement horloge PRT (PRCE). 55
Ce signal permet au registre de transfert de procédure (PRT) 724 d'être synchronisé par l'horloge. Le signal SR plein et la machine d'état de procédure ne se trouvant pas à l'état inactif conditionnent le signal de démarrage de procédure. Ceci, conjointement avec le signal de conditionnement horloge PRT, &o règle la procédure (verrouiller dans les verrous esclaves de registre d'organisation OCL) dans le registre PRT.
2°) Démarrage
Ce signal amène un dispositif de séquence classique (non représenté) tel qu'un compteur, à quitter l'état inactif ce qui 65 permet à la logique de procédure de commencer à traiter la procédure qui est verrouillée dans le registre PRT.
3°) Conditionnement horloge SCHRA.
A) mémoriser CSW2
B) rechercher état sous-canal
C) envoyer STW
D) rechercher l'état du dispositif
E) rechercher CCW1
F) rechercher CCW2
G) rechercher IDAW
H) traduire
I) rechercher CAW et bit parité 0 est réglé.
Si l'une quelconque des autres procédures est exécutée, la machine d'état de procédure OCL passe de travail à travail 1.
La combinaison précitée produit un signal «retard». Ce dernier indique que la logique de séquence OCL a besoin de deux cycles supplémentaires (après que le dispositif de séquence OCL atteint l'état inactif). Les moyens offerts par LCS et le signal «d'accord pour OCL» provenant du multiplexeur SU/LCS seront nécessaires.
Action pendant l'état «travail 0».
Travail 0 est un état de retard de deux cycles et aucune action n'a lieu.
Remise à l'état initial de «travail 0».
L'état de «travail 0» est remis dans sa condition initiale lors du cycle de machine impair suivant après son réglage.
On considérera à présent l'état «travail 1» de la procédure OCL.
L'état «travail 1» est réglé par l'un de deux procédés:
1°) lors du cycle impair suivant après que «travail 0» est réglé, si «travail 0» est commencé.
629 320
14
2°) lors du même cycle ou l'état «travail» est ramené à l'état procédures particulières parmi les procédures OCL, par exem-. initial, si «retard pour procédure OCL» est inactif. pie FCCW1, FCCW2, FCAW.
Action pendant l'état «travail 1». Lorsque le signal «requête entrée» est appliqué par un dis-
L'état «travail 1 » indique qu'une procédure OCL a été positif entrée/sortie par l'intermédiaire d'un dispositif de com-
achevée. Si le signal «fin procédure OCL» est actif, il s'agissait 5 mande 411, le CICL 432 pénétrera dans une séquence d'appel de la dernière procédure d'une chaîne de procédures. sélectif (GTS = 30). Dans le GTS = 32, l'adresse du dispositif entrée/sortie est mémorisée dans le mot zéro de LCS. GTS Exemple - Chaîne de procédure passe à l'état 33 jusqu'à ce que le signal adresse entrée retombe
F CAW et que le signal état entrée est produit. Le GTS passe alors à état
FCCW1 10 prêt (37).
FCCW2 Lorsque OCL détecte l'état prêt de GTS (et que OCL est
Conserver modes (dernière de la chaîne) inactif), la procédure de recherche d'état de sòus-canal sera exécutée. Celle-ci obtient l'adresse entrée/sortie du mot zéro de A la fin de chaque procédure, la machine d'état de procé- LCS et la place dans le registre d'adresse entrée/sortie 479.
dure OCL pénètre dans l'état «travail 1». A la fin de la procé- 15 Les signaux «WR00-07 versIOAR», «sélectionLCS pour dure «conserver modes», le signal «fin de procédure OCL» sera écrire multiplet 0», «sélection LCS pour écriture» et «condi-également actif. tionnement horloge IO AR» sont produits par le OCL afin de
On pénètre dans l'état de sortie lorsque la dernière procé- transférer l'adresse entrée/sortie dans le registre d'adresse endure d'une chaîne a été achevée (fin procédure OCL) et que la trée/sortie479.
machine de séquence OCL se trouve à l'état «travail 1». 20 Lorsquela procédure de recherche d'état de sous-canal est
L'état de sortie ne peut pas être réglé si le registre de résul- terminée, la procédure déplacer ESB et IOAR vers tampon tat OCL contient une information qui n'a pas encore été expédié interruption (MEBI ou MEDI) est exécutée. Cette procédure à SCS envoi OCLRR actif). obtient l'adresse du dispositif entrée/sortie du registre d'adresse
L'état de sortie est réglé pour un cycle seulement. Au cycle entrée/sortie 479 et la place dans le mot 6 du multiplet 3 du suivant après l'état de sortie, la machine d'état de procédure 25 LCS.
OCL passe à inactif, ce qui permet la mise en route d'une nou- Les signaux «mouvement DMOR vers DHR Cl», «condi velle procédure. tionnement horloge DMOR» et «sélection DAR vers multiplet
Lorsqu'un canal requiert une procédure OCL, il est possible 3 DMOR» sont produits par le OCL afin de transférer l'adresse que plus d'une procédure doive être exécutée. entrée/sortie dans le registre DHR 439 par l'intermédiaire du
Par exemple, lorsque «opération entrée/sortie maintenant» 30 circuit de sélection 487.
et SIO sont actifs et que GTS = 00, la procédure «rechercher Signal «opération entrée/sortie maintenant».
CAW» (FCAW) est exécutée. Après que le CAW a été obtenu, Lorsque l'unité I décode une instruction entrée/sortie (SIO, les procédures «rechercher CCW1» (FCCW1), «rechercher TlOetc), elle relève la ligne «opération entrée/sortie en cours» CCW2» (FCCW2), et «conserver modes» (SVMD) sont exécu- vers l'unité C. Elle envoie également l'adresse canal/dispositif tées. Lorsque «rechercher CAW» est terminé, la logique com- 35 du registre WAR d'unité I sur le câblage 426 au registre 479 de mence automatiquement «rechercher CCW1». Lorsque «re- la figure 4.
chercher CCW2» est terminé, «rechercher CCW2 est automati- Le multiplexeur de commande 704 détecte le signal «opéra-quement mis en route. Après que «rechercher CCW2» est ter- tion entrée/sortie en cours» et compare en réponse l'adresse de miné, «conserver modes» est mis en route. Lorsque ce dernier canal reçue avec l'adresse de canal dans SCS F (SCS 15). Lors-commence, le signal «fin procédure OCL» est produit. 40 que les deux adresses sont comparables, le multiplexeur de com-
Ce signal implique la dernière procédure d'une chaîne a été mande 704 envoie le isgnal «opération entrée/sortie mainte-mise en route. nant» à OCL.
Lorsque cette dernière procédure est terminée, la machine Le OCL verrouille le signal «opération entrée/sortie main-
d'état de procédure OCL pénètre dans «travail 1 » et le résultat tenant» alors que le canal passe à SCS 0.
des efforts combinés des procédures est placé dans le registre de 45 Alors que le canal passe à SCS 1, le OCL:
résultat OCL et le verrou «envoi OCLRR» est réglé pour signa- 1°) règle la procédure «rechercher CAW » (pour les verrous 1er que le registre de résultat OCL est plein. maître du registre d'organisation) si OCL est inactif et que GTS
Le signal «démarrage procédure» est produit lorsque le ver- est égal à opération en cours, séquence appel sélectif 1 ou rou «SR plein» est réglé (ce qui indique que les verrous du inactif.
registre d'organisation possèdent une requête de procédure qui 50 2°) régie la procédure «STTDC» (pour les verrous maître du n'a pas été exécutée) et que la machine de procédure OCL se registre d'organisation) si l'instruction de l'unité I était «mémo-trouve à l'état inactif (ce qui indique qu'aucune procédure n'est riser canal ID » et que OCL est inactif et que GTS est égal à en cours d'exécution par la logique de procédure OCL). opération en cours, appel sélectif séquence 1 ou inactîf.
Le signal «démarrage procédure» permet à la procédure 3°) verrouille «opération entrée/sortie maintenant» dans les dans les verrous esclaves du registre d'organisation d'être trans- 55 verrous maîtres du registre d'organisation. Si l'instruction de férée et verrouillée dans le registre PRT. l'unité I n'exige pas de CAW, la procédure «rechercher CAW»
Le signal «démarrage pour dispositif de séquence de procé- est cependant toujours exécutée.
dure» est produit lorsque la machine de procédure OCL est Lorsque la synchronisation d'horloge pour les verrous es-
réglée à l'état de travail ou lorsque travail 1 est actif et que fin de ' claves du registre d'organisation survient, le signal « opération procédure OCL est actif. 60 entrée/sortie maintenant» est verrouillé dans les verrous es-
Ce signal règle les états de machine de séquence OCL «sé- claves du registre d'organisation.
quence principale 0» et «sous-séquence 0». Ceci permet à la Lorsque le registre d'action devient inactif et est prêt à ac-
procédure verrouillée dans le registre PRT de commencer à cepter une nouvelle requête, le verrou de registre d'action «opé-
traiter la logique de procédure OCL. ration entrée/sortie maintenant» est réglé.
Le multiplexeur SU LCS 704 contient la ligne «pas opéra- 65 Le OCL contrôle la zone IS de LCS 0. Lorsqu'un canal tion unité S». Cette ligne est normalement active et doit être requiert qu'un CSW soit mémorisé, OCL relève le signal «régler niée par OCL si ce dernier requiert un transfert de données vers requête interruption». Si l'interruption est masquée, le multi-ou à partir de l'unité S. Cette négation est réalisée par des plexeur de commande 704 envoie «requête interruption» à l'u
15
629 320
nité I. Lorsque cette dernière est prête à traiter l'interruption Si CICLP moins CPPPP est supérieur 0 (à la terminaison du
(permettant de mémoriser CSW), «acceptation interruption» transfert des données) et que le bit de distinction OCL est réglé, est envoyé à l'unité C. toutes les données pour le CCW en cours ont été transférées.
Après avoir détecté «acceptation interruption», le multi- Aucune correction de l'adresse CCW n'est nécessaire.
plexeur de commande attend que le canal requérant parvienne 5 Si CICLP moins CPPP est inférieur à 0 ou que le bit de • au cours du cycle dans SCS F (SCS 15). Lorsque l'adresse de distinction OCL est annulé, toutes les les données pour le CCW canal dans RCHR est égale à SCS F, le multiplexeur de com- en cours n'ont pas été transférées. La procédure appui CD est mande envoie «interruption maintenant» à OCL. Interruption exécutée pour corriger l'adresse CCW.
maintenant a une longueur d'un cycle et surviendra chaque fois La logique de procédure OCL 719 est du type séquentiel que le numéro de canal dans RCHR est égal à SCS F, jusqu'à ce 10 classique qui exécute plusieurs procédures différentes. La logique le signal entrée/sortie (IOCP) provenant de OCL est reçu que 719 est définie en fonction d'une instruction SIOF. Cette en indiquant que le CSW a été mémorisé. Le multiplexeur de dernière provoque l'application d'une entrée au multiplexeur de commande attend qu'acceptation interruption survienne, de commande 704, comme indiqué précédemment. Ce dernier telle sorte que l'unité I et le multiplexeur de commande devien- transmet cette entrée à la logique de priorité 715 qui agit de nent inactifs. 15 manière à régler le verrou opération maintenant dans les ver-
Alors que le canal pénètre dans SCSO, la logique de priorité rous esclaves du registre d'organisation 721. Lorsque ce dernier OCL verrouille le signal interruption maintenant. Ce verrou comporte le verrou esclave opération maintenant réglé, la logi-exécute les fonctions suivantes: que de procédure 719 est excitée en réponse pour exécuter une
1°) si OS=4 (interruption secondaire), le verrou interrup- séquence de procédure. Au moment où le verrou opération tion maintenant règle GTS pour opération en cours (50), par 20 maintenant est réglé, le numéro de canal associé à l'instruction l'intermédiaire du registre immédiat OCL pour préparer la sé- SIOF est également mémorisé dans le registre d'action 720 de la lection initiale ; manière décrite précédemment.
2°) si on a IFC, CCC ou PCI, la procédure de verrou maître La première procédure exécutée par la logique de procédure du registre d'organisation pour AIC1 est réglée ; 719 est rechercher mot adresse de canal (FCAW). Cette procé-
3°) empêcher une requête de procédure de verrou maître de 25 dure a pour fonction de donner accès à un emplacement fixe de registre d'organisation pour rechercher état dispositif ; la mémoire principale 2 (par l'intermédiaire de l'unité de mé-
4°) empêcher le réglage d'un requête de procédure de ver- morisation 4) afin d'obtenir le mot adresse de canal (CAW). rou maître de registre d'organisation pour DMY1. Dans la forme de réalisation de la présente invention, ce mot
Alors que le canal pénètre dans SCS 1, le verrou maître de adresse de canal est situé dans l'adresse de mémorisation 48 de registre d'organisation interruption priorité OCL maintenant est 30 la mémoire principale. La logique de procédure 719 est par réglé. Ceci est le même cycle où les verrous maîtres de priorité conséquent une logique séquentielle classique qui engendre les OCL sont réglés. signaux séquentiels suivants pour rechercher le CAW à l'empla-
Lorsque la logique de priorité OCL permet à la requête de cernent 48. La logique de procédure 719 transmet une adresse procédure dans les verrous maîtres du registre d'organisation fixe 48 en tant qu'entrée au registre SUAR 464 et amène cette d'être transférée aux verrous esclaves du registre d'organisation, 35 adresse à être verrouillée dans ce registre 464. Le logique de le verrou esclave de registre d'organisation interruption mainte- procédure 719 transfère ensuite le contenu du registre 464, par nant est réglé. l'intermédiaire du circuit 435 et sans modification, à l'unité S sur le câblage 353. Le contenu de l'emplacement de mémoire prin-Lorsque le registre d'action accepte la requête de procédure cipale est renvoyé à l'unité de canal par l'intermédiaire du câ-des verrous esclaves du registre d'organisation, le verrou de 40 blage 394. L'information de ce dernier est verrouillée dans le registre d'action interruption maintenant est réglé. registre WR 466. La logique de procédure 719 fournit un signal
Pendant une opération de données de chaîne d'entrée, tous pour verrouiller le registre WR d'une manière classique. La les multiplets de données incidents (pour le CCW en cours) sont fonction séquentielle suivante de la logique de procédure 719 placés dans la mémoire principale avant que OCL recherche le consiste à faire sortir un signal pour charger le contenu du CCW suivant (aucune recherche préalable de CCW n'a lieu). 45 LCSAR 467. Le but du chargement du registre 467 est de for-
Pendant une opération de données de chaîne de sortie, OCL mer une adresse pour la mémoire de canal local 406 où doit être recherche préalablement le CCW suivant lorsque CICL a 16 mémorisé le CAW qui est situé dans le registre WR 466. Etant multiplets de données ou moins (à partir du CCW en cours) donné que la mémoire 406 a un emplacement attribué pour encore à transférer au dispositif entrée/sortie. Après que le chacun des 16 canaux, la zone de rang supérieur pour l'adresse
CCW a été recherché préalablement, DACL recherche préala- 50 dans la mémoire 406 est obtenue à partir du numéro de canal, blement les données pour le CCW recherché préalablement. Le numéro de canal pour le canal sur lequel travaille à ce mo-Si le transfert de données vers le dispositif entrée/sortie se ment le OCL est mémorisé dans le registre d'action 720. Il y a termine de façon anormale, il est possible que le CICL travaille été placé automatiquement au moment où le verrou opération sur les données soit pour le CCW en cours, soit pour celui re- maintenant a été réglé dans le registre d'organisation 721. Le cherché préalablement. Afin de placer l'adresse CCW correcte 55 numéro de canal est transmis à partir du registre d'action 720 dans le CSW, une logique particulière est utilisée. Une partie dans la zone de rang supérieur du LCSAR 467. La logique de principale de cette logique implique le CPPPP. procédure dirige la zone de rang inférieur vers un emplacement
Le OCL détermine que CICL a 16 multiplets de données ou préattribué quelconque pour le CAW, qui est par exemple l'em-moins restants grâce à la formule siuvante: placement 4. Cette adresse est verouillée dans le registre 467.
BBC=0 et EX=0 et ADB > 16 = moins que 16 encore. 60 Pendant la période où l'adresse est verouillée dans le registre Lorsque cette condition est satisfaite, le DACLP de SCS 1 467, la logique séquentielle prend le contenu du registre WR est transféré dans la zone OLS de SCS 2. On ser réfère ensuite à 466 en tant qu'entrée pour le manipulateur de données 405. La cette valeur comme le CPPPP. On remarquera que le DACLP logique séquentielle du système logique 719 à la figure 5 com-est l'indicateur de dernier multiplet du CCW en cours. mande la transmission par porte directement à travers le mani-
Si le transfert de données vers le dispositif entrée/sortie se 65 pulateur de données 405 grâce au circuit de commande de sélec-termine anormalement, l'adresse CCW convenable (pour le tion 488.
CSW) est calculée en préparant CICLP à CPPPP et en exami- A la figure 5, la commande de sélection 488 est simplement nant le bit de distinction OCL. constituée par des portes de sélection qui commandent celle des
629 320
16
entrées du circuit de sélection 487 qui est sélectionnée. Dans le exemple 4) pour spécifier l'adresse dans la mémoire 406 de présent exemple, la logique de procédure OCL 719 provoque la l'adresse de mot d'ordre dans la mémoire principale. Cette sélection du câblage 424, de telle sorte que le manipulateur de adresse de mot d'ordre a déjà été augmentée de 4 comme décrit données 405, en ce qui concerne la présente procédure, ne mo- précédemment et elle constitue donc à présent l'adresse du mot difie pas les données. La sortie du circuit de sélection 487 appa- 5 d'ordre de canal 2, CCW2.
raît sur le câblage 425 et est verouillée dans le registre 437 de la Cette opération achève la procédure FCCW1, ce qui en-figure 3. Le dispositif de séquence 706, après le verrouillage des traîne le verrouillage d'une nouvelle procédure dans le registre données dans le registre 437, les verrouille dans le registre 439 724. Cette nouvelle procédure est destinée à rechercher le mot qui, à son tour, les offre en tant qu'entrée à la mémoire de canal d'ordre de canal 2 et est désignée par FCCW2.
locale 406. Le CAW est placé dans la mémoire de canal locale 10 La procédure FCCW2 est essentiellement identique à la 406 à l'adresse spécifiée par le LCSAR 467. En ce point, la procédure FCCW1. L'adresse dans la mémoire principale de procédure dénommée FCAW est achevée. CCW2 est atteinte à partir de la mémoire de canal locale 406 et
La logique de procédure indique que la procédure FCAW est placée dans le registre 468 pour être verrouillée à son tour est terminée, ce qui amène un nouveau verrou à être réglé dans dans le registre 464. A partir de ce dernier, elle est dirigée vers le registre PRT 724 pour conditionner une nouvelle procédure 15 l'unité de mémorisation et cette dernière renvoie l'adresse au qui est recherche mot d'ordre de canal 1 (FCCW1). Lorsque la registre WR 466. Ace moment, le dispositif de séquence 706 logique de procédure règle le verrou FCCW1 dans le registre augmente la zone de rang inférieur du registre LCSAR 467 afin PRT 724, ime procédure séquentielle FCCW1 commence et elle de mémoriser le contenu dans le registre 466 dans la mémoire est définie comme suit. Le but de cette procédure est de recher- de canal locale 406, en un nouvel emplacement d'adresse en-cher l'adresse de l'emplacement de mot d'adresse d'ordre dans 20 core. Le contenu du registre WR 466 (contenant CCW2) est LCS 406 et de l'utiliser pour avoir accès à CCW1 depuis la dirigé par l'intermédiaire du câblage 424 dans le manipulateur mémoire principale par l'intermédiaire de l'unité de mémorisa- 405. Dans ce dernier, le CCW2 apparaît sur le câblage 424. La tion 4 de la figure 1. Le dispositif de séquence 706 fait d'abord commande fonctionnelle 490 amène CCW2 à être dirigé àtra-sortir un signal de déclenchement pour transmettre le contenu vers l'additionneur 483 sans modification, afin d'apparaître sur de LCSAR afin d'adresser la mémoire de canal local 406. Lors- 25 le câblage 492. A ce moment, la zone de 11 bits sur le câblage qu'elle est ainsi adressée, l'adresse de mémoire principale de 492 est introduite comme entrée dans le circuit EX CAL 471 et CCW1 est transmise par porte dans le LCSFDR 468, par l'inter- le circuit BBCR 470 pour produire une zone de comptage de médiaire du câblage 421. Le dispositif de séquence 706 engen- multiplet sur le câblage 458. Ce dernier est connectée à la logi-dre le signal de verrou commandant le verrouillage dans le régis- que de résultat afin d'envoyer le comptage initial dans le SCS au tre 468. Ensuite, l'adresse provenant du registre 468 est dirigée 30 moment voulu.
sous la commande du dispositif de séquence 706 dans le registre Le manipulateur de données de la figure 4 comprend le SUAR 464 et simultanément dans le registre WR 466. Le con- registre d'ordre 446 qui reçoit et mémorise l'ordre provenant tenu du registre SUAR 464 est dirigé sans modification et par d'un mot d'ordre de canal, un registre de drapeau 477 qui reçoit l'intermédiaire du circuit 435 ainsi que du câblage 353, vers et mémorise les drapeaux provenant d'un mot d'ordre de canal l'unité S. Dans cette dernière, on a accès à CCW1 qui apparaît 35 et le registre d'état 476 qui reçoit et mémorise l'état à partir sur le câblage 394. En même temps que l'adresse a été dirigée d'un mot d'ordre de canal. Ces valeurs, sous la commande de la par le câblage 353 vers l'unité de mémorisation, le contenu du logique de procédure 719, sont rendues disponibles pour la logi-registre WR 466 à été dans le manipulateur de données 405. Le que de résultat pour une introduction dans les zones SCS appro-dispositif de séquence 706, d'une manière classique, produit un priées lorsque la logique de résultat 725 est conditionnée pour signal pour la commande fonctionnelle 490. Cetter dernière re- 40 l'envoi. Lorsque la procédure FCCW2 est achevée par le dispo-çoit le signal qui spécifie l'entrée par porte dans l'additionneur sitif de séquence 706, l'information nécessaire a été rendue dis-483 de la figure 4. Cet additionneur 483 est commandé de ma- ponible pour la logique de résultat pour un chargement du SCS. nière à ajouter plus 4 (ce qui est égal à quatre multiplets) à La procédure finale de la logique de procédure 719 est dénom-
l'adresse sur le câblage 424 qui a été dérivée du registre WR mée «procédure de conservation de mode», au cours de laquelle 466. 45 une certaine information est placée dans un emplacement de la
L'adresse augmentée provenant de l'additionneur 483 appa- mémoire de canal locale 406. Aux fins de la présente invention, raît sur le câblage 492 et est sélectionnée par un circuit de la conservation de mode peut être ignorée. Lorsque la conserva-
sélection 487, sous la commande de la commande de sélection tion de mode a été achevée, elle signale l'achèvement de la 488. Cette dernière sélection le câblage 492 comme étant la chaîne de procédure pour le OCL 429. Après que la procédure sortie sur le câblage 425. L'adresse sur le câblage 425 est ver- so de conservation de mode signale l'achèvement, la logique de rouillée dans le registre 437 de la figure 3 et dans le registre 439. résultat 725 envoie les zones d'information définies précédem-L'adresse est chargée dans le LCS 406 à l'adresse spécifiée par ment au SCS 2 afin de signaler qu'il est temps à présent que le le registre d'adresse 467. Conjointement, le résultat de l'unité S calculateur DACL 430 et le calculateur CICL 432 commencent apparaît sur le câblage 394 et est mémorisé, sous la commande à transférer des données et à rendre OCL inactif. Lorsqu'il est du dispositif de séquence 706, dans le registre 466. A ce mo- 55 inactif, le OCL peut commencer une procédure pour un autre ment, le dispositif de séquence 706 introduit une nouvelle zone canal.
de rang inférieur dans le LCSAR (par exemple 8), ce qui, con- Les procédures précédentes ont été discutées en admettant jointement avec la zone de numéro de canal de rang supérieur, qu'un seul canal avait la priorité et que OCL 429 était totale-forme un nouvel emplacement d'adresse pour la mémoire de ment attribué au traitement d'un canal. La chaîne de procédure canal locale 406. Ce nouvel emplacement d'adresse de canal est fio FCAW a en fait une priorité de 2. D'autres procédures de prio-celui de l'adresse de données réelle qui est obtenue à partir du rité 1 pourraient amener la procédure FCAW à attendre avant CCW1 mémorisé conjointement dans le registre WR 466. Le d'être traitée par le OCL.
dispositif de séquence 706 achève la procédure FCCW1 en diri- A la figure 6, on areprésenté de façon plus détaillée la géant le contenu du registre 466 à travers le manipulateur de logique de commande d'accès de données (DACL) qui fait par-données 405 dans les registres 437 et 439 vers l'emplacement de65 tie de la logique de commande de canal de la figure 5. Le DACL la mémoire 406 spécifié par l'adresse dans le registre 467. déplace des données vers et à partir de la mémoire de canal
A ce moment, le dispositif de séquence 706 réintroduit l'an- locale (LCS) 406. Lors d'opérations d'ecriture, le DACL dé-cienne zone de rang inférieur pour le registre d'adresse 467 (par place des données de l'unité S 4 de la figure 1 vers le LCS 406
17
629 320
et, alors d'opérations de lecture, le DACL déplace des données La longueur de transfert effective (TL) d'un transfert à ef-
du LCS 406 vers l'unité S. fectuer par le DACL est d'une façon typique de quatre multi-
Le DACL est un calculateur ou processeur de liaison qui plets et est déterminée par un code TL à 2 bits provenant de la utilise l'état de canal de décalage (SCS). A chaque cycle, une logique 734, qui est chargée dans le registre d'organisation 735. nouvelle information d'état de canal se trouve dans SCS 2 et les 5 D'autres longueurs sont utilisées, par exemple si à la fin d'un exigences de traitement de DACL sont déterminées à partir de transfert moins de quatre multiplets subsistent pour achever le cette information. Si le DACL effectue un traitement, lors de transfert. Dans ce cas, le code de longueur de transfert effective l'achèvement une nouvelle information d'état est renvoyées TL représente 3,2 ou 1 multiplet suivant le cas. La logique 734 dans SCS 2 par la logique de résultat DACL 740. tient également compte d'autres conditions spéciales, comme
Le système de liaison travaille en 3 étapes, à savoir organisa-10 par exemple des transferts s'approchant d'une délimitation de tion, action et résultat. La logique de priorité 734 détermine à page et produit des signaux de commande sur une ligne à 3 bits chaque cycle si le canal dans SCS 2 doit être organisé. Si le DIT et une ligne à 2 bits TP. Ces commandes ne sont pas registre d'organisation (SR) 735 est vide et que le canal requiert nécessaires en liaison avec l'objet de la présente invention et ne un traitement par DACL, le registre d'organisation 735 sera seront pas définies plus en détail.
synchronisé. Cette synchronisation d'horloge place une partie 15 Le registre d'organisation 735 accepte l'information de la de l'information de SCS2, plus une certaine information nou- logique 734 et directement de l'étage SCS2 sur le câblage à 23 velie, dans le SR. bits 746. Cette information comprend l'ancien EX de 1 bit,
Lorsque la logique d'action 739 est disponible, le registre l'ancien BBC de 5 bits, le numéro de canal et une autre informa-d'organisation 735 sera transféré au registre d'action (AR) 736. tion de commande qui est sans objet pour la présente invention. Le registre AR 736 offre la logique d'action avec l'information 20 Un intérêt particulier est à accorder l'ancienne zone BBC qui nécessaire pour déplacer des données vers et à partir de l'unité représente le comptage de multiplet en tampon (BBC) et la S. Lors d'une opération de lecture, la logique de commande zone EX à 1 bit qui présente le bit BBC prolongé (EX). La zone d'interface de dispositif de commande (CICL) 432 place des BBC est contituée par les 5 bits de rang inférieur de la zone de données provenant d'un dispositif entrée/sortie dans la mémoire comptage restante. Le bit EX indique si l'un quelconque des 11 de canal locale (LCS) 406 et la logique d'action DACL 739 25 bits de rang supérieur est présent dans la zone de comptage transfère ces données vers l'unité S. Lors d'une opération d'écri- restante. Le registre d'organisation 735 contient entre autres le ture, l'inverse est vrai, le DACL place des données de l'unité S BBC, c'est-à-dire les 5 bits de rang inférieur de la zone de dans LCS, tandis que le CICL retire les données et les envoie à comptage désirée, l'indication EX quant à savoir si des bits quel-un dispositif entrée/sortie. A l'achèvement d'une opération conques parmi les 11 bits de rang supérieur existent dans la zone d'entrée ou de sortie de données, la logique d'action DACL 739 30 de comptage à 16 bits, et l'indication TL de la longueur de crée de nouveaux états pour le canal sur lequel on agit. L'infor- transfert effective à entreprendre au cours de la présente opéra-mation d'état est alors transmise à la logique de résultat pour un tion du DACL. L'information dans le registre d'organisation envoi à l'état de canal de décalage (SCS). 735 définit le transfert suivant à exécuter par la DACL. Le
Il existe deux registres de résultat dans la logique de résultat, contenu du registre d'action 736 représente le transfert exécuté Le registre de résultat 1 (RR1) 737 reçoit des données de la 35 à ce moment par le DACL. Lorsque le transfert en cours est logique d'action. Le registre de résultat 2 (RR2) 741 reçoit des achevé, l'information concernant le transfert suivant dans le redonnées de RI et les envoie à SCS2 pour être signalées. De la gistre 735 est chargée dans le registre 736.
sorte, les registres de résultat agissent en tant que système de liaison pour mettre en tampon des résultats de jusqu'à deux Le contenu du registre d'action 736 est envoyé comme en-
opérations différentes. 40 trée à la logique d'action DACL 739. Cette dernière est une
Pour résumer, le système de liaison DACL complet peut logique de combinaison qui parcourt une séquence fixée en comporter quatre canaux en divers points de traitement. Un fonction de l'entrée à partir du registre d'action 736. La logique canal peut être organisé dans le registre d'organisation (SR) 735 d'action utilise le registre d'état d'action 739-2 pour mémoriser et être en attente pour l'action. Un autre canal peut se trouver les états de séquence de la logique d'action DACL. Le fonction-dans le registre d'action (AR) 736 tandis que le logique d'action 45 nement séquentiel de la logique d'action 739 commande de DACL travaille sur ce canal. Deux canaux peuvent avoir des nombreux signaux de réglage de temps qui sont sortis sur le résultats dans le registre de résultat 737 et le registre de résultat câblage de commande 748. Les signaux de réglage de temps sur 741 en attente pour être renvoyé pour signalisation dans SCS2. le câblage 748 sont des données de verrouillage et de transfert Le second étage SCS2 de la mémoire d'état de canal de décalage classiques et leurs séquences particulières seront définies ci-reçoit cycliquement l'information de l'étage SCSI sur le câblage so après à propos du fonctionnement.
742. A chaque cycle, l'information concernant un nouveau canal La logique d'action 739 comprend un comparateur classique est disponible pour le DACL. SCS2 fait sortir cycliquement une destiné à comparer TL, la longueur de transfert effective dési-information vers l'étage SCS3 sur le câblage 743 et vers le CICL rée, avec l'ancien BBC. Si IL est inférieur ou égal à BBC, le sur le câblage 744. transfert effectif peut avoir lieu avec une séquence courte et par
L'information dans l'étage SCS2 pour chaque cycle est ap- 55 conséquent la logique d'action 739 et le registre de séquence pliquée comme entrée à la logique de priorité DACL 734, par d'état 739-2 provoquent l'exécution d'une courte séquence l'intermédiaire du câblage 746 afin de déterminer si le canal comme décrit ci-après. Si TL est supérieur à BBC, l'ancienne dans l'étage SCS2 a la priorité la plus élevée pour une action par zone EX est examinée. Si EX est réglé (ce qui signifie que des le DACL de la figure 6. Si c'est le cas, la longueur de transfert bits de rang supérieur existent) à un moment où TL est supé-effective (IL) à entreprendre est constituée par une sortie sur 60 rieur à l'ancien BBC, la logique d'action 739 et le registre de un câblage de 2 bits vers le registre d'organisation 735. La dé- séquence d'état 739-2 spécifient une séquence longue. La sé-termination de priorité dans la logique 734 peut, par exemple, quence longue recherche les bits de rang supérieur à partir de la être simplement une indication du fait que le DACL est ou non mémoire de canal et replace ensuite la zone de comptage res-occupé à ce moment et, s'il ne l'est pas, on accorde la priorité au tante dans la mémoire de canal. Si BBC est inférieur ou égal à la canal quelconque qui se trouve alors dans SCS2 en chargeant 65 longueur de transfert maximum TL (dans le présent cas 4) et EX l'information dans le registre d'organisation 735 avec un signal n'est pas réglé, la séquence courte est alors suivie. Lorsque l'an-d'horloge. D'autres rapports de priorité plus complexes peuvent cien BBC est réduit à tous des 0 et que le EX n'est pas réglé, le évidemment être mis en œuvre. transfert primitif est achevé et le comptage est épuisé.
629 320
18
En général, les sorties de la logique d'action 739 entraînent même, le chargement initial place un indicateur ou pointeur en le transfert de multiplets d'information entre la mémoire de un emplacement fixe de la mémoire, par exemple l'emplace-
canal et l'unité de mémorisation. En plus d'effectuer ce transfert ment 72 dans le présent système, ce qui identifie l'emplacement effectif de multiplets d'information, la logique d'action 739 du premier ordre dans la séquence d'ordres de canal. Lorsque amène la zone de comptage restante à être diminuée de la quan- 5 l'ordre de démarrage entrée/sortie est recueilli par l'unité I, le tité du transfert effectif. Suivant une forme de réalisation de registre d'adresse effective dans cette dernière est chargé avec l'invention, la diminution de la zone de comptage est obtenue en l'information qui est communiquée à l'unité de canal par l'inter-
diminuant à l'origine le BBC circulant dans la mémoire d'état et médiaire du câblage 426. L'unité de canal identifie l'instruction la zone de comptage dans la mémoire de canal locale si néces- de démarrage entrée/sortie dans la logique d'état et attend que saire. Lorsqu'une retenue à partir des bits de rang supérieur est 10 l'information de canal adressée, qui circule dans les étages SCSO
nécessaire, une séquence longue est utilisé pour avoir accès aux à SCS15, parvienne à l'emplacement SCSI en entraînant une bits de rang supérieur à partir de la mémoire de canal locale notification de la logique de procédure immédiate lorsque le
406, pour diminuer la zone de comptage restante totale, et pour canal approprié parmi les 16 canaux parvient à l'emplacement mémoriser la nouvelle zone de comptage restante à nouveau SCSI. En admettant aux fins du présent exemple, que l'état du dans la mémoire 406. 15 canal adressé est inactif, le OCL permet l'introduction du conte-
L'ancien BBC et l'ancien EX, préalablement au transfert nu de SCSI dans le registre d'organisation 721, tandis que la effectif, apparaissent dans le registre d'action 736. L'ancien logique de résultat 725 modifie l'état du canal (en admettant le
BBC est sorti sur le câblage à 5 bits 460 vers les circuits de canal 5 à titre d'exemple typique), ce qui indique par verrouil-
manipulateur de données de la figure 4. De même, l'ancien EX läge dans SCS2 l'état d'opération en cours. Pendant chaque provenant du registre 736 est sorti sur la ligne à 1 bit 457 vers le 20 cycle, l'information de canal est avancée d'un étage à la fois manipulateur de données de la figure 4. Après traitement par le parmi les étages 710, de telle sorte qu'après 16 cycles, chaque manipulateur de données, le nouveau EX sur la ligne à 1 bit 418 information de canal a progessé à travers tous les étages SCS 1 à
est reçu du manipulateur de données et est mémorisé dans le SCS15.
registre de résultat 1 (R1R) 737. De même, le nouveau BBC est Pour une instruction démarrage entrée/sortie, l'information reçu sur le câblage à 5 bits 427 et est mémorisé dans le registre 25 de canal continue à progresser à travers les étages 710 où les R1R 737. Le numéro de canal est appliqué comme entrée au circuits OCL 429 sont attribués à un canal particulier, le canal 5 registre de résultat 737 à partir d'un registre 749 qui mémorise dans le présent exemple. Bien que les circuits 429 soient attirila valeur du dernier canal ayant la commande du DACL. Le bués au canal 5 pour le traitement, les autres parties de la logi-numéro de canal dans le registre 749 est dérivé du registre d'ac- que de commande de canal (état DACL, CICL) peuvent être tion 736. Lorsque le numéro de canal, le nouveau BBC et le 30 utilisés pour le traitement de canaux autres que le canal 5. nouveau EX sont appliqués comme entrée au registre 737, ils Pour une instruction SIOF, l'unité I attend que l'unité de sont disponibles pour un chargement dans le registre de résultat canal et en particulier le OCL aient terminé le traitement de leur 2 (R2R( 741. Les numéros de canaux dans les deux registres de partie de la fonction de canal. Plus précisément, pour une ins-résultat 737 et 741 sont disponibles en tant qu'entrées pour la traction SIOF, le OCL est responsable de la recherche d'un mot logique de priorité 734. De la sorte, les canaux ayant la com- 35 d'adresse de canal dans la mémoire tampon de canal tout en mande du DACL peuvent être utilisés pour décider que les vérifiant pour s'assurer que la mémoire d'état de sous-canal est canaux desservis à ce moment par le DACL n'ont pas de priorité disponible pour traiter le dispositif adressé identifié. En admet-d'utilisation de ce dernier. Avec les nouvelles valeurs de BBC et tant que le sous-canal identifié soit le dispositif 25 (ce qui identi-EX dans le registre 741, celles-ci sont disponibles pour un ren- fie implicitement un sous-canal), la logique de procédure 719 voi dans la mémoire d'état par l'intermédiaire de la logique de 40 après avoir eu accès au mot d'adresse de canal et ayant ainsi résultat DACL 740. situé l'adresse du premier mot d'ordre de canal, mémorise des
La logique 740 comprend un comparateur classique qui re- indicateurs ou pointeurs d'ordre dans la mémoire tampon de
çoit le numéro de canal de SCSI sur le câblage 750 à partir du canal du LCS et effectue des vérification de validité sur l'infor-
câblage 742 et le compare avec le numéro de canal dans le mation. En effectuant ces fonctions, le OCL utilise des parcours registre R2R 741. Lorsqu'une comparaison a lieu, les nouvelles 45 de données et la mémoire communs pour commander les fonc-
valeurs de EX et de BBC dans le registre 741 sont dirigées à tions.
travers la logique de résultat 740 vers le câblage 745 où elles Avec l'accès au premier mot d'ordre de canal, la logique de sont introduites dans l'étage SCS2 avec l'information provenant procédure 719 signifie au multiplexeur de commande 704 que de SCSI. L'ancien BBC et l'ancien EX dans SCSI sont rejetés. l'instruction SIOF de l'unité I du calculateur de données a été
La période de temps requise pour effectuer le transfert vers so achevée comme indiqué sur les lignes de retour 716, ce qui l'unité de mémorisation et l'introduction des nouvelles valeurs permet donc à l'unité I de poursuivre le traitement d'autres de EX et BBC dans l'étage SCS2 est une fonction du fait que la instructions dans son courant d'instructions.
zone de rang inférieur (BBC) uniquement doit ou non être mise Avec le premier mot d'ordre de canal obtenu, la logique de
à jour avec une séquence courte ou si une retenue est requise et procédure 719 indique à la logique de résultat 725 que l'état de que l'ensemble de la zone de comptage doit être mis à jour avec 55 sélection initial pour le canal 5 associé doit être introduit dans une séquence longue. les données transférées de SCSI à SCS2 chaque fois que l'infor-
Le fonctionnement de l'unité de canal sera décrit en se réfé- mation de canal 5 est ensuite chargée dans SCSI au cours de ses rant à une instruction typique «mise en route entrée/sortie libé- cycles de décalage normaux. Lorsque les circuits CICL 432 dans ration rapide» (SIOF). Comme conditions initiales, tous les ca- la logique 757 détectent l'état de sélection initial d'un canal naux, 16 dans le présent exemple, sont inactifs et doivent être 60 quelconque, ils entraînent un accès de mémoire tampon de canal mis à l'état initial par le chargement de programme initial (IPL) (CBS) afin d'obtenir une adresse de dispositif et un ordre et de ou, d'une autre façon, par un ordre de remise à l'état initial. les diriger vers l'interface physique correct et le dispositif de
Avec le chargement de programme initial effectué, des instruc- commande entrée/sortie convenable en utilisant la logique d'in-
tions sont chargées dans la mémoire principale et des instruc- terface à distance 407 de la figure 3.
tions sont recherchées et traitées par l'unité I. En tant que partie «s En admettant que le premier ordre consiste à transférer du chargement de programme initial, toute instruction entrée/ l'information de l'unité de commande à la mémoire principale,
sortie telle que SIOF règle dans la mémoire une séquence d'or- le CICL manipule les lignes de commande et le LCS en provo-
dres de canal qui constitue en fait un programme de canal. De quant le transfert de données des dispositifs de commande en-
19
629 320
trée/sortie vers le LCS. Le CICL, par l'intermédiaire de la logique de commande 757 et du câblage de sortie 780 vers l'étage de canal approprié SCS4 ou SCS12, maintient un enregistrement des emplacements de LCS qui contiennent les données transférées. Lorsqu'un quantité sufficante de données a été re-- cueillie dans le LCS, le DACL reconnaît la nécessité d'un transfert de la mémoire principale en observant l'état de canal 5 alors qu'il apparaît dans le SCS2. En ce point, le DACL provoquera un transfert de données de LCS vers la mémoire principale.
Lorsque le mot d'ordre de canal a été obtenu à partir de l'unité I de la figure 1, il est transmis sous la commande du OCL par l'intermédiaire du câblage 394 vers le registre de travail (WR) 466 à la fiure 3. A partir de ce dernier, il est transmis par le manipulateur de données 405 au câblage 425 sans modification et il est verrouillé dans le registre DMOR 437. De là, il est verrouillé dans le registre DHR 439 et mémorisé dans la mémoire de canal locale 406. De la sorte, la zone de comptage à 16 bits est mémorisée à l'origine dans la mémoire de canal 406.
Lorsque la zone de comptage provenant du mot d'ordre de canal est dirigée à partir du registre WR 466, elle traverse l'additionneur 483 dans le manipulateur de données de la figure 4 et apparaît sans modification sur le câblage 492. Sur ce dernier, les 5 bits de rang inférieur sont extraits et chargés dans le registre BBCR 470. De là, la valeur initiale du nouveau BBC est dirigée vers le registre OCLRR 467 à la figure 5.
En même temps, dans le manipulateur de la figure 4, les 11 bits de rang supérieur de la zone de longueur de transfert totale sont appliqués comme entrée au calculateur EX 471 où les bits de rang supérieur sont combinés suivant une logique OU pour former le nouveau signal EX initial sur la ligne 418, qui est également mémorisé dans le registre BBCR 470 et transféré au registre OCLRR 467. A partir de ce dernier, les nouvelles valeurs initiales de EX et BBC sont dirigées par la logique 725 dans SCS2 lorsque SCSI contient le numéro de canal approprié.
A titre d'exemple typique, on admettra un comptage total de 36 multiplets. Dans la zone de comptage à 16 bits, les 11 bits de rang supérieur comprennent dix 0 de rang supérieur suivis par un 1 et les 5 bits de rang inférieur sont 00100. Le comptage apparaît en notation binaire comme 100100 précédé par dix 0 de rang supérieur.
Avec l'exemple typique qui précède, le nouveau BBC initial mémorisé dans SCS2 par le OCL est 00100. La valeur mémorisée dans SCS2 pour le nouveau bit EX initial est 1, étant donné que les 11 bits de rang supérieur ne sont pas de 0.
Avec les nouveau BBC initial et le nouveau EX initial mémorisés dans SCS2, le DAC1 est prêt à commencer un transfert de 36 multiplets de données chaque fois que le canal numéro 5 obtient la priorité, pour l'utilisation du DACL. Lorsque le canal 5 obtient la priorité, le BBC et le EX pour le canal 5 dans SCS2 sont dirigés vers le registre d'action 736. Dans ce dernier, le BBC et le EX sont alors traités comme l'ancien BBC et l'ancien EX et sont examinés dans la logique d'action 739. En admettant le cas habituel d'une longueur de transfert effective TL de quatre multiplets, la valaeur 100 de TL est comparée avec le BBC dans le registre 736 par la logique 739. Etant donné que BBC avec une valeur de 00100 est égal ou supérieur à la valeur de TL qui est 100, la logique d'action 739 demande une séquence courte. Cette dernière est identifiée dans le diagramme I ci-après.
Diagramme - Séquence courte
Cycles Canal à Unité S Cycles Unité S à canal
1 et 2 Rechercher adresse 1 et 2 données
3 et 4 Rechercher données 3 et 4
5 et 6 Mémoriser adresse 5 et 6 données
7 et 8 «pas utilisé» 7 et 8
Rechercher adresse données «pas utilisé» Mémoriser adresse données
Mémoriser données
En effectuant le transfert en séquence courte de données de la mémoire de canal vers l'unité de mémorisation, l'adresse de données dans la mémoire de canal doit d'abord être atteinte à partir de la mémoire de canal et placé dans le registre d'adresse 5 d'unité d'emmagasinage 464 de la figure 3 au cours du cycle 3. Chaque accès de la mémoire de canal exige deux cycles. Ensuite, les données elles-mêmes doivent être recherchées à partir de la mémoire de canal en utilisant l'adresse dans le registre 467 au cours du cycle 3. L'adresse est établie en ajoutant le numéro de io canal provenant du registre d'adresse 739 à la zone DACLP dans le registre 736. Si l'adresse était 100 et TL était 4, l'adresse devient 104. Les données auxquelles on a accès sont sorties sur le câblage 421 et mémorisées dans le registre 468, à partir duquel elles sont transférées au registre 465 et sorties vers l'unité 15 de mémorisation par l'intermédiaire du câblage 358. Finalement, l'adresse de données modifiée qui identifie le multiplet suivant à transférer est remémorisée dans la mémoire de canal locale 406. L'adresse 104 (100 + TL(4) = 104) a été ajoutée par le manipulateur de données 405. Au cours du cycle 3, l'an-20 cienne adresse de données dans WR 466 est ajoutée à TL dans CHDM 405 et chargée dans DMOR 437 et DHR 439 au cours du cycle 5 et ensuite dans LCS 406. Une séquence semblable est utilisée pour un transfert d'information de l'unité de mémorisation à la mémoire de canal locale 406.
25 Pendant la courte séquence précitée identifiée dans le diagramme I, un transfert de quatre multiplets a lieu entre l'unité de mémorisation et l'unité de canal. Par conséquent, la valeur IL de 100 peut être soustraite de la zone de comptage totale initiale pour former la zone de comptage restante. La valeur TL 30 de 100 est soustraite de la valeur BBC 00100 dans le multipula-teur de données et donne un résultat de 00000 qui est le nouveau BBC.
On remarquera qu'étant donné que le BBC initial était 100, la soustraction de 100 de IL a été effectuée sans avoir besoin 35 d'une retenue à partir de la zone de rang supérieur. Par conséquent, l'ancien bit EX reste valable et est sélectionné pour devenir le nouveau bit EX. Par conséquent, le nouveau EX est égal àl.
Après soustraction de 100 de BBC, le nouveau BBC est 40 00000. Ce nouveau BBC est évidemment mémorisé dans le registre R1R 737 et ensuite dans le registre R2R 741 de la figure 6 et il est transféré au SCS2, ce qui achève donc momentanément l'utilisation du DACL par le canal 5.
Lorsque le numéro de canal dans SCSI correspond à celui 45 dans RR2 741, le DACL charge le nouveau BBC, le nouvel indicateur DACL (à présent égal à 4) et le nouveau ADB dans SCS2. ADB et DACLP sont ajustés (diminué et augmenté, respectivement) en utilisant le TL dans RR2 741.
Avec le nouveau EX et le nouveau BBC mémorisés dans so l'étage SCS2, la mémoire d'état continue à circuler jusqu'à ce que le canal 5 réapparaisse dans SCS2 et obtienne la priorité pour l'utilisation du DACL. Etant donné que le transfert total de 36 multiplets n'a pas eu lieu, le canal 5 recevra à nouveau pendant un certain temps la priorité de la part de la logique de 55 priorité 734 à la figure 6. Lorsque le canal 5 obtient la priorité, le numéro de canal 5, une nouvelle valeur TL de quatre multiplets, le BBC à présent ancien (00000) et l'ancien EX (1) sont dirigés dans le registres d'organisation 735. Si la logique d'action est inactive, le registre SR 735 sera transféré au registre 60 d'action 736. L'ancien BBC (00000) et le bit EX (1) sont dirigés vers le manipulateur de données sur les câblages 460 et 457, respectivement.
Dans le présent cas, la valeur de TL égal à 100 ne peut pas être soustraite de l'ancien BBC égal à 00000 sans une retenue à 65 partir des bits de rang supérieur qui sont connus comme existants, parce que EX est 1. Par conséquent, une séquence longue doit être suivie afin de soustraire convenablement la longueur de transfert effective (100) du comptage restant (100000) au
629 320
20
quel on est arrivé comme toujours en enchaînant les 11 bits de rang supérieur du mot de comptage dans LCS avec la zone BBC de SCS. La séquence longue est resumée dans le diagramme II ci-après:
Diagramme II — Séquence longue
Cycles Canal vers unité S Cycles Unité S vers canal
I et 2 Rechercher adresse 1 et 2 Rechercher adresse données données
3 et 4 Rechercher données 3 et 4 Rechercher comptage 5 et 6 Rechercher comptage 5 et 6 Mémoriser adresse données modifiée
7 et 8 Mémoriser adresse 7 et 8 Mémoriser comp-
données modifiée tage modifié
9 et 10 Mémoriser comp- 9 et 10 Mémoriser données tage modifiée
Comme dans une séquence courte, l'adresse est recherchée dans la mémoire de canal locale. Elle est à présent 104. L'adresse modifiée sera 10 + TL(4) = 108 et elle sera remémorisée dans LCS.
Dans la séquence longue du diagramme II ci-avant, les deux étapes supplémentaires de recherche de comptage et mémorisation de comptage modifié sont ajoutées. Pendant l'étape de recherche de comptage, la zone de compage totale, y compris les
II bits de rang supérieur, est recherchée dans la mémoire de canal locale et dirigée vers le registre 468, à partir duquel elle est transférée au registre de travail 466 au cours du cycle 7.
Dans le manipulateur de données de la figure 4, les 11 bits de rang supérieur provenant du registre 466 (1 précédé par dix 0) sont enchaînés avec les bits de rang inférieur (qui constituent l'ancien BBC de 00000 sur le câblage 460) et sont appliqués comme entrée à la connexion de droite de l'additionneur 483. Conjointement, la valeur TL de 100 est appliquée comme entrée à la connexion de gauche de l'additionneur 483 et l'entrée de gauche est soustraite pour former le résultat sur le câblage 492. Lorsque 100 est soustrait de 100000, le résultat sur le câblage 492 est 011100.
Le nouveau BBC est 11100 et le nouveau EX est 0. Etant donné que dans l'exemple particulier choisi, tous les 11 bits de rang supérieur sont 0, le nouveau bit EX est à présent réglé à 0. Les 11 bits de rang supérieur du nouveau comptage sont chargés dans DMOR 437 et dans DHR 437 au cours du cycle 9 et dans LCS. Le nouveau EX égal à 0 et le nouveau BBC égal à 11100 sont mémorisés dans les registres de résultat 737 et 741.
Lorsque le canal 5 apparaît à nouveau dans SCSI, une comparaison est effectuée dans la logique de résultat 740 et le nouveau EX ainsi que le nouveau BBC sont mémorisés dans SCS2. L'information dans SCS2 continue à circuler dans la mémoire d'état jusqu'à ce que la logique de priorité 734 détermine à nouveau que le canal 5 a la priorité. A ce moment, le numéro de canal 5, le BBC(lllOO) à présent ancien et l'ancien EX(0) sont appliqués comme entrée au registre d'action 736. La logique d'action 739 détermine que l'ancien BBC(11100) est supérieur à la longueur de transfert effective 100, de telle sorte qu'une séquence courte est demandée.
La séquence courte est répétée comme indiqué dans le diagramme I ci-avant. Quatre multiplets de données sont transférés de la mémoire de canal à l'unité de mémorisation tandis que le manipulateur de données à grande vitesse soustrait 100 de l'ancien BBC 11100 pour former le nouveau BBC égal à 11000. A partir de ce moment, la valeur 0 pour le bit EX ne change plus, étant donné qu'aucune retenue n'est nécessaire à partir de l'ancien BBC.
L'opération se poursuit avec une séquence courte jusqu'à ce que le nouveau BBC ait été réduit à 00000. Etant donné que EX est également différent de 0 à ce moment, DACL et OCL
peuvent tous deux déterminer que le transfert de données est achevé. Le CICL termine le transfert des données et transfère ensuite la commande au OCL après avoir reçu l'état (de l'unité de commande).-Après la manipulation d'état, le OCL remet la s commande au CICL et achève la séquence pour mettre le canal inactif.
Lorsque toutes les données ont été transférées, le OCL note ce fait et amène la logique de résultat 725 à fonctionner sur l'état de canal de telle sorte que le canal 5 devienne inactif. Par io après, le canal 5 est à nouveau disponible pour transférer une information du dispositif de commande entrée/sortie vers l'unité de mémorisation.
Bien que l'exemple qui précède ait été donné à propos d'un seul canal, à savoir le canal 5, il est évident qu'alors que les 15 différentes parties de la logique de commande de canal travaillent sur le transfert du canal 5, elles peuvent agir simultanément sur d'autres canaux. Par exemple, alors que la logique d'état 428 est occupée avec le canal 5, la logique OCL 429 peut travailler sur l'information de commande associée à quelqu' autre canal 20 tandis que, simultanément, la logique DACL 430 peut traiter un troisième canal et le CICL un quatrième canal. Alors que chaque partie de la logique de commande de canal 403 devient disponible, elle accepte une entrée de l'état de canal de décalage (SCS) et commence à traiter un canal approprié.
25
La logique de commande d'interface de dispositif de commande 432 (CICL) est un calculateur à système de liaison qui déplace des données entre la mémoire de canal locale (LCS) et les dispositifs entrée/sortie.
30 Pendant une instruction de démarrage entrée/sortie, la logique de commande d'opération met en action le CICL en modifiant la zone d'état de transfert global (GTS) de l'état de canal de décalage (SCS). Le CICL répond en amorçant la séquence de sélection initiale, une séquence de travail, qui est alors une sé-35 quence de terminaison. Entretemps, le OCL contrôle l'opération en examinant les modifications que le CICL effectue dans l'état de canal de décalage.
Le OCL intervinedra alors que les états de fin de canal et de fin de dispositif sont reçus à partir du dispositif. Lorsque l'état 40 de fin de canal est reçu, le CICL établit un nouvel état GTS dans l'état de canal de décalage. Ceci empêche une action supplémentaire dans le CICL, jusqu'à ce que OCL traite l'état et libère le CICL en modifiant le GTS pour une nouvelle valeur. Le CICL reconnaît le nouvel état GTS et poursuit le traitement. La 45 manipulation de l'état de fin de dispositif est semblable.
De même, le OCL contrôle les opérations du CICL en ce qui concerne des erreurs. Si le CICL détecte une vérification de commande d'interface ou une vérification de commande de canal, il établira une valeur d'erreur dans la zone de terminaison so inhabituelle du SCS. Le OCL détectera cette zone d'erreur dans SCS et provoquera la mémorisation d'un mot d'état de canal (CSW).
Les 11 séquences d'interface pouvant être exécutées par le CICL 432 sont définies dans «IBM SYSTEM/360 and SYS-55 TEM/3701/0 INTERFACE CHANNEL to CONTROL UNIT ORIGINAL EQUIPEMENT MANUFACTURERA INFORMATION» (formulaire numéro Ga22-6974).
Pour exécuter les séquences CICL, le CICL utilise la mémoire de canal locale (LCS), la logique d'interface à distance 60 (RIL) et l'état de canal de décalage (SCS).
Le LCS contient un tampon de données avec 32 emplacements de données pour chaque canal. Ces données sont envoyées à l'interface entrée/sortie lors d'une sortie. Lors d'une entrée, le tampon de données est utilisé en tant que mémoire 65 intermédiaire pour les données reçus à partir de l'interface entrée/sortie. La mémoire de canal locale (LCS) contient également les ordres de dispositif envoyés à l'unité de commande entrée/sortie sous la commande du CICL. De même, l'état reçu
21
629 320
à partir du dispositif entrée/sortie est mémorisé dans le LCS par le CICL.
La logique d'interface â distance fournit les parcours de données vers et à partir de la mémoire de canal locale (LCS)
pour les 16 interfaces de canal, le CICL offrant la commande 5 mais ne possédant pas des parcours de données. Les connecteurs d'interface entrée/sortie sont fixés au châssis RIL. Lors d'une entrée, des données (ou drapeaux) se déplaçant à partir de ces interfaces sont mémorisées dans le RIL puis envoyées au LCS sous la commande du CICL. Lors de la sortie, la circulation est 10 inversée.
Pour commander la circulation des données entre LCS et RIL, le CICL utilise l'information de SCS et RIL. Cette information est chargée dans un registre d'organisation d'entrée ; le traitement CICL est effectué à partir de ce registre ; 15
Le traitement CICL ne prend qu'un cycle ; toutefois, une seule étape est exécutée dans la circulation. Etant donné qu'il faut de nombreuses étapes pour exécuter l'une quelconque des 11 séquences, les opérations CICL prennent de nombreux cycles de machine. 20
Le CICL et la logique d'interface à distance (RIL) travaillent conjointement à la manière d'un calculateur à système de liaison.
Le système de liaison est mis en route lorsque CICL envoie une impulsion de synchronisation au dispositif de séquence de 25 RIL. Ce dispositif de séquence commence à émettre des impulsions échantillonage (S), bord (E), commande (C) et câblage (B). Les impulsions dirigent les informations à partir de l'interface entrée/sortie dans le RIL.
Pendant les quatres premiers cycles de la liaison CICL-RIL, 30 des drapeaux à l'entrée sont échantillonnés et verrouillés dans le RIL. Les drapeaux en entrée sont recueillis simultanément à partir d'une paire de canaux haut/bas avec des numéros de canaux écartés de huit unités, par exemple 0-8,1-9, etc.
Alors que les drapeaux en entrée sont recueillis, si service en 35 entrée ou données en entrée sont présents, un verrou de bord de tête sera réglé dans le RIL. Les bords de tête ou avant dans RIL sont envoyés au CICL et indiquent à celui-ci que des données sont requises par un dispositif entrée/sortie.
La logique de priorité dans le CICL examine les bords 40 avant. Si aucun des canaux ou les deux canaux de la paire haut/ bas possèdent un bord avant, le CICL donnera la priorité au canal qui n'a pas reçu de service pendant la plus longue période de temps.
La sortie de la logique de priorité est un signal utilisé pour 45 sélectionner soit le canal de numéro supérieur, soit celui de numéro inférieur. Ce signal de sélection est envoyé au registre de décalage de sélection haut/bas.
Le registre de décalage de sélection haut/bas contient 8 étages et conserve uniquement le fait que le canal de numéro le 50 plus élevé ou celui de numéro inférieur a été sélectionné par les circuits de priorité. A chaque cycle, le signal conservé est décalé vers l'étage suivant du registre de décalage. Alors qu'un canal sélectionné se déplace à travers le système de liaison, le décalage de sélection haut/bas produit des signaux de porte pour com- 55 mander le CICL et le RIL.
La première commande à partir du registre de décalage de sélection haut/bas introduit l'information d'état de canal de décalage (SCS) dans le registre d'organisation d'entrée de CICL (CICLIS). Chaque information d'état de canal se trouve dans le so SCS et parmi les deux canaux pouvant recevoir un service, l'un se trouve dans SCS2 et l'autre dans SCS A.
En même temps, une information d'état est chargée dans CICLIS, le registre de décalage de sélection haut/bas dirige également les drapeaux en entrée des canaux sélectionnés et l'infor-65 mation de réaction de drapeau de sortie (provenant de RIL)
dans le CICLIS pour le traitement.
Le traitement dans le CICL n'occupe qu'un cycle (cycle P).
La logique de traitement détermine:
1) la nouvelle information d'état pour illustrer quelle étape de canal suit pour l'opération en cours ;
2) les nouveaux drapeaux de sortie à transférer à la logique d'interface à distance (RIL), et
3) les exigences pour l'écriture ou la recherche de mémoire de canal locale (LCS).
Pendant le traitement, une nouvelle information d'état de canal est produite. L'information est signalée dans SCS lors du cycle qui suit le cycle P et ceci est effectué par un dispositif de conservation réglé à partir des circuits de priorité.
De même, au cours du traitement, s'il a été déterminé qu'une recherche est requise dans la mémoire LCS, une adresse est produite et chargée dans le registre d'adresse de mémoire de canal locale (LCSAR). Une opération de mémorisation pourrait consister à mémoriser un état de données et une opération de recherche pourrait consister à rechercher une adresse entrée/ sortie, un ordre ou des données. —
L'état ou les données à l'entrée parviennent dans RIL à partir des lignes de câblage d'entrée de l'interface entrée/sortie. Ces données (état/données) sont dirigées à travers les tampons de câblage entrée/sortie jusqu'à la prise de commande par le registre de décalage de sélection haut/bas et le dispositif de séquence RIL.
Alors que les données traversent le RIL, elles sont verrouillées dans le registre d'obtention de données de la logique d'interface (ILGDR). Un sélecteur de multiplet est utilisé pour redisposer si nécessaire les multiplets de données dans le ILGDR avant de les envoyer à la mémoire de canal locale (LCS).
Des données ou des ordres provenant de LCS sont placés dans le registre de placement de données de logique d'interface à 32 bits (ILPDR). Un sélecteur de multiplet à la sortie du ILPDR, envoie un multiplet au RIL. Pour une interface d'une largeur de deux multiplets, deux multiplets seraient sélectionnés et envoyés au RIL. Le registre de décalage de sélection haut/bas et le dispositif de séquence RIL fournissent les commandes de déclenchement nécessaires pour déplacer les données à travers les tampons de sortie (A et B) et les faire sortir vers les lignes de câblage de sortie d'interface entrée/sortie.
Chaque fois que le numéro de canal dans SCS2 est égal à 3 ou E, le dispositif de séquence RIL recevra une impulsion de démarrage. Le dispositif de séquence parcourerahuit cycles puis recevra une nouvelle impulsion de démarrage. Grâce à ce processus, le dispositif de séquence RIL fonctionne continuellement.
Lorsqu'un canal se trouve dans le cycle P, un opérande ADB est produit; l'opérande peut être vrai ou en complément. Des opérandes ADB vrais sont destinés à une opération normale. Les opérandes en complément sont destinés à des opérations de correction. L'opérande produit est ajouté au ADB dans CICLIS pour une nouvelle production de ADB. Si CICL ne transfère pas des données à un dispositif entrée/sortie, le ADB nouvellement calculé est négligé et le ADB dans SCS reste inchangé.
A la sortie ADB indique le nombre d'emplacements de multiplet qui sont vides dans les mémoires tampons de canal (CBS).
Lors d'une entrée, ADB est le nombre de multiplets se trouvant alors dans le CBS.
Chaque fois qu'un canal pénètre dans le cycle de processus (P), une décision est effectuée quant à:
rechercher les données dans le tampon de données CB A et les transférer aux tampons de sortie RIL ou, mémoriser les données à partir du dispositif entrée/sortie (dans ILGDR) dans le CBS ou encore,
ne faire ni une mémorisation CBS, ni une recherche CBS.
Si soit une mémorisation, soit une recherche a lieu, le tampon DACL disponible (ADB) doit être mis à jour et signalé dans l'état de canal de décalage (SCS).
629 320
22
Pour mettre à jour le ADB, le CICL calcule une zone de 5 d'organisation d'entrée CICL (CICLIS). Cette soustraction, par bits dénommée l'opérande ADB. Les bits sont numérotés de 0 à addition de complément, est dénommée une correction de
4. Lors d'une opération de sortie, l'opérande est égale au nom- ADB.
bre de multiplets transférés de la mémoire tampon de canal Une correction de ADB a lieu lorsqu'un dispositif entrée/
(CBS) aux tampons de sortie RIL. Lors d'une opération d'en- 5 sortie fait retomber opération en entrée ou état en entrée avant trée, l'opérande ADB est égal à la quantité de multiplets reçus à que le comptage CCW de canal ait atteint 0. Dans l'un et l'autre partir du dispositif entrée/sortie et envoyés à la zone de données cas, il peut y avoir des données dans le tampon de sortie RIL qui
CBS. n'ont pas été transférées au dispositif entrée/sortie. Etant donné
L'opérande ADB peut être sous forme vraie ou de compiè- que le ADB a été modifié (ce qui traduit un comptage erroné),
ment. Les opérandes vrais sont destinés à des opérations d'en- 10 une correction de ADB est nécessaire car le ADB est utilisé
trée et de sortie normales. Les opérandes en complément sont pour la production de CSW.
utilisés pour les opérations de correction. L'opérande ADB produit pour la correction peut être-1
Lors d'une sortie, une correction ADB est nécessaire lors- multiplet (11111), -2 multiplets (11110) ou -3 multiplets qu'un dispositif entrée/sortie descend opération en entrée ou (11101). Toutefois, les opérandes —2 et —3 ne sont produits que relève état en entrée avant que le comptage de canal CCW soit 15 quand on utilise un interface de deux multiplets. En outre, des
0. Dans ce cas, un opérande négatif est produit. Ceci sera expli- opérandes de complément ne sont produits que pour des opéra-
qué plus en détal ci-après. L'opérande ADB est ajouté à l'an- tions de sortie.
cien ADB dans CICLIS pour créer un nouveau ADB. La production du nouvel ADB a lieu dans un additionneur
CICLIS reçoit un ADB de SCS 2 ou A à chaque cycle par de 5 bits jumelé contenu sur une microplaquette-CL 29. L'addi-
l'intermédiaire du registre de décalage de sélection haut/bas. Ce 20 tionneur ne possède pas de commandes et effectue une simple
ADB est ajouté à l'opérande ADB produit par le CICL et resi- addition binaire des 5 bits de l'opérande ADB et des 5 bits ADB
gnalé à SCS4 ou C. Toutefois, pendant le traitement CICL, si à partir de CICLIS.
aucun transfert de données n'est requis, le ADB nouvellement Un nouvel ADB de canal est calculé au cours du cycle de calculé ne sera pas utilisé et au contraire un circuit de sélection traitement de canal (P). De même, pendant le cycle suivant choisi le ADB de SCS 3 ou SCSB. 25 (CTS/DIS), le nouvel ADB est renvoyé au SCS.
La sélection est basée sur le fait que le canal que CICL traite Un sélecteur est utilisé pour commander l'envoi du ADB au est venu de SCS 2 ou SCSA (SCS 10), ce qui a été déterminé par SCS. Comme expliqué précédemment, le nouvel ADB peut parle registre de décalage de sélection haut/bas pendant le cycle venir à SCS 4 ou C. Dans le cas d'une absence de transfert de câblage (B). Si le CICL a traité le canal dans SCS 2, le ADB données CICL, le ADB de SCS 3 est sélectionné au lieu du provenant de SCS 3 est dirigé dans SCS 4. Si le CICL a traité le 30 nouvel ADB de CICL.
canal dans SCSA, le ADB provenant de SCSB serait dirigé dans Le registre d'adresse LCS (LSCAR) peut recevoir des en-
SCS C. trées par la logique de commande d'opération (OCL), la logique
On définira à présent la production de l'opérande plus de commande d'accès de données (DACL), le pupitre et la logi-
ADB. Cet opérande est une quantité d'accroissement pour l'ad- que de dispositif de commande d'interface de canal (CICL). Le ditionneur de ADB et sera égal à + 1 multiplet (0001) ou + 2 35 OCL et le DACL passent par LCS à chaque cycle de machine multiplets (00010) lors d'un fonctionnement normal. Un opé- impair et CICL a accès à LCS à chaque cycle de machine.
rande de plus un est produit lors d'une entrée et d'une sortie, si Le fait d'effectuer une requête LCS pour mémoriser une un interface d'un multiplet est utilisé et qu'un multiplet de don- adresse entrée/sortie, mémoriser un état, rechercher une nées doit être transféré entre le tampon de données et le RIL. adresse entrée/sortie ou rechercher un ordre entrée/sortie est
Un opérande plus deux est produit, lors d'ime entrée et d'une 40 dénommé un accès de commande. L'accès de commande est sortie, uniquement si on utilise un interface de deux multiplets. effectué alors que l'état de transfert global (GTS) est égal à
CICL peut aussi produire un plus un pour un interface de deux n'importe quoi sauf les états de travail (66-77).
multiplets, comme dans le cas d'un comptage de multiplet im- On définira à présent la production des bits de LCSAR pour pair, lorsque le dernier multiplet est transféré de CBS à RIL. l'accès de commande.
Au cours du cycle de processus ou de traitement (alors que 45 Le bit 10 de LCSAR est chassé chaque fois que CICL a l'information de canal se trouve dans CICLIS), le ADB est ins- accès au LCS. Les bits 1-4 de LCSAR constituent le numéro de pecté. On détermine si l'opération est une entrée ou une sortie canal et proviennent du registre d'organisation d'entrée CICL.
et également quelle est la largeur du transfert de données. A Le bit 5 de LCSAR est chassé parce que GTS n'est pas égal à
partir de ceci, on détermine la nouvelle valeur ADB. travail pendant l'accès de commande. Le bit 6 de LCSAR est
Si ADB provenant de SCS était égal à 00111 et que l'opéra- 50 réglé si GTS est égal à 61 (recherche ordre).
tion concerne un transfert d'unmultiplet, le ADB sera fixé a Le bit 7 de LSCAR est chassé ou annulé si:
010 000. Ceci est réalisé comme suit: 1) GTS est égal â 01 (CICL recherche une adresse pour
1) Point A = plus à cause d'une opération de sortie arrêt entrée/sortie) ou
2) Point B = plus parce que le point A est moins et le point 2) GTS = 32 (CICL mémorise une adresse pour un disposi-C est moins (il ne s'agit pas d'un transfert de deux multiplets) 55 tif qui a présenté une requête en entrée) ou
3) Le point D sera plus parce que le point B est plus 3) GTS = 52 (CICL recherche une adresse entrée/sortie
4) Le point E sera moins parce que le point D est plus pour une sélection initiale) ou
5) Le point H sera plus parce que le bit 4 de ADB à partir de 4) GTS = 60 (CICL recherche une adresse entrée/sortie à SCS était réglé (point G) comparer à celle envoyée à partir d'un dispositif entrée/sortie
6) Le point H sera plus parce que point I sera moins, en eo ou annulant le bit 4 du nouveau ADB. 5) GTS = 61 (CICL recherche un ordre à envoyer à un
Si le ADB était égal à 00110,1e nouveau ADB sera égal à dispositif entrée/sortie).
00101. Ceci est réalisé comme pour le point 1-4 ci-avant et le Le bit 7 est réglé si GTS = 26,34,44 ou 64 (CICL mémo-
point H sera moins parce que le point G est plus. Ce ci amène le rise un état du dispositif entrée/sortie). Le bit 8 du LCSAR est point I à devenir plus. 65 annulé pour tous les accès de commande, parce que GTS n'est
Le CICL peut devoir soustraire à partir du ADB. Ceci est pas égal à travail.
réalisé en produisant un opérande ADB en complément. L'opé- Le bit 9 de LCSAR est réglé si l'opération est une écriture rande en complément est alors ajouté au ADB dans le registre vers LCS.
23
629 320
Le bit 10 de LCSAR est réglé par l'intermédiaire du circuit de marque d'écriture de multiplet 0 pendant tous les accès de commande, parce que GTS n'est pas égal à travail.
Le bit 11 de LCSAR est réglé si GTS est égal à 0,1,32,52 ou 60 (voir le bit 7 pour la description des états). Le bit 11 est 5 ■ réglé par l'intermédiaire des circuits de marque d'écriture de multiplet.
Des bits 12—13 de LCSAR sont annulés pendant les accès de commande par l'intermédiaire des circuits de marque d'écriture de multiplet 2 et de marque d'écriture de multiplet 3. Ils sont i0 annulés parce que GTS n'est pas égal à travail.
Le CICL se trouvera dans un transfert de données lorsque l'état de transfert global (GTS) est égal à travail (états 66-77). Le transfert peut être une entrée, avec un déplacement de données entrée/sortie vers la mémoire de canal locale (LCS), ou 15 être une sortie avec un déplacement de données du LCSAR vers un dispositif entrée/sortie. Pendant un transfert de données, le CICL effectue un accès de données vers LCS par opposition à un accès de commande. On se souviendra que pendant l'accès de commande, le GTS est différent de travail. 20
On définira à présent la production des bits de LCSAR pour l'accès de données.
Le bit 0 LCSAR est annulé chaque fois que CICL a accès à LCS.
Les bits 1 à 4 constituent le numéro de canal et proviennent 25 du registre d'organisation d'entrée CICL (CICLIS).
Le bit 5 est réglé parce que GTS est égal à travail (66—77).
Les bits 6 à 8 de LCSAR proviennent de l'indicateur ou pointeur CICL. L'indicateur CICL est produit sur la microplaquette CL 29 en ajoutant le tampon DACL disponible (ADB) à 30 l'indicateur de DACL.
Le bit 9 du LCSAR est réglé si l'opération est une écriture vers LCS.
Les bits 10 à 13 du LCSAR sont réglés par les circuits de marque d'écriture de multiplet (0-3). 35
Une requête de canal de numéro impair est effectué pendant des cycles pairs, CBS disponible est annulé, l'adresse produite est verrouillée et maintenue pendant un cycle, et LCSAR est ouvert à l'entrée pendant les canaux impairs du cycle CBSI.
Tous les canaux impairs pénètrent dans le cycle de traite- 40 ment CICL pendant un cycle de machine pair. Le bit de rang inférieur du générateur de numéro de canal détermine les cycles impairs-pairs. On se référera au générateur de numéro de canal pour des détails.
Lorsqu'un canal impair effectue une requête CBS, le verrou CBS disponible est annulé. Le canal impair ne peut pas entrer dans le LCSAR jusqu'au cycle de machine pair suivant (CICL n'a accès à CBS que pour les cycles pairs). Pendant ce temps, un canal pair se trouvera dans le cycle de processus ou de traitement, de telle sorte qu'il ne doit pas utiliser le LCSAR. Le canal de numéro pair est bloqué par l'annulation du verrou CBS disponible. Par conséquent, CBS disponible empêche les canaux pairs d'ouvrir à l'entrée LSCAR tout en permettant une ouverture d'entrée pour un canal impair vers LCSAR.
La production d'adresse pour un canal impair a lieu pendant le cycle P, est verrouillée pendant le cycle suivant (cycle impair) et dirigée dans le LCSAR lors du cycle suivant (cycle CBSI).
Une requête de canal de numéro pair est effectué pendant les cycles impairs; elle n'est pas admise si un canal de numéro impair a effectué une requête lors du dernier cycle ; elle produira une adresse LCSAR pendant le cycle P; elle ouvrira à l'entrée LCSAR avec l'adresse produite pendant le cycle suivant (CTS/ DIS) si CBS est disponible.
Les canaux de numéro pair se trouvent dans le cycle P pendant les cycles de machine impairs ; la production de bits LCSAR est effectuée pendant ce cycle. L'adresse produite est dirigée dans LCSAR lors du cycle suivant.
Etant donné que CICL a accès à LCS uniquement lors des cycles pairs, un seul canal peut avoir accès à LCS tous les deux cycles. Une requête de canal pair sera bloquée si une requête de canal impair est en cours.
La requête paire est bloquée par le verrou CBS disponible. Ce parcours est utilisé par tous les canaux de numéro pair. Comme expliqué pour la requête de canal impair, le verrou CBS disponible sera bloqué ou annulé à la suite d'une requête de canal impair et le LCSAR sera ouvert à l'entrée à partir des verrous de retard, qui contiendraient l'adresse LCSAR produite pour les canaux impairs.
Si aucune requête de canal impair n'est en cours, un canal pair ouvrira à l'entrée LCSAR un cycle après le cycle P (cycle CTS/DIS).
6 feuilles dessins

Claims (4)

  1. 629 320
    2
    REVENDICATIONS de telle sorte que les premier (430) et second (432,407) calcu-
    1. Installation de traitement de données, comportant des lateurs puissent identifier un canal qui est en cours de triate-appareils formant une mémoire d'installation (2,4) et au moins ment.
    une unité de canal (6) pour transférer des données entre des 5. Installation de traitement de données suivant la revendi-
    dispositifs entrée/sortie et la mémoire d'installation (2,4) sur 5 cation 4, caractérisée en ce que, dans ledit premier calculateur plusieurs canaux, caractérisée en ce que l'unité de canal (6) (430), certains (734,.735,736) des dits éléments sont aussi comprend agencés pour transférer le numéro de canal du quatrième em-
    — une mémoire de canal (406) destinée à mémoriser l'infor- placement aux moyens d'adresse (467) lorsque le premier calcu-mation comprenant les données à transférer sur les canaux, lateür (430) agit pour former une adresse de rang supérieur
    — une mémoire d'état de canal (SCS0, SCSI... SCS15) 10 dans ces moyens d'adresse (467) et en ce que, dans ledit second commune à tous les canaux, comportant plusieurs groupes (710) calculateur (432,407), certains (751,754,757) des dits élé-d'emplacements à raison d'un groupe pour chacun des canaux, ments coopèrent avec des éléments (752,753,756,776) pour chaque groupe (710) conservant l'information pour un canal transférer aussi le numéro de canal du quatrième emplacement associé différent, la mémoire d'état (SCS0, SCSI... SCS15) aux moyens d'adresse (467) lorsque le second calculateur (432, comportant pour chaque groupe (710) des premiers emplace- 15 407) agit de manière à former une adresse de rang supérieur ments (BBC) pour la mémorisation d'un comptage destiné à dans ces moyens d'adresse.
    désigner une longueur de transfert restante qui spécifie un nom- 6. Installation de traitement de données suivant la revendi-bre de mulitplets de données devant encore être transférés sur le cation 5, caractérisée en ce que le premier calculateur (430) est canal associé, des seconds emplacements (DACL) pour mémo- agencé pour transférer l'indicateur du second emplacement aux riser un indicateur destiné à définir un emplacement dans la 20 moyens d'adresse (467) afin de former une zone de rang infé-mémoire de canal (106) et des troisièmes emplacements (ABD) rieur dans ceux-ci et en ce que le second calculateur (432,407) destinés à mémoriser un nombre de disponibilité spécifiant les est agencé pour transférer une combinaison de cet indicateur emplacements restants dans la mémoire de canal (406), provenant du second emplacement et du nombre de disponibi-
    — un premier calculateur (430) commun à tous les canaux lité à partir du troisième emplacement pour former une zone de afin de commander le transfert des données entre la mémoire de 25 rang inférieur dans les moyens d'adresse (467).
    canal (406) et la mémoire d'installation (2,4), le premier calcu- 7. Installation de traitement de données suivant la revendi-lateur (430) comportant des éléments (734) connectés à la mé- cation 1, caractérisée en ce que, pour une opération de sortie, moire d'état (SCS0, SCSI... SCS15) pour donner accès aux dans ledit premier calculateur (430) certains (739 ...) des dits premiers, seconds et troisièmes emplacements pour chaque ca- éléments sont agencés pour commander le transfert des données nal, avec des éléments (739) destinés à transférer les données 30 à partir de la mémoire d'installation (2,4) vers la mémoire de entre la mémoire de canal (406) et la mémoire d'installation (2, canal (406), les éléments (740) destinés à modifier le nombre de 4) d'une première d'une première quantité de transfert, le pre- disponibilité dans le premier sens comportant des éléments pour mier calculateur (430) comportant des éléments (740,734—737, diminuer ce nombre, et en ce que dans le second calculateur 739-2,741,749) destinés à modifier le nombre de disponibilité (432,407), certains (757) des dits éléments sont agencés pour dans un premier sens d'ime quantité égale à la première quantité 35 transférer des données de la mémoire de canal (406) vers les de transfert, dispositifs entrée/sortie, les éléments (757,780) destinés à mo-
    —un second calculateur (432,407) commun à tous les ca- difier le nombre de disponibilité dans le second sens opposé au naux, destinés à commander le transfert des données entre la premier comportant des éléments pour augmenter ce nombre de mémoire de canal (406) et les dispositifs entrée/sortie, ce se- disponobilité.
    cond calculateur (432,407) comportant des éléments (751, 40 8. Installation de traitement de données suivant la revendi-754) connectés à la mémoire d'état (SCS0, SCSI... SCS15) cation 1, caractérisée en ce que, pour une opération d'entrée, le pour donner accès aux premiers, seconds et troisièmes emplace- second calculateur (432,407) comporte des éléments destinés à ments pour chaque canal, avec des éléments (407,438,439) commander le transfert de données des dispositifs entrée/sortie destinés à transférer les données entre la mémoire de canal vers lamémoire de canal (406), les éléments (757,780) destinés
    (406) et les dispositifs entrée/sortie d'une seconde quantité de 45 à modifier le nombre de disponibilité dans le second sens opposé transfert, ce second calculateur (432,407) comportant des élé- au premier comportant des éléments pour diminuer ce nombre ments (757,780) destinés à modifier le nombre de disponibilité de disponibilité, et en ce que le premier calculateur (430) com-dans un second sens, opposé au premier, d'une quantité égale à prend des éléments (789) destinés à transférer des données de la la seconde quantité de transfert. mémoire de canal (406) vers la mémoire d'installation (2,4), les
  2. 2. Installation de traitement de données suivant la revendi- so éléments (740) destinés à modifier le nombre de disponibilité cation 1, caractérisée en ce que la mémoire de canal (406) co- dans le premier sens comportant des éléments pour augmenter opère avec des moyens d'adresse (467) répondant aux premier ce nombre.
    (430) et au second (432,407) calculateurs, pour donner accès 9. Installation de traitement de données suivant la revendi-
    aux emplacements de cette mémoire de canal (406). cation 1, caractérisée en ce qu'elle est agencée de manière que la
  3. 3. Installation de traitement de données suivant la revendi- 55 première quantité de transfert soit différente de la seconde, cation 2, caractérisée en ce que chaque groupe d'emplacement 10. Installation de traitement de données suivant la revendi-de la mémoire d'état (SCS0, SCSI... SCS15) est constitué par cation 1, caractérisée en ce qu'elle comporte des éléments (467) un étage (710) d'un registre de décalage à plusieurs étages, destinés à attribuer un accès à la mémoire de canal (406) pour le chaque étage pouvant agir de manière à mémoriser une infor- premier (430) ou le second (432,407,404) calculateur en fonc-mation de commande pour un canal différent parmi les canaux 60 tion de la grandeur du nombre de disponibilité.
    et comportant des éléments pour faire avancer les étages du registre de décalage de telle sorte que l'information de com-
    mande pour chaque canal soit disponible pour les deux calculateurs (430 ; 432,407) à des moments différents. La présente invention concerne une installation de traite-
  4. 4. Installation de traitement de données suivant la revendi- 65 ment de données, comportant des appareils formant une mé-cation 3, caractérisée en ce que les étages du registre de dèca- moire d'installation et au moins une unité de canal pour transfé-lage comportent un quatrième emplacement destiné à mèmori- rer des données entre des dipocsitfs entrée/sortie et la mémoire ser un numéro de canal identifiant le canal associé à ces étages d'installation sur plusierus canaux.
    3
    629 320
    Dans la technique antérieure, des canaux ou voies ont été définis du point de vue architectural en tant que partie du système de traitement de données desservant des unités de commande associées aux dispositifs entrée/sortie (I/O) du système. Les canaux ont été des appareils indépendants et distincts possédant leur propre jeu d'ordres permettant aux dispositifs entrée/ sortie de lire et d'écrire des données tandis que le reste du système traite conrurrement des instructions qui ne sont pas nécessairement en rapport avec les dispositifs entrée/sortie. Chaque canal a possédé ses propres instructions dans la mémoire du système qui ont été recherchées et traitées sous la commande d'un programme de supervision.
    Des canaux sont généralement de trois types, à savoir sélecteur, multiplexeur de multiplet et multiplexeux de bloc sont en général associés à des dispositifs à grande vitesse, tandis que les canaux de multiplexeur de multiplet sont habituellement associés à des dispositifs à basse vitesse. De multiples dispositifs entrée/sortie sont connectés à un canal par l'intermédiaire d'une unité de commande. Les canaux de multiplexeur de multiplet et les canaux de multiplexeur de bloc permettent un transfert entrelacé de données à partir de multiples dispositifs reliés au même interface de canal physique.
    Bien que les canaux fonctionnent quelque peu indépendamment des instructions exécutées par le système de traitement de données, ce dernier maintient une commande de supervision sur les opérations des canaux et entrée/sortie. Les canaux sont par conséquent des organes de traitement d'information qui possèdent une certaine indépendance par rapport aux autres organes de traitement du système (par exemple l'unité d'instruction ou I) et augmentent par conséquent la simultanéité du traitement d'information par le système.
    Bien que les appareils de la technique antérieure aient travaillé de manière satisfaisante, il existe un besoin pour un appareil de canal ou de voie perfectionné qui rende plus efficace l'utilisation des technologies à grande vitesse modernes. Tandis que les dispositifs entrée/sortie travaillent à des vitesses relativement limitées qui limitent le taux de données maximum dans un canal, fréquemment à cause de limitations mécaniques, et alors que des circuits électroniques travaillent à des vitesses beaucoup plus élevées, ces circuits devraient d'une façon désirable être partagés par une multiplicité de dispositifs entrée/sortie afin d'utiliser plus efficacement leurs capacités de vitesse élevée. Dans les structures de canaux de la technique antérieure, pour lesquelles un appareil de canal a été attribué sur une base par canal, les circuits d'un canal n'ont pas été aisément partagés avec d'autres canaux.
CH701477A 1976-06-07 1977-06-07 Installation de traitement de donnees. CH629320A5 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/693,553 US4056843A (en) 1976-06-07 1976-06-07 Data processing system having a plurality of channel processors

Publications (1)

Publication Number Publication Date
CH629320A5 true CH629320A5 (fr) 1982-04-15

Family

ID=24785137

Family Applications (1)

Application Number Title Priority Date Filing Date
CH701477A CH629320A5 (fr) 1976-06-07 1977-06-07 Installation de traitement de donnees.

Country Status (8)

Country Link
US (1) US4056843A (fr)
AU (1) AU507901B2 (fr)
BE (1) BE855477A (fr)
CA (1) CA1097762A (fr)
CH (1) CH629320A5 (fr)
DE (1) DE2725522A1 (fr)
GB (1) GB1584104A (fr)
IL (1) IL52265A0 (fr)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4261033A (en) * 1977-01-19 1981-04-07 Honeywell Information Systems Inc. Communications processor employing line-dedicated memory tables for supervising data transfers
JPS586173B2 (ja) * 1978-01-20 1983-02-03 株式会社日立製作所 チャネル制御方式
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4437157A (en) 1978-07-20 1984-03-13 Sperry Corporation Dynamic subchannel allocation
DE2845218C2 (de) * 1978-10-17 1986-03-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen
US4293909A (en) * 1979-06-27 1981-10-06 Burroughs Corporation Digital system for data transfer using universal input-output microprocessor
FI76893C (fi) * 1980-09-29 1988-12-12 Honeywell Inf Systems Kommunikationsmultiplexer med dubbla mikroprocessorer.
US4426679A (en) 1980-09-29 1984-01-17 Honeywell Information Systems Inc. Communication multiplexer using a random access memory for storing an acknowledge response to an input/output command from a central processor
DE3041219C2 (de) * 1980-11-03 1983-11-03 Bruker Analytische Meßtechnik GmbH, 7512 Rheinstetten Vorrichtung zur Speicherung von Meßdaten
US4428043A (en) 1981-08-24 1984-01-24 Burroughs Corporation Data communications network
US4430710A (en) 1981-08-24 1984-02-07 Burroughs Corporation Subsystem controller
AU555632B2 (en) * 1982-03-12 1986-10-02 Honeywell Information Systems Incorp. Multiplexing central to peripheral control signals
US4519034A (en) * 1982-06-30 1985-05-21 Elxsi I/O Bus clock
JPS5947625A (ja) * 1982-09-13 1984-03-17 Fujitsu Ltd 入出力割り込み方式
US4604709A (en) * 1983-02-14 1986-08-05 International Business Machines Corp. Channel communicator
DE3431785A1 (de) * 1984-08-29 1986-03-13 Siemens AG, 1000 Berlin und 8000 München Schaltungsanordnung fuer einen nach dem warteschlangenprinzip arbeitenden steuerspeicher (fifo-speicher)
JPS62208153A (ja) * 1986-03-08 1987-09-12 Nec Corp 入出力バツフア装置
JPH0752420B2 (ja) * 1986-09-10 1995-06-05 株式会社日立製作所 入出力装置アドレス方式
US5016160A (en) * 1988-12-15 1991-05-14 International Business Machines Corporation Computer system having efficient data transfer operations
JPH0776950B2 (ja) * 1990-06-22 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理方法及び装置
CA2067599A1 (fr) * 1991-06-10 1992-12-11 Bruce Alan Smith Ordinateur personnel a connecteur pour bus maitre auxiliaire
US5465355A (en) * 1991-09-04 1995-11-07 International Business Machines Corporation Establishing and restoring paths in a data processing I/O system
US5367661A (en) * 1992-11-19 1994-11-22 International Business Machines Corporation Technique for controlling channel operations in a host computer by updating signals defining a dynamically alterable channel program
CA2201679A1 (fr) 1996-04-15 1997-10-15 Raju C. Bopardikar Stockage de donnees video
GB2312319B (en) 1996-04-15 1998-12-09 Discreet Logic Inc Video storage
GB2374749B (en) * 2001-04-20 2005-04-06 Discreet Logic Inc Image data processing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3432813A (en) * 1966-04-19 1969-03-11 Ibm Apparatus for control of a plurality of peripheral devices
US3526878A (en) * 1967-03-27 1970-09-01 Burroughs Corp Digital computer system
US3675209A (en) * 1970-02-06 1972-07-04 Burroughs Corp Autonomous multiple-path input/output control system
US3673576A (en) * 1970-07-13 1972-06-27 Eg & G Inc Programmable computer-peripheral interface
US3934232A (en) * 1974-04-25 1976-01-20 Honeywell Information Systems, Inc. Interprocessor communication apparatus for a data processing system

Also Published As

Publication number Publication date
BE855477A (fr) 1977-10-03
AU2591277A (en) 1978-12-14
DE2725522A1 (de) 1977-12-22
AU507901B2 (en) 1980-02-28
US4056843A (en) 1977-11-01
CA1097762A (fr) 1981-03-17
GB1584104A (en) 1981-02-04
IL52265A0 (en) 1977-08-31

Similar Documents

Publication Publication Date Title
CH629320A5 (fr) Installation de traitement de donnees.
CH629319A5 (fr) Installation de traitement de donnees.
EP0030504A1 (fr) Dispositif de synchronisation et d'affectation de processus entre plusieurs processeurs dans un système de traitement de l'information
EP0029131B1 (fr) Procédé de commande de l'affectation de ressources dans un système comportant plusieurs processeurs à fonctionnement simultané
EP0032863B1 (fr) Procédé et dispositif pour gérer les conflits posés par des accès multiples à un même cache d'un système de traitement numérique de l'information comprenant au moins deux processeurs possédant chacun un cache
FR2513407A1 (fr) Systeme d'arbitrage des demandes d'acces de plusieurs processeurs a des ressources communes, par l'intermediaire d'un bus commun
CH616251A5 (fr)
EP0109898B1 (fr) Unité de stockage temporaire de données organisée en file d'attente
FR2632096A1 (fr) Systeme de microcalculateur a bus multiple avec arbitrage d'acces aux bus
FR2480458A1 (fr) Dispositif pour transferer des informations entre des unites d'un systeme de traitement de donnees
FR2519442A1 (fr) Systeme d'attribution de l'acces a un bus utilise en mode partage
FR2517442A1 (fr) Dispositif d'interruption pour un systeme de multitraitement, procede pour sa commande et systeme pour sa mise en oeuvre
EP0005722A1 (fr) Système de sélection de circuit d'interface prioritaire
EP0063972A1 (fr) Procédé et dispositif d'allocation d'une ressource dans un système comportant des unités de traitement de données autonomes
FR2486290A1 (fr) Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire
CN100437472C (zh) 流水线异步指令处理器电路
FR2539260A1 (fr) Systeme de transmission de donnees
FR2647923A1 (fr) Processeur de donnees
FR2809508A1 (fr) Systeme et methode de gestion d'une architecture multi-ressources
CH621201A5 (fr)
FR2536884A1 (fr) Reseau de transfert de donnees entre plusieurs processeurs et une memoire
EP0027851A1 (fr) Système pour commander la durée de l'intervalle de temps entre blocs de données dans un système de communication calculateur à calculateur
EP0435718B1 (fr) Processeur à plusieurs unités microprogrammées avec mécanisme d'exécution anticipée des instructions
FR2759178A1 (fr) Circuit de gestion de memoire dans un environnement multi-utilisateurs avec requete et priorite d'acces
FR2645297A1 (fr) Ordinateur de transfert avec un trajet de derivation pour le renvoi de donnees a une source de commandes

Legal Events

Date Code Title Description
PL Patent ceased