DE69130621T2 - Schneller digitaler Dividierer - Google Patents

Schneller digitaler Dividierer

Info

Publication number
DE69130621T2
DE69130621T2 DE69130621T DE69130621T DE69130621T2 DE 69130621 T2 DE69130621 T2 DE 69130621T2 DE 69130621 T DE69130621 T DE 69130621T DE 69130621 T DE69130621 T DE 69130621T DE 69130621 T2 DE69130621 T2 DE 69130621T2
Authority
DE
Germany
Prior art keywords
adder
carry
signals
quotient
divider
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
DE69130621T
Other languages
English (en)
Other versions
DE69130621D1 (de
Inventor
Thomas W Lynch
Salim A Shah
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of DE69130621D1 publication Critical patent/DE69130621D1/de
Application granted granted Critical
Publication of DE69130621T2 publication Critical patent/DE69130621T2/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
    • 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/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • G06F7/537Reduction of the number of iteration steps or stages, e.g. using the Sweeny-Robertson-Tocher [SRT] algorithm
    • G06F7/5375Non restoring calculation, where each digit is either negative, zero or positive, e.g. SRT

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)
  • Oscillators With Electromechanical Resonators (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Stereophonic System (AREA)
  • Electrotherapy Devices (AREA)
  • Studio Circuits (AREA)

Description

  • Die Erfindung betrifft eine Dividiervorrichtung und insbesondere eine Hochgeschwindigkeits-Dividiervorrichtung für elektronische digitale Computer.
  • Ein Übertrag-Ablage-Addierer (CSA) unterscheidet sich von anderen Typen von Addierern durch die Tatsache, daß die aus jeder Addition resultierenden Übertrag-Bits und Zwischensummen-Bits nicht unmittelbar kombiniert und konsolidiert werden, sondern statt dessen separat voneinander abgelegt werden, um anschließend bei der nächsten Addition verwendet zu werden, die von dem CSA durchgeführt wird, wobei deren Eingangssignale die abgelegten Übertrag- und Zwischensummen-Bits (die letzteren werden der Einfachheit willen im folgenden lediglich als "Summen-Bits" bezeichnet) und die Bits eines hinzuaddierten oder in manchen Fällen wirksam subtrahierten Operanden aufweisen, wobei der Wert zusammen durch diese abgelegten Übertrag- und Summen-Bits repräsentiert sind.
  • Übertrag-Ablage-Addierer werden normalerweise in Hochgeschwindigkeits-Multipliziervorrichtungen verwendet, wo sie generell in der Lage sind, schneller als "Übertrag-Ausbreitungs"- oder "Welligkeits"-Addierer zu funktionieren, da ein Übertrag-Ablage-Addierer den relativ zeitaufwendigen Vorgang des Kombinieren von Überträgen mit Summen-Bits zwischen aufeinanderfolgenden Additionen in dem Multiplikationsvorgang nicht vollständig ausführt, sondern diese Aufgabe bis zu dem letzten Zyklus der Multiplikationsoperation aufschiebt. Ferner wurde vorgeschlagen, einen Übertrag-Ablage-Addierer in Divisionsoperationen zu verwenden, wie in dem U. S.-Patent 4,084,254 von R. E. Birney et al. beschrieben, wobei der Vorteil dieses Vorschlags darin liegt, daß er eine Kombination aus Multiplizierer und Dividierer, der mit einem einzigen Addierer des CSA-Typs zur Verwendung sowohl bei Multiplikations- als auch bei Divisionsoperationen versehen sein kann.
  • In der Weise, in der sie generell verwendet werden, haben Übertrag-Ablage-Addierer einen Nachteil, der trotz des oben erwähnten, durch sie erzielten Geschwindigkeits-Vorteils ihre Nützlichkeit beeinträchtigt hat. Während der Durchführung der Addier-, Komplementier- und Spaltenverschiebungs-Funktionen ergeben sich zahlreiche Fälle, bei denen ein Übertrag- oder Summen-Bit, das an der Ausgangsseite irgendeiner Ordnungs- oder Bit-Position in dem Addierer auftritt, wieder als Eingabe zu der gleichen Ordnungs- oder Bit-Position in dem Addierer eingegeben werden muß. Aufgrund dieses Wiedereingabe-Erfordernisses war es bisher üblich, Übertrag-Ablage-Addierer doppelt vorzusehen und die Addierer-Paare alternierend zu betätigen, so daß ein Ausgangsbit aus irgendeiner Ordnung oder Position in einem Addierer des Paars bei Bedarf als Eingangssignal der entsprechenden Ordnung oder Position in dem anderen Addierers des Paars zugeführt werden kann, ohne dadurch eine unerwünschte Interaktion zwischen einem Ausgangsbit und seinem wieder eingegebenen Gegenstück an der gleichen CSA-Bit-Position zu verursachen. Diese Duplizierung der Addierer-Bestückung zieht einen Kostenfaktor nach sich, der gegenüber dem Geschwindigkeitsfaktor bei einer herkömmlichen CSA-Installation abgewogen werden muß. Während es wünschenswert ist, die Verwendung einer doppelten Addierer-Bestückung entfallen zu lassen und einen einzigen CSA mit nur einem einzigen geordneten Set von Bit-Positionen zu verwenden, um die oben beschriebenen Ergebnisse zu erzielen, muß dies erreicht werden, ohne die Fähigkeit des DSA zu beeinträchtigen, sämtliche der von ihm verlangten Funktionen durchzuführen. Insbesondere muß ein Weg geschaffen werden, das Wiedereingabeproblem handzuhaben, wenn kein doppeltes Set von CSA-Bit-Positionen zu diesem Zweck verfügbar ist.
  • Wenn gemäß dem oben genannten Patent von Birney et al. ein Übertrag-Ablage-Addierer als Teil einer Dividiervorrichtung verwendet wird, existiert ein zusätzliches Erfordernis dahingehend, daß die CSA Information liefern muß, die in einem Lookahead-Netzwerk verwendbar ist, um auf der Basis der verschiedenen CSA-Ausgangswerte im voraus zu bestimmen, ob jede vorgeschlagene komplementäre Subtraktion in dem Dividiervorgang ohne Verursachung eines Überziehens erfolgreich durchgeführt werden kann oder nicht. Zu diesem Zweck muß jede CSA- Bit-Position zwei Typen von Ausgangsbits erzeugen: (1) zwischengespeicherte Summen- und Übertrag-Ausgangsbits, die nur zu vorbestimmten Taktzeiten gesetzt oder geändert werden können, wobei sie zu allen übrigen Zeiten stabil sind; und (2) nicht zwischengespeicherte Summen- und Übertrag-Bits (im folgenden als "Vor-Summen"- oder "Vor-Übertrags"-Bits bezeichnet), deren jeweilige Werte zu jedem Zeitpunkt durch die momentanen Werte der Strom-Eingangssignale für diese CSA-Bit- Position bestimmt werden, wobei die letztere verwendet wird, um die Test-Bestimmungsvorgänge zwecks Verhinderung des Auftretens eines Überziehens durchzuführen. Der herkömmliche Übertrag-Ablage-Addierer ist nicht in der Lage, aus der gleichen Bit-Zelle sowohl zwischengespeicherte als auch nicht zwischengespeicherte Ausgangssignale zu erzeugen.
  • Während eines normalen Betriebsverlaufs führt ein normaler digitaler Computer zahlreiche Rechenvorgänge durch, zu denen Addition, Subtraktion, Multiplikation und Division gehören. Die Division ist bei weitem die am meisten komplexe dieser Operationen, die typischerweise mehr Hardware und Berechnungszeit verlangt als die anderen Operationen. Der Stand der Technik bietet eine Vielzahl von Divisionstechniken, denen die Verwendung eines iterativen Verfahrens zur Quotientenerzeugung gemeinsam ist. Bei dem iterativen Verfahren wird generell eine einzelne Quotientenziffer in jedem iterativen Zyklus erzeugt. Im folgenden werden drei der herkömmlichen Techniken erläutert.
  • Eine Rückstell-Divisiontechnik ist durch die Wahl von Quotienten-Ziffern in dem Bereich von 0, 1, ... (beta-1) gekennzeichnet, wobei beta die Wurzel der Division ist. Thornton beschreibt in "Design of a Computer - The Control Data 6500" (Scott, Foresman and Co., Glenview, I11., 1970, S. 101-105) einen für die Vierer-Wurzel ausgelegten Dividierer, bei dem diese Divisionstechnik verwendet wird. Die Vorrichtung enthält drei Addierer-/Subtrahierer-Einheiten zur gleichzeitigen Berechnung von Kandidaten-Divisor-Mehrfachen und arbeitet entsprechend einem Verfahren, das demjenigen der manuellen, mit Stift und Papier durchgeführten Division ähnlich ist.
  • Eine zweite Divisionstechnik, die Division ohne Rückstellung, ist gekennzeichnet durch die Wahl von Quotienten-Ziffern mit den Werten - (beta-1); ..., -2, -1, 1, 2, ..., (beta-1). Ein Vorgang, bei dem eine modifizierte Form dieser Technik verwendet wird, wird von Nandi et al. in "A Simple Technique for Digital Division" diskutiert (Communications of the ACM, Nr. 10, 1967, S. 299-301). In der iterativen Phase der Quotienten- Ziffern-Erzeugung werden bei dem Verfahren gemäß Nandi et al. "Teil-Reste" erzeugt, Werte, die die Differenz zwischen dem Numerator und dem Multiplikationsprodukt des Denominators und den zuvor erzeugten Quotienten-Ziffern reflektieren. Innerhalb der iterativen Phase wird eine einzelne Wurzel-beta-Quotienten-Ziffer als eine mathematische Funktion jedes Teil-Restes erzeugt.
  • Eine Variante der Divisionstechnik ohne Rückstellung besteht in der SRT-Division, die ferner durch die Wahl von Quotierten- Ziffern in dem Bereich -(beta-1), ...; -1, 0, 1, ..., (beta-1) gekennzeichnet ist. Eine Erläuterung der SRT-Technik findet sich bei Robertson, "A New Class of Digital Division Computers", IRE Transactions on Electronic Computers, Vol. EC-7, S. 218-222, Sept. 1958. Bei dem Verfahren von Robertson wird ein iterativer Prozeß verwendet, der dem von Nandi et al. verwendeten ähnlich ist. Bei Robertson jedoch wird jede Quotienten- Ziffer durch den Betrieb einer Wählschaltung erzeugt, die eine große Look-up-Tabelle enthält.
  • Die bei den herkömmlichen Divisionsverfahren auftretenden Nachteile sind zahlreich. Bei Thornton beispielsweise gleichen die Leistungssteigerungen nicht die Kosten aus, die mit den erhöhten Anforderungen an die Hardware einhergehen. Sowohl Robertson als auch Nandi et al. erzeugen Quotienten-Ziffern auf eine Weise, die einen höheren Hardware = Aufwand erfordert, um eine Umsetzung einzelner Quotienten-Ziffern in eine herkömmliche Rückstell-Form zu erzielen. Bei Nandi et. al. ist in manchen Fällen eine weitere Prüfung der beiden vorangehenden Wurzel-beta-Ziffern eines Teil-Restes erforderlich, um eine einzelne Quotienten-Ziffer zu bilden. Ferner erfordert das Verfahren von Robertson eine Look-up-Tabelle, deren Größe als Funktion einer vergrößerten Wurzel schnell ansteigt. Zudem verlangt dieses Verfahren eine große Datenweg-Länge, wobei es sich um die bitweise Länge von Signalen handelt, die zwischen Dividierer-Elementen übertragen werden.
  • US-A-4,084,254 beschreibt einen zum Durchführen einer digitalen Division vorgesehenen Dividierer, der einen Übertrag-Ablage-Addierer und eine Quotienten-Vorhersage-Logikschaltung aufweist, wobei der Addierer Teil-Restsummen-Signale, Teil- Rest-Übertrag-Signale; und Wahr- und Komplement-Funktionen mehrerer von dem Addierer zu verarbeitender Datenwerte empfängt.
  • US-A-4,503,512 beschreibt eine Zellen-Divisionsschaltung mit einem ersten Addierer zum Addieren eines Dividenden und eines Divisors zwecks Bildung eines ersten Restes, und einem zweiten Addierer zum Addieren eines Dividenden mit dem Komplement des Divisors zwecks Bildung eines zweiten Restes, wobei die Schaltung eine Einrichtung zum Komplementieren des Bits höchster Ordnung jedes der ersten und zweiten Reste aufweist, um dadurch die ersten und zweiten Quotienten-Bits zu bilden. Es ist eine Selektorschaltung vorgesehen, um die ersten oder zweiten Quotienten-Bits zu wählen und die ersten oder zweiten Reste auf ein erstes Wählsignal hin zu wählen.
  • US-A-3,621,218 beschreibt einen Dividierer, der ein erstes Paar von Registern, einen Dekodierer, ein Paar von Gatter- Schaltungen, einen Übertrag-Ablage-Addierer und ein zweites Paar von Registern aufweist. Der Dekodierer erzeugt als Reaktion auf die oberen Teile von Summen- und Übertrag-Signalen, die einen in dem ersten Paar von Registern gehaltenen Teil- Rest repräsentieren, einen Teil-Quotienten. Der Übertrag-Ablage-Addierer addiert den um eine Ziffer aufwärts verschobenen Teil-Rest mit dem Divisor, Null oder dem Komplement des Divisors gemäß der Wahl durch das Paar von Gatter-Schaltungen als Reaktion auf den Teil-Quotienten und erzeugt neue Summen- und Übertrag-Signale, die einen neuen Teil-Rest repräsentieren, um den vorherigen Teil-Rest in dem ersten Paar von Registern durch diese Signale zu ersetzen. Somit hält das zweite Paar von Registern nacheinander die Abfolge der durch den Dekodierer erzeugten Teil-Quotienten.
  • EP-A-0,040,279 beschreibt einen Binär-Dividierer mit: einem Aktivierungs-Register zum Erhalt eines Dividenden; einem Divisor-Register zum Erhalt eines Divisors; einem Erzeugungs-Register; und ersten und zweiten Übertrag-Ablage-Addierern. Der erste Addierer ist derart geschaltet, daß er Eingangssignale von dem Aktivierungs-Register, dem Divisor-Register und dem Erzeugungs-Register empfängt, und der zweite Addierer ist derart geschaltet, daß er Eingangssignale von dem Aktivierungs-Register, dem Komplement des Divisor-Registers und dem Erzeugungs-Register empfängt. Es sind Einrichtungen, die mit den ersten und zweiten Addieren verbunden sind, vorgesehen, um das Vorzeichen eines aktuellen Teil-Restes zu bestimmen, und ein Vorzeichen-Aufzeichnungs-Flip-flop speichert das Vorzeichen des vorausgegangenen Teil-Restes. Ein Addierer-Wähl-Gatter gattert die Ausgangssignale eines der Addierer für einen weiteren Zyklus des Divisionsvorgangs, und ein Quotientenschieberegister speichert die Quotienten-Bits, während sie entwickelt werden.
  • Gemäß der Erfindung wird ein Dividierer zum Durchführen einer Hochgeschwindigkeits-Digitaldivision mit einem Übertrag-Ablage-Addierer und einer Quotientenvorhersage-Logikschaltung geschaffen, wobei der Addierer Teil-Restsummen-Signale, Teil- Rest-Übertrag-Signale, und. Wahr- und Komplement-Funktionen mehrerer von dem Addierer zu verarbeitenden Datenwerte empfängt, wobei der Dividierer dadurch gekennzeichnet ist, daß der Addierer sämtliche möglichen Additionen der empfangenen Signale durchführt und eine Multiplexereinrichtung auf Signale hin, die aus der Quotientenvorhersage-Logikschaltung empfangen werden, eine geeignete der Additionen wählt, wobei die Multiplexereinrichtung in einer Rückkopplungsschleife mit der Quotientenvorhersage-Logikschaltung verbunden ist, wodurch sich der Betrieb des Übertrag-Ablage-Addierers mit dem Betrieb der Quotientenvorhersage-Logikschaltung zeitlich überlagert, um die Geschwindigkeit der Division zu erhöhen.
  • Die Zeichnungen dienen lediglich als Beispiel.
  • Fig. 1 zeigt ein Blockschaltbild einer herkömmlichen Übertrag-Ablage-Addierer-Konfiguration;
  • Fig. 2 zeigt ein Blockschaltbild einer neuen Übertrag-Ablage- Addierer-Konfiguration, die eine kürzere iterative Verzögerung hat als die Konfiguration gemäß Fig. 1;
  • Fig. 3 zeigt ein Blockschaltbild einer speziellen Übertrag- Ablage-Addierer-Konfiguration gemäß den Lehren der vorliegenden Erfindung; und
  • Fig. 4 zeigt ein detaillierteres schematisches Schaltbild des Addierers gemäß Fig. 3.
  • Wie nun ersichtlich ist, befaßt sich der vorliegende Addierer mit dem Problem des übermäßigen Zeitbedarfs, der bei der SRT- und NR-Division für einen Quotienten-Vorhersage-Logik-Block verursacht wird, wenn Signale zum Erzeugen jeder neuen Iteration auf der Basis der Ergebnisse (des Teil-Restes) der vorhergehenden Iteration erzeugt werden sollen. Der vorliegende Addierer schafft eine Lösung für dieses Problem.
  • Nachdem eine Minimal-Schaltung für die Quotienten-Vorhersage- Logik erstellt worden ist, besteht der einzige Weg zur Reduzierung der Iterationszeit darin, die CSA-Operation mit den Quotienten-Vorhersage-Berechnungen zu überlappen. Um dies besser erzielen zu können, geht man hier von einer herkömmlichen Übertrag-Ablage-Addierer-Konfiguration gemäß Fig. 1 aus, die einen Multiplexer 1, einen Übertrag-Ablage-Addierer 6 und einen Quotienten-Vorhersage-Logik-Block 4 aufweist. Während des Betriebs einer derartigen Konfiguration wird ein Teil-Rest PRi über den Addierer 6 über die Leitung 8 zugeführt, und ein Teil-Rest PR0i+1 wird auf der Ergebnis-Leitung 10 ausgegeben. Zwischen dem Block 4 und dem Multiplexer 2 verlaufen Quotienten-Wähl-Leitungen 12. Ferner weist der Multiplexer 2 eine Anzahl von Eingängen 14 auf, deren exakte Zahl von der in der Gesamtkonfiguration verwendeten Wurzel abhängt. Bei dieser Gesamtkonfiguration ist die gesamte Zeitverzögerung gleich der Summe der Zeitverzögerungen in dem Addierer 6, dem Block 4 und dem Multiplexer 2. Vor diesem Hintergrund ist ersichtlich, daß, falls man den Zeitverzögerungsblock 4 und den Addierer 6 in "Überlappung" bringen könnte, die Gesamtkonfiguration einen kleineren Gesamtzeitbedarf hätte.
  • Ein Weg zur Erzielung der oben erwähnten Überlappung bestände darin, mehrere CSAs zu verwenden und dann am Ende die korrekte Antwort herauszumultiplexen. Eine derartige Konfiguration ist in Fig. 2 gezeigt, wobei die Summen- und Übertrag-Signale PRi über die Leitung 8 in mehrere Addierer eingegeben werden (von denen nur zwei gezeigt sind), und das Ausgangssignal PRi+1 verläßt den Multiplexer 2 über die Leitung I0. Da die Addieret 6 zu der gleichen Zeit arbeiten können wieder Block 4 und da die Verwendung mehrerer Addierer gewährleistet, daß die korrekten Werte für die Bestimmung durch den Muhtiplexer 2 erzeugt werden, kann die CSA-Zeit vernachlässigt werden und die gesamte Iterationszeit als die Summe der Verzögerung des Blocks 4 und der Verzögerung des Multiplexers 2 betrachtet werden.
  • Das Problem bei der direkt oben vorgeschlagenen und in Fig. 2 gezeigten Lösung besteht darin, daß bei Divisionen mit hoher Wurzel eine derartige Lösung in Hinblick auf die Transfer- Anzahl und den Chip-Bereich sehr kostenaufwendig wäre. Die Lösung gemäß Fig. 2 kann als eine teure und schnelle Lösung des durch die Erfindung beseitigten Problems angesehen werden.
  • Fig. 3 zeigt eine Gesamtkonfiguration mit einem speziellen Übertrag-Ablage-Addierer 20 gemäß den Lehren der vorliegenden Erfindung. Der spezielle Übertrag-Ablage-Addierer 20 gemäß der vorliegenden Erfindung ist dahingehend zu verstehen, daß er ein Multiplexen und Drei-Operanden-Addieren in einer einzigen Schaltung durchführt. Die iterative Verzögerung bei einer derartigen Schaltung ist die Summe der Verzögerung des Addierers 20 und der Verzögerung des Blocks 4, die sehr viel kürzer wäre als die Verzögerung der herkömmlichen Konfiguration gemäß Fig. 1. Ferner ist dieser neue Übertrag-Ablage = Addierer 20 sehr viel kleiner als mehrere CSAs und ein Multiplexer, und somit wäre er in den meisten Anwendungsfällen der oben anhand Fig. 2 erläuterten Konfiguration vorzuziehen.
  • Fig. 4 zeigt weitere Einzelheiten zu dem Addierer 20. Aus Fig. 4 ist ersichtlich, daß Signale aus dem Quotienten-Vorhersage- Logik-Block 4 über die Leitung 12 in den Addierer 20 eingegeben werden, Teil-Restsummen-Signale über die Leitung 24 in den Addierer 20 eingegeben werden und Teil-Rest-Übertrag-Signale über die Leitung 26 in den Addierer eingegeben werden. Die verschiedenen weiteren Eingänge, die generell mit 14 gekennzeichnet sind, betreffen den verwendeten Algorithmus und die Wurzel, z. B. die Wurzel 4. Bei einer Ausführungsform der Erfindung, die tatsächlich realisiert worden ist, bilden diese Eingangssignale die Wahr- und Komplement-Funktionen vier unterschiedlicher Werte, D0, D1, D2 und D3. Die Tatsache, daß diese Funktionen mit den Summen- und Übertrag-Werten zur Verfügung stehen, ermöglicht eine unabhängige Berechnung sämtlicher möglicher Additionen, die innerhalb eines Addierers gemäß der vorliegenden Erfindung durchgeführt werden müssen. Somit stehen, nachdem ein Hinweis auf die unter den unterschiedlichen Werten zu treffende korrekte Wahl verfügbar ist, sämtliche Daten zur Ausführung dieser korrekten zur Verfügung. Das Teil-Rest-Ausgangssignal, PRi+1, wird über Leitungen 10 aus dem Addierer 20 ausgegeben.
  • Aus Fig. 4 ist dem Fachmann ersichtlich daß aufgrund der Dominanz der Quotienten-Verzögerungszeit mittels des neuartigen Addierers 20 die Verzögerung anhand einer einzigen Gatter- Verzögerung gemessen werden kann. Ferner ist ersichtlich, daß die Schaltung gemäß Fig. 4 sehr viel kleiner ist als mehrere CSAs, die zu einem Multiplexer führen, und zwar aufgrund der von den Eingangs-Termen PR suml und PR cari gemeinsam benutzten Logik, die bei einer alternativen Implementation viele Male repliziert würde. Vom Effekt her werden bei der Ausführungsform der vorliegenden Erfindung sämtliche der gemeinsamen Teil-Rest-Eingangssignale in sämtliche der CSAs gemäß Fig. 2 gemeinsam benutzt. Diese gemeinsame Benutzung von Eingangssignalen ermöglicht ferner eine gemeinsame Bestimmung der zu erzeugenden Ausgangssignals, so daß die Notwendigkeit eines unabhängigen Multiplexers entfällt.
  • Aus der vorstehenden Beschreibung wird der Fachmann erkennen, daß der vorliegende Dividierer die Iterationszeit durch zwei Gatter-Verzögerungen in dem Haupt-Iterationsweg reduziert. Der vorliegende Dividierer ist ferner relativ kostengünstig, zumindest im Vergleich zu Verfahren, bei denen Addier- und anschließend Wähl-Operationen verwendet werden.

Claims (4)

1. Dividierer zum Durchführen einer Hochgeschwindigkeits- Digitaldivision, mit einem Übertrag-Ablage-Addierer (20) und einer Quotientenvorhersage-Logikschaltung (4), wobei der Addierer (20) Teil-Restsummen-Signale, Teil-Rest-Übertrag-Signale, und Wahr- und Komplement-Funktionen mehrerer von dem Addierer zu verarbeitenden Datenwerte empfängt, dadurch gekennzeichnet, daß der Addierer (20) sämtliche möglichen Additionen der empfangenen Signale durchführt und eine Multiplexereinrichtung (2) auf Signale (12) hin, die aus der Quotientenvorhersage-Logikschaltung (4) empfangen werden, eine geeignete der Additionen wählt, wobei die Multiplexereinrichtung (2) in einer Rückkopplungsschleife mit der Quotientenvorhersage-Logikschaltung verbunden ist, wodurch sich der Betrieb des Übertrag-Ablage- Addierers mit dem Betrieb der Quotientenvorhersage-Logikschaltung zeitlich überlagert, um die Geschwindigkeit der Division zu erhöhen.
2. Dividierer nach Anspruch 1, bei dem die Quotientenvorhersage-Logik-Signale (12) in dem Übertrag-Ablage-Addierer (20) auf vier separate Signalpfade verteilt werden, wobei die Multiplexereinrichtung (2) acht Multiplexer aufweist, und die Wahr- und Komplement-Funktionen der von dem Addierer zu verarbeitenden Datenwerte auf ersten vier Eingangsleitungen bzw. zweiten vier Eingangsleitungen empfangen werden.
3. Dividierer nach Anspruch 2, bei dem die Teil-Restsummen- und Übertrag-Signale jeweils auf nur einer einzigen jeweiligen Anfangs-Eingabe-Leitung empfangen werden, wobei die Empfangssignale eine Eingabe-Term-Logik für acht getrennte Additionen gemeinsam benutzen, und zwar vier mit den Wahr- Funktionen bzw. vier mit den Komplement-Funktionen.
4. Dividierer nach einem der vorhergehenden Ansprüche, bei dem die Datenwerte vier Werte aufweisen.
DE69130621T 1990-04-02 1991-02-20 Schneller digitaler Dividierer Expired - Fee Related DE69130621T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US50535090A 1990-04-02 1990-04-02

Publications (2)

Publication Number Publication Date
DE69130621D1 DE69130621D1 (de) 1999-01-28
DE69130621T2 true DE69130621T2 (de) 1999-09-09

Family

ID=24009973

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69130621T Expired - Fee Related DE69130621T2 (de) 1990-04-02 1991-02-20 Schneller digitaler Dividierer

Country Status (4)

Country Link
EP (1) EP0450751B1 (de)
JP (1) JPH04227536A (de)
AT (1) ATE174697T1 (de)
DE (1) DE69130621T2 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5944772A (en) * 1997-11-07 1999-08-31 International Business Machines Corporation Combined adder and logic unit

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3621218A (en) * 1967-09-29 1971-11-16 Hitachi Ltd High-speed divider utilizing carry save additions
US4084254A (en) * 1977-04-28 1978-04-11 International Business Machines Corporation Divider using carry save adder with nonperforming lookahead
US4320464A (en) * 1980-05-05 1982-03-16 Control Data Corporation Binary divider with carry-save adders
US4503512A (en) * 1982-02-22 1985-03-05 Amdahl Corporation Cellular division circuit

Also Published As

Publication number Publication date
DE69130621D1 (de) 1999-01-28
ATE174697T1 (de) 1999-01-15
JPH04227536A (ja) 1992-08-17
EP0450751B1 (de) 1998-12-16
EP0450751A3 (en) 1993-05-19
EP0450751A2 (de) 1991-10-09

Similar Documents

Publication Publication Date Title
DE69326797T2 (de) Akkumulierende Multiplizierschaltung mit einer Hochgeschwindigkeitsausführung einer Multiplikation doppelter Genauigkeit
DE3854321T2 (de) Populationszählung in Rechnersystemen.
DE69032891T2 (de) Verfahren und Gerät zur Ausführung mathematischer Funktionen mit Hilfe polynomialer Annäherung und eines Multiplizierers rechteckigen Seitenverhältnisses
DE19540102C2 (de) Verfahren und Gleitkomma-Recheneinheit mit einer Logik für eine Vierfach-Präzisions-Arithmetik
DE69430838T2 (de) Schaltung und Verfahren zur parallelen Verschiebung und Addition
DE68928376T2 (de) Vorrichtung zum multiplizieren, teilen und ziehen der quadratwurzel
DE69130623T2 (de) Dividierer mit hoher Grundzahl
DE69130510T2 (de) Arithmetisches Gerät zur Berechnung von transzendenten Elementarfunktionen
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE68923262T2 (de) Zweierkomplementmultiplikation mit einem Vorzeichen-/Grössen-Multiplizierer.
DE1956209C3 (de) Multipliziervorrichtung
DE2735814A1 (de) Datenverarbeitungseinrichtung
DE2246968A1 (de) Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE69032890T2 (de) Verfahren und Gerät zur Ausführung der Quadratwurzelfunktion mit Hilfe eines Multiplizierers rechteckigen Seitenverhältnisses
DE68924386T2 (de) Verfahren und Gerät zur Radix-2**n-Division mit überlappender Quotientenbitauswahl und gleichzeitiger Rundung und Korrektur des Quotienten.
DE1549477B1 (de) Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden
CH644461A5 (de) Digitale multipliziereinrichtung.
DE3888230T2 (de) Einrichtung und Verfahren zur Durchführung einer Schiebeoperation mit einer Multipliziererschaltung.
DE4403917A1 (de) Vorrichtung zum Berechnen einer Besetzungszählung
DE3852576T2 (de) Einrichtung und Verfahren für eine erweiterte Arithmetik-Logik-Einheit zur Beschleunigung der ausgewählten Operationen.
DE69808362T2 (de) Multiplizierverfahren und Multiplizierschaltung
DE1549508B2 (de) Anordnung zur uebertragsberechnung mit kurzer signallaufzeit
DE2612750A1 (de) Multipliziereinrichtung
DE2830334C2 (de)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee