DE2636028A1 - Digitaler multiplizierer - Google Patents

Digitaler multiplizierer

Info

Publication number
DE2636028A1
DE2636028A1 DE19762636028 DE2636028A DE2636028A1 DE 2636028 A1 DE2636028 A1 DE 2636028A1 DE 19762636028 DE19762636028 DE 19762636028 DE 2636028 A DE2636028 A DE 2636028A DE 2636028 A1 DE2636028 A1 DE 2636028A1
Authority
DE
Germany
Prior art keywords
adder
input
word
multiplier
conductor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19762636028
Other languages
English (en)
Inventor
Michael John Gingell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Standard Electric Corp
Original Assignee
International Standard Electric 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 International Standard Electric Corp filed Critical International Standard Electric Corp
Publication of DE2636028A1 publication Critical patent/DE2636028A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/04Recursive filters
    • 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/544Methods 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 for evaluating functions by calculation
    • G06F7/5443Sum of products
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49921Saturation, i.e. clipping the result to a minimum or maximum value

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Complex Calculations (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Description

Patentanwalt ο η ο c η
Dipl.-PhyS.Leo Thul Zb 0 0 U
Kurze Straße 8
7 Stuttgart 30
M.J.Gingell-13
INTERNATIONAL STANDARD ELECTRTC CORPORATION, NEW YORK
DIGITALER MULTIPLIZIERER
Die Erfindung betrifft einen digitalen Multiplizierer,
insbesondere für digitale Filter, mit einem Addierer und einem Akkumulator, in dem die Ausgangssignale des Addierers gespeichert und bei jeder Addition um ein Bit verschoben werden.
Stand der Technik
Es handelt sich um einen "Addier- und Verschiebe-Multiplizlerer", der sich beispielsweise in digitalen Filtern für Nachrichtenübertragungssysteme verwenden läßt.
Der Addierer enthält mehrere Zellen, je eine für ein Bit eines Digitalwortes. Jede Zelle hat zwei Eingänge für die beiden Summanden, den Addenden und den Augenden, und
Ausgänge für die Summe und den Übertrag. Eine sogenannte "Volladdierer-Zelle" hat dazu noch einen dritten Eingang für den Übertrag aus der Zelle mit demnächstniedrigeren Stellenwert.
CS/P-Kg/Scho
5.8.1976
709810/1008
M.J.Gingell-13
Bei einem bekannten Multiplizierer, der einen parallelen Koeffizienten B mit einem ankommenden seriellen Datenwort C multiplizieren soll, um das Produkt A=B.C im Akkumulator zu bilden, wird der Multiplikand B in paralleler Form während der Dauer des Wortes C an eine Anzahl von UND-Schaltungen angelegt.
Jedes Bit des Wortes C wird, beginnend mit dem niedrigstwertigen Bit, allen UND-Schaltungen zugeführt. Wenn ein Bit des Wortes C eine "1" ist, so wird der Multiplikand B zum Akkumulatorinhalt addiert,und der Inhalt des Akkumulators wird nach rechts geschoben, bevor das nächste Bit des Wortes C den UND-Schaltungen zugeführt wird. Wenn das Bit 11O" istrwird nichts addiert. Dies wird fortgesetzt, bis alle Bits des Wortes C den UND-Schaltuncren zugeführt sind und die Multiplikation damit abgeschlossen ist. Das Produkt A steht nun im Akkumulator und läßt sich, wie verlangt, mit verschiedenen bekannten Verfahren ausspeichern.
Negative Zahlen lassen sich mit einfachen Abwandluncren verarbeiten. Wenn die Daten beispielsweise im Zweier-Komplement vorliegen, hat das höchstwertige Bit ein negatives Gewicht, und nur bei diesem Bit wird der Multiplikand B vom Akkumulatorinhalt subtrahiert statt zu ihm addiert.
In digitalen Filtern wird ein digital codiertes abgetastetes Signal dadurch gefiltert, daß verschiedene verzögerte Kopien des Signals, mit verschiedenen geeigneten Koeffizienten gewichtet, miteinander kombiniert werden. In einem digitalen Filter muß also im allgemeinen ein Wert der Form
P = (D1.E1) + (D2.E2) + D3.E3) + ... (Dn.En) berechnet werden. D1, D2 usw. sind dabei serielle Datenwörter r und E1, E2 usw. sind die Wichtungskoeffizienten.
709810/1008
M.J.Gingel1-13
Mit dem oben beschriebenen einfachen Multiplizierer kann eine solche Rechnung nur in der folgenden Weise durchgeführt werden. Zunächst erfolgt die Multiplikation D1 .El, dann wird das Ergebnis gespeichert und der in paralleler Form den UND-Schaltungen zugeführte Koeffizient E geändert. Darauf erfolgt die nächste Multiplikation D2.E2, und deren Ergebnis wird zum vorher gespeicherten Produkt D1.E1 addiert und die Summe gespeichert. Dieser Vorgang wird sooft wie nötig wiederholt. Dabei ist der Wert P erst nach η Wortperioden berechnet.
Aufgabe
Es ist die Aufgabe der Erfindung, einen Multiplizierer der eingangs genannten Art anzugeben, der innerhalb einer einzigen Wortperiode η gleichzeitig eingegebene serielle Datenwörter gleichzeitig mit vorgegebenen Koeffizienten multipliziert und die Summe der Produkte liefert.
Lösung
Die Aufgabe wird mit den im Patentanspruch 1 angesehenen Mitteln gelöst. Weiterbildungen ergeben sich aus den Unteransprüchen.
Beschreibung
Die Erfindung wird nun anhand der Zeichnungen beispielsweise näher erläutert.
Es zeigt:
Fig.1 ein Blockschaltbild eines einfachen erfindungsgemäßen digitalen Multiplizierers mit einem einzigen Volladdierer und einem einzigen Akkumulator und mit einer einfachen Eingabematrix;
709810/100 8
M.J.Gingell-13
Fig.2 ein Blockschaltbild des Multiplizierers nach Fig.1 mit einer erweiterten Eingabematrix;
Fig.3 ein Blockschaltbild eines digitalen Filters, dessen digitaler Multiplizierer einen Akkumulator und ein Schieberegister und Mittel zur überlauferkennung hat;
Fig.4 ein Blockschaltbild einer weiteren Abwandlung des Multiplizierers nach Fig.1 mit einem zweiten Volladdierer und mit einer erweiterten Eingabematrix;
Fig.5 ein Blockschaltbild eines vollständigen digitalen Multiplizierers zur Verarbeitung von im Zweierkomplement vorliegenden Daten, bei dem bei der Addition der übertrag gespeichert wird (carry-save) und getrennte Summen- und Übertragsakkumulatoren und getrennte Summen- und übertragsschiebereoister vorgesehen sind.
Der in Fig.1 gezeigte einfache Multiplizierer hat einen aus sechs "Volladdierer"-Zellen aufgebauten sechsstufigen Addierer ADD, bei dem der übertrag jeder Zelle der Zelle mit dem nächstniedrigeren Stellenwert zuaeführt wird. Ein siebenstufiger Akkumulator ACC übernimmt in seine Stufen AO bis A5 die Summen-Ausgangssianale Σ0 ... Σ5 der AddiererzeIlen. Die höchstwertige Stufe A6 des Akkumulators übernimmt den übertrag C6 aus der höchstwertigen
7098 10/1008
M.J.Gingell-13
Addiererzelle. Der Inhalt jeder der Akkumulatorstufen A6 .·.. A1 wird mit der Bitgeschwindigkeit der Eingangsdaten auf einen Eingang der jeweils nächstniedrigerwertigen AddiererzeIlen zurückgeführt, und das Ausgangssignal des Multiplizierers wird seriell der Akkumulatorstufe AO entnommen. Jede Zelle des Addierers hat zusätzlich zum Übertrags- und Rückführeingang (für den Augenden) einen Dateneingang (für den Addenden). über eine Eingabematrix gelangen serielle Datenwörter D1 und D2 gleichzeitig auf verschiedene Dateneingänge des Addierers. Es sei angenommen, daß die Rechnung
P = g D1 + ξ D2 ausgeführt werden soll.
I und I sind dabei feste Koeffizienten. Der erste Teil der Rechnung, die Multiplikation von D1 mit |, läßt sich in zwei Schritten durchführen:
§ Df- J D1 + J.D1.
Zur Multiplikation von D1 mit ^ wird D1 einfach um eine Bitposition nach rechts verschoben, und zur Multiplikation mit s um 3 Bitpositionen. Falls dem Eingang 15 der höchstwertigen Addiererzelle ein Wichtungskoeffizient von 1, d.h. 2°, zugeschrieben wird, so wird D1 dadurch mit ^ multipliziert, daß es dem Eingang 14 zugeführt wird, der ein Gewicht von i oder 2 hat. Die Multiplikation von D1 mit g geschieht durch Eingabe von Di am Einaang 12, der ein Gewicht von
1 —3
* oder 2 hat. Wenn Di gleichzeitig auf diese Eineränge 14 und 12 gelangt, so erhält der Akkumulator das Ergebnis
J D1 + J D1 = § D1. In ähnlicher Weise wird oleichzeitig
2 8 ö
7098 10/10 08
M.H.Gingell-13
D2 dem Eingang 13 eingegeben, sodaß sich im Akkumulator das Ergebnis P der gesamten Rechnung ergibt.
Die Rechenmöglichkeiten der einfachen Anordnung nach Pig.1 sind in der Praxis eng begrenzt. Eine größere Flexibilität läßt sich durch eine Ternärkodierung der Koeffizienten erreichen. Angenommen, es sei die Rechnung P = ξ Dt + .j-gD2 - 1 D3 durchzuführen.
Dies ist möglich, wenn die Koeffizienten folgendermaßen kodiert werden:
§= ΐοοΤοο = 1
8
010010 = 1
16
1 _
-4
00T000 =
» 1 -
•1 +
•-J
Dabei bedeutet 1, daß dieses Bit ein negatives Gewicht hat. Die Rechnung läßt sich mit der in Fig.2 gezeigten Anordnung durchführen. Der Addierer und der Akkumulator sind gleich den in Fig.1 gezeigten, nur die Eingabematrix ist erweitert. Zu jedem Zeilenleiter (Fig.1) gibt es hier einen weiteren Zeilenleiter, über den das Eingangsdatenwort auch in invertierter Form dem geeigneten Eingang des Addierers zugeführt werden kann.
Das Datenwort D1 gelangt direkt auf den Eingang 15 und über den Inverter INV in komplementierter Form auf den Eingang 12. Diesbedeutet, daß in Wirklichkeit die negativen Gewichte der ternär dargestellten Koeffizienten durch Umkehrung des Vorzeichens der Daten realisiert sind. Es
709810/100
M.J.Gingell-13
wird also § D1 = (1-|) D1 als 1.D1 + | .(-D1) behandelt. D2 und D3 werden in ähnlicher Weise über die Eingabematrix dem Addierer eingegeben. Auch hier ist es wichtig zu betonen, daß einem Addierereingang jeweils nur ein Datenwort, entweder direkt oder invertiert, zugeführt wird.
Für Fälle, in denen verschiedene Koeffizienten, die als Datenworte betrachtet werden können, an den gleichen Stellen von Null verschiedene Bits haben, läßt sich durch die Verwendung von Serienaddierern mehr Flexibilität erreichen, auch wenn die Koeffizienten in ternärer Form dargestellt werden. In anderen Worten, in solchen Fällen müssen mehrere ankommende Datenwörter derselben Addiererzelle zugeführt werden. Beispielsweise sei die Rechnung
P = (D1.E1) + (D2.E2) + (D3.E3) + (D4.E4) + (D5.E5) betrachtet, wobei die Koeffizienten die nachstehend als Brüche und in ternärer Darstellung aufgeführten Werte haben.
Wert Ternärform
E1 136/256
E2
E3 -2^6
E4 2 /f28
E5 -103/256
OOO1OOO1OOO 01 IoToTooTo TOIOOTOOIOO 0100Ϊ00 00Ϊ0 000Τ0Ι0Τ00Ι
Gewicht des Eingangs 4 2 1 2481632 64128256
In fast jeder Spalte gibt es mehrere von Null verschiedene Bits, jedoch nirgends mehr als zwei. Die Rechnung läßt sich
709810/1008
M.J.Gingell-13
in der Weise durchführen, daß jeweils zwei Datenwörter, die mit einem Bit desselben Stellenwertes zu multiplizieren sind, addiert werden. In diesem Fall wird wie folgt gerechnet:
P = 22(-D3) + 21(D2+D4) + 2°(D2+D3) + 2~1(-D5+D1) + 2~2(-D3-D2) + 2~3(D5-D3) + 2~4(-D2) + 2~5(-D5+Di) +2~6(D3) + 2"7(-D2-D4) + 2~8(D5).
Eine Anordnung zur Durchführung dieser Rechnuna zeigt Fig.3. Dabei handelt es sich um ein rekursives digitales Filter vierten Grades, dessen einziges Eingangswort D1 ist und dessen Wörter D2 bis D5 vom Ausgancrssignal des Multiplizierers abgeleitet werden. D2 ist das Ausgangsdatenwort, und D3 bis DS sind aufeinanderfolgend verzöoerte Versionen davon. Die Verzögerung beträgt dabei jeweils eine Wortneriode. Der Eingang 110 mit dem Gewicht 2 empfänat das Wort D3 über einen Inverter. Der Eingang 19 (Gewicht 2 ) empfängt die serielle Summe der in einer Serienaddiererzelle 30 addierten Wörter D2 und D4. Der Eingang T8 (Gewicht 2°) empfängt die serielle Summe der in einer Serienaddiererzelle 31 addierten Wörter D2 und D3 usw.
Um ein überlaufen der Serienaddiererzellen zu verhindern, müssen die Daten auf die Hälfte des vollen Bereichs beschränkt werden, so daß nach einer Addition zweier beliebiger Wörter die Summe noch innerhalb des vollen Bereichs bleibt.
Das in Fig.3 gezeigte Filter ist dafür ausgelegt, mit sogenannten "Offset-Binärdaten" zu arbeiten. Bei solchen Daten beträgt der Wert eines N-Bit-Wortes:
709810/100 8
M.j.Gingell-13
D=Z 2~r+1 (2B..-1),
r=1
wobei das r-te Bit Bj. gleich O oder 1 ist. Somit ist der gewichtete Wert dieses Bits entweder -2 oder +2 . Die Vorzeichenumkehr, d.h. die Multiplikation mit -1, geschieht durch Komplementbildung (Invertieren) der Datenbits.
In einem digitalen Filter kann das Ausgangssignal bisweilen den erlaubten Datenbereich überschreiten, so daß für diesen Fall ein tiberlauf schutz vorgesehen werden muß. Dies läßt sich folgendermaßen erklären. Wenn die Multiplikation beginnt, beginnen die niedrigstwertigen Bits des Ergebnisses, den niedrigstwertigen Addiererausgang zu verlassen. Nach Ablauf der Multiplikationsperiode stehen die verbleibenden höchstwertigen Bits im Akkumulator £0 bis £10 und müssen in ein Schieberegister Ti bis Tn übertragen werden, so daß der Akkumulator für den Beginn einer neuen Multiplikation geleert werden kann. Während der Multplizierer an dieser neuen Multiplikation arbeitet, werden die Bits im Schieberegister aus diesem herausgeschoben, um das"vorhergehende Ergebnis zu vervollständigen. Wenn die Festpunktarithmetik verwendet wird, ist es im allgemeinen jedoch notwendig, das maximale Ergebnis auf den Bereich zu beschränken, der durch das Datenformat ausdrückbar ist. In digitalen Filtern, besonders in rekursiven digitalen Filtern, kann das Ergebnis den verfügbaren Datenbereich überschreiten, so daß ein unerwünschter überlauf und damit Instabilitäten möglich sind, falls die wenigen höchstwertigen Bits des Ergebnisses einfach fallengelassen werden. Wenn jedoch diese Bits gespeichert werden und das Ergebnis geprüft wird, um zu sehen, ob der erlaubte Bereich überschritten worden ist, so kann der MuI-
7 0 9810/1008
M.J.GinCTell-13
tiplizierer so gebaut werden, daß er ein maximales positives oder negatives Ergebnis abgibt. Dies geschieht in der Anordnung nach Fig.3 dadurch, daß die Zustände der Bits T8 bis T11 geprüft werden, um festzustellen, ob ein Oberlauf auftreten wird, wenn die Bits T8 bis T11 fallengelassen werden, und daß mit dem Ergebnis das Ausganoswort des Multiplizierers in einer Überlaufkorrekturschaltung korrigiert wird. Wenn kein Überlauf auftritt, so kann das normale Ausgangswort herausgegeben werden, wenn jedoch ein Überlauf aufgetreten ist; so wird gemäß dem Vorzeichen ein maximales positives oder negatives Datensignal als vollständiges Ergebnis herausgegeben.
Eine andere Möglichkeit, den in Fig.1 und 2 gezeigten einfachen Multiplizierer flexibler zu machen, besteht darin, mehrere Eingänge pro Stufe des Multiplizierers vorzusehen und dazu eine zweite Reihe von Paralleladdiererzellen zu verwenden. Wenn d±e ternär dargestellten Koeffizienten im selben Stellenwert mehrere von Null verschiedene Bits haben, können die Daten über verschiedene Eingänge eingegeben werden, ohne daß sie vorher addiert zu werden brauchen. Somit braucht auch ihre Größe nicht vorher beschränkt zu werden. Eine solche Anordnung zeigt Fig.4.
Der eigentliche Multiplizierer unterscheidet sich von dem in den bisher beschriebenen Figuren gezeigten dadurch, daß eine zusätzliche Reihe von Addiererzellen ADD 2 vorgesehen ist, die der ersten Reihe ADD1 vorgeschaltet ist. Es sei betont, daß die Reihe ADD1 eine Zelle mehr als die Reihe ADD2 haben muß. Die Eingabematrix liefert die Einaangs-
709810/1008
M.J.Gingell-13
Wörter an die Zellen der Reihe ADD2.
Es sei die Rechnung
P = g D1 - I D2 + I D3 betrachtet.
Die Leitermatrix zur Eingabe der Eingangsdatenwörter in vorbestimmte Eingänge des Multiplizierers stellt eine flexible Anordnung dar. Für jedes Eingangsdatenwort sind zwei Zeilenleiter vorgesehen, über den einen läßt sich das Datenwort direkt und über den anderen nach Durchlaufen eines Vorzeichenumkehrers (Invertierer) INV in invertierter Form den Eingängen zuführen. Durch Verbindung der Zeilenleiter mit den die Eingangsleitungen der Addiererzellen bildenden Spaltenleitern an den geeigneten Kreuzungspunkten lassen sich also positive oder negative Daten eingeben und somit die ternär dargestellten Koeffizienten realisieren. Mit dieser Anordnung läßt sich jede Form von binärkodierten Daten verarbeiten, wie z.B. die normale Binärforir, die Zweier-Komplement-Binärform, die Binärform mit der Basis -2 usw., vorausgesetzt, daß die Logik der Vorzeichenumkehr und der Addierer der jeweiligen Kodierung angepaßt ist. Verschiedene Kodes lassen sich ineinander umwandeln, indem man geeignete Umwandlungskonstanten an freie Eingänge anlegt und die Polarität der Datenbits umkehrt, wo es notvrendig ist.
Bei der gezeigten Anordnung sind die übertragseingänoe der niedrigstwertigen Addiererzellen geerdet. Pie lassen sich aber verwenden als:
a) zusätzliche Dateneingänge;
7 0 9 810/1008
M.J.Gingell-13
b) zur Eingabe eines Rundungssignals
c) zur automatischen Löschung des Akkumulators.
Die Verwendung gemäß diesem letzten Punkt kann den Schaltungs· aufwand und die Verarbeitungszeiten des Multiplizierers beträchtlich vereinfachen, da dadurch auf zusätzliche Löschelemente jeder Akumulatorzelle verzichtet werden kann.
Im Folgenden wird eine abgewandelte Form des Multiplizierers nach Fig.4 beschrieben. Diese enthält Addierer, die den übertrag speichern (carry-save adder), an Stelle von normalen Addierern, die den übertrag sofort verarbeiten (ripple through carry) oder Addierern, die den übertrag vorausbestimmen (look-ahead carry) . Addierer, die den übertrag speichern (carry-save adder), sind deshalb vorteilhaft, weil sie die Probleme der Laufzeitverzögerungen logischer Signale gering halten.
Die Fig.5 zeigt einen vollständigen Multiplizierer, der die Zweier-Komplement-Arithmetik und die Addition mit übertragsspeicherung (carey-save-addition) verwendet. Diese Form erlaubt zwei Eingänge pro Bit. Diese Zahl der Eingänge kann jedoch durch weitere Reihen von normalen Addierern oder Addierern mit übertragsspeicherung (carry-save) noch erhöht werden. Die Eingangsdatenwörter werden den Addierereingängen über die bereits beschriebene Eingabematrix zugeführt. Die Multiplikation der Daten mit -1 erfolgt durch Invertieren (Komplementieren) der Datenbits. Dies ist nicht ganz crenau bei Daten im Zweier-Komplement, da es einen Fehler im
709810/1008
M.J.Gingell-13
niedrigstwertigen Bit bewirkt. Dadurch entsteht im Ergebnis ein konstanter kleiner Fehler. In Fällen, in denen es auf diese Genauigkeit ankommt, können die Inverter durch Schaltkreise ersetzt werden, die exakt von null subtrahieren, oder es kann einem freien Dateneingang ein Kompensationssignal zugeführt werden. Jede Zelle des Addierers mit Übertragsspeicherung (carry-save adder) ist ein normaler Volladdierer mit drei Eingängen jeweils vom Wert 1, einem Pseudosummenausgang vom Wert 1 und einem ftbertragsausgang vom Wert Die Zellen der unteren Reihe haben zvrei Dateneingänge und einen Eingang für die über einen Akkumulator rückgeführte Summe. Die Zellen der oberen Reihe erhalten die Summe aus der ersten Reihe, den um ein Bit nach links verschobenen übertrag (links weil Wert = 2), und den über einen Akkumulator zurückgeführten eigenen Obertrag. Die Ausgamrsbits der Zellen der oberen Reihe werden in Summenakkumulatoren AO bis A6 und in übertragsakkumulatoren BO bis B7 geladen. Beim Rückführen wird die Summe wie in den vorhergehenden Beispielen um ein Bit nach rechts verschoben.
Das Ergebnis der Multiplikation ist die Summe der Inhalte der Summen- und Ubertragsakkumulatoren r»lus den niedrigstwertigen Bits, die aus dem Ausgang der niedrigstwertigen Addiererzelle über eine Auswahlschaltung in eine Ausgangsverzögerungsstufe gelangt sind. Die Inhalte der Summen- und Ubertragsakkumulatoren werden in Summen- und übertrags-Schieberegister SO bis S6 bzw. CO bis C7 geladen und ausgeschoben, wobei die Summe und der übertrag in einem Ferienaddierer 50 addiert werden und das Ergebnis über die Ausgangsverzögerungsstufe 51 herausgegeben wird. Zu diesem
7098 1 0/1008
M.J.Gingell-13
Zeitpunkt kann eine neue Multiplikation beginnen. Da jedoch zu diesem Zeitpunkt die in den beiden Schieberegistern enthaltene Summe dieselbe ist wie die in den beiden Akkumulatoren enthaltene, ist es möglich, durch Rückführen der invertierten Summe des Serienaddierers 51 auf den Eingang der niedrigstwertigen Zelle des oberen Addierers, das alte Ergebnis zu löschen, ohne die Akkumulatorzellen AO bis A6 und BO bis B7 mit eigentlichen Löschvorrichtungen zu versehen. Zusätzliche Verbesserungen können dadurch erreicht werden, daß eine Oberlauferkennung und eine Oberlaufkorrektur erfolgen und daß das Ergebnis auf eine vorgegebene Anzahl von Bit. gerundet wird.
709810/100

Claims (4)

  1. M.J.Gingell-13
    Patentansprüche
    Digitaler Multiplizierer, insbesondere für digitale Filter, mit einem Addierer und einem Akkumulator, in dem die Ausgangssignale des Addierers gespeichert und bei jeder Addition um ein Bit verschoben werden, dadurch gekennzeichnet, daß zum gleichzeitigen Eingeben mehrerer serieller Datenwörter (D1, D2) in die Zellen des Addierers (ADD) eine Eingabematrix vorgesehen ist, über die jedes serielle Datenwort (D1, D2) einer oder gleichzeitig mehreren Addiererzellen zugeführt wird, wobei einer einzigen Addiererzelle nicht mehr als ein Datenwort gleichzeitig zugeführt wird.
  2. 2. Multiplizierer nach Anspruch 1, dadurch gekennzeichnet, daß die Eingabematrix für jeden Eingang des Addierers einen Spaltenleiter und für jedes serielle Eingangsdatenwort (D1, D2) einen Zeilenleiter hat, daß jeder Zeilenleiter entsprechend einem vorbestimmten Digitalwort mit den Spaltenleitern verbunden ist, wobei mit einem einzigen Spaltenleiter höchstens ein Zeilenleiter verbunden ist.
  3. 3. Multiplizierer nach Anspruch 2, dadurch gekennzeichnet, daß für eines oder mehrere serielle Eingangsdatenwörter (D1, D2, D3) jeweils ein weiterer Zeilenleiter vorgesehen ist, dem das serielle Eingangsdatenwort in komplementierter Form (über INV) zugeführt wird, und daß jeder weitere Zeilenleiter entsprechend einem vorbestimmten Digitalwort mit den Spaltenleitern verbunden ist, derart, daß mit einen einzigen Spaltenleiter höchstens ein Zeilenleiter verbunden ist (Fig. 2).
    709810/1008
    M. J.Gingell-13
  4. 4. Multiplizierer nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß dem Addierer (ADD1, Fig.4) ein zweiter Addierer (ADD2) vorgeschaltet ist, dessen Einaängen die seriellen Einganasdatenwörter (D1, D2, D3) über die Eingabematrix zuaeführt werden, daß die Eingabematrix für jede Zelle des zweiten Addierers (ADD2) zwei Spaltenleiter enthält, derart daß zwei gleichzeitig anliegende serielle Einaangsdatenwörter (D2, D3 bei 13) seriell addiert werden, daß die Summenausgangssignale des zweiten Addierers (ADD2) als parallele Eingangssignale dem ersten Addierer (ADD1) zugeführt werden und daß mit einem Spaltenleiter höchstens ein Zeilenleiter verbunden ist.
    7098 10/1008
DE19762636028 1975-08-27 1976-08-11 Digitaler multiplizierer Withdrawn DE2636028A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB3534575A GB1476603A (en) 1975-08-27 1975-08-27 Digital multipliers

Publications (1)

Publication Number Publication Date
DE2636028A1 true DE2636028A1 (de) 1977-03-10

Family

ID=10376698

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19762636028 Withdrawn DE2636028A1 (de) 1975-08-27 1976-08-11 Digitaler multiplizierer

Country Status (4)

Country Link
CA (1) CA1073113A (de)
DE (1) DE2636028A1 (de)
ES (1) ES451051A1 (de)
GB (1) GB1476603A (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2418579A2 (fr) * 1977-03-09 1979-09-21 Onera (Off Nat Aerospatiale) Filtre numerique recursif a coefficients en combinaison reduite de puissances de deux
EP0042452A1 (de) * 1980-06-24 1981-12-30 International Business Machines Corporation Signalprozessorrechneranordnung und Verfahren zum Betrieb der Anordnung
DE3200895A1 (de) * 1981-01-23 1982-08-12 Naamloze Vennootschap Philips' Gloeilampenfabrieken, 5621 Eindhoven Verfahren und vorrichtung zur schwaechung eines digitalen signals

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2609222B1 (fr) * 1986-09-25 1989-11-24 France Etat Procede et dispositif de linearisation par memoire morte de la fonction de transfert d'un quadripole, et application y relative
GB8703136D0 (en) * 1987-02-11 1987-03-18 Univ Cardiff Filtering electrical signals
FR2990781A1 (fr) 2012-05-15 2013-11-22 St Microelectronics Grenoble 2 Multiplieur serie numerique

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1222290B (de) * 1963-01-10 1966-08-04 Ibm Binaere Recheneinrichtung zur Bildung und Akkumulation von Produkten

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1222290B (de) * 1963-01-10 1966-08-04 Ibm Binaere Recheneinrichtung zur Bildung und Akkumulation von Produkten

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SCHECHER, Funktioneller Aufbau digitaler Rechenanlagen, Springer 1973, S. 52-54 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2418579A2 (fr) * 1977-03-09 1979-09-21 Onera (Off Nat Aerospatiale) Filtre numerique recursif a coefficients en combinaison reduite de puissances de deux
EP0042452A1 (de) * 1980-06-24 1981-12-30 International Business Machines Corporation Signalprozessorrechneranordnung und Verfahren zum Betrieb der Anordnung
DE3200895A1 (de) * 1981-01-23 1982-08-12 Naamloze Vennootschap Philips' Gloeilampenfabrieken, 5621 Eindhoven Verfahren und vorrichtung zur schwaechung eines digitalen signals

Also Published As

Publication number Publication date
GB1476603A (en) 1977-06-16
ES451051A1 (es) 1977-08-16
CA1073113A (en) 1980-03-04

Similar Documents

Publication Publication Date Title
DE2523860C3 (de) Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion
DE1956209C3 (de) Multipliziervorrichtung
EP0453582B1 (de) Medianfilter
DE3306306C2 (de)
DE2803425A1 (de) Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken
DE2628473B2 (de) Digitales Faltungsfilter
EP0149785B1 (de) Verfahren und Schaltungsanordnung zur Digitalsignalverarbeitung nach Art eines vorzugsweise adaptiven Transversalfilters
DE4403917A1 (de) Vorrichtung zum Berechnen einer Besetzungszählung
DE69029796T2 (de) Adressierprozessor für einen Signalprozessor
DE2063199B2 (de) Einrichtung zur Ausführung logischer Funktionen
DE3303269C2 (de)
DE1803222B2 (de) Verfahren zum zusammenfassen pulscodierter nachrichten
DE4019646C2 (de) Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung
DE2636028A1 (de) Digitaler multiplizierer
DE2848096C3 (de) Digitale Addieranordnung
DE3447634C2 (de)
DE2743575A1 (de) Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl
DE2017132A1 (de) Binarer Parallel Addierer
EP0489952B1 (de) Schaltungsanordnung zur digitalen Bit-seriellen Signalverarbeitung
EP0288783A2 (de) Anordnung zur DPCM-Codierung von Fernsehsignalen
EP0333884B1 (de) CMOS-Parallel-Serien-Multiplizierschaltung sowie deren Multiplizier- und Addierstufen
EP0264999A2 (de) System zum Übertragen oder Speichern von Eingangssignalen
DE69209826T2 (de) Schnelle Addierkette
EP0346751B1 (de) Anordnung zur DPCM-Codierung von Fernsehsignalen
DE4022381A1 (de) Verwendung langer digitalfilter bei vorkommnis von abrundungsfehlern

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8128 New person/name/address of the agent

Representative=s name: GRAF, G., DIPL.-ING., PAT.-ASS., 7000 STUTTGART

8139 Disposal/non-payment of the annual fee