DE1549478C - Gleitkomma Rechenwerk zur schnellen Addition oder Subtraktion binarer Operanden - Google Patents
Gleitkomma Rechenwerk zur schnellen Addition oder Subtraktion binarer OperandenInfo
- 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
Links
- 241001442055 Vipera berus Species 0.000 claims description 52
- 238000010606 normalization Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000000875 corresponding Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 claims description 4
- 230000001360 synchronised Effects 0.000 claims description 3
- 230000000717 retained Effects 0.000 claims 1
- 238000005070 sampling Methods 0.000 claims 1
- 230000000295 complement Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001143 conditioned Effects 0.000 description 1
- 230000003111 delayed Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
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-
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)
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 | |
DE2758130A1 (de) | Binaerer und dezimaler hochgeschwindigkeitsaddierer | |
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 | |
DE69209826T2 (de) | Schnelle Addierkette | |
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 | |
DE19910620C2 (de) | Vorrichtung zur Durchführung von Rechenvorgängen |