DE3314139C2 - - Google Patents
Info
- Publication number
- DE3314139C2 DE3314139C2 DE3314139A DE3314139A DE3314139C2 DE 3314139 C2 DE3314139 C2 DE 3314139C2 DE 3314139 A DE3314139 A DE 3314139A DE 3314139 A DE3314139 A DE 3314139A DE 3314139 C2 DE3314139 C2 DE 3314139C2
- Authority
- DE
- Germany
- Prior art keywords
- microinstruction
- signal
- register
- data
- clk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000012545 processing Methods 0.000 claims description 55
- 230000000903 blocking effect Effects 0.000 claims description 30
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 claims description 15
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 claims description 10
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 30
- 102100032312 Brevican core protein Human genes 0.000 description 11
- 101000731086 Homo sapiens Brevican core protein Proteins 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 241001135893 Themira Species 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000003112 inhibitor Substances 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000001960 triggered effect 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/22—Microcontrol or microprogram arrangements
- G06F9/28—Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
- G06F9/38585—Result writeback, i.e. updating the architectural state or memory with result invalidation, e.g. nullification
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Description
Die Erfindung betrifft einen mikrobefehlgesteuerten Prozessor
nach dem Oberbegriff des Patentanspruches 1.
Bei einem in Fig. 1 dargestellten, bisherigen Prozessor
ist ein Steuerteil 10 mit einem Steuerspeicher 11 und verschiedenen
Registern versehen. Verarbeitungselemente 20₁,
20₂, . . ., 20 n besitzen jeweils eigene Rechenfunktionen und
führen Multiplikation, Festkomma-Addition/Subtraktion und
Fließkomma-Addition/Subtraktion aus. Auf einer Mikrobefehl-
Sammelschiene 30 wird ein aus dem Steuerspeicher 11 im
Steuerteil 10 ausgelesener Mikrobefehl übertragen. Eine
Datensammelschiene 40 überträgt Daten aus den Registern
des Steuerteils 10 zu den Verarbeitungselementen 20₁-20 n
oder die Operationsergebnisse dieser Verarbeitungselemente
20₁-20 n zu den Registern im
Steuerteil 10. Die Datensammelschiene 40 umfaßt tatsächlich je
eine Datensammelschiene für die Übertragung des Operationsergebnisses
und von Ursprungsdaten; sie ist jedoch aus Vereinfachungsgründen
in Fig. 1 als einzige Leitung dargestellt.
Eine im folgenden auch als EBSY-Leitung bezeichnete
Elementbelegtleitung 50 stellt einen Übertragungsweg für
ein im folgenden auch als Signal EBSY bezeichnetes Elementbelegtsignal
dar, das vom betreffenden Verarbeitungselement
20 i (i = 1, 2, . . ., n) geliefert wird, wenn eine Anzahl
von Taktsignalen (Systemtaktsignale) für die Verarbeitung
eines einzigen Mikrobefehls in den Verarbeitungselementen
20 i (i = 1, 2, . . ., n) benötigt werden. Das Signal
EBSY ist ein Sperrsignal zum Sperren oder Verhindern
der Ausführung eines nachfolgenden Mikrobefehls, und es
wird über die EBSY-Leitung 50 zum Steuerteil 10 übertragen.
Fig. 2 zeigt die Verbindung zwischen dem Steuerteil 10 und
den Verarbeitungselementen 20 i (i = 1, 2 . . ., n) gemäß
Fig. 1. Der aus dem Steuerspeicher 11 im Steuerteil 10
ausgelesene Mikrobefehl wird nach Maßgabe eines
mit dem Systemtaktsignal CLK synchronisierten ersten Zeitsteuer-
Taktsignals CLK 1 in einem A-Mikrobefehl-Register
(MIRA) 12 zwischengespeichert und dann aus dem Register
12 zur Mikrobefehl-Sammelschiene 30 ausgegeben. Im Steuerteil
10 ist ein Datenregister 13 angeordnet, in welchem
verschiedene Daten, wie Operationsergebnisse, gespeichert
sind. Die Bezeichnung eines Registers im Datenregister
13 erfolgt durch den Inhalt des vorbestimmten Felds des
Mikrobefehls, der zur Mikrobefehl-Sammelschiene 30 ausgegeben
wird. Sodann wird der Inhalt des durch diesen Mikrobefehl
bezeichneten Registers aus dem Datenregister 13 auf
die Datenschiene 40 ausgegeben. Weiterhin wird der Mikrobefehl
auf der Mikrobefehl-Sammelschiene 30 auf die einzelnen
Verarbeitungselemente 20 i aufgeteilt.
In den Verarbeitungselementen 20 i ist ein Dekodierteil
oder Dekodierer 21 i zum Dekodieren des über die Sammelschiene
30 verteilten Mikrobefehls vorgesehen. Der Dekodierer
21 i dekodiert den über die Sammelschiene 30 gelieferten
Mikrobefehl (oder einen Teil desselben) zur Feststellung
oder Bestimmung, daß das betreffende Verarbeitungselement
20 i gewählt worden ist. Sodann liefert der
Dekodierer 21 i den Mikrobefehl (oder das spezifizierte
Feld des Mikrobefehls) zu einem B-Mikrobefehl-Register
(MIRB) 22 i, und er verhindert die nachfolgende Eingabe
des Mikrobefehls von der Sammelschiene 30. Diese Sperre
wird bei Beendigung der vorhergehenden Mikrobefehlausführung
aufgehoben. Der vom Dekodierer 21 gelieferte Mikrobefehl
wird in Abhängigkeit vom Systemtaktsignal CLK im
Register (MIRB) 22 i gespeichert. Gleichzeitig werden auf
der Datenschiene 40 liegende Daten einer Rechen/Logikeinheit
(ALU) 23 i eingegeben.
Wie sich anhand der Funktionen der Verarbeitungselemente
20₁-20 n ergibt, bilden das Verarbeitungselement 20₁ eine
Multiplizierstufe, das Verarbeitungselement 20₂ eine
Addierstufe und das Verarbeitungselement 20 n eine Addier-
und Verstell- bzw. Schiebestufe. Der Inhalt des
MIRB-Registers 22 i wird zu einer Steuerschaltung 24 i ausgegeben,
um eine Betriebsartbezeichnung für die Rechen/-
Logikeinheit (ALU) 23 i und die Folgesteuerung des Betriebs
auszuführen. Das Operationsergebnis der Rechen/Logikeinheit
23 i wird auf die Datenschiene 40 ausgegeben. Die auf
letzterer liegenden Daten (Operationsergebnis) werden im
bestimmten oder spezifizierten Register des Datenregisters
gespeichert, das durch das spezifizierte Feld des Mikrobefehls
(auf der Mikrobefehl-Sammelschiene 30) bezeichnet
worden ist. Sodann ist die entsprechende Operation für
einen Mikrobefehl abgeschlossen.
Wenn andererseits die Operation der Rechen/Logikeinheit
23 i innerhalb einer einzigen Taktperiode (eines Systemtakts)
nicht beendet ist, wird das Signal EBSY (wirksam
bei logischem Pegel "0") von der Steuerschaltung 24 i auf
die EBSY-Leitung 50 ausgegeben. Auf dieser Leitung 50 wird
das Signal EBSY einem Sperrglied 14 im Steuerteil 10 zugeführt.
Das Sperrglied 14 enthält ein erstes Sperrtorelement
15 zum Sperren der Ausgabe eines ersten Zeitsteuer-
Taktsignals CLK 1 zwecks Speicherung des Mikrobefehls
und ein zweites Sperrtorelement 16 zum Sperren der
Ausgabe eines zweiten Zeitsteuer-Taktsignals CLK 2 zwecks
Einschreibung von Daten in das Datenregister. Das erste
Sperrtorelement 15 ist z. B. ein UND-Glied zur Steuerung des
Systemtaktsignals CLK, des für die Sperrsteuerung benutzten
Signals EBSY und eines Signals 17, das tatsächlich
ein Speicher-Belegtsignal darstellt und das nicht näher
erläutert ist, weil es sich nicht unmittelbar auf die
Erfindung bezieht. Das UND-Glied 17 sperrt die Ausgabe
des Systemtaktsignals CLK als erster Zeitsteuertakt CLK 1
zum Register (MIRA) 12 während der Zeitspanne, während
welcher das Signal EBSY und/oder das Signal 17 wirksam
ist (logischer Pegel "0"). Wenn das Signal EBSY des logischen
Pegels "0" von der Steuerschaltung 24 i des Verarbeitungselementes
20 i auf die EBSY-Leitung 50 ausgegeben
wird, wird die Ergänzung des ersten Zeitsteuertaktsignals
CLK 1 zum MIRA-Register 12 durch das
erste Sperrtor 15 gesperrt. Demzufolge wird der Mikrobefehlabruf
zum Register 12, d. h. die Ausführung des Mikrobefehls
verhindert. Das zweite Sperrtorelement 16 ist z. B. ein
UND-Glied, welches das Systemtaktsignal CLK, das Signal
EBSY und ein Signal 18 abnimmt, das seinerseits ein dekodiertes
Signal einer sog. DNULL-Information darstellt
welche Informationen zur Verhinderung der Speicherung des
Operationsergebnisses, d. h. einen Bestimmungsort, in
dem Datenregister 13 bezeichnet. Das zweite Sperrtorelement
verhindert die Ausgabe des Systemtaktsignals CLK als zweites
Zeitsteuer-Taktsignal CLK 2 zum Datenregister 13 während
der Zeitspanne, wenn mindestens eines der Signale EBSY
oder 18 wirksam bzw. effektiv ist (logischer Pegel "0").
Die Fig. 3A bis 3E sind Zeitsteuerdiagramme zur Veranschaulichung
der beschriebenen, bisherigen Operation, bei welcher
Mikrobefehle M 1, M 2 und M 3 nacheinander ausgeführt
werden. Der Mikrobefehl M 1 ist beispielsweise ein Multiplizierbefehl,
der eine Anzahl von Taktsignalen für die Operation
benötigt. Die erwähnte DNULL-Information ist im
Mikrobefehl M 1 so bezeichnet, daß das Multiplikationsergebnis
im Datenregister 13 nicht gespeichert wird. Beim
beschriebenen Beispiel wird das Multiplikationsergebnis
nach Maßgabe der Anweisung des Mikrobefehls M 2
im Datenregister 13 gespeichert. Wie sich aus den
vorstehenden Ausführungen ergibt, wird dann, wenn der
eine Anzahl von Taktsignalen erfordernde Mikrobefehl M 1
ausgeführt wird, das effektive Signal EBSY von der Steuerschaltung
24 i des betreffenden Verarbeitungselements 20 i
geliefert. Bei diesem Beispiel wird das Signal EBSY von
der Steuerschaltung z. B. des die Multiplizierfunktion
besitzenden Verarbeitungselements 20₁ geliefert. Während
der Ausführung des Mikrobefehls M 1 wird das Signal EBSY
kontinuierlich erzeugt bzw. geliefert. Wenn der Mikrobefehl
M 1 sechs Taktsignale (Taktsignale 1-6) erfordert,
werden die Sperrfunktionen der beiden Torelemente 15, 16
des Sperrgliedes 14 während der Periode von 6 Taktsignalen
ausgeführt. Als Ergebnis werden gemäß Fig. 3D die Ausgabe
des ersten Zeitsteuer-Taktsignals (CLK 1 und die Speicherung
des nachfolgenden, aus dem Steuerspeicher 11 ausgelesenen
Mikrobefehls M 2 im Register (MIRA) 12 verhindert. Dies
bedeutet, daß die Ausführung der anderen Mikrobefehle
durch die Funktion des Sperrgliedes unter der Steuerung
des Signals EBSY verhindert wird. Beim Taktsignal 6, bei
dem die Verarbeitung des Mikrobefehls M 1 abgeschlossen ist,
setzt die Steuerschaltung 24 i das Signal EBSY auf den
logischen Pegel "1". Sodann wird das erste Sperrtorelement 15 aus
dem Sperrzustand freigegeben, und es liefert das erste
Zeitsteuer-Taktsignal CLK 1 wiederum beim Taktsignal 7
usw. Andererseits wird das Dekodiersignal 18, entsprechend
der im Mikrobefehl M 1 bezeichneten DNULL-Information, in
das zweite Sperrtorelement 16 eingegeben. Das Sperrtorelement 16 wird
daher aus dem Sperrzustand freigegeben, und es liefert
das zweite Zeitsteuer-Taktsignal CLK 2 beim nächsten,
auf das Taktsignal 7, bei dem der nächste Mikrobefehl ausgeführt
wird, folgendes Taktsignal.
Wie sich aus den vorstehenden Ausführungen ergibt, bewirkt
bei dem bisherigen Prozessor das Sperrglied
14 unter der Steuerung des Signals EBSY die Verhinderung
oder Sperrung der Ausführung des
nachfolgenden Mikrobefehls während der Ausführung des
Mikrobefehls, der eine Anzahl von Taktsignalen erfordert.
Diese Funktion ist wirksam, wenn der nachfolgende Mikrobefehl
das Ausführungsergebnis des Mikrobefehls benutzt,
der eine Anzahl von Taktsignalen benötigt. Zur Verhinderung
der Ausführung des nachfolgenden Mikrobefehls während
der Ausführung des mehrere Taktsignale erfordernden
Mikrobefehls, ist es auch zweckmäßig, bestimmte Blind-
Mikrobefehle, z. B. einen Nicht-Operations- oder NOP-
Mikrobefehl, nach dem mehrere Taktsignale benötigenden
Mikrobefehl einzufügen. In diesem Fall kann das Sperrglied
14 entfallen. Nachteilig kann dabei jedoch sein, daß die
Kapazität des Steuerspeichers 11 vergrößert werden muß,
weil die Blindbefehle in mehreren Speicherplätzen des
Steuerspeichers 11 gespeichert werden müssen.
Wie erwähnt, ist die bisherige arithmetische Steuereinheit
so ausgelegt, daß das Sperrglied 14 die Ausführung des
nachfolgenden Mikrobefehls während der Ausführung des
mehrere Taktsignale benötigenden Mikrobefehls verhindert
oder sperrt. Auf diese Weise wird erfolgreich ein fehlerhaftes
Operationsergebnis vermieden, das auf die Ausführung
des nachfolgenden, nächsten Mikrobefehls während
der Ausführung des mehrere Taktsignale benötigenden Mikrobefehls
zurückzuführen ist, ohne daß Blindbefehle in mehreren
Speicherplätzen des Steuerspeichers 11 enthalten
sind, d. h. ohne Vergrößerung der Kapazität des Steuerspeichers 11.
Die bisherige Anordnung ist jedoch mit dem schwerwiegenden
Mangel behaftet, daß der nachfolgende Mikrobefehl während
der Ausführung des mehrere Taktsignale benötigenden
Mikrobefehls durch das Sperrglied 14 auch dann, wenn
eine Paralleloperation der beiden Mikrobefehle im selben
Zyklus erfolgen könnte, unbedingt gesperrt
wird. Dieser Nachteil behindert die wirksame Nutzung anderer
Verarbeitungselemente und verhindert einen Betrieb der
Anordnung mit hoher Geschwindigkeit.
Aus IBM Technical Disclosure Bulletin, Vol. 16, Nr. 7,
Seiten 2163 - 2165, Dezember 1973, ist ein Datenverarbeitungssystem
beschrieben, bei dem drei Speicher mit jeweils
verschiedenen Zugriffszeiten vorgesehen sind, nämlich ein
erster Speicher mit einer Zugriffszeit von 120 ns, ein zweiter
Speicher mit einer Zugriffszeit von 200 ns und ein dritter
Speicher mit einer Zugriffszeit von 2 µs. Um nun bei
diesem bekannten Datenverarbeitungssystem die Rechenzeit
zu verringern, erfolgt zuerst ein Zugriff auf den schnellsten
Speicher, also auf den ersten Speicher. Wenn die gewünschten
Daten in diesem ersten Speicher nicht vorliegen,
dann erfolgt ein Zugriff zum nächsten Speicher, also zum
zweiten Speicher. Sind die Daten auch in diesem zweiten
Speicher nicht vorhanden, dann erfolgt ein Zugriff zum dritten
Speicher. Die Zykluszeit für diese drei Speicherzugriffe
insgesamt ist damit ausgedehnt. Weiterhin hat das bekannte
Datenverarbeitungssystem nur eine Rechen- oder Verarbeitungseinheit,
nämlich eine sogenannte "Datenflußlogik", die die
drei Speicher ansteuert.
Es ist Aufgabe der vorliegenden Erfindung, einen mikrobefehlgesteuerten
Prozessor zu schaffen, bei dem eine parallele
Ausführung von Mikrobefehlen in mehreren Verarbeitungselementen
möglich ist, um so einen Betrieb des Prozessors
mit hoher Geschwindigkeit zu erlauben.
Diese Aufgabe wird bei einem mikrobefehlsgesteuerten Prozessor
nach dem Oberbegriff des Patentanspruches 1 erfindungsgemäß
durch die in dessen kennzeichnendem Teil enthaltenen Merkmale gelöst.
Eine vorteilhafte Weiterbildung der Erfindung ergibt sich
aus dem Patentanspruch 2.
Die Erfindung schafft einen Prozessor, der dann, wenn eine
Paralleloperation im selben Zyklus nicht möglich ist, die
Sperrung der Ausführung des nachfolgenden Mikrobefehls durch
das Sperrglied ohne die Einfügung von Blind-Mikrobefehlen
zuläßt, und dann, wenn eine Paralleloperation im selben
Zyklus möglich ist, die Ausführung der Paralleloperation
durch Aufhebung der Funktion des Sperrgliedes zuläßt, wodurch
die Operationsgeschwindigkeit verbessert wird.
Im folgenden sind bevorzugte Ausführungsformen der Erfindung
im Vergleich zum Stand der Technik anhand der Zeichnung
näher erläutert. Es zeigt
Fig. 1 ein Blockschaltbild eines bisherigen Prozessors,
Fig. 2 ein detailliertes Blockschaltbild des Prozessors nach Fig. 1,
Fig. 3A bis 3E Zeitsteuerdiagramme für ein Taktsignal
CLK, für Daten auf einer Mikrobefehl-Sammelschiene,
für ein Signal EBSY, für ein Taktsignal
CLK 1 bzw. für ein Taktsignal CLK 2 beim Prozessor
nach Fig. 1,
Fig. 4 ein Blockschaltbild eines Prozessors
gemäß einer Ausführungsform der Erfindung,
Fig. 5 ein Format des Mikrobefehls,
Fig. 6A bis 6G Zeitsteuerdiagramme für ein Taktsignal
CLK, für Daten auf einer Mikrobefehl-Sammelschiene,
für ein Signal EBSY, für ein Signal
CLK 1, für ein Signal CLK 2 für ein Signal EBSY 1
bzw. für ein Sperrfreigabesignal bei der Ausführungsform
nach Fig. 4,
Fig. 7 ein Blockschaltbild einer anderen Ausführungsform
der Erfindung und
Fig. 8A bis 8G Zeitsteuerdiagramme für ein Taktsignal
CLK, für Daten auf einer Mikrobefehl-Sammelschiene
30, für ein Signal EBSY, für ein Signal CLK 1,
für ein Signal CLK 2, für ein Signal EBSY 1 bzw.
ein Sperrfreigabesignal bei der Ausführungsform
nach Fig. 7.
Die Fig. 1 bis 3 sind eingangs bereits erläutert worden.
Im folgenden sind den Teilen von Fig. 2 entsprechende
Teile mit denselben Bezugsziffern wie vorher bezeichnet
und daher nicht mehr im einzelnen erläutert. Der Grundaufbau
des Steuerteils 100 gemäß Fig. 4 entspricht im
wesentlichen demjenigen des bisherigen Steuerteils 10,
nur mit dem Unterschied, daß der Steuerteil 100 (Fig. 4)
mit einer zwischen die EBSY-Leitung 50 und dem Sperrglied
14 eingeschalteten Sperrsteuereinrichtung 200 versehen ist.
Letztere umfaßt einen Dekodierer 201, einen Umsetzer bzw.
Inverter (I) 202 und ein NAND-Glied (N) 203. Der Dekodierer
201 dekodiert den Inhalt des spezifizierten Felds,
z. B. eines CMD-Felds des Mikrobefehls auf der Mikrobefehl-Sammelschiene
30 und liefert das effektive oder
wirksame (logischer Pegel "0") Sperrfreigabesignal 204,
wenn eine noch näher zu beschreibende und auch BCAN-
Bezeichnung genannte Besetztlöschbezeichnung im CMD-
Feld angegeben wird. Der Inverter 202 invertiert den
Pegel des Signals EBSY auf der EBSY-Leitung 50. Das Ausgangssignal
des Inverters 202 und das Ausgangssignal des
Dekodierers 201, d. h. das Sperrfreigabesignal 204, werden
dem NAND-Glied 203 eingegeben. Das Ausgangssignal des
letzteren wird dem Sperrglied 14 als Signal EBSY 1 eingegeben,
welches das Signal EBSY gemäß Fig. 2 ersetzt. Das
Verarbeitungselement 20 i entspricht demjenigen gemäß Fig.
2. Es sei jedoch angenommen, daß die Verarbeitungselemente
20₁, 20₂, . . ., 20 n mit der Mikrobefehl-Sammelschiene 30,
der Datenschiene 40 bzw. der EBSY-Leitung 50 verbunden
sind. Das Verarbeitungselement 20 i ist dabei für die
Verarbeitungselemente 20₁ - 20 n repräsentativ.
Fig. 5 veranschaulicht ein Teilformat eines bei der Ausführungsform
der Erfindung verwendeten Mikrobefehls.
In diesem Format bezeichnet ein Feld ES eines von mehreren
Verarbeitungselementen, während ein Feld F die arithmetische
Operationsbefehlsart des bezeichneten Verarbeitungselements
und ein Feld R ein Register im Datenregister
13, in welchem Daten gespeichert sind, bezeichnen.
Weiterhin umfaßt ein Feld R ein Feld D (Bestimmungsfeld)
zur Bezeichnung eines Registers, in welchem das Operationsergebnis
gespeichert ist, sowie Felder B und A
(Ursprungsdatenfelder) zur Bezeichnung der Register, in
denen zu verarbeitende Daten gespeichert sind.
Ein Feld CMD dient zur Steuerung verschiedener Hardware,
wie Setz/Rücksetzsteuerung eines nicht dargestellten
Steuer-Flip-Flops und Lese/Einschreibsteuerung
eines nicht dargestellten Hauptspeichers. Außerdem wird
das Feld CMD für die Besetztlösch- bzw. BCAN-Bezeichnung
benutzt. Letztere dient zur Desaktivierung des effektiven
Signals EBSY, das vom betreffenden Verarbeitungselement
20 i (der Steuerschaltung 24 i) während der Ausführung des
eine Anzahl von Taktsignalen erfordernden Mikrobefehls
ausgegeben wird.
Im folgenden ist die Arbeitsweise des Prozessors
nach Fig. 4 anhand der Zeitdiagramme gemäß
Fig. 6A bis 6G beschrieben. Es sei angenommen, daß die
Mikrobefehle M 1 bis M 3 auf der Mikrobefehl-Sammelschiene
30 im wesentlichen dem bei dem bisherigen Prozessor beschriebenen
Mikrobefehl entsprechen. Bei der dargestellten
Ausführungsform unterscheiden sich jedoch die Mikrobefehle
von den Mikrobefehlen bei dem bisherigen Prozessor
dadurch, daß die BCAN-Bezeichnung im Feld CMD des Mikrobefehls
M 1 durchgeführt wird. Nachstehend sei angenommen,
daß der aus dem Steuerspeicher 11 ausgelesene Mikrobefehl
M 1, der nach Maßgabe des ersten, mit dem Takt 1 des
Systemtaktsignals CLK synchronisierten Zeitsteuer-
Taktsignals CLK 1 im Register (MIRA) 12 gespeichert ist,
dem betreffenden Mikrobefehl bei der bisherigen Anordnung
entspricht. Der im Register (MIRA) 12 gespeicherte Mikrobefehl
M 1 wird, wie in den Zeitsteuerdiagrammen gemäß
Fig. 6A bis 6G veranschaulicht, auf der Mikrobefehl-
Sammelschiene 30 ausgegeben.
Der Mikrobefehl M 1 ist ein Multiplizierbefehl, der - wie
bei der bisherigen Anordnung - eine Anzahl von Taktsignalen
benötigt, und er wird z. B. am Verarbeitungselement
20 i (i = 1) verarbeitet.
Wenn der Mikrobefehl M 1 auf der Sammelschiene 30 ausgegeben
wird, werden die Register der Registerdatei 13,
in denen der Multiplikator und der Multiplikand gespeichert
sind, entsprechend dem Feld B und dem Feld A des
Mikrobefehls M 1 gewählt. Wie bei der bisherigen Anordnung
wird andererseits die DNULL-Bezeichnung im Feld D ausgeführt,
so daß die Speicherung des Ergebnisses der Rechenoperation
verhindert oder gesperrt wird.
Bei der dargestellten Ausführungsform wird das durch
Ausführung des Mikrobefehls M 1 erhaltene Rechenoperationsergebnis
wie bei dem bisherigen Prozessor durch Ausführung
des Mikrobefehls M 2 im Register 13 gespeichert.
Weiterhin wird die BCAN-Bezeichnung im Feld CMD
des Mikrobefehls M 1 ausgeführt. Der in der Sperrsteuereinrichtung
200 vorgesehene Dekodierer dekodiert bzw. entschlüsselt
das Feld CND des Mikrobefehls auf der Mikrobefehl-
Sammelschiene 30 und liefert das wirksame oder
effektive Sperrfreigabesignal 204 des logischen Pegels
"0", wenn die BCAN-Bezeichnung im Feld CMD durchgeführt
wird. Weiterhin bezeichnet das Feld ES des Mikrobefehls
M 1 z. B. das Verarbeitungselement 20 i (i = 1), während das
Feld F die Multiplikation bezeichnet.
Wenn das Verarbeitungselement 20 i (i = 1) durch das Feld
ES bezeichnet und getriggert bzw. durchgeschaltet wird,
liefert die Steuerschaltung 24 i (i = 1) des Verarbeitungselements
20 i (i = 1) gemäß Fig. 6C das effektive
Signal EBSY des logischen Pegels "0". Das Signal EBSY
wird über die Leitung 50 dem Inverter 202 in der Sperrsteuereinrichtung
200 eingegeben und durch den Inverter
202 umgesetzt bzw. invertiert, um dann an eine Eingangsklemme
des NAND-Glieds 203 angelegt zu werden. Weiterhin
wird das Sperrfreigabesignal 204 als Ausgangssignal des
Dekodierers 201 an die andere Eingangsklemme des NAND-Glieds
203 angelegt. Wenn der Mikrobefehl M 1, bei dem
die BCAN-Bezeichnung im Feld CMD durchgeführt wird, auf
der Sammelschiene 30 ausgegeben wird, besitzt das Sperrfreigabesignal
204 den logischen Pegel "0" (effektiv bzw.
wirksam). Das Ausgangssignal (Signal EBSY 1) des NAND-Gliedes
203 erhält daher unabhängig vom Ausgangssignal
des Inverters 202 den logischen Pegel "1". Genauer gesagt:
wenn die BCAN-Bezeichnung im Feld CMD des Mikrobefehls
angegeben wird, wird das oben erwähnte Sperrfreigabesignal mit
logischem Pegel "0" erzeugt. Das Sperrfreigabesignal wird an die andere
Eingangsklemme des NAND-Gliedes 203 angelegt. Selbst wenn das effektive Signal
EBSY des logischen Pegels "0" vom Verarbeitungselement 20 i angegeben wird
sperrt das NAND-Glied 203 das Signal EBSY. Die Einspeisung des Signals
EBSY des logischen Pegels "0" zum Sperrglied 14 als Signal EBSY 1 des logischen Pegels "0" ist so gesperrt.
Als Ergebnis wird die Sperrfunktion des Sperrgliedes 14 zum
Teil aufgehoben, wobei als nächstes Taktsignal 2 das mit
dem Systemtaktsignal CLK synchronisierte erste Zeitsteuer-
Taktsignal CLK 1 vom ersten Sperrtorelement 15 geliefert wird
(vgl. Fig. 6D). Der aus dem Steuerspeicher ausgelesene,
nachfolgende Mikrobefehl M 1 wird daher im Register (MIRA)
12 gespeichert. Andererseits wird der Sperrzustand des
zweiten Sperrtorelements 16 nicht vollständig aufgehoben, weil
das Signal 18 aufgrund der DNULL-Bezeichnung des Mikrobefehls
M 1 effektiv ist (logischer Pegel "0"). Die Ausgabe
des zweiten Zeitsteuer-Taktsignals CLK 2 wird daher
gemäß Fig. 6E gesperrt bzw. verhindert.
Bei der dargestellten Ausführungsform werden die Mikrobefehle
m 1, m 2, m 3, m 4, M 2 und M 3 im Steuerspeicher 11
sequentiell in Speicherplätzen gespeichert, die auf
den Speicherplatz folgen, in welchem der Mikrobefehl M 1
gespeichert ist. Die BCAN-Bezeichnung wird in den einzelnen
Feldern CMD der Mikrobefehle m 1 - m 3 durchgeführt.
Bei der beschriebenen Anordnung wird der an der Vorderflanke
des Taktsignals 2 im Register (MIRA) 12 gespeicherte
Mikrobefehl m 1 auf der Mikrobefehl-Sammelschiene
30 auch dann ausgegeben, wenn das Verarbeitungselement
20 i (i = 1) das Signal EBSY des logischen Pegels "0"
liefert. Dieses Verarbeitungselement 20 i wird somit zur
Ausführung des Mikrobefehls m 1 gewählt. Ersichtlicherweise
wird der Mikrobefehl M 1 am Verarbeitungselement 20 i
(i = 1) gleichzeitig mit der Ausführung des Mikrobefehls
m 1 ausgeführt. Die Sperrsteuereinrichtung 20 verhindert
somit die Übertragung des Signals EBSY des logischen
Pegels "0" (als Signal EBSY 1) zum Sperrglied 14,
bis der nachfolgende (nächste) Mikrobefehl auf der Mikrobefehl-
Sammelschiene 30 ausgegeben wird, da die BCAN-
Bezeichnung im Feld CMD des Mikrobefehls m 1 durchgeführt
wird. Als Ergebnis wird der Mikrobefehl m 2 beim folgenden
Taktsignal 4 ausgeführt, und der Mikrobefehl m 3 wird
am Taktsignal 4 im Verarbeitungselement 20 i (i = 1)
ausgeführt. Weiterhin wird der Mikrobefehl m 4 im Register
12 gespeichert und an der Vorderflanke des Taktsignals
5 auf der Mikrobefehl-Sammelschiene 30 ausgegeben. Der
Mikrobefehl m 4 besitzt dieselbe DNULL-Bezeichnungsdateneinheit
wie der Mikrobefehl M 1, und er wird für die Einstellung
der Zeitsteuersignale benutzt. Falls jedoch der
Mikrobefehl m 4 von der Art ist, bei der es nicht nötig
ist, das Rechenoperationsergebnis im Register
13 zu speichern, beispielsweise ein Vergleichs-Mikrobefehl,
ist die parallele Operation oder Verarbeitung des
Mikrobefehls m 4 mit anderen Mikrobefehlen m 1-m 3 möglich.
Die BCAN-Bezeichnung wird im Feld CMD des Mikrobefehls m 4
durchgeführt. Wenn der Mikrobefehl m 4 auf der Sammelschiene
30 ausgegeben wird, erhält als Ergebnis das Sperrfreigabesignal
204 als Ausgangssignal des Dekodierers 201
der Sperrsteuereinrichtung 200 den logischen Pegel "1".
Infolgedessen wird das effektive Signal EBSY des logischen
Pegels "0" dem Sperrglied 14 als Signal EBSY 1 des
logischen Pegels "0" zugeliefert. Hierdurch wird die Ausgabe des
ersten Zeitsteuer-Taktsignals CLK 1 und des zweiten Zeitsteuer-
Taktsignals CLK 2 beim Auftreten
des Taktsignals 6 gesperrt bzw. verhindert. Die Ausführung
des nachfolgenden Befehls (beim beschriebenen Beispiel
des Mikrobefehls M 2) des Mikrobefehls m 4 erfolgt
daher nicht, so daß eine zweckmäßige Zeitsteuereinstellung
vorgenommen werden kann. Letztere läßt sich, genauer
gesagt, nach Maßgabe des Signals EBSY ohne die Einfügung
von Blind-Mikrobefehlen vornehmen. Beim Auftreten des
Taktsignals 6 läßt dann das Verarbeitungselement 20 i
(i = 1) das Signal EBSY vor Abschluß der Ausführung des
Mikrobefehls M 1 auf den logischen Pegel "1" übergehen.
Gemäß Fig. 6F erhält daher das Signal EBSY 1 ebenfalls den
logischen Pegel "1", und einer der Sperrzustände für das
Sperrglied 14 wird aufgehoben. Als Ergebnis wird das
erste Zeitsteuer-Taktsignal CLK 1 beim Auftreten des Taktsignals
7 geliefert, so daß der Mikrobefehl M 2 im Register
(MIRA) 12 gespeichert wird.
Im folgenden ist anhand der Fig. 7 und 8 eine andere
Ausführungsform der Erfindung beschrieben. Fig. 7 veranschaulicht
in Blockschaltbildform eine Sperrsteuereinrichtung 300
mit derselben Funktion wie die Sperrsteuereinrichtung 200
gemäß Fig. 4. Bei der Ausführungsform gemäß Fig. 7 kann
die Sperrsteuereinrichtung 200 nach Fig. 4 durch die Sperrsteuereinrichtung
300 ersetzt werden, während die anderen,
außerhalb gelegenen Teile beibehalten werden. Die Ausführungsform
nach Fig. 7 unterscheidet sich somit von
derjenigen gemäß Fig. 4 durch den Innenaufbau der Sperrsteuereinrichtung
300. Die Teile gemäß Fig. 7 sind dabei
mit denselben Bezugsziffern wie in Fig. 4 bezeichnet.
Gemäß Fig. 7 dekodiert bzw. entschlüsselt ein Dekodierer
301 den Inhalt des Felds CMD des Mikrobefehls auf der
Mikrobefehl-Sammelschiene 30. Bei dieser Ausführungsform
sind zwei Befehlsarten spezifiziert bzw. bestimmt. Der
eine Befehl ist eine Flip-Flop-Setzbezeichnung, und der
andere ist eine Flip-Flop-Rücksetzbezeichnung. Der
Dekodierer 301 gibt ein Setzsignal SET aus, wenn die Flip-
Flop-Setzbezeichnung im Feld CMD spezifiziert ist, während
er ein Rücksetzsignal RESET liefert, wenn die Flip-
Flop-Rücksetzbezeichnung spezifiziert ist.
Ein Flip-Flop 302, z. B. ein J-K-Flip-Flop, wird beispielsweise
an der Hinterflanke des Systemtakts CLK gesetzt,
wenn der Dekodierer 301 ein Setzsignal SET ausgibt.
Weiterhin wird das Flip-Flop 302 an der Hinterflanke
des Systemtakts CLK rückgesetzt, wenn der Dekodierer
301 das Rücksetzsignal RESET liefert. Das Ausgangssignal
des Flip-Flops 302 (entsprechend dem Ausgangssignal des
Dekodierers 201 gemäß Fig. 4) wird als Sperrfreigabesignal
204 benutzt.
Es sei angenommen, daß die Mikrobefehle M 1, m 1, m 2, m 3,
M 2 und M 3 bereits in den fortlaufenden Speicherplätzen
des Steuerspeichers 11 gespeichert sind. Weiterhin sei
angenommen, daß diese Mikrobefehle im wesentlichen den
Mikrobefehlen M 1, m 1, m 2, m 3, M 2 und M 3 bei der ersten
Ausführungsform entsprechen.
Bei der dargestellten Ausführungsform erfolgt jedoch die
Flip-Flop-Setzbezeichnung im Feld CMD des Mikrobefehls
M 1, während die Flip-Flop-Rücksetzbezeichnung im Feld CMD
des Mikrobefehls m 2 erfolgt. Weiterhin werden bei dieser
Ausführungsform die BCAN-Bezeichnung nicht im Feld
CMD und die DNULL-Bezeichnung im Mikrobefehl m 3
ausgeführt.
Es sei angenommen, daß der eine Anzahl von Taktsignalen
erfordernde Mikrobefehl gemäß Fig. 8 beim Auftreten bzw.
zum Zeitpunkt des Taktsignals 1 auf der Mikrobefehl-
Sammelschiene 30 ausgegeben wird. Der einen Multiplizierbefehl
darstellende Mikrobefehl M 1 wird, wie bei der
zuerst beschriebenen Ausführungsform, am Verarbeitungselement
20 i (i = 1) geliefert. Die Steuerschaltung 24 i
(i=1) dieses Verarbeitungselements 20 i liefert das
effektive bzw. wirksame Signal EBSY des logischen Pegels
"0" auf der EBSY-Leitung 50, weil der Mikrobefehl eine
Anzahl von Taktsignalen benötigt (vgl. Fig. 8).
Wie erwähnt, wird die Flip-Flop-Setzbezeichnung im Feld
CMD des Mikrobefehls spezifiziert bzw. bestimmt. Der
Dekodierer 301 in der Sperrsteuereinrichtung 300 liefert
daher das Setzsignal SET als Ergebnis der Dekodierung des
Felds CMD des Mikrobefehls M 1 auf der Sammelschiene 30.
Infolgedessen wird an der Hinterflanke des nachfolgenden
Taktsignals 2 das Flip-Flop 302 gesetzt, wobei es an der
Ausgangsklemme das effektive Sperrfreigabesignal 204
des logischen Pegels "0" liefert. Die Anlegung des Signals
EBSY des logischen Pegels "0" vom Verarbeitungselement
20 i (i = 1) an das Sperrglied 14, als Signal EBSY 1 des
logischen Pegels "0" wird infolgedessen verhindert bzw.
gesperrt (vgl. Fig. 8). Dieser Zustand dauert an, bis
das Flip-Flop 302 rückgesetzt wird und das Sperrfreigabesignal
204 den logischen Pegel "1" erhält. Demzufolge
ist eine Paralleloperation des Mikrobefehls M 1
und der folgenden Mikrobefehle m 1-m 3 möglich. Wie
erwähnt, wird die Flip-Flop-Rücksetzbezeichnung im Feld
CMD des Mikrobefehls m 2 durchgeführt. Nach der Ausgabe
des Mikrobefehls m 2 auf der Mikrobefehl-Sammelschiene
30 wird daher das Rücksetzsignal RESET als Ergebnis der
Dekodierung des Felds CMD des Mikrobefehls m 2 geliefert.
Sodann wird das Flip-Flop 302 an der Hinterflanke des
nachfolgenden Taktsignals 5 rückgesetzt. Das Sperrfreigabesignal
204 geht daher auf den logischen Pegel "1"
über, und das Signal EBSY des logischen Pegels "0" wird
als Signal EBSY 1 des logischen Pegels "0" dem Sperrglied
14 zugeführt. Die Sperrfunktion des Sperrgliedes 14 wird
somit wirksam, so daß der Abruf des Mikrobefehls beim
Auftreten des Taktsignals 6 verhindert bzw. gesperrt
ist. Beim Auftreten des Taktsignals 5 erfolgt
die parallele Ausführung des Mikrobefehls m 3, bei
dem die DNULL-Bezeichnung durchgeführt ist bzw. wird,
sowie des Mikrobefehls M 1. Der Mikrobefehl m 3 wird mithin
als Zeitsteuereinstellung ausgeführt, bei welcher
das Signal EBSY den logischen Pegel "1" erhält, und der
nachfolgende Mikrobefehl (beim vorliegenden Beispiel der
Mikrobefehl M 2) wird am nächsten Taktsignal abgerufen.
Bei der beschriebenen Ausführungsform der Erfindung ist
somit die parallele Ausführung des Mikrobefehls M 1 und
des nachfolgenden Mikrobefehls möglich, indem lediglich
die Flip-Flop-Setzbezeichnung im Feld CMD des Mikrobefehls
M 1 durchgeführt wird, ohne eine spezielle Bezeichnung
(z. B. BCAN-Bezeichnung) im Feld CMD des einzelnen Mikrobefehls
durchzuführen. Bei der beschriebenen Ausführungsform
kann somit das Feld CMD, das für die Steuerung des
individuellen Hardwareteils verwendet wird, für die
arithmetische bzw. Rechensteuerung benutzt werden, wenn
der eine Anzahl von Taktsignalen erfordernde Mikrobefehl
parallel mit einem anderen Mikrobefehl aufgeführt wird.
Claims (3)
1. Mikrobefehlgesteuerter Prozessor mit:
- - einem Taktsignalgenerator zur Lieferung eines Bezugstaktsignales (CLK) für arithmetische Verarbeitungselemente (20 i);
- - eine Steuerspeichereinrichtung (11) zum Speichern von Mikrobefehlen;
- - einem Mikrobefehl-Register (12), das die aus der Steuerspeichereinrichtung (11) ausgelesenen Mikrobefehle speichert;
- - einem Datenregister (13);
- - einem mit dem Mikrobefehl-Register (12) und dem Datenregister (13) verbundenen Taktsperrglied (14) zum Sperren eines ersten Zeitsteuertaktsignals (CLK 1) für die Steuerung des Mikrobefehl-Registers (12) und zum Sperren eines zweiten Zeitsteuertaktsignals (CLK 2) für die Steuerung des Datenregisters (13), wobei das erste und das zweite Zeitsteuertaktsignal mit dem Bezugstaktsignal (CLK) synchron ist;
- - einer mit der Steuerspeichereinrichtung (11) verbundenen Mikrobefehl-Sammelschiene (30) zum Übertragen der Mikrobefehle;
- - einer mit dem Datenregister (13) verbundenen Datensammelschiene (40) zum Übertragen von Daten;
- - wobei die mehreren, mit der Mikrobefehl-Sammelschiene (30) und der Datensammelschiene (40) verbundenen Verarbeitungselemente (20 i) jeweils eine durch den Mikrobefehl auf der Mikrobefehl-Sammelschiene (30) und die Daten auf der Datensammelschiene (40) spezifizierte Rechenoperation ausführen und ein Sperrsignal liefern, um die Ausführung des nachfolgenden Mikrobefehls während einer, eine Vielzahl von Taktsignalen für ein Verarbeitungselement erfordernden Ausführung eines Mikrobefehls zu sperren;
- - wobei das Mikrobefehl-Register (12) den aus der Steuerspeichereinrichtung (11) ausgelesenen Mikrobefehl abhängig vom ersten Zeitsteuertaktsignal (CLK 1) und das Datenregister (13) die Daten auf der Datensammelschiene (40) abhängig vom zweiten Zeitsteuertaktsignal (CLK 2) speichert;
dadurch gekennzeichnet, daß
- - eine mit den Verarbeitungselementen (20 i) und der Mikrobefehl-Sammelschiene (30) verbundene Sperrsteuereinrichtung (200, 300) die Einspeisung der von den Verarbeitungselementen (20 i) erzeugten Sperrsignale in das Taktsperrglied (14) abhängig von dem dekodierten Ergebnis des Feldes des Mikrobefehls auf der Mikrobefehl- Sammelschiene (30) steuert, wobei
- - das beispielsweise von einem ersten Verarbeitungselement (20 i) ausgegebene Sperrsignal von der Sperrsteuereinrichtung (200, 300) abhängig vom Mikrobefehl auf der Mikrobefehl-Sammelschiene (30) unterdrückt wird, wenn ein eine Vielzahl von Takten benötigender Mikrobefehl durch das erste Verarbeitungselement ausgeführt wird;
- - so daß ein aus der Steuerspeichereinrichtung (11) ausgelesener Mikrobefehl durch das Mikrobefehl-Register (12) abhängig vom ersten Zeitsteuertaktsignal (CLK 1) übernommen wird,
- - und dieser Mikrobefehl an andere Verarbeitungselemente (20 i) mit Ausnahme des ersten Verarbeitungselementes zur parallelen Abarbeitung ausgegeben wird.
2. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß
die Sperrsteuereinrichtung (200, 300) aufweist:
- - einen mit der Mikrobefehl-Sammelschiene (30) verbundenen Dekodierer (301) zum Dekodieren des vorbestimmten Felds des Mikrobefehls und zur Lieferung eines ersten dekodierten Signals, wenn im vorbestimmten Feld ein erster spezifizierter Befehl bezeichnet ist, sowie eines zweiten dekodierten Signals, wenn im vorbestimmten Feld ein zweiter spezifizierter Befehl bezeichnet ist;
- - ein mit dem Dekodierer (301) verbundenes Flip-Flop (302), das in Abhängigkeit vom ersten dekodierten Signal vom Dekodierer (301) in den einen Zustand und in Abhängigkeit vom zweiten dekodierten Signal des Dekodierers (301) in den anderen Zustand übergeht, und
- - eine mit dem Flip-Flop (302) verbundene Torschaltung (203) zum Sperren oder Durchlassen des Sperrsignals an das Taktsperrglied (14) nach Maßgabe des Zustands des Flip-Flops (302).
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57065821A JPS58182758A (ja) | 1982-04-20 | 1982-04-20 | 演算制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3314139A1 DE3314139A1 (de) | 1983-10-27 |
DE3314139C2 true DE3314139C2 (de) | 1988-11-17 |
Family
ID=13298071
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19833314139 Granted DE3314139A1 (de) | 1982-04-20 | 1983-04-19 | Mikrobefehlgesteuerte arithmetische steuereinheit |
Country Status (4)
Country | Link |
---|---|
US (1) | US4642757A (de) |
JP (1) | JPS58182758A (de) |
DE (1) | DE3314139A1 (de) |
GB (1) | GB2120425B (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053989A (en) * | 1986-08-27 | 1991-10-01 | Minolta Camera Kabushiki Kaisha | Digital image processing apparatus having a microprogram controller for reading microinstructions during a vacant period of the image processing circuit |
JP2558831B2 (ja) * | 1988-09-06 | 1996-11-27 | 富士通株式会社 | パイプライン制御方式 |
US5519873A (en) * | 1990-08-31 | 1996-05-21 | International Business Machines Corporation | Apparatus for switching digital command execution between a general purpose microprocessor and dedicted execution logic |
JP3055999B2 (ja) * | 1992-03-16 | 2000-06-26 | 日本電気株式会社 | マイクロプログラム制御装置群 |
JPH07147201A (ja) * | 1993-11-25 | 1995-06-06 | Nec Corp | チップ部品 |
US5619408A (en) * | 1995-02-10 | 1997-04-08 | International Business Machines Corporation | Method and system for recoding noneffective instructions within a data processing system |
JP3323045B2 (ja) * | 1995-11-20 | 2002-09-09 | 東芝マイクロエレクトロニクス株式会社 | 情報処理装置 |
US7743232B2 (en) * | 2007-07-18 | 2010-06-22 | Advanced Micro Devices, Inc. | Multiple-core processor with hierarchical microcode store |
CN107783917B (zh) * | 2016-08-26 | 2024-05-17 | 北京忆芯科技有限公司 | 生成nvm芯片接口命令的方法与装置 |
US11467838B2 (en) | 2018-05-22 | 2022-10-11 | Advanced Micro Devices, Inc. | Fastpath microcode sequencer |
US11016763B2 (en) | 2019-03-08 | 2021-05-25 | Advanced Micro Devices, Inc. | Implementing a micro-operation cache with compaction |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3573852A (en) * | 1968-08-30 | 1971-04-06 | Texas Instruments Inc | Variable time slot assignment of virtual processors |
US4558411A (en) * | 1969-05-19 | 1985-12-10 | Burroughs Corp. | Polymorphic programmable units employing plural levels of sub-instruction sets |
US3656123A (en) * | 1970-04-16 | 1972-04-11 | Ibm | Microprogrammed processor with variable basic machine cycle lengths |
JPS49113542A (de) * | 1973-02-26 | 1974-10-30 | ||
US4077060A (en) * | 1976-12-27 | 1978-02-28 | International Business Machines Corporation | Asymmetrical multiprocessor system |
GB1581650A (en) * | 1977-04-20 | 1980-12-17 | Hughes Aircraft Co | Synchronous data processor |
JPS5729150A (en) * | 1980-07-30 | 1982-02-17 | Toshiba Corp | Method and device for arithmetic control |
-
1982
- 1982-04-20 JP JP57065821A patent/JPS58182758A/ja active Granted
-
1983
- 1983-04-12 US US06/484,260 patent/US4642757A/en not_active Expired - Fee Related
- 1983-04-13 GB GB08309933A patent/GB2120425B/en not_active Expired
- 1983-04-19 DE DE19833314139 patent/DE3314139A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
GB2120425B (en) | 1986-04-16 |
US4642757A (en) | 1987-02-10 |
DE3314139A1 (de) | 1983-10-27 |
JPS6232504B2 (de) | 1987-07-15 |
JPS58182758A (ja) | 1983-10-25 |
GB8309933D0 (en) | 1983-05-18 |
GB2120425A (en) | 1983-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69217761T2 (de) | Lese- und Schreibschaltung für einen Speicher | |
DE69120586T2 (de) | Rechnersystem mit synchronem Bus | |
DE2714805C2 (de) | ||
DE3424962C2 (de) | ||
DE2953861C2 (de) | ||
DE1915818B2 (de) | Steuerschaltung für ein elektronisches Datenverarbeitungssystem | |
DE1178623B (de) | Programmgesteuerte datenverarbeitende Maschine | |
DE3314139C2 (de) | ||
EP0190554A1 (de) | Verfahren und Schaltungsanordnung zum Umschalten einer taktgesteuerten Einrichtung mit mehreren Betriebszuständen | |
DE2750344C2 (de) | Logikschaltung zum Betätigen irgendeiner Teilmenge einer Mehrzahl von Vorrichtungen | |
DE2813080A1 (de) | Einrichtung zur speicheradressierung | |
DE2539211A1 (de) | Zugriffssteuereinheit | |
DE2755611A1 (de) | Steuereinheit fuer datenverarbeitungsanlagen | |
DE3123382A1 (de) | "verfahren und einrichtung zum uebertragen von daten zwischen zentraleinheiten oder prozessoren von mehrprozessorsystemen" | |
DE3930313A1 (de) | Vektorprozessor | |
DE69031361T2 (de) | Taktsignalgeneratorsystem | |
DE1499191B2 (de) | Elektronische einrichtung fuer eine datenverarbeitungsanlage | |
DE68903280T2 (de) | Vektorschlange in computern mit vektorregister. | |
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
DE3882425T2 (de) | Datenübertragungssteuerungsvorrichtung für Direktspeicherzugriff. | |
DE3018509C2 (de) | Schieberegister | |
DE2759120C2 (de) | ||
DE69023395T2 (de) | Arbitrierungsschaltung. | |
DE2943903A1 (de) | Rechnersystem | |
DE3121046A1 (de) | Arithmetik-logikeinheit mit bit-manipulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8128 | New person/name/address of the agent |
Representative=s name: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZ |
|
8127 | New person/name/address of the applicant |
Owner name: KABUSHIKI KAISHA TOSHIBA, KAWASAKI, KANAGAWA, JP |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |