Brevet FR2522423A1 — publié le 19830902

La présente invention concerne un processeur ou unité de traitement numérique de données et de fa- çon plus spécifique une unité de traitement des données qui réalise un traitement "pipe-line" et qui se carac- térise dans son ensemble par une vitesse accrue de trai- tement. D'une manière générale le traitement pipe-li- ne sert de système efficace de commande d'instructions du point de vue de l'accroissement de la vitesse de cal- cul La présente invention concerne un processeur ou une unité de traitement de données baseesur un système de commande pipe-line qui travaille même lorsqu'il exis- te une différence importante entre le temps pris pour la lecture d'une instruction et le temps pris pour l'exécution d'une opération. On va décrire tout d'abord l'art antérieur. Une unité de traitement des données décode un mot d'instruction qui a été lu, lit les données conformément au contenu décodé et exécute une opération. L'opération esttraitée en utilisant le système de com- mande pipe line et la micro-instruction suivante est lue en parallèle avec le traitement de'l'opération. Dans ce cas, lorsque la durée requise pour lire une micro-instruction est identique à la durée requise pour exécuter une opération, cette durée ou ce temps est considéré comme la période de micro-cycle et il n'en résulte aucun inconvénient Cependant, les deux durées ne sont habituellement pas les mêmes Dans la pratique la période de micro-cycle (cycle machine) est basée sur la plus longue des deux durées en tant que référence C'est-à-dire que, en dépit de l'utili- sation d'un système de commande pipe-line, le rende- ment global de fonctionnement n'est pas amélioré. Un système de traitement pipe-line a été décrit dans le brevet délivré aux Etats Unis d'Ané- rique sous le No 3 978 452, ayant pour titre "système et procédé de traitement simultané et de traitement pipe-line utilisant un réseau commandé par les données". Le brevet ment-ionné ci-dessus décrit une mémorisation locale dans une unité de traitement d'un réseau piloté par les données, mais ne s'occupe en aucune manière des problèmes inhérents à l'art antérieur. La présente invention est conçue de manière à fournir une unité de traitement de données, dans la- quelle un système de commande pipe-line est adapté à_ une unité de traitement de données numérique en vue d'accroître la vitesse totale de traitement. Le but de la présente invention est d'ac- croitre la vitesse de traitement d'une unité de trai- tement de données, sanssacrifier les avantages du système de traitement pipe-line, même lorsqu'il existe une différence entre la durée nécessaire pour lire une micro-instruction et la durée nécessaire pour exécuter une opération. En vue d'atteindre cet objectif, conformé- ment à la présente invention, une caractéristique de cette dernière réside dans le fait que le fonctionne- ment est exécuté en étant basé sur plusieurs microcy- cles. Une seconde caractéristique de la présente invention réside dans le fait que l'opération est exé- cutée moyennant sa subdivision en la lecture des don- nées arithmétiqueset l'enregistrement du résultat de l'opération. Une troisième caractéristique de la présente invention réside dans le fait de prévoir un registre de verrouillage de destinations sur le côté sortie de l'unité ar thmétique afin de retarder le résultat de l'opération d'un intervalle de temps égal à un micro- cycle. Une quatrième caractéristique de la présente invention réside dans le fait de prévoir des registres de verrouillage de destinations sur le côté entrée de l'unité arithmétique de manière à correspondre à cha- que partie des données ar thmétiques, afin de retarder les données d'un intervalle de temps égal à un micro- cycle avant l'exécution de l'opération. Une cinquième caractéristique de l'invention réside dans le fait que l'on prévoit un registre de verrouillage de destinations incorporé à l'unité ar Lth- métique et que l'opération est exécutée une fois que les données ont été retardées d'un intervalle de temps égal à un microcycle. Une sixième caractéristique de l'invention consiste à prévoir un registre déverrouillage de com- mande d'enregistrement, qui déclenche l'enregistrement du résultat de l'opération dans une zone du registre, lesdites instructions aboutissant au registre d'enre- gistrement étant retardéesd'un intervalle de temps égal à un micro-cycle. Une septième caractéristique de la présente invention réside dans le fait de prévoir des moyens per- mettant de détecter s'il existe un encombrement ou un conflit pour un registre entre une micro-instruction qui a été lue et la microinstruction suivante devant être lue, si bien que lorsque le conflit apparaît, les données présentes dans le registre de verrouillage de destinations sont transférées directement dans le bus de transmission de données ou bien sont transférées depuis une unité arithmétique directement dans le bus de transmission de données, de manière à éviter tout conflit pour les registres. D'autres caractéristiques et avantages de la présente invention ressortiront de la description donnée ci-après prise en référence aux dessins annexés, sur lesquels: la figure 1 est un schéma illustrant le trai- tement pipe-line intervenant dans une unité de traite- ment de données numériques; les figures 2 A à 2 C sont des diagrammes il- lustrant le flux de traitement des données dans l'appa- reil de la figure 1; les figures 2 D à 2 H sont des diagrammes illus- trant le flux de traitement des données conforme à la présente invention; la figure 3 est un schéma montrant l'agen- cement du circuit conformément à une forme de réalisa- tion de la présente invention; les figures 4 A à 4 D sont des diagrammes com- parant les processus de chacun des cycles selon la pré- sente invention; la figure 5 A est un schéma d'un micro-program- me dans lequel le conflit pour les registres est pro- voqué par la n-ème instruction et la (n+l)-ème instruc- tion; la figure 5 B est un schéma illustrant les contre-mesures prises par le programme lorsqu'appa- rait le conflit indiqué sur la figure 5 A; la figure 6 A est un schéma illustrant le fonc- tionnement correspondant à la figure 5 A; la figure 6 B est un schéma illustrant le fonc- tionnement qui correspond à la figure 5 B; la figure 7 A est un schéma illustrant le cas o des registres de verrouillage sont prévus sur le côté entrée de l'unité arithmétique en vue de retarder les données d'un intervalle de temps égal à 1 micro-cycle; la figure 7 B est un schéma illustrant le cas o les registres sont incorporés à l'unité arithmétique; et la figure 8 est un schéma illustrant le monta- ge servant à éviter, moyennant une technique de logiciel, tout conflit pouvant apparaître pour les registres, com- me représenté sur les figures 5 A. On va décrire ci-après une forme de réalisa- tion de la présente invention. Tout d'abord on va décrire une unité de trai- tement de données utilisant le système de commande pipe- line sur lequel est basé la présente invention La figu- re 1 illustre un prooesseur ou unité de traitement de données pipe-line, quiest constitué par une mémoire principale 11 servant à mémoriser les programmes d'uti- lisateur (mots d'instructions et données d'opération), l'unité formant mémoire de micro-programmes/dispositif de commande 12 qui extrait successivement les micro- instructions d'une mémoire ROM et délivre des signaux de commande 10 lors de la réception des instructions provenant d'un programme d'utilisateur, un registre tampon de données 13 pour la mémorisation temporaire des données, un registre à usage général 14 pour la mé- morisation temporaire de données arithmétiques telles que le résultat, pendant que l'opération est effectuée, et une unité arithmétique 15 qui peut effectuer tout un ensemble d'opérations ar thmétiques Un bus de mé- moire 16, un bus X 17, un bus Y 18 et un bus Z 19 sont prévus en des positions spécifiques Des mots d'instruc- tion lus hors de la mémoire principale 11 par l'-nterme- diaire du bus de mémoire 16 sont décodés par l'iunité mémoire de micro-progranmemdispositif de commande 12. Lorsque les micro-instructions correspondant au conte- nu décodé sont lues successivement, différents signaux de commande 10 sont produits et envoyés au registre tam- pon de données 13, au registre d'utilisation générale 14 et à l'unité arithmétique 15 Les micro-instructions agissent de telle manière que les données sont lues hors du registre tampon de données 13 ou bien hors du regis- tre d'utilisationgénérale 14, et une addition ou une soustraction est réalisée par 1 ' unité arithmétique Lors de la lecture successive des micro-instruc tions du micro-programme il est possible de réaliser par conséquent tout un ensemble d'opérations arithmé- tiques L'unité arithmétique 15 introduit les données lues hors du registre tampon de données 13 ou hors du registre d'utilisation générale 14, par l'intermédiaire du bus X 17 et du bus Y 18 Le résultat obtenu par le calcul utilisant les données lues estmémorisé dans le registre d'utilisation générale 14 par l'intermédiaire du bus Z 19 Le registre tampon des données 13 mémorise temporairement les données qui ont été transmisesdans le bus X 17 et dans le bus Y 18 en ayant été lues hors du registre d'utilisation générale 14, et émet et reçoit également les données en direction et à partir de la mé- moire principale 11 par l'intermédiaire du bus 16. Les figures 2 A à 2 C montrent le flux de traitement des données circulant dans l'unité de trai- tement des données En effet si une certaine micro- instruction F 1 est lue au cours d'un micro-cycle donné, le traitement de la micro-instruction est exécuté com- me représenté par E 1 au cours du micro-cycle suivant. La micro-instruction suivant F 2 est lue en parallèle avec l'exécution E 1 de l'opération (figure 2 B) De fa- çon similaire une autre micro-instruction F 3 est lue en parallèle avec l'exécution E de l'opération de la micro-instruction (figure 2 C) C'est-à-dire que la lec- ture d'une micro-instruction et le traitement des micro- instructions voisines précédentes sont exécutés simul- tanément pendant le meme micro-cycle. Dans ce cas, si la durée requise pour la lec- ture d'une micro-instruction est égale à la durée re- quise pour l'exécution d'une opération, cette durée peut être considérée comme la période du micro-cycle et il ne se présente aucun problème Cependant, en général, ces durées ne sont pas égales mais peuvent dif- férer dans une large mesure en fonction de la taille de l'unité de traitement des données, ainsi que d'au- tres conditions Dans ce cas la commande pipe-line peut être effectuée en utilisant une durée accrue com- me période de micro-cycle Cependant ceci produit des temps morts ou d'inactivité et rend difficile un ac- croissement de la vitesse totale de calcul. Les figures 2 A à 2 C représentent le cas dans lequel un intervalle de tempe accru est requis pour l'exécution de l'opération et dans lequel la durée requise pour la lecture des micro-instruc- tions est égale à environ la moitié de cette durée. Sur les figures 2 A à 2 C, les régions hachurées situées après les régions F 1 à F 3 représentent ce qu'on appel- le les temps morts C'est-à-dire que, comme la pério- de est déterminée par la durée requise pour l'exé- cution d'un calcul, il devient difficile d'accroître la vitesse globale de calcul en dépit du fait que l'on a adopté un système de traitement pipe-line La présen- te invention est conçue de manière à accroître la vi- tesse de calcul lorsqu'il existe une différence entre la durée requise pour la lecture des micro-instruc- tions et la durée requise pour l'exécution des opéra- tions correspondantes (habituellement F 1 représenté sur la figure 2 A). La figure 3 représente une forme de réalisa- tion selon la présente invention, c'est-à-dire qu'elle montre de façon détaillée une unité formant mémoire de micro-programmeedispositif de commande Cette unité mémoire de micro-programme'dispositif de commande re- présentée ici diffère de celle de la figure 1 en ce qu'il est prévu un registre de verrouillage de desti- nations 38 servant à retarder le résultat de l'opération d'une durée d'un micro-cycle, entre le bus Z 19 et l'uni- té arithmétique 15 C'est pourquoi le résultat de l'opé- ration est mémorisé dans une zone spécifiée dans le re- gistre d'utilisation générale 14 après avoir été retar- dée d'un micro-cycle A cet effet les données doivent être retardées d'un micro-cycle afin que soit détermi- né dans quel registre le résultat de l'opération doit être mémorisé La zone située dans le registre d'uti- lisation générale 14, dans laquelle le résultat du cal- cul est mémorisé, est déterminéepar les données de spé- cification produitespar un décodeur RZ 36 Dans la for- me de réalisation de la figure 3, un registre de ver- rouillage de commande d'enregistrement 33 est prévu sur le coté entrée du décodeur RZ 36 afin de retarder d'un micro-cycle les données de spécification prove- nant de ce décodeur. Des mots d'instruction sont lus par l'unité formant mémoire de micro-programme 5 dispositif de com- mande 12 ' à partir de la mémoire principale 11 par l'in- termédiaire du bus 16 Alors les mots d'instruction sont envoyés à un registre d'instructions 92, à un décodeur d'instructions 94, à un registre d'adresses ROM (mémoire morte 96) et à une mémoire ROM 31, et sont mémorisés temporairement dans un registre de mi- cro-instructions 32 Dans ce cas, la micro-instruction est constituée par trois zones de registre RX, RY, RZ et par une zone de fonction FUNC Les données situées dans les zones RX et RY, faisant partie de l'ensemble de ces zones, spécifient des zones d'enregistrement dans le registre d'utilisation générale 14 de sorte que les données sont lues dans le bus X 17 et dans le bus Y 18 Les données situées dans la zone de fonction FUNC spécifient l'une de différentes fonctions arithmé- tiques Les données présentes dans la zone de regis- tre RZ sont décodées par le décodeur RZ 36 par l'in - termédiaire du registre de verrouillage de commande d'enregistrement 33, et les autres données sont direc- tement décodées par le décodeur RX 34, le décodeur RY et le décodeur de fonction 37, respectivement Les signaux de sortie de ces décodeurs servent de signaux de commande 10, comme cela a déjà été décrit. Les données introduites par lecture dans le bus X 17 et dans le bus X 18 en provenant du registre d'utilisation générale 14 conformément aux signaux de commande provenant du décodeur RX 34 et du décodeur XY 35, sont traitées sous la forme de données arithmé- tiques par l'unité arithmétique 15, et le résultat de l'opération est mémorisée temporairement dans le regis- tre de verrouillage de destination 18 Le résultat de l'opération est mémorisé dans le registre d'utilisation générale 14 après avoir été retardé d'un micro-cycle. Le décodeur RZ 36 délivre alors un signal de commande de spécification de registre, qui correspond au résul- tat de l'opération, et le résultat de l'opération est mémorisé dans le registre sélectionné par le signal de commande 10 ',. Par conséquent le flux de traitement des don- nées dans l'unité de traitement de données de la figure 3 peut être représenté par les figures 2 D à 2 H Le trai- tement d'une micro-instruction est subdivisé en un cycle de lecture de micro-instruction Fi (i = 1, 2, 3, 4, 5,), un cycle de E Ri de lecture de données arithmétiques et un cycle E Wi d'enregistrement du résultat de l'opéra- tion C'est-à-dire que trois micro-instructions sont traitées parallèlement pendant le même micro-cycle. On notera que le micro-cycle (période) sur les figures 2 D à 2 H est égal à environ la moitié de la durée du mi- cro-cycle des figures 2 A à 2 C Le micro-cycle des figu- res 2 D à 2 H est basé sur le cycle de lecture de micro- instructions des figures 2 A et 2 C en tant que référen- ce, et le traitement de l'opération sur la figure 2 A est exécuté moyennant une subdivision en ER 1 et EW Ceci est équivalent à la lecture de la micro-instruc- tion en une durée égale à la moitié du micro-cycle de la figure A Dans la pratique cependant, étant donné qu'il existe des différences dans la durée d'exécution, en fonction des instructions, les temps représentés sur la figure 2 A à 2 C ne deviennent pas toujours nuls même sur les figures 2 D à 2 H Cependant la durée de fonctionnement peut être réduite à envi- ron la moitié de celle du système des figures 2 A à 2 C. C'est l'um des avantages les plus importants de l'uni- té de traitement des données de la présente invention. Sur la figure 3 le registre de verrouillage de destinations 38 est prévu sur le côté sortie de l'unité arithmétique 15 Cependant des registres de verrouillage de destination peuvent être prévus en- tre l'unité arithmétique 15 et le bus X 17 et le bus Y 18 comme représenté sur la figure 7 A, sur laquelle LX et Ly désigne des registres de verrouillage qui jouent le même rôle que celui joué par le registre 38, et qui retardent les données d'une durée d'un mi- cro-cycle avant de leur permettre d'être introduites dans l'unité arithmétique. Comme cela est représenté en outre sur la fi- gure 7 B, les registres de verrouillage de destination peuvent être intégrés dans l'unité ar thmétique 15. Alors les données sont reçus de la part des bus 17,18 et sont transmis par l'intermédiaire de circuits logi- ques d'entrée 15 ci 15 D et par l'intermédiaire de re- gistres de verrouillage Lx, Ly ou elles sont retardées d'un micro-cycle, dans l'unité arithmétique La réfé- rence 15 B désigne une unité arithmétique et logique et la référence 15 A un dispositif de décalage On peut ainsi obtenir les mêmes effetsque ceux repré- sentés sur la figure 3 et les figures 2 D à 2 H, même il dans les unités des figures 7 A et 7 B. Les figures 4 A à 4 D illustrent les effets réalisés par les unités des figures 7 A et 7 B compa- rativement à F 1, RE 1 et EW 1 de la figure 3 La figu- re 4 A représente un cycle de base et la figure 4 B montre le contenu du traitement de l'opération pen- dant le cycle d'exécution F, ER 1, EW 1 de la figure 3 C'est-à-dire que l'opération (X + Y)->L est effec- tuée sur la figure 4 B, c'est-à-dire dans ER 1 de la fi- gure 2 D, et l'opération L Z est effectuée dans EW 1 de la figure 2 D De façon similaire la figure 4 C re- présente les effets réalisés par les unités de la fi- * gure 7 A,et la figure 4 D présente les effets reéali- sés par la figure 7 B. Conformément à la présente invention et com- me décrit ci-dessus, les vitessesde calcul des opéra- tions peuvent être accrues Ci-après on va donner une description des phénomènes qui interviennent lorsque le registre, dans lequel un résultat d'opération a été enregistré en réponse à une micro-instruction don- née, est le même que le registre d'o les données arithmétiques doivent êtielues pour la micro-instruc- tion suivante Par exemple, comme représenté sur la fi- gure 5, la n-ème micro-instruction ajoute le contenu du registre RO et Ri et spécifie que le résultat de l'opération est mémorisé dans le registre R 2, tandis que la (n + 1)-ème micro-instruction réalise une opéra- tion logique ET avec le contenu des registres R 2, R 3, et spécifie que le résultat est mémorisé dans le regis- tre R 3 Dans ce cas, le traitement pour la mémorisa- tion du résultat de l'opération dans le registre R 2 est réalisé en mme temps que le traitement pour la lec- ture des données de l'opération hors du registre R 2. Lorsqu'un registre se trouve de cette manière dans un état de conflit ou d'engorgement, le résultat de l'opé- ration pour n-ème micro-instruction doit être envoyé sous la forme de données arithmétiques à partir du re- gistre de verrouillage de destinations 38 à l'unité arithmétique 15 par l'intermédiaire du bus Z 19, du registre R 2, et du bus X 17 comme cela est indiqué par la ligne formée de tirets sur la figure 6 A Dans ce cas cependant les données doivent être transférées pendant un micro-cycle, ce qui est difficile. La figure 6 B montre un appareil de traite- ment des données qui est constitué en tenant compte de conflits au niveau des registres, conformément à une autre forme de réalisation de la présente inven- tion Il est prévu des accès pour l'introduction à par- tir du circuit de verrouillage de destinatiors 38, du bus X 17 et du bus Y 18 Lorsqu'un registre est en état de conflit, les données ne sont pas lues hors de la zone d'enregistrement située dans le registre d'utilisation générale 14 pour être introduites dans le bus X 17 ou dans le bus X 18, mais, au lieu de cela, le résultat de l'opération est lu directe- ment à partir du circuit de verrouillage de destina- tions 38 pour être introduit dans le bus X 17 ou/et dans le bus X 18 Même lorsqu'un registre est en état de conflit, les données sont par conséquent transférées suivant le trajet repéré par la ligne formée de tirets et il ne se présente aucun problè- me. Par conséquent lorsqu'un registre est en état de conflit, les données ne sont pas lues hors du registre d'utilisation générale 14 pour être trans- férées dans le bus X 17 ou dans le bus X 18, mais les données sont lues directement hors du circuit de ver- rouillage de destinations 38 pour être transférées dans le bus X 17 et dans le bus X 18 Il est possi- ble de proposer deux méthodes pour commuter la lectu- re des données La première méthode est basée sur une technique de logiciel,c'est-à-dire qu'on ajoute une mi- cro-instruction qui spécifie que le circuit de verrouil- lage de destinatiors 38 sert de registre pour la transmis- sion des données soit dans le bus X 17, soit dans le bus Y 18 Lorsqu'un registre est en état de conflit, le micro- programme est préparé moyennant l'utilisation de la micro-instruction cidessus Dans exemple de la figure A par conséquent, une micro-instruction est préparée de la manière représentée sur la figure 5 B Conformé- ment à cette méthode cependant, bien qu'il n'y ait aucune addition au matériel, un micro-programme doit être préparé une fois qu'a été établi qu'un registre est en état de conflit ou non. La seconde méthode consiste à détecter l'état de conflit pour un registre par des moyens matériels sans adjonction d'une micro-instruction, afin de conmuter la lecture des données en fonction d'un résultat dé- tecté Conformément à cette méthode, le programmeur n'a pas à supporter une charge de travail supplémen- taire consistant en la préparation d'un micro-program- me Les données doivent être commutées par adjonction d'une faible quantité de matériel. La figure 8 représente la partie principale d'une unité de traitement des données, qui met en oeu- vre la seconde méthode Comme cela a été décrit ci-des- sus, le signal de sortie du circuit de verrouillage de commande d'enregistrement 33 spécifie un registre, dans lequel le résultat de l'opération sera mémnorisé, Par conséquent il est aisé de déceler si un registre est en état de conflit ou non, en détectant si le signal de sortie du circuit de verrouillage de comman- de d'enregistrement 33 est identique aux données de la zone RX ou RY située dans le registre de micro-ins- tructions 32 Un circuit 81 de détection d'accord du bus X détecte le cas o un état de conflit pour un registre concerne le bus X 17 Lorsque le signal de sortie du circuit de verrouillage de commande d'en- registrement 33 est identique aux données de la zone RX, un signal de sortie de détection d'accord est en- voyé, par l'intermédiaire d'un inverseur 83, à une porte ET (groupe) 85 de manière à fermer cette der- nière Par conséquent le signal de commande prove- nant du décodeur RX 34 et aboutissant au registre d'utilisation générale 14 est inhibé et les données peuvent être lues hors du circuit du verrouillage de destination 38 en étant transmises dans le bus X 17. Un circuit 82 de détection d'accord pour le bus Y, un inverseur 84 et une porte ET (groupe) 86 travail- lent de la même manière pour le bus Y 18 Le circuit 81 de détection d'accord pour le bus X et le circuit 82 de détection d'accord pour le bus Y sont consti- tués simplement moyennant l'utilisation de portes OU-Exclusif et de portes NON-OU et présentent très peu de problèmes du point de vue du matériel Avec l'unité de traitement des données de la figure 8, on peut effectuer de façon appropriée une commande pipe-line sans que ce-la ne présente aucun problème du point de vue du logiciel ou du matériel et sans aucun retard, même lorsqu'un registre est en état de conflit. Sur la figure 6 B, le circuit de verrouilla- ge de destinations est prévu sur le côté sortie de l'unité arithmétique Lorsque le circuit de verrouil- lage de destinationsest prévu sur le côté entrée de l'unité arithmétique ou est intégré à cette unité, le résultat de l'opération de l'unité arithmétique est transmis directement dans le bus X et dans le bus Y par la commande des portes. Sur la figure 7 A, les signaux de sortie provenant des circuits 80, 82 de détection d'accord sont introduits dans l'unité arythmétique 15 et le résultat de l'opération n'est pas envoyé au bus Z, mais est envoyé directement au bus X ou au bus Y. Il en va de même également dans l'unité de la figure 7 B Alors les signaux de sortie provenant des circuits , 82 de détection d'accord sont introduits dans l'uni- té arithmétique 15 et le résultat de l'opération n'est pas envoyé au bus Z, mais est envoyé directement au bus X ou au bus Y Les lignes formées de tirets des figu- res 7 A et 7 B indiquent ces conditions. Conformément à la présente invention tel- le que décrit ci-dessus, la durée requise pour la lecture de microinstructions, la durée requise pour la lecture de données arithmétiques et la durée re- quise pour l'enregistrement du résultat de l'opéra- tion sont rendues quasiment égale En outre, confor- mément à la présente invention, trois micro-cycles sont alloués à une' micro-instruction de sorte que le traitement partiel des trois microinstructions peut être effectué en parallèle pendant le même mi- cro-cycle Par conséquent, conformément à la présen- te invention, un traitement partiel est effectué simultanément et en parallèle pour les trois micro- -25 instructions pendant le même micro-cycle, dans des conditions dans lesquelles le temps mort est raccour- ci par rapport aux unités de traitement classiques. C'est pourquoi la vitesse totale de calcul peut être accrue. REVENDI CATI ONS 1 Unité de traitement des données, compor- tant des premiers moyens ( 12 ') qui produisent des si- gnaux de commande ( 10 ') par décodage de mots d'instruc- tions qui sont lus successivement hors d'une mémoire principale ( 11), des seconds moyens ( 11) qui agissent sur les données lues par l'intermédiaire de bus de transmission de données ( 17,18) de deux systèmes con- formément aux signaux de commande, et des troisièmes moyens ( 14) qui transmettre et reçoivent les données entre lesdits bus de transmission de données et qui mémorisent temporairement un résultat de l'opération en provenant des seconds moyens ( 15) par l'intermé- diaire d'un bus d'enregistrement ( 19) prévu spécia- lement, caractérisée en ce qu'elle comporte en outre un registre de verrouillage ( 38) qui est prévu entre les seconds moyens ( 15) et ledit bus d'enregistrement ( 19) prévu de façon spéciale pour l'enregistrement de résultats d'une opération et qui mémorise les résul- tats d'opérations temporairement pendant une durée d'un cycle machine, et un registre ( 33) de verrouil- lage de commande d'enregistrement, qui mémorise tem- porairement pendant une période égale à un cycle de machine, un signal de commande qui spécifie la posi- tion dans lesdits troisièmes moyens ( 14), dans la- quelle ledit résultat de l'opération est mémorisé lesdits signaux de commande étant certains des signaux de commande de fonctionnement qui sont produits, et que les micro-instructions sont lues, que les données arithmétiques sont mémorisées dans ledit registre de verrouillage ( 34) et que les données sont enregistrées à partir dudit registre de verrouillage dans lesdits troisièmesmoyens ( 14), toutes en parallèles pour chacun des cycles machine 2 Unité de traitement des données selon la revendication 1, caractérisée en ce que lesdits pre- miers moyens ( 12 ') contiennent une mémoire ROM décodés par ladite mémoire ROM. 3 Unité de traitement des données selon la re- vendication 1, caractérisée en ce que les registres de verrouillage (Lx, LY) pour les données arithmétiques sont prévus entre le côté entrée desdits seconds mo- yens ( 15) et les bus de transmission de données ( 17,18) desdits deux systèmes, et que l'opération est exécutée après que les données aient été retardées d'un cycle machine. 4 Unité de traitement des données selon la revendication 1, caractérisée en ce que lesdits seconds moyens ( 15) comprennent un registre qui agit de manière à retarder les données arithmétiques d'un cycle machine. Unité de traitement de données selon la re- vendication 1, caractérisée en ce qu'il est prévu un trajet qui transfère les résultats des opérations di- rectement aux bus de transmission de données ( 17,18) des deux systèmes à partir du registre de verrouillage ( 38) qui est disposé entre le côté sortie desdits se- conds moyens ( 15) et le bus ( 19) prévus spécialement pour l'engistrement des résultats d'opérations, de manière à déterminer si les résultats d'opérations doivent être enregistrés dans lesdits troisièmes mo- yens ( 14) ou doivent être transférés aux bus de trans- mission de données ( 17,18) desdits deux systèmes. 6 Unité de traitement des données selon la revendication 1, caractérisée en ce que lesdits troi- sième moyern ( 14) comprennent au moins deux registres pour mémoriser et transférer les données sur lesquelles doit etre effectuée une opération, et au moins un re- gistre pour mémoriser et transférer les résultats des opérations. 7 Unité de traitement des données selon la revendication 6, caractérisée en ce qu'il est prévu des moyens de détection à coincidence ( 81,82) qui dé- tectent si un des registres mémorisant les données sur lesquelles on doit effectuer une opération, coincide avec le registre mémorisant le résultatde l'opération, et des moyens logiques ( 85,86) qui inhi- bent le transfert de données, sur lesquelles doivent être effec- tuées des opérations, par l'intermédiaire desdits si- gnaux de détection, en direction desdits deux bus de transmission de données ( 17,18), lorsqu'une coinciden- ce est détectée par lesdits moyens de détection à coin- cidence ( 81,82) lesdits moyens logiques étant prévus sur le côté snrtie de décodeurs de signaux de com- mande (RXDEC 34, RY DEC 35) qui sont raccordés audit registre mémorisant les données sur lesquelles on doit effectuer une opération, et qu'un signal provenant du- dit registre de verrouillage ( 33) est transféré à l'un ou l'autre desdits deux bus de données ( 17,18), en fonc- tion du signal de détection de coincidence.