DE2616717A1 - Digitales addierwerk - Google Patents

Digitales addierwerk

Info

Publication number
DE2616717A1
DE2616717A1 DE19762616717 DE2616717A DE2616717A1 DE 2616717 A1 DE2616717 A1 DE 2616717A1 DE 19762616717 DE19762616717 DE 19762616717 DE 2616717 A DE2616717 A DE 2616717A DE 2616717 A1 DE2616717 A1 DE 2616717A1
Authority
DE
Germany
Prior art keywords
adder
carry
circuit
stages
byte
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.)
Granted
Application number
DE19762616717
Other languages
English (en)
Other versions
DE2616717C2 (de
Inventor
David Norman Gooding
Everett Montague 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • 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)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)
  • Executing Machine-Instructions (AREA)

Description

Böblingen, den 1. April 1976 km/se
Anmelderin: International Business Machines
Corporation, Armonk, N. Y. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: EN 974 035
Digitales Addierwerk
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 eingerichtet. 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 Verarbeitungseinheit ab, in welcher das Addierwerk verwendet v/erden 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, v/erden zur Ausführung einer Additionsoperation jeweils mehrere Additionsdurchläufe benötigt.
Es ist erwünscht, die Arbeitsgeschwindigkeit der Verarbeitungseinheiten von elektronischen Rechenanlagen zu erhöhen. Was das Addierwerk betrifft, so kann bei einer Verarbeitung von Operanden
609846/0660
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. Stellenausrichtung 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 diese Nachteile vermeidet und 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;
Fign. 1 bis 5 schematische Darstellungen zur allgemeinen Erläuterung der Erfindung,
EN 974 035 ^λλλ/λ,««««
261671?
Fig. 6 ein Blockschaltbild eines mehrere Bytestellen
umfassenden Übertragsvorausschau-Addierers, der eine volle Übertragungsvorausschau ohne Gruppierung der Bytestufenerzeugungs- und Übertragungs funktionen verwendet,
Fig. 7 eine Tabelle zur Erklärung der übertragsvoraus-
schau-Funktionen des Addierers von Fig. 6,
Fig. 8 ein allgemeines Blockschaltbild eines übertragsvor-
ausschau-Addierers für eine Operandenlänge von einem Byte,
Fig. 9 ein detailliertes Blockschaltbild des in Fig.
gezeigten Addierers, e'er eine volle fTbertragsvorausschau ohne Gruppierung der Bitstufenerzeugungs- und übertragungsfunktionen verwendet,
Fig. 10 einen Teil der Bitpositionen des Addierers von
Fig. 9 in detaillierter Blockdarstellung,
Fig. 11 ein Blockschaltbild einer anderen Ausführungsform des Addierers von Fig. 8,
Fig. 12 eine Tabelle zur Erläuterung des Aufbaus des
Addierers von Fig. 11,
Fig. 13 ein Blockschaltbild einer anderen Ausfuhrungsform
des Mehr-Byte-Addierers von Fig. 6,
Fign. 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,
en 974 035 B098A6/06ßn
261671?
Fig. 18 eine schematische Schaltung zur Erzeugung von
Grenzsteuersignalen für den in Fig. 17 gezeigten Addierer,
Fign. 19 bis 26 Blockschaltbilder von Übertragstrennschaltungen,
wie sie im Addierer von Fig. 17 verwendbar sind,
Fign. 27 bis 34 Blockschaltbilder von Übertragsersetzungsschaltungen, wie sie im Addierer der Fign. 17 verwendbar sind,
Fig. 35 ein Blockschaltbild einer Übertragsschaltung
des Addierers von Fig. 17,
Fign, 36 bis 39 Blockschaltbilder von im Addierer von Fig, 17
verwendbaren Gruppierungsschaltungen für die übertragserzeugungs- und -übertragungssignale,
Fign. 40 bis 47 Blockschaltbilder der Übertragsschaltungen
von Fig. 17,
Fig, 48 und 49 Blockschaltbilder der Übertragsausgangswähler
von Fig. 17,
Fig. 50 ein Blockschaltbild einer Fehleranzeigeeinheit
zur Verwendung im Addierer von Fig. 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 binären Stellen, dia als eine Einheit bearbeitet werden und kürzer sind als ein Computerwort. Als Beispiel wird angenommen, daß jedes Byte aus acht binären Datenbits und einem Paritätsprüfbit besteht. Das Paritäts-
EN 974 035 609846/0^80
prü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 Fig. 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
so
rechts nach linkSj, daß Byte 0 das werthöchste Byte und Byte 7 das wertniedrigste Byte ist. Jede der Bytestufen 11 bis 18 enthält acht Binärstufen oder Bitstufen und kann somit eine erste acht Bit große Zahl (z.B. A3 für Byte 3) zu einer zweiten acht Bit großen Zahl (z.B. B3 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 Datenflußbreite des Addierers beträgt somit acht Bytes oder 64 Bits.
EN 974 035 BO 9 B ^R /0^6 Π
— 6 —
Der untere Teil der Fig. 1 zeigt die Möglichkeit des Addierers TO/ 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 EKtremen 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 CU-ü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.
EN 974 035 6 0 9 B U B / 0 R 6 0
Aus demselben Grund erfolgt die CY-Verbindung der externen übertragsausgangsleitung zu der Stellenstufe, die der wertniederen Seite der Grenze A am nächsten liegt; und die CZ-Verbindung der externen tibertragsausgangsleitung 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.
Fig. 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 Stelle 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 und 3 verschwinden.
Die Fign. 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 A-Stelle 4 und die Grenze B auf die B-Stelle 7 gesetzt. Dadurch belegt die Zone 1 die linke Hälfte des Addierers 10 und die Zone 2 die rechte Hälfte, In Fig. 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 Fign. 1 bis 4 sollten sich die verschiedenen Zonen niemals überlappen. Das erreicht man dadurch, daß man die Grenze A immer links von der Grenze B hält. Für das zu beschreibende Beispiel soll die Grenze A auch nicht mit der Grenze B zusammenfallen, die Zone 2 aber immer vorhanden sein. Die Zonen und 3 können jedoch abhängig von der jeweiligen Anwendung vorhanden sein oder nicht,
Fig. 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 ausge-EN 974 035 6098 4 6 /0$6G
schlossen werden, bevor sie in den Addierer jslangen. Für das letzte oder Exponentenfcsispiel würde das s.2. bedeuten, daß das Datenfeld um sieben Bytes nach rechts verschoben werden muß, bevor es in den Addierer eingegeben werden kann.
Zur Vermeidung dieser Ausschließoperation seist man die Grenzen A und B so, daß sie mit den Randsteilen des zu behandelnden Datenfeldes zusammenfallen und die Operations-zone 2 ein unabhängiger Addierer wird. Für den Fall der Verarbeitung einer expliziten Konstanten würde man beispielsweise die Grense A auf die A-Stelle
5 und die Grenze B auf die E-Steile 6 setzens Die CV-ubertragseingangsverbindung würde ΰεηη den externen Eingangsübertrag auf Byte
6 geben und die CY-übsrtragsausgangsverbinäung würde den externen Übertragsausgang vom Byte 5 liefern. Auf diese Weise ist keine Verschiebung des Datenfeldes erforderlich.
Für einige Fälle, wie Sinselwort-links, Einaelwort-rechts oder Exponentenänderung, wo eins Randsteile des Datenfeldes mit 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 mit den Fign. 3 und 4 betrachtet wurde. Im Exponentenfall beispielsweise würde die A-Grenze auf die A-Stelle 0 und die GrenzeB für die B-Stelle 0 gesetzt und das Exponentenfeld durch die Zone 2 verarbeitet. Andererseits könnte die Grenze A auf die A-Stelle 1 und die Grenze B auf die B-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,
EN 974 035 609846/0660
261S717
Wie in den Beispielen i? "ig ^ 5 ge*·-: igt istf kann el sr ctargestellte Addierer als ein Zonenaaciierer mit. veränderlicher Breite oder veränderlicher Zonenlags caer beiäes; bc-r^sben werden. Der Addierer kann auch, wie oft erwimselvi, gleich s? si tier unabhängige Additionen oder Subtraktionen mit sehr als einen; Z-alileapaar ausführen, wobei die Subtraktion jeweils clutch Eoispl-isieii^is^siig eines der beiden Operanden erfolgt? be":-: eie de-rs Midi&ror sugeführt wird. Ein erstes Zahlenpaar kan:: i:.-sispieis?7slg"s fa^'fc die Zone 1 addiert werden,, während gleicha*irig is* der 3c>r»s 2 ein zweites Zahlenpaar addiert wird nnäe sow-it &K^ünseiHfe- .\ίί -one 3 noch ein drittes Paar addiert weröes kci:;:;.. ^^Eöfe. β2ΐ-'.;:>^ώ:^ϋΕ.ά® EanpleEientierschaitungen (ein Beispiel C-^J^v: "-"iirci i.";-iV"-'3L: b3Seinriebe·;} kai'ii auch gleichzeitig in <siasr Γ:""·Γ:6 «5di-~i:t; -ja.^ i»i einer aziäsreii subtrahiert werden. Die gleichssi'c;"-""^ ^usftihEiiiic; T'Si'scicisclesiss; Operationen in verschiedenen S oner» i?r. ir>ögliah.-: 7.'?siX die S on en völlig unabhängig voneinander arbsit.sn c
Paralleladdierer könne:', nijh. dsr i.:c-:,- eisE" üfcsrtragsi/erarbeitung in zwei Hauptkategorisn iHiterteilt lierden«, In die eine Kategorie gehören die sogenannter: Übsrt,ragsfii2rchlaufaädierer und in die andere die übertragsvorausschauadclieresTc In einerf: Durchlaufaddierer bildet die gesamte Übertragsschaltung eine serielle Reihe, und die Übertragssignale iiiüspsn die Reihe rron einer Stellenstufe zur nächsten durchlaufen. In einem "/osaussshauaddierer ist andererseits der Übertragseingang für eine Stufe unabhängig vom Übertragsausgang der vorhsrgshsndsn Stufe. Statt dessen werden alle Übertragseingangssignale gleichzeitig durch die Übertragslogik-Schaltung bestimmt, die parallel zu dem die Suinmenbildung ausführender« 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 Aus-
EN 974 035 pOSfUR/ORfin
führungsbeispiel ein Paralleladdierer vom Übertragsvorausschautyp gewählt.
Figc 6 zeigt im einzelnen die Konstruktion eines mehrere Byte großen parallelen Addierers des Übertragsvorausschautyps. Der in Fig. 6 gezeigte Addierer arbeitet mit voller Übertragsvorausschau ohne Bytestufengruppierung der Erzeugungs- und übertragungsfunktionen. Der Addierer in Fig. 6 enthält acht Abschnitte 20 bis 27 von Bytegrcß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. Je·::= Übertrags schaltung erzeugt das Übertragseingangssignal für ien Radierer im nächsthöheren Abschnitt. Die. Reihenfolge steigt, wie schon erwähnt, von rechts nach links, so daß der Abschnitt der höchste Abschnitt in der Reihenfolge und der Abschnitt 27 der niedrigste ist. Die Ubertragsschaltung 47 erzeugt also das übertrags-üingangssignal C6 für den Addierer 36 im Abschnitt 26, die ubertragsschaltung 46 erzeugt das Übertragseingangssignal C5 für eier* Addierer 35 im Abschnitt 25 usw.
Jecer eier Ί-ßyte großen Addierer 30 bis 37 addiert eine erste acht Bit große Zahl (.z.B, A5 für Addierer 35) zu einer zweiten acnt Bit großen Zahl (z.B. B5 für Addierer 35) und erzeugt eine resultierende acht Bit große Zahl (z.B. S5 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 (6-ϊ 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-Übertragserζeugungssignai und ein Bytestufen-Ubertragsübertragungssignal. Die Ubertrags-Erζeugungssignale sind bezeichnet mit GO bis Gl, während die übertragsübertragungssignale mit TO bis T7 bezeichnet sind.
EN 974 035 _ _ Ä . _ _ ^
Jedes dieser Signale ist ein binäres Signal, dessen Wert entweder O 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 öder Fehlens eines übertragseingangssignales 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 f 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 CI 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 η-ten Byteaddierer (ausgenommen der wertniederste Byteaddierer oder der Addierer für Byte 7) durch folgenden logischen Ausdruck bestimmt:
CN = G(N+1) + T(N+1) .C(N+1) (1)
worin CN der Übertragseingang zur η-ten Stufe, G(N+1) 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 C(N+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.CI (2)
EN 974 O35 609£u6/ösen
261671?
worin G7 und T7 das Erzeugungssignal und das Übertragungssignal für das vorhergehende Byte 7 (Addierer 37) und CI ein externes Ubertragseingangssignal zum Byte 7-Addierer 37 sind. Dieser Ausdruck besagt, daß zwei Bedingungen vorliegen, die einen Übertragseingang zum Byte 6-Addierer auslösen. Insbesondere gibt G7 an, daß ein Übertragseingang C6 vorliegt, wenn Byte 7-Addierer 37 intern ein Übertragssignal erzeugt. Der Ausdruck T7*CI besagt, daß ein Übertragseingang C6 auch vorliegt, wenn der Byte 7-Addierer den Übertragsübertragungszustand einnimmt und ein Übertragseingang CI zum Byte 7-Addierer erfolgt. Die Übertragsschaltung 47, die das Signal C6 erzeugt, arbeitet nach Gleichung 2; sie empfängt die Signale G7, T7 und CI und erzeugt das Übertragssignal C6.
Das Übertragseingangssignai C5 für Byte 5-Addierer 35 ist durch den folgenden logischen Ausdruck bestimmt:
C5 = G6 + T6-C6 (3)
worin G6 und T6 das Erzeugungs- und Übertragungssignal für Byte 6-Addierer und C6 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 + T6-G7 + T6«T7*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 C5 auslösen können. Eine dieser Bedingungen ist die interne Erzeugung eines Übertragssignales (G6 = 1) im vorhergehenden Byte 6-Addierer. Die zweite Bedingung ist ein Übertrags-Übertragungszustand (T6 = 1) im Byte 6-Addierer und die interne Erzeugung eines Übertragssignales (G7 = 1) in dem davor liegenden Addierer, nämlich dem Byte 7-Addierer. Im dritten Fall befinden sich die beiden vorhergehenden niederen Stufen in
EN 974 035
9^46/0-60
- 1 ■
einem übertrags-übsrtr":-:--angs2ust?.ni. (TS = 1 und T7 = 1) und es liegt ein externer Übsrcragseingang vor (CI - 1) .
In ähnlicher Weise Ist das tbert;:r.-gs=-Sing?.rLgssignal CA für Byte 4-Addierer 34 beschrieben durch folgenden logischen Ausdruck:
1^ 5e C c
(5)
Setzt man den Wert vor 5 ein und erweitert d. druck für C4:
".?s der -'Sl-siehirng 4 in die Gleichung drucks j, ;a ergibt sich folgender aus
TS ° G?
(6)
Die Gleichuiicj 6 beschreibt ciis clurch die Übertrags schaltung 4 ausgeführte logische Fun!:.v.ica zur Sr^eugunq des übertragoe signales C4 für den Byb·^ 4-Äddiersrc
Die logischen Beziehυηςϊ-Ξ-;Λ für all di~ vsrschiedenen ^berg eingarigssignale C6 bis 20 und das Istzts äbertragsanagangssignal CX sind in der Fig. 7 aufgeführte Zur besseren Übersicht sind die zu jedem Erzeugungssiansl gehorendsii übertragungssignale in Klammern gesetzte In diesem Fall bezeichnet die hintere abschließende Klammer auch die logische UHD-Funktion« Die Ausdrücke für die Übertragseingänge C3,7 C2 usw. erhält man durch Fortführung des oben für die übertragseingänge C6, C5 und C4 beschriebenen Prozesses. Der logische Ausdruck für C3 beschreibt die durch die Übertragsschaltung 44 ausgeführte logische Funktion, der Ausdruck für C2 beschreibt die für die Übertragsschaltung ausgeführt logische Funktion usw.
Wie aus Fig. 7 zu ersehen ist, wird die Übertragslogik beim Addierer von Fig. 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 3rzeugnnqr>- und ü^ertraqungssiqnale
EN 97 4 0.J!
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 übertragungssignale von allen vorhergehenden wertniederen Abschnitten sowie den Übertragseingang CI.
Ein Übertragsvorausschauaddierer, wie er in Fig. 6 gezeigt ist, ist schneller als ein Durchlaufaddierer, weil alle Übertragssignale untereinander gleichzeitig sowie gleichzeitig mit der Durchführung der Additionen in den verschiedenen Byteaddiersrn 30 bis 37 erzeugt werden. So braucht ein werthoher Addierer nicht auf einen Übertrag zu warten, der die ganze Kette durchläuft un·'. vci: irgend einer wertniederen Stufe zu Ihm kommt.
Das Übsrtrsgsei-igangssignEl CI ist gleich Ci1!, wenn die Grenze B nicht auf der B-Stelle 7 steht oder ist andererseits CV, wenn die Grenze B auf der B-Stelle 7 steht.
Jed-sr asr Byteaddierer 30 bis 37 der Fig. 6 kann bekanntlich ZV7S-.-1. acl-t Bit große Zahlen addieren. Jeder dieser in Fig. 8 gessigtsn Byte IT-Addierer addiert somit eine erste acht Bit e:J5 Ξ ah I
Ali = (a0, al, a2, ..., al) (J)
zu einer zweiten acht Bit großen Zahl
BN = (b0, b1, b2, ..., b7) (3)
und erssugt eine resultierende acht Bit große Summa
SN = (s0, si, s2, ..., s7) (95
worin die kleinen Buchstaben a, b und s die binären Stellen der entsprechenden Zahlen angeben.
Fig. 9 zeigt ein Beispiel für den internen Aufbau des 1-Byte-
·'·*■!' li~- β 0 9 ft U R / π fi η
Addierers der Fig. 8. Nach Darstellung in Fig. 9 handelt es sich auch hier um einen Pralleladdierer vom Übertragsvorausschautyp. Mit Ausnahme der Ausdrücke GN und TN ist er analog dem in Fig. 6 gezeigten Mehrbyteaddierer, arbeitet jedoch auf Bitstufe und nicht auf Bytestufe. Die Kleinbuchstaben g, t und c in Fig. 9 bezeichnen die Erzeugungs-, übertragungs- und Übertragseingangssignale für die verschiedenen Bits. Der Addierer in Fig. 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 die entsprechenden Bytestufen-Übertragseingangssignale CO bis C6 in Fig. 7f 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-t1«t2-t3-t4«t5-t6-t7 (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 (TN = 1), wenn alle acht Bit-Addierer in übertragsübertragungszustand stehen.
en 974 035 6(19846/0660
Fig. 10 zeigt im einzelnen den Aufbau der drei äußersten rechten oder wertniedersten Bitpositionen 55 bis 57 des Addierers von Fig. 9. Die Summenzahl für die n-te Stufe in einem Mehrbitaddierer ist bekanntlich bestimmt durch den logischen Ausdruck:
sn
= anT bnVcn (11)
worin das Zeichen? die logische Antivalenzfunktion bezeichnet. Für Bit 6-Addierer 66 beispielsweise wird die Beziehung der Gleichung 11 ausgeführt durch die Antivalenzglieder 80 und
Der allgemeine Ausdruck für das Übertrags-Erzeugungssignal für das n-te Bit ist
gn = an«bn (12)
wobei das Punktzeichen die logische üND-Funktion bezeichnet. Für den Bit 6-Addierer 66 wird diese Beziehung der Gleichung ausgeführt durch das UND-Glied 82. Somit erzeugt die Bitstelle 6 ein Übertrags-Erzeugungssignal (g6 = 1), wenn beide hereinkommenden Stellen a6 und b6 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-übertragseingangssignales erzeugt.
Der allgemeine Ausdruck für das Übertrags-Übertragungssignal für die n-te Stufe ist:
tn = an + fon (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ö oder bö den Wert 1 einnimmt, liegt auch das Übsr-
EN 974 035
609846/0660
tragungssignal T6 auf Eins-Potential, was besagt, daß der Bit 6-Addierer normalerweise einen Ausgangsübertrag erzeugen würde, wenn er einen ubertragseingang empfängt. Die Tatsache, daß T6 auch auf 1 steht, wenn a6 und b6 auf 1 stehen, stellt eine harmlose Abweichung von der strengen Logik dar, weil ein c5-Eingangsübertrag in jedem Fall durch das g6-Erzeugungssignal erzeugt würde und die Verdoppelung nicht nachteilig ist.
Der allgemeine Ausdruck für das übertragseingangssiqnal CN zum η-ten Bitaddierer ist:
cn = g(n+1) + t(n+1)*c(n+1) (14)
worin g(n+1) und t(n+1) sowie c(n+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 c5 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-t7.CN (17)
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.
EN 974 035
609fU6/0B60
2816717
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 Erzeugungs- und Übertragungssignalen der einzelnen Bitstufe analog sind. Die Bytestufenerzeugungs- und -Übertragungssignale GO bis G7 und TO bis T7 stellen eine solche Gruppierung dar. Zur weiteren Reduzierung des Schaltungsaufwands wird die Gruppierungstechnik auch innerhalb des in Fig. 9 gezeigten 1-Byte-Addierers angewandt.
In Fig, 11 ist eine modifizierte Schaltungsform für den in Fig. 9 gezeigten 1-Byte-Addierer dargestellt, die die Gruppierungstechnik für einige Bitstufen-Erzeugungsfunktionen und Übertragungsfunktionen anwendet. Die Bitaddierer 60 bis 67 und die beiden wertniederen Übertragsschaltungen 76 und 77 entsprechen den Schaltungsteilen gleicher Nummerierung in Fig. 10. Eine Gruppenschaltung 90 faßt die Erzeugungsfunktion g5 bis g7 und die Übertragungsfunktionen t5 bis t7 zu einem Gruppenerzeugungssignal g57 und einem Gruppenübertragungssignal t57 zusammen. Die Art dieser Gruppierung ist aus den Zeilen g57 und t57 in Fig. ersichtlich. Diese Gruppensignale werden durch die Übertragsschaltung 95 zur Erzeugung des übertragseingangssignales 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 g57 und t57 in die neue Beziehung für c4 einsetzt, die in Fig. 12 gezeigt ist. Der modifizierte Aufbau der überjragsschaltungen 93,und 94 für c2 und c3 ist in der Tabelle der Fig. 12 angegeben.
Die zweite Gruppenschaltung 89 übernimmt dieselbe Gruppierung für die Erzeugungssignale g2 bis g4 und für die übertragungs-
EN 974 035
609846/0660
Signale t2 bis t4. Die logischen Ausdrücke für die resultierenden Gruppensignale g24 und t24 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 Fig. 11 dar, während das Signal TN die Gruppenübertragungsfunktion für diesen Addierer darstellt. Das Signal KN stellt den Ausgangsübertrag für den Addierer von Fig. 11 dar. Der Zweck des Signales KN wird später erklärt.
Fig. 13 zeigt eine modifizierte Form des Mehrbitaddierers von Fig. 6, die mit derselben Gruppierung arbeitet, wie sie in Fig. 11 für den Ein-Byte-Addlerer 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 CI 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 CI 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 Fign. 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
EN974035 .609846/0660
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-Übertragungssignales, das durch den Byteaddierer auf der wertniederen rechten Seite unmittelbar vor der Grenze erzeugt wird und (2) Einsetzen eines externen Übertrags-Eingangssignales für das Übertrags-Erzeugungssignal, das durch letzteren Byteaddierer erzeugt wurde.
Um z.B. die Grenze A zwischen Byte 2 und Byte 3 zu legen, muß das Übertragungssignal T3 vom 3-Byte-Addierer abgeschaltet werden, so daß die Leitung T3 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 G3. 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 Fig. 7 benutzt und hierin T3 auf 0 setzt und für G3 den Wert CU einsetzt. Dadurch erhält man folgende Ausdrücke für die Übertrags-Eingangssignale C2, C1 und COt
C2 = CU (18)
C1 = G2 + G2-CU (19)
C0 = G1 + T1-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.
EN974035 609846/OfiSO
Derselbe Beweis kann angetreten werden durch Verwendung der grup- ■ pierten Byte-Übertragsbeziehungen von Fig. 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. Um die Grenze B 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-Eingangssignal CV für die Grenze B einsetzen für das Erzeugungssignal f das durch den Byteaddierer erzeugt wurde, der auf der wertniederen Seite unmittelbar neben der gewünschten Grenzstelle liegt.
Die Tabellen in den Fign. 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 B 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 T6 auf 0 gesetzt werden und G6 durch das externe Übertrags-Eingangssignal CU ersetzt werden. Wie durch die Skalen der Grenzen A und B unten in Fig, 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- und Übertragungs-Signalleitungen abzuschalten, die von dem Byteaddierer unmittelbar neben der Grenze auf der wertniederen
EN 974 035 B09RAP /0^60
" 22 " 261671?
Seite kommen. Ein Addierer ohne externe Übertrags-Eingangsleitung ist jedoch in der arithmetisch-logischen Einheit eines Digitalrechners nicht einsetzbar, und daher wird eine derartige Anwendung hier nicht weiter beschrieben.
Im Funktionsblockdiagramm der Fig. 17 ist ein paralleler binärer Mehrbyteaddierer vom Übertragsvorausschautyp dargestellt, der dem von Fig. 3 ähnlich ist, jedoch zusätzlich eine Schaltung zur Bildung der beweglichen Grenzen enthält. Der in Fig. 17 gezeigte Addierer enthält eine mehrstellige parallele Addierschaltung mit einer Anzahl von Byte-Addierstufen 30 bis 37, von denen jede so aufgebaut ist wie der in Fig. 11 gezeigte Ein-Byte-Addierer. Da die Addierer 30 bis 37 je acht binäre Bitstufen enthalten, hat der in Fig. 17 gezeigte Addierer insgesamt 64 binäre Binärstellen,
Der in Fig. 17 gezeigte Binäraddierer enthält eine Schaltungseinheit zur Erzeugung und Verarbeitung von Übertrags-Eingangs-Signalen 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 Fig. 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 und Bytestufen-Gruppenschaltungen 108 und 109 verbunden sind (Fig. 17). Diese Übertrags-Vorausschauschaltung 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 Fig. 17.
Das in Fig. 17 gezeigte Ausführungsbeispiel kann man auf zweierlei Art betrachten, nämlich von der Bitebene und von der Byte-EN 974 035
609846/0660
_ 23 _ 261671?
ebene. 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 Addiererstufe 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 Fig. 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 Addiererstufe bildet.
Der in Fig. 17 gezeigte Addierer enthält eine Schaltung, mit der für jede Addiererstufe ein übertrags-Erzeugungssignal und ein tibertrags-übertragungssignal gebildet wird. Auf Bitbasis umfaßt jeder der Bitaddierer 60 bis 67 (Fig. 11) Schaltungen zur Bildung der Signale gO bis g7 und to bis t7. Zum Beispiel erzeugt das UND-Glied 82 von Fig. 10 das Signal g6 und das ODER-Glied 83 das Signal t6. Die äquivalenten Schaltungen auf Bytebasis sind die Erzeugungsschaltungen 96 und die übertragungsschaltungen 97 in Fig. 11, die sich in jedem der Addierer 30 bis 37 der Fig. 17 befinden. Diese Schaltungen 96 und 97 bilden die GN- und TN-Verknüpfungen, die in Fig. 12 festgelegt sind. Auf Bytebasis sind somit die Obertrags-Erzeugungssignale dargestellt durch die Signale GO bis G7 und die übertrags-übertragungssignale durch die Signale TO bis T7.
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,
EN 974 035 609846/0660
Auf Bitbasis enthält die übertrags-Vorausschauschaltung Übertragsschaltungen 76, 77 und 91 bis 95 und Gruppenschaltungen 89 und 90 (Fig. 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 Addierer. 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 Grenzenwahlschaltung zum Verändern der Lage der Grenze A enthält einen Grenzdecodierer 110, der ein codiertes 3-Bit-Grenzsteuersignal AC empfängt, dessen einzelne Bits bezeichnet sind mit ACO, AC1 und AC2. Der Decodierer 110 decodiert dieses Signal und erregt daraufhin eine bestimmte von acht möglichen Ausgangsleitungen ABO bis AB7. Welche Ausgangsleitung jeweils erregt bzw. auf den binären Wert 1 gesetzt wird, hängt von der Codierung des Eingangssignales ab. Jede Ausgangsleitung ABO bis AB7 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 AB1, wenn die Grenze A auf die Stelle 1 gesetzt werden soll usw. Die Beziehungen zwischen den Codewerten des Steuersignales AC, den Decodierer-Ausgangsleitungen ABO bis AB7 und den Lagen für die Grenze A werden in den ersten beiden Spalten auf der linken Seite in der Tabelle der Fig. 15 beschrieben. Die zweite Spalte gibt die verschiedenen möglichen Codewerte
EN 974 035
609846/0660
für das Grenzsteuersignal AC an, während die erste Spalte die entsprechenden Grenzlagen und somit die Decodierer-Ausgangsleitungen angibt. Wenn die Codierung des Grenzsteuersignales AC beispielsweise 110 ist, dann ist die Stelle 6 für die Grenze A gewählt und die Decodierer-Ausgangsleitung AB6 wird erregt.
Die GrenzenwahIschaltung zum Verändern der Lage der Grenze B enthält einen Grenzdecodierer 112, der ein codiertes 3-Bit-Grenzsteuersignal BC empfängt, dessen einzelne Bits bezeichnet sind mit BCO, BC1 und BC2. Der Decodierer 112 decodiert das Steuersignal BC und erregt eine bestimmte seiner acht möglichen Ausgangsleitungen BBO bis BB7. Jede dieser Ausgangsleitungen entspricht einer anderen von acht möglichen B-Grenzstellen. BBO 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 BC-Steuersignalcodes, den verschiedenen Lagen der Grenze B und den Ausgangsleitungen des Decodierers 112 sind in den ersten beiden Spalten der Fig. 16 beschrieben.
Der A-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 A-Stelle 0 eine +ABO-Leitung und eine -ABO-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 Signal binär 0 und umgekehrt. Der einfacheren Darstellung halber sind nur die acht echten Leitungen in Fig. 17 gezeigt. Entsprechendes gilt für den Decodierer 112 für die Grenze B.
Fig. 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 Bi-
EN 974 035
närstufen, dargestellt durch Schalter 113a, 113b und 113c,. erzeugt die einzelnen Bitsignale ACO, AC1 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, 114b und 114c, erzeugt die einzelnen Bitsignale BCO, BC1 und BC2, 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 Mikroinstrunktionen 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 Addiererzone 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 TO bis T7 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 127 sind in den Fign. 19 bis 26 dargestellt. Danach kann jeder dieser Schaltkreise die Form eines UND-Gliedes haben. Der Zustand eines jeden Schaltkreises wird gesteuert durch Verbinden eines zweiten Einganges mit der Komplement-Grenzsteuer leitung ABO bis AB7 vom A-Grenzdecodierer 110 und durch Verbinden eines dritten Einganges mit einer der Komplement-Grenzsteuer leitungen BBO bis BB7 vom B-Grenzdecodierer 112. Eine Ausnahme bildet der Schaltkreis 120 für den Byte-O-Addierer, der nach Darstellung in Fig. 19 nur die Komplement-Grenzsteuerlei-
EN 974 035
tung 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 oder 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 -AB2-Komplementleitung vom Decodierer 110 auf 0 und der Schaltkreis 122 wird abgeschaltet, wenn die Grenze A unmittelbar links vom Byte 2-Addierer 32 an der Wertstelle 2 steht. In ähnlicher Weise geht das -BB1-Komplementsignal vom B-Decodierer 122 auf 0 und der Schaltkreis 122 wird abgeschaltet, wenn die Grenze B an der Wertstelle 1 steht. Für andere Stellen der Grenzen A und B (A ungleich 2 und B ungleich 1) stehen die Komplementsignale -AB2 und -BB1 auf binär 1 und der Schaltkreis 122 wird so eingeschaltet, daß das übertrags-Übertragungssignal T2 weitergeleitet 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 T2 auf O1 ungeachtet des Signalzustands am Eingang T2, 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 Modifizxerungsschaltung enthält Schaltungen 130 bis 137, die entsprechend mit den Leitungen GO bis G7 der Addierer 30 bis 37 gekoppelt sind und die im einzelnen in den Fign. 27 bis 34 gezeigt sind.
EN 974 035
Der Addierer in Fig. 17 enthält drei externe Übertrags-Eingangsleitungen 140, 141 und 142 für die externen Übertrags-Eingangssignale CU, CV und CW der Zonen 1, 2 und 3. Nach Darstellung in Fig. 1 gehört der CU-Ü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-Eingangsleitungen 140 und 141 für die Signale CU und CV zu jeder der Schaltungen 130 bis 137 mit Ausnahme der Leitung 140, die zur werthöchsten Schaltung 130 läuft.
Nach der Darstellung in den Fign. 27 bis 34 ist jede der Schaltungen 130 bis 130 auch mit einer Ausgangsleitung (und der zugehörigen Komplementleitung) des A-Grenzdecodierer 110 und mit einer Ausgangsleitung (und der zugehörigen Komplementleitung) vom B-Grenzdecodierer 112 verbunden. Eine Ausnahme bildet die werthöchste Schaltung 130 (Fig. 27), die nur mit der echten Leitung +ABO und der Komplementleitung -ABO des A-Decodierers 110 verbunden 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 B bezeichnet sind, dann führen die Leitungen -AB2 und -BB1 Eins-Potential und die Leitungen +AB2 und +BB1 Null-Potential, wenn A Φ 2 und B^I. Durch
EN 974 035
diese Bedingung werden das UND-Glied 144 ein- und die UND-Glieder 145 und 146 ausgeschaltet, wodurch der Eingang GE2 des UND-Gliedes 144 mit dem Ausgang des ODER-Gliedes 147 so verbunden wird, daß das Signal am Ausgang des ODER-Gliedes dem Signal entspricht, das am Ausgang G2 des Byte 2-Addierers 32 erscheint. Dies ist der Fall, in dem weder die Grenze A noch die Grenze B unmittelbar links vom Byte-2-Addierer liegen.
Wenn die Grenze A direkt links vom Byte 2-Addierer 32 liegt, ist A = 2 und B?i 1, In diesem Fall führt die Leitung auf -AB2 Null-Potential und die Leitung +AB2 Eins-Potential. Damit wird das IKD-Glied 144 gesperrt und das UND-Glied 145 geöffnet. Das UND-Glied 146 bleibt gesperrt, weil die Leitung +BB1 auf Null-Potential bleibt. Für diesen Zustand wird die externe Übertrags-Eingangs leitung CU mit der Ausgangsleitung des ODER-Gliedes 147 verbunden und dadurch das externe Übertrags-Eingangssignal CU an die Stelle des Erzeugungssignales G2 gesetzt.
Wenn für die Grenze B die Wertstelle 1 gewählt wird, dann ist B = 1 und A Φ 2. In diesem Fall geht die Steuerleitung -BB1 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 +AB2 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 G2,
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.
EN 974 035
609846/0660
Eine Übertragseingangsschaltung 150 (Fig. 17) liefert das richtige Übertrags-Eingangssignal CI an den Byte 7-Addierer und das rechte Ende der Übertrags-Vorausschauschaltung. Die Übertragseingangsschaltung 150 wählt eines der externen Übertrags-Eingangssignale CV und CW aus in Abhängigkeit von der Lage der Grenze E. Die Übertragseingangsschaltung 150 führt die Verknüpfung CI aus, die in der Tabelle der Fig. 14 gegeben ist. Der Aufbau der Schaltung 150 ist in Fig. 35 gezeigt. Wenn die Grenze B nicht auf der B-Stelle 7 liegt, dann führt die Grenzsteuerleitung -BB7 ein Eins-Signal auf die Leitung +BB7 ein Null-Signal. Dadurch wird das UND-Glied 151 geöffnet und die Leitung CW mit dem Ausgang eines ODER-Gliedes 153 verbunden. Wenn umgekehrt die Grenze B auf der B-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 Ausgangs- leitung des ODER-Gliedes 153 verbunden. Für alle Grenzstellen B, die von der Wertstelle 7 verschieden sind, ist somit CI = CW. Nur wenn die Grenze B auf der Wertstelle 7 liegt, ist CI =CV.
Der Aufbau der Gruppenschaltungen 103 und 109 ist in den Fign. 36 bis 39 gezeigt. Diese Schaltungen führen die logischen Verknüpfungen zur Bildung der Signale G57, T57, G24 und T24 aus, die in der Tabelle von Fig. 14 aufgeführt sind. Die Schaltungen von Fign. 36 und 37 sind Teile der Gruppenschaltung 109, und die Schaltungen von Fign. 38 und 39 sind Teile der Gruppenschaltung 108.
Der Aufbau der Übertragsschaltungen 100 bis 105, 46 und 47 ist in den Fign. 40 bis 47 dargestellt. Diese Schaltungen führen die logischen Beziehungen aus, die in der Tabelle von Fig. 14 aufgeführt sind.
Das in Fig. 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 Fig. 1
EN 974 035
609fUP/0Rfin
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 Übertragsausgang 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 Grenze B und muß 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-Ausgangs leitung 163 gebildet, die an den Ausgang eines Übertrags-Ausgangswählers 164 angeschlossen ist. Die Wähler 162, sind in den Fign. 48 bzw. 49 gezeigt.
Nach Darstellung in Fig. 48 enthält der CY-Übertrags-Ausgangswähler 162 einen Satz 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-Ausgangangsleitungen KO bis K7 der Addierer 30 bis 37 verbunden. Das UND-Glied 17O ist an die KO-Leitung, das UND-Glied 171 an die K1-Leitung usw. angeschlossen. Jeder Addierer 30 bis 37 enthält eine Übertrags-Ausgangsschaltung der in Fig. 11 gezeigten Schaltung 98. Diese Schaltungen erzeugen die Übertrags-Ausgangssignale KO bis K7«
Der zweite Eingang eines jeden UND-Gliedes 170 bis 177 ist mit einer der Grenzsteuerleitungen ABO bis AB7 des A-Grenzdecodierers 110 verbunden. Diese Grenzsteuerleitungen ABO bis AB7 bestimmen, welches der acht UND-Glieder 170 bis 177 zu einem gegebenen Zeitpunkt geöffnet wird. Zu einem gegebenen Zeitpunkt liegt also nur eine Grenzsteuerleitung ABO bis AB7 auf Eins-Potential und zeigt damit die momentane Lage der Grenze A an. Wenn
EN 974 035
. 609846/0660
also die Grenze A beispielsweise auf der Α-Stelle 2 liegt, dann ist das Signal auf Leitung AB2 auf Eins-Potential und das UND-Glied 172 ist geöffnet. Dadurch wird die Übertrags-Ausgangsleitung K2 für den Byte 2-Addierer mit der CY-ü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 K1 bis K7 der externen Übertrags-Eingangsleitung CW verbunden. Diese UND-Glieder sind außerdem mit den Grenzsteuerleitungen BBO bis BB7 des B-Grenzdecodierers 112 verbunden und werden von diesen gesteuert. Der CZ-Wähler 164 funktioniert genauso für die Grenze B wie der CY-Wähler 161 für die Grenze A.
Der Addierer von Fig. 17 enthält ferner eine Fehleranzeigeschaltung 180 zur Erzeugung eines Grenzfehlersignales 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 A und B den numerischen Wert der Grenzlagen auf der A-Grenzskala und der B-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 B links von der Grenze A liegt oder mit dieser zusammenfällt. Der Aufbau der Schaltung 180 ist in Fig. 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-Bit (ACO), und das werthöchste BC-Bit (BCO) und erzeugt ein einen Fehler anzeigendes Ausgangssignal, wenn ACO > BCO. Das ist der Fall, wenn +ACO = 1 und +BCO = 0. In diesem Fall ist das an eine Negationsschaltung 182 gelieferte
EN 974 035
609846/0660
_ 33 - 261671?
Komplementsignal +BCO 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 AC1 und BC1 im codierten Steuersignal zur Erzeugung eines Fehleranzeigesignales, wenn AC1< BC1 unter der Voraussetzung, daß ACO gleich oder größer BCO 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 ACOv BCO. In dem Fall kann kein Fehler vorliegen.
Ein weiteres UND-Glied 186 vergleicht die wertniedersten Bits AC2 und BC2 und erzeugt ein Fehlersignal auf dem Eins-Ausgangspegel, wenn AC2 > BC2 ist unter der Voraussetzung, daß ACO gleich oder größer ist als BCO und daß ACl gleich oder größer ist als BC1. 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 < BC1, 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-Glied 189 verbunden.
Im Blockdiagramm von Fig. 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 Datensamme1leitung dar. In der Zeichnung steht die Abkürzung "REG" für Register.
Der Steuerteil 203 steuert die Operation des Datenflußteiles 202 und des Hauptspeicherteiles 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
EN 974 035
Aktionen durchführen können. Diese Makroinstruktionen 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 202. Beispiele für solche Signale werden nachher betrachtet.
Im Datenflußteil 202 liegt ein mehrstelliger Paralleladdierer 208, wie er im einzelnen in Fig. 17 gezeigt ist. Eine Datensammelleitung 209 besteht aus 64 Leitern, die die 64 Datenbits AO bis A7 auf die A-Eingangsseite des Addierers 208 geben. Eine andere Datensammelleitung 210 aus 64 Leitern liefert die 64 Datenbits EO bis B7 auf die B-Eingangsseite des Addierers 208. Eine Ausgangsdatensammelleitung 211 aus 64 Leitern empfängt die 64 Datenbits SO bis S7, die die Ausgabe des Addierers 208 darstellen. Eine Steuersammelleitung 212 nit sechs Leitern liefert die A-Grenzsteuersignale und die B-GrenzSteuersignale, die vom Steuerregister 205 bereitgestellt werden, an die Grenzsteuereingänge AC und BC des Addierers 208.
Übertrags-Eingangsschaltungen 213 sind über die Leiter 214 mit den externen Übertrags-Eingangsleitungen CU, CV und CW im Addierer 208 verbunden. Zu den Leitern 214 gehörende, nicht dargestellte Steuertore werden durch das Steuerregister 204 so gesteuert, daß die Übertrags-Eingangssignale CU, CV und CW zur richtigen Zeit an den Addierer 208 angelegt werden.
Statusverriegelungsschaltungen 215 sind vorgesehen zum Empfang der Zonen-Übertrags-Ausgangssignale CX, CY und CZ und des Grenzfehlersignales, die im Addierer 208 erzeugt werden können. Diese Verriegelungsschaltungen sind einzeln mit den verschiedenen Aus-
EN 974 035
gangsleitungen für CX, CY, CZ und E verbunden über eine Leitung 216, Sie sind an eine Schaltung zur 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 BO bis B7 werden der B-Eingangsseite des 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 Datenbits auf die B-Eingangssexte des Addierers 208. Wenn eine Addition auszuführen ist, werden die echten Operanden der B-Eingangsseite zugeführt, und wenn eine Subtraktion auszuführen istf werden die komplementären Operanden zugeführt. Die Auswahl erfolgt durch das Steuerregister 205, das die Tore 225 über eine Sammelleitung steuert. Für jede der acht verschiedenen 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.
EN 974 035
Die vorliegende Erfindung läßt sich auch auf mehrstellige parallele binäre Subtrahierer anwenden. Der wesentliche Unterschied zwischen binären Addieren und Subtrahierern 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-BitnoRition al If
CAUS = X*Y + (X+Y)'CEIN (21)
worin C,ug der Übertragsausgang C1 der Übertragseingang und X und Y die beiden addierten Eingangsbits sind. Für den Fall einer Subtrahierer-Bitposition gilt:
BAUS - X*Y + (X¥Y) 'BEIN (22>
worin BAug der Borger-Ausgang, B^n der Borger-Eingang und X und Y die beiden zu subtrahierenden Eingangsbits sind.
Beim Vorausschau-Addierer wird der Ausdruck X-Y als Erzeugungsfunktion benutzt, während beim Vorausschau-Subtrahierer der Ausdruck X* Y 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 xFY (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 wesentli-
EK 974 035
84 0/0660
chen 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 S7 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 von UND-Gliedern, ODER-Gliedern und Negationsgliedern auch ganz oder teilweise durch NAND-Glieder oder NOR-Glieder oder andere Formen logischer Schaltungen realisiert werden.
EN 974 035

Claims (15)

  1. -JO-
    PATENTANSPRÜCHE
    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) eine veränderbare Anzahl aufeinanderfolgender Addierstufen auswählt zum Betrieb als selbständiges, von den restlichen Addierstufen unabhängig arbeitendes Addierwerk, und durch von der Auswahlschaltung gesteuerte Torschaltungen (120 bis 127, 130 bis 137, 162, 164) zur Verschiebung der Anschlußpunkte für eine übertragseingangsleitung (CV) und eine Übertragsausgangsleitung (CY) in Übereinstimmung mit der Serie ausgewählter Addierstufen.
  2. 2. Addierwerk nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahlschaltungen (110, 112) zur Auswahl mehrerer variabler Abschnitte von einander benachbarten Addiererstufen (30 bis 37) eingerichtet sind, daß für jeden der Abschnitte eine übertragseingangsleitung (CU, CV, CW) sowie eine Übertragsausgangsleitung (CZ, CY r CX) vorgesehen ist, daß diese Leitungen über von den Auswahlschaltungen gesteuerte Torschaltungen (120 bis 127, 130 bis 137, 150, 162, 164) jeweils an die erste und letzte Addierstufe der ausgewählten Abschnitte anschliießbar sind, so daß mehrere Abschnitte des Addierwerks unabhängig voneinander benutzt werden können.
  3. 3. Addierwerk nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß sich der von der Auswahlschaltung (110, 112) erfaßte Stellenbereich von einer Stelle bis zur GesamtsteIlenzahl des Addierwerkes erstreckt, so daß der kleinste als separates Addierwerk wirksame Abschnitt eine Addierwerkstelle und der größte Abschnitt alle Addierwerkstellen erfaßt.
    EN 974 035
  4. 4. Addierwerk nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Addierstufen (60 bis 67) binäre Volladdierer sind und daß die Auswahlschaltung (110, 112) zur Festlegung von Abschnittsgrenzen zwischen benachbarten Binärstellen dient.
  5. 5. Addierwerk nach einem der Ansprüche 1 bis 3, 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.
  6. 6. Addierwerk nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Auswahlschaltung eine erste Teilschaltung (110) 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 Übertrags-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.
  7. 7. Addierwerk nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die Teilschaltungen (110, 112) mit einer Auswahlsteuerschaltung (113 und 114 oder 205) verbunden sind, die zur Operationssteuerschaltung des Addierwerks
    EN 974 035
    261671?
    gehört und den Teilschaltungen Addierwerksabschnitt-Auswahlsteuersignale (AC, BC) zuführt.
  8. 8. Addierwerk nach einem der Ansprüche 1 bis 7, 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 aktivierbar sind.
  9. 9. Addierwerk nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß jede Teilschaltung (110, 112) einen Decodierer umfaßt, dem unterschiedliche Auswahlsteuercodes (ACO bis AC2 oder BCO bis BC2) zugeführt werden und der Grenzauswahlsignale (ABO bis AB7 oder BBO bis BB7) erzeugt, die den Addierstufen (30 bis 37) zugeordnet sind.
  10. 10. Addierwerk nach einem der Ansprüche 1 bis 9, 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 AB7, BBO bis BB7) von den Übertragsausgangsleitungen (KO bis K7) der Addierstufen (30 bis 37) jeweils eine an die übertragsäusgangsleitung (CY, CZ) des von der betreffenden Teilschaltung ausgewählten und in Richtung der aufsteigenden Stellenfolge begrenzten Addierwerksabschnitt anschließen.
  11. 11. Addierwerk nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß die Auswahlsteuersignale (ACO bis AC2,
    EN 974 035
    609846/0660
    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 links von der Grenze (B) liegt, welche die andere Teilschaltung zwischen zwei anderen benachbarten Addierstufen definiert.
  12. 12. Addierwerk nach einem der Ansprüche 1 bis 11 mit einer Übertragsvorausschauschaltung, 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 der Addierwerkes abgeleitet werden, dadurch gekennzeichnet, daß sich in den die Erzeugungsfunktion (G) 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.
  13. 13. Addierwerk nach Anspruch 12, 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 als von der Auswahlschaltung (110, 112) gesteuerte Trennschalter dienen.
  14. 14. Addierwerk nach Anspruch 12 oder 13, dadurch gekennzeichnet, daß die die Erzeugungsfunktionen (G) führenden Leitungen zusätzlich über weitere Torschaltungen (145, 146) mit Übertragseingangsleitungen (CV, CU) verbunden sind und daß die weiteren Torschaltungen zusammen mit den Trennschaltern
    EK 974 03 5
    (144) Ersetzungsschaltungen bilden, die gemeinsam von der Auswahlschaltung (110, 112) betätigt werden, um der betreffenden Leitung anstelle einer Ubertragserzeugungsfunktion (G) einen bestimmten Eingangsübertrag zuzuführen.
  15. 15. Addierwerk nach einem der Ansprüche 1 bis 14, dadurch gekennzeichnet, daß die Auswahlschaltung (110, 112) und die Stufen der Scht/Komplement-Schaltung (225) mit den Stufen eines Befehlsregisters (205) verbunden sind, das zum Programmsteuerwerk (203) einer Verarbeitunqseinheit gehört, in welcher das Addierwerk verwendet wird, und daß die Steuerung der Auswahlschaltung und der Echt/Komplementschaltung von einem Programmspeicher (3O4) über das Befehlsregister erfolgt.
    EN 974 035
    609846/OBfiO
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 true DE2616717A1 (de) 1976-11-11
DE2616717C2 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)

Families Citing this family (62)

* 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
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
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
ATE64018T1 (de) * 1986-07-11 1991-06-15 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
US4993073A (en) * 1987-10-01 1991-02-12 Sparkes Kevin J Digital signal mixing apparatus
US5047975A (en) * 1987-11-16 1991-09-10 Intel Corporation Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
AU626847B2 (en) * 1987-11-16 1992-08-13 Intel Corporation Dual mode adder circuitry
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
GB2317467B (en) * 1996-09-23 2000-11-01 Advanced Risc Mach Ltd Input operand control in data processing systems
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
GB2317465B (en) * 1996-09-23 2000-11-15 Advanced Risc Mach Ltd Data processing apparatus registers.
GB2317464A (en) * 1996-09-23 1998-03-25 Advanced Risc Mach Ltd Register addressing in a data processing apparatus
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비트산술연산기
US6301600B1 (en) * 1997-11-18 2001-10-09 Intrinsity, Inc. Method and apparatus for dynamic partitionable saturating adder/subtractor
US6272514B1 (en) * 1997-11-18 2001-08-07 Intrinsity, Inc. Method and apparatus for interruption of carry propagation on partition boundaries
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
DE10008774A1 (de) * 2000-02-24 2001-08-30 Patrick Freiberger Längenflexible Grundstruktur der Datenverarbeitung
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
US8736623B1 (en) 2004-11-15 2014-05-27 Nvidia Corporation Programmable DMA engine for implementing memory transfers and video processing for a video processor
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
US9024957B1 (en) 2007-08-15 2015-05-05 Nvidia Corporation Address independent shader program loading
US8659601B1 (en) 2007-08-15 2014-02-25 Nvidia Corporation Program sequencer for generating indeterminant length shader programs for a graphics processor
US9064333B2 (en) * 2007-12-17 2015-06-23 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8780123B2 (en) * 2007-12-17 2014-07-15 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8681861B2 (en) * 2008-05-01 2014-03-25 Nvidia Corporation Multistandard hardware video encoder
US8923385B2 (en) * 2008-05-01 2014-12-30 Nvidia Corporation Rewind-enabled hardware 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 *

Also Published As

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

Similar Documents

Publication Publication Date Title
DE2616717A1 (de) Digitales addierwerk
DE1956209C3 (de) Multipliziervorrichtung
DE2712224A1 (de) Datenverarbeitungsanlage
DE2626432A1 (de) Arithmetische einheit fuer automatische rechengeraete
DE2421130C2 (de)
DE2230188C2 (de) Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen
DE3229452A1 (de) Arithmetiklogikeinheit
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE2232222A1 (de) Funktionsgeneratormodul
DE2705989C2 (de) Schaltungsanordnung zum parallelen Addieren oder Subtrahieren von mindestens zwei Eingangszahlen
DE68924479T2 (de) Gerät um festzustellen, ob während einer Verschiebungsoperation Daten in Verlust geraten.
DE2000275A1 (de) Elektronischer Walzenschalter
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren
DE1549434A1 (de) Datenverarbeitungsanlage
DE3889746T2 (de) Zähler.
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen
DE4317074C1 (de) Multiplizierer für reelle und komplexe Zahlen
EP1248186A2 (de) Carry-ripple Addierer
EP0144568A2 (de) Multiplikationswerk und Verfahren zu dessen Betrieb
DE1524197B1 (de) Aritmetisch-logische einheit
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
DE2952689A1 (de) Programmierbarer lesespeicher-addierer
DE1524146C (de) Divisionseinrichtung

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