Brevet FR2366634A1 — publié le 19780428

La presente invention concerne une unité de mise en mémoire et de transmission servant à manipuler des signaux de données du type texte dans le cadre d'une organisation de télécommunications qui peut comporter des capacités de reproduction de documents imbriquées avec des fonctions de traitement de textes et dans laquelle le traitement de texte peut être répété pour plusieurs unités destinataires. Le traitement des textes et ltedition automatique commencent à devenir une technique élaborée L'exécution par des ordinateurs d'un tel traitement de texte est très répandue du fait des considérations coûtperformances. Dans le passé, de nombreux systèmes de traitement de texte utilisant de nombreux types différents d'unités de traitement ont utilisé un code de commande de texte particulier commun à un tel groupe d'unités diverses. Plusieurs fabricants d'équipements de traitement de texte ont des caractères de commande de texte indépendants différents, incompatibles, qui offrent de plus grandes ressources pour leurs appareils et produits respectifs que celles qui seraient offertes dans des types différents d'appareils et de produits. Compte-tenu de la diversité des types d'appareils de traitement de textes et avec l'apparition de réseaux de télécommunications perfectionnés, la probabilité que des types divers d'appareils et de systèmes de traitement de texte utilisant des caractères de commande de texte incompatibles doivent être interconnectês devient de plus en plus grande et dans de nombreux cas économiquement désirable. En d'autres termes, un premier système de traitement de texte situé à un emplacement A peut désirer fournir des signaux de texte, par l'intermédiaire d'un réseau de telle communications, à un second système de traitement de texte situe à un emplacement B. Les deux systèmes de traitement de texte peuvent nécessiter l'emploi de divers types de caractères de commande de texte.Si la connexion est seulement une connexion entre deux points fixes, une unique procédure de traitement de texte est nécessaire pour transférer les signaux de texte entre les deux emplacements. Cependant, dans de nombreux réseaux de télécommunications, plusieurs systèmes de traitement de texte de ce type peuvent être interconnectés conformement à des protocoles de commutation prédéterminées. L'emploi d'une grande diversité de caractères de texte peut être nécessaire; par conséquent, si l'empla- cement A désire transmettre des signaux de texte à quatre systèmes de traitement de texte récepteurs différents, le traitement de texte peut devoir être répété jusqu'à quatre fois.Un tel traitement de texte répété sur le même texte réduit les performances de traitement de texte de l'unité émettrice, D'autres systèmes de traitement de texte peuvent être connectes à divers types d'équipements dont chacun peut nécessiter l'emploi de caractères de commande de texte différents. Par exemple, un générateur de caractères produisant une image au moyen d'un faisceau laser dans une machine de production de copies électrographiques peut nécessiter l'emploi d'une premier ensemble de caractères de commande de traitement de texte. Une machine à écrire automatique à cartes magnétiques peut nécessiter l'emploi d'un second ensemble de caractères de commande. Une voie de télécommunications du type à synchronisation d'octets (Bysync) peut nécessiter l'emploi d'encore un troisieme type de caractères de commande de texte. D'autres connexions avec encore d'autres appareils peuvent nécessiter l'emploi d'autres ensembles de caractères de commande de texte. Si un unique texte doit-être transmis à plusieurs systèmes d'utilisation de ce type, un nouveau traitement du même texte pour chacune des unités destinataires réceptrices, ou systèmes de traitement de texte est nécessaire. Si l'on admet qu'il est désirable de réduire le coût du produit, de tels traitements répétés réduisent considérablement les performances du système de traitement de texte. Par conséquent, il est extrêmement désirable que les capacités de traitement de texte soient accrues tout en réduisant au minimum le coût du produit. De ce fait, l'un des buts de la présente invention est de réaliser un procédé pour faire fonctionner une unité de mise en mémoire et de transmission au type unité de traitement de texte grâce auquel le traitement répété du même texte destiné à plusieurs unités destinataires différentes est évité. Un procédé selon la présente invention vise à commander le fonctionnement d'un dispositif de mise en mémoire et de transmission pour fournir des signaux à une ou plusieurs unités destinataires différentes lorsque les unités destinataires nécessitent l'emploi de formats de signaux différents. Le dispositif de mise en mémoire et de transmission reçoit des signaux représentant des données ainsi que des signaux de commande imbriqués avec les signaux représentant des données pour indiquer les fonctions qui doivent être exécutées en ce qui concerne les signaux représentant des données. L'unité de mise en mémoire et de transmission met en mémoire les signaux représentant des données et analyse les signaux de commande reçus.De tels signaux de commande reçus sont modifiés par l'unité de mise en mémoire et de transmission par des substitutions et additions pour engendrer un ensemble entièrement nouveau de signaux de commande qui comprennent des fonctions de commande pour toutes les destinations possibles. Ensuite, l'unité de mise en mémoire et de transmission choisit une unité destinataire et transmet les signaux représentant des données avec les nouveaux signaux de commande tout en supprimant ceux des nouveaux signaux de commande qui ne sont pas utilisables ou ne sont pas reconnus par la station destinataire choisie en ce qui concerne les signaux représentant des données transmis. D'autres objets, caractéristiques et avantages de la présente invention ressortiront mieux de l'expose qui suit, fait en référence aux dessins annexés à ce texte, qui représentent un mode de réalisation préféré de celIe-c. La figure 1 est un schéma-bloc représentant la circulation des signaux dans un appareil mettant en oeuvre la présente invention. La figure 1A est un schéma-bloc d'un système de commande utilise pour faire fonctionner la machine représentée sur la figure 1. La figure 1B est un schéma d'une machine utilisant l'arrangement représenté sur la figure 1. La figure 1C est un schéma représentant le fonctionnement de la machine représentée sur les figures 1 a 1B pour traiter un texte confor mément à la présente invention. La figure 2 est un schémabloc représentant la circulation des données dans une unité de commande du système utilisée avec le système de commande représenté sur la figure 1A. Les figures 3A et 3B représentent les connexions logiques entre un microprocesseur de commande et un dispositif commandé à l'intérieur de l'unité de commande représentée sur la figure 2. La figure 4 est un schéma-bloc représentant la circulation des données dans un microprocesseur utilisable dans l'unité de commande représentée sur la figure 2. Les figures 5 et 6 sont des tableaux représentant les répertoires d'instructions et une exécution d'instructions d'ordinateur par le microprocesseur représenté sur la figure 4. La figure 7 est un schéma d'un espace d'adresses montrant l'interaction des deux microprocesseurs contenus dans l'unité de commande représentée sur la figure 2. La figure 8 est un schéma d'un appareil servant à interconnecter logiquement les bus de transfert de signaux de données utilisés dans l'unité de commande représenté sur la figure 2, et La figure 9 est un schéma logique représentant le fonctionnement de l'invention réalisée au moyen d'un système à circuits logiques fixes par opposition à un système programmable. Sur les dessins auxquels on se référera iii-il--oaé5 les mêmes références ont été utilisées pour désigner, dans les diverses figures, les mêmes éléments et caraçtéristiques structurales. La figure 1 représente un appareil mettant en oeuvre les enseignements de la présente invention.L'appareil est physiquement incorporé a la machine de production de copies représentée sur la figure 1B et décrite par référence a cette figure Sur la figure I un sous-système de commande du Système SCP 60 contient des programmes utilisant la présente invention pour adapter la machine 10 de production de copies représentée sur la figure 1B de façon qu'elle fonctionne comme une unité de mise en mémoire et de transmission. Le sous-système SCP 60 comprend le processeur de texte du système 60A, qui utilise un format de texte universel, ainsi qu'un adaptateur de transmission 60B qui, sous la commande du programme, connecte un connecteur de terminal éloigné RTC 17 au sous-systeme SCP 60.Le connecteur RTC 17 comporte un modem 17A et une voie de télécom- munications 17B pour communiquer avec d'autres unités (non représentées). En outre, le sous-système SCP 60 comporte un adaptateur d'enregistreur 60C pour connecter le sous-système SCP 60 a un terminal local LT 16 qui peut être une machine à écrire automatique a cartes magnétiques telle que l'une de celles fabriquées par la société International Business Machines Corporation, Armonk, N.Y. EUA. Le terminal LT 16 comporte un canal d'enregistrement 16A raccordé à un lecteur/enregistreur de cartes magnétiques 16B. En outre, le sous-système 60 comporte une mémoire de pages 64 qui est une mémoire a accès sélectif à semi-conducteurs. La mémoire 64 est connectée non seulement au processeur 60A mais également à un générateur d'images 12" pour former des images sur un tambour photoconducteur qui sera décrit ultérieurement en se référant à la figure 1B.Le générateur 12" comprend un processeur d'images 12BA et un générateur d'images proprement dit 12BB. Le processeur d'images 12BA reçoit des signaux représentant des images de la mémoire de pages 64 et les convertit pour les mettre sous une forme appropriée pour être utilisée par le générateur d'images 12BB pour engendrer une image optique désirée. Des signaux représentant des images du type texte peuvent être reçus soit par le connecteur RTC 17 soit par le terminal local LT 16. Le connecteur RTC et le terminal LT 16 ont chacun leur propre ensemble particulier de codes de commande qui ne sont pas compatibles entre eux. Les signaux représentant des images reçus, avec les codes de commande, sont transmis par les adaptateurs respectifs 60B, 60C au processeur de texte du système 6QA. Le processeur de texte 60A, conformément à la présente invention, analyse les caractères de code de commande et les modifie de manière à pouvoir utiliser le nouveau code modifié avec l'une quelconque des diverses unités destinataires possibles.De tels signaux représentent des images ayant été soumises à un traitement de texte sont mis en mémoire dans la mémoire de pages 64 en vue d'être utilisés par le dispositif d'entrée à laser 12. Si les signaux ayant été soumis à un traitement de texte doivent être conservés en vue d'une transmission ultérieure, de tels signaux soumis a un traitement de texte sont transférés de la mémoire de pages 64 a une mémoire rémanente NVS 19. Le processeur de texte du système 60A peut extraire les signaux mis en mémoire dans la mémoire NVS 19 en vue de leur retransmission à l'une quelconque des unités 16, 17 et 12" représentées. Dans une telle transmission, le processeur de texte du système 60A n'effectue pas à nouveau un traitement de texte des signaux.Au contraire, il analyse seulement les caractères de commande pour supprimer les caracteres indésires tout en convertissant simultanément les caractères de code d'un code en un autre, par exemple d'un code interne en code EBCDIC. Les figures 1A et 1B représentent une machine 10-de production de copies construite en utilisant les principes de la présente invention et qui peut être avantageusement utilisée dans le réseau de transmission d'images représenté sur la figure 1. La machine 10 de production de copies est construite autour d'une partie de production de copies CCP 13. La partie CCP 13 est représentée comme une partie de production de copies électrographique a transfert sans que l'invention soit, de ce fait, nécessairement limitée à une telle utilisation. Plusieurs moyens d'entrée d'images dans la partie CCP 13 sont prévues.De tels moyens d'entrée, désignés par la référence générale 12, comprennent une entrée optique a analyse des documents en communication avec un dispositif d'alimentation en documents semi-automatique SADF 11. Le dispositif d'alimentation SADF 11 comprend une platine transparente sur laquelle un document original peut être place manuellement en soulevant le couvercle (non représenté) du dispositif SADF Il soit par un dispositif d'alimentation en documents semi-automatique, le document provenant d'un plateau d'entrée non représenté. L'image optique du dispositif SADF Il est transmise à la partie de production de copies CPP 13 au moyen de techniques optiques connues couramment utilisées dans les machines à copier de bureau de plusieurs types. En outre, les moyens d'entrée optique d'originaux 12 comprennent un dispositif d'entrée à laser LI qui reçoit des signaux représentant des données de traitement de mots pour créer une image optique en tant qu'entrée d'image appliquée à la partie CPP 13 par une entrée commune 13 Les moyens 12 d'entrée optiques des originaux comprennent une unité de commande d'entrée optique OIC 12' des documents contenus dans le dispositif SADF 11 ainsi qu'une unité de commande du dispositif d'entrée a laser LIC 12-". Le dispositif d'entrée a laser peut recevoir des signaux de commande d'un terminal local LT 16 qui est un terminal de traitement de mots conçu pour recevoir des cartes magnétiques portant des signaux de traitement de mots dans une fente d'entrée 137 et pour éjecter de telles cartes par une fente de sortie 137A. Les signaux du terminal LT 16 sont temporairement mis en mémoire dans une memoire rémanente NVS 19. En outre, pour permettre des communications dans un réseau de transmission d'images, tel que représenté sur la figure 1, un connecteur de terminal éloigné RTC 17 assure la transmission des signaux entre la machine 10 et diverses unités eloignées, désignées collectivement par la référence 18. Sur les figures 1A et 1B, la référence 18 désigne le reste du réseau représenté sur la figure 1. Les signaux de traitement de mots provenant du terminal LT 16 ou du connecteur RTC 17 sont initialement stockes dans la mémoire NVS 19. L'unité de commande de la machine, a processeurs multiples, MPMC 15 effectue le transfert, a partir de la mémoire NVS 19, des signaux a l'unité de commande du laser LIC 12" pour engendrer une image qui doit être transférée à la partie de production de copies CPP 13, comme il apparaîtra plus clairement ci-après. Dans un mode de réalisation, les travaux d'impression reçus par le connecteur RTC 17 et par le terminal 16 sont exécutés alternativement. Un système de priorité pourrait être employé si désiré. La machine 10 de production de copies comprend également une partie de sortie des copies 14 comportant plusieurs dispositifs de réception des copies. Lorsque l'entrée laser LI 12 fournit des images a la partie CPP 13, les copies produites sont dirigées sur le dispositif de sortie 1485 comme on le décrira plus complètement ultérieurement. Lorsque le dispositif d'alimentation SADF 11 est utilisé, comme entrée des moyens optiques 12, la machine de production de copies 10 est dans ce qu'on appelle le mode de reproduction dans lequel les copies produites par la partie CPP13 sont dirigées soit dans un plateau 14A de sortie des copies soit dans une trieuse de copies 14C. Le dispositif de sortie 14B, dans un mode de réalisation qui a été construit, a été réservé aux copies produites dans le mode d'impression. L'unité de commande MPMC 15 commande toutes les unités de la machine 10 de production de copies. Les diverses unités directement commandées, telles que l'uni:c'é de commande LIC 12" de la mémoire NVS 19, le connecteur RTC 17 et le terminal LT 16 sont commandées par une paire de bus unidirectionnels appelés collectivement MIDI sur la figure 1A. Les autres unités sont celles qui sontliées à la production des copies et sont supervisées par 7'unité de commande MPMC 15.Les communications sont effectuées par un bus de commande d'entrée/sortie bidirectionnel 10C représenté raccordé à la commande des dispositifs de sortie de la machine à copier CEC 15A, a la commande de sortie de l'imprimante PEC 15B, a la partie CPP 13 et a la commande OIC 12U du dispositif SADF Les interactions des diverses unités de la machine 10 de production de copies apparaîtront a la lecture de la suite de la description. PARTIE DE PRODUCTION DE COPIES CPP 13 Avant de poursuivre plus avant la description de l'invention, on décrira le fonctionnement de la partie CPP 13 dans un mode de réalisation construit dans lequel elle est constituée par une machine de production de copies dite "machine xérographique". Un tambour photoconducteur 20 tourne dans le sens de la flèche en passant devant plusieurs stations de traitement xérographiques. La première station 21 applique une charge électrostatique, soit positive, soit négative, à la surface du photoconducteur 20. Il est préférable que cette charge soit une charge électrostatique uniforme sur une surface photoconductrice uniforme. Une telle charge est appliquée en l'absence de lumière de sorte que les images optiques projetées, indiquées par la flèche en traits mixtes 23, modifient la charge électrostatique portée par le photoconducteur en préparation du développement et du transfert de l'image. L'image optique projetée par le système optique 12 d'entrée des originaux expose la surface photoconductrice dans la région 22.La lumière de l'image projetée décharge électriquement les régions du photoconducteur, suivant sa luminosité. Dans le cas de la lumière minimale réfléchie par les régions sombres ou imprimées d'un document original, par exemple, il n'y a pas de décharge électrique correspondante. Il en résulte qu'une charge électrostatique reste présente dans les régions de la surface photoconductrice du tambour 20 qui correspondent aux régions sombres ou imprimées d'un document original contenu dans le dispositif d'alimentation en documents semi-automatique SADF Il ou de l'image créée. Cette configuration de charges est appelée une image "latente" formée sur la surface photoconductrice. La lampe 30E d'effacement entre les images décharge le photoconducteur 20 en dehors des régions d'image définies. La station xérographique suivante est la station de'développement 24 qui reçoit un révélateur (encre) d'une alimentation en révélateur 25 afin qu'il soit déposé et retenu sur les régions de la urface photoconductrice qui portent encore une charge électrique. La station de développement reçoit le révélateur qui a une charge électrostatique de polarité opposée à celle des régions chargées de la surface photoconductri ce. Par conséquent les particules de révélateur adhèrent électrostatiquement aux régions chargées mais n'adhèrent pas aux régions déchargées. Par conséquent, la surface photoconductrice après avoir quitté la station 24 porte une image révélée qui correspond aux régions claires et sombres d'un document original introduit dans le dispositif SADF 11. Ensuite, l'image latente est transférée au papier de copie dans la station de transfert 26. Le papier est amené a la station de transfert 26 suivant une partie de trajet d'entrée 27 du papier en passant par une porte d'entrée de synchronisation 28. Dans la station 26, le papier de copie est chargé et mis en contact avec l'image révélée portée par la surface photoconductrice ce qui provoque le transfert du révélateur au papier de copie. Après ce transfert, la feuille de papier de copie portant l'image est détachée de la surface photoconductrice pour être transportée le long d'un trajet 29. Ensuite, l'image portée électrostati quement par le-papier est fixée par fusion au papier dans la station de fusion 31 pour créer une image permanente sur le papier de copie.Au cours du traitement, le papier de copie reçoit des charges électrostatiques qui peuvent avoir un effet défavorable sur les manipulations des copies. Par conséquent, le papier de copie après fixation par fusion de l'image est électriquement déchargé à la station 32 avant son transfert à la partie de sortie 14. Pour ce qui est du photoconducteur 20 auquel on reviendra maintenant après que la région d'image du photoconducteur 20 a quitté la station de transfert 26, il subsiste une certaine quantité de révélateur résiduel sur la surface photoconductrice. Par conséquent une station de nettoyage 30 comporte des broses de nettoyage rotatives (non représentées) pour enlever le révélateur résiduel afin de nettoyer la région d'image, en préparation de la réception de l'image suivante projetée par le système optique 12 d'entrée des originaux. Le cycle alors recommence par la charge de la région d'image qui vient d'être nettoyée par la station de charge 21. La production de copies imprimées au recto (copies simplex) ou la production de la première face (recto) des copies imprimées recto/verso (copies duplex) par la partie CPP 13 comprend l'étape qui consiste à transférer une feuille de papier vierge de l'alimentation en papier vierge 35 à la station de transfert 26, au dispositif de fusion 31 et, dans le cas du mode simplex, directement la partie de sortie des copies 14. L'alimentation en papier vierge 35 comporte un interrupteur de détection de magasin vide 36 qui empêche le fonctionnement de la partie CPP 13 chaque fois que l'alimentation 35 est démunie de papier. Lorsque la machine fonctionne dans le mode duplex, la porte de déviation duplex 42 est actionnée par les circuits de commande du mode duplex (non représentés) à la position haute pour dévier les copies portant une seule image de façon qu'elles se déplacent sur le trajet 43 jusqu'a un dispositif de stockage intermédiaire SU 40. Les copies en duplex partiellement produites (ne portant une image que d'un seul côte) résident dans ce dispositif de stockage intermédiaire 40 en attendant le tirage d'une seule image immédiatement suivant au cours duquel les copies reçoivent la seconde image. De telles copies qui se trouvent dans le dispositif de stockage intermédiaire 40 sont dans un état de production de copie intermédiaire. Au cours du tirage d'une seule image immédiatement suivant, déclenché par l'insertion d'un document dans le dispositif SAOP 11, les copies sont retirées une à une du dispositif de stockage intermédiaire 40, transportées sur le trajet 44 puis sur le trajet 27 pour recevoir une seconde image, comme précédemment décrit. Les copies duplex portant deux images sont alors transférées a la partie de sortie des copies 14. L'interrupteur 41 du dispositif de stockage intermédiaire 40 détecte s'il y a ou non des copies ou du papier dans le dispositif aestocage intermédiaire 40. Dans l'affirmative, un signal d'état de production de copies intermédiaire est appliqué sur la igne 45 a des circuits de commande qui seront décrits ultérieurement. La machine de production de copies comporte un tableau de commande 52 qui comporte une série de boutons et voyants (dont la plupart n'ont pas été représentés) ainsi qu'un ensemble de circuits de commande de la machine a copier qui font fonctionner l'ensemble de la machine 10 en synchronisme avec le déplacement des régions d'image du tambour photscon- ducteur 20. Un compteur de facturation M compte les images traitées aux fins de la facturation. Par exemple, la porte 28 de libération du papier est actionnée en synchronisme avec le passage des régions d'image devant la station de développement 24. De telles commandes sont bien connues dans la technique et ne seront pas décrites ici pour plus de brièveté. Le fonctionnement de la machine décrite ci-dessus lorsque la présente invention est utilisée a été représenté sur le schéma de la figure 1C. Les détails de ces opérations seront donnés ci-après avec une description plus détaillée de la partie "ordinateur" de la machine 10 de production de copies. Le schéma de la figure 1C illustre le fonctionnement du processeur de texte du système 60A. Le texte reçu de l'une ou l'autre source de textes 16 ou 17 est tout'd'abord soumis a une analyse de texte à l'étape 54. Des contraintes de format de texte programmées dans le processeur de texte du système sont imposées à une telle analyse. De telles contraintes sont typiquement engendrées par les sources respectives 16, 17 au moyen d'un langage de commande de l'opérateur (OCL) transmis avec les signaux de commande représentant des données sous forme d'un ensemble de signaux contenu par exemple dans une carte en-tête. De telles contraintes de format de texte comprennent la margination, la tabulation, le choix d'une fente de caractères et autres contraintes qui sont toutes normalement utilisées dans le traitement des textes.L'analyse du texte comporte également une comparaison des caractères de commande reçus des sources 16, 17 avec les codes de commande disponibles. Ceci constitue une opération de consultation de tables en ce sens que tous les codes licites qui peuvent être reçus des sources 16, 17 sont indexés a tous les codes utilisables dans l'ensemble du système représenté sur la figure 1. Le processeur de texte du système qui est créé par un programme d'ordinateur ajoute remplace ou modifie d'une autre manière les caractères reçus conformément aux contraintes de format et aux codes de commande disponibles.Un exemple de telles modifications est donné dans le tableau I ci-dessous destiné à être utilise avec la machine représentée sur la figure 1 pour des caractères de commande choisis, étant bien entendu que d'autres caractères de commande seront soumis à d'autres types de fonctions de traitement de texte similaires a celles représentées dans le tableau I. LEGENDRE DU TABLEAU I FHI Transmettre demi-index RHI Inverser demi-index CHI Changer demi-index RHT Tabulation horizontale nécessaire NL Nouvelle ligne PDLM Délimiteur d'impression SP Espacement ST Tabulation verticale EMF Remplissage de marge d'extrémité OR Fin de rangée RFF Alimentation en papier nécessaire EOP Fin de page HT Tabulation horizontale SOF Départ de format Dn Information de données ou de commande Passage à la ligne SCT Texte de commande spécial n Mémoire Cà accès sélectif) inconnue TABLEAU I - EXEMPLE DE CODES DE COMMANDE (&alpha; = caractères de texte) Texte d'unité de Texte d'entrée Texte universel Texte d'imprimante Traitement de mots &alpha; FHI &alpha; RHI &alpha; FHI CHI &alpha; RHI CHI &alpha; &alpha; CHI &alpha; CHI &alpha; &alpha; FHI &alpha; CHI &alpha; &alpha; RHT &alpha; NL &alpha; &alpha; RHT PDLM SP SP SP PDLM &alpha; &alpha; SP SP SP &alpha; EOR SP SP SP SP &alpha; RHT &alpha; NL &alpha; NL VT SP SP SP SP SP EMF &alpha; SP &alpha; &alpha; RFF &alpha; &alpha; RFF &alpha; &alpha; EOP &alpha; &alpha; RFF &alpha; &alpha; HT &alpha; SOF 66 3 D1 D2 D3 &alpha; HT &alpha; SP SP &alpha; SOF 66 3 D1 D2 D3 &alpha; HT &alpha; PDLM SP SP PDLM &alpha; SOF 87 SOF 87 2 D1 D2 &alpha; 2 D1 D2 &alpha; &alpha; LF &alpha; &alpha; LF VT SP SP SP SP SP SP &alpha; EOR SP SP SP SP SP SP SP &alpha; &alpha; LF &alpha; SP EMF &alpha; &alpha; NL &alpha; &alpha; NL SCT 31 71 72 73 ... 730 &alpha; SP SP SP ... SP SP &alpha; &alpha; NL &alpha; ?31 &alpha; &alpha; HT &alpha; NL &alpha; SOF 23 # VT SP SP SP EMF &alpha; SP SP SP &alpha; SP SP SP SP &alpha; SOF 23 # &alpha; HT &alpha; SOF 16 HT PDLM SP SP SP SP PDLM ECT SP SP SP &alpha; 2 D1 D2 NL &alpha; ?1 ?2 ?3 ?4 ?5 VT SP SP SP EMF &alpha; Dans le tableau I ci-dessus, la colonne de gauche contient le texte d'entrée, tel que reçu par l'intermédiaire du connecteur RTC 17. Les caractères alphabétiques représentant les caractères de commande utilisables avec les télécommunications a synchronisation d'octets. Le caractère grec alpha représente les caractères de texte intercales, dont le codage est sans intérêt pour la mise en oeuvre de la présente invention. En pratique, le texte universel représenté dans la seconde colonne est une conversion du texte dientree, du moins en ce qui concerne les caractères de texte, en un code interne.Si, par exemple, le texte universel était alors renvoyé au connecteur RTC 17 pour retransmission à une unité éloignée, le codage du texte serait change. Cette action est une sbstitution directe bien connue dans la technique du traitement des textes. Pour utiliser le connecteur RTC 17 comme destinataire, pour les caractères de commande du texte universel, FHI, CHI, leur comparaison avec FHI entrai- nerait la suppression de CHI tandis que, pour les seconds caractères de commande RHI, CHI, seul le caractère RHI serait transmis. Si le texte était transmis a une autre unité destinataire, telle que le générateur 12, les caractères de commande seraient tous deux CHI. Si le texte était transmis au terminal LT 16, les caractères de commande seraient convertis en FHI et RHI, a nouveau également par suppression.Les autres caractères de commande utilisent des formats de texte d'entrée connus sont convertis, comme représenté, pour produire les divers textes adaptés. Après l'analyse du texte, les signaux de texte mis sous un format universel sont mis en mémoire dans la mémoire de pages 64 qui sert de mémoire tampon pour le texte universel. Le texte universel est transmis de la mémoire tampon ou mémoire de pages 64, par l'intermédiaire du processeur de texte du système 60A, les codes de commande indésirés étant supprimés à l'étape 56. La suppression des codes de commande andésites résulte dans la transmission du texte adapté aux moyensd'utili- sation qui comprennent, naturellement, les trois connexions 12", 16 et 17. En outre, si le texte universel doit être transmis à d'autres unités destinataires il est mis en mémoire dans la mémoire rémanente NVS 19 en vue de sa lecture ultérieure. Avant de décrire la programmation d'ordinateur pour effectuer un tel traitement de texte efficace, le matériel du système dans lequel cette programmation réside sera décrit pour faciliter la compréhension des fonctions et opérations programmées. UNITE DE COMMANDE DE LA MACHINE, A PROCESSEURS MULTIPLES, MPMC 15 L'uni té MPMC 15 a été représentée sous forme d'un schéma-bloc sur la figure 2. L'unité de commande PMPC 15 comprend un sous-système de commande du système SCP 60 et un sous-système de commande de la machine de production de copies CMC 61. Le sous-système SCP 60 comprend un microprocesseur du système SMP 62 qui exécute un ensemble de programmes de commande contenus dans une mémoire morte de commande 63 et qui utilise la mémoire de pages 64 comme mémoire de travail ou mémoire principale. Le microprocesseur SMP 62 communique avec les autres unités du soussystème SCP 60 ainsi qu'avec les unités périphériques, comme on le décrira ultérieurement, par l'intermédiaire de trois bus de transfert de données unidirectionnels. Le bus DI transfère les signaux de données provenant des autres unités au microprocesseur SMP 62. Dans un mode de réalisation construit préféré, le bus DI avait une largeur de 8 bits (un caractere) plus un bit de parité tandis que les signaux émanant du microprocesseur SMP 62 étaient transmis sur le bus MIS a toutes les autres unités. Les signaux d'adresse déterminant celle des unités qui doit envoyer des signaux au microprocesseur SMP 62 ainsi qu'aux autres unités ou en recevoir des signaux sont fournis par le microprocesseur SMP 62 sur un bus d'adresse ADS de 16 bits de large.Les interconnexionsdes bus décrites ci-dessus assurent également la transmission des signaux entre le sous-système SCP 60 et la mémoire rémanente NVS 19, l'entrée laser LI 12" le terminal local LT 16, le connecteur de terminal éloigné RTC 17 et entre le sous-système SCPC et le sous-systeme CMC 61 par l'intermédiaire du connecteur des processeurs multiples MPC 65. Le sous-système CMC 61 est construit de la même manière que le sous-système SPC 60. Il comporte un microprocesseur de reproduction CMP 170 ainsi qu'une mémoire de commande 171 contenant des programmes pour commander le fonctionnement de la partie CPP 13, une mémoire de travail 172 destinée à être utilisée comme mémoire principale et des registres d'entrée/sortie 173, 174. La transmission des signaux entre ces unités est effectuée au moyen d'un bus dientree/sortie de données oidirection- nel de 8 bits sous la commande d'un adressage effectué par le microprocesseur CMP 170 et transmis sur un bus d'adresse ADC de 16 bits. Le microprocesseur CMP 170 fournit les signaux d'adresse sur le bus ADC pour choisir la source et le destinataire des signaux consernant le microprocesseur CMP 170.Une telle sélection comprend une adresse transmise au connecteur des processeurs multiples MPC 65. Le bus d'entrée/sortie a, de préférence, une largeur d'un caractère (8 bits) tandis que le bus ADC a, de préférence, une largeur de deux caractères, ou 16 bits. Le sous-système CMC 61, par l'intermédiaire du connecteur 65, apparaît comme un dispositif d'entrée/sortie au sous-système SCP 60 de même que les unités 19, 12", 16 et 17 apparaissent comme des dispositifs d'entrée/ sortie. L'intercommunication entre les processeurs par l'intermédiaire du connecteur MPC 65 nécessite plusieurs cycles de mémoire a la fois dans le sous-système SCP 60 et dans le sous-système CMC 61. Une horloge 75 synchronise les sous-systèmes SCP 60 et CMC 61 sur la base d'une synchronisation des cycles de mémoire.En d'autres termes, la mémoire de page 64 et la mémoire de travail 172 ont des cycles de mémoire de même durée. Le fonctionnement des mémoires est synchronisé sous la commande d'une horloge à deux phases, phase 1, phase 2, fournies sur les lignes 76 à toutes les unités contenues dans l'unité de commande MPMC 15. Les connexions d'horloge ne sont pas représentées pour plus de brièveté. En outre, l'horloge 75 émet une série d'impulsions S, SI à S5, pour synchroniser l'exécution des instructions des microprocesseurs CMP 170 et SMP 62. En outre, il peut être désirable, sous la commande du programme, d'interconnecter logiquement les bus MI, DI et ADS pour permettre le transfert des signaux sur des trajets désirés qui seront décrits ciaprès. Pour obtenir ce résultat, le circuit de sélection des bus 76, sous la commande du microprocesseur SMP 62, assure la communication entre les divers bus. Par exemple, les signaux reçus du connecteur MPC 65 sur le bus MI peuvent être transférés par le circuit de sélection des bus 76 au bus DI pour être reçus par le microprocesseur SMP 62. D'autres permutations des transferts de signaux par les bus peuvent être facilement imaginées. Sur la figure 3A a laquelle on se référera maintenant, on a représenté les interconnexions logiques entre le microprocesseur SMP 62 et les unités commandées 63 a 65. Tous les signaux appliqués sur le bus et les lignes de commande individuelles sont transmis à toutes les unités, les signaux ADS et GP choisissant celle des unités commandées qui doit repondre respectivement soit pour recevoir des signaux des données soit pour fournir des signaux de données. Le microprocesseur SMP 62 fournit des signaux d'adresse sur le bus ADS à toutes les unités pour les signaux de données qui emet sur le bus MI ou qu'il doit recevoir du bus DI. Si l'instruction appliquée sur le bus GP indique que les données doivent etre transférées du microprocesseur SMP 62 a une unité commandée, ceci est indique sur la ligne d'entree/sortie I/O, un "1" binaire indiquant que les signaux doivent être transférés au microprocesseur sur le bus DI tandis qu un "O" indique que le microprocesseur SMP 62 fournit un signal sur le bus MI. La ligne d'écriture WRT indique a la mémoire de page que des signaux doivent être enregistrés sur la mémoire. Le signal de la ligne ITP indique une interruption en cours de traitement, c'est-àdire que le programme du microprocesseur 62 a été interrompu et que le microprocesseur est en train de traiter cette interruption.Le signal de la ligne I indique une interruption, le signal de la ligne-SDL est reçu de l'horloge 75 du système et signifie mise en mémoire dans des bascules bistables des données, comme on l'expliquera ulterieurement en se refé- rant a la figure 4, le signal de la ligne SK est un signal anti-parasites qui est un signal de commande pour éliminer les signaux perturbateurs habituellement appelés parasites. Ces signaux provoquent. une-interaction entre des circuits bistables actionnes successivement désignés bascules bistables ou à verrouillage. D'autres signaux d'horloge servant à coordonner le fonctionnement de de toutes les unités de l'unité de commande MPMC 15 sont reçus de l'horloge du système 75.En outre, le circuit de restauration à la remise de sous tension, POR, rend l'horloge du système 75 active pour qu'elle transmette des signaux d'horloge et des signaux de commande afin de remettre toutes les unités dans un état de référence, comme il est bien connu dans la technique des ordinateurs. Dans le sous-système CMC 61, les circuits de décodage et les circuits logiques qui répondent aux signaux ci-dessus décrits sont ceux qui sont normalement utilisés en combinaison avec l'interconnexion de l'unité de commande et des unités commandées. Etant donné que de tels circuits et les principes de leur conception sont bien connus on ne les décrira pas en détail. Sur la figure 3B à laquelle on se référera maintenant, on a représenté les interconnexions logiques entre le microprocesseur CMP 170- et les unités commandées 171 à 174. Tous les signaux appliqués sur les bus et les lignes de commande individuelles sont transmis à toutes les unités, les signaux ADC choisissant celle des unités commandées qui doit répondre respectivement soit pour recevoir des-signaux de données soit pour fournir des signaux de données sur le bus IO. Les lignes de commande d'entrée/sortie I/O indiquent si le microprocesseur 170 fournit ou reçoit des signaux sur le bus IO. Lorsque la ligne I/O porte un nl binaire, ceci indique que des signaux de données ou des signaux d'instruction doivent être transférés au microprocesseur tandis que lorsqu'elle porte un "O" binaire, le microprocesseur 170-fournit des.signaux sur le bus IO. La ligne d'écriture WRT indique à la mémoire 172- que des signaux doivent être enregistrés dans la mémoire. Le signal de la ligne-IPT indique une interruption en cours de traitement, c'est-à-dire que le programme du microprocesseur 170 a été interrompu et que-le microprocesseur est en train de traiter cette interruption. Le signal de la ligne I indique une interruption, le signal de la ligne SDL- (bascules de données) est reçu de l'horloge 75 du système et signifie que les signaux de données provenant du bus IO doivent être mis en mémoire dans les bascules bistables du microprocesseur 170.Le signal de la ligne SK est un signal anti-parasite qui est un signal de commande pour éliminer les signaux perturbateurs appelés "parasites". D'autres signaux d'horloge servant à coordonner le fonctionnement de toutes les unités 171 à 174 sont reçus de l'horloge du système 75. En outre, le circuit de restauration à la remise sous tension, POR, rend l'horloge du système 75 active pour qu'elle transmette des signaux d'horloge et des signaux de commande afin de remettre toutes les unités 171 à 174 dans un état de référence, comme il est bien connu dans la technique des ordinateurs. LE MICROPROCESSEUR 170 Les microprocesseurs SMP 62 et CMP 170 sont d'une construction identique. Le microprocesseur 170 sera seul décrit en détail étant entendu que la description s'applique également au microprocesseur 62. Sur la figure 4 à laquelle on se référera maintenant, on a représenté en détail la circulation des données dans le microprocesseur CMP 170. La circulation des données dans le microprocesseur SMP 62 et le fonctionnement de ce microprocesseur sont identiques. Les circuits de commande de séquence 180 sont les circuits logiques destinés a remplir les fonctions qui seront décrites ci-après, qui doivent être exécutées dans le contexte de synchronisation décrit ci-après. De tels circuits de commande de séquence SCC 180 comprennent des décodeurs d'instructions, des bascules bistables de mémoire et circuits analogues pour ordonnancer le fonctionnement des circuits de circulation des données représentés sur la figure 4 en utilisant des signaux d'horloge à deux phases 01, d2 fournis par l'horloge 75.Le processeur comprend une unité arithmétique et logique ALU 181 de 8 bits de large (un caractère de large). L'unité ALU 181 reçoit des signaux à combiner au cours d'une phase 02 et fournit des signaux de sortie statiques sur le bus de sortie 182 de l'unité ALU au cours de chaque phase 01. Un accumulateur de 16 bits constitué par deux registres coopère avec l'unité ALU 181. Les deux registres sont un registre des bits les moins significatifs ACL 183 dont la sortie est connectée par un bus 184 de 8 bits de large a une entrée de l'unité ALU 181 et un second registre qui est le registre des bits les plus significatifs ACH 185. Lorsque le microprocesseur 170 fonctionne avec un mot de deux caractères de large, ou de deux octets de large, les fonctions du registre ACL 183 et du registre ACH 185 alternent.En d'autres termes, dans une première partie de l'opération, qui nécessite deux cycles complets du microprocesseur, comme décrit ultérieurement, le registre ACL 183 contient les 8 bits les moins significatifs du mot de 16 bits. L'unité ALU 181 opère tout d'abord sur les 8 bits les moins significatifs reçus sur le bus ACL 184 et fournit les signaux de résultat sur le bus de sortie 182 de l'unité ALU à un registre DB 186. Au cours de cette même action de transfert, le- registre ACH 185 fournit les 8 bits les plus significatifs, par l'intermédiaire du registre DO 187 puis du bus DO 188, au registre ACL 183. Au cours du cycle suivant de l'unité ALU, cette dernière opère sur les 8 bits les plus significatifs. Dans le mode de réalisation construit et préféré, l'unité ALU 181 fonctionne en notation en complément à deux et peut effectuer des opérations arithmétique soit sur 8 bits soit sur 16 bits en parallèle, comme décrit cidessus. Des opérations logiques sur 8 bits en parallèle sont également effectuées. L'unité ALU 181 contient trois bascules bistables indicatrices (non représentées) qui mettent en mémoire les résultats des fonctions arithmétiques et logiques en vue de leur utilisation dans des cycles ultérieurs du processeur, tels que les sauts ou branchements conditionnels et les instructions dites instructions de report en entrée. Ces trois indicateurs sont: inférieur, égal (EQ) et report. L'utilisation de ces indicateurs sera mieux comprise à la lecture de la suite de la description. Les circuits 180 de commande des séquences du processeur peuvent entretenir un unique niveau d'interruption et comprennent un registre de masque d'interruption interne (non représenté) pour masquer les interruptions, comme il est bien connu dans la technique des ordinateurs.Les bits les moins significatifs des signaux d'adresse fournis au bus ADS par le registre ALH 190 (bits les plus signficatifs de l'adresse) et par le registre ALL 191 (les huit bits les moins significatifs de l'adresse) adressent les registres désignés registres de travail. Ces registres sont divisés en 16 groupes de 16 registres logiques de 2 octets de large. Une partie du registre ALL 191 fournit les signaux GP pour choisir ceux des groupes de registres auxquels le microprocesseur 170 peut avoir accès. Comme on le décrira en détail ultérieurement, le microprocesseur 170 nécessite deux cycles pour traiter une instruction d'entreejsortie. Le premier cycle est un cycle de préparation tandis que le second cycle est un cycle de transfert des données. Lorsqu 'une'opération d'entree/sortie nécessite le transfert d'une succession d'octets, le premier cycle prépare une unité 171 à 174 pour le transfert d'une série d'octets de telle sorte que l'opération d'entrée/sortie apparat comme un cycle de préparation suivi d'une série de cycles de transfert de données. Le microprocesseur 170 est conçu pour fonctionner avec une série de dispositifs a fonctionnement relativement lent; à savoir la machine de production de copies 10. Le temps nécessaire au microprocesseur 170 pour remplir ses fonctions est relativement court par rapport au temps requis par les dispositifs commandés.Par conséquent, sous la commande de l'horloge 75, le microprocesseur 170 peut être utilement mis hors service pour permettre à un dispositif commandé d'avoir l'utilisation exclusive du bus IO. En examinant la figure 4, on peut voir que tous les registres étant constitués par des bascules bistables conservent leurs états de signaux respectifs tant que les phases d'horloge 01 et 02 ne sont pas fournies. Par conséquent, à la suite d'une interruption du fonctionnement du microprocesseur par un dispositif commandé 171 à 174, l'état des signaux du microprocesseur 170 lui permet de recommencer de fonctionner comme s'il n'y avait pas eu d'interruption. Les autres registres du microprocesseur 170 sont décrits avec le jeu d'instructions pour faciliter une meilleure compréhension de l'interaction de ces registres. Le microprocesseur utilise des instructions de longueur variable de 1, 2 su 3 octets. Le premier octet d'une instruction comprend toujours le code opération, tandis que les octets suivants No.2 ou 3 contiennent des données d'adresse ou des données de facteurs appelés également données immédiates. L'exécution de l'instruction la plus rapide nécessite un cycle du processeur tandis que l'instruction la plus longue nécessite six cycles du processeur. Le traitement d'une interruption nécessite dix cycles. Dans toutes les désignations, le bit 0 est le bit le moins significatif. MEMOIRE D'INSTRUCTIONS Le répertoire d'instructions est décrit par groupes d'instructions qui ont toutes un format de mot d'instruction défini. Les instructions sont définies par leur titre, leur mnémonique, le nombre de cycles requis par le microprocesseur pour exécuter l'instruction, le nombre de facteur (Fact) et le nombre d'octets du mot d'instruction. En outre, le détail de la structure de commande du premier octet est donné. ARITHMETIQUE DE REGISTRES Instructions Mnémo- Cycles Facteur Octets nique Addition AR 3 1 1 Soustraction SR 3 1 1 Chargement LR 3 1 1 Stockage STR 3 1 1 Chargement/décrémentation LRD 5 1 1 Chargement/incrèmentation LRB 5 1 1 L'octet dtinstruction est divisé en deux parties Les 4 bits les plus signficiatifs indiquent le code de l'instruction tandis que les 4 bits les moins significatifs indiquent un registre compris dans un groupe de 16 registres comme source de facteur. Toutes les opérations sont envoyées au registre accumulateur. L'arithmétique effectuée sur des registres est une arithmétique a 2 octets en parallèle. ARITHMETIQUE D'OCTETS Instruction Mnémo- Cycles Facteur Octets nique Addition AB 3 1 2 Soustraction SB 3 1 2 Chargement LB 3 1 2 Stockage STB 3 I 2 Comparaison CB 3 1 2 ET NB 3 I 2 OU OB 3 1 2 OU Excl. XB 3 1 2 Les 5 bits les plus significatifs de l'octet 1 de l'instruction indiquent la commande de l'instruction tandis que les 3 bits les moins significatifs indiquent l'un des 8 registres. Le second octet indique l'une de 256 adresses d'octets de la mémoire qui doit-etre utilisée dans l'opération arithmétique, c'est- -dire qu'une différence entre l'arithmetique effectuée sur des registres et l'arithmétique effectuée sur des octets est que l'arithmétique d'octets permet d'obtenir le facteur de la mémoire. ARITHMETIQUE IMMEDIATE Instructions Mnémo- Cycles Facteur Octets nique Addition AI 2 1 2 Soustraction SI 2 1 2 Chargement LI 2 1 2 Comparaison CI . 2 1 2 ET NI 2 1 2 DU OI 2 1 2 OU Excl. XI 2 1 2 Groupe GI 2 3 2 Le format de l'octet 1 est le même que pour l'arithmétique d'octets, le second octet contenant les données du facteur. Dans la dernière instruction, groupe, GI, les données immédiates choisissent les registres dans le groupe de registres, comme il apparaîtra ci-après. ARITHMETIQUE DE L'ACCUMULATEUR Instruction Mnemo- Cycles Facteur Octets nique Ajouter 1 Al 2 0 1 Soustraire 1 S1 2 0 1 Décalage à gauche SHL 2 0 1 Décalage a droite SHR 2 0 1 Remise à blanc CLA 1 0 1 Inversion TRA 1 0 1 Report en entrée IC 1 0 1 Les 8 bits de l'octet 1 sont utilises pour indiquer la fonction à exécuter. Toutes les opérations sont effectuées avec l'accumulateur. L'instruction d'inversion TRA, échange le contenu du registre le plus significatif avec celui du registre le moins significatif, des registres 183 et 185 de l'accumulateur. INSTRUCTIONS INDIRECTES Instruction Mnémo- Cycles Facteur Octets tique Stockage STN 4 1 1 Chargement LN 4 1 1 Ceci constitue un jeu d'instruction d'adressage indirect dans lequel les 5 bits les plus significatifs désignent la fonction tandis que les 3 bits les moins significatifs désignent celui de 8 registres qui doivent contenir adresse de la mémoire ou un accès doit être effectué. COMMANDE DE BITS Instruction Mnémo- Cycles Facteur Octets nique Test/préserver TP 1 1 1 Test/RAZ TR 1 1 1 Les 5 bits les plus significatifs de l'octet d'instruction indiquent la fonction tandis que les 3 bits les moins significatifs désignent le bit du registre de l'accumulateur qui doit être vérifié. ENTREE/SDRTIE Instruction Mnémo- Cycles Facteur Octets nique Entrée IN 4 1 2 Sortie DUT 4 1 2 Les deux instructions utilisent le premier octet comme une commande et le second octet pour adresser l'une des 256 adresses sur les bus MI, DI ou IO. BRANCHEMENTS Instruction Mnémo- Cycles Facteur Octets nique Saut J 3 1 1 Saut si non égal JNE 3/1 1 1 Saut si égal JE 3/1 1 Branchement B 3 1 2 Branchement si non égal BNE 3/2 1 2 Branchement si non inférieur BNL 3/2 1 2 Branchement si égal BE 3/2 1 2 Branchement si- supérieur BH 3/2 1 2 Branchement et liaison BAL 6 2 3 Retour RTN 5 1 1 Interruption - 11 Dans les trois premières instructions de Saut, les trois bits les plus significatifs indiquent la fonction. Le quatrième bit indique un saut si supérieur ou inférieur et les quatre bits les moins significatifs indiquent la longueur du saut. Dans une notation, l'indication "superieur" est un O binaire tandis que l'indication "inférieur" est un 1 binaire. Dans les instructions de branchement, à l'exception de l'instruction "branchement et liaison", les quatre bits les plus significatifs en combinaison avec les deux bits les moins significatifs indiquent la fonction. Les deux bits intermédiaires indiquent: plus ou moins 256 positions d'adresse ou ignorer. L'instruction Branchement et liaison, une instruction de 3 octets, choisit l'un de quatre registres au moyen des 2 bits les moins significatifs du premier octet de commande et utilise les 6 bits les plus significatifs comme indicateur de fonction. Les deux octets sont une adresse de 16 bits pour le bits d'adresse, le second octet contenant les 8 bits les moins significatifs et le troisième octet contenant les 8 bits les plus significatifs. L'instruction de retour est simplement une instruction d'un octet qui a le même format que l'octet de commande de l'instruction branchement et liaison. L'interruption n'est pas une interruption mais un unique signal reçu sur la ligne d'interruption I. CODES DES CONDITIONS DE L'UNIT ARITHMETIQUE ET LOGIQUE (ALU) Le tableau ci-dessous indique le code des conditions mis dans les indicateurs de l'unité ALU à savoir, inférieur, égal (EQ) ou report à la suite de la catégorie d'instructions exécutée comme indiqué dans le tableau ci-dessous. ---------------------------------------------------------------------------------------------------------------------- Catégorie d'instruction Inférieur Egal (EQ) Report ---------------------------------------------------------------------------------------------------------------------- Arithmétique de registres 16ême bit = 1 tous les bits (0-15) = 0 Report du 16ème bit Arithmétique d'octets Sème bit = 1 tous les bits (0-7) = 0 Report du Bème bit Commande de bit tous les bits en dehors bit vérifié = 0 inchangé bit vérifié = 0 Décalage à gauche tous les bits = 0 0 a été décalé hors du 1 a été décalé hors du 16ème bits 16ème bits Décalage à droite tous les bits = 0 0 a été décaié hors du 1 a été décalé hors du 1er bit 1er bit * DU logique Tes résultats de l'opéra- les bits chargés par inchangé tion DU = uniquement des 1 l'opération OU étaient tous des 0 ** ET logique Tes bits préservés sont le résultat de l'opération inchangé tous des 1 ET = uniquement des 0 OU Excl. logique résultat = uniquement des 1 résultat = uniquement des 0 inchangé Entrée tous les bits en dehors 8ème bits = 0 (entrée et inchangé bit 8 - 0 sortie des dnnées) Report en entrée toujours remis à 0 report = 0 inchangé Comparaison nombre compré est sup6rieur nombre comparé est égal au report du 8ème bit à l'octet de l'accumulateur contenu de l'octet le moins significatif de l'accumula teur * vérifie si l'ensemble de bits (chargés par l'opération OU) ne comporte que des 0 et si le r6sultat ne comporte que des 1. Effectue l'essai "test bit et positionnement" de bits individuels. Les bits inchangés sont indiqués par des 1 dans le masque (OU logique). ** vérifie si les bits préservés sont tous des 0, tous des I ou des 0 et l mélangés. Les bits préservés sont indiqués par des 1 dans le masque (ET logique). Une instruction de saut ne modifie pas l'accumulateur 183, 185 ni les bits indicateurs, que le saut soit ou non effectué. Un 1 est ajouté au compte du compteur du programme étant donné qu'il a adressé l'instruction de saut. Le compteur du programme 192 comprend un registre PCL 192A et un registre PCH 192B, appelés ci-après collectivement compteur 192. Si le saut est effectué, les quatre bits les moins significatifs du premier octet de l'instruction remplacent les 4 bits les moins significatifs du compteur du programme 192 et les h-bits les plus signfiicatifs sont modifiés si nécessaire. L'intervalle du changement d'adresse d'instruction est de -15 à +17 octets mesurés à partir de l'adresse de l'instruction de saut.Si l'adresse de destination est comprise dans cet intervalle, il suffit de spécifier, de manière absolue, les 4 bits les moins significatifs de l'adresse et un bit pour indiquer le sens du saut (0 pour +2 à +17 ou 1 pour -15 à +0; la condition +1 ntest pas réalisable). La condition +1 n'est pas utile étant donné que le processeur passe à l'instruction +1 si le saut n'est pas effectué (par conséquent, si cette condition était valide, le processeur irait à l'instruction +1 que le saut soit ou non effectué). Dans une instruction de branchement, le compteur 192 a été incrémenté pour pointer le second octet du mot d'instruction de branchement. Les 8 bits les moins significatifs de l'adresse absolue du programme de destination sont-codes dans l'octet de données (2ème octet). Un code qui décrit comment modifier les 8 bits les plus significatifs est codé dans l'octet d'instruction et signifie: laisser les 8 bits les plus significatifs sans changement, ajouter 1 à ces 8 bits ou soustraire 1 de ces bits. Les instructions de branchement si égal ou de branchement si non égal ne contrôlent que la condition de l'indicateur EQ de l'unité ALU 181. L'instruction de branchement si non inférieur ne contrôle que la condition de l'indicateur inférieur. L'instruction de branchement si supérieur nécessite que l'indicateur EQ et l'indicateur inférieur soient tous deux à l'état 0. L'instruction de branchement et liaison est une instruction de branchement inconditionnel qui spécifie l'adresse de branchement absolue de 16 bits du programme de destination et un nombre de 2 bits indiquant un registre à utiliser. L'adresse de l'instruction exécutable suivante (à la suite de l'instruction BAL) est mise en mémoire dans le registre spécifié par le nombre de 2 bits. L'interruption n'est pas une instruction programmable mais est exécutée chaque fois que la ligne I de demande d'interruption est rendue active par un dispositif externe et qu'un masque d'interruption contenu dans un registre d'états STAT 195 est égal à O. L'interruption arrête l'exécution du programme entre les instructions, lit les nouveaux états (groupe de registres, masque d'interruption, égal, inférieur, report) dans l'octet le plus significatif du registre 8, met en mémoire l'ancien état dans l'octet le moins significatif du registre 8, enregistre l'adresse de l'instruction suivante à exécuter dans le registre 0, met en mémoire le contenu de l'accumulateur dans le registre 4 sans modifier l'accumulateur et effectue un branchement à l'adresse spécifiée par le contenu du registre 12. Le microprocesseur spécifie toujours le groupe de registres O pour l'interruption.L'interruption nécessite 1Q cycles du microprocesseur pour être achevée. Les groupes de registres seront décrits ultérieurement. Le retour est un branchement inconditionnel à une adresse variable et peut être utilisé en combinaison avec l'instruction de branchement et liaison ou pour retourner au programme principal après interruption de ce dernier. Deux octets sont lus dans le registre spécifié pour définir l'adresse de branchement absolue. Un retour utilisant le registre O du groupe de registres O est défini comme étant un retour d'une interruption. Dans ce cas, le nouvel état (EQ, inférieur, report, masque d'interruption et groupe de registres) est extrait de l'octet le moins significatif du registre 8. Les instructions du groupe arithmétique opèrent avec l'accumulateur de 16 bits 183, 185 et l'unité arithmétique et logique ALU 181 de 8 bits qui sont capables d'effectuer diverses opérations arithmétiques et logiques. Trois indicateurs de condition (inférieur, EQ, report) sont mis en fonction des résultats de certaines opérations. Une arithmétique a 16 bits en complément à 2 est utilisée sauf pour les opérations portant sur des octets et pour certaines opérations immédiates qui sont des opérations sur 8 bits en complément a 2. Le bit le plus significatif est le bit de signe; les nombres négatifs sont indiqués par un 1 dans la position du bit de signe. La soustraction est effectuée par une addition du complément a 2.Toute opération arithmétique qui résulte dans un report enclenche une bascule bistable de report même si l'accumulateur peut ne pas être changé. L'arithmétique à 16 bits est effectuée avec les registres 0-15 du groupe de registres en cours par les instructions d'addition, de soustraction, de chargement et de stockage. L'instruction de chargement registre et incrémentation (ajouter +1) utilise les registres 4-7 et les registres 12-15. Dans les instructions addition registre et soustraction registre, AR, SR, les 16 bits du registre adressé ou spécifié sont ajoutés ou soustraits de l'accumulateur et le résultat est placé dans l'accumulateur. L'indicateur EQ est mis si le résultat ne comporte que des 0. L'indicateur inférieur est mis si le bit le plus significatif est un 1. L'instruction de chargement registre, LR, charge le contenu du signal de 16 bits du registre spécifié dans l'accumulateur 183, 185. Le contenu du registre adressé reste inchangé. Les indicateurs de l'unité ALU 181 ne sont pas modifiés. L'instruction de stockage registre, STR, met le contenu de 16 bits de l'accumulateur, 183, 185, en mémoire dans le registre spécifié. Ni le contenu de l'accumulateur 183, 185, ni les indicateurs de l'unité ALU 181 ne sont modifiés. Dans les instructions de chargement registre et incrémentation, LRB, et chargement registre et décrémentation, LRD, un 1 absolu est ajouté au contenu ou, respectivement, soustrait du contenu du registre spécifié. Le résultat est placé dans l'accumulateur 183, 185 et dans le registre spécifié. Les indicateurs sont mis à jour comme pour les instructions d'addition, AR, et de soustraction SR. Pour les instructions d'opérations arithmétiques portant sur des octets, les octets 0-511 de la mémoire 172 sont adressables par les instructions d'arithmétiques d'octets. La mémoire 172 directement adressable est divisée en deux sections: les octets 0-155 sont adressables lorsque les groupes de registres 0-7 sont choisis tandis que les octets 256-511 sont adressables lorsque les groupes de registres 8-15 sont choisis. Les octets 512-767 et 768-1023 constituent deux groupes supplémentaires. Ce sectionnement forme 32 groupes de registres dans la mémoire au moyen desquels le microprocesseur fonctionne, Dans les instructions AB, SB, CB, LB et STB, le contenu de 8 bits de l'octet spécifié est respectivement ajouté à, soustrait de, compare a, chargé dans ou chargé à partir du registre ACL 183 de l'accumulateur. L'octet le plus significatif de l'accumulateur contenu dans le registre ACH 185 n'est pas modifié. Les indicateurs de condition de l'unité ALU 181 sont mis en fonction du résultat de l'opération arithmétique d'octets: addition, soustraction, et comparaison. Les résultats de toutes les opérations d'octets à l'exception de la comparaison CB et du stockage STB sont places dans le registre 183 de l'accumulateur. Le stockage modifie l'octet spécifié dans le groupe d'octets actif. La comparaison est une opération de soustraction qui ne modifie pas le contenu de l'accumulateur 183, 185. L'arithmétique d'octets est une arithmétique signée a 8 bits. Dans les instructions portant sur des octets NB, OB et XB, l'octet spécifié fait respectivement l'objet d'une opération ET logique, d'une opération DU logique ou d'une opération OU Exclusif logique avec le contenu du registre 183 de l'accumulateur. L'indicateur EQ de l'unité ALU 181 est mis: pour l'operation ET, si le résultat de l'opération ET ne comporte que des O; pour l'opération OU, si les bits chargés par l'opération OU étaient tous des 0; pour l'opération OU Exclusif, s'il y a identité entre l'octet et l'accumulateur (résultat = uniquement des 0). L'indicateur inférieur est mis: pour l'opération ET, si les bits préserves sont tous des 1; pour l'opération OU Exclusif, si l'octet et l'accumulateur sont, bit pour bit, opposés (résultant = uniquement des 1). L'opération ET logique peut vérifier si le masque choisi ne comporte que des 0, que des 1 ou des O et des 1 mélangés. Les bits choisis au moyen de masque sont indiqués par des 1 dans les positions correspondantes de l'octet utilisé comme masque. L'opération ET logique vérifie les bits qui sont préservés tandis que l'opération OU logique vérifie les bits qui sont alors mis a I. S'il n'y a qu'un seul bit de choisi, ltoperation OU logique effectue alors un "Test du bit et positionnement". Les instructions d'arithmétique immédiate AI, SI, CI, LI, NI, OI et XI sont les mêmes que celles relatives aux opérations d'octets à cette différence près que 8 bits de données immédiates sont utilisés-à la place du contenu d'un octet adressé et que les opérations d'addition et de soustraction sont des opérations d'arithmétique signées à 16 bits et non des opérations à 8 bits signées. L'instruction immédiate du groupe GI, utilise 8 bits de données immédiates pour modifier le contenu du registre 195 des indicateurs d'état afin de choisir des groupes de registres et masquer ou démasquer une interruption. Les indicateurs de condition inférieur, égal et report de l'unité ALU 181ne sont pas modifiés. Les données immédiates (octet No.2) sont divisées en cinq parties. Les bits 0-4 sont les bits du nouveau groupe de registres (le nouveau groupe de registres est codé en binaire). Le bit 5 est le bit de commande servant à mettre les bits 0-4 dans la mémoire tampon interne du groupe de registres Si le bit de commande est un O. Le bit 7 est le nouveau masque d'interruption (ur, 1 masque les interruptions).Le bit 6 est le bit de commande qui sert à mettre le bit 7 dans le masque d'interruption interne si le bit de commande est un zéro. Les instructions d'arithmétique de l'accumulateur Al, S1 respectivement ajoute un 1 absolu au contenu et soustrait un 1 du contenu de l'accumulateur 183, 185 et le résultat est laissé dans l'accumulateur 183, 185. L'opération est une opération arithmétique signée a 16 bits et les indicateurs de condition de l'unité ALU 181 sont mis en fonction du résultat. Les instructions relatives à l'accumulateur SHL décalent le contenu de signal de l'accumulateur 183, 185 respectivement à gauche et à droite d'une position binaire ou bit. Pour le décalage à gauche, le bit le plus significatif est décalé dans la bascule bistable de report (non représentée) de l'unité ALU 181 et un O est décalé dans le bit le moins significatif sauf lorsque l'instruction précédente était un report en entrée. la condition de la bascule bistable de report avant le décalage est décalée dans le bit le moins significatif. Pour un décalage à droite, le bit le moins significatif est décale dans la bascule bistable de report et l'état du bit le plus significatif est maintenu.Lorsqu'un décalage a droite est précédé d'un report en entrée, l'état de la bascule de report avant le décalage est décalé dans le bit 15 de l'accumulateur 183, 185. L'indicateur de condition EQ de l'unité ALU 181 est mis si un O est décalé dans la bascule bistable de report. L'indicateur de condition inférieur de l'unité ALU 181 est mis si le contenu résultant de l'accumulateur 183, 185 ne comporte que des 0. L'instruction relative a l'accumulateur, CLA, remet l'ensemble de l'accumulateur 183, 185 à O. L'instruction d'inversion TRA échange le contenu du registre le moins significatif 183 avec celui du registre le plus significatif 185. Les indicateurs de l'unité ALU 181 restent inchangés. L'instruction relative à l'accumulateur, IC, transfère le contenu du signal de la bascule bistable de report au bit le moins significatif de l'unité ALU 181 lors de l'instruction immédiatement suivante. Si cette instruction est une opération d'addition, de soustraction, d'incrémentation, de décrémentation, de décalage à gauche ou de comparaison. Le bit de report est entre dans le bit 15 lors d'un décalage à droite. L-'interruption est masquée par cette instruction jusqu'à ce que l'instruction suivante ait été exécutée. L'indicateur inférieur de l'unité ALU 181 est remis à O et l'indicateur EQ est mis si le contenu de la bascule bistable de report est un O. Si le report en entrée précède une instruction quelconque autre que celle mentionnées ci-dessus, il n'a aucun effet sur l'exécution de l'instruction. Si l'instruction suivant le report en entrée change les indicateurs de condition de l'unité ALU 181, l'information de l'indicateur de report en entrée est détruite. Les deux instructions de transfert de données indirectes, STN et LN, peuvent accéder aux registres 8-15. L'instruction de chargement indirect accède au registre spécifié et utilise son contenu dans une adresse pour extraire un octet de données et le charger dans les 8 bits les moins significatifs (registre 183) de l'accumulateur sans modifier les 8 bits les plus significatifs (registre 185). L'instruction de stockage indirect accède au registre spécifié et utilise son contenu comme une adresse pour mettre en mémoire les 8 bits les moins significatifs de l'accumulateur (registre 183) dans l'octet spécifié. Les indicateurs de l'unité ALU 181 ne sont pas modifiés. Les instructions de commande ou de vérification de bit TR, et TP, soumettent le bit spécifié de l'octet le moins significatif de l1accumu- lateur (registre 183) a une vérification. l'indicateur de condition EQ de l'unité ALU 181 est mis si le bit est un O. Simultanément, le bit est soit remis à 0, soit conserve dans l'accumulateur. Les instructions d'entrée, IN, et de sortie, OUT, respectivement transfèrent des données provenant d'un registre dientree/sortie (par exemple la partie de production de copies CPP 13) au registre 183 de l'accumulateur et des données de l'accumulateur à un dispositif d'entrée/sortie (la partie CPP 13, par exemple). Ces instructions sont des opérations de 2 cycles. Le premier cycle place le code du dispositif modifié sur les lignes de données de sortie et le second cycle est le cycle de transfert des données effectif; les 8 bits les moins significatifs de l'accumulateur contenus dans le registre 183 sont appliqués en sortie sur les lignes de données d'entrée et le code du dispositif est placé sur les lignes d'adresse ADC. Une instruction de sortie ne change pas les indicateurs de l'unité ALU 181.Lors d'une instruction dlentree5 l'indicateur EQ est mis si le bit le plus significatif des données transmises en entrée est un O. L'indicateur inférieur est toujours remis à O. Les instructions d'entrée/sortie peuvent spécifier chacune 256 dispositifs pour le transfert de données. En général, un dispositif d'entrée/sortie nécessite plusieurs adresses de dispositif pour spécifier divers types d'opérations telles que lecture, état des essais, etc. Une initialisation de restauration à la mise sous tension, POR, met le processeur dans l'état ci-après: Accumulateur = O Groupe de registres = O Masque d'interruption = 1 Inférieur, égal (EQ), report = X (inconnus) Le microprocesseur commence son fonctionnement en lisant l'emplacement de mémoire 65 533. EXECUTION DES INSTRUCTIONS DU MICROPROCESSEUR Le microprocesseur 170 est canalise pour donner à la mémoire un cycle complet du microprocesseur comme temps d'accès. Pour obtenir ce résultat, le microprocesseur 170 demande une lecture de la mémoire plusieurs cycles avant qu'il ait besoin d'un octet de données. Plusieurs limitations sont maintenues dans tout le jeu d'instructions. 1. Chaque instruction doit lire en mémoire le même nombre d'octets que celui qu'elle utilise. 2. Chaque instruction doit laisser le microprocesseur avec l'ins truction suivante dans le registre intermédiaire d'instruction IB 196. 3. Au temps de phase deux (02), au début de la séquence deux, comme décrit ci-apres, le registre intermédiaire temporaire TB 197 doit contenir l'octet suivant l'instruction en cours (on notera que cet octet a été extrait par l'instruction précédente). 4. Chaque instruction doit décoder l'indication "TERM" (terminer), comme décrit ci-après, qui remet à O le compteur de séquence d'instructions (non représente) dans l'horloge 75 du microproces seur CMP 170 et remet une horloge de séquence séparée (non représentee) du microprocesseur 170 à la séquence 1, permet à la lecture suivante d'être effectuée dans le registre IB 196 et charge l'instruction suivante dans le registre IR 198. 5. Au "tempâ de phase deux", au début de la séquence d'instructions deux. le registre le moins significatif 183 de l'accumulateur et le registre le plus significatif 185 de l'accumulateur doivent contenir les signaux appropries. (On notera que 1 'ins- truction précédente peut avoir eu d'autres données dans ces registres au cours de son exécution). Le microprocesseur 170 est construit exclusivement avec une logique à bascules bistables. Les signaux 02 sont les signaux de sortie de bascules bistables (ou de circuits de décodage statiques utilisant les signaux de sortie de bascules) qui sont échantillonnés (prélevés ou transférés par un signal d'horloge appelé impulsion de découpage) au temps 02. Les signaux 01 sont les signaux de sortie de bascules bistables (ou de circuits de décodage statiques utilisant les signaux de sortie de bascules) qui sont échantillonnés au temps 01. Les signaux I- sont utilisés comme signal d'entrée des bascules d2 et les signaux 02 sont utilisés comme signaux d'entrée des bascules dl. Les décodages de lecture (références à la mémoire) sont effectués à partir du registre IB 196 au cours de la séquence 1 (SEQ 1) du fait que le registre IR 198 est chargé au temps 1,-SAQ 1 (figures 5 et 6). Aux séquences autres que la séquence 1, le décodage de lecture est effectue à partir du registre IR 198. Les décodages de lecture sont des signaux 02 et sont, par conséquent, échantillonnés au temps dl. Les signaux de sortie des décodages de lecture sont transférés aux registres ALL 191, ILH 190, Ou 200 et aux circuits SCC 180. Le compteur du programme 192 est mis à jour à partir des registres AOL 201 et AOL 202 au temps 82. Les décodages d'exécution et de désignation sont des décodages effectués au temps dl à partir du registre IR 198. Ces signaux de décodage sont échantillonnés au temps #2 et transférés aux circuits SCC 180 pour préparer l'unité ALU 181 et les échantillonnages de destination qui se produisent au temps dl. Les signaux de sortie de l'unité ALU 181 sont échantillonnés et transférés aux registres DB 186, DO 187 ou AOH 202 selon l'instruction en cours d'exécution. Ensuite, les registres ACL 183 et ACH 185 sont mis à jour au temps d2 de sorte qu'un autre cycle de l'unité ALU 181 peut commencer. Il s'écoule trois cycles de processeur entre le début d'un décodage de lecture et le moment ou lraccumulateur 183, 185 est mis à jour.Une configuration "canalisé" (appelée également quelquefois configuration du type pipeline) signifie que, dans certains cas, un processeur peut exécuter trois instructions en même temps, comme est connu dans la technique des ordinateurs. SEQUENCES D'INSTRUCTIONS Un tableau des séquences d'instruction qui a été représenté sur les figures 5 et 6 constitue un catalogue raccourci commode du fonctionnement interne du processeur 170 ainsi que du processeur SMP 62 au cours de chaque séquence de chaque instruction. Ce tableau peut constituer un outil très utile pour la compréhension du fonctionnement du processeur. Le lexique ci-après fournit les informations nécessaires pour l'inter prétation correcte de ce tableau. Informations générales Le processeur 170 est canalisé. Pendant qutil exécute une instruction, il lit les deux octets suivants dans la mémoire 172.- Le premier octet est sauvegardé dans le registre IB 196 au début de la séquence 1 (SEQ 1) et est utilise au cours de la séquence 1 pour fournir trois décodages de séquence 1 dans les circuits SCC 180. Au temps 1, SEQ 1, IB + IR (198) dans lequel il reste jusqu'au temps dl SEQ 1 suivant. Tous les décodages d'instruction restants sont effectues à partir du regi stre :IR 198. Le second octet est dans le registre TB 197 au début de la séquence 2. Cet octet peut contenir des données immédiates pour l'instruction cours ou il peut être un octet d'instruction suivante. Si c'est un octet d'instruction suivante, l'instruction en cours n'a besoin que d'extraire un seul octet de la mémoire pour-fournir les deux octets nécessaires. Cette lecture de deux octets se produit pour toutes les instructions d'un seul octet. Tous les accès à la mémoire 172 commencent au temps 01. Les données de la mémoire sont préservées dans le registre DL 205 de bascules de mémoire de données auxquels elles sont transférées par le bus IO du microprocesseur CMP 170 au temps 02, c'est-à-dire une séquence et demie d'exécution d'instruction plus tard. Dans le tableau ci-dessous on a indique les temps de la mémoire pour toutes les instructions ainsi que le registre destinataire (DEST) des données contenues dans le registre de bascules de mémoire de données 205. TABLEAU DES TEMPS DE REFERENCE A LA MEMOIRE 1 2 3 INSTRUCTION DEBUT DEST DEBUT DEST DEBUT DEST LR AR SR 1 TB 2 TB 3 TB LRE LRD 1 ACL 2 ACL 3 TB STR 1 TB - - - - AI SI 1 TB 2 TB - CI GPI LI XI 01 NI 1 TB 2 TB - CB AB SB LB XB OB NB 1 TB 2 TB 3 TB STB 1 TB 3 TB - - AI S1 SHL SHR 1 TB 2 TB I TRA CLA IC TBP TBR 1 TB BAL 1 ACL . 2 X 5 TB RTN 1 TB 2 ACL 3 TB 4 TB B IJO 1 TB 2 TB 3 1 TB 2 TB INTERRUPT 1 TB j S ACL 5 l TB 9 TB 10 TB BLI 1 TB 2 ACL 3 @ TB 4 ACL BSI 1 lB 2 ACL - 3 TB IN OUT 1 TB 3 ACL 4 j TB un trait tracé sur une instruction de saut ou de branchement indique que le saut ou le branchement n'a pas été effectué. Code Opération (Phase 2) Décodage TB DL + TB, ACL inchangé aucun ACL DL + ACL, TB inchangé TACLE ou ITAL X Aucune, ACL et TB restent inchangés NOTB ou TBNS Les données sont perdues à moins que le signal SDL sur la ligne 206 soit bloqué par le signal DMA actif sur la ligne 207. Le circuit ET A 208 empêche le signal d'horloge 02 d'en gendrer les signaux SDL sur la ligne 206. Le mnémonique DMA signifie accès direct à la mémoire" par exemple par les registres 173, 174. (En outre, les lettres A, O et I ont été utilisées dans toutes les figures pour indiquer les portes ET, les portes OU et les inverseurs). Si le registre IR 198 contient encore l'octet d'instruction en cours, les circuits de décodage sont statiques. Si le décodage doit être effectué pour le cycle de chevauchement de la séquence 1 (avec l'octet d'instruction suivant contenu dans le registre IR 198), les bascules bistables de condition de l'unité ALU 181 sont chargées au cours des dernières séquences (3-5) de l'exécution de l'instruction en cours. Le registre désigné est décodé par les circuits SCC 180. Ce cas spécial est indiqué sur les tableaux des séquences d'instruction, figures 5 et 6, par les termes TBNS ou ITAL dans les colonnes ALU. Le fonctionnement du processeur 170 dans chaque séquence est divisé en deux catégories: logique de commande (désignée par le mnémonique CL) des circuits logiques SCC 180 et unité ALU et destination (désignées par le mnémonique ALU). La position de ces deux blocs à l'intérieur de la séquence (à savoir moitié droite ou moitie gauche) n'a aucune signi fixation. Les opérations peuvent se produire au temps 02 ou au temps 01 dans l'une ou l'autre catégorie. Le temps 01 se produit au milieu d'une séquence. Le temps 02 est toujours une limite de séquence. LEXIQUE DE LA LOGIQUE DE COMMANDE Ce lexique est une liste de termes qui apparaissent dans les colonnes (CL) de la logique de commande. WRT - ECRITURE Indique qu'une opération d'écriture dans la mémoire est mise en route à la phase 1 et non une opération de lecture. Une opération de lecture est une condition par défaut et nenécessite pas de décodage. La ligne de sortie WRT (figure 3B) est active lorsque le terme WRT apparat sur le tableau. DUT 1 IO - PREMIERE SORTIE ENTREE/SORTIE Indique que le mode I/O du premier cycle est placé sur les lignes de sortie IO au temps 01. Les lignes d'adresse AL9 à AL11 du bus ADC sont commandées par le décodeur IOC1. La ligne I/O est active (figure 3B). OUT 2 IO - DEUXIEME SORTIE ENTREE/SORTIE Indique que le code I/O du second cycle est placé sur les lignes de sortie IO au temps 01. Les lignes d'adresses AL10 et AL11 du bus ADC sont commandées par le décodeur IOC 2. La ligne I/O est active (figure 3B). TB + IB A chaque temps d2 SEQ 1 de chaque instruction, le contenu de signal du registre TB 197 est transféré au registre IB 196. Le contenu de signal représente llinstruction-qui suit immédia- tement l'instruction en cours. IB SET Même opération que TB + mais est destinée à empêcher le registre IB 196 de suivre le registre TB 197 plutôt que de sauvegarder le contenu du registre TB 197. Cette opération est suivie au temps #1 suivant de l'op6ration de mise du registre 16 à "TRA". Mettre IB à "TRA" Indique que les entrées de restauration (non représentées) des bascules bistables du registre IB 196 (non représentées) sont commandées au temps 01. L'instruction CNT ou POR X commande un ensemble de bits superpose aux bits 0, 3 et 5 produisant un code d'instruction "TRA" (inversion) et les instructions ,oAL, POR exécutent alors une inversion (TRA) pour achever leurs opérations respectives. TERM Indique la fin de l'instruction. La séquence 1 commence à la ligne en trait fort 220 sur le tableau. Le compteur de séquence (S1 - S6 non représenté) est remis à O par le décodage de "TERM". PCI Indique une lecture en mémoire et une incrémentation du compteur de programme. Cette action est une condition par défaut et aucun décodage n'est nécessaire. temps 1: PC + 1 + AD temps d2: AD + PC PCNI Instruction de non opération. Identique à PCI à cette différence près que le compteur PC 192 n'est pas mis à jour au temps 2. L'opération PCI suivante lit à nouveau le même emplacement, comme si la première lecture n'avait pas été effectuée. Cette opération est utilisée du fait que les lignes du processeur ont une signification à chaque temps dl et que certaines instructions n'ont pas de besoin de lecture/écriture ou d'entrée/ sortie au cours de la séquence 1. L'opération SPC (chargement du compteur PC) est masquée pour les sauts et branchements, pour les instructions de décodage et pour les instructions Al et S1. IBC, IRC, IRH Indique un accès de la mémoire (lecture ou écriture) à un registre. IR (IB) désigne le registre et est spécifié par les quatre bits les moins significatifs du registre IR (IB). Le registre IB doit être utilise au cours de la séquence 1. Le registre IR 198 est utilise au cours de toutes les autres séquences. L signifie que l'accès doit être effectué à l'octet le moins significatif du registre et H indique l'octet le plus significatif. Le décodage IRSLX (registre IR choisi) commande la formation de l'adresse au temps dl. Opération Commande IB (0-3) # AD (0-3) IBX (SEQ 1 seulement) IR (0-3) # AD (0-3) IRX (toutes les autres séquences) L=O, H = 1 # AD (4) ILH GP (0-2) # AD (5-7) RGX GP (3) + AD (8) R3 O # AD (9-14) TBIR TB Indique un accès à la mémoire effectue en utilisant le contenu du registre TB 197 comme adresse. Le décodage TBSLX (registre TB choisi) commande la formation de l'adresse de la mémoire au temps #l. Opération Commande TB (0-7) + AO (0-7) TBX GP (3) # AO (8) R3 O # AO (9-14) TBIR IRL + 8 Identique à IRL sauf que 1 # AO (3). Elle n'est utilisée que dans l'instruction RTN pour extraire le nouvel état de la mémoire. Un 1 est placé dans AL (3). CAL BITS + SIGNIF., TB # AOL Indique un accès de la mémoire à un emplacement auquel un branchement est effectué. Les décodages TBSL* et AOSL commandent la formation d'adresse à la phase 1 (#l). Les bits les plus significatifs sont calculés par la logique du compteur CL pour PCH+1 et PCH et par l'unité ALU pour PCH-1. Phase 1: Opération Commande TB (0-7) # AO (0-7) TBX PCH+1 # AO (8-14) AOSL*=1, BNF=1 PCH # AO (8-14) AOSL*=1, BNF=0 PCH-1 # AO (8-14) AoSL*=0 Phase 2: AO # PC CAL BITS + SIGNIF., IR # AOL Similaire à TB # AOL sauf en ce que seuls les quatre bits les moins significatifs du registre IR sont utilisés et que les bits 4 à 7 sont calculés par la logique du-compteur. Les décodages IRSL* et AOSL* commandent la formation d'adresse en commandant d'autres lignes de commande. Phase 1: Opération Commande IR (0-3) # AO (0-3) IRX CL (4-7) # AO (4-7) Aucune (par défaut) PCH+1 # AO (8-14) AOSL*=1, JF8=1 PCH # AO (8-14) AOSL*=1, JF8=0 PCH-1 # AO (8-14) AOSL*=0 Phase 2: AO + PC QL, OH, 4L, 4H, 8L, 8H, 12L, 12H Indique un accès de la mémoire à un registre directement spécifié par les circuits de commande SCC 180. Ne se produit qu'au cours d'une interruption. L indique l'octet le moins significatif, H indique l'octet le plus significatif. Phase 1: Opération Commande Registre # AD (0-3) CN2, CN3 L=O, H=1 + AD (4) ILH o # AD (5-13) TBIR 1 # AD (14) R9 Mettre à jour PC, ACL # AOH, TB # AOL Indique un accès de la mémoire 172 à une adresse spécifiée par le contenu des registres TB et ACL. L'adresse est également placée dans le compteur PC 192 à la phase 02. La formation d'adresse est commandée par le décodage AOTBX qui commande d'autres lignes de commande. Le contenu du registre ACL 183 est transféré par l'intermédiaire de l'unité ALU 181. Phase 1: Opération Commande TB (0-7) # AO (0-7) TBX ACL (0-6)+ AD (8-14) SAO Phase 2: AD # PC ACL # AOH, TB # AIL Identique à l'opération ci-dessus sauf que le compteur PC 192 n'est pas mis à jour a la phase 2. LEXIQUE DES DESTINATIONS (DEST) Les éléments encadrés (exemple ACL # DO # ACL) ne se produisent pas toujours. Lorsqu'un branchement ou un saut est effectué, la destination encadrée n'est effective que lorsque le registre PCH 192B doit être décrémenté pour produire l'adresse correcte. La décrémentation se produit toujours mais elle n'est pas chargée lorsqu'elle n'est pas nécessaire. Pour toutes les autres instructions, la destination est effective si l'instruction est également encadrée. Les éléments entre parenthèses sont des conditions sans signification qui se produisent mais ne font pas partie de l'opération désirée. Il y a sept transferts de données standards. Phase 1 Phase 2 Décodage 1 ALU # DO - Aucun (par defaut) 2 ALU # DO DO # ACL BF3 3 ALU # DB - DBDS ACH # DO 4 ALU # DB DB # ACH BF2 ACH # DO DO # ACL 5 ALU # AOH - AOTB* TB AOL DB # ACH ACH # DO DO # ACL 6 PCL # DO - PCSL PSX 7 ETAT # DO - STSL'PSX Toute variation de ces opérations est décodée séparément à titre d'exception. OPERATIONS DIVERSES Mise à jour de l'état Le nouvel état (groupe de registres, EQ, Report, inférieur, masque d'interruption) qui a été extrait de la mémoire remplace l'ancien état. Opération Décodage (Phase 1) TB # ETAT UPST*, CHST, CHST* (Phase 2) Remise à blanc ACL et-ACH Les registres ACL 183 et ACH 185 sont remis à O en commandant les entrées de restauration des bascules bistables (non repre- sentées) des registres. (Phase 1) (Phase 2) 0 #ACL, O # ACH CLAC Processeur contraint d'exécuter l'instruction TRA Le registre IB 196 a été remis à zéro à une instruction TRA. Le compteur de séquence (non représente) dans l'horloge 75 est remis à zero à la séquence 1 et le processeur exécute l'ins truction TRA avant l'instruction suivante de- la mémoire. Les interruptions sont empêchées de se produire tant que l'instruction TRA n'est pas achevée, AC7* + EQ L'indicateur EQ est mis par AC7* (utilisé par l'instruction d'entrée sortie I/O) à savoir le bit 7 du registre ACL 183. IC ENCL. IC L'instruction de report en entrée enclenche la bascule bistable IC (non représentée) dans l'unité ALU 181. "32" + DO 1 + DO (5). Fait partie du code POR. Lexique ALU Ceci est une liste de termes qui apparaissent dans la catégorie ALU. X NON-OP de l'unité ALU. Aucun décodage de l'unité ALU n'est fourni. L'unité ALU 181 produit par défaut sur son bus de sortie 182 un signal ne comportant que des 1. ACL + TB Les données de sortie de l'unité ALU 181 sont égales au contenu du registre ACL 183 plus ou moins le contenu du registre TB 197, selon que l'instruction était une addition ou une soustraction ACL X TB Les données de sortie de l'unité ALU sont une certaine combinaison logique qui dépend de l'instruction effective. ACL Les données de sortie de l'unité ALU sont égales au contenu du registre ACL. TB Les données de sortie de l'unité ALU sont égales au contenu du registre TB. (MODIF) Les données de sortie de l'unité ALU sont modifiées d'une certaine manière qui dépend de l'instruction. Exemple: lors d'une instruction d'entrée (IN) ou de sortie (OUT), TB , DO sauf en ce qui concerne les bits 5 et 6 qui sont modifiés pour indiquer O et respectivement OUT. Les données de sortie de l'unité ALU sont indiquées sous la forme TB MODIF. ACL INCR/DECR. Les données de sortie de l'unité ALU sont égales au contenu du registre ACL plus 1 ou moins 1 selon l'instruction. PCH - 1 Les données de sortie de l'unité ALU sont égales au contenu du registre PCH moins 1. PCH - I + CR L'opération est identique à l'opération PCH=1 mais le report est ajouté. TBNS, ITAL NON-OP de l'unité ALU. La destination des signaux de données entrant dans le processeur à la fin de la séquence 1 par l'intermédiaire du registre 205 doit être spécifiée par l'instruction précédente (bien que cette instruction ne soit plus dans la machine). Pour exécuter cette action, deux ensembles de bascules bistables sont nécessaires. Les bascules de l'unité ALU sont utilisées en tant que premier ensemble de bascules. Les bascules de l'unité ALU commandent le second ensemble, TBNS et ITAL. ITAL spécifie le registre ACL comme registre. destina- taire. TBNS ne spécifie aucune destination. La condition par défaut (aucun décodage) spécifie le registre TB comme registre destinataire. ADRESSAGE DE LA MEMOIRE DE TRAVAIL DU MICROPROCESSEUR CMP 172 Le microprocesseur SMP 62 de même que le microprocesseur CMP 170 peuvent accéder à la mémoire de travail 172 ainsi qu'aux registres d'entrée et de sortie 173, 174. Le microprocesseur SMP 62 accède aux registres 173, 174 et à la mémoire de travail 172 par l'intermédiaire du connecteur MPC 65, comme on le décrira ultérieurement. Comme représenté sur la figure 7, I'adresse de 16 bits pour le bus ADC n'est pas complè- tement utilisée pour accéder aux registres de la mémoire 172 ou aux registres d'entréejsortie 173, 174. Le bit 12 de l'espace d'adresse du microprocesseur CMP 170 détermine si la mémoire de travail 172 ou les registres 173, 174 sont accédés.Lorsque le uit 12 est un 1 binaire, les registres 173, 174 sont choisis, comme représenté par l'espace d'adresses d'entrée/sortie de 4K à 8K (1K = 1024 adresses). Lorsque le bit 12 est un O, l'espace de la mémoire de travail 172, de O à 4K est choisi. Les 12 bits les moins significatifs choisissent l'espace d'adresses à l'intérieur des deux sections, en utilisant des techniques de décodage d'adresse connues. Pour l'espace d'adresses d'entree/sortie, les bits 3 à 11 choisissent celles des microplaquettes de semi-conducteur constituant les registres d'entrée et de sortie 173, 174 qui sont choisies tandis que les bits O à 2 choisissent les positions binaires à l'intérieur des microplaquettes formant les registres 173, 174, comme on le décrira ci après. Pour la mémoire de travail 172, les bits O à 11 sont un espace d'adresse continu. L'adressage effectue par le microprocesseur SMP 62-accede à la mémoire de travail 172 et aux registres 173, 174 en deux segments avec des lectures d'un groupe de 8 octets à chaque acces, c'est-à-dire que la commande du microprocesseur SMP 62 au connecteur 65 demande au minimum un accès à 8 octets de signaux dans le sous-système CMC 61. Le premier segment correspond à l'espace d'adresses de la mémoire de travail. 172 tandis que le second segment correspond à l'espace d'adresses des registres 173, 174. La sélection des premier et second segments ainsi que des groupes d'octets sera mieux comprise à la lecture de la description du connecteur PCM 65. Dans l'espace d'adresses, les bits O à 7 du bus d'adresses ADS du microprocesseur 62 sont utilisés pour commander le connecteur MPC 65. Les quatre bits les plus significatifs sont des bits de sélection de dispositif tandis que les quatre bits les moins significatifs sont des bits de commande de sélection qui choisissent le segment et le groupe pour initialiser le connecteur MPC 65 pour un transfert de données, c'est-à-dire que l'espace d'adresses représentée sur la figure 7 pour le microprocesseur SMP 62 utilise le premier octet d'une commande de deux octets, comme il apparaftra clairement. Commande des bus Le connecteur MPC 65 et le circuit de sélection des bus 76 ont tous deux ete représentés sur la figure 8. Le circuit de sélection des bus 76 comprend un décodeur 104 qui répond aux signaux du microprocesseur SMP 62 qui lui sont appliqués sur les lignes de commande 103. Les signaux de sortie du décodeur 104 commandent, à leur tour, deux circuits ET-OU 105, 106 pour interconnecter sélectivement les bus d'un octet MI et DI ainsi que pour connecter la mémoire de pages 64 au bus DI par l'intermédiaire de circuits-ET/OU 106 et de la ligne 102 de sortie de la mémoire. Avec ces connexions, le microprocesseur SMP 62 commande complètement l'interconnexion des bus et, par conséquent, la circulation des données dans l'unité de commande de la machine, à processeurs multiples, MPMC 15 est sous la commande du logiciel ou de la microprogrammation.Les lignes 103 comprennent la ligne CWRT qui, lorsqu'elle est active, indique que le microprocesseur SMP 62 est en train de fournir des signaux qui doivent être écrits dans la mémoire de page 64, dans les registres d'entrée/sortie etc. . La ligne POR signifie que les circuits matériels (non représentés) ont entrepris une restauration à la mise sous tension et que les connexions des bus doivent être établies de façon à initialiser l'unité de commande MPMC 15 et la préparer à fonctionner. En général, la commande POR provoque l'écriture dans la mémoire de pages 64 des données du bus MI reçues de la mémoire rémanente NVS 19. La ligne de signal ADS 12 signifie que le cycle de microprocesseur SMP 62 est un cycle d'adressage; c'est-à-dire qu'une adresse de mémoire est transmise à la mémoire de page 64.La ligne DMACY indique que l'unité d'accès direct à la mémoire DMA 64A a accès a la mémoire de pages 64. Les signaux des- lignes 11XCC et d2DMAM sont des cycles d'horloge correspondant respectivement aux phases f1 et 02 de l'horloge du système. Des circuits de porte supplémentaires servant à engendrer ces signaux n'ont pas été représentés pour plus de brièveté. La ligne CHNSW porte un signal définissant la période de temps pendant laquelle les données du bus DI sont valides au cours du temps d'horloge 02 du système. Les lignes INHIO et INHOT portent des signaux de commande d'essai spéciaux pour l'essai des circuits et, par conséquent, n'entrent pas dans le cadre de la présente description. Le décodeur 104 répond aux signaux des diverses lignes 103 pour actionner les circuits ET-OU 105, 106 de la manière décrite. La porte d'entrée Al du circuit ET-OU 105 raccorde le bus DI au bus MI étant donné que les entrées de la partie d'entrée A1 sont le signal DI-MI, le signal DI-OK et les signaux DI et que la sortie est directement connectée au bus MI. D'une manière similaire la porte d'entrée A2 du circuit ET-OU 105 interconnecte le bus DI au bus MI sous la commande de l'unité d'acces direct à la mémoire DMA. En outre, le décodeur 104 détecte les signaux de commande du microprocesseur SMP 62 indiquant que cette connexion au bus DI est autorisée (MI-QK). Le circuit ET-OU 106 connecte sélectivement le bus 10X du connecteur MPC 65 au bus MI ou les signaux de sortie de la mémoire de pages 64 reçus sur la ligne 102 au bus MI. La porte d'entrée Al transmet les signaux 10X reçus chaque fois que la ligne IOIN du décodeur est active et que la connexion au bus DI est autorisée (DI-OK). En outre, la porte d'entrée A2 est rendue active lorsque le décodeur signifie qu'il ne s'agit pas d'une entrée/sortie (NONIO) c'est-à-dire qu'il s'agit d'une référence à la mémoire. En ce qui concerne l'exposé ci-dessus, on notera que des cycles de la mémoire de pages 64 sont effectués continuellement et que le circuit ET-OU 106 déconnecte ses sorties du bus DI au cours des opérations d'entrée, c'est-à-dire lorsque des signaux des lignes 10X doivent être transférées au bus MI. Le connecteur MPC 65 est construit en utilisant une philosophie de construction similaire. Le décodeur 110 répond aux signaux des lignes 103 du microprocesseur SMP 62 comme indique sur le dessin et aux signaux d'adresse ADS pour rendre actifs des circuits ET 111 afin de transmettre les signaux du bus IO du sous-système CMC 61 au bus 10X en vue de leur transfert par les circuits ET-OU 106. D'une manière similaire, le décodeur 112 répond aux signaux des lignes de commande 103 du microprocesseur SMP 62 et aux signaux ADS pour rendre actifs des circuits ET 113 pour trans férer les signaux du bus DI au bus IO du sous-systeme CMC. En général, le connecteur MPC 65 fonctionne-en deux phases. La première phase est la phase de transfert des données.L'adresse de la mémoire dans le soussystème CMC qui comprend la mémoire morte de commande 171, la mémoire de travail 172 et les registres 173, 174 est enregistrée dans le registre 114 du connecteur MPC 65 au temps ADS 12 du bus ADS. Des signaux de commande supplémentaires sont fournis sur le bus DI. Le registre 114 du connecteur MPC fournit ses signaux de sortie au bus ADC pour adresser les modules précités dans le sous-système CMC 61. Lors du cycle suivant et lors des cycles successifs, les données sont transférées par l'inter médiaire des circuits ET 113 du bus DI au bus IO comme indiqué par les adresses fournies au bus ADC à partir du registre 114 du connecteur MPC 65. Le registre 114 du connecteur MPC 65 contient un bit de commande (non représenté) qui masque le microprocesseur CMP 170 en fournissant un signal de masquage sur la ligne 114A. Ce signal de masquage rend l'espace de mémoire du sous-système CMC 61 accessible au microprocesseur SMP 62 en lui permettant d'exercer une commande complète d'obtenir des informations d'exécution des diagnostics et d'effectuer le chargement du programme. Mise en oeuvre de l'invention au moyen d'un microprogramme Il est considéré comme préférable que l'ordinateur décrit ci-dessus soit microprogramme pour mettre en oeuvre la présente invention. Les instructions en code d'origine relatives à l'ordinateur ci-dessus décrit sontindiquées ci-après pour l'exécution des parties principales des exemples du tableau I. Naturellement, une machine réalisée en pratique comprendrait un plus grand nombre de caractères de commande établis en suivant les enseignements énoncés ci-après. Le code est organise sur la base de la colonne du texte universel. Le microprogramme d'ordinateur n'est pas organisé de telle sorte que chaque exemple ne soit contenu que dans une unité sous-routine de microprogramme. Le décodage du caractère de commande dans la colonne du texte d'entrée a pour résultat l'appel de routines de microprogramme dans lesquelles sont incorporés des caractères ou symboles de commande du texte universel, c'est-à-dire que de tels caractères sont incorporés sous forme de constantes à l'intérieur de la routine de microprogramme appelé. Les caractères de commande "HT" ou "RHT" du texte universel sont manipulés par le microprogramme indiqué dans le tableau Il et appelé par le décodage du caractère RHT du texte d'entrée. Dans tous les tableaux EMPL indique l'emplacement de mémoire, CODRES signifie définition de l'opération de l'instruction (code resultant), FACI et FAC2 sont les facteurs et "Instruction en langage d'origine" désigne le commentaire du codage. Dans le tableau Il ci-dessous, l'instruction de branchement et liaison BAL, à l'emplacement 6354 de la mémoire et portant le code résultant 33E 547 appelle une sous-routine de microprogramme dont le code d'origine n'a pas été représenté en détail ici. Le code d'origine de tableau Il pour une fonction de tabulation place les premier et dernier espacements dans le mouvement de tabulation. La sous-routine de microprogramme "SPINS" est une boucle interactive qui ajoute les symboles d'espacement intermédiaires. Par exemple, si une tabulation est prévue pour pour 8 espacements la sous-routine SPINS a six itérations pour ajouter six symboles d'espacement aux premier et dernier symboles ajoutés par le code d'origine. Etant donné que les boucles interactives sont bien connues, cette liste de codes nta pas été donnée. Le dispositif d'entrée à laser 12 n'a pas de fonction de tabulation. Par conséquent, pour obtenir une fonction de tabulation des symboles d'espacement égaux à la distance de tabulation sont ajoutés au texte. En fournissant un tel texte au terminal LT 16, les symboles d'espacement sont supprimés. Le symbole universel PDLM comporte un symbole similaire RDLM. Le symbole RDLM concerne le dispositif laser LT 12" tandis que le symbole RDLM se rapporte au terminal LT 16. Les deux symboles actionnent les unités respectives pour produire des résultats similaires. Dans le tableau III ci-après, le code d'origine RDLM a été représenté étant bien entendu que le code d'origine complémentaire est utilise pour le code PDLM. Le tableau III comprend également le microcode SOF. TABLEAU II - CODE D'ORIGINE DU MICROPROGRAMME HT OU RHT EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE C . . . . . TRAITER PUST - REND ACTIVE MEM. TAMP. DE SORTIE IMPRIMANTE PUTST ACOUTBFR . . . . . SI NUMEROTATION DES LIGNES MISE 633E A677 0277 LBL ERR2B 6340 95 0005 TP NUMLNRF 6341 45 6345 JE STRRORO . . . . . ALORS . . . . . CHARGER UN CODE DE TABUL. DANS C MEM. TAMP. DE SORTIE (SI ENREG. C & TAB. DEMANDEE ENREGISTREE, LE C NO. LIGNE DE LIGNE SUIVANTE C SERAIT DECALE A DROITE) 6342 AEEC 00EC LI &num;HT 6344 06 6346 J *+2 . . . . . SINON . . . . . . CHARGER CAR (HT ou RHT) DANS C MEMOIRE TAMPON DE SORTIE 6345 9C 000C STRRORQ LN ACINBFR 6346 BD 000D STN ACOUTBFR . . . . . FIN SI . . . . . REND ACTIVE MEM. TAMP. SORTIE 6347 FD 000D LRB ACOUTBFR IMPRIMANTE SI MEM. TAMP. SORTIE IMPRIMANTE ACTIVE # ADR. FIN + 1 DE MEM. . . . . . . TAMP. DE SORTIE (CONTROLE > C EFFECTUE DANS LE CAS DE SUR C CHARGE DE MEM. TAMP. DE TEXTE C DE MARGE) 6348 E4 0004 LR OTENDBFR 6349 CD 000D SR ACOUTBFR 634A 3F4F 634F BH *+5 . . . . . ALORS . . . . . . APPELER SURCHARGE - PREND SOIN C DES CONDITIONS DE SURCHARGE DE 634C 30685E 0000 5E63 BAL TEMPSVCR, SURCHARGE TOUTES LES MEMOIRES TAMPONS . . . . . FIN SI 634F AEE4 00E4 LI &num;PDLM . . . . . CHARGER SEUL DELIMITEUR D'IMPRES. 6351 BD 000D STN ACOUTBFR 6352 A9D6 00D6 . . . . . APPELER SOINS-INSERE DES ESPACTS C JUSQU'A BUTEE DE TABULATION 6354 33E547 0003 A7E5 BAL TEMPSCAR, SPINS . . . . . REND ACTIVE MEM. TAMP. DE SORTIE SRG GROUPTV IMRPIMANTE 6357 A9D7 00D7 6359 FD 000D LRB ACOUTBER . . . . . SI MEM. TAMP. SORTIE IMPRIMANTE C ACTIVE # ARD. FIN + 1 DE MEM. 635A E4 0004 LR OTENDBFR TAMPON DE SORTIE 635B CD 000D SR ACOUTBFR 635C 3E6l 6361 BH *+5 . . . . . ALORS . . . . . . APPELER SURCHARGE-PREND SOIN C DES CONDITIONS DE SURCHARGE 6353 30685E 0000 5368 BAL TEMPSVCR, SURCHARGE DE TOUTES LES MEM. TAMP. . . . . . FIN SI . . . . . CHARGER SEUL DELIMITEUR C D'IMPRESSION DANS MEMOIRE 6351 AEE4 00E4 LI #PDLM TAMPON DE SORTIE 6363 BD 000D STN ACOUTBFR TABLEAU III - CODE D'ORIGINE SOF, RPDM EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE . ALORS C . . TRAITER PUTST-REND ACTIVE MEM. TAMP. PUTST ACOUTBFR DE SORTIE IMPRIMANTE . METTRE EN MEM. DELIMITEUR D'ENREGIS. 4A0A AEE5 00E5 LI &num;RDLM DANS MEM. TAMP. DE SORTIE 4A0C BD 000D STN ACOUTBFR . FIN SI . TRAITER PUTST-REND ACTIVE MEM. TAMP. C DE SORTIE IMPRIMANTE NOPUT PUTST ACOUTBFR . CHARGER CODE SOF DANS MEM. TAMP. DE SORTIE 4A13 AEE7 00E7 LI &num;SOF 4A15 BD 000D STN ACOUTBFR . TRAITER PUTST-REND ACTIVE MEM. TAMP. C DE SORTIE IMPRIMANTE PUTST ACOUTBFR . CHARGER No. SOF DANS MEM. TAMP. DE SORTIE 4AlC 9C 000C LN ACINBFR 4AlD BD 000D STN ACOUTBFE . TRAITER FETCHST-REND ACT. MEM. TAMP. C ENTREE IMPRIMANTE FETCHST ACINBFR . TRAITER PUTST-REND ACT. MEM. TAMP. DE SORTIE C IMPRIMANTE PUTST ACOUTSFE C . CHARGER No. DES OCTETS DE SEQ. SOF DANS C MEM. TAMP. DE SORTIE & DANS COMPTEUR 4A2A 9C 000C LN ACINBFR TAMP (TPTEMPlB) & DANS OCTET LONGUEUR 4A2B AL82 0282 STBL TPTEMPlB TEMP (OTMPB) 4A2D AlCl 02Cl STBL OTMPB 4A2F BD 000D STN ACOUTBFR . PENDANT QU'OCTET DU COMPTEUR TEMP. N'EST PAS 0 4A30 A800 0000 LOADSOF CI ZERO . DO 4A32.3D49 4A49 BE THRU . . TRAITER FETCHST-REND ACT. MEM. TAMP. C ENTREE IMPRIMANTE FETCHST ACINBFR . . TRAITER PUTST-REND ACTIVE MEM. TAMP. C SORTIE IMPRIMANTE PUTST ACCUTBFR . . METTRE EN MEM. CAR. DANS MEM. TAMP. DE 4A40 9C 000C LN ACINBFR SORTIE 4A4l BD 000D STN ACOUTBFR . . DECREMENTER OCTET COMPTE TEMP. 4A42 A682 0282 LBL TPTEMPLB 4A44 2A Sl 4A45 Al82 0282 STBL TPTEMPLB 4A47 2C30 4A30 B LOADSOF . FIN PENDANT QUE . SI MEM. TAMP. ENTREE ACTIVE ET NON MEM. 4A49 A6BB 02BB THRU LBL IOPORTB TAMPON DE PAGES 4A4B 96 0006 TP BIT6 4A4C 66 4A56 JNE ENDSKIPI . ALORS . . TRAITER PUTST-REND ACT.MEM. TAMP. SORTIE IMPRIMANTE C PUTST ACOUTEFR . . METTRE DELIMITEUR D'ENREGIST. DANS MEMOIRE TAMPON DE SORTIE 4A53 AEE5 00E5 LI &num;RDLM 4A55 BD 000D STN ACQUTBFR TABLEAU IV - CODE D'ORIGINE DE PASSAGE DE LA LIGNE EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE 5BA7 9C 000C LN ACINBFR 5BA8 3EAC 5BAC BH NOTENDPG . ALORS . . CHARGER CODE NL DANS MEM. TAMP. DE SORTIE C (CECI EMPECHE 1ère LIGNE DE NOTE EN C BAS DE PAGE EVENTUELLE OU D'EN-TETE C DE LA PAGE SUIVANTE DE COMMENCER A C ESC DES INDEXES LORSQU'ELLE EST 5BAA AEE5 00E5 LOADNL LI &num;NL ENREGISTREE) . SINON . . CHARGER CODE LF DANS MEM. TAMP. DE 5BAC BD 000D NOTENDPG STN SORTIE ACOUTBFR TABLEAU V - CODE D'ORIGINE EMF EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE 68D1 FD 000D MOVESTl LRB ACOUTBFR . . Sl MEM. TAMP. SORTIE IMPR. ACTIVE # C ADR. FIN+1 MEM.TAMP. SORTIE C (CONTROLE > EFFECTUE DANS LE CAS C DE SURCHARGE DE MEM. TAMP. DE TEXTE 68D2 F4 0004 LR OTENDBFR DE MARGE) 68D3 CD 000D SR ACOUTBFR 68D4 3ED9 68D9 BH *+5 . . AIORS . . . APPELER SURCHARGE-PREND SOIN DES C CONDITIONS DE SURCH. DE TOUTES LES 6BD6 306853 000C 5E68 BAL TEMPSVCR, SURCBARGE MEM. TAMP. . . FlN SI . . METTRE EN MEMOIRE CODE EMF (FIN DE C SEQUENCE A IMPRIMER MAIS NI ENRE C GISTREE NI TRANSMISE) DANS MEMOIRE 68D9AEFE 00FE LI &num;EME TAMPON DE SORTIE 68D8 BD 000D STN ACOUTBFR TABLEAU VI - CODE D'ORIGINE VT EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE . . . ALORS . . . . . REND ACT. MEM. TAMP. SORTIE IMPR. 6884 FD 000D LRB ACOUTBFR . . . . . SI MEM. TAMP. SORTIE IMPR. # ADR. C FIN+1 DE MEM. TAMP. SORTIE C ( > CONTROLE EFFECTUE DANS LE C CAS DE SURCHARGE DE MEM. TAMP. 6885 E4 0004 LR OTENDBFR TEXTE DE MARGE) 6886 CD 000D SR ACOUTBFR 6887 3E8C 688C BH *+5 . . . . ALORS . . . . . APPELER SURCHARGE-PREND SOIN DES C CONDITIONS DE SURCHARGE DE 6889 30685Z 0000 3E68 BAL TEMPSVCR, SURCHARGE TOUTES LES MEM. TAMP. . . . . FIN SI . . . . METTRE EN MEMOIRE CODE VT (DEBUT C DE SEQUENCE A IMPRIMER MAIS C NI ENREGISTREE NI TRANSMISE) C DANS MEM. TAMP. DE SORTIE 688C AEFD 00FD LI &num;VT 682E BD 000D STN ACOUTB@R TALBEAU VII - CODE D'ORIGINE RFF EMPL CODRES FAC1 FAC2 INSTRUCTION EN LANGAGE D'ORIGINE . . ALORS 4562 ALB3 02B3 STBL FLAG3B . . . . METTRE EN MEMOIRE CODE RFF 4564 AEF9 00F9 LI &num;RFF 4566 BD 000D 2RORTB STN ACOUTBFR . . . . NO. ZERO DE NIVEAUX DE DECALAGE 4567 25 CLA DE DEBUT DE LIGNE ACTIF 4568 Al9A 029A STBL RTABNUMB Le tableau IV ci-dessus représente le microprogramme LF, le tableau V le microprogramme EMF, le tableau VII le code d'origine RFF. Le code servant à supprimer le texte universel a été omis étant donné qu'il est sans aucune complication. Traitement du texte du type à mémoires mortes Sur la figure 9 à laquelle on se référera maintenant, on a représenté un type de codeur-décodeur utilisable avec l'unité de mise en mémoire et de transmission représentée sur la figure 1B sous la forme d'une machine de production de copies. Le texte d'entrée est reçu soit du terminal local LT-16 soit du connecteur RTC 17 par l'intermédiaire d'une mémoire tampon (non représentée). Une unité de commande 600, qui peut être constituée par un programme d'ordinateur du microprocesseur SMP 62, choisit l'un des deux ensembles de portes ET 300 ou 302 pour recevoir les signaux de texte respectivement du terminal LT et du connecteur RTC 17. Les signaux de texte reçus du connecteur RTC 17 sont transmis caractère par caractère à deux mémoires mortes 303 et 304.La mémoire morte 304 prend les signaux de texte et fournit des signaux de données ou de texte, codes, ajustés à la mémoire de texte universel ou mémoire de pages 64. Les caractères de commande provenant du connecteur RTC sont décodés dans la mémoire morte 303. Le décodeur à mémoire morte 303 peut contenir un ou plusieurs caractères correspondant à chaque caractère de commande reçu du connecteur RTC 17. Dans le cas ou des caractères de commande supplémentaires doivent être ajoutés pour engendrer le texte universel, le décodeur a mémoire morte 303 comporte une ligne 305 de maintien du texte en attente qui fournit des signaux par l'intermédiaire d'un circuit OU 306 à une mémoire tampon, (non représentée) pour retarder la transmission du texte jusqu'à ce que les caractères de commande aient pu être convenablement introduits dans la mémoire de texte universel 64. Le signal de la ligne 305 actionne également une commande de cycles 307 pour fournir des cycles supplémentaires de lecture de la mémoire morte afin d'extraire les caractères de commande supplémentaires. Le décodeur à mémoire morte 303 comporte également une zone de mémoire fournissant des signaux sur un câble 308 à la commande de cycles 307 indiquant le nombre de caractères supplémentaires qui doivent être transférés de la mémoire morte 303 à la mémoire de texte-universel 64. La commande de cycles 307 fournit des impulsions de lecture synchronisées sur la ligne 309 avec des informations d'adresse sur le câble 310 pour extraire de tels caractères supplémentaires.En d'autres termes, la zone de bits transmise sur le câble 308 comprend non seulement le nombre des caractères qui doivent être lus mais également l'adresse de début dans la mémoire du premier caractère de commande supplémentaire. En outre, la commande de cycles 307 fournit un signal de maintien en attente sur la ligne 311 jusqu'à ce que tous les caractères supplémentaires aient été extraits de la mémoire morte 303. Jusqu'à suppression du signal de maintien de la ligne 311 la mémoire tampon (non représentée) continue à fournir le même texte d'entrée, comme précédemment décrit.A cet égard, on notera que la mémoire de texte universel 64 comprend également un circuit d'adressage qui comprend un incrementeur d'adresse (non représenté) de sorte que le texte reçu, tel que modifié par les mémoires mortes 303, 304 est contenu dans des emplacements contigus de la mémoire de texte universel 64. Le transfert des signaux de traitement de texte universel la mémoire rémanente NVS 19 n'a pas été représenté pour plus de brièveté. L'analyseur-modificateur de texte 60CA pour le terminal LT 16 fonctionne de la même manière que l'analyseur 60CB pour le connecteur RTC 17 qui vient d'être décrit. La construction des mémoires mortes 303, 304 est effectuée conformément aux techniques de constructions connues de telles mémoires, le contenu des signaux de ces mémoires étant conforme a celui indique dans le tableau I ci-dessus. On peut constater a la lecture de la description qui précède que le traitement des textes pour la commande des caractères de commande nécessite un certain nombre de cycles supplémentaires en dehors de ceux nécessaires pour la simple transmission. A cet égard, toute opération de traitement de texte nécessite de tels cycles supplémentaires ce qui réduit le débit d'une unité de mise en mémoire et de transmission ou d'une unité de production de copies. La partie de sortie de la version a mémoires mortes de l'invention servant a fournir un texte adapté a été représentée comme constituée par une unité 56A qui comporte une unique mémoire morte 315. La mémoire de texte universel 64, sous la commande du microprocesseur-SMP 62, fournit le texte universel à la mémoire morte, caractère par caractère. Le décodeur à mémoire morte 315 est réalisé de façon a transmettre un texte adapté à l'une des diverses unités destinataires, étant entendu qu'une mémoire morte particulière est prévue pour chaque destinataire. Chaque fois qu'un caractère de commande du texte universel doit être supprimé, le décodeur a mémoire morte 315 transmet une zone de signaux indiquant le nombre des caractères de commande qui doivent être supprimes. Par exemple, si un caractère de commande doit être supprime, le décodeur à mémoire morte 315 fournit un signal de saut du caractère suivant-à la mémoire de texte universel pour supprimer la lecture du caractère de commande suivant Si cinq caractères doivent être supprimés, les cinq caractères suivants ne sont pas transmis par la mémoire et ainsi de suite. Par conséquent, la transmission du texte de la mémoire de texte universel 64 au dispositif destinataire comprend un nombre minimal de cycles, accroissant ainsi au maximum le débit de l'unité de mise en mémoire et de transmission dans le mode de transmission. Cette suppression des cycles de traitement de texte est un facteur important pour fournir les performances maximales a un coût minimal. Un examen du tableau I montre que, dans certains cas, le premier caractère de commande reçu du texte universel doit être supprimé. Dans un tel cas, le décodeur à mémoire morte 315 est programme pour remplacer le premier caractère de commande par le second et pour sauter le second caractère même si ce caractère est acceptable pour le texte adapté. Par exemple, dans la première ligne du tableau I, lorsqu'on passe des caractores de commande du texte universel FHI CHI à celui du texte d'imprimante, le caractère de commande CHI doit être utilisé. Cependant, il est désirable de n'utiliser qu'un cycle de transmission de caractère.Par conséquent, lorsque le décodeur à mémoire morte 315 est destiné à la transmission du texte d'imprimante, le décodage du caractère FHT par le décodeur a mémoire morte 315 provoque la transmission du caractère CHI au cours de ce premier cycle plus un saut d'une position de caractère pour supprimer la transmission du caractère CHI du texte universel. Le même procédé est utilisé par la suppression d'autres caractères de commande. Dans certains cas, le texte universel peut avoir un nombre variable de caractères de commande pour un caractère d'entrée donné. Dans une telle situation, le texte universel comprend une zone de longueur indiquant le nombre des caractères de commande. Cette zone de longueur est décodée par le décodeur à mémoire morte 315 pour déterminer le nombre effectif de caractères à sauter dans la mémoire de texte universel dans le mode de sortie ou de transmission. Bien que l'on ait décrit dans ce qui précède et représenté sur les dessins les caractéristiques essentielles de l'invention appliquées à un mode de réalisation préféré de celle-ci, il est évident que l'homme de l'art peut y apporter toutes modifications de forme ou de détail qu'il juge utiles, sans pour autant sortir du cadre de ladite invention. REVENDICATIONS 1.- Procédé de traitement de texte du type a mise en mémoire et transmission, pour envoyer des signaux à l'une quelconque parmi une pluralité de diverses unités de destination, lesdites unités de destination utilisant des formats de signaux différents qui ne sont pas compatibles les uns avec les autres, essentiellement caractérisé en ce que:: on reçoit des signaux indicatifs de données et des signaux de commande associés avec lesdits signaux indicatifs de données, on analyse lesdits signaux de commande reçus, et selon la source des signaux, on modifie lesdits signaux de commande reçus par substitutions et additions d'autres signaux de commande pour engendrer un jeu de nouveaux signaux de commande situés à l'intérieur desdits signaux indicatifs de données dans les mêmes positions relatives que les signaux de commande reçus et comprenant dans lesdits nouveaux signaux de commande des signaux de commande pour toutes les destinations possibles. 2.- Procédé selon la revendication 1 essentiellement caractérisé en ce qu'on inclut tous lesdits signaux de commande reçus dans ledit jeu de nouveaux signaux de commande. 3.- Procédé selon la revendication 1, essentiellement caractérisé en ce que: on sélectionne l'une desdites unités de destination pour recevoir lesdits signaux indicatifs de données, on transmet ces signaux indicatifs de données et ceux desdits nouveaux signaux de commande utilisables par ladite unité de destination sélectionnée, et on supprime tous les autres nouveaux signaux de commande, et on ajuste la transmission de façon qu'un jeu continu de signaux sans aucun espacement soit transmis. 4.- Procédé selon la revendication 3, essentiellement caractérisé en ce qu'on traite les signaux de texte lorsque lesdits nouveaux signaux de commande se trouvent avec tous lesdits signaux de texte. 5.- Procédé selon la revendication 3, essentiellement caractérisé en ce qu'on enregistre lesdits signaux de texte dans une mémoire non volatile en vue d'une retransmission ultérieure et on fait toutes les fonctions de traitement de texte avant d'enregistrer lesdits signaux dans ladite mémoire non volatile. 6.- Procédé de traitement de textes appliqué à une machine de production de copies ayant des possibilités de transmission de signaux du type à mise en mémoire et transmission, et des moyens d'impression de sortie dans laquelle les liaisons de communication exigent des codes de commande non compatibles les uns avec les autres et par rapport auxdits moyens d'impression de la machine, essentiellement caractérisé en ce que:: on reçoit des signaux indicatifs de données de l'une des unités de communication en même temps que des signaux de commande entrelacés associés avec lesdits signaux indicatifs de données, on analyse lesdits signaux de commande, on modifie lesdits signaux de commande reçus par substitutions et additions pour engendrer un jeu de nouveaux signaux de commande entrelacés parmi lesdits signaux indicatifs de données dans les mêmes relations que lesdits signaux de commande reçus sont entrelacés parmi lesdits signaux indicatifs de données et on emmagasine tous lesdits signaux indicatifs de données en même temps que lesdits nouveaux signaux de commande en vue de leur utilisation ultérieure par l'une desdites unités de communication ou lesdits moyens d'impression. 7.- Procédé selon la revendication 6, essentiellement caractérisé en ce qu'on transmet auxdits moyens d'impression lesdits signaux de commande et lesdits signaux indicatifs de données avant de les enregistrer dans la mémoire et on supprime ceux des nouveaux signaux de commande qui ne sont pas utilisables par lesdits moyens d'impression, tout en emmagasinant simultanément tous les signaux indicatifs de données avec lesdits nouveaux signaux de commande en vue de les utiliser en fonctionnement répétitif dudit moyen d'impression ou en vue de les transmettre à l'une desdites unités de communication.