DE69125761T2 - Übertragvorgriffsaddierer - Google Patents

Übertragvorgriffsaddierer

Info

Publication number
DE69125761T2
DE69125761T2 DE69125761T DE69125761T DE69125761T2 DE 69125761 T2 DE69125761 T2 DE 69125761T2 DE 69125761 T DE69125761 T DE 69125761T DE 69125761 T DE69125761 T DE 69125761T DE 69125761 T2 DE69125761 T2 DE 69125761T2
Authority
DE
Germany
Prior art keywords
group
circuits
generation
forwarding
carry
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69125761T
Other languages
English (en)
Other versions
DE69125761D1 (de
Inventor
Joel D Lamb
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Application granted granted Critical
Publication of DE69125761D1 publication Critical patent/DE69125761D1/de
Publication of DE69125761T2 publication Critical patent/DE69125761T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/506Indexing scheme relating to groups G06F7/506 - G06F7/508
    • G06F2207/50632-input gates, i.e. only using 2-input logical gates, e.g. binary carry look-ahead, e.g. Kogge-Stone or Ladner-Fischer adder

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Logic Circuits (AREA)

Description

    Hintergrund der Erfindung
  • Die vorliegende Erfindung bezieht sich auf Vorausschau-Addierer im allgemeinen und insbesondere auf eine Übertrag- Erzeugungsschaltung für einen solchen Vorausschau-Addierer.
  • Herkömmliche serielle Ripple-Übertragaddierer sind langsam, da das Übertragsignal, das in jeder Stufe erzeugt wird, auf die Erzeugung eines Übertragsignals durch die Stufe mit der nächstniedrigeren Ordnung warten muß. Vorausschau-Addierer sind bestrebt, diesen Nachteil zu überwinden, indem die Art und Weise verbessert wird, auf die Übertragsignale erzeugt werden. Derartige Addierer weisen eine Reihe von Summationsstufen auf, von denen jede zum Addieren eines jeweiligen Paars von entsprechenden Bits von zwei Nultibit-Binärzahlen dient. Jede Summationsstufe weist ein Paar von A- und B- Bit-Eingangssignalen und ein Übertrageingangssignal auf. Jeder Summationsstufe ist eine Erzeugungs- und eine Weiterleitungs-Schaltung zugeordnet. Jede Weiterleitungsschaltung, die einer gegebenen Summationsstufe zugeordnet ist, erzeugt ein Weiterleitungssignal, wenn eines ihrer A- und B-Eingangssignale wahr ist, während jede der Erzeugungsschaltungen ein Ausgangssignal erzeugt, wenn sowohl ihr A- als auch ihr B-Eingangssignal wahr ist. Die Ausgangssignale der Erzeugungs- und Weiterleitungs-Schaltungen, die aufeinanderfolgenden Paaren von Stufen zugeordnet sind, werden einer üblichen Gruppenerzeugungsschaltung zugeführt, während in gleicher Weise die Ausgangssignale der Weiterleitungsschaltungen, die aufeinanderfolgenden Paaren von Summationsschaltungen zugeordnet sind, einer üblichen Gruppenweiterleitungsschaltung zugeführt werden. Folglich werden bei einem Vier-Bit-Addierer die Ausgangssignale der Erzeugungs- und Weiterleitungs-Schaltungen des höchstwertigen und des zweithöchstwertigen Bits einem ersten Paar von Gruppenerzeugungs- und Gruppenweiterleitungs-schaltungen zugeführt, während die Ausgangssignale der Erzeugungs- und Weiterleitungs-Schaltungen, die dem dritt-höchstwertigen und dem niederstwertigen Bit zugeordnet sind, einem zweiten Paar von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen zugeführt werden. Die Ausgangssignale der zwei Paare von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen werden wiederum einem einzelnen Paar von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen zugeführt. Das Ergebnis ist eine Pyramide von hierarchisch angeordneten Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, beginnend mit den Erzeugungs- und Weiterleitungs- Schaltungen auf der niedrigsten Ebene bis zu einem einzelnen Paar von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen auf der höchsten Ebene, wobei die Schaltungen auf der höchsten Ebene durch eine Anzahl von Ebenen von den Erzeugungs- und Weiterleitungs-Schaltungen auf der geringsten Ebene entfernt sind, die eine Funktion der Gesamtzahl von Bits in den Zahlen, die addiert werden sollen, ist. Folglich weist die Pyramide bei einem 32-Bit-Addierer beispielsweise 32 Paare von Erzeugungs- und Weiterleitungs-Schaltungen, 16 Paare von Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen auf einer ersten Zwischenebene, acht Paare von solchen Schaltungen auf einer zweiten Zwischenebene, vier Paare auf einer dritten Zwischenebene und zwei Paare auf einer vierten Zwischenebene auf, so daß die Gesamtzahl von Ebenen von Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen fünf ist.
  • Ein Verfahren für eine verbesserte Implementierung eines parallelen Übertrag-vorausschau-Addierers (Carry Lookahead Adder) mit einem Rückwärtsübertrag (End-Around-Carry) ist in Research Disclosure, Nr. 268, August 1986, Havant, GB, Seite 468: "Fast Determination of Bit Carriers for Binary Adders", offenbart. Dieses Verfahren bestimmt in einer Logikebene die Bitüberträge in Vorzeichen-Größen-Addierern mit einem Rückwärtsübertrag. Das bessere Verhalten wird erreicht, indem in die Schaltungsbeschreibungsgleichungen spezielle Kombinationen von Weiterleitungs- und Erzeugungs-Termen eingeführt werden, die nicht von dem Übertragausgang abhängen, der üblicherweise der kritische Weg ist. Jedoch erfordert das Verfahren, daß in Research Disclosure offenbart ist, eine parallele Implementierung, wodurch die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen gleichzeitig die Bit-Erzeugungs- und Bit-Weiterleitungs-signale bis zu und einschließlich des Bits, dem die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltung zugeordnet ist, kombinieren, und wodurch die Gruppenweiterleitungs- und Gruppenerzeugungs-Schaltungen parallel angeordnet sind. Diese Technik ist in einem Übertrag-Vorausschau-Addierer eines Typs, bei dem die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen in einer hierarchischen Pyramide angeordnet sind, unwirksam.
  • In gleicher Weise ist eine Implementierung eines parallelen Übertrag-Vorausschau-Addierers, der die Bitüberträge unter Verwendung von Übertragerzeugungs- und Übertragweiterleitungs-Funktionen gleichzeitig erzeugt, ähnlich den Grundsätzen, die in Research Disclosure, Nr. 268, beschrieben sind, bei K.H. Wang: "Computer Arithmetic", 1979, J. Wiley and Sons, New York; US, Seiten 84-91, Zeilen 15 bis 17, offenbart. Die Implementierung nimmt hier jedoch auch eine parallele Anordnung der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltung an, die die Fähigkeit haben, gleichzeitig alle Bit-Erzeugungs- und Bit-Weiterleitungs-Signale bis zu und einschließlich des Bits, dem die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltung zugeordnet ist, zu kombinieren. Derartige Techniken, die bei einer zugrundeliegenden parallelen Architektur gut arbeiten, erstrecken sich nicht von Natur aus auf übertrag-Vorausschau-Addierer des Typs der vorliegenden Erfindung, die hierarchisch angeordnete Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen aufweisen.
  • Zurückkehrend zu der Erörterung eines Vier-Bit-Vorausschau- Addierers weist jede Stufe des Addierers eine Übertragerzeugungsschaltung auf, deren Funktion darin besteht, von den Ausgangssignalen der Erzeugungs-, der Weiterleitungs-, der Gruppenerzeugungs- und der Gruppenweiterleitungs-Schaltungen Übertragsignale für nachfolgende Summationsstufen über der niederstwertigen Bit-Stufe abzuleiten. Bei einem Vier-Bit- Addierer werden die Eingangssignale zu der ersten, der zweiten und der vierten Übertragerzeugungsstufe durch die Ausgangssignale der verschiedenen der Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen geliefert, wobei diese Eingangssignale vollständig die A- und B-Eingangssignale zu dem Addierer widerspiegeln. Dasselbe gilt jedoch für die Stufe des zweit-höchstwertigen Bits nicht, die ihr Eingangssignal von den Erzeugungs- und Weiterleitungs-Schaltungen, die dieser Stufe zugeordnet sind, empfängt. Dies ist eine Folge der Organisation des Pyramidennetzwerks, bei dem die Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Signale, die Stufen eines niedrigeren Bits zugeordnet sind, nicht den Erzeugungs- und Weiterleitungs-Schaltungen, die der Stufe des zweit-höchstwertigen Bits zugeordnet ist, zugeführt werden. Die Informationen, die die Eingangssignale zu diesen niedrigeren Stufen widerspiegeln, müssen einen anderen Ursprung haben: das Ausgangssignal der Übertragerzeugungsschaltung der Stufe des dritt-höchstwertigen Bits. Das Vorhergehende impliziert, daß das Übertragsignal, das durch die Übertragerzeugungsschaltung der zweit-höchstwertigen Stufe erzeugt wird, nicht erzeugt werden kann, bis das Übertragsignal der Stufe der nächstniedrigeren Ordnung erzeugt wurde. Es ist offensichtlich, daß dies eine unerwünschte Verzögerung beinhaltet, wobei bei Addierern, die eine große Anzahl von Stufen aufweisen, dieses Problem verstärkt und die Verzögerung erhöht ist. Es ist daher eine Aufgabe der vorliegenden Erfindung, einen Übertraggenerator für einen Vorausschau-Addierer zu liefern, der die Notwendigkeit, sich auf die Ausgangssignale der Übertragerzeugungsschaltungen, die den jeweiligen Stufen des Addierers zugeordnet sind, zu stützen, um Eingangssignale zu den Übertragerzeugungsschaltungen, die den Stufen höherer Ordnung des Addierers zugeordnet sind, zu erzeugen, beseitigt.
  • Gemäß der Erfindung ist ein Vorausschau-Addierer gemäß Anspruch 1 geschaffen, der einen Übertraggenerator aufweist, bei dem ein Satz von Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Signale, die die Zustände der Eingangssignale zu allen Stufen des Addierers widerspiegeln, zu den Übertragerzeugungsschaltungen, die den jeweiligen Summationsstufen des Addierers zugeordnet sind, liefert, um die Notwendigkeit zu beseitigen, das Ausgangssignal einer beliebigen Übertragerzeugungsschaltung irgendeiner anderen Übertragerzeugungsschaltung oberhalb derselben in der Kette der Übertragerzeugungsschaltungen zuzuführen. Die Fähigkeit, ein derart vollständiges Komplement von Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Signalen zu liefern, wird erreicht, indem zu der herkömmlichen hierarchischen Anordnung von Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-schaltungen zusätzliche nicht-hierarchische Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen hinzugefügt werden, deren Eingangssignale von anderen Schaltungen abgeleitet werden, die sich auf verschiedenen Ebenen in der Pyramide der Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen befinden.
  • Kurze Beschreibung der Zeichnungen
  • Diese Merkmale und Vorteile der Erfindung, ebenso wie weitere Merkmale und Vorteile der Erfindung, werden durch das Lesen der Ansprüche und der detaillierten Beschreibung der Erfindung in Verbindung mit den nachfolgend beschriebenen Zeichnungen offensichtlicher.
  • Fig. 1 ist ein Blockdiagram eines Ripple-Übertragaddierers, bei dem Übertragsignale durch eine Kette von Übertragerzeugungsschaltungen übertragen werden;
  • Fig. 2 ist ein Blockdiagramm eines Ein-Bit-Vorausschau-Addierers;
  • Fig. 3 ist ein Blockdiagramm eines Zwei-Bit-Übertrag-Vorausschau-Addierers;
  • Fig. 4 ist ein Blockdiagramm eines Paars von Erzeugungs- und Weiterleitungs-Schaltungen, die einen Bestandteil des Addierers von Fig. 3 bilden;
  • Fig. 5 ist ein Blockdiagramm eines Paars von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die einen Bestandteil des Addierers von Fig. 3 bilden;
  • Fig. 6 ist ein Blockdiagramm der Übertragerzeugungsschaltung, die einen Bestandteil des Addierers von Fig. 3 bildet;
  • Fig. 7 ist ein Blockdiagramm eines Vier-Bit-Übertrag-Voraus schau-Addierers;
  • Fig. 8 ist ein Blockdiagramm eines Paars von hierarchischen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die einen Bestandteil des Addierers von Fig. 7 bilden, und die auf einer höheren hierarchischen Ebene als die schaltungen von Fig. 5 sind;
  • Fig. 9 ist ein Blockdiagramm eines Vier-Bit-Übertrag-Vorausschau-Addierers ähnlich dem, der in Fig. 7 gezeigt ist, der jedoch die vorliegende Erfindung beinhaltet;
  • Fig. 10 ist ein Blockdiagramm von zwei Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungspaaren, die einen Bestandteil des Addierers von Fig. 9 bilden, wobei ein Paar den hierarchischen Schaltungen von Fig. 8 entspricht, während das andere zusätzliche Paar gemäß der vorliegenden Erfindung nicht-hierarchisch ist;
  • Fig. 11 ist ein Blockdiagramm eines Acht-Bit-Übertrag-Vorausschau-Addierers;
  • Fig. 12 ist ein Blockdiagramm eines Acht-Bit-Übertrag-Vorausschau-Addierers ähnlich dem, der in Fig. 9 gezeigt ist, der jedoch die vorliegende Erfindung beinhaltet; und
  • Fig. 13 ist ein Blockdiagramm eines 32-Bit-Übertrag-Vorausschau-Addierers, der gemäß der vorliegenden Erfindung aufgebaut ist.
  • Detaillierte Beschreibung
  • Das Ziel eines binären Addierers besteht darin, zwei binäre Zahlen zu addieren, möglicherweise zusammen mit einem Übertrageingangssignal, um eine Summe und ein Übertragausgangssignal zu erzeugen.
  • Die zwei binären Eingangssignale seien A und B und ein spezielles Bit dieser binären Zahlen sei als A[i] (oder B[i]) bezeichnet, wobei A[i] (oder B[i]) das i-te Bit von A (oder B) ist. CIN sei der Übertrag in diese Addition von einer vorherigen Addition von Bits niedrigerer Ordnung. Die resultierende Summe von A, B und CIN ist durch S dargestellt. C sei ein Zwischenergebnis des Addierers, das den Ausgangsübertrag von jeder Bit-Stufe in dem Addierer darstellt.
  • Für eine einzelne Bit-Stufe des Addierers ist die Summe für diese Bit-Stufe:
  • S[i] := (A[i] xor B[i]) xor C[i-1] (1)
  • In Gleichung (1) ist "xor" eine binäre Logikfunktion, die durch die folgende Wahrheitstabelle dargestellt werden kann: Tabelle I
  • Die binäre Logikfunktion für die Summe S[i] kann durch die folgende Wahrheitstabelle dargestellt werden: Tabelle II
  • Der Übertrag C[i] kann ferner als die folgende Boolsche Gleichung ausgedrückt werden:
  • C[i] := A[i]*B[i] + A[i]*C[i-1] + B[i]*C{i-1] (2)
  • Ein herkömmlicher Acht-Stufen-Ripple-Übertragaddierer 11, der die obigen Grundsätze verk:rpert, ist in Fig. 1 dargestellt. Jede Stufe weist eine Ripple-Übertragschaltung 13 und ein Summationsschaltung 15 auf. Die Ripple-Übertragschaltung 13-0 und die Summationsschaltung 15-0 bilden die Stufe des höchstwertigen Bits, während entsprechende Schaltungen 13-7 und 15-7 die Stufe des niederstwertigen Bits des Addierers bilden. Der Addierer 11 ist angepaßt, um zwei binäre Acht-Bit-Zahlen A[0) bis A[7] und B[0] bis B[7] zu addieren. Aufeinanderfolgende Stellen der Binärzahlen, die durch den Addierer addiert werden, werden seriell verarbeitet. Jede der Summationsschaltungen 15-0 bis 15-7 weist einen CIN-Eingang auf, dem das COUT-Ausgangssignal der Ripple-Übertragschaltung 13 der Stufe des nächst-niederwertigeren Bits zugeführt wird. Eine Stelle der Summe, die durch den Addierer 11 erzeugt wird, kann berechnet werden, sobald die A- und B-Eingangssignale und das Übertrageingangssignal zu der Summationsschaltung 15 dieser Stufe verfügbar sind. Das übertragsignal COUT von dieser Stelle kann zur gleichen Zeit berechnet werden. Daher kann die Summe für eine Stelle einer speziellen Signifikanz nicht berechnet werden, bis alle Überträge, die durch die Ripple-Übertragschaltungen 13 der Stufen einer geringeren Signifikanz erzeugt werden, berechnet wurden. Folglich kann bei dem Acht-Bit-Addierer 11 von Fig. 1 das letzte COUT-Signal C[0] nicht berechnet werden, bis alle vorhergehenden COUT-Signale C[7] bis C[1] berechnet wurden.
  • Als nächstes wird ein Ein-Bit-Übertrag-Vorausschau-Addierer erläutert, um die Grundsätze derartiger Addierer festzulegen. Wie in Fig. 2 gezeigt ist, weist derselbe eine CLA1- Schaltung 17, eine CG-Schaltung 19 und eine Summierschaltung 21 auf. Die CLA1-Schaltung weist eine Erzeugungsschaltung G1 und eine Weiterleitungsschaltung P1 auf, die als ein AND- Gatter bzw. ein OR-Gatter implementiert sind, die die Funktionen durchführen, die durch die Boolschen Gleichungen in dem Block 17 definiert sind. Der Übertragerzeugungsblock 19 weist ein komplexes Gatter auf, das die Funktionen durchführt, die durch die Boolsche Gleichung in den Block 19 von Fig. 2 definiert sind. Sowohl die CG-Schaltung 19 als auch die Summierschaltung 21 empfangen ein CIN-Übertrageingangssignal von der nächst-niederwertigeren Stufe. Der Summierblock 21 liefert ein Summenausgangssignal 5[0] gemäß Tabelle II.
  • Der Vorausschau-Addierer von Fig. 2 führt zwei Zwischenwerte zusätzlich zu denen, die in dem Ripple-Übertragaddierer 11 auftreten, ein: das Übertragerzeugungssignal G1 und das Übertragweiterleitungssignal P1. Das Übertragerzeugungssignal G1 stellt den Zustand dar, bei dem die Eingangssignale A und B zu einer Bit-Stufe einen übertrag von dieser Bitstufe erzeugen werden, ungeachtet des Übertrags in diese Bit-Stufe. Ein Übertragweiterleitungssignal P1 stellt den Zustand dar, bei dem die gleichen Eingangssignale einen Übertrag von dem Eingang der Bit-Stufe zu dem Ausgang dieser Stufe weiterleiten werden. Die binären Gleichungen, die diese Werte darstellen, lauten:
  • G1[i] : = A(i] * B[i] (A[i] und B[i]) (3)
  • P1[i] : = A[i] + B[i] (A[i] oder B[i]) (4)
  • Die folgende Wahrheitstabelle zeigt die Beziehung zwischen den Eingangssignalen zu der Bit-Stufe von Fig. 2 und dem Ausgangsübertrag, G1[i] und P1[i]. Tabelle III
  • Die verallgemeinerten Ausdrücke A[i], B[i], G1[i] und P1[i] bedeuten, daß sich die Ausdrücke auf Ausdrücke beziehen, die auf die Stufe i anwendbar sind. Der verallgemeinerte Ausdruck CIN bedeutet, daß sich der Ausdruck auf das Übertragsignal bezieht, das durch die Stufe des nächst-niederwertigeren Bits erzeugt wird. Folglich beziehen sich alle Ausdrücken in den Gleichungen 3 und 4 und in der Tabelle III auf die Stufe eines gegebenen Bits, wie in Fig. 2 dargestellt ist, während sich der Ausdruck CIN auf das Übertrageingangssignal zu den Blöcken 19 und 21 von der Stufe des nächst-niederwertigeren Bits des Addierers bezieht.
  • Die Beziehung zwischen G1, P1 und C kann als die folgende Boolsche Gleichung geschrieben werden:
  • C[i] : = G1[i] + P1(i] * CIN (5)
  • Die Idee der "Erzeugungs-" und "Weiterleitungs-"Ausdrücke kann auf eine Gruppe von Bits, die größer ist als Eins, ausgedehnt werden. Fig. 3 ist ein Diagramm eines Zwei-Bit-Übertrag-Vorausschau-Addierers. Derselbe weist zwei Bit-Stufen i und i+1 auf, von denen jede eine CLA1-Schaltung 17 zum Erzeugen von Erzeugungs- und Weiterleitungs-Signalen aus den Eingangssignalen A und B zu dieser speziellen Stufe, eine Übertragerzeugungsschaltung 19 zum Ableiten eines Übertragsignals aus den Erzeugungs- und Weiterleitungs-Signalen und aus dem Übertragsignal (CIN) zu dem Addierer und eine Summationsschaltung 21 zum Ableiten eines Summensignals aus dem Übertrag-Ausgangssignal (CO) von der vorhergehenden Stufe des nächst-niederwertigeren Bits und den Eingabe-Bits A und B zu der gegebenen Stufe aufweist. Die "Erzeugungs"- und "Weiterleitungs"-Ausdrücke für die Zwei-Bit-Stufe (i) werden durch einen CLA2-Block 23-0 zweiter Ebene (L2) erzeugt, der eine Gruppenerzeugungs- und eine Gruppenweiterleitungs- Schaltung aufweist, die an ihren Eingängen die G1-, P1-Ausgangssignale der CLA1-Schaltungen 17-0 und 17-1 der Zweiund Ein-Bit-Stufen i und i+1 empfangen.
  • Der Betrieb der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die in dem CLA2-Block 23-0 von Fig. 3 enthalten sind, ist durch die folgenden Gleichungen ausgedrückt:
  • G2[i] : = G1[i) + P1[i] * Gl[i+1] (6)
  • P2[i] : = P1[i] * P1[i+1] (7)
  • Die Wahrheitstabelle für diese Gleichungen lauten: Tabelle IV
  • Die Überträge C[i] und C[i+1] für diese Zwei-Bit-Addierer können durch die Verwendung der "Erzeugungs"- und "Weiterleitungs"-Ausdrücke für die Stufen i und i+1 und den Übertrag in die Stufe des niederstwertigen Bits i+1 erzeugt werden. In Boolschen Ausdrücken:
  • C[i] : = G2[i] + P2[i] * CIN (8)
  • C[1+1] : = G1[i+1] + P1[i+1] * CIN (9)
  • Die Erzeugungs- und Weiterleitungs-Schaltungen G1 und P1, die den Block CLA1 aufweisen, sind bezüglich ihrer logischen Funktionen in Fig. 4 dargestellt, während die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen G2 und P2, die den Block CLA2 aufweisen, in gleicher Weise in Fig. 5 gezeigt sind. Die G2-, P2-Ausgangssignale des CLA2-Blocks 23-0 werden dem CG-Block 19-0, der der Zwei-Bit-Stufe i zugeordnet ist, zugeführt. Die Letztgenannte ist in einer Blockform in Fig. 6 dargestellt. Schaltungen, die zur Verwendung als CLA1, CLA2 und als die CG-Blöcke geeignet sind, sind in der EP-A-0,442,665 der Anmelderin der vorliegenden Anmeldung vollständig gezeigt und beschrieben.
  • Die bestimmte Bezeichnungsübereinkunft, die in Fig. 3 verwendet ist, sollte beachtet werden, da dieselbe konsistent durch das gesamte Dokument verwendet wird. Die CLA1-Blöcke bezeichnen ein Paar von Schaltungen, deren logische Funktionen in Fig. 4 definiert sind. Der CLA1-Block, der der Stufe i des höchstwertigen Bits zugeordnet ist, ist mit "CLA1[0]" bezeichnet. Der CLA1-Block, der der Stufe i+1 des zweithöchstwertigen Bits zugeordnet ist, ist speziell durch die Bezeichnung "CLA1(1)" identifiziert. Eingangssignale zu und Ausgangssignale von den CLA1-Blöcken CLAL(0] und CLA1[1] sind speziell durch Suffixe "[0]" bzw. "[1]" identifiziert.
  • Der CLA2-Block 23-0, dem die Ausgangssignale der CLA1-Blöcke 17-0 und 17-1 zugeführt werden, ist zusätzlich mit "CLA2[0]" bezeichnet, um die Tatsache zu kennzeichnen, daß sein Ausgangssignal die Eingangssignale bis zu und einschließlich derjenigen zu dem CLA1[0]-Block der Stufe i des höchstwertigen Bits widerspiegelt. Die Erzeugungs- und Weiterleitungs- Schaltungen, die der CLA2-Block 23-0 aufweist, sind durch die Gleichungen definiert, die in Fig. 5 gezeigt sind. Die CLA2-Schaltungen sind von den CLA1-Schaltungen durch die Tatsache unterschieden, daß die CLA2-Schaltungen durch Erzeugungs- und Weiterleitungs-Signale getrieben werden, wohingegen die CLA1-Schaltungen durch A- und B-Bits getrieben werden. Diese Unterscheidung ist durchgängig gekennzeichnet, indem die Schaltungen von CLA2 als "Gruppenerzeugungs"- und "Gruppenweiterleitungs"-Schaltungen bezeichnet werden, und die Ausgangssignale der CLA2-Schaltungen als "Gruppenerzeugungs"- und "Gruppenweiterleitungs"-Signale bezeichnet werden. Dies steht im Gegensatz zu den CLAI-Block-Schaltungen, die als "Erzeugungs"- und "Weiterleitungs"-Schaltungen bezeichnet werden, deren Ausgangssignale G1 und P1 durchgehend als "Erzeugungs"- und "Weiterleitungs"-Signale bezeichnet werden.
  • Um diese voneinander zu unterscheiden, werden zu Zwecken der verschiedenen Gleichungen, die hierin angegeben werden, die Ausgangssignale der CLA1-, CLA2- und CG-Blöcke indiziert, um dieselben bezüglich der Stufe, der diese zugeordnet sind, zu identifizieren. Folglich sind die Erzeugungs- und Weiterleitungs-Ausgangssignale des CLA1[0]-Blocks der Stufe i mit "G1[i]" und "P1[i]" bezeichnet, wohingegen die der CLA1[1]- Schaltung der Stufe i+1 mit "G1[i+1]" und "P1[i+1]" bezeichnet sind.
  • Fig. 7 zeigt einen Vier-Bit-Übertrag-Vorausschau-Addierer, der auf den Grundsätzen des Zwei-Bit-Addierers von Fig. 3 aufgebaut ist. Die Erzeugungs- und Weiterleitungs-Ausdrücke für eine Vier-Bit-Gruppe können durch die folgenden Boolschen Gleichungen dargestellt werden:
  • G4[i] : = G2[i] + P2[i] * G2[i+2] (10)
  • P4[i] : = P2[i] * P2[i+2] (11)
  • Durch das Betrachten der vorherigen Gleichungen für einen Zwei-Bit-Addierer sei bemerkt, daß die Beziehung zwischen dem Erzeugungs- und Weiterleitungs-Ausdrücken aufeinanderfolgender Ebenen (d.h. G2 und G1 gegenüber G4 und G2 und ebenso P2 und P1 gegenüber P4 und P2) rekursiv ist.
  • Der Vier-Bit-übertrag-Vorausschau-Addierer von Fig. 7 weist die Elemente auf, die den Stufen i und i+1 des Zwei-Bit- Übertrag-Vorausschau-Addierers von Fig. 3 zugeordnet sind, und eine gleichartige Gruppe von Komponenten für zusätzliche Stufen i+2 und i+3. Zusätzlich werden die Ausgangssignale der zwei CLA2-Schaltungen 23-0 und 23-2 mittels einer zusätzlichen Ebene von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die durch den CLA4-Block 25-0 dargestellt sind, kombiniert. Die Ausgangssignale des CLA4-Blocks werden wiederum der CG-Schaltung 19-0, die der Stufe i zugeordnet ist, zugeführt. Die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die den CLA4-Block 25-0 bilden, können physikalisch identisch zu denen sein, die den CLA2- Block 23-0 bilden, der in Fig. 5 dargestellt ist, da dieselben die gleichen logischen Operationen durchführen. Der CLA4-Block 25-0 ist (hinsichtlich seiner logischen Funktionen) in Fig. 8 dargestellt, wobei die jeweiligen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen desselben mit "CLA-G4[i]" und "CLA-P4[i]" bezeichnet sind. Der Großteil der Überträge für die Vier-Bit-Gruppe, die durch den Addierer von Fig. 7 erzeugt wird, kann durch die Verwendung der Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Ausgangssignale der CLA1-, CLA2- und CLA4-Schaltungen ebenso wie des Übertrags (CIN) in die Stufe i+3 des niederstwertigen Bits erzeugt werden. Die Boolschen Gleichungen für diese lauten:
  • C[i] : = G4[i] + P4[i] * CIN (12)
  • C[i+2] : G2[i+2] + P2[i+2] * CIN (13)
  • C[i+3] : = G1[i+3) + P1[i+3] * CIN (14)
  • Es sei bemerkt, daß für C[1+1] keine Gleichung existiert. Der Grund dafür ist, daß C[i+1) entweder mit einem Zwischenergebnis (von dem CG-Block 19-2) oder durch eine kompliziertere Gleichung berechnet werden muß.
  • C[i+1] kann unter Verwendung eines Zwischenergebnisses (C[i+2]) berechnet werden, das durch die folgende Boolsche Gleichung dargestellt ist:
  • C[i+l] : = G1[i+1] + P1[i+1] * C(i+2] (15)
  • Der Nachteil dieser Lösung besteht darin, daß C[i+1] nicht berechnet werden kann, bis C[i+2] berechnet wurde. Dies hat eine Zunahme des Zeitbetrags zur Folge, der für die Addition benötigt wird.
  • C(i+1) kann durch eine kompliziertere Gleichung wie folgt berechnet werden:
  • C[i+1] : = G1[i+1] + P1[i+1] * G2]i+2] + P1[i+1] * P2[i+2] * CIN (16)
  • Der Nachteil dieses Lösungsansatzes besteht darin, daß diese kompliziertere Gleichung zur Implementierung ein größeres und langsameres Gatter erfordern würde.
  • Gemäß der vorliegenden Erfindung ist der Bedarf nach einem Zwischenergebnis ohne die Notwendigkeit eines komplexen Gatters, das die Gleichung (16) ausführen könnte, beseitigt. Fig. 9 ist ein Diagramm eines Vier-Bit-Übertrag-Vorausschau-Addierers, der die vorliegende Erfindung beinhaltet.
  • Gemäß der Erfindung werden "Erzeugungs"- und "Weiterleitungs"-Ausdrücke für die Bit-Stufe [i+l] durch Schaltungen erzeugt, die organisiert sind, um die folgenden Gleichungen zu implementieren:
  • G4[i+1] : = G1[i+1] + Pl[i+1] * G2[i+2] (17)
  • P4[i+1] : = P1[i+1) * P2[i+2] (18)
  • Diese zwei Werte können gleichzeitig mit G4[i] und P[i] erzeugt werden. Dies ermöglicht, daß C[i+1] zur gleichen Zeit wie C[i], C[i+2] und C[i+3] unter Verwendung der folgenden Boolschen Beziehung berechnet wird:
  • C[i+1] : = G4[i+1] + P4[i+1] * CIN (19)
  • Die vorher genannten Konzepte sind in dem Vier-Bit-Übertrag-Vorausschau-Addierer von Fig. 9 durch einen Satz von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen implementiert, die in Fig. 9 durch die MCLA4-Blöcke 25'-0 dargestellt sind, wobei diese Schaltungen bezüglich der Logik, die dieselben implementieren, detaillierter in Fig. 10 dargestellt sind. Ein Vergleich der Darstellungen des MCLA4- Blocks 25'-0 in den Fig. 9 und 10 ergibt, daß jeder der vier Ausgangsknoten G4[0], P4[0], G4[1] und P4[1] in Fig. 9 ein getrenntes komplexes Logikgatter darstellt, das in der gleichen Reihenfolge in Fig. 10 mit "MCLA-G4[i]", "MCLA-P4[i]", "MCLA-G4[i+1]", bzw. "MCLA-P4[i+1]" bezeichnet ist. Es ist zu erkennen, daß durchgehend für jede der Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen niedrigerer Ebene der gleichen Übereinkunft gefolgt wird, wobei derselben durch diese gesamte Beschreibung bezugnehmend auf Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen zunehmend höherer Ebene gefolgt wird. Es sei ferner bemerkt, daß die erforderliche Struktur und die Verschaltung für jede der Schaltungen, die durch die verschiedenen Knoten dargestellt ist, adäquat durch die Gleichungen definiert ist, die in dieser Beschreibung angegeben sind, zusammen mit den Systemblockdiagrammen, beispielsweise den Fig. 3, 7 und 9. Aus diesem Grund werden, während diese Beschreibung zu Addierern einer größeren Anzahl von Stufen fortschreitet, nur die Gleichungen und die Systemblockdiagramme verwendet, um Platz zu sparen und die Komplexität dieser Beschreibung zu reduzieren.
  • Ein Vergleich der Vier-Bit-Addierer der Fig. 7 und der Fig. 9 wird zeigen, daß ein äußerst signifikanter Unterschied zwischen dem Addierer von Fig. 9, der die vorliegende Erfindung beinhaltet, und dem Addierer von Fig. 7 darin besteht, daß die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen des Addierers von Fig. 7 hierarchisch sind, wohingegen bei dem Vier-Bit-Übertrag-Vorausschau-Addierer von Fig. 9 die zusätzlichen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen MCLA-G4[i+1] und MCLA-P4[i+1] (siehe Fig. 10) nicht hierarchisch sind. Der Ausdruck hierarchische Gruppenerzeugungs- oder Gruppenweiterleitungs-Schaltung, wie er hierin verwendet ist, bezieht sich auf eine solche Schaltung, deren Eingangssignale auf die Ausgangssignale der Gruppenerzeugungs-, Gruppenweiterleitungs- oder Erzeugungs-, Weiterleitungs-Schaltungen der nächstniedrigeren Ebene begrenzt sind. Es ist zu sehen, daß dies für alle Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die in Fig. 7 dargestellt sind, der Fall ist. Im Gegensatz dazu empfangen die zusätzlichen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen MCLA-G4[i+1] und MCLA-P4[i+1] (Fig. 10) ihre Eingangssignale nicht nur von der Ebene unmittelbar unter denselben in der Pyramide von Schaltungen, sondern ebenso von der nächstniedrigeren Ebene. Um diese Unterscheidung hervorzuheben, wurden gestrichelte Linien, die mit "P" bezeichnet sind, zwischen dem Knoten P4[1] in Fig. 9 und den Ausgangsknoten P1[1] und P2[2] vorgesehen, die Eingangssignale zu der Schaltung, die durch den Knoten P4[1] dargestellt ist, liefern. In gleicher Weise wurden gestrichelte Linien, die mit "G" bezeichnet sind, in Fig. 9 zwischen dem Ausgangsknoten G4[1] auf der einen Seite und den Knoten G1[1], P1[1] und G2[2] vorgesehen, um visuell anzuzeigen, was auch aus den Gleichungen in Fig. 10 offensichtlich sein sollte, daß die Gruppenerzeugungsschaltung MCLA-G4[i+1] (Fig. 10), die in Fig. 9 durch den Knoten G4[1] dargestellt ist, ihre Eingangssignale von der Gruppenerzeugungsschaltung der unmittelbar nächstniedrigeren Ebene, die durch den Knoten G2[2] dargestellt ist, und durch die Ausgangssignale G1[1] und P1[1] der noch niedrigeren Ebene, die durch die CLA1-Schaltungen 17-1 erzeugt werden, empfängt.
  • Somit besteht durch das Vorsehen des zusätzlichen Ausdrucks "G4[i+1]" und "P4[i+1]" zu der CG-Schaltung 19-1 nicht länger die Notwendigkeit, die Informationen, die sich auf die Zustände der Stufen i+2 und i+3 beziehen, von der CG-Schaltung 19-2, die der Stufe i+2 zugeordnet ist, abzuleiten, da diese Informationen nun von den G2[0]- und P2[0]-Knoten der CLA2-Schaltung 23-2 in Fig. 9 erhalten wurden. Folglich kann im Gegensatz zu dem Addierer von Fig. 7, bei dem das C[i+ 2]-Ausgangssignal der CG-Schaltung 19-2 verwendet werden mußte, bevor das C[i+1]-Ausgangssignal der CG-Schaltung 19-1 der nächsthöheren Ordnung erzeugt werden konnte, bei der Schaltung von Fig. 9 der CIN-übertrag in die Stufe i+3 niedrigster Ordnung für alle Stufen des Addierers verwendet werden, einschließlich der Stufe i+1, wodurch die charakteristische Verzögerung, die dem Vorausschau-Addierer von Fig. 7 inhärent ist, vermieden wird.
  • Der Vorteil des vorherigen Lösungsansatzes wird noch deutlicher, wenn ein Acht-Bit-Addierer betrachtet wird. Ein Diagramm eines herkömmlichen Acht-Bit-Übertrag-Vorausschau-Addierers, der ähnlich dem Vier-Bit-Addierer von Fig. 7 ist und auf demselben basiert, ist in Fig. 11 gezeigt. Die Erzeugungs- und Weiterleitungs-Signale für eine Acht-Bit-Addierer können unter Verwendung der folgenden Boolschen Beziehung berechnet werden:
  • G8[i] : = G4[i] + P4[i] * G4[i+4] (20)
  • P8[i] : = P4[i] * P4[i+4] (21)
  • Überträge können bei diesem Acht-Bit-Addierer direkt durch Schaltungen erzeugt werden, die die folgenden Gleichungen implementieren:
  • C[i] : = G8[i] + P8[i] * CIN (22)
  • C[i+4] : = G4[i+4] + P4[i+4] * CIN (23)
  • C[i+6] : G2[i+6] + P2[i+6] * CIN (24)
  • C[i+7] : = G1[i+7] + P1[i+7] * CIN (25)
  • Jedoch müssen die Übertragsignale C[i+1], C[i+2], C[i+3] und C[i+5] entweder durch die Verwendung von einem der Überträge C[i+4] oder C[i+6], die gemäß den Gleichungen 23 bis 24 berechnet werden, oder mittels eines Gatters, das eine kompliziertere Gleichung implementiert, berechnet werden.
  • Die folgenden Boolschen Gleichungen können verwendet werden, um die Überträge unter Verwendung der Zwischenergebnisse der Gleichungen 23 bis 24 zu berechnen:
  • C[i+2] : = G2(i+2] + P2[i+2] * C[i+4] (26)
  • C[i+3] : = G2[i+3] + P2[i+3] * C[i+4] (27)
  • C[i+5] : = G1[i+5] + P1[i+5) * C[i+6] (28)
  • Die Überträge müssen warten, bis C(i+4] und C(i+6] berechnet wurden. C[i+1] muß ebenfalls warten, bis C[i+2] berechnet wurde. Dasselbe kann wie folgt berechnet werden:
  • C[i+1] : = G1[i+1] + P1[i+1] * C(i+2] (29)
  • Dies bedeutet, daß die Berechnung von C[i+1] über C[i] hinaus zwei zusätzliche Gatterverzögerungen benötigt.
  • Der Acht-Bit-Übertrag-Vorausschau-Addierer von Fig. 11 ist auf der Basis der oben beschriebenen Grundsätze aufgebaut. Derselbe weist eine Vier-Ebenen-Pyramide von Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen CLA1, CLA2, CLA4 und CLA8 auf. Zwei Sätze von Gattern, die jeweils in CLA4-Blöcken 25-0 und 25-4 zusammengefaßt sind, sind in einem einzelnen Paar von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die durch den CLA8-Block 27-0 dargestellt sind, wirksam. Die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die durch den CLA8-Block 27-0 dargestellt sind, sind durch die Gleichungen (20) und (21) dargestellt. Diese zwei Schaltungen stellen einfach eine weitere Ebene in der Pyramide von identischen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen dar, die zwischen den Erzeugungs- und Weiterleitungs-Schaltungen 17 und der CG-Schaltung 19-0 der höchsten Bitebene angeordnet sind.
  • Fig. 12 zeigt ein Diagramm eines Acht-Bit-Übertrag-Vorausschau-Addierers, der gemäß der vorliegenden Erfindung implementiert ist.
  • Der Acht-Bit-Übertrag-Vorausschau-Addierer von Fig. 12 baut auf den Techniken, die in dem Vier-Bit-Übertrag-Vorausschau-Addierer von Fig. 9 implementiert sind, auf und dehnt dieselben aus. Die Pyramidenstruktur desselben, die sich über vier Ebenen (L1, L2, L4, L8) erstreckt, weist zwei Unterpyramiden auf, die jeweils in MCLA-Blöcken 25'-0 und 25'-4 zusammengefaßt sind. Jede dieser Unterpyramiden kann identisch zu der Pyramidenstruktur von Fig. 9 sein. Die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die die höchste Ebene (8) bilden, die durch den MCLA8-Block 27'-0 dargestellt ist, weisen eine Gesamtzahl von vier Paaren von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, das Paar, das durch die Ausgangsknoten G8[0] und P8[0] widergespiegelt wird, deren Eingangssignale die gleichen sind wie die des nicht verbesserten Acht-Bit-Übertrag- Vorausschau-Addierers von Fig. 11, und die zusätzlichen Paare G8[1], P8[1], G8[2], P8[2] und G8[3], P8[3] auf, deren Eingangssignale bis zu den Ausgangssignalen der Gatter nicht nur in der nächstniedrigeren Ebene (L-4) sondern auch zu den Gattern der nächsten zwei niedrigeren Ebenen (L2, L1) hinab reichen. Diese zusätzlichen nicht-hierarchischen Gruppenerzeugungs- und Gruppenweiterleitungs-Paare sind durch die Gleichungen definiert, die dieselben implementieren, wobei diese Gleichungen für die Ausdrücke "G8[i+1]", "G8[i+2]", "G8[i+3]", und "P8[i+1]", "P8[i+2]", und "P8[i+3]" gelten.
  • Gemäß der Erfindung werden alle Überträge in dem Acht-Bit- Addierer gleichzeitig berechnet, indem die zusätzlichen Gruppenerzeugungs- und Gruppenweiterleitungs-Ausdrücke wie eben erklärt berechnet werden. Die Überträge in dem Acht- Bit-Addierer werden gemäß den folgenden Gleichungen berechnet:
  • C[i] : = G8[i] + P8[i] * CIN (30)
  • C[i+1] : = G8[i+1] + P8[i+1] * CIN (31)
  • C[i+2] : = G8[i+2] + P8[i+2] * CIN (32)
  • C[i+3] : = G8[i+3] + P8[i+3] * CIN (33)
  • C[i+4] : = G4[i+4] + P4[i+4] * CIN (34)
  • C[i+5] : = G4[i+5] + P4[i+5] * CIN (35)
  • C[i+6] : = G2[i+6] + P2[i+6] * CIN (36)
  • C[i+7] : = G1[i+7] + P1[i+7] * CIN (37)
  • Die zusätzlichen Erzeugungs- und Weiterleitungs-Ausdrücke in den obigen Gleichungen sind "G8[i+1]", "PB[i+1]", "G8[i+2]", "P8[i+2]", "G8[i+3]" und "P8[i+3]. Dieselben werden wie folgt berechnet:
  • G8[i+1] : = G4[i+1] + P4[i+1] * G4[i+4] (38)
  • P8[i+1] : = P4[i+1] * P4[i+4] (39)
  • G8[i+2] : = G2[i+2] + P2[i+2] * G4[i+4] (40)
  • P8[i+2] : - P2[i+2] * P4[i+4] (41)
  • G8[i+3] : = G1[i+3] + P1[i+3] * G4[i+4] (42)
  • P8[i+3] : - P1[i+3] * P4[i+4] (43)
  • Im wesentlichen stellt der oben beschriebene Prozeß das Verwenden von Gruppen, beispielsweise eine Vier-Bit-Gruppe, und das Liefern einer Gruppenerzeugungs- und einer Gruppenweiterleitungs-Schaltung für eine Untergruppe, die aus den drei niederstwertigen Bits besteht, dar. Diese Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen erzeugen die G4(i+ 1]- und P4[i+1)-Signale. Bei einer Acht-Bit-Gruppe ist eine Gruppenerzeugungs- und eine Gruppenweiterleitungs-Schaltung für jede Untergruppe der sieben niederstwertigen Bits, der sechs niederstwertigen Bits und der fünf niederstwertigen Bits vorgesehen. Diese Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen sind GB[i+1], P8[i+1], G8[i+2], P8[i+2], G8[i+3], bzw. P8[i+3]. Das Berechnen dieser zusätzlichen Erzeugungs- und Weiterleitungs-Signale ermöglicht die direkte Berechnung der Überträge von jedem Bit in der Gruppe in einem Schritt mit Schaltungen, beispielsweise denjenigen, die in den Fig. 4, 5, 6 und 8 gezeigt sind.
  • Die vorliegende Erfindung kann ebenso auf 16- und 32-Bit-Addierer angewendet werden. Fig. 13 zeigt ein Diagramm eines 32-Bit-Übertrag-Vorausschau-Addierers gemäß der vorliegenden Erfindung. Zusätzlich zu den Blocktypen CLA1, CLA2, MCLA4 und MCLAB sind zwei Blocktypen MCLA16 und MCLA32 vorgesehen. Der Addierer-übertraggenerator-Abschnitt ist aus vier Unterabschnitten aufgebaut, die CLA1-, CLA2-, MCLA4- und MCLA8- Blöcke identisch zu der Anordnung, die in Fig. 12 dargestellt ist, aufweisen und diese Blöcke bilden. Zwei derartige Abschnitte sind jedem eines Paars von MCLA16-Blöcken 29'-0 und 29'-16 zugeordnet, die einen 16-Bit-Erzeugungs-, Weiterleitungs-Unterabschnitt aufweisen, wobei der erste den oberen 16 Bits des Addierers, Stufen i bis i+15, zugeordnet ist, und der zweite den unteren 16 Bits des Addierers, Stufen i+16 bis i+31, zugeordnet ist. Das Ausgangssignal von jedem der Blöcke MCLA16 wird als ein Eingangssignal zu einem hierarchischen Paar von Erzeugungs- und Weiterleitungs- Schaltungen in dem MCLA32-Block 31'-0 zugeführt.
  • Die zwei Gruppenerzeugungs- und Gruppenweiterleitungs- MCLA16-Blöcke 29'-0 und 29'-16 sind identisch. Die folgenden Gleichungen stellen den MCLA16-Block 29'-0 dar:
  • G16[i] : = G8[i] + P8[i] * G8[i+8] (44)
  • P16[i] : = P8(i] * P8[i+8] (45)
  • G16[i+1] : = G8[i+1] + P8[i+1] * G8[i+8] (46)
  • P16[i+1] : = P8[i+1] * P8[i+8] (47)
  • G16[i+2] : = G8[i+2] + P8[i+2] * G8[i+8] (48)
  • P16[i+2] : = P8[i+2] * P8[i+8] (49)
  • G16[i+3] : = G8[i+3] + P8[i+3] * G8[i+8] (50)
  • P16[i+3] : = P8[i+3] * P8[i+8] (51)
  • G16[i+4] : = G4[i+4] + P4[i+4] * G8(i+8] (52)
  • P16[i+4] : = P4[i+4] * P8[i+8] (53)
  • G16[i+5] : = G4[i+5] + P4[i+5] * G8[i+8] (54)
  • P16[i+5] : = P4[i+5] * P8[i+8] (55)
  • G16[i+6] : = G2[i+6] + P2[i+6] * G8[i+8] (56)
  • P16[i+6] : = P2[i+6] * P8[i+8] (57)
  • G16[i+7] : = G1[i+7] + P1[i+7] * G8(i+8) (58)
  • P16[i+7] : = Pl[i+7] * P8[i+8] (59)
  • Der CLA32-Block 31'-0 implementiert die folgenden Gleichungen:
  • G32[i] : = G16[i] + P16[i] * G16(i+16) (60)
  • P32[i] : = P16[i] * P16[i+16] (61)
  • G32[i+1] : = G16[i+1] + P16[i+1] * G16[i+16] (62)
  • P32[i+1] : = P16[i+1] * P16[i+16] (63)
  • G32[i+2] : = G16[i+2] + P16[i+2] * G16[i+16] (64)
  • P32[i+2] : = P16[i+2] * P16[i+16] (65)
  • G32[i+3] : = G16[i+3] + P16[i+3] * G16[i+16) (66)
  • P32[i+3] : = P16[i+3] * P16[i+16] (67)
  • G32[i+4] : = G16[i+4] + P16[i+4] * G16[i+16] (68)
  • P32[i+4] : = P16[i+4] * P16[i+16] (69)
  • G32[i+5] : = G16[i+5] + P16[i+5] * G16[i+16] (70)
  • P32[i+5] : = P16[i+5] * P16[i+16] (71)
  • G32[i+6] : = G16[i+6] + P16[i+6] * G16[i+16] (72)
  • P32[i+6] : = P16[i+6] * P16[i+16] (73)
  • G32[i+7] : = G16[i+7] + P16[i+7] * G16[i+16] (74)
  • P32[i+7] : = P16[i+7] * P16[i+16] (75)
  • G32[i+8] : = G8[i+8] + P8[i+8] * G16[i+16] (76)
  • P32[i+8] : = P8[i+8] * P16[i+16] (77)
  • G32[i+9] : = G8[i+9] + P8[i+9] * G16[i+16] (78)
  • P32[i+9] : = P8[i+9] * P16[i+16] (79)
  • G32[i+10] : = G8[i+10] + P8[i+10] * G16[i+16] (80)
  • P32[i+10] : = P8[i+10] * P16[i+16] (81)
  • G32[i+11] : = G8[i+11] + P8[i+11] * G16[i+16] (82)
  • P32[i+11] : = P8[i+11] * P16[i+16] (83)
  • G32[i+12] : = G4[i+12] + P4[i+12] * G16[i+16] (84)
  • P32[i+12] : = P4[i+12] * P16[i+16] (85)
  • G32[i+13] : = G4[i+13] + P4[i+13] * G16[i+16] (86)
  • P32[i+13] : - P4[i+13] * P16[i+16] (87)
  • G32[i+14] : = G2[i+14] + P2[i+14] * G16[i+16] (88)
  • P32[i+14] : = P2[i+14] * P16[i+16] (89)
  • G32[i+15] : = G1[i+15] + P1[i+15] * G16[i+16] (90)
  • P32[i+15] : = P1[i+15] * P16[i+16] (91)
  • Die Üübertragsignale C[i] bis C[i+31] von Fig. 13 können in den jeweiligen CG-Blöcken 19-0 bis 19-31 direkt von den Ausgangssignalen der MCLA32-Blöcke 31'-0, des MCLA16-Blocks 29'-16, des MCLA8-Blocks 27'-24, des MCLA4-Blocks 25'-28, des CLA2-Blocks 23-30 und des CLA1-Blocks 17-31 gemäß den folgenden Gleichungen berechnet werden:
  • C[i] : = G32[i] + P32[i] * CIN (92)
  • C[i+1] : = G32[i+1] + P32[i+1] * CIN (93)
  • C[i+2] : = G32[i+2] + P32[i+2] * CIN (94)
  • C[i+3]) : = G32[i+3] + P32[1+3] * CIN (95)
  • C[i+4] : = G32[i+4] + P32[i+4] * CIN (96)
  • C[i+5] : = G32[i+5] + P32[i+5] * CIN (97)
  • C[i+6] : = G32[i+6] + P32[i+6] * CIN (98)
  • C[i+7] : = G32[i+7] + P32[i+7] * CIN (99)
  • C[i+8] : = G32[i+8] + P32[i+8] * CIN (100)
  • C[i+9] : = G32[i+9] + P32[i+9] * CIN (101)
  • C[i+10] : = G32[i+10] + P32[i+10] * CIN (102)
  • C[i+11] : = G32[i+11] + P32[i+11] * CIN (103)
  • C[i+12] : = G32[i+12] + P32[i+12] * CIN (104)
  • C[i+13] : = G32[i+13] + P32[i+13] * CIN (105)
  • C[i+14] : = G32[i+14] + P32[i+14] * CIN (106)
  • C[i+15] : = G32[i+15] + P32[i+15] * CIN (107)
  • C[i+16] : = G16[i+16] + P16[i+16] * CIN (108)
  • C[i+17] : = G16[i+17] + P16[i+17] * CIN (109)
  • C[i+18] : = G16[i+18] + P16[i+18] * CIN (110)
  • C[i+19] : = G16[i+19] + P16[i+19] * CIN (111)
  • C[i+20] : = G16[i+20] + P16[i+20] * CIN (112)
  • C[i+21] : = G16[i+21] + P16[i+21] * CIN (113)
  • C[i+22] : = G16[i+22] + P16[i+22] * CIN (114)
  • C[i+23] : = G16[i+23] + P16[i+23] * CIN (115)
  • C[i+24] : = G8[i+24] + P8[i+24] * CIN (116)
  • C[i+25] : = G8[i+25] + P8[i+25] * CIN (117)
  • C[i+26] : = G8[i+26] + P8[i+26] * CIN (118)
  • C[i+27] : = G8[i+27] + P8[i+27] * CIN (119)
  • C[i+28] : = G4[i+28] + P4[i+28] * CIN (120)
  • C[i+29] : = G4[i+29] + P4[i+29] * CIN (121)
  • C[i+30] : = G2[i+30] + P2[i+30] * CIN (122)
  • C[i+31] : = G1[i+31] + P1[i+31] * CIN (123)
  • Es sollte offensichtlich sein, daß, obwohl die vorherige Erläuterung auf eine Anordnung gerichtet war, bei der die Größe von Gruppierungen sich für jede Stufe des Übertrag- Vorausschau-Addierers verdoppelt (d.h. ein Erzeugungs- und ein Weiterleitungs-(Gatter) in CLA1, zwei von jedem in CLA2, vier von jedem in CLA4, usw.), die Größe der Gruppierungen sich auch in jeder Stufe vervierfachen kann (d.h. vier Erzeugungs- und Weiterleitungs-[Gatter] in CLA1, 16 in CLA2, 64 in CLA3, usw.).
  • Aus dem Vorhergehenden ist offensichtlich, daß bezüglich der Technik von Vorausschau-Addierern eine Verbesserung erreicht wurde, die den Betrieb derartiger Addierer signifikant beschleunigt, indem von den Eingangsbits A und B mittels Erzeugungs-, Weiterleitungs-, Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen Übertragsignale zu jeder Stufe des Addierers abgeleitet werden, ohne die Verwendung eines Übertragsignals von einer vorherigen Stufe des Addierers zu benötigen.

Claims (7)

1. Ein Vorausschau-Addierer mit einer Reihe von Summationsstufen (21-0 bis 21-31), jede zum Addieren eines jeweiligen Paars von entsprechenden Bits (i) von zwei Mehrbit-Binärzahlen (A und B), wobei jede Summationsstufe ein Paar von A- und B-Bit-Eingangssignalen (A[i] und B[i]) und ein Übertrag-Eingangssignal (CIN) aufweist, wobei der Vorausschau-Addierer ferner einen Übertraggenerator mit folgenden Merkmalen aufweist:
(a) eine Reihe von Erzeugungs- und Weiterleitungs- Schaltungen (17-0 bis 17-31), von denen jede (17-i) einer nachfolgenden der Reihe von Summationsstufen (21-0 bis 21-31) zugeordnet ist und jede ansprechend auf die A- und B-Bit-Eingangssignale (A[i] und B[i]), die durch ihre zugeordnete Summationsstufe empfangen werden, zum Erzeugen eines Erzeugungssignals (G1) und eines Weiterleitungssignals (P1);
(b) eine Mehrzahl von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen (23-0, 23-2, ..., 23-8, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16, 31-0), von denen jede einer nachfolgenden der Reihe von Summationsstufen (21-0 bis 21-31) zugeordnet ist und von denen jede ein Gruppenerzeugungs- (G2, G4, G8, G16, G32) und ein Gruppenweiterleitungs-Signal (P2, P4, P8, P16, P32) erzeugt,
wobei jede der Gruppenerzeugungsschaltungen ein Gruppenerzeugungssignal (G2, G4, G8, G16, G32) erzeugt, das die Ausgangssignale von allen in der Reihe von Erzeugungs- und Weiterleitungs-Schaltungen (17-0 bis 17-31) bis zu und einschließlich der Erzeugungs- und Weiterleitungs-Schaltungen, die der Summationsstufe zugeordnet sind, der die Gruppenerzeugungsschaltung zugeordnet ist, widerspiegelt,
wobei jede der Gruppenweiterleitungsschaltungen ferner ein Gruppenweiterleitungssignal (P2, P4, P8, P16, P32) erzeugt, das die Ausgangssignale aller in der Reihe von Weiterleitungsschaltungen bis zu und einschließlich der Weiterleitungsschaltung, die der Summationsstufe zugeordnet ist, der die Gruppenweiterleitungsschaltung zugeordnet ist, widerspiegelt,
wobei die Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16, 31-0) in einem Array angeordnet sind, das eine Abfolge von Sätzen (L2, L4, L8, L16, L32) einer zunehmend höheren Ebene von hierarchischen und nicht-hierarchischen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen aufweist,
wobei jedes Mitglied des Satzes (L2) der niedrigsten Ebene der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen verschaltet ist, um die Erzeugungs- und Weiterleitungs-Ausgangssignale eines anderen Teilsatzes der Erzeugungs- und Weiterleitungs-Schaltungen zu empfangen, und
wobei jedes Mitglied oberhalb des Satzes (L2) der untersten Ebene verschaltet ist, um entweder Gruppenerzeugungs- und Gruppenweiterleitungs-Ausgangssignale eines anderen Teilsatzes von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen einer niedrigeren Ebene oder Erzeugungs- und Weiterleitungs-Ausgangssignale und Gruppenerzeugungs- und Gruppenweiterleitungs-Ausgangssignale von einem anderen Teilsatz von Erzeugungs- und Weiterleitungs-Schaltungen und Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen einer niedrigeren Ebene zu empfangen; und
(c) einer Reihe von Übertragerzeugungsschaltungen (19-0 bis 19-31), eine für jede Summationsstufe des Addierers, wobei die erste (19-31) der Reihe (19-0 bis 19-31) wirksam ist, um ein Übertragsignal als Reaktion auf ein gewöhnliches Übertrag- Eingangssignal (CIN) und die Erzeugungs- und Weiterleitungs-Signale, die durch die Erzeugungs- und Weiterleitungs-Schaltungen (17-31), die der ersten (21-31) der Reihe von Summationsstufen (21-0 bis 21-31) zugeordnet sind, erzeugt werden, zu erzeugen, wobei jede des Rests der Reihen (19-0 bis 19-30) wirksam ist, um als Reaktion auf das gewöhnliche Übertrageingangssignal (CIN) und das Gruppenerzeugungssignal und das Gruppenweiterleitungssignal, das durch eine jeweilige der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die der nachfolgenden der Summationsstufen (21-0 bis 21-31) zugeordnet ist&sub1; erzeugt wird, zu erzeugen.
2. Der Vorausschau-Addierer gemäß Anspruch 1, bei dem:
(a) die Reihe von Erzeugungs- und Weiterleitungs- Schaltungen (17-0 bis 17-31) in Teilsätzen von 2n Erzeugungs- und Weiterleitungs-Schaltungen angeordnet sind, wobei n eine positive ganze Zahl ist;
(b) hierarchische Mitglieder der Sätze (L4, L8, L16, L32) über dem Satz der untersten Ebene der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen (L2) verschaltet sind, um Ausgangssignale der Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen nur in dem Satz der nächstniedrigeren Ebene von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen zu empfangen; und
(c) nicht-hierarchische Mitglieder der Sätze (L4, L8, L16, L32) über dem Satz (L2) der untersten Ebene der Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen (L2) verschaltet sind, um die Ausgangssignale von
(i) entweder sowohl Erzeugungs-, Weiterleitungsals auch Gruppenerzeugungs-, Gruppenweiterleitungs-Schaltungen, oder
(ii) Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen, die zu Sätzen auf unterschiedlichen Ebenen gehören,
zu empfangen.
3. Der Vorausschau-Addierer gemäß Anspruch 1, bei dem:
(a) der Addierer n Stufen aufweist;
(b) die Erzeugungs- und Weiterleitungs-Schaltungen (17-0 bis 17-31) auf einer Basisebene L1 angeordnet sind; und
(c) die Gruppenerzeugungs- und Gruppenweiterleitungs- Schaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16, 31-0) in fünf zunehmend höheren Ebenen L2, L4, L8, L16 und L32 angeordnet sind, wobei jede der höheren Ebenen n/2 Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen aufweist.
4. Der Vorausschau-Addierer gemäß Anspruch 3, bei dem Ausgewählte der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16, 31-0) auf jeder der Ebenen L2, L4, L8, L16 und L32 Eingangssignale von Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen auf einer Mehrzahl der Ebenen L2, L4, L8, L16 und von ausgewählten der Erzeugungs- und Weiterleitungs-Schaltungen (17-0 bis 17-31) auf der Ebene L1 empfangen.
5. Der Vorausschau-Addierer gemäß Anspruch 4, bei dem die Gruppenerzeugungsschaltungen (31-0) auf der Ebene L32 Eingangssignale von den Gruppenerzeugungsschaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16) auf jeder der Ebenen L16, L8, L4, L2 und von einer Erzeugungsschaltung auf der Ebene Ll (17-0 bis 17-31) empfangen, und bei dem die Gruppenweiterleitungsschaltungen (31-0) auf der Ebene L32 Eingangssignale von Gruppenweiterleitungsschaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, 27-16, 27-24, 29-0, 29-16) auf jeder der Ebenen L16, L8, L4 und L2 empfangen.
6. Der Vorausschau-Addierer gemäß Anspruch 1, bei dem bei der Mehrzahl von Gruppenerzeugungsschaltungen und Gruppenweiterleitungsschaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, 27-16, 27-24, 29-0, 29-16)
(a) die hierarchischen Gruppenerzeugungsschaltungen und Gruppenweiterleitungsschaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16) von jeder außer der untersten Ebene die Ausgangssignale von n der Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen von der nächstniedrigeren Ebene empfangen; und
(b) zumindest bestimmte der nicht-hierarchischen Gruppenerzeugungsschaltungen in den nicht-hierarchischen Gruppenerzeugungsschaltungen und Gruppenweiterleitungsschaltungen (23-0, 23-2, ..., 23-28, 23-30, 25-0, 25-4, ..., 25-24, 25-28, 27-0, 27-8, ..., 27-16, 27-24, 29-0, 29-16) auf unterschiedlichen Ebenen der Pyramide verschaltet sind, um die Ausgangssignale sowohl von Erzeugungs-, Weiterleitungs- (17-0 bis 17-31) als auch Gruppenerzeugungs-, Gruppenweiterleitungs-Schaltungen auf niedrigeren Ebenen der Pyramide zu empfangen, und zumindest bestimmte der nicht-hierarchischen Gruppenweiterleitungsschaltungen verschaltet sind, um die Ausgangssignale sowohl von Weiterleitungs- als auch von anderen Gruppenweiterleitungsschaltungen auf niedrigeren Ebenen der Pyramide zu empfangen.
7. Der Vorausschau-Addierer gemäß Anspruch 6, bei dem:
(a) der Addierer eine Reihe von zunehmend niederwertigeren Stufen i bis i+7 aufweist, wobei jede Stufe eine jeweilige einer Reihe von entsprechenden Summationsstufen SUM[i] bis SUM[i+7] (21-0 bis 21-7), Übertragerzeugungsstufen CG[i] bis CG[i+7], Erzeugungsschaltungen G[i] bis G[i+7] und Weiterleitungsschaltungen P[i] bis P[i+7] aufweist; und
(b) die CG[i+7]-Stufe (19-7) seine Eingangssignale von den Erzeugungs- und Weiterleitungs-Schaltungen G[i+7] und P[i+8] (17-0 bis 17-7) empfängt, die Übertragerzeugungsschaltungen CG [i], CG[i+4] und CG[i+6] (19-0, 19-4, und 19-6) ihre Eingangssignale von den hierarchischen Gruppenerzeugungs- und Gruppenweiterleitungsschaltungen empfangen, und die Weiterleitungserzeugungsschaltungen CG-[i+1], CG[i+2] und CG[i+3] (19-1, 19-2 und 19-3) ihre Eingangssignale von den nicht-hierarchischen Gruppenerzeugungs- und Gruppenweiterleitungs-Schaltungen empfangen.
DE69125761T 1990-07-18 1991-06-12 Übertragvorgriffsaddierer Expired - Fee Related DE69125761T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/554,612 US5166899A (en) 1990-07-18 1990-07-18 Lookahead adder

Publications (2)

Publication Number Publication Date
DE69125761D1 DE69125761D1 (de) 1997-05-28
DE69125761T2 true DE69125761T2 (de) 1997-07-31

Family

ID=24214009

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69125761T Expired - Fee Related DE69125761T2 (de) 1990-07-18 1991-06-12 Übertragvorgriffsaddierer

Country Status (5)

Country Link
US (1) US5166899A (de)
EP (1) EP0467524B1 (de)
JP (1) JP3248735B2 (de)
KR (1) KR950005522B1 (de)
DE (1) DE69125761T2 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276635A (en) * 1992-02-04 1994-01-04 Motorola, Inc. Method and apparatus for performing carry look-ahead addition in a data processor
DE69330363T2 (de) * 1992-03-31 2001-11-15 Stmicroelectronics, Inc. Parallelisierter Übertragvorgriffsaddierer
KR940007926B1 (ko) * 1992-05-20 1994-08-29 삼성전자 주식회사 가산기
JP3018754B2 (ja) * 1992-07-10 2000-03-13 日本電気株式会社 桁上げ先見加算方法とその装置
US5278783A (en) * 1992-10-30 1994-01-11 Digital Equipment Corporation Fast area-efficient multi-bit binary adder with low fan-out signals
SE9302158L (sv) * 1993-06-22 1994-12-23 Jiren Yuan En extremt snabb adderaranordning
US6735612B1 (en) 1997-06-24 2004-05-11 International Business Machines Corporation Carry skip adder
JPH11143685A (ja) 1997-06-24 1999-05-28 Internatl Business Mach Corp <Ibm> キャリー・スキップ・アダー
US5881274A (en) * 1997-07-25 1999-03-09 International Business Machines Corporation Method and apparatus for performing add and rotate as a single instruction within a processor
DE10050589B4 (de) 2000-02-18 2006-04-06 Hewlett-Packard Development Co., L.P., Houston Vorrichtung und Verfahren zur Verwendung beim Durchführen einer Gleitkomma-Multiplizier-Akkumulier-Operation
US6539413B1 (en) * 2000-03-15 2003-03-25 Agere Systems Inc. Prefix tree adder with efficient sum generation

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3805045A (en) * 1972-10-30 1974-04-16 Amdahl Corp Binary carry lookahead adder using redundancy terms
JPS6143341A (ja) * 1984-08-07 1986-03-01 Nec Corp 加算回路
US5047974A (en) * 1987-11-24 1991-09-10 Harris Corporation Cell based adder with tree structured carry, inverting logic and balanced loading
US4858168A (en) * 1988-02-16 1989-08-15 American Telephone And Telegraph Company Carry look-ahead technique having a reduced number of logic levels

Also Published As

Publication number Publication date
US5166899A (en) 1992-11-24
EP0467524A2 (de) 1992-01-22
KR950005522B1 (ko) 1995-05-25
EP0467524B1 (de) 1997-04-23
KR920003150A (ko) 1992-02-29
EP0467524A3 (en) 1993-02-24
JP3248735B2 (ja) 2002-01-21
DE69125761D1 (de) 1997-05-28
JPH04233629A (ja) 1992-08-21

Similar Documents

Publication Publication Date Title
DE69838877T2 (de) Architektur eines schnellen regulären multiplizierers
DE69632978T2 (de) Multi-Operand-Addierer, der Parallelzähler benutzt
DE3853805T2 (de) Digitaler Multiplizierer und Multiplizierer-Akkumulator, welcher Zwischenergebnisse vorlädt und akkumuliert.
DE3700991C2 (de) Digitaler Übertragsvorgriffsaddierer
DE69125761T2 (de) Übertragvorgriffsaddierer
DE3686681T2 (de) Parallelmultiplizierer.
DE69731700T2 (de) Arithmetischer Schaltkreis und arithmetisches Verfahren
DE3927009A1 (de) Addierschaltung
DE4101004C2 (de) Paralleler Multiplizierer mit Sprungfeld und modifiziertem Wallac-Baum
DE69130640T2 (de) Arithmetische Operationseinheit mit Bit-Invertierungsfunktion
DE2421130C2 (de)
DE2505653A1 (de) Hochdichter multiplizierer
DE1197650B (de) Parallel-Addierer
DE69820230T2 (de) N-weg verarbeitung von bitketten in einer datenflussarchitektur
DE2221693C3 (de) Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen
DE10019698C2 (de) Vorrichtung zum Durchführen einer Summier-und-Vergleichs-Operation
EP0051079A1 (de) Binäres MOS-Ripple-Carry-Parallel-Addier/Subtrahierwerk und dafür geeignete Addier/Subtrahierstufe
DE4335245A1 (de) Vektorlogikverfahren und dynamisches Logikgatter für eine selbstzeitgebende, monotone Logikprogression
DE69726248T2 (de) Addierer mit bedingter Summe unter Benutzung von Durchlasstransistor-Logik
EP0383965A1 (de) Multiplizierwerk
DE69026414T2 (de) Binäres Addiergerät
DE3828290C2 (de)
EP0257362A1 (de) Addierer
DE3880825T2 (de) Anordnung zur schnellen addition von binärzahlen.
DE2727051C3 (de) Einrichtung zur binären Multiplikation einer ersten Zahl als Multiplikand mit einer den Multiplikator ergebenden Summe aus einer zweiten und dritten Zahl im Binärcode

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE),

8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8339 Ceased/non-payment of the annual fee