FR 2522171 A1 19830826 FR 8302863 A 19830222 La présente invention concerne l'unité arithméti- que d'un ordinateur et elle porte plus particulièrement sur un dispositif destiné à procurer une réduction importante du temps d'exécution d'une addition en virgule flottante, en -réduisant le temps nécessaire pour effectuer des opérations de décalage. Les opérations arithmétiques accomplies dans les ordinateurs peuvent être effectuées en arithmétique à virgule fixée, couramment utilisée pour les calculs de gestion ou de statistiques, ou en arithmétique à virgule flottante, utili- sée principalement pour les calculs scientifiques et techni- quea Dans une structure d'ordinateur, la virgule est impli- cite et n'occupe pas une position physique dans un dispositif de mémoire Avec l'arithmétique à virgule fixée, une virgule est placée immédiatement à droite de la position de chiffre de moindre poids, ou placée immédiatement à droite de la position de s igne, avant la première position de chiffre Avec az Itbhmétiqoe àuvirgue flottante, un nombre est représenté par un signe, une figure, encore appelée mantisse, et un exposant. La figure peut être représentée en notation à virgule fixée et l'exposant peut être un entier positif ou négatif. On doit comparer et rendre égaux les exposants de deux nombres en virgule flottante avant de pouvoir les addi- tionner ou les soustraire Il existe souvent une unité arith- métique séparée pour exécuter les calculs sur les exposants, simultanément aux calculs sur les figures, pour améliorer la vitesse de fonctionnement Dans les opérations arithémtiques en virgule flottante normalisées, un nombre en virgule flot- tante est normalisé si la position de chiffre de plus fort poids d'une figure contient un chiffre différent de zéro La normalisation nécessite de décaler la figure vers la gauche, ce qui fait sortir les zéros de tête redondants présents dans les positions de chiffre de plus fort poids, et l'exposant est diminué de façon correspondante jusqu'à ce qu'un chiffre différent de zéro apparaisse à la position de plus fort poids. En arithmétique normalisée, tous les nombres en virgule flottante doivent être pré-normalisés avant de pouvoir être manipulés Par conséquent, après chaque étape de calcul -i:j: :: - intermediaire, des procédures de renormalisation doivent être accomplies pour assurer l'intégrité de la forme normali- sée Les représentations de nombres en virgule flottante sont décrites dans de nombreux textes, parmi lesquels l'ouvrage intitulé "Computer Arithmetic: Principles, Architecture and ',Design", Kai Hwang, John Wiley and Sons, 1979. , L'addition en virgule flottante nécessite des décalages pour l'alignement des opérandes et pour la normali- - sation des résultats Le nombre de décalages effectués n'est :: 10 limité que par la longueur de la figure et par un algorithme -- d'arrfbdi particulier qui est utilisé Le nombre maximal de :, décalages accomplis dans un système de numération binaire ,est fxéquemment égal au nombre de bits de la figure, plus un. <>- Les ordinateurs qui comprennent des circuits de :is 15 décalage limités à un nombre de décalages correspondant à quelques bits à la fois consacrent beaucoup de temps à effec- :' tuer de façon répétitive de longues opérations de décalage. : Les circuits de décalage ayant une plus grande plage de déca- j Slage peuvent accomplir un décalage d'alignement ou de norma- :,20 lisation en une seule opération et ils présentent générale- -:l: ment un retard de propagation notablement supérieur à celui :: d'uun seul passage par un plus petit circuit de décalage Dans l'art antérieur, l'addition en virgule flottante a été réali- ?' sée d'une manière selon laquelle l'alignement et la normali- ::? 25 sation sont accomplis, pour chaque opération, par un seul ?"':passage dans un circuit de décalage à plusieurs chiffres, ou , par autant depassag Squ'il est nécessaire dans un circuit de -l-' décal 1 ge court, pour accomplir plusieurs décalages. ô-:-' L'invention décrit une unité arithmétique destinée à accomplir une opération de décalage avec un temps d'exécu- tion notablement réduit sur la partie de figure de nombres en virgule flottante Des circuits de décalage sont nécessai- -: res pour remplir les fonctions d'alignement et de normalisa- L,, tion pendant une addition en virgule flottante, et un mot numérique ne passe qu'une seule fois dans le circuit de déca- lage pour accomplir chacune de ces fonctions Les circuits de décalage comprennent des circuits de décalage à un seul -; chiffre pour décaler d'une seule position les chiffres d'un -,1- - 252217 1 mot numérique et un circuit de décalage à plusieurs chiffres pour' décaler de plusieurs positions des chiffres contenus dans un mot numérique Le circuit de décalage à plusieurs chiffres est capable d'effectuer des décalages à gauche et à droite tandis qu'un circuit de décalage d'un seul chiffre -nécessite seulement la possibilité d'effectuer des décalages à droite ou des décalages à gauche, mais non les deux Le circuit de décalage de plusieurs chiffres comprend un circuit de décalage circulaire et il n'est pas traversé plus d'une fois-par un mot numérique pendant une opération d'addition en virgule flottante Une unité arithmétique et logique est connectée en parallèle sur le circuit de décalage à plusieurs chiffres et des circuits de décalage à un seul chiffre sont connectés à l'entrée et à la sortie de l'unité arithmétique et logique; cependant, un mot numérique n'est pas obligé de traverser l'unité arithmétique et logique dans le seul but d'accéder à un circuit de décalage L'exécution d'une opéra- tion d'addition en virgule flottante s'effectue sous la com- mande d'un microprogramme Cette configuration de circuits de décalage connectés à une unité arithmétique et logique procure les moyens nécessaires pour diminuer le temps d'exécution d'une opération d'addition en virgule flottante. L'invention décrit en outre un ordinateur comprenant une mémoire destinée à enregistrer des mots numériques compre- nant des données et des instructions, une unité arithmétique principale et une unité arithmétique d'exposant destinées à remplir des fonctions arithmétiques et logiques, une unité de commande destinée à générer des signaux pour l'accomplissement d'opérations de l'ordinateur, une unité d'entrée-sortie desti- née à commander l'entrée de mots numériques dans l'ordinateur et leur sortie de l'ordinateur, un bus d'ordinateur destiné à interconnecter la mémoire, les unités arithmétiques et l'unité d'entrée-sortie, et un bus d'entrée-sortie destiné à transfé- rer des mots numériques vers l'ordinateur et à partir de ce dernier L'unité arithmétique principale comprend en outre deux types de circuits de décalage destinés à accomplir une opération d'addition en virgule flottante, comprenant une fonction d'alignement et de normalisation, et un mot numérique ne traverse qu'une seule fois les circuits de décalage pour remplir chacune de ces fonctions Les circuits de décalage comprennent des circuits de décalage d'un seul chiffre devant être capable d'effectuer un décalage à gauche ou un décalage à droite, mais non les deux, et un circuit de déca- lage à plusieurs chiffres qui est capable d'effectuer des décalages à gauche et à droite Le circuit de décalage à plusieurs chiffres comprend lui-même un circuit de décalage circulaire et un mot numérique ne le traverse pas plus d'une fois pendant une opération d'addition en virgule flottante. L'unité arithmétique et logique est connectée en parallèle sur le circuit de décalage-à plusieurs chiffres et les cir- cuits de décalage à un seul chiffre sont connectés à l'en- trée et à la sortie de l'unité arithmétique et logique; cependant, un mot numérique n'est pas obligé de traverser l'unité arithmétique et logique dans le seul but d'accéder à un circuit de décalage L'accomplissement de toutes les opérations de l'ordinateur s'effectue sous la commande d'un microprogramme Cette configuration de circuits de décalage connectés à une unité arithmétique et logique procure les moyens nécessaires pour diminuer le temps d'exécution d'une opération d'addition en virgule flottante. L'invention décrit en outre un procédé d'accom- plissement d'une opération d'addition en virgule flottante comprenant les acticms suivantes-: on remplit des fonctions d'alignement et de normalisation avec des circuits de déca- lage, d'une manière telle qu'un mot numérique ne traverse qu'une seule fois un circuit de décalage pour remplir chacu- ne de des fonctions, on décale d'une position des chiffres appartenant au mot numérique en utilisant un circuit de déca- lage d'un seul chiffre, on décale de plusieurs positions des chiffres appartenant au mot numérique en utilisant un circuit de décalage de plusieurs chiffres connecté à un circuit de décalage d'un seul chiffre, le mot numérique ne traversant pas plus d'une fois le circuit de décalage de plusieurs chiffres au cours d'une opération d'addition en virgule flot- tante, et on remplit une fonction d'addition en utilisant une unité arithmétique et logique connectée aux circuits de déca- 25221 7 1 lage, en faisant en sorte que le mot numérique ne soit pas obligé de traverser l'unité arithmétique et logique dans le seul but d'accéder à un circuit de décalage Les actions de décalage de chiffres comprennent des décalages à gauche et à droite dans le mot numérique, et l'action consistant à remplir une fonction d'addition comprend l'addition de deux mots numériques de figure L'action de décalage de plusieurs posi- tions de chiffres contenus dans un mot numérique fait inter- venir un circuit de décalage circulaire Ce procédé comprend en outre l'actionqui consiste à générer des signaux de com- mande en utilisant une commande par microprogramme, ces signaux de commande validant simultanément des voies parallè- les, avec un circuit de décalage de plusieurs chiffres dans une voie et une unité arithmétique et logique dans une autre voie, et les signaux de commande sélectionnent pour l'enre- gistrement le signal de sortie d'une seule des voies, selon une détermination faite en fonction de conditions relatives à l'état de la machine. L'invention sera mieux comprise à la lecture de la description qui va suivre d'un mode de réalisation et en se référant aux dessins annexés sur lesquels: La figure 1 est un schéma synoptique fonctionnel de l'invention; La figure 2 est un schéma synoptique général d'un ordinateur montrant une unité arithmétique principale qui utilise une architecture à virgule flottante conforme à l'invention; La figure 3 montre une réalisation logique du dis- positif de l'invention représenté sur la figure 2; La figure 4 est un schéma synoptique fonctionnel du circuit de décalage circulaire 18 représenté sur la figu- re 1 et la figure 2; et La figure 5 est un organigramme d'un microprogramme d'une opération d'addition en virgule flottante que réalise l'invention. On va maintenant considérer la figure 1 qui montre un schéma synoptique fonctionnel d'une unité arithmétique principale 64, destinée à accomplir des opérations arithméti- ques sur une partie de figure, encore appelée mantisse, d'un nombre ou d'un mot numérique en virgule flottante On l'utilise en association avec une unité arithmétique d'expo- sant en virgule flottante, 66, de type classique, représentée sur la figure 2, et avec des signaux de commande appropriés , pour accomplir des opérations arithmétiques en virgule flottante Un système de numération à basedans lequel la valeur de la base, r, est égale à deuxconstitue ce qu'on appelle communément le système de numération binaire Un chiffre dans le système de numération binaire est appelé un bit, et dans les systèmes de numération ayant des valeurs de base plus élevées pour r, un plus grand nombre de chiffres binaires ou de bits sont nécessaires pour coder chaque chiffre de la base r Un mot numérique comprend un ensemble de chiffres alignés dans des positions adjacentes pour former une représentation numérique Des registres 10 enregistrent les figures de mots numériques ou de nombres en virgule flot- tante à additionner Un circuit de décalage à droite 12 appli- que un décalage à droite d'un seul chiffre, lorsque c'est nécessaire, aux mots numériques comprenant un ou plusieurs chiffres qui sont transférés à partir des registres 10 Une unité arithmétique et logique (UAL) 14 effectue l'addition de deux mots numériques ou nombres représentant des figures qui sont appliqués à ses entrées, elle effectue des opéra- tions logiques sur ces mots numériques ou elle transmet sim- plement les mots numériques sans modification vers un circuit de décalage à gauche d'un seul chiffre, 16 Le registre cir- culaire 18 qui est branché en parallèle sur la voie contenant l'UAL 14 connectée au circuit de décalage à gauche 16, donne la possibilité d'effectuer un décalage à gauche ou à droite d'un nombre de chiffres arbitraire Un bus A, 20, un bus B, 22 et un bus F, 24, facilitent le transfert de mots numéri- ques pendant une opération arithmétique en virgule flottante. Le bus A, 20 applique un opérande en virgule flottante à une entrée de l'UAL 14 ou un mot numérique au circuit de décalage circulaire 18 Le bus B, 22, applique un opérande en virgule flottante à une seconde entrée de l'UAL 14, ou un mot numéri- que au circuit de décalage circulaire 18, ou bien il transfè- re un mot numérique vers les registres 10 Le bus F, 24, transmet les résultats intermédiaires ou finals d'opérations arithmétiques en virgule flottante vers les registres 10 ou vers d'autres parties d'un ordinateur à virgule flottante. La séquence des opérations qui sont accomplies dans l'unité arithmétique principale 64, y compris les calculs sur les figures, est déterminée par un circuit de commande par microprogramme 30 connecté à un décodeur 31 qui fournit les signaux de commande 35 nécessaires, basés dans certains cas sur certaines conditions d'état de machine, 33, qui existent pendant certaines opérations particulières. On va maintenant considérer la figure 2 qui montre l'unité arithmétique principale 64 dans un schéma synoptique général d'un ordinateur En combinaison avec une unité arithmétique d'exposant 66, l'unité arithmétique principale 64 forme une unité arithmétique globale 62 destinée à l'accomplissement d'opérations arithmétiques en virgule fixée et en virgule flottante Une mémoire 68 offre la possi- bilité d'enregistrer des données et des instructions Une unité d'entréesortie 70 commande l'entrée de mots numériques dans l'ordinateur et la sortie de ces mots, sur un bus d'entrée-sortie 74 Des bus d'ordinateur 60 interconnectent l'unité arithmétique 62, la mémoire 68 et l'unité d'entrée- sortie 70, pour le transfert de données et d'instructions. Une unité de commande 72 fait appel à des techniques de com- mande par microprogramme utilisant une mémoire morte et elle génère les signaux de commande 35 destinés à l'accomplisse- ment de toutes les opérations dans l'ordinateur. Une opération d'addition en virgule flottante nécessite en général les étapes fonctionnelles suivantes ( 1) comparaison et alignement des exposants, ( 2) addition, ( 3) normalisation, ( 4) arrondi et ( 5) renormalisation La comparaison d'exposants de l'étape 1 peut être accomplie dans l'unité arithmétique principale mais elle est accomplie de préférence dans une unité arithmétique d'exposant séparée, 66, comme il est représenté sur la figure 2, dans le but d'améliorer la vitesse Si l'alignement nécessite un décala- ge de plus d'un chiffre, les opérations de normalisation ne nécessitent au plus qu'un décalage d'un seul chiffre. L'architecture à circuits de décalage parallèles, représen- tée sur la figure 1, place 1 'UAL 14 dans une voie et la possibilité de décalage de plusieurs chiffres procurée par le circuit de décalage circulaire 18 dans une seconde voie. Cependant, un circuit de décalage à droite 12 procure une possibilité de décalage d'un seul chiffre, et le circuit de décalage à gauche, 16, est incorporé dans la voie de UAL. Cette technique n'utilise-le circuit de décalage circulaire 18 que lorsque c'est nécessaire, et au plus une fois par opération d'addition en virgule flottante, soit pour la nor- malisation, soit pour l'alignement, mais non pour les deux. Tous les autres décalages nécessaires sont assurés par les circuits de décalage d'un seul chiffre tels que le circuit de décalage à droite 12 et le circuit de décalage à gauche 16 La décision d'utiliser le circuit de décalage circllaire 18 pour l'alignement ou la-normalisation est prise lorsq e ces opérations nécessitent des décalages de plus d'un chiffre. Si l'alignement nécessite un décalage de plus d'un chiffre, le circuit de décalage circulaire 18 est utilisé pour l'ali- gnement Si l'alignement est un décalage de zéro ou d'un chiffre, on utilise un circuit de décalage d'un seul chiffre- pour l'alignement et on réserve le circuit de décalage circu- laire 18 pour la normalisation, si nécessaire L'architecture comportant des circuits de décalage en parallèle entraîne une réduction notable du temps d'exécution pour l'accomplissement d'une addition en virgule flottante,-en minimisant le temps passé dans les opérations de décalage et en limitant les passages'dans un circuit de décalage circulaire à un passage destiné à l'accomplissement d'une étape fonctionnelle telle qu'un alignement. Le tableau 1 en annexe résume trois séquences d'addition en virgule flottante, chacune d'elles étant utili- sée en fonction des nombres réels sur lesquels porte l'opéra- tion L'une des trois séquences A, B ou C est accomplie pen- dant l'exécution d'une addition en virgule flottante avec l'architecture à circuits de décalage parallèles La séquence qui est exécutée dépend des nombres en virgule flottante 252217 1 réels qui sont manipulés On peut cependant montrer que les séquences A et C apparaissent notablement plus fréquemment que la séquence B. La figure 5 montre un organigramme de microprogram- me correspondant à une opération d'addition en virgule flottante, réalisée par le dispositif de l'invention des figures 1 et 3 Les cases d'exécution dessinées à côté des cases de décision indiquent des opérations qui sont exécu- tées au moment o la décision est prise Une action qui est conditionnée à l'état de la machine est indiquée Un état désiré correspondant à une condition de branchement n'est pas disponible jusqu'au début d'un cycle de traitement ou d'un microcycle pour lequel il est nécessaire Par consé- quent, la voie de traitement de l'UAL 14 et la voie de trai- tement du circuit de décalage circulaire 18, représentées sur la figure 1, sont exécutées simultanément A la fin du cycle, le signal de sortie de l'une des voies est sélection- né pour l'enregistrement et un branchement est exécuté, sous la dépendance de l'état de la machine L'exécution simulta- née de la voie de 1 'UAL 14 et de la voie du circuit de déca- lage circulaire 18 sous la commande du circuit de commande par microprogramme 30 tend à compenser la vitesse de fonc- tionnement plus lente d'une unité de commande microprogram- mée La case en pointillés désignant une comparaison d'exposants dans l'unité arithmétique d'exposant 66 est incorporée à titre indicatif sur l'organigramme de micropro- gramme de la figure 5, du fait que cette opération fait partie intégrante d'une opération arithmétique en virgule flottante nécessitant un microcycle, comme il est indiqué dans le tableau 1, cette opération étant connue de l'homme de l'art. Lorsqu'un alignement portant sur zéro ou un seul chiffre est nécessaire pendant une instruction d'addition en virgule flottante, l'alignement et l'addition sont accomplis en un seul microcycle en utilisant le circuit de décalage d'un seul chiffre à droite, 12, connecté à la voie de l'UAL. Si une première normalisation nécessite-un décalage à droi- te,, aucune renormalisation n'est nécessaire après l'arrondi. - -;, 2522 1 7 1 -:Par conséquent, la renormalisation du quatrième microcycle, À.> iindiquée dans le tableau 1, peut être effectuée en utili- 1 sant un circuit de décalage à droite d'alignement 12 connec- -7 ' té à l'entrée -de i'UAL 14 et un circuit de décalage à gau- che d-'un seul chiffre, 16, connecté à la sortie de l'UAL 14. Le dernier microcycle de chaque séquence représentée dans le tableau 1 prévoit trois cas de normalisation qui sont les' ' suivants: t" Décalage de normalisation; un seul chiffre vers la 0 droite %'> Le circuit de décalage à droite 12 décale le résultat '^ d'un chiffre vers la droite, puis le poids d'un chiffre j ' arrondi est additionné pour arrondir le résultat Aucune renormaiisation n'est nécessaire. 2 Pas de décalage de normalisation Le circuit de décalage à droite 12 décale le résultat d'un chiffre vers la-droite, puis le poids d'un chiffre -, arrondi déplacé d'un chiffre vers la droite est additionné : pour -arrondir le résultat Si le résultat n'est pas alors normalisé, le circuit de décalage à gauche 16 effectue un décalage à gauche d'un seul chiffre pour placer la figure n sous la forme finale. -CZ;' 3: Décalage de normalisation; un seul chiffre vers la est gauche Le ci Qrcuit de décalage à droite 12 transmet le résultat t- sans décalage, puis le poids d'un chiffre arrondi déplacé d'un Chiffre vers la droite est additionné pour arrondir le 7 ' résultats Si le résultat n'est pas alors normalisé, le cir- ó;.: cuit de décalage à gauche 16 effectue un décalage à gauche e;,, 30 d'un seoul chiffre pour placer la figure sous la forme fina- : ' le. ?; S, ; "-%::f Dans les trois cas, une unité arithmétique d'exposant 66, représentée sur la figure 2, ajuste la par- -'tie d'exposant du nombre en virgule flottante, pendant que u; -: résultat. $l On va maintenant considérer la figure 3 qui montre un mode de réalisation logique détaillé du dispositif de l'invention représenté sur la figure 1 Dans le mode de réalisation préféré, il s'agit d'un unité arithmétique prin- cipale rapide 64 destinée à effectuer des calculs de figure dans un ordinateur en virgule flottante à trente-deux bits (base égale à 2), sous la commande de l'unité de commande microprogrammée 72, de la manière indiquée par le circuit de commande-par microprogramme 30 et le décodeur 31, bien que l'invention soit également applicable à des longueurs de mot autres que trente-deux bits, à d'autres bases et à d'autres techniques en ce qui concerne l'unité de commande. Certains des signaux de commande 35 sont générés en fonc tion de certaines conditions d'état 33 concernant la machi- ne Le fichier de registre 42 contient 48 mots avec 32 bits par mot; il s'agit d'un fichier à deux accès dont un accès est uniquement un accès de lecture tandis que le second accès est un accès de lecture/écriture Ce fichier peut être réalisé avec des circuits intégrés de mémoire vive du type 29705 A Des données de figure en virgule flottante destinées à être traitées sont appliquées par le bus A, 20 et le bus B, 22 Une sortie du fichier de registre 42 est connectée au bus A, 20, et la seconde sortie est connectée au bus B, 22 Des données peuvent également être placées sur le bus B, 22, par l'intermédiaire de la ligne d'entrée de données 26 ou à partir de la sortie du registre C, 36. En plus du fichier de registre 42, il existe un registre A 32, un registre B, 34 et un registre C,36, se présentant sous la forme de registres de travail à trente- deux bits destinés à un enregistrement intermédiaire rapide des opérandes, et chacun d'eux peut être réalisé avec des circuits intégrés 54 F 374 Le registre A reçoit des données provenant du bus A, 20, par l'intermédiaire du circuit sépa- rateur 50, ou provenant d'un bus F, 24 Le bus F, 24, trans- fère des données à partir des unités arithmétiques et logi- -ques 44 et 14, en passant respectivement par le circuit séparateur 52 et le circuit de décalage 26, ou bien à par- tir du circuit de décalage circulaire 18 ou de sources *:2 1 1 2522171 ô-t es telles que des circuits logiques relatifs aux opé- rations de multiplication ou de division La sortie du registre A 32 est directement connectée au circuit de déca- lage à droite, 40 L'entrée du registre B, 34, est connectée au bus B, 22, et sa sortie est directement connectée au cir- cuit de décalage à droite 38 L'information d'entrée du registre C, 36, provient du bus F, 24, ou du bus A, 20, par - l'intermédiaire du circuit séparateur 50 La sortie du regis- tre C, 36, est directement connectée au bus B, 22 Le regis- tre C, 36, assure un enregistrement temporaire et remplace le registre B, 34, pendant certains microcycles L'utilisa- tion d'un registre C, 36, s'avère moins coûteuse que l'utili- sation de multiplexeurs supplémentaires à l'entrée du regis- tre B, 34, pour établir une voie allant du bus F, 24 vers le bus B, 34, et, en plus, ceci fait gagner du temps. En considérant toujours la figure 3, on voit que deux unités arithmétiques et logiques 14 et 44 sont utili- sées en parallèle, essentiellement pour améliorer les opéra- tions de soustraction en virgule flottante Le bus A, 20 et le bus B, 22, appliquent les deux opérandes aux deux UAL 14 et 44 La sortie de l'UAL 14 est connectée au circuit de décalage à bauche 16, comme il est représenté de façon simi- laire sur la figure 1, et le bit de signe est appliqué au circuit logique de signe en virgule flottante, 48 La sortie de l'UAL 44 est connectée au circuit séparateur 52, dont la sortie est connectée au bus F, 24 Avec ces deux UAL bran- chées en parallèle, l'une génère un résultat qui est le com- plément à deux du résultat de l'autre On sélectionne l UAL qui a le résultat positif, ce qui évite la nécessité d'inver- ser un résultat négatif en complément à deux, pour lui donner la forme signe/valeur absolue, qui est la forme pour la figure d'un nombre en virgule flottante Les signes associés à chaque opérande chargé dans les UAL, ainsi que le signal de sortie de signe de l'UAL 14,sont appliqués au circuit logique de signe en virgule flottante, 48, qui détermine le signefinal approprié pour le résultat qui est obtenu par les opérations des UAL Le signal de sortie du circuit logi- que de signe en virgule flottante est transféré vers le bus F, 24, par le circuit séparateur 54 Pendant l'exécution d'une fonction d'arrondi, une constante appropriée appelée un chiffre arrondi (ou un bit arrondi dans le système binaire) est appliqué à l'UAL 14 par la mémoire morte pro- grammable de littéral 46, par l'intermédiaire du bus B, 22. Chacune des UAL 14 et 44 peut Jtre réalisée à l'aide de cir- cuits intégrés des types 54 F 181 et 54 F 182, pour constituer une UAL à trente-deux bits avec report anticipé Chaque UAL accomplit les opérations arithmétiques et logiques dont la liste figure dans le tableau 2, en annexe, dans lequel A et B désignent les signaux d'entrée d'une UAL Les circuits séparateurs 50, 52 et 54 peuvent être réalisés à l'aide de circuits intégrés du type 54 F 244 Le bus A et le bus B peu- vent 8 tre réalisés avec des circuits intégrés à trois états 54 F 258, et le bus F peut 8 tre réalisé avec des circuits intégrés du type 54 F 244. * On va maintenant considérer la figure 4 qui repré- sente un circuit de décalage de plusieurs bits, ou circuit de décalage circulaire, 18, qui établit l'une des deux voies de circuit de décalage, comme il est représenté sur la figu- re 1 et sur la figure 3, et qui procure une possibilité de décalage de plusieurs chiffres On utilise ici l'expression "circuit de décalage circulaire" pour désigner un ensemble d'éléments logiques capable d'effectuer des décalages vers la droite et vers la gauche de longueur arbitraire, afin d'effectuer un alignement ou une normalisation en une seule traversée fonctionnelle du circuit de décalage circulaire, dans le cadre d'une opération relative à une instruction d'addition en virgule flottante Le circuit de décalage cir- culaire 18 est capable d'effectuer un décalage ou une rota- tion sur 64 bits de données binaires et il comprend les quatre étages logiques de multiplexeurs suivants: multiple- xeurs de données d'entrée 100 et 102, multiplexeur de rota- tion de multipletsl O 4, multiplexeur de rotation de bits 108 et multiplexeur de condition finale 114. Les multiplexeurs de données d'entrée 100 et 102 sélectionnent l'une des deux quantités à trente-deux bits provenant du bus A, 20, ou du bus B, 22 Le bus A, 20, four- 252217 1 nit un signal d'entrée correspondant à 32 bits de moindre poids et le bus B, 22, fournit un signal d'entrée correspon- dant à 32 bits de plus fort poids De plus, les trente-deux bits de moindre poids d'un mot de données peuvent être appli- qués au multiplexeur de données d'entrée 102 sous la forme d'un ensemble de zéros 101, pour accomplir une insertion de zéros lorsqu'on désire effectuer un décalage d'une quantité à trente-deux bits On accomplit une rotation de 32 bits en sélectionnant le signal d'entrée de façon que les 32 bits de plus fort poids soient reproduits pour les 32 bits de moindre poids Les sorties des multiplexeurs de données d'entrée sont connectées à un multiplexeur de rotation de multiplets 8:1, 1 C 4, qui positionne chaque multiplet de données à 8 bits sur une frontière de multiplet pendant une opération de décalage ou de rotation Un circuit logique de traduction 106 définit le format des valeurs de décalage de la manière nécessaire pour effectuer des rotations de multiplets Les sorties du multiplexeur de rotation de multiplets 8:1, 104, sont con- nectées à l'entrée du multiplexeur de rotation de bits 8:1, 108, qui fait tourner les données dans une plage de 8 posi- tions, afin d'amener les données à une position finale La sortie du multiplexeur de rotation de bits 8:1, 108, est connectée au multiplexeur de condition finale 2:1, 114, qui modifie les positions de bit des données de la manière nécessaire pour effectuer une extension de signe ou une inser- tion de zéro si une opération de décalage (par opposition à une opération de rotation) a été exécutée Les sorties du multiplexeur de condition finale 114 sont directement con- nectées à un registre Q 56 (représenté sur la figure 3) et au bus F, 24. Les multiplexeurs de données d'entrée 100 et 102 et le multiplexeur de condition finale 114 peuvent être réa- lisés en utilisant des circuits intégrés 54 F 257 Le multi- plexeur de rotation de multiplets 104 et le multiplexeur de rotation de bits 108 peuvent être réalisés en utilisant des circuits intégrés 54 F 151. On va maintenant considérer le déroulement d'une addition en virgule flottante, en se référant à la figure 3, 252217 1 à la figure 5 et au tableau 1 le microprogramme de commande comprend des micro-instructions pour accompl ir des opéra- tions de l'ordinateur telles qu'une addition en virgule flottante La durée d'exécution d'une micro-instruction constitue ce qu'on appelle un microcycle Les quatre micro- cycles suivants accomplissent une addition en virgule flot- tante: Microcycle 1: Les figures des opérandes apparais- sent sur le bus A, 20, et le bus B, 22, soit sous la forme de données d'entrée 26, soit sous la forme de données prove- nant du fichier de registre 42, et elles sont transférées vers le registre A, 32, et le registre B, 34 Simultanément, l'unité arithmétique d'exposant 66 représentée sur la figure 2 compare les exposants associés à chaque figure et détermine quelle figure nécessite un alignement A ce moment, l'unité logique de signe en virgule flottante, 48, détermine les signes des opérandes. Microcycle 2: Si un décalage de fonction d'aligne- ment, déterminé par l'unité arithmétique d'exposant 66, dépasse un, la figure particulière qui nécessite un aligne- ment est acheminée du registre A, 32, ou du registre E, 34, vers le circuit de décalage circulaire 18, par lil'ntermediai- re des circuits de décalage à droite 40 ou 38, et du bus A, , ou du bus B, 22, respectivement Le bit de moindre poids du nombre de chiffres de décalage pour l'alignement commande le circuit de décalage d'un bit vers la droit% pour le con- tenu du registre sélectionné Les bits restants du nombre de chiffres de décalage pour l'alignr ement commandent le circuit de décalage circulaire 18 Une figure d'opé ande sort du cir- cuit de décalage circulaire 18 en étant alignée et elle est enregistrée dans le registre A, 32, si le contenu de ce registre a été sélectionné pour l'alignement, ou dans le registre C, 36, si le contenu du registre B a été sélection- né pour l'alignement Si le nombre de chiffres de décalage pour l'alignement est zéro ou un, la figure sélectionnée sort du circuit de décalage à droite 38 ou 40 associé en étant déjà alignée; elle traverse alors les UAL parallèles 14 et 44 dans lesquelles la fonction d'addition est accom- plie Le résultat sous forme positive est enregistré dans le registre A, 32. Microcycle 3: Si le circuit de décalage circulaire 18 a été utilisé pour aligner le contenu du registre A, 32, les contenus de ce registre et du registre B, 34, sont main- tenant additionnés dans les UAL 14 et 44, et le résultat est enregistré dans le registre A, 32 Si le circuit de décalage circulaire 18 a été utilisé pour aligner le contenu du regis- tre B, 34, les contenus du registre A, 32, et du registre C, 36, sont maintenant additionnés dans les UAL 14 et 44 et le résultat est enregistré dans le registre A, 32 Si l'addition a été achevée dans le microcycle 2, la normalisation est maintenant accomplie Si le décalage de normalisation est d'un bit ou moins, une normalisation, un arrondi et une renormalisation sont effectués en utilisant le registre A, 32, le circuit de décalage à droite 40, l'UAL, 14 et le circuit de décalage à gauche, 16, de la manière décrite précédemment en relation avec le tableau 1 Un chiffre ou un bit d'arrondi est introduit dans la position appropriée du signal d'entrée de l UAL par la mémoire morte programmable de littéral, 46, par le bus B, 22 Le signal de Sortie du circuit de décalage à gauche 16 est la figure du résultat, qui est enregistrée dans le fichier de registre 42 ou qui est transférée ailleurs par le bus F, 24, en compagnie du signe du résultat, généré par l'unité logique de signe en virgule flottante, 48 Si la normalisation nécessite un décalage de plus d'un bit, on uti- lise le circuit de décalage circulaire 18 pour décaler le contenu du registre A, 32, et le résultat est réenregistré dans le registre A, 32. Microcycle 4: Si le circuit de décalage circulaire 18 a été utilisé pour un alignement portant sur plusieurs bits, la normalisation nécessaire ne peut être au maximum qu'une normalisation d'un bit La normalisation, l'arrondi et la renormalisation sont exécutés dans le cas ou l'addition a été achevée dans un cycle précédent et o une normalisation à plusieurs bits n'est pas nécessaire Si le circuit de déca- lage circulaire 18 a été utilisé pour une normalisation à plusieurs bits, un arrondi et une renormalisation sont exécu- tés sur le contenu du registre A, 32, en utilisant 1 'UAL 14, le circuit de décalage à gauche 16 et la mémoire morte pro- grammable de littéral 46 Ceci correspond au cas de la nor- malisation, de l'arrondi et de la renormalisation, dans lequel le résultat est normalisé au moment o le microcycle commence. Il va de soi que de nombreuses modifications peuvent être apportées au dispositif décrit et représenté, sans sortir du cadre de l'invention Par exemple, un circuit de décalage à plusieurs chiffres ou un circuit de décalage circulaire peut être réalisé avec une configuration logique autre que celle décrite ici, pour remplir une fonction iden- tique. 252217 1 ANNEXE TABLEAU 1 SEQUENCES D'ADDITION EN VIRGULE FLOTTANTE Séquence Opérations des microcycles A 1 Comparaison des exposants et chargement des données d'entrée 2 Alignement dans le circuit de décalage cir- culaire 3 Addition 4 Normalisation, arrondi, renormalisation et enregistrement du résultat B 1 Comparaison des exposants et chargement des données d'entrée 2 Alignement de-zéro ou un chiffre et addition 3 Normalisation dans le circuit de décalage circulaire 4 Arrondi, renormalisation et enregistrement du résultat C 1 Comparaison des exposants et chargement des données d'entrée 2 Alignement de zéro ou un chiffre et addition 3 Normalisation, arrondi, renormalisation et enregistrement du résultat TABLEAU 2 FONCTIONS DE L'UNITE ARITHMETIQUE ET LOGIQUE Fonctions Logiques Non A Non (A et B) Non A ou B Un Non (A ou B) Non B A Non-Ou Exclusif B A ou Non B Non A et B A Ou-Exclusif B B A ou B Zéro A et Non B A et B A Fonctions arithmétiques A A et B A et Non B Zéro A Plus (A ou Non B) (A et B) Plus (A ou Non B) A Moins B A ou Non B A Olus (A ou B) A Plus B (A et Non B) Plus (A ou B) A ou B A +A (A et B) Plus A (A et Non B) Plus A A 252217 1 R V E i N D I C A T I O N S 1 Dispositif de calcul caractérisé en ce qu'il con- prend, en combinaison: des moyens de décalage ( 12, 16, 18) destinés à L'accomplissement d'une opération d'addition en virgule flottante comprenant des fonctions d'alignerlent et de normalisation, ces moyens de décalage n'étant traversés qu'une seule fois par un mot numérique pour accomplir chacune de ces fonctions; ces moyens de décalage comprenant des moyens de décalage d'un seul chiffre ( 12, 16) destinés à décaler d'une position des chiffres du mot numérique pendant ladite opéra- tion; ces moyens de décalage comprenant en outre des moyens de décalage de plusieurs chiffres ( 18) connectés aux moyens de décalage d'un seul chiffre ( 12, 16) pour décaler de plu- sieurs positions des chiffres appartenant au mot numérique, ces moyens de décalage de plusieurs chiffres n'étant pas tra- versés plus d'une fois par le mot numérique pendant l'opéra- tion d'addition en virgule flottante; et des moyens arithmé- tiques ( 14) destinés à l'accomplissement de l'opération d'ad- dition en virgule flottante, comprenant des moyens destinés à accomplir une fonction d'addition, ces moyens arithmétiques étant connectés aux moyens de décalage ( 12, 16, 18), de façon que le mot numérique ne soit pas obligé de traverser les moyens arithmétiques dans le seul but d'accéder aux moyens de décalage. 23 2 Dispositif selon la revendication 1, caractérisé en ce que les moyens de décalage ( 12, 16, 18) accomplissent des décalages à gauche et à droite de chiffres appartenant au mot numérique. 3 Dispositif de calcul caractérisé en ce qu'il com- prend, en combinaison: des moyens de décalage ( 12, 16, 18) destinés à accomplir une opération d'addition en virgule flot- tante comprenant des fonctions d'alignement et de normalisa- tion, ces moyens de décalage n'étant traverses qu'une seule fois par un mot numérique pour accomplir chacune de ces fonc- tions; ces moyens de décalage comprenant un circuit de de- calage A droite d'un seul chiffre ( 12); et des moyens arith- métiques ( 14) connectés à la sortie du circuit de décalage à droite ( 12) pour effectuer l'opération d'addition en vir- gule flottante et comprenant des moyens destinés à accomplir une fonction d'addition; les moyens de décalage comprenant en outre un circuit de décalage à gauche d'un seul chiffre ( 16) qui est connecté à la sortie des moyens arithmétiques ( 14), ces moyens aritluhmétiques étant traversés par un mot numérique uniquement pour accomplir une fonction aritihmétique et non dans le seul but de permettre au mot numérique d'accé- der aux moyens de décalage; et les moyens de décalage com- prennent en outre un circuit de décalage de plusieurs chiffres ( 18) qui est connecté aux circuits de décalage à droite ( 12), et est branché en parallèle sur les moyens arithmétiques ( 14), ce circuit de décalage de plusieurs chiffres ( 18) n'étant pas traversé plus d'une fois par le mot numérique pendant l'exé- cution de l'opération d'addition en virgule flottante. 4 Dispositif de calcul caractérisé en ce qu'il com- prend, en combinaison: des moyens de décalage ( 12, 16, 18) destinés à accomplir une opération d'addition en virgule flot- tante comprenant des fonctions d'alignement et de normalisa- tion, ces moyens de décalage n'étant traversés qu'une seule fois par un mot numérique pour accomplir chacune de ces fonc- tions; ces moyens de décalage comprenant un circuit de dé- calage à droite d'un seul chiffre ( 12); des moyens aritlhié- tiques ( 14) connectés à la sortie du circuit de décalage Aà droite ( 12) pour accomplir l'opération d'addition en virgule flottante, comprenant des moyens destinés à accomplir une fonc- tion d'addition; les moyens de décalage comprenant en outre un circuit de décalage à gauche d'un seul chiffre ( 1 6) qui est connecté à la sortie des moyens arithmétiques ( 14), ces moyens arithmétiques n'étant traversés qu'une seule fois par un mot numérique pour accomplir une fonction arithmétique, et non dans le seul but de permettre au mot numérique d'accé- der aux moyens de décalage; les moyens de décalage compre- nant en outre un circuit de décalage de plusieurs chiffres ( 18) connecté au circuit de décalage à droite et branché en parallèle sur les moyens arithmétiques, le circuit de déca- lage de plusieurs chiffres n'étant pas traversé plus d'une fois par le mot numérique pendant l'exécution de l'opération d'addition en virgule flottante; des moyens ( 32) destinés à appliquer aux moyens arithmétiques ( 14) un premier mot nu- mérique représentant l'un des deux mots numériques à addi- tionner ensemble; et des moyens ( 34) destines à appliquer aux moyens arithmétiques ( 14) un second mot numérique repre- sentant un second des deux mots numériques à additionner en- semble. 5 Dispositif de calcul caractérisé en ce qu'il com- prend, en combinaison: des moyens de décalage ( 12, 16, 18) destinés à accomplir une opération d'addition en virgule flot- tante comprenant des fonctions d'alignement et de normalisa- tion, ces moyens de décalage n'étant traversés qu'une seule fois par un mot numérique pour accomplir chacune de ces fonc- tions; ces moyens de décalage comprenant un circuit de déca- lage à droite d'un seul bit ( 12); des moyens arithmétiques ( 14) connectés à la sortie du circuit de décalage à droite ( 12) pour accomplir l'opération d'addition en virgule flottan- te, comprenant des moyens destinés à accomplir une fonction d'addition; les moyens de décalage comprenant en outre un circuit de décalage à gauche d'un seul bit ( 16) connecté à la sortie des moyens arithmétiques ( 14), ces moyens arithmé- tiques n'étant traversés par un mot numérique que pour accom- plir une fonction arithmétique et non dans le seul but de per- mettre au mot numérique d'accéder aux moyens de décalage; les moyens de décalage comprenant en outre un circuit de décalage de plusieurs bits ( 18) connecté au circuit de décalage à droi- te, et branché en parallèle sur les moyens arithmétiques, ce circuit de décalags de plusieurs bits ( 1 l) n'étant pas tra- versé plus d'une fois par le mot numérique pendant 1 'texécu- tion de l'opération d'addition en virgale flottante; des moyens ( 32) destinés à appliquer aux moyens arithmé,tiques ( 14) un premier mot numérique représentant l'un des deuc mots numériques à additionner ensemble; et des moyens ( 34) destinés a appliquer auxr moyens arithmétiques ( 14) un second mot numérique représentant un second des deux mots numéri- ques à additionner ensemble. 6 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce que le circuit de décalage à droite d'un seul bit ou chiffré ( 12) comprend des moyens destinés à ef- fectuer un décalage à droite d'un seul bit ou chiffre ou à n'effectuer aucun décalage de bit ou chiffre. 7 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce que le circuit de décalage à gauche d'un seul bit ou chiffre ( 16) comprend des moyens destinés à ef- fectuer un décalage à gauche d'un seul bit ou chiffre ou a n'effectuer aucun décalage de bit ou chiffre. 8 Dispositif selon l'une des revendications 1 à 35, caractérisé en ce que le circuit de décalage de plusieurs bits ou chiffres ( 13) comprend des moyens destinés à décaler des bits ou chiffres d'un mot mnmérique de plusieurs positions vers la gauche ou la droite. 9 Dispositif selon l'une des revendications 1 a 5, caractérisé en ce que le circuit de décalage de plusieurs bits ou chiffres ( 18) accomplit la fonction d'alignement ou la fonction de normalisation, mais non les deux, pendant l'o- pération d'addition en virgule flottante. 10 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce que les moyens arithmétiques ( 14) accom- plissent la fonction d'addition sur deux mots numériques de figure pendant l'opération d'addition en virgule flottante. 11 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce que les moyens arithmétiques comprennent une unité ar:thlnétique et logique ( 14). 12 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce que les moyens aritlhnétiques comprennent en outre des noyens ( 43) destinés à d&terminer le signe d'un mot numérique résultant de l'opération d'addition en virgule flottante. 13 Dpositif selon l'une des revendications 1 à 5, caractérisé en ce que le circuit de décalage de plusieurs bits consiste en un circuit de décalage circulaire ( 10). 14 Dispositif selon l'une des revendications 1 à 5, caractérisé en ce qu'il comprend un circuit de commande par microprogramme ( 72) destiné à générer des signaux' de commande. Dispositif selon la revendication 14, caractérisé en ce que le circuit de commande par microprogramme ( 72) va- lide simultanément des voies parallèles comprenant le circuit cde décalage de plusieurs bits ou chiffres ( 18) et les moyens arithmétiques ( 14), et ces moyens de commande sélectionnent pour l'enregistrement le signal de sortie provenant d'une seule des voies, d'une manièire déterminée par des conditions d'état de machine. 16 Ordinateur caractérisé en ce qu'il comprend: une mémoire-( 68) destinée à enregistrer des mots numériques com- prenant des données et des instructions; des moyens arith- métiques ( 62) destinés à accomolir des fonctions arithméti- ques et logiques, ces moyens arithmétiques comprenant une unité arithmétique principale ( 64) et une unité arithmétique d'exposant ( 66); des moyens de commande ( 72) destinés à gé- nérer des signaux pour l'accomplissement des opérations de l'ordinateur; des moyens d'entrée-sortie ( 70, 74) destinés à commander le transfert de mots numériques vers l'ordinateur et à partir de celui-ci; et une structure de bus ( 60) desti- ne C à interconnecter la mémoire ( 68), les moyens arithmétiques ( 62) et les m Ioyens d'entrée-sortie ( 70, 74); et en ce que l'u- nité arithmétique principale ( 64) comprend des moyens de déca- lage ( 12, 13, 18) destinés à accomplir une opération d'addi- tion en virgule flottante, comprenant des fonctions d'aligne- ment et de normalisation, ces Moyens de décalage n'étant tra- versés qu' une seule foi S par un mot num Arique pour accomplir chacune de ces fonctions; les moyens de décalage comprennent des moyens de décalage d'un seul chiffre ( 12, 16) destinés à décaler d'une position des chiffres contenus dans le mot numé- rique, pendant lesdites opérations; les moyens de décalage comprennent en outre des moyens de décalage de plusieurs chiú- fres( 18) qui sont connectés aux moyens de décalage d'un seul chiffre ( 12, 16) pour décaler de plusieurs positions des chif- fres appartenant au mot numérique, ces moyens de décalage de plusieurs chiffres n'étant pas traversés plus d'une fois par le mot numérique pendant l'opération d'addition en virgule flottante; et l'unité arithmétique principale ( 64) comprend en outre une unité arithmétique et logique ( 14) connectée aux moyens de décalage ( 12, 16, 18) pour accomplir une fonc- tion d'addition, de telle façon que le mot numérique ne soit pas obligé de traverser l'unité arithmétique et logique dans le seul but d'accéder aux moyens de décalage. 17 Ordinateur selon la revendication 16, caractéri- sé en ce que les moyens de décalage ( 12, 16, 18) accomplissent des décalages vers la gauche et vers la droite de chiffres appartenant au mot numérique. 18 Ordinateur, caractérisé en ce qu'il comprend: une mémoire ( 68) destinée à enregistrer des mots numériques comprenant des données et des instructions; des moyens arith- métiques ( 62) destinés à accomplir des fonctions arithméti- ques et logiques, ces moyens arithmétiques comprenant une unité arithmétique principale ( 64) et une unité arithmétique d'exposant ( 66); des moyens de commande ( 72) destinés à générer des signaux pour l'accomplissement d'opérations de l'ordinateur; des moyens d'entréesortie ( 70, 74) destinés à commander le transfert de mots numériques vers l'ordina- tour et à partir de celui-ci; et une structure de bus ( 60) dest*ine à interconnecter la mémoire ( 60), les moyens arith- mnétiques ( 652) et les moyens d'entrée-sortie ( 70, 74); et en ce que l'unité aritlhmétique principale ( 64) comprend des 3 mowens de décalage ( 12, 16, 18) destinés à accomplir une opé- ration d'addition en virgule flottante comprenant des fonc- tions d'alignement et ce normalisation, ces moyens de d 6 cala- ge n'étant traversés qu'une seule fois par un mot numérique pour l'accomplissement de chacune de ces Jonctions; les moyens de décalage comprennent un circuit de décalage à droite d'un seul chiffre ( 12); l'unité arithmétique principale ( 64)com- prend en outre une unité arithmétique et logique ( 14) qui est connectée à la sortie du circuit de décalage à droite ( 12) pour accomplir une fonction d'addition; les moyens de déca- lage comprennent en outre un circuit de décalage à gauche d'un seul chiffre ( 16) qui est connecté à la sortie de l'unité arithmétique et logique ( 14), cette unité arithmétique et lo- gique n'étant traversée par un mot numérique que pour accom- plir une fonction arithmétique et non dans le seul but de per- mettre au mot numérique d'accéder aux moyens de décalage; et les moyens de décalage comprennent en outre un circuit de décalage de plusieurs chiffres ( 18) qui est connecté au cir- cuit de décalage à droite ( 12) et est branché en parallèle sur l'unité arithmétique et logique ( 14), ce circuit de décalage de plusieurs chiffres ( 18) n'étant pas traversé plus d'une fois par le mot numérique pendant l'exécution de l'opération d'addition en virgule flottante. * 19 Ordinateur selon l'une des revendications 16 et 18, caractérisé en ce que les moyens d'entrée-sortie ( 70, 74) comprennent un bus d'entrée-sortie ( 74) destiné à transférer des mots numériques vers l'ordinateur et à partir de celui-ci. Ordinateur selon la revendication 18, caracté- rise en ce que le circuit de décalage à droite d'un seul chif- fre ( 12) comprend des moyens destinés à effectuer un décalage a droite d'un seul chiffre ou a n'effectuer aucun décalage de chiffre. 21 Ordinateur selon la revendication 18, caractérisé en ce que le circuit de décalage à gauche d'tun seul chiffre ( 16) comprend des moyens destinés à effectuer un décalage à gauche d'un seul chiffre ou à n'effectuer aucun décalage de chiffre. 22 Ordinateur selon la revendication 1:8, caractérisé en ce que le circuit de décalage de plusieurs chiffres ( 18) comprend des moyens destinés à décaler des chiffres d'un mot numérique de plusieurs positions vers la gauche et vers la droite. 23 Ordinateur selon la revendication 18, caractérisé en ce que le circuit de décalage de plusieurs chiffres ( 15) accomplit la fonction d'alignement ou la fonction de normali- sation, mais non les deux, pendant l'opération d'addition en virgule flottante. 24 Ordinateur selon l'une des revendications 16 et 18, caractérisé en ce que l'unité arithmétique et logique ( 14) ac- complit la fonction d'addition sur deux mots numériques de figure pendant l'opération d'addition en virgule flottante. Ordinateur selon la revendication 18, caractéri- sé en ce que les moyens arithmétiques ( 64) comprennent en outre des moyens ( 48) destinés à déterminer le signe d'un mot numérique résultant de l'opératicn d'addition en virgule flottante. 26 Ordinateur selon l'u nedes revendicatitns i'i et 18, caractérisé en ce que le circuit de décala de ptusieurs chiffres consiste en un circuit de décalage circulaire ( 18). 27 Ordinateur selon l'une des revendications 16 et 18, caractérisé en ce que les moyens de commande ( 72) com- prennent des noyens de connande par microprojrarmne ( 30) des- tinds à n Cnrerr lesdits signaux. 28 Ordinateur selon l'une des revendications 16 et l 3, caractéris, en ce que les moyens de commande par micro- programme ( 30) vali ent simultan-ment des voies parailcies comprenant le circuit de décalage de plusieurs chiffres ( 1 l 3) et les moyens arithmétiques ( 14), et ces moyens de commande sélectionnent pour l'enregistrement le signal de sortie d'une seule des voies, d'une raanire déterminée par des conditions d'état de machine. 29 Procédé pour accomplir une opération d'addition en virgule flottante, caractérisé en ce qu'on effectue les actions suivantes: on accomplit des fonctions d'alignement et ce normalisation avec des moyens de décalage ( 12, 16, 13), en faisant en sorte qu'un mot numérique ne traverse quttme seule fois les moyens de décalage pour accomplir chacune de ces fonctions; on décale d'une position des chiffres appar- tenant au mot numérique en utilisant des moyens de décalage d'un seul chiffre ( 12, 16), on décale de plusieurs positions des chiffres appartenant au mot numérique en utilisant des moyens de décalage de plusieurs chiffres (I) connectés aux moyens de décalage d'un seul chiffre ( 12, 16), le mot numéri- que ne traversant pas plus d'une fois les moyens de décalage de plusieurs chiffres pendant l'opération d'addition en vir- gule flottante; et on accomplit une fonction d'addition en utilisant des moyens arithmétiques ( 14) connectés aux moyens de décalage, en faisant en sorte que le mot numérique ne soit pas dans l'obligation de traverser les moyens arithmétiques dans le seul but d'accéder aux moyens de décalage. Procédé selon la revendication 29, caractérisé en ce que l'action consistant à accomplir la fonction d'ad- dition consiste dans l'addition de deux mots numériques de figure. 31 Procédé selon la revendication 29, caractérisé en ce que l'action consistant a décaler de plusieurs posi- tions des chiffres appartenant a un mot numérique s'effectue en utilisant un circuit de décalage circulaire ( 18). 32 Proc_édc pour accomplir une operation d'addition en virgule flottante sur deux mots numn 6 riques Je figure, ca- ract 6 risé en ce qu'il comprend les actions suivantes: on ac- complit une fonction d'alignement en faisant passer une seule -ois un mot numérique dans des moyens de décalage ( 12, 16, 18) pour l'accomplissement ce cette fonction, ces Joyens die déca- lage comprenant des moyens de décalage d'un seul chiffre (L 2, 16) et des moyens de décalage de plusieurs chiffres ( 18), le mot numérique ne traversant pas plus d'une fois les moyens de decalage de plusieurs chiffres ( 18) pendant l'opération d'ad- c.ition; on accomplit une fonction d'addition en faisant pas- ser les deux mots numériques de figure dans des moyens arith- raetiques ( 14) connectés aux moyens de décalage d'un seul chif- fre ( 12, 16) et aux moyens de décalage de plusieurs chiffres ( 18), en faisant en sorte que le mot numérique ne soit pas dans l'obligation de traverser les moyens arithmétiques dans le seul but d'accéder aux moyens de décalage; on accomplit une première fonction de normalisation en faisant passer le mot numérique une seule fois dans les moyens de décalage pour accomplir cette fonction, ces moyens de décalage comprenant les moyens de décalage d'un seul chiffre ( 12, 16) et les moyens de décalage de plusieurs chiffres ( 13), le mot numéri- que ne traversant pas plus d'une fois les moyens de décalage de plusieurs chiffres pendant l'opération d'addition; on accomplit une fonction d'arrondi en faisant passer dans les moyens arithmétiques ( 14) le mot numérique qui résulte de la première fonction de normalisation; et on accomplit une se- conde fonction de normalisation en faisant passer le mot nu- mérique résultant de la fonction d'arrondi dans les moyens de décalage, une seule fois pour accomplir cette seconde fonc- tion de normalisation, les moyens de décalage comprenant les moyens de décalage d'un seul chiffre ( 12, 16) et les moyens de décalage de plusieurs chiffres ( 18), le mot numérique ne traversant pas plus d'une fois les moyens de décalage de plu- 3 O sieurs chiffres pendant l'dp'ration d'addition. 33 Proc 2 dê selon l'une des revendications 29 et 32, caractérisé en ce que les actions consistant à décaler des chiffres dans un mot numérique comprennent l'exécution de dé- calanes vers la gauche ut vers la droite. 34 Procédé selon la revendication 32, caractérisé en ce que les actions consistant à décaler les chiffres compor- tent l'utilisation des moyens de décalage de plusieurs chif- fres et ces derniers consistent en un circuit de décalage circulaire ( 18). Procédé selon la revendication 32, caractérisé en ce que les actions nécessitait l'utilisation-de moyens de décalage font intervenir des moyens de décalage d'un seul chiffre ( 12, 16) qui comportent un mode d'absence de décala- ge de chiffre. 36 Procédé selon l'une des revendications 29 et 32 caractérisé en ce qu'il comprend l'action qui consiste à géné- rer des signaux de commande en utilisant des moyens de com- mande par microprogramme ( 30). 37 Procédé selon l'une des revendications 29 et 32, caractérisé en ce que l'action consistant à générer des si- gnaux de commande en utilisant des moyens de commande par mi- croprogramme ( 30) comprend la validation simultanée de voies parallèles comprenant les moyens de décalage de plusieurs chiffres ( 18) dans une voie parallèle et les moyens arithmé- tiques ( 14) dans une autre voie parallèle, et les moyens de commande ( 30) sélectionnent pour l'enregistrement le signal de sortie d'une seule des voies, d'une manière déterminée par des conditions d'état de machine.