DE2712224A1 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2712224A1
DE2712224A1 DE19772712224 DE2712224A DE2712224A1 DE 2712224 A1 DE2712224 A1 DE 2712224A1 DE 19772712224 DE19772712224 DE 19772712224 DE 2712224 A DE2712224 A DE 2712224A DE 2712224 A1 DE2712224 A1 DE 2712224A1
Authority
DE
Germany
Prior art keywords
length
signal
circuit
circuits
significance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19772712224
Other languages
English (en)
Other versions
DE2712224C2 (de
Inventor
Robert Albert Healey
Thomas Leo Jeremiah
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2712224A1 publication Critical patent/DE2712224A1/de
Application granted granted Critical
Publication of DE2712224C2 publication Critical patent/DE2712224C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format

Description

Böblingen, 18. März 1977 km-bm-rz
Anmelderin:
International Business Machines Corporation, Armonk, N. Y. 10504, USA
Amtliches Aktenzeichen:
Neuanmeldung
Aktenzeichen der Anmelderin: EN 975 016
Vertreter:
Patentassessor M. KINDERMANN Sindelfinger Straße 7030 Böblingen
Bezeichnung:
Datenverarbeitungsanlage
709841/0676
EN 975 016 27122 2-Λ
r;
Die Erfindung lif-MiM' . · ·. 11 >. > < .»ί·.1·· τ κ Ι,.μ <_iim|.;<m ld μ,' mit einem Rechenwerk zur Ver.u».»c Ltuii'j nu;nr:; te L1i'jer üi>cr<imle!M variabler Länge und mit SpeichereLnrichturujen zur Aufnaume vun Operanden und Resultatwerten sowie mit einer Steuereinheit die in Übereinstimmung mit Programmbefehlen zu verarbeitende Operanden in den Speichereinrichtungen auswählt und Bestimmungsort-Speicherfelder variabler Länge zur Speicherung der Resultate der Verarbeitung adressiert.
Bekannte Datenverarbeitungsanlagen, beispielsweise solche des Typs IBM System/370 sind in der Lage, sogenannte Dezimaloperationen auszuführen, die darin bestehen, daß numerische Operanden nach den Regeln der Dezimalarithmetik miteinander verknüpft werden zu Resultatwerten. Die Operanden und die Resultatwerte liegen dabei im binärdezimal codierten Format vor. Die Maschinenbefehle, die derartige Dezimaloperationen steuern, enthalten einen Operationscode, die Startadresse eines ersten Operanden, die Startadresse eines zweiten Operanden, einen Operandenlängenwert für den ersten Operanden und einen Operandenlängenwert für den zweiten Operanden. Die Längenwerte geben die Anzahl der Bytes an, aus denen die Operanden bestehen. Beispielsweise wird im Falle eines Additionsbefehls der zweite Operand zum ersten Operanden addiert und das Resultat wird zum Speicherplatz des ersten Operanden übertragen. Der Längenwert des ersten Operanden stellt somit gleichzeitig den Längenwert des Bestimmungsortes dar, an welchem das Resultat zu speichern ist. Ähnliche Verhältnisse liegen vor für die Maschinenbefehle, welche andere Dezimaloperationen steuern, wie z.B. Subtraktion, Multiplikation oder Division.
Bei Operationen der oben erläuterten Art kann das Problem auftreten, daß Daten verloren gehen, wenn die Länge des zweiten Operandenfeldes größer ist als die Länge des er-ten Operandenfeldes und des Bestimmungsort-Feldes. Die Feldgröße allein liefert jedoch keine hinreichend genaue Aussage ob tatsächlich bedeutsame Resultatsziffern verloren gehen oder nicht. Bei-
709841/0676 BAD
spielsweise kann das zweite Operandenfeld größer sein, aber die darin enthaltenen hochstelligen Ziffern können unbedeutende Werte darstellen. Ebenso ist es im Fall der Subtraktion möglich, daß trotz eines größeren Feldes fUr den zweiten Operanden das Subtraktionsresultat nicht größer ist als die Länge des Bestimmungsort-Speicherfeldes.
Bei bekannten Datenverarbeitungsanlagen werden verschiedene Maßnahmen angewandt, um eine Programmunterbrechung in solchen Fällen zu veranlassen, wenn signifikante Resultatziffern verloren gehen aufgrund eines überlangen Resultats einer Dezimaloperation. Diese Maßnahmen variieren von Anlage zu Anlage und sind von der Art der in diesen Anlagen benutzten Schaltungen abhängig. In mikroprogramm-gesteuerten Maschinen geschieht diese Unterbrechungssteuerung im allgemeinen durch eine Mikroprogramm-Routine, die eine Anzahl von Mikroprogrammschritten veranlaßt zur Prüfung, ob signifikante Ziffern verloren gehen.
Ein typisches Beispiel derartiger bekannter Maßnahmen enthält die bekannte Datenverarbeitungsanlage IBM System/360, Modell (z.B. Kundendiensthandbuch "System/360 Modell 50 RS, SI, SS-Instructions", IBM-Form SY 22-2825, Copyright IBM Corporation 1966, Seiten 55, 56 und 68 bis 82, Die Datenverarbeitungsanlage IBM System/360 Modell 50 besitzt eine mikroprogrammierte Verarbeitungseinheit, deren Hauptdateneammelleitungen und deren arithmetische Einheit eine Breite von 4 Bytes (32 Bits) aufweisen. Während eines gegebenen Maschinenzyklus kann daher die arithmetische Einheit zwei Datenfelder mit je 32 Bits empfangen und ein Resultatdatenfeld yon 32 Bits erzeugen. Beispielsweise werden bei einer Addition von Operanden, die eine Länge von mehr als 4 Bytes aufweisen, zunächst die ersten 4 Bytes eines jeden Operanden aus dem Speicher entnommen und addiert sowie das 4 Byte umfassende Resultat auf den entsprechenden Vier Bytepositionen des ersten Operanden gespeichert. Dieser j Vorgang wird daraufhin mit den nächsten 4 Bytes der Operanden Wiederholt, bis der erste Operand ausgeschöpft ist. Am Anfang '
709841/0676
EN 975 016 27 122 2 A
■'i
der Operation werden die Längenwerte des ersten und des zweiten Operandes in zwei getrennte Längenzähler eingestellt. Diese Zähler werden mit jedem Durchgang eines Operandenteils durch die arithmetische Einheit dekrementiert, um die Zahl der während dieses Durchgangs verarbeiteten Bytes festzuhalten. Der Durchgang von Daten durch die arithmetische Einheit wird fortgesetzt, bis der Zähler des ersten Operanden anzeigt, daß der erste Operand über seine volle Länge abgearbeitet worden ist. Daraufhin prüft die Verarbeitungseinheit den Inhalt des zweiten Zählers, um festzustellen, ob der zweite Operand ebenfalls ausgeschöpft ist. Wenn dies der Fall ist, veranlaßt die Verarbeitungseinheit einen normalen Abschluß der Operation. Wenn jedoch der Zähler des zweiten Operanden noch nicht auf Null steht, muß der restliche Teil des zweiten Operandenfeldes geprüft werden, um festzustellen, ob dieser Teil signifikante Ziffern enthält. Ist dies der Fall, wird eine dezimale Überlauf unterbrechung erzeugt. Die Ausführung der vorgenannten Prüfoperationen erfordern zahlreiche Mikroinstruktionszyklen und daher einen erheblichen Teil an Verarbeitungszeit.
Aufgabe der Erfindung ist es, eine Schaltungsanordnung anzugeben, die diese Nachteile vermeidet und einen Längenüberschreitungszustand bei der oben erläuterten Verarbeitung von Operanden variabler Länge ohne Zeitverlust und mit relativ geringem Aufwand an Schaltelementen feststellt. Die erfindungsgemäßen Maßnahmen zur Lösung dieser Aufgabe sind aus dem Anspruch 1 ersichtlich* Die Unteransprüche geben vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung an. Nachfolgend 1st ein Ausführungsbeispiel der Erfindung anhand von Zeichnungen beschrieben.
Es zeigen:
Fig. 1 ein vereinfachtes Blockschaltbild einer Datenverarbeitungsanlage, bei der die Erfindung angewandt wird,
709841/0876
EN 975016 _ _.2 7_1 2 22A
Fign. 2 zwei verschiedene Formate von Maschinenbefehlen, und 3 wie sie bei der Datenverarbeitungsanlage von Fig. 1 verwendbar sind,
Fig. 4 eine Darstellung der Datenformate, die bei der Einrichtung von Fig. 1 Verwendung finden,
Fig. 5 eine Tabelle von Zahlendarstellungen,
Fig. 6 ein Blockschaltbild der verschiedenen Funktionseinheiten, aus denen der erfindungsgemäße Teil der Datenverarbeitungsanlage von Fig. 1 besteht,
Fig. 7 ein Blockschaltbild von Bytestatussignal-Generatorschaltungen, wie sie in der Schaltungsanordnung von Fig. 6 verwendet werden,
Fig. 8 ein Blockschaltbild von Signalselektoren, wie sie in der Schaltungsanordnung von Fig. 6 verwendet werden,
Fig. 9 eine Tabelle zur Erläuterung der Wirkungsweise der Signalselektoren von Fig. 8,
Fig. 10 eine Blockdarstellung eines Alle-Bytes-Status-Generatore, wie er in Fig. 6 verwendet wird,
Fig. 11 ein Blockschaltbild einer Vorzeichenbit-Selektorschaltung der Anordnung von Fig. 6,
Fig. 12 ein Blockschaltbild einer Anordnung, die in Fig. als Datenformatlogik verwendbar ist, und
Fig. 13 ein Blockschaltbild der 1. Durchgang/2. Durchgang-Logik-Einheit von Fig, 6.
7098Α1/067Θ
EN 975 016 27 1 222 A
InELg. 1 ist eine LängenUberschreitungsanzeigeschaltung 10 dargestellt» die Teil einer digitalen Datenverarbeitungsanlage ist/ welche variabel lange Operanden in Bestiiranungsspeicherfeldern variabler Länge speichert und in welcher die Länge der Bestimmungsspeicherfelder kürzer sein kann als die Länge der zu speichernden Operanden. Die Schaltung 10 umfaßt ein Bestimmungslänge-Register 11, das Über Eingangsleitungen 12 Längenbits entsprechend dem Inhalt des Bestimmungslängenfeldes im Maschinenbefehl zugeführt erhält. Die Schaltung 10 umfaßt auch Schaltungen 14, die auf Anzeigesignale für die Länge der zu speichernden Operanden ansprechen und die Längenstatussignale erzeugen. Die Schaltung 14 ist an eine Datensammelleitung 13 angeschlossen, über die Bit-Status-Anzeigesignale für jede Bitposition des zu überwachenden Datenfeldes zugeführt werden.
Die Schaltung 14 empfängt ferner die Bestimmungslänge-Angabe aus dem Register 11 und verarbeitet diese mit den Statusanzeigesignalen von der Datensammelleitung 13 zur Erzeugung einer Längenüberschreitungsanzeige, wenn ein außerhalb der Bestimmungslänge liegender Teil des Datenfeldes signifikante Daten enthält. Die Schaltung 14 wird deshalb nachfolgend auch Längenüberschreitungsdetektor genannt. Ihr Ausgang ist mit einer binären Verriegelungsschaltung 15 verbunden und liefert an diese Einstellsignale und Rückstellsignale. Ein Einstellsignal bringt die Verriegelungsschaltung 15 in den Zustand, in welchem sie auf einer Leitung 16 die Anzeige einer Längenüberschreitung liefert. Ein Rückstellsignal bringt die Verriegelungsschaltung 15 zurück in den Ausgangszustand, in welchem auf der Leitung 16 kein Längenüberschreitungssignal erscheint. Das Signal auf Leitung 16 kann in für sich bekannter Weise eine Programmunterbrechung veranlassen, es sei denn die Verarbeitungseinheit, in welcher die Schaltung von Fig. 1 verwendet wird, ist so programmiert, daß eine derartige Anzeige ignoriert wird, beispielsweise durch Setzen entsprechender Maskenbits im Programmstatuswort-Register bei Datenverarbeitungseinheiten des Typs IBM System/370. Wenn das Maskenbit im Ein-Zustand steht,
709841/0876
-A -
wird das Längenüberschreitungssignal angenommen und eine Programmunterbrechung veranlaßt, die darin besteht, daß die Verarbeitungseinheit das laufende Programm nicht weiter verarbeitet, sondern stattdessen zu einer geeigneten ünterbrechungsbehandlungsroutine verzweigt.
In Fig. 1 ist die Schaltung 10 in Verbindung mit einer Recheneinheit 20 dargestellt, die einen parallel Binäraddierer für mehrere Bytes enthält. Zum Zwecke der Erläuterung sei angenommen, daß die Recheneinheit 20 eine Breite von 8 Bytes (64 Bits) aufweist. Sie ist daher in der Lage, 8 Datenbytes über eine erste Eingangssammelleitung A und 8 Datenbytes über eine zweite Eingangssammelleitung B parallel zu empfangen, arithmetische Operationen mit diesen zwei je 8 Byte langen Operanden auszuführen und ein 8 Byte langes Resultat in Paralleldarstellung auf einer Ausgangssammelleitung Z zu erzeugen.
Das Rechenwerk 20 führt Additionen und Subtraktionen mit folgenden Datentypen aus:
(1) binär codierte Dezimaldaten im Zonenformat,
(2) binär codierte Dezimaldaten im gepackten Format und
(3) Daten im reinen Binärformat mit Vorzeichen.
Zu diesem Zweck weist das Rechenwerk einen Modifizierer 20a auf der Eingangsseite der Sammelleitung A sowie eine Modifizier- und Komplementiereinrichtung 20b am Eingang der Sammelleitung B auf. Beide Modifizierer sind den Eingängen eines parallelen Binäraddierers 20c für mehrere Bytes vorgeschaltet, mit dessen Ausgang eine Korrekturschaltung 2Od verbunden ist. Bei der Verarbeitung von Operanden in rein binärer Form sind die Schaltungen 20a, 20b und 2Od unwirksam, lediglich die Komplementiereinrichtung der Schaltung 20b wird wirksam gemacht für die Ausführung von Subtraktionen.
Bei der Verarbeitung von binär codierten Dezimaldaten ist es notwendig, die SechserüberschUsse in jeder Dezimale zu behan-
709841/0670
EN 975 016 27 1 222 A
-yt-
AA
dein. Dies geschieht auf der Eingangsseite B durch den Modifizierer 20b und die Korrekturschaltung 2Od. Der Modifizierer in der Schaltung 20b ist wirksam bei der Ausführung von Additionen zur Erhöhung einer jeden Ziffer um den Wert sechs. Die Korrekturschaltung 2Od ist sowohl bei Additionen als auch bei Subtraktionen wirksam, um den Wert sechs von bestimmten der Resultatziffern zu subtrahieren. Diese Addition und Subtraktion des Wertes sechs ist notwendig, um die Differenz zwischen der Dezimalziffernbasis und der Hexadezimalziffernbasis (16) auszugleichen. Der Modifizierer 20a und der Modifizierer der Schaltung 20b sind beide wirksam, wenn Dezimaldaten im Zonenformat zu verarbeiten sind, um die Zonenfelder in zwei Sätze von Eingangsdaten geeigneter Werte umzuformen, die eine korrekte Übertragsausbreitung innerhalb des Addierers 20c über die Stellen der Zonenfelder sicherstellen. Die Korrekturschaltung 2Od bewirkt, daß in Resultat die Zonenfelder wieder die entsprechenden Zonencodewerte annehmen.
Die Resultatdaten auf der Sammelleitung Z werden in ein 8 Byte langes Bestimmungsregister 21 gebracht von wo sie über eine 8 Byte-Sammelleitung 22 zu nachgeschalteten Einheiten übertragen werden. In bekannten Datenverarbeitungseinrichtungen, beispielsweise in solchen des Typs IBM System/370, ist der Bestimmungsort für die Resultatdaten normalerweise der Hauptspeicher der Datenverarbeitungseinheit. In diesem Zusammenhang ist daraufhinzuweisen , daß das Bestimmungeregister 21 nicht der hierin Datenbestimmungsort oder Datenbestimmungsfeld genannte Speicherplatz ist. Das Register 21 dient lediglich zum vorübergehenden Speichern der Daten, bevor diese zum gewünschten Datenbestimmungsfeld übertragen werden.
Der Binäraddierer 20c weist eine Übertragsausgangsleitung 17 auf, die von seiner höchsten Bitstelle über eine Verriegelungsschaltung 24 zum übertragseingang der niedrigsten Bitstelle führt. Diese Verbindung wird wirksam, wenn der Binäraddierer einen zweiten Durchgang auszuführen hat zur Verarbeitung der
709841/0676
Al
hohen Stellen von Operanden, deren Länge größer ist als die Breite des Rechenwerks 2O. Der Binäraddierer 20c besitzt ferner eine Überlaufleitung 23, auf der ein überlaufsignal erscheint, das als Eingangssignal des Längenüberschreitungsdetektors 14 dient.
Die Eingangssammelleitung 13 des Detektors 14 hat eine Breite von 8 Bytes, über sie werden dem Detektor 14 alle 64 Resultatbits, die auf der Rechenwerk-Ausgangssammelleitung Z erscheinen, parallel zugeführt.
Die Fign. 2 und 3 zeigen zwei Typen von Maschinenbefehlen, die von der Datenverarbeitungseinheit zur Ausführung von Operationen mit Operanden variabler Länge benutzt werden. Die Fig. 2 zeigt einen Befehlstyp mit drei Operanden, wobei der dritte Operand den Zielort angibt. L1 ist das Längenfeld für den ersten Operand; die Codierung der darin enthaltenen Bits bestimmt die Länge des ersten Operanden. In ähnlicher Weise dient L2 als Längenfeld für den zweiten Operanden und LD als Längenfeld zur Angabe der Länge des Datenbestimmungsortes bzw. Zielortes. Die Adressenfelder enthalten die Information, aus der die Speicherstartadressen für die Operanden und den Bestimmungsort ermittelt werden können. In einer byteorientierten Verarbeitungseinheit hat jede Bytestelle im Speicher ihre eigene Adresse. Das Adressenfeld gibt die Adresse des ersten Bytes des Operanden : an, und das Längenfeld spezifiziert die Länge des Operanden in Byteeinheiten bzw, in der Zahl der Bytes. Mit diesen zwei Informationen, nämlich Startadresse und Länge in Bytes, sind die Speicherporitionen der Operanden vollständig definiert.
Die Fig. 3 zeigt einen Befehlstyp mit zwei Operanden, wie er !in Datenverarbeitungsanlagen des Typs IBM/370 für dezimale Operationen benutzt wird. In diesem Falle ist die Startadresse des Bestimmungsortes definiert als die Startadresse des ersten Operanden, und die Länge des Bestimmungsortes ist definiert als die Länge L1 des ersten Operanden. Die Resultate der dezimalen
709841/0676
Operationen werden somit stets im Speicherfeld des ersten Operanden gespeichert. Das Problem,daß Daten verloren gehen dadurch, daß das Resultat die Länge des Bestimmungsortes Überschreitet, kann dennoch auftreten, da die Länge L2 des zweiten Operanden unabhängig angegeben wird und größer sein kann als die Länge L1 des Bestimmungsortes.
Für die Einrichtung von Fig. 1 ist es ohne Bedeutung, ob die zu verarbeitenden Maschinenbefehle solche des Typs von Fig. 2 oder solche des Typs von Fig. 3 sind. In beiden Fällen wird das richtige Längenfeld ausgewählt und sein Inhalt dem Register 11 zugeführt. Im Falle von Fig. 2 wird das Längenfeld LD in das Register 11 gebracht, während im Falle von Fig. 3 das Längenfeld L1 in das Register 11 gebracht wird.
Zum Zwecke der Darstellung wird angenommen, daß jedes Längenfeld in einem Maschinenbefehl vier Bitpositionen umfaßt. Jeder Längenwert kann sich daher Über den Bereich von 1 bis 16 erstrecken. Des weiteren wird angenommen, daß der Längenwert die Zahl der Bytes eines Operanden oder eines BestdLmmungsortes angibt. Die Darstellung benutzt eine Numerierungsordnung, in welcher das Längenbit O das Längenbit der höchsten Signifikanz und das Längenbit 3 das Längenbit der niedrigsten Signifikanz ist. Die Längenbits sind codiert in einem Codesystem mit der Wertigkeit 8-4-2-1, wobei der Längenwert jeweils als um 1 größer definiert ist als der tatsächliche Wert im System ι 8-4-2-1. Beispielsweise stellt der Wert "OOOO" den Längenwert für ein Byte dar.
Die Fig, 4 zeigt die Nomenklatur, wie sie hierin zur Beschreibung der auf der Sammelleitung Z auftretenden Resultatdaten benutzt wird. Das Feld 25 zeigt 8 Byte Gruppen, beginnend mit dem Byte O am linken Ende bis zum Byte 7 auf dem rechten Ende. Jede dieser Bytegruppen wird auch in der Sammelleitung Z durch ι eine Gruppe von Einzelleitungen dargestellt. Die Wertstellenordnung dieser Bytes verläuft in der entgegengesetzten Richtung,
709841/0676
EN 975 016 27 1 222 A
- Wf-
nämlich von rechts nach links. Das Byte 7 ist daher das Byte der niedrigsten Signifikanz und das Byte O das Byte der höchsten Signifikanz. Jede Bytegruppe von Leitungen umfaßt 8 einzelne Bitleitungen. Innerhalb eines jeden Bytes sind die Bits von links nach rechts als Bit O bis Bit 7 numeriert. Auch hier steigt die Stellenordnung in umgekehrter Richtung an. Das Bit ist daher das Bit der niedrigsten Signifikanz und das Bit O das Bit der höchsten Signifikanz.
Die Fig. 4 zeigt auch Beispiele von Daten in verschiedenen Datenformaten, wie sie auf der Sammelleitung Z erscheinen. Das Feld 26 zeigt Dezimaldaten im Zonenformat und das Feld 27 Dezimaldaten im gepackten Format. Jedes Ziffernfeld, jedes Zonenfeld und jedes Vorzeichenfeld hat eine Breite von 4 Bits. Die für die Codierung der Ziffernfelder benutzte Codierung zeigen die ersten 10 Einträge (0 bis 9) in der Tabelle von Fig. 5. Beim IBM System/370 hat der Zonenfeldcode für numerische Daten den Wert "1111" (hexadezimal "F"), Die Vorzeichenfelder benutzen unterschiedliche Codes der Werte "1010" bis "1111" (hexadezimal A bis F) zur Darstellung positiver und negativer Vorzeichen, Der Inhalt von Bytes wird oft der Einfachheit halber in hexadezimaler Darstellung wiedergegeben. Der Bytewert "FF" bezeichnet z.B. ein Byte, in welchem die beiden 4-Bit-Felder beide den Binärwert "1111" haben. ;
Die Felder 28 und 29 in Fig. 4 zeigen Daten im Binärformat mit Vorzeichen. Das Feld 28 zeigt den Fall eines Resultats mit 5 Byte Länge und das Beispiel 29 den Fall eines Resultats mit 3
Byte Länge. In jedem dieser beiden Fälle stellt die höchste Bitposition das Vorzeichenbit S dar. Ein Vorzeichenbitwert von O bezeichnet ein positives Vorzeichen und ein Vorzeichenbitwert von 1 ein negatives Vorzeichen. In hexadezimaler Schreibweise können die Daten des Beispiels 29 bezeichnet werden durch "XAAAAA". Das X gibt an, daß der Wert für die höchste 4-Bit- j Gruppe vom Wert des Vorzeichenbits S abhängt.
709841/0676
EN 975 016 27 1 22 2 A
Für die Darstellung von Flg. 4 wurde angenommen, daß alle Daten rechtsseitig justiert sind.
Das Rechenwerk 20 hat eine Breite von 8 Bytes. Die Operanden können in ihrer Lange von einem Byte bis einschließlich 16 Bytes variieren. Wenn beide Operandenquellen eine Länge von je 8 Bytes oder weniger haben, können diese Operanden in einem Durchgang durch das Rechenwerk 20 verarbeitet werden. Wenn andererseits einer der beiden Quellenoperanden eine Länge größer als 8 Bytes aufweist, ist ein zweiter Durchgang durch die arithmetische Einheit 20 erforderlich, um den höhersteiligen Teil eines solchen Operanden zu verarbeiten. Der Längenüberschreitungsdetektor 14 muß somit auch in der Lage sein, in Betracht zu ziehen, ob das Rechenwerk 20 einen ersten Durchgang oder einen zweiten Durchgang bei der Verarbeitung eines Satzes von Eingangsoperanden ausführt.
In der Fig. 6 ist ein Ausführungsbeispiel des logischen Aufbaus des Längenüberschreitungsdetektors 14 von Fig. 1 dargestellt. Zusätzlich zu den bereits erläuterten Eingängen empfängt der Detektor 14 verschiedene Steuersignale vom Steuerteil der Datenverarbeitungseinheit. Diese Signale bestehen aus einem Steuersignal für das Zonenformat auf einer Leitung 30, einem Steuersignal für Dezimaloperationen auf einer Leitung 31, einem Steuersignal für den ersten Durchgang auf einer Leitung 32 und einem Steuersignal auf einer Leitung 33, das eine Längenprüfung veranlaßt. Das Steuersignal auf Leitung 30 erscheint dann, wenn das Rechenwerk 20 dezimale Daten im Zonenformat verarbeitet. Das Signal auf Leitung 31 erscheint, wenn das Rechenwerk 20 ; dezimale Daten im Zonenformat oder im gepackten Format verarbeitet. Das Signal auf Leitung 31 besitzt den binären Null-Pegel, wenn binäre Daten verarbeitet werden; es ist zu dieser !Zeit also nicht anwesend. Das Signal auf Leitung 32 ist im binä ren 1-Zustand, wenn das Rechenwerk 20 bei der Verarbeitung von Operanden den ersten Durchgang ausführt, und es ist im binären
709841/0676
EN 975 016 27 1 222 A
Null-Zustand, wenn das Rechenwerk 20 den zweiten Durchgang ausführt. Das Signal auf Leitung 33 steuert die übertragung von Einstell- und RUckstellsignalen zur Status-Verriegelungsschaltung 15. Diese übertragung wird beispielsweise unterbunden, wenn das Rechenwerk 20 andere als arithmetische Operationen ausführt.
Die Bitstatussignale auf der EingangsSammelleitung 13 werden zu Bytestatusgeneratorschaltungen 35 geleitet/ die Byte-Statussignale für die verschiedenen Bytes des Ausgangsdatenfeldes des Rechenwerkes 20 erzeugen. Ein Ausführungsbeispiel der Schaltungen 35 ist in Fig. 7 dargestellt. Die dort gezeigte Schaltung weist acht derartiger Bytestatussignalgeneratorschaltungen auf und zwar eine für jedes Byte des Ausgangsdatenfeldes des Rechenwerkes 2O. Die Generatorschaltungen tragen die Bezeichnungen 35a bis 35h, wobei die weiteren Generatorschaltungen 35d bis 35g der Einfachheit halber nicht dargestellt wurden. Lediglich die Generatorschaltung 35a ist im Detail gezeigt, die übrigen Generatorschaltungen dagegen nur in Blockdarstellung.
Wie in Fig. 7 angegeben, erzeugt jeder der Bytestatussignalgeneratoren 35a bis 35h zwei Bytestatussignale. Eines dieser Signale wird als Statussignal FF bezeichnet. Dieses Signal ist im binären Eins-Zustand, wenn alle acht Bits des zugeordenten Bytes den Wert 0 haben. Das zweite Signal wird als Statussignal OO bezeichnet. Dieses Signal ist im binären Eins-Zustand, wenn alle acht Bits des zugeordneten Bytes den Wert 0 haben.
Das Statussignal FF wird von einer UND-Schaltung 35 erzeugt, wenn alle acht Bits des Bytes 0 am Eingang dieser Schaltung den Binärwert eins zeigen. UND-Schaltungen 37, 38 und 39 erzeugen das Statussignal 00, wenn alle acht Bits des Byte 0 im Null-Zustand sind. Die hierzu am Eingang der UND-Schaltungen 37 und 38 notwendige Invertierung der Biteingangssignale besorgen Negierungsschaltungen 40 und 41.
709841/0676
Die Schaltung zur Erzeugung des Statussignals 00 ist in zwei Teile aufgeteilt entsprechend den beiden Vier-Bit-Feldern im Byte, um korrekte Resultate auch dann zu erhalten, wenn das Rechenwerk 20 Dezimaldaten im Zonenformat verarbeitet. In diesem Fall besitzt das Zonenfeld stets den Wert "1111", vorausgesetzt, daß das betreffende Byte innerhalb einer der Operandenlängen liegt. Es ist daher nicht möglich, fUr die Bitpositionen 0 bis 3 den Wert "0000" zu erhalten, wenn Dezimaldaten im Zonenformat verarbeitet werden. Diese Schwierigkeit wird überwunden durch eine ODER-Schaltung 42 und durch Zuführung des Zonenformat-Steuersignals von Leitung 30 zum zweiten Eingang dieser ODER-Schaltung. Der binäre Eins-Zustand auf der Steuerleitung 30 erzwingt das Statussignal auf einer Leitung für das Zonenfeld des Bytes 0, um den binären Eins-Zustand für dieses Statussignal sicherzustellen/ wenn Dezimaldaten im Zonenformat verarbeitet werden. Dieser Signalzustand repräsentiert den Null-Zustand der Zonenfeldbits 0 bis 3.
Eine gleichartige Schaltung wird in jeder der anderen Bytestatusgeneratorschaltungen 35b bis 35h benutzt. Diese Statussignalerzwingungsschaltung bewirkt eine Außerkraftsetzung der Prüfoperation für die Zonenfelder. Ein solches Vorgehen ist korrekt, da die Zonenfelder bei der Verarbeitung von im Zonenformat vorliegenden Dezimaldaten keine signifikanten Daten enthalten.
Wie aus Fig. 6 ersichtlich, werden die verschiedenen Bytestatus signale BS » FF und BS = 00 zu Signalselektoren 44 geleitet, die für die Weiterverarbeitung die Bytestatussignale für denjenigen Teil des Resultatfeldes auswählen, der außerhalb der Länge des Bestimmungsortes liegt. Die Fig. 8 zeigt ein Ausführungsbeispiel für den Aufbau der Signalselektoren 44.
Es sind im wesentlichen zwei Sätze von Signalselektoren vorgesehen und zwar einer für die Statussignale FF und ein weiterer für die Statussignale 00. Der erstgenannte Satz enthält ODER-
709841 /0676
EN 975 016 27 1 2 2 2 Λ
4)
Schaltungen 45, während der andere Satz ODER-Schaltungen 46 umfaßt. Beide Sätze arbeiten parallel, so daß bei Auswahl eines Statussignals FF für ein gegebenes Byte auch das Statussignal OO für dieses Byte ausgewählt wird. Die Auswahloperation wird durch die drei Längenbits niedrigster Signifikanz gesteuert, nämlich durch die Längenbits 1, 2 und 3 aus dem Register 11. Diese Bits werden über eine Decodierschaltung 47 zugeführt, die aus mehreren UND- und ODER-Schaltungen besteht.
Die Auswahloperation wird anhand der Tabelle von Fig. 9 erläutert. Diese Tabelle zeigt alle 16 möglichen Permutationen für die 4 Bestimmungsort-Längenbits sowie den entsprechenden Bestimmungsort-Längenwert in Bytes für jede solche Permutation. Es sei bemerkt, daß das Längenbit höchster Signifikanz, nämlich das Längenbit O, den Binärzustand 0 einnimmt, wenn die Bestimmungsortlänge nicht größer als acht Bytes ist, und den binären Eins-Zustand einnimmt, wenn die Bestimmungsortlänge größer als acht Bytes ist. Dies entspricht der acht Byte-Breite des Rechenwerks 20 und gestattet eine Vereinfachung der Auswahlschaltungen, in denen das Längenbit 0 bei der Auswahloperation nicht in Betracht gezogen werden muß. Es spielt jedoch zu einem späteren Zeitpunkt während der Operation des Detektors 14 eine Rolle.
pie Symbole X in der Spalte "ausgewählte Bytes"(Fig. 9) bezeichnen die Bytes, die außerhalb der Bestimmungsortlänge liegen. Es sind dies die Bytes, deren Bytestatussignale FF und 00 untersucht werden müssen auf die Anwesenheit von signifikanten Daten. Wenn daher z.B. die Bestimmungsortlänge 5 ist wie dies die Beispiele 26 bis 28 von Fig. 4 angeben, sind es die Bytes 0, 1 und 2, die untersucht werden müssen, um sicherzustellen, daß keine signifikanten Daten verloren gehen.
t>ie Ausgangssteuerleitungen der Decodierschaltung 47 (Fig. 8) tragen die Bezugszeichen 50 bis 56. Die Leitung 50 führt zu ODER-Schaltungen 60 und 70 für die Byte O-Statussignale FF und DO.
709841/0676
EN 975 016
Λ)
Die Leitung 51 führt zu ODER-Schaltungen 61 und 71 für das Byte 1. Die gleiche Numerierungsweise wird für den Rest der Decodierer-Ausgangsleitungen 52 bis 56 und die ODER-Schaltungen 61 bis 66 bzw. 71 bis 76 beibehalten. Die Leitung 56 steuert somit die ODER-Schaltungen 66 und 76 für das Byte 6. Es ist zu erwähnen, daß Byte 7 in der Selektorschaltung 44 nicht verarbeitet wird. Dies hat seinen Grund darin, daß die Bestimmungsortlänge stets einen Wert anzeigt, der um ein Byte kleiner ist.
Die Selektorschaltung 44 benutzt eine invertierte Form der Auswahl. Ein binärer Null-Pegel auf einer der Decodierer-Ausgangsleitungen 50 bis 56 macht die dieser Leitung zugeordneten ODER-Schaltungen wirksam, während ein binärer Eins-Pegel diese ODER-Schaltungen unwirksam macht. Wenn beispielsweise die Leitung 50 ein Eins-Signal führt, werden die Ausgänge der ODER-Schaltungen 60 und 70 auf den Eins-Pegel gesetzt und können daher auf die Bytestatussignale FF und OO des Bytes O nicht reagieren. Es wird somit jeweils ein Sperrpotential von den Decodierer-Ausgangsleitungen für diejenigen Bytes erzeugt, die innerhalb der Bestimmungsortlänge liegen, und ein Vorbereitungssignal auf den Decodierer-Ausgangsleitungen für diejenigen Bytes erzeugt, die außerhalb der Bestimmungsortlänge liegen.
Zur Erläuterung der Erzeugung dieser Signale wird das Beispiel der Bestimmungslänge von 5 Bytes betrachtet, in welchem Falle der Längencode "100" auf den Längenbitleitungen 1, 2 und 3 angezeigt wird. Der Decodierer 47 bringt daraufhin die Ausgangsleitungen 53 bis 56 für die Bytes 3 bis 6 auf Sperrpotential (binärer Eins-Pegel) und stellt die Ausgangsleitungen 50 bis 52 für die Bytes 0, 1 und 2 auf Vorbereitungspotential (binärer Null-Pegel). Es werden somit nur die Bytes 0, 1 und 2 auf verlorene Daten geprüft.
Die Ausgänge der ODER-Schaltungen 60 bis 66 und 70 bis 76 sind gemäß Fig. 6 mit den Eingängen von Nicht-Bestimmungsort-Status-Generatorschaltungen 80 verbunden (Fig. 6), die ebenfalls in
709841/0676
EN 975 016 27 I 222 A
λο
Flg. 8 dargestellt sind. Die Ausgangsleitungen der ODER-Schaltungen 60 bis 66 sind mit einer ersten UND-Schaltung 81 verbunden. Ein binärer Eins-Pegel am Ausgang der UND-Schaltung 81 zeigt daher an, daß alle Nicht-Bestimmungsort-Bits (ND), d.h. alle Bits im Ausgangsdatenfeld des Rechenwerkes 20, die außerhalb der Länge des Bestimmungsortes liegen, den Binärwert 1 aufweisen. Das Eins-Ausgangssignal der UND-Schaltung 81 stellt somit das Status-Anzeigesignal für den Eins-Zustand des gesamten Nicht-Bestimmungsort-Teilfeldes im Rechenwerksausgang dar.
Betrachtet man wiederum das Beispiel eines Längenwertes von 5, so sind die Ausgänge der ODER-Schaltungen 63 bis 66 im binären Eins-Zustand (Sperrpotential) bestimmt durch Eins-Ausgangssignale von den Leitungen 53 bis 56 des Decodierers 47. Es sind daher nur die ODER-Schaltungen 60 bis 62 der Bytes O bis 2 in der Lage, den Signalzustand am Ausgang der UND-Schaltung 81 zu beeinflussen. Hieraus ergibt sich, daß nur die Bytes O bis 2 an der Bildung des Nicht-Bestimmungsort-Statussignal auf der Leitung 82 teilnehmen.
Eine zweite UND-Schaltung 83 führt die entsprechende Funktion für die Bytestatus-Signale OO aus. Die Ausgangsleitung 84 der UND-Schaltung 83 nimmt ein binäres Eins-Signal an, wenn alle Resultatbits des Rechenwerkes 20, die außerhalb der vorgegebene)! Länge des Bestimmungsortes liegen, den Binärwert O aufweisen. ' Das Eins-Ausgangssignal der UND-Schaltung 83 stellt somit ein Status-Anzeigesignal für das gesamte Nicht-Bestimmungsort-Teilfeld des Resultatdatenfeldes dar, wobei dieses Signal anzeigt, daß alle Bits in diesem Teilfeld den Wert O haben.
Die Fig. 10 zeigt ein Ausführungsbeispiel für einen Alle-Bytesjstatusgenerator 85 von Fig. 6, der an den Bytestatussignal-Ausgang 00 der Schaltung 35 angeschlossen ist. Der Generator 85 besitzt die Form einer UND-Schaltung, die alle acht Bytestatus- !signale von den Bytestatussignal-Generatorschaltungen 35 emp-
709841/0676
EN 975 016
fängt. Auf der Ausgangsleitung 86 der UND-Schaltung 85 erscheint das Signal Z, das den Binärwert 1 annimmt, wenn alle acht Bytes, (alle 64 Bits) im Resultatdatenfeld des Rechenwerkes 20 den Wert 0 haben.
Der Längenüberschreitungsdetektor 14 von Fig. 6 weist ferner einen Vorzeichenbitselektor 90 für binäre Operanden auf, der mit dem Ausgang des Rechenwerkes 20 über die Sammelleitung 13 verbunden ist und auf die niedrigstelligen Bestimmungsort-Längenbits 1, 2 und 3 anspricht zur Auswahl der binären Vorzeichenbitposition im Resultatfeld des Rechenwerkes und zur Erzeugung einer Polaritätsanzeige dafür, ob die Bestimmungsdaten, sofern diese im Binärformat vorliegen, ein positives oder ein negatives Vorzeichen haben.
Die Fig. 11 zeigt eine Ausfuhrungsform des binären Vorzeichenbitselektors. Wie aus dieser Fig. ersichtlich ist, wird lediglich das Bit der höchsten Signifikanz (Bit 0) eines jeden der acht Bytes im Resultatdatenfeld dem Vorzeichenbitselektor 90 zugeführt. Dies hat seinen Grund darin, daß, wie in Fig. 4 dargestellt, das Vorzeichenbit S jeweils in der Bitposition 0 des pytes der höchsten Bytestelle im Resultatdatenfeld angeordnet ist. Um welches Byte es sich dabei im Einzelfall handelt, wird In Abhängigkeit von den Längenbits 1, 2 und 3 bestimmt.
Pie dem Eingang der Schaltung von Fig. 11 zugeführten Nullpits werden zu je einer UND-Schaltung eines Satzes von UND-Schaltungen 91 geleitet, die eine ODER-Schaltung 92 speisen. Die Längenbits 1,2 und 3 werden einem Decodierer 93 zugeführt, der acht Ausgangsleitungen aufweist, von denen jede zu einer i {der acht UND-Schaltungen 91 führt. Der Decodierer 93 erregt jeweils nur eine seiner Ausgangsleitungen, die dem Bestimmungsort-JLängenwert entspricht, der durch die Codierung der Längenbits . 1,2 und 3 dargestellt wird. Diese Codierung wird im oberen linken Teil der Tabelle von Fig. 9 dargestellt. Wenn daher die
er-
Längenbitcodierung "100" ist, wird die Ausgangsleitung 5 A~- '
709841/0676
EN 975 016 27 1 222 A
-1* Χλ
regt, um aus den UND-Schaltungen diejenige für das Bit 0 des Bytes 3 vorzubereiten. Wie das Beispiel 28 von Fig. 4 zeigt, ist dies für den betreffenden Fall das richtige Resultat.
Wie bereits vorausgehend erwähnt wurde, hat das Vorzeichenbit S den Binärwert O, wenn es sich um ein positives Vorzeichen handelt, und den Wert 1, wenn es sich um ein negatives Vorzeichen handelt. Das Auftreten einer binären Eins auf der Ausgangsleitung 9 4 der ODER-Schaltung 9 2 zeigt somit ein negatives Vorzeichen an. Umgekehrt ist ein binäres Eins-Signal auf der Leitung 95 die Anzeige für ein positives Vorzeichen. Das Signal auf Leitung 9 5 wird von einem Inverter 96 gebildet, der vom Ausgang der ODER-Schaltung 92 gespeist wird.
Wie die Fig. 6 zeigt, enthält der Längenüberschreitungsdetektor 14 eine Datenformatlogik 100, welche die verschiedenen Statussignale zugeführt erhält, die von den Generatorschaltungen 80 erzeugt werden, welche zur Bildung des korrekten Längenüberschreitungssignals (SE) für das jeweils vom Rechenwerk 2O behandelte Datenformat dienen. Ein Ausführungsbeispiel für den Aufbau der Datenformatlogik zeigt die Fig. 12. Die Datenformatlogik 100 umfaßt zwei Hauptteile, nämlich eine Dezimalformat-Längenüberschreitungsschaltung zur Erzeugung des Längenüberschreitungssignals, wenn das Rechenwerk 20 dezimale Operanden Verarbeitet, sowie eine Binärformat-Längenüberschreitungsschaltung zur Erzeugung des Längenüberschreitungssignals, wenn das Rechenwerk 20 binäre Operanden verarbeitet.
Die Dezimalformat-Längenüberschreitungsschaltung umfaßt eine UND-Schaltung 101, die bei einer Verarbeitung von dezimalen Daten im Rechenwerk 20 durch ein Dezimalformat-Steuersignal auf der Leitung 31 vorbereitet wird. Die UND-Schaltung 101 empfängt ,in invertierter Form das eine Null-Anzeige darstellende NichtBestimmungsort-Statussignal (ND = 0), das von den Generatorschaltungen 80 erzeugt worden ist und über eine Leitung 84 und j
709841/0676
eine Inverterschaltung 102 der UND-Schaltung 101 zugeführt wird. Wenn daher dezimale Operanden entweder im Zonenformat oder im gepackten Format verarbeitet werden, nimmt die Ausgangsleitung 1O3 der UND-Schaltung 101 den binären Signalzustand 1 an, sobald derjenige Teil des Rechenwerk-Ausgangsdatenfeldes, der außerhalb der Länge des Bestimmungsortes liegt, nicht lauter Nullen enthält. Eine derartige Nicht-Null-Bedingung zeigt die Anwesenheit von signifikanten Daten in diesem Teilfeld an, so daß das Eins-Signal auf der Leitung 103 das Vorliegen einer LängenUberschreitung meldet.
Eine weitere UND-Schaltung 104 wird ebenfalls während der Ausführung von Dezimaloperationen benutzt. Diese UND-Schaltung wird aktiviert durch das Steuersignal auf Leitung 31 und das invertierte Signal von Leitung 32, das das Vorliegen eines ersten Durchganges anzeigt. Zu diesem Zweck führt die Leitung 32 über eine Inverterschaltung 105, deren Ausgang über eine Leitung 106 mit der UND-Schaltung 104 verbunden ist. Diese Leitung kann somit jeweils nur dann den binären Signalzustand 1 annehmen, wenn das Rechenwerk 20 einen zweiten Durchgang ausführt. Zur Aktivierung der UND-Schaltung 104 ist die Erfüllung einer weiteren Bedingung notwendig, die darin besteht, daß die Bestimmungsortlänge für die zu verarbeitenden Operanden nicht größer als acht Bytes ist. Das diese Bedingung anzeigende Signal wird von einer Inverterschaltung 107 geliefert, die das Längenbit höchster Signifikanz, nämlich das Längenbit 0 empfängt. Zusätzlich zu den bereits erwähnten drei Steuersignalen empfängt die UND-Schaltung 104 eine invertierte Form des eine Null-Anzeige liefernden Alle-Byte-Statussignals Z, das vom Generator 85 erzeugt wird und das über eine Leitung 86 und eine Inverterschaltung 108 der UND-Schaltung 104 zugeführt wird. Wenn somit die Bestinmungsortlänge nicht größer ist als acht Bytes, was der Breite des Rechenwerks 20 entspricht, und das Rechenwerk 20 i einen zweiten Durchlauf ausführt, erzeugt die UND-Schaltung ein binäres Eins-Signal auf ihrer Ausgangsleitung 109, sofern ! das gesamte Rechenwerk-Resultatdatenfeld nicht lauter Nullen
7098 A1 /0676
EN 975 016 27 1 2 2 2 A
enthält.
Das Eins-Signal auf der Leitung 109 stellt eine Längenüberschreitung dar, da bei einer Bestimmungsortlänge, die kleiner ist als die Breite des Rechenwerkes 20, keine signifikanten Daten (von Null abweichende Bits) erscheinen sollten, wenn ein zweiter Durchlauf ausgeführt wird für diesen gleichen Bestimmungsort. Die von der UND-Schaltung 104 ausgeführte Prüffunktion erstreckt sich auf den Status der Bits von Byte 7 während eines zweiten Durchlaufes. Wie vorausgehend in Verbindung mit Fig. 8 erläutert wurde, werden die Bits von Byte 7 von den Selektoren 44 und den Generatorschaltungen 80 nicht beachtet. Die UND-Schaltung 104 zieht sie jedoch in Betracht, sofern dies notwendig ist, wenn nämlich ein zweiter Durchgang vom Rechenwerk 20 auszuführen ist.
Die Binärformat-Uberschreitungsschaltung, die zur Wirkung kommt, wenn das Rechenwerk 20 Operanden im reinen Binärformat verarbeitet, umfaßt zwei UND-Schaltungen 110 und 111. Im binären Betrieb ist das Dezimalformat-Steuersignal auf Leitung 31 im Signalzustand 0. Dieser Signalzustand wird durch eine Inverterschaltung 112 invertiert zu einem Eins-Signal auf einer Leitung 113, die zu je einem Eingang der UND-Schaltungen 110 und 111 führt. Zur gleichen Zeit sperrt ein Null-Signal auf der Leitung 31 die UND-Schaltungen 101 und 104.
Die korrekte Nicht-Bestimmungsort-Status-Bedingung für Daten im Binärformat hängt vom Vorzeichen der Daten ab. Wenn es sich um ein positives Vorzeichen handelt (S = 0), sollten die Nicht-Bestimmungsort-Bits alle 0 sein. Wenn andererseits das Vorzeichen negativ ist (S = 1), sollten alle Nicht-Bestimmungsort-Bits den Wert 1 haben.
Der Fall des positiven Vorzeichens wird durch die UND-Schaltung 110 behandelt, die durch die Anzeige eines positiven Vorzeichens vom Vorzeichenbitselektor auf der Leitung 9 5 vorbereitet
709841/0676
EN 975 016 271222A
-X-
wird, das invertierte Signal einer Null-Anzeige für das Nicht-Bestlmmungsort-Teilfeld zu prüfen. Dieses invertierte Signal wird vom Ausgang der Inverterschaltung 102 erhalten. Wenn daher das Vorzeichen positiv ist und die Nicht-Bestimmungsort-Bits alle Null sind, erzeugt die UND-Schaltung 110 auf ihrer Ausgangsleitung 114 ein Eins-Signal zur Anzeige einer Längenüberschreitung.
Der Fall des negativen Vorzeichens wird von der UND-Schaltung 111 behandelt, die durch Anzeige eines negativen Vorzeichens vom Vorzeichenbitselektor 90 auf einer Leitung 94 vorbereitet wird, den Status der invertierten Eins-Anzeige des Nicht-Bestimmungsort-Signals auf Leitung 82 zu prüfen, wozu das Signal von Leitung 82 über einen Inverter 115 der UND-Schaltung 111 zugeführt wird. Wenn daher das Vorzeichen negativ ist und die Nicht-Bestimmungsort-Bits nicht alle den Wert Null haben, erzeugt die UND-Schaltung 111 ein Eins-Signal auf ihrer Ausgangsleitung 116, das eine Längenüberschreitung anzeigt.
Dem vorliegenden Ausführungsbeispiel wurde die Annahme zugrunde gelegt, daß das Rechenwerk 20 niemals einen zweiten Durchlauf ausführt, wenn Daten im reinen Binärformat zu verarbeiten sind. Hit anderen Worten, es wurde angenommen, daß binäre Daten in keinem Falle die Länge von acht Bytes (64 Bits) überschreiten. Unter Berücksichtigung des Umstandes, das eine Bitstelle für das Vorzeichen benötigt wird, kann auf diese Weise ein Dezimalwert von 2 dargestellt werden, was einer Dezimalzahl von
18 etwas mehr von 9 χ 10 entspricht. Diese Zahlenkapazität ist für die meisten Anwendungen ausreichend. Wenn es trotzdem erwünscht ist, längere binäre Operanden zu verarbeiten, kann die dargestellte Einrichtung leicht abgeändert werden zur Ausführung eines zweiten Durchganges ^
Pie Ausgänge der verschiedenen UND-Schaltungen 1O1, 104, 110 und 111 sind an eine ODER-Schaltung 117 angeschlossen, die an ihrem Ausgang 118 ein LängenUberschreitungssignal (SE) erzeugt,
709841/0676
EN 975 016 ^ ' *
wenn eine der verschiedenen Längenüberschreitungsbedingungen auftritt.
Die Überlaufleitung 23 des Rechenwerks 20 1st direkt mit einem Eingang der ODER-Schaltung 117 verbunden. Auf dieser Leitung erscheint das übliche Additionsüberlaufsignal, das in der dargestellten Einrichtung der Einfachheit halber mit dem Längenüberschreitungssignal kombiniert wird, um ein einzelnes Anzeigesignal für das Vorliegen einer Ausnahmebedingung zu erzeugen, wobei dieses Signal sowohl den Fall eines überlangen Resultats als auch den Fall eines normalen Additionsüberlaufes erfaßt. Das überlaufsignal stellt im Falle von Dezimaloperationen dieselbe Anzeige dar, wie ein Signal auf der Ubertragsausgangsleitung 17. Im Falle von Binäroperationen zeigt das Signal auf Leitung 23 an, daß zwischen dem Eingangsübertrag und dem Ausgangsübertrag des Bits 0 im Byte 0 des Rechenwerks ein Unterschied besteht.
Wie aus Fig. 6 ersichtlich ist, gelangt das von der Datenformatlogik 100 erzeugte Längenüberschreitungssignal zu einer 1. Durchgang/2. Durchgang-Logik 120. Diese Schaltung zieht die verschiedenen Bedingungen bei der Ausführung arithmetischer Operationen in Betracht, die einen zweiten Durchgang des zu verarbeitenden Operandenpaars durch das Rechenwerk erfordern. Die Fig. 13 zeigt den Aufbau dieser Schaltung.
Die Schaltung 120 enthält einen Satz von vier UND-Schaltungen 121, 122, 123 und 124. Die UND-Schaltung 121 betrifft den Fall eines ersten Durchganges, wobei die Bestimmungsortlänge größer ist als die Breite des Rechenwerks, Die UND-Schaltung 122 betrifft den Fall eines ersten Durchganges, wobei die Bestimmungsortlänge gleich oder kleiner ist als die Breite des Rechenwerkes. Die UND-Schaltung 123 behandelt den Fall eines zweiten Durchganges, wobei die Bestimmungsortlänge größer ist als die Breite des Rechenwerkes. Die UND-Schaltung 124 betrifft den Fall eines zweiten Durchganges, wobei die Bestimmungsortlänge
7098 A1/0676
-ΜΑ?
gleich oder kleiner 1st als die Breite des Rechenwerkes. Die Auswahl der geeigneten UND-Schaltung wird durch den Status des Steuersignals "erster Durchgang" auf Leitung 32 sowie durch den Status des höchststelligen Längenbits O auf Leitung 125 bestimmt. Das Signal von der Leitung 32 wird durch einen Inverter 126 invertiert, um auf Leitung 127 ein Signal zu erzeugen, das einen zweiten Durchgang anzeigt, wenn das Signal auf Leitung bei Fehlen eines ersten Durchgangs seinen Null-Zustand einnimmt. In ähnlicher Weise wird das Signal von Leitung 125 durch einen Inverter 128 invertiert, um auf Leitung 129 ein Eins-Signal zu erzeugen, wenn das Signal von Leitung 125 im Null-Zustand ist, oder mit anderen Worten, wenn die Bestimmungsortlänge nicht größer ist als acht Bytes.
Während eines ersten Durchganges bereitet das Eins-Signal auf der Leitung 32 die UND-Schaltungen 121 und 122 vor, und das gleichzeitig vorhandene Null-Signal auf der Leitung 127 sperrt die anderen zwei UND-Schaltungen 123 und 124. Während eines zweiten Durchganges ist die Situation umgekehrt, indem die letzteren UND-Schaltungen 123 und 124 vorbereitet und die beiden erstgenannten UND-Schaltungen 121 und 122 gesperrt sind. Außerdem bereitet ein Eins-Signal auf der Leitung 125 die UND-Schaltungen 121 und 123 vor, und das zur gleichen Zeit vorliegende Null-Signal auf der Leitung 129 sperrt die UND-Schaltungen 122 und 124. Die Situation ist umgekehrt, wenn die Bestimmungsortlänge nicht größer als acht Bytes ist.
pie auf Leitung 118 eingehenden Längenüberschreitungssignale gelangen zu den UND-Schaltungen 122, 123 und 124, jedoch nicht zur UND-Schaltung 121.
Wenn die Bestimmungsortlänge größer ist als acht Bytes und das Rechenwerk 20 einen ersten Durchgang ausführt, wird nur die UND-Schaltung 121 vorbereitet, was unabhängig vom Signalstatus der Leitung 118 geschieht. Hierdurch wird ein Eins-Signal auf
7098 Λ 1/0676
EN 975 016 27 1 222 A
- Vl -
der Leitung 130 erzeugt, das über eine ODER-Schaltung 131 und eine UND-Schaltung 132 zum Rückstelleingang der Status-Verriegelungsschaltung 15 gelangt. Damit wird diese Verriegelungsschaltung in den Zustand gebracht, indem sie das Fehlen einer Ausnahmebedingung anzeigt. Wenn daher die Bestimmungsortlänge größer als acht Bytes ist, wird die Verriegelungsschaltung 15 stets im ersten Durchgang rückgestellt. Dies bedeutet, daß eine Längenüberschreitung, die während eines ersten Durchgangs angezeigt wird, von der Verriegelungsschaltung 15 ignoriert wird. Dies ist korrekt, da es in diesem Falle während des ersten Durchgangs zu früh wäre anzuzeigen, ob Daten verlorengegangen sind.
Wenn die Bestimmungsortlänge gleich oder kleiner als acht Bytes ist, wird während des ersten Durchgangs die UND-Schaltung 122 soweit vorbereitet, daß auf ihrem Ausgang das gleiche Signalpotential wie auf ihrer Eingangsleitung 118 erscheint. Sofern ein Längenüberschreitungssignal vorliegt, befindet sich der Ausgang der UND-Schaltung 122 im Eins-Signalzustand, und dieser Zustand gelangt über eine ODER-Schaltung 134, eine ODER-Schaltung 135 und die UND-Schaltung 136 zum Einstelleingang der Verriegelungsschaltung 15. Damit wird die Verriegelungsschaltung 15 in den Zustand gebracht, in welchem sie das Vorliegen einer Längenüberschreitung durch ein Signal auf Leitung 16 anzeigt. Wenn dagegen die Leitung 118 im Null-Zustand ist, bleibt die UND-Schaltung 122 gesperrt. Das sich ergebende Null-Potential am Ausgang der ODER-Schaltung 134 wird durch einen Inverter 137 invertiert, um über die ODER-Schaltung 131 und die UND-Schaltung 132 ein Signal auf dem Rückstelleingang der Verriegelungsschaltung 15 zu erzeugen.
Ist die Bestimmungsortlänge größer als acht Bytes und wird gleichzeitig ein zweiter Durchgang vom Rechenwerk 20 ausgeführt, so wird die UND-Schaltung 123 soweit vorbereitet, daß sie ebenso funktioniert, wie es zuvor für die UND-Schaltung 122 im Falle des ersten Durchganges erläutert wurde. Mit
709841/0676
anderen Worten, ein Längenüberschreitungssignal auf der Leitung 118 führt zu einer Umschaltung der Verriegelungsschaltung 15 in den Ein-Zustand, und eine Null-Anzeige auf der Leitung 118 führt zu einer Rückstellung der Verriegelungsschaltung 15.
Ist die Bestimmungslänge kleiner oder gleich acht Bytes und führt das Rechenwerk 20 einen zweiten Durchgang aus, dann ist die UND-Schaltung 124 soweit vorbereitet, daß ihr Ausgang den gleichen Signalzustand annimmt, wie ihn die Leitung 118 aufweist. Das Ausgangssignal der UWD-Schaltung 124 auf Leitung 131 ist jedoch nur wirksam zur Einstellung der Verriegelungsschaltung 15 in den Ein-Zustand. Liegt auf der Leitung 118 ein Längenüberschreitungssignal vor, bewirkt der Eins-Signalzustand auf der Leitung 138 über die ODER-Schaltung 135 und die .UND-Schaltung 136 eine derartige Einstellung der Verriegelungsschaltung 15. Im anderen Falle, wenn die Leitung 118 im Null-Zustand bleibt, wenn also keine Längenüberschreitung während des zweiten Durchganges festgestellt wurde, hat das Ausgangssignal der UND-Schaltung 124 keinen Einfluß auf den Schaltzustand der Verriegelungsschaltung 15. Dies ist bedeutsam, da die Rückstellung der Verriegelungsschaltung 15 in diesem Falle die Anzeige einer Längenüberschreitung auslöschen würde, die dort während des ersten Durchganges für den gleichen Satz von Operanden registriert worden ist.
Für die vorausgehende Beschreibung zu Fig. 13 wurde angenommen, daß die UND-Schaltungen 132 und 136 in einem Zustand gehalten werden, indem sie für eine Signalübertragung vorbereitet sind. Dieser Zustand wird durch ein Längenprüfung-Steuersignal auf der Leitung 33 hergestellt, bei dem es sich praktisch um ein Taktsignal handelt, das den geeigneten Zeitpunkt für die Einstellung bzw. Rückstellung der Verriegelungsschaltung 15 bestimmt. Die Zeitlage dieses Signals ist so gewählt, daß die Ausgangssignale der UND-Schaltungen 132 und 136 kurz vor dem Ende eines jeden Maschinensteuerzyklus, während dem das
7 0 9 8 A 1 /0676
EN 975 016
Rechenwerk 20 eine arithmetische Operation ausführt, auftreten. Hierdurch wird verhindert, daß die während dem vorausgegangenen Teil des Maschinenoperationszyklus möglicherweise erzeugten Störsignale daran gehindert werden, Einfluß auf den Schaltzustand der Verriegelungsschaltung 15 zu nehmen. Auf diese Weise wird auch verhindert, daß Störsignale, die während Operationen des Rechenwerks, welche nicht die Ausführung arithmetischer Verknüpfungen zum Gegenstand haben, den Schaltzustand der Verriegelungsschaltung 15 beeinflussen. Durch die Aktivierung der ausgangsseitigen UND-Schaltungen 132 und 136 nahe dem Ende eines jeden eine arithmetische Operation betreffenden Steuerzyklus, werden die von den UND-Schaltungen 122, 123 und 124 erzeugten Ausgangssignale zur Verriegelungsschaltung 15 übertragen. Diese übertragung erfolgt somit im gleichen Maschinenzyklus, während dem das Rechenwerk 20 arithmetische Operationen ausführt, welche diese Anzeigesignale zur Folge hatten.
Für die obige Erläuterung des dargestellten AusfUhrungsbeispiels wurde angenommen, daß der Steuerteil der Verarbeitungseinheit, in welcher das Rechenwerk 20 benutzt wird, geeignete Schaltungen besitzt, um einen zweiten Rechenwerksdurchgang für diejenigen Operanden zu steuern, die einen solchen erfordern. Eine Realisierungsmöglichkeit hierfür besteht darin, daß die Verarbeitungseinheit automatisch zwei Rechenwerksdurchgänge veranlaßt, wenn arithmetische Operationen mit dezimalen Operanden oder mit binären Operanden auszuführen sind. Abweichend hiervon kann die Steuereinrichtung auch so ausgebildet sein, daß sie jeweils von hochstelligen Bits in den Längenfeldern der zwei Quellenoperanden zur Durchführung eines zweiten Durchganges gesteuert wird, wenn jeweils wenigstens einer der Operanden eine Länge aufweist, die größer ist als die Breite des Rechenwerks. Für verschiedene Anwendungen wird die erste Realisierungsmöglichkeit zu einer schnelleren Arbeitsweise führen, da keine Prüfung von Längenfeldbits notwendig ist.
709841 /0676
EN 975 O16
Die oben anhand der Flgn. erläuterten Schaltungen verwenden vorzugsweise UND-Schaltungen, ODER-Schaltungen und Inverter. Dieser Schaltungstyp wurde verwendet, um die Erläuterung der Funktionen des AusfUhrungsbeispiels zu erleichtern. Das Ausführungsbeispiel kann jedoch auch vollständig oder teilweise mit Hilfe anderer logischer Schaltungen zur Ausführung der gleichen Funktionen ausgebildet sein. Beispielsweise können hierfür mit Vorteil NAND-Schaltungen oder NOR-Schaltungen oder äquivalente logische Verknüpfungselemente Verwendung finden.
709841/0676

Claims (11)

  1. EN 975 016
    - 1 -PATENTANSPRÜCHE
    \y Datenverarbeitungsanlage mit einem Rechenwerk zur Verarbeitung mehrstelliger Operanden variabler Länge und mit Speichereinrichtungen zur Aufnahme von Operanden und Resultatwerten sowie mit einer Steuereinheit, die in Übereinstimmung mit Programmbefehlen zu verarbeitende Operanden in den Speichereinrichtungen auswählt und Bestimmungsort-Speicherfelder variabler Länge zur Speicherung des Resultats der Verarbeitung adressiert/ gekennzeichnet durch ein Register (11) zur Aufnahme eines Bestimmungsort-Längenwertes, durch mit dem Ausgang des Rechenwerks (20) verbundene Signifikanz-Anzeigeschaltungen (35) zur Abtastung der Resultatwertstellen und durch vom Register und den Signifikanz-Anzeigeschaltungen gespeiste logische Schaltungen (44, 80, 100) zur Erzeugung eines Längenüberschreitungssignals, wenn ein außerhalb der vom Register angezeigten Länge liegender Teil des Resultatwerts signifikante Daten enthält.
  2. 2. Anlage nach Anspruch 1/dadurch gekennzeichnet, daß das Register (11) zur Aufnahme des Bestimmungsort-Längenwertes mit der Steuereinheit verbunden ist und von dieser, einen vorgegebenen Teil (LD oder L1) eines Programmbefehls (Fig. 2, Fig. 3) zugeführt erhält.
  3. 3. Anlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Signifikanz-Anzeigeschaltungen (35) und die logischen Schaltungen (44, 80, 100) ein Längenüberschreitungssignal im gleichen Maschinenzyklus erzeugen, in dem das Rechenwerk das Resultat bildet, auf welches sich das Längenüberschreitungssignal bezieht.
  4. 4. Anlage nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Operanden und die Resultatwerte aus
    709841/0676 OWGINAL INSPECTED
    Bitgruppen (Bytes) bestehen, daß das Register (11) zur Speicherung eines Zahlenwertes eingerichtet ist, der eine Bytezahl als Längenangabe darstellt, und daß die Signifikanz-Anzeigeschaltungen (35) aus mehreren Teilschaltungen (35a bis 35h) bestehen, von denen jede einem Resultatbyte zugeordnet ist und für dieses ein Signifikanz-Anzeigesignal und/oder ein Nichtsignifikanz-Anzeigesignal erzeugt.
  5. 5. Anlage nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß mit den Ausgängen der Signifikanz-Anzeigeschaltungen (35) Selektorschaltungen (44) verbunden sind, die unter Steuerung des Registers (11) die Signifikanz-Anzeigesignale der innerhalb der angezeigten Länge liegenden Resultatwertstellen unterdrückt.
  6. 6. Anlage nach einem der Ansprüche 1 bis 5, gekennzeichnet durch einen Decodierer (47), der zwischen dem Register (11) und Selektor-Torschaltungen (45, 46) angeordnet ist und der Längenbereichsignale erzeugt, welche die Torschaltungen (45, 46) für den Durchlaß von Signifikanz-Anzeigesignalen und/oder Nichtsignifikanz-Anzeigesignalen der Resultatwertbytes steuern.
  7. 7. Anlage nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß eine Vorzeichen-Selektorschaltung (90) vorgesehen ist, die unter Steuerung edes Registers (11) über einen Decodierer (93) aus den Resultatwertstellen die Vorzeichenstelle auswählt und die Polarität des Vorzeichens bestimmt, und daß die logische Schaltung (44, 80, 100) zur Erzeugung eines Längenüberschreitungssignals Umschalter (110, 111, 115) aufweist, die in Abhängigkeit von der Vorzeichenpolarität die Bedeutung der Signifikanz-Anzeigesignale und der Nichtsignifikanz-Anzeigesignale umkehren.
    709841/0676
    EN 975 016 06.05.77
  8. 8. Arlane nach Anspruch 7, dadurch gekennzeichnet, dal3 die Schaltung (110, 111, 11'3) zur Umkehrung der Bedeutung der Signifikanz-Anzeigesignale und der Nichtsignifikanz-Anzeigesignale über eine zusätzliche Steuerloilung (31) Datenformat-Anzeigesignale zugeführt erh/ilt und durch diese bei der Verarbeitung von Operanden eines vorgegebenen Datenformats unwirksam gehalten wird.
  9. 9. Anlage nach einen der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß die Signif5kanz-Anzeigeschaltungen (35) über erste Torschaltungen (3O den 1-Zustand der Resultatwertstellen abtasten zur Erzeugung von Signifikanz-Anzeigesignalen und über zweite Torschaltungen (37, 3ö) den 0-Zustand bzw. einen wertneutralen Zustand der zugeordneten Resultatwertstellen abtasten zur Erzeugung von Nichtsignifikanz-Resultatanzeigesignalen.
  10. 10. Anlage nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß die Steuerschaltung ein Anzeigesignal liefert, wenn Operanden zu verarbeiten sind, deren Länge größer ist als die Breite des Rechenwerks (20) und die daher mehrere Rechenwerksdurchläufe erfordern, und daß Sperrschaltungen (121 bis 124) vorgesehen sind, die ein Längenüberschreitungssignal erst im letzten Rechenwerksdurchgang passieren lassen.
  11. 11. Anlage nach einem der Ansprüche 1 bis 10, gekennzeichnet durch eine mit der logischen Schaltung (44, 80, 100) verbundene Verriegel-ungsschaltung (15) zur Zwischenspeicherung eines Längenüberschreitungssignals und zu dessen Übertragung zur Steuereinheit.
    p 12 22k'^ 709841/0676
DE2712224A 1976-03-30 1977-03-19 Datenverarbeitungsanlage Expired DE2712224C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/671,857 US4021655A (en) 1976-03-30 1976-03-30 Oversized data detection hardware for data processors which store data at variable length destinations

Publications (2)

Publication Number Publication Date
DE2712224A1 true DE2712224A1 (de) 1977-10-13
DE2712224C2 DE2712224C2 (de) 1983-11-03

Family

ID=24696148

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2712224A Expired DE2712224C2 (de) 1976-03-30 1977-03-19 Datenverarbeitungsanlage

Country Status (7)

Country Link
US (1) US4021655A (de)
JP (1) JPS52119130A (de)
CA (1) CA1069219A (de)
DE (1) DE2712224C2 (de)
FR (1) FR2346769A1 (de)
GB (1) GB1512619A (de)
IT (1) IT1114769B (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4093982A (en) * 1976-05-03 1978-06-06 International Business Machines Corporation Microprocessor system
US4262332A (en) * 1978-12-28 1981-04-14 International Business Machines Corporation Command pair to improve performance and device independence
US4293907A (en) * 1978-12-29 1981-10-06 Bell Telephone Laboratories, Incorporated Data processing apparatus having op-code extension register
US4247891A (en) * 1979-01-02 1981-01-27 Honeywell Information Systems Inc. Leading zero count formation
GB2039104B (en) * 1979-01-02 1983-09-01 Honeywell Inf Systems Data processing system
US4224677A (en) * 1979-01-02 1980-09-23 Honeywell Information Systems Inc. Effective digit count on a resultant operand
JPS55138156A (en) * 1979-04-16 1980-10-28 Hitachi Ltd Information processor
USRE33629E (en) * 1980-02-13 1991-07-02 Intel Corporation Numeric data processor
US4338675A (en) * 1980-02-13 1982-07-06 Intel Corporation Numeric data processor
DE3040931C1 (de) * 1980-10-30 1982-04-29 Siemens AG, 1000 Berlin und 8000 München Verfahren und Anordnung zur Verknuepfung von Operanden variabler Laenge in Datenverarbeitungsanlagen
US4426680A (en) * 1980-12-24 1984-01-17 Honeywell Information Systems Inc. Data processor using read only memories for optimizing main memory access and identifying the starting position of an operand
US4493025A (en) * 1981-05-22 1985-01-08 Data General Corporation Digital data processing system using unique means for comparing operational results and locations at which such results are to be stored
JPS5824941A (ja) * 1981-08-07 1983-02-15 Hitachi Ltd 演算装置
JPS5827241A (ja) * 1981-08-12 1983-02-17 Hitachi Ltd 十進演算装置
US4491908A (en) * 1981-12-01 1985-01-01 Honeywell Information Systems Inc. Microprogrammed control of extended integer and commercial instruction processor instructions through use of a data type field in a central processor unit
JPS58182754A (ja) * 1982-04-19 1983-10-25 Hitachi Ltd 演算処理装置
US4667305A (en) * 1982-06-30 1987-05-19 International Business Machines Corporation Circuits for accessing a variable width data bus with a variable width data field
JPS5979350A (ja) * 1982-10-29 1984-05-08 Toshiba Corp 浮動小数点演算装置
US4811211A (en) * 1986-09-26 1989-03-07 Performance Semiconductor Corporation On-line overflow response system and ALU branching structure
US5341482A (en) * 1987-03-20 1994-08-23 Digital Equipment Corporation Method for synchronization of arithmetic exceptions in central processing units having pipelined execution units simultaneously executing instructions
US4914617A (en) * 1987-06-26 1990-04-03 International Business Machines Corporation High performance parallel binary byte adder
JPS6491228A (en) * 1987-09-30 1989-04-10 Takeshi Sakamura Data processor
US5047975A (en) * 1987-11-16 1991-09-10 Intel Corporation Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
JPH01280832A (ja) * 1988-05-06 1989-11-13 Mitsubishi Electric Corp データ処理装置
JP2504847B2 (ja) * 1989-10-27 1996-06-05 甲府日本電気株式会社 10進デ―タのチェック回路
US5479626A (en) * 1993-07-26 1995-12-26 Rockwell International Corporation Signal processor contexts with elemental and reserved group addressing
US6449610B1 (en) 1999-03-26 2002-09-10 International Business Machines Corporation Memory media and method of processing date data using pseudo zoned decimal format
US7716267B2 (en) * 2004-08-30 2010-05-11 Casio Computer Co., Ltd. Decimal computing apparatus, electronic device connectable decimal computing apparatus, arithmetic operation apparatus, arithmetic operation control apparatus, and program-recorded recording medium
US7624237B2 (en) * 2006-05-03 2009-11-24 International Business Machines Corporation Compare, swap and store facility with no external serialization
EP2181504A4 (de) * 2008-08-15 2010-07-28 Lsi Corp Rom-listen-decodierung von nah-codewörtern
US10067744B2 (en) * 2016-12-08 2018-09-04 International Business Machines Corporation Overflow detection for sign-magnitude adders
WO2021149113A1 (ja) * 2020-01-20 2021-07-29 富士通株式会社 プロセッサ、シミュレータプログラム、アセンブラプログラム、及び情報処理プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3454750A (en) * 1966-05-18 1969-07-08 Burroughs Corp Character oriented data processor with floating decimal point addition
US3539790A (en) * 1967-07-03 1970-11-10 Burroughs Corp Character oriented data processor with floating decimal point multiplication
US3569685A (en) * 1968-07-11 1971-03-09 Fairchild Camera Instr Co Precision controlled arithmetic processing system
US3751650A (en) * 1971-06-28 1973-08-07 Burroughs Corp Variable length arithmetic unit
US3739352A (en) * 1971-06-28 1973-06-12 Burroughs Corp Variable word width processor control
JPS5351316U (de) * 1976-10-01 1978-05-01

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NICHTS-ERMITTELT *

Also Published As

Publication number Publication date
JPS5746574B2 (de) 1982-10-04
FR2346769B1 (de) 1979-03-09
DE2712224C2 (de) 1983-11-03
GB1512619A (en) 1978-06-01
US4021655A (en) 1977-05-03
JPS52119130A (en) 1977-10-06
FR2346769A1 (fr) 1977-10-28
IT1114769B (it) 1986-01-27
CA1069219A (en) 1980-01-01

Similar Documents

Publication Publication Date Title
DE2712224A1 (de) Datenverarbeitungsanlage
DE2714805C2 (de)
DE3424962C2 (de)
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2930441C2 (de) Anzeigeeinrichtung zur wahlweisen dynamischen oder statischen Anzeige
DE1549480A1 (de) Datenverarbeitungsanlage
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE2718110A1 (de) Datenverarbeitungseinheit
DE2626432A1 (de) Arithmetische einheit fuer automatische rechengeraete
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE1197650B (de) Parallel-Addierer
DE2758130C2 (de) Binärer und dezimaler Hochgeschwindigkeitsaddierer
DE3229452A1 (de) Arithmetiklogikeinheit
DE3303269C2 (de)
DE2506671C3 (de) Binärdaten-Handhabungsnetzwerk
DE3440680C2 (de)
DE3340362C2 (de)
DE2941594A1 (de) Gleitkomma-verarbeitungseinheit
DE1549485C3 (de) Anordnung zur Division binärer Operanden ohne Rückstellung des Restes
DE1499286B2 (de) Datenbearbeitungsanlage
DE2952072A1 (de) Einrichtung zur verarbeitung binaer codierter dezimalzahlen
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren
DE1296427B (de) Datenbearbeitungssystem
DE1549449A1 (de) Einrichtung zur Verarbeitung von Gleitkommazahlen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8126 Change of the secondary classification

Ipc: ENTFAELLT

8181 Inventor (new situation)

Free format text: HEALEY, ROBERT ALBERT, ENDICOTT, N.Y., US JEREMIAH, THOMAS LEO, CONKLIN, N.Y., US

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee