DE2708637C3 - Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden - Google Patents

Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden

Info

Publication number
DE2708637C3
DE2708637C3 DE19772708637 DE2708637A DE2708637C3 DE 2708637 C3 DE2708637 C3 DE 2708637C3 DE 19772708637 DE19772708637 DE 19772708637 DE 2708637 A DE2708637 A DE 2708637A DE 2708637 C3 DE2708637 C3 DE 2708637C3
Authority
DE
Germany
Prior art keywords
bcd
binary
carry
circuit
sum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE19772708637
Other languages
English (en)
Other versions
DE2708637B2 (de
DE2708637A1 (de
Inventor
Jack Lee Scottsdale Ariz. Anderson
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of DE2708637A1 publication Critical patent/DE2708637A1/de
Publication of DE2708637B2 publication Critical patent/DE2708637B2/de
Application granted granted Critical
Publication of DE2708637C3 publication Critical patent/DE2708637C3/de
Expired 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/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • 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/491Computations with decimal numbers radix 12 or 20.
    • G06F7/492Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination
    • G06F7/493Computations with decimal numbers radix 12 or 20. using a binary weighted representation within each denomination the representation being the natural binary coded representation, i.e. 8421-code
    • G06F7/494Adding; Subtracting
    • 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/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/508Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using carry look-ahead circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/492Indexing scheme relating to groups G06F7/492 - G06F7/496
    • G06F2207/4921Single digit adding or subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/492Indexing scheme relating to groups G06F7/492 - G06F7/496
    • G06F2207/4924Digit-parallel adding or subtracting

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Logic Circuits (AREA)

Description

a) die binäre Addierstufe (12) zur Addition der beiden Operanden als Binärzahlen (erstes Ergebnis) ohne Berücksichtigung einer Übertrageingabe ausgebildet ist,
b) die Korrekturschaltung aus einer der binären Ad^icrstufe (12) nachgeschalteten Korrekturstufe (48) besteht, die so ausgebildet ist, daß im BCD-Modus als Korrekturwert die Binärziffer »6« addiert wird (zweites Ergebnis), wenn das (erste) Ergebnis der binären Addierstufe (12) größer als »9« ist, in allen anderen Fällen einschließlich des reinen tHnär- Modus jedoch »0«,
c) eine der Korrekturstufe (48) nachgeschaltete Inkrementierstufe (62) vorgesehen ist, die so ausgebildet ist, daß beim Vorhandensein eines EinpangsQbertrages eine »I« zum (zweiten) Ergebnis der Korrekturstufe (48) addiert wird, derart, daß die BCD-S jmme (S) oder eine reine Binär-Summe einschließlich Ausgangsübertrag gebildet wird.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß eine Schaltung (30) vorgesehen ist, welche mit der binären Addierstufe (12) verbunden ist und dazu dient, ein Gruppenübertrag-Erzeugungssignal sowie ein Gruppenübertrag-Weitcrleitungssignal zu erzeugen.
3. Schaltungsanordnung nach Anspruch 2, dadurch gekennzeichnet, daß die Modussteuerleitung (58) mit der Schaltung (30) verbunden ist, um entweder den BCD-Modus oder den reinen Binär-Modus auszuwählen.
Die Erfindung betrifft eine Schaltungsanordnung gemäß dem Oberbegriff des Patentanspruches 1.
Eine solche Schaltungsanordnung ist aus der US-PS 11 693, die der DE-OS 22 32 222 entspricht, bekannt. Bei der aus diesen Druckschriften bekannten Schaltung besteht die Möglichkeit, daß die beiden Operanden jeweils entweder eine BCD-Zahl oder eine rein binäre Zahl sein können. Eine dezimale Korrekturschaltung addiert dabei einen Korrekturwert »0« oder »6« zu dem Ergebnis einer reinen Binär-Addilion, wenn eine Arbeitsweise im BCD-Modus erwünscht ist. Eine zusätzliche Addierschaltung dient bei dieser bekannten Schaltung dazu, automatisch die binäre Zahl 6 zu dem ersten Operanden zu addieren, sobald eine dezimale Addition durchgeführt werden soll. Der zweite Operand wird zu diesem Ergebnis addiert, und zwar gemeinsam mit einem Obertrag. Diese Addition erfolgt durch ein logisches Verknüpfungsglied und eine binäre Addierstufe, um ein Ergebnis zu erzeugen, welches dann durch eine nachgeschaltete, dezimale Korrekturstufe modifiziert wird, um die Endsumme zu bilden. Die dezimale Korrekturstufe addiert die binäre Zahl 10 zu dem Ausgangssignar der binären Addierstufe, wenn die binäre Summe zwischen 0 und 9 liegt. Bei der bekannten Schaltung besteht der verwendete Algorithmus im wesentlichen darin, zunächst die binäre Zahl 6 zu addieren und die
ίο binäre Zahl 10 weiterhin zu addieren, wenn festgestellt wird, daß kein Ausgangsübertrag erzeugt wurde. Die Addition der Zahl 10 entspricht dabei einer Subtraktion der binären Zahl 6, da die binäre Zahl 10 das 1-Komplement der binären Zahl 6 darstellt Damit wird in diesem Falle statt einer »6« eine »0« als Korrekturwert addiert.
Es ist weiterhin grundsätzlich bekannt, zar Erhöhung
der Arbeitsgeschwindigkeit von digitalen Addierstufen
eine Technik anzuwenden, weiche sich als Überlrag-Erwartungstechnik bezeichnen läßt Das Grundprinzip dieser Technik besieht darin, zunächst eine Anzahl von Eingangssignalen für jede Addierstufe zu untersuchen und zugleich geeignete Überträge für jede dieser Stufen zu erzeugen. Die Anwendung der Überträge bei dem Addierblock für jede Stufe erzeugt dann die ordnungsgemäßen Summenbits. In Abhängigkeit von der Anzahl der Übertrag-Erwartungspegel kann die Gesamtaddierzeit beträchtlich vermindert werden. Obwohl die digitale Schaltungstechnik, welche in digitalen Datenverarbeitungsanlagen verwendet wird, die Binärdarstellung von Ziffern und eine binäre Arithmetik als vorteilhafteste Technik erscheinen lassen, um arithmetische Probleme zu lösen, wird oft im Hinblick auf eine leichtere Lesbarkeit eine Dezimaldarstellung von Zahlen notwendige. Somit ist in den meisten digitalen Datenverarbeitungsanlagen moderner Bauart eine Möglichkeit vorgesehen, sowohl mit reinen Binärzahlen als auch mit kodierten Dezimalzahlen, wie binär kodierten Dczimalzahlcn (BCD), zu arbeiten. Bei verhältnismäßig geringen Geschwindigkeiten können arithmetische Operationen,
-to bei welchen BCD-Zahlen verarbeitet werden, mit derselben gerätetechnischen Ausrüstung ausgeführt werden, wie sie für eine rein binäre Arithmetik geeignet ist. indem entsprechende Programmalgorithmen verwendet werden. Wenn die geforderte Arbeitsgeschwindigkeit nicht zuläßt, daß Programmalgorithmen verwendet werden, muß eine spezielle digitale Schaltungstechnik verwendet werden, welche für die BCD-Arithmetik entsprechend ausgebildet ist. Ein solches Verfahren, welches digitale Schaltungen verwendet, die speziell dafür entworfen sind, nur eine BCD-Arithmetik auszuführen, ist in der Arbeit »High Speed Decimal Addition« von Schmookler und Weinberger beschrieben, veröffentlicht in IEEE Transactions on Computers, Band C 20. Nr. 8, August 1971, Seiten 862 bis 866. Obwohl auf diese Weise eine hohe Addiergeschwindigkeit für BCD-Ziffern erreichbar ist, erfordert diese Technik eine Schaltung, die ausschließlich für diesen Zweck bestimmt ist, so daß zusätzliche Maschinenkosten erforderlich werden, wenn auch Binäroperationen ausgeführt werden
bo sollen.
Eine andere Lösung des Problems der BCD-Addilion besteht darin, eine Addition der BCD-Opcranden auszuführen, als ob es Binärzahlen wären, so daß ein Zwischenergebnis gebildet wird, wonach dieses Zwischcnergebnis korrigiert wird, um die korrekte BCD-Ziffer der Summe zu erzeugen. Die übliche Methode zur Korrektur des Zwischenergebnisses besteht darin, die Binärziffer 6 zu addieren. Die Grundlagen dieser Methode
werden in dem Buch »Arithmetic Operations in Digital Computers« von R. K. Richards, D. Van Nostrand Co, Princeton. N. J, 1955, Seiten 210 und 211, erläutert Obwohl diese Methode schaltungstechnische Vorteile bietet und zwar im Hinblick auf die Tatsache, daß Teile der Logikschaltungen, welche für die binären arithmetischen Operationen erforderlich sind, auch für die BCDrArithmetik. verwendet werden können, weist diese Methode hinsicbtlich der Geschwindigkeit nachteilige Grenzen auf. Diese Nachteile ergeben sich insbesondere durch diejenige Zeit weiche erforderlich ist um die BCD-iOperanden zu addieren, um ein Zwischenergebnis zu erzeugen, da der Beginn dieser Zeit von der Ubertrag-Weiterleitungs-Vertögerungszeit abhängt Die Gesamtzeit welche erforderlich ist um das ordnungsgemäße BCD-Summensignal zu erhalten, schließt auch diejenige Zeit ein, weiche benötigt wird, das Zwischenergebnis zu bilden, und auch diejenige Zeit welche erforderlich ist um den BCD-Korrekturwert zur Anwendung zu bringen, so daß die BCD-Addition zwangsläufig langsamer abläuft als die Binär-Addiiran.
Weiterhin ist aus der Zeitschrift »Electronics Letters«. April 1974. Band 10. Heft 8 unter der Überschrift »Fast BCD/Binary Adder/Subtractor« eine Schaltung zum binären Addieren und Subtrahieren beschrieben, deren Arbeitsgeschwindigkeit verhältnismäßig stark begrenzt ist Bei dieser bekannten Schaltung besteht der Nachteil, daß ein Signal Cn sich nicht stabilisieren kann, bis das entsprechende Obertragsignal Cn-\ stabilisiert ist Deshalb umfaßt die Verzögerung von Cn- \ bis zur Ausgabe der Endsumme die Verzögerung von Cn-1 bis Ci in einem Erwartungsblock ebenso wie die Verzögerung von Cn bis zur Ausgabe der Endsumme in einem Korrekturblock.
Der Erfindung liegt die Aufgabe zugrunde, eine Schaltungsanordnung der eingangs genannten Art zu schaffen, mit welcher sowohl bei einer BCD-Addition als auch bei einer rein binären Addition die Verzögerungszeit, welche aufgrund einer zeitlichen Verzögerung der Ü Jertrageingabe bis zur Bildung der endgültigen Summe vorhanden ist besonders klein gehalten werden kann.
Zur Lösung dieser Aufgabe dienen die im kennzeichnenden Teil des Anspruchs 1 angegebenen Merkmale.
Gemäß einer bevorzugten Ausführungsform des Erfindungsgügenstandes ist eine Schaltung vorgesehen, welche mit der binären Addierstufe verbunden ist und dazu dient, ein Gruppenübertrag-Erzeugungssignal sowie ein Gruppenübertrag-Weiterleitungssignal zu erzeugen. Dadurch wird die Addition des Erwartungsübertrages erleichtert.
Weiterwin ist vorzugsweise vorgesehen, daß die Modusstcuerlcitung mit dieser Schaltung verbunden ist. um entweder den BCD-Modus oder den rein binären Modus auszuwählen.
Gemäß der Erfindung ist der wesentliche Vorteil erreichbar, daß bei einer Schaltung, die sowohl für BCD-Signale als auch für rein binäre Signale geeignet ist, eine besonders hohe Arbeitsgeschwindigkeit erreicht wird. Dazu wird gemäß der Erfindung das Ergebnis einer Binäraddition vorab korrigiert, d. h. ohne eine Übertrageingabe zu berücksichtigen oder abzuwarten, so daß unverzüglich ein Zwischenergebnis gebildet wird. Das Zwischenergebnis kann anschließend auf verhältnismäßig einfache Weise und auch relativ rasch unter Berücksichtigung einer Übertrageingabe erhöht werden.
Weilerhin besteht ein wesentlicher Vorteil der erfindungsRcmäßen Schaltungsanordnung darin, daß größere Teile der Logik für die Addition im BCD-Modus und für die Addition im Binär-Modus identisch sind. Es wird somit gemäß der Erfindung nicht nur eine mit hohcr Geschwindigkeit arbeitende BCD-Addierschaltung ge-
schaffen, sondern eine Addierschaltung, die sowohl BCD-Signale als auch rein binäre Signale mit hoher Geschwindigkeit addieren kann.
Gemäß der Erfindung läßt sich somit zugleich mit einer Erhöhung der Arbeitsgeschwindigkeit der Schal-
tungsaufwand erheblich vermindern. Dieser Vorteil wirkt sich insbesondere bei der Ausbildung der Schaltung in Form einer monolithischen integrierten Schaltunggünstigaus.
Da gemäß der Erfindung die Addition des Korrekturwerts, der für eine bestimmte BCD-Ziffer erforderlich ist ausgeführt wird, bevor eine Übertrageingabe für diese bestimmte Ziffer durch die Übertragerwartungs-Iogik erzeugt wird, ergibt sich eine zeitsparende Überlagerung von Operationen. Dadurch wird diejenige Zeit wesentlich verringert, weiche erforderlich ist um Ziffern im BCD-Modus zu addieren. Duroh einen endgültigen Inkrementierschritt wird eine Überuageingabe berücksichtigt um die endgültige BCD-Summe zu bilden, so daß eine einfachere gerätetechnische Einrichtung ermöglicht wird, die mit höheren Geschwindigkeiten arbeiten kann als solche Schaltungen, welche für einen vollständigen BCD-Additionsschritt erforderlich sind.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend beispielsweise anhand der Zeichnung beschrieben; in dieser zeigt
F i g. 1 ein Teilblockdiagramm einer Binär/BCD-Addierschaltung,
F i g. 2 ein Blockdiagramm eines Addiersystems, welches eine Mehrzahl von Addierschaltungen gemäß F i g. 1 aufweist und
Fig.3a und 3b ein detailliertes Logikschema einer Binär/BCD-Addierschaltung.
Die Fig. 1 zeigt ein Blockdiagramm einer Binär/ BCD-Addierschaltung 10 mit einer binären Addierstufe 12, weiche mit Eingangsleitungen 14,16,18 und 20 verbürgen ist, welche die Eingänge für einen Vier-Bit-/*- Operanden darstellen, und welche mit Eingangsleitungen 22,24,26 und 28 verbunden ist, welche die Eingänge für einen Vier-Bit-ß-Operanden bilden. Die binäre Addierstufe 12 ist über Leitungen 32 bis 46 welche Bit-Überträge von der binären Addierstufe 12 wegführen mit einer Schaltung 30 zur Erzeugung und Weitergabe eines Gruppenübertrags verbunden. Die binäre Addierstufe 12 ist weiterhin mit einer logischen dezimalen Korso rekturstufe 48 über Leitungen 50,52,54 und 56 verbunden, welche das (erste) Ergebnis übertragen, welches durch die binäre Addierstufe 12 gebildet wurde. Die Schaltung 30 zur Erzeugung und Weiterleitung eines Gruppenübertrages ist mit einer Modussteuerleitung 58 verbunden, welche zur Auswahl des Betriebes der Addierschaltung 10 für BCD-Code oder für Uinär-Code dient. Die Schaltung 30 erzeugt ein Ausgangssigna! (Weiterleitungssignai) für einen Gruppenübertrag auf der Leitung 60, ν eiche mit einer Inkrementierstufe 62 verbunden ist sowie mit einer in bezug auf die Addierschaltung 10 extern angeordneten logischen Übertragerwartungsschaltung. Die Schaltung 30 e-zeugt weiterhin ein Gruppenübertrag-Erzeugungssignal auf der Leitung 64, welche mit der Korrekturstufe 48, der Inkrementierstufe 62 unu <ier ex'ernen logischen Übertragerwartungsschaltung verbunden ist. Die Korrekturstufe 48 ist mit der Inkrementierstufe 62 über die Leitungen 66,68,70 und 72 verbunden, welche von der Korrektur-
stufe 48 das zweite Ergebnis übenragen. Die Inkrementierstufe 62 ist mit den Ausgangslcitungen 74,76,78 und 80 verbunden, welche das endgültige Binär- oder BCD-Summcnsignal der Addierschaltung 10 bereitstellen. Die Inkrementierstufe 62 ist auch mit der Leitung 82 verbunden, über welche eine Übertrageingabe von einer vorhergehenden Addierschallung in die Addierschaltung 10 eingegeben wird.
Die F i g. 2 zeigt ein Teilblockdiagramm 100, bei welchem eine Gruppe von Addierschaltungen gemäß Fig. I derart zu einem Addiersystem zusammengefaßt sind, daß mehrere BCD-Ziffern oder größere Binärzahlen addiert werden können. Das Addiersystem 100 weist einen X-Addierer 102, einen V-Addierer 104 und einen Z-Addierer 106 auf. Der X-Addierer 102 hat als Eingangssignale einen Vier-Bit-Operanden AX und einen Vier-Bit-Operanden BX, welche derart miteinander kombiniert sind, daß ein Vier-Bit-Summensignal SX sowie pin rvninnpnithprtraci-Fr-rfMiariinoccicrnal auf At>r Leitung 110 und ein Übertrag-Weiterleitungssignal auf der Leitung 108 erzeugt werden, welche mit einer Übertragerwartungslogik 112 verbunden sind. Der ,V-Addierer 102 hat weiterhin einen Übertrageingabeeingang CX, welcher mit der Übertragerwartungslogik 112 verbunden ist, sowie einen BCD-Steuereingang, der mit der Steuerlcitung 114 verbunden ist. In ähnlicher Weise hat der V-Addicrcr 104 als Eingangssignale einen Vier-Bit-Opcrandcn Λ Vund einen Vier-Bit-Operanden BY, welche derart miteinander vereinigt sind, daß ein Vier-Bit-Summensignal SV sowie ein Gruppenübertrag-Erzeugungssignat und ein Gruppenühertrag-Weiterleitungssignal erzeugt werden, und zwar auf den Leitungen 118 bzw. 116, welche mit der Übertragerwartungslogik 112 verbunden sind. Der V-Addierer 102 hat einen Übertrageingabeeingang CY, welcher mit der Übertragerwartungslogik 112 verbunden ist, sowie einen BCD-Steuereingang, der mit der Steuerleitung 114 verbunden ist. Der Z-Addierer 106 hat als Eingangssignale einen Vier-Bit-Operanden AZ und einen Vier-Bit-Operanden BZ, welche derart miteinander vereinigt sind, daß ein Vier-Bit-Summensignal SZ und ein Gruppenübertrag-Erzeugungssignal sowie ein Gruppenübertrag-Weiterleitungssignal gebildet werden, und zwar auf den Leitungen 122 bzw. 120, welche mit der Übertragerwartungslogik 112 verbunden sind. Der Z-Addierer 106 hat auch einen Übertrageingabeeingang CZ, welcher mit der Übertragerwartungslogik 112 verbunden ist. sowie einen BCD-Stcucreingang, welcher mit der Steuerleitung 114 verbunden ist.
Die F i g. 3a und 3b zeigen ein detailliertes Logikdiagramm, welcher eine bevorzugte Ausführungsform der Addierschaltung 10 gemäß dem Blockdiagramm nach der F i g. 1 darstellt.
Fig.3a zeigt die Schaltung 30 zur Erzeugung und Weiterleitung eines Gruppenübertrags, weiche Bitübertrag-Erzeugungs- und Übertragweiterleitungs-Signale als Eingangssignale auf den Leitungen 32 bis 46 und ein Binär/BCD-Steuereingangssignal auf der Modussteuerleitung 58 erhält und als Ausgangssignale das Gruppenübertrag-Weiterleitungssignal auf der Leitung 60 und das Gruppcnübertrag-Erzeugungssignal auf der Leitung 64 abgibt. Die F i g. 3b zeigt die binäre Addierstufe 12, welche als Eingangssignale einen Operanden A auf den Leitungen !4,16,18 und 20 sowie einen Operanden B auf den Leitungen 22, 24, 26 und 28 aufweist Die F i g. 3b zeigt auch die Korrekturstufe 48. welche mit der binären Addierstufe 12 und mit der Inkrementierstufe 62 verbunden ist. welche als Ausgangssignal das Summensignal 5 auf den Leitungen 74, 76, 78 und 80 abgibt. Ein Übertrageingabesignal von einer vorhergehenden Addierschaltung wird der Inkrementierstufe 62 über die Leitung 82 zugeführt. Die Fig. 3b zeigt auch Logikelemente 61, 65 zur Erzeugung eines Übertragausgabesignals, welche in der Fig. I nicht dargestellt sind. Das Übcrtragcingabcsignal auf der Leitung 82 wird dem einen Eingang eines UND-Gallers 61 zugeführt, während das Gruppcniibcrirag-Wciterleiiiiiijrssi-
IH gnal auf der Leitung 60 dem anderen Eingang des UND-Gatters 61 zugeführt ist, dessen Ausgang dann mit dem einen Eingang eines ODF.R-Gatlers 65 verbunden isi. Das Gruppenübertrag-Erzeugungssignal auf der Leitung 64 wird dem anderen Eingang des ODER-Gallers 65 zugeführt, dessen Ausgang mil der Leitung 67 verbunden ist. auf welcher das Übertragausgabcsignal vorhanden ist. Das Übertragausgabesignal wird in solchen Anwendungsfällen verwendet, in welchen eine Gruppe
eher Paralleladdierer geschaltet ist, anstatt mit einer Übertragerwartungslogik.
Die Arbeitsweise des Addiersystems mit Übertragerwartungslogik wird anhand des Systemblockdiagramms der F i g. 2 erläutert. Die F i g. 2 zeigt eine Gruppe von Addierschaltungen 102, 104, 106. mit denen Zahlen addiert werden, welche jeweils entweder als Binärzahlcn oder als BCD-Zahlcn vorhanden sein können. Die innerhalb /ider Addicrschaltung vorgesehene Logikschaltung spricht auf den logischen Zustand der BCD-.Stcuerleitung 114 an, um festzulegen, ob die Eingabeoperanden (AX. BX. A Y. BY, usw.) als reine Binärzahlcn oder als BCD-Zahlen zu behandeln -äind. Das System gemäß der F i g. 2 enthält auch eine Übertragerwartungslogik 112, um höhere Addiergeschwindigkeiten zu erreichen.
Diese Logikschaltung 112 erhält als Eingangssignale von jeder der Addierschaltungen ein Gruppenübertrag-Weiterleitungssignal und ein Gruppenübertrag-Erzeugungssignal auf entsprechenden Leitungen 108, llObzw. 116, 118 bzw. 120, 122 und erzeugt als Ausgangssignalc
die Übertrageingabesignale für jede Addierschallung (Übertrageingabeeingänge CX, CY, CZ). In Abhängigkeit von dem logischen Zustand der BCD-Steuerleitung 114 erzeugt jede Addierschaltung Signale auf der Gruppenübertrag- Weiterleitungs- und auf derGruppcnübcrtrag-Erzeugungsleitung, wie sie entweder für eine reine Binär-Addition oder für eine BCD-Addition geeignet sind. Wenn beispielsweise ein BCD-Bctrieb angenommen wird, so erzeugt der V-Addierer 104 ein Gruppenübertrag-Weiterlcitungssignal auf der Leitung 116,
so wenn die Summe der Operanden A Vund B Vgleich 9 ist. womit für die Übertragerwartungslogik 112 angezeigt wird, daß von dem V-Addierer 104 an den Z-Addierer 106 ein Übertrageingabesingal weitergeleitet werden soll. Wenn eine Binär-Arbeitsweise angenommen wird, erzeugt der V-Addierer 104 ein Gruppenübertrag-Weiterleitungssignal, wenn die Summe der Operanden A Y und BYgleich 15 ist, und ein Gruppenübertrag-Erzeugungssignal, wenn die Summe der Operanden A Y und BY größer als 15 ist. Obwohl durch die Verwendung eines Gruppenübertrag-Erzeugungssignals und eines Gruppenübertrag-Weiterleitungssignals die Addition beschleunigt wird, weil nämlich die Übertrageingabesignale für die Addierschaltungen der Gruppe gleichzeitig gebildet werden können, kann die jeweilige endgültige Summe (beispielsweise 5 V des V-Addierers 104) so lange nicht gebildet werden, bis das betreffende Übertrageingabesignal durch die Übertragerwartungslogik der nachfolgenden Addierschaltung zugeführt isL
Nunmehr wird anhand eines Beispiels die Addition von IKT)-ZiIhIcIi beschrieben, indem eine übliche IJinärlechnik angewandt wird. Beispielsweise soll die folgende Summe gebildet werden:
258
+ 498
/56
|ede Ziffer der Operanden wird in Form einer BCD-Zahl dargestellt, und die BCD-Addierschaiiung muß eine ordnungsgemäße BCD-Darstellung der entsprechenden Summenziffer bilden. Wenn die mittleren Ziffern der obigen Summe betrachtet werden, so verwendet eine Methode unter Anwendung der Binärtechnik den folgenden Schritt:
SCHRITTI:
Addieren der BCD-OiicraiKjcniiffern und der Übertragziffer als Binarzahlen, um ein erstes Er gcbnis zu bilden
0101 -4-Opcrand ( = 5)
1001 ß-Operand ( = 9)
I^ Übertrag (-1)
I Il I Erstes Ergebnis
Es sei darauf hingewiesen, daß das erste Ergebnis kein gültiger BCD-Code ist, weswegen ein Korrekturvorgang im nächsten Schritt erfolgen muß.
SCHRITT 2:
Vergleichen des ersten Ergebnisses mit der Binärzahl 9. Wenn das erste Ergebnis kleiner oder gleich 9 ist, so stellt das erste Ergebnis die ordnungsgemäße BCD-Ziffer der Summe dar. Wenn das erste Ergebnis größer ist als 9. wird ein? Bin!r7-ahl £> zu dem ersten Ergebnis addiert, um die ordnungsgemäße BCD-Ziffer der Summe zu erreichen.
Uli Erstes Ergebnis
0110 Korrekturwert ( = 6)
0101 BCD-Summenziffer( =
■5)
Es sei darauf hingewiesen, daß das fünfte Bit mit der höchsten Wertigkeiten der Summe nicht dargestellt ist.
Eine wesentliche Einschränkung bei der obgigen Methode besteht darin, daß das erste Ergebnis nicht ermittelt werden kann, bis der Übertrag von einer vorhergehenden Addierschaltung zur Verfugung steht. Obwohl eine Übertragerwartungslogik die Zeit für das Weiterleiten eines Übertrags vermindert, gehört zu der Zeit, die erforderlich ist, um eine endgültige BCD-Ziffer der Summe zu bilden, die gesamte Übertragweiterleitungszeit einschließlich der zusätzlichen Zeit, welche erforderlich ist, um einen Korrekturwert zur Anwendung zu bringen (durch Addieren der Binärziffer 6).
Der Schwerpunkt der vorliegenden Erfindung liegt in der Tatsache, daß die obige Einschränkung aufgehoben wird. Die Art und Weise, wie dies ermöglicht wird, läßt sich sehr deutlich veranschaulichen, indem das obige Zahlenbcispicl wiederholt wird, wobei die abgewandelte Folge von Schritten dargestellt wird, wie sie gemäß der Erfindung ausgeführt werden.
SCHRITTl:
Addieren der BCD-Operandenziffem als Binärzahlen ohne Übertragziffer, um ein erstes Ergebnis zu erzeugen
0101 1001 MIO
/t-Operand ( = r>) «-Operand ( = 9) Erstes Ergebnis
Es ist wiederum zu bemerken, daß dieses erste Ergebnis kein gültiger BCD-Code ist, wodurch das Korrekturverfahren erforderlich wird, welches im nächsten Schritt ausgeführt ist.
SCHRITT 2:
Vergleichen des ersten Ergebnisses mit der Binärzahl 9 und Addieren eines geeigneten binären Korrekturwerts zu dem ersten Ergebnis, um ein zweites zu erzeugen. Wenn das erste Ergebnis kleiner oder gleich 9 ist, ist der binäre Korrekturwert gleich 0. Wenn das erste Ergebnis größer als 9 ist, ist der
/inSrC i^GrrC(\tlir*A*cri gtC'Ci, *>
1110 Erstes Ergebnis
0110 Korrekturwert ( =
0100 Zweites Ergebnis
Es ist erneut zu bemerken, daß das fünfte Bit mit dem höchsten Stellenwert beim zweiten Ergebnis nicht dargestellt ist.
SCHRITT 3:
Inkrementieren des zweiten Ergebnisses mit einem Übertrag, um die ordnungsgemäße BCD-Ziffer der Summe zu erreichen:
0100 Zweites Ergebnis ]_ Obertrag
0101 BCD-Summenziffer
Bei der Ausführung des Schrittes 3 zur BCD-Addition muß das zweite Ergebnis auf die nächste folgende BCD-
Ziffer erhöht werden, d. h. 7.8,9,0.1,2, usw.
Die Fig. 1 veranschaulicht eine Addicrschaltung 10, •welche eine BCD-Addition ausführt, wie sie im obigen Beispiel veranschaulicht ist. Die Addierschaltung 10 ist derart aufgebaut, daß sie entweder eine Addition im BCD-Modus oder im Binär-Modus ausführt, wie es durch den logischen Zustand der Modussteuerleitung 58 festgelegt ist Im BCD-Modus sind der A-Opennd und der ß-Operand jeweils eine 4-Bit-BCD-Zahl. Die binäre Addierstufe 12 addiert diese Zahlen als Binärzahlen, um
so ein erstes Vier-Bit-Ergebnis auf den Leitungen 50,52,54 und 56 zu erzeugen, wie es oben im Schritt 1 veranschaulicht ist. Die binäre Addierstufe 12 erzeugt ebenfal's individuelle Bit-Übertragweiterleitungs- und Übertragerzeugungssignale auf den Leitungen 32 bis 46, so daß dadurch diejenigen Eingabesignale erzeugt werden, weiche von der Schaltung 30 benötigt werden, um die Gruppenübertrag-Erzeugungssignale und die Gruppenübertrag-Weiterleitungssignale zu bilden, welche von der Cbertragerwartungslogik 112 benötigt werden. Die Korrekturstufe 48 bringt einen Korrekturwert bei dem ersten 4-Bit-Ergebnis auf den Leitungen 50,52, 54 und 56 zur Anwendung, um ein zweites 4-Bit-Ergebnis auf den Leitungen 66,68,70 und 72 zur Verfügung zu stellen, wie es im obigen Beispiel im Schritt 2 beschrieben ist Für den BCD-Modus bestimmt das Gruppenübertrag-Erzeugngssignal auf der Leitung 64. ob der erforderliche Korrekturwert eine binäre 0 oder eine binäre 6 ist Die Inkrementierstufe 62 spricht auf das Übertrags!-
V^ gnal auf der Leitung 82 an, um das zweite Ergebnis auf
s] den Leitungen 66,68,70 und 72 um 1 zu erhöhen, so daß
Ij dadurch die endgültige BCD-Summe S auf den Leitun-
ß gen 74, 76, 78 und 80 gebildet wird, wie es im Schritt 3
i.x des obigen Beispiels veranschaulicht ist. Ein weiterer
SH Hauptvorteil »emäß der Schaltung, wie sie im Blockdia-
r| gramm der Fig. 1 dargestellt ist, liegt in der Tatsache,
js daß größer^ Teile der logischen Schaltung für die Addi-
W tion im BCÜ-Modus und die Addition im Binär-Modus
λ identisch sind. Somit sind die Schaltung und die Arbeits-
|| weise der binären Addierstufe 12 entweder für eine Bi-
^t när-Addition oder für eine BCD-Addition geeignet.
■| Größere Teile der Schaltung 30 sind dieselben, und zwar
φ für den jeweiligen Addiermodus, wobei die Modussteu-
Λ[ erleitung 58 die Schaltung 30 in der Weise aktiviert, daß
fi Gruppenübertrag-Erzeugungssignale bzw. Gruppen-
i;i übertrag-Weiterleitungssignale bzw. auf der Leitung 64
-|j bzw. 60 erzeugt werden, die dazu geeignet sind, den
vnrccophenen ΜοΗιις ηιις/ιιίηςρη so Haß yimleirh anrh
γς cj ■ cj - - ' ■ - - ■ cj
s| eine geeignete Addiermodussteuerung für die Korrek-
Il lurstufe 48 und die Inkrementierstufe 62 gebildet wird.
i? Da der Korrekturwert, welcher bei Addition im Binär-
i| modus benötigt wird, immer eine binäre 0 ist, was zum
j| Teil identisch ist mit den Korrekturwerten, die für den
ρ BCD-Modus benötigt werden (binäre 0 bzw. binäre 6).
-3 ist die Schaltung für die Korrekturstufe 48 in beiden
ä' Betriebsarten insoweit dieselbe. Schließlich führt auch
die Inkrementierstufe 62 dieselbe Grundfunktion in jeder Betriebsart der Addierschaltung aus, wobei eine Sieuerinformation auf den Leitungen 60 und 64 die Inkrementierstufe 62 derart steuert, daß sie entweder als BCD-Inkrementierstufe (7,8,9,0,1,2,...) oder als Binärlnkrementierstufe(13,14,15,0,1,2,...) arbeitet.
Bei einer Addierschaltung, welche die in der F i g. 1 dargestellte Struktur aufweist, wurde die Möglichkeit j5 einer kombinierten Arbeitsweise gemäß der obigen Beschreibung bei einer nur 4%igen Vermehrung des Aufwandes an Bauelementen gegenüber dem Aufwand erreicht, der für eine reine Binär-Addierschaltung erforderlich ist. Weiterhin ist die Ausführungsform gemäß Fig. 1 dazu in der Lage, eine BCD-Addition mit einer Geschwindigkeit auszuführen, welche gleich der Geschwindigkeit für eine Binär-Addition ist, was eine Verbesserung von 30 bis 40% gegenüber solchen Geschwindigkeiten bedeutet, die von herkömmlichen Schaltungen erreicht werden, wie es aus dem ersiien Zahlenbcispiel hervorgeht.
Hierzu 3 Blatt Zeichnungen
50
55
bO

Claims (1)

Patentansprüche:
1. Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Birär-Summe aus einem ersten und einem zweiten Operanden, mit einer Modussteuerleitung (58), durch deren Steuersignale das Arbeiten im BCD- oder Binärmodus auswählbar ist, mit einer binären Addierstufe und mit einer dezimalen Korrekturschaltung zur Addition eines Korrekturwertes »0« oder »6« zu dem Ergebnis einer reinen Binär-Addition, wenn eine Arbeitsweise in einem BCD-Modus erwünscht ist, dadurch gekennzeichnet, daß
DE19772708637 1976-03-08 1977-02-28 Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden Expired DE2708637C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US66446076A 1976-03-08 1976-03-08

Publications (3)

Publication Number Publication Date
DE2708637A1 DE2708637A1 (de) 1977-09-15
DE2708637B2 DE2708637B2 (de) 1980-06-19
DE2708637C3 true DE2708637C3 (de) 1985-07-18

Family

ID=24666056

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772708637 Expired DE2708637C3 (de) 1976-03-08 1977-02-28 Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden

Country Status (4)

Country Link
JP (1) JPS52108745A (de)
DE (1) DE2708637C3 (de)
FR (1) FR2344071A1 (de)
GB (1) GB1525893A (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0525492Y2 (de) * 1987-01-26 1993-06-28
JPH09231055A (ja) * 1996-02-27 1997-09-05 Denso Corp 論理演算回路及びキャリールックアヘッド加算器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3112396A (en) * 1957-05-03 1963-11-26 Ibm Arithmetic circuitry
US3711693A (en) * 1971-06-30 1973-01-16 Honeywell Inf Systems Modular bcd and binary arithmetic and logical system

Also Published As

Publication number Publication date
DE2708637B2 (de) 1980-06-19
JPS52108745A (en) 1977-09-12
JPS5534454B2 (de) 1980-09-06
FR2344071B1 (de) 1981-10-02
GB1525893A (en) 1978-09-20
FR2344071A1 (fr) 1977-10-07
DE2708637A1 (de) 1977-09-15

Similar Documents

Publication Publication Date Title
DE2616717C2 (de) Digitales Addierwerk
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE2230188C2 (de) Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE2623986A1 (de) Parallelrechenwerk
DE1549477B1 (de) Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
DE1197650B (de) Parallel-Addierer
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE4101004A1 (de) Paralleler multiplizierer mit sprungfeld und modifiziertem wallac-baum
DE3689356T2 (de) Verfahren und Schaltung zum Generieren von binären Signalen und modifizierter Bitfolge.
DE2063199A1 (de) Einrichtung zur Ausfuhrung logischer Funktionen
DE69521464T2 (de) Paralleler Prozessor
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE2165730A1 (de) Rechensystem
DE2245284A1 (de) Datenverarbeitungsanlage
DE2708637C3 (de) Schaltungsanordnung zur Bildung einer BCD-Summe oder einer reinen Binär-Summe aus einem ersten und einem zweiten Operanden
DE3688434T2 (de) Schneller bcd/binaer-addierer.
DE2000275A1 (de) Elektronischer Walzenschalter
DE19846828B4 (de) Kombinierter Binär-/Dezimal-Addierer
DE2952689C2 (de)
DE19847245C2 (de) Kombinierte Addierer- und Logik-Einheit
DE3485786T2 (de) Inter-element-verarbeitungsgeraet in einem hochleistungsfaehigen parallelen vektorverarbeitungsgeraet.
DE2135607C2 (de) Schaltungsanordnung zur Inkrementierung oder Dekrementierung
DE4242929A1 (de) Schaltungsanordnung zum Bilden der Summe von Produkten

Legal Events

Date Code Title Description
8281 Inventor (new situation)

Free format text: ANDERSON, JACK LEE, SCOTTSDALE, ARIZ., US

C3 Grant after two publication steps (3rd publication)