DE3447634A1 - Dividiervorrichtung - Google Patents

Dividiervorrichtung

Info

Publication number
DE3447634A1
DE3447634A1 DE19843447634 DE3447634A DE3447634A1 DE 3447634 A1 DE3447634 A1 DE 3447634A1 DE 19843447634 DE19843447634 DE 19843447634 DE 3447634 A DE3447634 A DE 3447634A DE 3447634 A1 DE3447634 A1 DE 3447634A1
Authority
DE
Germany
Prior art keywords
carry
adder
quotient
stage
divisor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19843447634
Other languages
English (en)
Other versions
DE3447634C2 (de
Inventor
Sakou Hadano Kanagawa Ishikawa
Tetsuya Sakai
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3447634A1 publication Critical patent/DE3447634A1/de
Application granted granted Critical
Publication of DE3447634C2 publication Critical patent/DE3447634C2/de
Granted 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • 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/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5352Non-restoring division not covered by G06F7/5375

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

HITACHI, LTD., Tokyo
Japan
Dividiervorrichtung
Die Erfindung betrifft eine schnelle Dividiervorrichtung für Digitalrechner.
Ein üblicher Grund-Binärdividierer erzeugt einen Quotienten Bit für Bit, während ein Divisor zu einem Dividend oder einem Teilrest wiederholt entsprechend dem Nichtwiederspeicheralgorithmus addiert oder abgezogen wird.
Eine verbesserte Dividiervorrichtung kann mehrere Quotientenbits in einem Zyklus erzeugen. Diese Dividiervorrichtung verschiebt einen Teilrest, addiert oder subtrahiert ein geeig-
680-348301280/AtAl
netes Vielfaches eines Divisors zu bzw. von dem verschobenen Teilrest und bestimmt aufgrund des sich ergebenden Teilrests mehrere Quotientenbits während die Schiebelänge des Teilrests vorbereitend für die nachfolgende Operation bestimmt wird. Die Nachteile dieser Dividiervorrichtung bestehen darin, daß die Verkürzung der Zykluszeitdauer nur schwer erreichbar ist, da die Schiebelänge vom Ergebnis jeder Addition oder Subtraktion abhängt.
Die japanische Patentschrift Nr. 17188/1969 schlägt eine Dividiervorrichtung dieser Art vor, die die obengenannten Nachteile vermeiden soll. Dieser verbesserte Dividierer ist dadurch gekennzeichnet, daß zwei Quotientenbits aus den Werten der oberen drei Bits eines Teilsrest und eines Divisors mit Verschiebung um eine konstante Länge erhalten werden können. Jedoch benötigt dieser Dividierer die 0, 1/2, 3/4, 1 und 3/2 Vielfachen eines Divisors, wobei unter anderem das 3/2 Vielfache vor Beginn einer Division bereitgestellt werden muß. Außerdem muß vor dem Beginn der Division eine Vereinheitlichung durchgeführt werden, in dem ein Divisor solange verschoben wird, bis in der MSB (Most !Significant Mt) -Position eine "1" erscheint. Der Dividend muß ebenfalls um dieselbe Bitzahl verschoben werden. Diese verschiedenartigen vorbereitenden Operationen müssen vor dem Start einer Division ausgeführt werden, so daß zur Ausführung der verschiedenartigen Vorverarbeitungsschritte zusätzlich zur eigentlichen Divisionsoperation viel Zeit nötig ist. Außerdem ist eine Wählschaltung nötig, die ein geeignetes Vielfaches eines Divisors entsprechend den Werten eines Teilrests und eines Divisors wählt, was die Anzahl der Hardwarekomponenten erhöht.
Der oben beschriebene, bekannte Dividierer verwendet einen Volladdierer, der auch für verschiedene andere Berechnungen verwendet wird . Deshalb sind mehrere Wählschaltungen und verschiedene Arbeitsregister von einer Dividieroperation be-
troffen. Deshalb kann die Gesamtverarbeitungszeit für eine Division nicht bis zu dem theoretisch ermittelten Wert verringert werden.
Es ist deshalb Aufgabe der Erfindung, einen verbesserten schnellen Dividierer des Typs der in einem Zyklus mehrere Quotientenbits erzeugen kann, insbesondere ohne Erhöhung der Steuerkomplexität oder des Hardwareaufwands zu ermöglichen, der keinerlei Vorverarbeitung, wie Vereinheitlichung und Aufbereitung von Vielfachen eines Divisors benötigt. Dabei soll die Verarbeitungszeit des Dividierers bei der Erzeugung mehrerer Quotientenbits im wesentlichen auf die Zeit,die zur Berechnung eines Übertrags im Falle einer Volladdition nötig ist, verringert werden.
Zur Lösung der obigen Aufgabe weist der erfindungsgemäße Dividierer mehrere Übertragssicherstellungsaddierer (carry save adder CSA), die in mehreren Stufen als binärer Raum miteinander verbunden sind. Das heißt, daß die Ausgänge jedes der Übertragssicherstellungsaddierer (im folgenden CSA genannt) mit Ausnahme des CSA der letzten Stufe mit den Eingängen zweier CSA's der folgenden Stufe zusammengeschaltet sind. Der an der Wurzel des binären Baums befindliche CSA ist so angeordnet, daß wahlweise ein Divisor addiert oder subtrahiert werden kann. Der in einem Ast der zwei von jedem Verzweigungspunkt abzweigenden Äste befindliche CSA ist so angeordnet, daß ein Divisor addiert wird, während der im anderen Ast angeordnete CSA so angeordnet ist, daß ein Divisor subtrahiert wird. Mit jedem CSA ist eine Übertragvorgriffschaltung (carry look ahead) verbunden. Diese Schaltung erzeugt einen Übertrag, der auftreten würde, falls die Volladdition einer Halbsumme und eines Halbübertrags vom zugehörigen CSA ausgeführt worden wäre. Ein Quotientenbitausgang jeder Stufe wird abhängig von Ausgängen der CSA und der Übertragvorgriffsschaltung derselben Stufe sowie einem Ausgang der Übertragvorgriffsschaltung der vorangehenden Stufe bestimmt. Die Ausgänge eines
der CSA's der letzten Stufe und entweder ein Divisor oder dessen Komplement werden abhängig von Quotientenbitausgängen jeweiliger Stufen gewählt und den Eingängen des CSA's in der ersten Stufe, der sich an der Wurzel des binären Baums befindet, eingespeist.
Die Erfindung mit ihren Eigenschaften und Vorteilen wird im folgenden anhand bevorzugter Ausführungsbeispiele in Verbindung mit der Zeichnung näher beschrieben. Es zeigen:
Fig. 1 ein Blockschaltbild eines Ausführungsbeispiels der Erfindung;
Fig. 2 ein Beispiel eines von dem in Figur 1 dargestellten Dividierer ausgeführten Dividiervorgangs;
Fig. 3 ein Diagramm, das die Beziehung zwischen den Werten der Quotientenbits und den Eingängen zu der Anfangsstufe des in Figur 1 dargestellten Dividierers zeigt, und
Fig. 4 ein Diagramm, das die Beziehung zwischen den Werten von Übertragsbits und dem Wert eines Quotientenbits des in Figur 1 dargestellten Dividierers zeigt.
In Figur 1 ist ein Ausführungsbeispiel gemäß der Erfindung, das einen Binärdividierer zeigt, der zwei in Form eines zweistufigen binären Baums verbundene CSA's aufweist. Diese Dividiervorrichtung kann zwei Quotientenbits in einem Betriebszyklus erzeugen. Ihre Betriebsgeschwindigkeit ist so hoch, daß vier Quotientenbits innerhalb einer Zykluszeit eines herkömmlichen Dividierers mit Volladdierer erzeugt werden können.
Bezugsziffern CSAM1, CSAS 3, CSAA 5 bezeichnen CSA für binäre Daten einer gewünschten Bitzahl. Der CSAM 1 stellt die Wurzel,
der CSAS 3 den einen AStx der die Subtraktion eines Divisors ausführt und der CSAA 5 den anderen Ast des binären Baums dar. Der CSAA 5 addiert einen Divisor. Es ist an sich bekannt, daß ein CSA eine Halbsumme, das heißt eine Summe, bei der alle Überträge ignoriert werden und einen Halbübertrag, das heißt einen Übertrag unabhängig für die jeweiligen Stellen erzeugt. Eine Halbsumme HSM und eine Halbübertrag HCM , die Ausgänge des CSAM 1 sind,werden um eine Bitstelle nach links verschoben und zwei Eingängen der CSAS 3 und CSAA 5 angelegt. Ein Divisor (der des weiteren einfach "DR" genannt wird) wird dem verbleibenden Eingang des CSAA 5 angelegt. Den verbleibenden Eingang des CSAS 3 wird das Einer-Komplement des DR zugeführt, während das LSB (niedrigstwertige Bit) des Eingangs, der die HSM empfängt, auf "1" gesetzt ist. Diese Maßnahmen dienen zur Bildung des Zweier-Komplements des DR für die Subtraktion des DR. Ein Halbsummenausgang HSS und ein Halbübertragsausgang HCS vom CSAS 3 sowie ein Halbsummenausgang HSA und ein Halbübertragsausgang HCA vom CSAA 5 werden alle um ein Bit nach links verschoben und Wählern 8 und 9 angelegt, die vor den Eingängen des CSAM 1 liegen. An den Eingängen des CSAM 1 sind Register X, Y und Z vorgesehen. Nach jedem Schleifendurchlauf werden die Daten in diese Register gesetzt.
Bezugszeichen LACM 2, LACS 4, LACA 6 bezeichnen Übertragvorgriffslogikschaltungen, die jeweils Überträge CM„, CSQ und CAß zum MSB (Most Significant Bit) und jeweils Überträge CM1 , CS., CA. zu der Bitstelle, die dein MSB folgt
(die weiterhin als "NSB" bezeichnet wird) erzeugen, die auftreten würden, falls die jeweiligen zwei Ausgänge vom CSAM 1 , CSAS 3, CSAA 5, das ist eine Halbsumme und ein Halbübertrag der Volladdition unterworfen würden.
Die Bezugsziffer FA 7 bezeichnet einen Volladdierer, der einen Rest im letzten Schritt der Berechnung bestimmt. Er empfängt die unverschobenen Ausgänge HSM und HCM vom CSAM 1.
Wähler 8, 9, 10 und 11 dienen zur Auswahl der Eingangsdaten, die dem CSAM 1 eingespeist werden. Der Wähler 8 wählt den Ausgang HSS vom CSAS 3, den Ausgang HSA vom CSAA 5 oder einen Dividenden (der weiterhin abgekürzt mit "DD" bezeichnet wird). Der Wähler 9 wählt den Ausgang HCS vom CSAS 3, den Ausgang HCA vom CSAA 5 oder einen Festwert (0). Der Wähler 10 wählt DR oder das Einer-Komplement vom DR. Der Wähler 11 wählt "0" oder "1" als einen Wert vom LSB eines Eingangs zum Register Y, je nachdem ob DR oder dessen Einer-Komplement vom Wähler 10 gewählt werden. Diese Wahl bestimmt die Ausführung der Addition vom DR oder die Subtraktion vom DR (Addition des Zweier-Komplements). Die Wähler 8, 9 werden abhängig von einem Quotientenbitausgang der CSAM-Stufe im vorangehenden Betriebszyklus gesteuert. Die Zähler 10, 11 werden abhängig von einem Quotientenbitausgang der CSAS-Stufe oder CSAA-Stufe im vorangehenden Betriebszyklus gesteuert. Eine Steuerlogik 35 für diese Wähler wird weiter unter genauer beschrieben. Zu Beginn der Divisionsoperation wählen jedoch die Wähler 8, 9, 10 und jeweils DD, einen Festwert (0), das Einerkomplement vom DR und einen LSB-Wert "1".
Die Quotientenbestimmungslogik 36 ermittelt einen Quotientenbitausgang von jeder Stufe. Die Einzelheiten dieser Logik werden später beschrieben. Allgemein haben drei Eingänge A, B,C, ein Halbsummenausgang HS und ein Halbübertragsausgang HC eines CSA, ein Übertrag CQ zum MSB und ein Übertrag C1 zum NSB, die von der Übertragsvorgriffsschaltung erzeugt werden, folgende Beziehung, falls jeder Ausgang aus 64 Bits besteht:
A0 Al A63
B0 B1 B63
HS0HS1 HS62HS63
+^HC0HC1HC2 HC63
FS0FS1FS2 FS63FS64
C0 C1
Darin sind:
HSi=ABci HC1=(A1. B1H(B1-CiH(C1-Ai) i=0,1,2,
"©": Exclusiv ODER
11. " : UND
"+": ODER
FS = Vollsumme von HS und HC
C1=HS1- HC2 + (HS1+HC2)-HS2· HC3 + (HS1+HC2)- (HS2+HC3 J-
+ (HS1H-HC2)- (HS2+HC3)-,. .;·...
· (HS51+HC62).HS62-HC63
C0=HS0-HC1 + (HS0+HC1)- C1
Weiterhin ist wichtig, daß, weil HC ein Übertrag von jeder
Bitposition ist, der bezüglich HS das Gewicht von 2 hat , HC
um ein Bit nach links verschoben wird, wenn HC und HS voll addiert werden.
Der Betrieb des in Figur 1 dargestellten Dividierers wird nun anhand der Figur 2 erläutert, bei der als Beispiel die Festpunktdivision (00001111) : (0110) behandelt wird , wobei die Breite des CSA 8 Bit betragen soll.
Zu Beginn der Berechnung werden den drei Eingängen X, Y, Z des CSAM 1 je der DD 13, ein Festwert (1) (ein Festwert (0) vom Wähler 9 plus das LSB "1" vom Wähler 11) 14 und DR (das Einer-Komplement vom DR) 15 zugeführt und DR wird vom DD subtrahiert. Vor der Subtraktion wird DR an eine Position , die der oberen Hälfte vom DD entspricht, geschoben (siehe Bezugsziffer 12). Die Subtraktion erzeugt Ausgänge HSM 16 und HCM 17. Daraufhin erzeugt die LACM Logik 2 einen Übertrag CM0 18 zum MSB und einen Übertrag CML 19 zum NSB. Während der Ermittlung des CMQ 18 und CM1 19 werden HSM 16 und HCM 17 um ein Bit nach links verschoben und sowohl zum CSAS 3 als auch zum CSAA 5 gesendet (siehe Teile 20 und 21). Im CSAA 5, der den DR 24 als auch die nach links verschobenen HSM und HCM 22 und 23 erhält, wird der DR addiertlm CSAS 3, das den um ein Bit nach links verschobenen Wert HSM 25, den um eine Bitstelle nach links verschobenen Wert HCM 26, dessen LSB auf "1" gesetzt ist und das Einer-Komplement vom DR 27 erhält, wird der DR subtrahiert. In der Zwischenzeit werden die Ausgänge der Glieder LACS 4 und LACA 6 gesetzt und beenden den ersten Operationszyklus. An diesem Punkt ist ein Quotientenbit 28 der vorherigen Stufe, das ist die CSAM-Stufe "0", und folglich wird ein Quotientenbit vom Additionszweig nach dem Nicht-Rückspeicheralgorithmus als ein Quotientenbit von der letzteren Stufe und somit ein Quotientenbit 29, das ist "0" von der CSAA-Stufe gewählt. Auf diese Weise werden zwei Quotientenbit 28 und 29 bestimmt. Die die Quotientenbits bestimmende Logik wird später genauer beschrieben.
Im zweiten Operationszyklus werden die Wähler 8, 9, 10 und 11 gemäß den Werten der im ersten Operationszyklus bestimmten Quotientenbits gesteuert. Figur 3 zeigt die abhängig von den Werten der Quotientenbits ausgewählten Daten, die dem CSAM 1 zugeführt werden. Wenn das Quotientenbit D. der vorherigen Stufe im vorangehenden Operationszyklus "0" ist, werden die HSA und HCA-Ausgänge vom CSAA 5 als X und Y-Eingänge für den
CSAM 1 gewählt, und wenn D1 "1" ist, werden die Ausgänge HSS und HCS vom CSAS 3 als dieselben Eingänge gewählt. Wenn das Quotientenbit D? von der letzteren Stufe im vorhergehenden Operationszyklus "0" ist, wird der DR als Z-Eingang für die Addition vom DR gewählt. Wenn jedoch D? "1" ist, wird das Einer-Komplement vom DR als Z-Eingang gewählt und eine "1" als das LSB des Y-Eingang, so daß das Zweier-Komplement vom DR für die Subtraktion des DR gebildet wird. Die Wählersteuerlogik 35, die in Figur 1 gezeigt ist, steuert die Wähler 8,9, 10 und 11 entsprechend der in Figur 3 gezeigten Beziehung. Bei dem in Figur 2 beschriebenen Rechenbeispiel werden, da die Quotientenbits im ersten Operationszyklus "00" sind, die Werte HSA und HCA, wie die Pfeile 30 und 31 zeigen, und der Wert DR 32, gewählt.
Die Operationen der CSAS 3 und CSAA 5 im zweiten Operationszyklus sind dieselben wie im ersten Operationszyklus. Folglich werden die gleichen Operationen im zweiten Operationszyklus wiederholt, bis die Schleife η-mal (2mal im vorliegenden Beispiel) durchlaufen ist und schließlich beendet, wenn die vom CSAS 1 erhaltenen Werte HSM und HCM vom Volladdierer FA 7 zur Berechnung des Rests gemäß Bezugsziffer 33 volladdiert wurden.
Es muß hinzugefügt werden, daß, da die Division bei diesem Dividierer entsprechend dem nicht-Rückspeicheralgorithmus durchgeführt wird, wenn das LSB des Quotienten "0" wird, der Rest durch eine zusätzliche Addition vom DR zur Vollsumme der Werte HSM und HCM korrigiert werden muß. Bei dem in Figur 2 gezeigten Rechenbeispiel ist das LSB des Quotienten von der CSAM-Stufe, nachdem die Operation die Schleife zweimal durchlaufen hat, "0". Demgemäß wird der Rest korrigiert (siehe Bezugsziffer 34). Diese Korrektur wird durch einen geeigneten (nicht gezeigten) Volladdierer ausgeführt. Als Alternative kann auch der Volladdierer FA 7 für die Korrektur des Rest durch Umschalten seiner Eingänge verwendet werden.
Im folgenden wird die Bestimmung eines Quotientenbits beschrieben. Da dieser Dividierer im wesentlichen gemäß dem nicht-Rückspeicheralgorithmus arbeitet, muß die Bestimmung jedes Quotientenbits abhängig davon erfolgen, ob das Subtraktions- oder Additionsergebnis positiv oder negativ ist, in anderen Worten, ob von der MSB-Position während einer normalen Volladdition ein Übertrag auftritt oder nicht. Jedoch müssen bei diesem Dividierer zusätzlich zu einem normalen Übertrag in der in Betrieb befindlichen Stufe das MSB eines Halbübertrags in der im Betrieb befindlichen Stufe und ein Übertrag zum NSB, der während der Volladdition einer Halbsumme und eines Halbübertrags in der vorangehenden Stufe auftritt, berücksichtigt werden. Der Grund dafür ist, daß ein Übertrag, der sich fortgepflanzt hätte und im Falle der Ausführung einer Volladdition herausgeschoben wäre, latent in einer Halbsumme und einem Halbübertrag enthalten ist, die von der vorangehenden Stufe gesendet sind. Weil solch ein latenter Übertrag auftreten kann, muß entschieden werden, ob ein in der gerade in Betrieb befindlichen Stufe erzeugter Übertrag ein solcher ist, der ein echtes Quotientenbit beeinflußt oder ob kein anderer als ein latenter Übertrag von der vorangehender Stufe erzeugt wurde.
Figur 4 zeigt eine Quotientenbitbestimmungslogik. Ein "1"-Übertrag der zum NSB während der Volladdition einer Halbsumme und eines Halbübertrags der vorangehenden Stufe erzeugt ist (von der Übertragvorgriffslogik erhalten) weist auf die Existenz eines latenten Übertrags hin. CQ* und HC0* sollen jeweils einen Übertrag zum MSB während der Volladdition einer Halbsumme und eines Halbübertrags (nämlich des MSB eines Ausgangs von der Übertragvorgriffslogik) und das MSB eines Halbübertrags in der betriebenen Stufe darstellen. C1 soll einen Übertrag zum NSB während der Volladdition einer Halbsumme und eines Halbübertrags in der vorangehenden Stufe (nämlich ein dem MSB eines Ausgangs der Übertragvorgriffs-
logik folgenden Bits) darstellen. Falls C1 = 0, dann ist entweder Cn* oder HCn* ein Übertrag, der ein Quotientenbit beeinflußt. Es ist jedoch nicht möglich, daß in der betriebenen Stufe, wenn C1 = 0 sowohl Cn*als auch HCn* "1" sind. Folglich gibt es keinen Fall £ CQ* = 1 & HCn* = 1 J, wenn C1 = 0 ist. Andererseits tritt ein latenter Übertrag allein nur auf, wenn £ Cn* = 1 & HC * = 0 J oder wenn /"Cn* = 0 & HC0* = 1 7, wenn C1 = 1 ist. Im ersten Fall wird ein Übertrag auch im latenten Zustand von der betriebenen Stufe zur folgenden Stufe übertragen. Im letzteren Fall wird ein latenter Übertrag in der betriebenen Stufe selbst offenbart. Falls weiterhin C1 = 1 und C C * = 1 & HC* = 1 J sind, ist angezeigt, daß sowohl ein latenter Übertrag von der vorangehenden Stufe als auch ein auf einen Quotienten einwirkender Übertrag auftreten. Es ist jedoch nicht möglich, daß in allen betriebenen Stufen kein Übertrag auftritt, wenn C1 = 1 ist. Demgemäß gibt es die Möglichkeit C CQ* = 0 & HCQ* = nicht, wenn C1 = 1 ist. Die obigen Zusammenhänge können dahingehend zusammengefaßt werden, daß ein Quotientenbit D der betriebenen Stufe durch die Gleichung
D=C1 · (C0*+HC0*)+C1 · Cn* -HC0* ausgedrückt werden kann.
Die Quotientenbestimmungslogik 36 in Figur 1 bestimmt Quotientenbitausgänge von den jeweiligen Stufen (D1 und D„ in Figur 3) entsprechend der in Figur 4 gezeigten Beziehung oder der obenangeführten Gleichung.
Die obige Beschreibung macht deutlich, daß aufgrund der Erfindung tatsächlich keine Volladdition zur Bestimmung eines Quotienten mehr nötig ist, sondern daß nur ein Übertrag bestimmt werden muß, der im Fall der Volladdition auftreten würde. Der CSA kann durch eine einstufige Logik reali-
siert werden, so daß der größere Teil der Operationszeit für die Bestimmung eines Übertrags in der Übertragvorgriffslogik ergeht. Es sei angenommen, daß die zur Ausführung einer normalen Volladdition benötigte Zeit eine Zykluszeit beträgt. Es ist möglich, daß ein bloßer Übertrag innerhalb einer halben Zykluszeit bestimmt ist. Wenn, wie die Erfindung lehrt, ein binärer Baum verwendet wird, verzögert sich der Beginn der Operationen des LACA und LACS in der letzten Stufe bezüglich der Operation des LACM in der vorhergehenden Stufe lediglich durch die Operationszeit des CSAA oder CSAS. Deshalb sind alle Ausgänge der LACM, LACA , LACS innerhalb einer Zeitdauer erhältlich, die im wesentlichen gleich einer Operationszeit einer Übertragvorgriffslogik ist. Das heißt, daß zwei Quotientenbits innerhalb einer halben Zykluszeit eines herkömmlichen Dividierers, der einen Volladdierer benützt, erhalten werden können. Deshalb kann man einen Dividierer ausbilden, der vier Quotientenbits innerhalb einer Zykluszeit ermittelt, der die Ausführung einer Divisionsoperation innerhalb einer Zeitdauer ermöglicht, die nur halb so groß ist, wie die Zeitdauer , die der in der zuvor genannten japanischen Patentschrift No.17188/1969 benötigt.
Die obengenannte Ausführungsform hat den einfachsten Aufbau, da sie zweistufig ist. Sie kann leicht in eine dreistufige Version durch Verbindung der jeweiligen Ausgänge der CSAS 3 und CSAA 5 mit jeweils zwei anderen CSA's erweitert werden. Der sich ergebende Dividierer kann drei Quotientenbits in einem Zyklus ermitteln. Das bedeutet, daß dieser Dividierer in der Zykluszeit eines herkömmlichen Dividierers mit Volladdierer sechs Quotientenbits ermitteln kann. Falls der binäre Baum noch mehr in der gleichen Weise erweitert wird, ergibt sich ein Dividierer, der noch mehr Quotientenbits in einem Zyklus ermittelt.
Die erf indungsgemäße Dividiervorrichtung bestimmt gemäß der obigen Beschreibung mehrere Quotientenbits innerhalb einer Zeitdauer, die zur Bestimmung lediglich eines Übertrags nötig ist, der im Falle einer Volladdition auftreten würde. Darüberhinaus benötigt der erfindungsgemäße Dividierer keine Vorverarbeitung, wie Vereinheitlichungsoperationen und keine Operationen um Vielfache eines Divisors zu erzeugen. Der Vorteil liegt somit gemäß der Erfindung darin, daß eine sehr schnelle Division ohne bemerkenswerte Erhöhung weder der Komplexität der Steuerung noch des Hardware-Aufwandes ermöglicht ist.
•46-
- Leerseite

Claims (4)

Patentansprüche
1. Dividiervorrichtung zur Erzeugung mehreren Quotientenbits in einem einzigen Operationszyklus gekennzeichnet durch
mehrere Übertragssicherstellungsaddierer (1, 3, 5), die jeweils eine Halbsumme und einen Halbübertrag erzeugen und in mehreren Stufen in Form eines binären Baums verbunden sind, von denen ein Obertragssicherstellungsaddierer (1) an der Wurzel des binären Baums angeordnet ist und die Addition und die Subtraktion eines Divisors ausführt, ein weiterer Übertragssicherstellungsaddierer (5) in einem der beiden vom Verzweigungspunkt des binären Baums ausgehenden Äste angebracht und zur Addition des Divisors ausgelegt ist und ein weiterer Übertragssicherstellungsaddierer (3) in dem anderen Ast des binären Baums angeordnet und zur Subtraktion des Divisors vorgesehen ist,
mehrere Übertragvorgriffsschaltungen, die jeweils mit einem der Übertragssicherstellungsaddierer (1, 3, 5) verbunden sind und einen Übertrag erzeugen, der im Falle der Volladdition des Halbsummenausgangs und des Halbübertragsausgangs des jeweils zugehörigen Übertragssicherstellungsaddierers erzeugt würde,
eine Quotientenbestimmungseinrichtung (36), die ein Quotientenausgangsbit jeder Stufe in Abhängigkeit vom Ausgang des Übertragssicherstellungsaddierers und der Übertragsvorgriffsschaltung der jeweiligen Stufe und der Übertragsvorgriffs-
680-348301280/AtAl
schaltung der vorangehenden Stufe bestimmt, und
eine Wähleinrichtung (8, 9,10; 35), die Ausgänge eines der Übertragssicherstellungsaddierer in der letzten Stufe und entweder den Divisor oder dessen Komplement abhängig von Quotientenbitausgängen der jeweiligen Stufen wählt und diese den Eingängen des Übertragssicherstellungsaddierers an der Wurzel des binären Baums einspeist.
2. Dividiervorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Quotientenbestimmungseinrichtung (36) abhängig vom höchstwertigen Bit eines Halbübertrags des in der jeweiligen Stufe befindlichen Übertragssicherstellungsaddierers, von einem Übertrag zum höchstwertigen Bit, den die Übertragsvorgriffsschaltung derselben Stufe erzeugt und von einem Übertrag zu einem Bit nach dem höchstwertigen Bit, das die Übertragsvorgriffsschaltung der vorangehenden Stufe erzeugt, arbeitet.
3. Dividiervorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Wähleinrichtung (8, 9, 10) einen Dividenden und das Komplement des Divisors den Eingängen des Übertragssicherstellungsaddierers (1) an der Wurzel des binären Baums zuführt, sobald eine Dividieroperation beginnt.
4. Dividiervorrichtung nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, daß die Vorrichtung außerdem einen Volladdierer zur Berechnung eines Rests aufweist.
DE19843447634 1983-12-28 1984-12-28 Dividiervorrichtung Granted DE3447634A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58245490A JPS60140428A (ja) 1983-12-28 1983-12-28 除算装置

Publications (2)

Publication Number Publication Date
DE3447634A1 true DE3447634A1 (de) 1985-07-18
DE3447634C2 DE3447634C2 (de) 1988-02-04

Family

ID=17134431

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843447634 Granted DE3447634A1 (de) 1983-12-28 1984-12-28 Dividiervorrichtung

Country Status (3)

Country Link
US (1) US4754422A (de)
JP (1) JPS60140428A (de)
DE (1) DE3447634A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0786826B2 (ja) * 1988-07-19 1995-09-20 日本電気株式会社 整数除算回路
JPH02239325A (ja) * 1989-03-14 1990-09-21 Fuji Xerox Co Ltd 除算回路
US4941120A (en) * 1989-04-17 1990-07-10 International Business Machines Corporation Floating point normalization and rounding prediction circuit
JPH0731592B2 (ja) * 1990-11-29 1995-04-10 株式会社東芝 除算回路
JP2541758B2 (ja) * 1993-06-02 1996-10-09 日本電気株式会社 剰余算出回路
US5754460A (en) * 1995-05-26 1998-05-19 National Semiconductor Corporation Method for performing signed division
US5771366A (en) * 1995-06-09 1998-06-23 International Business Machines Corporation Method and system for interchanging operands during complex instruction execution in a data processing system
US7177421B2 (en) * 2000-04-13 2007-02-13 Broadcom Corporation Authentication engine architecture and method
JP4042364B2 (ja) * 2001-07-27 2008-02-06 日本電気株式会社 アドレス生成回路、選択判断回路
JP4388543B2 (ja) * 2006-12-14 2009-12-24 株式会社日立製作所 3項入力の浮動小数点加減算器
JP6854261B2 (ja) * 2018-06-22 2021-04-07 矢崎総業株式会社 グロメット

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337519A (en) * 1979-02-01 1982-06-29 Tetsunori Nishimoto Multiple/divide unit

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3234367A (en) * 1962-11-05 1966-02-08 Ibm Quotient guess divider
US3873820A (en) * 1974-01-31 1975-03-25 Ibm Apparatus for checking partial products in iterative multiply operations
JPS57172444A (en) * 1981-04-15 1982-10-23 Hitachi Ltd Approximate quotient correcting circuit
US4549280A (en) * 1982-12-20 1985-10-22 Sperry Corporation Apparatus for creating a multiplication pipeline of arbitrary size

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337519A (en) * 1979-02-01 1982-06-29 Tetsunori Nishimoto Multiple/divide unit

Also Published As

Publication number Publication date
JPS60140428A (ja) 1985-07-25
US4754422A (en) 1988-06-28
JPH0317132B2 (de) 1991-03-07
DE3447634C2 (de) 1988-02-04

Similar Documents

Publication Publication Date Title
DE1956209C3 (de) Multipliziervorrichtung
DE2246968A1 (de) Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen
DE2658248C2 (de)
DE2018452A1 (de) Arithmetische Einrichtung
DE2803425A1 (de) Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE3447634C2 (de)
DE2221693C3 (de) Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE1549508C3 (de) Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit
DE19618120B4 (de) Parallelverarbeitungs-Divisionsschaltung
DE3852576T2 (de) Einrichtung und Verfahren für eine erweiterte Arithmetik-Logik-Einheit zur Beschleunigung der ausgewählten Operationen.
DE2034841B2 (de) Matrixanordnung für Digital Rechenanlage
DE3303269C2 (de)
DE68927398T2 (de) Digitale Divisionsschaltung mit einem N/2-Bit-Subtrahierer für N-Subtraktionen
DE3447729A1 (de) Verfahren und vorrichtung zur dezimal-multiplikation
DE3424078C2 (de)
DE19635114A1 (de) Multiplizierer
DE19635118A1 (de) Multiplizierer
DE2039228A1 (de) Verfahren und Vorrichtung zum Konvertieren und Stellenwert-Verschieben von Zahlsignalen unterschiedlicher Codes in einer Datenverarbeitungsanlage
DE1449564C3 (de) Recheneinrichtung zur Subtraktion mehrerer Operanden oder zu deren Addition durch Verwendung von Komplementärwerten eines der Operanden
DE19635113A1 (de) Multiplizierer
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition