DE3524981A1 - Anordnung mit einem saettigbaren carry-save-addierer - Google Patents

Anordnung mit einem saettigbaren carry-save-addierer

Info

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
Application number
DE19853524981
Other languages
English (en)
Inventor
Tobias Dipl Ing Noll
Walter Dr Ing Ulbrich
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19853524981 priority Critical patent/DE3524981A1/de
Priority to DE8686109135T priority patent/DE3688445D1/de
Priority to EP86109135A priority patent/EP0209014B1/de
Priority to JP61161758A priority patent/JPH0814789B2/ja
Priority to US06/883,657 priority patent/US4819198A/en
Priority to AU60073/86A priority patent/AU592099B2/en
Publication of DE3524981A1 publication Critical patent/DE3524981A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • G06F7/5095Adding; 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49921Saturation, i.e. clipping the result to a minimum or maximum value

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.
DE19853524981 1985-07-12 1985-07-12 Anordnung mit einem saettigbaren carry-save-addierer Withdrawn DE3524981A1 (de)

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)

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

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

* 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
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

Patent Citations (2)

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