DE3843638C2 - - Google Patents

Info

Publication number
DE3843638C2
DE3843638C2 DE3843638A DE3843638A DE3843638C2 DE 3843638 C2 DE3843638 C2 DE 3843638C2 DE 3843638 A DE3843638 A DE 3843638A DE 3843638 A DE3843638 A DE 3843638A DE 3843638 C2 DE3843638 C2 DE 3843638C2
Authority
DE
Germany
Prior art keywords
address
instruction
operand
fetch
mode
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 - Lifetime
Application number
DE3843638A
Other languages
English (en)
Other versions
DE3843638A1 (de
Inventor
Masaya Watanabe
Shuichi Hadano Jp Abe
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 DE3843638A1 publication Critical patent/DE3843638A1/de
Application granted granted Critical
Publication of DE3843638C2 publication Critical patent/DE3843638C2/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 or look ahead
    • G06F9/3802Instruction prefetching
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System (AREA)

Description

Die Erfindung betrifft ein Informationsverarbeitungsgerät mit einer Adressenerweiterungsfunktion gemäß dem Oberbegriff von Anspruch 1.
Wenn für die in einem Datenverarbeitungssystem bearbeiteten Adressen, etwa eine Befehlsadresse und eine Operandenadresse, zwei Breiten möglich sind, beispielsweise 24 Bits und 31 Bits, so ist in einem Datenverarbeitungsgerät ein Befehl zum Umändern der Adressenbreite und zur Verknüpfung eines Befehles und eines Operanden mit einer Adressenroutine mittels der so geänderten Adressenbreite vorgesehen. Dieser Befehl wird im folgenden als Adressenmodus-Umänderungsbefehl oder einfach als Modus-Umänderungsbefehl bezeichnet.
Aus dem Stand der Technik ist aus JP 60-1 42 742-A ein In­ formationsverarbeitungsgerät bekannt, das die Verarbei­ tung des Modus-Umänderungsbefehles durchführt. Das Infor­ mationsverarbeitungsgerät aus JP 60-1 42 742-A besitzt eine Funktion, mit der vor dem Abschluß der Abarbeitungsphase des Modus-Umänderungsbefehles ein Befehl für die Verzwei­ gungssprungzielbestimmung abgerufen wird, wenn ein Modus- Umänderungsbefehl vom Verzweigungstyp abgearbeitet werden soll. Jedoch kann der Operandenabruf mit dem umgeänderten Adressenmodus nicht ausgeführt werden, solange die Abar­ beitungsphase des vorangehenden Befehles nicht abgeschlos­ sen ist. Weiterhin muß mit dem Operandenabruf eines im Verzweigungsziel oder im Verknüpfungsziel angeordneten Befehles so lange gewartet werden, bis die Abarbeitungsphase des Modus-Umänderungsbefehles abgeschlossen ist. Hierbei entsteht das Problem, daß in dem Informationsverarbeitungsgerät die Verarbeitung verzögert wird. Operandenabrufanforderungen enthalten eine mit der Dekodierung eines Speicherbestimmungsbefehles synchronisierte Dekodier-Synchronisationsanforderung und eine Rückholanforderung zur wiederholten Durchführung eines Operandenabrufes einige Zeit später, wenn die Dekodier-Synchronisationsanforderung von einer Speichereinheit nicht angenommen wird. Im Stand der Technik ist jedoch keine Einrichtung vorgesehen, die der Dekodier-Synchronisationsanforderung und der Rückholanforderung gewachsen ist, wenn während der Abarbeitung des Modus-Umänderungsbefehles vom Verzweigungstyp der Operand eines Verknüpfungssprungzielbestimmungsbefehles abgerufen wird.
Es ist die Aufgabe der Erfindung, ein Informationsverar­ beitungsgerät mit einer Adressenerweiterungsfunktion zu schaffen, das so aufgebaut ist, daß dann, wenn ein Modus- Umänderungsbefehl vom Verzweigungstyp abgearbeitet werden soll, sofort mit der Dekodierung des im Verknüpfungssprungziel angeordneten Befehles begonnen werden kann, ohne daß das Ende der Abarbeitungsphase des Modus-Umänderungsbefehles abgewartet werden muß.
Diese Aufgabe wird erfindungsgemäß durch die im kennzeichnenden Teil des Anspruchs 1 angegebenen Merkmale gelöst.
Unteransprüche sind auf bevorzugte Ausführungsformen der vorliegenden Erfindung gerichtet.
Die Erfindung wird im folgenden anhand eines Ausführungs­ beispieles unter Bezug auf die Zeichnungen näher erläu­ tert; es zeigt
Fig. 1 das Befehlsformat eines Modus-Umänderungsbefehles;
Fig. 2 den Aufbau eines herkömmlichen Informationsverar­ beitungsgerätes mit Adressenerweiterungsfunktion;
Fig. 3 den Aufbau einer Ausführungsform des erfindungs­ gemäßen Informationsverarbeitungsgerätes mit Adressenerweiterungsfunktion;
Fig. 4A den Verarbeitungsablauf eines Modus-Umänderungs­ befehles im Stand der Technik;
Fig. 4B den Verarbeitungsablauf eines Modus-Umänderungs­ befehles gemäß der Erfindung;
Fig. 5A den Verarbeitungsablauf eines Modus-Umänderungs­ befehles und eines Verzweigungssprungzielbestim­ mungsbefehles im Stand der Technik; und
Fig. 5B den Verarbeitungsablauf eines Modus-Umänderungs­ befehles und eines Verzweigungssprungzielbestim­ mungsbefehles gemäß der Erfindung.
Vor der Beschreibung eines Ausführungsbeispiels der Er­ findung wird zunächst ein Modus-Umänderungsbefehl und ei­ ne Modus-Umänderung im Stand der Technik beschrieben.
In Fig. 1 ist das Befehlsformat eines Modus-Umänderungs­ befehles gezeigt. Modus-Umänderungsbefehle weisen zwei Arten von Befehlen auf: einen BASSM-Befehl und einen BSM- Befehl. Beide Befehle sind Verzweigungssprungzielbestim­ mungsbefehle. Die Operation des BASSM-Befehles ist kurz die folgende:
  • (1) in einem Mehrzweckregister, das durch einen Mehr­ zweckregisternummer-Bestimmungsbereich R1 des BASSM- Befehles bestimmt wird, werden als Verknüpfungsin­ formation vier niederwertige Bytes eines Programm­ statuswortes PSW (Bit 0 stellt den Adressenmodus dar, die Bits 1 bis 31 stellen die Befehlsadresse dar) gesichert; und
  • (2) von den vier Bytes eines Mehrzweckregisters, das durch einen Mehrzweckregisternummer-Bestimmungsbe­ reich R2 des BASSM-Befehles bestimmt wird, wird das Bit 0 als neuer Adressenmodus und die Bits 1 bis 31 als neue Befehlsadresse gesetzt.
Mittels dieser Befehle arbeitet das Gerät entsprechend dem neugesetzten Adressenmodus einschließlich dem Ver­ zweigungssprungzielbestimmungsbefehl. Die Operation des BSM-Befehles ist die gleiche wie diejenige des BASSM-Be­ fehles, mit der Ausnahme, daß im Bit 0 des durch R1 be­ stimmten Mehrzweckregisters im obigen Abschnitt (1) le­ diglich ein Adressenmodus gesetzt wird; die Bits 1 bis 31 bleiben ungeändert.
Da der Stand der Technik ein Informationsverarbeitungsge­ rät betrifft, das die Verarbeitung von Adressenmodus- Setzungen enthaltenden Befehlen durchführt, wird nun un­ ter Bezug auf die Zeichnungen eine Technik wie die aus JP 60-1 42 742-A bekannte beschrieben. Wie in Fig. 2 gezeigt, weist ein herkömmliches Informationsverarbeitungsgerät mit Adressenerweiterungsfunktion ein Befehlsregister 1, eine Operationseinheit 2, ein Mehrzweckregister 3, eine Adressenadditionsschaltung 4, ein Adressenregister für den vorgängigen Befehlsabruf 5, einen Inkrementierer 6, Wählschaltungen 7, 8, 9-1, 9-2, 11, 14-1, 14-2 und 17, ein PSW-Register 10, eine Speichereinheit 12, eine Steu­ erschaltung 13, ein Befehlsrückhol-Adressenmodus-Spei­ cherflipflop 15, eine Operandenrückhol-Adressenwarte­ schlange 16 und ein Operandenrückhol-Adressenregister 18 auf.
Wenn der BASSM/BSM-Befehl in das in Fig. 2 gezeigte In­ formationsverarbeitungsgerät eingegeben wird, werden so­ wohl der Operationscode-Bereich OP als auch die Nummerbe­ stimmungsbereiche R1 und R2 der Mehrzweckregister im Be­ fehlsregister 1 gesetzt. Die Ausgangsdaten-Bitbreite des Mehrzweckregisters 3 beträgt 32 Bits (0 bis 31). Die Adressenadditionsschaltung 4 wird zur Berechnung der Adresse des Verzweigungssprungzieles des Verzweigungsbe­ fehles, der Operandenadresse eines Befehles und ähnlichem verwendet. Wenn die Adressenadditionsschaltung 4 die Be­ fehlsadresse der Adresse eines Verzweigungssprungzieles oder ähnliches berechnet, werden für den vorgängigen Be­ fehlsabruf die Ausgangsbits 1 bis 31 über die Wählschal­ tung 11 an das Adressenregister 5 übertragen. Wenn die Adressenadditionsschaltung 4 den Inhalt des durch den Re­ gisternummer-Bestimmungsbereich des Befehlsregisters 1 bestimmten Mehrzweckregisters als Eingabe aufnimmt und die Operandenadresse berechnet, werden die Ausgangsbits 1 bis 31 der Adressenadditionsschaltung 4 über die Wähl­ schaltung 17 an das Operandenrückhol-Adressenregister 18 übertragen und dort gespeichert, während sie andererseits in einem Element der Operandenrückhol-Adressenwarteschlan­ ge 16 gespeichert werden.
Im Falle eines Operandenabrufs, der mit der Dekodierung eines den Speicheroperanden bestimmenden Befehles syn­ chronisiert ist, d.h. im Falle einer Dekodier-Synchroni­ sierungsanforderung, werden die Ausgangsbits 1 bis 31 der oben beschriebenen Adressenadditionsschaltung 4 durch die Wählschaltung 17 ausgewählt und im Operandenrückhol- Adressenregister 18 gespeichert. Falls diese Dekodier- Synchronisierungsanforderung von der Speichereinheit 12 nicht angenommen wird, gibt die Steuerschaltung 13 eine Rückholanforderung aus. In dem in Fig. 2 gezeigten Bei­ spiel wird angenommen, daß diese Rückholanforderung in jedem dritten Zyklus ausgegeben wird. Zum Zeitpunkt die­ ser Rückholanforderung wird die Operandenrückholadresse aus der Operandenrückhol-Adressenwarteschlange 16 heraus­ genommen und über die Wählschaltung 17 an das Operanden­ rückhol-Adressenregister 18 übertragen.
Die Eingänge des Adressenregisters 5 für den vorgängigen Befehlsabruf sind mit den Bits 1 bis 31 sowohl der Adres­ senadditionsschaltung 4 und des PSW-Registers 10 als auch mit den Ausgängen des Inkrementierers 6 verbunden. Von den Ausgängen des Adressenregisters für den vorgängigen Befehlsabruf 5 sind die Bits 1 bis 31 mit dem Inkremen­ tierer 6 verbunden, während die Bits 1 bis 7 über die Wählschaltung 7 und die Wählschaltung 9-2 mit der Spei­ chereinheit 12 verbunden sind und die Bits 8 bis 31 über die Wählschaltung 9-2 mit der Speichereinheit 12 verbun­ den sind.
Der Inkrementierer 6 ist eine Schaltung, die den Inhalt des Registers 5 entsprechend seiner Funktion des vorgän­ gigen Befehlsabrufes inkrementiert. Falls eine Einheit für den vorgängigen Befehlsabruf beispielsweise 8 Bytes beträgt, erhöht der Inkrementierer den Inhalt des Regi­ sters 5 um 8.
Die Befehlsabruf-Steuerschaltung 13 steuert die Wähl­ schaltung 9-2 so, daß sie entweder die Ausgabe des Adres­ senregisters 5 für im voraus abzurufende Befehle oder die Ausgabe der Adressenadditionsschaltung 4, die wie die Aus­ gabe der Wählschaltung 11 als Befehlsabrufadresse an die Speichereinheit 12 geliefert wird, auswählt. Die Wähl­ schaltung 11 wird von der Steuerschaltung 13 so gesteu­ ert, daß sie entweder die Bits 1 bis 31 der Adressenaddi­ tionsschaltung 4 oder beim erstmaligen Setzen die Bits 1 bis 31 des PSW-Registers 10 oder beim Aktualisieren den Inkrementierer 6 wählt. Die Wählschaltung 14-2 wird von der Steuerschaltung 13 so gesteuert, daß sie entweder den Inhalt des vom R2-Bereich des Befehlsregisters 1 ausge­ wählten Mehrzweckregisters 3 oder die Ausgabe der Opera­ tionseinheit 2 auswählt.
Das PSW-Register 10 hält einen Adressenmodus (im Bit 0 in Fig. 2) und eine Befehlsadresse eines in der Folge abzu­ arbeitenden Befehles (in den Bits 1 bis 31 in Fig. 2). Die Steuerschaltung 13 nimmt den Operationscode-Bereich OP des Befehls als Eingabe auf, dekodiert den OP und steu­ ert das Adressenregister für den vorgängigen Befehlsabruf 5, die Wählschaltungen 9-2 und 11 usw.
Das Befehlsabruf-Adressenmodus-Speicherflipflop 15 steu­ ert zum Zeitpunkt eines Befehlsabrufes den Adressenmodus, d.h. die Umänderung einer Adressenbreite über die Wähl­ schaltung 7. Ferner ist der Adressenmodus des Operanden­ abrufes durch das Adressenmodusbit des PSW-Registers 10, d.h. durch den Wert des 0-Bits, das über die Wählschal­ tung 14-1 durch die Ausgabe des Mehrzweckregisters 3 oder durch die Ausgabe der Operationseinheit 2 gesetzt wird, definiert und wird von der Wählschaltung 9 gesteuert.
Wie oben beschrieben, ist der BASSM/BSM-Befehl, ein Mo­ dusumänderungsbefehl, ein Befehl vom Verzweigungstyp. Da­ her wird zunächst die Operation eines üblichen Verzwei­ gungsbefehles, der dasselbe Befehlsformat wie dasjenige des BASSM/BSM-Befehles besitzt und keine Modusumände­ rungsoperation enthält, unter Bezug auf Fig. 2 beschrie­ ben.
Wenn der Verzweigungsbefehl von der Speichereinheit 12 abgerufen und im Befehlsregister 1 gesetzt wird, wird die Befehlsdekodierungsphase begonnen. Die Befehlsabruf-Steu­ erschaltung 13 dekodiert den Operationscode, der übertra­ gen worden ist, und sendet Steuersignale an die Adressen­ additionsschaltung 4, die Wählschaltung 9-2 und die Wähl­ schaltung 11. In diesem Moment wird über einen Wählschal­ tungs-Steuerabschnitt 9-1 das Steuersignal für die Wähl­ schaltung 9-2 ausgegeben. Auf der Grundlage des Inhalts des Mehrzweckregisters 3, der anhand des Mehrzweckregi­ sternummer-Bestimmungsbereiches R2 des Befehlsregisters 1 abgerufen wird, berechnet die Adressenadditionsschaltung 4 die Adresse des Verzweigungssprungzieles. Die Wähl­ schaltung 11 wählt ein von der Adressenadditionsschaltung 4 kommendes Bit aus und überträgt die Adresse des von der Additionsschaltung 4 berechneten Verzweigungssprungzieles an die Speichereinheit 12. Die Steuerschaltung 13 sendet an die Speichereinheit 12 ein Befehlsabruf-Anforderungs­ signal und beginnt mit der Rückholung des Verzweigungs­ sprungzielbestimmungsbefehles. Durch die Steuerung der Steuerschaltung 13 werden nachfolgende Befehle aus der Speichereinheit 12 entsprechend den nacheinander durch das Adressenregister für den vorgängigen Befehlsabruf 5 und den Inkrementierer 6 aktualisierten Adressen abgeru­ fen. Diese Operation wird so lange fortgesetzt, bis der nächste Verzweigungsbefehl oder ein den Befehlsadressen­ bereich des PSW ändernder Befehl im Befehlsregister 1 ge­ setzt und dekodiert wird, oder bis das Befehlsregister des PSW durch eine Programmunterbrechnung oder ähnliches geändert wird.
Die oben beschriebene Operation wird synchron mit der De­ kodierungsphase des Verzweigungsbefehles begonnen.
Andererseits wird der Inhalt des PSW-Registers 10 so ak­ tualisiert, daß er synchron zur Befehlsabarbeitungsphase die als nächstes abzuarbeitende Befehlsadresse aufweist. Falls ein Verzweigungsbefehl vorliegt, werden die durch den R2-Bereich des Befehles bestimmten Inhalte des Mehr­ zweckregisters 3 (mit anderen Worten, die Adressenbits des Verzweigungssprungzieles) über die Operationseinheit 2 und die Wählschaltung 14-2 synchron mit der Abarbei­ tungsphase in den Bits 1 bis 31 des PSW-Registers 10 ge­ setzt.
Die Operation eines Verzweigungsbefehles hat nicht not­ wendig eine Modusumänderungsoperation zur Folge. Das Adressenmodusbit soll synchron mit der Befehlsabarbei­ tungsphase aktualisiert werden, da es so lange nicht ge­ ändert werden darf, bis die Abarbeitung eines dem Modus- Umänderungsbefehl unmittelbar vorangehenden Befehles ab­ geschlossen ist. Nun wird der Betrieb des BASSM/BSM-Be­ fehles, eines Modus-Umänderungsbefehles, beschrieben.
Diese Modus-Umänderungsbefehle sind Befehle vom Verzwei­ gungstyp und unterscheiden sich von den oben beschriebe­ nen Verzweigungsbefehlen dadurch, daß nachfolgende Be­ fehlsadressen, Operandenadressen und ähnliches einschließ­ lich der Adresse des Verzweigungssprungzieles im Falle eines Modus-Umänderungsbefehles durch den neuen Adressen­ modus gesteuert werden. Wenn daher ein Modus-Umänderungs­ befehl abgearbeitet werden soll, muß der Abruf von Be­ fehlen einer neuen Routine einschließlich dem Abruf des Verzweigungssprungzielbestimmungsbefehles einem neuen, durch den Modus-Umänderungsbefehl bestimmten Adressenmodus gehorchen.
In dem herkömmlichen Informationsverarbeitungsgerät ist zusätzlich zu einem Adressenmodusbit-Speicherflipflop, das synchron zur Abarbeitungsphase des Modusumänderungs­ befehles aktualisierte Inhalte aufweist, ein Befehlsab­ ruf-Speicherflipflop 15, das synchron zur Dekodierung des Modus-Umänderungsbefehles aktualisierte Inhalte aufweist, vorgesehen. Durch die Steuerung der Befehlsabrufadresse mittels des Befehlsabruf-Speicherflipflops 15 können die Verzweigungssprungzielbestimmungsbefehle mit einer gegen­ über dem Modus-Umänderungsbefehl höheren Geschwindigkeit abgerufen werden.
Nun wird unter Bezug auf Fig. 2 die Operation des Modus- Umänderungsbefehles beschrieben.
Wenn im Befehlsregister 1 der Modus-Umänderungsbefehl ge­ setzt wird, wird die Befehlsdekodierphase begonnen. Die Steuerschaltung 13 dekodiert den an sie übertragenen Ope­ rationscode und führt die bereits beschriebene, herkömm­ liche Operation der Dekodierphase eines Verzweigungsbe­ fehles durch. Weiterhin gibt die Steuerschaltung 13 an das Befehlsabruf-Adressenmodus-Speicherflipflop 15 ein Steuersignal aus, mit dem ein neues Adressenmodusbit ge­ setzt wird, welches wiederum unter Verwendung des R2-Be­ reiches des Befehlsregisters 1 aus dem Mehrzweckregister 3 abgerufen wird. Wenn das Befehlsabruf-Adressenmodus- Speicherflipflop 15 gesetzt ist, werden die Wählschal­ tungen 7 und 8 in einen Adressenmodus geschaltet, der durch den Modus-Umänderungsbefehl bestimmt ist. Synchron zur Dekodierung des Modus-Umänderungsbefehles kann daher im voraus mit dem Abrufen einer Reihe von Verknüpfungs­ sprungzielbestimmungsbefehlen ebenso wie bei herkömmli­ chen Verzweigungsbefehlen begonnen werden.
Folglich kann das in Fig. 2 gezeigte Informationsverar­ beitungsgerät des Standes der Technik gleichzeitig zur Befehlsdekodierung einen vorgängigen Abruf einer Reihe von Verzweigungssprungzielbestimmungsbefehlen durchfüh­ ren. In der Abarbeitungsphase des Modus-Umänderungsbefeh­ les wird jedoch der Operandenabruf des Verknüpfungs­ sprungzielbestimmungsbefehles, d.h. die Dekodierung, so lange angehalten, bis die Umänderung des durch das 0-Bit des PSW-Registers 10 angezeigten Adressenmodus durchge­ führt ist. Dies wird durch die Steuerschaltung 13 er­ reicht, die den Operationscode des BASSM/BSM-Befehles de­ kodiert und die Steuerung durchführt, was zu dem oben be­ schriebenen Anhalten der Dekodierung führt.
Nun wird unter Bezug auf Fig. 4A die Operation des Gerä­ tes des Standes der Technik beschrieben. In dem in Fig. 4A gezeigten Beispiel wird der Befehlsabruf "IF" durch eine dreistufige Pipeline abgearbeitet, die eine Deko­ dier-Leitung Di, eine Speicherabruf-Leitung Ai und eine Übertragungs-Leitung Li aufweist, während der Operanden­ abruf "OF" durch eine vierstufige Pipeline abgearbeitet wird, die eine Dekodier-Leitung D, eine Speicherabruf- Leitung A, eine Übertragungs-Leitung L und eine Abarbei­ tungs-Leitung E aufweist.
In Fig. 4A stellt der Befehl einen Adressenmodus­ umänderungsbefehl dar. Zum gleichen Zeitpunkt, wenn die­ ser Befehl im Zyklus 1 dekodiert wird, wird mit der Rückholung eines Verzweigungssprungzielbestimmungsbefehles begonnen. In diesem Abruf wird gleichzeitig zu dem oben beschriebenen Befehl mit der Dekodierung eines Ver­ zweigungssprungzielbestimmungsbefehles begonnen. Im Zyklus 3 ist die Übertragung des Befehles beendet. Im Zyklus 4 ist der Befehl bereit zur Dekodierung. Diese Dekodierung wird jedoch so lange aufgehalten, bis der Operandenabruf-Adressenmodus umgeändert ist, d.h. bis die Abarbeitungsphase des wegen des Verzweigungssprung­ zielbestimmungsbefehles drei Zyklen erfordernden Adres­ senmodus-Umänderungsbefehles abgeschlossen ist. In dem in Fig. 4A gezeigten Beispiel wird die Dekodierung im Zyklus 7 durchgeführt. Daher kann gesagt werden, daß die Leistungsverschlechterung von drei Zyklen bei dem oben beschriebenen Apparat des Standes der Technik durch die Verzögerung der Dekodieroperation hervorgerufen wird.
Nun wird eine Ausführungsform des erfindungsgemäßen In­ formationsverarbeitungsgerätes, bei dem das oben be­ schriebene Problem des Standes der Technik nicht besteht, beschrieben.
Fig. 3 ist ein Blockschaltbild des Aufbaus einer Ausfüh­ rungsform des erfindungsgemäßen Informationsverarbei­ tungsgerätes. In Fig. 3 bezeichnet das Bezugszeichen 19 eine Operandenrückhol-Adressenmodus-Warteschlange, das Bezugszeichen 20 eine Wählschaltung und das Bezugszeichen 21 ein Operandenrückhol-Adressenmodus-Speicherflipflop. Die anderen Bezugszeichen bezeichnen die gleichen Bautei­ le wie in Fig. 2.
Die in Fig. 3 gezeigte erfindungsgemäße Ausführungsform ist durch die Operandenrückhol-Adressenmodus-Warteschlan­ ge 19, die Wählschaltung 20 und das Operandenrückhol- Adressenmodus-Speicherflipflop 21, die sämtlich in dem in Fig. 2 gezeigten Informationsverarbeitungsgerät des Stan­ des der Technik zusätzlich vorgesehen sind, gekennzeichnet.
Die Operandenrückhol-Adressenmodus-Warteschlange 19 ist in Entsprechung zur Operandenrückhol-Adressenwarteschlan­ ge 16 vorgesehen. Das heißt, daß eine von der Adressenad­ ditionsschaltung 4 gelieferte Operandenabrufadresse in der Operandenrückhol-Adressenwarteschlange 16 gespeichert wird, wenn im Operandenabruf eine Dekodier-Synchronisie­ runganforderung ausgegeben wird. Gleichzeitig damit wird ein durch das Befehlsabruf-Adressenmodus-Speicherflipflop 15 angezeigter Adressenmodus in der Operandenrückhol- Adressenmodus-Warteschlange 19 gespeichert. Wenn eine Operandenrückholanforderung ausgegeben wird, werden eine Adresse bzw. ein Adressenmodus aus der Operandenrückhol- Adressenwarteschlange 16 bzw. aus der Operandenrückhol- Adressenmodus-Warteschlange 19 herausgenommen. Die Adres­ se wird über die Wählschaltung 17 im Operandenabruf- Adressenregister 18 gesetzt, während der Adressenmodus über die Wählschaltung 20 im Operandenrückhol-Adressenmo­ dus-Speicherflipflop 21 gesetzt wird.
Das Befehlsabruf-Adressenmodus-Speicherflipflop 15 wird genauso wie im in Fig. 2 gezeigten Stand der Technik ge­ steuert. Das heißt, daß dieses Befehlsabruf-Adressenmo­ dus-Speicherflipflop 15 den Adressenmodus speichert. Auf­ grund eines Adressenmodus-Umänderungsbefehles wird der Inhalt des Speicherflipflops 15 so aktualisiert, daß es synchron zur Befehlsdekodierung einen neuen Adressenmodus aufweist. Unter Verwendung dieses Befehlsabruf-Adressen­ modus-Speicherflipflops 15 wird dann der im voraus durch­ zuführende Verknüpfungssprungzielbestimmungsbefehl durch­ geführt. Wie für den Operandenabruf des Verknüpfungs­ sprungzielbestimmungsbefehles wird auch der neue Adres­ senmodus im Befehlsabruf-Adressenmodus-Speicherflipflop 15 synchron zur Dekodierung des Adressenmodus-Umände­ rungsbefehles gesetzt, so daß der Adressenmodus unter Verwendung des Befehlsabruf-Adressenmodus-Speicherflip­ flops 15 definiert werden kann.
Die Wählschaltung 20 wählt das Befehlsabruf-Adressenmo­ dus-Speicherflipflop 15, wenn eine Dekoder-Synchronisier­ anforderung ausgegeben wird, während sie die Operanden­ rückhol-Adressenmodus-Warteschlange 19 wählt, wenn eine Befehlsrückholanforderung ausgegeben wird. Ihr Adressen­ modus wird im Operandenrückhol-Adressenmodus-Speicher­ flipflop 21 gesetzt. Dieses Adressenmodus-Speicherflip­ flop 21 garantiert im Moment des Rückholens des Operanden den Adressenmodus, woraus sich eine erhöhte Befehlsverar­ beitungsgeschwindigkeit ergibt.
Der Befehlsverarbeitungsablauf der oben beschriebenen er­ findungsgemäßen Ausführungsform wird nun unter Bezug auf Fig. 4B beschrieben.
Wie in Fig. 4B gezeigt, werden der Befehlsabruf "IF" und der Operandenabruf "OF auf dieselbe Weise wie in Fig. 4A abgearbeitet. In der erfindungsgemäßen Ausführungsform kann die Dekodierung des Verknüpfungssprungzielbestim­ mungsbefehles gleichzeitig mit dem Beginn der Abar­ beitungsphase des Adressenmodus-Umänderungsbefehles im Zyklus 4 abgearbeitet werden, wie in Fig. 4B gezeigt ist. Daher kann mit der Abarbeitung des Befehles im Zyklus 7 begonnen werden. In bezug auf die Abarbeitungs­ leistung des Adressenmodus-Umänderungsbefehles kann somit festgestellt werden, daß die Verarbeitung eines Befehles im Stand der Technik sechs Zyklen benötigt, wie in Fig. 4A gezeigt, während in der erfindungsgemäßen Ausführungs­ form die Verarbeitung eines Befehles tatsächlich drei Zy­ klen benötigt, wie in Fig. 4B gezeigt, so daß die Verar­ beitungsleistung stark verbessert wird.
Nun wird unter Bezug auf die Fig. 5A und 5B ein weiteres Beispiel eines Befehlsverarbeitungsablaufes beschrieben.
In Fig. 5A ist der Befehlsverarbeitungsablauf im Stand der Technik gezeigt, während in Fig. 5B der Befehlsverar­ beitungsablauf für die erfindungsgemäße Ausführungsform gezeigt ist. In den Fig. 5A und 5B bezeichnet einen dem Adressenmodus-Umänderungsbefehl vorangehenden Befehl, während einen Adressenmodus-Umänderungsbefehl und einen Verknüpfungssprungzielbestimmungsbefehl bezeichnen.
In den Fig. 5A und 5B ist der Fall gezeigt, in dem der Operandenabruf (Datensynchronisationsanforderung) des Be­ fehles von der Speichereinheit 12 zum Zeitpunkt des Zyklus 1 nicht angenommen wird und in dem im Zyklus 4 ein Rückholvorgang durchgeführt wird. Der Adressenmodus wird durch den Adressenmodus-Umänderungsbefehl von A nach B geändert. Der Operand des Befehles wird gemäß dem Adressenmodus A abgerufen, während der Operand des Befeh­ les gemäß dem Adressenmodus B abgerufen wird.
Beim Stand der Technik, der in Fig. 5A gezeigt ist, wird der Befehl von der Speichereinheit 12 nicht angenom­ men und im Zyklus 4 zurückgeholt. Folglich wird der Ope­ randenabruf des Befehles im Zyklus 4 begonnen. Die Verarbeitungsschritte des Dekodierens D des Speicherab­ rufes A, der Übertragung L und der Abarbeitung E werden nacheinander abgearbeitet, so daß die Abarbeitung des Be­ fehles im Zyklus 10 endet. Da der Operandenabruf des Verknüpfungssprungzielbestimmungsbefehles so lange aufgehalten wird, bis die Abarbeitung des Befehles abgeschlossen ist, wird dieser Abruf möglicherweise im Zyklus 11 begonnen und im Zyklus 14 abgeschlossen. Das heißt, daß die unter der oben beschriebenen Bedingung durchgeführte Befehlsverarbeitung im Stand der Technik 14 Zyklen benötigt.
Andererseits kann in der erfindungsgemäßen Ausführungs­ form, die in Fig. 5B gezeigt ist, mit der Dekodierung des Befehles ebenso wie unter Bezug auf Fig. 4B beschrie­ ben direkt nach der Dekodierung des Operandenabrufes des Befehles begonnen werden. Daher kann der Operandenab­ ruf des Befehles im Zyklus 11 abgeschlossen werden. Das heißt, daß in der erfindungsgemäßen Ausführungsform auch dann das Vorliegen eines entsprechenden Adressenmo­ dus gewährleistet werden kann, wenn ein Operand zurückge­ holt wird. Folglich kann die Verarbeitungsgeschwindigkeit verbessert werden.
Die oben beschriebene Ausführungsform des erfindungsgemä­ ßen Informationsverarbeitungsgerätes weist als dritte Einrichtung die Adressenadditionsschaltung 4 zur Durch­ führung eines Operandenabrufes synchron zur Befehlsdeko­ dierung, die Operandenrückhol-Adressenwarteschlange 16 als eine vierte Einrichtung zur Durchführung eines Ope­ randenabrufes unter der Voraussetzung, daß der von der dritten Einrichtung durchgeführte Operandenabruf nicht sofort verarbeitet werden kann, und die Wählschaltung 17 als eine fünfte Einrichtung zur Wahl entweder des die dritte Einrichtung verwendenden Operandenabrufes oder des die vierte Einrichtung verwendenden Operandenabrufes ent­ sprechend einer vorbestimmten Priorität auf. Das Gerät besitzt somit eine Adressenerweiterungsfunktion zur Umän­ derung der Adressenbreite des Befehls und des Operanden. Ferner weist das Gerät ein Befehlsabruf-Adressenmodus- Speicherflipflop 15 als erste Einrichtung zur Steuerung der Adressenbreite des Befehlsabrufes, das Operandenrück­ hol-Adressenmodus-Speicherflipflop 21 als eine zweite Einrichtung zur Steuerung des Adressenabrufes der Operan­ denrückholung und die Operandenrückhol-Adressenmodus-War­ teschlange 19 als eine sechste Einrichtung zur Speiche­ rung des im Operandenabruf von der dritten Einrichtung verwendeten Adressenmodus und zur Ausgabe des von der vierten Einrichtung im Operandenabruf gespeicherten Adressenmodus auf. In Übereinstimmung mit der an die fünfte Einrichtung gelieferten Wählanweisung wird mittels einer Anweisung entweder der Adressenmodus der ersten Einrichtung oder der Adressenmodus der sechsten Einrich­ tung in der zweiten Einrichtung gesetzt, um einen Operan­ denabruf durchzuführen.

Claims (3)

1. Informationsverarbeitungsgerät mit Adressenerweiterungsfunktion, das
eine Speichereinheit (12) zur Speicherung von Be­ fehlen und Operanden;
ein Befehlsregister (1) zur Speicherung eines aus der Speichereinheit (12) abgerufenen Befehls;
eine Mehrzahl von Mehrzweckregistern (3), auf die mittels der Inhalte des Befehlsregisters (1) zugegriffen wird und deren Inhalte zur Speicherung des Adressenmodus der Adresse eines einem momentan abgearbeiteten Befehl nachfolgenden Befehls dienen, wobei der Adressenmodus angibt, ob eine Adressenerweiterung vorgenommen werden soll oder nicht;
eine Operationseinheit (2), die einen Adressenmodus und die Adresse des Nachfolgebefehls erzeugen kann;
eine Adressenadditionsschaltung (4) zur Aufnahme der mittels der Inhalte des Befehlsregisters (1) bestimmten Inhalte eines Registers der Mehrzahl der Mehrzweckregister (3) und zur Erzeugung einer Befehlsadresse der Verzweigungssprungzielbestimmung und einer Operandenadresse, sofern der nachfolgende Befehl ein Verzwei­ gungssprungzielbestimmungsbefehl ist;
eine erste Speicherflipflop-Einrichtung (15) zur Speicherung eines Adressenmodus, wobei die Inhalte der ersten Speicherflipflop-Einrichtung (15) so aktualisiert werden, daß sie entweder den vom Mehrzweckregister (3) oder den von der Operationseinheit (2) gelieferten Nachfolgebefehl enthalten;
eine Adressenerzeugungseinrichtung (5, 6) für einen vorhergehenden Befehlsabruf, die die von der Adressen­ additionsschaltung (4) ausgegebene Befehlsadresse aufnimmt und eine Adresse für einen in einer Reihe von Nachfolgebefehlen aus der Reihe der Verzweigungssprung­ zielbestimmungsbefehle enthaltenen Befehl, der den vor­ hergehenden Befehlsabruf darstellt, erzeugt;
eine Einheit (7, 9-1, 9-2) zur Wahl der von der Adressenadditionsschaltung (4) erzeugten Befehlsadresse, wenn der Verzweigungssprungzielbestimmungsbefehl abgerufen wird, bzw. zur Wahl der von der Adressenerzeugungseinrichtung (5, 6) für einen vorhergehenden Befehlsabruf erzeugten Befehlsadresse, wenn ein Nach­ folgebefehl einer Verzweigungssprungzielbestimmung ab­ gerufen wird, um die so gewählte Befehlsadresse gemäß dem im ersten Speicherflipflop (15) gespeicherten Adressenmodus zu modifizieren und an die Speichereinheit (12) zu schicken;
ein Operandenadressenregister (18) zur Speicherung einer Operandenadresse;
eine Operandenrückhol-Adressenwarteschlange (16) zur Speicherung einer Operandenadresse, um eine Rückholoperation durchzuführen, wenn der von der Speichereinheit (12) zurückgeholte Operand nicht angenommen wird; und
eine erste Wähleinrichtung (17) zur Wahl der von der Adressenadditionsschaltung (4) erzeugten Operandenadresse, wenn ein Operand abgerufen wird, bzw. zur Wahl der in der Operandenrückhol-Adressenwarteschlange (16) gespeicherten Adresse, wenn ein Operand zurückgeholt wird, und zur Lieferung des Wählergebnisses an das Ope­ randenadressenregister (18) aufweist,
gekennzeichnet durch
eine zweite Speicherflipflop-Einrichtung (21) zur Speicherung des bei der Durchführung eines Operanden­ abrufes verwendeten Adressenmodus;
eine Operandenrückhol-Adressenmodus-Warteschlange (19), die in Entsprechung zu der Operandenrückhol- Adressenwarteschlange (16) vorgesehen ist, um den in der ersten Speicherflipflop-Einrichtung (15) gespei­ cherten Adressenmodus zu speichern, wenn zuerst ein Abruf unter Verwendung einer in der Operandenabruf- Adressenwarteschlange (16) gespeicherten Operandenadresse durchgeführt wird;
eine zweite Wähleinheit (20) zur Wahl des in der ersten Speicherflipflop-Einrichtung (15) gespeicherten Adressenmodus, wenn ein Operand abgerufen wird, bzw. des in der der Operandenrückhol-Adressenwarteschlange (16) entsprechenden Operandenrückhol-Adres­ senmodus-Warteschlange (19) gespeicherten Adressenmodus, wenn ein Operand zurückgeholt wird, und zur Lieferung der Wählergebnisse an die zweite Adressen­ speicherflipflop-Einrichtung (21); und
eine Einheit (8, 9-2) zur Modifizierung der in dem Operandenadressenregister (18) gespeicherten Operandenadresse gemäß dem in der zweiten Speicherflipflop-Einrichtung (21) gespeicherten Adressenmodus und zur Sendung des modifizierten Ergebnisses an die Speichereinheit (12) zum Operandenabruf und zur Operandenrückholung.
2. Informationsverarbeitungsgerät gemäß Anspruch 1, dadurch gekennzeichnet, daß ein vorhergehender Verzweigungssprungzielbestimmungsbefehlabruf synchron mit der Dekodierung eines Adressenmodus-Umänderungsbefehles begonnen wird, wenn der Adressenmodus-Umänderungsbefehl vom Verzweigungstyp in das Befehlsregister (1) abgerufen wird.
3. Informationsverarbeitungsgerät gemäß Anspruch 2, dadurch gekennzeichnet, daß der Operandenabruf eines Verzweigungssprungzielbestimmungsbefehles vor dem Abschluß der Abarbeitung des Adressenmodus-Umänderungsbefehles ausgeführt werden kann.
DE3843638A 1987-12-28 1988-12-23 Informationsverarbeitungsgeraet mit adressenerweiterungsfunktion Granted DE3843638A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62330239A JP2577023B2 (ja) 1987-12-28 1987-12-28 情報処理装置のアドレス拡張制御方式

Publications (2)

Publication Number Publication Date
DE3843638A1 DE3843638A1 (de) 1989-07-13
DE3843638C2 true DE3843638C2 (de) 1991-01-31

Family

ID=18230416

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3843638A Granted DE3843638A1 (de) 1987-12-28 1988-12-23 Informationsverarbeitungsgeraet mit adressenerweiterungsfunktion

Country Status (3)

Country Link
US (1) US5038280A (de)
JP (1) JP2577023B2 (de)
DE (1) DE3843638A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03233630A (ja) * 1990-02-08 1991-10-17 Nec Corp 情報処理装置
US6240508B1 (en) * 1992-07-06 2001-05-29 Compaq Computer Corporation Decode and execution synchronized pipeline processing using decode generated memory read queue with stop entry to allow execution generated memory read
US6182202B1 (en) * 1997-10-31 2001-01-30 Oracle Corporation Generating computer instructions having operand offset length fields for defining the length of variable length operand offsets
JPH11327899A (ja) * 1998-05-14 1999-11-30 Mitsubishi Electric Corp データ処理装置及びデータ処理方法
TWI289751B (en) * 2003-02-27 2007-11-11 Mediatek Inc Method for increasing memory in a processor

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4258419A (en) * 1978-12-29 1981-03-24 Bell Telephone Laboratories, Incorporated Data processing apparatus providing variable operand width operation
US4616331A (en) * 1980-02-25 1986-10-07 Tsuneo Kinoshita Information processing system consisting of an arithmetic control unit formed into a one-chip typed by application of a highly-integrated semiconductor device
US4530050A (en) * 1981-08-26 1985-07-16 Hitachi, Ltd. Central processing unit for executing instructions of variable length having end information for operand specifiers
JPS59174948A (ja) * 1983-03-25 1984-10-03 Toshiba Corp 情報処理装置
US4586130A (en) * 1983-10-03 1986-04-29 Digital Equipment Corporation Central processing unit for a digital computer
JPS60142742A (ja) * 1983-12-29 1985-07-27 Hitachi Ltd デ−タ処理装置

Also Published As

Publication number Publication date
US5038280A (en) 1991-08-06
JP2577023B2 (ja) 1997-01-29
JPH01173142A (ja) 1989-07-07
DE3843638A1 (de) 1989-07-13

Similar Documents

Publication Publication Date Title
DE1900141C3 (de) HilfsSteuerwerk für eine Datenverarbeitungsanlage
DE3785897T2 (de) Steuervorrichtung zum vorabruf von befehlen.
DE3401995C2 (de)
DE2457612C3 (de) Mikroprogrammier-Steuereinrichtung
EP0293517B1 (de) Steuerprozessor
DE3882772T2 (de) Vektorprozessor angepasst zum Sortieren von Vektordaten.
DE3400723C2 (de)
DE68925397T2 (de) Pipelineprozessor
DE2036729A1 (de) Digital Datenverarbeiter
DE3752280T2 (de) Mustergenerator
DE4118331A1 (de) Bussystem zur anwendung bei einem informationsverarbeitungsgeraet
DE3126878A1 (de) Adressen-steuerschaltung fuer mikroprozessoren
DE2715073A1 (de) Mikroprogrammierte rechner-steuervorrichtung
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE69500748T2 (de) Elektronischer Schaltkreis und Verfahren für die Verwendung mit einem Koprozessor
DE2935101C2 (de)
DE3843638C2 (de)
DE69031361T2 (de) Taktsignalgeneratorsystem
CH654679A5 (de) Prozessrechner.
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
DE3780335T2 (de) Prozesssteuerungssystem und -verfahren.
DE3121046C2 (de)
DE2759120C2 (de)
DE2710436C2 (de) Datenverarbeitungseinrichtung
DE69502133T2 (de) Datenprozessor mit gemeinsamen Anschluss zur Überwachung von internen und externen Speicherereignissen

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
8339 Ceased/non-payment of the annual fee