DE4039532C2 - Datenprozessor - Google Patents
DatenprozessorInfo
- Publication number
- DE4039532C2 DE4039532C2 DE4039532A DE4039532A DE4039532C2 DE 4039532 C2 DE4039532 C2 DE 4039532C2 DE 4039532 A DE4039532 A DE 4039532A DE 4039532 A DE4039532 A DE 4039532A DE 4039532 C2 DE4039532 C2 DE 4039532C2
- Authority
- DE
- Germany
- Prior art keywords
- instruction
- special operation
- special
- read
- cpu
- 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 - Fee Related
Links
- 230000015654 memory Effects 0.000 claims description 70
- 238000001514 detection method Methods 0.000 claims description 28
- 238000013500 data storage Methods 0.000 claims 3
- 238000011022 operating instruction Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 30
- QECABVMKPMRCRZ-UHFFFAOYSA-N acetyl(methoxy)phosphinic acid Chemical compound COP(O)(=O)C(C)=O QECABVMKPMRCRZ-UHFFFAOYSA-N 0.000 description 19
- 238000000034 method Methods 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003936 working memory Effects 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/30181—Instruction operation extension or modification
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
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)
Description
Diese Erfindung bezieht sich auf einen
Datenprozessor gemäß dem Oberbegriff des Patentanspruches 1 oder 2.
Fig. 9 ist ein System-Konfigurationsdiagramm, welches
beispielhaft einen Abfolge-Operationsprozessor zeigt, der
ein herkömmlicher Datenprozessor ist. In dieser Figur
bezeichnet das Bezugszeichen 1 eine vorabruffähige
zentrale Verarbeitungseinheit (CPU); 2 bezeichnet einen
Speicher zum Speichern einer normalen Ausführungs
anweisung oder einer Abfolge-Operationsanweisung, das
heißt, einer speziellen Operationsanweisung; 3 bezeichnet
einen Dekoder zum Dekodieren eines Befehls (einer
Anweisung) von der CPU 1, wenn die von dem Speicher 2
gelesene Anweisung eine Anweisung für eine
Abfolgeoperation ist; 4 bezeichnet einen
Abfolge-Operationssteuerabschnitt, um zu veranlassen, daß
die Abfolgeoperation durch bin Dekodiersignal 5 von dem
Dekoder 3 und einer Adresse und Daten von der CPU 1
ausgeführt wird; 6 bezeichnet ein
Abfolge-Operationenregister; 7 einen Arbeits-RAM zum
Speichern des Ergebnisses der Abfolgeoperation; 8 einen
Adressbus; und 9 einen Datenbus.
Fig. 10 ist ein Operations-Abfolgediagram, welches den
Betrieb des in Fig. 9 gezeigten Abfolge-Operations
prozessors erklärt. In der Figur bezeichnen die
Bezugszeichen 201 bis 220 Zyklen in seinem
Operationsprozeß.
Eine Operation des herkömmlichen in Fig. 9 gezeigten
Abfolge-Operationsprozessors wird unter Bezugnahme auf
das in Fig. 10 gezeigte Operations-Abfolgediagramm
beschrieben. Eine von der CPU 1 über den Adressbus 8
gelieferte Adresse liest eine Anweisung vom Speicher 2,
und die gelesene Anweisung wird von der CPU 1
aufgenommen. Während die gelesene Anweisung dekodiert und
ausgeführt wird, liest die CPU 1, falls zum Vorabrufen
einer Anweisung bereit, eine nächste Anweisung vom
Speicher 2 ab und dekodiert sie.
Falls die von der CPU 1 dekodierte Anweisung eine
Anweisung für eine Abfolge-Operation ist, gibt die CPU 1
ein vorbestimmtes Kommando an den Dekoder 3 für die
Abfolge-Operation und eine Anfrage für einen
Abfolge-Operationsstart. Der empfangene Befehl veranlaßt
den Dekoder 3, ein Objekt-Dekodiersignal 5 an den
Abfolgeoperationen-Steuerabschnitt 4 zu senden. Der
Abfolgeoperationen-Steuerabschnitt 4 wiederum führt die
Abfolgeoperation durch Dekodieren des Dekodiersignales 5,
die Adresse auf dem Adressbus 8, und die Daten auf dem
Datenbus 9 aus, und speichert das Ergebnis der
Abfolgeoperation in dem Arbeits-RAM 7.
Die Zyklen 201 bis 210, welche solch einen Vorgang über
das in Fig. 10 gezeigte Operationsabfolgediagram
anzeigen, bezeichnen Anweisungen-Leseoperationen
(ABRUFEN, im folgenden mit "F" bezeichnet) durch die CPU
1, eine Anweisungen-Dekodieroperation (DEKODIEREN, im
folgenden mit "D" bezeichnet), und eine Anweisungen-
Ausführoperation (AUSFÜHREN, im folgenden mit "E"
bezeichnet); die Zyklen 211 bis 220 bezeichnen eine
Anweisungen-Leseoperation F, eine Anweisungen-
Dekodieroperation D und eine Anweisungen-Ausführoperation
E durch die CPU 1, und eine Abfolgeoperationen-
Ausführungsoperation E durch den Abfolge
Operationenprozessor.
Der Anweisungen-Ausführzyklus durch die CPU 1 wird nun
anhand des Beispieles der Zyklen 201 bis 210 beschrieben.
Die CPU 1 liest eine Anweisung vom Speicher 2 beim Zyklus
201, dekodiert die gelesene Anweisung beim Zyklus 202 und
führt die dekodierte Anweisung beim Zyklus 203 aus. Falls
die CPU 1 bereit ist, während der Anweisungsdekodier- und
Ausführzyklen eine Anweisung vorabzurufen, liest sie beim
Zyklus 205 eine Anweisung, dekodiert die gelesene
Anweisung beim Zyklus 204 und führt verschiedene
Operationen beim Zyklus 206 durch, wenn sie bereit ist,
die nächste Anweisung auszuführen. Falls die CPU bereit
ist, wieder eine andere Anweisung vorabzurufen, nachdem
sie die Anweisung ausgeführt hat, liest sie eine
Anweisung vom Speicher 2 beim Zyklus 208. Mit den obigen
Operationen schließt die CPU 1 einen Satz von Anweisungs-
Ausführzyklen ab.
Als nächstes werden die Zyklen 211 bis 220 beschrieben,
bei welchen der Abfolge-Operationenprozessor eine
Abfolgeoperation ausführt. Falls eine von der CPU 1 beim
Zyklus 211 gelesene Instruktion als eine
Abfolgeoperations-Anweisung beim Zyklus 212 dekodiert
worden ist, wird die Abfolge-Operationsanweisung dadurch
ausgeführt, daß die CPU 1 veranlaßt wird, einen Befehl,
eine Adresse und Daten sowohl an den Dekoder 3 als auch
den Abfolgeoperationen-Steuerabschnitt 4 zu geben, unter
Ausnützung des Anweisungs-Ausführungszyklus 213. Die CPU
1, welche während dieses Abfolgeoperationen-
Anweisungsausführungszyklus nicht in der Lage ist,
irgendeine Anweisung zu lesen, kann nur eine einer Anzahl
von Pipelines in der CPU 1 entsprechende vorabgerufene
Instruktion unter den vorabgerufenen Instruktionen beim
Zyklus 214 dekodieren, wenn der Zyklus 213 ausgeführt
wird, und beim Zyklus 217, wenn der Zyklus 216 ausgeführt
wird.
Fig. 11 ist ein Systemkonfigurationsdiagramm, welches
einen anderen beispielhaften Abfolge-Operationenprozessor
zeigt, welcher ein herkömmlicher Datenprozessor ist, wie
zum Beispiel in der ungeprüften veröffentlichten
japanischen Patentanmeldung Nummer 38902/1987 offenbart.
In der Figur bezeichnet das Bezugszeichen 11 eine
vorabruffähige CPU; 12 eine Bit-Daten-Arithmetik- und
Logikeinheit (Bit ALU); 13 einen Programm-Nur-
Lesespeicher (ROM); 14 einen Pseudo-Anweisungen
konvertierschaltkreis, welcher für den Fall, daß eine vom
ROM 13 gelieferte Anweisung an die Bit ALU 12 gerichtet
wird, die Anweisung in eine Nichtausführ-Anweisung (NOP)
umwandelt, und diese auf die CPU 11 gibt; 15 bezeichnet
eine Steuersignalleitung, welche die Bit ALU 12
informiert, daß eine gegenwärtig von dem ROM 13
gelieferte Anweisung an die Bit ALU 12 geliefert werden
soll, wobei die Signalleitung das signifikanteste Bit
(MSB) vom ROM 13 überträgt; 16 bezeichnet einen ersten
Datenbus zum Übertragen einer vom ROM 13 gelieferten
Anweisung; 17 bezeichnet einen zweiten Datenbus zum
Übertragen von Daten zwischen der CPU 1 auf der einen
Seite und dem Pseudo-Anweisungenkonvertierschaltkreis 14,
mit ALU 12, und RAM 18 zum Speichern von
Operationsergebnissen in diesen. 19 bezeichnet einen
externen Schnittstellenschaltkreis (I/F) einer
Abfolgesteuerungseinheit; und 20 bezeichnet einen
Adressbus.
Fig. 12 und 13 sind ein Anweisungen-Anordnungsdiagramm
und ein Operations-Abfolgediagramm, welche den Betrieb
des in Fig. 11 gezeigten Abfolge-Operationsprozessors
erklären. In den Figuren bezeichnen die Bezugszeichen 501
bis 504 Anweisungen; 501a bis 501c, 502a bis 502d, 503a
bis 503d, 504a bis 504c bezeichnen Zyklen im
Operationsprozeß.
Ein Betrieb des herkömmlichen, in Fig. 11 gezeigten
Abfolge-Operationenprozessors wird nun unter Bezugnahme
auf das in Fig. 12 gezeigte Anweisungen-
Anordnungsdiagramm und das in Fig. 13 gezeigte
Operations-Abfolgediagramm beschrieben. Die CPU 11 liest
ein in dem ROM 13 geschriebenes Programm. Falls das aus
dem ROM 13 gelesene Programm nicht ein Programm zum
Betreiben der Bit ALU 12 ist, das heißt, eine CPU
Anweisung, ist das signifikanteste Bit (MSB) des
Programmes "0". Selbst wenn dieses Programm sowohl an Bit
ALU 12 als auch an den Pseudo-Anweisungenkonvertier
schaltkreis 14 über die Steuersignalleitung 15 geliefert
wird, wird die Bit ALU 12 nicht betrieben, während der
Pseudo-Anweisungenkonvertierschaltkreis 14 dieses vom ROM
13 gelieferte Programm direkt an die CPU 11 überträgt, um
dadurch die CPU 11 zu veranlassen, die empfangene
Anweisung zu dekodieren und auszuführen.
Falls andererseits das von der CPU 11 vom ROM 13 gelesene
Programm die Bit ALU 12 betreiben soll, das heißt, eine
spezielle Operationsanweisung ist, ist das
signifikanteste Bit (MSB) des Programmes "1", und das
Programm wird sowohl an Bit AU 12 als auch den
Pseudo-Anweisungenkonvertierschaltkreis 14 über die
Steuersignalleitung 15 geliefert. Nach Empfang des
Programmes führt die Bit ALU 12 durch eine vom ROM 13
gelieferte Anweisung (Daten) eine Bit-Datenverarbeitung
an den in RAM 18 gehaltenen Daten aus. Zur gleichen Zeit
konvertiert der Pseudo-Anweisungenkonvertierschaltkreis
14 die vom ROM 13 gelieferte spezielle
Operationsanweisung in eine Nichtausführ-Anweisung (NOP)
für CPU 11 und liefert die Nichtausführ-Anweisung an CPU
11. CPU 11 dekodiert dann die Nichtausführ-Anweisung
(NOP) und führt diese aus, und schreitet fort zu einem
nächsten Zyklus, wobei jeder externe Zugriff ignoriert
wird. Das heißt, die Bit ALU 12 kann Bit-
Datenverarbeitung ausführen, während die CPU 11 einen
Anweisungs-Vorabrufzyklus ausführt.
Die Bezugszeichen 501 und 504 bezeichnen CPU Anweisungen;
502 und 503 bezeichnen spezielle Operationsanweisungen in
Fig. 12, wobei diese Bezugszeichen die obige Operation
dem in Fig. 12 gezeigten Anweisungs-Anordnungsdiagramm
und dem in Fig. 13 gezeigten Operations-Abfolgediagramm
andeuten. Dieselbe Operation wird in dem in Fig. 13
gezeigten Operations-Abfolgediagramm beschrieben, in
welchem mit Bezug auf die Zyklen für CPU Anweisungen 501
die CPU 11 eine Anweisung aus dem ROM 13 beim Lesezyklus
501a liest, die gelesene Anweisung beim Dekodierzyklus
501d dekodiert, und die dekodierte Anweisung beim
Ausführungszyklus 501c ausführt. Bezüglich der Zyklen für
die CPU Anweisungen 504 werden die obigen ähnlichen
Zyklen wiederholt, um die Anweisung auszuführen.
Unter Bezugnahme auf die Zyklen zum Ausführen einer
speziellen Operationsanweisung 501 durch die Bit ALU 12,
liest die CPU 11 nur eine von dem im ROM 13 gelieferte
Anweisung und wandelt diese in eine Nichtausführungs-
Anweisung (NOP) beim Zyklus 502a um, dekodiert den NOP
beim Zyklus 502b und führt den NOP beim Zyklus 502c aus,
und veranlaßt zur gleichen Zeit die Bit ALU 12, die
spezielle Operation beim speziellen Operationen-
Ausführungszyklus 502d auszuführen. Diese Operationen
werden entsprechend angewandt auf die spezielle
Operationsanweisung 503.
Weil der in Fig. 9 dargestellte Abfolge
Operationenprozessor, der ein herkömmlicher
Datenprozessor ist, wie oben beschrieben aufgebaut ist,
wird selbst, wenn eine CPU 1 zum Ausführen einer
Abfolgeoperation verwendet wird, welche in der Lage ist,
eine Anweisung vorabzurufen, erst nachdem die CPU 1 die
Anweisung gelesen und die Abfolgeoperation dekodiert hat,
die Anweisung von der Abfolgeoperationen-Steuersektion 4
ausgeführt. Somit kann, während die Anweisung von der CPU
1 gelesen wird, der Abfolgeoperationen-Steuerabschnitt 4
die Abfolge-Operationenanweisung nicht ausführen, und
dadurch der CPU 1 nicht erlauben, eine Anweisung zu
lesen, wenn die Abfolgeoperation von dem
Abfolgeoperationen-Steuerabschnitt 4 ausgeführt wird.
Dieses bringt eine längere Abfolgeoperationen-
Verarbeitungszeit mit sich.
Um das obige Problem einer vergrößerten Abfolge
Operations-Verarbeitungszeit zu überwinden, wurde der in
Fig. 11 gezeigte Abfolge-Operationsprozessor
vorgeschlagen, welcher in der japanischen ungeprüften
veröffentlichten Patentanmeldung Nummer 38902/1987
offenbart ist. Dieser Abfolge-Operationsprozessor führt
eine spezielle Operation, das heißt eine
Abfolgeoperation, nur während des Anweisungen-Lesezyklus
aus, wobei die Notwendigkeit, daß CPU 1 beim Ausführen
der speziellen Operation Daten an den Abfolge
Operationsprozessor einstellt, eliminiert wird, wodurch
spezielle Operationen mit hoher Geschwindigkeit möglich
werden. Jedoch führt der Datenprozessor, falls eine
vorabruffähige CPU 11 verwendet wird, um die
Datenverarbeitungsfähigkeit zu verbessern, die spezielle
Operationsverarbeitung für eine vorabgerufene Anweisung
aus, bevor eine gegenwärtige Anweisung von der CPU 11
ausgeführt wird. Daraus resultiert, daß, falls
außergewöhnliche Verarbeitung wie etwa eine Interrupt-
Verarbeitung auftritt, und die CPU 11 davon nach
Abarbeitung solcher außergewöhnlicher Verarbeitung
zurückkehrt, eine spezielle Operationsanweisung, welche
vorabgerufen, jedoch von der CPU 11 als
Nichtausführ-Anweisung nicht ausgeführt worden ist,
nochmal ausgeführt wird, wodurch das Operationsergebnis
falsch wird. Somit darf die CPU 11 in solch einem Fall
nicht sofort zurückkehren. Zudem ist, falls eine
spezielle Operationsanweisung hinter einer CPU Anweisung
innerhalb einem vorabrufbaren Bereich angeordnet ist, und
diese CPU Anweisung solch eine Anweisung ist, die das
Ergebnis der speziellen Operation verwendet, das Ergebnis
der speziellen Operation, welches nach dem Dekodieren der
CPU Anweisung verwendet werden soll, das Ergebnis der
speziellen Operation, die durch Vorabrufen der Anweisung
ausgeführt wird. Somit wird die nachfolgende Anweisung
unvernünftigerweise ausgeführt, bevor die vorangehende
Anweisung ausgeführt wurde. Als Ergebnis kann keine
spezielle Operationsanweisung unmittelbar hinter einer
CPU Anweisung angeordnet werden. Somit müssen die
Anweisungen in solch einer Ordnung angeordnet werden:
eine CPU-Anweisung, eine Dummy-Anweisung und eine spezielle Operationsanweisung, und dieses führt zu einem umfangreichen Anweisungsspeicher.
eine CPU-Anweisung, eine Dummy-Anweisung und eine spezielle Operationsanweisung, und dieses führt zu einem umfangreichen Anweisungsspeicher.
Eine Vorrichtung mit den Merkmalen, die in dem Oberbegriff des
Anspruches 1 bzw. des Anspruches 2 dargelegt werden, ist
bekannt aus DE 31 30 746 C2. Ein Datenprozessor gemäß einem
ersten Aspekt der vorliegenden Erfindung umfaßt die im
Patentanspruch 1 beschriebenen Merkmale. Ein Datenprozessor
gemäß einem zweiten Aspekt der vorliegenden Erfindung umfaßt
die im Patentanspruch 2 wiedergegebenen Merkmale.
Die Erfindung wurde im Hinblick auf solche Umstände gemacht,
und hat als Aufgabe das Vorsehen eines
Datenprozessors, welcher nicht nur in der Lage ist,
gleichzeitig eine spezielle Operationsanweisung zu lesen
und auszuführen, welche eine Abfolgeoperationsanweisung
ist, selbst wenn eine CPU verwendet wird, welche
Anweisungen vorabrufen kann, so daß ihre Daten
verarbeitungsgeschwindigkeit verbessert werden kann,
sondern auch in der Lage ist, die CPU zu veranlassen,
schnell von außergewöhnlicher Verarbeitung wie etwa
Interrupt-Verarbeitung zurückzukehren, wenn die spezielle
Operation ausgeführt wird, ohne dabei das Operations
ergebnis zu verfälschen oder einen großen Anweisungs
speicher zu benötigen.
Der Datenprozessor nach der ersten Ausgestaltung der Erfindung
führt eine spezielle Operationsanweisung gleichzeitig mit
dem Dekodieren und Ausführen einer CPU Anweisung aus, und
verringert dadurch die spezielle Operationsverarbeitungs
zeit.
Zusätzlich kann bei außerordentlicher Verarbeitung, wie
etwa Interrupt-Verarbeitung, der Datenprozessor während
der Ausführung einer speziellen Operation mit seinem
Adressenbeurteilungsschaltkreis und Abfolge
operations-Stapelsteuerschaltkreis leicht von der
außerordentlichen Verarbeitung zurückkehren und somit die
spezielle Operation schnell ausführen.
Beim Ausführen der speziellen Operationsanweisung
veranlaßt der Datenprozessor gemäß der zweiten Ausgestaltung der
Erfindung die CPU, eine spezielle Operationsanweisung,
die in den Datenprozessor gelesen wurde, gleichzeitig
damit auszuführen, daß die CPU veranlaßt wird, eine
Nichtausführungs-Anweisung (NOP) zu dekodieren und
auszuführen, wodurch die spezielle Operations
verarbeitungszeit reduziert wird. Die Adressen
koinzidenz-Beurteilungseinrichtung des Datenprozessors,
welche zu der Zeit, zu welcher der Datenprozessor von der
außerordentlichen Verarbeitung, wie etwa Interrupt-
Verarbeitung, zurückkehrt, keine zusätzliche Verarbeitung
benötigt, gestattet die schnelle und korrekte Ausführung
von speziellen Operationen. Zusätzlich trägt die
Spezielle-Operation-Ungültigerklärungs-Anweisungs-
Beurteilungseinrichtung des Datenprozessors, welche
erlaubt, daß eine spezielle Operationsanweisung
unmittelbar hinter einer CPU Anweisung angeordnet wird,
welche das Ergebnis der speziellen Operation verwendet,
dazu bei, die Anweisungsspeicherkapazität sogar in dem
Fall davor zu bewahren, anzuwachsen, in welchem die CPU
eine große Anzahl von Anweisungen vorabrufen kann.
Weitere Vorteile und Anwendungsmöglichkeiten
der vorliegenden Erfindung ergeben sich aus der
nachfolgenden Beschreibung von Ausführungsbeispielen in
Verbindung mit der Zeichnung.
Fig. 1 ist ein Systemkonfigurationsdiagramm,
welches einen Datenprozessor zeigt, der ein
Ausführungsbeispiel der Erfindung ist;
Fig. 2 und 3 sind Operationsabfolgediagramme zur
Erläuterung des Betriebs des in Fig. 1
gezeigten Datenprozessors;
Fig. 4 ist ein Systemkonfigurationsdiagramm,
welches einen Datenprozessor zeigt, der ein
anderes Ausführungsbeispiel der Erfindung
ist;
Fig. 5 und 7 sind Anweisungsanordnungsdiagramme zum
Erläutern des Betriebs des in Fig. 4
gezeigten Datenprozessors;
Fig. 6 und 8 sind Operationsabfolgediagramme zur
Erläuterung des Betriebs des in Fig. 4
gezeigten Datenprozessors;
Fig. 9 ist ein Systemkonfigurationsdiagramm,
welches ein Beispiel eines
Abfolge-Operationsprozessors zeigt, der ein
herkömmlicher Datenprozessor ist;
Fig. 10 ist ein Operationsabfolgediagramm zum
Erläutern des in Fig. 9 gezeigten
Abfolge-Operationsprozessors;
Fig. 11 ist ein Systemkonfigurationsdiagramm,
welches einen anderen beispielhaften
Abfolge-Operationsprozessor zeigt, der ein
herkömmlicher Datenprozessor ist;
Fig. 12 ist ein Anweisungsanordnungsdiagramm zum
Erläutern des Betriebs des in Fig. 11
gezeigten Abfolge-Operationsprozessors; und
Fig. 13 ist ein Operationsabfolgediagramm zur
Erläuterung des Betriebs des in Fig. 11
gezeigten Abfolge-Operationsprozessors.
In den Figuren bezeichnet das Bezugszeichen 1 eine
zentrale Verarbeitungseinheit (CPU); 2 einen Speicher; 3
einen Dekoder; 4 eine Abfolgeoperations-Steuersektion; 5
ein Dekodiersignal; 6 ein Abfolgeoperationsregister; 7
einen Arbeitsspeicher; 8 einen Adressbus; 9 einen
Datenbus; 11 und 11A bezeichnen CPUs; 12 bezeichnet eine
Bit-Daten-Arithmetik- und Logikeinheit (Bit ALU); 12A
eine Datenverarbeitungssektion; 13 einen Nur-Lese-
Programmspeicher (ROM); 13A einen Anweisungsspeicher; 14
einen Pseudo-Anweisungs-Umwandlungsschaltkreis; 15 eine
Steuersignalleitung; 16 einen ersten Datenbus; 17 einen
zweiten Datenbus; 18 einen RAM; 19 einen Schnitt
stellenschaltkreis (I/F); 20 einen Adressbus; 21 eine
Spezielle-Operations-Anweisungsbeurteilungseinrichtung;
22 ein Spezielle-Operationsanweisungs-Detektiersignal; 23
eine Spezielle-Operations-Ungültigerklärungs
anweisung-Beurteilungseinrichtung; 24 ein Spezielle-
Operations-Ungültigerklärungssignal; 25 ein Spezielle-
Operations-Ungültigerklärungs/Wiederaufnahme-Anweisungs-
Detektiersignal; 26 eine Adressenkoinzidenz-
Beurteilungseinrichtung; 27 ein Adressenkoinzidenzsignal;
28 eine Abfolgesteuerungseinrichtung; 29 ein Daten
selektorsignal; 30 ein Spezielle-Operations-Startsignal;
31 einen Anweisungsdekoder; 32 eine Datenoperations-
Steuersektion; 33 ein Operationsregister; 34 ein
Adressdaten-Aktualisierungssignal; 35 eine RAM-
Schnittstelle; 101 einen Abfolgeoperationsanweisungs-
Detektierschaltkreis; 102 ein Abfolgeoperations
anweisungs- Detektiersignal; 103 einen Datenselektor; 104
eine Nichtausführ-Anweisung; 105 ein Adressen
beurteilungsschaltkreis; 106 ein Adressen-Nicht
koinzidenzsignal; 107 einen Anweisungsdekoder; 108 einen
Abfolgeoperations-Stapelsteuerschaltkreis; 109 einen
Abfolgeoperations-Stapelspeicher; 201 bis 220, 301 bis
315, 401 bis 420 bezeichnen Zyklen; 501 bis 504
bezeichnen Anweisungen; 501a bis 501c, 502a bis 502d,
503a bis 503d, 504a bis 504c bezeichnen Zyklen; 601 bis
607, 610 bis 613, 701 bis 706, 710 bis 714 bezeichnen
Anweisungen; und 601a bis 607a, 610a bis 613a, 601b bis
607b, 610b bis 613b, 601c bis 607c, 610c bis 611c, 602d
bis 607d, 701a bis 706a, 710a bis 714a, 701b bis 705b,
701c bis 705c, 710c bis 712c, 704d bis 705d bezeichnen
Zyklen.
In den Figuren bezeichnen ähnliche Bezugszeichen gleiche
oder ähnliche Teile und Komponenten.
Fig. 1 ist ein System-Konfigurationsdiagramm, welches
einen Datenprozessor zeigt, der ein Ausführungsbeispiel
der Erfindung ist. In der Figur bezeichnet das
Bezugszeichen 1 eine zentrale Verarbeitungseinheit CPU,
die ein vorabruffähiger Mikroprozessor ist. 2 bezeichnet
einen Speicher zum Speichern einer normalen Ausführungs
anweisung oder einer speziellen Operationsanweisung; 101
bezeichnet einen Abfolgeoperationsanweisungs-
Detektierschaltkreis, welcher beurteilt, ob eine von dem
Speicher unter einer von der CPU 1 spezifizierten Adresse
gelesene Anweisung eine normale Ausführungsanweisung oder
eine Abfolgeoperationsanweisung ist oder nicht, und ein
Abfolgeoperationsanweisungs-Detektiersignal 102 erzeugt,
falls die Anweisung befunden wurde, eine Abfolge
Operationsanweisung zu sein; 103 bezeichnet einen
Datenselektor, welcher von der CPU 1 zu empfangende Daten
schaltet, entweder Daten vom Speicher 2 oder eine
Nichtausführ-Anweisung 104, mittels eines Abfolge
Operationsanweisungs-Detektiersignals 102; 105 bezeichnet
einen Adressbeurteilungsschaltkreis zum Beurteilen, wenn
eine Abfolgeoperationsanweisung gelesen wird, ob die
Adresse im Speicher 2, unter welcher die Anweisung
gespeichert ist, mit der Adresse zusammenfällt, unter
welcher eine Abfolgeoperationsanweisung gespeichert
worden ist, welche innerhalb einer vorbestimmten Anzahl
von Malen ausgeführt worden ist; 106 bezeichnet ein
Adressen-Nichtkoinzidenzsignal, welches gültig wird, wenn
die Adressen von dem Adressenbeurteilungsschaltkreis 105
befunden werden, nicht zusammenzufallen; 107 bezeichnet
einen Anweisungsdekoder zum Bestimmen des Typs einer
Abfolgeoperation durch Verriegeln von Daten vom Speicher
2, wenn das Abfolgeoperationsanweisungs-Detektionssignal
102 und das Adressen-Nichtkoinzidenzsignal 106 gültig
werden; 108 bezeichnet einen Abfolgeoperations-
Stapelsteuerschaltkreis, der nicht nur eine Anweisung vom
Dekoder 107, den Inhalt eines Abfolgeoperationsregisters
6, den Inhalt eines Arbeitsspeichers 7 an der von einer
Abfolgeoperationsanweisung spezifizierten Adresse und den
Inhalt einer Adresse des Speichers 2, unter welcher die
Abfolgeoperationsanweisung gespeichert worden ist,
speichert, sondern auch, wie von der CPU 1 angewiesen,
die Anweisung vom Dekoder 107, den Inhalt des Abfolge
operationsregisters 6, den Inhalt des Arbeitsspeichers 7
an der von der Abfolgeoperationsanweisung spezifizierten
Adresse und den Inhalt der Adresse von Speicher 2, unter
welcher die Abfolgeoperationsanweisung gespeichert worden
ist, auf einen Abfolgeoperations-Stapelspeicher 109
rettet oder von diesem zurücklädt, falls die CPU 1
außerordentliche Verarbeitung, wie etwa Interrupt-
Verarbeitung, ausführt oder davon zurückkehrt.
Die Fig. 2 und 3 sind Operationsabfolgediagramme,
welche den Betrieb des in Fig. 1 gezeigten Daten
prozessors erläutern. In den Figuren bezeichnen die
Fig. 301 bis 315 und 401 bis 420 Zyklen in seinem
Operationsprozeß.
Nun wird unter Bezug auf die in den Fig. 2 und 3
gezeigten Operations-Abfolgediagramme ein Betrieb des in
Fig. 1 gezeigten Datenprozessors beschrieben, welcher
ein Ausführungsbeispiel der Erfindung ist. Der Speicher 2
gibt eine Anweisung von einer Adresse aus, welche der
Adresse entspricht, die von CPU 1 gesendet wurde. Die vom
Speicher 2 ausgegebene Anweisung wird mittels des
Abfolgeoperationsanweisungs-Detektierschaltkreises 101
beurteilt, ob sie eine normale Anweisung der CPU 1 ist,
oder eine Abfolgeoperationsanweisung oder nicht. Falls
sie befunden wird, eine normale Ausführungsanweisung zu
sein, wird die Anweisung vom Speicher 2 von dem
Datenselektor 103 ausgewählt, zur CPU 1 gesendet und von
der CPU 1 dekodiert und ausgeführt. Falls sie anderer
seits befunden wird, eine Abfolgeoperationsanweisung zu
sein, wird von dem Datenselektor 103 eine Nichtausführ-
Anweisung 104 gewählt, zur CPU 1 gesendet und von der CPU
1 dekodiert und ausgeführt. In diesem Moment beurteilt
der Adressenbeurteilungsschaltkreis 105, ob die Adresse
im Speicher 2, unter welcher die Anweisung gespeichert
worden ist, mit der Adresse zusammenfällt, unter welcher
eine innerhalb einer vorbestimmten Anzahl von Malen
ausgeführte Abfolgeoperationsanweisung gespeichert worden
ist. Falls die Adressen nicht zusammenfallen, wird die
Anweisung vom Speicher 2 in den Anweisungsdekoder 107 zum
Dekodieren gegeben, und die Anweisungsoperation wird
danach mittels der Abfolgeoperations-Steuersektion 4
ausgeführt. Ihr Ergebnis wird im Arbeits-RAM 7
gespeichert. Zusätzlich werden gleichzeitig mit der
obigen Operation Daten wie etwa die an den Anweisungs
dekoder 107 gegebene Anweisung, der Inhalt des
Abfolgeoperationsregisters 6, der Inhalt der Adresse im
Speicher 2, unter welcher die Abfolgeoperationsanweisung
gespeichert worden ist, und die Daten in dem Arbeits-RAM
7, welche alle im Abfolgeoperations-Stapelsteuer
schaltkreis 108 festgehalten werden, auf den neuesten
Stand gebracht.
Die internen Daten des Abfolgeoperations-Stapelsteuer
schaltkreises 108 werden auf den Abfolgeoperations-
Stapelspeicher 109 gerettet oder von diesem zurück
geladen, dadurch, daß ein Befehl an den Abfolge
operations-Stapelsteuerschaltkreis 108 gesendet wird.
Ein solcher Vorgang wird mittels der Operations-
Abfolgediagramme der Fig. 2 und 3 angedeutet. Eine
normale Ausführungsanweisung wird bei den Zyklen 301 bis
315 von der CPU 1 gelesen, dekodiert und ausgeführt,
während bei den Zyklen 401 bis 420 von dem Datenprozessor
eine Abfolgeoperation ausgeführt wird. Wenn die CPU 1 die
normale Ausführungsanweisung ausführt, wird beim Zyklus
301 die Anweisung vom Speicher 2 gelesen; die Anweisung
wird beim Zyklus 302 dekodiert; die dekodierte Anweisung
wird beim Zyklus 303 ausgeführt.
Bei den Zyklen 305 bis 311 ruft die CPU 1 auch eine
Anweisung vorab und wartet darauf, die Anweisung zu
dekodieren und auszuführen. In diesem Moment stößt die
CPU 1 bei den Zyklen 305, 308 die bereits dekodierte,
jedoch noch nicht ausgeführte Instruktion ab, falls
außerordentliche Verarbeitung wie etwa Interrupt-
Verarbeitung auftritt, wie durch das Bezugszeichen A in
Fig. 2 angezeigt, und liest nach dem Zurückkehren von der
außerordentlichen Verarbeitung die Anweisung noch einmal
und führt sie aus. Beim Ausführen einer Abfolge
operationsanweisung empfängt die CPU 1 die vom Speicher 2
gelesene Anweisung als eine nicht ausführbare Anweisung
104 beim Zyklus 401, dekodiert sie beim Zyklus 403 und
führt sie beim Zyklus 407 aus, so daß die Abfolge
operation vom Datenprozessor beim Zyklus 402 ausgeführt
werden kann, während der Lesezyklus 401 ausgeführt wird.
Ebenso ruft bei den Zyklen 404, 409 die CPU 1 die
nichtausführbaren Instruktionen 104 vorab, und führt zur
gleichen Zeit bei den Zyklen 406, 410 die den
vorabgerufenen Anweisungen entsprechenden Abfolge
operationen aus. Falls in diesem Moment außerordentliche
Verarbeitung wie etwa Interrupt- Verarbeitung auftritt,
wie durch die Bezugszeichen B in Fig. 3 angezeigt, stößt
die CPU 1 die bereits vorabgerufene, jedoch noch nicht
ausgeführte Anweisung beim Zyklus 414 ab, und liest nach
dem Rückkehren von der außerordentlichen Verarbeitung die
Anweisung noch einmal, führt sie aus und empfängt eine
nichtausführbare Anweisung 104. Falls jedoch von dem
Adressenbeurteilungsschaltkreis 105 die Adresse im
Speicher 2 zu dieser Zeit befunden wird, mit der Adresse
zusammenzufallen, unter welcher eine Abfolgeoperations
anweisung gespeichert worden ist, welche innerhalb einer
vorbestimmten Anzahl von Malen ausgeführt worden ist,
wird keine Abfolgeoperation ausgeführt. Ebenso kann in
dem Fall, daß die Abfolgeoperation während außer
ordentlicher Verarbeitung ausgeführt wird, der Zustand
des Systems leicht dadurch gesteuert werden, daß ein
Befehl von der CPU 1 gegeben wird, die Daten in dem
Datenprozessor zu retten oder zurückzuladen.
In einer Adressenkoinzidenz-Beurteilungseinrichtung für
eine Abfolgeoperationsanweisung, welche von dem
Adressenbeurteilungsschaltkreis 105 gemäß dem obigen
Ausführungsbeispiel gebildet wird, wird die der
Abfolgeoperationsanweisung entsprechende Adresse
innerhalb einer vorbestimmten Anzahl von Malen immer
befunden, nicht mit der Adresse im Speicher 2 zusammen
zufallen, falls von der CPU 1 eine initialisierende
Anweisung ausgegeben wurde.
Fig. 4 ist ein Systemkonfigurationsdiagramm, welches
einen Datenprozessor zeigt, welcher ein anderes
Ausführungsbeispiel der Erfindung ist. In der Figur
bezeichnet das Bezugszeichen 11A eine vorabruffähige CPU;
13A bezeichnet einen Anweisungsspeicher zum Speichern
einer normalen Ausführungsanweisung oder einer speziellen
Operationsanweisung; 21 bezeichnet eine Spezielle-
Operationsanweisungs-Beurteilungseinrichtung, welche
beurteilt, ob die vom Anweisungsspeicher 13A unter einer
von der CPU 11A spezifizierten Adresse gelesene Anweisung
eine CPU-Anweisung oder eine spezielle Operations
anweisung ist, und ein Spezielle-Operationsanweisungs-
Detektiersignal 22 ausgibt, falls sie befunden wurde,
eine spezielle Operationsanweisung zu sein; 23 bezeichnet
eine Spezielle-Operations-Ungültigerklärungsanweisung-
Beurteilungseinrichtung, welche beurteilt, ob die von dem
Anweisungsspeicher 13A unter einer von der CPU 11A
spezifizierten Adresse gelesene Anweisung eine
spezifizierte spezielle Operations-Ungültigerklärungs
anweisung ist, und auf die Feststellung hin, daß die
Anweisung eine Spezielle-Operations-Ungültigerklärungs
anweisung ist, ein Rücksetzbefehl mittels der CPU 11A
ausgibt, oder ein Spezielle-Operations-Ungültig
erklärungssignal 24 ausgibt, solange, bis die CPU 1 von
dem Speicher 13A eine Spezielle-Operations-
Wiederaufnahmeanweisung liest, und ein Spezielle-
Operations-Ungültigerklärungs/Wiederaufnahme
anweisungs-Detektiersignal 25 ausgibt, falls die von dem
Anweisungsspeicher 13A gelesene Anweisung eine Spezielle-
Operations-Ungültigerklärungsanweisung oder eine
Spezielle-Operations-Wiederaufnahmeanweisung ist; 26
bezeichnet eine Adressenkoinzidenz-Beurteilungs
einrichtung, welche beurteilt, ob eine einer gelesenen
speziellen Operationsanweisung entsprechende Adresse mit
der Adresse zusammenfällt, unter welcher eine spezielle
Operationsanweisung gespeichert worden ist, welche
innerhalb einer vorbestimmten Anzahl von Malen ausgeführt
worden ist und für den Fall, daß die Adressen
zusammenfallen, ein Adressenkoinzidenzsignal 27 ausgibt;
28 bezeichnet eine Abfolgesteuereinrichtung, welche für
den Fall, daß die mittels dem Spezielle-Operations
anweisungs-Detektiersignal 22, dem Spezielle-Operations-
Ungültigerklärungssignal 24, dem Spezielle-Operations-
Ungültigerklärung/Wiederaufnahme-Signal 25 und dem
Adressenkoinzidenzsignal 27 gelesene Anweisung befunden
wird, eine normale Ausführungsanweisung zu sein, die CPU
11A veranlaßt, die normale Ausführungsanweisung zu lesen,
zu dekodieren und auszuführen, und für den Fall, daß die
Anweisung befunden wird, eine spezielle Operations
anweisung zu sein, ein Selektorsignal 29 an einen
Pseudo-Anweisungs-Umwandlungsschaltkreis 14 ausgibt, um
die CPU 11A zu veranlassen, eine NOP-Anweisung zu lesen,
und für den Fall, daß das Spezielle-Operationsanweisungs-
Detektiersignal 22 gültig ist, und sowohl das Spezielle-
Operations-Ungültigerklärungssignal 24 als auch das
Adressenkoinzidenzsignal 27 ungültig sind, Daten
verarbeitung ausführt durch Erzeugen eines Spezielle-
Operations-Startsignales 30 in einem Datenverarbeitungs
abschnitt 12A; 31 bezeichnet einen Anweisungsdekoder,
welcher von dem Spezielle-Operations-Startsignal 30
veranlaßt wird, eine von dem Anweisungsspeicher 13A
gelesene Anweisung zu dekodieren, und eine Ausführungs
anweisung für einen Datenoperations- Steuerabschnitt 32
ausgibt; 33 bezeichnet ein Operationsregister, welches
innerhalb der Datenoperations-Steuersektion 32 unter
gebracht ist, um ein Operationsergebnis festzuhalten; 18
bezeichnet einen RAM, in welchem Daten gespeichert sind,
die zum Ausführen einer speziellen Operationsanweisung
verwendet werden; 34 bezeichnet ein Adressdaten-
Aktualisierungssignal, welches von der Abfolge
steuerungseinrichtung 28 geliefert wird, eine Adresse,
die in der Adressenkoinzidenz- Beurteilungseinrichtung 26
gespeichert ist, zu aktualisieren, wenn eine spezielle
Operation ausgeführt worden ist; und 35 bezeichnet eine
RAM-Schnittstelle, welche sowohl die CPU 11A als auch die
Datenverarbeitungssektion 12A in die Lage versetzt, auf
den RAM 18 Datenlese- und Schreibzugriff zu haben. Die
Fig. 5 und 7 sind Anweisungs-Anordnungsdiagramme,
welche den Betrieb des in Fig. 4 gezeigten Daten
prozessors erläutern; und die Fig. 6 und 8 sind
Operationsabfolgediagramme, welche den Betrieb desselben
Datenprozessors erläutern. In den Figuren bezeichnen die
Bezugszeichen 601 bis 607, 610 bis 613, 701 bis 706, 710
bis 714 Anweisungen; und 601a bis 607a, 610a bis 613a,
601b bis 607b, 610b bis 613b, 601c bis 607c, 610c bis
611c, 602d bis 607d, 701a bis 706a, 710a bis 714a, 701b
bis 705b, 701c bis 705c, 710c bis 712c und 704d bis 705d
Zyklen in seinem Operationsprozeß.
Nun wird ein Betrieb des in Fig. 4 gezeigten Daten
prozessors, der ein anderes Ausführungsbeispiel der
Erfindung ist, beschrieben. Anweisungsspeicher 13A gibt
eine Anweisung unter einer Adresse aus, welche der von
der CPU 11A gesendeten Adresse entspricht. Die von dem
Anweisungsspeicher 13A ausgegebene Anweisung wird von der
Spezielle-Operations-Anweisungsbeurteilungseinrichtung 21
beurteilt, ob sie eine CPU-Anweisung oder eine spezielle
Operationsanweisung ist. Falls befunden wird, daß sie
eine CPU-Anweisung ist, wird von der Abfolgesteuerungs
einrichtung 28 weder ein Spezielle-Operations-
Anweisungsdetektiersignal 22 noch ein Datenselektorsignal
29 ausgegeben, und demzufolge wird die von dem
Anweisungsspeicher 13A gelieferte Anweisung von dem
Pseudo-Anweisungsumwandlungsschaltkreis 14 ausgewählt und
auf die CPU 11A gegeben. Die CPU 11A liest diese
Anweisung, dekodiert sie und führt sie aus. Falls die
Anweisung befunden wird, eine spezielle Operations
anweisung zu sein, wird das Spezielle-Operations
anweisungs-Detektiersignal 22 ausgegeben, wodurch von der
Abfolgesteuerungseinrichtung 28 ein Datenselektorsignal
29 geliefert wird, und demzufolge von dem Pseudo-
Anweisungsumwandlungsschaltkreis 14 eine NOP-Anweisung
gewählt und an die CPU 11A geliefert wird. Die CPU 11A
liest die NOP-Anweisung, dekodiert sie und führt sie aus.
In diesem Moment beurteilt die Adressenkoinzidenz-
Beurteilungseinrichtung 26, ob die Adresse, unter welcher
die spezielle Operationsanweisung gespeichert worden ist,
mit der Adresse zusammenfällt, unter welcher eine
spezielle Operationsanweisung gespeichert worden ist,
welche innerhalb einer vorbestimmten Anzahl von Malen
ausgeführt worden ist, oder nicht, und für den Fall, daß
die Adressen zusammenfallen, wird ein Adressenkoinzidenz
signal 27 ausgegeben. Die Abfolgesteuerungseinrichtung 28
gibt ein Spezielle-Operations-Startsignal 30 an die
Datenverarbeitungssektion 12A, wenn das Spezielle-
Operationsanweisungs-Detektiersignal 22 gültig ist und
sowohl das Adressenkoinzidenzsignal 27 als auch das
Spezielle-Operations-Ungültigerklärungssignal 24 ungültig
sind. Die Anweisung vom Anweisungsspeicher 13A wird
empfangen und von dem Anweisungsdekoder 31 dekodiert, und
danach führt die Datenoperations-Steuersektion 32 die
Datenverarbeitung aus, deren Ergebnis im RAM 18 über die
RAM-Schnittstelle 35, falls nötig, gespeichert wird. Die
Abfolgesteuerungseinrichtung 28 liefert auch das
Adressdaten-Aktualisierungssignal 34 an die Adressen
koinzidenz-Beurteilungseinrichtung 26, und aktualisiert
die Adresse, unter welcher eine spezielle Operations
anweisung gespeichert worden ist, die innerhalb einer
vorbestimmten Anzahl von Malen ausgeführt worden ist.
Falls die von dem Anweisungsspeicher 13A gelesene
Anweisung befunden wird, eine Spezielle-Operations-
Ungültigerklärungsanweisung zu sein, wird ein Spezielle-
Operations-Ungültigerklärungs/Wiederaufnahme-Anweisungs
detektiersignal 25 ausgegeben, welches wiederum
veranlaßt, daß von der Abfolgesteuerungseinrichtung 28
ein Datenselektorsignal 29 an den Pseudo-Anweisungs
umwandlungsschaltkreis 14 gegeben wird. Als Ergebnis
empfängt die CPU 11A von dem Pseudo-Anweisungs
umwandlungsschaltkreis 14 eine NOP-Anweisung, dekodiert
sie und führt sie aus. Dann wird, falls von dem
Anweisungsspeicher 13a eine spezielle Operationsanweisung
gelesen wird, von der Spezielle-Operations-Anweisungs
beurteilungseinrichtung 21 ein Spezielle-Operations-
Anweisungsdetektiersignal 22 ausgegeben. Als Ergebnis
empfängt die CPU 11A eine NOP-Anweisung, dekodiert sie
und führt sie aus. Jedoch gibt die Abfolgesteuerungs
einrichtung 28 weder ein Spezielle-Operations-Startsignal
30 noch ein Adressdaten- Aktualisierungssignal 34 aus,
weil die CPU 11A ein Spezielle-Operations-Ungültig
erklärungssignal 24 empfangen hat. Dieses bewirkt, daß
die Inhalte des Operationsregisters 33 und die
Adressenkoinzidenz-Beurteilungseinrichtung 26 unverändert
bleiben, so daß keine spezielle Operation ausgeführt
wird. Dann wird das Spezielle-Operations-Ungültig
erklärungssignal 24 rückgesetzt, entweder durch die CPU
11, welche die Spezielle-Operations-Wiederaufnahme
anweisung vom Speicher 13A liest oder direkt ein Kommando
an die Spezielle-Operations-Ungültigerklärungs-
Anweisungs-Beurteilungseinrichtung 23 zum Rücksetzen des
Spezielle-Operations-Ungültigerklärungssignales 24
ausgibt, und als Ergebnis wird die spezielle Operations
anweisung, wenn sie danach aus dem Anweisungsspeicher 13A
gelesen wird, normal ausgeführt.
Die obige Operation wird unter Bezugnahme auf die
Anweisungs-Anordnungsdiagramme und die Operations-
Abfolgediagramme, die in den Fig. 5 bis 8 gezeigt
sind, beschrieben. In Fig. 5 bezeichnet das
Bezugszeichen 601 eine CPU-Anweisung; 610 bis 613
bezeichnen CPU-Anweisungen während Interrupt-
Verarbeitung; und 602 bis 607 bezeichnen spezielle
Operationsanweisungen. Die obige Operation wird unter
Bezug auf das Operations-Abfolgediagramm beschrieben,
welches in Fig. 6 gezeigt ist. Die CPU 11A liest eine
Anweisung vom Anweisungsspeicher 13A beim Lesezyklus
601a, dekodiert sie beim Zyklus 601b und führt sie beim
Zyklus 601c aus. In diesem Moment, gleichzeitig mit dem
Dekodieren der beim Zyklus 601b gelesenen Anweisung,
liest die CPU 11A beim Zyklus 602a eine spezielle
Operationsanweisung; gleichzeitig mit der Ausführung der
beim Zyklus 601c gelesenen Anweisung liest die CPU 11A
beim Zyklus 603a eine Anweisung, dekodiert sie beim
Zyklus 602b, und die Datenverarbeitungssektion 12A führt
beim Zyklus 602d die Datenverarbeitung aus. Dement
sprechend wird die CPU 11A durch Lesen und Dekodieren
einer nächsten Anweisung, während eine gelesene Anweisung
ausgeführt wird, bereitgehalten, nach Abschluß der
gelesenen Anweisung die nächste Anweisung auszuführen. In
diesem Moment stößt die CPU 11A für den Fall, daß außer
ordentliche Verarbeitung wie etwa Interrupt-Verarbeitung
auftritt, wie durch die Bezugszeichen A in Fig. 6
angezeigt, nach dem Ausführen einer NOP-Anweisung beim
Zyklus 603c die Anweisung und die zuvor bei den Zyklen
604b bzw. 605a gelesenen bzw. dekodierten Daten ab, und
führt die Interrupt- Verarbeitungszyklen 610 bis 613 aus.
Dann liest die CPU 11A, wenn sie von den obigen
Interrupt-Verarbeitungszyklen zurückgekehrt ist, wieder
eine Anweisung 604, welche eine der Anweisung 603, die
ausgeführt wurde, bevor in die Interrupt-Verarbeitungs
zyklen eingetreten wurde, nächste Anweisung ist. Um die
Anweisung 604 zu dekodieren und auszuführen, führt die
CPU 11A Nach-Interrupt-Verarbeitung aus, wobei sie die
Zyklen 604a und 605a wieder liest, und dadurch veranlaßt,
daß das Spezielle-Operations-Anweisungsdetektiersignal
22 geliefert wird, und daraufhin eine NOP-Anweisung an
die CPU 11A geliefert wird. Jedoch sind die den
Anweisungen 604, 605 entsprechenden Adressen in der
Adressenkoinzidenz- Beurteilungseinrichtung 26
gespeichert, weil die Spezielle-Operations-Zyklen 604d,
605d, welche den Zyklen 604a, 605a entsprechen, vor der
Interrupt-Verarbeitung bereits ausgeführt wurden, und
somit wird das Adressenkoinzidenzsignal 27 bei einem
Lesezyklus, wenn die CPU 11A von der Interrupt-
Verarbeitung zurückgekehrt ist, an die Abfolge
steuerungseinrichtung 28 geliefert. Als Ergebnis werden
weder das Spezielle-Operations-Startsignal 30 noch das
Adressdaten-Aktualisierungssignal 34 ausgegeben, wodurch
niemals bewirkt wird, daß dieselbe spezielle Operation
(Zyklen 604d, 605d) wieder ausgeführt wird. Dann sind
bezüglich der speziellen Operationsanweisungen bei den
Zyklen 605, 607 keine Adressdaten in der Adressen
koinzidenz-Beurteilungseinrichtung 26 gespeichert. Dieses
bewirkt, daß kein Adressenkoinzidenzsignal 27 ausgegeben
wird, und gestattet somit, daß die spezielle Operation
ausgeführt wird. Wie oben beschrieben, werden selbst,
wenn außerordentliche Verarbeitung wie etwa Interrupt-
Verarbeitung auftritt, während eine spezielle Operation
ausgeführt wird, die speziellen Operationsanweisungen 602
bis 607 nur einmal ausgeführt, so daß deren Operations
ergebnis keinesfalls falsch wird. Zusätzlich besteht
keine Notwendigkeit für eine Prozedur, um die CPU 11A zu
veranlassen, von der außerordentlichen Verarbeitung
zurückzukehren.
Nun wird unter Bezugnahme auf die Fig. 7 bis 8 ein
Fall beschrieben, in welchem eine spezielle Operations
anweisung hinter einer CPU-Anweisung angeordnet ist, die
das Ergebnis der speziellen Operation verwendet. In Fig.
7 bezeichnen die Bezugszeichen 701, 706 CPU-Anweisungen
an die CPU 11A; 702 bezeichnet eine Anweisung zum
Ungültigerklären einer speziellen Operation; 703
bezeichnet eine Unterroutinen-Anweisung (SUB-Anweisung),
welche der CPU 11A erlaubt, das Ergebnis der speziellen
Operation direkt zu verwenden; 704 und 705 bezeichnen
spezielle Operationsanweisungen, welche auf die Sub-
Anweisung 703 folgend angeordnet sind; 710 bezeichnet
eine CPU-Anweisung innerhalb einer Unterroutine; 711
bezeichnet eine Spezielle-Operations-Wiederaufnahme
anweisung; und 712 bezeichnet eine Rückkehranweisung
(RET-Anweisung) von der Unterroutine. Die obige Daten
verarbeitungsoperation wird unter Bezugnahme auf das in
Fig. 8 gezeigte Operationsabfolgediagramm beschrieben.
Wie schon oben beschrieben, liest die CPU 11A beim Zyklus
701a eine CPU-Anweisung, dekodiert sie beim Zyklus 701b
und führt sie beim Zyklus 701c aus. Andererseits liest
die CPU 11A von dem Anweisungsspeicher 13A gleichzeitig
mit dem Dekodieren der CPU-Anweisung bei 701b eine
Spezielle- Operations-Ungültigerklärungsanweisung 702. In
diesem Moment liefert die Spezielle-Operations-Ungültig
erklärungsanweisungs-Beurteilungseinrichtung 23 ein
Spezielle-Operations-Ungültigerklärungs/Wiederaufnahme
anweisungs-Detektiersignal 25 und ein Spezielle-
Operations-Ungültigerklärungssignal 24 an die Abfolge
steuerungseinrichtung 28. Die Abfolgesteuerungs
einrichtung 28 liefert ein Datenselektorsignal 29 an den
PSeudo-Anweisungs-Umwandlungsschaltkreis 14 und eine
NOP-Anweisung an die CPU 11A. Dann liest die CPU 11A
während des Ausführens der Anweisung beim Zyklus 701c
eine Sub-Anweisung 703 beim Zyklus 703a und dekodiert
gleichzeitig damit die NOP-Anweisung beim Zyklus 702b.
Während beim Zyklus 702c die NOP-Anweisung ausgeführt
wird, liest die CPU 11A beim Zyklus 704a eine spezielle
Operationsanweisung. In diesem Moment liefert die
Spezielle-Operationsanweisungs-Beurteilungseinrichtung 21
ein Spezielle-Operationsanweisungs-Detektiersignal 22 an
die Abfolgesteuerungseinrichtung 28, und diese veranlaßt,
daß das Datenselektorsignal 29 an den Pseudo-Anweisungs-
Umwandlungsschaltkreis 14 geliefert wird, so daß die CPU
11A die NOP-Anweisung liest. Jedoch werden, weil das
Spezielle-Operations-Ungültigerklärungssignal 24 an die
Abfolgesteuerungseinrichtung 28 geliefert worden ist,
weder ein Spezielle-Operations-Startsignal 30 noch ein
Adressdaten-Aktualisierungssignal 24 ausgegeben, und
dementsprechend verbleibt das Ergebnis der speziellen
Operation und der Inhalt der Adressenkoinzidenz-
Beurteilungseinrichtung 26 unverändert. Diese Operation
wird in gleicher Weise auf den Zyklus 705a angewandt, bei
welchem eine Anweisung für die Ausführung des Zyklus 703c
gelesen wird. Dann tritt die CPU 11A durch Ausführen des
Zyklus 703c in einen Unterroutinen-Verarbeitungszyklus
ein, verwendet das Ergebnis der speziellen Operation,
während eine auf die CPU-Anweisung 710 folgende Anweisung
ausgeführt wird und liest dann bei einem Spezielle-
Operations-Wiederaufnahmeanweisungs-Lesezyklus eine
Spezielle-Operations-Wiederaufnahmeanweisung 711, um
dadurch die Spezielle-Operations-Ungültig
erklärungsanweisungs-Beurteilungseinrichtung 23 zu
veranlassen, das Spezielle-Operations-Ungültig
erklärungssignal 24 ungültig zu machen, und das
Spezielle-Operations-Ungültigerklärungs/Wieder
aufnahmeanweisungs-Detektiersignal 25 gültig zu machen,
so daß das Spezielle-Operations-Ungültigerklärungs/
Wiederaufnahmeanweisungs-Detektiersignal 25 an die
Abfolgesteuerungseinrichtung 28 geliefert wird. Als
Ergebnis liest die CPU 11A eine NOP-Anweisung und
bereitet sich danach vor, eine spezielle Operation
auszuführen, wenn ein Spezielle-Operationsanweisungs-
Lesezyklus kommt. Falls die CPU 11A durch den Zyklus 712b
zum Dekodieren der Ret-Anweisung 712 und durch den Zyklus 712c
zum Ausführen von dieser von der Unterroutinen-
Verarbeitung zurückgekehrt ist, liest die CPU 11A die
spezielle Operationsanweisung 704 nochmals beim Zyklus
704a. In diesem Moment wird, wie schon oben beschrieben
wurde, ein Spezielle-Operationsanweisungs-Detektiersignal
22 auf die Abfolgesteuerungseinrichtung 28 gegeben, und
kein Spezielle-Operations-Ungültigerklärungssignal 24
wird an diese geliefert. Als Ergebnis empfängt die CPU
11A nicht nur eine NOP-Anweisung, und wird veranlaßt, sie
zu lesen und auszuführen, sondern führt auch die
spezielle Operation mit dem Spezielle-Operations-
Startsignal 30, welches an die Datenverarbeitungssektion
12A geliefert wird, aus. Ebenso aktualisiert die CPU 11A
auf die Ausgabe eines Adressdaten-Aktualisierungssignals
34 an die Adressenkoinzidenz-Beurteilungseinrichtung 26
hin die Adressdaten in der Adressenkoinzidenz-Beur
teilungseinrichtung 26. Ferner kann eine spezielle
Operationsanweisung 705 auch mit hohen Geschwindigkeiten
ausgeführt werden, ohne den Anweisungsspeicher 13A zu
vergrößern, dadurch, daß die spezielle Operation wie oben
beschrieben ausgeführt wird.
Wie auf den vorangehenden Seiten beschrieben, umfaßt der
beschriebene Datenprozessor zusammenfassend die CPU, welche nicht
nur in der Lage ist, in Übereinstimmung mit einem
Maschinenzyklus eine Anweisung von einem Speicher zu
lesen, zu dekodieren und auszuführen, sondern auch, eine
Anweisung vorabzurufen; den Dekoder zum Beurteilen, ob
die von dem Speicher durch die CPU 1 gelesene Anweisung
eine normale Ausführungsanweisung oder eine spezielle
Operationsanweisung ist; den Adressenbeurteilungs
schaltkreis, welcher, falls die Anweisung befunden wird,
eine normale Ausführungsanweisung zu sein, die CPU
veranlaßt, die Anweisung kontinuierlich zu lesen, zu
dekodieren und auszuführen, und falls die Anweisung
befunden wird, eine spezielle Operationsanweisung zu
sein, nicht nur die CPU veranlaßt, eine Nichtausführ-
Anweisung zu lesen und auszuführen, sondern auch
beurteilt, ob die spezielle Operation ausgeführt wird,
dadurch, daß die Adresse in dem Speicher, unter welcher
die spezielle Operationsanweisung gespeichert worden ist,
beurteilt wird. Falls die spezielle Operationsanweisung
von dem Adressenbeurteilungsschaltkreis befunden wird,
ausführbar zu sein, veranlaßt der Datenprozessor die CPU,
die spezielle Operationsanweisung zu dekodieren und
auszuführen, und die Daten in dem Datenprozessor werden
entweder vom Speicher gerettet oder in diesen zurück
geladen. Dieses erlaubt der CPU, gleichzeitig eine
Anweisung zu lesen und eine spezielle Operation
auszuführen, wodurch die Verarbeitungszeit für die
spezielle Operation reduziert wird. Zusätzlich kann für
den Fall außerordentlicher Verarbeitung wie etwa
Interrupt-Verarbeitung die spezielle Operation mit hoher
Geschwindigkeit ausgeführt werden, ohne daß ein Befehl
oder ähnliches ausgegeben werden muß, falls die spezielle
Operation nicht innerhalb der außerordentlichen
Verarbeitung ausgeführt wird.
Ebenso wird ein Datenprozessor beschrieben
welcher umfaßt: die zentrale
Verarbeitungseinheit, weiche nicht nur in der Lage ist,
eine in Übereinstimmung mit einem Maschinenzyklus von
einem Speicher gelesene Anweisung zu lesen, zu dekodieren
und auszuführen, sondern auch, eine Anweisung vorab
zurufen; die Spezielle-Operationsanweisungs-Beurteilungs
einrichtung zum Beurteilen, ob die von dem Speicher
gelesene Anweisung eine normale Ausführungsanweisung oder
eine spezielle Operationsanweisung ist, eine Spezielle-
Operations-Ungültigerklärungsanweisungs-Beurteilungseinrich
tung zum Beurteilen, ob die von dem Speicher gelesene
Anweisung eine spezifizierte Spezielle-Operations-
Ungültigerklärungsanweisung ist oder nicht, wobei die
Spezielle-Operations-Ungültigerklärungsanweisungs-
Beurteilungseinrichtung die zentrale Verarbeitungs
einrichtung veranlaßt, auf den Befund hin, daß die
Anweisung eine Spezielle-Operations-Ungültigerklärungs
anweisung ist, einen Rücksetzbefehl auszugeben, oder ein
Spezielle-Operations-Ungültigerklärungssignal festhält,
bis die zentrale Verarbeitungseinheit eine Spezielle-
Operations-Wiederaufnahmeanweisung von dem Speicher
liest; die Adressenkoinzidenz-Beurteilungseinrichtung zum
Beurteilen, ob die Adresse im Speicher, unter welcher die
spezielle Operationsanweisung gespeichert worden ist, mit
der Adresse zusammenfällt, unter welcher eine spezielle
Operationsanweisung gespeichert worden ist, welche
innerhalb einer vorbestimmten Anzahl von Malen ausgeführt
worden ist, oder nicht, und zum Ausgeben eines
Adressenkoinzidenzsignales, wenn die Adressen zusammen
fallen, falls die von dem Speicher gelesene Anweisung von
der Spezielle-Operationsanweisungs-Beurteilungs
einrichtung, der Spezielle-Operations-Ungültigerklärungs
anweisungs-Beurteilungseinrichtung und der Adressen
koinzidenz-Beurteilungseinrichtung befunden wird, eine
normale Ausführungsanweisung zu sein, veranlaßt der
Datenprozessor die zentrale Verarbeitungseinheit, die
normale Ausführungsanweisung kontinuierlich zu lesen, zu
dekodieren und auszuführen. Falls die spezielle
Operationsanweisung befunden wird, entweder eine
Spezielle-Operations-Ungültigerklärungsanweisung oder
eine Spezielle-Operations-Wiederaufnahmeanweisung zu
sein, veranlaßt der Datenprozessor die zentrale
Verarbeitungseinheit, eine Nichtausführ-Anweisung zu
lesen und auszuführen; falls das Spezielle-Operations-
Ungültigerklärungssignal oder das Adressenkoinzidenz
signal gültig sind, veranlaßt er die zentrale
Verarbeitungseinheit, die spezielle Operation nicht
auszuführen. Falls das Spezielle-Operationsanweisungs-
Detektiersignal gültig ist, und sowohl das Spezielle-
Operations-Ungültigkerklärungssignal und das Adressen
koinzidenzsignal ungültig sind, veranlaßt der Daten
prozessor die zentrale Verarbeitungseinheit, die
spezielle Operation auszuführen. Deshalb kann die
spezielle Operation für den Fall, daß außerordentliche
Verarbeitung wie etwa Interrupt-Verarbeitung auftritt,
während die spezielle Operation ausgeführt wird, schnell
und mit Leichtigkeit ausgeführt werden, wodurch es
möglich wird, daß der Datenprozessor mit einem kleinen
Anweisungsspeicher versehen wird.
Claims (8)
1. Datenprozessor mit:
einer zentralen Verarbeitungseinheit (1), welche in der Lage ist, von einem Speicher (2) in Übereinstimmung mit einem Maschinenzyklus Anweisungen zu lesen, zu dekodieren und auszuführen, und wenigstens eine Anweisung vorabzurufen, umfassend:
einer zentralen Verarbeitungseinheit (1), welche in der Lage ist, von einem Speicher (2) in Übereinstimmung mit einem Maschinenzyklus Anweisungen zu lesen, zu dekodieren und auszuführen, und wenigstens eine Anweisung vorabzurufen, umfassend:
- - eine Beurteilungseinrichtung (101) zum Beurteilen, ob eine von dem Speicher (2) gelesene Anweisung eine normale Ausführungsanweisung oder eine spezielle Operationsanweisung ist, und Ausgeben eines Operationsanweisungs-Erkennungssignals (102), wenn eine spezielle Operationsanweisung erkannt wird;
- - eine Steuerungseinrichtung (103,104), welche je nach Vorliegen des von der Beurteilungseinrichtung (101) ausgebenen Operationsanweisungs-Erkennungssignal (102)
die zentrale Verarbeitungseinheit (1) veranlaßt,
eine normale Ausführungsanweisung als nächste
Anweisung zu lesen, zu dekodieren und
auszuführen wenn die vom Speicher (2) gelesene
Anweisung von der Beurteilungseinrichtung (101)
als normale Ausführungsanweisung bestimmt wird;
und
die zentrale Verarbeitungseinheit (1) veranlaßt, als nächste Anweisung eine Nichtausführ- Anweisung zu lesen, zu dekodieren und auszuführen wenn die vom Speicher (2) gelesene Anweisung von der Beurteilungseinrichtung (101) als spezielle Operationsanweisung bestimmt wird, und
die zentrale Verarbeitungseinheit (1) veranlaßt, als nächste Anweisung eine Nichtausführ- Anweisung zu lesen, zu dekodieren und auszuführen wenn die vom Speicher (2) gelesene Anweisung von der Beurteilungseinrichtung (101) als spezielle Operationsanweisung bestimmt wird, und
- - eine spezielle Verarbeitungseinheit (4, 6, 7) zur Ausführung von speziellen Operationsanweisungen,
gekennzeichnet durch
- - eine Adressen-Beurteilungseinrichtung (105) zur Beurteilung, wenn eine spezielle Operationsanweisung gelesen wird, ob eine Adresse an dem Speicher (2), unter welcher die spezielle Operationsanweisung gespeichert worden ist, mit einer Adresse zusammenfällt, unter welcher eine spezielle Operationsanweisung gespeichert worden ist, welche innerhalb eines Vorabrufbereichs ausgeführt worden ist, und zum Ausgeben eines Nichtübereinstimmungssignals (106), falls die Adressen nicht zusammenfallen;
- - eine Anweisungsdekoder-Einheit (107) zur Dekodierung einer aus dem Speicher (2) gelesenen speziellen Operationsanweisung und Anweisung an die spezielle Verarbeitungseinheit, (4, 6, 7) die dekodierte spezielle Operationsanweisung auszuführen, dann, wenn sowohl das Operationsanweisungs-Erkennungssignal (102) als auch das Nichtübereinstimmungssignal (106) vorliegen; und
- - eine Datensteuereinrichtung (108) und eine Datenspeichereinheit (109), wobei die Datensteuereinrichtung (108) die spezielle Operationsanweisung betreffende Daten auf Anweisung der zentralen Verarbeitungseinheit (1) in der Datenspeichereinheit (109) speichert oder aus der Datenspeichereinheit (109) zurücklädt, wobei die zentrale Verarbeitungseinheit (1) solche Anweisungen ausgibt, wenn sie eine außerordentliche Verarbeitung ausführt oder davon zurückkehrt.
2. Datenprozessor mit:
einer zentralen Verarbeitungseinheit (11A), welche in der Lage ist, von einem Speicher (13A) in Übereinstimmung mit einem Maschinenzyklus Anweisungen zu lesen, zu dekodieren und auszuführen, und wenigstens eine Anweisung vorabzurufen, umfassend:
einer zentralen Verarbeitungseinheit (11A), welche in der Lage ist, von einem Speicher (13A) in Übereinstimmung mit einem Maschinenzyklus Anweisungen zu lesen, zu dekodieren und auszuführen, und wenigstens eine Anweisung vorabzurufen, umfassend:
- - eine erste Beurteilungseinrichtung (21) zur Beurteilung, ob eine von dem Speicher (2) gelesene Anweisung eine normale Ausführungsanweisung oder eine spezielle Operationsanweisung ist, und Ausgeben eines Erkennungssignals (22) für spezielle Operationsanweisungen wenn eine spezielle Operationsanweisung gelesen wird;
- - eine Steuerungseinrichtung (14), welche
die zentrale Verarbeitungseinheit (11A)
veranlaßt, eine normale Ausführungsanweisung als
nächste Anweisung zu lesen, zu dekodieren und
auszuführen oder bei Vorliegen eines
Datenselektorsignals (29) die zentrale
Verarbeitungseinheit (11A) veranlaßt, als
nächste Anweisung eine Nichtausführ-Anweisung zu
lesen, zu dekodieren und auszuführen, und
- - eine spezielle Verarbeitungseinheit (32, 33) zur Ausführung von speziellen Operationsanweisungen,
gekennzeichnet durch
- - eine Adressen-Beurteilungseinrichtung (26) zur Beurteilung, wenn eine spezielle Operationsanweisung gelesen wird, ob eine Adresse in dem Speicher (13A), unter welcher die spezielle Operationsanweisung gespeichert worden ist, mit einer Adresse zusammenfällt, unter welcher eine spezielle Operationsanweisung gespeichert worden ist, welche innerhalb eines Vorabrufbereichs ausgeführt worden ist, und zum Ausgeben eines Übereinstimmungssignals (27), falls die Adressen zusammenfallen;
- - eine zweite Beurteilungseinrichtung (23) zur Beurteilung, ob eine von dem Speicher (13A) gelesene Anweisung eine Ungültigkeitsanweisung oder eine Wiederaufnahmeanweisung für spezielle Operationsanweisungen ist,
zur Ausgabe eines Ungültigkeitssignales (24) bei
Vorliegen einer Ungültigkeitsanweisung für spezielle
Operationsanweisungen solange bis bei einem späteren
Lesevorgang der zentralen Verarbeitungseinheit (11A)
die zweite Beurteilungseinrichtung (23) eine
Wiederaufnahmeanweisung für spezielle
Operationsanweisungen feststellt, und
zur Ausgabe eines Erfassungssignales (25) wenn die zweite Beurteilungseinrichtung (23) feststellt, daß die vom Speicher (13A) gelesene Anweisung eine Ungültigkeitsanweisung oder eine Wiederaufnahmeanweisung ist;
zur Ausgabe eines Erfassungssignales (25) wenn die zweite Beurteilungseinrichtung (23) feststellt, daß die vom Speicher (13A) gelesene Anweisung eine Ungültigkeitsanweisung oder eine Wiederaufnahmeanweisung ist;
- - eine Ablaufsteuereinrichtung (28),
zur Steuerung der Steuerungseinrichtung (14), wobei
die Ablaufsteuereinrichtung (28) ein
Datenselektorsignal (29) an die Steuerungseinrichtung
(14) ausgibt, wenn die Ablaufsteuerung (28) ein
Operationsanweisungs-Erkennungssignal (22) oder ein
Erfassungssignal (25) empfängt, und
zur Steuerung einer Anweisungsdekoder-Einrichtung (31) mittels eines Spezielle-Operations-Startsignales (30), wobei das Spezielle-Operations-Startsignal (30) dann ausgegeben wird, wenn die Ablaufsteuereinrichtung (28) das Operationsanweisungs-Erkennungssignal (22) empfängt und gleichzeitig kein Ungültigkeitssignal (24) oder Übereinstimmungssignal (27) empfängt; und
zur Steuerung einer Anweisungsdekoder-Einrichtung (31) mittels eines Spezielle-Operations-Startsignales (30), wobei das Spezielle-Operations-Startsignal (30) dann ausgegeben wird, wenn die Ablaufsteuereinrichtung (28) das Operationsanweisungs-Erkennungssignal (22) empfängt und gleichzeitig kein Ungültigkeitssignal (24) oder Übereinstimmungssignal (27) empfängt; und
- - eine Anweisungsdekoder-Einrichtung (31), zur Dekodierung und Weiterleitung einer speziellen Operationsanweisung an die spezielle Verarbeitungseinheit (32, 33), wenn ein Spezielle- Operations-Startsignal (30) empfangen wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32108889 | 1989-12-11 | ||
JP2217785A JPH0769826B2 (ja) | 1989-12-11 | 1990-08-17 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4039532A1 DE4039532A1 (de) | 1991-06-13 |
DE4039532C2 true DE4039532C2 (de) | 1995-11-02 |
Family
ID=26522206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4039532A Expired - Fee Related DE4039532C2 (de) | 1989-12-11 | 1990-12-11 | Datenprozessor |
Country Status (3)
Country | Link |
---|---|
US (1) | US5243705A (de) |
DE (1) | DE4039532C2 (de) |
FR (1) | FR2655747A1 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100206887B1 (ko) * | 1995-12-31 | 1999-07-01 | 구본준 | 프로그램 오동작 방지를 위한 씨피유 |
SE9704476L (sv) * | 1997-12-02 | 1999-06-23 | Ericsson Telefon Ab L M | Utökad instruktionsavkodning |
CN103513957B (zh) * | 2012-06-27 | 2017-07-11 | 上海芯豪微电子有限公司 | 高性能缓存方法 |
CN103513958B (zh) * | 2012-06-27 | 2017-01-25 | 上海芯豪微电子有限公司 | 高性能指令缓存系统和方法 |
US20150261631A1 (en) * | 2014-03-12 | 2015-09-17 | Kabushiki Kaisha Toshiba | Memory system and memory controller |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4395758A (en) * | 1979-12-10 | 1983-07-26 | Digital Equipment Corporation | Accelerator processor for a data processing system |
DE3130746C2 (de) * | 1981-08-04 | 1985-01-31 | Dr. Johannes Heidenhain Gmbh, 8225 Traunreut | Verfahren zur Programmsteuerung bei einer freiprogrammierbaren Steuerung und Anordnung zur Durchführung des Verfahrens |
JPS5955544A (ja) * | 1982-09-25 | 1984-03-30 | Nec Corp | 情報処理装置 |
JPS61202225A (ja) * | 1985-03-06 | 1986-09-08 | Nec Corp | プロセツサによるハ−ドウエア制御方式 |
DE3532481A1 (de) * | 1985-09-12 | 1987-03-19 | Philips Patentverwaltung | Datenverarbeitungsanordnung |
JPS62221729A (ja) * | 1986-03-13 | 1987-09-29 | Fujitsu Ltd | マイクロプログラム制御方式 |
JP2858140B2 (ja) * | 1988-10-19 | 1999-02-17 | アポロ・コンピューター・インコーポレーテッド | パイプラインプロセッサ装置および方法 |
-
1990
- 1990-12-10 US US07/625,233 patent/US5243705A/en not_active Expired - Fee Related
- 1990-12-11 DE DE4039532A patent/DE4039532C2/de not_active Expired - Fee Related
- 1990-12-11 FR FR9015488A patent/FR2655747A1/fr not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
FR2655747A1 (fr) | 1991-06-14 |
DE4039532A1 (de) | 1991-06-13 |
US5243705A (en) | 1993-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3750935T2 (de) | Verfahren und System zum Erleichtern der Befehlsausführung in einem digitalen Rechner. | |
DE3785897T2 (de) | Steuervorrichtung zum vorabruf von befehlen. | |
DE3685876T2 (de) | Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher. | |
DE69130757T2 (de) | Ausführungsvorrichtung für bedingte Verzweigungsbefehle | |
DE68918754T2 (de) | Datenverarbeitungsgerät mit selektivem Befehlsvorausholen. | |
DE69633166T2 (de) | Integrierter schaltkreis mit mehreren funktionen und gemeinsamer verwendung mehrerer interner signalbusse zur verteilung der steuerung des buszugriffes und der arbitration | |
DE69534148T2 (de) | Rechnersystem zur Ausführung von Verzweigungsbefehlen | |
DE19855806A1 (de) | Vorrichtung und Verfahren zum Durchführen von Unterprogrammaufruf- und Rücksprungoperationen | |
DE68927492T2 (de) | Verfahren und Vorrichtung zur gleichzeitigen Verteilung von Befehlen an mehrere funktionelle Einheiten | |
DE69704166T2 (de) | Mikroprozessor zur befehlsübersetzung von einem ersten befehlssatz zu einem zweiten befehlssatz, speicherung und ausführung der übersetzten befehle | |
DE3116100C2 (de) | Datenverarbeitungseinheit | |
DE69130858T2 (de) | Überlappende Serienverarbeitung | |
DE2715073C3 (de) | Mikroprogrammierte Rechner-Steuervorrichtung | |
DE3638572C2 (de) | ||
DE2411963B2 (de) | Datenverarbeitungsanlage | |
DE112005003098T5 (de) | Verfahren und Vorrichtung zum Zugreifen auf einen physikalischen Speicher von einer CPU oder einem Prozessorelement mit hoher Leistung | |
DE68924719T2 (de) | Vorrichtung und Verfahren zur Ausführung eines Unterprogramms in einem Datenverarbeitungssystem mit Blockumschaltung. | |
DE3751108T2 (de) | Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden. | |
DE68927292T2 (de) | Mikrorechner, geeignet zur Schnellverarbeitung eines Verzweigungsbefehlskodes | |
DE3750702T2 (de) | Datenverarbeitungssystem. | |
DE69230238T2 (de) | Informationsverarbeitungsvorrichtung mit Verzweigungsziel-Befehlspufferspeicher | |
DE69033031T2 (de) | Programmierbares Steuergerät | |
DE3853985T2 (de) | Datenverarbeitungsanlage, geeignet für Hochgeschwindigkeitsverarbeitung. | |
DE3750311T2 (de) | Gerät und Verfahren zur Übertragung zwischen Prozessoren. | |
DE68926266T2 (de) | Datenprozessor mit der Fähigkeit, Unterbrechungen mit hoher Geschwindigkeit zu verarbeiten |
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 | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |