DE2440627C2 - Mikroprogrammierter Rechner - Google Patents

Mikroprogrammierter Rechner

Info

Publication number
DE2440627C2
DE2440627C2 DE19742440627 DE2440627A DE2440627C2 DE 2440627 C2 DE2440627 C2 DE 2440627C2 DE 19742440627 DE19742440627 DE 19742440627 DE 2440627 A DE2440627 A DE 2440627A DE 2440627 C2 DE2440627 C2 DE 2440627C2
Authority
DE
Germany
Prior art keywords
register
memory
main memory
microinstruction
microprogram
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
DE19742440627
Other languages
English (en)
Other versions
DE2440627A1 (de
Inventor
Giancarlo Dipl.-Ing. Mailand/Milano Tessera
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.)
Bull HN Information Systems Italia SpA
Original Assignee
Honeywell Information Systems Italia SpA
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 Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2440627A1 publication Critical patent/DE2440627A1/de
Application granted granted Critical
Publication of DE2440627C2 publication Critical patent/DE2440627C2/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

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)
  • Debugging And Monitoring (AREA)

Description

und gibt mit Hilfe einer Anzahl von Und-Toren sowie erforderlichenfalls Flip-Flops unter der Steuerung der Taktimpulse 7Ui bis TCn eine Anzahl von Mikrobefehlen zu geeigneten Zeiten ab, die außerdem geeignete Zeitdauern CTi bis CTs aufweisen. Sie werden mit Hilfe einer geeigneten Steuerschaltung, die in der Zeichnung nicht dargestellt ist, zu geeigneten Punkten der Datenverarbeitungsanlage — eingeschlossen die Steuereinheit, der Operationsteil und der Speicherteil — geleitet
In den F i g. 1, 2 und 3 deutet ein Pfeil, der auf einen Eingang eines Bedingungselementes, das üblicherweise durch einen Kreis dargestellt ist, an, das ein Taktimpuls Γι bis Tn oder ein getakteter Mikrobefehl CTi bis CTn durch eine Verbindung, die durch den Pfeil dargestellt ist, angelegt wird.
Der Unterschied zwischen Taktimpulsen und getakteten Mikrobefehlen besteht darin, daß die Taktimpulse ohne weitere Bedingung in jedem Zyklus durch die Takteinheit geliefert werden (Maschinen-.yklus), wo hingegen die getakteten Mikrobefehle nur während derjenigen Maschinenzyklen geliefert werden, in denen die entsprechenden Mikrobefehle Q bis Cn vorliegen.
Der Steuerteil 1 umfaßt im wesentlichen einen Nur-Lese-Speicher ROSTA, ein Ausgangsregister für diesen Speicher ROR (Nur-Lese-Register) 3, einen Dekoder 4, ein ROS-Adressenregister (ROSAR) 5, ein zusätzliches Register zum Speichern der ÄOS-Adressen (ROSAR I) 6 und einen Zählteil 7 zum Heraufsetzen der ROS-Adressen.
Der totspeicher ist zur Aufnahme von Mikrobefehlen mit beispielsweise 18 Bits ausgelegt, organisiert in Mikroprogrammen, weiche die Arbeitsweise der Datenverarbeitungseinrichtung steuern und mittels Primitivanweisungen ausgelesen werden.
Die Kreise 9 bis 16 stellen Gruppen von Und-Toren dar, welche den Durchgang von Signalen auf den Verbindungsleitungen, die mit diesen Gruppen verbunden sind, steuern.
Jeder der Gruppen 9 bis 16 wird, wie gesagt, gesteuert entweder durch ein Taktsignal 7} oder durch einen getakteten Mikrobefehl CTj. Im einzelnen werden die Gruppen von Und-Toren 12, 13,16 durch Taktimpulse gesteuert, wo hingegen die Gruppen von Und-Toren 9, 19,11,14 und 15 durch getaktete Mikrobefehle gesteuert werden. Jede Gruppe empfängt an ihren Eingängen und entläßt — wenn durchgeschaltet — an ihren Ausgängen eine Anzahl von geeigneten Signalen auf eine Anzahl von Leitungen, die durch eine einzelne Linie repräsentiert wird und hier »Kanal« genannt werden soll.
Ein Satz von Signalen, repräsentativ für eine feste ÄOS-Adresse in binärer Form, soll auf den Kanal 8 gegeben werden, der nicht durch eine Gruppe von Und-Toren beeinflußt wird.
Um die Funktion der Datenverarbeitungsanlage einzuleiten, kann diese Adresse in diesen Kanal hineingebracht werden, beispielsweise durch Vorwahl von geeigneten Schaltern der Steuerkonsole oder durch Drükken der Starttaste, welche durch die Leitung STARTdie Takteinheit in Betrieb setzt
Die Adresse, die jetzt im Kanal 8 vorliegt, wird in das Register ROSAR eingespeichert und sobald die Gruppe von Und-Toren 12 durch einen Taktimpuls durchgeschaltet ist, wird der Speicher ROS adressiert, ein Mikrowort ausgelesen und durch die Gruppe von Toren 16 in das Register ROR 3 eingespeichert.
Dasselbe Mikrowort, das nu-i an den Ausgangsleitungen des Registers ROR 3 anliegt, wird durch den Deko der 4 dekodiert
Das dekodierte Signal wird durch eine Befehlerzeugungsschaltung 4A mit Oder-Toren zum Taktnetzwerk 21 geleitet und verläßt dieses in Form von getakteten Mikrobefehlen.
Die ÄOS-Adresse, die im Register 5 enthalten ist, kann auf verschiedene Weisen auf den neuesten Stand gebracht werden:
Zunächst kann sie durch die Gruppe von Und-Toren 13 in das Register ROSAR /eingespeichert werden und von dort vermittels der durchgeschalteten Und-Tore 14 der Zählschaltung 7 zugeführt werden, wo sie, beispielsweise um eine Einheit, heraufgesetzt wird. Die auf diese Weise erneuerte Adresse wird anschließend wieder durch den Kanal 17 und die Gruppe von Und-Toren 11 in das Register 5 eingespeichert
Andererseits kann die Adresse aber auch durch eine geeignete Größe K heraufgesetzt werden, die durch das Mikrowort, das im Register ROR 3 gespeichert ist, erhalten wird und der Zählschaltung 7 über den Kanal 18 und die Tore 15 zugeführt wird.
Nach einer weiteren Aiternative kann die neue ROS-Adresse auch durch ein Mikrowort erhalten werden, das aus dem Register ROS ausgelesen wird und im Register ROR enthalten ist Eine geeignete Anzahl von Bits kann durch den Kanal 18 und die Tore 10 in das Register ROSAR 5 überführt werden.
Eine weitere Adressiermöglichkeit ist mit dem Kanal 19 gegeben, der durch eine Gruppe von Toren 9 gesteuert wird und es gestattet, in das Register 5 den Inhalt des Registers A einzuspeichern. Letzteres ist eines von mehreren Registern, das im Operationsteil der Datenverarbeitungseinrichtung enthalten ist, wie es in F i g. 2 dargestellt ist Der Inhalt dieses Registers kann, wie es weiter unten erläutert werden wird, einerseits aus einem anderen Register des Operationsteiles stammen oder von einer externen peripheren Einheit oder aber auch aus dem Hauptspeicher. Deshalb kann man allgemein sagen, daß der Speicher ROS durch jede Informationsquelle adressiert werden kann, die entweder sich in der Datenverarbeitungsanlage selbst befindet oder mit ihr verbunden ist.
Die Parallelverarbeitung von Daten in dem beschriebenen Steuerteil verdient eine kurze Betrachtung: Die Länge der ÄOS-Adressen (in Bits) hängt ab von der Zahl der ÄOS-Speicherplätze, welche adressiert werden müssen und ist unabhängig von der Länge der Mikrowort e, die aus dem Speicher ROS ausgelesen werden. ROS-Adressen mögen beispielsweise eine Länge von 15 Bits haben und wären damit geeignet, um ungefähr 32 000 verschiedene Speicherplätze zu adressieren. Das heißt, daß alle Kanäle, die zum Laden der ÄOS-Adressen benutzt werden, 15 Leitungen enthalten und daß die Register 5 und 615 Bit-Plätze aufweisen.
Im Gegensatz dazu hat das Register 3 viele individuelle Bit-Anordnungen, entsprechend den Bits, die ein Mikrowort formen, beispielsweise 18. Das hsißt, daß, wenn die /?O5-Adresse von einem Mikrowert erhalten wird, das im Register ROR enthalten ist, nur 15 der 18 Bits als Adresse benötigt werden und in den Kanal 18 überführt werden.
Nach der Erfindung ist der Mikroprogrammspeicher ROS für die Möglichkeit vorgesehen, Mikroprogramm-Mikroanweisungen aus dem Hauptspeicher auszulesen, während das Mikroprogramm aufgebaut wird. Zu diesem Zweck wird dem Steuerteil zusammen mit der Adresse der Mikroanweisung eine Binärinformation zugeführt — ein Bit, das angibt, ob die genannte Adresse
eine /?OS-Adresse oder eine Hauptspeicheradresse darstellt.
Dieses Bit kann im Flipflop 24 festgehalten werden, das mit dem Register ROSAR 5 verbunden ist Wie aus F i g. 1 ersichtlich ist, kann dieses Flipflop durch ein Bit gesetzt werden, das durch eine Leitung des Kanals 19 über das Und-Tor 9' zugeführt wird. Andererseits kann es auch durch ein spezifisches Bit der Mikroanweisung, die im Register ROR 3 enthalten ist, über den Kanal 18 und das Und-Tor 10' gesetzt werden.
Weiterhin kann der Inhalt des Flipflops 24 auch noch über die Leitung 8' durch eine Konsolentaste festgelegt werden. Das Setzen des Flipflops 24 wird weiter unten beschrieben werden. Zum Auslesen einer Makroanweisung aus dem Hauptspeicher ist das Adressieren, das is Auslesen und das Überführen derselben notwendig. Deshalb muß diese Operation durch eine Anzahl von aufeinanderfolgenden Mikroanweisungen gesteuert werden.
Es ist bereits darauf hingewiesen worden, daß diese Mikroanweisungen durch eine Hardware-Sequencerschaltung erzeugt werden, die in geeigneter Weise mit dem Teil der Steuereinheit verbunden ist, welcher bereits beschrieben wurde.
F i g. 1 zeigt eine Blockdarstellung des gesamten Steuerteils gemäß einem Ausführungsbeispiel der Erfindung und enthält daher auch den Hardware-Sequencer und die dazugehörigen Verbindungen mit dem Steuerteil zusammen mit den für die Wirksamkeit der Erfindung notwendigen Modifikationen. Der Hardware-Se- quencer wird durch den Block 25 dargestellt Ein bevorzugtes Ausführungsbeispiel dieses Sequencers wird im einzelnen im Zusammenhang mit Fig.4 weiter unten beschrieben werden. Im Augenblick reicht es aus festzustellen, daß die Hardware-Sequencerschaltung bei- spielsweise aus einem 2-Bit Binärzähler bestehen kann.
Der Sequencer wird bei jedem Maschinenzyklus mit Hilfe eines Taktimpulses T, der über eine geeignete Eingangsleitung 22 zugeführt wird, weitergesetzt. Der Taktimpuls ist jedoch nur wirksam, wenn das Flipflop 24 gesetzt ist, d. h„ wenn der Ausgang sich im Zustand »1« befindet Dieser Ausgang dient als Einschaltsignal für den Hardware-Sequencer 25.
Ein Hilfsregister 27, das mit RORM bezeichnet ist dient zur Aufnahme von Informationen vom Hauptspeieher über die Gruppe von Und-Toren 28 und den Kanal 29. Das Register RORM dient zur Aufzeichnung von Informationen, die den Charakter von Mikroanweisungen haben und es ist daher zweckmäßig, daß die Parallelverarbeitung gleich der des Speichers ROS ist so daß eine Binärinformation von derselben Länge wie die der Mikroanweisungen eingespeichert werden kann.
Nur in dem Fall, daß spezifische Mikroanweisungsbits, die im Speicher ROS enthalten sind, redundante Prüfbits sind, wie z. B. Paritäts-Prüfbits, die nicht wichtig für die Erzeugung der Mikrobefehle sind, kann das Register RORM eine kleinere Kapazität haben, die der effektiven benutzbaren Länge der Mikroanweisungen entspricht
Das Register RORM ist über die Gruppe von Und-Toren 30 ebenfalls mit den Eingangsleitungen des Registers ROR verbunden und deshalb ist es möglich, die Information, die in dem Register RORM enthalten ist in das Register ROR einfach dadurch zu transferieren, daß die Gruppe von Und-Toren 30 durchgeschaltet wird.
Die Ausgangsleitungen 31 des Hardware-Sequencers 25 sind über die Gruppe von Und-Toren 32 mit der Befehlserzeugungsschaltung 4/4 verbunden. Diese Schaltung besteht aus einer Anzahl von Oder-Toren. An ihrem Eingang erhält sie sowohl die Ausgangssignale des Hardware-Sequencers als auch die des Dekoders 4 zugeführt.
Die Funktion der Hardware-Sequencerschaltung und ihre Verbindung mit dem Steuerteil wird im einzelnen weiter unten mit Bezug auf F i g. 4 behandelt werden.
Der Operationsteil
Fig.2 zeigt eine Blockdarstellung des Operationsteils der Datenverarbeitungseinrichtung, der an dieser Stelle summarisch und nur der Vollständigkeit halber beschrieben werden soll.
Er besteht hauptsächlich aus zwei Sätzen von Registern 33 und 34, einem Register A und einer Operationsschaltung 35. Der Registersatz 33 beispielsweise enthält 16 Register von jeweils 8 Bit und wird durch einen Mikrobefehlskode über die Eingangsleitungen 37 adressiert. Mit Hilfe einer derartigen Adressierung und bei gleichzeitiger Steuerung entweder der Gruppe von Toren 38 an den Eingängen des Registersatzes oder der Gruppe von Toren 39 am Ausgang desselben wird eine Information, die durch den Kanal 45 ankommt, in dem adressierten Register aufgezeichnet werden. Alternativ oder gemeinsam kann die in dem adressierten Register schon enthaltene oder gerade festgehaltene Information auch in dem Register A festgehalten werden.
Der Inhalt des Registers A wird wiederum auf den Verteilungskanal 40 gegeben und kann dann mittels der Tore wahlweise der Operationsschaltung 35 zugeführt werden.
Der Inhalt des Registers A kann aber auch durch den Kanal 41 und die Tore 42 zum Registersatz 34 übertragen werden. Dieser Satz enthält 16 Register von jeweils 18 Bit und kann durch einen Mikrobefehlskode über den Eingang 43 adressiert werden. Der Inhalt des adressierten Registers ist stets am Verteilungskanal 44 verfügbar und kann von hier aus wahlweise über Tore der Operationsschaltung 35 zugeführt werden. Das adressierte Register in dem Registersatz 4 kann seinerseits mit Information aus verschiedenen Quellen versehen werden. Es ist bereits erklärt worden, wie die in diesem Register A enthaltenden Daten über den Kanal 41 und die Und-Tore 42 zum Satz 34 übertragen werden können.
Eine andere mögliche Quelle ist ein Datenkanal der mit externen peripheren Quellen verbunden ist Dieser Kanal ist mit DAT IN bezeichnet und wird durch die Gruppe von Toren 145 gesteuert
Die Daten, die aus dem Hauptspeicher auf Kanal 128 (in F i g. 3) ankommen, werden in den Registersatz 34 über eine Gruppe von Und-Toren überführt, um durch den Operationsteil verarbeitet zu werden.
Auch der Nur-Lese-Mikroprogrammspeicher ROS kann zum Zweck der Aufzeichnung Daten zum Satz 34 geben. Zu diesem Zweck ist ein Verbindungskanal 47 (Fig. 1 und 2) zwischen dem Ausgang des Registers ROR und dem Registersatz 34 vorgesehen. Dieser Kanal wird gesteuert durch die Gruppe von Toren 48.
Es ist außerdem möglich, dem Registersatz 34 jede vorgegebene Information über einen Kanal 49 (LOAD) zuzuführen, der durch die Gruppe von Toren 50 gesteuert wird.
In den Kanal 49 kann außerdem Information eingegeben werden, die — gesteuert durch eine Bedienungsperson — über die Konsolenschalter erzeugt wird.
Die Registersätze 33 und 34 können parallel gesteuert werden, um nur ein einziges Register in jedem Satz
gleichzeitig zu adressieren. Im Falle des Satzes 33 wird dieses durch das Register A ausgeführt. Dasselbe gilt aber auch für den Satz 34, der im Hinblick auf die Arbeitsweise der Datenverarbeitungseinrichtung jedes Mal als einzelnes Register B angesehen wird. Die Register A und B stellen die benötigten gleichzeitigen Datenträger für zwei Informationen dar, welche der Operationsschaltung zur Verarbeitung angeboten werden. Die Operationsschaltung ist mit den Registern A und B mittels der Verteilungskanäle 40 und 44 über eine Anzahl von Toren verbunden. Die Tore werden in zweckmäßigen Gruppen zusammengefaßt, entsprechend dem Format der zu verarbeitenden Daten (binär, zusammengefaßte oder nicht zusammengefaßte Dezimalen), der Art der auszuführenden Information, der Parallelverarbeitung durch die Register sowie der Operationsschaltung.
In dem betrachteten Beispiel weisen die Register und die Operationseinheit 35 beispielsweise die Fähigkeit zur Parallel verarbeitung von 18 Bits auf. Das gestattet die parallele Verarbeitung von zwei Byts, ohne die Bearbeitung entweder eines einzelnen Byts auszuschließen.
Zu diesem Zweck sind die Tore, die die Eingänge der Operationsschaltung 35 mit den Verteilungskanälen 40 und 41 verbinden, in Gruppen zusammengefaßt, die mit den Bezugszeichen 51 bis 58 versehen sind. Jeder Block, der jeweils eine Gruppe wiedergibt, ist mit der Zahl der übertragenen Bits versehen.
In ähnlicher Weise sind die Ausgänge der Operationsschaltung mit dem Sammelkanal 59 über die Tore 60 bis 63 verbunden.
Die Ausgänge der Operationsschaltungen sind gleichzeitig mittels der Und-Tore 64 bis 67 mit einem Dekoder 68 verbunden, welcher auf bestimmte Ausgangscodes anspricht, wie beispielsweise »alle Null« oder »alle Eins« nur für jene Gruppe von Bits, die den angesteuerten Toren entspricht
Das Signal NZ 2 am Ausgang des Dekoders ist ein Signal »Bedingung hergestellt«, das benutzt wird, um die durch den Operationsteil mit durchgeführten Operationen geeigneten Tests zu unterwerfen.
Der Operationsteil kann in Form von bekannten elektrischen Schaltungen ausgeführt werden, wobei vorzugsweise integrierte Schaltungstechnik verwendet wird. Eine ausführliche Beschreibung einer solchen Operationsschaltung Findet sich in der reichlich vorhandenen Literatur über den Entwurf von elektronischen Datenverarbeitungsanlagen. Als maßgeblicher Text soll R. S. Lesley »Digital Computer and Control Engineering«, Part 4, herausgegeben von McGraw-Hill, genannt werden. Außerdem ist in der durch den Anmelder eingereichten italienischen Patentanmeldung Nr. 26 397 A/73, (eingereicht am 10. 7. 1973) eine bestimmte Ausführung beschrieben, bei der die Operationseinheit verschiedene Schaltungen, die funktionell unabhängig sind, umfaßt, beschrieben. Dieser Anmeldung können weitere Einzelheiten entnommen werden.
Die Operationsschaltung sollte im allgemeinen Operationen der folgenden Art durchführen: arithmetische Binär- oder Dezimaloperationen, logische Operationen wie z.B. Und, Oder, Exklusiv- oder. Vergleich sowie Datenverschiebeoperationen und Vermehrungs- oder Verminderungsoperationen, um eine oder mehrere Einheiten. Die Art der benötigten Operation wird durch eine Gruppe von Mikrobefehlen 70 festgelegt, die vom Steuerteil erhalten wird.
Um die Beschreibung des Operationsteils zu vervollständigen, soll gesagt werden, daß der Sammelkanal 59 mit dem Kanal 45 verbunden ist und daß daher die als Resultat der durch die Einheit 35 durchgeführten Operationen auf dem Sammelkanal vorhandenen Daten in ein geeignetes Register des Satzes 33 übertragen und eingespeichert werden können. Von dort aus können sie in das Register A, zum Festhalten in den Satz 34 oder, falls notwendig, in den Hauptspeicher sowie zur Übertragung über den Kanal 69 und die Gruppe von Toren 84 zu einer externen Peripherieeinrichtung gelangen.
Der Kanal 69 ist mit dem Hauptspeicher verbunden (Fig.3). Der Kanal 85 am Ausgang der Gruppe von Toren 84 dient dazu, Informationen aus der Datenverarbeitungsanlage in periphere Teile zu übertragen. Das geschieht mittels einer Steuerschaltung zur Beeinflussung des Informationstausches, deren Beschreibung für das Verständnis der Erfindung nicht wesentlich ist.
Der Operationsanteil enthält außerdem zwei Umgehungskanäle 83 und 86, die durch Gruppen von Toren 87 und 88 gesteuert werden, um die Verteilerkanäle 40 und 41 direkt mit dem Sammelkanal 59 zu verbinden.
Zusätzlich ist eine Anzahl von nicht dargestellten Flipflops vorgesehen, um besondere Zustände festzuhalten, wie beispielsweise »Fortfahren«, »Ausführen« und außerdem Ergebnisse von Überprüfungen, die durch spezielle Dekoder durchgeführt werden.
Der Hauptspeicherteil
F i g. 3 zeigt eine Blockdarstellung des Speicherteils der Datenverarbeitungseinrichtung. Diese umfaßt im wesentlichen den Hauptspeicher 122, der beispielsweise einen Kernspeicher darstellt, mit einer Parallelverarbeitung von 18 Bits, einem Adressierregister 5/, einem Datenregister DI und einer Anzahl von Verbindungskanälen. Das Adressierregister 5/ erhält von dem Kanal 40 (F i g. 2 und 3) über die Und-Tore die codierte Information, die im Register A festgehalten ist, welches, wie gesagt, in dem in Fig.2 dargestellten Operationsteil enthalten ist.
Das Register 5/ hat eine Kapazität, die der maximal zu erwartenden Speicherkapazität angepaßt ist. Beispielsweise kann ein Register mit 18 Speicherplätzen ungefähr 256 000 Speicherplätze adressieren und ist der Parallelverarbeitung der beschriebenen Datenverarbeitungsanlage angepaßt.
Die Daten, die in den Speicher eingeschrieben werden sollen, werden über den Kanal 69, gesteuert durch die Und-Tore 125, in das Register DI überführt und stammen, wie bereits bekannt, aus dem Register B des Operationsteils. Die Daten, die im Register DI festgehalten sind, werden in die adressierten Speicherplätze über den Kanai Ϊ23 eingeschrieben.
Die aus dem Speicher ausgelesenen Daten werden auf dem Kanal 127 übertragen, über die Tore 126 in das Register DI eingespeichert und von dort aus über den Kanal 128 dem Register B zugeführt, das bereits in der Beschreibung des Operationsteils erwähnt wurde.
Ein zusätzlicher Kanal 129 am Ausgang des Registers ROSAR, der durch die Gruppe von Toren 134 gesteuert wird, ist zum Adressieren des Speichers vorgesehen. Durch diesen Kanal kann eine Mikroanweisungsadresse in das Register SI eingebracht werden, was die Adressierung eines Speicherplatzes im Hauptspeicher anstelle eines Platzes in einer ROS-Position ermöglicht
Der Ausgang des Registers DI ist ebenfalls sowohl mit dem Register B über den Kanal 128 als auch mit dem Register RORM (Fig. 1) über den Kanal 29 und die Gruppe von Toren 28 verbunden, so daß der Inhalt von
DI als Mikroanweisung für den S'.cuerteil verwendet werden kann.
Mit anderen Worten ist ein direkter Austausch von Informationen zwischen dem Hauptspeicher und dem Steuerteil und von Adressen zwischen dem Steuerteil und dem Hauptspeicher vorgesehen. Dieses war solange nicht möglich, als der Steuerteil in der Weise arbeitete, daß er nur die Gruppe von Toren für den Austausch von Information steuerte.
Der Hardware-Sequencer
Nachdem die Struktur der Datenverarbeitungsanlage allgemein beschrieben worden ist, kann jetzt die Beschaffenheit des Hardware-Sequencers und der angeschlossenen Schaltungen näher untersucht werden.
F i g. 4 zeigt ein bevorzugtes Ausführungsbeispiel des Hardware-Sequencers nach Fig. 1. Es enthält im wesentlichen die verbundenen Flipflops 201 und 222. Das Flipflop 24, das mit dem Register ROSAR verbunden und zum Speichern des Bits, das angibt, wo die auszulesende Mikroanweisung festgehalten ist, vorgesehen ist, wird durch einen getakteten Mikrobefehl CTX gesetzt. Das geschieht entsprechend der Information, die an seinem Eingang 202 anliegt, der seinerseits mit einer der Leitungen des Kanals 19 — welcher gleichzeitig zum Einspeichern des Registers ROSAR von dem Registersatz 33 aus dient — oder aber mit einer der Leitungen des Kanals 8 bzw. mit einer Leitung, die zur Eingabe von Daten über die Konsole dient, verbunden ist
Die direkte Ausgangsleitung 203 des Flipflops 24 ist mit einem Eingang des Und-Tores 204, das insgesamt zwei Eingänge aufweist, dem Eingang des monostabilen Multivibrators 205, dem Eingang des Inverters 206, und den Eingängen der Oder-Tore 207 bis 210 verbunden, welche die Ausgänge des Hardware-Sequencers ansteuern. Der Ausgang des monostabilen Multivibrators ist mit den Rücksetzeingängen der Flipflops 201 und 222 verbunden. Der Ausgang des Inverters 206 ist mit einem Steuereingang 272 einer Gruppe von Toren 16 (F i g. 4) verbunden, welche das Einspeichern der Register ROR aus dem ROS steuern.
Der Ausgang des Und-Tores 204, dessen zweiter Eingang vom Taktimpuls T2 angesteuert wird, beeinflußt den Takteingang des Flipflops 201.
Wann, zu Beginn eines Maschinenzyklus, der Mikrobefehl CTl, der nur auf eine entsprechende Mikroanweisung hin erzeugt wird, das Setzen des Flipflops 24 gestattet und der Ausgang des Flipflops den Zustand »1« annimmt, nimmt der Pegel der Leitung 203 ebenfalls den Zustand »1« an, bzw. behält ihn bei, und sperrt dadurch mittels des Inverters 206 die Gruppe von Toren 16.
Auf diese Weise, wenn tatsächlich der binäre Zustand der Leitung 203 von »0« nach »1« übergeht, das heißt, wenn die ÄOS-Adresse durch die Hauptspeicheradresse der Mikroanweisung ersetzt ist, wird der monostabile Multivibrator 205, durch die Anstiegsflanke des Signals getriggert, so daß er einen kurzen Impuls zum Zurücksetzen der Flipflops 201 und 222 liefert
Es darf bemerkt werden, daß das gemeinsame Zurücksetzen der beiden FHpflops 201 und 222 durch den monostabilen Multivibrator nur stattfindet, wenn der Datenträger aus dem die Mikroanweisung ausgelesen und wirklich verändert ist und insbesondere, wenn die die Steuerung durch eine ÄOS-Mikroanweisung geschaltet ist, wodurch das Flipflop 24 sich in zurückgesetztem Zustand und sein Ausgang sich im »0«- Pegel befindet. Wenn eine Mikroanweisung in den Hauptspeicher eingelesen wird, wird das Flipflop 24 gesetzt und sein Ausgang geht in den Zustand »1« über.
Tatsächlich geschieht es nur jetzt, im Falle eines tatsächlichen Wechsels des Datenträgers, daß der monostabile Multivibrator 205 an seinem Eingang eine Anstiegsflanke zugeführt erhält, die ihn triggert. Gleichzeitig gelangt ein Taktimpuls Tl über das Und-Tor 204 an den Takteingang des Flipflops 201. Dieser erzeugt aber keine Zustandsänderung des Flipflops, da dieser Impuls ankommt, wenn das Rücksetzsignal schon anliegt. Dessen Dauer übertrifft die des Taktimpulses und überdeckt ihn zeitlich.
Da beide Flipflops 2Oi und 222 zurückgesetzt sind, befinden sich die jeweiligen invertierten Ausgänge 216 und 218 im »0«-Pegel. Deshalb geht der Ausgang des Und-Tores 207, dessen Eingänge mit den Ausgängen 215 und 217 sowie mit der Leitung 203, die sich alle auf dem »1«-Pegel befinden, verbunden sind, in den »1«-Zustand über.
Es kann leicht aus Fig.4 ersehen werden, daß im Gegensatz dazu die Ausgänge der Und-Tore 208 bis 210 auf dem »0«-Pegel verbleiben.
Das an der Leitung 241 anliegende Signal wird der Befehlserzeugungsschaltung 4/4 zugeführt und bewirkt die Erzeugung einer Anzahl von Mikrobefehlen.
Die Befehlserzeugungsschaltung 4/4, die nicht im einzelnen dargestellt ist, besteht im wesentlichen aus Oder-Toren und gestattet die Erzeugung von Mikrobefehlen in Abhängigkeit von Signalen, die sowohl von der Dekoderschaltung 4 als auch von den Leitungen 211 bis 214 empfangen werden. Die Mikrobefehle, die in Abhängigkeit des Signals auf der Leitung 211 erzeugt werden, steuern das Auslesen des Hauptspeichers an die Adresse, die durch das Register ROSAR 5 bestimmt wird.
Das heißt im einzelnen, daß die auf diese Weise erzeugten Mikrobefehle die Gruppe von Toren 134 (F i g. 3) durchschalten und dadurch den Inhalt des Registers ROSAR in das Register SI überführen und, daß zusätzliche Mikrobefehle zum Auslesen des Speichers erzeugt werden und daß ein weiterer Mikrobefehl das Setzen des Tores 125 ermöglicht, wodurch das Einspeichern der aus dem Speicher ausgelesenen Daten in das Register D/bewirkt wird.
Es ist an dieser Stelle zweckmäßig zu erwähnen, daß die Zeit des Speicherauslesezyklus nicht notwendigerweise mit einem einzelnen Maschinenzyklus zusammenfallen muß, da sie länger andauern und beispielsweise zwei Maschinenzyklen umfassen kann. Deshalb braucht während des Basis-Maschinenzyklus nur das Adressieren des Speichers stattzufinden, während der Mikrobefehl, der die Gruppe von Toren 136 ansteuert, im folgenden Zyklus erzeugt werden kann.
In diesem folgenden Zyklus wird der Zustand des Flipflop 24 nicht verändert, da kein Mikrobefehl erzeugt wird. Der Taktimpuls TZ der über das Und-Tor 204 an das Flipflop 201 geleitet wird, setzt dieses Flipflop, während das Flip-Flop 222 im zurückgesetzten Zustand verbleibt.
Es kann aus F i g. 4 klar entnommen werden, daß jetzt ein logisches »1«-Signal an der Leitung 212 erscheint, während die Leitungen 211, 213 und 214 auf dem »0«-Pegel verbleiben.
Das Signal auf der Leitung 21 erzeugt zu verschiedenen Zwecken andere Mikrobefehle, z. B. zum Ansteuern der Tore 28 (Fig. 1), um auf diese Weise Information über den Kanal 29 vom Register DI zum Register RORM zu übertragen.
11 12
Falls notwendig geht dem Ansteuern der Tore 28 in 59 und 45 und die Gruppe von Toren 38 in ein Register
dieser Phase das Ansteuern der Gruppe von Toren 126 des Satzes 33 überführt werden.
voraus. Zu Beginn des folgenden Maschinenzyklus be- Im folgenden Maschinenzyklus, bei Erscheinen des
wirkt der Taktimpuls T2 ein Weitersetzen des Hard-Se- Taktimpulses Γ2 gehen die Flipflops 201 und 222 in den
quencers, wobei das Flipflop 201 zurückgesetzt und das 5 zurückgesetzten Zustand über, so daß, falls das Flipflop
Flipflop 222 gesetzt wird. Aus F i g. 4 ist ersichtlich, daß 24 noch gesetzt ist, der Eingriff des Hardware-Sequen-
das logische »1 «-Signal auf der Leitung 213 erscheint. cers wiederholt wird, wobei in diesem Fall die neue, in
Auf diese Weise wird ein neuer Satz von Mikrobefeh- dem Register ROSAR enthaltene Adresse benutzt wird
len erzeugt, welcher das Einspeichern derjenigen Mi- und die nachfolgende Anweisung aus dem Hauptspei-
kroanWeisung in das Register ROR steuert, die vorher io eher ausgelesen wird. Auf diese Weise wird die Ausfüh-
ai:s dem Speicher ausgelesen worden ist und nun im rung einer Folge von Mikroanweisungen möglich, auch
Register RORMfestgehalten ist. wenn sich diese im Hauptspeicher befinden.
Die Mikroanweisung, die aus dem Speicher ausgele- Es soll außerdem darauf hingewiesen werden, daß die
sen wurde, wird auf diese Weise im derzeitigen Maschi- Mikroanweisungen, die sich im Hauptspeicher befinden,
nenzyklus angeführt 15 dasselbe Format haben wie die im Speicher ROS vor-
Die5e!be Mikroanweisung liefert zusätzlich die Infor- handenen Mikroanweisungen.
mation, die notwendig ist, um die Adresse auf den neue- Die Ausführung der im Hauptspeicher vorhandenen
sten Stand zu bringen, damit die nachfolgende Mikroan- Mikroanweisungen erfordert selbstverständlich längere
Weisung ausgelesen werden kann und erzeugt zu diesem Ausführungszeiten, da der Ausführung jeder Mikroan-
Zweck Mikrobefehle. 20 weisurag eine Phase des Abrufens der Mikroanweisung
Wenn beispielsweise die Adresse um eines vergrößert vorangehen muß, die mindestens einen Maschinenzy-
werden muß, werden geeignet getaktete Mikrobefehle klus erfordert (beispielsweise zwei),
erzeugt, die die Gruppe von Toren 13 (Fig. 1) befahl- Trotz dieser Beschränkung ist die Erfindung insbe-
gen, die im Register ROSAR gespeicherte Adresse in sondere deswegen nützlich, als sie erlaubt, eine mikro-
das Register ROSAR /einzugeben, und die Gruppe von 25 programmierte Datenverarbeitungsanlage mit einer
Toren 14 ansteuern, um die Adresse, die in ROSAR 1 praktisch unbegrenzten Zahl von Mikroanweisungen zu
gespeichert ist durch die Zählschaltung 7 gelangen zu versehen.
lassen, wobei diese Schaltung die Größe »eins« zu der Es ist ersichtlich, daß mit Hilfe von geeigneten ProAdresse addiert, und schließlich die Gruppe von Toren grammen jedes gewünschte Mikroprogramm, das auf 11 durchschaltet, damit die erneuerte Adresse durch den 30 einem Magnetband, einer Platte, Lochkarte oder jeder Kanal 17 wieder in das Register ROSAR gelangen kann. Art von Datenträger, der über periphere Einrichtungen
Diese Operation, die — durch die Mikroanweisung mit der Datenverarbeitungseinrichtung verbunden wer-
gesteuert — ausgeführt wurde, kann einen Maschinen- den kann, vorhanden ist und in den Hauptspeicher ein-
zyklus umfassen. In diesem Fall setzt eine Mikroanwei- gespeichert werden kann und für den späteren Ge-
sung, die am Ende des Maschinenzyklus erzeugt wird, 35 brauch zur Verfügung steht
das Flipflop 201, während sich das Flipflop 222 sich be- Es bleibt jetzt nur noch übrig zu zeigen, wie es mög-
reits im gesetzten Zustand befindet Der Taktimpuls T2, lieh ist von einer Folge von Mikroanweisungen, die im
der kurz darauf — zu Beginn des nächsten Maschinen- Speicher ROS gespeichert ist, zu einer Folge von im
zyklus — folgt, setzt anschließend beide Flipflops zu- Hauptspeicher festgehaltenen Mikroanweisungen und
rück. 40 umgekehrt überzugehen, d. h. wie das Flipflop 24 in den
Jetzt befindet sich der Hardware-Sequencer wieder gesetzten und in den nicht gesetzten Zustand gebracht
im selben Zustand wie anfangs. Wenn das Flipflop 24 in wird.
gesetztem Zustand verbleibt bewirkt es das Auslesen Dieses kann leicht mit Hilfe von Sprung-Mikroanweider nächsten Mikroanweisung aus dem Hauptspeicher sungen erreicht werden. Mit anderen Worten: eine Mizu der Adresse, die im Register ROSAR enthalten und 45 kroanweisung, welche als im Speicher ROS vorhanden im vorhergehenden Maschinenzyklus auf den neuesten angesehen werden soll, kann die neue Adresse von Mi-Stand gebracht worden ist kroanweisungen und den zugehörigen Datenträger anWenn dagegen die ausgeführte Operation mehr als geben.
einen Maschinenzyklus, beispielsweise zwei, umfaßt Das Format einer Mikroanweisung mag beispielswei-
wie es im Falle eines Speicherauslesens vorkommen so se wie folgt aussehen:
kann, wird der Mikrobefehl »Setzen des Flipflop 201«
nicht ausgegeben und der Hardware-Sequencer wird Bits 0—3 bilden den Funkiionscode. Diese Bits wer-
sequentiell weitergesetzt den benutzt um Mikrobefehle zur Steuerung der
Tatsächlich setzt zu Beginn des nächsten Maschinen- Tore 10 und 10' zu erzeugen.
zyklus der Taktimpuls T2das Flipflop 201, während sich 55 Bit 4 bezeichnet den Träger der Mikroanweisung.
das Flipflop 222 bereits in gesetztem Zustand befindet Es gibt an, ob sich die Mikroanweisung im Speicher
Aus der in F i g. 4 dargestellten Verbindung ist ersieht- ÄOSoder im Hauptspeicher befindet
lieh, daß das Signal mit dem Pegel »1« auf der Leitung Bits 15—18 sind die Bits, die die Adresse der Mikro-
214 erscheint anweisung angeben.
Es wird deshalb ein neuer Satz von Mikrobefehlen 60
erzeugt, der die Vervollständigung der Operation steu- Es ist nicht notwendig, daß die Adressenbits ermögli-
ert, beispielsweise das Einspeichern einer aus dem Spei- chen, alle Speicherplätze des Speichers ROS zu adres-
cher ausgelesenen Information in das Register DI und sieren, da nur einige davon notwendig sind,
von dort aus durch den Kanal 128 und die Gruppe von Mit Hilfe der Mikrobefehle, die durch die Bits 0 wie 3
Toren 46 in ein geeignetes Register des Satzes 34. 65 erzeugt werden, wird das Bit 4 im Flipflop 24 eingespei-
Falls notwendig, können die in dem Register 34 einge- chert und die Bits 5 bis 18 werden in einem Teil des
speicherten Daten im selben Maschinenzyklus durch die Registers ROSAR gespeichert. Während der folgenden
Kanäle 44 und 46, die Gruppe von Toren 88, die Kanäle Maschinenzyklus wird — entsprechend dem Zustand
14
des Flipflops 24 — entweder der Speicher ROS adressiert oder die Operation zum Auslesen der nachfolgenden Mikroanweisung ί'ΐε dem Hauptspeicher mit Hilfe des Hardware-Sequencers eingeleitet
Es ist selbstverständlich, daß diese Sprungiraikroan-Weisung auch im Hauptspeicher enthalten sein kann und damm vom Hauptspeicher zurück zum Speicher ROS oder zu einer anderen Adresse des Hauptspeichers verweist
Der Obergang von einem Träger für Mikroanweisungen zum anderen vermittels der beschriebenen Operation geht zwar sehr schnell vor sich, aber relativ starr, da ein direkter Bezug zwischen Hauptspeicherposition und Sprungmikroanweisung besteht Mit anderen Worten, es ist notwendig, von vornherein zu wissen, welche- Mikroprogramme und Folgen von Mikroprogrammen im Hauptspeicher vorhanden sind und wo sie sich befinden, & h. welche Adresse sie haben. Dadurch kann die Organisation der Information im Hauptspeicher umständlich und nicht flexibel genug werden. Deshalb ist es gün- stig, wenn eine im Hauptspeicher vorhandene Mikroanweisung ausgelesen wird, diese in derselben parametrischen, indirekten Form zu adressieren.
In diesem Fall wird die Adresse, die von der Sprungmikroanweisung geliefert wird, nicht direkt verwendet, sondern gibt die Adresse eines Registers des Satzes 33 an, wo sich die tatsächliche Adresse der benötigten Mikroanweisung befindet und natürlich auch die des Trägers (Hauptspeicher oder Speicher ROS), in dem diese Mikroanweisung festgehalten ist.
In diesem Fall gehen der Sprungmikroanweisung eine Mikroanweisung oder eine Folge von Mikroanweisungen zum Auslesen einer vorgeschalteten Adresse, die im genannten vorgeschalteten Register des Satzes 33 vorhanden ist, voran. Der Inhalt dieser Adresse des Mikro- Programms wird ausgelesen.
Die Mikroanweisung, die dieser Auslesemikroanweisung (oder dieser Folge von Mikroanweisungen) nachfolgt, ist die richtige Sprungmikroanweisung, die angibt, daß diejenige Adresse, die in das Register ROSAR eingespeichert werden soll und dasjenige Bit, das in das Flipfiop 24 eingegeben werden soll, aus dem genannten festen Register des Satzes 33 ausgelesen und über die Tore 9 und 9' eingespeichert werden muß.
Die Information, die dem Speicher ROS eingeschrieben ist, mag von vornherein — a priori — diese Möglichkeit des Übergangs vom Speicher ROS zum Hauptspeicher versehen. Es ist aber auch möglich, die Information nachträglich — a posteriori — einzuführen.
Im Endeffekt wird der Speicher ROS stets durch e;ne Anzahl von modularen Elementen gebildet — jedes für eine begrenzte Zahl von Speicherplätzen — die leicht austauschbar sind. Falls ein Teil eines Mikroprogramms ausgeweitet werden soll, ist es möglich, ein modulares Element, welches den betreffenden Teil enthält, durch ein anderes Element zu ersetzen, das die entsprechenden modifizierten Mikroanweisungen enthält. Die Mikroanweisungen derjenigen Folge, welche durch die eben genannten ersetzt werden, werden zusammen mit denjenigen, welche die Ausweitung der Programmteile bilden, im Hauptspeicher festgehalten.
Falls dieses nicht möglich sein sollte, weil verschiedene Mikroprogramme untereinander verbunden sind, kann die obengenannte Mikroanweisung (Speicher lesen und Springen) in freien Plätzen des modularen EIe- ments untergebracht werden und der Zugang zu ihr durch eine zusätzliche Sprungmikroanweisung innerhalb des modularen Elements hergestellt werden. Auch
ία diesem Fall des Austausches eines modularen Elements kann ;ilso das angestrebte Ergebnis erreicht werden.
"Ϊ-Ί V
Hierzu 4 Blatt Zeichnungen

Claims (6)

1 2 DE-OS 2048 515 bekanntgeworden. Bei diesem be- Patentansprüche: kannten Rechner ist es jedoch nicht möglich, im Lesespeicher Mikrobefehle zu haben, die eine Lesespeicher-
1. Mikroprogrammierter Rechner, der einen Leseoperation, beispielsweise zum Lesen eines Datums, Hauptspeicher (122); ein Hauptspeicher-Adressier- 5 erfordern, während zur gleichen Zeit ein nächster Miregister (SI); ein Hauptspeicher-Ausgangsregister krobefehl aus dem Lesespeicher abgerufen w-ird. Es ist (DI); einen Mikroprogrammspeicher (ROS)-, ein Mi- weiter nicht möglich, daß der Lesespeicher in der gleikroprogramm-Adressierregister (ROSAR); ein Mi- chen Zeitspanne oder im gleichen Maschinenzyklus krobefehlsregister (ROR), das jeweils einen Mikro- zwei unterschiedliche Informationsteile auslesen kann, befehl speichert, der entweder aus dem Hauptspei- 10 die sich an zwei unterschiedlichen Speicherplätzen becher oder dem Mikroprogrammspeicher ausgelesen finden.
wird; ein dem Mikroprogramm-Adressierregister Der Erfindung liegt ausgehend von diesem Stand der (ROSAR) zugeordnetes Hilfsregister (24) zum Spei- Technik die Aufgabe zugrunde, Mikroprogramme sochern einer Information, die spezifiziert, ob der vom wohl im Steuer- als auch im Hauptspeicher eines Rech-Mikroprogramm-Adressierregister adressierte Mi- 15 ners zu speichern und diese auszuführen, und zwar ohne krobefehl sich im Hauptspeicher oder im Mikropro- irgendeine Beschränkung bezüglich der im Hauptspeigrammspeinher befindet; und Adressierkanäis auf- eher gespeicherten Mikrobefehle und Mikroprpgramweist, um entweder den Mikroprogramm-Speicher me, die dabei das gleiche Format wie die im Steuerspeioder den Hauptspeicher aus den Mikroprogramm- eher gespeicherten haben können.
Adressierregister-Eingangskanälen zum Laden ei- 20 Zur Lösung dieser Aufgabe dienen bei einem Rechnes Mikrobefehls entweder aus dem Hauptspeicher ner der gattungsgemäßen Art erfindungsgemäß die im oder dem Mikroprogrammspeicher zu adressieren, Kennzeichen des Hauptanspruchs angegebenen Mittel, dadurch gekennzeichnet, daß der Rechner Auf diese Weise wird es möglich, wenn der sich in Ausweiter eine logische Sequencerschaltung (25) auf- führung befindliche Mikrobefehl einen nächsten Mikroweist, die, wenn das Hilfsregister (24) anzeigt, daß 25 befehl erfordert, der sich im Hauptspeicher befindet, der nächste Mikrobefehl aus dem Hauptspeicher auch diesen auszuführen und zur gleichen Zeit eine (122) ausgelesen werden muß, eine Vielzahl von auf- Hauptspeicher-Lese-Schreiboperation zu steuern,
einanderfolgenden Mikrokommandos erzeugt, die Weiterbildungen der Erfindung sind in den Unterandie Übertragung des nächsten Mikrobefehls aus Sprüchen angegeben.
dem Hauptspeicher (122) in das Mikrobefehlsregi- 30 Die Erfindung wird anhand eines in der Zeichnung
ster (ROR) bewirken. dargestellten Ausführungsbeispiels des Erfindungsge-
2. Mikroprogrammierter Rechner nach Anspruch genstandes nachstehend näher erläutert Es zeigt
1, dadurch gekennzeichnet, daß die logische Sequen- Fig. 1 eine schematische Blockdarstellung der
cerschaltung (25) einen 2-Bit-Binärzähler (Flipflops Steuereinheit des mikroprogrammierten Rechners,
201,222) zum Erzeugen von vier aufeinanderfolgen- 35 F i g. 2 eine schematische Blockdarstellung des Ope-
den Mikrobefehlen enthält rationsteils des mikroprogrammierten Rechners,
3. Mikroprogrammierter Rechner nach Anspruch F i g. 3 eine schematische Blockdarstellung des 1, gekennzeichnet durch einen zusätzlichen Adres- Hauptspeicherteils und
sierkanal (18) von dem Mikrobefehlsregister (ROR) Fig.4 eine bevorzugte Ausführungsform der Se-
zu dem Mikroprogramm-Adressierregister (RO- 40 quencerschaltung nach der Erfindung.
SAR) und zu dem Hilfsregister (24). In F i g. 1 ist der Steuerteil 1 und die Takteinheit 2 der
4. Mikroprogrammierter Rechner nach Anspruch Datenverarbeitungsanlage dargestellt. Die Beschrei-1, gekennzeichnet durch einen Adressierkanal von bung ist leichter zu verstehen, wenn zunächst die Taktmindestens einem Arbeitsregister (A, 33) zu dem Mi- einheit 2 betrachtet wird. Diese Einheit umfaßt im wekroprogramm-Adressierregister (ROSAR) und dem 45 sentlichen eine Taktschaltung 20 und ein Taktnetzwerk Hilfsregister (24). 21. Die Taktschaltung 20 besteht praktischerweise aus
5. Mikroprogrammierter Rechner nach Anspruch einer Verzögerungsleitung mit Zwischenanzapfungen,
3, dadurch gekennzeichnet, daß er für die Verwen- die durch eine monostabile Multivibratorschaltung gedung von Sprungmikrobefehlen ausgebildet ist, die speist wird, welche ihrerseits getriggert wird entweder ein erstes Bitfeld zur Angabe der Adresse der nach- so durch ein externes Startsignal oder aber vom Endanfolgenden Mikrobefehle und ein zweites Bitfeld zur schluß der Verzögerungsleitung, um eine zyklische FoI-Angabe des Datenträgers, der den nachfolgenden ge von Taktimpulsen zu erzeugen.
Mikrobefehl enthält, aufweisen. Als Alternative ist es bekannt, eine Hochfrequenzos-
6. Mikroprogrammierter Rechner nach Anspruch zillatorschaltung zu verwenden, um eine Basisfrequenz
4, dadurch gekennzeichnet, daß er für Mikrobefehle 55 zu erzeugen, von der eine Folge von Taktimpulsen mit vorgesehen ist zum Überführen eines ersten und ei- Hilfe von Frequenzteilern erhalten wird. Die Betriebsnes zweiten Bitfeldes einer Information, die im Ar- weise der Taktschaltung kann am Ende eines jeden Zybeitsregister (A, 33) bzw. in dem Mikroprogramm- klus mit Hilfe eines Befehls, der am Stopanschluß ange-Adressierregister (ROSAR) und in dem Hilfsregister legt wird, unterbrochen werden.
(24) enthalten ist. 60 Einige Taktimpulse werden durch die Ausgangsleitungen Ti, T2, Ti,... bis Tn zu verschiedenen Punkten
der Datenverarbeitungsanlage hingeführt, wo sie zyklisch vorbestimmte Und-Tore ansteuern.
Andere Taktimpulse TQ, TCi,... bis TCs werden an
Die vorliegende Erfindung betrifft einen mikropro- 65 das Taktnetzwerk 21 angelegt, welches einen Teil der
grammierten Rechner der im Gattungsbegriff des Takteinheit darstellt.
Hauptanspruchs angegebenen Art. Das Taktnetzwerk erhält aus der Steuereinheit eine
Ein solcher mikroprogrammierter Rechner ist aus der Anzahl von Signalen Mikrobefehlen Ci, Cz, C3 ... C^
DE19742440627 1973-09-26 1974-08-22 Mikroprogrammierter Rechner Expired DE2440627C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT2938673A IT993427B (it) 1973-09-26 1973-09-26 Unita di controllo di calcolatore microprogrammata con possibilita di passaggio dinamico da microsequenze residenti in una ros a micro sequenze residenti nella memoria principale e viceversa

Publications (2)

Publication Number Publication Date
DE2440627A1 DE2440627A1 (de) 1975-03-27
DE2440627C2 true DE2440627C2 (de) 1986-01-30

Family

ID=11226882

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742440627 Expired DE2440627C2 (de) 1973-09-26 1974-08-22 Mikroprogrammierter Rechner

Country Status (6)

Country Link
JP (1) JPS5917460B2 (de)
CA (1) CA1001312A (de)
DE (1) DE2440627C2 (de)
GB (1) GB1440856A (de)
HK (1) HK61581A (de)
IT (1) IT993427B (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62146176U (de) * 1986-03-11 1987-09-16
US4825356A (en) * 1987-03-27 1989-04-25 Tandem Computers Incorporated Microcoded microprocessor with shared ram

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE757967A (fr) * 1969-10-25 1971-04-23 Philips Nv Memoire pour microprogramme
US3736567A (en) * 1971-09-08 1973-05-29 Bunker Ramo Program sequence control
FR2226901A5 (de) * 1973-04-19 1974-11-15 Honeywell Bull Soc Ind

Also Published As

Publication number Publication date
HK61581A (en) 1981-12-18
DE2440627A1 (de) 1975-03-27
IT993427B (it) 1975-09-30
CA1001312A (en) 1976-12-07
JPS5079229A (de) 1975-06-27
JPS5917460B2 (ja) 1984-04-21
GB1440856A (en) 1976-06-30

Similar Documents

Publication Publication Date Title
DE2357003C2 (de) Prozessor für eine Mehrprogramm-Datenverarbeitungsanlage
EP0097725B1 (de) Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen
DE1915818A1 (de) Elektronisches Datenverarbeitungssystem
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE2440628A1 (de) Datenverarbeitungsanlage mit mikroprogrammierung
DE2555963A1 (de) Einrichtung zur funktionsmodifizierung
DE2322674A1 (de) Mikroprogramm-steuereinrichtung
DE1449765B2 (de) Einrichtung zur Abfrage eines assoziativen Speichers
DE2339636A1 (de) Programmsteuereinrichtung
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE2755616A1 (de) Asymmetrischer multiprozessor
DE2248296A1 (de) Programmsteuereinrichtung
DE2725396A1 (de) Pufferspeicher
DE2905676A1 (de) Integrierte schaltung mit einem einzigen chip
DE1574499A1 (de) Speicheranordnung fuer binaere Daten unter Verwendung einer geschlossenen Datenumlaufschleife
DE3307194C2 (de)
DE2951040A1 (de) Steuerspeicher in einem steuerabschnitt eines rechners
DE1549548A1 (de) Vorrichtung zur Aktivierung eines bestimmten Befehls aus einer Vielzahl von Befehlen,die in einem Befehlsspeicher eines Rechners gespeichert sind
DE2245284A1 (de) Datenverarbeitungsanlage
DE2246863A1 (de) Verfahren und anordnung zur protokollierung des programmablaufs in datenverarbeitungsanlagen
DE2440627C2 (de) Mikroprogrammierter Rechner
DE2720842A1 (de) Daten-uebertragungssystem
DE2747304A1 (de) Einrichtung zur mikrobefehlssteuerung
DE2428020A1 (de) Elektronische datenverarbeitungsanlage mit unabhaengigen funktionseinheiten fuer das gleichzeitige ausfuehren verschiedener operationen an denselben daten
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee