DE3226214A1 - Arithmetisches betriebssystem - Google Patents

Arithmetisches betriebssystem

Info

Publication number
DE3226214A1
DE3226214A1 DE19823226214 DE3226214A DE3226214A1 DE 3226214 A1 DE3226214 A1 DE 3226214A1 DE 19823226214 DE19823226214 DE 19823226214 DE 3226214 A DE3226214 A DE 3226214A DE 3226214 A1 DE3226214 A1 DE 3226214A1
Authority
DE
Germany
Prior art keywords
main memory
operand
processing
operating system
byte
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19823226214
Other languages
English (en)
Other versions
DE3226214C2 (de
Inventor
Hideo Hadano Sawada
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3226214A1 publication Critical patent/DE3226214A1/de
Application granted granted Critical
Publication of DE3226214C2 publication Critical patent/DE3226214C2/de
Granted 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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • 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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching

Description

32262U
HITACHI, LTD.
5-1, Marunouchi 1-chome, Chiyoda-ku,
Tokyo, Japan
Arithmetisches Betriebssystem
Die Erfindung betrifft ein Verfahren für ein arithmetisches Betriebssystem und eine Verarbeitungseinrichtung, die einen Befehl, der mindestens einen eine arithmetische Operation betreffenden Operanden, der in einem Hauptspeicher gespeichert ist, aufweist, schnell abarbeitet.
In einer herkömmlichen Datenverarbeitungseinheit wird zur Ausführung eines Befehls zur Verarbeitung von in einem Hauptspeicher stehenden Operanden (weiterhin Speicher-Speicher-Befehl (SS) genannt) ein Teil eines ersten Operanden und ein Teil eines zweiten Operanden aus dem Hauptspeicher geholt, die Daten in einer Datenbreite auf die die Datenverarbeitungseinheit gleichzeitig zugreifen kann verarbeitet, ein Ergebnis in dieser Datenbreite in ein erstes Operandenfeld im Hauptspeicher eingeschrieben, eine Zugriffsadresse dann überschrieben, um einen zusätzlichen
32262U
Teil des ersten Operanden zu holen und die obigen Operationen solange wiederholt, bis eine gegebene Datenlänge verarbeitet
Entsprechend wird das Holen der nachfolgenden Operanden bis das Einschreiben des Ergebnisses beendet ist, verzögert und die Datenverarbeitung wird unterbrochen, da die -zu verarbeitenden Daten fehlen. Daraus ergibt sich, daß die Ausführung des SS-Befehls lange Zeit braucht.
Es ist deshalb Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung für ein arithmetisches Betriebssystem so zu ermöglichen, daß die Ausführungszeit für den Befehl verkürzt wird.
Zur Lösung der gestellten Aufgabe wird gemäß der vorliegenden Erfindung ein für eine nachfolgende arithmetische Verarbeitung benötigter Operand vor dem Einschreiben eines Verarbeitungszwischenergebnisses geholt 5 so daß das Einschreiben des Verarbeitungszwischenergebnisses und die nachfolgenden arithmetischen Operationen zeitlich überlappen, wodurch die Ausführungszeit des Befehls verringert wird.
Die Erfindung wird im folgenden anhand der Zeichnung näher beschrieben. Es zeigen:
iig. 1 ein Format eines SS-Befehls,
Fig. 2 ein Blockschaltbild einer Datenverarbeitungseinheit gemäß der Erfindung,
Fig. 3 Einzelheiten peripherer Schaltkreise eines in Fig. 2 dargestellten Datenleseregisters und eines ersten Operandenregisters,
322B2U
Pig. 4- eine Verarbeitungszeittabelle einer herkömmlichen Verarbeitungseinheit, und
Pig. 5 eine Verarbeitungszeittabelle gemäß der vorliegenden Erfindung.
Fig. Λ zeigt ein typisches Beispiel des Formats eines Speicher-Speicher-Befe'hls. Ein Operandenfeld ist 8 Bit breit und enthält einen Befehlscode, der eine mit Operanden durchgeführte Verarbeitung kennzeichnet. Ein L-PeId ist 8 Bit breit und bezeichnet eine Länge von zu verarbeitenden Operanden und enthält eine Binärzahl, die gleich der Operandenlänge minus eins ist. Demgemäß können Λ bis 256 Byte (ein Byte besteht aus 8 Bits) Operanden vom L-FeId gekennzeichnet werden. Ein ADEI-FeId und ein ADR2-Feld sind jeweils 16 Bit breit und kennzeichnen Startadressen Jeweils eines ersten und eines zweiten Operanden. Demgemäß befinden sich die zur arithmetischen Verarbeitung gehörenden Operanden jeweils in ADR1~ADR1+L und ADR2-ADR2+L und die Operanden werden bei anwachsenden Adressen verarbeitet. Ein Verarbeitungsergebnis wird in ein erstes Operandenfeld eingeschrieben.
Anhand der Fig. 2 bis 5 wird nun eine Ausführung der vorliegenden Erfindung beschrieben.
Fig. 2 zeigt ein Blockschaltbild einer erfindungsgemäßen Datenverarbeitungseinheit. Mit dem Bezugszeichen Ί ist ein Hauptspeicher (MS), in dem Operanden für den SS-Befehl und Befehle gespeichert sind, bezeichnet. Der Zugriff zum Hauptspeicher 1 kann gleichzeitig 8 Byte über einen MS-Adressbus 53 umfassen und die Lesedaten werden Jn ein 8 Byte tiefes Lesedatenregister (MSRDR) 5 über einen 8 Byte breiten Lesebus 2 geladen. 8 Byte breite Schreibdaten werden von einem
t * 5 ' * 1
32262U
Schreibdatenregister (MSWDR) 4· dem Hauptspeicher 1 über einen Schreibbus 3 gelieferte Das Bezugszeichen 10 bezeichnet ein 8 Byte breites erstes Operandenregister (51OPR). Zum Setzen des Operanden werden die Bytes im MSRDR 5 an das FOPR 10 über MSRDR-Ausgangsleitungen 101-108, FOPR-Eingabewähler 111-118, von denen jeweils einer für jedes Byte des I1OPR 10 vorgesehen ist und Datenleitungen 121-128 übertragen. Das Bezugszeichen 20 bezeichnet ein 8 Byte breites zweites Operandenregister (SOPR)· Die Bytes im MSRDR 5 werden an das SOPR 20 gleichzeitig zu 8 Bytes über einen 8 Byte breiten MSRDR-Datenbus 21 übertragen«,
Die in das FOPR 10 und das SOPR 20 geladenen Operanden werden an eine Arithmetik-Logik-Einheit (ALU) 31 mit 1 Byte breiten Eingängen über Wähler 32 und 33» von denen jeder 1 Byte vom entsprechenden 8 Byte breiten Register auswählt, ange1egt.
Die ALU 31 führt eine Arithmetik-Logik-Operation mit den Eingabedaten gemäß einer in einem Befehlscoderegister (F)
Ausgangsaaten 30 gespeicherten Operation, aus und erzeugt/auf exner 1 Byte breiten ALU-Ausgangsleitung 34-.
Die Ausgangsdaten der ALU 31 werden zu den Byte-Stellen des FOPR 10, in denen die ALU-Eingangsdaten gespeichert waren, über die FOPR-Eingabewähler 111-118, die Setzsignale nur zu diesen Byte-Stellen hinzufügen, gesendet. Der so in das FOPR 10 geladene Operand wird der ALU 31 1-Byteweise geliefert und die ALU-Ausgangsdaten in die Byte-Stellungen 1-Byte-weise eingeschrieben. Wenn das Einschreiben des Ergebnisses beendet ist, werden ein Erstoperanden-Byte-Zeiger (FBP) 14-1 und ein Zweitoperanden-Byte-Zeiger (SBP) 24-1, die die Byte-Stellen des FOPR 10
32262U
und des SOPR 20 jeweils kennzeichnen, um eins inkrementiert. Die Funktionen des I1BP 141 und des SBP 241 werden später erklärt.
Am Schluß jeder 1-Byte-Verarbeitung wird ein nicht verarbeiteter Byte-Zähler (BCNT) 40 mit einer Subtrahier-Ausgangsleitung 43 eines Subtrahierers 41 über einen BCNT-Eingangswähler 42 verbunden, so daß der Inhalt des BCNT um eins dekrementiert wird.
Beim Lesen oder Schreiben des ersten Operanden wird die Zugriffsadresse zum MS 1 von einem ersten Operandenadressregister (I1MSAR) 50 über einen Adresswähler 52 und den MS-Adressbus 53 dem MS 1 angelegt. Der MS-Adressbus 53 ist auch mit einem Eingang eines Adressenaddierers-Subtrahierers (AA) 54, der die MS-Zugriffsadressen auffrischt, verbunden.
Beim Lesen des zweiten Operanden wird ein Inhalt eines zweiten Operandenadressregisters (SMSAR) 51 als die MS-Zugriffsadresse verwendet.
Das AA 54 empfängt die Adresse vom I1MSAR 50 oder dem SMSAR 51 an einem seiner Eingänge und eine Konstante (O, 8 oder 16) von einem Konstantengenerator (C) 58 am anderen Eingang. Der AA 54 kann eine Addieroperation und eine Subtrahieroperation durchführen. Die Operationsart und der Wert der Konstanten des Generators 58 v/erden von einer (nicht gezeigten) Systemsteuerung bestimmt, die die Verarbeitungen des Systems,gesteuert von einem Mikroprogramm, rege It.
Der Ausgang des AA 54· ist zum Eingangsregister über eine AA-Ausgangsleitung 55, einen Adressregister-Eingangswähler
und eine Adressregister-Eingangsleitung 57 zurückgeführt, so daß das Adressregister aufgefrischt wird.
Fig. 3 zeigt Einzelheiten peripherer Schaltungen des MSRDR und des E1OPR 10, die in Pigs 2 gezeigt sind.
Das FBP 141 steuert den Wähler 32 s der ein Byte, das an die ALU 31 geliefert wird, auswählt« Zu Beginn der Ausführung des Befehls wird die erste Operandenadresse, das sind die drei niederwertigen Bits des FMSAR 50 ,in das FBP 141 geladen, das ein dekodiertes Signal erzeugt. Wenn der Inhalt des FBP 141 in binärer Schreibweise 11OOO" ist, so kennzeichnet dies die erste Byte-Stelle oder die höchstwertige Byte-Stelle (an der Daten mit der kleinsten Adresse gespeichert sind) des FOPR 10. Wenn der Inhalt des FBP 141 "010" ist, so kennzeichnet dieser die dritte Byte-Position und wenn er "111" ist, wird die achte Byte-Position oder die niederwertigste Byte-Position spezifiziert.
Der Ausgang 140 des FBP 141 wird ebenfalls an die FOPR-Eingangswähler 111-118 angelegt, um den ALU-Ausgang in die gekennzeichneten Stellen des FOPR 10 (die identisch mit den für die Eingänge der ALU 31 gekennzeichneten Byte-Stellen sind) einzuschreiben,,
Wenn die 8 Bytes des MSRDR 5 parallel ausgewählt werden sollen, geben die FOPR-Eingabewähler 111-118 ein 8-Byte-Setzsignal 132 aus und unterdrücken ein 1-Byte-Setzsignal 131, so daß die Bytes vom MSRDR 5 an das FOPR 10 übertragen werden. Auf der anderen Seite wird, wenn 1 Byte von der ALU 31 eingeschrieben werden soll, das Byte nur in ein Byte eingeschrieben, das von dem FBP 141 mittels UND-Schaltungen, gesteuert vom Ausgang 140 des FBP 141, dem
Ausgang 34- der ALU 31 und dem 1 -Byte-Setzsignal 131 gekennzeichnet wird.
Am Ende geder 1-Byte-Verarbeitung wird der Inhalt des B1BP 14-1 um eins durch einen Addierer 14-2 inkrementiert. Wenn der Inhalt des 51BP 14-1 "111" in binärer Schreibweise erreicht, wird er zyklisch auf "000" gesetzt.
Das SPB 24-1 für den zweiten Operanden ist für den SOPE in gleicher Weise wie für den B1OPR 10 vorhanden. Die Operationen des SOPR 20 und des SBP 24-1 sind mit denen des B1OPR 10 und des B1BP 14-1 identisch mit der Ausnahme, daß die 1-Byte-Schreiboperation von der ALU 31 nicht ausgeführt wird. Deshalb fehlt an dieser Stelle die Beschreibung dieser Operation.
Ein MCC 200 stellt eine Speichersteuerschaltung dar, das die Zugriffe zum MS 1,gesteuert von einem Mikroprogramm, steuert und ist ein Teil der Systemsteuerung. Dem MCC liegen Ausgänge des FBP 14-1, SBP 24-1 und BCNT 4-0 an. Das MCC 200 erfaßt die Anwesenheit einer Schreibanforderung, wenn der Inhalt des BCiIT 4-0 gleich O oder der Inhalt des EBP 14-1 gleich "000" ist sowie die Anwesenheit einer Leseanforderung, wenn der Inhalt des FBP 141 gleich "000" oder der Inhalt des SBP 24-1 gleich "000" ist.
Der im MS 1 gespeicherte SS-Befehl tritt auf dem Datenbus Ein-Syte-weise über den Datenlesebus 2, das MSRDR 5» den Datenbus 21, das SOPR 20, den Wähler 33, die ALU 31 und die ALTJ-Ausgangsleitung 34· auf und wird dann so übertragen, daß Teile von ihm, die sich auf die entsprechenden, in Fig. 1 gezeigten Felder beziehen, in das F 30, das BCNT 4-0, das FMSAR 50, das FBP 14-1, das SMSAR 51 und das SBP 24-1 geladen werden. Bei dieser Operation gehen die Daten ledig-
10
lieh durch die ALU 31»
Zum Vergleich ist nachfolgend eine Operationsfolge eines herkömmlichen Systems dargestellt:
Schritt 5: Schritt 6: Schritt 7: Schritt 8:
Schritt 9:
Schritt 11:
Lies den ersten Operanden (MS-* MSEDR —* FOPR)
Lies den zweiten Operanden SMSAR+8—* SMSAE (MS-* MSEDR —> SOPR)
Schritt 1:
Schritt 2: .
Schritt 3: Wähle Bytes durch das FBP, SBP aus
Schritt 4: 1-Byte-Verarbeitung durch ALU,
Ergebnis —» FOPE
FBP+1 -> FBP. SBP+1
SBP
Falls BCMT = O fahre fort mit Schritt BCNT-1 —> BONT
Falls FBP 4 O und SBP / 0 fahre mit Schritt 3 fort
Falls FBP 5/ 0 und SBP = 0 fahre mit Schritt 2 fort
Schritt 10: FOPR -> MSWDR
Schreibe das Ergebnis in den MS. FMSAR+8 -* FMSAR (MSWDR —* MS)
'32262U
Schritt 12: Lies den ersten Operanden (vom FMSAS adressiert)
(MS —> MSRDR —> I1OPR)
Schritt 13:
Falls SBP = O ist, lies den zweiten
Operanden
(MS -4 MSRDR -> SOPR)
SMSAR+8 —> SMSAR
Schritt 14:
Fahre mit Schritt 3 weiter
Schritt 15:
FOPR —> MSWDR
Schritt 16:
Schreibe das Ergebnis in den MS (adressiert durch das FMSAR) (MSWDR—» MS)
Schritt 17: Ende des Befehls.
Bei jedem Schritt geht die Verarbeitung, falls keine bedingte Abfrage (Test) enthalten ist, mit dem nächsten Schritt weiter. Falls die Bedingung nicht erfüllt ist, fährt die Verarbeitung ebenfalls mit dem nächsten Schritt fort. Die Schritte stellen logische Verarbeitungen dar und jeder Schritt entspricht nicht einem Zyklus oder einem Mikroschritt der Verarbeitungseinheit.
Das FMSAR 50 wird überschrieben, wenn das Einschreiben des Ergebnisses in die erste Operandenstelle gekennzeichnet wurde und das SMSAR 51 wird überschrieben, wenn das Lesen des zweiten Operanden spezifiziert wurde. Beidesmal wird die Additionsverarbeitung im AA 5^ ausgeführt.
32262H
Eine erfindungsgemäße Verarbeitungsfolge wird durch die folgenden Schritte beispielshaft dargestellt:
Schritt 1:
Lies den ersten Operanden. FMSAR+8 —» PMSAR (MS —> MSRDR -» FOPR)
Schritt 2:
Lies den zweiten Operanden. SMSAR+8 —* SMSAR (MS -> MSRDR -> SOPR)
Schritt 3: Wähle die Bytes aus durch PBP und SBP
Schritt 4:
1-Byte-Verarbeitung durch die ALU. POPR
Ergebnis
Schritt 5
FBP+1 —» PBP. SBP+1
SBP
Schritt 6: Falls BCNT = O fahre fort mit Schritt
Schritt 7:
BCNT-1-^ BCNT
Schritt 8:
Palls PBP / O und SBP ^ O fahre mit Schritt 3 fort.
Schritt 9:
Palls PBP 1 0 und SBP = 0 fahre mit Schritt 2 fort.
Schritt 10: POPR —> MSWDR
Schritt 11: Lies den ersten Operanden. PMSAR-8 —> FMSAR (MS-* MSRDR -4- POPR)
Schritt 12:
Palls SBP = O ist, lies den zweiten
Operanden
(MS—> MSRDR-^ SOPR)
SMSAR+8 —» SMSAR
Schritt 13:
Schreibe das Ergebnis in das MS (adressiert vom I1MSAR) (MSWDR-> MS)
FMSAR+16 —* FMSAR
Schritt
Fahre mit Schritt 3 fort.
Schritt 15: FOPR —> MSWDR, FMSAR-8 -4 FMSAR
Schritt 16:
Schreibe das Ergebnis in den MS (adressiert durch das FMSAR) (MSWDR.-4 MS)
Schritt 17: Ende des Befehls.
In den Schritten 1, 2, 11, 12 und 15 erzeugt der G 58 eine Konstante 8 und setzt sie in das AA 5^ und im Schritt 13 erzeugt der 0 58 eine Konstante 16 und setzt sie in das AA 54. Das AA 54 führt die Additionsverarbeitung in den Schritten 1, 2, 12 und 13 und die Subtraktionsverarbeitung in den Schritten 11 und 15 durch.
Die Merkmale der vorliegenden Erfindung werden am deutlichsten durch Schritt 1 und die Schritte 10-15 dargestellt. Insbesondere prüft das MCC 300 den Inhalt des BCNT 40 in Schritt 6 und prüft den Inhalt des FBP 141 in den Schritten 8 und 9· Daraus ergibt sich, daß, wenn der Inhalt des BCKT 40 größer als Null ist und der Inhalt des FBP 141 gleich "000",das Lesen des ersten Operanden, der im darauffolgenden 8-Byte-Block (Tiefe) gespeichert ist,vor dem zeitaufwendigen Einschreiben des Ergebnisses erfolgt. Falls der Inhalt des SBP 241 in Schritt 12 zu "000" und dadurch die Notwendigkeit nachfolgender Daten erkannt wird, wird
- 14 _
das Lesen des zweiten Operanden ebenfalls ausgeführt. Danach wird das Ergebnis eingeschrieben.
Das FMSAR 50 wird aufgefrischt, wenn das Auslesen des ersten Operanden, oder das Einschreiben des Ergebnisses in die erste Operandenstelle gekennzeichnet sind. In diesen Fällen führt das AA 54 die Addition oder Subtraktion aus. Das SMSAR 51 wird aufgefrischt, wenn das Auslesen des zweiten Operanden gekennzeichnet wird, wie es im herkömmlichen System erfolgt, und die Addition wird im AA 54 ausgeführt.
Ein spezielles Beispiel wird für ein herkömmliches System und das erfindungsgemäße Verfahren anhand der Fig. 4 und 5 beschrieben. In diesem speziellen Beispiel benötigt das Auslesen des MS 1 zwei Zyklen, das Einschreiben in den MS 1 sechs Zyklen, die ALU 31 kann ein Byte pro Zyklus verarbeiten, das L-FeId des Befehls enthält "7" (gibt die Verarbeitung von acht Bytes an), die niederwertigen drei Bits des ADR 1-Feldes enthalten eine Binärzahl "110" und die niederwertigen drei Bits des ADR 2-Feldes enthalten eine Binärzahl "000".
Zum Vergleich zeigt Fig. 4 ein Zeitdiagramm der Verarbeitung des herkömmlichen Systems. Das Auslesen des ersten und zweiten Operanden dauert 4 Zyklen und nach zwei Zyklen ALU-Verarbeitung wird eine Binärzahl "000" in das FBP 141 gesetzt. Das Einschreiben des Ergebnisses für das FBP = O braucht sechs Zyklen und das Auslesen des nachfolgenden ersten Operanden zwei Zyklen und nach sechs Zyklen ALU-Verarbeitung wird in das BGNO? 40 Null gesetzt. Am Schluß braucht das Einschreiben des Ergebnisses für BOMD = O sechs Zyklen. So ergibt sich eine Summe von 26 Zyklen.
Fig. 5 zeigt ein Zeitdiagramm der Verarbeitung gemäß der Erfindung. Das Auslesen des ersten und zweiten Operanden braucht vier Zyklen und die ALU-Verarbeitung zwei Zyklen. Das Einschreiben des Ergebnisses für FBP = O ist an diesem Punkt erlaubt, aber das Auslesen des nachfolgenden ersten Operanden wird zuerst in zwei Zyklen ausgeführt. Zu dieser Zeit sind die für die ALU-Verarbeitung nötigen Daten im FOPR 10 und dem SOPR 20 erhältlich und die ALU-Verarbeitung_ wird wieder aufgenommen. Die ALU-Verarbeitung benötigt sechs Zyklen. Das Einschreiben des Ergebnisses für FBP = O wird parallel mit der ALU-Verarbeitung in sechs Zyklen ausgeführt. Wenn die ALU-Verarbeitung beendet ist, wird eine Null in das BONT 40 gesetzt und das Einschreiben des Ergebnisses für BGNT = O wird in sechs Zyklen ausgeführt. Auf diese Weise benötigt man insgesamt 20 Zyklen. Die vorliegende Erfindung ist ebenfalls für die Ausführung von Befehlen geeignet, deren Operanden in anderen Speichern oder anderen Registern stehen.
Der in der vorliegenden Erfindung verwendete Hauptspeicher kann ein magnetischer, elektrostatischer oder ein optischer Speicher, sowie ein Halbleiter-oder ein Plattenspeicher sein. Die vorliegende Erfindung ist besonders wirksam, wenn die Schreibzeit länger als die Lesezeit ist.
Erfindungsgemaß wird das Einschreiben und die nachfolgende ALU-Verarbeitung parallel ausgeführt und die Ausführungszeit des Befehls, verglichen mit einem herkömmlichen System, um sechs Zyklen verringert. Entsprechend wirkt sich die vorliegende Erfindung in einer schnellen Befehlsausführung aus.
Leerseite

Claims (1)

  1. Patentansprüche
    1. Verfahren für ein Betriebssystem zur Verarbeitung von in einem Hauptspeicher (1) gespeicherten Daten, die mindestens einen Operanden umfassen und zum Einschreiben eines Verarbeitungsergebnisses in den Hauptspeicher (1) ,
    dadurch gekennzeichnet, daß - ein Auslesen aus dem Hauptspeicher von für eine nachfolgende arithmetische Operation benötigten Daten eine höhere Priorität, als das Einschreiben eines Verarbeitungsergebnisses beim Ablauf der arithmetischen Operation in den Hauptspeicher (1), wenn das Auslesen und das Einschreiben gleichzeitig benötigt werden, erhält.
    2. Verfahren für ein Betriebssystem nach Anspruch 1, dadurch gekennzeichnet,
    daß die Auslesezeit des Hauptspeichers (1) kürzer als seine Einschreibzeit ist.
    3. Verfahren für ein Betriebssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet,
    daß die Schreiboperation im Datenfeld des Hauptspeichers (1) erfolgt.
    81-A 6951-03-AtWa
    4. Verfahren für ein Betriebssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet,
    daß die arithmetische Verarbeitung von einer Arithmetik-Logik-Einheit (31) mit geringerer Datenbreite als .eiarö'' &Cte Operandenlänge des Operanden ausgeführt wird.
    ; 5·.Arithmetische Verarbeitungseinrichtung, die mindestens
    einen in einem Hauptspeicher (1) gespeicherten Operanden verarbeitet und ein Verarbeitungsergebnis in den Hauptspeicher (1) einschreibt,
    gekennzeichnet durch
    a) eine Einrichtung, die zusammentreffende Anforderungen für das Einschreiben eines Verarbeitungsergebnisses
    im Ablauf der arithmetischen Operation in den Hauptspeicher (1) erfaßt und einen für eine darauffolgende arithmetische Verarbeitung benötigten Operanden aus
    dem Hauptspeicher (1) ausliest, und
    b) eine Vorrangseinrichtung, die abhängig vom Ergebnis
    der Erfassung der Erfassungseinrichtung der Lese-Operation eine größere Vorrangigkeit zuteilt, wodurch sich eine nachfolgende arithmetische Verarbeitung und das Einschreiben des Verarbeitungsergebnisses in den
    Hauptspeicher (1) zeitlich überlappen.
    6. Verfahren für ein Betriebssystem nach Anspruch 1 oder 5, dadurch gekennzeichnet,
    daß ein zweiter Operand im Hauptspeicher (1) gespeichert ist.
DE19823226214 1981-10-02 1982-07-13 Arithmetisches betriebssystem Granted DE3226214A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56156267A JPS5858653A (ja) 1981-10-02 1981-10-02 デ−タ処理装置

Publications (2)

Publication Number Publication Date
DE3226214A1 true DE3226214A1 (de) 1983-04-21
DE3226214C2 DE3226214C2 (de) 1987-04-23

Family

ID=15624069

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19823226214 Granted DE3226214A1 (de) 1981-10-02 1982-07-13 Arithmetisches betriebssystem

Country Status (4)

Country Link
US (1) US4580238A (de)
JP (1) JPS5858653A (de)
DE (1) DE3226214A1 (de)
GB (1) GB2123995B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0184791A1 (de) * 1984-12-07 1986-06-18 Nec Corporation Informationsverarbeitungsgerät zur schnellen Verarbeitung von Befehlen aus verschiedenen Gruppen

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6015746A (ja) * 1983-07-08 1985-01-26 Hitachi Ltd デ−タ処理装置
JPH0769818B2 (ja) * 1984-10-31 1995-07-31 株式会社日立製作所 デ−タ処理装置
JPH0752390B2 (ja) * 1985-05-07 1995-06-05 株式会社日立製作所 命令処理装置
JPH0743648B2 (ja) * 1985-11-15 1995-05-15 株式会社日立製作所 情報処理装置
JPS62159274A (ja) * 1986-01-08 1987-07-15 Hitachi Ltd 条件分岐の分割・複写によるベクトル化方式
US4802085A (en) * 1987-01-22 1989-01-31 National Semiconductor Corporation Apparatus and method for detecting and handling memory-mapped I/O by a pipelined microprocessor
US5168571A (en) * 1990-01-24 1992-12-01 International Business Machines Corporation System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
AU2001249122A1 (en) * 2000-03-08 2001-09-17 Sun Microsystems, Inc. Processing architecture having field swapping capability

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL136146C (de) * 1957-12-09
GB888732A (de) * 1959-12-30
GB1148472A (en) * 1965-04-05 1969-04-10 Ibm Data processing apparatus
GB1077339A (en) * 1965-04-05 1967-07-26 Ibm Control device for a data processor
US3840861A (en) * 1972-10-30 1974-10-08 Amdahl Corp Data processing system having an instruction pipeline for concurrently processing a plurality of instructions
US3903516A (en) * 1973-06-26 1975-09-02 Ibm Control logic for gas discharge display panel
US4025771A (en) * 1974-03-25 1977-05-24 Hughes Aircraft Company Pipe line high speed signal processor
CA1059639A (en) * 1975-03-26 1979-07-31 Garvin W. Patterson Instruction look ahead having prefetch concurrency and pipe line features
JPS51144142A (en) * 1975-06-06 1976-12-10 Hitachi Ltd Information processing
US4168523A (en) * 1975-11-07 1979-09-18 Ncr Corporation Data processor utilizing a two level microaddressing controller
DE2704560C2 (de) * 1977-02-03 1979-01-18 Siemens Ag, 1000 Berlin Und 8000 Muenchen Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen
JPS5440537A (en) * 1977-09-07 1979-03-30 Hitachi Ltd Pipeline control system
JPS5447438A (en) * 1977-09-21 1979-04-14 Mitsubishi Electric Corp Control system for scratch memory
US4167779A (en) * 1978-03-10 1979-09-11 Digital Equipment Corporation Diagnostic apparatus in a data processing system
US4197579A (en) * 1978-06-06 1980-04-08 Xebec Systems Incorporated Multi-processor for simultaneously executing a plurality of programs in a time-interlaced manner
CA1127315A (en) * 1978-10-27 1982-07-06 Shigeyuki Unagami Digital signal processing system with overlap processings
US4313158A (en) * 1978-12-11 1982-01-26 Honeywell Information Systems Inc. Cache apparatus for enabling overlap of instruction fetch operations
CA1134952A (en) * 1979-04-24 1982-11-02 Thomas E. Kloos Means and method within a digital processing system for prefetching both operation codes and operands
JPS5621240A (en) * 1979-07-27 1981-02-27 Hitachi Ltd Information processor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-Buch "Introduction to Computer Architecture" Science Research Associates 1975, S. 383-393 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0184791A1 (de) * 1984-12-07 1986-06-18 Nec Corporation Informationsverarbeitungsgerät zur schnellen Verarbeitung von Befehlen aus verschiedenen Gruppen

Also Published As

Publication number Publication date
JPH0363092B2 (de) 1991-09-30
JPS5858653A (ja) 1983-04-07
US4580238A (en) 1986-04-01
GB2123995A (en) 1984-02-08
GB2123995B (en) 1985-11-13
DE3226214C2 (de) 1987-04-23

Similar Documents

Publication Publication Date Title
DE4035405C2 (de)
DE2230102A1 (de) Rechenwerk fuer variable wortlaengen
DE60224774T2 (de) Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit
DE2630323B2 (de) Datenspeichereinrichtung mit einem Hauptspeicher, einem Hilfsspeicher und einer Vorausschaulogik
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2847934A1 (de) Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher
DE2055784A1 (de) Datenverarbeitungssystem
DE2644441A1 (de) Datenverarbeitungssystem
DE1499193B2 (de) Speicher-adressierschaltung
DE3131204A1 (de) Adressumrechnungs- und generatoranordnung
DE2059917A1 (de) Datenspeicher
DE2332971C2 (de) Mikroprogrammsteuereinrichtung
DE1197650B (de) Parallel-Addierer
DE2359920A1 (de) Adressiereinheit fuer einen gemeinschaftsspeicher
DE2426874A1 (de) Verfahren und schaltungsanordnung zur bestimmung der adressenart eines befehls
DE19526008A1 (de) Vertikal partitionierter, primärer Befehls-Cache-Speicher
DE3226214A1 (de) Arithmetisches betriebssystem
DE4117672A1 (de) Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers
DE2134816A1 (de) Einrichtung zur adressenuebersetzung
DE3421737C2 (de) Vorrichtung zur Ermittlung einer Überlappung von Operanden
DE3900246A1 (de) Informationsverarbeitungsvorrichtung
DE3501903A1 (de) Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung
DE2702722C2 (de) Einrichtung zur Verarbeitung nicht direkt ausführbarer Instruktionen
DE2349253C3 (de) Rechnersystem
DE3535215C2 (de)

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition