DE2616717C2 - Digitales Addierwerk - Google Patents

Digitales Addierwerk

Info

Publication number
DE2616717C2
DE2616717C2 DE2616717A DE2616717A DE2616717C2 DE 2616717 C2 DE2616717 C2 DE 2616717C2 DE 2616717 A DE2616717 A DE 2616717A DE 2616717 A DE2616717 A DE 2616717A DE 2616717 C2 DE2616717 C2 DE 2616717C2
Authority
DE
Germany
Prior art keywords
adder
carry
stages
circuit
limit
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
DE2616717A
Other languages
English (en)
Other versions
DE2616717A1 (de
Inventor
David Norman Endicott N.Y. Gooding
Everett Montague Endwell N.Y. Shimp
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
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2616717A1 publication Critical patent/DE2616717A1/de
Application granted granted Critical
Publication of DE2616717C2 publication Critical patent/DE2616717C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/508Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using carry look-ahead circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/3816Accepting numbers of variable word length
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)
  • Executing Machine-Instructions (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Die Erfindung betrifft ein digitales Addierwerk mit mehreren parallel wirksamen, den Operanden- und Resultatsstellen zugeordneten Addierstufen.
Bekannte digitale Addierwerke sind zur parallelen Verarbeitung mehrstelliger Operanden eingerichtc L Die Stellen der Operanden können z. B. binäre Ziffern (Bits) oder Gruppen von Binärziffern (Bytes) sein. Jedem Paar von Operandenstellen gleicher Wertordnung ist eine Addierstufe zugeordnet, die aus den Werten der beiden Operandenstellen einen Summenwert bildet. Die Zahl der in einem Addierwerk vorzusehenden Addierstufen hängt von der Struktur der Verarbeitungseiniieit ab, in welcher das Addierwerk verwendet werden soll. Beispielsweise kann das Addierwerk für 16 Bitstellen ausgelegt werden. Sofern die zu addierenden Operanden eine konstante Länge von 16 Bits aufweisen, ist diese Auslegung günstig. Wenn jedoch Operanden mit größerer Stellenzahl zu addieren sind, werden zur Ausführung einer Additionsoperation jeweils mehrere Additionsdurchläufe benötigt.
Es ist wünschenswert, die Arbeitsgeschwindigkeit der Verarbeitungseinheiten von elektronischen Rechenanlagen zu erhöhen. Was das Addierwerk betrifft, so kann bei einer Verarbeitung von Operanden großer Stellenzahl eine Erhöhung der Geschwindigkeit dadurch erreicht werden, daß man die Zahl der Addierstufen entsprechend vergrößert. Hierdurch wird erreicht, daß für eine Additionsoperation in der Regel ein Addierzyklus ausreicht. Die Verwendung von derartigen Addierwerken mit großer Stellenzahl bringt jedoch andere Probleme mit sich, durch welche die Effektivgeschwindigkeit der Verarbeitungseinheit wieder reduziert wird. Wenn z. B. neben Operanden mit großer Stellenzahl auch Operanden mit kleinerer Stellenzahl zu addieren sind, müssen diese rechts ausgeschlossen werden, bevor sie dem Addierwerk zugeführt werden können. Diese Ausschließoperation bzw. Steilenausrichtung erfordert zusätzliche Zeit und ist besonders dort hinderlich, wo die Operanden relativ klein sind und an der äußersten linken Seite eines relativ breiten Datenflusses (Gesamtzahl der parallelen Addierwerkstellen) oder in deren Nähe liegen. Des weiteren ist es nachteilig, daß derartige, einen hohen Schaltungsaufwand erfordernde Addierwerke nur sehr unvollkommen ausgenutzt werden, wenn sie zur Verarbeitung von Operanden herangezogen werden, die nur eine geringe Anzahl von Ziffernstellen aufweisen, da in diesem Falle ein großer Teil der Addierstufen während des betreffenden Additionszyklus leerläuft
Aufgabe der Erfindung ist es, ein Addierwerk anzugeben, das eine flexible Anpassung an die jeweilige Stellenzahl der zu verarbeitenden Operanden gestattet. Diese Aufgabe wird gemäß der Erfindung durch die im Anspruch 1 angegebenen Maßnahmen gelöst Verschiedene vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind aus den Unteransprüchen ersichtlich. Verschiedene Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden anschließend anhand der Zeichnungen beschrieben. Es zeigen
F i g. 1 bis 5 schema tische Darstellungen zur allgemeinen Erläuterung der Erfindung,
F i g. 6 ein Blockschaltbild eines mehrere Bytestellen
umfassenden Übertragsvorausschau-Addierers, der eine volle Übertragungsvorausschau ohne Gruppierung der
Bytestufenerzeugungs- und Übertragungsfunktionen verwendet,
F i g. 7 eine Tabelle zur Erklärung der Übertragsvorausschau-Funktionen des Addierers von F i g. 6,
Fig.8 ein allgemeines Blockschaltbild eines Übertragsvorausschau-Addierers für eine Operandenlänge von einem Byte,
F i g. 9 ein detailliertes Blockschaltbild des in F i g. 8 gezeigten Addierers, der eine volle Übertragsvorausschau ohne Gruppierung der Bitstufenerzeugungs- und Übertragungsfunktionen verwendet,
Fig. 10 einen Teil der Bitpositionen des Addierers von F i g. 9 in detaillierter Blockdarstellung,
F i g. 11 ein Blockschaltbild einer anderen Ausführungsform des Addierers von F i g. 8,
Fig. 12 eine Tabelle zur Erläuterung des Aufbaus des Addierers von Fig. 11,
Fig. 13 ein Blockschaltbild einer anderen Ausführungsform des Mehr-Byte-Addierers von F i g. 6,
Fig. 14 bis 16 Tabellen zur Erläuterung des Aufbaus von Schaltungen von Fig. 13 und 17,
Fig. 17 ein Blockschaltbild eines ähnlichen Mehr-Byte-Addierers wie in Fig. 13, der eine Schaltung für die Bildung beweglicher Grenzen enthält,
Fig. 18 eine schematische Schaltung zur Erzeugung von Grenzsteuersignalen für den in Fig. 17 gezeigten Addierer,
Fig. 19 bis 26 Blockschaltbilder von Übertragungstrennschaltungen, wie sie im Addierer von Fig. 17 verwendbar sind,
Fig. 27 bis 34 Blockschaltbilder von Übertragsersetzungsschaltungen, wie sie im Addierer der Fig. 17 verwendbar sind,
Fig.35 ein Blockschaltbild einer Übertragsschaltung des Addierers von Fig. 17,
Fig. 36 bis 39 ßlockschaltbildei von im Addierer von Fig. 17 verwendbaren Gruppierungsschaltungen für die Übertragserzeugungs- und -Übertragungssignale,
Fig. 40 bis 47 Blockschaltbilder der Übertragsschaltungc.i von F i g. 17,
Fig. 48 und 49 Blockschaltbilder der Übertragsausgangswähler von F i g. 17,
Fig. 50 ein Blockschaltbild einer Fehleranzeigeeinheit zur Verwendung im Addierer von F i g. 17,
Fig. 51 ein vereinfachtes Blockschaltbild einer
Verarbeitungseinheit, in welcher das Addierwerk von Fig. 17 verwendet wird.
Der in der folgenden Beschreibung häufig verwendete Ausdruck »Byte« bezeichnet eine Folge von nebeneinanderliegenden binaren Stellen, die als eine Einheit bearbeitet werden und kurzer sind als ein Computerwort. Als Beispiel wird angenommen, daß jedes Byte aus acht binären Datenbits und einem Paritätsprüfbit besteht. Das Paritätsprüfbit wird im allgemeinen nicht separat erwähnt. Diese Auslassung beeinflußt das richtige Verständnis der vorliegenden Erfindung nicht. Weiterhin wird angenommen, daß ein Computerwort aus einer Folge von vier benachbarten Bytes oder 32 Datenbits (und vier Paritätsprüfbits) besteht.
Der Ausdruck »Feld oder Datenfeld« bezieht sich auf eine Folge benachbarter binärer Stellen ohne Berücksichtigung von Auswirkungen, die sich aus der Anzahl von Stellen in der Folge ergeben. Die Anzahl binärer Stellen oder Bits in einem Feld ist unterschiedlich.
Der Ausdruck »paralleles Rechengerät« wird hier als allgemeiner Ausdruck verwendet und soll im dargestellten Beispiel parallele Addierer und Subtrahierer umfassen. Das Beispiel wird anhand eines parallelen Addierers erläutert. Die Erfindung ist jedoch ebenso bei mehrstelligen parallelen Subtrahierern anwendbar.
In F i g. 1 ist ein mehrstelliges paralleles Rechengerät dargestellt durch einen mehrstelligen parallelen Binäraddierer 10 mit einer Anzahl von Stellenstufen zur Addition von zwei mehrstelligen binären Bitfolgen. Der Paralleladdierer 10 besteht aus einer Folge von benachbarten Bytestufen 11 bis 18, die den Bytes 0 bis 7 zugeordnet sind. Die Stellenordnung der Bytes steigt von rechts nach links so, daß Byte 0 das werthöchste Byte und Byte 7 das wertniedrigste Byte ist. Jede der Bytestufen 1! bis 18 enthält acht Binärstufen oder Bitstufen und kann somit eine erste acht Bit große Zahl (z. B. A 3 für Byte 3) zu einer zweiten acht Bit großen Zahl (z.B. S3 für Byte 3) addieren und eine resultierende acht Bit große Zahl (z. B. S3 für Byte 3) erzeugen, die die Summe der beiden Zahlen darstellt. Die durch benachbarte Byteeinheiten addierten Zahlen können Teile einer größeren Zahl sein. Alle acht Bytestufen können zur Addition einer ersten 64 Bit großen Zahl zu einer zweiten 64 Bit großen Zahl benutzt werden. Die maximale Datenfiußbreite des Addierers beträgt somit acht Bytes oder 64 Bits.
Der untere Teil der F i g. 1 zeigt die Möglichkeit des Addierers 10. in drei Gruppen zusammenhängender Stellenstufen unterteilt zu werden, wobei jede Gruppe als paralleler Addierer unabhängig von den anderen Gruppen arbeitet. Die drei Gruppen sind als Zonen 1, 2 und 3 bezeichnet. Jede Zone stellt einen unabhängigen Paralleladdierer dar, der durch die anderen beiden Zonen nicht beeinflußt wird. Die Grenze zwischen den Zonen 1 und 2 ist als Grenze A definiert, die Grenze zwischen den Zonen 2 und 3 als Grenze B. Beide Grenzen sind beweglich, d. h. ihre Lage kann über die Breite des Addierers 10 verändert werden. Insbesondere die Grenze A kann auf jede der Bitstufen 0 bis 7 gesetzt werden, die in der Skala der Grenzen A dargestellt sind. Andererseits kann die Grenze B auf jede der acht Bytestufen 0 bis 7 gestellt werden, die in der Skala der Grenzen B dargestellt sind. Die Zahlen der Skala B sind um ein Byte relativ zu den Zahlen der Skala A nach rechts versetzt. Jede wählbare Grenzlage fällt entweder mit einer Grenze zwischen benachbarten Bytes oder mit den linken bzw. rechten Extremen des Addierers 10 zusammen. Somit sind die Grenzen A und B in Schritten von Bytegrößen beweglich.
Für jede der Zonen 1, 2 und 3 sind unabhängige externe Übertragseingangs- und Übertragsausgangsleitungen vorgesehen. Die Verbindungspunkte für diese Leitungen werden mit der Bewegung der Zonengrenzen A und B automatisch verschoben. Die externen Übertragseingangs- und Übertragsausgangsleitungen für Zone 1 sind entsprechend mit CU und CX, die
ίο Leitungen für die Zone 2 mit CV und CY, die für die Zone 3 mit CW und CZ bezeichnet. Da die Grenzen A und B beweglich sind, erfolgt die C(7-Übertragseingangsverbindung zu der Stellenstufe, die der höheren Seite der Grenze A am nächsten liegt, und die CV-übergangseingangsverbindung erfolgt zu der Stellenstufe, die der werthöheren Seite der Grenze B am nächsten liegt. In dieser Beschreibung nimmt die Reihenfolge der Stellen und der Bytes von rechts nach links zu. Die werthöheren Stellen und Bytes liegen somit auf der linken Seite und die wertniederen Stellen und Bytes auf der rechten.
Aus demselben Grund erfolgt die CV-Verbindung der externen Übertragsausgangsleitung zu der Stellenstufe, die der wertniederen Seite der Grenze A am nächsten liegt, und die CZ-Verbindung der externen Übertragsausgangsleitung erfolgt zu der Stellenstufe, die der wertniederen Seite der Grenze B am nächsten liegt. CU und CY bewegen sich somit mit der Grenze A und CV und CZ mit der Grenze B.
F i g. 2 zeigt den Fall, wo der Addierer 10 als Einzeladdierer in der vollen Breite von 64 Bits benutzt werden soll. In diesem Fall wird die Grenze A auf die Steile 0 gesetzt und die Grenze B auf die Stelle 7. Dadurch wird die Zone 2 so ausgedehnt, daß sie die gesamte Breite des Addierers 10 umfaßt, womit die Zonen 1 u und 3 verschwinden.
Die Fig.3 und 4 zeigen die beiden Möglichkeiten, den Addierer 10 in zwei separate Zonen mit je 4 Bytes Breite zu unterteilen. In Fig. 3 wird die Grenze A auf die /4-Stelle 4 und die Grenze B auf die ß-Stelle 7 gesetzt. Dadurch belegt die Zone 1 die linke Hälfte des Addierers 10 und die Zone 2 die rechte Hälfte. In F i g. 4 ist die Grenze A auf die Stelle 0 und die Grenze B auf die Stelle 3 gesetzt. Dadurch belegt die Zone 2 die linke Hälfte des Addierers 10 und die Zone 3 die rechte Hälfte.
Nach der Darstellung in den F i g. 1 bis 4 sollten sich die verschiedenen Zonen niemals überlappen. Das erreicht man dadurch, daß man die Grenze A immer
so links von der Grenze B hält. Für das zu beschreibende Beispiel soii die Grenze A auch nicht mit der Grenze B zusammenfallen, die Zone 2 aber immer vorhanden sein. Die Zonen 1 und 3 können jedoch abhängig von der jeweiligen Anwendung vorhanden sein oder nicht.
F i g. 5 zeigt einige allgemeine Beispiele von Datenfeldern, die in einem großen digitalen Vielzweckrechner auftreten können. Die gekreuzten Teile stellen die Bytes dar, die für jedes Beispiel erforderlich sind. Ohne die Erfindung müßten beim zweiten, dritten, fünften und sechsten Beispiel die Datenfelder rechtsbündig ausgeschlossen werden, bevor sie in den Addierer gelangen. Für das letzte oder Exponentenbeispiel würde das z. B. bedeuten, daß das Datenfeld um sieben Bytes nach rechts verschoben werden muß, bevor es in den Addierer eingegeben werden kann.
Zur Vermeidung dieser Anschließoperation setzt man die Grenzen A und Bso, daß sie mit den Randstellen des zu behandelnden Datenfeldes zusammenfallen und die
Operationszone 2 ein unabhängiger Addierer wird. Für den Fall der Verarbeitung einer expliziten Konstanten würde man beispielsweise die Grenze A auf die Λ-Stelle 5 und die Grenze B auf die ß-Stelle 6 setzen. Die CV-Übertragseingangsverbindung würde dann den externen Eingangsübertrag auf Byte 6 geben und die CV-Übertragsausgangsverbindung würde den externen Übertragsausgang vom Byte 5 liefern. Auf dise Weise ist keine Verschiebung des Datenfeldes erforderlich.
Für einige Fälle, wie Einzelwort-links, Einzelwortrechts oder Exponentenänderung, wo eine Randstelle des Datenfeldes mL einer Randstelle des Addierers zusammenfällt, gibt es zwei Möglichkeiten, die Grenzen A und B zu setzen. Diese Fälle sind gleich dem Fall der zwei Zonen, der im Zusammenhang mil den F i g. 3 und 4 betrachtet wurde. Im Exponentenfall beispielsweise würde die /4-Grenze auf die A-Stelle 0 und die Grenze B für die ß-Stelle 0 gesetzt und das Exponentenfeld durch die Zone 2 verarbeitet. Andererseits könnte die Grenze A auf die Λ-Stelle 1 und die Grenze B auf die ß-Stelle 7 gesetzt und das Exponentenfeld durch die Zone 1 verarbeitet werden.
Für die Fälle, wo keine Randstelle des Datenfeldes mit einer Randstelle des Addierers zusammenfällt, muß die Grenze A auf die linke Randstelle des Datenfeldes und die Grenze B auf die rechte Randstelle gesetzt und das Datenfeld durch die Zone 2 verarbeitet werden. Wenn eine Konsistenz bei der Verarbeitung der Datenfelder in einer bestimmten Art gewünscht wird, kann der Addierer so betrieben werden, daß die Datenfelder immer durch die Zone 2 verarbeitet werden.
Wie in den Beispielen in F i g. 5 gezeigt ist, kann der dargestellte Addierer als ein Zonenaddierer mit veränderlicher Breite oder veränderlicher Zonenlage oder beidem betrieben werden. Der Addierer kann auch, wie oft erwünscht, gleichzeitig unabhängige Additionen oder Subtraktionen mit mehr als einem Zahlenpaar ausführen, wobei die Subtraktion jeweils durch Komplementierung eines der beiden Operanden erfolgt, bevor sie dem Addierer zugeführt wird. Ein erste Zahlenpaar kann beispielsweise durch die Zone 1 addiert werden, während gleichzeitig in der Zone 2 ein zweites Zahlenpaar addiert wird und, soweit erwünscht, in Zone 3 noch ein drittes Paar addiert werden kann. Durch entsprechende Komplementierschaltungen (ein Beispiel dafür wird später beschrieben) kann auch gleichzeitig in einer Zone addiert und in einer anderen subtrahiert werden. Die gleichzeitige Ausführung verschiedener Operationen in verschiedenen Zonen ist mögiich, weii die Zonen völlig unabhängig voneinander arbeiten.
Paralleladdierer können nach der Art der Übertrags-, verarbeitung in zwei Hauptkategorien unterteilt werden. In die eine Kategorie gehören die sogenannten Übertragsdurchlaufaddierer und in die andere die Übertragsvorausschauaddierer. In einem Durchlaufaddierer bildet die gesamte Übertragsschaltung eine serielle Reihe, und die Übertragssignale müssen die Reihe von einer Stellenstufe zur nächsten durchlaufen. In einem Vorausschauaddierer ist andererseits der Übertragseingang für eine Stufe unabhängig vom Übertragsausgang der vorhergehenden Stufe. Statt dessen werden alle Übertragseingangssignale gleichzeitig durch die Übertragslogik-Schaltung bestimmt, die parallel zu dem die Summenbildung ausführenden Teil der Addiererschaltung arbeitet. So braucht eine Stufe nicht auf die vorhergehenden Stufen zu warten, bevor sie ihr Übertragseingangssignal zugeführt bekommt. Die Übertragsvorausschauaddierer sind somit wesentlich schneller als die Durchlaufaddierer, insbesondere in Fällen wie dem vorliegenden Ausführungsbeispiel, wo die Gesamtbreite des Addierers sehr groß ist (z. B. 64 Bits). Aus diesem Grund wurde als Ausführungsbeispiel
ein Paralleladdierer vom Übertragsvorausschautyp gewählt.
F i g. 6 zeigt im einzelnen die Konstruktion eines
ίο mehrere Byte großen parallelen Addierers des Übertragsvorausschautyps. Der in F i g. 6 gezeigte Addierer arbeitet mit voller Übertragsvorausschau ohne Bytestufengruppierung der Erzeugungs- und Übertragungsfunktionen. Der Addierer in F i g. 6 enthält acht Abschnitte 20 bis 27 von Bytegröße. Jeder Abschnitt besteht aus einem 1-Byte-Addierer und einer Übertragsschaltung. Der Abschnitt 20 enthält also den Addierer 30 und die Übertragsschaltung 40, der Abschnitt 21 den Addierer 31 und die Übertragsschaltung 41 usw. Jede Übertragsschaltung erzeugt das Übertragseingangssignal für den Addierer im nächsthöheren Abschnitt. Die Reihenfolge steigt, wie schon erwähnt, von rechts nach links, so daß der Abschnitt 20 der höchste Abschnitt in der Reihenfolge und der Abschnitt 27 der niedrigste ist. Die Übertragsschaltung 47 erzeugt also das Übertrags-Eingangssignal C 6 für den Addierer 36 im Abschnitt 26, die Übertragsschaltung 46 erzeugt das Übertragseingangssignal C 5 für den Addierer 35 im Abschnitt 25 usw.
Jeder der 1-Byte großen Addierer 30 bis 37 addiert eine erste acht Bit große Zahl (ζ. Β. Λ 5 für Addierer 35) zu einer zweiten acht Bit großen Zahl (z.B. ß5 für Addierer 35) und erzeugt eine resultierende acht Bit große Zahl (z. B. 55 für Addierer 35), die die Summe der
ersten beiden Zahlen darstellt. Die Übertragseingangssignale CO bis C6 und CI dienen zur Verbindung der Addierer 30 bis 37 so, daß ein acht Byte großer Addierer (64 Bits) entsteht, der zwei acht Byte große Zahlen (64 Bits) addieren kann.
Um die gewünschte Übertragsvorausschau zu erhalten, erzeugt jeder der Addierer 30 bis 37 ein Bytestufen-Übertragserzeugungssignal und ein Bytestufen-Übertragsübertragungssignal. Die Übertrags-Erzeugungssignale sind bezeichnet mit GO bis G 7,
während die Übertragsübertragungssignale mit Γ0 bis T7 bezeichnet sind.
Jedes dieser Signale ist ein binäres Signal, dessen Wert entweder 0 oder 1 ist. Während der Addition der beiden Eingangszahlen nimmt das Erzeugungssignal für eine gegebene Addiererstufe den binären Einswert an, wenn diese Stufe intern ein Übertrags-Ausgangssignal erzeugt, ungeachtet des Vorhandenseins oder Fehlens eines Übertragseingangssignals zu dieser Stufe. Andernfalls bleibt das Erzeugungssignal auf binär 0. Während der Addition von zwei Eingangszahlen nimmt das Übertragungssignal für eine gegebene Stufe den binären Wert 1 an, wenn diese Stufe bei einem Übertragseingangssignal ein Übertragsausgangssignal erzeugen würde. Dies heißt mit anderen Worten, daß
ein Übertragungssignal mit dem Wert 1 anzeigt, daß ein Übertragseingang zur Stufe durch die Stufe übertragen wird und als Übertragsausgang am werthohen Ende erscheint Im anderen Falle nimmt das Übertragungssignal den Wert 0 an. Die Übertragseingangssignale CO bis C6 und C/sind ebenfalls binäre Signale und nehmen den Wert 1 an, wenn ein Übertragseingang vorliegt, und sie nehmen den Wert 0 an, wenn kein Übertragseingang vorhanden ist.
Allgemein ist der Übertragseingang CN zum n-ten Byteaddierer (ausgenommen oder wertniederste Byteaddierer oder der Addierer für Byte 7) durch folgenden logischen Ausdruck bestimmt:
CN= G(W+1)+T(W+1) · C(N+1) (1)
worin CN der Übertragseingang zur η-ten Stufe, G(N+\) das durch den Addierer des nächst niederen Byte gebildete Erzeugungssignal, T(N+ 1) das Übertragungssignal für den Addierer des nächstniedrigeren Byte und Q7V+1) der Übertragseingang zum Addierer für das nächstniedrigere Byte ist. Das Pluszeichen außerhalb der Klammern bezeichnet die logische ODER-Funktion und das Punktzeichen die logische UND-Funktion. Auf diese Weise ist der Übertragseingang C6 zum Byte 6-Addierer 36 bestimmt durch den logischen Ausdruck:
C6 = G7+T7 ■ Cl
worin Gl und 77 das Erzeugungssignal und das Übertragungssignal für das vorhergehende Byte 7 (Addierer 37) und Cl ein externes Übertragseingangssignal zum Byte 7-Addierer 37 sind. Dieser Ausdruck besagt, daß zwei Bedingungen vorliegen, die einen Übertragseingang zum Byte 6-Addierer auslösen. Insbesondere gibt G 7 an, daß ein Übertragseingang C 6 vorliegt, wenn Byte 7-Addierer 37 intern ein Übertragssignal erzeugt. Der Ausdruck Tl ■ CI besagt, daß ein Übertragseingang C 6 auch vorliegt, wenn der Byte 7-Addierer den Übertragsübertragungszustand einnimmt und ein Übertragseingang Cl zum Byte 7-Addierer erfolgt. Die Übertragsschaltung 47, die das Signal C6, erzeugt, arbeitet nach Gleichung 2; sie empfängt die Signale Gl, Tl und Cl und erzeugt das Übertragssignal C6.
Das Übertragseingangssignal C 5 für Byte 5-Addierer 35 ist durch den folgenden logischen Ausdruck bestimmt:
C5 = G6+76·
die Gleichung 5 ein und erweitert die Ausdrücke, so ergibt sich folgender Ausdruck für CA:
worin G 6 und 76 das Erzeugungs- und Übertragungssignal für Byte 6-Addierer und C 6 das Übertragseingangssignal zum Byte 6-Addierer sind. Setzt man die Gleichung 2 in die Gleichung 3 ein und erweitert die Ausdrücke, so ergibt sich:
C5 = G6+76· G7+76· Tl ■ CI (4)
Die Gleichung 4 beschreibt die Logik für die Übertragsschaltung 46, die das Übertragseingangssignal C5 erzeugt. Dieses Signal zeigt an, daß drei Bedingungen vorliegen, die einen Übertragseingang CS auslösen können. Eine dieser Bedingungen ist die interne Erzeugung eines Übertragssignals (G6=1) im vorhergehenden Byte 6-Addierer. Die zweite Bedingung ist ein Übertrags-Übertragungszustand (76=1) im Byte 6-Addierer und die interne Erzeugung eines Übertragssignals (Gl = \) in dem davor liegenden Addierer, nämlich dem Byte 7-Addierer. Im dritten Fall befinden sich die beiden vorhergehenden niederen Stufen in einem Übertrags-Übertragungszustand (T6=l und 77=1) und es liegt ein externer Übertragseingang vor (CI= 1).
In'ähnlicher Weise ist das Übertrags-Eingangssignal C4 für Byte 4-Addierer 34 beschrieben durch folgenden logischen Ausdruck:
C4 = G5+75 ■ C5 (5)
Setzt man den Wert von C5 aus der Gleichung 4 in C4=G5+75 · G6+75
. 77 · C/
76
G7+75 ■ 76-(6)
Die Gleichung 6 beschreibt die durch die Übertragsschaltung 45 ausgeführte logische Funktion zur Erzeugung des Übertragseingangssignals C4 für den Byte 4-Addierer.
ίο Die logischen Beziehungen für all die verschiedenen Übertragseingangssignale C6 bis CO und das letzte Übertragsausgangssignal CX sind in der F i g. 7 aufgeführt. Zur besseren Übersicht sind die zu jedem Erzeugungssignal gehörenden Übertragungssignale in Klammern gesetzt. In diesem Fall bezeichnet die hintere abschließende Klammer auch die logische UND-Funktion. Die Ausdrücke für die Übertragungseingänge C3, C 2 usw. erhält man durch Fortführung des oben für die Übertragseingänge C 6, C 5 und C 4 beschriebenen Prozesses. Der logische Ausdruck für C3 beschreibt die durch die Übertragsschaltung 44 ausgeführte logische Funktion, der Ausdruck für C 2 beschreibt die für die Übertragsschaltung 43 ausgeführt logische Funktion usw.
Wie aus F i g. 7 zu ersehen ist, wird die Übertragslogik beim Addierer von F i g. 6 von rechts nach links immer komplexer. Die logischen Ausdrücke für das letzte Übertragssignal CX umfassen z. B. neun Ausdrücke, und die CX-Übertragsschaltung 40 empfängt die Erzeugungs- und Übertragungssignale von allen vorhergehenden wertniederen Abschnitten und das Übertragseingangssignal CI für den wertniedrigsten Abschnitt. In ähnlicher Weise empfängt jede andere Übertragsschaltung 41, 42 usw. alle Erzeugungs- und Übertragungssi-
gnale von allen vorhergehenden wertniederen Abschnitten sowie den Übertragseingang CI.
Ein Übertragsvorausschauaddierer, wie er in F i g. 6 gezeigt ist, ist schneller als ein Durchlaufaddierer, weil alle Übertragssignale untereinander gleichzeitig sowie gleichzeitig mit der Durchführung der Additionen in den verschiedenen Byteaddierern 30 bis 37 erzeugt werden. So braucht ein werthoher Addierer nicht auf einen Übertrag zu warten, der die ganze Kette durchläuft und von irgend einer wertniederen Stufe zu ihm kommt.
Das Übertragseingangssignal CI ist gleich ClV, wenn die Grenze B nicht auf der ß-Stelle 7 steht oder ist andererseits CV, wenn die Grenze B auf der ß-Stelle 7 steht.
Jeder der Byteaddierer 30 bis 37 der Fig.6 kann bekanntlich zwei acht Bit große Zahlen addieren. Jeder dieser in Fig.8 gezeigten Byte N-Addierer addiert somit eine erste acht Bit große Zahl
AN=(a0a\,a2 al) (7)
zu einer zweiten acht Bit großen Zahl
BN=(b0,b\,b2,..^bl) (8)
und erzeugt eine resultierende acht Bit große Summe
5N= (s0 9 1, s 2,.. M 5 7) (9)
^'
worin die kleinen Buchstaben a, b und s die binären Stellen der entsprechenden Zahlen angeben.
F i g. 9 zeigt ein Beispiel für den internen Aufbau des 1-Byte-Addierers der F i g. 8. Nach Darstellung in F i g. 9 handelt es sich auch hier um einen Paralleladdierer vom Übertragsvorausschautyp. Mit Ausnahme der Ausdrükke GN und 7N ist er analog dem in F i g. 6 gezeigten Mehrbyteaddierer, arbeitet jedoch auf Bitstufe und nicht
auf Bytestufe. Die Kleinbuchstaben g, t und c in F i g. 9 bezeichnen die Erzeugungs-, Übertragungs- und Übertragseingangssignale für die verschiedenen Bits. Der Addierer in F i g. 9 besteht somit aus den Abschnitten 50 bis 57 mit je einem Bit-Addierer (z. B. 64 für Abschnitt 54) und einer Übertragsschaltung (z. B. 74 für Abschnitt 54).
Die Bitstufen-Übertragseingangssignale CO bis C6 werden durch dieselben Beziehungen beschrieben, wie di? entsprechenden Bytestufen-Übertragseingangssignale CO bis C6 in Fig.7, jedoch werden die Kleinbuchstaben g und t an die Stelle der Großbuchstaben G und T gesetzt und anstelle von CI tritt CN. Das das Erzeugungssignal für das Byte als ganzes (alle Bitabschnitte 50 bis 57) bezeichnende Signal GN wird durch den Ausdruck für das Signal CX in Fig.7 beschrieben unter der Voraussetzung, daß der letzte Ausdruck mit CI weggelassen wird. Das Bytestufen-Erzeugungssignal GN hängt von den verschiedenen Bitstufen-Erzeugungssignalen gO bis g7 ab. Das Signal TN stellt das Übertragungssignal für das Byte als ganzes dar (alle Bitabschnitte 50 bis 57) und ist durch den folgenden logischen Ausdruck beschrieben:
TN=t0- fl · ti ■ f3 · f4 · f5 · ί6 · Π (10)
Das entspricht dem letzten Term des CX-Ausdruckes, wenn der Übertragseingangsfaktor CI weggelassen wird. Das Byte als ganzes befindet sich also in einem Übertrags-Übertragungszustand (7TV=I), wenn alle acht Bit-Addierer in Übertragsübertragungszustand stehen.
Fig. 10 zeigt im einzelnen den Aufbau der drei äußersten rechten oder wertniedersten Bitpositionen 55 bis 57 des Addierers von F i g. 9. Die Summenzahl für die fl-te Stufe in einem Mehrbitaddierer ist bekanntlich bestimmt durch den logischen Ausdruck:
worin das Zeichen V die logische Antivalenzfunktion bezeichnet. Für Bit- 6-Addierer 66 beispielsweise wird die Beziehung der Gleichung 11 ausgeführt durch die Antivalenzglieder 80 und 81.
Der allgemeine Ausdruck für das Übertrags-Erzeugungssignal für das n-te Bit ist
gn=an ■ bn
(12)
wobei das Punktzeichen die logische UND-Funktion bezeichnet. Für den Bit 6-Addierer 66 wird diese Beziehung der Gleichung 12 ausgeführt durch das UND-Glied 82. Somit erzeugt die Bitstelle 6 ein Übertrags-Erzeugungssignal /£6=1). wenn beide hereinkommenden Stellen a 6 und b 6 auf 1 stehen. Dies ist der Fall, wo der Bit 6-Addierer ein Übertrags-Ausgangssignal von sich aus ungeachtet des Vorhandenseins oder Fehlens eines C6-Übertragseingangssignals erzeugt
Der allgemeine Ausdruck für das Übertrags-Übertragungssignal für die n-te Stufe ist:
tn=an+bn
(13)
worin das Pluszeichen die logische ODER-Funktion bezeichnet. Für den Bit 6-Addierer 66 beispielsweise wird diese Beziehung ausgeführt durch das ODER-Glied 83. Wenn also einer der Eingangsoperanden a 6 oder b 6 den Wert 1 einnimmt, liegt auch das Übertragungssignal Γ6 auf Eins-Potential, was besagt, daß der Bit 6-Addierer normalerweise einen Ausgangsübertrag erzeugen würde, wenn er einen Übertragsein-
gang empfängt. Die Tatsache, daß T6 auch auf 1 steht, wenn a 6 und Ö6 auf 1 stehen, stellt eine harmlose Abweichung von der strengen Logik dar, weil ein c 5-Eingangsübertrag in jedem Fall durch das ^6-Erzeugungssignal erzeugt würde und die Verdoppelung nicht nachteilig ist.
Der allgemeine Ausdruck für das Übertragseingangssignal CN zum η-ten Bitaddierer ist:
cn = g(n+\)+t(n+\) ■ c(n+\)
(14)
worin g(n+\) und t(n+\) sowie cfn+1) die Erzeugungs-, Übertragungs- und Übertrags-Eingangssignalen für den vorhergehenden wertniederen Bitaddierer sind. Das Übertrags-Eingangssignal c6 für den Bit 6 Addierer ist also:
c6=g7+t7 ■ CN (15)
In ähnlicher Weise wird das Übertrags-Eingangssignal c 5 für den Bit 5-Addierer gebildet:
c5=g6+tg · c6
(16)
Setzt man die Gleichung 15 in die Gleichung 16 ein und erweitert die Ausdrücke, so erhält man für das Übertrags-Eingangssignal c5 folgenden Ausdruck:
c5=g6+t6 · g7+t6 ■ Π ■ CN
07)
Diese Beziehung der Gleichung 17 stellt die Logik dar, die durch die Übertragslogik 76 ausgeführt wird. Wie in Fig. 10 gezeigt ist, wird diese logische Verknüpfung durch die UND-Glieder 84 und 85 sowie das ODER-Glied 86 ausgeführt.
Mit der Zunahme der Stufenzahl erreicht die Schaltung sehr schnell eine erhebliche Komplexität. Aus diesem Grunde ist es üblich, mehrstufige parallele Addierer in Stufengruppen zu unterteilen und sogenannte Gruppen-Erzeugungssignale und Gruppen-Übertragungssignale zu erzeugen, die den Erzeugungsund Übertragungssignalen der einzelnen Bitstufe analog sind. Die Bytestufenerzeugungs- und -übertragungssignale GO bis G 7 und T"0 bis T7 stellen eine solche Gruppierung dar. Zur weiteren Reduzierung des Schaltungsaufwands wird die Gruppierungstechnik auch innerhalb des in F i g. 9 gezeigten 1 -Byte-Addierers angewandt.
In F i g. 11 ist eine modifizierte Schaltungsform für den in F i g. 9 gezeigten 1 -Byte-Addierer dargestellt die die Gruppierungstechnik für einige Bitstufen-Erzeugungsfunktionen und Übertragungsfunktionen anwendet. Die Bitaddierer 60 und 67 und die beiden
so wertniederen Übertragsschaltungen 76 und 77 entsprechen den Schaltungsteilen gleicher Numerierung in Fig. 10. Eine Gruppenschaltung 90 faßt die Erzeugungsfunktion g 5 bis g7 und die Übertragungsfunktionen f 5 bis f 7 zu einem Gruppenerzeugungssignal g57 und einem Gruppenübertragungssignal f 57 zusammen. Die Art dieser Gruppierung ist aus den Zeilen #57 und f57 in Fig. 12 ersichtlich. Diere Gruppensignale werden durch die Übertragsschaltung 95 zur Erzeugung des Übertragseingangssignals c4 für den 4-Bit-Addierer benutzt. Die betreffende Beziehung ist in Fig. 12 gezeigt. Der Aufbau der Übertragsschaltung 95 ist somit einfacher als derjenige der vorher betrachteten Übertragsschaltung 75. Die Auswirkungen auf das Übertragseingangssignal c4 sind jedoch dieselben, was deutlich wird, wenn man die Gruppenbeziehungen für g 57 und f 57 in die neue Beziehung für c 4 einsetzt, die in Fig. 12 gezeigt ist Der modifizierte Aufbau der Übertragsschaltungen 93, und 94 für c 2 und c 3 ist in der
Tabelle der F i g. 12 angegeben.
Die zweite Gruppenschaltung 89 übernimmt dieselbe Gruppierung für die T.rzeugungssignale g2 bis g4 und für die Übertragungssigna'e t2 bis r4. Die logischen Ausdrücke für die resultierenden Gmppensignale g24 und 124 sowie der Aufbau der Übertragsschaltungen 91 und 92 sind aus Fig. 12 ersichtlich, die auch die logischen Beziehungen angibt, die von der Schaltung 96, der Schaltung 97 und der Übertragsausgangsschaltung 98 ausgeführt werden. Das Signal GN stellt die Gruppenerzeugungsfunktion für den Acht-Bit-Addierer von F i g. 11 dar, während das Signal TN die Gruppenübertragungsfunktion für diesen Addierer darstellt. Das Signal KNstellt den Ausgangsübertrag für den Addierer von F i g. 11 dar. Der Zweck des Signals KTV wird später erklärt.
Fig. 13 zeigt eine modifizierte Form des Mehrbitad-dierers von F i g. 6, die mit derselben Gruppierung arbeitet, wie sie in Fig. 11 für den Ein-Byte-Addierer dargestellt ist. Die logischen Beziehungen, die von modifizierten Übertragsschaltungen 100 bis 105 und Gruppenschaltungen 108, 109 ausgeführt werden, sind in der Tabelle der Fig. 14 angegeben. Mit Ausnahme der Ausdrücke Cl und CX sind diese Beziehungen grundsätzlich dieselben, wie die entsprechenden Beziehungen auf Bitebene für die Bitübertragslogik von Fig. 12. Die Bedeutung der Beziehung für Cl wird später erklärt. Für den in Fig. 13 gezeigten Addierer sind ein Paar bewegliche Grenzen A und B vorgesehen, das in Schritten von jeweils einem Byte bewegt und zur Unterteilung des Addierers der Fig. 13 in zwei oder drei unabhängige Addierer benutzt werden kann, wie es im Zusammenhang mit den Fig. 1 bis 4 beschrieben wurde.
Um eine Grenze zwischen zwei benachbarten Byteabschnitten in Fig. 13 festzulegen, wird die Übertragsvorausschau-Schaltung an der gewünschten Grenze abgetrennt, damit die Byteabschnitte rechts der Grenze die Byteabschnitte links der Grenze nicht beeinflussen. Gleichzeitig muß die korrekte Funktion der Übertragsvorausschauschaltung links der Grenze aufrechterhalten werden. Außerdem ist eine externe Übertrags-Eingangsverbindung für die Byteabschnitte links der Grenze erwünscht. Diese Ziele werden bei dem in Fig. 13 gezeigten Ausführungsbeispiel durch zwei Maßnahmen erreicht: (1) Abschaltung des Übertrags-Übertragungssignals, das durch den Byteaddierer auf der wertniederen rechten Seite unmittelbar vor der Grenze erzeugt wird und (2) Einsetzen eines externen Übertrags-Eingangssignals für das Übertrags-Lrzeugungssignal, das durch letzteren Byteaddierer erzeugt wurde.
Um z. B. die Grenze A zwischen Byte 2 und Byte 3 zu legen, muß das Übertragungssignal Ti vom 3-Byte-Addierer abgeschaltet werden, so daß die Leitung Ti im Nullzustand bleibt. Außerdem muß das externe Übertrags-Eingangssignal für die Grenze A, nämlich das Übertrags-Eingangssignal CU, eingesetzt werden anstelle des durch den Byte 3-Addierer erzeugten Erzeugungssignals G 3. Wenn dies geschieht, funktionieren die Bytes 0, 1 und 2 als unabhängige Übertrags-Vorausschauaddierer und arbeiten vollständig unabhängig von den Byteabschnitten rechts der Grenze A und werden von diesen auch nicht beeinflußt.
Dieses Ergebnis kann überprüft werden, indem man die kompletten logischen Ausdrücke aus F i g. 7 benutzt und hierin Γ3 auf 0 setzt und für G 3 den Wert CU einsetzt. Dadurch erhält man folgende Ausdrücke für die Übertrags-Eingangssignale C2, Cl und CO:
CZ=CU (18)
Ct = G2 + G2- CU (19)
C0=Gl + n · G2+T1 ■ T2- CU (20)
Die gewünschte Übertrags-Vorausschau wird also auf der werthohen Seite der Grenze aufrechterhalten und durch die Übertrags-Vorausschauschaltung auf der niedrigen oder rechten Seite der Grenze nicht beeinflußt
Derselbe Beweis kann angetreten werden durch Verwendung der gruppierten Byte-Übertragsbeziehungen von F i g. 14. Es wird jedoch für einfacher gehalten, die Arbeitsweise der dargestellten Einrichtung mit Hilfe der detaillierteren Ausdrücke von Fig.7 sichtbar zu machen. Ein ähnliches Ergebnis kann für jede andere mögliche Stelle der Grenze A nachgewiesen werden.
In der gleichen Weise wird die Grenze B festgelegt ist Um die Grenze ß an einer gegebenen Stelle festzulegen, muß man das Übertrags-Übertragungssignal abschalten, das durch den Byteaddierer erzeugt wird, der unmittelbar neben der Grenze auf der wertniederen Seite liegt, und man muß das Übertrags-Eingangssigna' CV für die Grenze B erzeugt wurde, der auf der wertniederen Seite unmittelbar neben der gewünschten Grenzstelle liegt.
Die Tabellen in den Fig. 15 und 16 gelten für die Grenzen A bzw. B. Diese Tabellen fassen die Übertragungsunterbindung und den Übertrags-Eingangsersatz zusammen, die erforderlich sind, um die Grenze A und die Grenze ß an die verschiedenen Bytestellen zu setzen. Um also z. B. die Grenze A auf die Stelle 6 zu setzen, muß anhand der Tabelle in Fig. 15 T 6 auf 0 gesetzt werden und G 6 durch das externe
Übertrags-Eingangssignal CU ersetzt werden. Wie durch die Skalen der Grenzen A und B unten in F i g. 13 gezeigt, ist die Stellennumerierung für die Grenze B gegenüber der Stellennumerierung für die Grenze A um ein Byte nach rechts versetzt. Außerdem darf gemäß früherer Ausführungen die gewählte Stelle für die Grenze A den numerischen Wert der gewählten Stelle für die Grenze B nicht überschreiten, weil sich die Bereiche sonst überlappen und die Datenbits vermischt werden.
Die Festlegung der Grenzen ist einfacher, wenn kein Interesse an externen Übertrags-Eingangssignalen besteht. Zum Festlegen einer solchen Grenze brauchte man in einem solchen Fall nur die Erzeugungs- unc Übertragungs-Signalleitungen abzuschalten, die vor dem Byteaddierer unmittelbar neben der Grenze aul der wertniederen Seite kommen. Ein Addierer ohne externe Übertrags-Eingangsleitung ist jedoch in dei arithmetisch-logischen Einheit eines Digitalrechner; nicht einsetzbar, und daher wird eine derartigt Anwendung hier nicht weiter beschrieben.
Im Funktionsblockdiagramm der Fig. 17 ist eir paralleler binärer Mehrbyteaddierer vom Übertrags vorausschautyp dargestellt, der dem von F i g. 3 ähnlicl ist, jedoch zusätzlich eine Schaltung zur Bildung dei beweglichen Grenzen enthält. Der in Fig. 17 gezeigt« Addierer enthält eine mehrstellige parallele Addier schaltung mit einer Anzahl von Byte-Addierstufen 30 bi 37, von denen jede so aufgebaut ist wie der in F i g. 1 gezeigte Ein-Byte-Addierer. Da die Addierer 30 bis 37 ji acht binäre Bitstufen enthalten, hat der in F i g. Γ gezeigte Addierer insgesamt 64 binäre Binärstellen.
Der in Fig. 17 gezeigte Binäraddierer enthält ein* Schaltungseinheit zur Erzeugung und Verarbeitung voi
Übertrags-Eingangssignalen für jede Stellenstufe. Diese Übertragsschaltung ist vom Übertrags-Vorausschautyp und enthält Bitstufen-Übertragsschaltungen 76, 77 und 91 bis 95 und Bitstufen-Gruppenschaltungen 89 und 90, wie sie in F i g. 11 gezeigt sind. Diese Schaltungen sind in jedem der Ein-Byte-Addierer 30 bis 37 enthalten, die mit Bytestufen-Übertragsschaltungen 46,47 und 100 bis 105 und Bytestufen-Gruppenschaltungen 108 .und 109 verbunden sind (Fig. 17). Diese Übertrags-Vorausschaltung gehört zum mehrstufigen Gruppentyp. Eine erste Gruppenstufe wird durch die Gruppenschaltungen 89 und 90 in jedem der Ein-Byte-Addierer 30 bis 37 gebildet Eine zweite Gruppenstufe wird durch die Erzeugungsfunktion-Ausgangsschaltung 96 und die Übertragungsfunktion-Ausgangsschaltung 97 gebildet, die ebenfalls in jedem Ein-Byte-Addierer 30 bis 37 enthalten sind. Eine dritte Gruppenstufe ist dargestellt durch die Gruppenschaltungen 108 und 109 von F i g. 17.
Das in F i g. 17 gezeigte Ausführungsbeispiel kann man auf zweierlei Art betrachten, nämlich von der Bitebene und von der Byteebene. Im ersten Fall wird jede der 64 Bitstufen als eine Addierstufe aufgefaßt Im anderen Falle wird jeder der 1-Byte großen Addierer 30 bis 37 als eine Addierstufe angesehen. Die für den vorliegenden Bereich geeignetere Betrachtungsweise hängt von der Lage oder der räumlichen Einteilung der verschiedenen wählbaren Grenzstellen ab. Wenn die Grenzen in Schritten von einem Byte beweglich sind und die wählbaren Stellen mit den Grenzen zwischen den Bytes zusammenfallen, wie dies beim Addierwerk von F i g. 17 der Fall ist, ist es im allgemeinen bequemer, jeden 1-Byte großen Addierer als Addiererstufe zu betrachten. Wenn andererseits die beweglichen Grenzen in Schritten von weniger als einem Byte verschiebbar sind, ist es bequemer, jede Bitstufe oder jede Gruppe von Bitstufen als Addiererstufe zu betrachten. Es ist zur Erklärung also einfacher, wenn man sich die Bitstufen als zwischen benachbarten wählbaren Grenzpositionen gelegene Gruppen vorstellt, von denen jede eine Addierstufe bildet.
Der in Fig. 17 gezeigte Addierer enthält eine Schaltung, mit der für jede Addiererstufe ein Übertrags-Erzeugungssignal und ein Übertrags-Übertragungssignal gebildet wird. Auf Bitbasis umfaßt jder der Bitaddierer 60 bis 67 (F i g. 11) Schaltungen zur Bildung der Signale #0 bis gl und fO bis f7. Zum Beispiel erzeugt das UND-Glied 82 von F i g. 10 das Signal gh und das ODER-Glied 83 das Signal ί 6. Die äquivalenten Schaltungen auf Bytebasis sind die Erzeugungsschaltungen 96 und die Übertragungsschaltungen 97 in F i g. 11, die sich in jedem der Addierer 30 bis 37 der Fig. 17 befinden. Diese Schaltungen 96 und 97 bilden die GN- und TW-Verknüpfungen, die in Fig. 12 festgelegt sind. Auf Bytebasis sind somit die Übertrags-Erzeugungssignale dargestellt durch die Signale GO bis G 7 und die Übertrags-Übertragungssignale durch die Signale TO bis 77.
Das Ausführungsbeispiel in Fig. 17 enthält weiter eine Übertrags-Vorausschauschaltung, die auf das Übertrags-Erzeugungs- und Übertrags-Übertragungssignal anspricht und Übertrags-Eingangssignale für die verschiedenen Addiererstufen erzeugt.
Auf Bitbasis eruhält die Übertrags-Vorausschauschaltung Übertragsschaltungen 76, 77 und 91 bis 95 und Gruppenschaltungen 89 und 90 (F i g. 11). Auf Bytebasis enthält die Übertrags-Vorausschauschaltung Übertragsschaltungen 46, 47 und 100 bis 105 und Gruppenschaltungen 108 und 109.
Der Addierer in Fig. 17 weist ferner eine Schaltung auf zum Auswählen einer Gruppe zusammenhängender Bytestufen und zum Betreiben der gewählten Bytestufen als unabhängige parallele Addieren Der Addierer in Fig. 17 enthält weiterhin eine Schaltung zur Größenveränderung der gewählten Gruppen von Bitstufen, wobei diese Größe über einem Bereich mit einem Maximalwert entsprechend der Gesamtzahl von Stufen im Addierer und mit einem Minimalwert verändert werden kann, der kleiner oder gleich der Hälfte der Stufen ist Diese Schaltung zur Größenveränderung der gewählten Gruppe umfaßt eine erste und zweite Grenzwahlschaltung zum Verändern der Lage eines Paares beweglicher Grenzen A und B.
Die Auswahlschaltung zum Verändern der Lage der Grenze A besteht aus einem Grenzdecodierer (erste Teilschaltung) 110, der ein codiertes 3-Bit-Grenzsteuersignal AC empfängt, dessen einzelne Bits bezeichnet sind mit ACO, ACi und ACl. Der Decodierer 110 decodiert dieses Signal und erregt daraufhin eine bestimmte von acht möglichen Ausgangsleitungen ABO bis AB 7. Welche Ausgangsleitung jeweils erregt bzw. auf den binären Wert 1 gesetzt wird, hängt von der Codierung des Eingangssignals ab. Jede Ausgangsleitung AB 0 bis AB 7 des Decodierers 110 entspricht einer bestimmten der acht möglichen Stellen für die Grenze A. Die.Ausgangsleitung ABO wird erregt, wenn die Grenze A auf die Stelle 0 gesetzt werden soll, die Ausgangsleitung ABi, wenn die Grenze A auf die Stelle 1 gesetzt werden soll usw. Die Beziehungen zwischen den Codewerten des Steuersignals AC, den Decodierer-Ausgangsleitungen AB 0 bis AB 7 und den Lagen für die Grenze A werden in den ersten beiden Spalten auf der linken Seite in der Tabelle der F i g. 15 beschrieben. Die zweite Spalte gibt die verschiedenen möglichen Codewerte für das Grenzsteuersignal AC an, während die erste Spalte die entsprechenden Grenzlagen und somit die Decodierer-Ausgangsleitungen angibt. Wenn die Codierung des Grenzsteuersignals ACbeispielsweise 110 ist, dann ist die Stelle 6 für die Grenze A gewählt und die Decodierer-Ausgangsleitung AB6 wird erregt.
Die Auswahlschaltung zum Verändern der Lage der
Grenze B besteht aus einem Grenzdecodierer (zweite Teilschaltung) 112, der ein codiertes 3-Bit-Grenzsteuersignal BC empfängt dessen einzelne Bits bezeichnet sind mit BCO, BCi und BC2. Der Decodierer 112 decodiert das Steuersignal BC und erregt eine bestimmte seiner acht möglichen Ausgangsleitungen SdO bis BB 7. Jede dieser Ausgangsleitungen entspricht einer anderen von acht möglichen ß-Grenzstellen. BB 0 wird erregt, um die Grenze B auf die Stelle 0 zu setzen. BB1 wird erregt, um die Grenze B auf die Stelle 1 zu setzen usw. Die Beziehungen zwischen den ßC-Steuersignalcodes, den verschiedenen Lagen der Grenze B und den Ausgangsleitungen des Decodierers 112 sind in den ersten beiden Spalten der F i g. 16 beschrieben.
Der /4-Grenzdecodierer 110 hat 16 Ausgangsleitungen, und zwar zwei Ausgangsleitungen für jede der acht verschiedenen Stellen für die Grenze A. Eine Leitung in jedem Paar liefert ein echtes Signal und die andere das Komplementsignal. So gibt es für die Λ-Stelle O eine + Λ ß0-Leitung und eine -/AßO-Leitung, wobei das Pluszeichen die Leitung mit dem echten Signal und das Minuszeichen die Leitung mit dem Komplementsignal bezeichnet. Wenn das Signal auf der echten Leitung auf binär 1 steht, dann führt die Komplementleitung ein Signa! binär 0 und umgekehrt. Der einfacheren Darstellung halber sind nur die acht echten Leitungen in
F i g. 17 gezeigt. Entsprechendes gilt für den Decodierer 112 für die Grenze B.
Fi g. 18 stellt symbolisch einen Teil der Steuereinheit zum Erzeugen der codierten Grenzsteuersignale AC und BC dar. Ein erster Teil der Steuereinheit 113 mit drei unabhängig einstellbaren Binärstufen, dargestellt durch Schalter 113a, 1136 und 113c, erzeugt die einzelnen Bitsignale ACO, ACi und AC2, die das Steuersignal AC für die Grenze A bilden. Ein zweiter Teil der Steuereinheit 114 mit drei unabhängig einstellbaren binären Stufen, dargestellt durch die Schalter 114, 1146 und 114c, erzeugt die einzelnen Bitsignale BCO, BCi und BC 2, die das Steuersignal BC für die Grenze B bilden. In einer elektronischen Datenverarbeitungseinheit sind die Schalter 113a bis η 113c und 114a bis 114c als entsprechende elektronische Schaltungen ausgeführt, die binäre Ausgangssignale liefern, abhängig von den jeweiligen zu wählenden Grenzstellen. In einem Computer mit Mikroprogrammierung können die Schalter 113a bis 113c und 114a bis 114c einzelnen Registerstufen im Steuerregister entsprechen, das die Mikroinstruktionen vom Steuerspeicher empfängt.
Die in Fig. 17 gezeigte Schaltung zum Auswählen einer Gruppe zusammenhängender Bytestufen und zu deren Betrieb als unabhängige Addierzone enthält eine Übertragstrennschaltung, die mit der Übertragsschaltung und der Gruppenschaltung verbunden ist und diese Schaltungen an den ausgewählten Grenzen unterbrechen. Die Trennschaltung enthält Schaltkreise 120 bis 127 zur wahlweisen Trennung der Übertragungssignalleitungen 7"0 bis Tl von einem der Byteaddierer 30 bis 37. Im abgeschalteten Zustand hält jeder der Schaltkreise 120 bis 127 den Zustand der binären 0 auf seiner Ausgangsleitung aufrecht.
Vorteilhafte Ausführungsformen für die Übertragungs-Trennschaltungen 120 bis C27 sind in den F i g. 19 bis 26 dargestellt. Danach kann jeder dieser Schaltkreise die Form eines UND-Gliedes haben. Der Zustand eines jeden Schaltkreises wird gesteuert durch Verbinden 4« eines zweiten Einganges mit der Komplement-Grenzsteuerleitung ABO bis AB7 vom /4-Grenzdecodierer 110 und durch Verbinden eines dritten Einganges mit einer der Komplement-Grenzsteuerleitungen BBO bis BB 7 vom ß-Grenzdecodierer 112. Eine Ausnahme bildet der Schaltkreis 120 für den Byte-O-Addierer, der nach Darstellung in Fig. 19 nur die Komplement-Grenzsteuerleitung ABO vom Decodierer 110 empfängt.
Die mit den Schaltungen 120 bis 127 verbundenen Decodierer-Ausgangsleitungen werden so gesteuert, daß die betreffende Schaltung abgeschaltet wird, sobald eine der Grenzen A und B unmittelbar auf der werthöheren Seite des Byteaddierers liegt, zu dem diese Schaltung gehört. Nimmt man als Beispiel die Schaltung 122 (Fig. 21). die mit dem Byte 2-Addierer 62 verbunden ist, so geht die -Aß2-Kompiementleitung vom Decodierer 110 auf 0 und der Schaltkreis 122 wird abgeschaltet, wenn die Grenze A unmittelbar links vom Byte 2-Addierer 32 an der Wcristcllc 2 steht. In mi ähnlicher Weise gehl cl;is — BIi 1-Koniplementsignal vom ß-Decodierer 122 auf 0 und der Schaltkreis 122 wird abgeschälte:, wenn die Grenze ßan der Wertstelle 1 steht. Für andere Stellen der Grenzen A und B (A ungleich 2 und ß ungleich 1) stehen die Komplementsignale -/4ß2und - ßß 1 auf binär 1 und der Schaltkreis 122 wird so eingeschaltet, daß das Übertrags-Übertragimgssignal Tl wcitergeleitct wird, wenn es vorhanden ist. Wenn der Schaltkreis 122 eingeschaltet ist, liefert sein Ausgang T2 denselben Signalpegel, der an seinem Eingang T2 anliegt Wenn der Schaltkreis 122 abgeschaltet ist, bleibt sein Ausgang 7~2 auf 0, ungeachtet des Signalzustands am Eingang TZ Die übrigen Schaltungen 120 bis 127 arbeiten ähnlich bezüglich der ihnen zugeordneten Grenzstellen.
Die Übertragsabschalteinrichtung im Ausführungsbeispiel von Fig. 17 enthält auch eine Modifizierschaltung für die Übertragserzeugungssignale, die wahlweise externe Übertrags-Eingangssignale für die Übertrags-Erzeugungssignale einsetzen kann, die normalerweise durch die Addiererstufen 30 bis 37 erzeugt werden. Diese Modifizierungsschaltung enthält Schaltungen 130 bis 137, die entsprechend mit den Leitungen G 0 bis G 7 der Addierer 30 bis 37 gekoppelt sind und die im einzelnen in den F1 g. 27 bis 34 gezeigt sind.
Der Addierer in Fig. 17 enthält drei externe Übertrags- Eingangsleilungen 140, 141 und 142 für die externen Übertrags-Eingangssignale CU, CV und ClV der Zonen I12 und 3. Nach Darstellung in F i g. 1 gehört der CL/-Übertragseingang zur Grenze A und bewegt sich mit ihr, während der CV-Übertragseingang zur Grenze B gehört und sich mit ihr bewegt. Der Übertragseingang CW für die Zone 3 bleibt am rechten äußeren Rand des Addierers fest. Zur Erreichung der gewünschten Ziele muß der Übertragseingang CU für das Übertrags-Erzeugungssignal eingesetzt werden, das durch den Byteaddierer erzeugt wird, der auf der rechten Seite neben der Grenze A liegt, und der CV-Übertragseingang muß eingesetzt werden für das Übertrags-Erzeugungssignal, das durch denjenigen Byteaddierer erzeugt wurde, der auf der rechten Seite neben der Grenze B liegt. Aus diesen Gründen laufen gemäß Darstellung in Fig. 17 die externen Übertrags-Eingangsleilungen 140 und 141 für die Signale CU und CVzu jeder der Schaltungen 130 bis 137 mit Ausnahme der Leitung 140, die zur werthöchsten Schaltung 130 läuft.
Nach der Darstellung in den F i g. 27 bis 34 ist jede der Schaltungen 130 bis 130 auch mit einer Ausgangsleilung (und der zugehörigen Komplementlcitung) des /4-Grenzdecodierer 110 und mit einer Ausgangsleitung (und der zugehörigen Komplementleitung) vom ß-Grenzdecodierer 112 verbunden. Eine Ausnahme bildet die werthöchste Schaltung 130 (F i g. 27), die nur mit der echten Leitung +ABO und der Komplementleitung —/\ß0des/4-Decodierers HOverbunden ist.
Als Beispiel soll die Schaltung 132 im einzelnen betrachtet werden, die mit dem Ausgang des Byte 2-Addierers 32 verbunden ist. Nach Fig. 29 besteht diese Schaltung aus den drei UND-Gliedern 144, 145 und 146, deren Ausgänge drei Eingänge eines ODER-Gliedes 147 speisen. Wenn die Grenzen mit A und ß bezeichnet sind, dann führen die Leitungen — AB 2 und -BBi Eins-Potential und die Leitungen + AB 2 und +ßßi Null-Potential, wenn A Φ2 und Βφ\. Durch diese Bedingung werden das UND-Glied 144 ein- und die UND-Glieder 145 und 146 ausgeschal-(Ct, wodurch der Eingang (11:2 des UND-Gliedes 144 mit dem Ausgang des ODER-Gliedes 147 so verbunden wird, d;tß das Signal am Ausgang des ODER-Gliedes dem Signal entspricht, das am Ausgang G 2 des Byte 2-Addierers 32 erscheint. Dies ist der Fall, in dem weder die Grenze A noch die Grenze ß unmittelbar links vom Byte-2-Addierer liegen.
Wenn die Grenze A direkt links vom Byte 2-Addierer 32 liegt, ist ,4 = 2 und Βφ\. In diesem Fall führt die
Leitung auf -AB2 Null-Potential und die Leitung -i AB2 Eins-Potential. Damit wird das UND-Glied 144 gesperrt und das UND-Glied 145 geöffnet Das UND-Glied 146 bleibt gesperrt, weil die Leituag + BB1 auf Null-Potential bleibt Für diesen Zustand wird die externe Übertrags-Eingangsleitung CU mit der Ausgangsleitung des ODER-Gliedes 147 verbunden und dadurch das externe Übertrags-Eingangssignal CU an die Stelle des Erzeugungssignals G 2 gesetzt
Wenn für die Grenze B die Wertstelle 1 gewählt wird, dann ist 5—1 und Λ #2. In diesem Fall geht die Steuerleitung -BBi auf Null-Potential und die Steuerleitung + BB1 auf Eins-PotentiaL Dadurch wird das UND-Glied 144 geschlossen und das UND-Glied 146 geöffnet Das UND-Glied 145 ist geschlossen, weil die Steuerleitung +AB 2 auf Null-Potential bleibt Auch durch diese Schaltzustände der UND-Glieder wird die Übertrags-Eingangsleitung CV mit dem Ausgang des ODER-Gliedes 147 verbunden und so das externe Übertrags-Eingangssignal CV eingesetzt für das Erzeugungssignal G 2.
Entsprechendes gilt für die übrigen Einsetzschaltungen 130 bis 137. Das Übertrags-Eingangssignal CU wird eingesetzt für das Erzeugungssignal, wenn die Grenze A direkt links neben dem Schaltkreis liegt, und das Übertragseingangssignal CV wird für das Erzeugungssignal eingesetzt, wenn die B-Grenze direkt links neben dem Schaltkreis liegt Sonst erscheint das normale Übertrags-Erzeugungssignal am Ausgang der betreffenden Schaltung.
Eine Übertragseingangsschaltung 150 (Fig. 17) liefert das richtige Übertrags-Eingangssignal Cl an den Byte 7-Addierer und das rechte Ende der Übertrags-Vorausschaltung. Die Übertragseingangsschaltung 150 wählt eines der externen Übertrags-Eingangssignale CV und CW aus in Abhängigkeit von der Lage der Grenze B. Die Übertragseingangsschaltung 150 führt die Verknüpfung Cl cus, die in der Tabelle der Fig. 14 gegeben ist. Der Aufbau der Schaltung 150 ist in F i g. 35 gezeigt. Wenn die Grenze B nicht auf der ß-Stelle 7 liegt, dann führt die Grenzsteuerleitung -BB 7 ein Eins-Signal auf die Leitung +BB 7 ein Null-Signal. Dadurch wird das UND-Glied 151 geöffnet und die Leitung CWmit dem Ausgang eines ODER-Gliedes 153 verbunden. Wenn umgekehrt die Grenze B auf der ß-Stelle 7 liegt, dann wird ein zweites UND-Glied 152 geöffnet und das erste UND-Glied 151 geschlossen. Dadurch wird die Übertrags-Eingangsleitung CV mit der Ausgangsleitung des ODER-Gliedes 153 verbunden. Für alle Grenzstellen B, die von der Wertstelle 7 verschieden sind, ist somit Cl=CW. Nur wenn die Grenze B auf der Wertstelle 7 liegt, ist Cl= CV.
Der Aufbau der Gruppenschaltungen 108 und 109 ist in den F i g. 36 bis 39 gezeigt. Diese Schaltungen führen die logischen Verknüpfungen zur Bildung der Signale G 57, Γ57, G;24 und Γ24 aus, die in der Tabelle von Fig. 14 aufgeführt sind. Die·Schaltungen von Fig.36 und 37 sind Teile der Gruppenschaltung 109, und die Schaltungen von F i g. 38 und 39 sind Teile der Gruppenschaltung 108.
Der Aufbau der Übertragsschaltungen 100 bis 105,46 und 47 ist in den F i g. 40 bis 47 dargestellt. Diese Schaltungen führen die logischen Beziehungen aus, die in der Tabelle von F i g. 14 aufgeführt sind.
Das in F i g. 17 gezeigte Ausführungsbeispiel enthält zum Betrieb jeder Zone als unabhängigen parallelen Addierer weiterhin Schaltungen für die externen Übertrags-Ausgangsverbindungen zu der werthöchsten Stufe in jeder Zone. Nach der Darstellung in F i g. 1 ist der externe Übertragsausgang für Zone 1 CX, der externe Übertragsausgang für Zone 2 CY, der externe Übertragsausgang für Zone 3 CZ. Der Übertragsauss gang CX für Zone 1 bleibt natürlich am linken äußeren Rand des Addierers fest Andererseits gehört CY zur Grenze A und muß mit dieser verschoben werden können. Ähnlich gehört CZ zur Gresize B und «nuß auch mit dieser verschoben werden können.
ίο Die externe Übertrags-Ausgangsverbindung für CX in Fig. 17 umfaßt eine Übertrags-Ausgangsleitung 160, die mit der Übertragsschaltung 100 verbunden ist Die externe Übertrags-Ausgangsverbindung für CY wird durch eine Übertrags-Ausgangsleitung 161 gebildet, die
an den Ausgang des Übertrags-Ausgangswählers 162 angeschlossen ist Die Übertrags-Ausgangsverbindung für CZ wird durch eine Übertrags-Ausgangsleitung 163 gebildet die an den Ausgang eines Übertrags-Ausgangswählers 164 angeschlossen ist Die Wähler 162, 164 sind in den F i g. 48 bzw. 49 gezeigt.
Nach Darstellung in Fig.48 enthält der CK-Übertrags-Ausgangswähler 162 einen Sitz, von acht UND-Gliedern 170 bis 177 mit zwei Eingängen, deren Ausgang jeweils mit dem Eingang eines ODER-Gliedes 178 verbunden ist. Ein Eingang zu jedem der UND-Glieder 170 bis 177 ist mit einer der Byte-Übertrags-Ausgangsleitungen K 0 bis K 7 der Addierer 30 bis 37 verbunden. Das UND-Glied 170 ist an die K0-Leitung, das UND-Glied 171 an die Kl-Leitung usw. angeschlossen. Jeder Addierer 30 bis 37 enthält
eine Übertrags-Ausgangsschaltung der in F i g. 11 gezeigten Schaltung 98. Diese Schaltungen erzeugen die
Übertrags-Ausgangssignale K 0 bis K 7. Der zweite Eingang eines jeden UND-Gliedes 170 bis
177 ist mit einer der Grenzsteuerleitungen ABO bis AB 7 des Λ-Grenzdecodierers 110 verbunden. Diese Grenzsteuerleitungen ABQ bis AB7 welches der acht UND-Glieder 170 bis 177 zu einem gegebenen Zeitpunkt geöffnet wird. Zu einem gegebenen Zeitpunkt liegt also nur eine Grenzsteuerleitung AB0 bis AB 7 auf Eins-Potential und zeigt damit die momentane Lage der Grenze A. Wenn also die Grenze A beispielsweise auf der /4-Stelle 2 liegt, dann ist das Signal auf Leitung AB 2 auf Eins-Potential und das UND-Glied 172 ist geöffnet.
Dadurch wird die Übertrags-Ausgangsleitung K 2 für den Byte 2-Addierer mit der CV-Übertrags-Ausgangsleitung 161 verbunden. Dieses Ergebnis wird gewünscht, weil der Byte 2-Addierer derjenige ist, der auf der wertniederen Seite der Grenze liegt, wenn die Grenze A auf der Wertstelle 2 steht.
Der CZ-Übertrags-Ausgangswähler 164 ist genau so aufgebaut wie der Cy-Übertrags-Ausgangswähler 162. Seine acht UND-Glieder sind einzeln mit Übertrags-Ausgangsleitungen K 1 bis K 7 der externen Übertrags- Eingangsleitung CW verbunden. Diese UND-Glieder sind außerdem mit den Grenzsteuerleitungen BBO bis BB 7 des ß-Grenzdecodierers 112 verbunden und werden von diesen gesteuert. Der CZ-Wähler 164 funktioniert genauso für die Crenze B wie der
CY- Wähler 161 für die Grenze .4.
Der Addierer von Fig. 17 enthält ferner eine Fehleranzeigeschaltung 180 zur Erzeugung eines Grenif shlersignals E in dem Falle, daß die Grenzen A und B beide so liegen, daß sich eine unerwünschte Überlappung der Zonen 1 und 3 ergibt. Diese Fehleranzeigeschaltung 180 erzeugt ein Grenzfehlersignal (E= 1), wenn A > B, wobei -4 und ßden numerischen Wert der Grenzlagen auf der /4-Grenzskala und der
ß-Grenzskala bezeichnet. Da die B-Skala um ein Byte nach rechts gegenüber der Α-Skala versetzt ist, heißt dies, daß ein Fehler angezeigt wird, wenn die Grenze S links von der Grenze A liegt oder mit dieser zusammenfällt. Der Aufbau der Schaltung 180 ist in F i g. 50 gezeigt. Diese Schaltung vergleicht das codierte Grenzsteuersignal AC für die Grenze A mit dem codierten Grenzsteuersignal BC für die Grenze B und erzeugt das Grenzfehlersignal (E= 1) wenn A>B. Ein erstes UND-Glied 181 empfängt das werthöchste AC-Bk (ACU), und das werthöchste ßC-Bit CSCO) und erzeugt ein einen Fehler anzeigendes Ausgangssignäl, wenn ACQ>BC0. Das ist der Fall, wenn +ACO=I und +SCO = O. In diesem Fall ist das an eine Ncgationsschaltung 182 gelieferte Komplementsignä! + SCO auf Eins-Potential und erzeugt den entsprechenden Eins-Ausgang am Ausgang des UND-Gliedes 181.
Ein zweites UND-Glied 183 vergleicht die nächsten beiden Bits ACX und BC1 im codierten Steuersignal zur Erzeugung eines Fehleranzeigesignals, wenn' AC1 < BC1 unter der Voraussetzung, daß ACO gleich oder größer SCO ist. Diese Funktion wird durch ein UND-Glied 184 und eine Negationsschaltung 185 ausgeführt. Die Schaltungen 184 und 185 schalten das UND-Glied 183 ab, wenn ACO> SCO. In dem FaU kann kein Fehler vorliegen.
Ein weiteres UND-Glied 186 vergleicht die wertniedersten Bits AC2 und SC2 und erzeugt ein Fehlersignal auf dem Eins-Ausgangspege!, wenn AC2>SC2 ist unter der Voraussetzung, daß ACO gleich oder größer ist als SCO und daß AC1 gleich oder größer ist als BCl. Die erste Voraussetzung wird geprüft durch die Schaltungen 184 bzw. 185. Die zweite Voraussetzung wird durch das UND-Glied 187 und die Negationsschaltung 188 geprüft. Diese Schaltungen 187 und 188 sperren das UND-Glied 186, wenn AC1 < BCi, weil die wertniederen Bits nicht berücksichtigt werden sollten, wenn die beiden nächsthöheren Bits fehlerfreie Beziehungen haben. Die Ausgänge der UND-Glieder 181. 183 und 186 sind mit einer gemeinsamen Ausgangsleitung durch ein ODER-Giied 189 verbünden.
Im Blockdiagramm von F i g. 51 ist der Datenfluß für einen mikroprogrammierten Digitalrechner gezeigt. Dieser Digitalrechner enthält einen Hauptspeicherteil 201, einen Datenflußteil 202 und einen Steuerteil 203. Jede zwischen den verschiedenen Blöcken verlaufende Leitung stellt eine mehradrige Datensammelleitung dar. In der Zeichnung steht die Abkürzung »REG« für Register.
Der Steuerteil 203 steuert die Operation des Datenflußteües 202 und des Hauptspeicherteües 201. Dazu wird der im Steuerteil 203 gelegene Steuerspeicher 204 mit Mikroinstruktionen geladen, die den Hauptspeicherteil und den Datenflußteil so steuern, daß diese die verschiedenen, von ihnen verlangten Aktionen durchführen können. Diese Mikroinstruktionen werden einzeln ausgelesen und in ein Steuerregister 205 gesetzt, wobei ein neues Steuerwort das vorhergehende Steuerwort am Anfang eines jeden Maschinenzyklus ersetzt. Entsprechende Felder des im Steuerregister 205 stehenden Steuerwortes werden an den Decodierer 206 geleitet, der Steuersignale für die verschiedenen Schaltglieder erzeugt, die zu den einzelnen Datensammelleitungen im Datenflußteil 202 und im Hauptspeicherteil 201 gehören. Die Mikroinstruktion im Steuerregister 205 liefert auch andere Arten von Steuersignalen an einige Einheiten im Datenflußteil 2OZ Beispiele für solche Signale werden nachher betrachtet Im Datenflußteil 202 liegt ein mehrstelliger Paralle laddierer 208, wie er im einzelnen in F i g. 17 gezeigt is Eine Datensammelleituhg 209 besteht aus 64 Leitern, die die 64 Datenbits A 0 bis A 7 auf die A-Eingangsseite des Addierers 208 geben. Eine andere Datensammelleitung 210 aus 64 Leitern liefert die 64 Datenbits SO bi B 7 auf die B-Eingangsseite des Addierers 208. Eini Ausgangsdatensammelleitung 211 aus 64 Leitern empfängt die 64 Datenbits SO bis S7, die die Ausgabe de
ίο Addierers 208 darstellen. Eine Steuersammelleitung 212 mit sechs Leitern liefert die A-Grenzsteuersignale und die ß-Grenzsteuersignale, die vom Steuerregister 205 bereitgestellt werden, an die Grenzsteuereingänge AC und SCdes Addierers 208.
]5 Übertrags-Eingangsschaltungen 213 sind über die Leiter 214 mit den externen Überlrags-Eingangsleitun gen CU, CV und CW im Addierer 208 verbunden. Zu den Leitern 214 gehörende, nicht dargestellte Steuerto re werden durch das Steuerregister 204 so gesteuert,
daß'die Übertrags-Eingangssignale CU, CVund CWzur richtigen Zeit an den Addierer 208 angelegt werden.
Statusverriegelungsschaltungen 215 sind vorgesehen zum Empfang der Zonen-Übertrags-Ausgangssignale CX, CY und CZ und des Grenzfehlersignals, die im Addierer 208 erzeugt werden können. Diese Verriege lungsschaltungen sind einzeln mit den verschiedenen Ausgangsleitungen für CX, CVund CZund Everbunden über eine Leitung 216. Sie sind an eine Schaltung zu Bestimmung der nächsten Adresse 220 im Steuerteil 203 angeschlossen, damit das Mikroprogramm im Steuerspeicher 204 zu dem entsprechenden Steuerwort verzweigen kann, das beim Auftreten einer bestimmten Zustandsbedingung im Addierer 208 gebraucht wird. Die Datenbits S 0 bis B 7 werden der B-Eingangsseite de$ Addierers 208 über Echt/Komplement-Tore 225 zugeführt. Diese Tore 225 empfangen Datenbits über eine Datensammelleitung 226 und geben entweder eine echte oder eine Komplementdarstellung dieser Daten bits auf die ß-Eingangsseite des Addierers 208. Wenn eine Addition auszuführen ist, werden die echten Operanden der B-Eingangsseite zugeführt, und wenn eine Subtraktion auszuführen ist, werden die komple fnentären Operanden zugeführt Die Auswahl erfolg durch das Steuerregister 205, das die Tore 225 über eine Sammelleitung 227 steuert. Für jede der acht verschie denen Bytezonen in diesen Toren 225 ist eine unabhängige Steuerung vorgesehen, so daß der Addierer 208 gleichzeitig in einer Zone eine Addition Und in einer anderen eine Subtraktion ausführen kann.
Für eine typische arithmetisch/logische Operation mit Datenfeldern, die kürzer sind als die volle Breite des Addierers 208 und die nicht rechtsbündig stehen, setzt das Steuerregister 205 die Lage der Grenzen A und B so, daß diese mit den Randstellen der infrage kommenden Datenfelder zusammenfallen. Solche Datenfelder können dann direkt durch den Addierer 208 verarbeitet werden, ohne daß sie verschoben werden müssen, wodurch Zeit gespart und die Datenverarbeitungsgeschwindigkeit erhöht wird.
Die Grenzen A und B können nach den obigen Ausführungen auch so gesetzt werden, daß zwei oder drei unabhängige Arbeitszonen im Addierer 208 entstehen. Dadurch können zwei oder drei unabhängige Sätze von Additionen und Subtraktionen gleichzeitig vom Addierer 208 ausgeführt werden, wodurch ebenfalls Zeit gespart und die Datenverarbeitungsgeschwindigkeit erhöht wird.
Die vorliegende Erfindung läßt sich auch auf
mehrstellige parallele binäre Subtrahierer anwenden. Der wesentliche Unterschied zwischen binären Addieren und Subtrahieren liegt bekanntlich darin, daß die Addiererübertrags-Eingangssignale und Übertrags-Ausgangssignale benutzen, während die Subtrahierer mit Borger-Eingangssignalen und Borger-Ausgangssignalen arbeiten.
Der Unterschied zwischen einem parallelen binären Addierer und einem parallelen binären Subtrahierer tritt auf der Bitebene zutage. Betrachtet man daher eine einzelne Bitposition, so ist die Logik zur Erzeugung des resultierenden Differenzbits im Falle eines Subtrahierers genau dieselbe, wie die Logik zur Erzeugung des resultierenden Summenbits im Falle eines Addierers. Die Logik für die Überträge bzw. Borger ist jedoch etwas unterschiedlich. Für den Fall einer Addierer-Bitposition gilt:
Caus-X ■ Y+(X+ Y) ■ Cein (21)
worin Caus der Übertragsausgang Cein der Übertragseingang und X und V die beiden addierten Eingangsbits sind. Für den Fall einer Subtrahierer-Bitpösition gilt:
Baus= X ■ Υ+(ΧψΫ) ■ Bein (22)
worin Baus der Borger-Ausgang, Bein der Borger-Eingang und X und V die beiden zu subtrahierenden Eingangsbits sind.
Beim Vorausschau-Addierer wird der Ausdruck X- Y als Erzeugungsfunktion benutzt, während beim Vorausschau-Subtrahierer der Ausdruck XY als Erzeugungsfunktion dient. Bei Vorausschauaddierern wird der Ausdruck X+ Y (bzw. das logische Äquivalent »ODER«) als Übertragungsfunktion benutzt, während bei Vorausschau-Subtrahierern der Ausdruck X^Y (oder das logische Äquivalent »Antivalenz-Nicht«) als Übertragungsfunktion benutzt wird. Abgesehen von diesen Unterschieden auf der Bitebene ist die Schaltung
für den Vorausschau-Addierer und den Vorausschau-Subtrahierer im wesentlichen gleich.
Das in Fig. 1 gezeigte Rechengerät 10 kann daher einen mehrstelligen parallelen binären Subtrahierer anstelle eines Addierers darstellen, wobei CU, CV und CW Zonen-Borger-Eingangssignale, CX, CY und CZ Zonen-Borger-Ausgangssignalen und SO bis 57 die resultierende Differenzsignale sind. Die beweglichen Grenzen werden in der gleichen Weise realisiert. Abweichend von der obigen Darstellung können die Ausführungsbeispiele aus Schaltungen bestehen, die mit einer negativen Logik oder einer Mischung von positiver und negativer Logik arbeiten. Außerdem können die Schaltungen abweichend' von der erläuterten Ausführung unter Verwendung vor. UND-Gliedern, ODER-Gliedern und Negationsgliedern auch ganz oder teilweise durch NAND-Glieder oder NOR-Glieder oder andere Formen logischer Schaltungen realisiert werden.
Hierzu 11 Blatt Zeichnungen

Claims (14)

Patentansprüche:
1. Digitales Addierwerk mit mehreren parallel wirksamen, den Operaden- und Resultatstellen zugeordneten Addierstufen, gekennzeichnet durch eine Auswahlschaltung (110; 112), die aus den vorhandenen Addierstufen (30 bis 37; 60 bis 67) eine veränderbare Anzahl aufeinanderfolgender Addierstufen zum Betrieb als selbständiges, von den restlichen Addierstufen unabhängig arbeitendes Addierwerk dergestalt auswählt, daß über von der Auswahlschaltung (110; 112) gesteuerte Torschaltungen (120 bis 127, 130 bis 137, 151, 152, 162, 164) jeweils der Übertragungseingang der ersten Stufe und der Übertragsausgang der letzten Stufe der ausgewählten Addierstufen selektiv an eine gemeinsame Übertragseingarigsleitung (CV) bzw. eine gemeinsame Übertragsausgangsleitung (CY) anschließbar ist.
2. Addierwerk nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahlschaltung (110, 112) zur Auswahl mehrerer variabler Abschnitte von einander benachbarten Addierstufen (30 bis 37; 60 bis 67) eingerichtet ist und daß für jeden der Abschnitte eine Übertragseingangsleitung (CU; CV; CW) sowie eine Übertragsausgangsleitung (CZ; CY; CX) vorgesehen ist, so daß mehrere Abschnitte des Addierwerks unabhängig voneinander benutzt werden können.
3. Addierwerk nach einem der Ansprüche 1 bis 2, dadurch gekennzeichnet, daß die Addierstufen (30 bis 37; 60 bis 67) binäre Volteddierer sind und daß die Auswahlschaltung (HO, Ii2) zur Festlegung von Abschnittsgrenzen zwischen benachbarten Binärstellen dient.
4. Addierwerk nach einem der Ansprüche 1 bis 2, dadurch gekennzeichnet, daß die Addierstufen (30 bis 37) Mehrbitaddierer (Byteaddierer) sind und daß die Auswahlschaltung (110,112) zur Festlegung von Abschnittsgrenzen zwischen benachbarten Bitgruppen (Bytes) dient.
5. Addierer nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Auswahlschaltung eine erste Teilschaltung (HO) zur Festlegung einer ersten Grenze (A) zwischen zwei benachbarten Addierstufen (30 bis 37) und eine zweite Teilschaltung (112) zur Festlegung einer zweiten Grenze (B) zwischen zwei anderen benachbarten Addierschaltungen aufweist, so daß die beiden Grenzen zusammen mit den beiden Rand-Addierstufen (erste und letzte Stufe des Addierwerks) drei sich nicht überlappende, aneinander anschließende Abschnitte definieren, und daß die eine Teilschaltung (112) mit Torschaltungen in der Übertragungs-Ausgangsleitung (CZ) des ersten Abschnitts (203) und in der Übertrags-Eingangsleitung (CV) des zweiten Abschnitts (202) und die andere Teilschaltung mit Torschaltungen in der Übertrags-Ausgangsleitung (CY) des zweiten Abschnitts (202) und in der Übertrags-Eingangsleitung (CU) des dritten Abschnitts (Zone 1) verbunden ist, so daß die drei Abschnitte als separate Addierwerke benutzbar sind.
6. Addierwerk nach Anspruch 5, dadurch gekenn- ω zeichnet, daß die Teilschaltungen (UO, 112) mit einer Auswahlsteuerschaltung (113 und 114 oder 205) verbunden sind, die zur Operationssteuerschaltung des Addierwerks gehört und den Teilschaltungen Addierwerksabschnitt-Auswahlsteuersignale (AC. BC) zugeführt
7. Addierwerk nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß zur Ausführung von Subtraktionen ein Operandeneingang (210,226) mit einer Echt/Komplement-Schaltung (225) versehen ist, der in den Addierstufen (30 bis 37) zugeordnete Echt/Komplement-Stufen einzeln aktiviert, daß die Echt/Komplement-Stufen mit der Auswahlsteuerschaltung (205) verbunden sind und von dieser in Übereinstimmung mit den ausgewählten Addierwerksabschnitten (Zone 1 bis 3) zur echten oder komplementierten Zuführung der Operandenstellen aktiviti bar sind.
8. Addierwerk nach einem der Ansprüche 5 oder 6, dadurch gekennzeichnet, daß jede Teilschaltung (110, 112) einen Decodierer umfaßt, dem unterschiedliche Aiiswahlsteuersignale (ACO bis AC2 oder BCO bis BC2) zugeführt werden und der Grenzauswahlsignale (ABO bis ABl oder BBO bis BB 7) erzeugt, die den Addierstufen (30 bis 37) zugeordnet sind.
9. Addierwerk nach Anspruch 8, dadurch gekennzeichnet, daß jede der Teilschaltungen (110,112) mit einer Übertragsausgangs-Wählschaltung (162, 164) verbunden ist, die in Abhängigkeit vom jeweiligen Grenzauswahlsignal (ABO bis ABl, BBO bis BBl) von den Übertragsausgangsleitungen (K 0 bis K 7) der Addierstufen (30 bis 37) jeweils eine an die Übertragsausgangsleitung (CY, CZ) des von der betreffenden Teilschaltung ausgewählten und in Richtung der aufsteigenden Stellenfolge begrenzten Addierwerksabschnitt anschließen.
10. Addierwerk nach einem der Ansprüche 8 oder 9, dadurch gekennzeichnet, daß die Auswahlsteuersignale (ACO bis AC2, BCO bis BC2) zur Steuerung der beiden Teilschaltungen (110, 112) diesen so zugeordnet sind, daß die eine Teilschaltung immer eine Grenze (A) zwischen benachbarten Addierstufen (30 bis 37) definiert, die bezüglich der Gesamtheit aller Addierstufen immer auf der gleichen Seite zur weiteren Grenze (B) liegt, welche die andere Teilschaltung zwischen zwei anderen benachbarten Addierstufen definiert.
11. Addierwerk nach einem der Ansprüche 1 bis 10 mit einer Übertragsvorausschaltung, die zur weitgehend parallelen Übertragsverarbeitung aus den Operandenstellen Übertragserzeugungsfunktionen und Übertragsübertragungsfunktionen bildet, aus denen die den einzelnen Addierstufen zuzuleitenden Übertragssignale und der Ausgangsübertrag des Addierwerkes abgeleitet werden, dadurch gekennzeichnet, daß sich in den die Erzeugungsfunktion (C) und in den die Ausbreitungsfunktion (T) der Addierstufen (30 bis 37) führenden Leitungen Torschaltungen (130 bis 137 und 120 bis 127) befinden, die eine Auftrennung der Übertragsvorausschauschaltung in unabhängige Übertragsvorausschauschaltungen gestatten, und daß die Torschaltungen (130 bis 137 und 120 bis 127) mit der Auswahlschaltung (110,112) verbunden sind und von dieser betätigt werden.
12. Addierwerk nach Anspruch 11, dadurch gekennzeichnet, daß die Torschaltungen (120 bis 127) in den die Übertragungsfunktionen (T) führenden Leitungen und die Torschaltungen (130 bis 137) in den die Erzeugungsfunktionen (G) führenden
Leitungen angeordnet sind.
13. Addierwerk nach Anspruch 11 oder 12, dadurch gekennzeichnet, daß die die Erzeugungsfunktionen (C) führenden Leitungen zusätzlich über weitere Torschaltungen (145, 146) mit Übertragungseingangsleitungen (CV, CU) verbunden sind und gemeinsam mit den Torschaltungen (130 bis 137) von der Auswahlschaltung (110, 112) betätigt werden, um der betreffenden Leitung anstelle einer Übertragserzeugungsfunktion (G) einen bestimmten Eingangsübertrag zuzuführen.
14. Addierwc. <c nach Anspruch 7, dadurch gekennzeichnet, daß die Auswahlschaltung (110, 112) und die Stufen der Echt/Komplement-Schaltung (225) mit den Stufen eines Befehlsregisters (205) verbunden sind, das zum Programmsteuerwerk (203) einer Verarbeitungseinheit gehört, in welcher das Addierwerk verwendet wird, und daß die Steuerung der Auswahlschaltung und der Echt/Komplement-Schaltung von einem Programmspeicher (304) über das Befehlsregister erfolgt.
DE2616717A 1975-05-01 1976-04-15 Digitales Addierwerk Expired DE2616717C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/573,656 US3987291A (en) 1975-05-01 1975-05-01 Parallel digital arithmetic device having a variable number of independent arithmetic zones of variable width and location

Publications (2)

Publication Number Publication Date
DE2616717A1 DE2616717A1 (de) 1976-11-11
DE2616717C2 true DE2616717C2 (de) 1983-11-24

Family

ID=24292864

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2616717A Expired DE2616717C2 (de) 1975-05-01 1976-04-15 Digitales Addierwerk

Country Status (5)

Country Link
US (1) US3987291A (de)
JP (1) JPS589974B2 (de)
DE (1) DE2616717C2 (de)
FR (1) FR2309925A1 (de)
GB (1) GB1522045A (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3607045A1 (de) * 1985-03-04 1986-09-11 Raytheon Co., Lexington, Mass. Digitale addier- und subtrahierschaltung
DE10008774A1 (de) * 2000-02-24 2001-08-30 Patrick Freiberger Längenflexible Grundstruktur der Datenverarbeitung

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5378742A (en) * 1976-12-23 1978-07-12 Toshiba Corp Multiplication control system
JPS53123634A (en) * 1977-04-05 1978-10-28 Fujitsu Ltd Carry look ahead circuit
JPS5833572B2 (ja) * 1977-10-21 1983-07-20 株式会社東芝 情報処理方式
US4161784A (en) * 1978-01-05 1979-07-17 Honeywell Information Systems, Inc. Microprogrammable floating point arithmetic unit capable of performing arithmetic operations on long and short operands
US4418383A (en) * 1980-06-30 1983-11-29 International Business Machines Corporation Data flow component for processor and microprocessor systems
US4577282A (en) * 1982-02-22 1986-03-18 Texas Instruments Incorporated Microcomputer system for digital signal processing
JPS5953940A (ja) * 1982-09-21 1984-03-28 Nec Corp 倍精度演算回路
US4638449A (en) * 1983-06-15 1987-01-20 International Business Machines Corporation Multiplier architecture
US4677584A (en) * 1983-11-30 1987-06-30 Texas Instruments Incorporated Data processing system with an arithmetic logic unit having improved carry look ahead
US4700325A (en) * 1984-02-08 1987-10-13 Hewlett-Packard Company Binary tree calculations on monolithic integrated circuits
JPS61224037A (ja) * 1985-03-29 1986-10-04 Fujitsu Ltd 多ビツト入力演算素子を用いた演算方式
US4623982A (en) 1985-06-10 1986-11-18 Hewlett-Packard Company Conditional carry techniques for digital processors
US4764887A (en) * 1985-08-02 1988-08-16 Advanced Micro Devices, Inc. Carry-bypass arithmetic logic unit
US4737926A (en) * 1986-01-21 1988-04-12 Intel Corporation Optimally partitioned regenerative carry lookahead adder
DE3770353D1 (de) * 1986-07-11 1991-07-04 Siemens Ag Verfahren und anordnung zur verknuepfung von operanden variabler laenge in datenverarbeitungsanlagen.
US4914617A (en) * 1987-06-26 1990-04-03 International Business Machines Corporation High performance parallel binary byte adder
GB2210535B (en) * 1987-10-01 1991-12-04 Optical Tech Ltd Digital signal mixing apparatus
AU626847B2 (en) * 1987-11-16 1992-08-13 Intel Corporation Dual mode adder circuitry
US5047975A (en) * 1987-11-16 1991-09-10 Intel Corporation Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
GB8904392D0 (en) * 1989-02-27 1989-04-12 Ibm An arithmetic logic unit for a graphics processor
US5097436A (en) * 1990-01-09 1992-03-17 Digital Equipment Corporation High performance adder using carry predictions
JPH05233219A (ja) * 1992-02-18 1993-09-10 Nec Ic Microcomput Syst Ltd 半導体集積回路のキャリー先取り回路
US5375078A (en) * 1992-12-15 1994-12-20 International Business Machines Corporation Arithmetic unit for performing XY+B operation
US5390135A (en) * 1993-11-29 1995-02-14 Hewlett-Packard Parallel shift and add circuit and method
US5883824A (en) * 1993-11-29 1999-03-16 Hewlett-Packard Company Parallel adding and averaging circuit and method
US5619441A (en) * 1994-10-14 1997-04-08 International Business Machines Corporation High speed dynamic binary incrementer
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
GB2317469B (en) * 1996-09-23 2001-02-21 Advanced Risc Mach Ltd Data processing system register control
GB2317466B (en) * 1996-09-23 2000-11-08 Advanced Risc Mach Ltd Data processing condition code flags
GB2317464A (en) * 1996-09-23 1998-03-25 Advanced Risc Mach Ltd Register addressing in a data processing apparatus
GB2317465B (en) * 1996-09-23 2000-11-15 Advanced Risc Mach Ltd Data processing apparatus registers.
GB2317467B (en) * 1996-09-23 2000-11-01 Advanced Risc Mach Ltd Input operand control in data processing systems
US5784602A (en) * 1996-10-08 1998-07-21 Advanced Risc Machines Limited Method and apparatus for digital signal processing for integrated circuit architecture
US6003125A (en) * 1997-01-24 1999-12-14 Texas Instruments Incorporated High performance adder for multiple parallel add operations
KR100475012B1 (ko) * 1997-10-08 2005-04-14 삼성전자주식회사 그룹데이터에대한산술연산을수행하는64비트산술연산기
US6272514B1 (en) * 1997-11-18 2001-08-07 Intrinsity, Inc. Method and apparatus for interruption of carry propagation on partition boundaries
US6301600B1 (en) * 1997-11-18 2001-10-09 Intrinsity, Inc. Method and apparatus for dynamic partitionable saturating adder/subtractor
US6269387B1 (en) * 1997-12-11 2001-07-31 Intrinsity, Inc. Method and apparatus for 3-stage 32-bit adder/subtractor
US6134576A (en) * 1998-04-30 2000-10-17 Mentor Graphics Corporation Parallel adder with independent odd and even sum bit generation cells
DE19857255C1 (de) * 1998-12-11 2000-08-03 Hartmut B Brinkhus Selbstkonfigurierendes modulares Elektroniksystem, insbesondere Computersystem
US6539413B1 (en) * 2000-03-15 2003-03-25 Agere Systems Inc. Prefix tree adder with efficient sum generation
AU2002220883A1 (en) * 2000-12-04 2002-06-18 University College Cardiff Consultants Limited Carry lookahead adder for different data types
DE10215784A1 (de) * 2002-04-10 2003-10-30 Infineon Technologies Ag Rechenwerk und Verfahren zum Subtrahieren
US8427490B1 (en) 2004-05-14 2013-04-23 Nvidia Corporation Validating a graphics pipeline using pre-determined schedules
US8624906B2 (en) 2004-09-29 2014-01-07 Nvidia Corporation Method and system for non stalling pipeline instruction fetching from memory
US8725990B1 (en) 2004-11-15 2014-05-13 Nvidia Corporation Configurable SIMD engine with high, low and mixed precision modes
US9092170B1 (en) 2005-10-18 2015-07-28 Nvidia Corporation Method and system for implementing fragment operation processing across a graphics bus interconnect
US8683126B2 (en) * 2007-07-30 2014-03-25 Nvidia Corporation Optimal use of buffer space by a storage controller which writes retrieved data directly to a memory
US8411096B1 (en) 2007-08-15 2013-04-02 Nvidia Corporation Shader program instruction fetch
US8698819B1 (en) 2007-08-15 2014-04-15 Nvidia Corporation Software assisted shader merging
US8659601B1 (en) 2007-08-15 2014-02-25 Nvidia Corporation Program sequencer for generating indeterminant length shader programs for a graphics processor
US9024957B1 (en) 2007-08-15 2015-05-05 Nvidia Corporation Address independent shader program loading
US8780123B2 (en) * 2007-12-17 2014-07-15 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US9064333B2 (en) * 2007-12-17 2015-06-23 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8923385B2 (en) * 2008-05-01 2014-12-30 Nvidia Corporation Rewind-enabled hardware encoder
US8681861B2 (en) * 2008-05-01 2014-03-25 Nvidia Corporation Multistandard hardware video encoder
US8489851B2 (en) * 2008-12-11 2013-07-16 Nvidia Corporation Processing of read requests in a memory controller using pre-fetch mechanism
MY177563A (en) * 2010-04-15 2020-09-20 Univ Malaya Parallel self-timed adder (pasta)
JP2015143949A (ja) * 2014-01-31 2015-08-06 富士通株式会社 演算プログラム、演算装置および演算方法
RU2635247C1 (ru) * 2016-12-21 2017-11-09 федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" Параллельный сумматор

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3188453A (en) * 1961-12-14 1965-06-08 Bell Telephone Labor Inc Modular carry generating circuits
US3571803A (en) * 1968-06-04 1971-03-23 Bell Telephone Labor Inc Arithmetic unit for data processing systems
GB1245441A (en) * 1968-08-27 1971-09-08 Int Computers Ltd Improvements in or relating to adders operating on variable fields within words
US3751650A (en) * 1971-06-28 1973-08-07 Burroughs Corp Variable length arithmetic unit
JPS5219745B2 (de) * 1971-12-23 1977-05-30

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NICHTS-ERMITTELT

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3607045A1 (de) * 1985-03-04 1986-09-11 Raytheon Co., Lexington, Mass. Digitale addier- und subtrahierschaltung
DE10008774A1 (de) * 2000-02-24 2001-08-30 Patrick Freiberger Längenflexible Grundstruktur der Datenverarbeitung

Also Published As

Publication number Publication date
JPS589974B2 (ja) 1983-02-23
FR2309925B1 (de) 1979-09-21
JPS51134539A (en) 1976-11-22
GB1522045A (en) 1978-08-23
FR2309925A1 (fr) 1976-11-26
US3987291A (en) 1976-10-19
DE2616717A1 (de) 1976-11-11

Similar Documents

Publication Publication Date Title
DE2616717C2 (de) Digitales Addierwerk
DE2626432C2 (de) Arithmetische Einheit für automatische Rechengeräte
DE2421130C2 (de)
DE2230188C2 (de) Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
DE3229452A1 (de) Arithmetiklogikeinheit
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE2063199B2 (de) Einrichtung zur Ausführung logischer Funktionen
DE2405858A1 (de) Normalisierendes verschiebezaehlernetzwerk
DE69229325T2 (de) Schaltung zur Detektierung der Position eines äussersten &#34;1&#34;-Bits in eine Binärzahl
DE69523490T2 (de) Maskengenerator
DE19628039B4 (de) Speicheradressen-Steuerschaltung
DE2705989C2 (de) Schaltungsanordnung zum parallelen Addieren oder Subtrahieren von mindestens zwei Eingangszahlen
DE2830334A1 (de) Multipliziereinrichtung
DE3688434T2 (de) Schneller bcd/binaer-addierer.
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren
DE3785467T2 (de) Programmierbarer gesteuerter verschiebemechanismus in einer programmierbaren einheit mit variablen datenwegbreiten.
EP0193711B1 (de) Schaltungsanordnung zur Funktionsüberwachung eines arithmetische Operationen ausführenden Rechenwerkes anhand von Paritätsbits
DE10206830B4 (de) Verfahren und Anordnung zur Zusammenführung von Daten aus parallelen Datenpfaden
DE3116659C1 (de) Schaltungsanordnung fuer eine aus gleichartigen Halbleiterbausteinen aufgebaute Iogische Verknuepfungsanordnung
DE3134057A1 (de) Datenverarbeitungsanlage
WO1990002994A1 (de) Schaltungsanordnung zur addition oder subtraktion von im bcd-code oder dual-code codierten operanden
DE2708637C3 (de) Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee