DE1549478C - Gleitkomma Rechenwerk zur schnellen Addition oder Subtraktion binarer Operanden - Google Patents

Gleitkomma Rechenwerk zur schnellen Addition oder Subtraktion binarer Operanden

Info

Publication number
DE1549478C
DE1549478C DE1549478C DE 1549478 C DE1549478 C DE 1549478C DE 1549478 C DE1549478 C DE 1549478C
Authority
DE
Germany
Prior art keywords
circuit
arithmetic unit
adder
section
mantissa
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
Other languages
English (en)
Inventor
Don Michael Poughkeepsie; Litwiller. Robert John Wappingert. Falls N.Y.; Goldschmidt Robert Elliott Hyde Park Mass.; öv.St.A.) Powers
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Publication date

Links

Description

Die Erfindung betrifft ein Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binärer Operanden, mit einer Schaltung zur Ausrichtung der Operandenmantissen, mit einer hieran angeschlossenen Schaltung zur Paralleladdition und einer mit dem Ausgang der Additionsschaltung verbundenen Schaltung zur Mantissen-Resultatnormalisierung und zur Exponentenkorrektur sowie mit einer Schaltung zur Weiterleitung der Additions- oder Subtraktionsresultate an nachgeschaltete Einheiten.
Die Leistungsfähigkeit moderner Rechenanlagen hängt in hohem Maße von der Arbeitsgeschwindigkeit ihrer arithmetischen Einheiten ab. Es werden daher erhebliche Anstrengungen unternommen, sowohl die Arbeitsgeschwindigkeit der zur Verwendung in den Rechenwerken vorgesehenen Schaltkreise zu erhöhen, als auch Rechenverfahren und Rechenwerkstrukturen zu entwickeln, mit deren Hilfe die Operationszeiten der Rechenwerke drastisch verkürzt werden können. Ein oft beschrittener Weg besteht hierbei in der Benutzung hochgradig parallelarbeitender Rechenwerke, die zur Ergebnisbildung nur noch verhältnismäßig wenig hintereinandergeschaltete Logikstufen benötigen. Ein Beispiel hierfür sind die Übertragungsvorausschau-Addierwerke, wie sie unter anderem in Proceedings of the IRE, Januar 1961, S. 68 bis 71, beschrieben sind. Bei diesen Addierwerken wird für jede Addierwerksteile bereits bei der Bildung der SummenzifFer berücksichtigt, ob aus einer oder mehreren der niedrigeren Addierwerkstellen Überträge zu erwarten sind. Wird ein derartiges, einen sehr großen Aufwand erforderndes Addierwerk innerhalb eines komplexen Rechenwerkes verwendet, das außer der reinen Addition zweier Operanden noch andere Funktionen zu erfüllen hat, so ergibt sich ein schlechter Ausnutzungsgrad für das Addierwerk. Dies ist beispielsweise bei Gleitkomma-Addier-Subtrahier-Werken der Fall, wo vor und nach der eigentlichen Additionsoperation noch Normalisierungsverschiebungen und Exponentenkorrekturen durchzuführen sind. Ähnliche Verhältnisse liegen vor, wenn das Addierwerk in einem Vierspeziesrechenwerk Verwendung findet, wo es eine Hilfsfunktion bei der Ausführung von Multiplikationen und Divisionen erfüllt. Trotz der Möglichkeit der sehr schnellen Ausführung von Additionen ist die Operationsdauer derartiger Rechenwerke noch immer mindestens doppelt so lang, wie die Zeit, die für eine Befehls- und Op'erandenentnahme aus einem modernen Speicher mit schnellem Zugriff benötigt wird. Die Rechenwerke verursachen aus diesem Grunde Wartezeiten, die die Arbeitsgeschwindigkeit und damit auch die Leistungsfähigkeit der Maschinen herabsetzen.
Weiterhin sind Rechenanlagen bekannt, die zwei selbständige Rechenwerke verwenden, welche gemeinsam und gleichzeitig an der Lösung eines Problems arbeiten können, um eine bessere Speicherblems arbeiten können, um eine bessere Speicherausnutzung zu erzielen (Proceedings of the Eastern Joint Computer Conference, 1959, S. 59 bis 65). Diese Anlagen erfordern aber einen komplizierten Steiierteil, da die zu verarbeitenden Daten wahlweise zu zwei örtlich getrennten Verarbeitungsplätzen zu leiten sind, an denen möglichst keine Wartezeiten auftreten sollen. Für jedes dieser Rechenwerke gelten hinsichtlich der Ausnutzung seiner Funktionseinheiten die oben erläuterten Verhältnisse.
Aufgabe vorliegender Erfindung ist es, ein Rechenwerk anzugeben, das unter Vermeidung der erläuterten Nachteile bei nur verhältnismäßig geringem Mehraufwand durch eine neue Art der Parallelverarbeitung eine wesentlich höhere Leistungsfähigkeit als. gleichartige bekannte Rechenwerke besitzt. Gemäß der Erfindung wird dies dadurch erreicht, daß die Schaltungen des Rechenwerkes durch binäre Verriegelungsschaltungen voneinander1 getrennt sind, die zur vorübergehenden Aufnahme der (Zwischen-)Resultate der jeweiligen Schaltung und zur Weitergabe dieser Resultäte an die in Datenflußrichtung folgende Schaltungdienen, daß die Schaltungen selbständige Rechenwerksabschnitte bilden, die unabhängig voneinander BinärzifFern unterschiedlicher Operandenpaare verarbeiten, und daß eine Steuerschaltung vorgesehen ist, die eine synchrone Resultatsübertragung zwischen den Schaltungen steuert und mit jedem Übertragungstakt, noch bevor das Resultat.der Verknüpfung eines Operandenpaares am Rechenwerksausgang vorliegt, ein neues Operandenpaar der Schaltung zur Ausrichtung der Operandenmantissen zuführt.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind aus den Ansprüchen ersichtlich. Nachfolgend ist ein Ausfiihrungsbeispiel an Hand von Zeichnungen beschrieben. Es zeigt
F Γ g. 1 ein Blockschaltbild eines Gleitkomma-Addier- und -Subtrahierwerkes, welches gemäß der . Erfindung ausgebildet ist,
F i g. 2 ein Blockschaltbild der Operationssteuerung des Rechenwerkes nach F i g. 1,.
Fig. 3 einen Taktgeber, wie er im Rechenwerk nach F i g. 1 verwendet wird, und
F ί g. 4 ein Impulsdiagramm zur Darstellung der
vom Taktgeber nach Fi g. 2 erzeugten Impulsfolge.
F i g. 1 zeigt ein Gleitkomma-Addier- und -Subtrahierwerk, das in zweifacher Hinsicht parallel arbeitet. Einerseits werden dem Addierwerk jeweils ein Paar mehrstellige binäre Operanden parallel zugeführt, und andererseits wird bereits vor dem Auftreten der Summe dieses Operandenpaares am Addierwerksausgang ein neues Operandenpaar dem Eingang des Addier- und Subtrahierwerkes zugeführt. Um eine derartige in Datenflußrichtung überlappte Arbeitsweise zu ermöglichen, weist das Addier- und Subträhierwerk zwei grundlegende Merkmale auf:
1. Keine der Funktionseinheiten des Rechenwerkes wird innerhalb einer Addition oder Subtraktion zweier Operanden mehr als einmal verwendet, und
2. der Datenfluß im Addierwerk ist in Abschnitte unterteilt, die durch binäre Verriegelungsstufen
voneinander entkoppelt sind.
Dieses Konzept gestattet eine maximale Ausnutzung jeder Funktionseinheit des Rechenwerkes. Sobald eine? Funktionseinheit die Teilverknüpfung zweier Operanden beendet hat, erhält sie an ihrem Eingang bereits das neue Operandenpaar zugeführt, trotzdem die vom Rechenwerk vorzunehmende Verknüpfung der beiden Operanden noch gar nicht vollendet ist. Da das Rechenwerk in der Zeit, die es zur vollständigen Verarbeitung eines Operandenpaares benötigt, so viele Operandenpaare empfängt und zu verarbeiten beginnt, wie es zwischengeschaltete binäre Verriegelungsstufen aufweist, wird der gleiche Effekt erzielt, als wenn mehrere Rechenwerke parallel angeordnet werden, denen Operanden gleichzeitig oder kurz hintereinander zuführbar sind. Die durchschnittliche Operationszeit zur Verarbeitung eines Operandenpaares beträgt daher nur einen Bruchteil der tatsächlichen Durchlaufzeit
dieses Operandenpaares durch das Rechenwerk. Es ist Art sind für sich bekannt, so daß auf eine detaillierte
so möglich, die auf arithmetische Operation bezogenen Erläuterung ihres schaltungstechnischen Aufbaues ver-
Programmbefehle der Rechenanlage, in der das vor- ziehtet werden kann. '. ' ;:■;;<:?;
geschlagene Rechenwerk verwendet wird, in einer Als Addierwerk 27 kann ein für sich bekanntes
kürzeren zeitlichen Folge aufzurufen, als es bei Ver- 5 binäres Übertragungsvorausschau-Paralleladdierwerk
Wendung eines in herkömmlicher Weise aufgebauten verwendet werden. Die Ausgangsleitungen des Addier-.
Rechenwerkes zulässig wäre. Werkes sind über eine Komplementierschaltung 31,.die
Das in Fig. 1 dargestellte Gleitkomma-Addier- durch Signale auf der Leitung 28 wahlweise zur Wir-„ und -Subtrahierwerk besitzt drei Sätze Eingangs- kling bringbar ist, mit einer binären'Verriegelungsregister H1, H2, U3 ■■■ 14j, 142, 143 zur Aufnahme io stufe 32 Verbunden. Die Verriegelungsstufe 32 enthält dreier Operandenpaare A1, B1; B2 und A3, B3. Die für jede Resultatleitung des Addierwerkes eine binäre Register eier einzelnen Sätze unterscheiden sich durch Verriegelungs- oder Selbsthalteschaltung, die z. B. als den Index des in ihnen gespeicherten Operanden- Flip-Flop ausgebildet sein kann. Die Aufgäbe dieser paares. Jedes der Register ist mit einer eingangs- Verriegelungsschaltungen besteht darin, die vom Adseitigen und einer ausgangsseitigen Torschaltung 15, 16 15 dierwerk gelieferten echten oder in der Schaltung 31 versehen. Die Register sind zur parallelen Aufnahme komplementierten Resultatziffern kurzzeitig zwischen- und Abgabe mehrstelliger binärer Operanden ein- zuspeichern. Die Verriegelungsstufe 32 ist über eine gerichtet. Dementsprechend besteht jede der Tor- Torschaltung mit einer Stellenverschiebeschaltung 34 schaltungen 15, 16 aus einer Anzahl Einzeltoren. Die verbunden, die ähnlich der Stellenverschiebeschaltung Operanden A1, B1 ... können beispielsweise aus je 20 29 aufgebaut ist, im-Gegensatz zu dieser jedoch Links-64 Bitstellen bestehen. Zur Operandenzuführung dienen verschiebungen wählbarer Stellenzahl ausführt. Es Sammelleitungen 17, 18. Auf der Sammelleitung 17 kann mit dieser Schaltung eine maximale Linksvertreten die /1-Operanden und auf der Sammelleitung 18 Schiebung von insgesamt 14 Binärstellen erzielt werden, die ß-Operanden auf. An Stelle der beiden Sammel- An diese Stellenverschiebeschaltung 34 ist eine weitere leitungen 17, 18 kann jedoch auch eine gemeinsame 25 Verriegelungsstufe 36 angeschlossen, die über eine Sammelleitung für beide Operanden verwendet werden, Torschaltung 37 mit einer Ausgangssammelleitung 38 wenn dies die Organisation der Rechenanlage erfordert. gekoppelt ist. .
Jeder der Operanden besteht entsprechend der be- Der vorausgehend beschriebene Teil der Schaltung kannten Gleitkomma-Rechenweise aus zwei Teilen, von F i g. 1 betrifft die Mantissenverarbeitung. Im den Exponenten und der Mantisse, wozu außerdem 30 folgenden wird auf den Exponententeil des darnoch das Vorzeichen kommt. Zur Aufnahme der Ex- gestellten Addier- und Subtrahierwerkes eingegangen, ponenten dienen die Register H1 bis H3 (für Λ-Ope- Die zur Aufnahme der Exponenten der Λ-Operanden randen) und O1 bis 133 (für 5-Operanden). Dement- dienenden Register H1, H2 und H3 sind durch eine sprechend werden die Mantissen der. Λ-Operanden in Sammelleitung 47 mit dem einen Eingang eines Addierden Registern 12j bis 123 und die Mantissen der 35 Werkes 46 verbunden, und die Ausgänge der zur Aufß-Operanden in den Registern M1 bis 143 gespeichert. nähme der Α-Operanden dienenden Register O1, O2 An den Mantissenregistern 12 und 14 sind auf je einer und O3 sind mit dem anderen Eingang dieses Addierbesonderen Speicherstelle auch die Vorzeichen der Werkes verbunden. Diesem letzteren Addierwerks-Operanden gespeichert, eingang ist eine Komplementierschaltung 49 zugeord-
Die Ausgänge der Mantissenregister 12 und 14 sind 4° net, welche die über die Sammelleitung 48 parallel über Sammelleitungen 20, 21 mit einer Zuweisungs- zugeführten Exponenten (jeder Exponent besteht beitorschaltung 22 verbunden, die aus einem Satz Tor- spielsweise aus sieben Binärstellen) der 5-Operanden schaltungen besteht, welche die Adern der Sammel- stets komplementiert. Das Addierwerk 46 bildet daher leitungen 20, 21 in Abhängigkeit von einem Signal auf durch die Subtraktion Exponent A minus Exponent B . einer Steuerleitung 23 entweder direkt oder kreuzweise 45 die Differenz der beiden Exponenten. Um eine unvertauscht mit den Adern zweier Sammelleitungen 24, komplizierte Rückkomplenientierung negativer Re-25 verbinden. Die Sammelleitung 24 führt zu einer sultatwerte zu ermöglichen, wird als Addierwerk 46 Komplementierschaltung 26, die den auf der Leitung24 zweckmäßigerweise ein bekanntes Addierwerk' mit erscheinenden Mantissenwert in echter oder komple- einer Übertragsrückführung von der höchsten zur mentierter Form zum Eingang eines Addierwerkes 27 5° niedrigsten Stelle verwendet. Das Addierwerk kann weiterleitet. Die Komplementierschaltung wird durch z. B. ein Überträgsvorausschau - Paralleladdierwerk ein Signal auf einer Leitung 28 gesteuert Der zweite sein. . ' ' ■ - '
Eingang des Addierwerkes 27 wird durch den Ausgang An den Ausgang des Addierwerkes 46 ist ein Deeiher Stellenverschiebeschaltung 29 gebildet, die an die codierer 50 angeschlossen; Außerdem besitzt das Ad-Ausgangssammelleitung 25 der Zuweisungstprschal- ,-55 dierwerk einen Ubertragsaüsgahg, an de'ii die bbentung22 angeschlossen ist. Die Stellenverschiebeschal- erwähnte Steuerleitung 23 der Zuweisungstorschaltung tung29 ist ein Netzwerk von-Schaltverbindungen, 22 angeschlossen ist. Wenn Exponent A S Exponent B durch das die den Öperandenstellen entsprechenden , ist, erscheint auf der Leitung 23 ein Übertragssignal, Adern der Sammelleitung 25 direkt oder um eine wähl- das die Zuweisungstorschaltung 22 so steuert, daß die bare Anzahl Stellen nach rechts verschoben mit den 60 5-Mantisse zur Stellenverschiebeschaltung 29 und die Eingangsleitungen des Addierwerkes verbunden sind. ^-Mantisse zur Komplementierschaltung 26 geleitet Das Maß der Stellenverschiebung wird durch eine werden. Zugleich bildet der Decodierer 50 aus dem Signalkombination auf einer Steuerleitung 30 bestimmt. SiimmenausgangdesAddierwerkes46eineSteuersignal-Die maximal mögliche Anzahl Stellenverschiebungen kombination, die über die Leitung 30 der Stellenkann beispielsweise 56 Bitstellen betragen, wobei die 65 Verschiebeschaltung 29 zugeführt wird. Die ß-Mantisse erwähnte Signalkombination auf der Steuerleitung 30 wird somit in der Stellenverschiebeschaltung 29 um jede beliebige Stellenzahl innerhalb dieses Bereiches eine Anzahl Stellen nach rechts verschoben, die dem bezeichnen kann. Stellenverschiebeschaltungen dieser am Ausgang des Addierwerkes 46 erscheinenden Ex-
ponenten-Diflerenzwert entspricht. Hierdurch wird sichergestellt, daß im Addierwerk 27 stets Mantissenstellen gleicher Stellenordnung addiert werden.
Wenn andererseits Exponent B > Exponent A ist, dann erscheint kein Übertragssignal auf der Leitung 23. Dieser Signalzustand der Leitung 23 bewirkt in der Zuweisungstorschaltung, daß an Stelle der 5-Mantisse die Λ-Mantisse; zur Stellenverschiebeschaltung 29 übertragen wird, während die B-Mantisse zur Komplementierschaltung 26 gelangt. In diesem Falle ist das Komplement des Summenausganges des Addierwerkes 46 der Wert, um den die Mantisse des Λ-Operanden nach rechts verschoben wird. In beiden Fällen gelangt somit jeweils die Mantisse des kleineren Operanden zur Stellenverschiebeschaltung 29 und die Mantisse des größeren Operanden zur Komplementierschaltung 26.
Die Ausgangssammelleitungen 47, 48 der Exponentenregister 11, 13 sind außerdem mit Torschaltungen 51, 52 verbunden, die in Abhängigkeit Von einem Übertragssignal auf Leitung 23 gesteuert werden. Wenn bei Exponent A 2: Bein Übertragssignal auf Leitung23 erscheint, wird die Torschaltung 51 zur Übertragung des Exponenten A zu einer Verriegelungsstufe 54 geöffnet. Wenn andererseits bei Exponent A <B kein Übertragssignal auf Leitung 23 erscheint, wird über die Inverterschaltung 53 die Torschaltung 52 geöffnet, die den Exponenten B zur Verriegelungsstufe 54 überträgt. In beiden Fällen wird so der Exponent des größeren Wertes zur Verriegelungsstufe 54 geleitet. Diese ist in der gleichen Weise ausgebildet, wie vorausgehend für die Verriegelungsstufe 32 erläutert wurde. Ihrem Ausgang ist eine Torschaltung 55 zugeordnet, die mit einem Eingang eines Addierwerkes 56 verbunden ist.
Das Addierwerk 56 dient zur Exponentenkorrektur, entsprechend der durchzuführenden Resultatnormalisierung der Mantissensumme bzw. -differenz. Es ist vorzugsweise als Überlragsvorausschau-Paralleladdierer ausgebildet. Sein zweiter Eingang ist einerseits über eine nichtsteuerbare Komplementierschaltung 57 mit einem Null-Detektor 58 und andererseits direkt mit einem Decodierer 59 verbunden, der seinerseits vom Null-Detektor 58 gesteuert wird. Der Null-Detektor 58 tastet das in der Verriegelungssiufe 32 befindliche Resultat der Mantissenaddition bzw. -subtraktion auf das Vorliegen von hochstelligen Nullen ab. Der Null-Detektor ist eine Decodierschaltung, der eingangsseitig alle Ziffern des Resultates der Mantissenaddition bzw. -substraktion zugeführt werden und die hieraus eine Ausgangssignalkombination liefert, die die Anzahl der hochstelligen Nullen ausdrückt. Dieser Wert ist das Maß für die vorzunehmende Resultatnormalisierung. Aus ihm wird im Decodierer 59 eine Steuergröße gebildet, die über eine Leitung 60 zur Stellenverschiebeschaltung 34 geleitet wird, welche daraufhin während der Übertragung des Mantissenresultates von der Verriegelungsstufe 32 zu der Verriegelungsstufe 36 die Resultatstellen um eine entsprechende Anzahl Stellen nach links verschiebt, so daß die höchste von Null verschiedene Ziffer innerhalb'der Verriegelungsstufe 36 in der Verriegelungsschaltung mit dem höchsten Stellenwert eingespeichert wird.
. Der dem Decodierer 59 zugeführte Steuerwert gelangt außerdem über eine Leitung 61 zur Komplementicrschaltung 57 am Eingang des Addierwerkes 56. Da gleichzeitig dem anderen Eingang des Addierwerkes 56 der Inhalt der Verriegelungsstufe 54 zugeführt wird, bildet das Addierwerk die Differenz zwischen dem größeren der beiden Exponenten A, B und der Zahl der normalisierten Stellen des Mantissenresultates. Das so erhaltene Resultat ist der Exponent das Endresultates der durchgeführten Rechenoperation. Dieses Resultat gelangt zu einer Verriegelungsstufe 62, deren Ausgang über eine Torschaltung 63 mit der Resultatleitung 38 gekoppelt ist.
Die vorausgehend beschriebene Art der Resultatnormalisierung wird nur bei Subtraktionen wirksam, wo das Resultat mehrere Stellen kleiner sein kann als
ίο einer der beiden Operanden. Bei Additionen ist dagegen lediglich eine Resultatnormalisierung um eine einzige Stelle notwendig, sofern das Mantissenresultat einen Überlauf aufweist. Die entsprechende Resultatnormalisierung muß allerdings in umgekehrter Richtung, also nach rechts, erfolgen. Stellenverschiebeschaltungen, die eine Verschiebung in beiden Richtungen vorsehen, erfordern einen relativ hohen Aufwand. Um diesen Aufwand zu vermeiden, werden im dargestellten Beispiel Maßnahmen angegeben, durch die eine Stellenverschiebeschaltung verwendbar ist, die nur eine Verschiebung in eine Richtung gestattet. Dies geschieht in der Weise, daß ein Übertrag in der höchsten Stelle des Addierwerkes £7 als Überlaufanzeige verwendet wird. Ein solcher Übertrag wird
*5 durch ein Signal auf einer Leitung 65 angezeigt. Dieses Signal gelangt zu einer einstelligen Verriegelungsstufe 66, deren Ausgang über eine Torschaltung 67 mit dem Decodierer 59 verbunden ist. Wenn der Decodierer 59 eine Überlaufanzeige von der Und-Schaltung 67 zusammen mit einer Additionsanzeige auf der Leitung 28 empfängt, liefert er ein Ausgangssignal auf der zum Addierwerk 56 führenden Leitung 64. Diese Leitung ist mit der niedrigsten Stelle des Addierwerkes 56 verbunden. Ein auf ihr erscheinendes Signal stellt den Binärwert Eins dar. Dieser Wert wird im Addierwerk 56 zu dem in der Verriegelungsstufe 54 gespeicherten Exponenten A oder B addiert. Die dieser Korrektur entsprechende Mantissennormalisierung um eine Stelle nach rechts wird in einfacher Weise dadurch erzielt, daß im Ruhezustand der Stellenverschiebeschaltung 34 die Adern der die Torschaltung 33 und die Stellenverschiebeschaltung 34 verbindende Sammelleitung und die Adern der die Stellenverschiebeschaltung 34 und die Verriegelüngsstufe 36 verbindenden Sammelleitung um eine Stelle nach rechts versetzt miteinander verbunden sind. Um diese Versetzung bei nach links gerichteten Normalisierungsverschiebungen (Subtraktion) auszugleichen, liefert der Decodierer 59 jeweils ein Steuersignal auf der Leitung 60, das in der Stellenverschiebeschaltung 34 gegenüber der normalerweise notwendigen Anzahl Stellenverschiebungen eine um Eins erhöhte Anzahl Stellenverschiebungen bewirkt. Im Falle der Addition tritt somit auf der Leitung 60 kein Steuersignal auf, so daß die Stellenverschiebeschaltung 34 im Ruhezustand bleibt.
Zur Steuerung der durchzuführenden Operationen (Addition oder Subtraktion) dient eine logische Schaltung 70 (F i g. 2), die aus den Vorzeichen der Operanden eines Operandenpaares und dem diesem Operandenpaar zugeordneten Programmbefehl die effektiv durchzuführende Operation bestimmt. Die Schaltung 70 ist an die Vorzeichenadern der Ausgangssammelleitungen 20, 21 der Mantissenregister 12, 14 angeschlossen. Ein weiterer Eingang 69 der Schaltung 70 ist über je eine Verriegelungsstufe 74, 75, 76 mit zugeordneten Torschaltungen 77, 78, 79 mit Befehlsdecodierern 71, 72, 73 verbunden. Jeder dieser Decodierer ist einem der Eingangsregistersätze, z/B. H1, Yl1, 13,
und 14X des Rechenwerkes von F i g. 1 zugeordnet. Mit der Eingabe eines Operandenpaares in einen Eingangsregistersatz wird auch der Operationssteuerteil des auf die Verknüpfung dieses Operandenpaares bezogenen Befehles über eine Sammelleitung 68 in den zugeordneten Decodierern 71 bis 73 eingegeben. Dieser Decodierer entschlüsselt die auzuführende Operation (Addition oder Subtraktion) und stellt ein entsprechendes , Steuersignal in der betreffenden. Verriegelungsstufe 74 bis 76 ein. Dieses Operationssteuersignal wird über die entsprechende Torschaltung 77, 78, 79 zur logischen Schaltung 70 übertragen. Aus dem Operationssteuersignal und den Vorzeichen der beiden Operanden erzeugt die Schaltung 70 durch eine exklusive Oder-Verknüpfung ein effektives Operationssteuersignal gemäß dem in der nachstehenden Tabelle angegebenen Schema.
Befehl SUB Ά+ Operand B+ B- Effektive
Operation
SUB
ADD X Α X ADD
X χ X X X X
X X
X X χ X X
X χ
X χ χ X χ
X X χ X χ
X X χ X
X
30
Das effektive Operationssteuersignal erscheint auf der Leitung 28, die in der beschriebenen Weise mit den Komplementierschaltungen 26 und 31 (F i g. 1) verbunden ist. Das Fehlen eines Signals auf dieser Leitung bedeutet, daß die Anordnung nach F i g. 1 eine Addition ausführt. Erscheint dagegen ein Signal auf Leitung 28, so bedeutet dies die Ausführung einer Subtraktion. Wie aus der Tabelle zu entnehmen ist, tritt ein derartiges Subtraktionssteuersignal jeweils dann auf, wenn eine oder alle drei der Eingangsleitungen der Schaltung 70 ein negatives Vorzeichen bzw. ein Subtraktionssteuersignal, anzeigen. Andernfalls handelt es sich stets um eine Addition.
Das Signal auf Leitung 28 macht die Komplementierungsschaltung 26 wirksam, so daß der über diese Schaltung dem Addierwerk 27 zugeführte Operand komplementiert wird. Außerdem bereitet das Signal auf Leitung 28 die Komplementierungsschaltung 31 vor, jeweils dann wirksam zu werden, wenn auf der Leitung 65 kein Übertragssignal von der höchsten Stufe des Addierwerkes 27 erscheint. Hierdurch wird meiner für sich bekannten Weise eine Komplementierung des Mantissenresultats nur dann vorgenommen, wenn dieses Resultat im Verlauf der Rechnung negativ geworden ist. Um eine nachträgliche Korrektur des Resultats durch Addition einer Eins zur niedrigsten Resultatstelle zu vermeiden, ist das Addierwerk 27 mit einer Übertragsrückführung von der höchsten zur niedrigsten Rechenwerkstelle versehen, wie vorausgehend schon in Verbindung mit dem Addierwerk 46 erläutert wurde. ·
Das Subtraktionssteuersignal auf Leitung 28 verhindert des weiteren im Decodierer 59 die Erzeugung eines Signals auf Leitung 64, so daß auch dann, wenn vom Null-Detektor 58 während einer Subtraktion festgestellt wird, daß keine Resultatnormalisierung notwendig ist, der Resultatexponent unverändert bleibt. In einem solchen Falle liefert aber der Decodierer 59 aus den vorausgehend erläuterten Gründen ein Signal auf der Sammel-Steuerleitung 60, welches die Stellenverschiebeschaltung entsprechend der Ausführung einer Stellenverschiebung um eine Stelle nach links konditioniert. ■■...■
In F i g. 3 ist ein Taktgeber 80 schematisch dargestellt. Dieser Taktgeber liefert auf fünf Ausgangsleitungen zyklisch Taktsignale fl, dl, fill, ti, t2 gemäß dem in F i g. 4 dargestellten Impulsprogramm. Die Impulse ti, tII, fill dienen zur Steuerung der Torschaltungen 15, 16 der Register 11, 12, 13 und 14 (F i g. 1) sowie der Torschaltungen 77, 78 und 79 in Fig. 2. Durch jeden dieser Impulse wird ein neues Operandenpaar der in F i g. 1 dargestellten Addier- und Subtrahiereihrichtung zugeführt. Außerdem wird das diesem Operandenpaar zugeordnete Operationssteuersignal von der betreffenden Verriegelungsstufe 74, 75 oder 76 zur logischen Schaltung 70 übertragen. Jedem der Taktimpulse fl, /II und fill ist ein Paar zusätzlicher Taktimpulse fl, f2 zugeordnet. Diese Impulse stellen Taktsignale für die Übertragung der Daten von einem Addierwerksabschnitt zu dem in DatenflußrichtungfolgendenAddierwerksabschnittdar. Wie aus F i g. 1 ersichtlich ist, wird die Reihe der Verknüpfungs- bzw. Umformungsschaltungen, aus denen das dargestellte Addier- und Subtrahierwerk besteht, in drei Abschnitte unterteilt. Die Abschnitte 1 und 2 werden durch die Verriegelungsstufen 32, 54 und 66 von einander getrennt, und die Abschnitte 2 und 3 werden durch Verriegelungsschaltungen 36 und 32 voneinander getrennt. Durch den Taktimpuls ί 1 werden jeweils die in den Verriegelungsstufen 32, 54 und 66 eingestellten Ausgangsdaten des ersten Abschnittes über die Torschaltungen 33, 55 und 67 zum zweiten Abschnitt weitergeleitet. Der erste Abschnitt ist damit frei zur Verarbeitung des nächsten Operandenpaares, das bereits mit dem letzten vorausgegangenen Taktimpuls f I, fll oder fill dem Eingang des Abschnittes 1 zugeleitet worden ist. Unmittelbar nach einem fl-Impuls tritt ein Taktimpuls f2 auf, der in äquivalenter Weise die Ausgangsdaten des zweiten Abschnittes in den dritten Abschnitt überträgt. Im dargestellten Beispiel bedeutet dies, daß das Resultat einer Addition oder Subtraktion aus den Verriegelungsstufen 36 und 62 über die Torschaltun gen 37 und 63 und die Ausgangssammelleitung 38 zu nicht dargestellten, nachgeschalteten Einheiten übertragen wird. Damit ist der zweite Abschnitt frei zur Aufnahme von Daten einer neuen Operation aus dem Abschnitt 1.
Es ist hieraus ersichtlich, daß mit jedem der Taktimpulse fI, fII, fill eine neue Additions- bzw. Subr traktionsoperation beginnt. Der Abstand zwischen zwei dieser Taktimpulse entspricht etwa der Durchlaufdauer der Daten durch einen Abschnitt. Diese Durchlauf dauer wird im wesentlichen durch die Durchlauf dauer des Mantissenaddierwerkes 27 bestimmt. Das Resultat der ersten Additions- oder Subtraktionsoperation im Beispiel von F i g. 4 ist somit kurz nach dem eingezeichneten flll-lmpuls verfügbar,' exakt bei Beginn des auf den f IIl-Impuls folgenden f2-Impulses. Es ist in diesem Zusammenhang zu bemerken, daß der Datenfluß innerhalb der einzelnen Abschnitte völlig asynchron verläuft. Lediglich die Datenübertragungen zwischen den Abschnitten erfolgen unter synchroner Steuerung. .
Die zeitliche Zuführung der Operandenpaare zu den
Registern 11 bis 14 und die Auswertung der jeweils um zwei Zuführtakte verzögert am Reche.iwerksausgang erscheinenden Resultate wird durch nicht dargestellte Schaltungen des Operations- und Adressensteuerteiles der programmgesteuerten Rechenanlage, in der die Anordnung gemäß F i g. 1 Verwendung findet, ausgeführt.
Bei modernen, hochgradig parallelarbeitenden Maschinen, die in der Lage sind, mehrere Befehle zeitlich überlappt dem Programmspeicher zu entnehmen und auszuführen, bereitet eine derartige Steuerung keine Schwierigkeiten. Zur Aufnahme der Operanden in die Register 11 bis 14 können die Taktimpulse /I bis /III verwendet werden. Die Eingabe in einen Registersatz kann dabei jeweils zu der Zeit eines Umlaufes des Taktgebers 80 erfolgen, in der keine Entnahme aus , diesem Registersatz stattfindet, z. B. zur Zeit ill oder /III für die Register H1, H1, O1 und 14j. Die geringfügige zeitliche Überlappung zwischen der Zuführung eines neuen Operandenpaares zum Abschnitt 1 und der Weiterleitung des vorausgehend in diesem Abschnitt gebildeten Zwischenergebnisses zum Abschnitt 2 kann in Kauf genommen werden, da keines der neuen Zwischenergebnisse unmittelbar nach Eingabe des neuen Operandenpaares am Eingang der be- as treffenden Verriegelungsstufen 32, 54 und 66 erscheint. Das gleiche trifft zu für die Überlappung zwischen der öffnung der Torschaltungen 33, 55 und 67 durch einen /1-Impuls und der Übertragung des Endresultates auf die Ausgangssammelleitung 38 unter der Wirkung des folgenden Taktimpulses /2.

Claims (14)

Patentansprüche:
1. Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binärer Operanden, mit einer Schaltung zur Ausrichtung der Operandenmantissen, mit einer hieran angeschlossenen Schaltung zur Paralleladdition und einer mit dem Ausgang der Additionsschaltung verbundenen Schaltung zur Mantissen-Resultatnormalisierung und zur Exponentenkorrektur sowie mit einer Schaltung zur Weiterleitung der Additions- oder Subtraktionsresultate an nachgeschalteten Einheiten, dadurch gekennzeichnet, daß die Schaltungen des Rechenwerkes durch binäre Verriegelungsschaltungen (32, 36, 54, 62, 66) voneinander getrennt sind, die zur vorübergehenden Aufnahme der (Zwischen-)Resultate der jeweiligen Schaltung und zur Weitergabe dieser Resultate an die in Dätenflußrichtung folgende Schaltung dienen, daß die Schaltungen (22, 29, 27, 46; 34, 56, 59; 37, 63) selbständige Rechenwerksabschnitte bilden, die unabhängig voneinander Binärziffern unterschiedlicher Operandenpaare verarbeiten, und daß eine Steuerschaltung (80) vorgesehen ist, die eine synchrone Resultatübertragung zwischen den" Schaltungen steuert und mit jedem Übertragungstakt, noch bevor das Resultat der Verknüpfung eines Operandenpaares am · Rechenwerksausgang vorliegt, ein neues Operandenpaar der Schaltung (22, 29, 46) zur Ausrichtung der Operandenmantissen zuführt.
2. Gleitkomma-Rechenwerk nach Anspruch 1, dadurch gekennzeichnet, daß dem Rechenwerkseingang zusätzliche Verriegelungsstufen (11 bis 14) zugeordnet sind, über die der erste Abschnitt Operanden zugeführt erhält.
3. Gleitkomma-Rechenwerk nach Anspruch 1
und 2, dadurch gekennzeichnet, daß mehrere, der Anzahl der Abschnitte entsprechende Sätze Operandenregister (H1 bis 14jL, H2 bis 142 und H3 bis 143) vorgesehen sind, von denen am Beginn einer Abschnittszykluszeit jeweils einer mit den Eingängen des ersten Abschnittes über Torschaltungen (16) verbunden wird.
4. Gleitkomma-Rechenwerk nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß ein erster Abschnitt Schaltungen (29. 46, 50) zur Ausrichtung der Operandenmantissen und ein hieran angeschlossenes Parallel-Addierwerk (27) umfaßt, daß ein zweiter Abschnitt eine Schaltung (34, 56, 58, 59) zur Mantissen-Resultatnormalisierung und Exponentenkorrektur umfaßt und daß ein dritter Abschnitt durch den Anschluß des Rechenwerksausganges (38) an nachgeschaltete Einheiten gebildet wird.
5. Gleitkomma-Rechenwerk nach Anspruch 4, dadurch gekennzeichnet, daß im ersten Abschnitt dem Mantissenaddierwerk (27) eine Stellenverschiebeschaltung (29) vorgeschaltet ist, die durch die Resultate eines Exponenten-Subtrahierwerkes (46) gesteuert wird.
6. Gleitkomma-Rechenwerk nach den Ansprüchen 4 und 5, dadurch gekennzeichnet, daß im zweiten Abschnitt eine Stellenverschiebeschaltung (34) zur Mantissen-Resultatnormalisierung und eine Nullstellenabtastschaltung (58) enthalten ist, die entsprechend der Größe der vorzunehmenden Normalisierungsverschiebung die Stellenverschiebeschaltung (34) steuert, und daß der zweite Abschnitt ferner ein Exponentenkorrektur-Addierwerk (56) umfaßt, in dem der beibehaltene Operandenexponent um eine aus dem Resultat der Nullstellenabtastung oder einer Überlauf bedingung abgeleitete Korrekturgröße aufaddiert wird.
7. Gleitkomma-Rechenwerk nach den Ansprüchen 4 bis 6, dadurch gekennzeichnet, daß erste Verriegelungsstufen (11 bis 14) mit den Eingängen der Stellenverschiebeschaltung (29) und des Exponenten-Subtrahierwerkes (46) koppelbar sind und daß zweite Verriegelungsstufen (32, 66) an den Ausgang des Mantissen-Paralleladdierwerkes (27) und dritte Verriegelungsstufen' (36, 62) an den Ausgang der Stellenverschiebeschaltung (34) zur Mantissen-Resultatnormalisierung und an den Ausgang des Exponentenkorrektur-Addierwerkes (56) angeschlossen sind.
8. Gleitkomma-Rechenwerk nach den Ansprüchen 4 bis 7, dadurch gekennzeichnet, daß der Eingang des ersten Abschnittes über eine Zuweisungstorschaltung (22) zum Mantissen-Addierwerk (27) geführt ist, die in Abhängigkeit von einem positiven oder negativen Ergebnis des Exponenten-Subtrahierwerkes (46) die Operanden direkt oder gegeneinander vertauscht zum Mantissen-Addierwerk überträgt.
9. Gleitkomma-Rechenwerk nach den Ansprüchen 5 und 8, dadurch gekennzeichnet, daß die Stellenverschiebeschaltung (29) lediglich zur Linksverschiebung eingerichtet ist und jeweils den Mantissenwert des kleineren Operanden von der Zuweisungstorschaltung (22) zugeführt erhält.
10. Gleitkomma-Rechenwerk nach den Ansprüchen 1 bis 9, dadurch gekennzeichnet, daß dem ersten Abschnitt eine Operationssteuerschaltung (70) zugeordnet ist, die aus den Vorzeichen
der Operanden des dem ersten Abschnitt zugeführten Operandenpaares und aus dem auf dieses Paar bezogenen Operationssteuerbefehl die effektiv auszuführende Operation bestimmt.
11. Gleitkomma-Rechenwerk nach den An-Sprüchen 4 und 10, dadurch gekennzeichnet, daß zur Ausführung von Subtraktionen einem Eingang des Mantissen-Addierwerkes (27) und seinem Resultatausgang je eine Komplementierschaltung (26 und 31) zugeordnet ist, die von der Operations- ίο steuerschaltung (70) gesteuert werden, und daß die Resultat-Komplementierschaltung (31) nur bei Fehlen einer Überlauf anzeige von der höchsten Addierwerkstelle zur Wirkung kommt.
12. Gleitkomma-Rechenwerk nach Anspruch 6, dadurch gekennzeichnet, daß die Stellenverschiebeschaltung (34) zur Mantissen-Resultatnormalisierung im Ruhezustand eine Stellenverschiebung um eine Stelle nach rechts ausführt und im übrigen nur zur Verschiebung um eine wählbare Anzahl Stellen nach links steuerbar ist, daß das Resultat von der Nullstellenabtastschaltung (58) in einem Decodierer (59) um Eins erhöht wird, bevor es der
Stellenverschiebeschaltung als Steuergröße zugeführt wird, und daß bei Ausführung einer Addition in Abhängigkeit vom Auftreten einer Überlaufanzeige im Mantissen-Addierwerk (27) vom Decodierer (59) eine Eins zum Exponentenkorrektur-Addierwerk (56) geliefert wird.
13. Gleitkomma-Rechenwerk nach den Ansprüchen 4 bis 12, dadurch gekennzeichnet, daß als Mantissen-Addierwerk (27) ein für sich bekanntes Übertragsvorausschau-Addierwerk verwendet wird, dessen Durchlaufzeit die Abschnittszykluszeit bestimmt.
14. Gleitkomma-Rechenwerk nach den Ansprüchen 1 bis 13, dadurch gekennzeichnet, daß eine Taktschaltung (80) vorgesehen ist, die synchron jeweils nach Ablauf einer Abschnittszykluszeit ein Operandenzuführsignal (/I, /II oder /III) erzeugt und die kurze Zeit nach jedem Operandenzuführsignal mindestens je ein weiteres Steuersignal erzeugt, das die Übertragung der in den Verriegelungsstufen (z. B. 32) gespeicherten Abschnitts-Ausgangsdaten zum jeweils nächsten Abschnitt steuert. .
Hierzu 1 Blatt Zeichnungen

Family

ID=

Similar Documents

Publication Publication Date Title
DE2451982C2 (de)
DE2246968C2 (de) Einrichtung zur Multiplikation zweier Gleitkommazahlen
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE1956209C3 (de) Multipliziervorrichtung
DE1268886B (de) Binaeres Serienaddierwerk
DE2036729A1 (de) Digital Datenverarbeiter
DE1549477B1 (de) Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE1549508C3 (de) Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit
DE2612750A1 (de) Multipliziereinrichtung
DE2364865C2 (de) Schaltungsanordnung zur Bildung von erweiterten Adressen in einer digitalen Rechenanlage
DE3447634C2 (de)
DE2203143C3 (de) Rechenanordnung zum Dividieren von Dezimalzahlen
DE1549478C (de) Gleitkomma Rechenwerk zur schnellen Addition oder Subtraktion binarer Operanden
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen
DE3015357A1 (de) Vorrichtung fuer kuenstlichen nachhall
DE1549449A1 (de) Einrichtung zur Verarbeitung von Gleitkommazahlen
DE2708637C3 (de) Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden
DE2140858C3 (de) Paritätsbit- Vorhersage schaltung für eine Stellenverschiebeeinrichtung
DE1524156B2 (de) Digitale elektronische recheneinrichtung
DE2207566C3 (de) Serien-Parallel-Multiplizierwerk
WO1994015278A1 (de) Schaltungsanordung zum bilden der summe von produkten