CH644461A5 - Digitale multipliziereinrichtung. - Google Patents

Digitale multipliziereinrichtung. Download PDF

Info

Publication number
CH644461A5
CH644461A5 CH67479A CH67479A CH644461A5 CH 644461 A5 CH644461 A5 CH 644461A5 CH 67479 A CH67479 A CH 67479A CH 67479 A CH67479 A CH 67479A CH 644461 A5 CH644461 A5 CH 644461A5
Authority
CH
Switzerland
Prior art keywords
word
register
mantissa
shift
multiplication
Prior art date
Application number
CH67479A
Other languages
English (en)
Inventor
Edward J Rasala
Charles J Young
Original Assignee
Data General Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Data General Corp filed Critical Data General Corp
Publication of CH644461A5 publication Critical patent/CH644461A5/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • G06F7/5334Reduction 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/5336Reduction 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3832Less usual number representations
    • G06F2207/3844Hexadecimal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features
    • G06F2207/3884Pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (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)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)

Description

Die vorliegende Erfindung bezieht sich auf eine digitale Multipliziereinrichtung.
Es verlangt die Darstellung von Zahlen, insbesondere nicht ganzzahligen, in Datenverarbeitungsanlagen die Einführung eines Dezimalkommas in die Darstellung. Eine Möglichkeit besteht darin, in Datenverarbeitungsanlagen eine Festpunkt-Darstellung zu wählen, in welcher das Komma entweder unmittelbar rechts von der kleinsten Stelle, oder unmittelbar rechts des Zeichenbits steht, welches dem ersten Informationsbit vorangeht.
Eine weitere Möglichkeit wird als Fliesskomma-Darstellung bezeichnet, in welcher die Zahl durch ein Vorzeichen, ein Exponent, und eine Mantisse dargestellt wird. Dieses Verfahren ist an vielen Orten beschrieben, beispielsweise in «Computer Architecture» von Caxton C. Foster, Van Nostrand Rheinhold Company, New York, N.Y. 1976, Seiten 16ff.
Verarbeitungseinheiten für die Fliesskomma-Darstellung neigen bei hoher Präzision und grossem Bereich der möglichen Dezimalstellen dazu, kompliziert zu werden. Eine Ausführungsform, welche eine verhältnismässig hohe Anpassungsfähigkeit und eine gute Präzision aufweist und einige Vereinfachungen der üblichen Fliesskomma-Schaltungen verwendet, wird im kanadischen Patent Nr. 1 105 065, von Richard T. MacAndrew beschrieben. Dieser Aufbau ist vorgesehen, um zur Durchführung von arithmetischen Operationen den ersten und den zweiten Operanden zu verschieben, wobei diese Operanden eine erste und zweite Mantisse, sowie einen ersten und zweiten Exponentenwert aufweisen. Es sind arithmetische Schalt- und Registermittel vorgesehen, um einen vorgewählten Skalierungsfaktor zu erzeugen, welcher die Bedingungen der Operanden-Verschiebungen festlegt. Es sind Skalierungsmittel vorgesehen, um die Register wahlweise in einer ersten Richtung in Serie zu laden, und um einen eingehenden Operanden nach Massgabe des vorgewählten Skalierungsfaktors zu skalieren. Um das ausgewählte Register in der ersten Richtung sequentiell auszulesen, werden Umschalter zur wahlweisen Verbindung des Registers mit den Skalierungsmitteln verwendet.
Wenn die in besagtem kanadischen Patent beschriebene Anlage auch mit verhältnismässig hoher Präzision arithmetische Operationen innerhalb eines weit gespannten Zahlengebietes schnell und bequem durchführen kann, so ist doch die Geschwindigkeit ihrer Mantissen-Multiplikation - welche Bit um Bit durchgeführt wird - geringer als erwünscht, und eine höhere Multiplikationsgeschwindigkeit wäre willkommen, insbesondere in Datenverarbeitungsanlagen, in welchen die Verarbeitungsgeschwindigkeit eine immer grössere Rolle spielt.
Die Erhöhung der Geschwindigkeit der Mantissen-Multi-plikation in Anlagen mit Fliesskomma-Darstellung wird erreicht, indem die Operation gleichzeitig an vier Bits der Mantisse des Multiplikators vorgenommen wird, anstatt die
5
10
15
20
25
30
35
40
45
50
55
60
o5
3
644 461
Multiplikation der Mantisse bitweise durchzuführen. Es wird eine 4-Bit-MantissenmuItiplikation in der hexadezimalen Darstellung durchgeführt, unter Verwendung von geeignet verbundenen Verschiebungseinheiten, arithmetischen Rechnungseinheiten und Registern.
Demnach liefert ein Mantissenregister die Mantisse einer zu multiplizierenden Zahl (dem Multiplikanden) an ein Register, dessen Ausgangssignal zwei Paaren von passend multi-plexierten Verschiebungseinheiten zugeführt wird, welche in der Lage sind, verschiedene Kombinationen von Mehrfachen einer solchen Mantisse zu liefern. Die Wahl des Multiplikationsfaktors wird durch aufeinanderfolgende Gruppen von je 4 Bits der Mantisse der zweiten zu multiplizierenden Zahl (des Multiplikators) gesteuert. Die Ausgangssignale der mul-tiplexierten Verschiebungseinheiten versorgen eine arithmetische Recheneinheit, welche die passenden Additionen und Subtraktionen durchführt, und die Ergebnisse werden in einem Arbeitsregister gespeichert. Das Ausgangssignal des Arbeitsregisters, welches effektiv ein Teilprodukt für jede 4-Bit-Multiplikation darstellt, wird einer zweiten arithmetischen Einheit zugeführt, die ständig eine Partialsumme der berechneten Teilprodukte bildet, und diese Partialsummen werden nacheinander einem Schlussregister zugeführt.
Der ganze Vorgang ist eine Durchlaufoperation, bei welcher das Arbeitsregister stets die Teilprodukte enthält, während das Schlussregister stets die Teilsumme enthält, welche in die zweite arithmetische Recheneinheit zurückgespiesen wird, um eine fortlaufende Berechnung ihrer selbst zu gestatten.
Nachdem alle 4-Bit-Gruppen des Multiplikators mit der Mantisse des Multiplikanden multipliziert worden sind, wird das Gesamtprodukt im Schlussregister der Datenverarbeitungsanlage über eine interne Mantissen-Sammelschiene zugeführt, und zur Datensammelschiene gebracht, welche die Datenübertragung zwischen der verarbeitenden Anlage und der Fliesskomma-Einheit besorgt.
Diese Art der Verwendung von Multiplexern und arithmetischen Recheneinheiten gestattet eine hohe Geschwindigkeit bei der Durchführung von Multiplikationen in Fliesskomma-Darstellung, indem die Operationsgeschwindigkeit wesentlich über derjenigen von bisherigen Anlagen mit einer Einzelbit-Multiplikation liegt, wie sie bisher für die Fliesskomma-Darstellung verwendet wurden.
Es soll nun die Erfindung anhand nachfolgender Beschreibung und der Zeichnung beispielsweise näher erläutert werden. Es zeigt:
Fig. 1 ein Blockdiagramm einer Datenverarbeitungsanlage, in welcher die Erfindung verwendet werden kann;
Fig. 2 ein Blockdiagramm der Steuerschaltung der Fig. 1 ;
Fig. 3 ein Blockdiagramm der Exponentenschaltung der Fig. 1;
Fig. 4 ein Blockdiagramm der Mantissenschaltung der Fig. 1:
Fig. 5 ein ausführlicheres Schaltdiagramm eines Teiles der Mantissenschaltung der Fig. 4;
Fig. 6 ein ausführliches Schaltdiagramm eines anderen Teiles der Mantissenschaltung der Fig. 4;
Fig. 7 und 8 ein Blockdiagramm und eine Tabelle Nr. 1 zur Erläuterung eines Teiles der Operationen in der Mantissenschaltung der Fig. 4;
Fig. 9 ein Blockdiagramm der Dekodier- und Steuerschaltung der Fig. 1 ; und
Fig. 10 eine Tabelle Nr. 2 zum besseren Verständnis des Multipliziervorganges.
Die hier vorgeschlagene Fliesspunkt-Verarbeitungseinheit (im folgenden gelegentlich als «FPP» bezeichnet) ist an sich eine getrennte Verarbeitungseinrichtung, die alle Fliesspunkt-Operationen für eine zentrale Verarbeitungseinheit durchführt, obwohl sie dem zentralen Verarbeiter untergeordnet ist. Die Verarbeitungseinheit transferiert alle Daten zum oder vom Fliesspunkt-Verarbeiter, und das FPP führt effektiv alle notwendigen arithmetischen Operationen unabhängig von der zentralen Verarbeitungseinheit durch.
Es zeigt die Fig. 1 ein grobes Diagramm der beschriebenen Fliesspunkt-Verarbeitungseinheit sowie die im Zusammenhang mit der zentralen Verarbeitungseinheit und Hauptspeichereinheiten einer Gesamtdatenverarbeitungsanlage nötigen Wege für Daten, Adressen und Steuerbefehle von und zu einer solchen Verarbeitungseinheit. Wie aus der Figur hervorgeht, verkehrt eine zentrale Verarbeitungseinheit 10 über eine Sammelschiene 12 und eine Adress-Sammelschiene 13 bekannter Art, mit einer Speichereinheit 11. Es werden, über getrennte interne Leitungen geeignete Signale zur Steuerung von Ein- und Auslesen des Speichers geliefert. Die Fliesspunkt-Verarbeitungseinheit (FPP) 14 verkehrt auch über die Daten- und Adress-Sammelschienen 12 und 13 mit der zentralen Verarbeitungseinheit und dem Speicher, ist aber ausserdem über gewisse Steuerleitungen mit diesen verbunden.
Die Fliesspunkt-Verarbeitungseinheit umfasst eine Befehlsentschlüsselungs-Einheit 15, welche von einem Fliesspunkt-Steuerregister 16 stammende Befehle dekodiert und die Funktion der Exponentenverarbeitungseinheit 17 und der Mantissenverarbeitungseinheit 18 steuert. Es werden die Daten für die Fliesspunkt-Einheit von der Datensammelschiene über eine Anschlussschaltung 19 geliefert, wobei die Resultate der Operationen der Mantissenschaltung und der Exponentenschaltung kombiniert werden, und der Datensammelschiene nach Durchführung der arithmetischen Operation zugeführt werden.
Es enthält das FPP eine Kopie des Befehlsregisterinhaltes der zentralen Verarbeitungseinheit und kann einen Befehl puffern (d.h. einen Befehl speichern) während es gleichzeitig einen vorher erhaltenen Befehl durchführt. In einer bevorzugten Ausführungsform hat das FPP beispielsweise eine Zykluszeit von 100 Nanosekunden, um mit einer zentralen Verarbeitungseinheit verwendet zu werden, welche beispielsweise eine Zykluszeit von 200 Nanosekunden hat. Dann kann die Fliesspunkt-Verarbeitungseinheit pro Durchführung jedes Mikro-befehles durch die zentrale Verarbeitungseinheit 2 Mikrobefehle liefern. Es bleibt das FPP im «Leerlauf», bis ein Fliess-punktbefehl in seinen Befehlsregister eingelesen wird;
danach kann es unabhängig von der zentralen Verarbeitungseinheit funktionieren, ausser wenn die zentrale Verarbeitungsanlage Daten zur Fliesspunkt-Verarbeitungseinheit liefert, oder von dieser bezieht.
Im allgemeinen speichert die Fliesspunkt-Verarbeitungseinheit jeden Befehl, welcher durch die zentralen Befehlsregister aus dem Speicher ausgelesen wird. Falls der Befehl ein Fliesspunktbefehl ist, und keine Information aus dem Speicher verlangt, kann die Fliesspunkt-Verarbeitungseinheit -sofern sie nicht anderweitig beschäftigt ist - den Befehl sofort dekodieren und mit der Durchführung der arithmetischen Fliesspunkt-Operation beginnen. Während der Durchführung des laufenden Befehles kann sie ausserdem den nächsten Befehl in ihrem Steuerpufferregister speichern.
Die Exponentenverarbeitungseinheit 17 umfasst Register und Rechenschaltungen für die Exponentenberechnung.
Diese Schaltungen berechnen auch die Normalisationsfakto-ren und steuern einen Mantissen-Verschieber, um die Mantissenergebnisse zu normalisieren. Die Schaltung 17 berechnet auch die für Addier- und Subtraktions-Operationen nötigen Verschiebungen. All diese Operationen können im allgemeinen solche sein, die im genannten kanadischen Patent erwähnt sind, und brauchen daher nicht näher beschrieben zu werden.
5
10
15
20
25
30
35
40
45
50
55
60
o5
644 461
4
Die Mantissenverarbeitungseinheit 18 umfasst Register und Rechenschaltungen für Mantissenberechnungen (d.h. die gewünschten Mantissenberechnungen, ob dies nun im Addieren, Subtrahieren, Multiplizieren oder Dividieren besteht). Die Resultate werden dann in Abhängigkeit des durch die Exponentenrechenschaltung berechneten Faktors normalisiert, und in einem Fliesspunkt-Akkumulator gespeichert.
Die Steuereinheit 15 für Fliesspunkt-Verarbeitung verkehrt mit der zentralen Verarbeitungseinheit 10 und steuert die Ausführung der Fliesspunkt-Befehle. Fig. 2 zeigt eine verhältnismässig vereinfachte Form des Blockdiagrammes der Steuerschaltung. Wie daraus ersichtlich, enthält diese Schaltung einen Steuerspeicher 20, welcher vorzugsweise eine Totspeichereinheit (ROM) mit 512 Wörtern zu je 72 Bit ist. Dieser Totspeicher enthält die Mikroprogramme, die nach Massgabe der Fliesskomma-Befehle die gewünschten Fliess-komma-Operationen durchführen. Ein Puffer-Steuerregister 21 speichert den jeweils in Durchführung begriffenen Mikrobefehl. Die Ausgangssignale solcher Register steuern über passende, den Exponenten- und Mantissenverarbeitungseinheiten zugeführte Signale, das Funktionieren der Fliesspunkt-Verarbeitungseinheit. Eine Zustandswechsel-Einheit 22 kontrolliert die Adresse des nächsten Fliesspunkt-Mikrobefehles und umfasst einen Register, um einen Teil des Befehlsregisters zu kopieren, wobei die Zustandswechsel-Einheit diesen Register verwendet, um die Operationen der Fliesskomma-Verarbeitungseinheit zu steuern.
Es enthält die Zustandswechsel-Einheit auch einen Pufferregister zum Speichern des nächsten Fliesspunkt-Befehles, so dass die Fliesspunkt-Verarbeitungseinheit einen Befehl ausführen kann, während es den nächsten puffert. Es kann die Zustandswechsel-Einheit auch die Resultate verschiedener Datenprüfungen innerhalb der Fliesspunkt-Verarbeitungseinheit verwenden, beispielsweise um die Adresse des nächsten Mikrobefehles auszuwählen. Solch eine Adresse kann ein wahres oder falsches Adressfeld, eine Befehlsadresse, oder eine Adresse eines Subroutinen-Adressenregi-sters 23 sein. Die bestimmte, durch die Zustandswechsel-Einheit 22 ausgewählte Adresse ist als RAD-0-8-Signal bezeichnet, welches, wie gezeigt, den Steuerspeicher anspricht. Es werden die Befehle der zentralen Verarbeitungseinheit der Zustandswechsel-Einheit über die Sammelschiene 12 zugeführt.
Fig. 3 zeigt ein Blockdiagramm der Exponentenschaltung 17 der Fliesspunkt-Verarbeitungseinheit. Diese logische Schaltung kann alle nötigen arithmetischen Berechnungen im Exponenten durchführen, welche bei Fliesspunktberechnun-gen notwendig sind. Dies umfasst das Vorzeichenbit der Mantisse und den Exponenten, welcher in einer bevorzugten Ausführungsform durch 7 Bit dargestellt ist. Es enthalten die Exponentenregister 30 und 31 den Exponent und das Vorzeichen der Mantisse aller Fliesspunkt-Zahlen, welche sich in der Fliesspunkt-Verarbeitungseinheit befinden. Zwei Register werden so verwendet, das in demselben Mikrobefehl zwei Exponenten adressiert werden können. Die beiden Registerspeicher werden durch verschiedene Auswählbits adressiert, indem der Registerspeicher 30 durch die Bits ERASO-2 und der Registerspeicher 31 durch die Bits ERBSO-2 adressiert wird. Es kann die arithmetische Exponentenverarbeitungseinheit 32 zwei Exponenten addieren oder subtrahieren, eine Konstante zu einem Exponenten hinzu addieren, einen Normalisierungsfaktor addieren oder subtrahieren, einen Exponenten erhöhen oder erniedrigen. Die Ausgangsdaten der arithmetischen Schaltung 32 werden in einem Register 33 für Skalierungsfaktoren gespeichert, dessen Ausgangssignal (SCLO-7) in den Registerspeicher wieder eingelesen werden kann, oder aber es kann ein Teil seines Ausgangssignales (SCL4-7) verwendet werden, um die Links-Rechts-Verschiebungseinheit der Mantisse über die Steuereinheit 34 zu betätigen.
Die Registerwahl-Schaltung 35 wählt eines der acht Register in den zwei Registerspeichern und in dem Mantissen-Registerspeicher aus, wie weiter unten beschrieben.
Die Steuereinheit 34 für Mantissenverschiebung verwendet die Information «Abtastung führender Nullen» (LZDO-3) oder das Ausgangssignal des Skalierungsfaktor.-Registers (SCL4-7), um die Mantisse um 0-15 hexadezimale Stellen nach links oder nach rechts zu verschieben. Solch eine Verschiebung kann innerhalb eines Mikrozyklus durchgeführt werden, in einer bevorzugten Ausführung also in den 100 Nanosekunden des Mikrozyklus der Fliesskomma-Verarbei-tungseinheit. Die Steuereinheit 34 für Verschiebungen kann auch andere Information für die Verschiebung der Mantisse verwenden, wie beispielsweise bei einer Verschiebung der Mantisse zwecks Übertragung in einen Speicher, unter Verwendung von zwei passend geschalteten Schleifenzählern.
Eine Puffereinheit in der Anschlussschaltung 19 der zentralen Verarbeitungseinheit steuert die Eingabe von Daten in die Fliesspunkt-Verarbeitungseinheit, wobei die Daten aus der Datensammelschiene 12 zur Exponentenschaltung, oder zu der Mantissenschaltung geleitet werden. Ein anderer Puffer speichert die Programmzählung jedes Mal, wenn ein Fliesspunkt-Befehl empfangen wird, für den Fall, dass die Fliesspunkt-Verarbeitungseinheit einen Fehler macht. Die Anschlussschaltung enthält auch Zustandsregister für die Fliesspunkt-Verarbeitungseinheit, in welchen Information über den laufenden Zustand der FPP-Einheit gespeichert ist.
Das Blockdiagramm der Fig. 4 zeigt weitere Einzelheiten der Mantissenschaltung 18, welche Mantissenberechnungen für die Fliesspunkt-Verarbeitungseinheit durchführt. Die Mantissenschaltung speichert auch den Mantissenteil aller in der Fliesspunkt-Verarbeitungseinheit verarbeiteten Fliesspunkt-Zahlen, und zwar in den Fliesspunkt-Akkumulatoren des Registerspeichers 41 für Mantissen. Die Mantissenschaltung wird durch das Mikroprogramm und den Steuerteil der, im Zusammenhang mit der Fig. 2 besprochenen, Fliesspunkt-Verarbeiter gesteuert.
Das Mantissen-Pufferregister 40 steuert den Bestimmungsort der Daten (BOFO-15) aus dem Datenpuffer der Anschlussschaltung in Fig. 3. Diese Daten werden in den passenden Teil der internen Mantissen-Sammelschiene einge-spiesen (worin die Daten als MBUS0-55 bezeichnet sind), und in die zugehörigen Fliesspunkt-Akkumulatoren des Mantissen-Registerspeichers 41 (acht 56-Bit-Register) eingelesen. Der Datenpuffer 40 kann auch in umgekehrter Richtung arbeiten, indem er den verlangten 16-Bit-Abschnitt (MEM 015) aus der Mantissen-Sammelschiene in die Datensammelschiene 12 eingibt.
Der Mantissen-Registerspeicher umfasst in einer bevorzugten Ausführung acht Wörter zu je 56 Bit und wird durch die Registerauswahlschaltung 35 der Exponentenschaltung adressiert (siehe Fig. 3). Es wird das Ausgangssignal des Registerspeichers 41 als Eingangssignal für ein Register 43, der mit M/Q (Multiplikand/Quotient) bezeichnet wird, und für eine Rechts/Links-Mantissenverschiebungseinheit 45 verwendet.
Das M/Q-Register 43 wird verwendet, um während einer Multiplikationsoperation einen der Operanden (Multiplikand) zu speichern oder um das Resultat (Quotient) einer Division zu empfangen. In letzterem Fall wird das Divisionsresultat bitweise in das M/Q-Register geschoben, wobei dieser Bit der Übertrag einer zweiten arithmetischen Schaltung und eines weiter unten beschriebenen Schlussregisters ist.
Das Ausgangssignal des M/Q-Registers wird von einer ersten arithmetischen Schaltung 46 und von einem multiple-
5
10
15
20
25
30
35
40
45
50
55
60
o5
5
644 461
xierten Verschiebungsnetzwerk 47 verwendet. Dabei wird letzterer über die Multipiikationssteuereinheit 44 durch die vier untersten Stellen der Mantissen-Verschiebungseinheit 45 (SH52-55) gesteuert, um, wie weiter unten näher beschrieben, eine vierstellige hexadezimale Multiplikation durchzuführen. Die Verschiebungsnetzwerkeinheiten 47A, 47B, 47C resp. 47 D verschieben das Ausgangssignal des M/Q-Registers 43 um 0 bis 3 Bits (wodurch tatsächlich eine Multiplikation des Multiplikanden mit 0,1, 2,4 oder 8, oder Kombinationen davon, bewerkstelligt wird). Die arithmetische Rechenschaltung 46 addiert diese verschobenen Werte derart, dass das Ausgangssignal der arithmetischen Rechenschaltung gleich dem nach Massgabe der hexadezimalen Darstellung mit 0 bis 15 multiplizierten Wert am Ausgang des M/Q-Registers ist. Solch ein Teilprodukt wird in einem Arbeitsregister 48 gespeichert und im Verlaufe des nächsten Mikrozyklus mit allen vorausgehend berechneten Teilprodukten addiert.
Ein Arbeitsregister 48 hält während einer Multiplikationsoperation das laufende berechnete Teilprodukt aus der ersten arithmetischen Rechenschaltung 46 fest. Während einer Division hält der Arbeitsspeicher den Nenner fest. Während einer Addition oder Subtraktion hält dieses Register die Quelle fest.
Eine zweite arithmetische Rechenschaltung 49 und ihr Verschiebungsnetzwerk 50 verwenden das Ausgangssignal des Arbeitsregisters 48 und dasjenige eines Schlussregisters 51. Das Ausgangssignal der arithmetischen Rechenschaltung 49 wird über das Verschiebungsnetzwerk in das Schlussregister eingegeben. Es addiert die arithmetische Rechenschaltung 49 aller vorhergehend aufsummierten Teilprodukte (welche im Schlussregister gespeichert sind) zu dem aus der ersten arithmetischen Rechenschaltung 46 stammenden laufenden Teilprodukt und verschiebt das neue Teilprodukt um 4 Bits nach rechts, um die Normalisation zu wahren.
Es wird die Mantissen-Links/Rechts-Verschiebungsschal-tung 45 durch die Verschiebungssteuereinheit 34 der Exponentenschaltung (siehe Fig. 3) gesteuert. Es kann solch eine Verschiebungsschaltung innerhalb eines Mikrozyklus eine aus 56 Bit bestehende Mantisse um 0 bis 15 hexadezimale Plätze nach rechts oder links verschieben. Die Mantissenverschiebung wird verwendet, um die Mantisse vorgängig einer Addition oder Subtraktion auszurichten, sowie um nach einer Multiplikation oder Division eine Normalisierung durchzuführen. Sie wird auch bei der Multiplikation dazu verwendet, um die passende hexadezimale Stelle in die Multiplikationsteuereinheit 44 zu schieben, um das Verschiebungsnetzwerk 47 zu steuern.
Nach jeder Operation hält das Schlussregister 51 das Resultat fest, wobei das Eingangssignal zum Schlussregister entweder das Ausgangssignal der zweiten arithmetischen Recheneinheit 49 und ihres Verschiebungsnetzwerkes 50,
oder das Ausgangssignal der Mantissen-Links/Rechts-Verschiebungsschaltung 45 ist. Es wird das Ausgangssignal des Schlussregisters auch zum Eingang einer Einheit 52 zum Abtasten der führenden Null geleitet, um der Exponentenschaltung zugeführt zu werden (Fig. 3). Dieses Ausgangssignal kann auch auf die interne Mantissen-Sammelschiene gegeben werden, um es über den Datenpuffer 40 und die Daten-Sammelschiene 12 zu speichern, oder aber um es zu den Fliesspunkt-Akkumulatoren des Mantissenregisterspei-chers 41 zu führen.
Der Detektor 52 für führende Nullen tastet alle hexadezimalen Stellen ab, welche im Schlussregister gleich Null sind. Dies ergibt den von der Exponentenschaltung verwendeten Normalisationsfaktor zur Anpassung des Exponenten des Resultates, und zur Steuerung des Mantissenverschiebers.
Da die Exponentenschaltung (Fig. 3) und ihre allgemeine Steuerung durch Mikroprogramme derselben Art wie im erwähnten kanadischen Patent ist, brauchen einzelne Operationen, insbesondere im Zusammenhang mit Additionen, Subtraktionen und Divisionen durch das FPP, hier nicht im einzelnen beschrieben zu werden. Ein einmaliges Merkmal der beschriebenen Fliesspunkt-Verarbeitungseinheit besteht jedoch in der Mantissenschaltung 18 und wirkt bei der Multiplikation in Fliesskomma-Darstellung. Diese Operation wird weiter unten anhand von Fig. 4 im einzelnen beschrieben, wobei weitere Einzelheiten im Zusammenhang mit den Fig. 5 bis 10 besprochen werden, welche auch die Tabellen 1 und 2 der Zeichnung enthalten.
Es zeigen die Fig. 5-7 einzelne Komponenten der Mantissenschaltung der Fig. 4. Der Mantissenregisterspeicher 41 besteht aus acht 56-Bit-Registern, die aus dem vom Datenpuffer 40 erhaltenen Eingangswort MBUSO-55 ein 56-Bit-Multi-plikationswort MFP 0-55 bilden. Das Ausgangssignal des Mantissenregisterspeichers 41 wird einem Pufferschieberregister 50 zugeführt, welches das Wort (MPR 0-55) liefert, welches nach Massgabe des Mantissen-Verschiebungssteuersi-gnales durch den Rechts-Verschieber 51 oder durch den Links-Verschieber 52 nach rechts oder links zu verschieben ist.
Um eine Multiplikation durchzuführen, werden nacheinander gleichzeitig je 4 Bit des Multiplikators mit dem Multiplikanden multipliziert, wobei letzterer durch das M/Q-Regi-ster 43 geliefert wird. Die Multiplikation desselben mit den laufenden 4 Bits des Multiplikators wird durch das Verschiebungsnetzwerk 47 durchgeführt, dessen Funktion, wie weiter unten erklärt, durch die Multiplikationssteuereinheit 44 gesteuert wird. Beginnend mit den untersten Stellen des Multiplikators werden aufeinanderfolgende Segmente von je 4 Bit desselben am Ausgang des Rechts/Links-Verschiebers 45 der Multiplikationssteuereinheit 44 zugeführt, welche ihrerseits die Multiplikation jedes Teilproduktes überwacht, welches derart durch die Operation des Verschiebungsnetzwerkes 47 und ALU 46 erhalten wird.
Jedes Teilprodukt wird dem Arbeitsregister 48 zugeführt und danach bei ALU 49 zum vorgehend berechneten Teilprodukt hinzu addiert, wodurch die ständig aufsummierten Teilprodukte dem Schlussregister 51 zugeführt werden. Wie aus Fig. 4 ersichtlich, wird in der Verschiebungseinheit 50A das Ausgangssignal von ALU 49 jedes Mal durch 16 (d.h. einer 4-Bit-Verschiebung nach rechts) dividiert, bis jedes 4-Bit-Segment multipliziert worden ist. Die letzten Registerinhalte werden in ALU 49 zurückgelesen, so dass diese Einheit die Teilprodukte wie gewünscht ständig liefern kann. Die Verschiebungseinheiten 50B und 50C werden bei der Durchführung von Divisionen gebraucht.
Durch geeignete Steuerung der den Eingängen A und B von ALU 46 gelieferten Kombinationen von Ausgangssignalen der Verschiebungsnetzwerke kann für jeden 4-Bit-Abschnitt des Multiplikators das 4-Bit-Teilprodukt, welches durch das Verchiebungsnetzwerk 47 und ALU 46 geliefert wird, verarbeitet werden, um das Teilprodukt jeglicher 16 hexadezimaler Werte zu bilden. So kann beispielsweise eine Multiplikation mit (X3) erreicht werden, indem im Verschiebungsnetzwerk 47D mit (X4) multipliziert wird und davon eine im Verschiebungsnetzwerk 47 A durchgeführte Multiplikation mit (XI) abgezogen wird.
Fig. 4 zeigt weitere Einzelheiten der Multiplikationssteuereinheit 44, welche eine hex-D-Flipflop-Einheit 43 enthält, die auf die vier untersten Bits (SH 52-55) des Multiplikators anspricht, welche am Ausgang des Rechts-Verschiebers 51 erscheinen (es werden die Multiplikatoren-Bits MRP 0-55 für jede aufeinanderfolgende 4-Bit-Multiplikation nacheinander um 4 Bit nach rechts verschoben). Es liefert also die Multiplikationssteuereinheit 44 Steuersignale für das Register 54, welches über MCTRE die Multiplikationssteuersignale MCTRA
5
10
15
20
25
30
35
40
45
50
55
60
t>5
644 461
liefert. Diese Signale sorgen für das Ein- oder Ausschalten der Verschiebungsnetzwerke 47A-47D (durch die Signale El und E2) sowie für die Auswahl des passenden Multiplikationsfaktors (XI, X2, X4, X8 durch die Signale Sl, Sl, S2, S2) wie in den Fig. 5 und 6 gezeigt.
Es kann die Funktionsweise der Verschiebungsnetzwerke 47A-47D und ALU 46 anhand der Fig. 7 und der Tabelle 1 erklärt werden. Es sind die Verschiebungsnetzwerke effektiv zwei multiplexierte Multiplikationsschaltungen, eine, um entweder mit (XI) oder mit (X2) zu multiplizieren, und die andere, um entweder mit (X4) oder (X8) zu multiplizieren. Es werden multiplexierte Multiplikatoren, wie in der Tabelle 1 gezeigt, aktiviert und desaktiviert, und die Wahl des Multiplikationsfaktors wird durch die Auswahlsignale Sl, AI, S2, S2 bestimmt, wobei die Ausgangssignale der multiplexierten Multiplikationsschaltungen durch ALU 46 nach Bedarf addiert oder subtrahiert werden. Falls beispielsweise eine Multiplikation mit (X3) gewünscht wird, können die multiplexierten Multiplikationsschaltungen so gesteuert werden, dass beide aktiviert werden (El und E2 bestehen) und so, dass Sl und S2 bestehen, um eine Multiplikation mit (XI) bzw. (X4) zu bewirken. Die Produkte werden dann aneinander abgezogen (d.h. — A + B), so dass das schliesslich erhaltene Teilprodukt (X4)-(X1) ist, was einer Multiplikation mit (X3) entspricht.
Die Tabelle 2, zusammen mit der Fig. 7 und der Tabelle 1, zeigt, wie, unter Verwendung der Verschiebungsnetzwerke 47A-47D, von ALU 46 und von ALU 49 ein hexadezimales Teilprodukt für eine 4-Bit-Multiplikation erhalten werden kann. Es seien der Multiplikand mit «A», die Teilsumme der Teilprodukte mit «PS» und die Übertragsbits mit «CN» bezeichnet. Dann veranschaulicht die Tabelle 2 die Operationen «Auswahl (SEL)» und «Aktivieren» (EN) am Verschiebungsnetzwerk, sowie die von den ALU's verlangten Operationen «Addition» (Add) oder «Subtraktion» (Sub), welche nötig sind, um für einen Multiplikator mit 4 Bit den richtigen Multiplikationswert in hexadezimaler Darstellung zu erhalten. Die Tabelle beschreibt die notwendigen Operationen für eine Multiplikation mit irgendeinem der 16 Werte, welche durch die vier niedersten Bits des Multiplikators dargestellt werden können. Danach wird der Multiplikator im Links/ Rechts-Verschieber 45 um 4 Bitstellen nach rechts verschoben, so dass sich danach die nächsten 4 Bits in den untersten Bitstellungen befinden, und es findet der nächste Multiplikationsvorgang für den nächsten hexadezimalen Wert statt, der durch diese vier aufeinanderfolgenden Bits dargestellt ist. Der Vorgang wiederholt sich, bis die Multiplikation für alle Gruppen von 4 Bits in dem 56 Bit bestehenden Wort durchgeführt worden ist.
Beim gesamten Multiplikationsvorgang erzeugt ALU 46 die Teilprodukte und ALU 49 die Teilsummen von Teilprodukten, bis die Summe aller Teilprodukte vorliegt (d.h. die Multiplikation mit der letzten Gruppe von 4 Bits stattgefunden hat), worauf das Schlussregister 51 das vollständige Produkt des durch das M/Q-Register 43 gelieferten Multiplikanden mit dem über den Rechts/Links-Verschieber 45 von dem
Mantissen-Registerspeicher gelieferten Multiplikators liefert.
Es können die Operationen Addition, Subtraktion und Division im wesentlichen auf die im erwähnten kanadischen Patent beschriebene Weise durchgeführt werden und werden daher hier nicht weiter beschrieben.
Die Fig. 9 zeigt weitere Einzelheiten des Blockdiagram-mes des Befehls- und Dekodierteiles der Fliesskomma-Ein-heit. Wie schon im Zusammenhang mit Fig. 2 besprochen, wird jeder zur zentralen Verarbeitungseinheit gelieferte Befehl gleichzeitig auch zur Fliesspunkt-Verarbeitungseinheit geführt, und zwar über die Zustands-Wechselschaltung 22, welche zu diesem Zweck auch einen Befehlspufferregister 60 aufweist. Das Fliesskomma-Steuerregister (FPIR) 62 erhält den Befehl vom Pufferregister 60, und falls der Befehl ein Fliesskomma-Befehl ist, wird er mit Hilfe des Totspeichers 63 dekodiert, um die nächste Mikroprogramm-Adresse des Steuerspeichers 20 zu erhalten. Falls der Befehl kein Fliess-komma-Befehl ist, wird das Dekodieren durch den Totspeicher 63 keine Mikroprogramm-Adresse liefern. Die Adresse wird über eine geeignete Mikroadress-Wahlschaltung 64 in passender Weise dem Steuerspeicher 20 zugeführt. Daraufhin liefert letzterer das geeignete Steuerprogramm für Mikrobefehle, welches notwendig ist, um über den Steuerpufferregister 21 das entsprechende Fliesskomma-Mikroprogramm durchzuführen.
Es führt der Totspeicher 61 dasselbe Dekodieren von Befehlen des Befehlspuffers 60 durch, wie der Totspeicher 63. Es kann die dekodierte Adresse aus dem Totspeicher 61 ausgewählt werden, wenn ein Fliesskomma-Befehl empfangen worden ist, bevor die Durchführung eines vorangehenden Fliesskomma-Befehls beendet ist. Um die nächste dekodierte Adresse zu erhalten, und die Ausführung des nächsten mikro-programmierten Befehls schneller in Angriff zu nehmen, als der Fall wäre, wenn der Befehl nach FPIR 62, und von dort zum dekodierenden Totspeicher 63 geleitet würde, kann der Befehl in den dekodierenden Totspeicher eingetaktet und aus diesem ausgetaktet werden, wodurch ein Zeitgewinn von einem Mikrozyklus entsteht.
Es wird die Auswahlschaltung 64 für Mikroadressen verwendet, um die «nächste Adresse» aus der Dekodierung des Totspeichers 63 oder des Totspeichers 61 auszuwählen und diese Schaltung kann auch verwendet werden, um das «wahre Adressfeld», das «falsche Adressfeld» oder passende Prüfbedingungen auszusuchen.
Zusammenfassend kann gesagt werden, dass die Befehlsund Dekodierschaltungen die notwendigen Steuersignale zur Durchführung eines Fliesskomma-Befehles liefern, und zwar mittels von im Steuerspeicher 20 gespeicherter Software. Daher können die Operationen wie geschildert durch die Exponenten- und Mantissenschaltungen wie beschrieben durchgeführt werden, wobei der besondere Vorteil der Mantissenanordnung darin besteht, dass eine Multiplikation durch ein 4-Bit-Multiplikationsverfahren ausgeführt werden kann, anstatt beispielsweise durch die Einzelbit-Multiplikation, welche etwa bei der Anordnung obgenannten kanadischen Patentes verwendet wird.
6
5
10
15
20
25
30
35
40
45
50
55
G
9 Blatt Zeichnungen

Claims (9)

  1. 644 461
    2
    PATENTANSPRÜCHE
    1. Digitale Multipliziereinrichtung zum Multiplizieren zweier digital dargestellter Werte, gekennzeichnet durch:
    - Mittel (41) zur Bildung eines einen ersten dieser Werte darstellenden ersten Wortes,
    - Mittel (41) zur Bildung eines einen zweiten dieser Werte darstellenden zweiten Wortes,
    - Mittel (45) zur Bildung aufeinanderfolgender Gruppen von Bits des zweiten Wortes,
    - logische Steuermittel (44), welche in Abhängigkeit der aufeinanderfolgenden Bit-Gruppen eine Sequenz von Multiplikations-Steuersignalen bilden,
    - Verschiebungsmittel (47), um nacheinander die Bits des ersten Wortes um eine erste Anzahl von Stellungen zu verschieben, so dass ein erstes verschobenes Wort entsteht, und um sie um eine zweite Anzahl von Stellungen zu verschieben, so dass ein zweites verschobenes Wort entsteht, wobei die Wahl der ersten und zweiten Anzahl nacheinander durch aufeinanderfolgende Multiplikations-Steuersignale gesteuert wird,
    - erste, auf das erste und zweite verschobene Wort ansprechende Kombinationsmittel (46) zum Erzeugen von aufeinanderfolgenden Teilprodukten des ersten Wortes mit den aufeinanderfolgenden Bit-Gruppen des zweiten Wortes,
    - zweite, auf die aufeinanderfolgenden Teilprodukte ansprechende Kombinationsmittel (49), um daraus eine Folge von Partialsummen zu bilden, wobei die endgültige Summe aller aufeinanderfolgenden Teilprodukte ein Resultatwort darstellt, welches das endgültige Produkt jener zwei Werte darstellt.
  2. 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die aufeinanderfolgenden Bit-Gruppen des zweiten Wortes je vier Bits umfassen.
  3. 3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, dass die Verschiebungsmittel folgende Teile aufweisen:
    - eine erste multiplexierte Schiebeschaltung (47A, 47B) mit einer ersten und zweiten Verschiebungseinheit, um bei Anregung das erste Wort um eine erste, respektive eine zweite, gewählte Anzahl von Stellungen zu verschieben,
    - eine zweite multiplexierte Schiebeschaltung (47C, 47D) mit einer dritten und vierten Verschiebungseinheit, um bei Anregung das erste Wort um eine dritte, respektive, eine vierte, gewählte Anzahl von Stellungen zu verschieben.
  4. 4. Einrichtung nach Anspruch 3, dadurch gekennzeichnet, dass die logischen Steuermittel Steuersignale erzeugen, um wahlweise die erste oder zweite multiplexierte Steuerschaltung zu aktivieren, und um bei Anregung das erste Wort in der ersten Schiebeschaltung wahlweise um die erste oder zweite Anzahl von Bit-Stellungen zu verschieben, und um es in der zweiten Schiebeschaltung wahlweise um die dritte oder vierte Anzahl von Bit-Stellungen zu verschieben.
  5. 5. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, dass beide Wörter hexadezimal dargestellt sind, und dass die erste, zweite, dritte und vierte Anzahl von Bit-Stellungen 0, 1, 2 und 3 sind, und somit eine Multiplikation des Wortes mit 1, 2,4 und 8 darstellen.
  6. 6. Einrichtung nach Anspruch 1, gekennzeichnet durch ein vom Ausgangssignal der ersten Kombinationsmittel abhängiges Register (48), um die aufeinanderfolgenden Teilprodukte festzuhalten und sie den zweiten Kombinationsmitteln zu liefern.
  7. 7. Einrichtung nach Anspruch 6, gekennzeichnet durch ein vom Ausgangssignal der zweiten Kombinationsmittel abhängiges Schlussregister (51), um die aufeinanderfolgenden Partialsummen festzuhalten und sie dem Eingang der zweiten Kombinationsmittel zuzuführen, wobei das Schlussregister auch das Resultatwort festhält.
  8. 8. Einrichtung nach Anspruch 7, gekennzeichnet durch
    Mittel (50), um beim Auftreten jeder aufeinanderfolgenden Partialsumme das Ausgangssignal der zweiten Kombinationsmittel zu verschieben und das verschobene Signal dem Schlussregister zuzuführen.
  9. 9. Verwendung der Einrichtung nach Anspruch 1 im Fliesskommateil (14) des Rechenwerkes einer Datenverarbeitungsanlage, welcher Teil eine Exponentenverarbeitungs-Ein-heit (17) und eine Mantissenverarbeitungs-Einheit (18) aufweist, dadurch gekennzeichnet, dass die Multipliziereinrichtung auf zwei Mantissenwerte einwirkt, um ihr Produkt zu bilden.
CH67479A 1978-01-23 1979-01-23 Digitale multipliziereinrichtung. CH644461A5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/871,616 US4208722A (en) 1978-01-23 1978-01-23 Floating point data processing system

Publications (1)

Publication Number Publication Date
CH644461A5 true CH644461A5 (de) 1984-07-31

Family

ID=25357786

Family Applications (1)

Application Number Title Priority Date Filing Date
CH67479A CH644461A5 (de) 1978-01-23 1979-01-23 Digitale multipliziereinrichtung.

Country Status (13)

Country Link
US (1) US4208722A (de)
JP (1) JPS54151338A (de)
AU (1) AU525817B2 (de)
BR (1) BR7900409A (de)
CA (1) CA1103806A (de)
CH (1) CH644461A5 (de)
DE (1) DE2902496A1 (de)
DK (1) DK3779A (de)
FR (1) FR2415337B1 (de)
GB (1) GB2013007B (de)
IT (1) IT1110999B (de)
NL (1) NL7900440A (de)
SE (1) SE432027B (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4295203A (en) * 1979-11-09 1981-10-13 Honeywell Information Systems Inc. Automatic rounding of floating point operands
US4334284A (en) * 1979-12-31 1982-06-08 Sperry Corporation Multiplier decoding using parallel MQ register
US4468748A (en) * 1981-06-11 1984-08-28 Data General Corporation Floating point computation unit having means for rounding the floating point computation result
GB2115190B (en) * 1982-02-10 1985-11-20 Singer Co Data word normalisation
US4488252A (en) * 1982-02-22 1984-12-11 Raytheon Company Floating point addition architecture
US4509116A (en) * 1982-04-21 1985-04-02 Digital Equipment Corporation Special instruction processing unit for data processing system
US4507676A (en) * 1982-10-28 1985-03-26 Rca Corporation Digital matrixing system
US4594679A (en) * 1983-07-21 1986-06-10 International Business Machines Corporation High speed hardware multiplier for fixed floating point operands
US4755962A (en) * 1984-10-30 1988-07-05 Fairchild Camera And Instrument Microprocessor having multiplication circuitry implementing a modified Booth algorithm
US4758972A (en) * 1986-06-02 1988-07-19 Raytheon Company Precision rounding in a floating point arithmetic unit
US4800517A (en) * 1986-07-30 1989-01-24 Advanced Micro Devices, Inc. Word-sliced signal processor
US4905178A (en) * 1986-09-19 1990-02-27 Performance Semiconductor Corporation Fast shifter method and structure
US5099446A (en) * 1987-04-28 1992-03-24 Fujitsu Ten Limited Data transfer apparatus and data transfer system
US5646877A (en) * 1995-05-25 1997-07-08 Texas Instruments Incorporated High radix multiplier architecture
US5771186A (en) * 1995-06-07 1998-06-23 International Business Machines System and method for multiplying in a data processing system
US8185723B2 (en) * 2001-07-13 2012-05-22 Intel Corporation Method and apparatus to extract integer and fractional components from floating-point data
US7167885B2 (en) * 2002-03-22 2007-01-23 Intel Corporation Emod a fast modulus calculation for computer systems
US7296049B2 (en) * 2002-03-22 2007-11-13 Intel Corporation Fast multiplication circuits
US8017172B2 (en) 2005-08-25 2011-09-13 Conagra Foods Food Ingredients Company, Inc. Whole grain flour and products including same
EP1710690A1 (de) * 2005-04-07 2006-10-11 STMicroelectronics (Research & Development) Limited Multiplizierschaltung
JP4645519B2 (ja) * 2006-04-27 2011-03-09 株式会社デンソー 演算処理装置,制御装置およびプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3366780A (en) * 1965-11-29 1968-01-30 Ibm Shift multiplier
US3515344A (en) * 1966-08-31 1970-06-02 Ibm Apparatus for accumulating the sum of a plurality of operands
US3730425A (en) * 1971-05-03 1973-05-01 Honeywell Inf Systems Binary two{40 s complement multiplier processing two multiplier bits per cycle
US3871578A (en) * 1972-10-10 1975-03-18 Digital Equipment Corp Data processing system for multiplying and intergerizing floating point numbers

Also Published As

Publication number Publication date
GB2013007A (en) 1979-08-01
AU525817B2 (en) 1982-12-02
NL7900440A (nl) 1979-07-25
FR2415337B1 (fr) 1987-03-20
FR2415337A1 (fr) 1979-08-17
CA1103806A (en) 1981-06-23
JPS54151338A (en) 1979-11-28
SE7900137L (sv) 1979-07-24
BR7900409A (pt) 1979-08-21
IT1110999B (it) 1986-01-13
DK3779A (da) 1979-07-24
SE432027B (sv) 1984-03-12
US4208722A (en) 1980-06-17
IT7919548A0 (it) 1979-01-23
GB2013007B (en) 1982-05-19
AU4322579A (en) 1979-08-02
DE2902496A1 (de) 1979-07-26

Similar Documents

Publication Publication Date Title
CH644461A5 (de) Digitale multipliziereinrichtung.
DE2724125C2 (de)
DE19540102C2 (de) Verfahren und Gleitkomma-Recheneinheit mit einer Logik für eine Vierfach-Präzisions-Arithmetik
DE2542740C2 (de) Datenverarbeitungsanlage mit einer Mikroprogrammsteuerung
DE2542751C2 (de) Datenverarbeitungsanlage
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1181461B (de) Adressenaddierwerk einer programm-gesteuerten Rechenmaschine
EP0010185B1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE1178623B (de) Programmgesteuerte datenverarbeitende Maschine
DE2735814A1 (de) Datenverarbeitungseinrichtung
DE1942005B2 (de) Datenverarbeitungsanlage zur aufnahme und abgabe von digitalen daten und zur ausfuehrung von operationen an den daten
DE2855722A1 (de) Einrichtung zur berechnung von produktsummen
DE2830334C2 (de)
DE2612750A1 (de) Multipliziereinrichtung
DE19635114A1 (de) Multiplizierer
DE2952072C2 (de) Rechenschaltung zum Addieren oder Subtrahieren binär codierter Dezimalzahlen
DE1184122B (de) Addiervorrichtung
DE2952163A1 (de) Dv-anlage mit zwei datenprozessoren
DE1549449A1 (de) Einrichtung zur Verarbeitung von Gleitkommazahlen
DE1934441C3 (de) Befehlswerkgesteuertes Rechenwerk für einen Digitalrechner
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
EP0416153B1 (de) Verfahren für Datenverarbeitungsanlagen zur Division von, zu Beginn jeweils normalisierten, beliebig langen Operanden und Divisionswerk zur Durchführung des Verfahrens
DE1181948B (de) Elektronische Datenverarbeitungsmaschine
DE2501985A1 (de) Mit gleitkomma arbeitender rechenmechanismus

Legal Events

Date Code Title Description
PL Patent ceased