DE2457612A1 - Mikroprogrammier-steuersystem - Google Patents

Mikroprogrammier-steuersystem

Info

Publication number
DE2457612A1
DE2457612A1 DE19742457612 DE2457612A DE2457612A1 DE 2457612 A1 DE2457612 A1 DE 2457612A1 DE 19742457612 DE19742457612 DE 19742457612 DE 2457612 A DE2457612 A DE 2457612A DE 2457612 A1 DE2457612 A1 DE 2457612A1
Authority
DE
Germany
Prior art keywords
address
microinstruction
control
register
bank
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19742457612
Other languages
English (en)
Other versions
DE2457612B2 (de
DE2457612C3 (de
Inventor
Yasunori Dipl Ing Kanda
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE2457612A1 publication Critical patent/DE2457612A1/de
Publication of DE2457612B2 publication Critical patent/DE2457612B2/de
Application granted granted Critical
Publication of DE2457612C3 publication Critical patent/DE2457612C3/de
Expired 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/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/267Microinstruction selection based on results of processing by instruction selection on output of storage

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

PATENTANWÄLTE
DR. CLAUS REINLÄNDER DIPL.-ING. KLAUS B E RN HARQT, .-„ R . -
D-8 München 60 · Orthstraße 12 · Telefon (089) 832024/5 fc H 9 / O I 4
Telex 5212744 · Telegramme Interpatent
6/205
Fujitsu Limited
No.1015, Kamikodanakai Nakahara-ku, Kawasaki Japan
Mikroprogrammier-Steuersystem
Priorität: 7. Dezember 1973 Japan 139211/1975
Es wird ein Mikroprogrammier-Steuersystem beschrieben, bei dem mehrere Steuerspeicher zum Steuern von Mikrobefehlen vorgesehen sind und bei dem die Adresse eines Mikrobefehls, die nach wenigstens zwei Schritten ausgelesen werden soll, in dem Mikrobefehl bezeichnet wird, der in ein Daten-
register zum Ausführen der Operationen der Kontrollspeicher in überlappender Weise ausgelesen wird.
Die Erfindung betrifft ein Mikroprogrammier-Steuersystem und insbesondere ein Mikroprogrammier-Steuersystem, mit dem es möglich ist, Mikrobefehle mit derselben Geschwindigkeit wie die zum Auslesen der Mikrobefehle beim Stand der Technik auszulesen, und zwar auch mit einem Steuerspeicher geringerer Leistung als ein bekannter Steuerspeicher.
Da ein Auslesen, eine Interpretation und eine Ausführung von Mikrobefehlen zusammen durch mehrere zig Korabinationen von Grundoperationen ausgeführt werden kann, wie eine Übertragung zwischen Registern, ein Starten eines Hauptspeichers, ein Versetzen, die Verwendung eines Addierers usw.,
509825/0936
- Qf -
ist bisher eine solche Mikroprogrammverarbeitung angewendet
worden, bei der Befehle (Mikrobefehle), welche die Grundoperationen bezeichnen, gesammelt, in einem Steuerspeicher gespeichert und aufeinanderfolgend in der Einheit jedes Mikrobefehls für die Ausführung ausgelesen werden. Die Gruppe der gesammelten Mikrobefehle wird Mikroprogramm genannt und das Steuersystem für dieses Mikroprogramm wird Mikroprogramm-Steuersystem genannt.
Unter Bezugnahme auf die Pig. 1 und 2 wird ein bekanntes Mikroprogramm-Steuersystem beschrieben.
Gemäß Fig.1 wird eine Kopfadresse eines Mikroprogramms entsprechend einem Mikrobefehl in einem Adressenregister AR eingestellt. Die Kopfadresse wird durch einen Decodierer DEC decodiert und einem Steuerspeicher CM zugeführt, von dem ein Mikrobefehl entsprechend der Kopfadresse ausgelesen wird. Der Auslese-Mikrobefehl wird in einem Datenregister DR gespeichert. Ein Teil des in dem Datenregister DR gespeicherten Mikrobefehls wird dem Adressenregister AR zum Bezeichnen der Adresse des nächsten Mikrobefehls zugeführt und der verbleibende Teil des Mikrobefehls wird als Steuersignal zum Steuern der Operation eines Computers verwendet.
Da in diesem Fall die Verarbeitungsgeschwindigkeit des Computers von der lesegeschwindigkeit des Mikrobefehls abhängt, ist es erwünscht, die Mikrobefehl -Lesegeschwindigkeit soweit als möglich zu erhöhen. Zu diesem Zweck wird ein Speicher mit hoher Verarbeitungsgeschwindigkeit verwendet, da die Geschwindigkeit eines Speichers, der als Steuerspeicher CM verwendet wird, üblicherweise den größeren Teil der Mikrobefehl -lesezeit belegt. Ein solcher Speicher mit einer Verarbeitung mit hoher Geschwindigkeit ist Jedoch sehr teuer und stellt eine Schwierigkeit bei der Produktion billiger Computer dar.
Bei der Anordnung nach Fig. 1 wird des weiteren im Falle einer bedingten Verzweigung entsprechend einer bestimmten Bedingung
509825/0936
eine neue Adresse entsprechend der Bedingung bestimmt und der nächste Mikrobefehl wird in Übereinstimmung mit der Adresse ausgelesen. Demgemäß wird der Mikrobefehl, der in Übereinstimmung mit dem vorangehenden Mikrobefehl zu dem Zeitpunkt ausgelesen wird, zu dem die Adresse entsprechend der Bedingung bestimmt ist, ungültig gemacht und der nächste Mikrobefehl entsprechend der Adresse wird für·die Verzweigung verwendet. Dies ergibt eine wesentliche Begrenzung der Verarbeitung mit hoher Geschwindigkeit. Eine Verarbeitung entsprechend der Mikroprogrammierung wird jedoch üblicherweise angepaßt, um in einer vorbestimmten Art der Ausführung erreicht zu werden, und auch wenn eine Verzweigung in der Verarbeitung vorhanden ist, wird der nächste Schritt gemäß der Verzweigung bestimmt, so daß ein Befehl, der der Verzweigung folgt, ohne Rücksicht auf die Bedingung ausgelesen werden kann.
Um den vorstehenden Zustand zu vermeiden, ist ein in Pig. gezeigtes System bekanntgeworden, wobei Pig. 2 als Blockschaltbild dieses System und Pig. 3 ein Zeitdiagramm seiner Operation zeigt. Das Steuersystem der Pig. 2 ist derart angepaßt, daß eine Adresse, die durch das Adressenregister AR angezeigt ist, durch den Decodierer DEC decodiert und dem Steuerspeicher CM zugeführt wird, wodurch zwei Mikrobefehle ausgelesen werden können. In Übereinstimmung mit dem Ergebnis einer Steuerung, wie einer Operation ο.dgl. durch den vorangehenden Mikrobefehl, wird dann einer der beiden so ausgelesenen Mikrobefehle dem Datenregister DR zugeführt und die Anlegung des anderen Mikrobefehls wird verhindert. Durch die Verwendung des Systems der Auswahl von ein oder zwei Mikrobefehlen, wie oben beschrieben, ermöglicht es das Steuersystem der Pig. 2, daß, obwohl eine Verzweigung durch das Ergebnis der Steuerung, wie eine Operation o.dgl. gemäß dem vorangehenden Mikrobefehl, bewirkt worden ist, ein Mikrobefehl bei der Bestimmung der Verzweigung ohne Leerzeit erhalten werden kann, indem lediglich der vorher erwähnte andere Mikrobefehl ausgewählt wird, d.h. der Mikrobefehl bei der Bestimmung der Verzweigung anstelle des vorstehend
509825/0936
erwähnten einen Mikrobefehls, d.h. des Mikrobefehls der Adresse, der dem vorangehenden Mikrobefehl, wie oben beschrieben, folgt. Als Ergebnis wird die Leerzeit im Falle der Verzweigung bei dem Steuersystem der Fig. 1 eliminiert. Auch im Falle der Verwendung des Steuersystems der .Fig. 2 ist es jedoch noch notwendig, einen Speicher, der eine Operation mit hoher Geschwindigkeit ausführen kann, als Steuerspeicher CM zu verwenden.
Fig. 3 ist ein Zeitdiagramm zum Erläutern der Operationen der jeweiligen Teile des in Fig. 2 dargestellten Systems, to, ti, t2,,... bezeichnen Zeitzyklen durch einen Grundtakt des Computers. Wach dem Einstellen der nächsten Adresse in das Adressenregister AR in dem Zeitzyklus ti werden bezeichnete Mikrobefehle jeweils von den Teilen GERADE und UNGERADE des Steuerspeichers CM ausgelesen und gemäß dem Ergebnis einer Operation durch den vorangehenden Mikrobefehl wird ein Flip-Flop F/F betätigt und Auslesedaten von einem der Teile GERADE oder UNGERADE werden in das Datenregister DR am Beginn des nächsten Zeitzyklus t2 eingestellt.
Somit erfordert das System· der Fig. 2 eine Betätigungsgeschwindigkeit zum Auslesen jedes Mikrobefehls von jedem der Teile GERADE und UNGERADE des Steuerspeichers CM in jedem Zeitzyklus des Grundtaktes und erfordert die Verwendung eines Steuerspeichers mit sehr guter Leistung als Steuerspeicher CM. Aus diesem Grunde ist es notwendig, einen teueren Speicher zu verwenden.
Der Erfindung liegt die Aufgabe zugrunde, ein Mikroprograramier-Steuersystem zu schaffen, das nicht so viele Operationen
mit hoher Geschwindigkeit des Steuerspeichers erfordert, das jedoch dieselbe Steuerung mit hoher Geschwindigkeit ermöglicht, die bisher erhalten werden konnte.
Das Mikroprogrammier-Steuersystem nach der Erfindung enthält einen Steuerspeicher zum Erzeugen mehrerer Mikrobefehle durch' eine einzelne Adressierung, ein Auswahlgatter zum Auswählen
509825/0936
eines von mehreren Mikrobefehlen, die von dem Steuerspeicher ausgelesen sind, und ein Datenregister zum Speichern eines Mikrobefehls, der von dem Auswahlgatter abgeleitet ist. Das System ist derart angepaßt, daß es den nächsten Mikrobefehl von dem Steuerspeicher auf der Basis der Adresse erhält, die in dem in dem Datenregister gespeicherten Mikrobefehl enthalten ist, wobei mehrere Steuerspeicher, die aufeinanderfolgend das Datenregister im Zeitmultiplexbetrieb verwenden, vorgesehen sind und durch Mikrobefehle, die aufeinanderfolgend dem Datenregister von den Steuerspeichern zugeführt sind, die Adresse des Mikrobefehls, der nach wenigstens zwei Schritten ausgelesen werden soll, bezeichnet wird.
Die Erfindung wird beispielhaft anhand der Zeichnung beschrieben, in der sind
Pig. 1 ein Blockschaltbild eines Beispiels eines bekannten Mikroprogrammier-Steuersystems,
Fig. 2 ein .Blockschaltbild eines weiteren Beispiels eines bekannten Mikroprogrammier-Steuersystems,
Pig. 3 ein Zeitdiagramm zum Auslesen eines Mikrobefehls bei dem Beispiel der Pig. 2,
Jig, 4 ein Blockschaltbild eines Beispiels des Mikroprogrammier-Steuersystems nach der Erfindung,
Fig. 5 ein Zeitdiagramm zum Auslesen eines Mikrobefehls bei dem Beispiel der Pig. 4,
Pig. 6 und 7 Detailschaltverbindungen des in Pig. 4 dargestellten Systems,
Pig. 8 ein Schaltbild eines Beispiels der Bedingung für eine Verzweigung, die durch das Ergebnis der Steuerung, wie einer Operation o.dgl. durch den vorangehenden Mikrobefehl, bestimmt ist,
3?ig. 9 ein Schaltbild zum Erläutern der Operation einer Einheit, die durch die Schaltung der Pig» 4 gesteuert ist,
■509825/0 S i fe
BAD ORIGINAL
Pig. 1OA, 10B, 100 und 10D Darstellungen der Mikrobefehl-Auslesezustände bei dem Beispiel der Pig. 4,
Pig. 11A und 11B Darstellungen zum Erläutern der Verzweigungsoperation bei dem Beispiel der Pig. 4,
Pig. 12 ein Blockschaltbild eines weiteren Beispiels der Erfindung und
Pig. 15 ein Zeitdiagramm für das Mikrobefehlauslesen bei dem Beispiel der Pig. 12.
Pig. 4 zeigt in Blockform ein Beispiel des Mikrobefehl-Auslesesystems nach der Erfindung, das zwei Bänke verwendet, die jeweils mit einem Steuerspeicher gebildet sind.
In Pig. 4 bezeichnen OM Steuerspeicher, BKO und BK1 Bänke, DE01 und DE02 Decodierer, AHRO und AHR1 Adressenhalteregister, DR ein Datenregister, AR ein Adressenregister, ID einen Mikrobefehlauswahl-Bezeichnungskreis, BO einen Verzweigungsbedingungseinstellkreis, 0DER1, 0DER2 und 0DER3 ODER-(logische Summe)-Kreise, UND1, ÜND2, UND3 und UND4 UND-(logisches Produkt)-Kreise und 11 und 12 Sperrkreise.
Wie in Pig. 4 gezeigt ist, besteht der Steuerspeicher CM aus den Steuerspeicherbänken BKO und BK1, denen jeweils Adressen 0, 1, 4, 5, 8, 9, 12, 13, ... 4n und 4n+1 und Adressen 2, 3, 6, 7, 10, 11, 14, 15,... 4n+2 und 4n+3 zugewiesen werden. Die obigen Adressen jeder Bank sind paarweise angeordnet, wobei mit der kleinsten Adresse begonnen wird, und die kleinere Adresse (der Teil GERADE) jedes Paars wird von dem Adressenregister über jeden Decodierer DE01 oder DEC2 an jede Bank angelegt, von der ein Mikrobefehl entsprechend der angelegten Adresse und ein Mikrobefehl entsprechend der Adresse des Teiles UNGERADE abgeleitet wird. Die nachfolgende Beschreibung geht von der Annahme aus, daß jede Steuerspeicherbank in Pig. 4 so aufgebaut ist, daß der Mikrobefehl, der ohne Rücksicht auf die Operation, wie eine Verzweigung, erhalten wird, in dem Bereich entsprechend der Adresse des Teiles GERADE
g η q Q 7 S / Π Q ? A
aufgezeichnet wird und daß der Mikrobefehl, welcher der Verzweigung folgt, in dem Bereich entsprechend der Adresse des Teils UNGERADE aufgezeichnet wird, und zwar wie im Falle mit dem in Fig. 2 gezeigten Steuerspeicher.
Wenn gemäß Fig. 4 eine Kopfadresse eines Mikroprogramms entsprechend einem Mikrobefehl dem Adressenregister AR zugeführt wird, wird diese Adresse in dem Adressenhalteregister AHRO oder AHR1 in Übereinstimmung mit einem vorbestimmten Bankbezeichnungsbereich B in der Kopfadresse gehalten. Dann werden zwei Mikrobefehle von dem Steuerspeicher über den Decodierer DEOi (oder DEC2) in Übereinstimmung mit der obigen Adresse ausgelesen. Die so ausgelesenen Mikrobefehle werden einem Eingangsanschluß jedes UND-Kreises UND1 und UND2 jeweils über die ODER-Kreise 0DER1 und 0DER2 zugeführt. Dem anderen Eingangsanschluß der UND-Kreise UND1 und UND2 werden das Ausgangssignal von dem Mikrobefehlauswahl-Bezeichnungskreis ID zugeführt, der die Bedingung bezeichnet, ob eine Verzweigung auf der Basis des Ergebnisses einer Operation o.dgl. entsprechend dem vorangehenden Mikrobefehl ausgeführt wird oder nicht. Unter der Wirkung dieses Ausgangssignals wird einer der vorstehend erwähnten beiden Mikrobefehle dem Datenregister DR zugeführt. Der Mikrobefehlauswahl-Bezeichnungskreis ID ist z.B. mit einem Flip-Flop gebildet. Wenn sich der Kreis ID in seinem Ruckste11zustand befindet, ist keine Verzweigung vorhanden, und der UND-Kreis UND1 ist leitend, um die Information des Teils GERADE der Bank dem Datenregister DR über den ODER-Kreis 0DER3 zuzuführen. Wenn sich der Kreis ID in seinem Einstellzustand befindet, ist eine Verzweigung vorhanden, und der UND-Kreis UND2 ist leitend, um die Information des Teiles UNGERADE der Bank dem Datenregister DR über den ODER-Kreis 0DER3 zuzuführen.
Danach wird der nächste Adressenteil des in dem Datenregister DR gespeicherten Mikrobefehls auf das Adressenregister AR überführt und der Steuerteil wird auf die jeweiligen Teile des Computers übertragen. Im wesentlichen zur selben Zeit,
509825/0936
- SH -
• ο'
wie der Adressenteil in dem Adressenregister AR gespeichert wird, wird er in dem Adressenhalteregister AHRO oder AHR01 in Übereinstimmung mit der Steuerung der Information des Bankbezeichnungsbereiches, der in dem Adressenteil vorgesehen ist, gespeichert. Der Adressenteil wird nämlich in dem Adressenhaltekreis AHRO oder AHR1 über den UED-Kreis UND4 oder UND3 in Abhängigkeit davon gespeichert, ob der Bankbezeichnungsbereich "0" oder "1" ist. Danach werden die obigen Operationen wiederholt, was nicht beschrieben wird.
Als nächstes wird der Grund erläutert, warum die Leistung des Mikroprogrammier-Steuersystems der Erfindung gleich der oder besser als die Leistung des bekannten Mikroprogrammier-Steuersystems der Pig. 2 trotz der Verwendung eines Steuerspeichers mit geringer Leistung ist. Es wird angenommen, daß der Steuerspeicher CM in Fig. 4 mit den Bänken BKO und BK1 gebildet wird, deren Kapazität halb so groß wie die des Steuerspeichers in Pig. 2 ist und deren Zykluszeit doppelt so lang wie die des Steuerspeichers in Pig. 2 sein soll.
Pig. 5 ist ein Zeitdiagramm zum Auslesen des Mikrobefehls in Pig. 4. tO, ti, t2, ... bezeichnen Zeitzyklen des Computers. Pur jeden Zyklus wird eine Adresse in dem Adressenregister AR eingestellt.
In Abhängigkeit von dem Bankbezeichnungsbereich B in dem Adressenregister AR wird die Adresse der Bank BKO oder BK1 des Steuerspeichers CM zugeführt. Da aber die Speicherauslesezykluszeit jeder der Bänke BKO und BK1 zwei Zyklen des Computertakts, wie oben beschrieben, sein soll, wird die Adresse zeitweilig in den Adressenhalteregistern AHRO und AHR1 zum Halten der Adresse für die beiden Zyklen gespeichert.
Wie in Pig. 5 dargestellt ist, wird die Adresse von dem Adressenregister. AR in das Adressenhalteregister AHRO in den Zyklen ti, t3» t5> ... und in das Adressenhalteregister
509825/0936
Λ.
AHR1 in den Zyklen t2, t4, t6, ... eingesetzt. Die in das. Adressenhalteregister AHRO eingesetzte Adresse wird durch den Decodierer DEG1 decodiert, wonach Daten von den Adressen des Speichers der Bank BEO ausgelesen werden, d.h. deren Teile GERADE und UNGERADE werden in etwa zwei Zyklen (siehe CMBO-Lesen in Fig. 5) bezeichnet. Die Daten nur des Teils GERADE werden in das Datenregister DR wegen des Flip-Flops, des Mikrobefehlauswahl-Bezeichnungskreises ID eingesetzt. Der nächste Adressenteil in dem Datenregister DR wird in das Adressenregister mit dem Zyklus t3 eingesetzt.
Der Prozeß, bei dem eine Adresse von dem Adressenregister AR ausgesandt wird und dann die nächste Adresse in das Adressenregister AR wieder eingesetzt wird, erfordert zwei Zyklen, wie durch die Pfeile mit ausgezogenen Linien angezeigt. Eine' Adresse, die in gleicher Weise von dem Adressenregister AR dem Adressenhalteregister AHR1 zugeführt wird, um darin in dem Zyklus t2 eingestellt zu werd'en, wird zum Auslesen der Daten von den Teilen GERADE und UNGERADE des Speichers der Bank BK1 in zwei Zyklen verwendet. Da in·diesem Fall der Flip-Flop des Mikrobefehlauswahl-Bezeichnungskreises ID sich in seinem Rückstellzustand befindet, werden nur die Daten des Teiles GERADE in das Datenregister DR eingesetzt und der nächste Adressenteil der Daten wird in das Adressenregister AR in dem Zyklus t4 eingesetzt;
Die Operation zum Auslesen der Bank BK1 erfordert auch zwei Zyklen, wie durch die Pfeile in gestrichelten Linien angegeben ist.
Die Ausleseoperation der Bänke BKO und BE1 des Steuerspeichers CM werden abwechselnd ausgeführt und überlappen einander zeitlich, so daß, obwohl die Lesegeschwindigkeit jeder Bank
zwei Zyklen beträgt, die gesamte Lesegeschwindigkeit ein Zyklus ist.
Fig. 6 ist ein Detailschaltbild der Schaltung zum Auslesen der Daten von dem Steuerspeicher der Fig. 4.
509825/0936
Beim vorliegenden Beispiel bilden Bits 0 bis 12 in dem Datenregister DR den nächsten Adressenteil, und wenn dieser Teil in das Adressenregister AR eingesetzt wird, wird die Adresse der Bits 0 bis 11 dem Adressenhalteregister AHRO oder AHR1 auf der Basis des Wertes des Bankbezeichnungsbereichs B des zwölften Bits zugeführt.
Die Zahl der Adressen, die durch die zwölf Bits O bis 11
1 2
bezeichnet werden können, beträgt 2 = 2048. Andererseits weisen die Bänke BKO und BK1 des Steuerspeichers CM jeweils zwei Teile GERADE und UNQERADE auf, in denen Worte W mit 32 Bits durch 4K Worte (4096) gespeichert werden können. Demgemäß können 1Ie]D!! insgesamt in dem Steuerspeicher gespeichert werden, jedoch kann durch Bezeichnen der Adressen der Bits 0 bis 11 gemeinsam mit den Teilen GERADE und UNGERADE der Bank BKO oder BK1 die Hälfte der Adressen von 16KW bezeichnet werden. Das vorliegende Beispiel verwendet dann Daten von geraden Adressen, wie unter Bezugnahme auf die Mg. 10 und 11 beschrieben werden wird. Die Adressen, die durch die Bits 0 bis 12 des Datenregisters bezeichnet werden können, d.h. die dreizehn Bits, betragen 18 KW. Das zwölfte Bit (der Bankbezeichnungsbereich B) wird jedoch zum Schalten der Bänke BKO und BK1 verwendet und die Teile GERADE und UNGERADE werden durch den Mikrobefehlauswahl-Bezeichnungskreis ID geschaltet, so daß, wenn die Bits 0 bis 11 als Adresseninformation verwendet werden, nur eines der Daten, die von den Teilen GERADE und UNGERADE jeder Bank ausgelesen worden sind, letztlich bezeichnet werden kann.
Zweiunddreißig Paare von ODER-Gattern 0DER1 und 0DER2 zum Datenauslesen sind vorgesehen und das ODER-Gatter 0DER1 des ersten Paares wird mit dem nullten Bit der Teile GERADE jeder Bank gespeist und das ODER-Gatter 0DER2 des ersten Paares wird mit dem nullten Bit des Teils UNGERADE jeder Bank gespeist. In gleicher Weise werden die ODER-Gatter 0DER1 und 0DER2 des zweiten Paares jeweils mit den ersten Bits der Teile GERADE und UNGERADE der beiden Bänke
509325/0936
gespeist und die verbleibenden Bits werden aufeinanderfolgend den ODER-Gattern ODER1 und ODER2 der nachfolgenden Paare zugeführt.
Durch Bezeichnen des Bankbezeichnungsbereichs B werden die Bits O bis 31 der Teile GERADE und UNGERADE jeder der Bänke (z.B. BKO) den zweiunddreißig Paaren der UND-Gatter UND1 und UND2 über die ODER-Gatter 0DER1 und 0DER2. zugeführt. Die anderen Eingänge der UND-Gatter UND1 und UND2 werden mit dem Plip-ΙΊop des Mikrobefehlauswahl-Bezeichnungskreises ID verbunden. Wenn der Plip-Plop sich in seinem Rückstellzustand befindet, ist keine Verzweigung vorhanden und das UND-Gatter UND1 wird geöffnet, um nur die Daten des Teils GERADE durchzulassen. Wenn sich der Flip-Plop in seinem Einstellzustand befindet, ist eine Verzweigung vorhanden und das UND-Gatter UND2 wird geöffnet, um nur die Daten des Teils UNGERADE durchzulassen. Demgemäß werden die Auslesedaten eines Wortes in das Datenregister DR über die zweiunddreißig ODER-Gatter eingestellt. Die Bits O bis 12 des nächsten Adressenteils werden dem Adressenregister AR zugeführt und Bits 13 bis 31 des Punktionsteils werden dem Decodierer zum Steuern einer Operation o.dgl. zugeführt.
Fig. 7 zeigt ein Schaltbild eines Kreises zum Schalten der Bänke BKO und BK1 und ein Diagramm zum Erläutern der Verzweigungssteuerung.
Wenn die Bits 0 bis 12 des Datenregisters DR als nächste Adresse in das Adressenregister eingestellt werden, wie oben beschrieben wurde, werden die oberen Bits 0 bis 11 jeweils einem Eingang jedes der UND-Gatter UNDO bis UND11 zugeführt und nur das zwölfte Bit wird mit den anderen Eingängen der UND-Gatter UNDO bis UND11 direkt oder über einen Inverter I verbunden. .
Wenn demgemäß das zwölfte Bit ( der Bankbezeichnungsbereich B) "0" ist, werden die UND-Gatter UNDO bis UND11 an der Seite der Bank BKO geöffnet, so daß die Bits 0 bis 11 dem Adressenhalteregister AHRO zugeführt werden. Wenn andererseits das
509825/0936'
- vt -
ewölfte Bit "1" ist, werden die UND-Gatter UNDO bis ÜND11 an der Seite der Bank BK1 geöffnet, so daß die Adresse der Bits 0 bis 11 dem Adressenhalteregister AHR1 zugeführt wird.
Die Bits 13 bis 16 des Datenregisters DR bilden einen Verζvfeigungssteuerfunktionsteil, der die Bedingung für die Verzweigung durch die Kombination dieser Bits feststellt.
Wie an der rechten Seite der Pig, 7 veranschaulicht ist, wird in dem Pail, daß die Bits des Verzweigungssteuerfunktionsteils "0000" sind, "0" dem Mikrobefehlauswahl-Bezeichnungskreis ID zugeführt. Im Palle von "0001" wird "1" vorgesehen. Im Palle von "0010" wird ein Signal nur erzeugt, wenn der Wert eines Registers Z (siehe Pig. 8) "0" als Ergebnis einer Operation ist. Im Palle "0011" wird "1" nur geliefert, wenn der Wert des Registers Z als Ergebnis der Operation positiv ist. Im Palle von "0100" wird "1" nur geliefert, wenn ein Übertrag als Ergebnis der Operation vorhanden ist. In dieser Weise wird die Bedingung für eine Verzweigung festgestellt.
Pig. 8 ist ein Detailschaltbild der Verzweigungsbedingung.
Die Blöcke sind gesteuerte Kreise des Computers. IS bezeichnet lokale Speicher. A REG und B REG- bezeichnen Register zum Einstellen von zu bearbeitenden Zahlen. ALU bezeichnet eine arithmetische und logische Einheit. Z REG ist ein Register zum Einstellen des Ergebnisses einer Operation. D bezeichnet einen Entscheidungskreis und G zeigt ein Gattersignal von dem Decodierer.
Die Bits 17 bis 31 des Datenregisters DR in Pig. 7 werden dem Decodierer zugeführt, um ein Gattersteuersignal G des Registers zu liefern, das den Adressenregistern der lokalen Speicher IS, den Registern A REG und B REG oder dem Register Z REG zugeführt wird.
509825/0 936
- 13 η- .
Durch Anlegen des Gattersteuerslgnale werden die Daten in den lokalen Speichern IS ausgewählt und in die Register A REG und B REG eingesetzt und das Ergebnis der Operation, die in der arithmetischen und logischen Einheit ALU ausgeführt wird, wird in das Register Z REG eingesetzt. Das Ergebnis einer Operation für eine Addition, eine logische Summe, ein logisches Produkt o.dgl., wird z.B. von dem Register Z REG anderen Steuerkreisen zugeführt und darin ausgenutzt oder wieder in den lokalen Speichern LS gespeichert.
Die Bits 13 bis 16 des Datenregisters DR in Pig. 7 bilden einen Bereich zum Feststellen der Bedingung für· eine Verzweigung. Wie bei dem vorangehenden Beispiel, wo dieser Bereich "0000" ist, wird die nächste Verzweigungsbezeichnung, d.h. "0", dem Mikrobefehlauswahl-Bejzeichnungskreis ID ohne Rücksicht auf das Ergebnis der Operation zugeführt und auch in dem Falle "000-1'· wird "1" als nächste Verzweigungsbedingung ausgesandt. In den Fällen "0010", "0011", »0100»,... folgt die Verzweigungsbedingung dem Ergebnis der Operation. Wenn nämlich der Inhalt des Registers Z REG entschieden ist, wird der Entscheidungskreis D mit dem Register Z REG verbunden, um Z = 0, Z> 0, usw. zu entscheiden. Wenn der Inhalt des Registers Z REG sich in Übereinstimmung mit der obigen Beziehung befindet, wird ein Signal "1" ausgesandt. In dem Fall, ,daß der Anwesenheit oder der Abwesenheit eines Übertrags gefolgt wird, wird des weiteren ein Übertragssignal von der oberen Ziffer der arithmetischen und logischen Einheit abgenommen und einem UND-Gatter zugeführt, um das Signal "1" dem Mikrobefehlauswahl-Bezeichnungskreis ID zuzuführen. .
Fig. 9 ist ein Schaltbild zum Erläutern des Prinzips der Mikr©programmierung.
Wenn z.B. die Verzweigungssteuerbits des Datenregisters DR "0100" sind und der Inhalt der Gattersteuerfunktion eine Bezeichnung A+B*Z ist, wird das Gattersteuerfunktionsbit durch einen Decodierer DEO decodiert, um ein Gattersignal
509825/0936
-H-
an auegewählte Register A REG· und B REG-, die in Saromelschlenen A und B eingesetzt werden sollen, anzulegen. Das Ergebnis der Addition der Inhalte der Sammelschienen A und B wird von einer Ausgangssammelschiene abgeleitet und in das Register Z REG· eingesetzt. An einen Eingang eines der UND-Gatter UND in einem Verzweigungsbedingungs-Herstellkreis BG wird ein Signal von dem Verzweigungssteuerfunktionsteil des Datenregisters DR angelegt und.an den anderen Eingang wird ein Übertragsausgangssignal von der arithmetischen und logischen Einheit ALU angelegt. Wenn demgemäß ein Übertrag als Ergebnis der Operation A+B vorhanden ist, wird das UND-G-atter UND geöffnet, um ein Verzweigungsbefehleinstellsignal an den Mikrobefehlauswahl-Bezeichnungskreis ID anzulegen, um den Flip-Flop in seinen Einstellzustand zu bringen, wodurch der Teil UNGERADE des Steuerspeichers CM zur Zeit des Auslesens des nächsten Mikrobefehls ausgewählt wird. Im Falle keines Übertragsausgangs wird das UND-Gatter UND nicht geöffnet und es wird kein Einstellsignal ausgesandt, so daß der Flip-Flop des Mikrobefehlauswahl-Bezeichnungskreises ID in seinen Rückstellzustand gestellt wird und der Teil GERADE des Steuerspeichers OM ausgewählt wird.
Da die Entscheidung der Verzweigungsbedingung in der vorderen Hälfte der Zykluszeit ausgeführt wird, ist es notwendig, den Entscheidungszustand bis zu der letzteren Hälfte der Zykluszeit zu halten, in welcher der Mikrobefehl ausgelesen wird. Dies kann erreicht werden, indem der Flip-Flop des Mikrobefehlauswahl-Bezeichnungskreises ID in seinen Einstelloder Rückstellzustand gestellt wird.
Fig. 10 ist eine Darstellung zur Erläuterung der Mikrobefehlausleseoperation. Fig. 1OA und 1OB zeigen jeweils die Folge der Operationen der Mikrobefehle zum Vergleich eines bekannten Systems mit dem System nach der Erfindung. Fig. 100 und 1OD zeigen jeweils ein Verfahren zum Bezeichnen der nächsten Adresse zum Vergleich einea bekannten Systems mit dem System nach der Erfindung.
509825/0936
Pig. 1OA und 10B zeigen beide ein Beispiel, bei dem vier kontinuierliche Operationen (Steuerinformation) ausgeführt werden. Diese vier Operationen (Steüerinformation) werden mit PN2, PN4, PN6 und PN8 bezeichnet, die jeweils Funktionen der Mikrobefehle entsprechend der Datenübertragung zwischen Registern, einer Addition usw. sind.
Gemäß Pig. 1OA werden fünf Mikrobefehle in den Adressen 0, 2, 4, 6 und 8 des Steuerspeichers CM gespeichert und die Adresse jedes Mikrobefehls, der als nächster ausgeführt werden soll, wird durch das Bitmuster jedes Mikrobefehls angezeigt, der unmittelbar vorangeht, und die Mikrobefehle werden einer nach dem anderen ausgeführt. Um dies zu leisten, ist ein Steuerspeicher mit hoher Geschwindigkeit erforderlich.
Gemäß Pig. 1OB werden fünf Mikrobefehle in den Adressen 0, 2, 4, 6 und 8 des Steuerspeichers wie in dem Pail der Pig. 1OA gespeichert, jedoch werden bei diesem Beispiel zwei Bänke BKO und BK1 verwendet, wobei in jeder Bank Mikrobefehle gespeichert werden, von denen jeder die Adresse nach der nächsten Adresse bezeichnet. Wie sich aus Pig. 1OB ergibt, bezeichnet nämlich der Mikrobefehl bei der Adresse 0 in der Bank BKO die Adresse 0 der Bank BKO,. welche die Adresse nach der nächsten Adresse ist. Der Mikrobefehl bei der Adresse 2 der Bank BKI bezeichnet die Adresse 6 der Bank BK1, welche die Adresse nach der nächsten Adresse 1st. Wie sich hieraus ergibt, können bei dem Mikroprogrammiersteuersystem der Erfindung, auch wenn ein Steuerspeicher mit niedriger Operationsgeschwindigkeit verwendet wird, die Operationen der Bänke BKO und BK1 in einer Weise ausgeführt werden, daß sie sich zeitlichjiberlappen, da die folgenden Mikrobefehle jeweils von der anderen Bank ausgelesen werden. Als Ergebnis ist die Verarbeitungszeit die Hälfte der Zykluszeit jeder Bank.Auch wenn die Zykluszeit jeder Bank gemäß Pig. 1OA doppelt so lang wie die gemäß Pig. 1OB ist, sind nämlich die IeseZykluszeiten der beiden Systeme einander gleich.
509825/0938
-16" 2A57612
Unter Bezugnahme auf die Pig. 11A und 11B wird nachfolgend die Verarbeitungeoperation im Falle einer Verzweigung beschrieben.
Das dargestellte Beispiel zeigt den Pail, bei dem die Operation zur Adresse 4 oder 5 auf der Basis des Ergebnisses der Steuerung durch die Steuerinformation PN2 des Mikrobefehls, der von der Adresse 2 ausgelesen ist, verzweigt ist. Bei dem bekannten System der Pig. 11A, bei dem das Darstellungsbit "1" in Übereinstimmung mit der Verzweigungsbedingung des Mikrobefehls der Steuerinformation FN2 wird, wird der Mikrobefehl von der Adresse 5 (der Mikrobefehl des Ausgangs des Teils UlTG-ERADE) in dem Datenregister gespeichert. Andererseits rückt bei der in Pig. 11B gezeigten Anordnung nach der Erfindung die Operation zur Adresse 4 oder 5 entsprechend der Verzweigungsbedingung des Mikrobefehls der Steuerinformation PN2 vor. Der Mikrobefehl der Adresse 4 (der Teil GERADE) oder 5 (der Teil UNGERADE) startet, um einen Zyklus vorher ausgelesen zu werden, jedoch wird, unmittelbar bevor er an das Datenregister angelegt wird, nur der Mikrobefehl der Adresse 5 ausgewählt und in dem Datenregister durch die Darstellung des Mikrobefehlauswahl-Bezeichnungskreises ID auf der Basis des Ergebnisses der Steuerung des Mikrobefehls gespeichert, d.h. da ein Darstellungsbit "1" in dem Pali ausgesandt wird, in dem eine Verzweigung vorhanden ist.
Die Verarbeitsoperation wird wie oben beschrieben ausgeführt, so daß bei dem Mikroprogrammiersteuersystem der Erfindung dieselbe Verarbeitungsgeschwindigkeit wie bei dem bekannten System mit einem billigen Speicher ohne Rücksicht auf die Anwesenheit oder Abwesenheit einer Verzweigung erhalten werden kann.
Pig. 12 und 13 zeigen jeweils ein Blockschaltbild eines weiteren Beispiels der Erfindung unter Verwendung von vier Bänken und ein Zeitdiagramm für eine Mikrobefehlausleseoperation.
509825/0936
Die vorangehende Beschreibung bezieht sich auf den Pail, . bei dem zwei Bänke des Steuerspeichers CM vorgesehen sind. Im Falle der Verwendung eines"Speichers mit längerer. Zykluszeit kann jedoch die leerzeit eliminiert werden, ,indem die Zahl der Bänke auf drei, vier, .... erhöht wird, und kann eine Verarbeitung mit hoher Geschwindigkeit ausgeführt werden.
Fig. 12 zeigt den !'all der Verwendung von vier Bänken BKO bis BK3. Adressen 0, 8, 16, 24, ... 8n und 1, 9, 17, 25 8n4-1 werden jeweils den Teilen GERADE und UNGERADE- der Bank BEO zugeteilt. Adressen 2, 10, 18, 26, .. 8n+2 und 3, 11, 19, 27, ... 8n+3 werden jeweils den Teilen GERADE und UNGERADE der Bank BKI zugeteilt. In gleicher Weise werden Adressen 8n+4 und 8n+5 jeweils den Teilen GERADE und UNGERADE der Bank BK2 und Adressen 8n+6 und 8n+7 jeweils den Teilen GERADE und UNGERADE der .Bank BK3 zugeteilt. In den Bereichen entsprechend den Adressen des Teils GERADE werden Mikrobefehle aufgezeichnet, die ohne Berücksichtigung der Operation, wie einer Verzweigung o.dgl., ausführbar' sind, und in den Bereichen, die den Adressen des Teils UNGERADE entsprechen, werden Mikrobefehle auf der Grundlage einer Verzweigung aufgezeichnet.
Wenn eine Kopfadresse eines Mikroprogramms entsprechend einem Mikrobefehl dem Adressenregister AR zugeführt wird, wird zuerst die auszulesende Bank in Übereinstimmung mit einem vorbestimmten Bankbezeichnungsbereich B in der Kopfadresse im wesentlichen zur selben Zeit wie die Anlegung der Kopfadresse (im Zyklus ti) bezeichnet. Bei dem vorliegenden Beispiel werden von den Bits 0 bis 13 des Adressenregisters AR die beiden niedrigen Bits als Bankbezeichnung'sbereich B verwendet. Entsprechend dem Bitmuster 00, 01, 10
oder 11 des Bereichs B wird die Adresse (das Bit 0 bis 11) einem der Adressenhalteregister AHRO bis AHR3 zugeführt. Adressen werden nämlich aufeinanderfolgend in das Register AHRO in dem Zyklus ti, in das Register AHR1 in dem. Zyklus t2 und in das Register AHR2 in dem Zyklus t3
.50 9825/093 6
eingesetzt und in den Registern AHRO bis AHR3 wird die Adresse für vie.r Zyklen gehalten. In der obigen Weise werden die Adressen in die Adressenhalteregister AHRO bis AHR3 parallel eingesetzt, während sie zeitlich um einen Zyklus getrennt verschoben sind, wodurch die Daten von den Bänken BKO bis BK3 ausgelesen werden, während sie um einen Zyklus zeitlich entsprechend getrennt verschoben sind (CM(BK)-Lesen in Mg. 13).
Die Mikrobefehle des Teils UNGERADE oder GERADE, die von
jeder Bank ausgelesen sind, werden ausgewählt und in Abhängigkeit davon angelegt, ob der Flip-Flop des Mikrobefehlauswahl-Bezeichnungskreises ID in seinen Einstelloder Rucks te 11 zustand durch das Signal von den) Verzweigungsbedingungs-Herstellkreis BC eingestellt ist. Fig. 13 zeigt den Fall, bei dem die Flip-Flops sich alle in ihrem Einstellzustand befinden.
Auf diese Weise wird ein Mikrobefehl in das Datenregister DR von jeder Bank für jeden Zyklus eingestellt, so daß die vier Bänke das Datenregister DR im Time-Sharing-Betrieb verwenden.
Danach wird der nächste Adressenteil jedes Mikrobefehls, der in dem Datenregister DR gespeichert ist, zu dem Adressenregister AR übertragen. In diesem Fall bezeichnet der nächste Adressenteil die Adresse nach vier Schritten. Der Mikrobefehl der Adresse 2 der Bank BK1 bezeichnet z.B. die Adresse 10 der Bank BK1, welches die Adresse nach vier Schritten ist.
Auch wenn Speicher mit niedriger Zykluszeit als Steuerspeicher verwendet werden, können demgemäß die Operationen der vier Bänke überlappend ausgeführt werden, so daß eine Verarbeitung innerhalb 1/4 der Zykluszeit jeder Bank ausgeführt werden kann.
Wie vorstehend beschrieben wurde, kann gemäß der Erfindung ein Auslesen mit derselben Geschwindigkeit wie bei dem bekannten Mikrobefehlauslesen durch Verwendung von billigen Steuerspeichern mit niedriger Leistung ausgeführt werden.
509825/0936

Claims (5)

  1. Patentansprüche
    Mikroprogrammier-Steuersystem mit einem Steuerspeicher, von dem mehrere Mikrobefehle mit einer einzigen Adressenbezeichnung abgeleitet werden, mit einem Auswahlgatter zum Auswählen eines von mehreren Mikrobefehlen, die von dem Steuerspeicher ausgelesen sind, und mit einem Datenregister zum Speichern des Mikrobefehls, .der durch das Gatter abgeleitet ist, wobei der nächste Mikrobefehl von dem Steuerspeicher auf der Basis einer Adresse erhalten wird, die in dem Mikrobefehl enthalten ist, der in dem Datenregister gespeichert ist, gekennzeichnet durch mehrere Steuerspeicher unter Verwendung des Datenregisters im Time-Sharing-Betrieb, wobei jeder Mikrobefehl, der dem Datenregister von mehreren Steuerspeichern zugeführt wird, eine Adresse des Mikrobefehls bezeichnet, die nach wenigstens zwei Schritten ausgelesen werden soll.
  2. 2. System nach Anspruch 1, dadurch gekennzeichnet, daß die nächste Adresse des Mikrobefehls, der in dem Datenregister gespeichert ist, zu einem Adressenregister übertragen wird, daß ein Bankbezeichnungsbereich in dem Adressenregister vorgesehen wird und daß mehrere Steuerspeicher in Übereinstimmung mit einer Informationssteuerung des Bankbezeichnungsbereichs ausgewählt werden.
  3. 3. System nach Anspruch 1, dadurch gekennzeichnet, daß ein Adressenhalteregister für jeden der Steuerspeichef vorgesehen wird und daß die übertragene Adresse zeitweilig in dem Adressenhalteregister für eine Zeitperiode gespeichert wird, die zum Auslesen des Mikrobefehls von jedem Steuerspeicher notwendig ist.
  4. 4. System nach Anspruch 1, gekennzeichnet durch einen Mikrobefehlauswahl-Bezeichnungskreis zum Bezeichnen der Bedingung für eine Abzweigung in Übereinstimmung mit dem Ergebnis einer Operation o.dgl. durch den vorangehenden Mikrobefehl, wobei das Gatter durch die Bezeichnung des
  5. 5 09825/0936
    Mikrobefehlauswahl-Bezeichnungskreises betätigt wird, damit nur einer der Mikrobefehle ausgewählt werden kann, wenn mehrere Mikrobefehle gleichzeitig von federn Steuerspeicher ausgelesen werden.
    509825/0936
    l/t
    Leerseite
DE2457612A 1973-12-07 1974-12-05 Mikroprogrammier-Steuereinrichtung Expired DE2457612C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13921173A JPS5410219B2 (de) 1973-12-07 1973-12-07

Publications (3)

Publication Number Publication Date
DE2457612A1 true DE2457612A1 (de) 1975-06-19
DE2457612B2 DE2457612B2 (de) 1979-10-11
DE2457612C3 DE2457612C3 (de) 1980-07-17

Family

ID=15240105

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2457612A Expired DE2457612C3 (de) 1973-12-07 1974-12-05 Mikroprogrammier-Steuereinrichtung

Country Status (5)

Country Link
US (1) US4008462A (de)
JP (1) JPS5410219B2 (de)
DE (1) DE2457612C3 (de)
FR (1) FR2254062B1 (de)
GB (1) GB1465159A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0033468A2 (de) * 1980-01-31 1981-08-12 Siemens Aktiengesellschaft Einrichtung zur Erzeugung von Bedingungscodes in mikroprogrammgesteuerten Universalrechnern

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4099231A (en) * 1975-10-01 1978-07-04 Digital Equipment Corporation Memory control system for transferring selected words in a multiple memory word exchange during one memory cycle
US4133028A (en) * 1976-10-01 1979-01-02 Data General Corporation Data processing system having a cpu register file and a memory address register separate therefrom
GB1564088A (en) * 1977-04-26 1980-04-02 Plastkarosser Ab Vehicle bodies
US4161026A (en) * 1977-11-22 1979-07-10 Honeywell Information Systems Inc. Hardware controlled transfers to microprogram control apparatus and return via microinstruction restart codes
US4155120A (en) * 1977-12-01 1979-05-15 Burroughs Corporation Apparatus and method for controlling microinstruction sequencing by selectively inhibiting microinstruction execution
US4262330A (en) * 1978-10-23 1981-04-14 International Business Machines Corporation I-phase controls for a computer
US4307445A (en) * 1978-11-17 1981-12-22 Motorola, Inc. Microprogrammed control apparatus having a two-level control store for data processor
US4325121A (en) * 1978-11-17 1982-04-13 Motorola, Inc. Two-level control store for microprogrammed data processor
US4459666A (en) * 1979-09-24 1984-07-10 Control Data Corporation Plural microcode control memory
GB2077010B (en) * 1980-06-02 1984-10-31 Hitachi Ltd Microprogramme control method and apparatus therefor
JPS5748139A (en) * 1980-09-04 1982-03-19 Nec Corp Microprogram control device
US4587611A (en) * 1980-09-04 1986-05-06 Amdahl Corporation Multiple module control store for use in a data processing system
JPS6057090B2 (ja) * 1980-09-19 1985-12-13 株式会社日立製作所 データ記憶装置およびそれを用いた処理装置
CA1180457A (en) * 1981-04-17 1985-01-02 Peter N. Crockett Pipelined control apparatus with multi-process address storage
US4531199A (en) * 1981-06-01 1985-07-23 International Business Machines Corporation Binary number substitution mechanism in a control store element
US4493045A (en) * 1981-10-19 1985-01-08 Fairchild Camera & Instrument Corp. Test vector indexing method and apparatus
DE3376893D1 (en) * 1982-10-18 1988-07-07 Nec Corp Information processing apparatus and its instruction control system
US4586127A (en) * 1982-11-03 1986-04-29 Burroughs Corp. Multiple control stores for a pipelined microcontroller
US4546431A (en) * 1982-11-03 1985-10-08 Burroughs Corporation Multiple control stores in a pipelined microcontroller for handling jump and return subroutines
US4551798A (en) * 1982-11-03 1985-11-05 Burroughs Corporation Multiple control stores in a pipelined microcontroller for handling nester subroutines
US4685058A (en) * 1983-08-29 1987-08-04 Amdahl Corporation Two-stage pipelined execution unit and control stores
JPS618785A (ja) * 1984-06-21 1986-01-16 Fujitsu Ltd 記憶装置アクセス制御方式
EP0215028A4 (de) * 1985-02-20 1987-07-23 Magellan Corp Australia Mikroprogrammsteuergerät.
US5058007A (en) * 1987-11-05 1991-10-15 Raytheon Company Next microinstruction generator in a microprogram control unit
US5081609A (en) * 1989-01-10 1992-01-14 Bull Hn Information Systems Inc. Multiprocessor controller having time shared control store
US6253307B1 (en) * 1989-05-04 2001-06-26 Texas Instruments Incorporated Data processing device with mask and status bits for selecting a set of status conditions
JPH07104996A (ja) * 1993-10-05 1995-04-21 Kofu Nippon Denki Kk マイクロプログラム制御装置
US7739481B1 (en) * 2007-09-06 2010-06-15 Altera Corporation Parallelism with variable partitioning and threading

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3292151A (en) * 1962-06-04 1966-12-13 Ibm Memory expansion
US3270324A (en) * 1963-01-07 1966-08-30 Ibm Means of address distribution
US3354430A (en) * 1965-06-30 1967-11-21 Ibm Memory control matrix
US3389380A (en) * 1965-10-05 1968-06-18 Sperry Rand Corp Signal responsive apparatus
US3395392A (en) * 1965-10-22 1968-07-30 Ibm Expanded memory system
US3601812A (en) * 1969-01-22 1971-08-24 Rca Corp Memory system
US3602896A (en) * 1969-06-30 1971-08-31 Ibm Random access memory with flexible data boundaries
US3609700A (en) * 1970-02-24 1971-09-28 Burroughs Corp Data processing system having an improved fetch overlap feature
US3737860A (en) * 1972-04-13 1973-06-05 Honeywell Inf Systems Memory bank addressing
US3812473A (en) * 1972-11-24 1974-05-21 Ibm Storage system with conflict-free multiple simultaneous access
US3813652A (en) * 1973-01-15 1974-05-28 Honeywell Inf Systems Memory address transformation system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0033468A2 (de) * 1980-01-31 1981-08-12 Siemens Aktiengesellschaft Einrichtung zur Erzeugung von Bedingungscodes in mikroprogrammgesteuerten Universalrechnern
EP0033468A3 (en) * 1980-01-31 1982-02-17 Siemens Aktiengesellschaft Berlin Und Munchen Device for generating conditional codes in microprogramme-controlled general purpose computers

Also Published As

Publication number Publication date
JPS5410219B2 (de) 1979-05-02
GB1465159A (en) 1977-02-23
FR2254062B1 (de) 1979-04-27
JPS5087747A (de) 1975-07-15
US4008462A (en) 1977-02-15
DE2457612B2 (de) 1979-10-11
FR2254062A1 (de) 1975-07-04
DE2457612C3 (de) 1980-07-17

Similar Documents

Publication Publication Date Title
DE2457612A1 (de) Mikroprogrammier-steuersystem
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE68922975T2 (de) Speichereinheit mit zwei Toren.
DE2117936B2 (de) Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems
DE2758830A1 (de) Rechenvorrichtung
DE1303416B (de)
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2536622C2 (de) Verzweigungssteuerung mit flexibler Auswahl von Steuerworten
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2524046A1 (de) Elektronische datenverarbeitungsanlage
DE2539211A1 (de) Zugriffssteuereinheit
DE2556617C2 (de) Schiebe- und Rotierschaltung
DE2452498A1 (de) Verfahren und vorrichtung zur erzeugung von zeichenmustern
DE2332971A1 (de) Mikroprogrammsteuersystem
DE2926322A1 (de) Speicher-subsystem
DE2506671C3 (de) Binärdaten-Handhabungsnetzwerk
DE1957600C3 (de)
DE2459476A1 (de) Schaltungsanordnung fuer nichtzyklische datenpermutationen
DE1806464A1 (de) Adressengenerator fuer einen Digitalrechner
DE2519195A1 (de) Assoziativspeicher
DE2727188A1 (de) Anordnung zum adressieren eines speichers
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE69624484T2 (de) Organisationssystem und verfahren zur reihenfolgebestimmung der schaltungen eines mikroprozessors
DE1449540A1 (de) Digital-Rechenmaschine
DE3852708T2 (de) Verfahren und Apparat zum Überspringen mittels Abbildung einer Einsprungstelle.

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8328 Change in the person/name/address of the agent

Free format text: REINLAENDER, C., DIPL.-ING. DR.-ING., PAT.-ANW., 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee