DE2221693B2 - Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen - Google Patents
Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei BinärzahlenInfo
- Publication number
- DE2221693B2 DE2221693B2 DE2221693A DE2221693A DE2221693B2 DE 2221693 B2 DE2221693 B2 DE 2221693B2 DE 2221693 A DE2221693 A DE 2221693A DE 2221693 A DE2221693 A DE 2221693A DE 2221693 B2 DE2221693 B2 DE 2221693B2
- Authority
- DE
- Germany
- Prior art keywords
- multiplicand
- register
- adder
- multiplier
- multiplication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
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/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5334—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
- G06F7/5336—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
- G06F7/5338—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA
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)
- Executing Machine-Instructions (AREA)
Description
Die Erfindung bezieht sich auf Schaltungsanordnungen gemäß den Oberbegriffen der Patentansprüche 1
und 2.
Die Multiplikation von Binärzahlen kann auf relativ r.
einfache Weise vorgenommen werden. Die klassische Lösung des betreffenden Problems besteht darin, ein
Akkumulatorregister vorzusehen, dessen Länge dem Zweifachen der Länge des Operanden ist, da nämlich
das Produkt das Zweifache der Größe des Operanden w annehmen kann. Der Multiplikator wird zweckmäßigerweise
in der Hälfte niederer Wertigkeit des Akkumulatorregisters gespeichert Der Inhalt in der Hälfte
höherer Wertigkeit des Akkumulatorregisters und der Inhalt eines Multiplikandenregisters werden einem v>
Addierer zugeführt. Das Ausgangssignal des Addierers stellt die Summe der akkumulierten Teilprodukte und
des potentiellen Teilproduktes dar, das aus dem Einfachen des Multiplikanden besteht Dabei wird eine
Reihe von η Zyklen ausgeführt. Bei jedem Zyklus wird so
das Bit niedrigster Wertigkeit des Akkumulators überprüft, und das Ausgangssignal des Addierers wird in
der Hälfte höherer Wertigkeit des Akkamulatorregisters gespeichert oder nicht, und zwar in Abhängigkeit
davon, ob das betreffende Bit eine »1« oder eine »0« ist. Der Inhalt des Akkumulatorregisters wird um ein Bit
nach rechts verschoben, und der Zyklus wird so lange wiederholt, bis der gesamte Multiplikator überprüft
worden ist Als Ergebnis ist dann der Multiplikand mit 2" multipliziert worden, und zwar je »1«-Bit in dem t>o
Multiplikator; diese Teilprodukte sind auf Grund der zyklischen Verschiebungen, die das Ergebnis um zwei je
Zyklus untersetzen, in richtiger Ausrichtung akkumuliert worden. Dabei existieren verschiedene Verfahren
zur Verarbeitung der unterschiedlichen Vorzeichen- br>
kombinationen von Operanden sowie zur Verarbeitung von unterschiedlichen Arten von Zahlendarstellungen,
d. h. von Vorzeichen und Größe, Einerkomplement und
Multiplikator- | Benutztes Multi |
Bits | plikanden- |
Vielfaches | |
000 | 0 |
001 | +2 |
0 10 | +2 |
011 | +4 |
100 | -4 |
101 | |
1 10 | -2 |
1 11 | 0 |
Ein Merkmal des betreffenden Algorithmus besteht darin, daß eine Überprüfung des jeweiligen Bit-Paares
von rechts nach links angenommen ist und daß bei ungeradzahligen Werten im vorausgehenden Zyklus das
akkumulierte Teilprodukt um das Einfache des Multiplikanden zu niedrig gemacht worden ist. Wenn das
nächste Bit-Paar ungerade ist, führt dies darüber hinaus zu einem Teilprodukt, aufgrund dessen das akkumulierte
Teilprodukt für den nächsten Zyklus um das Einfache des Multiplikanden zu niedrig ist. In dem ersten Zyklus
erfordert jedoch eine Eins in der Bitstelle niedrigster Wertigkeit eine besondere Behandlung. In der zuletzt
genannten Zeitschrift ist dabei die Anwendung eines Sonderzyklus angegeben, in welchem ein Paar von
Blind-Null-Bits dem Multiplikator vorgesetzt wird; im
übrigen ist in der zuletzt genannten Zeitschrift eine Modifikation des ersten Zyklus angegeben, derart, daß
eine Subtraktion des Multiplikanden erfolgt, wenn das tiit niedrigster Wertigkeit eine »1« ist.
Für praktische Anwendungsfälle stellt die Forderung, daß Multiplikanden-Vielfache von 2 und 4 zu verarbeiten
sind, ein praktisches Problem insofern dar, als zwei Wege zu dem Addierer hin beschriften werden müssen,
und zwar zusätzlich zu dem Grundweg, der zur
Ausführung der direkten Operationen nach Art von Additionen dient. Darüber hinaus muß die Verknüpfungslogik
richtige Ergebnisse für sämtliche Kombinationen von Vorzeichen des Multiplikanden und des
Multiplikators sicherstellen. Ein weiterer Nachteil bei ■-,
dieser bekannten Art der Multiplikation ergibt sich aus der Notwendigkeit der Durchführung von Korrekturoperationen,
und zwar entweder in Form einer Addition oder in Form einer Subtraktion.
Es ist schließlich auch schon eine Multiplikationsvor- in
richtung bekannt (DE-OS 14 74 022), bei der ein erstes Register zum Speichern von Vielfachen eines Multiplikanden
und ein zweites Register zum Speichern des Multiplikators vorgesehen sind, wobei mit Hilfe einer
Vorrichtung zugeteilte Vielfache des Multiplikanden in r, dem ersten Register mit einem Teil des Multiplikators in
dem zweiten Register multipliziert werden. Außerdem erfolgt bei dieser bekannten Vorrichtung gleichzeitig
eine Multiplikation eines zugeteilten Vielfaches des Multiplikanden mit dem anderen Teil des Multiplikators
in dem zweiten Register. Auf diese Weise werden Teilprodukte gebildet, die dann zur Bildung des
Endproduktes hinzuzuziehen sind. Auch bei dieser bekannten Multiplikationsvorrichtung ist wie bei dem
eingangs betrachteten Stand der Technik eine große >-, Anzahl von Zyklen für die Durchführung von Multiplikationen
bereitzustellen.
Der Erfindung liegt demgemäß die Aufgabe zugrunde, einen Weg zu zeigen, wie bei den Schaltungsanordnungen
der eingangs genannten Art bei der Multiplika- jn tion zweier Binärzahlen mit einer relativ geringen
Anzahl von Zyklen und zugleich ohne Korrekturoperationen ausgekommen werden kann.
Gelöst wird die vorstehend aufgezeigte Aufgabe durch die in den Patentansprüchen 1 und 2 angegebenen j-,
Merkmale.
Die Erfindung bringt den Vorteil mit sich, daß ohne die Ausführung von Korrekturoperationen mit einer
relativ geringen Anzahl von Zyklen bei der Durchführung einer Multiplikation zwischen zwei Binärzahlen au
ausgekommen wird. Es wird nämlich in vorteilhafter Weise lediglich mit einfachen Additionsvorgängen
ausgekommen. Damit ergibt sich im vorliegenden Fall insgesamt eine einfachere Operationsweise als bei den
bisher bekannten Schaltungsanordnungen zur Multipli- 4-, kation zweier Binärzahlen.
Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet
An Hand von Zeichnungen wird nachstehend ein Ausführungsbeispiel der Erfindung näher erläutert
F i g. 1 zeigt in einem Blockdiagramm eine bevorzugte Ausführungsform der Erfindung unter Verwendung
von eine Operationseinheit für einen mit einem Zweier-Komplement arbeitenden binären digitalen
Rechner bildenden Registern, Schaltern und Addierern;
F i g. 2 zeigt in einem Blockdiagramm Verknüpfungselemente,
die eine Steuereinheit für die Operationseinheit gemäß F i g. 1 bilden;
Fig.3 zeigt in einem Verknüpfungsdiagramm eine Ausführungsform eines Schalters der in F i g. 1 darge- b0
stellten Operationseinheit
Im folgenden sei die in Fi g. 1 dargestellte besondere
Ausführungsform der Erfindung näher betrachtet In Fig. 1 sind die für das Rechenwerk erforderlichen
Hauptelemente und die Zwischenverbindungen darge- b5
stellt die zur Ausführung der vorliegenden Erfindung im Rahmen einer bevorzugten Ausführungsform dienen.
Bezüglich einer vollständigeren Beschreibung des Datenverarbeitungssystems sei auf die US-PS 34 13 612
hingewiesen.
Ein Hauptspeicher 10 gibt Befehlswörter über einer Z/Schalter 11 an einen ZV-Schalter 88 und an eir
Befehls-/-Register 78 ab. Außerdem gibt der Hauptspei eher 10 Datenwörter über einen ZA-Schalter 13 ab. Eir
Paar von Datenworten wird über den ZA-Schalter 13 sowie über einen Zf-Schalter 12 zu einem 72-Bit-M-Re
gister 14 hin geleitet, welches den Multiplikatoroperanc enthält. Ein ZASchalter 20 leitet selektiv Datenwörtei
von dem M-Register zu einem 72-Bit-W-Register 36 hin
bei dem es sich um eines der zwei Operandenregister füi den Haupt-A-Addierer 38 handelt. Dieser Datenwej
wird für verschiedene Operationen benutzt, wie für der Ladebefehl. Das zweite Operandenregister ist eir
72-Bit-N-Register 40, welches von einem Z(?-Schaltei
42 her geladen wird. Der /4-Addierer ist ein 72-Bit-Ad
dierer, der selektiv die Rechenoperationen »Addieren« und »Subtrahieren« bezüglich Zweier-Komplement-Zahlen
sowie die Verknüpfungsoperationen ODER UND und Exklusiv-ODER ausführt. Die Eingangssignale
des /4-Addierers werden durch das ZW-Glied 37 und
durch das Z/V-Glied 41 ausgewählt Durch das ZW-Glied
37 wird als ein erster Eingangsoperand der Operand des //-Registers 36 geliefert, und durch das ZN-Glied 41
wird als zweiter Eingangsoperand der Operand des vV-Registers 40 geliefert. Für die Multiplikation dient das
//-Register als Teilproduktakkumulator, und das MRegister enthält das Teilprodukt das durch den ausgewählten
Multiplikandenfaktor gebildet ist. Das Ausgangssignal des Ä-Addierers wird in einem 72-Bit-/4S-Registei
55 gespeichert, oder es kann selektiv über der ZASchalter 20 zu dem //-Register hingeleitet werden
und über den ZASchalter 42 zu dem N-Register hin Der jeweilige Inhalt des AS-Registers wird selektiv zur
Speicherung in dem Speicher oder in einem 72-Bit-Hauptakkumulator,
dem A<?-Register 56, weitergeleitet
und zwar über den ZD-Schalter 32 bzw. der ZL-Schalter 48. Über den Z/?-Schalter 46 wird der
jeweilige Inhalt des Hauptakkumulators selektiv dem H- oder dem /v/-Register zugeführt und zwar über den
Z/-Schalter 20 bzw. den ZQ-Schalter 42.
Die Exponententeile von Worten bzw. Wörtern aus dem Speicher 10, die über den ZASchalter 11 gelangen,
werden ebenfalls selektiv, und zwar rechtsbündig, über einen Z£/-Schalter 16 einem ΙΟ-Bit-D-Register 22
zugeführt, und zwar zum Zwecke der Trennung eines Exponenten von einer Gleitkommazahl, oder aber die
betreffenden Exponententeile werden über den ZC-Schalter 27 einem lO-Bit-ACT-Register 28 zugeleitet,
und zwar zum Zwecke der Beibehaltung von Verschiebezählanzeigen
und dgl. Zur Ausführung der Exponentenverarbeitung und von Hilfsfunktionen ist ein
Exponenten-U-Addierer 34 vorgesehen. Die Eingangssignale für den Exponenten-Addierer werden über der
Z&Schalter 35 und den Z&Schalter 26 geliefert Der
Ausgang des Exponenten-Addierers ist mit dem ZF-Schalter 24, dem ZtZ-Schalter 16 und dem
ZC-Schalter 27 verbunden. Der ZF-Schalter leitet Operanden aus dem D-Register und Ausgangssignale
des Exponentenaddierers zu einem F-Register 30 hin.
Die in Fig. 1 dargestellte Anordnung besteht aus einer Kombination von Schaltern, Registern und
Addierern. Die besondere Ausführung dieser Einrichtungen ist nicht Gegenstand der vorliegenden Erfindung. Zur Realisierung des A-Addierers 38 genügt es, 72
Volladdierer zu verwenden, deren jeder als Eingangs
signale ein Bit aus der entsprechenden Bitposition des
jeweiligen zugeführten Operanden erhält und ein Übertragungssignal von dem Volladdierer nächst
niederer Wertigkeit. Der Volladdierer nächst niederer Wertigkeit ist imstande, eine 1 oder eine 0 als
Übertragseingangssignal aufzunehmen, und zwar entsprechend den Gatter- bzw. Schaltsignalen. Die
Summenausgangssignale der Volladdierer dienen als Addiererausgangssignale für die betreffenden Bitpositionen,
und die Ausgangssignale an den Übertragsausgängen der Volladdierer stellen die Übertragseingangssignale
für den Volladdierer der nächst höheren Wertigkeit dar. Der Übertragsausgang des Volladdierers
nächst höherer Wertigkeit ist mit einem Addierer-Übertragsausgangs-Flipflop verbunden. Neben den
betrachteten Elementen ist noch eine Verknüpfungslogik vorgesehen, die einen Überlauf festste!!·., auf den hin
ein OV-Flipflop 44 gesetzt wird. In der Praxis wird der
gerade beschriebene einfache Addierer zweckmäßigerweise derart modifiziert, daß die Übertrags-Weiterieitungszeit
vermindert wird, und zwar durch eine Übertrags-Vorschau-Logik, durch eine Bedingungs-Summenlogik,
etc., und zwar wie nach der gewünschten Verarbeitungsleistung. Die Register sind herkömmlicherweise
DC-Flipflops, die durch Steuersignale gesteuert bzw. getastet werden. Die Schalter bestehen
aus einem Saz von parallelgeschalteten Verknüpfungsgliederstufen, wie dies bezüglich der ersten Stufe des in
F i g. 1 angegebenen ZO-Schalters 42 im einzelnen in
F i g. 3 gezeigt ist. Für die wählbaren Eingangssignale sind UND-Glieder 301, 302, 303, 304 vorgesehen, und
zwar für die Eingangssignale von dem /4-Addierer 38,
von dem ΖΛ-Schalter 46, das sind die tatsächlichen
Eingangssignale und das Einerkomplement, und für ein Dauersignal »0«. Diese Eingangssignale werden durch
Anlegen der entsprechenden Steuersignale φΑ, #ZR,
$ZR und #OQ weitergeleitet bzw. getastet. Die
Ausgänge dieser UND-Glieder sind odermäßig mit Hilfe eines NOR-Gliedes 306 zusammengefaßt, dessen
Ausgangssignal durch ein NAND-Glied 307 invertiert wird.
In F i g. 2 sind die Hauptelemente einer Steuereinheit bzw. eines Steuerwerks dargestellt, welches Operationscodes decodiert, Maschinenzyklen beginnt und beendet
und verschiedene Steuersignale erzeugt Aus dem Befehls-/-Register 78 gemäß F i g. 1 werden Operationscodeteile
der Befehle, nämlich die Bits 18 bis 26 oder 54 bis 62, selektiv über einen ZOÄ-Schalter 94 in ein
Puffer-51-Register 96 eingeleitet Das Z? !-Register
liefert ein Eingangssignal für ein F-Register 97, welches
seinerseits ein Eingangssignal für ein S'-Register 98 und ein Decodiernetzwerk 95 liefert Das Decodiernetzwerk
steuert das Laden des Multiplikatoroperanden in das Λί-Register 14. Das Bl-Register erzeugt ferner ein
Signal .B1-Voll, welches anzeigt, daß das betreffende
Register von dem /-Register geladen worden ist Dabei wird ein B l-Kennzeichen-Flipflop 101 gesetzt, wenn
dem ihm vorgeschalteten UND-Glied 201 ein Cüf-Takt
zugeführt wird. Das Flipflop seinerseits setzt ein P-Kennzeichen-Flipflop 102, welche das ßl-Kennzeichen-Flipflop
zurückstellt und einen vorläufigen Operationszyklus GIN durch Setzen eines G/N-ÄS-Flipflops
121 einleitet Währenddessen tritt der gebildete Befehl auf, und der Inhalt des Si-Registers wird zu dem
P-Register hin übertragen. Das Setzen des GßV-Flipflops
121 bewirkt, daß der Inhalt des P-Registers zu dem
S-Register hin übertragen wird, welches seinerseits
bewirkt, daß das S-Kennzeichen-Flipflop 103 gesetzt
wird, und das Eingangssignal für das Operations-Decodiernetzwerk
99 liefert.
Generell sind die Maschinenarbeitszyklen bzw. Maschinenoperationszyklen durch ein von einem
Taktgenerator 100 geliefertes SG-Taktsignal begrenzt r, Dieser Generator enthält einen Rückkopplungszweig
und ein Verzögerungselement wie z. B. ein Schieberegister. Durch die Verwendung einer variablen Verzögerung
kann die Dauer jedes Maschinenzyklus auf den Minimalwert eingestellt werden, der für den ausgeführ-
Ki ten Zyklustyp erforderlich ist, um maximale Leistung
hinsichtlich der Befehlsausführung zu erzielen.
Ist während des Maschinenzyklus das GOS-Flipflop
im Einzustand, so wird der Multiplikand-Operand aus dem Akkumulator-^O-Register zu dem Operand-Λ/-
Γ) Register hin verschoben. Das Steuersignal für diesen
Zyklus wird durch das GOS- £S-F!ipf!cp 123 geliefert
das sich dabei im Setzzustand befindet Die Verknüpfungslogik 122 steuert das GOS- Flip-Flop wie folgt:
Setzen von GOS = SG ■ GlN ■ Setzen GOF
Setzen von GOS = SG ■ GlN ■ Setzen GOF
2i) Rückstellen von GOS = SG ■ GOS
Nachdem der N-Register-Operand gebildet bzw. eingestellt ist, wird die Teilproduktakkumulation während
der GOM-Zyklen ausgeführt. Das Steuersignal für
diesen Zyklus wird von dem GOM-ÄS-Flipflop 125
_>r> geliefert, welches durch die Logik 124 wie folgt
gesteuert wird:
Setzen von GOAf = SG ■ GOS ■ MPY
Rückstellen von GOM = SG ■ MPY- (ACT= I)
Das MPY-S\gna\ wird von dem Operationscode-De-
Rückstellen von GOM = SG ■ MPY- (ACT= I)
Das MPY-S\gna\ wird von dem Operationscode-De-
jo codiernetzwerk 99 geliefert
Während des letzten Maschinenzyklus der Befehlsausführung wird der gerundete Operand in das
/4O-Register zurückgeführt. Das Steuersignal für diesen
Zyklus wird durch das im Setz-Zustand befindliche
r> GOF-ftS-Füpflop 129 geliefert Die Verknüpfungslogik
128 steuert das GOF-Flipflop wie folgt:
Setzen GOF = SG ■ (GOM- MPY- ACT= 1)
Rückstellen GOF= SG ■ (GOM ■ MPY- (ACT= I))
In den Zeichnungen sind die Steuersignale für die Register mit einem vorangestellten »&< bezeichnet und die übrigen Steuersignale sind mit einem vorangestellten »φν. bezeichnet Die Quellen der zum zweiten Signaltyp gehörenden Signale sind explizit in Verbindung mit den Zyklen GIN, GOS, GOM und GOF
Rückstellen GOF= SG ■ (GOM ■ MPY- (ACT= I))
In den Zeichnungen sind die Steuersignale für die Register mit einem vorangestellten »&< bezeichnet und die übrigen Steuersignale sind mit einem vorangestellten »φν. bezeichnet Die Quellen der zum zweiten Signaltyp gehörenden Signale sind explizit in Verbindung mit den Zyklen GIN, GOS, GOM und GOF
4r> gezeigt Die Steuersignale zur Steuerung bzw. Tastung
der Register werden ebenfalls während dieser Zyklen erzeugt; ihre Vorderflanke wird jedoch bis zu einem
Zeitpunkt verzögert der nahe des Endes der Zyklen liegt Dies geschieht durch unmäßige Verknüpfung der
so betreffenden Signale mit dem SC-Taktsignal. Auf diese
Weise steht Zeit für eine Übertrags-Weiterleitung bzw. -Ausbreitung, für eine Leitungs-Einstellzeit, etc. zur
Verfugung. Die Registersteuersignale bewirken entsprechend den erzeugten Eingangssignalen lediglich
eine Verriegelung der Register.
Die Ausführung der Befehls-Teilmultiplikation erfolgt in folgender Weise durch die vier aufeinanderfolgenden
Stufen GIN, GOS, GOM und GOF, die durch die entsprechenden Flipflops in der Steuerlogik gemäß
Fig.2 freigegeben werden. Bei eingeschalteter GIN-Stufe
bzw. entsprechend eingestelltem Flipflop wird die Abholung des Multiplikatoroperanden beendet, und das
Steuersignal $ZF leitet den Operanden über den ZP-Schalter in das M-Register 14 ein, welches durch die
SM-Signale gesteuert bzw. getastet wird. Der Operand
ist eine 36 Bit umfassende Zweierkomplementzahl; er wird in den Bitpositionen 35 bis 70 des Af-Registers
gespeichert Die Bitposition 71 niedrigster Wertigkeit
809583/153
des Λί-Registers wird durch den ZP-Schalter 12 mit
einer Null geladen, wenn der Multiplikator, durch das Steuersignal ^ZFeingeführt wird.
Bei eingeschalteter GOS-Stufe bzw. bei entsprechend eingestelltem Flipflop wird das //-Register 36, das ~>
zur Akkumulierung der Teilprodukte dient, durch das an den Zy-Schalter 20 angelegte Steuersignal (OJ gelöscht.
Gleichzeitig wird das ACT-Register 20 mit einem Zählergebnis von 18 beaufschlagt, und zwar durch das
dem ZC-Schalter 18 zugeführte Steuersignal φ 18', wenn m
das SACT-Signal dem /4CT-Register zugeführt wird.
Ferner wird der in Frage kommende Multiplikandenfaktor in das /V-Register geladen, indem das in Frage
kommende Steuersignal (OQ, (ZR oder (ZR dem Z<?-Sehalter 42 zugeführt wird und indem das ι·>
N-Register durch das SMV-Signal gesteuert wird. Der
Multiplikand wird, so wie er ist, aus dem AQ-Register 56
über den ZÄ-Schalter 46 aufgenommen, indem das Steuersignal (AQ abgegeben wird, oder er wird durch
Zuführen des Steuersignals (R 1 um ein Bit nach rechts >o
verschoben. Im zuletzt genannten Fall wird das Vorzeichenbit des Multiplikanden ebenfalls in die
Bitposition höchster Wertigkeit auf der Ausgabehauptleitung umgeschaltet
Nach Ausführung des Operanden-Voreinstellzyklus >r>
werden 18 Multiplikationszyklen ausgeführt, bei denen die GOM-Stufe bzw. das betreffende Flipflop im
Einzustand ist Diese Zyklen sind mit Ausnahme des letzten Zyklus einander gleich, wie dies weiter unten
noch näher erläutert werden wird. Während jedes jo Zyklus erzeugt der A-Addierer die Summe der
akkumulierten Teilprodukte aus dem //-Register und des Multiplikandenfaktors aus dem MRegister, und
zwar auf Steuersignale (RH und (RN hin, die dem Z//-Schalter bzw. dem ZN-Schalter zugeführt werden. j5
Diese Summe wird dann um zwei Bitpositionen nach rechts verschoben in dem //-Register gespeichert, und
zwar in Abhängigkeit von dem dem Z/-Schalter zugeführten Steuersignal (SR 2 und in Abhängigkeit
von dem dem //-Register zugeführten ^//-Steuersignal.
Das Vorzeichen wird gemäß der Exklusiv-ODER-Funktion des Vorzeichen-Bit-Ausgangssignals des Λ-Addierers und des Oberlauf-Flipflops für das akkumulierte
Teilprodukt ausgewählt Das erzielte Vorzeichen wird in die benachbarte Bit-Position in dem Z/-Schalter
gezogen. Gleichzeitig wird der in dem M-Register
befindliche Multiplikator um zwei Bitpositionen nach rechts verschoben. Dies erfolgt auf das Auftreten der
dem ZP-Schalter und dem Af-Register zugeführten Steuersignale φΜ2 und SM. Gleichzeitig bewirkt der
Ε-Addierer eine schrittweise Verkleinerung des Inhalts des ACT-Registeis. Dies erfolgt durch Abgabe eines
Steuersignals ^-1 an den ZF-Schalter, eines Steuersignals (ZFaa den ZE-Schalter, eines Steuersignals ^SACT
an den ZG-Schalter, eines Steuersignals φΕ an den
ZF-Schalter und eines Steuersignals SACT an das ACT-Register.
Im letzten Zyklus der 18 Zyklen, also dann, wenn der
Inhalt des ACTRegisters gleich 1 ist, vereinfacht sich
der GOM-Zyklus. Das akkumulierte Teilprodukt vom bo
Ausgang des Λ-Addierers wird in dem N-Register
unverschoben gespeichert Demgemäß wird das Steuersignal φΑ dem Z<?-Schalter zugeführt Die Verschiebung
des Inhalts des A/Registers ist nicht notwendig, jedoch wird der Inhalt des MCT-Registers in derselben Weise {,5
vermindert
Die Beendigung der Multiplikationsoperation erfolgt
bei im Einzustand befindlicher GOF-Stufe. Der betreffende Operationsabschluß umfaßt lediglich die Übertragung des akkumulierten Teilprodukts an das Hauptakkumulator-/4Q-Register 56. Die Steuersignale (RN,
SAS, (AS und SAQ bewirken, daß der Inhalt des ΛΛ/'-Registers über den Z/V-Schalter, den /4-Addierer,
das /IS-Registers und den ZL-Schalter zu dem
A(?-Register hin übertragen wird. Da kein Steuersignal
dem Z//-Schalter zugeführt wird, stellt das Ausgangssignal des /4-Addierers die Summe von Null und das
Endprodukt aus dem N- Register dar.
Der Multiplikandenfaktor wird gemäß den letzten drei Bits in dem Multiplikator-Λ/-Register und unter
Zugrundelegung der oben angegebenen Entscheidungstabelle ausgewählt. Die drei Bits niedrigster Wertigkeit
des A-jf-Registers 14 stellen das Eingangssignal für die
Logik 150 dar, die die Multiplikandenfaktoren 0, ±1/2, ± 1 bestimmt. Diese Faktoren sind zweckmäßigerweise
ein Vorzeichensignal und zwei Signale, die die Größe des Multiplikandenfaktors auswählen. Die Logik bzw.
Verknüpfungslogik 155 erzeugt wie oben beschrieben, die Steuersignale (OQ, (ZR, (ZR, (R 1, (AQ, und zwar
auf das Auftreten der Multiplikandenfaktor-Signale von der Logik 150 her und auf das Auftreten der Signale
GOS und GOMgemäß F i g. 2.
Begrifflich gesehen umfaßt der Grundmultiplikationszyklus (1) die Auswahl des Multiplikandenfaktors
gemäß den drei Multiplikatorbits niedrigster Wertigkeit und eine arithmetische Rechtsverschiebung des akkumulierten Teilprodukts um zwei Bitpositionen, sodann
(2) die Addition des Multiplikandenfaktors zu dem akkumulierten Teilprodukt und eine 2-Bit-Rechtsverschiebung des Multiplikators. Dieser Zyklus unterscheidet sich von einem Standard-Multiplikationszyklus in
einer Beziehung, und zwar insofern, als die Verschiebung vor der Addition auftritt Dieser Unterschied ist
aus vorstehendem noch nicht hervorgegangen, da die erste Verschiebung nicht explizit ausgeführt wird. Das
ursprünglich akkumulierte Teilprodukt ist nämlich Null, so daß es nicht erforderlich ist den Inhalt des
//-Registers tatsächlich zu verschieben. Die Schritte (1)
und (2) werden dann derart zusammengefaßt daß die akkumulierten Teilprodukte um zwei Bits nach rechts
verschoben gespeichert werden, wodurch der nächste Zyklus erwartet bzw. vorweggenommen wird. Dies trifft
mit Ausnahme des letzten Zyklus für die anderen Zyklen zu. Ferner wird gleichzeitig die Auswahl des Multiplikandenfaktors und die Verschiebung des Multiplikators
bewirkt Wenn die Verschiebung nach der Addition ausgeführt würde, wären zwei gesonderte Wege zur
Bildung des Zweifachen und des Vierfachen des Multiplikanden zu beschreiten.
Bezüglich der Bruchteil-Daten ist zu bemerken, daß das gewünschte Ergebnis für n-Bit-Operanden ein
(2ij—1)-Bit-Produkt ist das ist ein Vorzeichenbit und
das Zweifache des Bruches. In der beschriebenen Ausführungsform wird der 36-Bit-Multiplikator zunächst verdoppelt, wodurch ein 37-Bit-Operand gebildet wird. Da 18 Zyklen vorhanden sind, wird das
Vorzeichenbit nicht direkt als Multiplikatorbit benutzt; seine alleinige Wirkung besteht darin, während des
letzten Zyklus den Mulüpükandenfaktor als positiv oder
negativ auswählen zu lassen. Wenn eine herkömmliche Bruch-Multiplikationsoperation als herkömmliche
ganzzahlige Multiplikationsoperation betrachtet wird, die durch eine Abschlußeinstellung einer Linksverschiebung um eins modifiziert ist, so kann die ursprüngliche
Modifikation des Multiplikators in der angegebenen Ausführungsform als eine vorwegnehmende Iinksver-
Schiebung des Produkts um eins angesehen werden.
Wenn die Multiplikationsoperation auf einer ganzzahligen Basis betrachtet wird, können der Multiplikator-
und Multiplikandenoperand als auf eine Binärzahl des Moduls 22" erweitert betrachtet werden, da das
Produkt das Modul 22n ist. Man kann das Vorzeichenbit als n-Bit nach links gezogen betrachten. Sodann kann
das gewünschte Produkt von zwei positiven Zahlen als elementare Akkumulation von Teilprodukten entsprechend
den Positionen der »!«-Bits in dem Multiplikator betrachtet werden. Während dieser Vorgang eingangs
beschrieben worden ist, kann das Vorzeichen-Nachziehen als implizit durch den Verschiebeschritt ausgeführt
betrachtet werden, und zwar bei einer Verschiebung um jeweils ein Bit. Bei einem negativen Multiplikanden läuft
dasselbe Verfahren ab, wobei das Vorzeichen um eins nachgezogen wird und wobei die akkumulierten
Teilprodukte auf das Modul 22n beschränkt sind. Bei
negativen Multiplikatoren können die erwünschten Ergebnisse dadurch erhalten werden, daß die Operanden
multipliziert werden als seien sie positive Zahlen unter Zugrundelegung des Moduls 22n. Die Ausführung
von 2/j Zyklen für n-Bit-Operanden ist nicht praktisch
und auch unnötig. Wenn der Multiplikator von rechts nach links überprüft wird und wenn das nte Bit erreicht
ist, kann der Vorgang abgeschlossen werden. Bei einem positiven Multiplikator sind sämtliche nachgezogenen
Bits 0, so daß das Produkt durch weitere Zyklen unverändert bleibt. Wenn der Multiplikator negativ ist,
sind sämtliche nachgezogenen Vorzeichen-Bits jeweils 1, so daß die Subtraktion des Teilprodukts und der
Abschluß des Vorgangs gleich dem vorhergehenden Verfahren ist, wobei sämtliche Bits 1 sind.
In der angegebenen Ausführungsform bewirkt bei negativen Multiplikatoren der letzte Zyklus, daß der
Multiplikandenfaktor derart subtrahiert wird, daß dasselbe Ergebnis erhalten wird wie in dem Fall, daß ein
zusätzlicher Multiplikationszyklus auf das (ij+1)te Bit hin ausgeführt wird, welches die Subtraktion des
Multiplikanden bewirkte. Damit hat sich gezeigt, daß die Modifikation des Multiplikatoroperanden zu Beginn der
Multiplikationsoperation mit den Vorzeichenkombinations-Betrachtungen zusammenpaßt, um die Steuerlogik
und die Verarbeitungsoperationen zu minimisieren.
Die Erfindung ist ferner bei der Verarbeitung von jeweils drei Multiplikatorbits geeignet Die Entscheidungstabelle
hierführ lautet:
Multiplikator | Multiplikanden |
bits | faktor |
0 000 | 0 |
0001 | '/4 |
0010 | '/4 |
0011 | 1A |
0100 | '/2 |
0101 | 3/4 |
Multi|ilikalorbits
Multiplikandenl'uktor
0 110 | 74 |
Olli | I |
1000 | -1 |
1001 | -74 |
1010 | -3M |
1011 | -'/2 |
1 100 | |
1 101 | -1A |
1 110 | -'/4 |
1 111 | 0 |
Die Faktoren 3A und — 3As erfordern jedoch die
anfängliche Bildung einer »Dreifachgruppe«, d. h. die Bildung des Dreifachen des Multiplikanden, und ein
Register muß zur Speicherung der Dreifachgruppe bzw. Dreiergruppe vorgesehen sein. Ferner müssen zusätzliche
Schalter und eine Verknüpfungslogik vorgesehen sein, um die für die Entscheidungstabelle erforderlichen
Funktionen auszuführen.
2-, Es sei ferner darauf hingewiesen, daß die beschriebene Bruch-Multiplikationsoperation in eine ganzzahlige
Multiplikationsoperation übergeführt wird, indem lediglich eine arithmetische Rechtsverschiebung um 1 bei
dem in dem Hauptakkumulator-A(?-Register gespei-
j(i cherten Ergebnis während des Abschlusses der Operation
ausgeführt wird. Ferner ist die Bruch-Multiplikationsoperation direkt bei der Multiplikation der
Bruchteile von Gleitkomma-Zahlen anwendbar. Die Erfindung kann durch Modifizierung der
r, eingangs beschriebenen herkömmlichen Verarbeitungsanordnung ausgeführt werden, indem das Haupt-Akkumulatorregister
sowohl als Teilproduktakkumulator als auch als Multiplikatorregister ausgenutzt wird. Eine
derartige Lösung führt jedoch zu stärkeren Schwierig-
4ii keiten, wenn es erwünscht ist, auch Gleitkomma-Operationen
mit Operanden auszuführen, deren Brüche länger sind als der Hälfte des Hauptakkumulators entspricht
Abschließend sei noch bemerkt daß die Erfindung zwar im Zusammenhang mit einer besonderen Ausfüh-
Ai rungsform erläutert worden ist daß die Erfindung
darauf jedoch nicht beschränkt ist Vielmehr ist die Erfindung generell bei digitalen Rechnern anwendbar,
die eine Multiplikation dadurch ausführen, daß sie eine Vielzahl von Multiplikatorbits zu einem Zeitpunkt
verarbeiten. So werden z. B. bei der beschriebenen Ausführungsform Paare von Multiplikatorbits von
rechts nach links verarbeitet, wobei jedoch die Reihenfolge der Verarbeitung der betreffenden Bitpaare
nicht notwendig ist Vielmehr können die betreffenden Bitpaare in irgendeiner Reihenfolge oder, sofern
erwünscht, parallel verarbeitet werden; bei derartigen Modifikationen zeigt sich jedoch die Neigung, daß die
Kosten der Verarbeitungsanordnung ansteigen.
Hierzu 2 Blatt Zeichnungen
Claims (5)
1. Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen, mit einem ->
Addierer, der die algebraische Summe eines ersten Operanden und eines zweiten Operanden zu liefern
vermag, mit einer an dem Addierer angeschlossenen Akkumulatoreinrichtung, die die von dem Addierer
jeweils abgegebene Bitfolge zu speichern und den ι ο ersten Operanden für den Addierer zu liefern
vermag, mit einem an dem Addierer angeschlossenen Multiplikandenregister, in welchem der durch
den Multiplikanden gebildete zweite Operand für den Addierer aufnehmbar ist, und mit einem
Multiplikatorregister für die Aufnahme des Multiplikators, dessen Bits in Gruppen von jeweils (n+\)
einander unmittelbar benachbarten Bits nach einer vorgegebenen Regel zur Bildung eines Multiplikanden-Vervielfachungsfaktors bewertet werden, mit >
<> welchem der Multiplikand zu multiplizieren ist, wobei das aus dem Multiplikanden und dem
jeweiligen Multiplikanden-Vervielfachungsfaktor gebildete Produkt in der Akkumulatoreinrichtung
einem in dieser gegebenenfalls bereits enthaltenen r> entsprechenden, zuvor gebildeten Produkt hinzuzuaddieren ist und wobei mit jeder derartigen Addition
eine Verschiebung des Inhalts der Akkumulatoreinrichtung und eine Verschiebung der Auswahl der
jeweils zu bewertenden (/?+1) einander unmittelbar ω
benachbarten Bits jeweils um π Bits verbunden ist, gekennzeichnet durch
a) eine Einleiteinrichtung (11, 12, 13), die vor der ersten Bewertung des Multiplikators dessen r,
Wert verdoppelt;
b) Verknüpfungseinrichtungen (150), die von dem im Wert verdoppelten Multiplikator ausgehend
zwischen jeweils (/?+1) unmittelbar benachbarten zu bewertenden Bits und den Multiplikan-
den-Vervielfachungsfaktoren folgende Zuordnung festlegen
4r>
c) derart ausgestattete Zyklussteuereinrichtungen (120-129);
daß lediglich der Wert des mit dem jeweiligen Multiplikanden-Vervielfachungsfaktor multiplizierten Multiplikanden zu dem Inhalt der Akkumulatoreinrichtung (36) hinzuaddiert wird, bevor gegebenenfalls die Bewertung einer weiteren Bitgruppe des
im Wert verdoppelten Multiplikators und eine Verschiebung des Inhalts der Akkumulatoreinrichtung (36) erfolgen.
b0
2. Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen, mit einem
Addierer, der die algebraische Summe eines ersten Operanden und eines zweiten Operanden zu liefern
vermag, mit einer an dem Addierer angeschlossenen Akkumulatoreinrichtung, die die von dem Addierer
jeweils abgegebene Bitfolge zu speichern und den ersten Operanden für den Addierer zu liefern
vermag, mit einem an dem Addierer angeschlossenen Multiplikandenregister, in welchem der durch
den Multiplikanden gebildete zweite Operand für den Addierer aufnehmbar ist, und mit einem
Multiplikatorregister für die Aufnahme des Multiplikators, dessen Bits in Gruppen von jeweils (n+1)
einander unmittelbar benachbarten Bits nach einer vorgegebenen Regel zur Bildung eines Multiplikanden-Vervielfachungsfaktor bewertet werden, mit
welchem der Multiplikand zu multiplizieren ist, wobei das aus dem Multiplikanden und dem
jeweiligen Multiplikanden-Vervielfachungsfaktor gebildete Produkt in der Akkumulatoreinrichtung
einem in dieser ggf. bereits enthaltenen entsprechenden; zuvor gebildeten Produkt hinzuzuaddieren ist
und wobei mit jeder derartigen Addition eine Verschiebung des Inhalts der Akkumulatoreinrichtung und eine Verschiebung der Auswahl der jeweils
zu bewertenden (n+l) einander unmittelbar benachbarten Bits jeweils um η Bits verbunden ist,
gekennzeichnet durch:
a) eine Einleiteinrichtung (U, 12, 13), die vor der ersten Bewertung des Multiplikators dessen
Wert verdoppelt;
b) Verknüpfungseinrichtungen (150), die von dem im Wert verdoppelten Multiplikator ausgehend
zwischen jeweils (n+l) unmittelbar benachbarten zu bewertenden Bits und den Multiplikanden-Vervielfachungsfaktoren folgende Zuordnung festlegen:
c) derart ausgestattete Zyklussteuereinrichtungen (120-129),
daß lediglich der Wert des mit dem jeweiligen Multiplikanden-Vervielfachungsfaktor multiplizierten Multiplikanden zu dem Inhalt der Akkumulator-
einrichtung (36) hinzuaddiert wird, bevor ggf. die Bewertung einer weiteren Bitgruppe des im Wert
verdoppelten Multiplikators und eine Verschiebung des Inhalts der Akkumulatoreinrichtung (36) erfolgen.
3. Schaltungsanordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß den Einleiteinrichtungen
(11, 12, 13) ein Register (14) nachgeschaltet ist welches zur Aufnahme des Multiplikators dient und
mit dem die Verknüpfungsschaltung (150) verbunden ist, und daß am Ausgang des Registers (14) ein die
Akkumulatoreinrichtung (36) bildendes Akkumulator-Register (36) mit seinem Eingang angeschlossen
ist
4. Schaltungsanordnung nach Anspruch 3, dadurch gekennzeichnet, daß ein Addierer (38) eingangsseitig
am Ausgang des Akkumulator-Registers (36) und am Ausgang eines Multiplikanden-Registers (40) angeschlossen
ist, weiches selektiv einen dem jeweiligen Multiplikandenfaktor entsprechenden Teil des Multiplikanden
abgibt und daß der Addierer (38) ausgangsseitig mit dem Akkumulator-Register (36)
verbunden ist
5. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß dem Ausgang des Addierers
(38) wenigstens ein zusätzliches Register (55, 56) nachgeschaltet ist
Zweierkomplement Jn dem Buch »Digital Computer Design Fundamentals« von Yaohan C h u, McGraw-Hill,
1962, Seiten 24 bis 35, sind Standard-Multiplikationsalgorithmen beschrieben.
Bei 36-Bit-Operanden erfordert dieses Multiplikationsverfahren
die Bereitstellung von 36 Zyklen, wobei eine Addieroperation jeweils dann ausgeführt wird,
wenn eine »1« an einer Bitposition des Multiplikators vorhanden ist Damit ist aber Zeit erforderlich, um den
Obertrag durch den Addierer je Addiereroperation hindurchzuleiten. Ein Weg zur Beschleunigung der
Multiplikation besteht darin, die Multiplikatorbits paarweise zu überprüfen und Vielfache des Multiplikanden
zu dem Inhalt des Akkumulatorregisters hinzuzuaddieren oder von diesem Inhalt zu subtrahieren. Beispiele
iür diese Art von Multiplikation sind in dem Buch »The Logic of Computer Arithmetic« von Ivan FI ο res,
Prentice-Hall, Ina, 1963, Seiten 164 bis 174 beschrieben.
Bei dieser Verfahrensweise wird eine Bitfolge »11« als
Bitfolge behandelt, die eine Subtraktion des Multiplikanden und ein Obertrags-Ausgangssignal erfordert,
das gespeichert wird und das effektiv die Addition des Vierfachen des Multiplikanden während des nächsten
Zyklus bewirkt. Eine Modifikation dieses Algorithmus ist in der Zeitschrift »Proceedings of the IRE«, Januar
1961, Seiten 73 bis 75 beschrieben.
Bei dem gerade erwähnten Algorithmus wird die nachstehend angegebene Entscheidungstabelle benutzt:
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13948771A | 1971-05-03 | 1971-05-03 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2221693A1 DE2221693A1 (de) | 1972-11-09 |
DE2221693B2 true DE2221693B2 (de) | 1979-01-18 |
DE2221693C3 DE2221693C3 (de) | 1979-09-20 |
Family
ID=22486899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2221693A Expired DE2221693C3 (de) | 1971-05-03 | 1972-05-03 | Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen |
Country Status (8)
Country | Link |
---|---|
US (1) | US3730425A (de) |
JP (1) | JPS5615007B1 (de) |
AU (1) | AU458593B2 (de) |
CA (1) | CA1002662A (de) |
DE (1) | DE2221693C3 (de) |
FR (1) | FR2135570B1 (de) |
GB (1) | GB1385215A (de) |
IT (1) | IT950962B (de) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3814924A (en) * | 1973-03-12 | 1974-06-04 | Control Data Corp | Pipeline binary multiplier |
US3949209A (en) * | 1975-04-04 | 1976-04-06 | Honeywell Information Systems, Inc. | Multiple-generating register |
JPS5378742A (en) * | 1976-12-23 | 1978-07-12 | Toshiba Corp | Multiplication control system |
GB1582958A (en) * | 1977-06-09 | 1981-01-21 | Inst Maszyn Matematycznych War | Digital system for binary multiplication of a number by a sum of two numbers |
US4130879A (en) * | 1977-07-15 | 1978-12-19 | Honeywell Information Systems Inc. | Apparatus for performing floating point arithmetic operations using submultiple storage |
US4153938A (en) * | 1977-08-18 | 1979-05-08 | Monolithic Memories Inc. | High speed combinatorial digital multiplier |
US4208722A (en) * | 1978-01-23 | 1980-06-17 | Data General Corporation | Floating point data processing system |
US4238833A (en) * | 1979-03-28 | 1980-12-09 | Monolithic Memories, Inc. | High-speed digital bus-organized multiplier/divider system |
US4334284A (en) * | 1979-12-31 | 1982-06-08 | Sperry Corporation | Multiplier decoding using parallel MQ register |
US4484301A (en) * | 1981-03-10 | 1984-11-20 | Sperry Corporation | Array multiplier operating in one's complement format |
US4523210A (en) * | 1982-06-11 | 1985-06-11 | Sperry Corporation | Fast error checked multibit multiplier |
FR2536879A1 (fr) * | 1982-11-26 | 1984-06-01 | Efcis | Multiplieur binaire rapide |
JPS6032221A (ja) * | 1983-07-30 | 1985-02-19 | 松下電工株式会社 | 交流駆動型電磁継電器 |
US4755962A (en) * | 1984-10-30 | 1988-07-05 | Fairchild Camera And Instrument | Microprocessor having multiplication circuitry implementing a modified Booth algorithm |
US4926371A (en) * | 1988-12-28 | 1990-05-15 | International Business Machines Corporation | Two's complement multiplication with a sign magnitude multiplier |
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 (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3372269A (en) * | 1961-06-30 | 1968-03-05 | Ibm | Multiplier for simultaneously generating partial products of various bits of the multiplier |
US3192367A (en) * | 1962-05-09 | 1965-06-29 | Sperry Rand Corp | Fast multiply system |
US3489888A (en) * | 1966-06-29 | 1970-01-13 | Electronic Associates | Floating point look-ahead binary multiplication system utilizing two's complement notation for representing negative numbers |
-
1971
- 1971-05-03 US US00139487A patent/US3730425A/en not_active Expired - Lifetime
-
1972
- 1972-03-31 IT IT22676/72A patent/IT950962B/it active
- 1972-04-04 GB GB1551372A patent/GB1385215A/en not_active Expired
- 1972-04-26 CA CA140,666A patent/CA1002662A/en not_active Expired
- 1972-04-27 AU AU41598/72A patent/AU458593B2/en not_active Expired
- 1972-05-01 JP JP4267672A patent/JPS5615007B1/ja active Pending
- 1972-05-02 FR FR727215486A patent/FR2135570B1/fr not_active Expired
- 1972-05-03 DE DE2221693A patent/DE2221693C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2221693A1 (de) | 1972-11-09 |
CA1002662A (en) | 1976-12-28 |
US3730425A (en) | 1973-05-01 |
JPS5615007B1 (de) | 1981-04-08 |
DE2221693C3 (de) | 1979-09-20 |
AU4159872A (en) | 1973-12-20 |
FR2135570A1 (de) | 1972-12-22 |
AU458593B2 (en) | 1975-02-06 |
IT950962B (it) | 1973-06-20 |
FR2135570B1 (de) | 1973-07-13 |
GB1385215A (en) | 1975-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69130581T2 (de) | Verfahren zur Berechnung einer Operation des Typus A.X modulo N, in einem Kodierverfahren gemäss der RSA-Methode | |
DE2724125C2 (de) | ||
DE2221693B2 (de) | Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen | |
DE1549476C3 (de) | Anordnung zur Ausführung von Divisionen | |
DE69703085T2 (de) | Koprozessor mit zwei parallel arbeitenden Multiplizierschaltungen | |
DE3424962C2 (de) | ||
DE19758079A1 (de) | Verfahren und Vorrichtung zur Galoisfeld-Multiplikation | |
DE1956209C3 (de) | Multipliziervorrichtung | |
DE1942005B2 (de) | Datenverarbeitungsanlage zur aufnahme und abgabe von digitalen daten und zur ausfuehrung von operationen an den daten | |
DE2246968A1 (de) | Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen | |
DE2658248C2 (de) | ||
DE1549477B1 (de) | Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden | |
DE2814078A1 (de) | Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags | |
DE2816711A1 (de) | Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau | |
DE1549508C3 (de) | Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit | |
DE3447634C2 (de) | ||
DE2034841A1 (de) | Digital Rechenanlage | |
DE10219158A1 (de) | Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Multiplikation | |
DE19635118A1 (de) | Multiplizierer | |
DE19635114A1 (de) | Multiplizierer | |
DE1223177B (de) | Elektronischer Digitalrechner mit Schaltung fuer die Errechnung der Quadratwurzel aus einer Binaerzahl | |
DE19635113A1 (de) | Multiplizierer | |
DE1549461C3 (de) | ||
DE19635111A1 (de) | Multiplizierer | |
DE2142636C3 (de) | Rechenwerk für die Durchführung digitaler Multiplikationen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US |
|
8339 | Ceased/non-payment of the annual fee |