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
Application number
DE4010735A
Other languages
English (en)
Other versions
DE4010735A1 (de
Inventor
Russell Thomas Naperville Ill. Us Fling
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.)
Technicolor USA Inc
Original Assignee
Thomson Consumer Electronics Inc
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 Thomson Consumer Electronics Inc filed Critical Thomson Consumer Electronics Inc
Publication of DE4010735A1 publication Critical patent/DE4010735A1/de
Application granted granted Critical
Publication of DE4010735C2 publication Critical patent/DE4010735C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/527Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
    • G06F7/5272Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial products
    • 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/3852Calculation 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.
DE4010735A 1989-04-04 1990-04-03 Digitale wortserielle multiplizierschaltung Granted DE4010735A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 松下電器産業株式会社 小数乗算器

Cited By (1)

* Cited by examiner, † Cited by third party
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