FR 2478845 A1 19810925 FR 8105499 A 19810319 La présente invention concerne les équipements de traitement de données et, en particulier, les équipements de traite- ment de données qui comportent un appareil de diagnostic. La fonction d'un appareil de diagnostic est de contrôler le fonctionnement de l'équipement de traitement de données, de vérifier s'il fonctionne correctement et, si tel n'est pas le cas, de fournir des informations sur la nature de la défaillance. Pour effectuer cette fonction, l'appareil de diagnos- tic est ordinairement connecté de façon à recevoir des signaux indi- quant l'état présent de parties de l'équipement de traitement de données. Il est possible de contrôler cet état dans le but d'assurer qu'il soit correct. En plus, il a été proposé de rendre l'appareil de diagnostic apte à effectuer une commande de pré-vidage de l'équi- pement de traitement de données de manière à lui permettre d'effectuer certaines opérations déterminées par l'appareil de diagnostic. Le cours ou le résultat de ces opérations est alors contrôlé. L'invention propose un équipement de traitement de données comprenant un dispositif principal de. traitement et un 'appareil de diagnostic; le dispositif principal de traitement comporte un processeur central possédant une mémoire de commande sur laquelle il peut être écrit, cette mémoire étant destinée à recevoir un micro- programme commandant le fonctionnement du processeur central, et l'appareil de diagnostic est en mesure de contrôler et de commander des opérations du processeur central; l'agencement de ces éléments est tel que, en fonctionnement, le processeur central fait parvenir des données choisies par lui-même à l'appareil de diagnostic en écri- vant ces données en un emplacement prédéterminé de la mémoire de commande, et l'appareil de diagnostic détecte la réalisation d'une opération d'écriture en cet emplacement, puis provoque la lecture de l'information décrite en cet emplacement et son transfert jusque dans l'appareil de diagnostic lui-même. Les informations qui sont transférées à l'appareil de diagnostic ne se limitent donc pas aux indications de ce qui se passe dans l'équipement de traitement de données, mais elles peuvent comporter des messages choisis par l'équipement de traitement de données. En plus de messages d'erreur qui apparaissent dans le cas d'un fonctionnement défectueux, il peut communiquer des informations 2- sur son fonctionnement correct, par exemple pour indiquer l'étape atteinte dans la réalisation d'une série d'opérations. L'invention permet d'effectuer le transfert avec une économie considérable de ressources. La description suivante, conçue à titre d'illustra- tion de l'invention, vise à donner une meilleure compréhension de ses caractéristiques et avantages; elle s'appuie sur les dessins annexés, parmi lesquels: - la figure 1 est un schéma de principe de l'équipe- ment complet; - la figure 2 est un schéma de principe du dispositif principal de traitement; - la figure 3 est un schéma de principe de l'unité de diagnostic; - la figure 4 est un schéma de principe de l'unité d'interface de diagnostic; et - la figure 5 est un schéma logique de parties de l'unité d'interface de diagnostic. L'équipement complet Comme le montre la figure 1, l'équipement complet de traitement de données est constitué d'un dispositif principal de traitement 1, auquel est associée une'unité de diagnostic 2 sous commande d'un poste d'opérateur 3. Le dispositif principal 1 comporte un processeur central 5, une mémoire principale 6 et divers phériphériques, parmi lesquels une mémoire sur disques 7 et une console vidéo 8 sont repré- sentées. En fonctionnement normal, il exécute des programmes contenus dans la mémoire principale 6 et est commandé par l'opérateur, qui utilise la console vidéo 8. L'unité de diagnostic2 et l'unité d'opérateur 3 servent à contrôler et vérifier le dispositif de traitement principal afin de déterminer s'il fonctionne correctement, de déterminer la cause de défaillances susceptibles de se produire, et de mettre tout l'équipe- ment en fonctionnement, par exemple au début de la journée, de manière contrôlée. L'unité de diagnostic 2 contient un ensemble microproces- seur 10. Cet ensemble comporte un microprocesseur 11 commandé par un microprogramme contenu dans une mémoire fixe 12 et il utilise une mémoire à accès direct 13 comme mémoire de travail. L'ensemble micro- processeur 10 est couplé au processeur central 5 du dispositif prin- cipal par l'intermédiaire d'une unité d'interface 14, permettant de contrôler et de commander l'état de divers éléments du processeur central 5. Les actions réellement effectuées sont spécifiées par des programmes contenus dans la mémoire fixe 12. L'unité de diagnostic 2 communique avec l'unité d'opé- rateur 3 par une liaison normale 15 pour bits en série, à laquelle il est connecté par l'intermédiaire d'un émetteur-récepteur synchrone- asynchrone universel 16. Unitéd'éatu L'unité d'opérateur 3 comporte également un ensemble à microprocesseur. Il possède un microprocesseur 18 commandé par un microprogramme contenu dans une mémoire fixe 19 et il utilise une mémoire à accès direct 20 comme mémoire de travail. La liaison 15 est connectéeà un émetteur récepteur synchrone-asynchrone universel 21, et il peut exister facultativement un deuxième émetteur-récepteur synchroneasynchrone universel 22 connecté à une liaison 23 pour communications extérieures qui permet de diagnostiquer ou de commander à distance l'équipement complet. L'unité d'opérateur 3 comporte également un panneau d'opérateur 24 permettant d'introduire des informations dans l'unité ou d'en recevoir. Le panneau 24 comporte des indicateurs qui présentent l'état de l'équipement, en précisant par exemple que le processeur central 5 exécute un programme, ou en donnant le type de la défail- lance, par exemple erreur de parité, d'autres indicateurs étant par exemple un élément d'affichage à plusieurs chiffres, un clavier, et des touches de fonction telles que "chargement" ou "vidage de mémoire". L'unité d'opérateur 3 envoie des ordres et des données par la liaison 15 à l'unité de diagnostic 2. Les ordres appellent des programmes contenus dans la mémoire fixe 12 qui permettent de commander le fonctionnement de l'unité de diagnostic, et les données peuvent être transmises au dispositif principal 1. En sens inverse, des données, qui peuvent venir du dispositif principal 1 ou de l'unité de diagnos- tic, sont envoyées via la liaison 15 à l'unité d'opérateur 3, o elles peuvent être affichées sur le panneau 24. Dispositif principal de traitement Le processeur central 5 est microprogrammé. Ainsi, les signaux de commande qui gouvernent son fonctionnement sont obtenus par décodage de micro-instructions contenues dans une mémoire de commande. Ainsi que le montre la figure 2; la mémoire de commande, désignée par le numéro de référence 25, est une mémoire du type sur laquelle on peut écrire et elle est connectée à une ligne commune d'adresses 26 et à une ligne commune de données 27. Son signal de sortie est envoyé via la ligne commune de données 27 à un registre 28 de micro-instructions, o il est décodé par une unité de commande 29 qui délivre les signaux de commande à destination des diverses parties du processeur central 5 dans un ordre approprié. Toutes les manipulations de données, y compris celles relatives au calcul des adresses de la mémoire de commande, ont lieu dans un organe de traitement 30. Celui-ei contient une section de registres 31, dont la plupart sont à usage universel, mais l'un d'eux, le registre 32, contient des informations d'état et le compteur du microprogramme. le contenu de l'un quelconque de ces registres peut être délivré par l'intermédiaire de l'une de deux sorties, dont l'une conduit à un registre 33 et l'autre à un registre 34. Ces deux registres omnibus sont les registres source d'une unité arithmétique et logique 35, qui effectue les manipulations habituelles et produit des signaux d'état indiquant par exemple le signe d'une opération arithmétique. Les registres 33 et 34 sont également connectés bout à bout en registre à décalage à recirculation unique afin d'effectuer des décalages sur un nombre voulu de positions. La sortie de l'unité arithmétique et logique 35 est renvoyée à un registre choisi de la section 31. Des données sont introduites dans l'organe 30 par la ligne omnibus de données 27 ou par le registre 28 de micro-instruc- tions. Elles sont directement transmises à l'unité arithmétique et logique 35,par l'intermédiaire d'un multiplexeur 36 se trouvant sur le circuit en provenance du registre 34. Les données peuvent être extraites de l'organe 30 pour être délivrées à la ligne omnibus de données 27 à partir d'un registre 37, qui reçoit le signal de sortie de la section 31 de registres qui est également transmis au registre 33. De plus, des données peuvent être adressées à la ligne omnibus d'adresses 26 soit à partir de l'entrée du registre 34, soit à partir de la sortie du registre 33. La sélection de la source parmi ces registres, y compris le registre 28 de micro-instructions, est effectuée par un multiplexeur 38. Les lignes omnibus de données et d'adresses 26. et 27 communiquent avec une unité d'interface 40 relative à une voie omnibus principale 41 à laquelle sont reliées la mémoire principale 6 et les unités de commande périphériques telles que les unités 42 et. 43 respectivement associées à la mémoire sur disques 7 et à la console vidéo 8. Les données devant être transférées du processeur central 5 aux autres dispositifs sont fournies, avec leur adresse de destination, à l'unité d'interface 40, et ce transfert s'effectue alors de manière autonome. Si le processeur central 5 demande une opération de lecture sur la mémoire principale 6 ou un périphérique, l'ordre est envoyé à l'unité d'interface 40, laquelle indique au processeur central le moment o l'ordre a été exécuté et maintient l'information qui doit être transférée dans le processeur central 5. Elle informe également le processeur central 5 par la délivrance d'un signal d'interruption lorsqu'elle reçoit une information en prove- nance d'un périphérique d'entrée. On va maintenant décrire très brièvement le dispositif principal de traitement 1, puisque celui-ci ne se rapporte pas à l'invention. Le programme devant être exécuté par le dispositif 1 est contenu dans la mémoire principale 6. Selon la manière bien connue, les instructions de ce programme et l'opérande associée sont retrou- vées par le processeur central 5, et les instructions sont exécutées. Le fonctionnement du processeur central 5 est commandé par des signaux de commande provenant des micro-instructions contenues dans la mémoire de commande 25. La séquence normale d'évènements commence par un appel de micro-instruction. La valeur contenue dans le compteur du microprogramme du registre 32 sert à adresser la mé- moire de commande, et la micro-instruction lue est introduite dans le registre 28 de micro-instructions o elle est décodée par l'unité de commande 29 de manière à commander l'exécution de cette micro- instruction. Ceci s'effectue généralement en deux étapes, définies 24784 5 par deux domaines de la micro-instruction. La première transmet deux opérandes, obtenues de registres sp4cifiés de la section 31 ou du registre 28 de micro-instructions, par l'intermédiaire de l'unité arithmétique et logique 35, o elles sont transformées d'une manière spécifiée par la micro-instruction. La deuxième effectue le transfert de données entre les registres 31, la mémoire de commande 25 et l'unité d'interface 40. Les adresses des accès à la mémoire de commande peuvent être fournies par la micro-instruction, un registre 31 spécifié par la micro-instruction, ou l'unité d'interface 40. Tandis que l'appel de micro-instruction a lieu, le compteur de microprogramme du registre 32 est incrémenté d'une unité. et cette valeur est normalement utilisée pour le prochain appel d'instruction. Toutefois, une micro-instruction de branchement condi- tionnel ou non conditionnel en entraîne la modification. Lorsque la donnée lue dans la mémoire principale 6 est une instruction du programme principal, son code d'opération est analysé par une séquence de microprogramme afin de positionner le compteur de microprogramme du registre 32 à la valeur appropriée qui vise le début d'une séquence de microprogramme qui exécute cette instruction particulière. Des signaux d'interruption sont produits par l'unité d'interface 40 face à des défaillances de matériel et des demandes d'entrée d'informations en provenance de dispositifs d'entrée-sortie. Ils sont vérifiés immédiatement après chaque appel de micro-instruction, et le début du contenu du registre 32, qui définit l'état présent du processeur central 5, est mémorisé dans la mémoire de commande 5 et remplacé par une valeur dépendant de la cause de l'interruption. Un emplacement 44 de la mémoire de commande est utilisé spécialement pour un but qui va être expliqué ci-après. La conception du processeur central 5 le rend spéciale- ment apte à l'émulation, et le programme contenu dans la mémoire principale 6 peut donc être écrit suivant le code machine d'un cal- culateur déjà existant. Unité de diagnostic Comme on peut le voir sur la figure 3, le dispositif microprocesseur 10 de l'unité de diagnostic comporte une ligne omnibus 45 d'adresses et une ligne omnibus 46 de données. La ligne omnibus 45 délivre des adresses à la mémoire fixe 12 et à la mémoire à accès direct 13, tandis que des données sont délivrées par ces mémoires à la ligne omnibus 46 de données (la ligne 46 délivrant en outre des données à la mémoire à accès direct 13), cette ligne 46 étant bidirectionnelle et comportant deux dispositifs 47 et 48 de commande de ligne omnibus à trois états. La ligne de données 46 communique avec le microprocesseur 11. Elle communique également, après s'être séparée en deux lignes omnibus unidirectionnelles, à savoir une ligne émettrice 49 et une ligne réceptrice 50, avec l'unité d'interface de diagnostic 14. La ligne omnibus d'adresses 45 reçoit directement du microprocesseur 11 des bits d'adresse d'ordre élevé et, de la ligne omnibus de données 46, des bits d'adresse d'ordre inférieur. Les bits de données d'ordre inférieur sont verrouillés dans un registre 52, tandis qu'un transfert a lieu pour libérer la ligne omnibus de données 46 pour les données. Le dispositif émetteur-récepteur synchrone-asynchrone universel 16 reçoit des données de la ligne omnibus de données 46 et des signaux d'horloge de la part d'un générateur 53 à vitesse en bauds qui est positionné par des données venant de la ligne 49. L'émetteur- récepteur 16 possède une ligne d'entrée 54 et une ligne de sortie 55, lesquelles forment ensemble la liaison 15 de la figure 1. L'émetteur- récepteur 16 délivre deux signaux d'interruption à destination du microprocesseur, l'un, via une ligne 56, indiquant qu'un caractère a été reçu du dispositif émetteur-récepteur 16 et l'autre, de priorité inférieure et empruntant une ligne 57, indiquant que le dispositif émetteur-récepteur est prêt à recevoir un caractère pour la transmis- sion. Le microprocesseur Il utilise un unique espace d'adresse pour tous les emplacements des divers dispositifs vers lesquels ou desquels il peut transférer des données; ainsi, ceux-ci font l'objet d'une gestion de mémoire. Un décodeur 58 décode les bits d'adresse de l'ordre supérieur afin de délivrer un signal de validation au dis- positif choisi ainsi qu'à la mémoire tampon 47 pour autoriser le déplacement de données dans le sens voulu. Le microprocesseur Il délivre également des signaux de commande aux divers dispositifs, par exemple afin de déterminer si un transfert correspond à une lecture ou une écriture. Le dispositif microprocesseur 10 est couplé au dis- positif principal de traitement 1 par l'intermédiaire de l'unité d'interface de diagnostic 14, qui est connectée aux lignes communes de données 49 et 50 et à la ligne commune d'adresses 45. Elle reçoit également des signaux de commande du décodeur 58. Elle renvoie des signaux d'interruption au microprocesseur h1 via un couple de lignes 60 et 61. Unité d'interface de diagnostic Comme cela est décrit en relation avec la figure 4, l'unité d'interface de diagnostic 14 mémorise des données devant circuler entre le dispositif processeur de diagnostic et le proces- seur central 5, et elle effectue également certaines opérations logiques sur ces données. L'unité d'interface 14 comporte divers registres qui peuvent être chargés au moyen de données provenant de la ligne omnibus de données 49 du dispositif processeur de diagnostic 10. Ces registres sont un registre 62 de sortie de données, un registre 63 de sortie d'adresses, un registre d'adresses de référence 64, un registre de commande 65 et un compteur d'instructions 66. Ceux-ci font également l'objet d'une gestion de mémoire, c'est-à-dire disposent d'adresses réservées dans l'espace d'adresse du microprocesseur 11, et le micro- processeur 11 provoque le chargement du registre approprié en délivrant un signal de commande d'écriture et en plaçant son adresse sur la ligne commune d'adresses 45. Le signal d'écriture et l'adresse sont reçus par un circuit 67 de décodage d'adresse qui valide le registre approprié de façon qu'il soit chargé à partir de la ligne commune de données 49. Comme certaines de ces registres sont plus larges que la ligne omnibus de données, le chargement complet d'un registre peut en fait s'effectuer en plusieurs étapes, l'opération décrite ci-dessus étant donc répétée. Ces registres sont présentés comme étant du type dans lequel il est seulement possible d'écrire> relativement au micro- processeur 11, mais leurs adresses sont reproduites dans la mémoire i à accès direct 13, ce qui maintient donc une image de leur contenu pour permettre leur recherche par le microprocesseur 11. Les données venant du processeur central 5 sont mé- morisées dans l'unité d'interface 14 dans trois registres, à savoir un registre 68 d'entrée de données qui peut recevoir des données placées sur la ligne commune de données 27 du processeur central 5, un registre 69 d'entrée d'adresses qui peut recevoir l'adresse placée sur la ligne commune d'adresses du processeur central 5, et un registre d'états 70 qui mémorise l'état d'un groupe de lignes d'état 71 venant du processeur central 5. Ces registres sont également l'objet d'une gestion de mémoire, et le microprocesseur 11 peut lire l'un quelconque d'entre eux en délivrant l'adresse appropriée et'un signal de lecture au décodeur d'adresse 67, lequel autorise un multiplexeur 72 à laisser passer les données choisies à destination de la ligne commune de don- nées 50. Dans le même temps, le décodeur d'adresse 67 délivre un signal de commande via une ligne 73 à la mémoire tampon 48 à trois états de manière à autoriser le passage de données en direction du microprocesseur 11. De la même façon que cela a été indiqué ci-dessus, cette opération de lecture peut s'effectuer en plusieurs étapes. Les contenus du registre d'adressesde référence 64 et du registre d'entrée d'adresses 69 sont comparés par un circuit 74 comparateur d'adresses, lequel, dans le cas o il détecte une équiva- lence, délivre un signal via une ligne 75 et un autre signal via une ligne 60 afin d'interrompre le microprocesseur 11. Le microprocesseur 11 commande de nombreuses activités de l'unité d'interface 14 en écrivant des données dans le registre de commande 65. Chaque bit de ce registre se voit attribué une significa- tion particulière et est appliqué en vue d'un traitement logique numérique classique à deux circuits, un circuit de commande 76 et un circuit d'arrêt 77. Le circuit de commande 76, qui reçoit également des informations d'états concernant le processeur central 5 à partir du registre d'états 70, a deux fonctions principales, à savoir commander le fonctionnement de divers éléments de l'unité d'interface 14 et délivrer des signaux de commande via des lignes 78 au processeur central 5. La première fonction consiste à délivrer des signaux per- mettant de commander la délivrance de données du registre 63 de le sortie d'adresses sur la ligne omnibus d'adresses 26, ou bien du registre de sortie de données 62 sur la ligne omnibus de données 27, ou bien la réception de données en provenance de ces lignes omnibus dans le registre d'entrée d'adresses 69 ou le registre d'entrée de données 68, respectivement. - Le circuit d'arrêt 77 reçoit, en plus de signaux venant du registre de commande 65, un signal venant du compteur d'instructions 66 via une ligne 80, le signal du comparateur d'adres- ses 74 via la ligne 75, et un signal venant du circuit de commande 76 via une ligne 96. Par une ligne 81, il produit un signal qui est vérifié par le processeur central 5 avant chaque appel de micro- instruction et, lorsqu'il est positionné, il empêche l'appel d'avoir lieu, ce qui arrête l'exécution de la micro-instruction. Le circuit d'arrêt 77 et le circuit comparateur d'adres- ses 74 vont maintenant être décrits de façon plus détaillée en rela- tion avec la figure 5. La fonction du circuit comparateur d'adresses 76 est de déterminer l'existence d'une équivalence entre l'adresse positionnée dans le registre d'adresses de référence 69 et l'adresse utilisée lors d'un accès à la mémoire de commande 25. Pour effectuer cette fonction, il utilise deux positions de bit du registre de comxwande 65. Un bit 65(1) est positionné pour permettre la comparaison, et un bit (2) est positionné pour indiquer si l'accès à détecter correspond à une lecture ou une écriture. Le circuit d'arrêt 77 uitilise un bit 65(3) qui est positionné pour indiquer que, lorsqu'une équivil.ence du type voulu a été trouvée, le processeur central 5 doit être arrêté. L'état du bit 65(2) est communiqué au circuit compa- rateur d'adresses 74, dans lequel il-est transmis à un élément compa- rateur 85, lequel reçoit également un bit 70(1) produit par le registre d'états 70. Ce bit est positionné par l'une des lignes d'état 71 pour indiquer si le circuit de commande 29 du processeur central 5 est positionné pour une lecture ou une écriture. Le circuit comparateur 74 produit donc un signal de sortie lorsque le transfert est positionné pour être du type voulu. Le signal de sortie est conditionné au niveau d'une porte ET 86 avec un autre bit 70(2) venant du registre d'états 70, lequel est échantilloné pendant chaque aceès à la mémoire de coi:1man- de 25. Ce signal de sortie est également utilisé pou,- autoriher l- transmission cadencée du contenu de la ligne omnibus d'adresses 26 dans le registre d'entrée d'adresses-69, ce qui réalise donc le maintien de l'adresse de l'accès présent à la mémoire de commande. Le signal de sortie de la porte 86 est maintenu dans un circuit bistable 87 dont le signal de sortie est laissé passer par une porte ET 88 sous condition relative au signal de sortie d'un élément comparateur 93 recevant des signaux du registre d'entrée d'adresses 69 et du registre d'adressesde référence 64. Le signal de sortie de la porte ET 88 indique donc que l'équivalence d'adresses a été obtenue dans un accès du type voulu. Dans la mesure o le bit 65(1) a été positionné pour autoriser la comparaison, le signal de sortie de.la porte 88 estverrouillé et entretenu par un circuit bistable'89. Cet éldment délivre un signal via la ligne 60, qui est la ligne d'interruption de seconde priorité du microproces- seur 11, afin d'informer ce dernier qi'une équivalence du type voulu a été trouvée. Le signal du circuit bistable 89 est également trans- mis via la ligne 75 au circuit d'arrêt 77, o il est conditionné dans une porte ET 90 relativement au bit 65(3), lequel,une fois positionné, indique que le processeur central 5 doit être arrêté lorsque l'équivalence a été trouvée, par exemple à l'occasion d'une tentative de lire un emplacement particulier de la mémoire de com- mande, c'est-à-dire d'exécuter une micro-instruction particulière. Le signal de sortie de la porte 90 arrive donc, via une porte OU 91, à un circuit de verrouillage 92, qui fournit le signal d'arrêt au processeur central 5 via la ligne 81. La porte OU 91 peut également recevoir un signal du compteur d'instructions66 via la ligne 80, ce qui entraîne également la délivrance du signal d'arrêt. Un bit 65(4) est positionné dans le registre de com- mande 65 lorsque le microprocesseur demande que la donnée présente sur la ligne omnibus de données 27 soit introduite dans le registre d'entrée de données 68. L'état de ce bit est directement communiqué par le circuit de commande 76 au registre d'entrée de données 68 si bien que, lorsqu'il est positionné, il autorise le transfert souhaité. Le compteur d'instructions 66 peut être chargé au moyen d'une valeur de comptage par le microprocesseur 11. Il reçoit un signal de décomptage, ou compte à rebours, d'une ligne d'état pour chaque appel d'instruction à la mémoire de commande 25, et, lorsqu'il atteint zéro, il délivre via la ligne 80 un signal qui provoque la délivrance du signal d'interruption au processeur central via la ligne 81. De cette manière, le processeur central peut être amené à s'arrêter lorsqu'il a exécuté un nombre prédéterminé de micro- instructions. L'application supplémentaire directe à la porte OU 91 d'un bit 65(5) du registre de commande autorise le dispositif micro- processeur 10 à imposer un arrêt au processeur central 5. Un détecteur général 94 de repositionnement et d'erreur de parité (voir figure 4) répond aux lignes d'état en indiquant qu'un repositionnement général du dispositif principal 1 a été pro- duit (par exemple par suite d'une défaillance relative à un contrôleur de séquence), ou bien qu ' une défaillance du type erreur de parité sur la mémoire de commande s'est produite. Lorsqu'il détecte l'un de ces évènements, il informe le microprocesseur il en délivrant un signal via la ligne d'interruption 61, qui possède la priorité la plus élevée. Lorsqu'il détecte une défaillance, il maintient l'infor- mation concernant la nature de la défaillance *pour la délivrer au dispositif microprocesseur 10 par l'intermédiaire du multiplexeur 74, et empêche également le cadencement du registre d'entrée d'adresses 69 de façon que l'adresse de l'emplacement présent de la mémoire de com- mande soit conservée au moment de l'apparition d'une défaillance et qu'il soit plus facile de la retrouver. Les signaux de commande empruntant les lignes 78 pour parvenir au processeur central 5 comprennent des signaux qui provo- quent un accès à une ressource de mémoire du processeur central 5 par détournement de cycle. Ainsi, un bit 65(6) peut être positionné pour indiquer que l'accès va se faire à la mémoire de commande et être effacé si l'accès doit se faire à la section de registres, un bit 65(7) peut être positionné pour indiquer une opération d'écriture et être effacé pour indiquer une opération de lecture, et un bit 65(8) peut être positionné pour faire commencer l'action du circuit de commande 76. Le circuit de commande 76 contient des éléments logiques qui délivrent alors d'abord un signal via la ligne 96 pour amener le circuit d'arrêt 77 à positionner la ligne d'arrêt 81! puis, une fois validés par une réponse de l'une des lignes d'état 71 indiquant que le processeur a été arrêté, produisent les signaux de commande qui entraînent l'opération d'accès. Une fois l'accès effectué, la demande d'arrêt est effacée. Des signaux supplémentaires (non re- présentés) permettent le chargement du registre de micro-instructions. L'unité d'interface de diagnostic 14 et le proces- seur central 5 peuvent être mis en oeuvre sous forme de circuits logiques rapides du type ECL (logique par couplage d'émetteur). Le dispositif microprocesseur 10 peut être mis en oeuvre sous une forme plus lente, par exemple TTL (transistor-transistor logique). Des dispositifs de changement de niveaux (non représentés) sont alors prévus dans les lignes allant de l'unité d'interface 14 au dispositif microprocesseur 10 afin de changer les niveaux des signaux lorsqu'ils passent d'une forme de logique à l'autre. Fonctionnement général du dispositif L'unité de diagnostic contrôle et commande le fonction- nement du dispositif principal de traitement 1 suivant deux modes. Dans le premier, un mode à une seule étape, elle arête l'horloge du processeur central 5, puis délivre ses propres signaux d'horloge sur une ligne de commrande 78 pour entraîner le processeur central 5 à effectuer un ou plusieurs cycles. Suivant ce mode, des ressources de mémoire du processeur central 5 peuvent- être écrites ou lues, ce qui permet un examen très souple et compréhensif du fonctionnement du dispositif. Suivant le deuxième mode, l'unité de diagnostic 2 contrôle le dispositif principal 1 pendant qu'il fonctionne à vitesse normale. Dans ce cas, la détection par le dispositif principal 1 d'une remise à zéro ou d'une erreur de parité, ou bien d'un autre défaut du matériel, entraîne l'application d'un signal d'interruption au microprocesseur, ainsi que cela a été expliqué. De plus, il est possible de charger et de valider le compteur d'instruction 66 de ma- nière que le processeur central 5 s'arrête lorsque le nombre voulu de micro-instructions a été exécuté. Le circuit de comparaison d'adresses permet à l'unité de diagnostic de détecter i'instant o ủ n e opération de lecture ou d'écriture, selon ce qui est souhaité, est e ffe ctuée à un emplacement spécifié de la mémoire de commande 5, et, de plus, d'arrêter le processeur central 5 si cela est souhaitable, en fonction des positionnements des bits 65(1) à (3). Le processeur de diagnostic 10 est commandé par le microprogramme de 1 a mémoire fixe 12, lequel e s t lu im me amené à être interrompu à partir de l'unité d'opérateur 3 ou de l'unité d'interface 14. Il est possible de délivrer des instructions ou des données à partir du panneau de l'opérateur. Des instructions entraînent des activités spécifiées dans l'unité d'interface 14 et le dispositif émetteur-récepteur 16, ou bien coïunandent la mise en oeuvre du microprogramme. Des données peuvent être délivrées de manière asynchrone ou synchrone. Dans le premier cas, elles sont délivrées sous forme de caractères et chargées dans un tampon de données de la mémoire à accès direct 13, d'o elles peuvent être déplacées jusqu'à un tampon d'adresses de la mémoire à accès direct 13 par une autre instruction. Ces valeurs peuvent alors être trensfé- rées à l'unité d'interface 14 par des instructions supplémentaires. Ainsi, en chargeant les registres de commande et autres de l'unité d'interface 14, il peut être obtenu une manipulation voulue du processeur central 5. Il est également possible de repositionner le dispositif émetteur-récepteur sur le mode synchrone au moyen d'une instruction, auquel cas l'information binaire est transférée directe- ment de l'unité d'opérateur 3 à la mémoire de commande 25, o elle est chargéeséquentiellement à partir d'une adresse spécifiée. L'unité de diagnostic 2 renvoie normalement un message d'"achèvement" ou de "défaillance" lorsqu'une instruction l'amène à effectuer une activité telle que délivrer un signal de commande au processeur central 5. Elle peut également renvoyer des données, par exemple en réponse à une instruction de lecture des registres d'entrée de l'unité d'interface 14 à pr--Lir du processeur central 5. L'unité de diagnostic 2 conserve un mot d!tat de diagnostic dans la mémoire à accès direct 13 qui maintient l'infor- mation relative à l'activité effectuée et aux défaillances subies. Des signaux d'interruption en provenance de!'unrJi s'interface de diagnostic 14 provoquent des entrées dans ce mot. l] crse la DSence du signal d'interruption sur la ligne 60 amène le positionnement d'un bit indiquant qu'une équivalence d'adressesdu type spécifié a été détectée. Puisque l'unité de diagnostic 2 transmet l'information à l'unité d'opérateur 3 sur un mode maître-esclave pur, l'unité d'opé- rateur jouant le rôle du maltre, l'unité de diagnostic ne peut offrir spontanément des informations relatives aux interruptions à l'unité d'opérateur. L'unité d'opérateur délivre donc une instruction d'inter- rogation à intervalles réguliers, par exemple à chaque seconde, et reçoit en retour le mot d'état de diagnostic. Elle peut ensuite chercher les informations supplémentaires relativement aux interruptions ou aux défaillances enregistrées dans le mot d'état. L'unité de diagnostic peut être utilisi à n'importe quel instant pour vérifier le fonctionnement du dispositif principal de traitement 1. Toutefois, un moment très important est constitué par celui o le dispositif est mis en service, par exemple au début de la journée, puisque c'est le moment auquel n'importe quelle défail- lance est particulièrement susceptible de se montrer. Lorsqu'on met en service le dispositif dans son ensemble, l'unité d'opérateur 3 et l'unité de diagnostic 2 se vérifient elles-mêmes, ainsi que la liaison qui les relie, et, si tout va bien,.affichent le fait sur le panneau 24 de l'unité d'opérateur. A ce moment, la mémoire de commande 25 et la mémoire principale 6 sont effacées, et le micro- programme qu'elles doivent contenir se trouve dans un périphérique de stockage, par exemple le disque 8. L'opérateur enfonce alors une touche de chargement, introduit à partir du clavier les paramètres concernant le dispositif dont le microprogramme peut être chargé et enfonce une touche d'introduction. Ceci amène l'unité d'opérateur 3 à transmettre les données binaires contenues dans la mémoire fixe 19 à l'unité de diagnostic 2, d'o elles sont chargées dans la mémoire de commande 25. L'unité de diagnostic 2 lit alors l'information ainsi mémorisée et vérifie si elle a été introduite correctement. Si tel est le cas, les cinq premières instructions de la mémoire de com- mande 25 sont effectuées dans le mode à une seule étape. Elles véri- fient l'opération d'incrémentation et de branchement du compteur de microprogramme du registre 32. Si tout va bien, ces opérations sont répétées par le processeur central 5 fonctionnant à vitesse normale. Le microprogramme se poursuit progressivement de façon à vérifier les installations associées au dispositif principal, jusqu'à ce qu'il soit en mesure d'utiliser les paramètres introduits dans l'unité d'opérateur 3 pour charger un programme de séquence d'appel de deuxième niveau en provenance du périphérique choisi, d'abord dans la mémoire principale 6, puis dans la mémoire de commande 25. Ce programme, qui dépend du dispositif considéré, après réalisation d'autres vérification, charge le microprogramme réel dans la mémoire de commande par l'intermédiaire de la mémoire principale. Le dis- positif est alors prêt à commencer le chargement de programmes dans la mémoire principale 6. Selon l'invention, l'information choisie par le dis- positif principal peut être transférée à l'unité de diagnostic 2 et à l'unité d'opérateur 3 sous commande du dispositif principal. Un emplacement de la mémoire de commande 25, qui est représenté sur la figure 2 comme l'emplacement 44, est réservé à la communication du processeur central avec les unités de diagnostic et d'opérateur. L'adresse de cet emplacement est chargée dans le registre 64 d'adres- ses de référence en provenance du tampon de données de la mémoire à accès direct 13, et les bits 65(1), 65(2) et 65(3) sont positionnés de manière à provoquer la délivrance d'un signal via la ligne 60 lorsqu'une équivalence d'adresses a été détectée lors d'une opération d'écriture dans la mémoire de commande 25, mais n'entraîne pas l'arrêt du processeur central 5, c'est-à-dire ne délivre pas le signal d'arrêt via la ligne 81. Lorsque, par la suite, l'unité d'opérateur 3 appelle l'unité de diagnostic, elle vérifie le bit approprié du mot d'état de diagnostic et prend connaissance du fait que l'équivalence du type voulu a été détectée. Ceci entraîne alors la lecture du contenu de l'emplacement 44 écrit dans la mémoire de commande 25 et son transfert à l'unité de diagnostic 2, puis, de là, à l'unité d'opérateur o il peut être affiché. De façon plus détaillée, la dernière étape consiste en le positionnement des bits 65(6) et 65(7) indiquant qu'une opéra- tion de lecture est demandée sur la mémoire de commande, le placement de l'adresse de l'emplacement 44 dans le registre 63 de sortie d'adresses à partir du tampon de données de la mémoire à accès 2 4788 4 direct 13, et le positionnement du bit 65(8) permettant de commencer de faire réaliser l'accès par le circuit de commande 76. Les données retrouvées sont maintenues dans le registre 68 d'entrée de données. * De là, elles sont transférées à l'unité d'opérateur 3. Ce mécanisme permet au processeur central 5 de déli- vrer des messages à l'unité d'opérateur. Il est utilisé dans la séquence de chargement initiale pour tenir l'opérateur informé du progrès de la séquence. La séquence se divise en étapes et,tandis que le circuit comparateur d'adresses 74 est validé et maintient l'adresse de l'emplacement de sortie 44, le processeur central 5 délivre un message au début de chaque étape pour identifier l'étape et le fait qu'elle a commencé. Ce message est affiché sur le panneau d'opéra- teur 24 et est également enregistré dans un "journal" tenu dans la mémoire à accès direct 20. Si l'étape s'achève de manière satisfai- sante, un message est de nouveau envoyé pour identifier l'étape et annoncer son achèvement. Si une étape n'aboutit pas, il est envoyé un message contenant des informations sur l'erreur, ainsi que l'iden- tification. Ces messages sont également affichés et placés dans le "journal". Si une étape ne s'achève pas de manière satisfaisante, le dispositif la reprend et, si, cette fois, elle se passe bien, un message est délivré à cet effet. Sinon, des tentatives sont faites pour déterminer la nature de l'erreur de façon plus précise et les résultats en sont également transmis par un message. S'il apparaît que l'erreur n'est pas cruciale, le processus continu de se dérouler; s'il s'agit d'une erreur cruciale, le déroulement s'arrête et il est possible de consulter le "journal" de la mémoire à accès direct 20 afin d'examiner le cours de la séquence de chargement. L'unité de diagnostic 2 peut être mise en oeuvre de manière à permettre une lecture pour examen du contenu des registres 32 et 38 et de la mémoire de commande 25. On voit que le dispositif principal de traitement 3. est en mesure de transmettre à l'unité de diagnostic 2 l'information qu'il a déterminé et, de là, à l'unité d'opérateur 3. Le dispositif de diagnostic est maintenu informé de la progression des évènements dans le dispositif principal 1, pendant le déroulement des opérations. Parmi diverses variantes possibles du dispositif décrit, on peut envisager que le processeur central 5 utilise plus d'un emplacement pour les messages à délivrer au dispositif de diag- nostic. Les messages peuvent alors être plus longs. Par exemple, il est possible d'utiliser également l'emplacement qui fait suite à l'emplacement 44. Dans ce cas, à la suite de la détection d'une opération d'écriture dans l'emplacement 44 et de la lecture de son contenu par l'unité de diagnostic, le registre 63 de sortie d'adresses est incrémenté d'une unité et la mémoire de commande 5 est lue à l'aide de cette adresse. Il n'est pas nécessaire de modifier le cir- cuit comparateur d'adresses 74, qui reste prêt à effectuer l'opéra- tion d'écriture suivante sur l'emplacement 44 initial. On admettra que, alors que le dispositif décrit utilise un dispositif microprocesseur qui reçoit un signal d'interruption lorsqu'une équivalence d'adresses est détectée et, ultérieurement, effectue la lecture de l'emplacement de sortie de la mémoire de com- mande, il est également possible d'utiliser des éléments logiques matériels dans l'interface 14.pour provoquer la lecture voulue en réponse au signal de la ligne 60. En raison.de la souplesse du processeur de diagnostic décrit, les messages peuvent également être transmis du proceseur: de diagnostic au processeur central 5 et peuvent être écrits par l'unité d'interface dans un emplacement ou une séquence d'emplacements prévus de la mémoire de commande. Bien entendu, l'homme de l'art sera en mesure d'imagi- ner, à partir du dispositif et du procédé dont la description vient d'être donnée à titre simplement illustratit et nullement 1.iti, diverses autres variantes et modifications ne sortant pas du cadre de l'invention. R E V E N D I C A T I 0 N S 1. Equipement de traitement de données comprenant un dis- positif principal de traitement et un appareil de diagnostic, le dis- positif principal de traitement possédant une mémoire de commande destinée à un microprogramme de commande du fonctionnement du dis- positif principal de traitement, et l'appareil de diagnostic étant en mesure de contrôler et de commander des opérations du dispositif principal de traitement, l'équipement étant caractérisé en ce que la mémoire de commande (25) est du type sur lequel on peut écrire, et l'appareil de diagnostic (2, 3) comporte un moyen de comparaison (74, 64, 69) qui détecte l'équivalence entre.l'adresse utilisée lors d'un accès à la mémoire de commande-(25) et une adresse de référence pré- établie, un moyen (65(2)) permettant de conditionner le moyen de comparaison à produire un signal de sortie (60) seulement lorsque l'accès est un accès d'écriture, et un moyen (76, 77, 63, 68) dont la mise en oeuvre peut être déclenchée en réponse audit signal de sortie de manière à provoquer le maintien de l'information dans la mémoire de commande (25) à l'adresse qui est équivalente à l'adresse de référence pré-établie en vue de sa lecture et de son transfert à l'appareil de diagnostic. 2. Dispositif selon la revendication 1, caractérisé par un microprocesseur (11) disposé dans l'appareil de diagnostic (2, 3) et connecté de façon à recevoir ledit signal de sortie (60) comme signal d'interruption. 3. Procédé permettant d'établir une communication entre un dispositif principal de traitement et un appareil de diagnostic, le dispositif principal de traitement comportant une mémoire de com- mande destinée à un microprogramme de commande du fonctionnement du dispositif principal de traitement, et l'appareil de diagnostic étant en mesure de contrôler et de commander le fonctionnement du disposi- tif principal de traitement, le procédé étant caractérisé en ce que le dispositif principal de traitement transmet l'information qu'il a choisie lh-même à l'appareil de diagnostic en écrivant l'information en un emplacement prédéterminé de la mémoire de commande, l'appareil de diagnostic détectant qu'un accès d'écriture a été perpétué sur ledit emplacement et entraînant ensuite la lecture du contenu dudit emplacement et son transfert dans l'appareil de diagnostic. 4. Procédé selon la revendication 3, caractérisé en ce que le dispositif principal de traitement écrit l'information qu'il a choisielui-même en plusieurs emplacements de la mémoire de commande, l'appareil de diagnostic détectant qu'un accès d'écriture a été réalisé sur l'un seulement de ces emplacements et provoquant par la suite la lecture du contenu de tous ces emplacements et leur trans- fert à l'appareil de diagnostic.