DE3524981A1 - Anordnung mit einem saettigbaren carry-save-addierer - Google Patents
Anordnung mit einem saettigbaren carry-save-addiererInfo
- Publication number
- DE3524981A1 DE3524981A1 DE19853524981 DE3524981A DE3524981A1 DE 3524981 A1 DE3524981 A1 DE 3524981A1 DE 19853524981 DE19853524981 DE 19853524981 DE 3524981 A DE3524981 A DE 3524981A DE 3524981 A1 DE3524981 A1 DE 3524981A1
- Authority
- DE
- Germany
- Prior art keywords
- carry
- adders
- inputs
- bits
- subtotal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
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/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
- G06F7/509—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
- G06F7/5095—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators word-serial, i.e. with an accumulator-register
-
- 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/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49905—Exception handling
- G06F7/4991—Overflow or underflow
- G06F7/49921—Saturation, i.e. clipping the result to a minimum or maximum value
Description
Die Erfindung bezieht sich auf eine Anordnung mit einem
Carry-Save-Addierer zur bitparallelen Addition von Binärzahlen
im Zweierkomplement nach dem Oberbegriff des Patentanspruchs 1.
Ein Carry-Save-Addierer dieser Art ist aus dem Buch
"Computer Arithmetic" von K. Hwang, Verlag John Wiley &
Sons, New York, 1979, S. 98-103, insbesondere Fig. 4.2,
bekannt. Hierbei weist jeder erste Addierer drei Eingänge
auf, die jeweils mit gleichwertigen Bits dreier
miteinander zu addierender Binärzahlen belegt sind. Die
Summenausgänge der ersten Addierer sind an erste Eingänge
der Addiereinrichtung geführt, die Übertragsausgänge
der ersten Addierer (mit Ausnahme des höchstwertigen
Addierers) an zweite Eingänge der Addiereinrichtung.
An den Ausgängen der letzteren erscheint ein
Summenwort als Ergebnis der Addition. Zum Unterschied
von einer Addiereranordnung mit Übertragsdurchlauf
("Carry-Propagate"-Prinzip) werden hier die Überträge
aller ersten Addierer bei einer Addition von drei
Binärzahlen gleichzeitig gebildet und stehen als Übertragswort
neben dem an den ersten Addierern abgegriffenen
Zwischensummenwort für eine Addition in der Addiereinrichtung
zur Verfügung. Ein in dieser Weise aufgebauter
Addierer arbeitet nach dem sog. "Carry-Save"-Prinzip.
Wird hierbei eine binäre Zahl den dritten Eingängen der
ersten Addierer extern zugeführt, während an den ersten
beiden Eingängen ein durch eine vorhergehende Addition
erreichtes erstes Zwischenergebnis anliegt, das aus
einem den ersten Eingängen zugeführten Zwischensummenwort
und einem den zweiten Eingängen zugeführten Übertragswort
besteht, so ergibt sich an den Ausgängen der
ersten Addierer ein durch Addition des ersten Zwischenergebnisses
und dieser Zahl gebildetes zweites Zwischenergebnis.
Bei einer fortlaufenden Bildung immer neuer Zwischenergebnisse,
die bei einer fortlaufenden Zuführung weiterer
binärer Zahlen über die dritten Eingänge erhalten
werden, spricht man auch von einer Akkumulation dieser
Zahlen. Es kann nun ein Überlauf des Summenworts auftreten,
der dadurch gekennzeichnet ist, daß der zulässige
Addiererinhalt, der von der vorgegebenen Anzahl
der ersten Addierer abhängt, für positive oder negative
Inhalte überschritten oder unterschritten wird. Ein
solcher Überlauf bedeutet beim Einsatz eines Carry-
Save-Addierers in rekursiven Schaltungen oftmals,
daß sich der Addiererinhalt periodisch zwischen zwei
Grenzwerten zu verändern beginnt, wobei das sich fortlaufend
ändernde Summenwort am Ausgang der Addiereinrichtung
einer analogen Schwingung entspricht. Hinweise
auf ein solches Verhalten eines Addierers in einer
rekursiven Schaltung sind den Proc. of the IEEE, Vol.
63, No. 4, April 1975, S. 633-648, vgl. insbesondere
Fig. 5 und 6 und zugehöriger Text auf Seite 636, zu
entnehmen.
Aufgabe der vorliegenden Erfindung ist es, eine Anordnung
der eingangs genannten Art anzugeben, bei der ein Überlauf
des aufgelaufenen Summenworts sicher vermieden
wird. Das wird erfindungsgemäß durch eine Ausbildung
nach dem kennzeichnenden Teil des Patentanspruchs 1
erreicht.
Der mit der Erfindung erzielbare Vorteil besteht insbesondere
darin, daß Zwischensummen- bzw. Übertragsworte,
die zu einem Überlauf des Summenworts führen können, unmittelbar
zur Erkennung einer Überlaufsituation und zu
deren Beseitigung herangezogen werden. Hierdurch werden
unkontrollierte Schwankungen des Summenworts ausgeschaltet.
Die Ansprüche 2 bis 16 sind auf bevorzugte Weiterbildungen
der Erfindung gerichtet.
Die Erfindung wird nachfolgend anhand von in der Zeichnung
dargestellten, bevorzugten Ausführungsbeispielen
näher erläutert. Dabei zeigt:
Fig. 1 eine nach der Erfindung ausgebildete Anordnung
mit einem Carry-Save-Addierer zur bitparallelen
Addition von drei Binärzahlen,
Fig. 2 ein Schaltungsbeispiel einer ersten Teilschaltung
nach Fig. 1,
Fig. 3 ein Schaltungsbeispiel einer zweiten Teilschaltung
nach Fig. 1,
Fig. 4 ein Schaltungsbeispiel einer dritten Teilschaltung
nach Fig. 1,
Fig. 5 eine erfindungsgemäße Anordnung mit einem Carry-
Save-Addierer zur bitparallelen Addition von vier
Binärzahlen,
Fig. 6 ein Anwendungsbeispiel für eine Anordnung nach
Fig. 1 und
Fig. 7 ein Anwendungsbeispiel für eine Anordnung nach
Fig. 5.
In Fig. 1 sind drei Addierer AD n-1, AD n-2 und AD n-3
dargestellt, die jeweils drei Eingänge, z. B. 1 bis 3,
für gleichwertige Bits dreier miteinander zu addierender,
im Zweierkomplement dargestellter Binärzahlen, einen
Summenausgang, z. B. 4, und einen Übertragsausgang, z. B.
5, aufweisen. Zur Addition von n-stelligen Binärzahlen
ergänzt man die Fig. 1 durch weitere Addierer AD n-4 . . .
AD 0, die den dargestellten nach Aufbau und Wirkungsweise
entsprechen. Die Summenausgänge der Addierer AD i sind
mit Ausgangsleitungen z. B. 6 bis 8, beschaltet, die an
erste Eingänge 11, 12, 13 . . . einer Addiereinrichtung AS
geführt sind. Die Übertragsausgänge der Addierer AD i mit
Ausnahme von AD n-1 sind mit Ausgangsleitungen 14, 15 . . .
beschaltet, die jeweils mit zweiten Eingängen 21, 22 . . .
von AS verbunden sind. Die Addiereinrichtung AS weist
Ausgänge 31, 32 . . . 3 n auf. AS besteht z. B. aus n
Addieren AS n-1 . . . AS 0, die jeweils drei Eingänge und
einen Ausgang besitzen. Die ersten beiden Eingänge von
AS n-1 entsprechen dabei den Eingängen 11 und 21 von AS,
der Ausgang von AS n-1 dem Ausgang 31 von AS. AS n-2 besitzt
zwei Eingänge 12, 22 und den Ausgang 32 usw. Der
nicht dargestellte dritte Eingang von AS n-1 ist mit dem
Übertragsausgang von AS n-2 verbunden, der nicht dargestellte
dritte Eingang von AS n-2 mit dem Übertragsausgang
von AS n-3 usw.
Ein rekursiver Schaltungszweig 16 verbindet die am
Summenausgang von AD n-1 angeschlossene Ausgangsleitung 6
mit dem ersten Eingang dieses Addierers. Ein zweiter
rekursiver Schaltungszweig 17 verbindet die am Übertragsausgang
5 von AD n-2 angeschlossene Ausgangsleitung
14 mit dem zweiten Eingang von AD n-1. In entsprechender
Weise sind rekursive Schaltungszweige 18, 19 an die
ersten beiden Eingänge 1, 2 von AD n-2 geführt, sowie
jeweils weitere rekursive Schaltungszweige an die ersten
beiden Eingänge der übrigen Addierer AD i . In die Ausgangsleitungen
6 bis 8 sind jeweils Logikschaltungen 23
bis 25 eingefügt, in die Ausgangsleitungen 14 und 15
weitere Logikschaltungen 26 und 27. Weiterhin sind in
die Ausgangsleitungen 6 bis 8, 14 und 15 jeweils Zwischenspeicher,
insbesondere Schieberegister, 33 bis 37
eingefügt. Die rekursiven Schaltungszweige, z. B. 16, 17,
sind an die zugehörigen Ausgangsleitungen, z. B. 6, 14,
so angeschlossen, daß die Anschlußpunkte ausgangsseitig
von den Logikschaltungen 23 bis 27 und den Zwischenspeichern
33 bis 37 liegen.
Ein Dekoder 28 weist vier Eingänge 29, 30, 38 und 39 auf,
von denen 29 und 30 mit den beiden ersten Eingängen von
AD n-1 und 38 und 39 mit den beiden ersten Eingängen von
AD n-2 verbunden sind. Ausgänge 40 und 40′ von 28 sind
mit Eingängen sämtlicher Logikschaltungen, z. B. 23 bis
27, beschaltet. Ein Ausgang 41 von 28 ist an die Eingänge
einiger Logikschaltungen, z. B. 25, geführt, die
den Summenausgängen der Addierer AD i nachgeordnet sind,
während ein Ausgang 42 an die Eingänge der übrigen Logikschaltungen,
z. B. 23 und 24, geführt ist, die den
Summenausgängen von AD i nachgeordnet sind.
An die dritten Eingänge von AD i wird nun eine (n-1)-stellige,
im Zweierkomplement dargestellte, binäre Zahl D
mit den Bits d n-2, d n-3 . . . d 0 gelegt, wobei das höchstwertige
Bit d n-2 wegen der Verbindung 43 den dritten
Eingängen von AD n-1 und AD n-2 zugeführt wird. Die Zahl D
ist damit durch Verdopplung ihres Vorzeichenbits zu
einer n-stelligen Zahl ergänzt. Läßt man die Logikschaltungen
23 bis 27 außer Betracht, so treten die Bits
d n-2, d n-3 . . . nach Durchführung einer bitparallelen
Addition in den Addierern AD i auch an den Summenausgängen
derselben auf, wobei sie in die Zwischenspeicher 33
bis 35 eingeschrieben werden. Mit einem Taktimpuls werden
diese Bits dann über die rekursiven Schaltungszweige
16, 18 . . . an die ersten Eingänge, z. B. 1, von AD i durchgeschaltet,
während gleichzeitig eine neue binäre Zahl
D 1 an die dritten Eingänge von AD i gelegt wird. Nach
Durchführung einer Addition erhält man ein der Summe von
D + D 1 entsprechendes erstes Zwischenergebnis in Form
eines Zwischensummenwortes an den Summenausgängen und
eines Übertragswortes an den Übertragsausgängen von AD i .
Die Bits des Zwischensummenwortes werden in die Zwischenspeicher
33, 34 . . . eingeschrieben, die Bits des
Übertragsworts in die Zwischenspeiche 36, 37 . . . Beim
Auftreten eines weiteren Taktimpulses werden dann die
Bits des Zwischensummenwortes an die ersten Eingänge von
AD i durchgeschaltet, die Bits des Übertragswortes an die
zweiten Eingänge, wobei eine weitere binäre Zahl D 2 an
die dritten Eingänge von AD i angelegt wird. Nach Durchführung
einer sich anschließenden Addition steht an den
Ausgängen von AD i ein zweites Zwischenergebnis zur Verfügung,
das der Summe aus D + D 1 + D 2 entspricht und in die
Zwischenspeicher 33 bis 37 eingeschrieben wird. Mit jedem
weiteren Taktimpuls wird dann eine neue Zahl Di an
die dritten Eingänge angelegt und nach einem Additionsschritt
ein neues Zwischenergebnis erhalten, das aus der
Summe der vorher aufgelaufenen Zwischenergebnisse und
der jeweiligen Zahl Di besteht.
Die Zwischenergebnisse, die jeweils in Form eines Zwischensummenwortes
S mit den Bits s n-1, s n-2 . . . an den
Eingängen 11, 12, 13 . . . und eines Übertragswortes C mit
den Bits c n-1, c n-3 . . . an den Eingängen 21, 22 . . . von
AS vorliegen, werden in AS zu Summenworten S′ mit den
Bits s n-1′, s n-2′ . . . s 0′ zusammengefaßt, die an den Ausgängen
31, 32 . . . 3 n auftreten. Eine nach Fig. 1 aufgebaute
und in dieser Weise betriebene Anordnung bezeichnet
man auch als Akkumulator, ihr Ausgangssignal S′ als
das jeweils aufgelaufene Akkumulatorwort, das den jeweiligen
Akkumulatorinhalt kennzeichnet.
Für den Fall, daß bei einem Akkumulator nach Fig. 1 mit
n = 5 an die ersten Eingänge von AD i ein im Zweierkomplement
dargestelltes Zwischensummenwort S = 01110, an
die zweiten Eingänge ein Übertragswort S = 0111 und an
die dritten Eingänge eine Binärzahl D = 00011 gelegt
werden, ergibt sich hieraus nach Durchführung einer bitparallelen
Addition ein neues Zwischensummenwort S 1 = 00011
und ein neues Übertragswort C 1 = 1110. Da S, C und
D jeweils Dezimalzahlen von 14, 14 und 3 entsprechen,
würde man bei ihrer Addition ein Akkumulatorwort erwarten,
das dem (richtigen) Ergebnis von 31 entspricht. Das
an den Ausgängen von AD i auftretende neue Zwischensummenwort
S 1 entspricht aber einer Dezimalzahl von +3, das
neue Übertragswort C 1 einer Dezimalzahl von -4, so daß
sich hieraus ein Akkumulatorwort ergibt, das einem (falschen)
Ergebnis von -1 entspricht. Dies ist auf eine
Überlaufsituation zurückzuführen, die dadurch entstanden
ist, daß ein Akkumulatorinhalt von 31 mit einer Wortbreite
von n = 5 des Akkumulators nicht mehr dargestellt
werden kann.
Zur Ermittlung solcher Überlaufsituationen, die zu
fehlerhaften Zwischenergebnissen führen, dient der
Dekoder 28. Eine erste Überlaufbedingung, auf die der
Dekoder 28 mit einem ersten Überlaufsignal antwortet,
entsteht nach einer bevorzugten Ausgestaltung der Erfindung
darin, daß die an seinen Eingängen 29 und 30
anliegenden Bits s n-1 und c n-1 jeweils 0 sind und wenigstens
eines der an den Eingängen 38 und 39 anliegenden
Bits s n-2 und c n-2 den Wert 1 aufweist. Diese Bedingung
wird als positive Überlaufbedingung bezeichnet, das dabei
am Ausgang 41 abgegebene, invertierte Überlaufsignal
als +. Eine zweite, negative Überlaufbedingung, auf
die der Dekoder 28 mit einem am Ausgang 42 abgegebenen
negativen invertierten Überlaufsignal - reagiert,
liegt dann vor, wenn die bei 29 und 30 anliegenden Bits
s n-1 und c n-1 jeweils 1 sind und wenigstens eines der
bei 38 und 39 anliegenden Bits s n-2 und c n-2 den Wert 0
aufweist. Beim Auftreten eines der Signale + oder
- werden zusätzlich über die Ausgänge 40 und 40′
Signale ORALL mit dem Wert 1 und mit dem Wert 0
abgegeben.
Zur Sättigung des Akkumulators beim Auftreten einer
dieser beiden Überlaufbedingungen werden zweckmäßigerweise
die Logikschaltungen, z. B. 26, 27 . . . , an den
Übertragsausgängen von AD i jeweils durch die Signale
ORALL und veranlaßt, die eingangsseitig anliegenden
Übertragsbits c n-1, c n-2 . . . , die sonst an ihre
Ausgänge durchgeschaltet sind, von diesen abzuschalten.
Statt dieser Bits werden nun über die Ausgänge aller
dieser Logikschaltungen jeweils Sättigungsübertragsbits
0 abgegeben.
Weiterhin werden beim Auftreten der positiven Überlaufbedingung
die Logikschaltungen 23, 24 an den Summenausgängen
der beiden höchstwertigen Addierer AD n-1 und
AD n-2 mittels der Signale -, ORALL und so beeinflußt,
daß sie die eingangsseitig anliegenden Zwischensummenbits
s n-1 und s n-2, die sonst an ihre Ausgänge
durchgeschaltet sind, von diesen abschalten und
jeweils durch Sättigungszwischensummenbits des Wertes 0
ersetzen. +, ORALL und bewirken außerdem, daß
die Logikschaltungen, z. B. 25, an den Summenausgängen
der Addierer AD n-3 . . . AD 0 die eingangsseitig anliegenden
Zwischensummenbits, die sonst an ihre Ausgänge
durchgeschaltet sind, von diesen abschalten und durch
Sättigungszwischensummenbits des Wertes 1 ersetzen.
Beim Auftreten der negativen Überlaufbedingung werden
die Logikschaltungen 23, 24 an den Summenausgängen der
beiden höchstwertigen Addierer AD n-1 und AD n-2 mittels
der Signale ORALL, und - so beeinflußt, daß
sie die eingangsseitig anliegenden Zwischensummenbits
s n-1 und s n-2 von ihren Ausgängen abschalten und durch
Sättigungszwischensummenbits des Wertes 1 ersetzen.
+, ORALL und bewirken ferner, daß die Logikschaltungen,
z. B. 25, an den Summenausgängen der
Addierer AD n-3 . . . AD 0 die eingangsseitig anliegenden
Zwischensummenbits von ihren Ausgängen abschalten und
jeweils durch Sättigungszwischensummenbits des Wertes 0
ersetzen.
Die vorstehend beschriebenen Sättigungsmaßnahmen können
dahingehend verallgemeinert werden, daß die Ausgangsleitungen,
z. B. 6 bis 8 und 14, 15, an den Ausgängen der
Addierer AD i beim Auftreten von Überlaufbedingungen von
den über die Addierer AD i abgegebenen Zwischensummen-
und Übertragsworten S und C freigeschaltet und stattdessen
mit vorgegebenen Sättigungszwischensummen- und
Sättigungsübertragsworten beaufschlagt werden. Die
Sättigungszwischensummen- und Sättigungsübertragsworte
sollten dabei für den Fall einer positiven (negativen)
Sättigungsbedingung so gewählt sein, daß sie ein Akkumulatorwort
bzw. Summenwort S′ ergeben, dessen zugehöriger
Akkumulatorinhalt einem Grenzwert möglichst
nahekommt, für den die positive (negative) Überlaufbedingung
schon gilt, ohne diesen Grenzwert jedoch zu
erreichen oder zu überschreiten, und zwar unabhängig
davon, wie sich das Akkumulatorwort aus dem Sättigungszwischensummen-
und Sättigungsübertragswort zusammensetzt.
Die vorstehend genannte Bedingung ist bei dem für
einen 5-Bit-Akkumulator genannten Zahlbeispiel mit einem
Sättigungsübertragswort von 0000 und einem Sättigungszwischensummenwort
von 00111 beim Auftreten einer positiven
Überlaufbedingung und einem Sättigungszwischensummenwort
von 11000 beim Auftreten einer negativen
Überlaufbedingung erfüllt.
Fig. 2 zeigt ein Ausführungsbeispiel des Dekoders 28 von
Fig. 1. Hierbei sind die Eingänge 29 und 30 mit den Eingängen
eines UND-Gatters 44 sowie mit den Eingängen
eines NOR-Gatters 45 verbunden. Die Eingänge 38 und 39
sind an die Eingänge eines NAND-Gatters 46 sowie an die
Eingänge eines ODER-Gatters 47 geführt. Die Ausgänge von
44 und 46 liegen an den Eingängen eines UND-Gatters 48,
die Ausgänge von 45 und 47 an den Eingängen eines UND-
Gatters 49. Die Ausgänge von 48 und 49 liegen ihrerseits
an den Eingängen eines ODER-Gatters 50, dessen Ausgang
den Ausgang 40 des Dekoders 28 bildet. Von diesem gelangt
man über einen Inverter 51 zum Ausgang 40′. Der
Ausgang von 49 ist mit einem Inverter 52 beschaltet,
dessen Ausgang dem Ausgang 41 des Dekoders entspricht.
Außerdem ist der Ausgang von 48 mit einem Inverter 53
beschaltet, dessen Ausgang den Ausgang 42 des Dekoders
darstellt. Bei einer Belegung der Ausgänge 29, 30, 38
und 39 jeweils mit den Bits s n-1, c n-1, s n-2und c n-2
ist am Ausgang des UND-Gatters 49 das positive Überlaufsignal
+OVFL abgreifbar, am Ausgang von 48 das negative
Überlaufsignal -OVFL. Am Ausgang 40 des ODER-
Gatters 50 steht dann das Signal ORALL zur Verfügung, am
Ausgang 40′ das hierzu invertierte Signal . An den
Ausgängen 41 und 42 treten die invertierten Überlaufsignale
+ und - auf.
In Fig. 3 ist ein Ausführungsbeispiel für die Logikschaltung
26 angegeben, die dem Übertragsausgang 5 von AD n-2
nachgeschaltet ist. Sie enthält gemäß Fig. 3 zwei mit
ihren Schaltstrecken zueinander parallel liegende Schalttransistoren
54 und 55, von denen der erste als P-Kanal-
Feldeffekttransistor und der zweite als N-Kanal-Feldeffekttransistor
ausgebildet ist. Die Sourceanschlüsse
dieser Transistoren sind dabei mit dem Eingang der
Logikschaltung 26 verbunden, die mit dem Übertragsausgang
5 von Fig. 1 in Verbindung steht, die Drainanschlüsse
dieser Transistoren mit einem Ausgang 56 von
26, der mit dem Eingang des Zwischenspeichers 36 beschaltet
ist. Der Ausgang 56 ist über einen weiteren
N-Kanal-Schalttransistor 57 mit einem Schaltungspunkt 58
verbunden, der auf Bezugspotential liegt. Die Gates von
54 und 57 sind mit dem Signal ORALL belegt, das Gate von
55 mit dem hierzu invertierten Signal . Die übrigen
Logikschaltungen, z. B. 27, die den Übertragsausgängen
der Addierer AD n-3 . . . AD 0 nachgeschaltet sind, sind
zweckmäßigerweise ebenfalls gemäß Fig. 3 ausgebildet.
Ein Ausführungsbeispiel für die Logikschaltung 24 ist in
Fig. 4 gezeigt. Hier sind zwei mit ihren Schaltstrecken
zueinander parallel liegende Schalttransistoren 58 a und
59 vorgesehen, deren Sourceanschlüsse mit einem Schaltungspunkt
verbunden sind, der mit dem Summenausgang 4
von AD n-2 in Verbindung steht. Die Drainanschlüsse von
58 a und 59 sind an einen Schaltungspunkt 60 geführt, der
den Ausgang von 24 darstellt. Der Schaltungspunkt 60
ist dabei über die Serienschaltung zweier P-Kanal-
Schalttransistoren 61 und 62 mit einem Anschluß 63 verbunden,
der mit der Versorungsspannung beschaltet ist.
Weiterhin ist 60 über die Serienschaltung zweier N-Kanal-
Schalttransistoren 64 und 65 mit einem auf Bezugspotential
liegenden Anschluß 66 verbunden. Die Gates des
P-Kanal-Transistors 58 a und des Transistors 64 werden
über den Ausgang 40 mit dem Signal ORALL angesteuert,
die Gates des N-Kanal-Transistors 59 und des Transistors
62 mit dem über den Ausgang 40′ abgegebenen, hierzu inversen
Signal . Die Gates von 61 und 65 sind mit
dem Ausgang 42 von 28 verbunden und werden mit -
beaufschlagt. Die Logikschaltung 23 ist zweckmäßigerweise
auch gemäß Fig. 4 aufgebaut.
Die Logikschaltung 25 ist mit Vorteil entsprechend Fig. 4
aufgebaut, wobei lediglich anstelle des Signals -
das Signal + zur Ansteuerung der Transistoren 61
und 65 verwendet wird. Die Logikschaltungen, die den
Summenausgängen der weiteren Addierer AD n-4 . . . AD 0
nachgeschaltet sind, sind zweckmäßigerweise ebenfalls
entsprechend der Logikschaltung 25 ausgebildet.
Mit dieser schaltungstechnischen Durchbildung der Logikschaltungen
an den Ausgängen von AD i und bei Einsatz
eines Dekoders nach Fig. 2 gelingt es, den Akkumulator
nach Fig. 1 beim Auftreten der obengenannten positiven
Überlaufbedingung mit einem Sättigungsübertragswort von
0000 und einem Sättigungszwischensummenwort von 00111 zu
beaufschlagen, beim Auftreten der genannten negativen
Überlaufbedingung mit einem Sättigungsübertragswort von
0000 und einem Sättigungszwischensummenwort von 11000.
Fig. 5 zeigt die Weiterbildung einer Anordnung nach Fig.
1, die zur bitparallelen Addition von vier Binärzahlen
im Zweierkomplement dient. Den bereits in Fig. 1 dargestellten
Gruppe von Addierern AD i ist hier eine zusätzliche
Gruppe von Addierern ZA i nachgeschaltet, wobei
jeder Addierer ZA i mit drei Eingängen versehen ist.
Die Ausgangsleitungen von AD i sind dabei unter Weglassung
der Logikschaltungen 23 bis 27 und der Zwischenspeicher
33 bis 37 mit den Eingängen der Addierer ZA i
verbunden. Im einzelnen sind die Ausgangsleitungen 6 bis
8 jeweils an die ersten Eingänge Z 11, Z 12 und Z 13 von
ZA n-1, ZA n-2 und ZA n-3 geführt, die Ausgangsleitungen 14
und 15 an die zweiten Eingänge Z 21 und Z 22 von ZA n-1 und
ZA n-2. Allgemein gilt, daß der Summenausgang eines
Addierers AD i mit dem ersten Eingang des ihm nachgeschalteten
Addierers ZA i verbunden ist, während der Übertragsausgang
von AD i mit dem zweiten Eingang des Addierers
ZA i+1 der nächsthöheren Wertigkeit beschaltet ist.
Die zusätzlichen Addierer ZA i sind an ihren unteren
Ausgangsseiten in derselben Weise und mit den gleichen
Schaltungsteilen beschaltet, wie die Addierer AD i in
Fig. 1. Diese Schaltungsteile sind daher mit denselben
Bezugszeichen versehen wie in Fig. 1, jedoch unter Hinzufügung
eines Bezugsstriches. Das an den Punkten 11′,
12′ . . . auftretende Zwischensummenwort, das über die
Zwischenspeicher 33′, 34′ . . . an die ersten Eingänge von
AD i gelegt wird, stellt eine erste Binärzahl dar, das an
den Punkten 21′, 22′ . . . auftretende Übertragswort, das
über die Zwischenspeicher 36′, 37′ . . . an die zweiten
Eingänge von AD i gelegt wird, eine zweite Binärzahl. Die
an den dritten Eingängen von AD i anliegende Zahl D bildet
eine dritte Binärzahl und eine an die dritten Eingänge der zusätzlichen
Addierer ZA i gelegte Zahl E eine
vierte Binärzahl. Diese vier Binärzahlen werden mit dem
Addierer nach Fig. 5 bitparallel zueinander addiert. An
den Schaltungspunkten 11′, 12′ . . . und 21′, 22′ . . . treten
wieder die Zwischensummen- und Übertragsworte auf,
aus denen in der Addiereinrichtung AS′ das gewünschte
Summenwort S″ gebildet wird. Durch den Dekoder 28 wird
in Abhängigkeit von den Bits an den ersten beiden Eingängen
von AD n-1 und AD n-2 festgestellt, ob eine positive
oder negative Überlaufbedingung vorliegt. Ist das
der Fall, so werden über die Ausgänge 40, 40′, 41 und 42
des Dekoders 28 und mittels der Logikschaltungen 23′ bis
27′ usw. die bereits anhand von Fig. 1 erläuterten Sättigungsmaßnahmen
veranlaßt.
Die Anordnung nach Fig. 5 kann in entsprechender Weise
durch Hinzufügung weiterer, den Addierern ZA i nachgeschalteter
Gruppen von Addierern für eine Addition von
fünf oder mehr Binärzahlen im Zweierkomplement erweitert
werden. Die Schaltungsteile 23′ bis 27′ und 33′bis 37′
sind dann ausgangsseitig von den in der untersten Addierergruppe
angeordneten, der Addiereinrichtung AS′ unmittelbar
vorgeordneten weiteren Addierern vorgesehen,
Die rekursiven Schaltungszweige verlaufen auch hierbei
von den Ausgängen der Zwischenspeicher 33′ bis 37′ zu
den Eingängen der Addierer AD i . Aus mehreren Addiererzeilen
gebildete Schaltungsanordnungen zur Addition von
fünf oder mehr Binärzahlen sind beispielsweise dem Buch
"Computer Arithmetic" von K. Hwang, Verlag John Wiley &
Sons, New York, 1979, S. 100-103, vgl. insbesondere Fig.
4.3, entnehmbar.
In Fig. 6 ist ein Rekursivfilter erster Ordnung gezeigt,
das einen Akkumulator nach Fig. 1 enthält. Eine am Eingang
67 in aufeinanderfolgenden Taktperioden jeweils angelegte
Folge von n-stelligen Binärzahlen Di, die im
Zweierkomplement dargestellt sind und einer Folge von
abgetasteten Amplitudenwerten eines analogen Eingangssignals
entsprechen, werden dabei zunächst in einer Verzögerungsstufe
68, die aus n Zwischenspeichern besteht,
bitparallel um eine Taktperiodendauer verzögert und
sodann jeweils den dritten Eingängen des Akkumulators
AD i nach Fig. 1 zugeführt. Die von diesem jeweils abgeleiteten
Zwischensummen- und Übertragsworte werden in
einer Verzögerungsstufe 69, die aus den Zwischenspeichern
33 bis 37 usw. besteht, um eine weitere Taktperiodendauer
verzögert und dann über eine Rekursivschleife
70 den ersten und zweiten Eingängen des Akkumulators AD i
zugeführt. Dabei können beide Worte in ihrer Zuordnung
zu den einzelnen Addierern AD i um m Bit nach rechts bzw.
links verschoben werden, was einer Multiplikation mit
2-m bzw. 2m in einem Bewerter 70 a entspricht. Die über
70 zugeführten Worte werden zu der jeweils beim nächstfolgenden
Takt an den dritten Eingängen von AD i anliegenden
Binärzahl D addiert. Die am Ausgang der Verzögerungsstufe
69 auftretenden Zwischensummen- und Übertragsworte
werden der Addiereinrichtung AS über ihre Eingänge
11, 12 . . . 21, 22 . . . zugeführt und zu dem gefilterten,
digitalen Ausgangssignal Di′ zusammengesetzt.
Fig. 7 zeigt ein rekursives Filter zweiter Ordnung, das
sich von Fig. 6 dadurch unterscheidet, daß die von 69
abgegebenen Zwischensummen- und Übertragsworte einem
Akkumulator nach Fig. 5 zugeführt werden, der mit AD i ,
ZA i angedeutet ist. Die von diesem abgegebenen Zwischensummen-
und Übertragsworte werden in einer Verzögerungsstufe
71 (die den Zwischenspeichern 33′ bis 37′ entspricht)
um eine Taktperiodendauer verzögert und über
eine Rekursivschleife 72 sowohl den ersten beiden Eingängen
des Akkumulators AD i als auch den ersten beiden
Eingängen des Akkumulators AD i , ZA i zugeführt. Beide
Worte können in ihrer Zuordnung zu den einzelnen Addierern
AD i des Akkumulators nach Fig. 5 um m1 Bit nach
rechts bzw. links verschoben werden, was einer Multiplikation
mit 2-m1 bzw. 2 m1 in einem Bewerter 72 a entspricht.
Die so bewerteten Worte können dann weiterhin
in ihrer Zuordnung zu den einzelnen Addierern AD i des
Akkumulators nach Fig. 1 um m2 Bit nach rechts bzw.
links verschoben werden, was einer weiteren Multiplikaton
von 2-m2 bzw. 2 m2 in einem Bewerter 72 b entspricht.
Der dritte Eingang von AD i ist mit Di belegt,
der dritte und vierte Eingang von AD i , ZA i mit den von
69 abgegebenen Zwischensummen- und Übertragsworten des
ersten Akkumulators AD i . Die am Ausgang der Verzögerungsstufe
71 auftretenden Zwischensummen- und Übertragsworte
werden der Addierstufe AS′ über ihren Eingang 11′, 12′
. . . 21′, 22′ zugeführt und zu dem gefilterten, digitalen
Ausgangssignal Di′ zusammengesetzt.
In einem rekursiven Filter n'ter Ordnung können in analoger
Weise ein Akkumulator nach Fig. 2 und n-1 Akkumulatoren
nach Fig. 5 eingesetzt werden.
Die Zwischenspeicher 33 bis 37 bzw. 33′ bis 37′ usw.
können vorteilhaft als Schieberegisterstufen ausgebildet
sein, die jeweils aus Master-Slave-Flipflops bestehen.
Weiterhin kann die Addiereinrichtung AS bzw. AS′ entsprechend
der in Fig. 9 der Patentanmeldung P
(VPA 85 P 1437 DE) dargestellten und dort eingehend
beschriebenen Addiereinrichtung ausgebildet sein.
Schließlich kann der Addierer AD n-1 ein ausgangsseitiges
Korrekturglied aufweisen, das eine Überlaufkorrektur
vornimmt, die dann notwendig ist, wenn sich relativ
große Zwischensummen- und Übertragsworte entgegengesetzter
Vorzeichen zu einem relativ kleinen Summenwort zusammensetzen.
Durch ein solches Korrekturglied wird das
Übertragswort des Addierers AD n-2 mit der zweithöchsten
Wertigkeit durch das Übertragsbit des höchstwertigen
Addierers AD n-1 ersetzt und für den Fall, daß die
Übertragsbits der beiden höchstwertigen Addierer AD n-1
und AD n-2 ungleich sind, das Summenbit von AD n-1 durch
das Übertragsbit von AD n-1 ersetzt. Derartige Überlaufkorrekturmaßnahmen sind in der Patentanmeldung
P (VPA 85 P 1437 DE) eingehend beschrieben. Man
kann davon ausgehen, daß die auf die Ausgangsleitungen,
z. B. 6 bis 8, 14 und 15, gegebenen Zwischensummen- und
Übertragsworte jeweils bereits in dieser Weise unter
Verwendung eines solchen in den Schaltungsblock für
AD n-1 einbezogenen Korrekturgliedes korrigiert sind. Die
Zwischensummen- und Übertragsworte der Addierer ZA i und
weiterer Addierergruppen werden zweckmäßig in analoger
Weise bezüglich eines solchen Überlaufs korrigiert,
wobei entsprechende Korrekturglieder auch in den Block
ZA n-1 und in die Blöcke für die jeweils höchstwertigen
Addierer weiterer Addierergruppen einbezogen sind.
In Abweichung von den Ausführungsbeispielen nach den
Fig. 1 und 5 können außer den beiden höchstwertigen
Addierern, z. B. AD n-1 und AD n-2, jeder Gruppe auch noch
weitere Addierer sich anschließender Wertigkeiten, z. B.
AD n-3 und AD n-4, jeweils über ihre dritten Eingänge mit
ein- und demselben Bit einer zugeführten Binärzahl D
bzw. E belegt sein. Das entspricht dann einer Vorzeichenvervielfachung
der im Zweierkomplement dargestellten
Binärzahlen.
Claims (16)
1. Anordnung mit einem Carry-Save-Addierer zur bitparallelen
Addition von Binärzahlen im Zweierkomplement mit
einer Gruppe von ersten Addierern (AD i ), die jeweils
Eingänge für Binärzahlenbits gleicher Wertigkeit sowie
Ausgänge (4, 5) zur Abgabe eines Zwischensummenbits und
eines Übertragsbits aufweisen, mit einer Addiereinrichtung
(AS), in der aus Zwischensummenbits gebildete
Zwischensummenworte und aus Übertragsbits gebildete
Übertragsworte jeweils zu Summenworten zusammengesetzt
werden, mit rekursiven Schaltungszweigen, über die die
Zwischensummenworte an erste Eingänge und die Übertragsworte
an zweite Eingänge der ersten Addierer (AD i ) gelegt
werden, und mit dritten Eingängen der ersten
Addierer, die mit extern zugeführten Binärzahlenbits
belegt sind, dadurch gekennzeichnet,
daß ein Dekoder (28) vorgesehen ist, der wenigstens mit
den beiden höchstwertigen Bits der Zwischensummen- und
Übertragsworte beaufschlagt ist und beim Auftreten vorgegebener
Eingangsbitmuster Überlaufsignale erzeugt,
die die Überschreitung eines zulässigen Addiererinhalts
angeben, daß Logikschaltungen (23 bis 27) vorgesehen
sind, die in Abhängigkeit vom Auftreten der Überlaufsignale
eine Abschaltung der jeweiligen Zwischensummen- und
Übertragsworte und eine Anschaltung von Sättigungszwischensummen-
und Sättigungsübertragsworten an die rekursiven
Schaltungszweige vornehmen, und daß die
Sättigungszwischensummen- und Sättigungsübertragsworte
so gewählt sind, daß sie Summenworte ergeben, die den
zulässigen Addiererinhalt nicht überschreiten.
2. Carry-Save-Addierer nach Anspruch 1, dadurch
gekennzeichnet, daß von den ersten
Addierern (AD i ) gewonnene erste Zwischensummen- und
Übertragbits über erste Zwischenspeicher (33 bis 37)
sowohl den ersten und zweiten Eingängen der ersten
Addierer (AD i ) als auch der Addiereinrichtung (AS) zugeführt
werden, daß die Logikschaltungen (23 bis 27) den
Ausgängen der ersten Addierer (AD i ) nachgeschaltet sind,
daß die Zwischenspeicher mit Taktimpulsen einer vorgegebenen
Taktfrequenz getaktet sind und daß die Belegung
der dritten Eingänge der ersten Addierer (AD i ) mit einer
ersten Folge von Binärzahlen (Di) im Rhythmus der Taktfrequenz
erfolgt.
3. Carry-Save-Addierer nach Anspruch 1, dadurch
gekennzeichnet, daß der Gruppe von ersten
Addierern (AD i ) wenigstens eine weitere Gruppe von
Addierern (ZA i ) nachgeschaltet ist, wobei die Addierer
einer solchen weiteren Gruppe jeweils erste und zweite
Eingänge für gleichwertige Zwischensummen- und
Übertragsbits von der jeweils unmittelbar vorgeordneten
Gruppe von Addierern sowie Summen- und Übertragsausgänge
zur Abgabe von Zwischensummen- und Übertragsbits
an die jeweils unmittelbar nachgeordnete Gruppe von
Addierern oder im Falle der letzten weiteren Gruppe an
die Addiereinrichtung (AS) aufweisen, daß zwischen den
Ausgängen der Addierer der letzten weiteren Gruppe und
der Addiereinrichtung weitere Zwischenspeicher (33′ bis
37′) eingefügt sind, daß die rekursiven Schaltungszweige
von den Ausgängen der Addierer der letzten weiteren
Gruppe über die weiteren Zwischenspeicher (33′ bis 37′)
zu den ersten und zweiten Eingängen der ersten Addierer
(AD i ) hin verlaufen, daß die Addierer jeder weiteren
Gruppe jeweils dritte Eingänge aufweisen, die mit den
Gruppen individuell zugeordneten weiteren Folgen von
Binärzahlen (Ei) belegt sind, daß die Logikschaltungen
(23′ bis 27′) den Ausgängen der Addierer (ZA i ) der
letzten weiteren Gruppe nachgeschaltet sind, daß die
weiteren Zwischenspeicher mit Taktimpulsen einer vorgegebenen
Taktfrequenz getaktet sind und daß die Belegung
der dritten Eingänge der Addierer der weiteren
Gruppen mit den weiteren Folgen von Binärzahlen (Ei)
jeweils im Rhythmus der Taktfrequenz erfolgt.
4. Carry-Save-Addierer nach Anspruch 2, dadurch
gekennzeichnet, daß entweder die ersten
Eingänge der ersten Addierer (AD i ) jeweils mit den zur
Abgabe der ersten Zwischensummenbits dienenden ersten
Zwischenspeichern (33, 34, 35) derselben ersten Addierer
und die zweiten Eingänge der ersten Addierer (AD i )
jeweils mit den zur Abgabe von ersten Übertragsbits
dienenden ersten Zwischenspeichern (36, 37) von ersten
Addierern der nächstniedrigeren Wertigkeit verbunden
sind oder eine hiervon abweichende Zuordnung der ersten
Addierer zu den ersten Zwischenspeichern getroffen ist,
bei der die Wertigkeiten der eingangsseitig mit den
Zwischensummen- und Übertragsbits beaufschlagten ersten
Addierer gegenüber der angegebenen Zuordnung jeweils um
eine konstante Stellenzahl differiert.
5. Carry-Save-Addierer nach Anspruch 3, dadurch
gekennzeichnet, daß entweder die ersten
Eingänge der ersten Addierer (AD i ) mit den zur Abgabe
der Zwischensummenbits dienenden weiteren Zwischenspeicher
(33′, 34′, 35′) von Addierern (ZA i ) derselben
Wertigkeit aus der letzten weiteren Gruppe und daß die
zweiten Eingänge der ersten Addierer (AD i ) jeweils mit
den zur Abgabe der Übertragsbits dienenden weiteren
Zwischenspeichern (36′, 37′) von Addierern (ZA i ) der
nächstniedrigeren Wertigkeit aus der letzten weiteren
Gruppe verbunden sind oder eine hiervon abweichende
Zuordnung der ersten Addierer zu den weiteren Zwischenspeichern
getroffen ist, bei der die Wertigkeiten
der eingangsseitig mit den Zwischensummen- und Übertragsbits
beaufschlagten ersten Addierer gegenüber der
angegebenen Zuordnung jeweils um eine konstante Stellenzahl
differieren.
6. Carry-Save-Addierer nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß der
Dekoder (28) so ausgebildet ist, daß er ein positives
Überlaufsignal für den Fall abgibt, daß die am ersten
und zweiten Eingang des höchstwertigen ersten Addierers
(AD n-1) anliegenden Zwischensummen- und Übertragsbits
(s n-1, c n-1) jeweils 0 sind und wenigstens eines der
an dem ersten und zweiten Eingang des ersten Addierers
(AD n-2) der zweithöchsten Wertigkeit anliegenden Zwischensummen-
und Übertragsbits (s n-2, c n-2) den Wert 1
aufweist.
7. Carry-Save-Addierer nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß der
Dekoder (28) so ausgebildet ist, daß er ein negatives
Überlaufsignal für den Fall erzeugt, daß die an dem
ersten und zweiten Eingang des höchstwertigen ersten
Addierers (AD n-1) anliegenden Zwischensummen- und Übertragsbits
(s n-1, c n-1) jeweils 1 sind und wenigstens
eines der an dem ersten und zweiten Eingang des ersten
Addierers (AD n-2) der zweithöchsten Wertigkeit anliegenden
Zwischensummen- und Übertragsbits (s n-2, c n-2)
den Wert 0 aufweist.
8. Carry-Save-Addierer nach den Ansprüchen 6 und 7, dadurch
gekennzeichnet, daß der Dekoder
(28) beim Auftreten des positiven oder negativen
Überlaufsignals ein allgemeines Überlaufsignal abgibt.
9. Carry-Save-Addierer nach den Ansprüchen 6 und 7,
dadurch gekennzeichnet, daß die
Logikschaltungen (23 bis 27) beim Auftreten eines
positiven Überlaufsignals zur Abgabe eines Sättigungs-
Übertragsworts und eines Sättigungs-Zwischensummenworts
an die rekursiven Schaltungszweige (16 bis 19) veranlaßt
werden, wobei sämtliche Bits des Sättigungs-Übertragsworts
den Wert 0 aufweisen, während die beiden höchstwertigen
Bits des Sättigungszwischensummenworts den Wert
0 und die übrigen Bits desselben den Wert 1 aufweisen.
10. Carry-Save-Addierer nach den Ansprüchen 6 und 7,
dadurch gekennzeichnet, daß die
Logikschaltungen (23 bis 27) beim Auftreten eines
negativen Überlaufsignals zur Abgabe eines Sättigungs-
übertragsworts und eines Sättigungszwischensummenworts
an die rekursiven Schaltungszweige (16 bis 19) veranlaßt
werden, wobei sämtliche Bits des Sättigungsübertragsworts
den Wert 0 aufweisen, während die beiden höchstwertigen
Bits des Sättigungszwischensummenworts den Wert
1 und die übrigen Bits desselben den Wert 0 aufweisen.
11. Carry-Save-Addierer nach den Ansprüchen 6 bis 8,
dadurch gekennzeichnet, daß der
Dekoder ein erstes UND-Gatter (44) enthält, dessen Eingänge
mit den beiden ersten Eingängen des höchstwertigen
ersten Addierers (AD n-1) verbunden sind, daß ein
NAND-Gatter (46) vorgesehen ist, dessen Eingänge mit den
beiden ersten Eingängen des ersten Addierers (AD n-2) der
zweithöchsten Wertigkeit verbunden sind, daß ein dem
ersten UND-Gatter (44) eingangsseitig parallel geschaltetes
NOR-Gatter (45) und ein dem zweiten NAND-Gatter
(46) eingangsseitig parallel geschaltetes erstes
ODER-Gatter (47) vorgesehen sind, daß die Ausgänge des
ersten UND- und des NAND-Gatters (44, 46) mit den
Eingängen eines zweiten UND-Gatters (48) beschaltet
sind, daß die Ausgänge des NOR-Gatters (45) und des
ersten ODER-Gatters (47) mit den Eingängen eines dritten
UND-Gatters (49) verbunden sind, daß der Ausgang des
zweiten UND-Gatters (48) über einen ersten Inverter (53)
mit einem Dekoderausgang (42) für ein inverses negatives
Überlaufsignal verbunden ist, daß der Ausgang des dritten
UND-Gatters (49) über einen zweiten Inverter (52)
mit einem Dekoderausgang (41) für ein inverses positives
Überlaufsignal verbunden ist, daß die Ausgänge des
zweiten und dritten UND-Gatters (48, 49) an die Eingänge
eines zweiten ODER-Gatters (50) geführt sind und daß der
Ausgang des letzteren unmittelbar mit einem Dekoderausgang
(40) für das allgemeine Überlaufsignal und über
einen dritten Inverter (51) mit einem Dekoderausgang
(40′) für das inverse allgemeine Überlaufsignal verbunden
ist.
12. Carry-Save-Addierer nach einem der Ansprüche 1 bis
11, dadurch gekennzeichnet, daß
die die Abschaltung der Übertragsworte und die Anschaltung
der Sättigungsübertragsworte vornehmenden Logikschaltungen
jeweils aus zwei Feldeffekt-Schalttransistoren
unterschiedlicher Kanaltypen bestehen, deren
Sourceanschlüsse mit einem Eingang der Logikschaltung
verbunden sind und deren Drainanschlüsse an einen Ausgang
der Logikschaltung geführt sind, wobei das Gate
des einen dieser Transistoren mit dem allgemeinen Überlaufsignal
und das Gate des anderen mit dem inversen
allgemeinen Überlaufsignal belegt sind, und daß der
Ausgang (56) der Logikschaltung über einen weiteren
Feldeffekt-Schalttransistor (57), dessen Gate mit dem
allgemeinen Überlaufsignal angesteuert wird, mit einem
auf Bezugspotential liegenden Anschluß (58) verbunden
ist.
13. Carry-Save-Addierer nach einem der Ansprüche 1 bis
12, dadurch gekennzeichnet, daß
die die Abschaltung der Zwischensummenworte und die Anschaltung
der Sättigungszwischensummenworte vornehmenden
Logikschaltungen jeweils aus zwei weiteren Feldeffekt-
Schalttransistoren (58 a, 59) unterschiedlicher
Kanaltypen bestehen, deren Sourceanschlüsse an einen
Eingang der Logikschaltung geführt sind und deren Drainanschlüsse
an einem Ausgang der Logikschaltung liegen,
wobei das Gate des einen dieser letzteren Transistoren
mit dem allgemeinen Überlaufsignal und das Gate des
anderen mit dem inversen allgemeinen Überlaufsignal beschaltet
sind, daß der Ausgang (60) der Logikschaltung
über eine erste Serienschaltung zweier Feldeffekt-
Schalttransistoren des einen Kanaltyps (61, 62) mit
einem Anschluß (63) verbunden ist, der mit einer Versorgungsspannung
beschaltet ist, und über eine zweite
Serienschaltung zweier Feldeffekt-Schalttransistoren
(64, 65) des anderen Kanaltyps mit einem Anschluß (66)
verbunden ist, der auf Bezugspotential liegt, und daß
jeweils einer der Feldeffekt-Schalttransistoren der
ersten und zweiten Serienschaltung mit dem positiven
oder negativen Überlaufsignal angesteuert wird, während
der andere Transistor der einen Serienschaltung mit dem
allgemeinen Überlaufsignal und der andere Transistor der
anderen Serienschaltung mit dem inversen allgemeinen
Überlaufsignal angesteuert werden.
14. Anwendung einer Anordnung nach Anspruch 2 auf ein
digitales Filter, dadurch gekennzeichnet,
daß die ersten Addierer (AD i ) zur
Addition von über eine Rekursivschleife (70, 72) des
digitalen Filters zugeführte Zwischensummen- und
Übertragsworten mit über die dritten Eingänge der ersten
Addierer (AD i ) zugeführten, abgetasteten digitalisierten
Amplitudenwerten eines Eingangssignals (Di) des digitalen
Filters dienen, wobei zur Abgabe der ersten Zwischensummen-
und Übertragsbits dienende Zwischenspeicher
eine Verzögerungsstufe (69) bilden, und daß die Addiereinrichtung
(AS) zur Bildung der digitalisierten Amplitudenwerte
des gefilterten Eingangssignals (Di′)
dient.
15. Anwendung einer Anordnung nach Anspruch 3 mit einer
einzigen weiteren Gruppe von Addierern auf ein digitales
Filter, dadurch gekennzeichnet,
daß die ersten Addierer (AD i ) und die Addierer (ZA i ) der
weiteren Gruppe zur Addition von über eine Rekursivschleife
(72) eines digitalen Filters zweiter Ordnung
den ersten beiden Eingängen der ersten Addierer (AD i )
zugeführten Zwischensummen- und Übertragsworten mit über
die dritten Eingänge der ersten Addierer (AD i ) und über
die dritten Eingänge der Addierer (ZA i ) der weiteren
Gruppe zugeführten Zwischensummen- und Übertragsworten
eines ersten Akkumulators dienen, wobei die zur Abgabe
der Zwischensummen- und Übertragsworte der Addierer
(ZA i ) der weiteren Gruppe dienenden Zwischenspeicher
eine Verzögerungsstufe (71) bilden, und daß die
Addiereinrichtung (AS) zur Bildung der digitalisierten
Amplitudenwerte des gefilterten Eingangssignals (D′)
dient.
16. Anordnung nach einem der Ansprüche 2 bis 15, dadurch
gekennzeichnet, daß die Zwischenspeicher
als Schieberegisterstufen ausgebildet und
vorzugsweise in Form von Master-Slave-Flipflops
realisiert sind.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853524981 DE3524981A1 (de) | 1985-07-12 | 1985-07-12 | Anordnung mit einem saettigbaren carry-save-addierer |
DE8686109135T DE3688445D1 (de) | 1985-07-12 | 1986-07-04 | Anordnung mit einem saettigbaren carry-save-addierer. |
EP86109135A EP0209014B1 (de) | 1985-07-12 | 1986-07-04 | Anordnung mit einem sättigbaren Carry-Save-Addierer |
JP61161758A JPH0814789B2 (ja) | 1985-07-12 | 1986-07-09 | キヤリ・セイブ加算器を有する装置 |
US06/883,657 US4819198A (en) | 1985-07-12 | 1986-07-09 | Saturable carry-save adder |
AU60073/86A AU592099B2 (en) | 1985-07-12 | 1986-07-11 | Adder circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853524981 DE3524981A1 (de) | 1985-07-12 | 1985-07-12 | Anordnung mit einem saettigbaren carry-save-addierer |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3524981A1 true DE3524981A1 (de) | 1987-01-22 |
Family
ID=6275647
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19853524981 Withdrawn DE3524981A1 (de) | 1985-07-12 | 1985-07-12 | Anordnung mit einem saettigbaren carry-save-addierer |
DE8686109135T Expired - Fee Related DE3688445D1 (de) | 1985-07-12 | 1986-07-04 | Anordnung mit einem saettigbaren carry-save-addierer. |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8686109135T Expired - Fee Related DE3688445D1 (de) | 1985-07-12 | 1986-07-04 | Anordnung mit einem saettigbaren carry-save-addierer. |
Country Status (5)
Country | Link |
---|---|
US (1) | US4819198A (de) |
EP (1) | EP0209014B1 (de) |
JP (1) | JPH0814789B2 (de) |
AU (1) | AU592099B2 (de) |
DE (2) | DE3524981A1 (de) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0249132B1 (de) * | 1986-06-10 | 1993-08-25 | Siemens Aktiengesellschaft | Anordnung zur bitparallelen Addition von Binärzahlen mit Carry-Save Überlaufkorrektur |
US5047975A (en) * | 1987-11-16 | 1991-09-10 | Intel Corporation | Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode |
DE68909618T2 (de) * | 1988-01-09 | 1994-05-05 | Sumitomo Bakelite Co | Verfahren zur Herstellung eines mit einer Dünnschicht aus Metalloxid überzogenen durchsichtigen leitenden Films. |
JPH0391832A (ja) * | 1989-09-05 | 1991-04-17 | Sony Corp | 加算回路 |
US5038314A (en) * | 1989-11-17 | 1991-08-06 | Digital Equipment Corporation | Method and apparatus for correction of underflow and overflow |
US5272659A (en) * | 1990-06-26 | 1993-12-21 | Allied-Signal Inc. | Engine control with fixed point digital overflow prevention |
US5164914A (en) * | 1991-01-03 | 1992-11-17 | Hewlett-Packard Company | Fast overflow and underflow limiting circuit for signed adder |
JP2758999B2 (ja) * | 1991-04-10 | 1998-05-28 | 株式会社神戸製鋼所 | 真空アーク蒸着装置 |
JPH0514510U (ja) * | 1991-08-05 | 1993-02-26 | 内山工業株式会社 | バルブステムの潤滑構造 |
US5717616A (en) * | 1993-02-19 | 1998-02-10 | Hewlett-Packard Company | Computer hardware instruction and method for computing population counts |
JPH07168696A (ja) * | 1993-10-19 | 1995-07-04 | Mitsubishi Electric Corp | 2進数加算器のオーバフロー,アンダフロー処理回路 |
US6219688B1 (en) * | 1993-11-30 | 2001-04-17 | Texas Instruments Incorporated | Method, apparatus and system for sum of plural absolute differences |
TW421757B (en) * | 1996-06-06 | 2001-02-11 | Matsushita Electric Ind Co Ltd | Arithmetic processor |
US5889689A (en) * | 1997-09-08 | 1999-03-30 | Lucent Technologies Inc. | Hierarchical carry-select, three-input saturation |
US7051062B2 (en) * | 2002-09-10 | 2006-05-23 | Analog Devices, Inc. | Apparatus and method for adding multiple-bit binary-strings |
GB2396708B (en) | 2002-12-05 | 2006-06-21 | Micron Technology Inc | Hybrid arithmetic logic unit |
US7962538B2 (en) * | 2005-12-21 | 2011-06-14 | International Business Machines Corporation | Method of operand width reduction to enable usage of narrower saturation adder |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1524163B1 (de) * | 1965-07-12 | 1970-03-05 | Ibm | Binärer Akkumulator |
DE2848096A1 (de) * | 1977-11-10 | 1979-05-17 | Philips Nv | Digitale addieranordnung |
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 |
US3515344A (en) * | 1966-08-31 | 1970-06-02 | Ibm | Apparatus for accumulating the sum of a plurality of operands |
US3609568A (en) * | 1970-06-08 | 1971-09-28 | Bell Telephone Labor Inc | Stable digital filter apparatus |
US4104729A (en) * | 1975-08-27 | 1978-08-01 | International Standard Electric Corporation | Digital multiplier |
US4110832A (en) * | 1977-04-28 | 1978-08-29 | International Business Machines Corporation | Carry save adder |
US4228520A (en) * | 1979-05-04 | 1980-10-14 | International Business Machines Corporation | High speed multiplier using carry-save/propagate pipeline with sparse carries |
JPS5674774A (en) * | 1979-11-22 | 1981-06-20 | Nec Corp | Arithmetic circuit with overflow detector |
JPS56114071A (en) * | 1980-02-13 | 1981-09-08 | Nec Corp | Arithmetic circuit |
FR2559285B1 (fr) * | 1984-02-03 | 1986-04-25 | Efcis | Unite arithmetique et logique avec indicateur de debordement |
US4722066A (en) * | 1985-07-30 | 1988-01-26 | Rca Corporation | Digital signal overflow correction apparatus |
-
1985
- 1985-07-12 DE DE19853524981 patent/DE3524981A1/de not_active Withdrawn
-
1986
- 1986-07-04 EP EP86109135A patent/EP0209014B1/de not_active Expired - Lifetime
- 1986-07-04 DE DE8686109135T patent/DE3688445D1/de not_active Expired - Fee Related
- 1986-07-09 US US06/883,657 patent/US4819198A/en not_active Expired - Fee Related
- 1986-07-09 JP JP61161758A patent/JPH0814789B2/ja not_active Expired - Lifetime
- 1986-07-11 AU AU60073/86A patent/AU592099B2/en not_active Ceased
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1524163B1 (de) * | 1965-07-12 | 1970-03-05 | Ibm | Binärer Akkumulator |
DE2848096A1 (de) * | 1977-11-10 | 1979-05-17 | Philips Nv | Digitale addieranordnung |
Also Published As
Publication number | Publication date |
---|---|
EP0209014A3 (en) | 1990-05-09 |
JPH0814789B2 (ja) | 1996-02-14 |
JPS6215633A (ja) | 1987-01-24 |
US4819198A (en) | 1989-04-04 |
AU592099B2 (en) | 1990-01-04 |
DE3688445D1 (de) | 1993-06-24 |
EP0209014A2 (de) | 1987-01-21 |
EP0209014B1 (de) | 1993-05-19 |
AU6007386A (en) | 1987-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0209014B1 (de) | Anordnung mit einem sättigbaren Carry-Save-Addierer | |
EP0086904B1 (de) | Digitale Parallel-Rechenschaltung für positive und negative Binärzahlen | |
DE4302898A1 (en) | Arithmetic logic unit with accumulator function - has two memories and counter with selection to reduce delay in processing | |
EP0049216B1 (de) | Rechenwerkeinheit mit einer parallelen bidirektionalen Schiebeeinrichtung | |
DE3940897C2 (de) | Schaltungsanordnung und Verfahren zur Berechnung digitaler Summen in einem Halbleiteraddierer mit Parallelübertrag | |
EP0051079B1 (de) | Binäres MOS-Ripple-Carry-Parallel-Addier/Subtrahierwerk und dafür geeignete Addier/Subtrahierstufe | |
EP0383965A1 (de) | Multiplizierwerk | |
DE1549508B2 (de) | Anordnung zur uebertragsberechnung mit kurzer signallaufzeit | |
EP0208275B1 (de) | Anordnung zur bitparallelen Addition von Binärzahlen | |
EP0048352B1 (de) | Binärer MOS-Switched-Carry-Paralleladdierer | |
DE2106763A1 (de) | Dekodierschaltung | |
EP0257362A1 (de) | Addierer | |
EP0352549A2 (de) | Carry-select-Addierer | |
DE2017132A1 (de) | Binarer Parallel Addierer | |
EP0130397A1 (de) | Digitales Rechenwerk | |
EP0333884B1 (de) | CMOS-Parallel-Serien-Multiplizierschaltung sowie deren Multiplizier- und Addierstufen | |
EP0433315A1 (de) | Schaltungsanordnung zur addition oder subtraktion von im bcd-code oder dual-code codierten operanden | |
EP0249132B1 (de) | Anordnung zur bitparallelen Addition von Binärzahlen mit Carry-Save Überlaufkorrektur | |
EP0106000A1 (de) | Digitalschaltung zur Unterdrückung von Änderungen eines Digitalsignals | |
DE1574603A1 (de) | Binaere Addierschaltung | |
DE10130484B4 (de) | 7-zu-3 Bit Carry-Save Addierer und Addierer damit | |
DE1240928B (de) | Gleichstromgekoppelter elektronischer Binaerzaehler | |
EP0356776A2 (de) | Inkrementer | |
DE2902488C2 (de) | ||
DE2737483A1 (de) | Korrektur-schaltungsanordnung fuer additions- oder substraktionsoperationen mit nicht-hexadezimalen operanden in hexadezimalen rechenwerken |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8130 | Withdrawal |