DE4033507A1 - Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen - Google Patents
Schaltungsanordnung zum digitalen multiplizieren von integer-zahlenInfo
- Publication number
- DE4033507A1 DE4033507A1 DE19904033507 DE4033507A DE4033507A1 DE 4033507 A1 DE4033507 A1 DE 4033507A1 DE 19904033507 DE19904033507 DE 19904033507 DE 4033507 A DE4033507 A DE 4033507A DE 4033507 A1 DE4033507 A1 DE 4033507A1
- Authority
- DE
- Germany
- Prior art keywords
- circuit arrangement
- arrangement according
- logarithmic
- bits
- logarithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/5235—Multiplying only using indirect methods, e.g. quarter square method, via logarithmic domain
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/0307—Logarithmic or exponential functions
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Analogue/Digital Conversion (AREA)
Description
Die Erfindung bezieht sich auf eine Schaltungsanordnung
zum digitalen Multiplizieren von Integer-Zahlen, mit
einer Codiereinheit, die den Logarithmus der zu multi
plizierenden Zahlen bildet, einer Addiereinheit, die
die Ausgangswerte der Codiereinheit addiert, und einer
Decodiereinheit, die den Ausgangswert der Addiereinheit
delogarithmiert.
Mikroelektronisch integrierte Signalprozessoren haben
größte wirtschaftliche Bedeutung für alle Produktgebie
te. Die fortschreitende Miniaturisierung hat dazu ge
führt, daß die digitale Signalverarbeitung bereits
beachtliche praktische Erfolge, z. B.in der Echtzeitver
arbeitung von Sprach- und Bildsignalen aufzuweisen hat.
Hierzu wird beispielsweise auf den Artikel "Multiplier
Policies for digital Signal Processing" in IEEE ASSP
Magazine, 1990, S. 6 . . . 20 verwiesen.
Miniaturisierung und erreichbare Funktionalität je
Mikrochip haben außerdem zu einer Vielzahl von Versu
chen zur Realisierung sogenannter neuronaler Netzwerke
und Computer geführt.
Trotz des gewaltigen, bei der Miniaturisierung erreich
ten Fortschritts setzt bislang die riesige Zahl von
Faltungsoperationen (Multiplikationen, Divisionen, Ad
ditionen und Subtraktionen), wie sie z. B. für die Ver
arbeitung von HDTV-Signalen, für die Echtzeiterkennung
bewegter Szenen und für die Realisierung neuronaler
Netze oder dgl. erforderlich ist, sowohl für die Erhö
hung der Rechengeschwindigkeit als auch für die weitere
Reduzierung der "Chip-Fläche" Grenzen.
Analoge und digitale Multiplikationen haben entweder
geringe Dynamik (Auflösung) und sind ungenau (kleines
Signal-Rauschverhältnis) oder müssen mit großen Wort
längen bzw. mit Gleitkomma-Darstellung erfolgen, die
die notwendige massive parallele Verarbeitung praktisch
unmöglich machen.
Wegen des Genauigkeits- und Dynamik-Problems in der
digitalen Signalverarbeitung werden zur Verarbeitung
der eingangs- und ausgangsseitigen Analogsignale, die
z. B. von Bildsensoren, Displayaktoren oder dgl. gelie
fert werden, Analog-Digital- und Digital-Analogumsetzer
aufwendiger Bauart mit großen Wortlängen gefordert, die
ebenfalls die Machbarkeit solcher Signalverarbeitungs
systeme stark einschränken.
Die Erfindung geht von dem Grundgedanken aus, daß in
vielen Fällen mit elektronischer Signalverarbeitung
versucht wird, hochentwickelte, natürliche Vorgange wie
z. B. Sehen- und Hören bestmöglich zu unterstützen und
nachzuahmen. Diese Vorgänge zeichnen sich dadurch aus,
daß durch sogenannte Adaption für die mit dem Sehen und
Hören verbundenen Signale, wie Helligkeit und Schall
stärke, große Dynamikbereiche überstrichen werden. Man
hat erkannt, daß man durch den Umgang mit dem Loga
rithmus dieser Signale (der sogenannten logarithmischen
Kompression) elektronisch verarbeitbare Signalhübe
erhält, die dennoch relativ große Dynamikbereiche be
schreiben können. Dies wird z. B. in der Pulscodemodula
tion von Sprache und in Bildsensoren mit logarithmi
schem Ausgangssignal verwendet.
Es sind zwar bislang verschiedene kompandierende Codie
rungen bekannt geworden, z. B. die in der Sprachcodie
rung eingesetzten Codierungen nach dem µ-bzw. A-Gesetz.
Diese Codierungen wurden jedoch für spezielle Anforde
rungen der Sprachübertragung eingeführt, und sind kaum
allgemein anwendbar.
Die bekannten Schaltungsanordnung zum digitalen Multi
plizieren von Integer-Zahlen, mit einer Codiereinheit,
die den Logarithmus der zu multiplizierenden Zahlen
bildet, einer Addiereinheit, die die Ausgangswerte der
Codiereinheit addiert, und einer Decodiereinheit, die
den Ausgangswert der Addiereinheit delogarithmiert,
haben jedoch den Nachteil, daß sowohl das "Logarithmie
ren" als auch das "Delogarithmieren" zeitaufwendig ist
und entsprechenden Schaltungselement eine vergleichs
weise große Chip-Fläche benötigen.
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine
Schaltungsanordnung gemäß dem Oberbegriff des Anspruchs
1 derart weiterzubilden, daß sowohl das "Logarithmie
ren" als auch das "Delogarithmieren" mit einer natürli
chen Vorgängen angepaßten Genauigkeit schnell und mit
vergleichsweise geringem Schaltungsaufwand erfolgt,
ohne daß die allgemeine Verwendbarkeit der Schaltungs
anordnung verloren ginge.
Eine erfindungsgemäße Lösung dieser Aufgabe ist im
Anspruch 1 angegeben. Weiterbildungen der Erfindung
sind Gegenstand der Unteransprüche.
Erfindungsgemäß nähert die Codiereinheit zur Bildung
des Logarithmus die Exponentialkennlinie derart stück
weise linear an, daß die Zahl der linearisierten Sek
tionen mindestens gleich der Bitzahl der jeweiligen
Integer-Zahl ist.
Bei der erfindungsgemäßen Schaltungsanordnung werden
für die Signalverarbeitung auf der Eingangsseite direkt
die logarithmierten Signale (logarithmische Kompres
sion) benutzt. Für die Signalverarbeitung wird so,
statt der Multiplikation des Signalwerts mit einem
Koeffizienten oder Gewichtsfaktor der Logarithmus des
Signalwerts und der Logarithmus des Koeffizienten bzw.
des Gewichts addiert. Für die elektronische Realisie
rung bedeutet dies eine wesentliche Vereinfachung:
Während die digitale Multiplikation zweier N-Bit-Wörter in Komplexität und Verzögerungszeit mit der Ordnung N2 wächst, wachsen diese Größen bei der Addition nur mit der Ordnung N. Hinzu kommt, daß die gleiche Signaldyna mik in logarithmischer Kompression mit einer geringeren Wortlänge erreicht werden kann als in der linearen Darstellung.
Während die digitale Multiplikation zweier N-Bit-Wörter in Komplexität und Verzögerungszeit mit der Ordnung N2 wächst, wachsen diese Größen bei der Addition nur mit der Ordnung N. Hinzu kommt, daß die gleiche Signaldyna mik in logarithmischer Kompression mit einer geringeren Wortlänge erreicht werden kann als in der linearen Darstellung.
Die erfindungsgemäß verwendete komprimierende Codier
einheit ermöglicht z. B. mit 6, 11, 16 und 20 Bit die
gleiche Dynamik bzw. Auflösung wie eine lineare Codie
rung mit 8, 16, 24 bzw. 32 Bit.
Die erfindungsgemäße Codiereinheit kann dabei in belie
biger Technik, beispielsweise in einfacher, zweistufi
ger OR-AND-Logik realisiert werden.
Durch die erfindungsgemäß verwendete Kompression kann
die Wortlänge von eingangsseitigen Analog-Digitalum
setzern in dem eben beschriebenen Maß gekürzt werden:
Dies ist z. B. für schnelle Anlog-Digitalumsetzer, z. B.
nach dem Flash-Verfahren, von größter Bedeutung: Bei
spielsweise können 8 Bit Dynamik bzw. Auflösung nunmehr
mit nur 26=64 Komperatoren statt, wie bisher 28=256
Komperatoren realisiert werden.
Bei Einsatz der erfindungsgemäßen Schaltungsanordnung
in der Bildverarbeitung kann ein Bildsensor mit loga
rithmischem Ausgangssignal direkt das komprimierte
Signal liefern.
Logarithmisch komprimierte Koeffizienten und Gewichte
ergeben die obenerwähnten kürzeren Wortlängen und
bedeuten darüber hinaus erhebliche Einsparungen bei
paralleler Datenübertragung und deutliche Geschwindig
keitsverbesserungen bei serieller Datenübertragung.
In der Signalverarbeitung müssen Ergebnisse von Multi
plikationen meistens zu anderen Daten hinzuaddiert
werden. Das logarithmisch komprimierte Multiplikations
ergebnis muß hierfür auf die lineare Darstellung expan
diert werden.
Diese Decodierung kann mit einer ähnlichen zweistufigen
OR-AND-Logik realisiert werden, wie die oben beschrie
bene Codierung.
Die erfindungsgemäßen Schaltungsanordnungen benötigen
gegenüber bisherigen digitalen Signalprozessoren eine
Größenordnung weniger Chipfläche und sind um eine Grö
ßenordnung schneller. Ihre Signaldynamik bildet in der
Natur vorkommende Verhältnisse nach und ist mit diesen
kompatibel. Höchst komplexe Systemfunktionen können
damit einfach realisiert werden:
Zusammen mit konventionellen Addierern lassen sich so die meisten digitalen Filter realisieren. Beispielweise eignen sich die erfindungsgemäße Schaltungsanordnung für ein digitales Finite Impulse Response (FIR)-Filter. Die einkommenden Daten werden logarithmisch komprimiert codiert und an die verschiedenen Filterstufen geführt. Dort stehen die Koeffizienten in logarithmisch kompri mierter Form zur Verfügung. Die Addierer-Decodierer- Module führen die Addition und anschließende expandie rende Decodierung durch. Die entstehenden Samples werden dann aufaddiert und so das Ausgangssignal produziert.
Zusammen mit konventionellen Addierern lassen sich so die meisten digitalen Filter realisieren. Beispielweise eignen sich die erfindungsgemäße Schaltungsanordnung für ein digitales Finite Impulse Response (FIR)-Filter. Die einkommenden Daten werden logarithmisch komprimiert codiert und an die verschiedenen Filterstufen geführt. Dort stehen die Koeffizienten in logarithmisch kompri mierter Form zur Verfügung. Die Addierer-Decodierer- Module führen die Addition und anschließende expandie rende Decodierung durch. Die entstehenden Samples werden dann aufaddiert und so das Ausgangssignal produziert.
Weiterhin ist die erfindungsgemäße Schaltungsanordnung
immer dann bevorzugt einzusetzen, wenn "natürliche"
Signale zur Verarbeitung "analog/digital" gewandelt
werden müssen. Der Analog-Digitalumsetzer mit multipli
zierendem Encoder - wie er z. B. in der Videosignalver
arbeitung häufig benötigt wird - kann dann direkt so
ausgelegt werden, daß er einen logarithmisch kompri
mierten Code liefert. Die logarithmischen Daten werden
mit den logarithmisch anliegenden Koeffizienten in dem
folgenden Addierer addiert und das Ergebnis in einem
expandierenden Decoder decodiert.
Ferner können auf der Ausgangseite eines mit logarith
mischer Kompandierung arbeitenden Systems die loga
rithmischen Ausgangsdaten direkt einen Digital-Analog
umsetzer ansteuern, z. B. wenn dieser mit gewichteten
Kapazitäten oder mit gewichteten Stromquellen arbeitet.
Die Bereitstellung analoger Ausgangssignale kann damit
direkt vom logarithmisch komprimierten Digitalwort
erfolgen. Der Decoder kann dann entfallen.
Auch ein digitales neuronales Netzwerk, spezifisch ein
Neurocomputer kann sehr effizient aus diesen Funktions
blöcken aufgebaut werden. Die Synapsen bestehen aus dem
erwähnten Addierer-Decoder, sie werden mit logarithmi
schen Daten und logarithmischen Gewichten gefüttert,
die Ausgangssignale gehen auf den Addiereingang eines
Neurons. Auf der Ausgangseite des Neurons wird die
Schwellenfunktion so codiert, daß sie direkt ein loga
rithmisch komprimiertes Ausgangssignal liefert, welches
dann direkt auf die Synapsen zurückgeführt werden kann.
Solche logarithmisch kompandierten neuronalen Netzwerke
ermöglichen robuste digitale Realisierungen mit optima
ler Dynamik bei kleinster Wortlänge:
Bei der digitalen Realisierung von Synapsen stellt die Multiplikation sowohl in Flächen- als auch in Zeitbe darf den wesentlichen Flaschenhals dar. Von Vorteil ist es dabei, wenn Synapsen auch wieder zur Erhaltung einer günstigen Dynamik mit logarithmischen Daten und loga rithmischen Gewichten gespeist werden. Es findet dann eine Addition und expandierende Decodierung statt, um gewichtete Ausgangsdaten zu erhalten. Diese werden auf den Addierereingang des nachfolgenden Neurons geführt. Der Ausgangsanschluß des Neuron-Addierers wird übli cherweise auf eine ausgangsseitige Theshold-Funktion geführt. Diese Übertragungsfunktion kann so komprimie rend codiert werden, daß sie direkt das Ausgangssignal in logarithmischer Form liefert, die wiederum direkt für die Rückführung auf Synapsen geeignet ist. Der loga rithmische Signaltransport erfolgt dabei wiederum vor teilhafterweise mit einer kleinen komprimierten Wort länge, die trotzdem einen günstigen Dynamikbereich des Signals repräsentiert.
Bei der digitalen Realisierung von Synapsen stellt die Multiplikation sowohl in Flächen- als auch in Zeitbe darf den wesentlichen Flaschenhals dar. Von Vorteil ist es dabei, wenn Synapsen auch wieder zur Erhaltung einer günstigen Dynamik mit logarithmischen Daten und loga rithmischen Gewichten gespeist werden. Es findet dann eine Addition und expandierende Decodierung statt, um gewichtete Ausgangsdaten zu erhalten. Diese werden auf den Addierereingang des nachfolgenden Neurons geführt. Der Ausgangsanschluß des Neuron-Addierers wird übli cherweise auf eine ausgangsseitige Theshold-Funktion geführt. Diese Übertragungsfunktion kann so komprimie rend codiert werden, daß sie direkt das Ausgangssignal in logarithmischer Form liefert, die wiederum direkt für die Rückführung auf Synapsen geeignet ist. Der loga rithmische Signaltransport erfolgt dabei wiederum vor teilhafterweise mit einer kleinen komprimierten Wort länge, die trotzdem einen günstigen Dynamikbereich des Signals repräsentiert.
In jedem Falle hat die erfindungsgemäß ausgebildete
komprimierende Codiereinheit den Vorteil, daß sie
- - allgemein verwendbar,
- - für alle Wortlängen geeignet ist,
- - auf der logarithmischen Skala eine Dynamik bietet, die das zweifache der Genauigkeit bei Maximalsignal ist,
- - eine einfache, schaltungsmäßige Realisierung bei minimalem Flächenbedarf und höchster Geschwindigkeit bietet.
Die Erfindung wird nachstehend ohne Beschränkung des all
gemeinen Erfindungsgedankens anhand von Ausführungsbei
spielen unter Bezugnahme auf die Zeichnung exemplarisch
beschrieben, auf die im übrigen bezüglich der Offenbarung
aller im Text nicht näher erläuterten erfindungsgemäßen
Einzelheiten ausdrücklich verwiesen wird. Es zeigen:
Fig. 1 eine Exponentialkennlinie,
Fig. 2 den Verlauf des Signal-Rauschverhältnisses als
Funktion des Pegels,
Fig. 3 eine Wahrheitstabelle,
Fig. 4 eine Darstellung des den Aufbau einer erfindungs
gemäß komprimierenden Codiereinheit wiedergebenden
Gleichungssystems,
Fig. 5 das Gleichungssystem für die expandierende
Decodierung, und
Fig. 6 eine Schaltung zur Realisierung des Gleichungs
systems nach Fig. 5.
Fig. 1 zeigt eine Exponentialkennlinie Y=2x/4 für einen 5-
Bit-Wertebereich von Y (5-Bit-Dynamik). Die Kennlinie ist
approximiert durch sechs Sektionen mit jeweils konstanter
Steigung, die Steigung jeder Sektion ist doppelt so groß
wie die der vorhergehenden. 24 diskrete Abszissenwerte
(5-Bit-Beschreibung) benötigen auf der Ordinate 6 Bit. Auf
der Ordinate ergeben sich bei größeren Werten (Pegeln)
größere Stufen und bei kleineren Signalwerten kleinere
Stufen. So wird ein Kompromiß zwischen Auflösung (Dynamik)
und relativer Genauigkeit (Signal-Rauschverhältnis für die
gewählte Quantisierung) erreicht. Im obersten Bereich oder
Sektor ist die Schrittweite 8 (3 Bit) bei einem Maximal
pegel von 64 (6 Bit). Das Signal-Rauschverhältnis in dB
bei maximalem Pegel ist also halb so groß wie die Dynamik
in dB.
Fig. 2 zeigt den Verlauf des Signal-Rauschverhältnisses
als Funktion des Pegels. Innerhalb jedes Segments nimmt
dieses Verhältnis mit abnehmendem Pegel ab. Beim Beginn
des nächsten Segments wird durch die feinere Quantisie
rung das Verhältnis wieder angehoben. Das Gesamtergeb
nis ist ein Signal-Rauschverhältnis, das mit der Wurzel
des Pegels abnimmt. Bei "linearer" Quantisierung würde
dieses Verhältnis linear mit dem Pegel abnehmen. Durch
die logarithmisch komprimierende Codierung wird bei
gegebener Wortlänge ein Maximum an Auflösung bei immer
hin vertretbarer Genauigkeit erreicht. Fig. 2 zeigt
weiterhin Werte für größere Wortlängen, die im folgen
den noch besprochen werden.
Die Funktion der erfindungsgemäß ausgebildeten Codier
einheit soll weiter anhand der Wahrheitstabelle in
Fig. 3 für eine log. Darstellung mit 6 Bit eines 8-Bit-
Wortes erläutert werden. Die Tabelle ist für eine line
are Basis von 256 (8 Bit) angegeben. Ersichtlich benö
tigt die logarithmische Darstellung nur 6 Bit. Die
Tabelle ist in acht Sektionen, S0-S7 geteilt. Die Zahl
der Sektionen ist also gleich der Wortlänge der linea
ren Darstellung. In jeder zweiten Sektion verdoppelt
sich die Zahl der Stufen. Außerdem verdoppelt sich in
jeder zweiten Sektion die Höhe der Stufen, und zwar so,
daß auf der linearen Skala im obersten Segment die
größte Stufenhöhe auftritt und darunter jeweils zwei
Sektionen die gleiche Stufenhöhe haben. Die Tabelle ist
jeweils so abgekürzt, daß für die less significant
Bit′s in der jeweiligen Sektion nur der niedrigste Wert
und der höchste Wert angegeben sind. Die Bit-Kennung
der Sektionen ist an den MSB′s zu erkennen. In der
linearen Darstellung tritt in jeder Sektion ein höher
wertiges MSB auf. In der logarithmischen Darstellung
sind die acht Sektionen an den Werten der drei MSB′s zu
erkennen.
Damit ist der Aufbau der Codiereinheit festgelegt. Für
die komprimierende logarithmische Codierung sind die
bekannten Größen die Bit′s A0-A7 der linearen Darstel
lung. Es werden nun zunächst die Booleschen Gleichun
gen für die acht Sektionen aufgestellt. Die Ergebnisse
für S1-S7 sind in Fig. 4 angegeben. Es ergeben sich
einfach AND-Funktionen, die natürlich auch in OR-Form
umgeschrieben werden können. Mit den Sektionskennungen
S1-S7 können nun sofort die drei MSB′s des logarithmi
schen Codes l5 . . . l3 leicht aufgeschrieben werden
(s. ebenfalls Fig. 4). Aber auch die drei LSB′s l2 . . . l0
ergeben sich in einfacher Form als Summen von Produkten
aus nur jeweils zwei Größen, von denen eine die Sekti
onsnummer aus S1-S7 ist. Auch diese Gleichungen sind
schaltungsmäßig leicht zu realisieren.
Fig. 5 zeigt die expandierende Decodierung für das
Beispiel der Gewinnung einer Lineardarstellung mit 16
Bit aus einem logarithmischen Code mit 11 Bit. Entspre
chend dem erfindungsgemäßen Aufbau der Codiereinheit
teilt diese bei einer 16-Bit-Darstellung den Wertebe
reich in 16 Sektionen ein, die durch die vier MSB′s der
logarithmischen Codierung beschrieben werden. Die log
arithmische Kompression ergibt einen Bedarf von 11 Bit
für die Darstellung des 16 Bit linearen Wertebereichs.
Wieder werden zunächst die Sektionen S0-S15 beschrie
ben, diesmal als Funktion der logarithmischen MSB′s
l10-l7. Daraus sind dann alle linearen Bit′s C0-C15
wiederum leicht als Summen von Produkten aus jeweils
zwei Faktoren zu gewinnen. Die Zahl der Summenterme ist
maximal acht (allgemein die Hälfte der linearen Wort
länge), was wiederum die Effizienz des Codes zeigt.
Nur ergänzend soll an dieser Stelle nochmals auf Fig. 2
hingewiesen werden, die den Verlauf des Signal-Rausch
verhältnisses als Funktion des Pegels zeigt. Dieser
Figur ist zu entnehmen, daß 11 Bit logarithmische Co
dierung 16-Bit-Auflösung (98 dB) ermöglichen und ande
rerseits immerhin ein Signal-Rauschverhältnis von 48 dB
bei maximalem Pegel bietet.
Durch die erfindungsgemäß ausgebildete komprimierende
Codiereinheit wird also erreicht, daß
- 1. bei gleicher Dynamik die Wortlänge verkürzt wird,
- 2. die schwierigen platz- und zeitaufwendigen Multipli kationen durch Additionen ersetzt werden.
Bei der Addition der Logarithmen wird außerdem die
Dynamik erhalten, insbesondere auch nach einer expan
dierenden Decodierung. Demgegenüber wird in der norma
len Digitaltechnik nach dem Multiplizieren von zwei
N-Bit-Wörtern das Ergebnis normalerweise bei N-Bit abge
schnitten, so daß trotz großem Rechenaufwand nur eine
eingeschränkte Dynamik erhalten wird. Durch die loga
rithmisch kompandierende Signalverarbeitung wird nicht
nur die Multiplikation von N-Bit-Wörtern eliminiert, in
der z. B. immer 2 N-Bit lange Addierer vorkommen und
eine Komplexität der Ordnung N2 bewältigt werden muß,
sondern die ganze Prozedur wird im wesentlichen durch
eine weniger als N-Bit lange Addition ersetzt.
Oder/Und-Codier- und Decodierfunktionen können leicht
durch schnelle Schaltungen realisiert werden.
Fig. 6 zeigt als nicht einschränkendes Beispiel eine
CMOS-Realisierung für die einzigen zwei vorkommenden
Funktionstypen. In der oberen Teilfigur ist als typi
sches Beispiel die Oderschaltung für die Gewinnung
eines Sektionssignals, z. B. S5 dargestellt. In stati
scher Technik werden die Bit-Signale an N-Kanal-Schalt
transistoren angelegt. T1 ist ein als Lastwiderstand
geschalteter PMOS-Transistor. Wegen des größeren Fanout
empfiehlt sich ein zweistufiger Puffer.
Nach der ersten Stufe (bestehend aus T2 und T3) wird das
Signal auf einen Pull up-Transistor T4 geschaltet. Dieser
hat die Wirkung, daß der durch den relativ hochohmigen
Transistor T1 verursachte langsame Pull up deutlich be
schleunigt wird, sobald der Buffer (T2, T3) seinen
Triggerpunkt unterschreitet. Die zweite Pufferstufe
(T5, T6) wird in den Kanalbreiten nun so ausgelegt, daß
sie den erforderlichen Fanout optimal treiben kann.
Günstigerweise ergibt sie auch direkt das True-Signal
S5, welches ausschließlich in der zweiten Coderstufe
benötigt wird.
Eine typische zweite Coderstufe ist in der unteren
Teilfigur dargestellt. Zu realisieren sind Funktionen
der Form A/B plus C/D. Wie die Schaltung zeigt, kann
auch dieses in MOS-Technik sehr effizient ausgeführt
werden. Serienschaltungen von zwei Logigtransistoren
sind in jeder MOS-Schaltungsvariante zulässig. Es er
gibt sich ein minimaler Transistor- und Flächenbedarf.
Die Optimierung dieser Schaltung muß berücksichtigen,
daß wegen der Serienschaltung von zwei Logiktransisto
ren nunmehr T1 noch hochohmiger ausgelegt werden muß.
Um so mehr Bedeutung gewinnt der aktive Pull up-Tran
sistor T4. Die erste Pufferstufe (T2, T3) ist minima
zu dimensionieren, damit nur kleine Kapazitäten von der
Logik entladen bzw. von den Pull up′s (T1, T4) aufgela
den werden müssen. Eine doppelte Pufferkaskade (T5-T8)
kann für den erforderlichen Fanout optimal ausgelegt
werden und liefert andererseits das wahre l2 und das
negierte Ausgangssignal.
Transistorzahl, Flächenbedarf und Schaltzeit lassen sich
insbesondere bei Codern für größere Wortlängen durch die
bekannte Aufteilung von Codern in Teilstufen günstig
gestalten. Bereits für Wortlängen über 6 Bit kann dies zu
empfehlen sein.
Wie die ausgeführten Beispiele zeigen, benutzt man ge
nerell hier am besten gepufferte FET-Logik. Solche Puffer
können natürlich auch günstig in Bipolar-CMOS-Technologie
(BICMOS) und in Gallium-Arsenid-Technologie ausgeführt
werden.
Vorstehend ist die Erfindung exemplarisch ohne Ein
schränkung des allgemeinen Erfindungsgedankens be
schrieben worden. Insbesondere ist es auch möglich,
Dividieren und Potenzieren in entsprechender Weise
zu bearbeiten.
Claims (17)
1. Schaltungsanordnung zum digitalen Multiplizieren von
Integer-Zahlen, mit einer Codiereinheit, die den Logarith
mus der zu multiplizierenden Zahlen bildet, einer Addier
einheit, die die Ausgangswerte der Codiereinheit addiert,
und einer Decodiereinheit, die den Ausgangswert der Ad
diereinheit delogarithmiert,
dadurch gekennzeichnet, daß die Codiereinheit zur Bildung
des Logarithmus die Exponentialkennlinie derart stückweise
linear annähert, daß die Zahl der linearisierten Sektionen
mindestens gleich der Bitzahl der jeweiligen Integer-Zahl
ist.
2. Schaltungsanordnung nach Anspruch 1,
dadurch gekennzeichnet, daß die Steigungen in jeder Sek
sind.
3. Schaltungsanordnung nach Anspruch 1 oder 2,
dadurch gekennzeichnet, daß sich die Steigungen, insbeson
dere von Sektion zu Sektion verdoppeln.
4. Schaltungsanordnung nach einem der Ansprüche 1 bis 3,
dadurch gekennzeichnet, daß die signifikanten Bits der zu
gezogen werden.
5. Schaltungsanordnung nach Anspruch 4,
dadurch gekennzeichnet, daß der Sektionencode die signifi
kanten Bits der logarithmierten Zahl ergibt.
6. Schaltungsanordnung nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß die weniger signifikanten Bits
der zu logarithmierenden Zahl, gesteuert vom Sektionen-
Code, zur Auffüllung der weniger signifikanten Bits der
logarithmierten Zahl benutzt werden.
7. Schaltungsanordnung nach einem der Ansprüche 1 bis 6,
dadurch gekennzeichnet, daß zur Generierung der weniger
signifikanten Bits der logarithmierten Zahl insbesondere
eine Schaltmatrix benutzt wird.
8. Schaltungsanordnung nach einem der Ansprüch 1 bis 7,
dadurch gekennzeichnet, daß eine n-Bit zu logarithmieren
den Zahl in einem Logarithmus codiert wird, der mindestens
(log2n)integer und vorzugsweise ((log2n)integer+n-1) Bit
lang ist.
9. Schaltungsanordnung nach einem der Ansprüche 1 bis 8,
dadurch gekennzeichnet, daß der Addierer für die Logarith
men kürzer als (n-1) Bit lang ist.
10. Schaltungsanordnung nach einem der Ansprüche 1 bis 9,
dadurch gekennzeichnet, daß der Logarithmus des Produkts
bei der Decodierung ein delogarithmiertes Produkt mit 2n
Bit Dynamik und n Bit Genauigkeit liefert.
11. Schaltungsanordnung nach einem der Ansprüche 1 bis 10,
dadurch gekennzeichnet, daß bei der Decodierung die signi
fikanten Bits des Logarithmus zur Kennung der Sektionen
benutzt werden.
12. Schaltungsanordnung nach einem der Ansprüche 1 bis 11,
dadurch gekennzeichnet, daß der Sektionencode zur Darstel
lung der signifikanten Bits der delogarithmierten Zahl
benutzt wird.
13. Schaltungsanordnung nach einem der Ansprüche 1 bis 12,
dadurch gekennzeichnet, daß die weniger signifikanten Bits
des Logarithmus, gesteuert vom Sektionencode (nach An
spruch 11) zur Auffüllung der weniger signifikanten Bits
der delogarithmierten Zahl benutzt werden.
14. Schaltungsanordnung nach einem der Ansprüche 1 bis 13,
dadurch gekennzeichnet, daß die Codiereinheit und die
Decodiereinheit die Eingangswerte gemäß Bild 8 verarbei
ten.
15. Schaltungsanordnung nach einem der Ansprüche 1 bis 14,
dadurch gekennzeichnet, daß bei einer Bitzahl von 16 die
Wortlänge des logarithmierten Wertes 11 ist.
16. Schaltungsanordnung nach Anspruch 6,
dadurch gekennzeichnet, daß die Codiereinheit und die
Decodiereinheit die Eingangswerte gemäß Bild 11 ver
arbeiten.
17. Schaltungsanordnung nach einem der Ansprüche 1 bis 16,
dadurch gekennzeichnet, daß die Schaltung die mathema
tischen Operationen Dividieren und Potenzieren in
entsprechender Weise bearbeitet.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19904033507 DE4033507C2 (de) | 1990-10-21 | 1990-10-21 | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen |
DE4213107A DE4213107C2 (de) | 1990-10-21 | 1992-04-21 | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19904033507 DE4033507C2 (de) | 1990-10-21 | 1990-10-21 | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen |
DE4213107A DE4213107C2 (de) | 1990-10-21 | 1992-04-21 | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4033507A1 true DE4033507A1 (de) | 1992-07-02 |
DE4033507C2 DE4033507C2 (de) | 1997-04-24 |
Family
ID=25897893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19904033507 Expired - Fee Related DE4033507C2 (de) | 1990-10-21 | 1990-10-21 | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4033507C2 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993017383A1 (de) * | 1992-02-29 | 1993-09-02 | Hoefflinger Bernd | Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen |
DE10013068C2 (de) * | 1999-06-23 | 2002-04-04 | Mitsubishi Electric Corp | Potenzierungsoperationsvorrichtung |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4700319A (en) * | 1985-06-06 | 1987-10-13 | The United States Of America As Represented By The Secretary Of The Air Force | Arithmetic pipeline for image processing |
-
1990
- 1990-10-21 DE DE19904033507 patent/DE4033507C2/de not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4700319A (en) * | 1985-06-06 | 1987-10-13 | The United States Of America As Represented By The Secretary Of The Air Force | Arithmetic pipeline for image processing |
Non-Patent Citations (1)
Title |
---|
US-Z.: IRE TRANSACTION ON ELECTR. COMPUTERS, 1962, S. 512-514 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1993017383A1 (de) * | 1992-02-29 | 1993-09-02 | Hoefflinger Bernd | Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen |
DE10013068C2 (de) * | 1999-06-23 | 2002-04-04 | Mitsubishi Electric Corp | Potenzierungsoperationsvorrichtung |
US6480873B1 (en) | 1999-06-23 | 2002-11-12 | Mitsubishi Denki Kabushiki Kaisha | Power operation device |
Also Published As
Publication number | Publication date |
---|---|
DE4033507C2 (de) | 1997-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3686697T2 (de) | Fehlertoleranter kodierer zur umwandlung eines thermometerkodes in einen binaeren kode. | |
DE69328583T2 (de) | Verfahren und Vorrichtung zur Signalkompression mit zwei Komponenten | |
DE69026292T2 (de) | Methode zur Bilddatenkodierung | |
DE69032697T2 (de) | Codierverfahren und Codiervorrichtung | |
DE10021824C2 (de) | D/A-Wandlervorrichtung und D/A-Wandlerverfahren | |
DE69605451T2 (de) | Digital-analog-wandler mit mehreren ausgabestufen | |
DE20321883U1 (de) | Computervorrichtung und -system zum Entropiedecodieren quantisierter Transformationskoeffizienten eines Blockes | |
DE3853899T2 (de) | Verfahren und Vorrichtung zur Codierung und Decodierung eines Signals. | |
DE2614916A1 (de) | Konverter zur codeumwandlung | |
WO2003094355A2 (de) | Verfahren und anordnung zur arithmetischen enkodierung und dekodierung von binären zuständen sowie ein entsprechendes computerprogramm und ein entsprechendes computerlesbares speichermedium | |
DE19549066A1 (de) | Vorrichtung zur Konvertierung eines digitalen Eingangssignals | |
EP0628183B1 (de) | Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen | |
CH649878A5 (de) | Digital-analog-umsetzer. | |
DE2730662A1 (de) | Verfahren und schaltung zum erzeugen eines autokorrelations-funktions-faktors | |
DE69427339T2 (de) | Begrenzerschaltung | |
DE4019646C2 (de) | Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung | |
DE1803222B2 (de) | Verfahren zum zusammenfassen pulscodierter nachrichten | |
AT403969B (de) | Verfahren zur kompression eines analogen signals | |
DE4033507C2 (de) | Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen | |
EP0139207B1 (de) | Schaltung zur CSD-Codierung einer im Zweierkomplement dargestellten, binären Zahl | |
DE69029685T2 (de) | Bandbreitekompressionsgerät | |
DE2900844C2 (de) | ||
DE68926613T2 (de) | Gerät zur Signalwandlung, für Fernmeldevermittlungsanwendungen das die Quantisierungsfehler reduziert | |
DE69918313T2 (de) | Verfahren und vorrichtung zur signalkompression im festpunktformat ohne bias | |
DE3621446A1 (de) | Geraet zum digitalen verarbeiten von kontinuierlichen bitstroemen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
AG | Has addition no. |
Ref country code: DE Ref document number: 4213107 Format of ref document f/p: P |
|
AG | Has addition no. |
Ref country code: DE Ref document number: 4213107 Format of ref document f/p: P |
|
AG | Has addition no. |
Ref country code: DE Ref document number: 4213107 Format of ref document f/p: P |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |