DE4010735C2 - - Google Patents
Info
- Publication number
- DE4010735C2 DE4010735C2 DE4010735A DE4010735A DE4010735C2 DE 4010735 C2 DE4010735 C2 DE 4010735C2 DE 4010735 A DE4010735 A DE 4010735A DE 4010735 A DE4010735 A DE 4010735A DE 4010735 C2 DE4010735 C2 DE 4010735C2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- circuit
- input
- bits
- bit
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- 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/527—Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
- G06F7/5272—Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/3808—Details concerning the type of numbers or the way they are handled
- G06F2207/3852—Calculation with most significant digit first
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
- Amplitude Modulation (AREA)
- Analogue/Digital Conversion (AREA)
Description
Die vorliegende Erfindung betrifft eine digitale wertserielle
Multiplizierschaltung nach dem Oberbegriff des
Patentanspruchs 1, die z. B. aus der DE-AS 23 46 188
bekannt ist.
In digitalen Signalverarbeitungsanlagen ist es oft nötig,
eine ganze Zahl mit einer Bruchzahl zu multiplizieren. Die
Genauigkeit des Produkts wird dabei nicht besser als die
Genauigkeit der ganzen Zahl. Die Bitlänge des Produkts und
damit die Bitlänge der Multiplizierschaltung wird gleich der
Summe der Anzahl der Bits des Multiplikators und des Multi
plikanden. Das Produkt braucht jedoch im allgemeinen nicht
mit mehr Bits dargestellt zu werden als die Anzahl der Bits
des Multiplikanden plus eins.
Um die Schaltung der Verarbeitungseinrichtungen zu verein
fachen werden Bruchzahlen häufig in das Fließkommaformat
umgesetzt, um die Anzahl der erforderlichen Verbindungen zu
verringern. In diesem Falle werden die Rechnungen unter
Verwendung von nicht gebrochenen Zahlen durchgeführt und die
Resultate schließlich auf den richtigen Stellenwert gebracht
und auf die erforderliche Genauigkeit gekürzt. Ein Beispiel
einer solchen Schaltungsanordnung findet sich in digitalen
Fersehempfängerschaltungen zur Einstellung des Farbtones
oder der Farbart. Bei diesen Schaltungsanordnungen werden
Signalgrößen, welche Farbdifferenzsignale darstellen, mit
Korrekturfaktoren in Form von Sinus- und Kosinuswerten
multipliziert, um geeignete Farbvektoren zu erzeugen. Die
Bruchteilswerte, die die Sinusse und Kosinusse darstellen,
werden typischerweise durch Speicherschaltungen geliefert,
die so programmiert sind, daß sie die Sinusse und die Ko
sinusse multipliziert mit 2R liefern, wobei R gleich der
Anzahl der Bits ist, die für die Darstellung eines gebroche
nen oder nicht ganzzahligen Sinus oder Kosinus verwendet
würden. Die multiplizierten Sinusse und Kosinusse werden auf
diese Weise als ganze Zahlen geliefert, die dann in der
Korrekturschaltung verwendet werden. Man beachte jedoch, daß
wenn ein Bruchwert mit einer Genauigkeit von X Bits in Fließ
kommadarstellung gebracht wird, um eine ganze Zahl mit einer
Genauigkeit von X Bits zu multiplizieren, das Produkt vor
der Stellenjustierung und Kürzung eine Zahl mit 2X Bits sein
wird. Unabhängig davon, ob ein X-Bit-Bruchteilswert in Fließ
kommaform gebracht wird oder nicht, um eine ganze Zahl mit X
Bits zu multiplizieren, liefern typische Multiplizierschal
tungen Produkte mit 2X Bits.
Durch die vorliegende Erfindung soll ein Multiplizierschaltung
der eingangs
genannten Art geschaffen werden, welche ein richtig skaliertes
und gekürztes Produkt mit einer Genauigkeit liefert, die
gleich der der ganzen Zahl ist und dies unter Verwendung von
Schaltungsanordnungen, die einfacher sind als die typischer
bekannter Multiplizierschaltungen.
Gelöst wird dieses Problem durch die Merkmale des
Patentanspruchs 1. Ausgestaltungen sind den Unteransprüchen
zu entnehmen.
Gegenstand ist ein wortserieller Multiplizierer,
welcher eine erste Schleife enthält, die auf einen Lade-Puls
anspricht, um einen bitparallelen Multiplikator-Abtast- oder
Signalwert zu laden, und auf einen Systemtakt anspricht, um
die Bits des Multiplikator-Signalwertes in einer Folge vom
Bit der höchsten Stelle zum Bit der niedrigsten Stelle zu
letzt als Steuerpulse zu liefern.
Eine zweite Schleife, die auf die Lade-Pulse anspricht, lädt
einen bitparallelen Multiplikanden-Abtast- oder Signalwert
und liefert in Ansprache auf den Systemtakt eine Folge von
bitparallelen Sub- oder Teilwerten, die jeweils dem suk
zessive durch zwei geteilten Multiplikanden-Signalwert ent
sprechen.
Mit der ersten und der zweiten Schleife ist eine durch die
Steuerpulse gesteuerte Gatter- oder Torschaltung gekoppelt,
welche Teilwerte durchläßt, die gleichzeitig mit einem
Steuerpuls auftreten. Die von der Torschaltung durchge
lassenen Teilwerte werden in eine dritte Schaltungsschleife
gekoppelt, die einen Akkumulator zur Summierung der Teil
werte enthält. Der Akkumulator wird in Ansprache auf die
Lade-Pulse auf null zurückgestellt und liefert nach einer
vorgegebenen Anzahl von Taktpulsen ein Produkt.
Die vorliegende Multiplizierschaltung eignet sich vor allem
dazu, das Produkt einer ersten Zahl mit einer aus X Bits
bestehenden zweiten Zahl zu erzeugen, welches durch
2 -(X-1) skaliert ist.
Im folgenden werden Ausführungsbeispiele der Erfindung unter
Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen:
Fig. 1 eine graphische Darstellung bestimmter Signalwert-
und Taktschwingungen, auf die bei der Beschreibung
der Erfindung Bezug genommen wird;
Fig. 2 ein Blockschaltbild einer Multiplizierschaltung
gemäß einer Ausführungsform der Erfindung;
Fig. 3 ein Blockschaltbild einer weiteren Ausführungsform
der Erfindung und
Fig. 4 ein Teilschaltbild einer alternativen Ausführungs
form einer Multiplizierschaltung gemäß der
Erfindung.
Die Grundstruktur der erfindungsgemäßen Multiplizierschaltung ist
ein Einquadranten-Multiplizierer zum Erzeugen von skalierten
Produkten von pulscodemodulierten (PCM) Abtast- oder Signal
werten (z. B. binären Proben oder Signalwerten). Der für die
Diskussion gewählte spezielle Quadrant ist der Quadrant, in
dem sowohl der Multiplikator als auch der Multiplikand posi
tiv sind. Andere Quadranten können bei geringfügigen Ände
rungen der zu beschreibenden Schaltungen verwendet werden.
Das System ist ein wortserielles System, was im Kontext der
vorliegenden Erläuterung bedeutet, daß die zu multiplizie
renden PCM-Signalwerte (Multiplikand und Multiplikator) als
bitparallele Signalwerte mit einer vorgegebenen Frequenz
oder Rate Fs auftreten, die Verarbeitung jedes Signalwerts
jedoch iterativ entsprechend beispielsweise der Anzahl der
Bits in einem Multiplikator-Wert durchgeführt wird. In Fig. 1
ist die Signalwertrate gleich der Frequenz des Signales L .
Die Perioden der Multiplikanden-Signalwerte A sind durch die
Zeitblöcke "A" und die Perioden der Multiplikator-Signal
werte sind durch die Zeitblöcke "B" dargestellt.
Fig. 1 zeigt weiterhin einen Systemtakt Fc, welcher zur
Durchführung der iterativen Verarbeitung verwendet wird. Die
beispielsweise dargestellte Schwingungsform des Systemtaktes
Fc hat neun Perioden pro Signalwertperiode. Dies begrenzt
die Bitlänge der Multiplikator-Werte auf neun oder weniger.
Wenn andererseits die Multiplikator-Signalwerte N Bits lang
sind, muß der Systemtakt mindestens N Zyklen pro Signalwert
periode haben.
In dem in Fig. 2 dargestellten Schaltbild bedeuten breite
Pfeile Parallelverbindungsbusse. Ein diagonaler Querstrich
durch einen Bus mit einer nebenstehenden Zahl gibt die An
zahl der Verbindungen im Bus an.
Von einer nicht dargestellten Quelle werden Multiplikator-
Signalwerte B einem Eingangsanschluß 10 zugeführt. Von einer
anderen, ebenfalls nicht dargestellten Quelle werden Mul
tiplikanden-Signalwerte A einem Eingangsanschluß 20 zuge
führt. Die Multiplikanden-Signalwerte werden einem Schal
tungselement 22 zugeführt, in dem sie mit dem Faktor 2
multipliziert werden. In der vorliegenden Diskussion wird
angenommen, daß sowohl die Multiplikator- als auch die
Multiplikanden-Signalwerte Binärformat haben. Im Binärformat
geschieht eine Multiplikation von Signalwerten mit dem
Faktor 2 durch Verschieben der jeweiligen Bits des Signal
wertes um eine Stelle nach oben und durch Einsetzen einer
Null in die niedrigste Bitstelle (LSB). In Fig. 2 ist das
Element 22 eine festverdrahtete Schaltung zum Verschieben um
eine Bitstelle nach vorne, d. h. in Richtung höherer Stellen
werte.
Die Multipliklator-Signalwerte B werden auf einen Eingangs
anschluß eines Multiplexers 12 gekoppelt und die zweifachen
Multiplikanden-Signalwerte 2A werden auf einen Eingangs
anschluß eines weiteren Multiplexers 24 gekoppelt. Wenn das
Ladepuls-Signal L hoch ist, werden die Signalwerte 2A und B
durch die Multiplexer 24 und 12 in entsprechende Systemver
arbeitungsschleifen geladen.
Die eine Schleife enthält den Multiplexer 12, einen Signal
speicher 16 sowie Elemente 14 und 18. Das Element 14 ist
lediglich eine Verdrahtung, welche die höchststellige Bit
verbindung vom Bus eliminiert, der den Ausgang des Multi
plexers mit dem Eingang des Signalspeichers 16 verbindet.
Das höchststellige Bit wird als Torsteuersignal Gs ver
wendet, das zur Steuerung von UND-Schaltungen 30 und 32
dient. Das Element 18 ist eine Verdrahtung, welche alle Bits
eines Signalwertes um eine Bitstelle in Richtung höherer
Stellenwerte verschiebt, indem eine niedrigste Stelle LSB
des Wertes null hinzugefügt wird.
Wenn der Ladepuls einen niedrigen Wert hat, werden das
Element 14, der Signalspeicher 16 und das Element 18 durch
den Multiplexer 12 in eine geschlossene Schleife geschaltet.
Der Signalspeicher 16, der durch den Systemtakt Fc getaktet
wird, läßt den in diese Schleife geladenen Signalwert B in
der Schleife kreisen. Der Signalspeicher 16 kann eine
Speicherschaltung vom D-Typ sein, auf deren Daten-Eingang
die zirkulierten Signalwerte B gekoppelt werden und auf
deren Takteingang das Systemtaktsignal gekoppelt wird.
Während jeder Periode des Systemtaktes Fc kreist der Signal
wert B um die Schleife und ein niedrigerstelliges Bit wird in
die höchste Bitstelle MSB gebracht. Angenommen, die Bits
eines Signalwertes B werden von der höchsten Stelle MSB zur
niedrigsten Stelle LSB mit B8, B7, B6, . . . B1, B0 bezeichnet.
Wenn der Signalwert anfangs in die Schleife geladen wird,
befindet sich B8 in der höchsten Stelle MSB und wird als
Torsignal Gs den UND-Schaltungen 30 und 32 zugeführt.
Während der nächstfolgenden Periode des Taktsignals Fc
befindet sich das Bit B7 in der Position der höchsten Stelle
MSB und wird als Signal Gs verwendet. Die Zeile von Symbo
len, die in Fig. 1 mit Gs bezeichnet ist, zeigt die Folge
der Signalwertbits, die den UND-Schaltungen während der
jeweiligen Taktperioden zugeführt werden.
Die zweite Schleife enthält den Multiplexer 24, ein Schal
tungselement 26 und einen Signalspeicher 28. Der Signal
speicher 28 kann eine Speicherschaltung vom D-Typ sein, die
durch den Systemtakt Fc getaktet wird. Das Element 26 ist
eine Verdrahtung, durch die alle Bits des Signalwertes 2A um
eine Bitstelle nach unten verschoben werden. Diese Bitver
schiebung hat die Funktion einer Division durch zwei. Das
Element 26 kann entweder vor oder nach dem Signalspeicher 28
angeordnet sein. Wenn das Element 26 nach dem Signalspeicher
28 angeordnet ist, braucht der Signalspeicher nur ein N-Bit-
Speicher und nicht ein N+1-Bit-Speicher zu sein.
Die Multiplikanden-Signalwerte werden unter Steuerung durch
den Systemtakt Fc in der zweiten Schleife zirkuliert. Bei
jedem Umlauf wird der Signalwert durch den Faktor 2 geteilt.
In Fig. 1 ist in der mit MUX 24 bezeichneten Zeile der
jeweils vom Multiplexer 24 gelieferte Signalwert für jede
Periode des Taktes Fc während einer Signalwertperiode dar
gestellt.
Unter der Annahme, daß der Signalwert 2A N+1 Bits hat,
werden die N höherstelligen Bits MSB des Signalwertes, die
vom Multiplexer 24 geliefert werden, der UND-Schaltung 30
zugeführt und das Bit LSB der niedrigsten Stelle wird der
UND-Schaltung 32 zugeführt. Die UND-Schaltungen 30 und 32
lassen die auf ihre jeweiligen Eingangsanschlüsse gekoppelten
Bitwerte durch, wenn das Torsignal Gs einen vorgegebenen
Logikzustand, z. B. den Logikwert 1, hat und sie liefern den
Wert null, wenn das Torsignal Gs einen dem vorgegebenen
Zustand entgegengesetzten Zustand hat. Der Ausgangsanschluß
der UND-Schaltung 30 ist mit einem ersten Eingangsanschluß
einer Addiererschaltung 40 gekoppelt. Der Ausgangsanschluß
der UND-Schaltung 32 ist mit dem Übertrags-Eingangsanschluß
des Addierers 40 gekoppelt. Der Ausgangsanschluß des
Addierers ist mit dem Eingangsanschluß des getakteten
Signalspeichers 42 gekoppelt, dessen Ausgangsanschluß mit
dem Eingangsanschluß einer UND-Schaltung 38 gekoppelt ist.
Der Ausgangsanschluß der UND-Schaltung 38 ist mit einem
zweiten Eingangsanschluß des Addierers 40 gekoppelt. Der
Addierer 40, der Signalspeicher 42 und die UND-Schaltung 38
bilden eine typische Akkumulatorschaltung. Die UND-Schaltung
38 wird durch das Signal L konditioniert, um die Akkumula
torrückführungsschleife zu öffnen und dadurch, den Akkumula
tor jedesmal dann erneut zu initialisieren, wenn (während
des Pulses Lp) ein neuer Signalwert in das System geladen
wird, und die Schleife für die folgenden Perioden des
Systemtaktes zu schließen.
Die N höherstelligen Bits MSB des Signalwertes vom Multi
plexer 24 werden auf die N niedrigerstelligen Positionen LSB
des Eingangsanschlusses des Addierers 40 gekoppelt. Diese
Verbindung bewirkt eine weitere Division durch zwei. Die in
Fig. 1 mit AIN bezeichnete Zeile zeigt die Signalwerte, die
für die jeweiligen Taktperioden auf den Eingangsanschluß A
des Addierers gekoppelt werden. Man beachte, daß jeder
dieser Werte ein Produkt eines Bruchteilsignalwertes A mit
einem Bitwert (eins oder null) des Signalwertes B ist. Die
aufeinanderfolgenden Signalwerte, die von der Addierer
schaltung 40 geliefert werden, sind zum Teil unter der Zeile
AIN angegeben Die Ausgangswerte die durch den Akkumulator
d. h. den Signalspeicher 42, geliefert werden, sind die
gleichen wie die Ausgangswerte vom Addierer, treten jedoch
eine Periode des Systemtaktes Fc später auf. Die letzte
Summe, die in Fig. 1 angegeben ist, entspricht dem Wert des
durch den Multiplizierer gelieferten Produktes. Wenn jedes
Bit des Signalwertes B eine logische Eins ist, ist der Aus
gangssignalwert gleich A mal (1+255/256) oder 511/256.
Typischerweise wird jedoch das Bit der höchsten Stelle MSB
(B8) den Wert null haben, wenn die Multiplikatorwerte
positiv sind und Zweierkomplementform haben. In diesem Falle
erstreckt sich der Bereich der Ausgangswerte von A mal
255/256 bis A mal null. Jeder dieser Ausgangssignalwerte ist
kleiner als der ursprüngliche Signalwert A und kann daher
durch die gleiche Anzahl von Bits wie der Multiplikanden
signalwert A ausgedrückt werden. Der Addierer 40, der Signal
speicher 42 und die UND-Schaltung 38 brauchen daher keine
größere Bitkapazität zu haben als die des Multiplikanden. In
der Zeichnung sind diese Elemente mit einem zusätzlichen Bit
versehen, um dem Falle Rechnung zu tragen, daß das höchst
stellige Bit MSB des Signalwertes B ungleich null ist, und
um eine Reserve zur Verfügung zu haben, durch die ein Um
falten verhindert wird, wenn der Prozeß durch Rauschen
gestört wird.
Ein fakultatives Merkmal der Schaltungsanordnung gemäß Fig. 2
besteht darin, das Bit LSB der niedrigsten Stelle des Multi
plikanden dem Übertragseingang des Akkumulator-Addierers zu
zuführen. Die UND-Schaltung 30 liefert ein durch zwei ge
teiltes und gekürztes Partialprodukt an den Addierer 40. Das
von der UND-Schaltung 32 gelieferte LSB-Bit stellt den
Divisionsrest dar, der, wenn er als Übertragseingang addiert
wird, eine Rundungsfunktion ergibt. Die Addition des Bits
LSB der niedrigsten Stelle durch den Übertragseingang ver
hindert Rundungsfehler. Das Akkumulator-Resultat ist dem
richtigen Resultat immer so nahe, wie es die Genauigkeit der
Anzahl der Bits gestattet.
Bezüglich des letzten Produktes in Fig. 1 ist es ersicht
lich, daß die Anzahl der Bits im Multiplikator-Signalwert B
gleich neun ist, daß jedoch das Produkt durch 28 dividiert
ist. Wenn also der Multiplikator-Signalwert m Bits hat,
liefert das System gemäß Fig. 2 die Größe AB/2m-1.
Man beachte ferner, daß wenn der Multiplikator-Signalwert B
weniger als neun Bits hat, die Wirkung auf die Zeilen Gs und
AIN in einer Substitution von Nullen in den niedrigerstelli
gen Bitpositionen bestände. Wenn beispielsweise die Signal
werte B nur fünf Bits lang wären, würde der Bitwert in jedem
der Kästchen in den Zeilen Gs und AIN, welches eines der
Bits B3, B2, B1 und B0 enthält, zu null. Das Ausgangsprodukt
wird gleich AB/24=AB/16 sein. Es macht nichts aus, daß die
Anzahl der Bits in den Signalwerten B kleiner ist als die
Anzahl der Systemtaktperioden pro Signalwert. Die einzige
Einschränkung besteht darin, daß die Anzahl der Systemtakt
perioden pro Signalwert mindestens so groß sein muß, wie die
Anzahl der Bits, die die Multiplikator-Signalwerte dar
stellen. Die Anzahl der Bits in den Multiplikanden-Signal
werten sind für die Bestimmung des Systemtaktsignals ohne
Bedeutung.
Fig. 3 wandelt die Schaltungsanordnung gemäß Fig. 2 für
eine Multiplikation von Zahlen mit verschiedenen Vorzeichen
ab. Dies wird durch eine Schaltungsanordnung erreicht,
welche a) gewährleistet, daß nur positive Signalwerte auf
die Multiplizierschaltung gemäß Fig. 2 gekoppelt werden
und b) die ursprünglichen Polaritäten der Eingangssignal
werte durchschleust, so daß den Ausgangssignalwerten des
Multiplizierers das richtige Vorzeichen zugeordnet werden
kann. Bei der Schaltungsanordnung gemäß Fig. 3 werden die
Signalwerte eines Multiplikandeneingangssignales A′ einer
Komplementbildungsschaltung 60 zugeführt. Das Vorzeichenbit
der Eingangssignalwerte wird außerdem auf einen Steuerein
gangsanschluß C der Komplementbildungsschaltung gekoppelt.
Unter Steuerung durch die Vorzeichenbits der Eingangssignal
werte invertiert die Komplementierungsschaltung 60 die
Polarität von negativen Signalwerten und läßt positive
Signalwerte ungeändert zum Eingangsanschluß 20 der Schal
tungsanordnung gemäß Fig. 2 durch. In entsprechender Weise
wird ein Multiplikatoreingangssignal B′ einer Komplemen
tierungsschaltung 62 zugeführt, welche Signalwerte B eines
einzigen Vorzeichens an den Eingangsanschluß 10 liefert.
Die Vorzeichenbits der Signalwerte A′ und B′ werden einer
Logikschaltung zugeführt, welche UND-Glieder 64 und 66 sowie
ein ODER-Glied 68 enthält. Diese Logikschaltung liefert am
Ausgang des ODER-Gliedes 68 ein Polaritätssteuersignal das
immer dann den Logikwert eins hat, wenn die Signalwerte A′
und B′ entgegengesetztes Vorzeichen aufweisen und sonst den
Logikwert null. Das Polaritätssteuersignal wird bei der in
negativer Richtung verlaufenden Flanke des Lade-Pulses in
einen Signalspeicher 72 eingespeichert. Der Signalspeicher
72 speichert das Steuersignal für eine Zeitspanne, die
gleich einer Signalwertperiode ist und sich über das Inter
vall erstreckt, in dem das Multiplikatorausgangssignal
gültig ist. Das gespeicherte Polaritätssteuersignal wird dem
Steuereingangsanschluß einer weiteren Komplementierungs
schaltung 74 zugeführt. Die Komplementierungssschaltung 74
ist so ausgebildet, daß sie das Ausgangsprodukt von der
Schaltungsanordnung gemäß Fig. 2 unverändert überträgt,
wenn das Polaritätssteuersignal den Logikwert null hat
während sie die Ausgangsprodukte komplementiert, wenn das
Polaritätssteuersignal den Logikwert eins hat.
Fig. 4 zeigt eine Alternative für einen Teil der Schal
tungsanordnung gemäß Fig. 2. Bei der Schaltungsanordnung
gemäß Fig. 4 ist die erste Schleife für die Verarbeitung
der Multiplikator-Signalwerte B durch ein Schieberegister 82
mit Paralleleingang und seriellem Ausgang ersetzt. Die bit
parallelen Signalwerte B werden in das Schieberegister 82
unter Steuerung durch das Ladepulssignal L geladen. Die
Bits der Signalwerte B sind im Schieberegister 82 sequentiell
angeordnet, wobei das Bit der höchsten Stelle dem seriellen
Ausgangsanschluß am nächsten liegt. Die Bits werden unter
Steuerung durch den Systemtakt Fc sequentiell zum Ausgangs
anschluß geschoben. Der serielle Ausgangsanschluß des
Schieberegisters 82 ist mit den Steueranschlüssen der Tor
schaltungen 30 und 32 gekoppelt.
Die zweite Schleife zur Verarbeitung der Signalwerte 2A ist
durch ein Schieberegister 80 mit parallelem Eingang und
parallelem Ausgang ersetzt. Die Bits der Signalwerte 2A
werden unter Steuerung durch die Lade-Pulse L parallel in
das Schieberegister 80 eingespeichert.
Der Anschluß des parallelen Ausganges entsprechend dem Bit
LSB der niedrigsten Stelle ist mit dem Eingangsanschluß der
Tor- oder UND-Schaltung 32 gekoppelt. Die verbleibenden
Anschlüsse des Parallelausganges entsprechend den höher
stelligeren Bits sind mit dem Eingangsanschluß der Tor- oder
UND-Schaltung 30 gekoppelt. Das Schieberegister 80 ver
schiebt die in es eingegebenen Bits unter Steuerung durch
den Systemtakt Fc bei jeder Periode des Taktes Fc um eine
Stelle nach unten. Die höchste Bitstelle, die durch die
Verschiebung leer wird, wird auf eine logische Null einge
stellt. Das in dieser Weise betriebene Schieberegister 80
führt bei jedem Systemtaktzyklus die Funktion einer Division
durch zwei durch.
Die Ausgangsanschlüsse der UND-Schaltungen 30 und 32 sind
mit dem Rest der Schaltung gekoppelt, wie es in Fig. 2
dargestellt ist.
Man beachte, daß die Schaltungsanordnung gemäß Fig. 4 vom
Konzept her einfacher ist als die in Fig. 2 dargestellte
Schaltungsanordnung. Die Schaltungsanordnung gemäß Fig. 2
wird jedoch bevorzugt, da sie vom Aufbau her wirtschaftlicher
ist und sich leichter in integrierter Form realisieren läßt.
Claims (5)
1. Digitale, wortserielle Multiplizierschaltung zum Erzeugen von Produkten von zwei bit
parallelen binären Signalwerten A und B, welche jeweils Bits
aufsteigenden Stellenwertes einschließlich eines niedrigst
stelligen Bits (LSB) und eines höchststelligen Bits (MSB)
enthalten, mit Quellen für die Signalwerte A und B, ein
Ladepulssignal (Lp) und ein Systemtaktsignal (Fc),
gekennzeichnet durch
- - eine erste Schaltungsanordnung (12, 14, 16, 18) zum Laden eines Signalwertes B unter Steuerung durch das Ladepulssignal (Lp) und zum Erzeugen eines Torsignales (Gs) entsprechend einer Folge von Bits des Signalwertes B in absteigender Reihenfolge der Stellen vom höchststelligen Bit (MSB) zuerst zum niedrigststelligen Bit (LSB) zuletzt unter Steuerung durch den Systemtakt (Fc),
- - eine zweite Schaltungsanordnung (24, 26, 28) zum Laden eines Signal wertes A unter Steuerung durch das Ladepulssignal (Lp) und zum Erzeugen einer Folge von Signalwerten entsprechend sukzessiv durch zwei dividierten Versionen des Signalwertes A;
- - eine erste UND-Schaltung (30), die mit der zweiten Schaltungsanordnung gekoppelt und durch das einen bestimmten Zustand aufweisende Torsignal (Gs) gesteuert ist, um die höherstelligen Bits aus schließlich des Bits der niedrigsten Stelle (LSB) der dem sukzessive durch zwei geteilten Signalwert A entsprechenden Signalwerte durchzulassen; und
- - eine Addierschaltung (40) mit einem ersten Eingangsanschluß (BIN) und einem Ausgangsanschluß, welcher über einen Signal speicher (42), der durch das Systemtaktsignal (Fc) gesteuert ist, gekoppelt ist, um einen Akkumulator zu bilden, wobei die Addierschaltung (40) weiterhin einen mit der ersten UND-Schaltung (30) gekoppelten zweiten Eingangsanschluß (AIN) aufweist, dem die suksessiv jeweils durch 2 dividierten höherstelligen Bits des Signalwertes A von der UND-Schaltung zuführtbar sind und wobei der Akkumulator beim Auftreten des Ladepulssignales (Lp) ein skaliertes Ausgangsprodukt liefert.
2. Multiplizierschaltung nach Anspruch 1, dadurch gekenn
zeichnet, daß der Akkumulator für Signalwerte B, die aus
m Bits bestehen, ein skaliertes Ausgangsprodukt gleich
AB/2m-1 liefert, wobei A und B die Signalwerte A bzw. B
und m die Bitanzahl von A bedeuten.
3. Multiplizierschaltung nach Anspruch 1, gekennzeichnet
durch eine mit der zweiten Schaltungsanordnung gekoppelte zweite
UND-Schaltung (32), welche unter Steuerung durch das Torsignal (Gs),
wenn dieses einen vorgegebenen Zustand aufweist, das jeweils nie
drigststellige Bit (LSB) des jeweiligen Signalwertes ent
sprechend dem sukzessive durch zwei geteilten Signalwert A
durchläßt und daß die Addiererschaltung (40) einen Übertrags
eingangsanschluß (CARRY IN) aufweist, dem das von der zweiten
UND-Schaltung (32) durchgelassene niedrigststellige Bit zuge
führt ist.
4. Multiplizierschaltung nach Anspruch 3, dadurch gekenn
zeichnet, daß die erste Schaltungsanordnung enthält:
- - einen Multiplexer (12) mit einem ersten Eingangsanschluß (10) für die Signalwerte B, einem zweiten Eingangsanschluß und einem Ausgangsanschluß;
- - einen durch den Systemtakt (Fc) gesteuerten, einen Eingangs- und einen Ausgangsanschluß aufweisenden Signalspeicher (16) zum Speichern eines seinem Eingangsanschluß zugeführten Signalwertes;
- - eine einen Eingangs- und einen Ausgangsanschluß aufweisende dritte Schaltungsanordnung (18), der bitparallele Signalwerte zuführbar sind und die jedes der Signalwertbits zu einer höheren Stelle verschiebt; und
- - eine Schaltungsanordnung zur Reihenschaltung des getakteten Signal speichers (16) und der dritten Schaltungsanordnung (18) zwischen den Ausgangsanschluß und den zweiten Eingangsanschluß des Multiplexers (12), wobei das Torsignal (Gs) von der höchsten Bitstelle (MSB) des Ausgangsanschlusses des Multiplexers (12) abgenommen ist.
5. Multiplizierschaltung nach Anspruch 3, dadurch gekenn
zeichnet, daß die zweite Schaltungsanordnung enthält:
- - eine für einen Empfang der Signalwerte A geschaltete Ein richtung (22) zum Multiplizieren jedes Signalwertes A mit dem Faktor zwei;
- - einen Multiplexer (24) mit einem ersten Eingangsanschluß, dem die mit zwei multiplizierten Signalwerte A zuführbar sind, einem zweiten Eingangsanschluß und einem Ausgangs anschluß,
- - einen getakteten Signalspeicher (28), der einen Eingangs- und einen Ausgangsanschluß aufweist und unter Steuerung durch das Systemtaktsignal (Fc) die seinem Eingangsanschluß zugeführten Signalwerte speichert;
- - eine einen Eingangsanschluß und einen Ausgangsanschluß auf weisende vierte Schaltungsanordnung (26) zum Dividieren von ihrem Eingangsanschluß zugeführten Signalwerten durch zwei;
- - eine Schaltungsanordnung zur Reihenschaltung des getakteten Signal speichers (28) und der vierten Schaltungsanordnung (26) zwischen den Ausgangsanschluß des Multiplexers (24) und den zweiten Eingangsanschluß des Multiplexers, wobei die erste und zweite UND- Schaltungsanordnung (30, 32) mit dem Ausgangsanschluß des Multi plexers gekoppelt sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/333,052 US4970676A (en) | 1989-04-04 | 1989-04-04 | Digital word-serial multiplier circuitry |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4010735A1 DE4010735A1 (de) | 1990-10-11 |
DE4010735C2 true DE4010735C2 (de) | 1992-05-07 |
Family
ID=23301055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4010735A Granted DE4010735A1 (de) | 1989-04-04 | 1990-04-03 | Digitale wortserielle multiplizierschaltung |
Country Status (7)
Country | Link |
---|---|
US (1) | US4970676A (de) |
JP (1) | JPH02292632A (de) |
KR (1) | KR920008269B1 (de) |
CA (1) | CA2012808C (de) |
DE (1) | DE4010735A1 (de) |
FR (1) | FR2645294B1 (de) |
GB (1) | GB2230122B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10041511C1 (de) * | 2000-08-24 | 2001-08-09 | Infineon Technologies Ag | Additionsschaltung für digitale Daten |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5289400A (en) * | 1992-07-30 | 1994-02-22 | Westinghouse Electric Corp. | Single-flux-quantum multiply-accumulator |
US5446909A (en) * | 1992-12-11 | 1995-08-29 | National Semiconductor Corporation | Binary multiplication implemented by existing hardware with minor modifications to sequentially designate bits of the operand |
US5602767A (en) * | 1995-08-29 | 1997-02-11 | Tcsi Corporation | Galois field polynomial multiply/divide circuit and a digital signal processor incorporating same |
US5751619A (en) * | 1996-01-22 | 1998-05-12 | International Business Machines Corporation | Recurrent adrithmetical computation using carry-save arithmetic |
US5784011A (en) * | 1996-06-14 | 1998-07-21 | Lsi Logic Corporation | Multiplier circuit for performing inverse quantization arithmetic |
US6549593B1 (en) * | 1999-07-19 | 2003-04-15 | Thomson Licensing S.A. | Interface apparatus for interfacing data to a plurality of different clock domains |
US6438570B1 (en) | 1999-07-21 | 2002-08-20 | Xilinx, Inc. | FPGA implemented bit-serial multiplier and infinite impulse response |
US6651079B1 (en) * | 2000-07-18 | 2003-11-18 | Agere Systems Inc. | High speed pipeline multiplier with virtual shift |
US8438207B2 (en) * | 2007-09-28 | 2013-05-07 | University Of Washington | Adaptive precision arithmetic unit for error tolerant applications |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3290493A (en) * | 1965-04-01 | 1966-12-06 | North American Aviation Inc | Truncated parallel multiplication |
US3582634A (en) * | 1968-10-15 | 1971-06-01 | Stromberg Carlson Corp | Electrical circuit for multiplying serial binary numbers by a parallel number |
US3761699A (en) * | 1972-03-28 | 1973-09-25 | Collins Radio Co | Multiplication by successive addition with two{40 s complement notation |
US4013879A (en) * | 1975-06-02 | 1977-03-22 | International Telephone And Telegraph Corporation | Digital multiplier |
JPS56143051A (en) * | 1980-04-07 | 1981-11-07 | Nec Corp | Data shift circuit |
JPS58129653A (ja) * | 1982-01-29 | 1983-08-02 | Hitachi Ltd | 乗算方式 |
DE3335424A1 (de) * | 1983-09-29 | 1985-04-18 | Siemens AG, 1000 Berlin und 8000 München | Multiplikationswerk und verfahren zu dessen betrieb |
GB8401808D0 (en) * | 1984-01-24 | 1984-02-29 | Int Computers Ltd | Binary multiplication |
JPH07107664B2 (ja) * | 1987-02-13 | 1995-11-15 | 日本電気株式会社 | 乗算回路 |
JP2706455B2 (ja) * | 1987-10-14 | 1998-01-28 | 松下電器産業株式会社 | 小数乗算器 |
-
1989
- 1989-04-04 US US07/333,052 patent/US4970676A/en not_active Expired - Fee Related
-
1990
- 1990-03-22 CA CA002012808A patent/CA2012808C/en not_active Expired - Fee Related
- 1990-04-02 KR KR1019900004467A patent/KR920008269B1/ko not_active IP Right Cessation
- 1990-04-03 FR FR909004270A patent/FR2645294B1/fr not_active Expired - Fee Related
- 1990-04-03 GB GB9007451A patent/GB2230122B/en not_active Expired - Fee Related
- 1990-04-03 DE DE4010735A patent/DE4010735A1/de active Granted
- 1990-04-03 JP JP2090080A patent/JPH02292632A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10041511C1 (de) * | 2000-08-24 | 2001-08-09 | Infineon Technologies Ag | Additionsschaltung für digitale Daten |
Also Published As
Publication number | Publication date |
---|---|
GB2230122B (en) | 1993-01-20 |
CA2012808C (en) | 1999-09-21 |
GB9007451D0 (en) | 1990-05-30 |
FR2645294A1 (fr) | 1990-10-05 |
KR920008269B1 (ko) | 1992-09-26 |
GB2230122A (en) | 1990-10-10 |
FR2645294B1 (fr) | 1994-11-18 |
JPH02292632A (ja) | 1990-12-04 |
CA2012808A1 (en) | 1990-10-04 |
KR900016888A (ko) | 1990-11-14 |
US4970676A (en) | 1990-11-13 |
DE4010735A1 (de) | 1990-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE19758079A1 (de) | Verfahren und Vorrichtung zur Galoisfeld-Multiplikation | |
DE2523860C3 (de) | Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion | |
DE2751097A1 (de) | Triggerschaltungseinheit | |
DE2628473B2 (de) | Digitales Faltungsfilter | |
DE4302898A1 (en) | Arithmetic logic unit with accumulator function - has two memories and counter with selection to reduce delay in processing | |
DE2625973A1 (de) | Verfahren und anordnung zur redundanzvermindernden transformation von bildern | |
DE4010735C2 (de) | ||
WO2020099080A1 (de) | Verfahren und vorrichtung zur umsetzung einer matrix-operation | |
DE3303269C2 (de) | ||
DE2743575A1 (de) | Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl | |
DE4019646C2 (de) | Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung | |
DE3434777C2 (de) | ||
EP0265555B1 (de) | Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen | |
DE3340362C2 (de) | ||
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
EP0598112B1 (de) | Verfahren und anordnung zum bilden der summe einer kette von produkten | |
DE2855946A1 (de) | Pla-addierschaltung | |
DE2000275A1 (de) | Elektronischer Walzenschalter | |
DE2636028A1 (de) | Digitaler multiplizierer | |
EP0489952A1 (de) | Schaltungsanordnung zur digitalen Bit-seriellen Signalverarbeitung | |
DE2142636B2 (de) | Rechenwerk für die Durchführung digitaler Multiplikationen | |
DE2853540A1 (de) | Rechenelement nach dem dda-prinzip | |
DE19514739C2 (de) | Multipliziereinrichtung | |
DE2440147C3 (de) | Schwellwertschaltnetz für binäre Signale |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |