DE1774571A1 - Divisionseinrichtung - Google Patents
DivisionseinrichtungInfo
- Publication number
- DE1774571A1 DE1774571A1 DE19681774571 DE1774571A DE1774571A1 DE 1774571 A1 DE1774571 A1 DE 1774571A1 DE 19681774571 DE19681774571 DE 19681774571 DE 1774571 A DE1774571 A DE 1774571A DE 1774571 A1 DE1774571 A1 DE 1774571A1
- Authority
- DE
- Germany
- Prior art keywords
- circuit
- remainder
- digit
- dividend
- digits
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/535—Dividing only
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)
- Communication Control (AREA)
Description
IBM Deutschland
Internationale Büro-Maschinen Gesellschaft mbH
Böblingen, 16. Juli 1968
km-hn
km-hn
Anmelderin:
International Business Machines Corporation, Armonk, N. Y. 10 504
Amtliches Aktenzeichen:
Neuanmeldung
Aktenzeichen der Anmelderin: Docket 10 941
Divisionseinrichtung
Divisionseinrichtung
Die Erfindung bezieht sich auf eine Einrichtung zur Division mehrstelliger
Dividenden der Basis Z durch einen festen Divisor X.
Bei Datenverarbeitungsanlagen ist es mitunter notwendig, Divisionsoperationen
mit variablen Dividenden und fest vorgegebenen Divisorwerten in einer sehr hohen Geschwindigkeit auszuführen. Ein Beispiel hierfür ist
die Adressende codierung bei der Adressierung eines Speichers, in dem
nur ganze Blöcke bzw. Speicherwörter durch einen Spei eher zugriff aufrufbar
sind« Jeder dieser Blöcke bzw. jedes dieser Speicherwörter besteht aus einer Vielzahl Datenwörter, so daß einmal der das gesuchte Datenwort
enthaltende Block und zum anderen dieses Datenwort in dem betreffenden Block bestimmt werden müssen. Die Adresse eines Operanden
1 09849/1459
oder eines Befehles, der in einem derartigen Datenwort gespeichert
ist, liegt als ganze Zahl vor. Es muß daher durch Division dieser Zahl durch die Datenwortzahl je Block die Bereichs- bzw. Speicherwortadresse
festgestellt werden, in welchem das gesuchte Datenwort steht. Der bei dieser Division entstehende Rest bezeichnet dann das
gesuchte Datenwort in dem ermittelten Bereich bzw. Speicherwort.
Die Verwendung bekannter Divisions einrichtungen für diesen Zweck hat
den Nachteil, daß für die Adressenbestimmung verhältnismäßig viel Zeit verlorengeht,^ da diese Einrichtungen vorwiegend sequentiell' arbeiten.
Die einzelnen Quotientenziffern werden in aufeinanderfolgenden Iterationszyklen ermittelt. In jedem Zyklus ergibt sich dabei ein Dividendenrest,
der nach Vornahme einer Stellenverschiebung zwischen Divisor und Dividend im nachfolgenden Zyklus weiterverarbeitet wird.
Die Aufgabe der Erfindung besteht darin, eine Einrichtung anzugeben,
die auf einemhiervon abweichenden Wege eine schnelle und hochgradig parallele Division gestattet. Diese Einrichtung ist nicht auf eine Verwendung
zur Adressendecodierung beschränkt. Sie kann in einer Datenverarbeitungsanlage mit Vorteil überall dort eingesetzt werden, wo
es darauf ankommt, Divisionsoperationen mit möglichst wenig Zeitverlust auszuführen.
109849/U59
Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, daß für jede
Dividendenstelle eine Rest-Generatorschaltung vorgesehen ist, die durch Ausschöpfung der Dividendenziffern dieser Stelle mit dem Divisor eine
Dividendenrestziffer bildet, daß jeder Dividendenstelle, ausgenommen
der höchststelligen, eine Rest-Vorausschauschaltung zugeordnet ist,
die die Dividendenrestziffern der höheren Stellen mit einem die jewei-
,. „ ,, ,.,, , , . , . j ' T^ ι (Basis Z - Divisor X)
lige Stellendifferenz η berücksichtigenden Faktor ■*- — '—
multipliziert, das Produkt zu dem in der betreffenden Stelle bereits
vorliegenden Rest addiert und aus der Summe durch Ausschöpfung mit dem Divisor eine Stellenrestziffer bildet, daß ferner für jede Dividendenstelle
eine Quotienten-Generatorschaltung vorgesehen ist, die die Dividendenziffer dieser Stelle als rechtsseitigen (Einer) und die endgültige
Stellenrestziffer der nächsthöheren Stelle als linksseitigen (Zehner)
Eingangswert zugeführt erhält und durch Division mit dem Divisor eine Quotientenziffer bildet, und daß der Ausgang der Rest-Vorausschauschaltung
der niedrigsten Stelle als Endrestausgang dient.
Bei einer in dieser Weise ausgebildeten Divisionseinrichtung werden die
Restwerte, die in den einzelnen Dividendenstellen auftreten und bei der Quotientenermittlung in den niedrigeren Dividendenstellen zu berücksichtigen
sind, bereits vor der eigentlichen Berechnung der Quotienten ziffern
bestimmt und zu Stellenrestwerten zusammengefaßt. Dies geschieht mit Hilfe der Rest-Vorausschauschaltungen. Bei Vorliegen
109849/U59
der Stellenrestwerte sind die Quotientenziffern bei ihrer Bildung nicht
mehr voneinander abhängig. Die Erzeugung der Quotientenziffern und des Endrestes der Divisionsoperation kann daher weitgehend parallel
erfolgen.
Verschiedene vorteilhafte Ausgestaltungen der Erfindung sind aus den
Ansprüchen zu ersehen. Nachfolgend sind mehrere Ausführungsbeispie-Ie
der Erfindung anhand von Zeichnungen erläutert. Es zeigen:
Fig. 1: ein allgemeines Blockschaltbild der erfindungs gemäßen
Einrichtung,
Fig. 2: die Zusammengehörigkeit der Fig. 2A bis 2D,
Fig. ΖΑ-ΖΏι ein detailliertes Blockschaltbild einer bevorzugten Ausführungsform
der Divisionseinrichtung von Fig. 1,
Fig. 3: ein detailliertes Blockschaltbild der Schaltungen 134 von
Fig. 2A und 2B,
Fig. 4: ein detailliertes Blockschaltbild der Schaltungen 128 in
den Fig. 2A bis 2D,
109U9/U59
-S-
Fig. 5: ein detailliertes Blockschaltbild der Schaltungen 126 in
den Fig. 2A bis 2D,
Fig. 6A: ein detailliertes Blockschaltbild der Schaltungen 132 in
den Fig. 2C und 2D,
Fig. 6B: ein detailliertes Blockschaltbild der Schaltung 130 in
Fig. 2C, ·
Fig. 7A: eine vereinfachte Dar stellung des Adressierungss chemas
eines Speichers zur Erläuterung einer möglichen Anwendung der erfindungs gemäßen Divisionseinrichtung,
Fig. 7B: ein Blockschaltbild der Schaltungen 44 von Fig. 9A und
9B,
Fig. 7C: ein Blockschaltbild einer anderen Ausführungsform der
Schaltung von Fig. 7B für Divisionen mit einer Basis von 10 und einem festen Divisor von 5,
Fig. TD: ein Blockschaltbild der Schaltungen 124 von Fig. 12A und
12B,
109849/1459
Fig. 8A-8D: Wertetafeln zur Erläuterung der Arbeitsweise der in den
Fig. 2A bis 2D und 12A, 12B dargestellten Schaltungseinheiten
126, 128, 130 und 132,
Fig. 9A, 9B: ein Blockdiagramm einer Ausführungsform der erfindungs gemäßen
Divisionseinrichtung für eine Basis 10 und feste Divisorwerte von 7,
Fig. 1OA, IQB: ein Blockschaltbild einer anderen Ausführungsform der
erfindungs gemäßen Divisionseinrichtung für eine Basis
von 8 und einen festen Divisor von 7,
Fig. 11: ein Blockschaltbild einer Ausführungsform der erfindungs-
gemäßen Divisionseinrichtung für eine Basis 10 und einen festen Divisor von 5 und
ν Fig. 12A, 12B: ein Blockschaltbild einer bevorzugten Ausführungsform der
erfindungs gemäßen Divisionseinrichtung für eine Basis
von 8 und einen festen Divisor von 5.
Die dargestellte Divis ions einrichtung umfaßt eiae Quotienteöaiffe Jf-Generator
stufe für jede Ziffernstelle des Dividenden mit Ausnajbme der höeh-
f-' sten Ziffernatelle. Jede dieser QuotientenijiffeE-GeBeratoratijfen b«ste.ht
109849/USS
941
aus einer Rest-Generatorschaltung und einer Divisions schaltung. Die
Divisionsschaltung dient zur Erzeugung des jeweils wirksamen Dividenden
durch Verknüpfung der ursprünglichen Difidendenziffer mit dem jeweils wirksamen Rest von allen höheren Ziffernstellen, der
von der Rest-Generatorschaltung geliefert wird. Eine separate Divisionsschaltung, die keinen Rest-Eingang aufweist, ist für die höchste
Dividendenziffernstelle vorgesehen und eine separate Rest-Generatorschaltung
wird zur Erzeugung des endgültigen Restes verwendet.
In der dargestellten Divisionseinrichtung werden die Zwischenreste und
der endgültige Rest im wesentlichen parallel erzeugt, und die komplette
Division, die die Bildung aller Quotientenziffern durch Kombination der jeweiligen Quotientenziffer mit einem Restwert aus allen höheren
Ziffernstellen und der Division des dabei erhaltenen Resultates durch
den Divisor einschließt, kann ebenfalls parallel ausgeführt werden.
Vor der detaillierten Erläuterung des Ausführungsbeispiels der erfindungsgemäßen
Dividiereinrichtung wird anhand eines Zahlenbeispiels ein Hauptanwendungsbereich dieser Dividiereinrichtung beschrieben.
In Fig. 7A ist ein Datenspeicher mit mehreren Speicherwörtern schematisch
dargestellt, von denen jedes sieben Datenwörter enthält. Die Speicherwörter sind mit 0,1, 2, 3, 4 usw. am linken Rand der Figur
109849/1459
numeriert und jedes der Datenwörter ist durch eine Nummer in einem
rechteckigen Feld spezifiziert. Wenn ein Datenwort aufgerufen wird, ist es notwendig, die gesamte Speicheradresse des angegebenen Datenwortes
durch sieben zu dividieren. Der Quotient ist dann die Adresse des Speicherwortes und die Rest-Ziffer stellt die Adresse des
Datenwortes in diesem Speicherwort dar. Die Adressen der Datenwörter innerhalb der Speicherwörter sind von links beginnend mit Q bis
gekennzeichnet. Wenn beispielsweise das Datenwort 0 aufgerufen wird, so erfolgt eine Division von 0 durch 7, bei der sich ein Quotient von
0 und ein Rest von 0 ergeben. Daraus erfolgt, daß das Speicherwort 0 adressiert ist und die Nullposition in diesem Wort das gewünschte
Datenwort enthält. Wenn das Datenwort 24 aufgerufen wird, erfolgt eine Division von 24 durch 7, die einen Quotient von 3 und einen Rest
von 3 ergibt. In diesem Fall wird somit das Speicherwort 3 adressiert, und das gewünschte Datenwort befindet sich auf der Position 3 dieses
Speicherwortes.
Ein typisches Rechenbeispiel ist nachfolgend dargestellt. Die Adresse
des Datenwortes wird mit 92 466 angenommen.
109849/U59
7 9 (2) 2 4 1 3
79 2 (1) 4 6 6 1 3 2
7 9 2 4 (O) 6 6 1 3 2 0
7 9 2 4 6 (6) 6
13 2 0 9 +3/7
Das obige Beispiel zeigt in aufeinanderfolgenden Schritten die Ausführung der Division
92466
13209 + 3/7
Es ist festzustellen, daß, wenn alle in Klammern stehenden Zwischenreste anfänglich bekannt wären, es möglich wäre, die Quotientenziffern
in der folgenden Weise zu bestimmen;
[JlIl.] [JBA.]
109849/U59
13209
- ίο -
Das Symbol j j bedeutet hierin "ganzzahliger Teil von".
Nachfolgend wird gezeigt, wie diese Zwischenrestwerte erhalten werden,
können. Die Fig. 9A und 9B stellen ein Blockdiagramm einer Dividiereinrichtung
gemäß der Erfindung dar. Diese Dividier einrichtung ist besonders zur Ausführung von Divisionen der vorausgehend beispielsweise
dargestellten Art geeignet. Sie enthält Schaltungen zur vorausschauenden Bestimmung aller möglichen Restwerte der höheren
Wertstellen, die auf den endgültigen Quotienten für eine bestimmte Dividendenziffer Einfluß haben. Der Dividiereinrichtung kann eine beliebige
Zahlenbasis zu Grunde gelegt werden. Für das Ausführungs beispiel von Fig. 9A und 9B ist die Basis 10 und ein fester Divisor
von 7 gewählt worden. Die Anordnung ist achtstellig, und der Dividend muß entsprechend nach rechts verschoben werden, wenn er weniger
als 8 signifikante Ziffernstellen enthält, so daß die niedrigste Dividendenziffer stets in der äußersten rechten Stufe der Einrichtung
steht.
Der Dividend wird den Schaltungen 10 bis 24 zugeführt. Diese Schaltungen
sind einziffrige Dividier- oder Subtrahier stufen, die auf Leitungen
28 bis 42 Restziffern erzeugen. Im dar gestellten Beispiel können die Restziffern von 0 bis 6 variieren. Die Resfcziifern werden Schaltungen
44 bis 50 zugeführt, von denen eine im Detail in Fig. 7B ge- j
zeigt ist.
Τ098Λ9Λ1459
- ii -
Die der Schaltung von Fig. 7B auf Leitung 52 zugeführte Ziffer wird
in der Multiplizier schaltung 54 mit 3 multipliziert. Das Produkt auf
Leitung 56 bildet einen der Eingänge der Addier schaltung 58. Der Grund, warum eine Multiplikation mit 3 erfolgt, wird nachfolgend
erklärt. Die Ziffer auf der Leitung 52 kann einen Wert zwischen 0 und 6 haben, so daß auf Leitung 56 der Wert 0, 3, 6, 9, 12," 15
oder 18 auftreten kann.
Die der Schaltung von Fig. 7B auf Leitung 60 zugeführte Ziffer kann
einen Wert zwischen 0 und 6 annehmen. Der Ausgang der Addiererschaltung 58 kann somit eine Zahl zwischen 0 und 24 sein. Die Schaltungen
44, 46, 48 und 50 sowie 68, 70 und 72 entsprechen in ihrem Aufbau der Schaltung von Fig. 7B,
Die Schaltungen 74, 76 und 78 von Fig. 9A und 9B entsprechen ebenfalls
in ihrem Aufbau der in Verbindung mit Fig. 7B beschriebenen Schaltung mit der Ausnahme, daß die von links zugeführte Ziffer mit
2 anstatt mit 3 multipliziert wird. Der Ausgang der Schaltung 44 ist
der linksseitige Eingang der Schaltungen 68 und 74 in der nächsten und übernächsten Stufe bzw» Kolonne der Dividiereinrichtung. Auf
Grund dieser Kolonnendifferenz stellt der Multiplikationsfaktor von
3 in der Schaltung 68 den Wert dar, der durch Verminderung der Basis um 7 und Bildung der ersten Potenz aus dem Ergebnis ent-
109849/1459
steht. Der Multiplikationsfaktor 2 der Schaltung 74 stellt den entsprechenden
Wert dar, aus dem hier jedoch die zweite Potenz gebildet wird, wonach wiederum eine Subtraktion von 7 solange vorgenommen wird, bis
sich ein Rest von kleiner als 7 ergibt. ·
(10 - 7)2
32 =
32 =
9 - 7
Die Potenz ist jeweils diegleiche wie die Zahl der Stufen bzw. Kolonnen,
die der linksseitige Eingang der jeweiligen Schaltung überspannt. Beispielsweise
überspannt der linksseitige Eingang der Schaltung 80 drei Spalten, so daß sich ein Multiplikationsfaktor von 6 für diese Schaltung
ergibt, da die dritte Potenz des oben erwähnten Wertes nach wiederholter Subtraktion von 7 den Wert 6 ergibt, wie die nachfolgende Berech-
nung | zeigt: | (10 | -7)3 | = | 33 | JJj |
33 | = | 27 | ||||
27 - | (7 χ | 3) | ||||
Der erwähnte Wert in der vorausgehenden Beschreibung ist stets 3, da dies der letzte positive Rest ist, wenn die Basis 10 durch den fe-
109849/U59
sten Divisor 7 dividiert wird.
Nachfolgend wird die Erzeugung der Zwischenrestwerte anhand der
Fig. 9A und 9B im Detail erläutert. In allen der Fig. 9 bis 12 stellen
die am oberen Zeichnungsrand über den Eingangslinien eingetragenen
Ziffern die tatsächlichen Dividendenziffern dar. Die den Eingängen der einzelnen Funktionsblocke zugeordneten Ziffern stellen die tat-•
sächlichen numerischen Werte dar, die auf diesen Leitungen beim an- · genommenen Beispiel erseheinen. In den Fig. 9A und 9B sind die einzelnen
Stufen bzw. Kolonnen der Dividiereinrichtung von links nach rechts numeriert. Die Dividendenziffer der Kolonne 1 ist 0, und daher ist der Zwischenrest für die Kolpnne 2 ebenfalls· 0, Dasjgleiche
trifft zu für die Kolonnen 3 und 4. Die Dividendenziffer für die Kolonne
4 ist 9. Die Schaltung 16 liefert daher auf ihre Ausgangsleitung 34 den Wert 2 (9 - 7). Diese 2 wird unverändert durch die
Schaltung 46 übertragen, da der linksseitige Eingang der Schaltung 46 0 istuud da der Wert 7 im Eingangswert 2 nicht aufgeht.» Der
Ausgang der Schaltung 46 ist der Eingang der Schaltung 74, durch die wiederum der Wert 2 unverändert hindurchläuft und somit Zwischenrest
für die Spalte 5 wird.
In Spalte 5 bleibt die Dividendenziffer in der Schaltung 18 ebenfalls
ίο 941 10984971459
177457T
unverändert, da eine Division durch 7 keinen ganzzahligen Wert ergibt.
Der Ausgang 36 der Schaltung 18 bildet den oberen Eingang für die Schaltung 72. Am linksseitigen Eingang dieser Schaltung liegt der
Wert 2 an, der mit 3 multipliziert eine 6 ergibt, die zu 2 (oberer
Eingang) addiert wird. Das Resultat ist somit 8. Hiervon ist der Dividend
7 subtrahierbar, und der Zwischenrest für die Spalte 6 ist daher 1.
Die Dividendenziffer für die Spalte 6 ist 4. Sie passiert unverändert die
•Schaltung 20 und gelangt zum oberen Eingang der Schaltung 48. Am linksseitigen Eingang dieser Schaltung liegt der Wert 2 an, der mit
3 multipliziert 6 und, addiert zu 4, 10 ergibt. Die Schaltung 48 liefert
einen Ausgangswert von 3 (10 - 7), der am oberen Eingang der Schaltung 78 ers.^'a^, Der linksseitige Eingang dieser Schaltung ist
der Wert 2, der, multipliziert mit 2, 4 ergibt und, addiert zu 3, zum
Resultat 7 führt. Der Ausgang der Schaltung 78 liefert daher den Wert
0, der als Zwischenrest zur Spalte 7 geleitet wird.
Die Bividendenziffer der Spalte 7 ist 6. Diese Ziffer passiert unverändert die Schaltung 22 und wird dem oberen Eingang der Schaltung
70 zugeführt. Der linksseitige Eingang dieser S;chaltung isit 3. Dieser
Wert ergibt multipliziert mit 3 9, wozu: 6 addiert wird:, so daÄ dass-Restiltat
15 ist. Hierin ist die T zweimal entfcdjfcea% und. es
- 15 -
sich am Ausgang der Schaltung 70 der Wert 1, der zum oberen Eingang
der Schaltung 80 gelangt. Der linksseitige Eingang der Schaltung 80 ist 2, woraus durch Multiplikation mit 6 12 entsteht, wozu 1
addiert wird, so daß sich 13 ergibt. In dieser 13 ist die 7 einmal
enthalten, und der Zwischenrest für die Kolonne 8 ist 6 (13 - 7).
Der endgültige Rest der Division wird durch die Schaltungen in Spalte
8 erzeugt. Die Dividendenziffer dieser Spalte ist 6. Dieser Wert passiert unverändert die Schaltung 24 und gelangt zum oberen Eingang
der Schaltung 50. Der linksseitige Eingang dieser Schaltung hat den Wert 6. Dieser Wert wird mit 3 multipliziert, so daß sich 18
ergibt, woraus durch Addition von 6 24 entsteht. Hierin ist 7 dreimal enthalten; der Ausgang der Schaltung 50 ist daher 3. Dieser
Wert gelangt zum oberen Eingang der Schaltung 76, an deren links seitigemEingang
ebenfalls der Wert 3 anliegt. Die auszuführende Multiplikation mit 2 ergibt 6, woraus durch Addition von 3 9 entsteht.
7 ist in ;9 einmal enthalten, so daß am Ausgang der Schaltung 76 der
Wert 2 erscheint. Der Ausgang der Schaltung 76 ist mit dem oberen Eingang der Schaltung 82 verbunden, in welcher der linksseitig anliegende
Wert 2 mit 4 multipliziert wird. Der Multiplikationsfaktor 4 ergibt sich dabei aus der vierten Potenz von 3 und fortgesetzte Subtraktion von 7 nach dem Schema:
1-Ö9949/U59
10 941
(10 | = | ι = | 34 | = |
34 | (7 | 81 | ||
81 - | χ 11) | |||
Die Multiplikation in der Schaltung 82 ergibt somit 8, wozu 2 vom oberen Eingang addiert wird. In dem Resultat 10 ist 7 einmal enthalten,
so daß der endgültige Rest bzw. die Datenwortadresse 3 ist. In dieser Weise werden die Zwischen- und Endrestwerte auch bei anderen
Zahlenbeispielen erzeugt.
Als nächstes ist es notwendig, die Quotientenziffern zu bilden. Dies
geschieht mit Hilfe der Schaltungen 26, 84, 86, 88, 90, 92, 94 und
96. Die Schaltung 26 muß in der Lage sein, aus der höchststelligen
Dividendenziffer eine 7 auszuschöpfen. Die übrigen der genannten Schaltungen sind in der Lage, aus den zwei ihnen zugeführten Ziffern
bis zu neunmal den Wert 7 auszuschöpfen. Die beiden Eingangs ziffern können dabei im Bereich von 00 bis 69 liegen.
Die Schaltungen 84 und 86 erhalten an ihren Eingänge^ejnen Null-Rest
und Null-Dividendenziffern zugeführt. Sie erzeugen daher auf
ihren Ausgangsleitungen den Wert 0. Die Schaltung 88 erhält ebenfalls
einen Null-Rest, jedoch ist die an ihrem Eingang erscheinende Dividendenziffer 9, aus der sie die Quotientenziffer 1 bildet. In ahn-
10ÖÖ4ÖVU69
10 941 . ' *
licher Weise erhalten die Schaltungen 90, 92, 94 und 96 die Eingangs-"
werte 22, 14, 06 und 66 zugeführt und bilden daraus die Quotientenziffern 3, 2, 0 und 9. Es ist ersichtlich, daß die Schaltungen 26, 84,
86, 88, 90, 92, 94 und 96 einen ganzzahligen Wert bilden, welcher der Zahl entspricht, wie oft der Wert 7 in dem der jeweiligen Schaltung
zugeführten Eingangswert enthalten ist.
Nachfolgend soll nun eja anderes Zahlenbeispiel betrachtet werden, bei
dem der gleiche feste Divisor von 7 verwendet wird, bei dem jedoch die Basis 8 ist. Es wird dabei auf die Fig. 1OA und 1OB Bezug genommen.
Es kann anhand dieses Beispieles festgestellt werden, daß sich die Rest-Vorausschauschaltungen erheblich vereinfachen. Anhand
der Fig. 7B war zu sehen, daß der Faktor, mit welchem die linksseitigen
Eingangsworte,, in der Multiplikations einrichtung 54 multipliziert
wurden, der kleinste positive Rest ist, wenn die Basis durch 7 dividiert wird. Wenn dieser Faktor 1 ist, was der Fall ist, wenn
die Radix bzw. die Basis den Wert 8 und der Divisor den Wert 7 hat,
wird die Multipliziereinrichtung 54 überflüssig. Die Schaltung 64, welche
die dargebotenen Eingangswerte mit dem Divisor 7 auszuschöpfen
hat, urn den jeweiligen Zwischenrest zu ermitteln, hat dann in den
meisten Fällen nur eine einmalige Ausschöpfungsoperation, d.h. efa.e
einmalige Subtraktion von 7 vorzunehmen. Die in Fig. 9A und 9B dargestellten Schaltungen 44, 46, 48, 50, 68, 70, 72,. 74, 76, 78, 80 und
ΐ774571
82 können somit beim Beispiel nach Fig. 1OA und 1OB als untereinander
identische Schaltungen 98, 100, 102, 104, 106, 108, 110, 112, 114» 116, 118 und 120 ausgebildet sein. Das Beispiel von Fig. 1OA
und 1OB enthält die Division der Oktalzahl 000677765 durch 7, wobei sich als Resultat die Oktalzahl 00007776 und 3/7 ergibt. Die Zwischenrestwerte
werden in ähnlicher Weise erzeugt, wie es anhand der Fig.
9A und 9B beschrieben wurde. Es werden dabei jedoch keine Multiplikationsoperationen
ausgeführt und in den meisten Fällen genügt eine 7-Auss chöpfungs ope ration, um den jeweiligen Zwischenrest zu bilden.
Bei der Erzeugung der Quotientenziffern ist zu beachten, daß die zweiziffrige
Zahlt aus der in jeder Kolonne die Quotientenziffer dieser Kolonne
erzeugt wird, eine Oktalzahl ist. Z.B. stellt die Oktalzahl 67 die Dezimalzahl 55. dar (6x8+7) und enthält den Wert 7 siebenmal.
Bi ähnlicher Weise enthält die Oktalzahl 55 das dezimale Äquivalent
von 45 ( 5 χ 8 + 5), das durch 7 dividiert einen geradzahligen Quotienten
von 6 ergibt. Es wird angenommen, daß anhand dieser Erläuterungen
und anhand der vorausgehenden Beschreibung der Anordnung
gemäS Fig. 9A und 9B die Arbeitsweise der Dividiereinrichfeang von
Fig. IOA und IQB offensichtlich ist und keiner weiterem Erläuterung
bedarf.
Eine weitere Vereinfachung der Resfe-VtarausssefeimÄ tasi** am£,
177A571
wenn, wie in Fig. 11 dargestellt, eine Basis von 10 (dezimal) und ein fester Divisor von 5 verwendet werden. Die in Fig. 7B dargestellte
Schaltung zur Bildung des jeweiligen Zwischenrestes nimmt dann die in Fig. 7C dargestellte Form an.
Der Multiplikationsfaktor ist 0, da bei der Division von 10 durch 5
ein O-Rest erscheint. Die Multiplikationseinrichtung 122 und damit
auch der linksseitige Eingang dieser Schaltung sind daher überflüssig.
Ebenso ist die Divisionseinrichtung 124 nicht notwendig, da alle möglichen 5-AusSchöpfungen bereits in den im oberen Teil der Fig. 11
dargestellten Schaltungen zur Erzeugung des letzten positiven Restes aus der Dividendenziffer der jeweiligen Stufe vorgenommen worden
sind. Die vorausgehend in Verbindung mit Fig. 9A und 9B, 1OA und 1OB beschriebenen Schaltungen, wie beispielsweise 44 und 98, können
daher völlig weggelassen werden. Die Divisions einrichtung erhält dann die aus Fig. 11 ersichtliche Form. Ein anderer Weg zur Ausführung
einer Division durch 5 im dezimalen System wäre die Verdopplung des
Dividenden und die Ausführung einer Stellenverschiebung um eine Dezimalstelle nach rechts. Dabei wird die Ziffer der niedrigsten Stelle
halbiert un^ergibt den endgültigen Rest. Beispielsweise wird der in
Fig. 11 verwandte Dividend 92466 bei Verdopplung zu 184932. Wird eine Stellenverschiebung vorgenommen, so ergibt sich 18493 und 2/10,
was 18493 und l/5 entspricht.
Die Fig. 12A und 12B geben ein bevorzugtes Ausführungsbeispiel der
Erfindung an, bei dem als Radix bzw. Basis 8 (Oktalsystem) und ein
fester Divisor von 3 verwendet werden. Da Oktalziffern bereits im herkömmlichen Binärsystem vorhanden sind und durch einfache Aufteilung
eines binären Dividenden in Drei-Bit-Bytes, beginnend mit dem Basispunkt, erhalten werden können, ist eine Dividier einrichtung
für das Oktalsystem bevorzugt anwendbar. Das Ausführungsbeispiel von Fig. 12A und 12B wird anhand der Fig. 1 bis 6 auch im Detail
erläutert.
Zurückkommend auf Fig. 7B sei wiederholt, daß der Multiplikations faktor
als der letzte positive Rest bei einer Division der Basis durch den Divisor definiert wurde. Im Falle des Beispiels von Fig. 12A und
12B, wo die Basis 8 und der Divisor 3 sind, ergibt sich ein Multiplikationsfaktor
von 2. (Die 3 ist in der 8 zweimal enthalten, bei einem Rest vnn 2). Da der Divisor 3 ist, kann für den Wert 2 auch -1 verwendet
werden. Dies ergibt sich daraus, daß bei einer weiteren Subtraktion des Wertes 3 von dem Wert 2 das Resultat -l'ist. Die Schaltung
von Fig. 7B wird daher in der Anordnung gemäß Fig. 12A und 12B durch die Schaltung 126 von Fig. 7D ersetzt, welche die gleiche
Funktion für die abgeänderte Basis 8 und den abgeänderten Divisor 3 erfüllt.
Im Beispiel von Fig. 12, wo die Oktalzahl 57534621 durch 3 dividiert
wird, um als Resultat die Oktalzahl 17711460 und 1/3 zu erhalten, sind acht der Schaltungen 126 notwendig. Es ist zu bemerken, daß
die Addiereinrichtung 127 in der Schaltung 126 (Fig. 7D) eine algebraische Addiereinrichtung ist, die sowohl positive als auch negative
Größen verarbeiten kann. Die Eingangswerte der Schaltung 126 können nie größer als 2 sein. Wenn der Ausgang der Addiereinrichtung 127
-positiv ist, dann ist dieser Ausgangswert automatisch der letzte positive
Rest. Wenn dagegen der Ausgang der Addier einrichtung 127 negativ ist, dann muß eine 3 zu dem betreffenden Wert addiert werden,
um den letzten positiven Rest zu erhalten, ϊη Fig. 8A ist eine
Wertetafel für die Schaltung 126 gezeigt. Es sei daran erinnert, daß
in dem Fall, wenn der linksseitige Eingang einer Schaltung, wie beispielsweise 126, zwei Kolonnen der Dividier einrichtung überspannt,
der Multiplikationsfaktor zu quadrieren ist. Der Multiplikations faktor
-1 wird daher zu +1. Wenn drei Kolonnen überspannt werden, ergibt sich· erneut ein Multiplikations faktor von -1, da -1 die dritte Potenz
von -1 ist. Werden vier Kolonnen überspannt, ergibt sich ein Multiplikationsfaktor
von +1 (-1 erhoben zur vierten Potenz ist +l). Wegen
diesen Veränderungen sind in Fig. 12A und 12B zusätzliche Schaltungen 128 vorgesehen, die in ihrem Aufbau den Schaltungen 126 gleichen
mit der Ausnahme, daß der Multiplikationsfaktor anstelle von -1+1 ist. Eine Wertetafel für diese Schaltungen 128 zeigt die Fig.
8B. ''■■'.
10Ö84S/US9
Die Erzeugung der Zwisehenrestwerte für das Beispiel von Fig. 12A
und 12B kann leicht anhand der Wertetafeln von Fig. 8A und 8B verfolgt werden. Zur Erzeugung der geradzahligen Quotientenziffern dienen
Schaltungen 130 und 132. Eine Wertetafel für die Schaltung 130 ist in Fig. 8C und eine Wertetafel für die Schaltung 132 in Fig. 8D
dargestellt. Alle in diesen Tafeln aufgeführten Zahlen sind Oktalzahlen.
In Fig. 1 ist ein allgemeines Blockdiagramm einer schnellen, für jede
gewünschte Basis geeigneten Divisionseinrichtung gemäß der Erfindung für feste Divisoren gezeigt. Der obere mit "Eingaberegister" bezeichnete
Block bezeichnet ein Register, in welchem der Dividend vor Beginn der Division eingestellt wird. Der Block "Rest-Erzeugungsschaltung
- (Modulo X)" umfaßt alle Rest-Vorausschau-Schaltungen, wie sie vorausgehend anhand der Fig. 9 bis 12 beschrieben wurden. Es ist
offensichtlich, daß die Schaltungen dieses Blockes in einem weiten Bereich variieren in Abhängigkeit davon, welche Basis und welcher
fester Divisor verwendet werden. Die' in den Fig. 9 bis 11 mit "Generator
für den letzten positiven Rest" bezeichneten Blöcke bilden, wie der Name bereits besagt, durch wföerholte Ausschöpfung der jeweiligen
Dividendeneingangs ziffer durch den festen Divisor einen Rest,
dessen maximale Größe durch einen maximalen Rest bestimmt wird, der bei wiederholter Aus Schöpfung der verwendeten Basis mit dem
109849/U59
177U571
verwendeten Divisor erhalten wird. Im Beispiel von Fig. 12 ist daher
bei einem festen Divisor von 3 und einer Basis von 8 der maximal mögliche Rest 2.
Um irgendeine andere Zahl zu dievidieren, die ein geradzahliges Vielfaches
des festen Divisors, z.B. 3 ist, können entsprechende Stellenverschiebungen
des Dividenden oder Quotienten ausgeführt werden. Wenn es daher erwünscht ist, eine Division durch 6 (2 χ 3) durchzuführen,
wird eine Rechtsverschiebung des Dividenden um eine Bitstelle vorgenommen. Danach wird der Dividend den Eingangsleitungen
der Dividiereinrichtung zugeführt, die eine Division durch 3 vornimmt. Die rechts vom Basispunkt stehende Ziffer ist der Rest der Division
durch 2 (R-). Der Gesamtrest der Division durch 6 (R/) wird bestimmt
durch R, = 2 R + R . In ähnlicher Weise kann eine Division ο 3 c.
durch 12 (4 χ 3) durch eine Rechts verschiebung um zwei Bitstellen
vor Beginn der Division durch 3 erzielt werden.
Der in Fig. 1 mit "Addier-/Dividierwerk" bezeichnete Block verkörpert
die im unteren Teil der Fig. 9A und 9B, 1OA und 1OB sowie HA und HB dargestellten Addier- und Dividier schaltungen, wie beispielsweise
die Schaltungen 130 und 132 von Fig. 12A. Dieser j31ock empfängt
einerseits Eingangswerte direkt vom Ausgang des Eingaberegisters und andererseits Eingangswerte vom Ausgang der Rest-Erzeuger schaltung. Wie
vorausgehend erläutert, wird das Quotientenbit einer Stufe bzw. Kolonne
der Dividiereinrichtung aus einem Restwert, der aus den höheren Wertstellen gebildet worden ist, und aus der Dividendenziffer fur
die betreffende Stufe erzeugt. Der Ausgang des Addier-/Dividierwerk-Blockes
führt zu einem Ausgaberegister, das in Fig. 1 die Bezeichnung
"ganzzahliges Resultat" trägt. Der zweite Ausgang der Rest-Erzeuger Schaltung
ist an ein Rest-Ausgaberegister angeschlossen, das in Fig.
1 die Bezeichnung "Rest" trägt.
In den Fig. 2A bis 2D ist ein detaillierteres Blockschaltbild einer Divisionseinrichtung
gemäß Fig. 12A und 12B für eine Basis von 8 und einen festen Divisorwert von 3 dargestellt. Das am oberen Rand der
Fig. 2Auid 2B gezeichnete Eingaberegister ist in der Lage, 24 binäre
Bits zu speichern, die in 8 Bytes zu je 3 Bits aufgeteilt sind. Jedes dieser Bytes stellt den Dividendeneingangswert für eine der
Stufen 1 bis 8 der Dividiereinrichtung dar. Jede dieser Stufen, die durch strichlierte Linien voneinander getrennt sind, umfaßt die Schaltungen,
die notwendig sind, um das tatsächliche Quotientenbit für die betreffende Dividendenziffer und den der jeweiligen Stufe zugeführten
Restwert zu erzeugen. Am rechten Ende der Fig. 2B und 2D ist eine zusätzliche Stufe gezeigt, die mit "Rest-Stufe" bezeichnet ist.
Diese Stufe umfaßt die Schaltungen, die zur Zusammenfassung der potentiellen Restwerte für alle 8 Dividendenziffern notwendig sind,
109849/U59
ton einen resultierenden oder endgültigen Rest zu bilden.
Im übrigen entsprechen die in Fig. 2A bis 2D dargestellten Schaltungen
völlig den in Fig. 12A und 12B dargestellten Schaltungen. Ergänzend
sind die verschiedenen Bitleitungen, Register, usw. dargestellt. Die Blöcke 126 entsprechen den Blöcken 126 von Fig. 7D. Die Bezeichnung
"MOD. 3 SUBTR." dient zur Unterscheidung, daß die
Additions einrichtung 127 in diesen Stufen eine algebraische Additions einrichtung
ist, die sowohl positive als auch negative Werte verarbeitet.
Im Gegensatz hierzu enthalten die mit "MOD. 3 ADD." bezeichneten Stufen einfache Addiereinrichtungen 127. Die Funktion dieser
Schaltungen ist diegleiche, wie sie für die Schaltungen 126 und
128 in Verbindung mit den Fig. 12A und 12E beschrieben worden sind.
Der Aufbau der verschiedenen Schaltungen von Fig. 2 ist im einzelnen
in den Fig. 3 bis 5, 6A und 6B dargestellt. Die in den Fig. 2A und
2B mit "C" bezeichneten Schaltungen 134 entsprechen den Schaltungen
124 von Fig. 12A und 12B und haben die Aufgabe, eine Divisionsfunktion
auszuführen, indem sie die jeweilige Dividendenziffer mit dem
festen Divisorwert (in diesem Falle 3) ausschöpfen und so einen letzten
psoitiven Restwert erzeugen. Den detaillierten Aufbau dieser Schaltungen zeigt die Fig. 3. Die Ausgangsleitungen C9, C9, C1 und C1 sind
Ld
Lt
L
X
die oberen Eingangsleitungen der Schaltungen 126 und 128. In Stufe 7
109849/U59
führen die Ausgänge von der Schaltung 134 zum linksseitigen Eingang
der Schaltung 132 der gleichen Stufe. Dies ist der Fall, da in dieser Stufe nur eine höherstellige Ziffer zu erfassen ist und daher der Eingang
nicht von weiteren Stufen abhängig ist. Die Schaltung 134 besteht aus einer Anzahl Und- und Oder-Schaltungen (Fig. 3). Die Verknüpfung
dieser logischen Schaltungen ist im unteren Teil der Fig. 3 durch die entsprechende Bool 'sehe Gleichung angegeben. Ebenso sind die binären
und oktalen Gewichte, die den einzelnen Eingangs- und Aus gangs leitungen
zugeordnet sind, in der Zeichnung eingetragen.
In Fig. 4 ist der detaillierte Aufbau der Schaltungen 128 von den Fig.
2A1 2B und 2D dargestellt. Die verschiedenen Eingangsleitungen sind
mit T und L bezeichnet zur Unterscheidung zwischen den vier rechtsseitigen
Eingängen und den vier oberen Eingängen entsprechend der Darstellung der Schaltungen 128 in den Fig. 12A und 12B. Auch diese
Schaltungen bestehen aus einer Anzahl konventioneller Und- und Oder-Schaltungen.
Wiederum sind die logischen Gleichungen zur Vereinfachung der Beschreibung in der Zeichnung eingetragen.
Die Fig. 5 gibt den logischen Aufbau der Schaltungen 126 von den Fig.
EA1 2B und 2D an. Wie in Fig. 4 sind auch hier die Eingangsleitungen
mit T und L bezeichnet zur Unterscheidung zwischen den linksseitigen
Eingängen und den oberen Eingängen entsprechend der Darstellung in
109049/145 9
den Fig. 12A und 12B.
Die Fig. 6A ist ein detailliertes Blockschaltbild der Schaltungen 132
von Fig. 2C und 2D. Diese Schaltungen sind ebenfalls aus konventionellen Und- und Oder-Schaltungen aufgebaut. Die rechtsseitigen, mit
N bezeichneten Eingänge kommen direkt von den der betreffenden Stufe der Dividiereinrichtung zugeordneten Bistellen des Dividenden-Eingangsregisters.
Diese Bitstellen sind in Fig. 6A links oben strichliert dargestellt. Die von den Dividendenregisterstellen zugeführten
Eingangswerte sind wie auch in Fig. 3 mit N bezeichnet. Die linksseitigen, mit L bezeichneten Eingänge der Schaltung von Fig. 6A
kommen von einer der Schaltungen 124, 126 oder 128, wie im einzelnen aus den Fig. 2A bis 2D ersichtlich ist. Die Schaltung 132 weist
lediglich drei Ausgangsleitungen auf. Jeder dieser mit Q bezeichneten
Ausgänge wird nur dann aktiv, wenn er eine binäre Eins anzuzeigen hat. Die Bool'sehen Gleichungen für die Ausgangs signale auf den Q-Ausgangen
sind im unteren Teil der Fig. 6A angegeben. Da die erzeugten Quotientenziffern lediglich durch das Vorhandensein oder das
Fehlen einer binären Eins auf je einer einzigen Leitung angezeigt werden, ist es vor jeder Neueinstellung notwendig, das Resultatregister
136 (2C durch Zuführung eines Signals zu Leitung 140 zu löschen. Nachdem dies geschehen ist, wird ein Impuls über Leitung 142 einer
Vielfachtorschaltnng 143 zugeführt, über die die erzeugten Quotienten-
109849/U59
ziffern von allen Schaltungen 130 und 132 zum Register 136 übertragen
werden. Die Flg. 6B gibt ein Blockschaltbild für die Schaltung
130 von Fig. 2C an. Es ist ersichtlich, daß es sich bei dieser Schaltung, dm ein einfaches Dividierwerk handelt, das eine ganzzahlige
Größe als Quotientenziffer liefert als Resultat der höchststelligen Dividendenziffer durch den festen Divisorwert, im vorliegenden Falle
3. Die logischen Beziehungen, nach denen dies geschieht, sind bei den mit Q bezeichneten Ausgangsleitungen der Schaltung von Fig. 6B
eingetragen.
Bei Betrachtung der Dividier einrichtung von Fig. 2A bis -2D wird deutlich,
daß die Schaltung hochgradig parallel arbeitet, wodurch insbesondere in dem. Rest-Vorausschau-Teil eine erhebliche Einsparung an
Operationezeit möglich wird. Z.B. könnte in der Stufe 4 die Schaltung 128 vollständig weggelassen werden, wenn der Schaltung 126 am
oberen bzw. rechtsseitigen Eingang die Ausgangs signale der Schaltung
134 und am linksseitigen Eingang die Ausgangs signale der Schaltung 126 von Fig. 5 zugeführt werden. Es würde in diesem Falle das gleiche
Resultat erhalten werden, jedoch hätte die S chaltungs einspar ung eine Verlängerung der Operations zeit zur Folge. Im Prinzip könnte
jede der Stufen auf eine Schaltung 134 und eine Schaltung 126 reduziert werden, wenn ein Aufbau mit einem Minimum an Schaltelemen-
109849/U59
ten angestrebt wird. Wenn jedoch andererseits ein gewisser Aufwand
an Bauteilen auf Kosten der Erzielung einer hohen Arbeitsgeschwindigkeit
gerechtfertigt ist, kann für die erfindungsgemäße Dividiereinrichtung ein Aufbau gewählt werden, wie ihn die Fig. 12A und 12B
oder 2A bis 2D zeigen.
Die Dividiereinrichtung nach der Erfindung kann auch mit Vorteil bei
der Division eines binären Dividenden durch einen festen Divisor von
5 angewendet werden. In solch einem Falle kann der Dividend in einfacher
Weise in Gruppen zu je vier Bits unterteilt werden, so daß im Effekt mit einer Radix von 16 gearbeitet wird. Der letzte positive
Rest bei einer Division von 16 durch 5 ist 1, wodurch die Multiplikationseinrichtung
54 (Fig. 7B) überflüssig wird, und die Rest-Vorausschau-Schaltungen,
wie 126 und 128 von Fig. 12A und 12B können die Form von einfachen Addierwerken annehmen.
Für eine bestimmte Anwendung kann die gewünschte Zahlenbasis und
die Zahl der Dividendenstellen, über die sich die Re st-Voraus schau-Schaltungen
erstrecken sollen, so gewählt werden, daß sich eine effektive Ausnutzung der verfügbaren logischen Schaltungen ergibt. Bei binären
Datenverarbeitungsanlagen würde eine Basis von 8, 16, 32 etc.
zu bevorzugen sein. Obwohl die Wahl des festen Divisors von anderen
Bedingungen abhängig sein kann, sollten wenn möglich Divisoren
109049/1459
wie 3, 5, ect. in Verbindung mit einer geeigneten Zahlenbasis bevorzugt
werden, so daß der Multiplikationsfaktor in der Schaltung nach Fig. 7B zu +1 oder -1 reduziert werden kann und auch andere Vereinfachungen
im Schaltungsaufbau möglich werden.
Wie bereits weiter oben angedeutet, kann die erfindungsgemäße Dividiereinrichtung
in Verbindung mit herkömmlichen Schieberegistern verwendet werden, um eine Division durch einen mit einer Potenz von
vervielfachten festen Divisorwert, z.B. 6 {= 2 χ 3) oder 12 (= 4 χ 3),
auszuführen.
Wie ebenfalls bereits angedeutet, ist es bei Betrachtung der Fig. 2A
und ZD ersichtlich, daß ein Teil der Schaltungen in den niedrigstelligen
Stufen dem Zweck dient, einen höheren Grad an Parallelität bei der Verarbeitung der Zwischenreste von den höheren Wertstellen zu
einem endgültigen Rest zu erzielen. In der dargestellten Schaltung werden die Zwischenrestwerte von den vier höchsten Stellen über die Schaltung
128 der Stufe 4 direkt bzw. parallel den vier niedrigstelligen Stufen,
d.h. den Stufen 3, 2 und 1 sowie der Rest-Stufe, zugeführt. Die Erzeugung der Zwischenreste in diesen niedrigstelligen Stufen kann daher
parallel mit der Erzeugung in den höher stelligen Stufen erfolgen.
Hieraus ist offensichtlich, daß ein größerer oder kleinerer Grad an
Parallelität in die Schaltung eingebaut werden kann in Abhängigkeit da-
10 98 49/ US 9
von, in welchem Urnfange eine hohe Arbeitsgeschwindigkeit der Dividier
einrichtung auf Kosten eines erhöhten Schaltungsaufwandes zulässig
oder erwünscht ist.
Eine erfindungsgemäß ausgebildete Dividiereinrichtung für eine Basis
von 8 und einen festen Divisorwert von 3 ist in der Lage, den vollständigen
Quotientenwert und den ihm zugeordneten endgültigen Rest in etwa 1/20 der Zeityzu bilden, die eine bekannte Rechenanlage im
allgemeine η für eine Divisionsoperation benötigt. Dieses Verhältnis kann etwas reduziert werden, wenn ein fester Divisorwert bei einer
Divisionseinrichtung verwendet wird, die nach einem bekannten Divisionsalgorithmus
arbeitet, bei dem die höchststelligen Quotientenbits zuerst bestimmt werden und die sich ergebenden Zwischenreste
jeweils zur nächstniedrigen Wertstelle übertragen und dort verarbeitet werden. Eine Divisionseinrichtung mit einer derartigen sequentiellen
Verarbeitung der" einzelnen Dividendenreste würde bei einer Division durch 3 eine etwa zwei- bis dreimal längere Operations zeit
benötigen als die Dividiereinrichtung von Fig. 2A bis 2D, wenn eine
Operandenlänge von 24 Bits zugrundegelegt wird. Die Operations zeit der erfindungsgemäßen Dividier einrichtung ist mit einer logarithmischen
Funktion von der Operandenlänge abhängig, so daß eich die Überlegenheit
gegenüber den bekannten Dividiereinrichtungen besonders bei großen Operandenlängen zeigt.
109849/1459
Claims (9)
1. Einrichtung zur Division mehrstelliger Dividenden der Basis Z
durch einen festen Divisor X, dadurch gekennzeichnet, da/3 für
jede Dividendens teile eine Rest-Generator schaltung (134) vorgesehen ist, die durch Ausschöpfung der Dividendenziffer dieser
Stelle mit dem Divisor eine Dividendenrestziffer bildet, daß
jeder Dividendenstelle, ausgenommen der höchststelligen, eine Rest-Vorausschau-Schaltung (126, 128) zugeordnet ist, die die
Dividendenziffern der höheren Stellen mit einem die jeweilige
(Z - X)n Stellendifferenz η berücksichtigenden Faktor -*—-^ '— multi-
pliziert, das Produkt zu dem in der betreffenden Stelle bereits
vorliegenden Rest addiert und aus der Summe durch Ausschöpfung mit dem Divisor eine Stellenrestziffer bildet, daß ferner für
jede Dividendenstelle eine Quotientengenerator schaltung (130, 132) vorgesehen ist, die die Dividenden ziffer dieser Stelle als rechtsseitigen
(Einer) und die endgültige Stellenrestziffer der nächsthöheren Stelle als linksseitigen (Zehner) Eingangswert zugeführt
erhält und durch Division mit dem Divisor die Quotientenziffer
bildet, und daß der Ausgang der Rest-Vorausschau-Schaltung der niedrigsten Stelle als Endrestausgang dient.
1 09849/1459
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß jede
der Rest-Vorausschau-Schaltungen je nach der Zahl der zu verarbeitenden
Dividendenrestziffern von den höheren Stellen aus einer Anzahl in Serie geschalteter Zusammenfasser schaltungen
(126, 128) besteht, von denen jede eine Festwert-Multiplizierschaltung
(54), eine Addier schaltung (58) und eine Dividier- oder Ausschöpfschaltung (64) aufweist und die in der vorausgehenden
Zusammenfasser schaltung gebildete Stellenrestziffer und eine
Dividendenrestziffer als Eingangswerte zugeführt erhält.
3. Einrichtung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß
die Gesamtheit der Zusammenfasserschaltungen (126, 128) eine
Pyramide bilden, indem der Ausgang einer jeden Zusammenfasserschaltung
einerseits mit dem Eingang einer Zusammenfasserschaltung der nächsten Stelle und zum anderen mit der nachfolgenden
Zusammenfasserschaltung der gleichen Stelle verbunden ist.
4. Einrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet,
daß die aus Rest-Generatorschaltung (134), Rest-Vorausschau-Schaltung
(126, 128) und Quotientengenerator schaltung (130 oder 132) gebildeten Stufen in Gruppen unterteilt sind, daß
die Re st-Vor aus schau-Schaltungen innerhalb einer Gruppe in
10 98V97U5 9
jeder Stufe eine die Divxdendenrestziffern aller höher stelligen
Stufen beinhaltende Stellenrestziffer bilden und daß die Stellenrestziffer
der höchsten Stufe einer Gruppe den Rest-Vorausschau-Schaltungen aller Stufen der nächsthöheren Gruppe parallel zugeführt
wird.
5. Einrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet,
daß bei Verwendung einer Basis Z und eines festen
Z
Divisors X, die bei einer Division — einen Rest von 1 er-
Divisors X, die bei einer Division — einen Rest von 1 er-
geben (z.B. Z = 8, X = 7), die Rest-Vorausschau-Schaltungen (z.B. 98) eine Stellenrestziffer durch Addition von zwei Dividendenrestziffern
bzw. einer Dividendenrestziffer und einer bereits vorliegenden Stellenrestziffer und anschließender Ausschöpfung
der Summe mit dem Divisor bilden.
6. Einrichtung nach Anspruch 1 bis 4, dadurch gekennzeichnet, daß
bei Verwendung einer Basis Z und eines festen Divisors X, die
Z
bei einer Division -—— einen Rest von 2 ergeben (z.B. Z = 8, X = 3), die Rest-Vorausschauschaltungen (126, 128) je nach Stellendifferenz der beiden zusammenzufassenden Dividendenrestziffern als Multiplikationsfaktor -1 oder +1 verwenden und daß im ersteren Falle die Addier schaltung (54) zur Verarbeitung positiver und negativer Eingangswerte ausgebildet ist.
bei einer Division -—— einen Rest von 2 ergeben (z.B. Z = 8, X = 3), die Rest-Vorausschauschaltungen (126, 128) je nach Stellendifferenz der beiden zusammenzufassenden Dividendenrestziffern als Multiplikationsfaktor -1 oder +1 verwenden und daß im ersteren Falle die Addier schaltung (54) zur Verarbeitung positiver und negativer Eingangswerte ausgebildet ist.
109849/145 9
7. Einrichtung nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet,
daß bei einer Basis Z > 2 jede Dividendenziffer durch
eine binäre Bitgruppe dargestellt wird und daß die Rest-Generator
schaltungen (134), die Rest-Vorausschau-Schaltungen (126, 128, 98) und die Quotientengenerator schaltungen (132) so ausgelegt
sind, daß sie als Rest- bzw. Quotientenziffern entsprechende binäre Bitgruppen liefern.
8. Einrichtung nach den Ansprüchen 2 bis 7, dadurch gekennzeichnet,
daß die Zusammenfass er schaltungen (126, 128) für einen Multiplikationsfaktor +1 aus einer kombinierten Addier- Dividierschaltung
der Form:
VT1 T2
V Tl Ll
V Tl Ll
Tl 1I V ?1 Ll V T2 L2
und für einen Multiplikationsfaktor -1 aus einer kombinierten Subtrahier-Dividierschaltung der Form:
Sl = Tl Ll L2 V T2 Ll V Tl
Γ1 = Yl F2 r2 V T2 17I V Tl
Γ1 = Yl F2 r2 V T2 17I V Tl
1098A9/U5
S2 * Ί2 Ll L2 V Tl T2 Ll V Tl L2
L2
bestehen, worin S , S , S und S Bits der Wertigkeit 1 bzw.
2 einer oktalen Stellenrestziffer und L , L , L_, L und T ,
X X Ct
Ct
X
T1, T , T die Bits der Wertigkeit 1 bzw. 2" von zwei Dividen-
ί Ct Ct
den- bzw. Stellenrestziffern sind.
9. Einrichtung nach Anspruch 7, dadurch gekennzeichnet, daß ein-
gangsseitig eine Bitstellenver schiebe schaltung vorgesehen ist, die
für eine Division durch ein geradzahliges Vielfaches des Divisors eine stellenverschobene Zuführung der Dividendenziffern gestattet.
109849/1459
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US65457967A | 1967-07-19 | 1967-07-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1774571A1 true DE1774571A1 (de) | 1971-12-02 |
Family
ID=24625430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19681774571 Pending DE1774571A1 (de) | 1967-07-19 | 1968-07-18 | Divisionseinrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US3527930A (de) |
DE (1) | DE1774571A1 (de) |
FR (1) | FR1579667A (de) |
GB (1) | GB1177608A (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3648038A (en) * | 1969-04-25 | 1972-03-07 | Ibm | Apparatus and method for obtaining the reciprocal of a number and the quotient of two numbers |
JPS6042970B2 (ja) * | 1979-07-11 | 1985-09-26 | 日本電気株式会社 | 並列処理システム |
JPS58140846A (ja) * | 1982-02-16 | 1983-08-20 | Hitachi Ltd | 2進化10進数除算装置 |
US4503512A (en) * | 1982-02-22 | 1985-03-05 | Amdahl Corporation | Cellular division circuit |
US6341327B1 (en) | 1998-08-13 | 2002-01-22 | Intel Corporation | Content addressable memory addressable by redundant form input |
US6172933B1 (en) * | 1998-09-04 | 2001-01-09 | Intel Corporation | Redundant form address decoder for memory system |
US7685221B1 (en) * | 2003-03-17 | 2010-03-23 | Marvell Israel (M.I.S.L.) Ltd. | Efficient remainder calculation for even divisors |
GB2540215B (en) | 2015-07-10 | 2020-09-09 | Advanced Risc Mach Ltd | An apparatus and method for performing division |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3223831A (en) * | 1961-12-27 | 1965-12-14 | Ibm | Binary division apparatus |
US3293418A (en) * | 1964-07-08 | 1966-12-20 | Control Data Corp | High speed divider |
US3344261A (en) * | 1965-09-28 | 1967-09-26 | Division by preselected divisor |
-
1967
- 1967-07-19 US US654579A patent/US3527930A/en not_active Expired - Lifetime
-
1968
- 1968-06-20 GB GB29364/68A patent/GB1177608A/en not_active Expired
- 1968-06-26 FR FR1579667D patent/FR1579667A/fr not_active Expired
- 1968-07-18 DE DE19681774571 patent/DE1774571A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
US3527930A (en) | 1970-09-08 |
FR1579667A (de) | 1969-08-29 |
GB1177608A (en) | 1970-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1524162A1 (de) | Einrichtung zur parallel-simultanen Verarbeitung zusammengehoeriger Gruppen von Daten | |
DE1236834B (de) | Rechengeraet | |
DE1549476B2 (de) | Anordnung zur ausfuehrung von divisionen | |
DE2031040B2 (de) | Verfahren zur festlegung des zugangs von mehreren benutzern zu einer einheit einer datenverarbeitungsanlage und anordnung zur durchfuehrung des verfahrens | |
DE2360022A1 (de) | Binaeres 2-bit-dividierverfahren und vorrichtung zur ausfuehrung des verfahrens | |
DE2221693C3 (de) | Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen | |
DE2814078A1 (de) | Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags | |
DE2063199B2 (de) | Einrichtung zur Ausführung logischer Funktionen | |
DE1774571A1 (de) | Divisionseinrichtung | |
DE1115488B (de) | Datenverarbeitungssystem | |
DE3303269C2 (de) | ||
DE2034841B2 (de) | Matrixanordnung für Digital Rechenanlage | |
DE2830334C2 (de) | ||
DE2233193A1 (de) | Stapel-speichersystem | |
DE1499174B1 (de) | Dividiervorrichtung fuer Digitalrechner | |
DE1524169A1 (de) | Divisionseinrichtung | |
DE2321298A1 (de) | Dezimal-binaer-umsetzer | |
DE2952689C2 (de) | ||
DE1549461C3 (de) | ||
DE1061099B (de) | Datenuebertragungsvorrichtung fuer elektronische Rechenanlagen und datenverarbeitende Maschinen | |
DE1808159B2 (de) | Einrichtung zur umsetzung von dualzahlen in binaer codierte dezimalzahlen in paralleler darstellung | |
DE1549485B2 (de) | Anordnung zur division binaerer operanden ohne rueckstellung des restes | |
DE1090885B (de) | Parallel arbeitende, synchrone, elektrische, binaerrechnende Zahlenrechenmaschine, welche die Operation x+yz selbsttaetig auszufuehren vermag | |
DE1808159C (de) | Einrichtung zur Umsetzung von Dualzahlen in binär codierte Dezimalzahlen in paralleler Darstellung | |
DE1524146C (de) | Divisionseinrichtung |