DE2612750A1 - Multipliziereinrichtung - Google Patents
MultipliziereinrichtungInfo
- Publication number
- DE2612750A1 DE2612750A1 DE19762612750 DE2612750A DE2612750A1 DE 2612750 A1 DE2612750 A1 DE 2612750A1 DE 19762612750 DE19762612750 DE 19762612750 DE 2612750 A DE2612750 A DE 2612750A DE 2612750 A1 DE2612750 A1 DE 2612750A1
- Authority
- DE
- Germany
- Prior art keywords
- input
- output
- multiplier
- result
- group
- 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.)
- Withdrawn
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/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/729—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic using representation by a residue number system
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)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
Die Erfindung betrifft eine Einrichtung zur Durchführung von arithmetischen Operationen in einem Rechner, insbesondere
eine Einrichtung zum Multiplizieren von Zahlen, die im Restklassensystem dargestellt sind.
Von allen Grundrechenarten, die im Rechner realisiert werden, sind die Multiplikation und die Division bekanntlich
am kompliziertesten und zeitaufwendigsten. Dies ist dadurch zu erklären, daß die meisten zur Zeit bestehenden
Einrichtungen, die nach Positions- bzw. Stellensystemen (Stellenschreibweise) arbeiten, infolge ihres Aufbauprinzips
530-(P.62497/1)-HdS1
609841/0911
einen großen baulichen Aufwand zu ihrer Durchführung er- -fordern und infolge der sequentiellen Durchführung einzelner
Mikrooperationen einen großen Zeitaufwand für den Ablauf des Multiplikationsvorganges benötigen.
Die Weiterentwicklung dieser Einrichtungen ergab keine prinzipiellen Änderungen ihrer Arbeitsweise und führte nur
zu ihrer unwesentlichen Rationalisierung, ohne dabei die für diese Rechenoperation charakteristischen prinzipiellen
Schwierigkeiten zu beseitigen. Beispielsweise enthält eine bekannte Multipliziereinrichtung (vgl. FR-PS 2 127 ^43
vom 25. Feb. 1971 der Fa. Compagnie IBM France) einen Multiplikatorformer,
dessen Eingang mit der Multiplikatorschiene verbunden ist, einen Multiplikandwandler, bei dem der erste
Eingang an die Multiplikandschiene angeschlossen ist und der zweite Eingang über ein NICHT-Glied am Ausgang des
Multiplikatorformers liegt, ein Addier- und Schiebewerk,
dessen Eingang an den Multiplikatorformer angeschlossen ist und dessen Ausgang an der Ergebnisschiene liegt. Der
NICHT-Glied-Ausgang ist außerdem an den Eingang des Addier-
und Schiebewerks angeschlossen.
Für die Arbeitsweise dieser bekannten Einrichtung ist charakteristisch, daß der Multiplikator vor Beginn des
Multiplikationsvorganges im Multiplikatorformer in einer besonderen Weise (im GIM-Code) codiert wird, worauf der
nächste H- oder L-Multiplikatorwert, sobald erforderlich,
vom Formerausgang an den NICHT-Glied-Eingang ausgegeben
wird.
Ist der Multiplikatorwert gleich H, so wird der Multiplikand dem Eingang des Addier- und Schiebewerks ohne Umwandlung
zugeführt. Andernfalls gelangt an den Eingang des Addier- und Schiebewerks der umgewandelte Wert des
Multiplikanden.
€09841/0911
Im Addier- und Schiebewerk erfolgt das Speichern von -.
Teilsummen und die Ergebnisausgabe an die Ergebnisschiene.
Die Arbeitsgeschwindigkeit der erwähnten Einrichtung und ähnlicher Rechenschaltungen wird in der Hauptsache durch
einen mehrstelligen Addierer begrenzt, der zum Addier- und Schiebewerk gehört.
Die bekannten Addierer, die nach Positionssystemen arbeiten, enthalten Schaltkreise, die zum Übertrag von einer
Binärstelle zur anderen dienen.
Durch das Vorhandensein der Übertragsschaltkreise in den Addierern wird die Arbeitsgeschwindigkeit der erwähnten
Einrichtungen beim Addieren stark reduziert.
Bei Bemühungen, die Durchführung der arithmetischen Rechenoperationen
in Rechnern zu vervollkommnen, wurde durch die Abkehr von den Positionssystemen, insbesondere durch
den Übergang zum Restklassensystem, ein prinzipiell neuer Schritt gemacht.
Dieses System ist dadurch gekennzeichnet, daß eine Zahl in einzelne Teile zerlegt wird, die ihre unabhängige und
parallele Verarbeitung zulassen.
Im Restklassensystem wird die Dezimalzahl A durch die Gesamtheit von Resten dargestellt, die man bei der Division
der Dezimalzahl A durch jede von teilerfremden-Zahlen p-,
Pp, ... p., ... ρ erhält. Wenn man den Rest, der sich bei der
6098 41/091
Division der Dezimalzähl A durch p. bei i = 1, 2, ...η ergibt
mitc/. bezeichnet, erhält man die Zahl A im Restklassensystem
in der Form von
Die teilerfremden Zahlen p., Pp, ..., ρ nennt man
Basiszahlen des Restklassensystems.
Die dem Produkt aller Basiszahlen des Restklassensystems entsprechende Zahl P wird als Darstellungsbereich des
Zahlensystems bezeichnet;
P = P1 · P2 ' .*. 'Pn (2).
Wenn beispielsweise ein Restklassensystem mit drei Basis zahlen, also mit η = 3S und zwar mit
P1 = 3, P2 = 5, P3 = 7
benutzt wirdj beträgt sein Darsteilungsbereich
benutzt wirdj beträgt sein Darsteilungsbereich
P =: 3.5.7 = 105 .
Bei der Wahl von Basiszahlen des Zahlensystems besteht ein Kriterium darin, daß ihr Produkt größer als der größte
609841/0911
Multiplikand und Multiplikator sein soll, mit denen man bei der Lösung der betreffenden Aufgabe operieren muß.
Es sei nun die.Dezimalzahl A = 68 im Restklassensystem
betrachtet. Nachdem die Zahl A = 68 durch jede Basiszahl nacheinander dividiert wird, erhält man die Reste cC. = 2,
°^2 = 3) °S = 5*
Also wird die Dezimalzahl A = 68 im Restklassensystem
wie folgt dargestellt:
A = (2, 3, 5)
Zu bemerken ist, daß der Darstellungsbereich P des Zahlensystems eine Zahlenmenge (von Multiplikanden und
Multiplikatoren) kennzeichnet, die im Restklassensystem mit Hilfe von gegebenen Basiszahlen eindeutig dargestellt werden
kann.
Im vorliegenden Beispiel liegt der Änderungsbereich der im Restklassensystem eindeutig darstellbaren Zahlen
also im Intervall (0, 105)· Das heißt, daß die im Restklassensystem eindeutig darstellbare Maximalzahl (Multiplikand
er,
und Multiplikator) gleich 104 ist. Anders gesagt,'entspricht
jeder Zahl des Intervalls von 0 bis 104 eine einzige Kombination von Restzahlen. Beispielsweise weist die Zahl 21 im
betrachteten Restklassensystem, ebenso wie die Zahl 126, die nicht im Intervall fO, 105) liegt, die gleiche Darstellungsform
auf:
609841/0911
21 = (O, 1, O)
126 = (0, 1, 0).
126 = (0, 1, 0).
Die Operation der Restermittlung bei der Division der
Zahl A durch die Basis p- des Zahlensystems wi£d wie folgt dargestellt:
A = U± mod P1 (3) .
Das in Betracht kommende Restklassensystem eignet sich am besten für die Durchführung von rationalen Operationen
(Moduloperationen), die in einem Mikrotakt des Rechners ausgeführt werden.
Gegeben seien beispielsweise zwei Operanden A und B,
die im Restklassensystem wie folgt dargestellt sind:
wobei A = o£ mod p. und B=B- mod p. sind,
während i = 1, 2, ...n ist.
Dann läßt sich das Resultat einer beliebigen rationalen Operation (Addition, Subtraktion, Multiplikation) mit den
Operanden A und B folgenderweise schreiben:
= A*B= CjT1, γ2, ...γη), (5)
wobei T± ~ <^ ± ^ ßi m0(i Pi und
609841/0911
i = 1, 2, ..., η sind. Das Zeichen #· weist auf eine Operation
(Addition, Subtraktion oder Multiplikation) hin.
Als rationale Operation kann man auch die Division des Operanden A durch den Operanden B auffassen, wenn A sich
durch B ohne Rest dividieren läßtJ
oCi
i Y. = -τ; mod p. und
0 1 a^ X
i = 1, 2, ... , η sind.
Aus den obigen Ausführungen kann man ersehen, daß rationale Operationen gleichzeitig und parallel für jede Basiszahl
des Zahlensystems durchgeführt werden, wobei keine Verknüpfung zwischen ungleichnamigen Resten der Operanden
der rationalen Operation besteht, wie dies bei den Positionssystemen der Fall ist. Außerdem wird für die Realisierung
der rationalen Operationen im Rechner die Tabellenarithmetik
benutzt, wobei für die Durchführung von rationalen Operationen die Übetragsschaltkreise auch innerhalb der Basen entfal*
len können. Dadurch sann z.B. die Addition zweier im Restklassensystem
dargestellter Operanden in einem Mikrotakt des Rechners erfolgen, was bei Benutzung von Positionssystemen
auch theoretisch unmöglich ist.
609841/0911
Zu bemerken ist, daß das Ergebnis einer rationalen Ope*
ration richtig ist, wenn die Werte der Operanden und des Ergebnisses der betreffenden Operation im Intervall (O, P)4
also unter der Darstellungsgrenze des Zahlensystems, liegen.
Als Beispiel seien folgende rationale Operationen an den Operanden A und B im Eestklassensystem mit den Basiszahlen
p^, = 3> P2 = 5>
Po = 7 durchgeführt:
1. Addition von A = 41 = (2, 1, 6) und B = 30 =
= (0, 0, 2):
= 2 + O = 2 mod 3 =1+0=1 mod 5
= 6 + 2=8= 1 mod 7 *
Also ist C = (2, 1, 1) = 71
2. Ermittlung der Differenz der Operanden A = 41 = (2,
1, 6) und B = 30 = (0, 0,2):
=2-0=2 mod 3
=1-0=1 mod 5
= 6 - 2 = 4 mod 7 C = (2, 1, 4) = 11 .
3. Ermittlung des Produkts-der Operanden A = 3 = (0,3,
3) und B = 30 = (0, 0, 2):
χ] = 0.0 = 0 mod 3 2 s 3.0 = 0 mod 5
= 3·2 = 6 mod 7
Also ist G s (0, O, 6) =
609841/0911
4. Ermittlung des Quotienten der Division des Operanden A = 32 = (2, 2, 4) durch B = 4 = (1, 4, 4):
= 2 mod 3
V - 2 - 2 + 2*5 _ O mnA C
J2 - 4 - ~ - 3 mod 5
= i = 1 mod 7
C = (2, 3, D = 8 .
5. Ermittlung des Produkts der Operanden A = 41 = (2, 1, 6) und B = 30 = (O, O, 2):
= 2 . O = 0 nod 3 = 1 · O = O mod 5
=s 6 · 2 = 12 = 5 mod 7
C = (0, 0, 5) = 75 .
Das tatsächliche Ergebnis C beträgt:
C = A · B = 41 · 30 = 1230 .
Das Ergebnis der letzteren Operation war also falsch,
da sein Wert G über den Darstellungsbereich P = 105 des Restklassensystems hinausging.
609841/0911
Bei der Multiplikation von beliebig gewählten Operanden,
die im Restklassensystem dargestellt sind, wird also die Aufgabe der Ergebnisermittlung ohne irgendwelche Einschränkungen
für die Operanden- und Ergebniswerte gelöst, außer daß sie im Darstellungsbereich P des Zahlensystems
liegen sollen.
Im Zusammenhang damit wird der Begriff des Ergebnisses C1 der verkürzten Multiplikation eigeführt:
Cf = A ' B/P (7).
Die Ermittlung des Ergebniswertes C* der Verkürzten MuI-'
tiplikation ist somit die Hauptaufgabe bei der Durchführung der Multiplikation von Operanden A und B im Restklassensystem
Im angeführten Beispiel 5 beträgt das Ergebnis G1 der
verkürzten Multiplikation des Operanden A = 41 mit B = 30;
c. =
- 30 =
105
Liegt das Ergebnis der Multiplikation des Operanden A mit B unter der Grenze des Darstellungsbereichs P des Zahlensystems,
so ist das Ergebnis C* der verkürzten Multiplikation
offensichtlich gleich Null (C1 =0), da das Ergebnis C im
Darstellungsbereich ? des Zahlensystems liegt.
609841/0911
Außerdem werden die Zahlen für maschinengerechte Darstel
lung in echte Brüche umgewandelt. Für das Restklassensystem ist die Benutzung des Darstellungbereichs P dieses Zahlensystems
als Zähler am zweckmäßigsten. In diesem Falle stehen folgende Operanden zur Verfügung:
Af = 4 (8)
Somit kann das Ergebnis der Multiplikation der Operanden A1 und B* wie folgt ausgedrückt werden: λ
α· β· = £ · B = JLi^ = £1
Also besteht der Vorgang der Multiplikation von Brüchen im Eestklassensystem in der Ermittlung des Ergebnisses C*
der verkürzten Multiplikation von Zählern der gebrochenen Operanden Af und B*.
Für die Durchführung der Multiplikation im Eestklassensystem genügt es bekanntlich nicht, die Reste des Multiplikanden
und des Multiplikators zu kennen. Zur solchen Multiplikation braucht man die Information vom Zahlenwert im Positionssystem,
z.B. im Dezimalsystem. Diese Information wird entweder als Rang gegeben (vgl. I.J. Akuschski,
609841/0911
D.I. Judizki, Rechner'arithmetik in Restklassen , Moskau,
Verlag Sowjetskoje Radio· , 1968) oder durch Übergang zum
Zahlensystem mit gemischten Basen gewonnen (vgl. Szabo N.S.,
Tanaka R.I., 'Residual arithmetic and its applications to computer technology , Mc. Graw-Hill, New York, 1967).
Operationen, für deren Durchführung die Information'
vom Zahlenwert im Positionssystem erforderlich ist, nennt man nichtmodulare Operationen« Zu solchen Operationen gehören
auch Division und Multiplikation von ganzen Zahlen, Ermittlung des Vorzeichens einer Zahl und des Überlaufzeichens,
Division durch die Basis des Zahlensystems u.a.
In der vorliegenden Erfindungsbeschreibung wird mit dem Positionszeichen R die Information vom Zahlenwert im
Positionssystem bezeichnet, während der Index des Positions zeichens R der Zahl entspricht, auf die sich dieses
.Zeichen bezieht. So kann das Zeichen der Zahl Z als R2 bezeichnet
werden.
Die Ermittlung des Positions.zeichens R wird im folgenden
behandelt.
Der Erfindung liegt die Aufgabe zugrunde, eine Multiplizier
einrichtung zu entwickeln, die es ermöglicht, beliebige im Restklassensystem dargestellte Zahlen zu multiplizieren.
6098U/0911
Diese Aufgabe wird bei einer Multipliziereinrichtung mit einem den Multiplikator seriell erzeugenden Multiplikatorformer,
dessen Eingang mit einer Multiplikatorschiene verbunden ist, mit einem NICHT-Glied, dessen Eingang am
ersten Ausgang des Multiplikatorformers liegt, mit einem Multiplikandwandler zur Multiplikandumwandlung in die erforderliche
Form, dessen erster Eingang an eine Multiplikandschiene angeschlossen ist, und mit einem das Multiplikationsergebnis
bildenden Addier- und Schiebewerk, dessen erster Eingang am Ausgang des Multiplikandwandlers liegt
■und dessen Ausgang mit einer Ergebnissebiene verbunden ist,
erfindungsgemäß dadurch gelöst,
daß der zweite Eingang des Multiplikandwandlers mit dem Ausgang des Multiplikatorformers verbunden ist,
um den im Restklassensystem dargestellten Multiplikanden zum Addier- und Schiebewerk zu übertragen,
daß der zweite Eingang des Addier- und Schiebewerks
an den Ausgang des KICHT-Gliedes angeschlossen
ist, um das Addieren und Verschieben des Multiplikanden und des Multiplikationsergebnisses, die im Restklassensystem
dargestellt sind, zu steuern, und
daß der dritte Eingang des Addier- und Schiebewerks
mit dem zweiten Ausgang des Multiplikatorformers verbunden ist, um die Übertragung des Multiplikationsergebnisses
zur Ergebnisschiene zu steuern..
609841/0911
Es ist zweckmäßig,
daß der Multiplikatorformer ■ aufweist:
daß der Multiplikatorformer ■ aufweist:
eine ODER-Schaltungsgruppe, bei der ein Eingang
mit dem Eingang des Multiplikatorformers verbunden
eine Schiebeeinheit zur Linksverschiebung des Multiplikators
um ein Informationsbit, von der der Eingang mit dem Ausgang der ODER-Schaltungsgruppe und der erste
Ausgang mit dem zweiten Eingang . der ODER-Schaltungsgruppe verbunden sind, und
ein Schieberegister zur Verschiebung des umgewandelten Multiplikators, dessen Eingang mit dem zweiten Ausgang
der Schiebeeinheit und dessen Ausgang mit dem Ausgang des Multiplikatorformers verbunden ist.
Von Vorteil ist es,
daß die Schiebeeinheit aufweist:
daß die Schiebeeinheit aufweist:
einen Positionszeichen-Generator, , dessen Eingang an den Eingang >
der Schiebeeinheit geschaltet ist,
eine Schiebeschaltung zur Linkverschiebung des Multiplikators um ein Informationsbit mit Hilfe des Positionszeichens, die mit ihrem ersten Eingang am Eingang
609841/0911
der Schiebeeinheit und mit ihrem zweiten Eingang
am Ausgang des Positionszeichen-Generators (22) liegt, und
einen Vergleicher zur Erzeugung eines Steuersignals je nach dem Positionszeichen, die mit einem Eingang
an den ersten Ausgang der Schiebeschaltung, mit dem zweiten Eingang an den Ausgang des Positionszeichen-Generators
und mit dem Ausgang an den zweiten Ausgang der Schiebeeinheit angeschlossen ist, deren erster Ausgang
mit dem zweiten Ausgang der Schiebeschaltung verbunden ist. -- _ .
Es ist ferner zweckmäßig,
daß die Schiebeschaltung , aufweist:
daß die Schiebeschaltung , aufweist:
eine Decodierergruppe , deren Eingang erster Ausgang mit dem ersten Eingang
dem zweiten Ausgang der Schiebeschaltung sind,
und deren bzw. mit verbunden
einen Positionszeichen-Decodierer , dessen Eingang an den zweiten Eingang der Schiebeschaltung angeschlossen
ist, und
einen Addierer , von dem der erste Eingang an den zweiten Ausgang der Decodierergruppe , der zweite
Eingang an den Ausgang des Positionszeichen-Decodierers und der Ausgang an den zweiten Ausgang der
Schiebeschaltung geschaltet sind.'
609841/0911
Es ist auch zweckmäßig,
daß das Addier- und SchieJoewerk enthält:
daß das Addier- und SchieJoewerk enthält:
eine Modulo-Addierergruppe zur Addition des im Restklassensystem dargestellten Multiplikanden und des in demselben
System ausgedrückten Teilergebnisses des Multiplikationsvorganges,
die mit einem Eingang an den ersten Eingang , des Addier- und Schiebewerks x angeschlossen
ist,
eine ODER-Schaltungsgruppe von der ein Eingang
mit dem Ausgang der Modulo-Addierergruppe verbunden ist,
eine erste UND-Schaltungsgruppe, deren erster Eingang
an den zweiten Eingang des Addier- und Schiebewerks geschaltet ist und deren Ausgang mit dem zweiten
Eingang · der ODER-Schaltungsgruppe verbunden ist,
eine Schiebeeinheit zur Rechtsverschiebung des Teilergebnisses des Multiplikationsvorganges um ein Informationsbit, die mit ihrem Eingang . "an den Ausgang der ODER-Schaltungsgruppe
angeschlossen ist,
ein Ergebnisregister zur Speicherung des Teilergebnisses und des Ergebnisses des Multiplikationsvorganges,
von dem der Eingang . ' mit dem Ausgang der Schiebeeinheit
und der Ausgang mit dem zweiten Eingang '
der Modulo-Addierergruppe bzw. der ersten UND-Schaltungsgruppe
verbunden sind, und
609841/0911
eine zweite UND-Schaltungsgruppe von der ein Eingang
an den Ausgang des Ergebnisregisters der zweite Eingang an den dritten Eingang des Addier- und
Schiebewerks und der Ausgang an den Ausgang des Addier- und Schiebewerks" geschaltet sind,
Es empfiehlt sich,
daß die Schiebeeinheit aufweist:
daß die Schiebeeinheit aufweist:
einen Positionszeichen-Generator zur Ermittlung des Positionszeichens des Teilergebnisses des Multiplikationsvorganges , der mit seinem Eingang an den Eingang
der Schiebeeinheit angeschlossen ist,
einen Geradheits-Generator zur Bestimmung der Geradheit (Geradzahligkeit) des Teilergebnisses der Multiplikation,
von dem ein Eingang mit dem Eingang der Schiebeeinheit verbunden ist, der andere Eingang
aber zum Ausgang des Positionszeichen-Generators r geführt
ist,
einen Dividierer zur Division des Teilergebnisses der Multiplikation durch zwei, von dem.ein Eingang an den
Eingang der Schiebeeinheit, ein zweiter Eingang
an den Ausgang des Geradheits-Generators und der Ausgang an den Ausgang der Schiebeeinheit angeschlossen
sind..
609841/091 1
Von Vorteil ist,
daß der Positionszeichen-Generator aufweist:
daß der Positionszeichen-Generator aufweist:
eine Decodierergruppe, deren Eingang an den Eingang des Positionszeichen-Generators geschaltet
ist, sowie
einen vorgegebenen Modulo-Addierer, dessen Eingang
mit dem Ausgang der Decodierergruppe und dessen Ausgang mit dem Ausgang des Positionszeichen-Generators
verbunden ist..
Zweckmäßig ist es auch,
daß der Geradheits-Generator aufweist:
daß der Geradheits-Generator aufweist:
ein Speicherregister zum Speichern der Konstanten des Zahlensystems mit einer UND-Schaltungsgruppe , von der
ein Eingang . mit dem ersten Eingang des Geradheits-Generators . und ein zweiter Eingang mit dem Ausgang
des Speicherregisters verbunden sind, sowie
einen Modulo-2-Addierer, von dem der erste Eingang an den Ausgang der UND-Schaltungsgruppe } · der
zweite Eingang . an den zweiten Eingang des Geradheits-Generators und der Ausgang an den Ausgang des
Geradheits-Generators angeschlossen sind.
609841/091 t
Die Erfindung gibt die Möglichkeit, eine neue Generation von Rechnern zu schaffen, die nach dem Restklassensy^
tem arbeiten·
Da die schaltungstechnische Lösung der Erfindung die Anwendung einer großen Anzahl von gleichartigen Bausteinen
ermöglicht, ergibt die Erfindung eine bedeutende Vereinfachung der Herstellungstechnologie und folglich eine Senkung
der Herstellungskosten der Multipliziereinrichtung und des j Rechners im ganzen,
Die Einfachheit des Betriebsablaufs und de.s Aufbaus
der Multipliziereinrichtung führt zur Erhöhung der Betriebszuverlässigkeit von Rechnern-. N
In der nachstehenden Beschreibung wird die Erfindung an einem Ausführungsbeispiel und anhand der beiliegenden Zeichnungen
näher erläutert. Hierbei zeigen
Fig. 1 ein Blockschaltbild der Multipliziereinrichtung gemäß der Erfindung;
Fig. 2 ein Blockschaltbild des Multiplikatorformers gemäß der Erfindung;
Fig. 3 ein Blockschaltbild der . Schiebeeinheit gemäß der Erfindung;
Fig. 4 ein Funktionsschaltbild der erfindungsgemäßen Schiebeschaltung;
Fig. 5 ein Blockschaltbild des nach der Erfindung ausgeführten
Addier- und Schiebewerks;
809841/0911
Fig. 6 ein Blockschaltbild der Schieböeinheit gemäß
der Erfindung;
Fig. 7 ein Funkjbionsschaltbild des Positionszeichen-Gene
raboiB nach der vorliegenden Erfindung;
Fig. 8 ein Funktionsschaltbild des erfindungsgemäß aufgebauten Geradheits-Generators]
Fig. 9 ein FunktionsschaItbild des Dividierers gemäß
der Erfindung.
Die zur Multiplikation der im Restklassensystem dargestellten Zahlen bestimmte Multipliziereinrichtung enthält
einen Multiplikatorformer 1 (Fig. 1), dessen Eingang 2 an der Multiplikatorschiene 3 liegt. x
Zur Multipliziereinrichtung gehört auch ein NICHT-Glied 4,
dessen Eingang 5 mit dem ersten Ausgang des Multiplikatorformers
1 verbunden ist.
Weiterhin weist die Multipliziereinrichtung einen Multiplikandwand
ler 6 auf, bei dem der erste Eingang 7 an die
Multiplikandschiene 8 angeschlossen ist und der zweite Eingang 9 am Ausgang des Multiplikatorformers 1 liegt.
Die Multipliziereinrichtung -enthält auch ein Addier-
und Schiebewerk 10, bei dem der erste Eingang 11 mit dem Ausgang des Multiplikandwandlers 6 verbunden ist, der
zweite Eingang 12 am Ausgang des NEHT-Glied 4 liegt und der
dritte Eingang 13 an . den zweiten Ausgang des Multiplikatorformers
1 angeschlosisen ist© Der Ausgang des Addier- und
609841/0911
Schiebewerks 10 hat mit der Ergebnisschiene 14 Verbindung.
Zum Multiplikatorforiner 1 gehört eine erste ODER-Schaltungsgruppe
15 (Fig. 2), bei der ein Eingang Ib mit
dem Eingang 2 des Multiplikatorformers 1 verbunden ist.
Ausserdein weist der iviultiplikatorformer 1 eine Schiebeeinheit
17 auf, deren Eingang 18 an den Ausgang der ersten ODER-Schaltungsgruppe 15 angeschlossen ist und deren
erster Ausgang am sweiten Eingang 19 der ersten ODER-
-Schaltungsgruppe 15 liegt.
Der Multiplikatorformer 1 hat auch ein Schieberegister
20, bei dem der Eingang 21 an den zweiten Ausgaiig der
Schiebeeinheit 17 und der Ausgang an den Ausgang des Multiplikatorformers
1 angeschlossen sind.
Die Schiebeeinheit 17 enthält einen Positionszeichen-Generator 22 (Fig. 3)ι dessen Eingang 23 an den Eingang 18
der Schiebeeinheit . 17 geschaltet ist.
Zur Schiebeeinheit 17 gehört auch eine " Sohle—
beschältung 24, bei der der erste Eingang 25 am Eingang
18 der Schiebeeinheit 17 liegt und der zweite Eingang
26 mit dem Ausgang des Positionszeichen-Generators 22 verbunden
ist.
Ausserdem weist die Schieb eeinheit 17 einen Vergleicher 27 auf, bei der ein Eingang 23 an den
609841/0911
ersten Ausgang der Schiebeschaltung 24 und der zweite Eingang 29 an den Ausgang des Positionszeichen-Generators
angeschlossen sind. Der Ausgang des Vergleichers 27 hat mit dem zweiten Ausgang der Schiebeeinheit 17 Verbindung,
wobei der erste Ausgang der letzteren am zweiten Ausgang der Schiebeschaltung 24 liegt.
Die Schiebeschaltung 24 enthält eine Decodierergruppe
30 (Fig. 4) mit Decodierern 30,·... 30 , wobei der Eingang
31 der Decodierergruppe 30 mit dem ersten Eingang 25 der
Schiebeschaltung 24 und der erste Ausgang 32 mit dem zweiten Ausgang der Schiebeschaltung 24 verbunden sind.
Die Schiebeschaltung 24 enthält auch einen Positionszeichen-Decodierer
33, dessen Eingang 34 auf den zweiten Eingang 2.6 der Schiebeschaltung 24 geführt ist.
Zur Schiebeschaltung 24 gehört auch ein Addierer 35*
bei dem der erste Eingang 36 mit dem zweiten Ausgang 37
der Decodierergruppe 30, der zweite Eingang 38 mit dem Ausgang des Positionszeichen-Decodierers 33 und der Ausgang
mit dem zweiten Ausgang der Schiebeschaltung 24 verbunden sind.
Das Addier- und Schiebewerk: 10 (Fig. 5) weist eine Modulo-Addierergruppe 39 auf, bei der ein Eingang 40 an
den ersten Eingang 11 des Addier- und Schiebewerks angeschlossen ist.
609841/091 1
Das Addier- und Schiebewerk 10 hat auch eine ODER-Schaltungsgruppe
4l, bei der ein Eingang 42 mit dem Ausgang der Modulo-Addierergruppe 39 verbunden ist.
Das Addier- und Schiebewerk 10 weist außerdem eine erste UND-Schaltungsgruppe 43 auf, deren erster Eingang
44 an den zweiten Eingang 12 des Addier- und Schiebewerks 10 angeschlossen ist und deren Ausgang am zweiten Eingang
der ODER-Schaltungsgruppe 4l liegt.
Zum Addier- und Schiebewerk 10 gehört weiter eine Schiebeeinheit 46, deren Eingang 47 auf den Ausgang der
ODER-Schaltungsgruppe 4l geführt ist.
Außerdem ist das Addier- und Verschiebewerk 10 mit einem Ergebnisregister 48 ausgestattet, bei dem der Eingang
49 mit dem Ausgang der Schiebeeinheit 46 und der Ausgang
mit dem zweiten Eingang 50 der Modulo-Addierergruppe 39
sowie mit dem zweiten Eingang 51 der ersten UND-Schaltungsgruppe 43 verbunden sind.
Zum Addier- und Schiebewerk 10 gehört außerdem eine zweite UND-Schaltungsgruppe 52, bei der ein Eingang 53
an den Ausgang des Ergebnisregisters 48, der andere Eingang 54 an den dritten Eingang 13 des Addier- und Schiebewerks
und der Ausgang an den Ausgang des Addier- und Schiebewerks 10 angeschlossen sind.
Die Schiebeeinheit 46 weist einen Positionszeichen-Generator 55 (Fig. 6) auf, dessen Eingang 56 am Eingang
der Schiebeeinheit liegt.
609841/0911
Zur Schiebeeinheit 46 gehört auch ein Geradheits-Generator 57, bei dem ein Eingang 58 auf den Eingang
der Schiebeeinheit 46 und der andere Eingang 59 auf den Ausgang des Positionszeichen-Gene'rators 55 geführt
sind.
Die Schiebeeinheit 46 hat außerdem einen Dividierer 60, bei dem ein Eingang 6l an den Eingang 47 der Schiebeeinheit
46, der zweite Eingang 62 an den Ausgang des Geradheits-Generators 57 und der Ausgang an den Ausgang
der Schiebeeinheit 46 angeschlossen sind.
Die Positionszeichen-Generatoren 55 und 22 (Fig. J>)
sind ähnlich aufgebaut.
Der Positionszeichen-Generator 55 weist eine Decodierergruppe 65 (Fig. 7) mit Docodierern 63, ... 63 auf. Der
Eingang dieser Decodierergruppe 63 ist mit dem Eingang
des Positionszeichen-Generators 55 verbunden.
Zum Positionszeichen-Generator 55 gehört auch ein vorgegebener Modulo-Addierer 65, dessen Eingang 66 auf
den Ausgang 67 der Decodierergruppe 63 geführt ist und
dessen Ausgang am Ausgang des Positionszeichen-Generators 55 liegt.
Der Geradheits-Generator 57 (Fig. 8) enthält ein Speicherregister 68 sowi? eine UND-Schaltungsgruppe 69
mit den UND-Schaltungen 69, ... 69 . Ein Eingang 70 der UND-Schaltungsgruppe 69 ist mit dem ersten Eingang 58
des Geradheits-Generators 57 und der zweite Eingang 71 mit dem Ausgang des Speicherregisters 68 verbunden.
609841/0911
-ι 2-5 -
Außerdem weist der Geradheits-Generator 57 einen Modulo-2-Addierer 72 auf, bei dem der erste Eingang
73 an den Ausgang 74 der UND-Schaltungsgruppe 69, der zweite
Eingang 75 an den zweiten Eingang 59 des Geradheits-Generators
57 und dar Ausgang an den Ausgang des Gerad heits-Generators 57 geschaltet sind.
Der Divi dierer ■ 60 (Fig. 9) enthält eine üecodierergcuppe
76 mit den Decodlerern 76/-...76 . Der erste Eingang
77 der De Codierergruppe 76 ist mit dem ersten Eingang
61 des Dividierers 60, der zweite Eingang 78 mit dem
zweiten Eingang 62 dsa Dividierers 60 und der Ausgang
79 mit dem Ausgang des Dividierers 60 verbunden.
Die erfindungsgemäße · Multipliziereinrichtung funktioniert wie folgt. !
Der Multiplikator B, der im Restklassensystem als B = = (ß^, βρ»···»βη) und B = ß. mod p. bei i = 1, 2, ...,n
dargestellt ist, wird von der Multiplikatorschiene 3 (Fig.1)
dem Eingang 2 des MuLtiplikatorformers 1 zugeführt. Auf Grund
der im Restklassensyatem ausgedrückten Größe des Multiplikators
B form.t der Multiplikatorformer 1 die Größe eines neuen Multiplikators B1 im binären Positionssystem, die mit
der Multiplikatorgröße B durch folgende Beziehung verknüpft ist:
wobei P der Darstellungsbereich des Zahlensystems ist.
6 09841/0911
Man beachte, daß der neue Multiplikator B* einen echten
Bruch im binären Zahlensystem darstellt und damit wie folgt ausgedrückt wird:
B* = Ο,β*. ßf_2 ß1_o ... ßf_m oder
B1 s Ζ~Λ·&Λ + 2~2 . ß«2 + ... + 2~m
wobei ßf_· =s 110,1 J mit i = 1, 2, ..., m ist.
Der Multiplikand A, der im Restklassensystem als
A = ( oCj ι <i~2' " · * 0^n) und A ~ °^i m0(i Pi tei ^- ~ ^» 2»
..., η dargestellt :.st, wird von der Multiplikandschiene 8
dem ersten Eingang ? des Multiplikandwandlers 6 zugeführt. Dabei gelangt der Multiplikand A vom Ausgang des Multiplikandwandlers
6 zum ersten Eingang 11 des Addier- und 3 chiebewerks 10;, wenn der nächstfolgende Binärzifferwert
ß1 . des Multiplikators B1 gleich Eins, also ß' .= 1 ist
Der Binärzifferwert ß1 . wird dem zweiten Eingang des
Multiplikandwandlers 6 zugeführt.
Ist der nächste Binärzifferwert ß* j des neuen Multiplikators
B* gleich Null, so kann der Multiplikand A nicht zum Ausgang des Multiplikandwandlers 6 gelangen. In diesem Falle
wird dem. zweiten Eingang 12 des Addier- und Schiebewerks
10 vom Ausgang des EECHT-GUeds 4 der invertierte Wert
der Ziffer ß1 . also ß* . = 1 zugeführt. Das am zweiten
6Ö9841/CTS1 1
Eingang 12 des Addier- und Schiebnewerks 10 anliegende
Signal ßf . = 1 steuert den Betrieb dieses Werks "beim Fehlen
des Multiplikanden A an seinem ersten Eingang 11.
Nach der Ankunft der letzten (m-ten) Binärziffer ß1 .am
zweiten Eingang 9 cLßs Multiplikandwandlers 6 und am Eingang
5 des NICHT-Glieds 4 wird vom zweiten Ausgang des Multiplikatorformers
1 ein Steuersignal geliefert, das auf den dritten Eingang 13 des Addier- und Schiebewerks 10 gegeben
wird. Dieses Signal bewirkt die Ausgabe des Ergebnisses C der Multiplikation des Multiplikanden A mit dem Multiplikator
B vom Ausgang des Addier- und Schiebewerks 10 an die Ergebnisschiene 14. \
Der beschriebene Betrieb der Multipliziereinrichtung
kann mit folgenden Formeln illustriert werden.
Gesucht sei das Ergebnis G1 der Multiplikation des
Multiplikanden A mit dem Multiplikator B nach der Formel
C1 = A B/P
Mit Bf sei der neue Wert des Multiplikators B nach
der Entwicklung der Zahl B/P zum echten binären Bruch bezeichnet. Dies wird möglich, da B/P
< 1 ist, weil B<P ist.
Man erhält dann
B* = 0, ß«^ ß'__2,..., ß«_m (11)
6 0 984 1/091 1
. - 28-
B1 = ß» ·2~1+β·_2·2""2+ ... +ß*_m«2"m (12).
Nach dem Einsetzen der Gleichung (12) in die Formel (7) ergibt sich
(13).
Nach der Auflösung der Klammern und nach der Umformung von (B) erhält man
π f _ ρ ι A · R ^ J-j^ ι j-^ ι Δ β R ^ -LS^
Aus der angeführten Forme1 (14) für das Ergebnis Cf,
das man durch Multiplikation des Multiplikanden A mit dem Multiplikator B erhält, ist ersichtlich, daß der Vorgang
der Ermittlung des Ergebnisses C in der Eingabe des Multiplikanden
A in den Addier- und Schiebewerks 10 besteht, wenn der Wert ßf ^ = Ί ist. Bei ß1 j = 0 wird der Multiplikand
A dem Block 10 nicht zugeführt. Darauf erfolgt die Addition des Multiplikanden A mit dem Zwischenergebnis des
Multiplikationsvorganges und die nachfolgende Rechtsverschiebung (Division durch 2) -der erhaltenen Summe. Der Vorgang
der Ermittlung des Ergebnisses C* wird bei der Mülti-
609841/0911
plikation des Multiplikanden A mit dem Multiplikator B abgeschlossen,
wenn keine Ziffern der "binären Entwicklung des neuen Multiplikatorwertes B1 vorliegen.
Der Multiplikatorformer 1 funktioniert folgenderweise.
Vor Beginn der Multiplikation gelangt der Multiplikator B vom Eingang 2 des Mu.ltiplikatorformers 1 über die ODER-
-Schaltungsgruppe 15 (Fig. 2) zum Eingang 18 der ächiebe-
einheit 17· In der Linksschiebeeinheit I7 wird der
Multiplikator B mit zwei multipliziert. Ist das IV'ultiplikationsergebnis
2·Β kleiner als der Darstellungsbereich P des Zahlensystems, also 2B<P, so ist die erste Ziffer ßf . der
Entwicklung des Multiplikators B als Binärbruöh gleich Null. Wenn das Multiplikationsergpbnis 2·Β größer als der Darstellungsbereich
P des Zahlensystems oder gleich diesem Bereich (2B 5PP) ist, entspricht die erste Ziffer ߻_,, der
Entwicklung des Multiplikators B zum Binärbruch einer Eins. Die somit formulierte Regel kann mit folgenden Formeln illustriert
werden. Beispielsweise sei der neue Multiplikatorwert Bf bekannt:
Bf = O,ß* , ß*_
-m
Die rechte und iie linke Seite der Gleichung (11) soll nun mit zwei multipliziert werden, wobei man erhält
2B· = ß«_1f ßf_2, ßf_3,..·, B'_m, O (15)
609 841/0911
Da andererseits Bf = B/P ist, ergibt sich
2E· = 2B/P .
Beim Vergleich der Ausdrücke (9) und (15) kann man erkennen, daß die als ganzer Teil des Bruches
2B· = ß'^, ßf_2, ßf_3,..., ßf_m,0
auftretende Ziffer 31^ gleich Eins bei 2B ä P und gleich
Null bei 2B<P ist»
Der erhaltene Wert von ß'_, wird vom zweiten Ausgang
der S.chieb eeinheit 17 dem Eingang des Schieberegisters
20 zugeführt, in dem er gespeichert wird.
Vom ersten Ausgang der Schiebeeinheit 17 wird die Größe B des umgewandelten Multiplikators abgenommen, die 2B
bei β*_ι = O oder 23 - P bei ßf_^ = 1 beträgt. Die abgenommene
Größe wird über den zweiten Eingang 19 der ODER-Schaltungs
gruppe 15 wieder dem Eingang der Ochieböeinhe'it 17 zugeführt.
In diesem Falle hat der Bruch im binären Zahlensystem die Form:
2B» - ß'^ = B' = 0, ß«_2, β*_3, ..., ß«_m, 0 (16) m
Der ' Schiebevorgang wird wiederholt, bis die
letzte Ziffer ß1 des neuen Multiplikatorwertes B1 erhalten
—m
609841/0911
Nach den Umformungen des Multiplikators B in der ersten Schiebeeinheit 17 wird im Schieberegister 20
also der neue Multiplikatorwert B1 gespeichert, der von
seinem ersten Ausgang zum ersten Eingang des Multiplikatorformers übertragen wird.
Die Schiebeeinheit 17 funktioniert wie folgt.
Dem Eingang 18 der Schiebeeinheit 17 wird der Multiplikator B zugeführt, dessen umgewandelter Wert B vom
Ausgang dieser Einheit über die ODER-Schaltungsgruppe 15 wieder
dem Eingang 18 der Schiebeeinheit 17 zugeführt
wird.
Vom Eingang 18 der Schieb eeinhe it *\γ gelangt der
Multiplikator B zum Eingang 23 (Fig. 3) des Positionzeichen-Generators 22.
Generator
Der Positionezeionen- / 22 berechnet den wahren Wert
Rg des Positionszeichens vom Multiplikator B und gibt ihn
auf den Eingang der Schiebeschaltung 24·.
Vom zweiten Ausgang der Schieb eschaltung 24 wird
der umgewandelte Multiplikatorwert B abgenommen, der nach der Regel
2 · B = B mod P (17)
gebildet wird.· Dieser Wert gelangt zum ersten 'Ausgang der Schiebeeinheit ' 17· Vom ersten Ausgang der Schiebesschaltung
24 wird der berechnete Wert IL des Positions-
609841/0911
zeichens abgenommen und dem ersten Eingang 28 de.s Verglei-'
chers , 27 zugeführt.
In dem Vergleicher 27 wird der berechnete Wert Rn des Positionszeichens mit seinem wahren Wert Rn vergli-
Jd Jo
chen, der zum Eingang 29 vom Ausgang des Positions:zeichep-Generatcns22
gelangt. Ist Rg = Rg, so erscheint am Ausgang des Vergleichers 27 das Null-Signal. Bei Rß φ Rß liegt
am Ausgang des Vergleichers 27 das der Eins entsprechendes Signal.
Die der Null und der Eins entsprechenden Signale werden
auf den zweiten Ausgang der Schiebeschaltung 17 geführt. x
Die Schiebe schaltung 24 funktioniert folgenderweise.
Die zu verschiebende Zahl, z.B. der Multiplikator B, wird vom ersten Eingang 25 de S chiebeschaltung 24 dem
Eingang 31 (Fig. 4) der Decodierergruppe 30 zugeführt. Jeder
Decodierer 30,,,...,3O der Decodierergruppe 30 wandelt
den entsprechenden Rest ß,-, ... ß des Multiplikators
B in eine Größe B^1 ... ß um, wobei dies nach der Regel erfolgt:
B1 s 2 B1 mod pj_ (18)
j bei i = 1, 2, ..., n.
Die Größe ß. wird vom ersten Ausgang des entsprechenden
Dec.odierers von den Dec.odierern 3CL , ..., 30 abgenommen
und auf den zweiten Ausgang der Schiebeschaltung 24 gegeben.
609841/0911
~ 33 ~
Vom zweiten Ausgang jedes Decodierers 3CL,...,30 wird der Wert £. geliefert, der nach der folgenden Regel
gebildet wird:
1, wenn 2ßi ^ Pi
0, wenn 2ßi < Pi,
0, wenn 2ßi < Pi,
wobei u. die Konstanten des Zahlensystems bei i = 1, 2, ##.,
η sind.
Die Werte B^ werden dem ersten Eingang 36 des Addierers.
35 zugeführt.
Der Positionszeichenwert Rg des Multiplikators B gelangt
vom zweiten Eingang 26 der _ Schiebeschaltung j 24
zum Eingang 34 des Positionszeichen-Decodierers 33, von
dessen Ausgang der verdoppelte Wert von Rn, dem zweiten Eingang
38 des Addierers 35 zugeführt wird.
Vom Ausgang des Addierers 35 wird der berechnete Wert
Rg des Positionszeichens vom Multiplikator B abgenommen und
auf den ersten Ausgang der . S>chiebeschaltung 24 gegeben. Die Bildung des Berechnungswertes Rg wird durch die Formel
EB = 2Rg + £ i. (19)
beschrieben.
809841/091 1
Das Addier- und S chiebewerk · 10 (Fig. 1) arbeitet wie folgt. Ist der Zifferwert ßf ^ eier Entwicklung des Multiplikators
B gleich Eins, so passiert der Multiplikand A von der Multiplxkandschxene 8 den Multiplikandwandler 6 und gelangt
zum ersten Eingang 11 des Addier- und g.chiebe werk 10. Vom ersten Eingang 11 des Addier- und .Schie-"bewerks
10 wird der Multiplikand A dem ersten Eingang
40 (Fig. 5) eier Modulo-Addierergruppe 39 zugeführt, auf deren zweiten Eingang 50 das Zwischenergebnis des Multiplikationsvorganges vom Ausgang des Ergebnis registers 48 gegeben wird. Die «ich ergebende Summe gelangt vom Ausgang der Modulo-Äddierergruppe 39 über die ODER-Schaltungsgruppe 41 zum Eingang 47 der S chietß einheit 46, in der die Verschiebung der Summe nach links (die Division der Summe durch zwei) erfolgt. Das vom Ausgang der Schiebeeinheit 46 gelieferte Ergebnis der Summenverschiebung wird im Ergebnisregister 48 gespeichert.
40 (Fig. 5) eier Modulo-Addierergruppe 39 zugeführt, auf deren zweiten Eingang 50 das Zwischenergebnis des Multiplikationsvorganges vom Ausgang des Ergebnis registers 48 gegeben wird. Die «ich ergebende Summe gelangt vom Ausgang der Modulo-Äddierergruppe 39 über die ODER-Schaltungsgruppe 41 zum Eingang 47 der S chietß einheit 46, in der die Verschiebung der Summe nach links (die Division der Summe durch zwei) erfolgt. Das vom Ausgang der Schiebeeinheit 46 gelieferte Ergebnis der Summenverschiebung wird im Ergebnisregister 48 gespeichert.
Ist der Zifferwert ßf ^ bei der Entwicklung des Multiplikators
B gleich Hull, so kann der Multiplikand A von der Multiplxkandschxene 8 (fig.1) nicht den Multiplikandwandler
6 passieren und wird dem ersten Eingang 11 des Addier--und Pnhiebewerks · 10 nicht zugeführt. In diesem Falle
aber wird der negierte Zifferwert ß1 ., der gleich Eins
NICHT-Glieds
ist, vom Ausgang des / 4 auf den zweiten Eingang 12
ist, vom Ausgang des / 4 auf den zweiten Eingang 12
Schiebewerks Schiebewerks
des ' 10 gegeben. Vom zweiten Eingang 12 des / 10
609841/0911
wird der negierte Zifferwert ß1 . dem ersten Eingang 44
(Fig. 5) der ersten UND-Schaltungsgruppe zugeführt. Dadurch
wird das Zwischenergebnis des Multiplikationsvorganges vom Ausgang des Ergebnis^registers 48 zum zweiten Eingang 45 der
ODER-Schaltung sgruppe 41 übertragen, ohne die Modulo-If&dierergruppe
39 zu passieren.
Nachdem die letzte (m-te) Ziffer ß* . vom ersten Ausgang
des Multiplikatorformers 1 (Fig. 1) abgegeben ist, wird an
seinem zweiten Ausgang ein Steuersignal erzeugt, das dem dritten Eingang 13 des Addier- und s cbiebewerks 10
zugeführt wird.
Sehiebewerks Vom dritten Eingang 13 des / , 10 gelangt das
Steuersignal zum zweiten Eingang 54 (Fig. 5) der zweiten
UND-Schaltungsgruppe 52 und läßt somit das Multiplikationsergebnis C vom Ausgang des Registers 48 über den ersten
Eingang 53 eier zweiten UND· <-.■ chaltungsgruppe 52 zum Ausgang
des Addier- und Sehiebewerks 10 durch.
Die Schiebeeinheit 46 funktioniert wie folgt. Wir
bezeichnen die vom Ausgang der Modulo-Addierer.gruppe 39 Se~
lieferte Summe mit S, oder im Restklassensystem als
S= S^j S2
Diese Summe S wird vom Eingang 47 der Schiebeeinheit 46 dem Eingang 56 (Fig. 6) des Positionszeichen-Gene·
609841/0911
rators ^ zugeführt. Der Positionszeichenwert E^ der Summe S geGenerators
langt Vom Ausgang des Positions'zeichen-/ ^ zum zweiten
Eingang 59 des Geradheits-Generators 571 an dessen erstem Eingang 58 die vom Eingang 47 der s chie te einheit . 46
gelieferte Summe S anliegt.
Mit ψ (S) sei das vom Ausgang des Geradheits-Generators
57 abgegebene Ausgangssignal bezeichnet. Hierbei ist Ψ{£) = 1, wenn die Summe S ungeradzahlig ist, und ψ (S) = 0,
wenn die Summe S geradzahlig ist. Dieses Geradheits-Zeichen C£/(S) der Summe S wird auf den zweiten Eingang 62 des Di-
vidierers 60 gegeben, Am ersten Eingang 61 des Dividierers
60 liegt die vom Eingang 47 der ' S1 chieb.eeinheit
46 gelieferte Summe S an. Vom Ausgang des Dividierers 60".
gelangt zum Ausgang der Schiebeeinheit 46 der um ein Informationsbit nach rechts verschobene Summenwert S.
Generatoren
._ . Die Positions zeichen-/ 22 (Fig. 3) und 55 (Fig. 6)
._ . Die Positions zeichen-/ 22 (Fig. 3) und 55 (Fig. 6)
funktionieren ähnlich. Im folgenden wird deswegen nur die Ar-Generator
.
beitsweise des Positionszeichen-/ 55 nach Fig. 6 betrachtet.
Jeder Decodierer 63. ... 63n (Fig. 7) der Dec.odierer-
gruppe 63 transformiert die Reste s., ... s der vom Eingang
Generators n
56 des Positions-zeichen-/ 55 gelieferten Summe S in die
Werte Q1*s^, ... Qn^sn, wobei Qi die Konstanten des Zahlen
systems sind und i = 1, 2 ... η ist. Die Werte von Q.»s.,
s werden von den Ausgängen der Decodierer 63
609841/0911
- .37 -
... 63n auf den Eingang 66 des vorgegebenen Modulo-Addierers
65 gegeben.
Abi Ausgang des Addierers 65 wird der gesuchte Positions-■zeichenwert
Eg der Summe S nach der Regel
Rs = Q1 * S1 + Q1 · S2 + ... + Qn 'Sn mod Rp (20)
gebildet, wobei R die Konstante des Zahlensystems ist. Dieser
Wert Rg wird dem Ausgang des Positionszffiichen-Generata'55 zugeführt
.
Nun soll die Arbeitsweise des Geradheits-Generators
57 (Pig· 6) be brachtet werden.
Die Restwerte s., ... s der Summe S, die am ersten Eingang
58 des Geradheits-Generators erscheinen, werden von den entsprechenden UND-Schaltungen 69,,, ... 69 (Fig. 8)
1 den hindurchgelassen oder nicht hindurchgelassen, je nach/Signalen
die auf ihre zweiten Eingange vom Ausgang des Speicherregisters 68 gegeben werden.
Von den Ausgängen der Ul)D-Schaltungen 69^, ... 69 gelangen
die Signale an den ersten Eingang 73 des I-.rodulo-2-Addierers
72, auf dessen zweiten Eingang 75 vom zweiten Eingang 59
des Geradheits-Generators 37 der Positionszeichen-wert
Rg der Summe S gegeben wird. Vom Ausgang dos Modulo-2-Addierers
72 wird das gesuchte Geradheitszeichen ^(S) der
Summe S abgenommen.
609841/091 1
Der Dividierer 60 (Fig. 6) funktioniert wie folgt.
Der Summenwert S gelangt vom ersten S-Eingang des Dividierers
an den ersten Eingang der Decodierergruppe 76 (Fig. 9)· Deni
zweiten Eingang 78 der Decodierergruppe 76 wird vom zweiten
Eingang 62 des Dividierers ' 60 das Geradheitszeich'en
ψ (S) der Summe S zugeführt. Jeder der Decodierer
76., ... 76 wandelt die Eingancsrestwerte s., ... s der Sum
me S und den Geradheitszeichenwert /'(s) der Summe S in
die Größen s^., ... s nach folgender Regel um:
K)
St - _i L
mod p. . (21)
I2 ι
Diese Größen erscheinen am Ausgang des Divi.dierers 60.
Der Vorgang der Multiplikation des Multiplikanden A mit dem Multiplikator B läuft also in der erfindungsganäßen Multipliziere
inrichtung folgenderweise at>.
Anfangs wird der Multiplikator B von der Multiplikatorschiene
3 dem Eingang 2 (Pig. 1) des Multiplikatorformers zugeführt, in dessen Schieberegister 20 mit Hilfe der ' Schiebeeinheit
17 (Pig· 2) der neue Multiplikatorwert B* in der
Form von
■Ri _ η R* R* R»
ΰ - u» ■" _1 i2 _2 · *" ·" -m
erzeugt wird, wobei die Ziffernwerte ßf · des neuen MultipIi-
09841/0811
261275Π
kators B* für die Steuerung des Multiplikationsvorganges benutzt
werden. Wenn der Ziffernwert ß1^ nämlich gleich 1 ist,
gelangt der Multiplikand A von der Multiplikandschiene 8 (Fig. 1) über den Eultiplikandwandler 6 an den ersten Eingang
11 des Addier- und Schiebewerks 10. Im Block 10 wird der Multiplikand A mit dem im Register 48 (Fig. 5) gespeicherten
Zwischenergebnis des Multiplikationsvorganges summiert. Die sich ergebende Summe wird vom Ausgang der Modulo- Addierergruppe
39 über die ODER-Schaltungsgruppe 41 dem Eingang 47 der
Schiebeeinheit 46 zugeführt. Der um ein Informationsbit
nach rechts verschobene Summenwert wird im Ergebnisregister 48 gespeichert.
Ist der Zifferwert ß1 .. = 0, so wird der Multiplikand k/
—x.
auf den ersten Eingang 11 des Addier- und schieb'ewerks
10 : gegeben. In diesem Falle gelangt das Zwischenergebnis des Multiplikationsvorganges vom Ausgang des Ergebnisregisters
48 über die erste ODER-Schaltungsgruppe 41 an den Eingang der Schiebeeinheit 46. Der verschobene Zwischenergebniswert
des Multiplikationsvorganges wird ebenfalls im Register 48 gespeichert.
Der Multiplikationsvorgang wird beim Fehlen von Ziffern des neuen Multiplikatorwertes B1 im Schieberegister 20 (Fig.2)
abgeschlossen. .Dabei wird am zweiten Ausgang des Multiplikator formers 1 (Fig. 1) ein Steuersignal erzeugt, das dem dritten
Eingang 13 des Addier- und Schiebewerks 10 zugeführt
609841/0911
wird. In diesem Falle wird das Ergebnis des Multiplikationsvorganges vom Ergebnisregister 48 (Fig. 5) über die zweite
UND-Schaltungsgruppe 52 an die Ergebnisschiene 14 (Fig. 1) aus
gegeben.
Die Erfindung ermöglicht die Entwicklung einer prinzipiel neuen Klasse von Rechnern, die im Restklassensystem arbeiten.
Im besonderen gibt die gemäß der Erfindung ausgeführte Multipliziereinrichtung die Möglichkeit, beliebige im Restklassensystem
dargestellte Zahlen zu multiplizieren.
609841/0911
Claims (1)
- PatentansprücheΠ..) Multipliziereinrichtungmit einem den Multiplikator seriell erzeugenden Multiplikatorformer, dessen Eingang mit einer Multiplikatorschiene verbunden ist, mit einem NICHT-Glied, dessen Eingang am ersten Ausgang des Multiplikatorformers liegt, mit einem Multiplikandwandler zur Multiplikandumwandlung in die erforderliche Form, dessen erster Eingang an eine Multiplikandschiene angeschlossen ist, und mit einem das Multiplikationsergebnis bildenden Addier- und Schiebewerk, dessen erster Eingang am Ausgang des Multiplikandwandlers liegt und dessen Ausgang mit einer Ergebnisschiene verbunden ist,"dadurch gekennzeichnet,daß der zweite Eingang (9) des Multiplikandwandlers (6) mit dem Ausgang des Multiplikatorformers (l) verbunden ist, um den im Restklassensystem dargestellten Multiplikanden zum Addier- und Schiebewerk (10) zu übertragen,daß der zweite Eingang (12) des Addier- und Schiebewerks (10) an den Ausgang des iJICHT-Gliedes (4) angeschlossen ist, um das Addieren und Verschieben des Multiplikanden und des Multiplikationsergebnisses, die im Restklassensystem dargestellt sind, zu steuern, unddaß der dritte Eingang (13) des Addier- und Schiebewerks (10) mit dem zweiten Ausgang des Multiplikatorformers (I) verbunden ist, um die Übertragung des Multiplikationsergebnisses zur Ergebnisschiene (l4) zu steuern (Fig. 1).609841/09112. Multipliziereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Multiplikatorformer (1) aufweist:eine ODER-Schaltungsgruppe (15), bei der ein Eingang (16) mit dem Eingang (2) des Multiplikatorformers (1) verbunden ist,eine Schiebeeinheit (17) zur Linksverschiebung des Multiplikators um ein Informationsbit, von der der Eingang (18) mit dem Ausgang der ODER-Schaltungsgruppe (15) und der erste Ausgang mit dem zweiten Eingang (19) der ODER-Schaltungsgruppe (15) verbunden sind, undein Schieberegister (20) zur Verschiebung des umgewandelten Multiplikators, dessen Eingang (21) mit dem zweiten Ausgang der Scliiebeeinheit (17) und dessen Ausgang mit dem Ausgang des Multiplikatorformers (l) verbunden ist (Fig. 2).3. Multipliziereinrichtung nach Anspruch .1 oder 2, dadurch gekennzeichnet,daß die Schiebeeinheit (17) aufweist:einen Positionszeichen-Generator (22), dessen Eingang (23) an den Eingang (l8) der Schiebeeinheit (17) geschaltet ist,eine Schiebeschaltung (24) zur Linkverschiebung des Multiplikators um ein Informationsbit mit Hilfe des Positionszeichens, die mit ihrem ersten Eingang (25) am Eingang (l8)§09841/0911der Schiebeeinheit (17) und mit ihrem zweiten Eingang (26) am Ausgang des Positionszeichen-Generators (22) liegt, undeinen Vergleicher (27) zur Erzeugung eines Steuersignals je nach dem Positionszeichen, die mit einem Eingang (28) an den ersten Ausgang der Schiebeschaltung (24), mit dem zweiten Eingang (29) an den Ausgang des Positionszeichen-Generators (22) und mit dem Ausgang an den zweiten Ausgang der Schiebeeinheit angeschlossen ist, deren erster Ausgang mit dem zweiten Ausgang der Schiebeschaltung (24) verbunden ist (Fig. 3)·4. Multipliziereinrichtung nach einem der Ansprüche 1 bis 3» dadurch gekennzeichnet, daß die Schiebeschaltung (24) aufweist:eine Decodierergruppe (30), deren Eingang (31) und deren erster Ausgang (32) mit dem ersten Eingang (25) bzw. mit dem zweiten Ausgang der Schiebeschaltung (24) verbunden sind,einen Positionszeichen-Decodierer (33)> dessen Eingang (34) an den zweiten Eingang (26) der Schiebeschaltung (24) angeschlossen ist, undeinen Addierer (35), von dem der erste Eingang (36) an den zweiten Ausgang (37) der Decodierergruppe (30), der zweite Eingang (38) an den Ausgang des Positionszeichen-Decodierers (33) und der Ausgang an den zweiten Ausgang der Schiebeschaltung (24) geschaltet sind (Fig. 4).009841/09115. Multipliziereinrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß das Addier- und Schiebewerk (10) enthält:eine Modulo-Addierergruppe (39) zur Addition des im Restklassensystem dargestellten Multiplikanden und des in demselben System ausgedrückten Teilergebnisses des Multiplikationsvorganges, die mit einem Eingang (4o) an den ersten Eingang (11) des Addier- und Schiebewerks (lO) angeschlossen ist,eine ODER-Schaltungsgruppe (4l), von der ein Eingang (42) mit dem Ausgang der Modulo-Addierergruppe (39) verbunden ist,eine erste UND-Schaltungsgruppe (43), deren erster Eingang (44) an den zweiten Eingang (12) des Addier- und Schiebewerks (10) geschaltet ist und deren Ausgang mit dem zweiten Eingang (45) der ODER-Schaltungsgruppe (4l) verbunden ist,eine Schiebeeinheit (46) zur Rechtsverschiebung des Teilergebnisses des Multiplikationsvorganges um ein Informationsbit, die mit ihrem Eingang (47) an den Ausgang der ODER-Schaltungsgruppe (4l) angeschlossen ist,ein Ergebnisregister (48) zur Speicherung des Teilergebnisses und des Ergebnisses des Multiplikationsvorganges, von dem der Eingang (49) mit dem Ausgang der Schiebeeinheit (46) und der Ausgang mit dem zweiten Eingang (50 und 51) der Modulo-Addierergruppe (39) bzw. der ersten UND-Schaltungsgruppe (43) verbunden sind, undS09841/0911261275Üeine zweite UND-Schaltungsgruppe (52), von der ein Eingang (53) an den Ausgang des Ergebnisregisters (48), der zweite Eingang (54) an den dritten Eingang (1^) des Addier- und
Schiebewerks (10) und der Ausgang an den Ausgang des
Addier- und Schiebewerks (10) geschaltet sind (Fig. 5).6. Multipliziereinrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet,
daß die Schiebeeinheit (46) aufweist:einen Positionszeichen-Generator (55) zur Ermittlung des
Positionszeichens des Teilergebnisses des Multiplikationsvorganges, der mit seinem Eingang (56) an den Eingang (47) der Schiebeeinheit (46) angeschlossen ist,einen Geradheits-Generator (57) zur Bestimmung der Geradheit (Geradzahligkeit) des Teilergebnisses der Multiplikation, von dem ein Eingang (58) mit dem Eingang (47) der
Schiebeeinheit (46) verbunden ist, der andere Eingang (59) aber zum Ausgang des Positionszeichen-Generators (55) geführt ist,einen Dividierer (60) zur Division des Teilergebnisses der Multiplikation durch zwei, von dem ein Eingang (6l) an den Eingang (47) der Schiebeeinheit (46), ein zweiter Eingang
(62) an den Ausgang des Geradheits-Generators (57) und der Ausgang an den Ausgang der Schiebeeinheit (46) angeschlossen sind (Fig. 6).609841/031 17· Multipliziereinrichtung nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß der Positionszeichen-Generator (55) aufweist:eine Decodierergruppe (63), deren Eingang (64) an den Eingang (56) des Positionszeichen-Generators (55) geschaltet ist, sowieeinen vorgegebenen Modulo-Addierer (65), dessen Eingang (66) mit dem Ausgang der Decodierergruppe (67) und dessen Ausgang mit dem Ausgang des Positionszeichen-Generators (55) verbunden ist (Fig. 7).8. MuItipliziereinriehtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet^ daß der Geradheits-Generator (57) aufweist:ein Speicherregister (68) zum Speichern der Konstanten des Zahlensystems mit einer UND-Schaltungsgruppe (69), von der ein Eingang (70) mit dem ersten Eingang (58) des Geradheits-Generators (57) und ein zweiter Eingang (71) mit dem Ausgang des Speicherregisters (68) verbunden sind, sowieeinen Modulo-2-Addierer, von dem der erste Eingang (73) an den Ausgang (Jk) der UND-Schaitungsgruppe (69), der zweite Eingang (75) an den zweiten Eingang (59) des Geradheits-Generators (57) und der Ausgang an den Ausgang des Geradheits-Generators (57) angeschlossen sind (Fig. 8).G 3 8 4 1 / 0 S 1 1Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU7502114928A SU579618A1 (ru) | 1975-03-25 | 1975-03-25 | Устройство дл умножени |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2612750A1 true DE2612750A1 (de) | 1976-10-07 |
Family
ID=20613182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762612750 Withdrawn DE2612750A1 (de) | 1975-03-25 | 1976-03-25 | Multipliziereinrichtung |
Country Status (5)
Country | Link |
---|---|
US (1) | US4064400A (de) |
DE (1) | DE2612750A1 (de) |
FR (1) | FR2305784A1 (de) |
GB (1) | GB1519095A (de) |
SU (1) | SU579618A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3138698A1 (de) * | 1981-09-29 | 1983-04-07 | Siemens AG, 1000 Berlin und 8000 München | Verfahren zur potenzierung grosser binaerzahlen in einer restklasse modulo n, insbesondere zur verschluesselung und entschluesselung digital dargestellter nachrichten |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4334277A (en) * | 1977-09-28 | 1982-06-08 | The United States Of America As Represented By The Secretary Of The Navy | High-accuracy multipliers using analog and digital components |
US4189767A (en) * | 1978-06-05 | 1980-02-19 | Bell Telephone Laboratories, Incorporated | Accessing arrangement for interleaved modular memories |
JPS6042965B2 (ja) * | 1979-06-01 | 1985-09-26 | 愛介 片山 | 複数法形高速乗算装置 |
US4816805A (en) * | 1987-02-02 | 1989-03-28 | Grumman Aerospace Corporation | Residue number system shift accumulator decoder |
US5010505A (en) * | 1987-02-27 | 1991-04-23 | The Boeing Company | Optical cross bar arithmetic/logic unit |
US4948959A (en) * | 1988-07-15 | 1990-08-14 | The Boeing Company | Optical computer including pipelined conversion of numbers to residue representation |
US4939682A (en) * | 1988-07-15 | 1990-07-03 | The Boeing Company | Integrated electro-optic arithmetic/logic unit and method for making the same |
US4910699A (en) * | 1988-08-18 | 1990-03-20 | The Boeing Company | Optical computer including parallel residue to binary conversion |
US5050120A (en) * | 1989-09-29 | 1991-09-17 | The Boeing Company | Residue addition overflow detection processor |
US5107451A (en) * | 1990-01-30 | 1992-04-21 | The Boeing Company | Method and apparatus for pipelined detection of overflow in residue arithmetic multiplication |
US5033016A (en) * | 1990-03-06 | 1991-07-16 | The Boeing Company | Coherence multiplexed arithmetic/logic unit |
US6356636B1 (en) * | 1998-07-22 | 2002-03-12 | Motorola, Inc. | Circuit and method for fast modular multiplication |
US6690315B1 (en) * | 2003-01-31 | 2004-02-10 | United States Of America As Represented By The Secretary Of The Air Force | Quadbit kernel function algorithm and receiver |
US7440989B1 (en) | 2004-04-02 | 2008-10-21 | The United States Of America As Represented By The Secretary Of The Air Force | Kernel function approximation and receiver |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH412411A (de) * | 1959-12-30 | 1966-04-30 | Ibm | Vorrichtung zur Durchführung von Multiplikationen und Divisionen im Zahlensystem der Restklassen |
BE620229A (de) * | 1961-07-19 |
-
1975
- 1975-03-25 SU SU7502114928A patent/SU579618A1/ru active
-
1976
- 1976-03-19 US US05/668,611 patent/US4064400A/en not_active Expired - Lifetime
- 1976-03-25 GB GB12079/76A patent/GB1519095A/en not_active Expired
- 1976-03-25 DE DE19762612750 patent/DE2612750A1/de not_active Withdrawn
- 1976-03-25 FR FR7608740A patent/FR2305784A1/fr active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3138698A1 (de) * | 1981-09-29 | 1983-04-07 | Siemens AG, 1000 Berlin und 8000 München | Verfahren zur potenzierung grosser binaerzahlen in einer restklasse modulo n, insbesondere zur verschluesselung und entschluesselung digital dargestellter nachrichten |
Also Published As
Publication number | Publication date |
---|---|
US4064400A (en) | 1977-12-20 |
SU579618A1 (ru) | 1977-11-05 |
FR2305784B1 (de) | 1979-02-02 |
FR2305784A1 (fr) | 1976-10-22 |
GB1519095A (en) | 1978-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2508706C2 (de) | Schaltungsanordnung zur Codierung von Datenbitfolgen | |
DE1549476C3 (de) | Anordnung zur Ausführung von Divisionen | |
DE2612750A1 (de) | Multipliziereinrichtung | |
DE1549477B1 (de) | Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden | |
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE1162111B (de) | Gleitkomma-Recheneinrichtung | |
DE3700323C2 (de) | ||
CH644461A5 (de) | Digitale multipliziereinrichtung. | |
DE1549508C3 (de) | Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit | |
DE2405858A1 (de) | Normalisierendes verschiebezaehlernetzwerk | |
DE1803222B2 (de) | Verfahren zum zusammenfassen pulscodierter nachrichten | |
DE2619307A1 (de) | Multipliziereinrichtung | |
DE2310553A1 (de) | Vorrichtung zur durchfuehrung arithmetischer und logischer operationen | |
DE2732008A1 (de) | Einrichtung zur reduzierung von fibonacci-p-codes auf die minimalform | |
DE2826773A1 (de) | Verfahren und schaltungsanordnung zum feststellen der wertigkeit von ziffern in arithmetischen operationen mit dezimalrechnern | |
DE2513181B2 (de) | Elektronischer Rechner | |
DE19635114A1 (de) | Multiplizierer | |
DE2712582C2 (de) | DDA-Rechner (Digital-Differential-Analysator) | |
DE1184122B (de) | Addiervorrichtung | |
DE2952072A1 (de) | Einrichtung zur verarbeitung binaer codierter dezimalzahlen | |
DE1234055B (de) | Anordnung zur Addition oder Subtraktion | |
DE19635111A1 (de) | Multiplizierer | |
DE1524146C (de) | Divisionseinrichtung | |
DE2539245C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |