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
Application number
DE3314139A
Other languages
English (en)
Other versions
DE3314139A1 (de
Inventor
Tsutomu Tachikawa Tokio/Tokyo Jp Sakamoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of DE3314139A1 publication Critical patent/DE3314139A1/de
Application granted granted Critical
Publication of DE3314139C2 publication Critical patent/DE3314139C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/223Execution 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • G06F9/38585Result 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).
DE19833314139 1982-04-20 1983-04-19 Mikrobefehlgesteuerte arithmetische steuereinheit Granted DE3314139A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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