DE2712224C2 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- 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
Links
- 238000012545 processing Methods 0.000 title claims description 40
- 238000003860 storage Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000000903 blocking effect Effects 0.000 claims description 4
- 238000009434 installation Methods 0.000 claims 2
- 238000012432 intermediate storage Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 8
- 238000007792 addition Methods 0.000 description 7
- 239000003607 modifier Substances 0.000 description 6
- 238000000034 method Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 241001136792 Alle Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 208000003580 polydactyly Diseases 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
- G06F9/30014—Arithmetic instructions with variable precision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
- G06F9/30038—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding 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-
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.
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)
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.
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)
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)
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 |
-
1976
- 1976-03-30 US US05/671,857 patent/US4021655A/en not_active Expired - Lifetime
-
1977
- 1977-02-01 FR FR7703517A patent/FR2346769A1/fr active Granted
- 1977-02-04 GB GB4598/77A patent/GB1512619A/en not_active Expired
- 1977-02-22 JP JP1783377A patent/JPS52119130A/ja active Granted
- 1977-03-16 CA CA274,092A patent/CA1069219A/en not_active Expired
- 1977-03-19 DE DE2712224A patent/DE2712224C2/de not_active Expired
- 1977-03-23 IT IT21562/77A patent/IT1114769B/it active
Non-Patent Citations (1)
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 |