DE1915818B2 - Steuerschaltung für ein elektronisches Datenverarbeitungssystem - Google Patents

Steuerschaltung für ein elektronisches Datenverarbeitungssystem

Info

Publication number
DE1915818B2
DE1915818B2 DE1915818A DE1915818A DE1915818B2 DE 1915818 B2 DE1915818 B2 DE 1915818B2 DE 1915818 A DE1915818 A DE 1915818A DE 1915818 A DE1915818 A DE 1915818A DE 1915818 B2 DE1915818 B2 DE 1915818B2
Authority
DE
Germany
Prior art keywords
address
register
memory
control
control circuit
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
DE1915818A
Other languages
English (en)
Other versions
DE1915818A1 (de
DE1915818C3 (de
Inventor
Victor M. Belmont Benson
Stuart K. Framingham Klein
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.)
Honeywell Inc
Original Assignee
Honeywell Inc
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 Inc filed Critical Honeywell Inc
Publication of DE1915818A1 publication Critical patent/DE1915818A1/de
Publication of DE1915818B2 publication Critical patent/DE1915818B2/de
Application granted granted Critical
Publication of DE1915818C3 publication Critical patent/DE1915818C3/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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units

Description

Die Erfindung bezieht sich auf eine Steuerschaltung für ein elektronisches Datenverarbeitungssystem mit einem Hauptspeicher, mit wenigstens einer einen Adressengenerator enthaltenden ersten Sub-Verar-
Ii beitungseinrichtung, mit wenigstens einer eine zweite Sub-Verarbeitungseinrichtung darstellenden Rechen- und Verarbeitungseinrichtung, wobei die Sub-Verarbeitungseinrichtungen insbesondere zur Ausführung von voneinander unabhängigen Befehlen dienen, und mit Folgesteuereinrichtungen in Form von Mikroprogrammsteuerwerken, welche Mikrobefehle zur Steuerung elementarer Operationen abgeben, wobei eine aufeinanderfolgende Fortschaltung von Mikrobefehlswörtern in den Folgesteuereinrichtungen erfolgt und wobei in jedem Mikrobefehlswort funktionell Bits enthalten sind.
Im Zusammenhang mit der Steuerung von Datenverarbeitungsanlagen ist es bereits bekannt (»Digitale Rechenanl&gen« von Speiser, 2. Auflage, 1965,
jo Springer Verlag Berlin/Heidelberg/New York, Seiten 240-245, 262-265, 277), bei der Mikroprogrammierung in Mikrobefehlswörtern funktionell Bits vorzusehen. Das Prinzip der funktionellen Bits in den Befehlswörtern geht dabei davon aus, daß sich die
j5 Operationen in Schritten aufbauen, die zur gleichen Zeit durchgeführt werden können. Ferner ist in dem betrachteten Zusammenhang bekannt, Folgesteuereinrichtungen in Form von Mikroprogrammsteuerwerken vorzusehen, die Mikrobefehle zur Steuerung elementarer Operationen abgeben. Dabei werden Steuervorrichtungen vorzusehen sein, die eine aufeinanderfolgende Fortschaltung von Mikrobefehlswörtern in den Folgesteuereinrichtungen bewirken.
Bei Datenverarbeitungsanlagen der vorstehend betrachteten Art können sich Probleme durch die gleichzeitige, unabhängige Ausführung von Operationen ergeben. Dies ist dann der Fall, wenn im Zuge der Ausführung einer Operation nicht über einen bestimmten Verarbeitungspunkt hinauszugehen ist, an welchem die betreffende Information für einen anderen Operationsvorgang bereitzustellen ist oder an welchem von einem anderen Operationsvorgang ein entsprechendes Operationsergebnis benötigt wird.
Der Erfindung liegt demgemäß die Aufgabe zugründe, einen Weg zu zeigen, wie bei einer Steuerschaltung der eingangs genannten Art mit relativ geringem schaltungstechnischen Aufwand unabhängige Operationen mit voller Geschwindigkeit ausgeführt werden können, ohne daß die eine Sub-Verarbei-
bo tungseanrichtung bei der Befehlsverarbeitung über einen bestimmten Verarbeitungspunkt hinausgeht, an welchem sie eine Information für die andere Sub-Verarbeitungseinrichtung besitzt oder an welchem sie von dieser anderen Sub-Verarbeitungseinrichtung eine
b5 Information benötigt.
Gelöst wird die vorstehend aufgezeigte Aufgabe ausgehend von einer Steuerschaltung der eingangs genannten Art erfindungsgemäß dadurch, daß am Aus-
gang jeder der zwei Folgesteuereinrichtungen ein Register angeschlossen ist, in welchem jeweils ein Mikrobefehl und ein gegebenenfalls zusammen mit. diesem auftretender Sperranzeigebefehl speicherbar sind, der einen Abschluß von durch Mikrobefehle von der dem jeweiligen Register zugehörigen Folgesteuereinrichtung gesteuerten Vorgängen festlegt, und daß durch die in den beiden Registern gegebenenfalls enthaltenen Sperranzeigebefehle den beiden Folgesteuereinrichtungen zugehörige Verknüpfungsschaltungen derart steuerbar sind, daß bei Vorhandensein eines Spenanzeigebefehles in lediglich einem der Register die aufeinanderfolgende Weiterschaltung von Mikrobefehlswörtern in der diesem Register zugehörigen Folgesteuereinrichtung so lange stillsetzbar ist, bis auch in dem der anderen Folgesteuereinrichtung zugehörigen Register ein entsprechender Sperranzeigebefehl auftritt, auf dessen Auftreten hin dann die Weiterschaltung von Mikrobefehlswörtern in beiden Folgesteuereinrichtungen freigebbar ist Die Erfindung bringt den Vorteil mit sich, daß auf relativ einfache Weise in den beiden Sub-Verarbeitungseinrichtungen Operationen mit voller Geschwindigkeit ablaufen können, wobei dennoch die Sub-Verarbeitungseinrichtungen jeweils daran gehindert sind, bei der Befehlsverarbeitung über einen bestimmten Verarbeitungspunkt hinauszugehen, an welchem sie eine Information für die jeweils andere Sub-Verarbeitungseinrichtung besitzen oder an welchem sie eine solche Information von der jeweils anderen Sub-Verarbeitungseinrichtung benötigen.
Zweckmäßige Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen.
Nachfolgend sind Ausführungsbeispiele der Erfindung anhand von Zeichnungen näher erläutert.
Fig. 1 zeigt in einem Teilblockdiagramm eine Steuerschaltung gemäß einer Ausführungsform der Erfindung;
Fig. 2 zeigt ir einem vereinfachten Blockschaltbild eine weitere Ausführungsform der Steuerschaltung gemäß der Erfindung;
Fig. 3 veranschaulicht in einem Flußdiagramm die Ablauffolge des Betriebs der Schaltungsanordnung gemäß Fig. 2 zur Ausführung eines Vergleichsbefehls.
Die Steuerschaltung gemäß der Erfindung wird hauptsächlich in einer zentralen Verarbeitungsanlage bzw. einem Datenverarbeitungssystem mit zwei oder mehr Sub-Verarbeitungseinrichtungen angewendet, die nach dem Zeitmultiplexprinzip einen gemeinsamen Hauptspeicher benutzen. Die Sub-Verarbeitungseinrichtungen werden unabhängig voneinander durch Mikroprogrammierung gesteuert.
Fig. 1 zeigt in einem stark vereinfachten Blockdiagramm eine Steuerschaltung für ein elektronisches Datenverarbeitungssystem mit zwei Sub-Verarbeitungseinrichtungen, die mit Verknüpfungsschaltungen verbunden sind, welche verriegelt weiden können.
Die auch als Mikrooperations-Generaloren aufzufassenden Steuerelemente werden von adressierbaren Folgesteuereinrichtungen her angesteuert. Die Folgesteuereinrichtungen sind zweckmäßigerweise durch einen schnellen Zugriff ermöglichende Speichermatrizen gebildet. Ein Beispiel für eine geeignete Folgesteuereinrichtung gibt die US-Patentschrift 3 157 862 an. Eine bevorzugte Folgesteuereinrichtung stellt ein Lesespeicher dar, in welchem die Mikrobefehle elektrisch wieder einschreibbar sind und während des
Normal-Betriebs nicht geändert werden. Ein Hauptspeicher 10 gibt Befehle an die Steuerelemente der Sub-Verarbeitungseinrichtungen ab, und zwar über ein Befehlsregister 11. Einzelne Bereiche bzw. Felder in diesem Befehlsregister enthalten Daten betreffend den Beginn der Mikrobefehle für die betreffenden Steuerelemente der Sub-Verarbeitungseinrichtungen. Dabei ist ein Bereich bzw. ein Feld des Befehlsregisters 11 mit dem Eingang eines Adressenregisters 12 verbunden. Das Adressenregister 12 wähit in der Folgesteuereinrichtung 13 diejenigen Mikrobefehle aus, die in ein örtliches Register 15 einzuspeichern sind. Der im örtlichen Register 15 jeweils enthaltene Mikrobefehl legt die Mikrooperationen fest, die durch den Mikrooperations-Generator 16 abzugeben sind. Wie ferner angedeutet ist, gibt ein Feld 17 des örtlichen Registers 15 die nächste Adresse an das Adressenregister 12 ab. Ein weiteres Feld 18 dient für die Aufnahme eines Sperranzeigebefehls, der Verknüpfungsschaltungen bzw. -gliedern 20 und 21 zugeführt wird.
In einem Feld des Befehlsregisters 11 ist ferner die dem Adressenregister 22 der Folgesteuereinrichtung 23 zuzuführende Startadresse enthalten. Der in der Folgesteuereinrichtung 23 adressierte Mikrobefehl wird dem örtlichen Register 25 zugeführt und bewirkt die Steuerung der Mikrooperationen des Mikrooperations-Generators 26. Ein Feld 27 des örtlichen Registers 25 gibt die jeweils nächste Adresse an das Adressenregister 22 ab; ein weiteres Feld des örtlichen Registers 25 gibt einen Sperranzeigebefehl für die im folgenden lediglich als Verknüpfungsglieder bezeichneten Verknüpfungsschaltungen 20 und 21 ab.
Die Verknüpfungsglieder 20 und 21 sind durch UND-Glieder gebildet, die jeweils dann übertragungsfähig sind, wenn sie an ihren Eingängen gleichzeitig Signale von beiden Registern 15 und 25 her aufnehmen. Das Ausgangssignal des UND-Gliedes 20 wird als Eingangs-Schaltsignal dem Adressenregister 12 zugeführt; das Ausgangssignal des UND-Gliedes 21 wird als Eingangs-Schaltsignal dem Adressenregister 22 zugeführt. Die Mikrooperations-Generatoren 16 und 26 legen die Mikrooperationen für die hier nicht näher gezeigten entsprechenden Sub-Verarbeitungseinrichtungen fest. Eine detaillierte Beschreibung der Verbindung zwischen den einzelnen Schaltungselementen innerhalb des Systems wird in Verbindung mit der Beschreibung der in F i g. 2 dargestellten Schaltungsanordnung gegeben werden.
Beim Betrieb der in Fig. 1 gezeigten Steuerschaltung gibt der Hauptspeicher 10 zunächst einen Befehl ab, der die Startadressen für die Folgesteuereinrichtungen 13 und 23 darstellt. Jeder in den betreffenden Folgesteuereinrichtungen adressierte Mikrobefehl bewirkt in den örtlichen Registern 15 und 25 die Abgabe von Unterbefehlen an die Mikrooperations-Generatoren 16 und 26 und ferner von den Feldern 17 und 27 die Abgabe der nächsten Adresse an die Adressenregister 12 und 22. Die beiden Steuerelemente arbeiten zyklisch wiederholt mit ihrer vollen Geschwindigkeit, und zwar unabhängig voneinander, bis ein adressierter Mikrobefehl in einem der Steuerelemente einen Verriegelungs- bzw. Sperranzeigebefehl liefert. Wenn z.B. ein Mikrobefehl in dem örtlichen Register 15 auftritt, das in seinem Feld 18 einen Verriegelungs- bzw. Sperranzeigebefehl besitzt, so ist die Adresse im Feld 17 eine Wiederholungsadresse desselben Wortes. Dadurch wird die Fortschaltnno des.
Steuerelements angehalten; es wiederholt zyklisch denselben Mikrobefehl.
Wenn die Folgesteuereinrichtung 23 den Punkt bei der Ausführung des Befehles erreicht hat, an dem die Folgesteuereinrichtung 13 wartet, wird von dem Feld 28 des Registers 25 ein Sperranzeigebefehl abgeleitet und dem jeweils einen Eingang der Verknüpfungsglieder 20 und 21 zusammen mit dem Sperranzeigebefehl von dem Feld 18 des örtlichen Registers her zugeführt. Die nächste durch die Register 15 und 25 w an die Adressenregister 12 und 22 abgegebene Adresse ist eine Wiederholungsadresse. Die von den Verknüpfungsgliedern 20 und 21 abgegebenen Ausgangssignale bewirken jedoch eine Änderung der Adressenregister 12 und 22, und zwar derart, daß in jeder Folgesteuereinrichtung ein Zugriff zu einem weiteren Folge-Mikrobefehl vorhanden ist.
Es sei darauf hingewiesen, daß der Betrieb von Datenverarbeitungsanlagen unter einer Anzahl von Vorschriften erfolgt. Eine solche Vorschrift ist z.B. die Beschränkung des gemeinsamen Zugriffs zum Hauptspeicher. Die meisten Beschränkungen können leicht durch entsprechenden Hardware-Aufwand gelöst werden. Führen jedoch zwei oder mehr Verarbeitungseinrichtungen einige voneinander abhängige r> Vorgänge aus, so ist es üblich, diesen Einrichtungen eine feste Beschränkung aufzuerlegen, indem ihre Arbeitsgeschwindigkeiten beschränkt werden, mit denen die verschiedenen Unterbefehlsfolgen, die voneinander abhängige Vorgänge erfordern, ausgeführt wer- jo den können. Dies erfolgt in solcher Weise, daß mit Rücksicht auf eine derartige gegenseitige Abhängigkeit keine der Verarbeitungseinrichtungen vor der anderen Verarbeitungseinrichtung arbeitet. Ferner sind die bei unterschiedlichen Unterbefehlsfolgen beste- r> henden Verzögerungsforderungen unterschiedlich; viele auftretende Unterbefehlsfolgen besitzen zudem keine gegenseitige Abhängigkeit. Bei geringem Steueraufwand und zumindest einem Bit oder einer Bit-Kombinationsanweisung in jedem Mikrobefehl stellt die in Fig. 1 gezeigte Ausführungsform der Erfindung eine Anlage dar, die Verzögerungsforderungen eindeutig voneinander abhängiger Vorgänge auf die für diese erforderlichen Unterbefehlsfolgen festlegt.
Fig. 2 zeigt in näheren Einzelheiten eine Ausführungsform, bei der zwei verschiedene Sub-Verarbeitungseinrichtungen von einem gemeinsamen Datenbzw. Hauptspeicher her betrieben werden. Bei dieser Ausführungsform umfaßt die eine Sub-Verarbeitungseinrichtung einen Adressengenerator und die 5» andere eine Rechen- und Verknüpfungseinrichtung. Es sei bemerkt, daß die Adressenerzeugung für den Hauptspeicher oder Steuerspeicher (Zwischenspeicher) einer zentralen Verarbeitungsanlage viele Formen besitzen kann, von denen einige ziemlich kompliziert sind. So sind dabei z.B. eine direkte Adressierung, eine indirekte Adressierung, eine direkte Index-Adressierung und eine indirekte Index-Adressierung möglich. Beide Adressierungsarten sind weit verbreitet und in allen Fällen sowie für Leeradressen «i üblich. In großen Rechenanlagen werden häufig neben diesen Arten der Adressierung noch andere Arten der Adressierung benutzt, und in diesen Fällen wird die Adressenerzeugung wirksamer durch eine gesonderte Sub-Verkettungseinrichtung vorgenommen, ^ die in bezug auf andere Verarbeitungseinrichtungen asynchron arbeitet, die ihre eigenen Steuerelemente, Speicherregister und Rechen- sowie Vcrknüpfungsschaltungen besitzen.
Die den Adressengenerator umfassende Sub-Ver arbeitungseinrichtung gemäß Fig. 2 besitzt ein Steuerelement, das ein Lesespeicher-Adressenregister 32 einen Lesespeicher-Adressengenerator 33 und cir örtliches Lesespeicher-Register 35 enthält. Die Ausgangssignalc des Registers 35 steuern einen Mikrooperations-Generator 36, der seinerseits Steuersignale an den Adressengenerator 50 abgibt. Dei Adressengenerator 50 nimmt Befehle von deir Hauptspeicher 30 über das örtliche Speicherregistei
31 und die Folgesteuereinrichtung 39 auf. Die Folgesteuereinrichtung 39 gibt eine Startadresse an da; Adressenregister 32 ab. Bei der dargestellten Ausführungsform arbeitet der Adressengenerator 33 nach erfolgter Inbetriebsetzung zyklisch unter der Steuerung eines Taktgenerators 51; das Adressenregistei
32 wird dabei durch eine Schrittsteuereinrichtung 52 mit jedem Zyklus weitergeschaltet. Eine Verzweigung zu einer anderen Lesespeicher-Folge wird dabei durcF eine Verzweigungs-Mikrooperation über eine Adressengenerator-Adresse und die Verzweigungs-Verknüpfungsschaltung 53 erreicht. Der Adressengenerator 50 ist an ein Speicheradressenregister 55 de; Hauptspeichers 30 angeschlossen, um diesem Hauptspeicheradressen zuzuführen. Über einen Steuereingang 56 ist der Mikrooperations-Generator 36 durcl· externe Zustände derart ansteuerbar, daß z. B. Adressengenerator-Mikrooperationen durch die Ergebnisse des Betriebs der Rechen- und Verknüpfungseinrichtung auslösbar sind. In einigen Fällen hängt eine Entscheidung darüber, ob eine Verzweigung auszuführer ist oder nicht, von den Ergebnissen eines Rechenschrittes in der Rechen- und Verknüpfungseinrichtung ab. Die Rechen- und Verknüpfungseinrichtunj wird ferner von einem Lesespeicher-Steuerelemem gesteuert, das ein Lesespeicher-Adressenregister 42 enthält, welches mit der Recheneinrichtung 43 verbunden ist. Diese Lesespeicher-Recheneinrichtung 42 ist ihrerseits mit einem örtlichen Lesespeicher-Register 45 verbunden. Dieses Register 45 ist seinerseiti so geschaltet, daß es Steuersignale an einen Mikrooperations-Generator 46 der Rechen- und Verknüp fungsreinrichtung abzugeben vermag. An den Ausgang des örtlichen Speicherregisters 31 ist eir Operationskode-Register 58 angeschlossen, das die Startadresse an das Adressenregister 42 abzugeber vermag. Wie bei der in Fig. 1 dargestellten Ausführungsform werden die Folgesteueradressen für die Recheneinrichtung von den Lesespeicher-Worten ir einem Feld 47 des örtlichen Registers 45 geliefert Dabei ist das örtliche Lesespeicher-Registerfeld 4T mit dem Eingang des Adressenregisters 42 verbunden Für Verzweigungszwecke besitzt der Mikrooperations-Generator 46 einen Ausgang, an dem eine Verzweigungs-Verknüpfungsschaltung 59 der Rechen- und Verknüpfungseinrichtung angeschlossen ist Diese Verknüpfungsschaltung 59 gibt Verzweigungsadressen an das Adressenregister 42 ab. Der Mikrooperations-Generator 46 ist dabei so geschaltet, da£ er Steuersignale an ein Rechen- und Verknüpfungselement 60 abgibt. Dieses Rechen- und Verknüpfungselement 60 besitzt einen mit dem örtlicher Hauptspeicherregister 31 direkt verbundenen Ein· gang 63 zur Aufnahme von Operanden. Über eine Ausgangsleitung des Rechen- und Vcrknüpfungsele· mcntes 60 erfolgt eine Ansteuerung von Schrcibschal tungen 65 des Hauptspeichers 30 sowie eine Abgabe
der Ergebnisse der Rechen- und Verknüpfungsoperationen, die in dem Hauptspeicher zu speichern sind. Die Vcrriegelungs- bzw. Stillsetzoperation bei der in Fig. 2 dargestellten Ausführungsform läuft im wesentlichen wie folgt ab. Verriegelungszeichen bzw. r> Spcrranzeigebefehle in den Feldern 38 und 48 der örtlichen Register 35 und 45 sind zweckmäßigerweise Einzelbit-Zeichen, in denen eine »1« dazu dient, das Vorliegen eines Verriegelungsbefehls bzw. Sperranzeigebefehls anzuzeigen, während eine »0« keine Verriegelung bzw. Stillsetzung bedeutet. Eine »1« in dem Feld 38 und eine »0« in dem Feld 48 führt zur Abgabe eines Ausgangssignals von dem Verknüpfungsglied 40 und damit zum Anhalten des Taktgenerators bzw. der Takteinrichtung 51. Dadurch wird der i> Adressengenerator angehalten, und zwar so lange, bis ein entsprechendes Bit in dem Feld 48 des Registers 45 auftritt. Eine »1« in dem Feld 48 sperrt das Verknüpfungsglied 40 und ermöglicht, daß die Takteinrichtung 51 ihren Betrieb wieder fortsetzt. Es sei be- -" merkt, daß die Stillsetz- bzw. Verriegelungsfunktion bei einem Verknüpfungsglied im Eingangskreis der Takteinrichtung 51 in dem Fall durchgeführt werden kann, daß die Takteinrichtung 51 fortlaufend arbeitet. Bei Auftreten einer »0« in den Feldern 38 und 48 2> tritt keine Stillsetzung bzw. Verriegelung auf; die Takteinrichtung 51 setzt dabei ihren Betrieb fort. Die Verriegelungsoperation der Rechen- und Verknüpfungseinrichtung ist der in Verbindung mit Fig. 1 beschriebenen Operation ähnlich. Ein Wort der Re- 3« cheneinrichtung, das eine »1« in dem (Verriegelungs-)Feld 4f! besitzt, weist eine Wiederholungs-Adresse in dem Feld 47 auf. Mit einer »1« in dem Feld 48 und einer »0« in dem Feld 38 ist das Verknüpfungsglied 41 gesperrt, und die Wiederholungs- ir> Adresse in dem Feld 47 bewirkt, daß das Adressenregister 42 die Adressen desselben Wortes wiederholt. Mit einer »1« in dem Feld 48 und einer »1« in dem Feld 38 bewirkt ein Ausgangssignal des Verknüpfungsgliedes 41 eine Modifizierung der Adresse in dem Adressenregister 42, und zwar derart, daß das Steuerelement der Rechen- und Verknüpfungseinrichtung seinen Betrieb fortsetzt. Nachstehend wird eine allgemeine Funktions- und Operations-Beschreibung der in Fig. 2 dargestellten Anordnung ge- αϊ geben.
Die zentrale Verarbeitungseinrichtung gemäß Fig. 2 enthält zwei Sub-Verarbeitungseinrichtungen mit einer Rechen- und Verknüpfungseinrichtung 62 bzw. mit einem Adressengenerator 61. Jede dieser beiden Sub-Verarbeitungseinrichtungen besitzt einen eigenen Lesespeicher 43 bzw. 33. Die Rechen- und Verknüpfungseinrichtung 62 und der Adressengenerator 61 arbeiten parallel als zwei voneinander unabhängige Sub-Verarbeitungseinrichtungen, deren jede r>5 gänzlich von ihrem eigenen Lesespeicher gesteuert wird. Es besteht jedoch eine gewisse Synchronisierung und Nachrichtenverbindung zwischen beiden Sub-Verarbeitungseinrichtungen. In der Organisation, Adressierung und Dekodierung bestehen zwischen m> den beiden Sub-Verarbeitungseinrichtungen jedoch grundsätzliche Unterschiede. Diese Unterschiede rufen in gewissem Ausmaß grundsätzliche Unterschiede zwischen der Rechen- und Verknüpfungseinrichtung und dem Adressengenerator hervor; sie lassen dabei b5 die Flexibilität und Fähigkeit der Spezialisierung eines Lesespeichers erkennen. Die hohe Geschwindigkeit, Kompliziertheit und physikalische Größe sind wichtige Bestimmungsgrößen hinsichtlich der Ausführung der Steuerfunktionen eines Lesespeichers.
Der Adressengenerator 33 steuert folgende Vorgänge:
1. Erzeugung sämtlicher Hauptspeicheradressen (Haupt- und Steuerspeicher),
2. zyklischer Umlaufbetrieb des Steuerspeichers,
3. Erzeugung von die Verbindung von Verarbeitungseinrichtungen betreffenden Datenworten (in Verbindung mit der Recheneinrichtung).
Die von dem Adressengenerator abgegebenen Wortfolgen steilen einen Satz von grundsätzlichen Mikrobefehlen dar, aus denen eine Untergruppe dazu ausgewählt werden kann, irgendeine Adresse zu erzeugen oder aus irgendeinem Steuerspeicherplatz den Inhalt zu lesen oder in diesem zu ändern. Die folgenden Beispiele typischer Ablauffolgen des Adressengenerators mögen dies verdeutlichen:
1) Periphere Zähleraufnahme; 2) direkte Hauptspeicheradresse; 3) Index-Hauptspeicherverzweigung; 4) Lade-Recheneinrichtungs-Zähler-Typ 1; 5) Aufnahme von Pufferbits. Das Beispiel der Ablauffolge 1) entspricht einer Folge von Lese- oder Schreibvorgängen in bezug auf einige spezielle Speicherplätze; Beispiel 2) gibt Ablauffolgen an, die speziellen Adressentypen zugehörig sind; Beispiel 3) gibt Ablauffolgen an, die einer speziellen Kombination von Befehlstypen (Verzweigung) und Adressentypen (Index-Hauptspeicher) zugehörig sind; Beispiel 4) ist typisch für Ablauffolgen, die eine spezielle Kombination von Befehlstypen (Typ 1) und Steuerspeicherplätzen (Recheneinrichtungs-Zähler) betreffen; Beispiel 5) ist typisch für Ablauf folgen, die spezielle Befehle betreffen (Aufnahme von Pufferbits).
Tritt ein Befehlswort auf, so leitet die herkömmliche Verknüpfungsschaltung (Folgesteuereinrichtung 39) aus dem Befehlswort selbst die Gruppe der Adressengenerator-Folgen aus, die erforderlich sind, um sämtliche Speicheradressen zu erzeugen und den Inhalt sämtlicher Steuerspeicherplätze zu lesen bzw. zu ändern, der für eine Vervollständigung des Befehls erforderlich ist. Die Folgesteuereinrichtung 39 lädt dann die Adresse des ersten Speicherplatzes der ersten Ablauffolge in das Adressenregister 32. Dieses Adressenregister 32 wird dann mit Auftreten jedes Taktsignals um eins weitergeschaltet (sofern keine Verzweigung auftritt), bis die letzte Stelle der Ablauffolge erreicht ist. Zu diesem Zeitpunkt lädt die Folgesteuereinrichtung 39 die Adresse der ersten Stelle der nächsten Ablauffolge in das Adressenregister 32. Wenn die letzte Stelle der letzten Ablauffolge erreicht ist, lädt die Folgesteuereinrichtung 39 die Adresse der ersten Stelle der ersten Ablauffolge des nächsten Befehls in das Adressenregister 32. Der betrachtete Vorgang wiederholt sich dann von neuem.
Wie oben angedeutet, besitzt der Adressengenerator 33 Einrichtungen zur Verzweigung, d.h. zum Übergang von irgendeiner Speicherstelle zu irgendeiner anderen Speicherstelle, und zwar in Abhängigkeit von vorliegenden Bedingungen oder bedingungslos und unter seiner eigenen Steuerung. Die Verzweigung dient dabei dazu, Speicherstellen zu erhalten und eine Befehlsausführung durch Schleifenbildung innerhalb einer Folge zu beschleunigen, oder durch Springen auf einen Teil einer anderen Folge oder auf irgendeinen anderen Teil des Lesespeichers. Normalerweise arbeitet das Adressenregister 32 innerhalb einer Ablauffolgc schrittweise mit jedem Taktimpuls bis zur
letzten Speicherstelle hin, sofern nicht eine Verzweigung auftritt. Nach erfolgter Verzweigung läuft die normale Schrittschaltung des Lesespeicher-Adressenregisters 32 weiter.
Der Adressengenerator33enthält z.B. 54 Ablauffolgen aus jeweils zwei (Direkt-Hauptspeicheradressen)-Wörtern zu 102 (peripheren Befehls-)Wörtern; dabei sind acht Wörter pro Ablauffolge typisch. Die Erzeugung jeder Speicheradresse erfordert die Anwendung jeweils einer (Direkt-Hauptspeicher-)Ablauffolge zu vier (peripheren Zählerabgabe-)Ablauffolgen; zwei Ablauffolgen pro Adresse sind typisch. Bei jeder zu erzeugenden Adresse stellen die speziell benutzten Ablauffolgen und die Befehle, in welchen diese Ablauffolgen benutzt werden, eine komplizierte Funktion des jeweiligen Befehls, des Adressentyps und der umfaßten Steuerspeicherstellen dar. Dabei kann die Erzeugung der Α-Adresse für einen binären Additionsbefehl jeweils zwei voneinander verschiedene Reihen von Ablauffolgen umfassen, und zwar wegen der Unterschiede in den Adressentypen. Selbstverständlich könnte eine bestimmte Ablauffolge bei vielen verschiedenen Befehlen benutzt werden.
Die Recheneinrichtung 62 führt folgende Steuervorgänge aus: 1. Steuerung von Operanden, 2. Zyklisches Betreiben des eine kleine Kapazität besitzenden Recheneinrichtungs-Zwischenspeichers, 3. Erzeugung von Datenwörtern (in Verbindung mit dem Adressengenerator 61) betreffend die Verbindung der Verarbeitungseinrichtungen.
Um den Lesespeicher 43 in wirtschaftlichster Weise auszunutzen, sind die Maschinenbefehle ζ. Β in 50 Gruppen eng verwandter Befehle angeordnet; dabei ist für jede Gruppe eine andere Recheneinrichtungs-Lesespeicherfolge vorgesehen. So enthält z.B. die Festadditions-Folge die Befehle Dezimal-Addition, Binär-Addiiion, Dezimal-Subtraktion, Binär-Subtraktion, erweiterte Binär-Addition und erweiterte Binär-Subtraktion. Besondere Varianten erfolgen durch Verzweigung.
Tritt ein Befehlswort auf, so werden die Operationskodebits in einem Operationskoderegister 58 gespeichert. Wenn der gerade aufgetretene Befehl vollständig verarbeitet ist (und keine Fehler festgestellt worden sind), dann wird der Inhalt des Operationskoderegisters zu dem Adressenregister 42 hin übertragen. Die somit adressierte Lesespeicherstelle wird als Operationskodestelle bezeichnet; für jeden Maschinenoperationskode ist eine Operationskodestelle vorgesehen.
Verschiedene Bits jedes Lesespeicher-Wortes werden als nächste Adresse in dem Feld 47 zurückbehalten. Normalerweise bezeichnet das Adressenfeld 47 den nächsten Wert des Adressenregisters 42. Eine Ausnahme hiervon bildet die Eingabe einer Ablauffolge oder das Auftreten einer Verzweigung innerhalb einer Ablauffolge. Das nächste Adressenfeld einer Operationskodestelle gibt die Adresse des ersten Wortes derjenigen Ablauffolge an, die zur Ausführung des Befehls benutzt wird. So ist z.B. die nächste Adresse der Binärsubtraktions-Operationskodestelle die Adresse der ersten Stelle der Festadditions-Folge. Dieses Adressenverfahren erlaubt eine vollkommene Flexibilität in der Datenzusammenstellung, wobei jedes Lesespeicherwort das nächste Lesespeicherwort bezeichnet.
Eine Verzweigung wird angewandt: 1. Zum Festlegen einer Ablauffolge für einen besonderen Befehl
innerhalb einer Befehlsgruppe, 2. zum Berücksichtigen von Änderungen in den Adressenformen und 3. zum Berücksichtigen von operandenabhängigen Zuständen. So liegt z.B. eine Verzweigung, die eine Festadditions-Folge spezialisiert, in folgendem Fall vor: Dezimalsubtraktion, Leer-A-Adresse, Akkumulator- und B-Operanden entsprechender Vorzeichen, Wert des B-Operanden ist größer als Wert des Akkumulators.
Die Verzweigung wird durch Verzweigungs-Mikrooperationen gesteuert, die in gegenseitig sich ausschließenden Gruppen angeordnet sind. Jede Verzweigungs-Mikrooperation bezieht sich auf eine bestimmte Untergruppe von Verzweigungsvorgängen und auf ein bestimmtes Bit der Bits des Adressenregisters 42. Eine Verzweigungs-Mikrooperation »besagt«, daß in dem Fall, daß bezeichnete Zustände auftreten, das bezeichnete Adressenregister-Bit auf » 1« gesetzt werden sollte. Wenn der Inhalt des nächsten Adressenfeldes in das Adressenregister geladen wird, überlagern die aktiven Verzweigungs-Mikrooperationen ausgewählte externe Zustände betreffende Daten über ausgewählte Bits des Adressenregisters.
Um die Bedeutung der vorliegenden Erfindung zu erläutern, ist in dem in Fig. 3 dargestellten Flußdiagramm ein Beispiel sehr einfacher Vorgänge veranschaulicht, die das zur Erfindung gehörige Verriegelungs-Konzept benutzen.
Das im folgenden gegebene Beispiel betrifft einen einfachen Vergleich eines Α-Operanden mit einem B-Operanden. Der Befehl von dem Hauptspeicher 30 befiehlt dem Adressengenerator 61, die A-Operanden-Adresse zu erzeugen. Der Befehl von dem Hauptspeicher 30 befiehlt ferner der Recheneinrichtung, den Α-Operanden aufzunehmen. Üblicherweise verhindert eine festverdrahtete Verknüpfungsschaltung, daß die Recheneinrichtung fortschaltet, bevor sie den Α-Operanden aufgenommen hat. Bei dem hier beschriebenen Ausführungsbeispiel sind die meisten Verzögerungseinrichtungen, die durch mangelnde Zugriffsfähigkeit zu dem Hauptspeicher erforderlich sind, fest verdrahtet. Da dies herkömmlich ist und keinen Teil der Erfindung bildet, wird hierauf nicht näher eingegangen.
Der Adressengenerator läuft während der erforderlichen Lesespeicherzyklen, um die A-Operanden-Adresse zu erzeugen. Dies ist in Fig. 3 durch drei Zyklen angedeutet. Während dieser Zeitspanne kann die. Rechen- und Verknüpfungseinrichtung in der durch die gestrichelte Linie 70 angedeuteten Weise angesteuert werden.
Wenn die A-Operanden-Adresse erzeugt ist, wird sie dem Adressenregister 55 zugeführt, in welchem dann der Α-Operand verfügbar ist. Die Verfügbarkeit des Α-Operanden führt zum erneuten Fortschalten des Lesespeichers 43 der Rechen- und Verknüpfungseinrichtung 62. Fig. 3 veranschaulicht dabei, daß der Lesespeicher 43 zur Aufnahme des Operanden A zwei Zyklen durchläuft. Es sei bemerkt, daß die Anzahl der für jede Operation dargestellten Zyklen nur der Erläuterung dient und daß in typischen Fällen hierfür eine relativ große Anzahl an Zyklen erforderlich ist, wie z.B. acht. '
Der Adressengenerator 61 setzt unmittelbar auf die Vervollständigung der A-Operanden-Adresse seinen Betrieb fort, um die B-Operanden-Adresse zu erzeugen. Da mit einem einzigen Befehlswort die Erzeugung der A-Operanden-Adresse und der B-Operan-
23
den-Adresse erfaßt sein kann, sind die durch den Adressengenerator umfaßten Verzögerungen bis zu diesem Punkt durch dessen interne Verarbeitungszeit zuzüglich der Verzögerungszeit der Nichtverfügbarkeit des Hauptspeichers gegeben. Nach Beendigung r> der Erzeugung der B-Operanden-Adresse muß der Adressengenerator auf die Ergebnisse des Vergleichs der Rechen- und Verknüpfungseinrichtung warten, um seine nächste Befehlsadresse zu erhalten. Bei Fehlen eines Vergleichsergebnisses würde z.B. der be- w ueffende Adressengenerator die Adresse des nächsten Folgebefehls ableiten, während bei Auftreten eines Vergleichsergebnisses eine Verzweigung des Adressengenerators zur Berechnung einer Verzweigungsadresse und für die Speicherstelle des nächsten Befehls verwendet würde.
Das dem Adressengenerator zum Zwecke des Wartens zugeführte Signal besitzt die Form eines Sperranzeigebefehls in dem letzten Wort der »Erzeuge-B-Adresse«-Folge. Dies ist in Fig. 3 durch einen mit »Zyklus 3 - Verriegelung« bezeichneten Block angedeutet.
Zurückkommend auf Fig. 2 sei bemerkt, daß ein Sperranzeigebefehl von dem Adressenregister die Takteinrichtung 51 sperrt und damit das Fortschalten des Adressengenerators 33 unterbindet.
Die Rechen- und Verknüpfungseinrichtung setzt ihren Betrieb fort, indem sie zunächst den B-Operanden aufnimmt und dann den Α-Operanden mit dem B-Operanden vergleicht. Der Vergleich erfordert eine Folge von Lesespeicherzyklen 1 bis 6. Diese Anzahl an Zyklen ist hier rein willkürlich für die Vergleichsfolge gewählt. Eine gestrichelte Linie 71 vertritt dabei nicht dargestellte Zyklen. Das letzte Wort der Vergleichsfolge liefert eine Sperr- bzw. Verriegelungsan- r> zeigebefehl, der durch einen mit »Zyklus 6 - Verriegelung« bezeichneten Block angedeutet ist. Dieser Sperranzeigebefehl gibt die Takteinrichtung 51 frei (siehe Fig. 2), indem das Verknüpfungsglied 40 gesperrt wird. Damit ist dem Adressengenerator eine Information darüber zugeleitet, daß die Vergleichsergebnisse verfügbar sind. Dadurch wird der Adressengenerator wieder fortgeschaltet. Die in Fig. 3 dargestellte gestrichelte Linie 72 soll die Verzögerungszeitspanne andeuten, während der der Adressengenerator auf die Ergebnisse des A/B-Vergleichü wartet.
Mit Auftreten eines Sperranzeigebefehls von der Rechen- und Verknüpfungseinrichtung wird der Adressengenerator fortgeschaltet, und die A/B-Vergleichsergebnisse werden als externe Zustandsgrößen -,0 dem Eingang 56 des Mikrooperations-Generators 36 zugeführt (siehe Fig. 2).
Zurückkomend auf Fig. 3 sei bemerkt, daß der durch den mit »Wenn A = B ist, setze Verzweigungs-Anzeige« bezeichneten Block festgelegte Vor- ϊί gang die Abgabe der Verzweigungs-Anzeige des Adressengenerators mit Auftreten der Ergebnisse der Rechen- und Verknüpfungseinrichtung auslöst. Die gestrichelte Linie 75 deutet dies an. Das Auftreten eines Vergleichsergebnisses kann z. B. die Abgabe ei- oo ner Verzweigungs-Operation mit sich bringen, die durch den mit »Verzweigung« bezeichneten Block angedeutet ist. Ein Nicht-Vergleich kann z. B. zu einer Fortsetzung der Ablauffolge »keine Verzweigung« führen. Die beiden Ablauffolgen führen in Abhängig- h5 keit von den Vergleichsergebnisscn zur Abgabe von Adressen für unterschiedliche Befehle.
Das Auftreten eines Sperranzeigebefehls von dem Adressengenerator, wie dies durch die gestrichelte Linie 75 angedeutet ist, und zwar nach Auftreten eines Sperranzeigebefehls von der Rechen- und Verknüpfungseinrichtung, ermöglicht, der Rechen- und Verknüpfungseinrichtung, ihren Betrieb fortzusetzen. Wäre der Sperranzeigebefehl von dem Adressengenerator nicht aufgetreten, so würde die Rechen- und Verknüpfungseinrichtung fortfahren, auf das letzte Wort hin zyklisch weiterzuarbeiten.
Die Fortschaltung der Rechen- und Verknüpfungseinrichtung kann unterbunden werden, und zwar auch bei Auftreten eines Sperranzeigebefehls von dem Adressengenerator infolge Fehlens eines weiteren Befehls.
Das in Fig. 3 dargestellte Flußdiagramm veranschaulicht eine Unterbefehlsfolge, die eine Verriegelung zwischen den beiden in Fig. 2 gezeigten Sub-Verarbeitungseinrichtungen erfordert. Betrachtet man diese beiden Sub-Verarbeitungseinrichtungen, so zeigt sich, daß einige Unterbefehlsfolgen eine Verriegelung nicht erforderlich machen. So ist z.B. bei dem Befehl »Addiere A und B und führe die Summe in das Speicherregister X ein« keine.der zu erzeugenden Adressen von den Ergebnissen der Rechen- und Verknüpfungseinrichtung abhängig. Damit kann der Adressengenerator seinen Betrieb fortsetzen und Adressen erzeugen, einschließlich den nächsten Befehl und die Adressen, die der nächste Befehl erfordert. Der Betrieb kann dabei mit der maximalen Arbeitsgcschwindigkeit erfolgen, die lediglich durch den Zugriff zu dem Hauptspeicher begrenzt ist. Die Rechen- und Verknüpfungseinrichtung arbeitet ebenfalls mit voller Geschwindigkeit; eine Ausnahme hiervon bildet der Speicherzugriff. Damit ist die Ablauffolge durch unnötige Verzögerungen nicht behindert. Die (Lesespeicher-)Verriegelungen werden eindeutig auf sie erfordernde Ablauffolgen hin ausgeführt. Eine zusätzliche Verknüpfung wird dazu benutzt zu verhindern, daß Operanden auftreten, bevor die Rechen- und Verknüpfungseinrichtung sie aufnehmen kann, oder daß Ergebnisse früher auftreten, als die Rechen- und Verknüpfungseinrichtung sie abgeben kann.
Die Befehls-Vorschau-Merkmale der beschriebenen Ausführungsformen gehen aus den Zeichnungen nicht unmittelbar hervor. Gemäß Fig. 2 enthält das Adressengeneratorelement 50 vorzugsweise eine Vielzahl von Registern zur Aneinanderreihung von während des Betriebs fortzuschaltenden Hauptspeicheradressen. Dies ermöglicht dem Adressengenerator 61, die Erzeugung von Adressen auch dann fortzusetzen, wenn die Rechen- und Verknüpfungseinrichtung 62 diese noch nicht verwenden kann. Da sowohl die Rechen- und Verknüpfungseinrichtung 62 als auch der Adressengenerator 61 ihren jeweiligen Betrieb unter Mikroprogrammsteuerung ausführen, die unabhängig von dem jeweiligen Anfangsbefehl ist, kann der Adressengenerator 61 einen Befehl herausziehen und mit der Adressenerzeugung beginnen, während die Rechen- und Verknüpfungseinrichtung 62 noch den vorangehenden Befehl verarbeitet. Diese Vorschau-Betriebsart ist in der vorliegenden Erfindung stark vereinfacht, da die Verriegelungen, die durch Anzeige-Bits in den Mikrobefehlen ausgelöst werden, den notwendigen Schutz bei den kritischen Punkten liefern, an denen die Verarbeitungseinrichtungs-Operationen stimmen müssen. Wie aus der vorstehenden Erläuterung hervorgehen dürfte, sind die Kompli-
ziertheit und der Preis des Hardware-Aufwandes, der für diesen Verriegelungs-Schui.: erforderlich ist, vernachlässigbar.
Vorstehend ist die Erfindung an Hand spezieller Ausführungsbeispiele mit nur zwei Sub-Verarbeitungseinrichtungen erläutert worden. Die Erfindung ist jedoch auch in Fällen anwendbar, in denen drei oder mehr Sub-Verarbeitungseinrichtungen die Sperrung bzw. Stillsetzung von Verarbeitungsvorgängen erfordern. Die jeweils verwendeten besonderen Anordnungen von Verknüpfungsgliedern hängen dabei in gewissem Ausmaß von der Art der verwendeten Folgesteuereinrichtungen ab. Fig. 1 zeigt dabei eine im wesentlichen symmetrische Anordnung, während Fig. 2 den Aufbau einer Sub-Verarbeitungseinrich-
tung veranschaulicht, deren Betrieb durch einen Sperranzeigebefehl aufhaltbar ist. Die andere Sub-Verarbeitungseinrichtung setzt ihren Zyklus in Abhängigkeit von einem Sperranzeigebefehl auf ein ein-■' zelnes Wort hin fort.
Beider in Fig. 2 dargestellten Ausführungsform ist es ferner häufig erwünscht, die beiden Sub-Verarbeitungseinrichtungen im Master-Slave-Betrieb arbeiten zu lassen. Durch Wegnahme oder Sperrung des Verii' knüpfungsgliedes 40 wird lediglich der Betrieb der Rechen- und Verknüpfungseinrichtung 62 durch einen Sperranzeigebefehl aufgehalten. Ein Sperranzeigebefehl von dem Adressengenerator 61 gibt dann die Rechen- und Verknüpfungseinrichtung 62 als Mari ster-Einrichtung wieder frei.
Hierzu 3 Blatt Zeichnungen

Claims (7)

Patentansprüche:
1. Steuerschaltung für ein elektronisches Datenverarbeitungssystem mit einem Hauptspeicher, mit wenigstens einer einen Adressengenerator enthaltenden ersten Sub-Verarbeitungseinrichtung, mit wenigstens einer eine zweite Sub-Verarbeitungseinrichtung darstellenden Rechen- und Verknüpfungseinrichtung, wobei die Sub-Verarbeitungseinrichtungen insbesondere zur Ausführung von voneinander unabhängigen Befehlen dienen, und mit Folgesteuereinrichtungen in Form von Mikroprogrammsteuerwerken, welche Mikrobefehle zur Steuerung elementarer Operationen abgeben, wobei eine aufeinanderfolgende Fortschaltung von Mikrobefehlswörttrn in den Folgesteuereinrichtungen erfolgt und wobei in jedem Mikrobefehlswort funktioneile Bits enthalten sind, dadurch gekennzeichnet, daß am Ausgang jeder der zwei Folgesteuereinrichtungen (13, 23) ein Register (15; 25) angeschlossen ist, in welchem jeweils ein Mikrobefehl und ein gegebenenfalls zusammen mit diesem auftretender Sperranzeigebefehl speicherbar sind, der einen Abschluß von durch Mikrobefehle von der dem jeweiligen Register (15; 25) zugehörigen Folgesteuereinrichtung (13; 23) gesteuerten Vorgängen festlegt, und daß durch die in den beiden Registern (15, 25) gegebenenfalls enthaltenen Sperranzeigebefehle den beiden Folgesteuereinrichtungen (13, 23) zugehörige Verknüpfungsschaltungen (20,21) derart steuerbar sind, daß bei Vorhandensein eines Sperranzeigebefehles in lediglich einem der Register (15, 25) die aufeinanderfolgende Weiterschaltung von Mikrobefehlswörtern in der diesem Register (15; 25) zugehörigen Folgesteuereinrichtung (13; 23) so lange stillsetzbar ist, bis auch in dem der anderen Folgesteuereinrichtung (23; 13) zugehörigen Register (25; 15) ein entsprechender Sperranzeigebefehl auftritt, auf dessen Auftreten hin dann die Weiterschaltung von Mikrobefehlswörtern in beiden Folgesteuereinrichtungen (13, 23) freigebbar ist.
2. Steuerschaltung nach Anspruch 1, dadurch gekennzeichnet, daß die Folgesteuereinrichtungen (13, 23) durch Lesespeicher gebildet sind, deren Speicherinhalt lediglich außerhalb des Normal-Betriebs elektrisch änderbar ist.
3. Steuerschaltung nach Anspruch 2, dadurch gekennzeichnet, daß die Lesespeicher durch adressierbare Speichermatrizen gebildet sind.
4. Steuerschaltung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Folgesteuereinrichtungen (13, 23) zur aufeinanderfolgenden Fortschaltung von insbesondere dem Adressengenerator (50) zuzuführenden Mikrobefehlswörtern einen Taktgenerator (51) enthalten.
5. Steuerschaltung nach Anspruch 4, dadurch gekennzeichnet, daß die Abgabe von Taktimpulsen von dem Taktgenerator (51) durch entsprechende Ansteuerung von Verknüpfungsschaltungen (40, 41) unterbrechbar ist.
6. Steuerschaltung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß durch die Verknüpfungsschaltungen (40, 41; 38, 48) eine Wiederholungsadresse des jeweils vorliegenden Mikrobefehlswortes in der entsprechenden Folge
steuereinrichtung (13; 23) abgebbar ist.
7. Steuerschaltung nach Anspruch 6, dadurch gekennzeichnet, daß die Wiederholungsadresse durch die Verknüpf ungsschaliungen (40, 41; 38, 48) modifizierbar ist.
DE1915818A 1968-04-03 1969-03-27 Steuerschaltung für ein elektronisches Datenverarbeitungssystem Expired DE1915818C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US71849368A 1968-04-03 1968-04-03

Publications (3)

Publication Number Publication Date
DE1915818A1 DE1915818A1 (de) 1969-11-06
DE1915818B2 true DE1915818B2 (de) 1978-05-03
DE1915818C3 DE1915818C3 (de) 1979-01-04

Family

ID=24886273

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1915818A Expired DE1915818C3 (de) 1968-04-03 1969-03-27 Steuerschaltung für ein elektronisches Datenverarbeitungssystem

Country Status (5)

Country Link
US (1) US3651482A (de)
JP (1) JPS524140B1 (de)
DE (1) DE1915818C3 (de)
FR (1) FR2005426A1 (de)
GB (1) GB1258801A (de)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3810119A (en) * 1971-05-04 1974-05-07 Us Navy Processor synchronization scheme
FR2136845B1 (de) * 1971-05-07 1973-05-11 Inf Cie Intern
US3896418A (en) * 1971-08-31 1975-07-22 Texas Instruments Inc Synchronous multi-processor system utilizing a single external memory unit
US3891972A (en) * 1972-06-09 1975-06-24 Hewlett Packard Co Synchronous sequential controller for logic outputs
US3931505A (en) * 1974-03-13 1976-01-06 Bell Telephone Laboratories, Incorporated Program controlled data processor
US3978454A (en) * 1974-06-20 1976-08-31 Westinghouse Electric Corporation System and method for programmable sequence control
JPS5121453A (ja) * 1974-08-15 1976-02-20 Hitachi Ltd Deetashorishisutemu
US3953833A (en) * 1974-08-21 1976-04-27 Technology Marketing Incorporated Microprogrammable computer having a dual function secondary storage element
JPS5216974U (de) * 1975-07-24 1977-02-05
US4320453A (en) * 1978-11-02 1982-03-16 Digital House, Ltd. Dual sequencer microprocessor
US4370709A (en) * 1980-08-01 1983-01-25 Tracor, Inc. Computer emulator with three segment microcode memory and two separate microcontrollers for operand derivation and execution phases
US4399516A (en) * 1981-02-10 1983-08-16 Bell Telephone Laboratories, Incorporated Stored-program control machine
US4750110A (en) * 1983-04-18 1988-06-07 Motorola, Inc. Method and apparatus for executing an instruction contingent upon a condition present in another data processor
JPH081604B2 (ja) * 1983-07-25 1996-01-10 株式会社日立製作所 マイクロプロセッサ
US5165033A (en) * 1983-07-25 1992-11-17 Hitachi, Ltd. Microprocessor and data processor using the former
US5093775A (en) * 1983-11-07 1992-03-03 Digital Equipment Corporation Microcode control system for digital data processing system
JPS61110256A (ja) * 1984-11-02 1986-05-28 Hitachi Ltd 複数の演算部を有するプロセツサ
CA1271561A (en) * 1986-07-02 1990-07-10 Jeffry M. Bram Instruction decoding microengines
JPH06103494B2 (ja) * 1986-11-18 1994-12-14 株式会社日立製作所 ベクトル処理装置の制御方式
US4853849A (en) * 1986-12-17 1989-08-01 Intel Corporation Multi-tasking register set mapping system which changes a register set pointer block bit during access instruction
US4979104A (en) * 1987-03-31 1990-12-18 Bull Hn Information Systems Inc. Dual microprocessor control system
US4965721A (en) * 1987-03-31 1990-10-23 Bull Hn Information Systems Inc. Firmware state apparatus for controlling sequencing of processing including test operation in multiple data lines of communication
US4945473A (en) * 1987-05-15 1990-07-31 Bull Hn Information Systems Inc. Communications controller interface
US5222237A (en) * 1988-02-02 1993-06-22 Thinking Machines Corporation Apparatus for aligning the operation of a plurality of processors
US5117387A (en) * 1988-08-18 1992-05-26 Delco Electronics Corporation Microprogrammed timer processor
US5081609A (en) * 1989-01-10 1992-01-14 Bull Hn Information Systems Inc. Multiprocessor controller having time shared control store
US5043879A (en) * 1989-01-12 1991-08-27 International Business Machines Corporation PLA microcode controller
US5761473A (en) * 1993-01-08 1998-06-02 International Business Machines Corporation Method and system for increased instruction synchronization efficiency in a superscalar processsor system utilizing partial data dependency interlocking
JPH0887411A (ja) * 1994-09-19 1996-04-02 Fujitsu Ltd パイプライン演算方法およびパイプライン演算装置
JP2007317152A (ja) * 2006-05-29 2007-12-06 Yuundo:Kk 情報処理装置
US7526638B1 (en) * 2008-03-16 2009-04-28 International Business Machines Corporation Hardware alteration of instructions in a microcode routine

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3248708A (en) * 1962-01-22 1966-04-26 Ibm Memory organization for fast read storage
US3319226A (en) * 1962-11-30 1967-05-09 Burroughs Corp Data processor module for a modular data processing system for operation with a time-shared memory in the simultaneous execution of multi-tasks and multi-programs
US3312951A (en) * 1964-05-29 1967-04-04 North American Aviation Inc Multiple computer system with program interrupt
US3348210A (en) * 1964-12-07 1967-10-17 Bell Telephone Labor Inc Digital computer employing plural processors
US3462741A (en) * 1966-07-25 1969-08-19 Ibm Automatic control of peripheral processors
US3480917A (en) * 1967-06-01 1969-11-25 Bell Telephone Labor Inc Arrangement for transferring between program sequences in a data processor

Also Published As

Publication number Publication date
GB1258801A (de) 1971-12-30
DE1915818A1 (de) 1969-11-06
DE1915818C3 (de) 1979-01-04
JPS524140B1 (de) 1977-02-01
US3651482A (en) 1972-03-21
FR2005426A1 (de) 1969-12-12

Similar Documents

Publication Publication Date Title
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE3210816C2 (de)
DE1901228C3 (de) Datenverarbeitungsanlage mit Einrichtungen zur Wiederholung von Operationen bei Auftreten eines Fehlers
DE2714805C2 (de)
DE2234867C2 (de) Anordnung in einer Datenverarbeitungsanlage zum Steuern der Verarbeitung zweier voneinander unabhängiger Befehlsfolgen
DE1815078C3 (de) Elektronisches Datenverarbeitungssystem
DE3424962C2 (de)
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1499722B1 (de) Einrichtung zur modifizierung von informationswoertern
DE2322674A1 (de) Mikroprogramm-steuereinrichtung
DE2758830A1 (de) Rechenvorrichtung
DE2715073A1 (de) Mikroprogrammierte rechner-steuervorrichtung
DE2725396C3 (de)
DE19524402C2 (de) Programmausführungssteuereinrichtung mit einer Adressierbarkeit entsprechend einer M-reihigen Pseudo-Zufallszahlenfolge
EP0134831B1 (de) Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung
DE2744359C2 (de)
DE3447530C2 (de)
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2245284A1 (de) Datenverarbeitungsanlage
DE3314139C2 (de)
DE2545751C2 (de) Ablaufsteuerung für eine Datenverarbeitungsanlage
DE1499224B2 (de) Datenverarbeitungsanlage mit kellerspeichereinrichtungen
DE3435741C2 (de)
DE2519168A1 (de) Umlaufendes schieberegister
DE2936801C2 (de) Steuereinrichtung zur Ausführung von Instruktionen

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee