DE2712224C2 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2712224C2
DE2712224C2 DE2712224A DE2712224A DE2712224C2 DE 2712224 C2 DE2712224 C2 DE 2712224C2 DE 2712224 A DE2712224 A DE 2712224A DE 2712224 A DE2712224 A DE 2712224A DE 2712224 C2 DE2712224 C2 DE 2712224C2
Authority
DE
Germany
Prior art keywords
length
signal
circuit
circuits
operands
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
DE2712224A
Other languages
English (en)
Other versions
DE2712224A1 (de
Inventor
Robert Albert Endicott N.Y. Healey
Thomas Leo Conklin N.Y. 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/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
    • G06F9/30038Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Description

Die Erfindung betrifft eine 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 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 DezimaloperatiQ-nen 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 ersten Opei andenfeldes und des Bestimmungsort-Feldes. Die Feldgröße allein liefert jedoch keine hinreichend genaue Aussage ob tatsächlich bedeutsame Resultatsziffern verloren gehen oder nicht. Beispielsweise 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 für den zweiten Operanden das Subiraküonsreäültat 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 mikroprogrammgesteuerten 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 50 (z. B. Kundendiensthandbuch »System/360 Modell 50 RS, SI. SS-Instructions«. IBM-Form S/ 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 Hauptdatensammelleitungen 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 von 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 Vorgang wird daraufhin mit den nächsten 4 Bytes der Operanden wiederholt, bis der erste Operand ausgeschöpft ist. Am Anfang der Operation werden die Längenwerte des ersten und des zweiten Operandes in *wei getrennte Längenzähler eingestellt. Diese Zähler werden mit jedem Durchgang so 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 d?r Zähler des ersten Operanden anzeigt, daß der erste Operand über seine volle Länge abgearbeitet worden ist. Daraufhin prüft die Verarbeituneseinheit 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 Oberlaufunterbrechung erzeugt Die Ausführung der vorgenannten Prüfoperationen erfordern zahlreiche Mikroinstruktionszykien 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. Dir Unteransprüche geben vorteilhafte Ausgestaltungen ur.d Weiterbildungen der Erfindung an. Nachfolgend ist ein Ausführungsbeispiel der Erfindung anhand von Zeichnungen beschrieben.
Es zeigt
Fig 1 ein vereinfachtes Blockschaltbild einer Datenverarbeitungsanlage, bei der die Erfindung angewandt wird.
F i g. 2 und 3 zwei verschiedene Formate von Maschinenbefehlen, wie sie bei der Datenverarbeitungsanlage von F i g. 1 verwendbar sind,
F i g. 4 eine Darstellung der Datenformate, die bei der Einrichtung von F i g. 1 Verwendung finden,
F i g. 5 eine Tabelle von Zahlendarstellungen,
F i g. 6 ein Blockschaltbild der verschiedenen Funktionseinheiten, aus denen der erfindungsgemäße Teil der Datenverarbeitungsanlage von F i g. 1 besteht.
Fig. 7 ein Blockschaltbild von BytestatucsignH-Generatorschaltungen. wie sie in der Schaltungsanordnung von F i g. 6 verwendet werden,
F1 j. 8 ein Blockschaltbild von Signalselektoren, wie sie in der Schaltungsanordnung von Fig.6 verwendet werden.
F i g. 9 eine Tabelle zur Erläuterung der Wirkungsweise der Signalselektoren von F i g. 8,
Fig. 10 eine Blockdarstellung eines Alle-Bytes-Status-Generators, wie er in F i g. 6 verwendet wird,
F i g. 11 ein Blockschaltbild einer Vorzeichenbit-Selektorschaltung der Anordnung von F i g. 6,
Fig. 12 ein Blockschaltbild einer Anordnung, die in F i g. 6 als Datenformatlogik verwendbar ist, und
Fig. U ein Blockschaltbild der I.Durchgang/ 2. Durchhang-Logik-Einheit von F i g. 6.
In Fig. 1 ist eine Längenüberschreitungsanzeigeschaltung 10 dargestellt, die Teil einet digitalen Datenverarbeitungsanlage ist, welche variabel lange Operanden in Bestimmungsspeicherfeldern variabler Länge speichert und in welcher die Länge der Bestimmungsspeichcrfelder kurzer sein kann als die Länge der zu speichernden Operanden, Die Schaltung 10 umfaßt ein Bestimmungslänge-Register It. 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-Stauis-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 Datensammeliei-Hing 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 Vcrricgclungsschaltung 15 verbunden und liefert an diese Einstellsignale und Kü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überschreiuingssignai erscheint. Das Signal auf Lciiung t6 kann in für sich bekannter Weise eine Programmunterbrechung veranlassen, es sei denn die Verarbeitungseinheit, in welcher die Schaltung von F i g. 1 verwendet wird, ist so vorprogrammiert. daLJ eine derartige Anzeige ignoriert wird, beispielsweise durch Setzen entsprechender Maskunbiis im Programmstatuswort-Register bei Datenverarbcitungseinheitcn des Typs IBM System/370. Wenn das Maskenbit im Ein-Zustand steht, wird das Längenübersehreitungssignal angenommen und eine Programmunterbrechung veranlaßt, die darin besteht, daß die Verarbeiiungseinheit das laufende Programm )o nicht weiter verarbeitet, sondern stattdessen zu einer geeigneten Unterbrechungsbehandlungsroutine verzweigt.
In F i g. I 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 iir!iiu*cri;;v-" sei angenommen, diiß die Recheneinheit 20 eine Breite von 8 Bytes (64 Bits) aufweist. Sie ist daher in der Lage. 8 Datenbytes über eine erste Eingangssammellci'.ung A und 8 Datenbytes über eine zweite -»ο Eingangssammclleitung 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 Zzu 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 so und
(3) Daten 'in 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 2Oi) 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, 206 und 20d unwirksam. lediglich die Komplementier?inrichtung der Schaltung 20b wird wirksam gemacht für die Ausführung von Subtraktionen. fi5
Bei der Verarbeitung von binär codierten Dezimaldaten ist es notwendig, die Sechserüberschüsse in jeder Dezimalrate zu behandeln. Dies geschieht auf der Eingangsseite B durch den Modifi/ierer 20b und die Korrekturschaltung 2Or7. Der Modifizierer in der Schaltung 206 ist wirksam bei der Ausführung von Additionen zur Erhöhung einer jeden Ziffer um den Wert sechs. Die Korrekturschaltung 20d 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 20,i und der Modifizierer der Schaltung 206 sind beide wirksam, wenn Dezimaldaten im Zonenformat /u verarbeitet, 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 20dbewirkt, daß im Resultat die Zonenfel-
UCt WICUCI Uli «_t
Die Resultatdaten auf der Sammelleitung / werden in ein 8 Byte langes Bestimmungsregister 21 gebracht von wo sie über eine 8-Byte-Samnielleiiung 22 zu nachgeschalteten Einheiten übertragen werden. In bekannten Datenverarbeitungseinrichtungen, beispielsweise in solchen des Typs IBM System/370, ist der Bestimmungsort für die Kesultatdaten normalerweise der Hauptspeicher der Dar-,*t.Verarbeitungseinheit. In diesem Zusammenhang ist darauf hinzuweisen, daß das Bestimmungsregister 21 nicht der hier in Datenbestimmungsort oder Datcnbestimmungsfeld 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 Übenragseingang der niedrigsten Bitstelle führt. Diese Verbindung wird wirksam, wenn der Binäraddierer einen zweiten Durchgang auszuführen hat zur Verarbeitung der hohen Stellen von Operanden, deren Länge größer ist als die Breite des Rechenwerks 20. Der Binäraddierer 20.· 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 Zerscheinen. parallel zugeführt.
Die F i g. 2 und 3 zeigen zwei Typen von Maschinenbefehlen, die von der Datenverarbeitungseinheii zur Ausführung von Operationen mit Operanden variabler Länge benutzt werden. Die F i g. 2 zeigt einen Befehlstyp mit drei Operanden, wobei der dritte Operand den Zielort angibt. L 1 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 L 2 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 Stariadresse und Länge in Bytes, sind die .Speicherpositionen 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 F-'alle ist die Startadresse des Bestimmungsortes definiei ι als die .Startadresse des ersten Operanden, und die Länge des Bestimmungsortes ist definiert als die Länge L 1 des ersten Operanden. Die Resultate der dezimalen Operationen w ertlen somit stets im Speicherfeld des ersten Operanden gespeichert. Das Problem, daß Daten verloren gehen dadurch, daß das Resultat die Länge dos Bestimmungsortes überschreitet, kann dennoch auftreten, da die Länge LX des zweiten Operanden unabhängig angegeben wird und größer sein kann als die Länge L 1 des Bestimmungsortes.
Für die Einrichtung von F i g. 1 ist es ohne Bedeutung, ob die zu verarbeitenden Maschinenbefehle solche des Typs von [·' i g. 2 oder solche des Typs von F i g. 3 sind. In beiden Fällen wird das richtige Längenfeld ausgewählt und sein Inhalt dem Register 11 zugeführt. Im Falle von F i g. 2 wird das Längenfeld LD in das Register 11 gebracht, während im Falle von Fig. 3 das Längenfeld L 1 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ängenwen 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 Bestimmungsortes angibt. Die Darstellung benutzt eine Numerierungsordnung, in welcher das Längenbit 0 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-i, wobei der Längen wert jeweils als um 1 größer definiert ist als der tatsächliche Wert im System 8-4-2-1. Beispielsweise stellt der Wert »0000« den Längenwert für ein Byte dar.
Die F i g. 4 zeigt die Nomenklatur, wie sie hierin zur Beschreibung der auf der Sammelleitung Zauftretenden Resultatdaten benutzt wird. Das Feld 25 zeigt 8 Byte Gruppen, beginnend mit dem Byte 0 am linken Ende bis zum 3yte 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, nämlich von rechts nach links. Das Byte 7 ist daher das Byte der niedrigsten Signifikanz und das Byte 0 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 0 bis Bit 7 numeriert. Auch hier steigt die Stellenordnung in umgekehrter Richtung an. Das Bit 7 ist daher das Bit der niedrigsten Signifikanz und das Bit 0 das Bit der höchsten Signifikanz.
Die Fig.4 zeigt auch Beispiele von Daten in verschiedenen Datenformaten, wie sie auf der Sammelleitung Zerscheinen. 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
»λ'«). Die Vorzeichenfelder benutzen unterschiedliche Codes der Werte »1010« bis »I 111« (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ärlormat mit '. orzeichen. Das Feld 28 zeigt den Fall eines Resultats mit 5 Byte Länge und das Beispiel 29 den Fall eines Resultats mit i Byte Länge. In jedem dieser beiden Fälle stellt die höchste Bitposition das Vorzeichenbit S dar. Ein Vorzeichenbitwert von 0 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-Gruppe vom Wert des Vorzeichenbits i'abhängt.
Für die Darstellung von Fig. 4 wurde angenommen, daß alle Daten rechtsseitig justiert sind.
Das Rechenwerk 20 hat eine Breite von 8 Bytes. Die Operanden können in ihrer Länge 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 Qucllenoperanden eine Länge größer als 8 Bytes aufweist, ist ein zweiter Durchgang durch die arithmetische Einheit 20 erforderlich, um den höherstelligen 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.
ii'l uC't Γ i ξ. G iSt ein AuSiünriingsbciSpiei dcS
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 Zonentormat 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 \ erarbeitet. 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 Null-Zustand, wenn das Rechenwerk 20 den zweiten Durchgang ausführt. Das Signal auf Leitung 33 steuert die Übertragung von Einstell- und Rückstellsignalen zur Status-Verriegelungsschaltung 15. Diese Übertragung wird beispielsweise unterbunden, wenn das Rechenwerk 20 andere als arithmetische Operationen ausführt
Die Bitstatussigriaie auf der Eingangssamrneileitung 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 F i g. 7 dargestellt. Die dort gezeigte Schaltung weist derartiger Bytestatussignalgeneratorschaltungen auf und zwar eine für jedes Byte des Ausgangsdatenfeldes des Rechenwerkes 20. Die Generatorschaltungen tragen die Bezeichnungen 35a bis 35Λ, wobei die weiteren Generatorschaltungen 35d bis 35g der Einfachheit halhsr 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 35Λ zwei Bytestatussignale. Eines dieser Signale wird als Statussignal FF bezeichnet. Dieses Signal ist im binären Eins-Zustand, wenn alle acht Bits des zugeordneten Bytes den Wert 0 haben. Das zweite Signal wird als Statussignal 00 bezeichnet. Dieses Signal ist im binären Eins-Zustand, wenn aiie acht Bits des zugeordneten Bytes den Weri 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.
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, für die Bitposiiicricn 0 bis 3 den Wert «0000« zu erhalten, vver.ii 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 43 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 356 bis 25Λ 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 F i g. 6 ersichtlich, werden die verschiedenen Bytestatussignale BS= FFund AS=OO 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 F i g. 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 Statussigr.aie FF und ein weiterer für die Statussignale 00. Der erstgenannte Satz enthält ODER-Schaltungen 45, während der andere Satz ODER-Schaltungen 46 umfaßt. Beide Sptze arbeiten parallel, so daß bei Auswahl eines Statussignals FF für ein gegebenes Byte auch das Statussignal 00 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-ODER-Schaltungen besteht.
Die Auswahloperation wird anhand der Tabelle von F i g. 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 0, den Binärzustand 0 einnimmt, wenn die Bestimmungswortlänge nicht größer als acht Bytes ist, und den binären Eins-Zus'and einnimmt, wenn die Besiiiiuiiungsorüänge größer a!s acht Bytes is;. Dies entspricht der acht Byte-Breite des Rechenwerks 20 und gestattet eine Vereinfachung der Auswahlschaltungen, in den das Längsbit 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.
Die 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 FFund 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 F i g. 4 angeben, sind es die Bytes 0, 1 und 2, die untersucht werden müssen, um sicherzustellen, daß keine signifikanten Daten verloren gehen.
Die Ausgangssteuerleitungen der Decodierschaltung 47 (Fig.S) tragen die BezugS7eirhen SO his 56. Die Leitung 50 führt zu ODER-Schaltungen 60 und 70 für die ByteO-Statussignale FFund 00.
Die Leitung 51 führt zu ODER-Schaltungen 61 und 71 für das Byte 1. Die gleiche Nurnerierungsweis : 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 Weg 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 00 des Bytes 0 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 Bestimmungsortkinge 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 I, 2 und 3 angezeigt wird. Der Decodierer <*7 bringt daraufhin die Ausgangsleitungen »3 bis 56 für aie 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äß F i g. 6 mit den Eingängen von
Nicht-Bestimmungsort-Status-Generatorschaltungen 80 verbunden (Fig. 6), die ebenfalls in F i g. 8 dargestellt sind. Die Ausgangsleitungen der ODER-Schaltungen 60 bis 66 sind mit einer ersten UND-Schaltung 81 verbunden, tin 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-^usgangssignal der UND-Schaltung 81 stellt somit df 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 0 bis 2 in der Lage, den Signalzustand am Ausgang der UND-Schaltung 81 zu beeinflussen. Hieraus ergibt sich, daß nur die Bytes 0 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 00 aus. Die Ausgangsleitung 84 der UND-Schaltung 83 nimmt ein binäres Eins-Signal an. wenn alle Resultatbits des Rechenwerks 20, die außerhalb der vorgegebenen Länge des Bestimmungsortes liegen, den Binärwert 0 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 0 haben.
Die Fig. 10 zeigt ein Ausführungsbeispiel für einen Alle-Bytes-Statusgenerator 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 Bytestatussignale von den Bytestatussignal-Generatorschaltungen 35 empfä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 F i g. 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 F i g. 11 zeigt eine Ausführungsform des binären Vurzeichenbitseiektors. Wie aus dieser Hg. 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 F i g. 4 dargestellt, das Vorzeichenbh 5 jeweils in der Bitposition 0 des Bytes der höchsten Bytestclle im Resultatdatenfeld angeordnet ist. Um welches Byte es sich dabei im Einzelfall
■> handelt, wird in Abhängigkeit von den LängL.ntits I, 2 und 3 bestimmt.
Die dem Eingang der Schaltung von F i g. 11 zugeführten Null-Bits 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 der aehl UND-Schaltungen 91 führt. Der Decodierer 93 erregt jeweils nur eine seiner Ausgangsleitungen, die
Ii dem Bestimmungsort-Lä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 F i g. 9 dargestellt. Wenn daher die Längenbitcodierung »100« ist. wird die Ausgangsleitung 5 erregt, um
-1' aus den UND-Schaltungen diejenige für das Bit 0 des Bytes 3 vorzubereiten. Wie das Beispiel 28 von F i g. 4 zeigt, ist dies für den betreffenden Fall das richtige Resultat.
Wie bereits vorausgehend erwähnt wurde, hat das
2^ Vorzeichenbit 5 den Binärwert 0, 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 94 der ODER-Schaltung 92 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 95 wird von einem Inverter % gebildet, der vom Ausgang der ODER-Schaltung 92 gespeist wird.
Ii Wie die F i g. 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überschreitungssi-
•w gnals (SE) für das jeweils vom Rechenwerk 20 behandelte Datenformat dienen. Ein Ausführungsbeispiel für den Aufbau der Datenformatlogik zeigt die Fig. 12. Die Datenformatlogik 100 umfaßt zwei HaupUeile. nämlich eine Dezimalformat-Längenüber-
•»5 schreitungsschaltung 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
so 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 Nicht-Bestimmungsort-Statussignal (ND=O), das von den Generatorschaltungen 80 erzeugt worden ist und über eine Leitung 84 und 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 103 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ängenüberschreitung meldet.
Eine weitere UND-Schaltung 104 wird ebenfalls während der Ausführung von Dezimaloperationen benutzt Diese UN D-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 83 erzeugt wird und das über eine Leitung 86 und eine Inverterschaltung 108 der UND-Schaltung 104 zugeführt wird. Wenn somit die Bestimmungsortlänge nicht größer ist als acht Bytes, w is der Breite des Rechenwerks 20 entspricht, und das Rechenwerk 20 einen zv<eiten Durchlauf ausführt, erzeugt die UND-Schaltung 104 ein binäres Eins-Signal auf ihrer Ausgangsleitung 109. sofern das gesamte Rechenwerk-Resultatdatenfeld nicht lauter Nullen enthält
Das Eins-Signal auf der Leitung 109 stellt eine Längenüberschreitung dar. da bei einer Bestimmung*· ortlä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üffunk- «o tion erstreckt sich auf den Status der Bits von Byte 7 während eines zweiten Durchlaufes. Wie vorausgehend in Verbindung mit F i g. 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-Überschreitungsschaltung, die zur Wirkung kommt, wenn das Rechenwerk 20 Operanden im reinen Binärformat verarbeitet, umfaßt zwei UND-Schaltungen 110 und Ul. 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 MO und 111 führt. Zur gleichen Zeit sperrt ein Null-Signal auf der Leitung 31 die UND-Schaltungen 101 und 104.
Die korrekte Nicht-Besiimmungsort-Slälüs-Bedingung für Daten im Binärformat hängt vom Vorzeichen der Daten ab. Wenn es sich um ein positives Vorzeichen handelt (S=O), 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 HO behandelt, die durch die Anzeige eines positiven Vorzeichens vom Vorzeichenbitselektor auf der Leitung 95 vorbereitet wird, das invertierte Signal einer Null-Anzeige für das Nicht-Bestimmungsort-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 HO 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. Mit anderen Worten, es wurde angenommen, daß binäre Daten in keinem Falle die Länge von acht Bytes (64 Bits) überschreiten. U^ter 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 etwas mehr von 9xlO18 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.
Die Ausgänge der verschiedenen UND-Schaltungen 101,104,110 und Hl sind an eine ODER-Schaltung 117 angeschlossen, die an ihrem Ausgang 118 ein Längenüberschreitungssignal (SE) erzeugt, wenn eine der verschiedenenen Längenüberschreitungsbedingungen auftritt.
Die Überlaufleitung 23 des Rechenwerks 20 ist 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 Übertragsausgangsleitung 17. Im Falle von Binäroperationen zeigt das Spiel 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 F i g. 6 ersichtlich ist. gelangt das von der Datenformatlogik 100 erzeugte Längenüberschreitungssignal zu einer 5. 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 Rechenwerks. 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 gleich oder kleiner ist 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 0 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 32 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 letz'.eien 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. *o
Die 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 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 Bestimmungsortlange größer als acht Bytes ist. wird die Venegelungsschaltung 15 stets im ersten Durchgang rückgestellt. Dies bedeutet, daß eine Längenüberschreitung, die während eines ersten Durchgangs angczeig' wird, von der Verriegelungsschaltung 15 ignoriert wird. Dies ist korrekt, da es in diesem Falle während des ersten Durchgangs zu früh 6ö 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 Ober eine ODER-Schaltung 134, eine ODER-Schaltung 135 und die UND-Schaltung 136 zum Einstelleingang der Verriegelungsschallung 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 funktion^ rt wie es zuvor für die UND-Schaltung 122 im Falle des ersten Durchganges erläutert wurde. Mit 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 UND-Schaltung 124 auf Leitung 131 ist jedoch nur wirksam zur Einstellung der Verriegelungsschaltung 15 in den Ein-Zustand. Liegt auf der Leitung 118 ein Langenü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 F i g. 13 wurde angenommen, daß die UND-Schaltungen 132 und 136 in einem Zustand gehalten weruen, 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 so gewählt, daß die Ausgangssignale der UND-Schaltungen 132 und 136 kurz vor dem Ende eines jeden Maschinensteuerzyklus, während dem das 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 Verriegelungsschaitung 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.
FQr die obige Erläuterung des dargestellten Ausführungsbeispiels 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ängenfeldem 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.
Die oben anhand der Figuren erläuterten Schaltungen verwenden vorzugsweise UND-Schaltungen, ODER-Schaltungen und Inverter. Dieser Schaltungstyp wurde verwendet, um die Erläuterung der Funktionen des Ausführungsbeispiels 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 NAN D-Schaltungen oder
NOR-Schaltungen oder äquivalente logische Verknüpiungseiemente Verwendung finden.
Hierzu 6 Blatt Zeichnungen

Claims (11)

Patentansprüche:
1. 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 Obereinstimmung 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-Anzeigeschaltuneen gespeiste logische Schaltungen (44, 80, 100) ^i«r Erzeugung eines Längenüberschreitungssignals, wenn ein außerhalb der vom Register angezeigten Länge liegender Teil des Resultatwerts signifikante Daten enthält.
2. Anlage nach Anspruch !,dadurch gekennzeichnet, daß das Register (11) zur Aufnahme des'25 Bestimmungsort-Längenwert-s mit der Steuereinheit verbunden ist und von dieser einen vorgegebenen Teil (LD oder Li) eines Programmbefehls (F i g. 2, F i g. 3) zugeführt erhält
3. Anlage nach Anspruch 1 oder 2, dadurch gekennzeichi.et, daß die Signifikanz-Anzeigeschaltungen (35) und die bgischc " Schaltungen (44, 80, 100) ein Längenüberschreitungssignal im gleichen Maschinenzyklus erzeugen, in i m das Rechenwerk das Resultat bildet, auf welches sich das Längenüberschreitungssignal bezieht.
4. Anlage nach einem der Ansprüche 1 bis 3. dadurch gekennzeichnet, daß die Operanden und die Resuftatwerte aus Bitgruppen (Bytes) bestehen, daß das Regisier (11) zur Speicherung eines Zahlenwertes eingerichtet ist. der eine Bytezahl als Längenangabe darstellt, und daß die Signifikanz-Anzeige schaltungen (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 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. 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'Anzeigesigna= len und/oder Nichtsignifikanz-Anzeigesignalen der Resultatwertbytes steuern.
7. Anlage nach einem der Ansprüche 1 bis 6. dadurch gekennzeichnet, daß eine Vorzeichen-Selcktorschaltiing (90) vorgesehen ist. die unter Steuerung des 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.
8. Anlage nach Anspruch 7, dadurch gekennzeichnet, daß die Schaltung (110, 111, 115) zur Umkehrung der Bedeutung der Signifikanz-Anzeigesignale und der Nichtsignifikanz-Anzeigesignale über eine zusätzliche Steuerleitung (31) Datenformat-Anzeigesignale zugeführt erhält und durch diese bei der Verarbeitung von Operanden eines vorgegebenen Datenformats unwirksam gehalten wird.
9. Anlage nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß die Signifikanz-Anzeigeschaltungen (35) über erste Torschalturtgen (36) den 1-Zustand der Resultatwertstellen abtasten zur Erzeugung von Signifikanz-Anzeigesignalen und über zweite Torsehailungen (37, 38) den G-Zustand bzw. einen wertneutralen Zustand der zugeordneten Resultatwertstellen abtasten zur Erzeugung von Nichtsignifikanz-Resultatanzeigesignalen.
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 Rechenwerksrijjrchläufe erfordern, und daß Sperrschaltungen (121 bis 124) vorgesehen sind, die ein Längenüberschreitungssignal erst im letzten Rechenwerksdurchgang passieren lassen.
11. Anlage nach einem der Ansprüche 1 bis 10, gekennzeichnet durch eine mit der logischen Schaltung (44, 80, 100) verbundene Verriegelungsschaltung (15) zur Zwischenspeicherung eines Längenüberschreitungssignab und zu dessen Übertragung zur Steuereinheit.
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 DE2712224A1 (de) 1977-10-13
DE2712224C2 true 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
US4224677A (en) * 1979-01-02 1980-09-23 Honeywell Information Systems Inc. Effective digit count on a resultant operand
GB2039104B (en) * 1979-01-02 1983-09-01 Honeywell Inf Systems Data processing system
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
JP7315872B2 (ja) * 2020-01-20 2023-07-27 富士通株式会社 プロセッサ、シミュレータプログラム、アセンブラプログラム、及び情報処理プログラム

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
US4021655A (en) 1977-05-03
FR2346769B1 (de) 1979-03-09
IT1114769B (it) 1986-01-27
JPS52119130A (en) 1977-10-06
DE2712224A1 (de) 1977-10-13
CA1069219A (en) 1980-01-01
FR2346769A1 (fr) 1977-10-28
GB1512619A (en) 1978-06-01
JPS5746574B2 (de) 1982-10-04

Similar Documents

Publication Publication Date Title
DE2712224C2 (de) Datenverarbeitungsanlage
DE69900980T2 (de) Verfahren und vorrichtung zur ausführung von verschiebungsoperationen mit gepackten daten
DE2714805C2 (de)
DE69613071T2 (de) Prozessor und Kontrollverfahren zur Ausführung richtiger Saturationsoperation
DE3424962C2 (de)
DE2935906C2 (de) Mikroprozessor
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE1236834B (de) Rechengeraet
DE1549480A1 (de) Datenverarbeitungsanlage
DE3229452C2 (de) Anordnung zur Durchführung von arithmetischen und logischen Operationen
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2421130C2 (de)
DE2626432A1 (de) Arithmetische einheit fuer automatische rechengeraete
DE3043100C2 (de)
DE3043653A1 (de) Datenverarbeitungsanlage
DE3688806T2 (de) Instruktionsprozessor.
DE3303269C2 (de)
DE3314035C2 (de)
DE3440680C2 (de)
DE2506671B2 (de) Binärdaten-Handhabungsnetzwerk
DE2245284A1 (de) Datenverarbeitungsanlage
DE2745204A1 (de) Mikroprogramm-leitwerk fuer eine datenverarbeitungsanlage
DE2952072A1 (de) Einrichtung zur verarbeitung binaer codierter dezimalzahlen

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