DE1774466B2 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE1774466B2 DE1774466B2 DE19681774466 DE1774466A DE1774466B2 DE 1774466 B2 DE1774466 B2 DE 1774466B2 DE 19681774466 DE19681774466 DE 19681774466 DE 1774466 A DE1774466 A DE 1774466A DE 1774466 B2 DE1774466 B2 DE 1774466B2
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- buffer memory
- unit
- commands
- 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
Links
- 230000015654 memory Effects 0.000 claims description 71
- 230000003936 working memory Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 claims 1
- 230000003213 activating effect Effects 0.000 description 5
- 230000001934 delay Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 206010012335 Dependence Diseases 0.000 description 1
- 101000727801 Mus musculus Sulfate transporter Proteins 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035939 shock Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
- Multi Processors (AREA)
Description
rung 14 miteinander verbunden, die dafür sorgt, daß der Schnellspeicher 10 immer diejenigen Befehle enthält,
welche am häufigsten verlangt werden.
Die Datenverarbeitungsanlage enthält außerdem einen Pufferspeicher in Form eines Befehlsregisters
16, in das Befehle aus den Speichern 10 und 12 eingegeben werden und aus dem der Rechner Befehle
der Reihe nach erhält. Das Befehlsregister 16 enthält stets eine Reihe von Befehlen, die für den
Rechner bereitstehen und vom Rechner der Reihe nach unmittelbar verwendet werden können, sobald
sie benötigt werden. Verzögerungen, die sich dadurch ergeben könnten, daß der Rechner jeden
Befehl direkt aus einem der beiden Speicher 10 oder 12 entnehmen muß, sind daher ausgeschlossen.
Das Befehlsregister 16 besteht aus mehreren Stufen
164 bis 16H, von denen jede einen Befehl enthält.
Die Befehle werden aus dem Register 16 mit Hilfe eines Ausgabewerkes 18 entnommen, das mit der
Stufe 16H verbunden ist. Bei jeder Entnahme eines Befehls aus der Stufe 16H rücken die verbleibenden
Befehle im Register 16 in die nächste Stufe nach. Mit Hilfe eines Steuerwerkes 20, das mit der Stufe
16i? verbunden ist, werden Befehle aus den Speichern 10 und 12 in das Register 16 eingegeben.
Eine Ausgabeschaltung 22 steuert die Entnahme von Befehlen aus den Speichern 10 und 12 und überträgt
die Befehle zum Steuerwerk 20, von wo aus sie in das Befehlsregister 16 eingespeist werden. Ist
die Ausgabeschaltung 22 aktiviert, so sucht sie zunächst den Schnellspeicher 10 nach dem verlangten
Befehl ab. Sie sucht nur dann im langsam arbeitenden Speicher 12 nach dem verlangten Befehl, wenn
sie diesen im Schnellspeicher 10 nicht gefunden hat. Da die Datenübertragungsschaltung 14 dafür sorgt,
daß der Schnellspeicher die am häufigsten verlangten Befehle enthält, kommt es nur relativ selten vor,
daß die Ausgabeschaltung 22 den verlangten Befehl aus dem langsamen Speicher 12 holen muß. Auf
diese Weise kann der verlangte Befehl gewöhnlich sehr rasch aus dem Schnellspeicher 10 beschafft werden,
so daß mit dem Absuchen des langsam arbeitenden Speichers 12 verbundene Verzögerungen vermieden
werden.
Befehle, welche die Ausgabeschaltung 22 aus dem Schnellspeicher 10 entnommen hat, werden über eine
Leitung 24 zum Steuerwerk 20 (zwecks Eingabe, in die Stufe 16A) übertragen. Befehle, die die Ausgabeschaltung
22 aus dem langsamen Speicher 12 entnommen hat, werden über eine Leitung 26 zum
Steuerwerk 20 (zwecks Eingabe in die Stufe 16A) übertragen. Das Steuerwerk 20 wird durch ein Vergleichswerk
28 gesteuert, welches auf die im Register 16 zu irgendeinem Zeitpunkt befindliche Anzahl
von Befehlen anspricht. Das Vergleichswerk 28 ist ebenfalls mit den Leitungen 24 und 26 verbunden
und stellt fest, ob der letzte von dem Steuerwerk 20 empfangene und in das Befehlsregister 16
eingegebene Befehl aus dem Schnellspeicher 10 oder aus dem langsam arbeitenden Speicher 12 stammt.
Nachstehend wird nun die Arbeitsweise der Datenverarbeitungsanlage
nach F i g. 1 näher erläutert.
Wenn der Rechner den nächsten Befehl benötigt, wird über eine Leitung 32 ein geeignetes Signal zum
Ausgabewerk 18 geschickt, das daraufhin den in der Stufe 16H des Registers befindlichen Befehl entnimmt
und ihn über eine Leitung 34 zum Rechner Überträgt. Alle im Befehlsregister 16 befindlichen
Befehle rücken dann in die nächste Stufe weiter, und das Vergleichswerk 28 stellt fest, daß sich im
Register ein Befehl weniger als vorher befindet. Das Vergleichswerk 28 vergleicht die Anzahl der im Befehlsregister
befindlichen Befehle mit einer von zwei vorgegebenen Zahlen Z und Y, wobei Z kleiner
als Y ist. Stammte der letzte in das Befehlsregister
16 eingegebene Befehl aus dem Schnellspeicher 10 (d. h., er wurde über die Leitung 24 eingegeben), so
ίο vergleicht das Vergleichswerk 28 die Anzahl der im
Register 16 befindlichen Befehle mit der Zahl X. Ist die Anzahl der Befehle kleiner als X, aktiviert das
Vergleichswerk 28 das Steuerwerk 20 über ein über die Leitung 36 fließendes Signal. Das Steuerwerk 20
veranlaßt daraufhin über eine Leitung 37 die Ausgabeschaltung 22 dazu, den nächsten Befehl, welcher
verlangt wird, wenn alle im Augenblick im Befehlsregister 16 befindlichen Befehle durch den Rechner
ausgeführt worden sind, zu beschaffen. Die Ausgabe-
ao schaltung 22 sucht den Schnellspeicher 10 nach dem verlangten Befehl ab und, falls sie ihn dort findet,
holt ihn heraus und überträgt ihn über die Leitung 24 zum Steuerwerk 20. Das Vergleichswerk 28 stellt
die Zunahme um einen Befehl in der Anzahl der im Befehlsregister 16 befindlichen Befehle fest und vergleicht
diese sich neu ergebende Anzahl wieder mit der Zahl Z. Ist die Anzahl der im Befehlsregister 16
jetzt befindlichen Befehle gleich oder größer als X,
werden keine weiteren Befehle verlangt. Ist jedoch die Anzahl der im Befehlsregister 16 befindlichen
Befehle immer noch kleiner als X, so wird das Steuerwerk 20 erneut durch das Vergleichswerk 28
aktiviert, die Ausgabeschaltung 22 sucht wieder nach dem nächsten Befehl und überträgt ihn in das Befehlsregister
16, und zwar entweder über die Leitung 24 oder die Leitung 26, je nachdem, ob der Befehl
im Speicher 10 oder im Speicher 12 gespeichert war. Wurde dieser weitere Befehl über die Leitung 24
eingegeben (d. h., er wurde im Schnellspeicher 10 gefunden), dann vergleicht das Vergleichswerk 28
die sich neu ergebende Anzahl von Befehlen im Befehlsregister 16 mit der Zahl X und stellt fest, ob
weitere Befehle angefordert werden müssen oder nicht.
Stammt jedoch der von der Ausgabeschaltung 22 entnommene Befehl aus dem langsam arbeitenden
Speicher 12, dann vergleicht das Vergleichswerk 28 die neue im Befehlsregister 16 befindliche Anzahl
von Befehlen mit der Zahl Y, welche größer als Z ist. Ist die Anzahl der im Befehlsregister 16 befindlichen
Befehle kleiner als Y, dann wird die Ausgabeschaltung 22 erneut aktiviert und holt den nächsten
Befehl aus dem Speicher 10 oder 12. Danach vergleicht das Vergleichswerk 28 die Anzahl der im
Befehlsregister befindlichen Befehle wieder mit der Zahl Z oder Y, je nachdem, ob der zuletzt eingegebene
Befehl aus dem Schnellspeicher 10 oder dem langsamen Speicher 12 stammte.
Auf diese Weise hängt die Anzahl der im Befehlsregister 16 befindlichen Befehle zu jedem beliebigen
Zeitpunkt davon ab, ob der zuletzt eingegebene Befehl aus dem Schnellspeicher 10 oder dem langsam
arbeitenden Speicher 12 geholt wurde. Wurde der letzte Befehl aus dem langsamen Speicher 12 geholt,
dann befindet sich im Befehlsregister 16 eine größere Anzahl von Befehlen als für den Fall, daß der letzte
Befehl aus dem Schnellspeicher 10 entnommen wurde. './-:■
Die Adressen der aus den Speichern 10 und 12 geholten Befehle können in der Ausgabeschaltung
22 erzeugt oder in die Ausgabeschaltung 22 eingegeben werden.
F i g. 2 zeigt eine abgewandelte Ausführungsform
der in Fig. 1 gezeigten Datenverarbeitungsanlage, wobei auch Einzelheiten dargestellt sind. Auch die
Ausführungsform nach Fig. 2 weist ein Befehlsregister
auf, in das eine Reihe von Befehlen eingespeichert sind. Diese Befehle werden ebenfalls aus
einem Schnellspeicher oder einem langsamen Speicher entnommen, so wie im Zusammenhäng mit
Fig. 1 beschrieben. Die Anzahl der im Befehlsregister enthaltenen Befehle wird ebenfalls, so wie
in Verbindung mit F i g. 1 erläutert, automatisch und in Abhängigkeit davon, ob der zuletzt eingegebene
Befehl aus dem schnellen oder dem langsamen Speicher stammte, gesteuert.
Der schnell und der langsam arbeitende Speicher sind in Fig. 2 nicht dargestellt. Sollen in der in
F i g. 2 gezeigten Vorrichtung Befehle in das Befehlsregister
eingegeben werden, so wird ein Signal FTCH über eine Leitung 48 geschickt, worauf, wie im Zusammenhang
mit Fig. 1 erläutert, die verlangten Befehle entweder aus dem schnellen oder aus dem
langsamen Speicher geholt und über einen Kanal 50 weitergeleitet werden. Ein Kanal Sl liefert die Adressen
der in das Befehlsregister einzuspeisenden Befehle. Kommen die Befehle aus dem schnell arbeitenden
Speicher, so wird eine Leitung 52 erregt. Kommen andererseits die Befehle aus dem langsamen
Speicher, so wird eine Leitung 54 erregt. Über die Leitungen 52 und 54 wird eine bistabile Schaltung
55 gesteuert, welche über eine Leitung 56 ein Signal SLW abgibt, wenn sie durch Erregung der
Leitung 54 in den Zustand »1« gebracht wird. Das in F i g. 2 gezeigte Befehlsregister besteht aus drei
Teilen A, B und C, wobei jeder Teil in vier Stufen unterteilt ist. Es sind nur die Stufen Ca, Cb, Cc und
Cd für den Teil C dargestellt. Die Stufen für die Teile A und B sind nicht abgebildet. Der Teil C entspricht
der Stufe 16H von Fig. 1, aus welcher der
Rechner seine Befehle entnimmt. Die Teile A Und B entsprechen anderen Stufen des Registers 16. Der
Rechner entnimmt die Befehle der Reihe nach aus den Stufen Ca, Cb, Cc und Cd, indem er über die
Leitungen 57 bis 62 und in dieser Reihenfolge Signale FCa, FCb, FCc Und FCd schickt. Jeder entnommene
Befehl fließt über einen Kanal 64 zum Rechner. Befehle werden aus den Registerteilen A, B
und C zum nächsten Registerteil in Vierergruppen übertragen. Das heißt, es werden keine Befehle in
einen Registerteil eingegeben, bis nicht alle Stufen dieses Registerteiles geleert worden sind. In den Registerteil
C werden Befehle mit Hilfe eines ODER-Gatters 65 und über einen Kanal 66 eingespeist.
Diese Befehle kommen aus dem Registerteil B, wenn ein Signal BTOC über die Leitung 67 zur Aktivierung
eines UND-Gatters 68 geliefert wird. Andererseits kommen diese Befehle direkt über den Kanal 50,
wenn ein Signal STOC über eine Leitung 69 zur Aktivierung eines UND-Gatters 70 geliefert wird. In
den Registerteil B werden Befehle mit Hilfe eines ODER-Gätters 71 und eines Kanals 72 übertragen.
Diese Befehle kommen aus dem Registerteil A, wenn ein Signal A TOB über eine Leitung 73 zur Aktivierung
eines UND-Gatters 74 geliefert wird, und sie kommen direkt über den Kanal 50, wenn ein
Signal STOB über eine Leitung 75 zur Aktivierung eines UND-Gatters 76 geschickt wird. In den Registerteil
A werden Befehle über einen Kanal 77 und den Kanal 50 eingegeben, wenn ein Signal STOA
über eine Leitung 78 zur Aktievierung eines UND-Gatters 79 geliefert wird. Die Übertragung von Befehlen
aus einem Registerteil in den nächsten wird durch den Rechner gesteuert. Der Rechner liefert
zu diesem Zweck ein Signal SHT über eine Leitung 8®, wenn der Registerteil C keine Befehle mehr enthält.
Jedem Teil A, B und C des Registers ist eine entsprechende bistabile Schaltung 82, 83 bzw. 84 zugeordnet.
Jede dieser bistabilen Schaltungen ist so angeordnet, was noch beschrieben werden soll, daß
sie in den Zustand »1« gesetzt wird, wenn die zugeordnete Register stufe Befehle enthält. Die bistabile
Schaltung wird in den Zustand »0« gesetzt, wenn die zugeordnete Registerstufe keine Befehle enthält. Die
bistabile Schaltung 82 gibt über eine Leitung 85 ein Signal DC ab, wenn sie sich im Zustand »1« befindet.
Die Schaltung 82 gibt andererseits über eine Leitung 86 ein Signal TJC ab, wenn sie sich im Zustand »0«
befindet. In gleicher Weise gibt die Schaltung 83 ein Signal DB über eine Leitung 87 ab, wenn sie sich
im Zustand »1« befindet, und sie gibt ein Signal TJB
über eine Leitung 88 ab, Wenn sie sich im Zustand »0« befindet. In gleicher Weise verhält es sich mit
der bistabilen Schaltung 84, welche ein Signal DA über eine Leitung 89 liefert, wenn sie sich im Zustand»!«
befindet, und welche ein Signal DA über eine Leitung 9© abgibt, wenn sie sich im Zustand
»0« befindet. Die Leitungen 85, 87 und 89 sind mit entsprechenden UND-Gattern 92, 93 und 94 verbunden,
denen außerdem die Signale SHT über die Leitung 8© zugeführt werden. Im Betrieb liefern die
UND-Gatter 93 und 94 in entsprechender Weise die Signale BTOC und ATOB über die Leitungen 67
und 73.
Die bistabile Schaltung 82 wird durch ein ODER-Gatter 95 gesteuert. Das ÖDER-Gattef 95 wird über
die Leitungen 67 und 69 erregt und erzeugt ein Ausgangssignal DC, mit dessen Hilfe die Schaltung 82
in den Zustand »1« geschaltet werden kann. Das Signal DC wird außerdem über einen Inverter 96
zu einem UND-Gatter 97 übertragen, welches ferner ein Eingangssignal über eine Leitung 98 vom UND-Gatter
92 erhält. Im Betrieb liefert das UND-Gatter 97 ein Signal D~C, durch das die Schaltung 82 in
den Zustand »0« gesetzt wird.
Die bistabile Schältung 83 wird durch ein ODER-Gatter
98 gesteuert, welches über die Leitungen 73 und 75 erregt wird und ein Signal DB' liefert, durch
das die Schaltung 83 in den Zustand »1« geschaltet wird. Das Signal DB' wird auch über einen Inverter
99 zu einem UND-Gatter 100 übertragen. Das UND-Gatter
100 erhält ferner ein Eingangssignal über eine Leitung 101 vom UND-Gatter 93 zugeführt. Tritt
das UND-Gatter 100 in Tätigkeit, so liefert es ein Signal TJB', durch welches die Schältung 83 in den
Zustand »0« gesetzt wird.
Die bistabile Schaltung 84 wird direkt über die Leitung 78 gesteuert, Wobei das Signal STOA die
Schaltung 84 in den Zustand »1« setzt. Die Leitung 78 ist außerdem mit einem Inverter 102 verbunden,
der ein Signal zu einem UND-Gatter 103 liefert. Das UND-Gatter 103 ist außerdem über die Leitung 73
mit dem UND-Gatter 94 verbunden. Tritt das UND-
Gatter 103 in Tätigkeit, so liefert es ein Signal DA', durch welches die Schaltung 84 in den Zustand »0«
versetzt wird.
Die Signale FTCH auf der Leitung 48 werden mit Hilfe der logischen Schaltung 104 erzeugt. Die Schaltung
104 enthält ein ODER-Gatter 105, das mit der Leitung 48 verbunden ist und Eingangssignale von
den UND-Gattern 106, 107, 108, 110 und 112 erhält. Diese UND-Gatter werden durch Signale Fl
und F 2 gesteuert, die über die Leitungen 114 und 116 geliefert werden. Ferner werden die UND-Gatter
durch Signale NA und YA gesteuert, die über die Leitungen 118 und 120 zugeführt werden. Die Leitungen
114 und 116 erhalten entsprechend die Ausgangssignale der UND-Gatter 122 und 124. Jedes
dieser zuletzt genannten UND-Gatter erhält ein Eingangssignal von einem der entsprechenden ODER-Gatter
126 und 128. Das ODER-Gatter 126 ist so geschaltet, daß es die Signale FCc und FCd erhält.
Das ODER-Gatter 128 ist so geschaltet, daß es die Signale FCb, FCc und FCd empfängt. Ferner erhält
das UND-Gatter 122 die Signale DZ? über eine Leitung
130 zugeführt, welche mit der Leitung 88 verbunden ist. Das UND-Gatter 124 empfängt über die
Leitungen 132 und 134 die Signale DZ und SLW.
Die Leitungen 132 und 134 sind in entsprechender Weise mit den Leitungen 90 und 56 verbunden.
Die über die Leitungen 114 und 116 gelieferten Signale NA und YA werden von der logischen Schaltung
135 erzeugt. Es kann angenommen werden, daß die Datenverarbeitungsvorrichtung auf mehr als
ein Signal FTCH zur gleichen Zeit ansprechen kann. Die logische Schaltung 135 stellt die Anzahl von
Signalen FTCH fest, auf die die Vorrichtung zu
irgendeinem beliebigen Zeitpunkt anspricht. Die Schaltung 135 enthält zwei bistabile Schaltungen 136
und 137. Befindet sich die bistabile Schaltung 136 im Zustand »1«, so liefert sie das Signal NA, wodurch
angezeigt wird, daß die Datenverarbeitungsanlage nicht auf irgendein Signal FTCH anspricht.
Befindet sich die bistabile Schaltung 137 im Zustand»!«,
erzeugt sie das Signal YA, wodurch angezeigt wird, daß die Datenverarbeitungsanlage auf
ein (und nur ein einziges) Signal FTCH anspricht. Ist weder das Signal AL4 noch das Signal YA vorhanden,
so spricht die Vorrichtung auf mehr als ein Signal FTCH an. -^
Die logische Schaltung 135 wird durch Signale DTX und DTY gesteuert, die über Leitungen 138
und 139 ankommen. Das Signal DTX zeigt an, daß die Befehle auf dem Kanal 50 in der gleichen Reihenfolge
ankommen, in der die entsprechenden Signale FTCH über die Leitung 48 geliefert wurden. Das
Signal DTY gibt an, daß die Befehle nicht in dieser Reihenfolge ankommen. Außerdem wird durch die
Erzeugung entweder eines Signals DTX oder eines Signals DTY angegeben, daß die Beschaffung des
verlangten Befehls abgeschlossen worden ist.
Die Leitungen 138 und 139 sind über ein ODER-Gatter 140 mit den UND-Gattern 141 und 142 verbunden.
Das UND-Gatter 142 erhält ein weiteres Eingangssignal YA über eine Leitung 143, wenn die
Schaltung 137 sich im Zustand »0« befindet. Das UND-Gatter 142 setzt die Schaltung 137 über ein
ODER-Gatter 144 in den Zustand »1«, wenn es in Tätigkeit tritt. Das UND-Gatter 141 erhält ein weiteres
Eingangssignal über die Leitung 120 und setzt die Schaltung 136 in den Zustand»!«, wenn es in
Tätigkeit tritt. Die Schaltung 136 wird durch die Signale FTCH aus dem ODER-Gatter 105 in den
Zustand »0« gesetzt. Die Schaltung 137 wird über ein UND-Gatter 145, das mit dem Ausgang des
5 ODER-Gatters 105 und mit der Leitung 120 verbunden ist, in den Zustand »0« gesetzt. Ein weiteres
UND-Gatter 146 ist über ein ODER-Gatter 144 mit der Schaltung 137 gekoppelt und bringt auf diese
Weise die Schaltung 137 in den Zustand »1«.
ίο Die Signale DTX und DTY auf den Leitungen 138
und 139 werden auch zur Erzeugung der Signale STOC, STOB und STOA benutzt. Das Signal STOC
wird daher von einem UND-Gatter 147 geliefert, dessen einer Eingang mit der Leitung 138 verbunden
ist und dessen anderer Eingang das Signal Du zugeführt
erhält. Das Signal STOB wird von einem ODER-Gatter 148 erzeugt, welches Eingangssignale
von zwei UND-Gattern 150 und 152 erhält. Das UND-Gatter 150 empfängt die Signale DTX, DC
und TJB, während das UND-Gatter 152 die Signale
DTY, Du und D~B erhält. Das Signal STOA wird
von einem ODER-Gatter 154 geliefert, welches Eingangssignale von den drei UND-Gattern 156, 158
und 160 erhält. Das UND-Gatter 156 empfängt die Signale DTX, DC und DB, das UND-Gatter 158 die
Signale DTY, DC und D~E und das UND-Gatter 160 die Signale DTY, Du und DB.
Es soll nun die Arbeitsweise der in F i g. 2 gezeigten Datenverarbeitungsanlage beschrieben werden.
Die untenstehende Tabelle gibt die Bedingungen an, unter denen die verschiedenen in Fig. 2 vermerkten
Signale erzeugt werden.
Während des Betriebes entnimmt der Rechner die Befehle der Reihe nach über den Kanal 64, indem
er die Signale FCa, FCb, FCc und FCd in dieser Reihenfolge erzeugt. Ähnlich, wie in Verbindung
mit F i g. 1 erläutert, werden die Signale FTCH in Abhängigkeit von der Anzahl der in den Registerteilen
A, B und C befindlichen Befehle und in Abhängigkeit von der Herkunft des zuletzt eingegebenen
Befehls erzeugt (durch die logische Schaltung 104). Stammte der zuletzt eingegebene Befehl aus
dem schnell arbeitenden Speicher, so spricht die logische Schaltung 104 dann an, wenn zwei oder
weniger Befehle sich im Befehlsregister befinden. Dieser Zustand ist gegeben, wenn eines der Signale
FCc oder FCd erzeugt wird (dies zeigt an, daß die Stufen Ca und Cb des Registerteils C keine Befehle
mehr enthalten) und wenn gleichzeitig der Registerteil B leer ist (d. h., die bistabile Schaltung 83 liefert
ein Signal DZ? über die Leitung 88). Unter diesen Umständen erzeugt die logische Schaltung 104 ein
Signal Fl. Stammte der zuletzt eingegebene Befehl hingegen aus dem langsam arbeitenden Speicher
(d.h., die bistabile Schaltung55 liefert ein Signal SLW über die Leitung 56), dann spricht die logische
Schaltung 104 an, wenn sieben oder weniger Befehle sich im Befehlsregister befinden. Dieser Zustand ist
gegeben, wenn irgendeines der Signale FCb, FCc und FCb vorhanden ist (dies zeigt an, daß im Registerteil
C nicht mehr als ein Befehl vorhanden ist) und wenn gleichzeitig der Registerteil A leer ist (d. h.,
die bistabile Schaltung 84 liefert über die Leitung 90 ein Signal DA). Unter diesen Umständen erzeugt die
logische Schaltung 104 ein Signal F 2. Die Signale FTCH werden in Abhängigkeit von den Signalen Fl
und F 2 und unter der Steuerung der logischen Schaltung 135 erzeugt. Die Erzeugung eines Signals FTCH
309 527/391
geschieht jedoch nicht schon dadurch automatisch, Weil ein Signal Fi öder Fl geliefert wird. Aus der
Tabelle geht hervor, daß, wenn die Beschaffung eines
Befehls gerade durchgeführt wird (so daß die bistabile
Schaltung 137 über die Leitung 120 ein Signal YA liefert), beide Signale Fl und F 2 gleichzeitig
vorhanden sein müssen, um ein Signal FTCH zu erzeugen. Wird gerade kein Befehl beschafft (so
daß die bistabile Schaltung 136 ein Signal NA über die Leitung 118 schickt), so führt die Erzeugung
irgendeines der Signale Fl oder F 2 zur Erzeugung
eines Signals FtCH. Wird weder ein Signal NA noch ein Signal YA geliefert (was anzeigt, daß mehr
als ein Befehl gerade beschafft Wird), so kann kein
Signal FTCH erzeugt werden.
In gleicher Weise wie die Datenverarbeitungsanlage
von Fig. 1 spricht auch die Datenverarbeitungsanlage von Fig. 2 auf jedes SignalFTCH in
der Leitung 48 in der Weise an, daß Sie die verlangten
Befehle aus dem Schnell arbeitenden Speicher
holt, falls sie darin vorhanden sind. Ist dies nicht der Fall, so SUCht die Vorrichtung diese Befehle
im -langsam arbeitenden Speicher. In jedem Fall werden diese Befehle dann über den Kanal So
in das Befehlsregister übertragen. Gleichzeitig wird
eines der Signale DtX öder DfY erzeugt, was auch
in der Tabelle gezeigt ist.
Die auf dem Kanal 5Ö ankommenden Befehle
Werden in die Registerteile Unter der !Steuerung durch
die Signale StOA, STOB Und StOC eingegeben.
Wie aus der Tabelle hervorgeht, werdet! diese Signale
unter der Steuerung der Signale DTX und DTY erzeugt. Die Tabelle zeigt weiter, daß, wenn
die Befehle auf dem Kanal SO in der richtigen Reihenfolge ankommen (d. h., das Signal DtX ist
vorhanden), die Befehle vom Kanal 50 in den Registerteil
*4 eingegeben Werden, wenn die Registerteile
B und C Befehle enthalten, öder in den Registerteil £ eingegeben Werden, falls der Registerteil
C Befehle enthält Uttd der Registerteil B leer ist,
öder in den Registerteil C eingegeben Werden, falls
der Teile leer ist. Kommen andererseits die Befehle
über den Kanal 50 nicht in der richtigen Reihenfolge an (d.h., das SignalDfY ist vorhanden),
dann werden die Befehle in den Registerteil A eingegeben, falls nur einer der Registerteile B und C
Befehle enthält, oder sie werden in den ReglsterteilB
eingespeist, falls beide RegiSterteile B und C
leer sind.
Wenn der Rechner alle im Registerteil C befindlichen Befehle verwertet hat, liefert er ein Signal
SHT über die Leitung 80, wodurch die Signale ATOB und A TOC erzeugt werden und der Registerteil
A seine Befehle zum Registerteil B und der Registerteil
B seine Befehle zum Registerteil C überträgt.
Das Signal DC auf der Leitung 85 kann über eine
Leitung 162 zum Rechner fließen und anzeigen, daß
ίο der Registerteil C noch Befehle enthält und der
Rechner weiterhin Befehle daraus entnehmen kann.
Signal
Erzeugt durch
AtOB
BfOC
SfOA
STOB
StOC
DB'
DE'
DC
NA
WÄ
YA
Ya
Fl
F2
FtCH
DA ■ SHt
DB-SHt
DC -DB -DtX + DC DE-DtY
+ W-DB-DtY
DC -DS- DtX + W -W-DtY
W-DfX
DA ■ STOA - ATOB ■ SHt
AtOB + STOB
DB ■ (ATOB ■ STOß) ■ BtOC - SHT
BfOC + StOC
YA ■ (DfX + DfY)
FTCH
NA ■ FfCH + Yl ■ (DtX + DfY)
YA ■FtCH
DZ
(FCc + FCd)
(FCb + FCc + FCd) Dü-NA+m· (FCc + FCd) NA
+Έ1 ■ (FCb+FCc+FCd) ■ SLW ■ NA
+W-W- (FCc+FCd) - YA
+W · (FCc+FCd) ■ DZ · (FCb+FCc
+FCd)-SLW-YA
Die Unterschiede zwischen den Datenverarbeitungsanlagen von Fig. 1 und 2 liegen darin, daß in
der Datenverarbeitungsanlage von Fig. i Befehle
nur in die Stufe 16^4 des Befehlsregisters aus den
Speichern eingegeben werden können, Während in der Datenverarbeitungsanlage von F i g. 2 Befehle
aus den Speichern in irgendeinen der Registerteile übertragen werden können.
Hierzu 1 Blatt Zeichnungen
Claims (2)
1. Datenverarbeitungsanlage mit mehreren sie vom Hauptspeicher angefordert, der eine verSpeichern
mit unterschiedlicher Zugriffszeit, in 5 hältnismäßig lange Zugriffszeit aufweist. Falls sich
denen bestimmte Datenmengen in Form von also die angeforderte Dateneinheit nicht im Schnell-Dateneinheiten
gespeichert sind und die mit speicher befindet, tritt bis zur Bereitstellung der aneinem
zentralen Rechner über einen Puffer- geforderten Dateneinheit eine unerwünschte Verspeicher
in Verbindung stehen, in den die aus zögerung und damit ein Leerlauf des zentralen Rechden
Speichern abgerufenen Dateneinheiten ein- io ners auf.
gegeben werden, dadurch gekennzeich- Der Erfindung liegt nun die Aufgabe zugrunde,
net, daß die Dateneingabe in den Pufferspeicher eine Datenverarbeitungsanlage der eingangs genann-(16)
unter Steuerung durch ein Steuerwerk (20, ten Art derart auszugestalten, daß ein Leerlauf des
28) derart erfolgt, daß in dem Pufferspeicher je zentralen Rechners wegen zu langer Verzögerung
nach Herkunft der zuletzt eingegebenen Daten- 15 bei der Bereitstellung von angeforderten Dateneinheit
eine unterschiedliche, vorgegebene Anzahl einheiten möglichst vermieden wird,
von Dateneinheiten eingegeben wird. Gelöst wird diese Aufgabe erfindungsgemäß da-
von Dateneinheiten eingegeben wird. Gelöst wird diese Aufgabe erfindungsgemäß da-
2. Datenverarbeitungsanlage nach Anspruch 1, durch, daß die Dateneingabe in den Pufferspeicher
bei der ein Schnellspeicher mit kurzer Zugriffs- unter Steuerung durch ein Steuerwerk derart erfolgt,
zeit und ein Speicher mit längerer Zugriffszeit 20 daß in den Pufferspeicher je nach Herkunft der zuvorgesehen
sind, dadurch gekennzeichnet, daß letzt eingegebenen Dateneinheit eine unterschieddas
Steuerwerk ein Vergleichswerk (28) enthält, liehe, vorgegebene Anzahl von Dateneinheiten eindas
entweder die Anzahl der im Pufferspeicher gegeben wird. Bei der Datenverarbeitungsanlage nach
(16) befindlichen Dateneinheiten mit einer ersten der Erfindung hängt also die im Pufferspeicher bevorgegebenen
Zahl vergleicht, wenn die zuletzt 25 findliche Anzahl von Dateneinheiten davon ab, von
in den Pufferspeicher eingeführte Dateneinheit welchem Speicher die zuletzt eingegebene Datenvon
dem Schnellspeicher (10) stammt, oder das einheit stammt. Insbesondere werden im Pufferdie
Anzahl der im Pufferspeicher befindlichen speicher nur verhältnismäßig wenige Dateneinheiten
Dateneinheiten mit einer vorgegebenen zweiten gespeichert, falls die zuletzt eingegebene Daten-Zahl
vergleicht, die größer ist als die erste Zahl, 30 einheit aus einem Speicher mit einer verhältnismäßig
wenn die zuletzt in den Pufferspeicher einge- kurzen Zugriffszeit stammt. Falls hingegen die zuführte
Dateneinheit von dem Speicher (12) mit letzt in den Pufferspeicher eingegebene Dateneinheit
längerer Zugriffszeit stammt und das Steuerwerk aus einem Speicher mit einer verhältnismäßig langen
(20) die Eingabe von weiteren Dateneinheiten Zugriffszeit stammt, wird im Pufferspeicher eine
in den Pufferspeicher nur dann bewirkt, falls 35 größere Anzahl von Dateneinheiten gespeichert. Es
die Anzahl der im Pufferspeicher befindlichen hat sich nämlich in der Praxis herausgestellt, daß
Dateneinheiten kleiner ist als die mit ihr ver- sehr wahrscheinlich aus dem Speicher, von dem die
glichene erste oder zweite vorgegebene Zahl. zuletzt in den Pufferspeicher eingegebene Dateneinheit
stammt, auch wiederum die nächstfolgende
40 Dateneinheit abgerufen wird. Bei der Datenverar-
beitungsanlage nach der Erfindung wird nun ein
Leerlauf des zentralen Rechners beträchtlich verringert, falls eine Folge von Dateneinheiten aus einem
Die Erfindung betrifft eine Datenverarbeitungs- Speicher mit langer Zugriffszeit angefordert wird,
anlage mit mehreren Speichern mit unterschiedlicher 45 Gleichzeitig wird die Möglichkeit, daß eine zu große
Zugriffszeit, in denen bestimmte Datenmengen in Anzahl von aus einem Speicher mit kurzer Zugriffs-Form
von Dateneinheiten gespeichert sind und die zeit stammenden Informationseinheiten im Puffermit
einem zentralen Rechner über einen Puffer- speicher gespeichert werden, verringert, so daß der
speicher in Verbindung stehen, in den die aus den Pufferspeicher sehr schnell geleert werden kann, falls
Speichern abgerufenen Dateneinheiten eingegeben 50 dies auf Grund eines Programmsprunges erforderwerden,
lieh ist. In den Zeichnungen zeigt
Aus der USA.-Patentschrift 3 292 153 ist bereits Fig. 1 ein Blockschaltbild einer Ausführungsform
eine Datenverarbeitungsanlage der vorgenannten Art der Erfindung und
bekannt, bei der zwei Datenspeicher vorgesehen Fig. 2 ein Schaltbild einer abgewandelten Aussind,
von denen der eine eine kurze und der andere 55 führungsform.
eine lange Zugrifiszeit aufweist. Die in Fig. 1 dargestellte Datenverarbeitungs-
eine lange Zugrifiszeit aufweist. Die in Fig. 1 dargestellte Datenverarbeitungs-
Zur Erzielung einer möglichst ununterbrochenen anlage enthält einen Schnellspeicher 10, d. h. einen
Ausnutzung des zentralen Rechners wurde bisher Speicher 10 mit kurzer Zugriffszeit und einen langeine
möglichst kurze Zugriffszeit für wünschenswert samen Speicher 12 mit längerer Zugriffszeit. Die
erachtet. So ist bereits eine Datenverarbeitungsanlage 60 Kapazität des langsamen Speichers 12 ist sehr viel
bekannt, bei der die Daten normalerweise aus einem größer als die des Schnellspeichers 10. Der langsam
Schnellspeicher abgerufen werden. Die in diesem arbeitende Speicher 12 kann beispielsweise ein Ma-Schnellspeicher
gespeicherten Daten werden fort- gnetkernspeicher sein. Der Schnellspeicher 10 kann
laufend überprüft, wobei nur selten benutzte Daten aus integrierten Schaltungen aufgebaut werden. Soaus
dem Schnellspeicher entfernt werden. Eine der- 65 wohl der Schnellspeicher 10 als auch der langsam
artige Datenverarbeitungsanlage ist beispielsweise arbeitende Speicher 12 speichern Befehle, die von
in der USA.-Patentschrift 3 275 991 beschrieben. einem Rechner benötigt werden. Die beiden Speicher
Bei der Anlage nach dieser Patentschrift wird zu- 10 und 12 sind über eine Datenübertragungsschal-
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB29802/67A GB1199991A (en) | 1967-06-28 | 1967-06-28 | Improvements relating to Data Handling Arrangements |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1774466A1 DE1774466A1 (de) | 1972-02-24 |
DE1774466B2 true DE1774466B2 (de) | 1973-07-05 |
DE1774466C3 DE1774466C3 (de) | 1974-02-07 |
Family
ID=10297397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1774466A Expired DE1774466C3 (de) | 1967-06-28 | 1968-06-27 | Datenverarbeitungsanlage |
Country Status (4)
Country | Link |
---|---|
US (1) | US3535697A (de) |
DE (1) | DE1774466C3 (de) |
FR (1) | FR1576642A (de) |
GB (1) | GB1199991A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2351791A1 (de) * | 1972-10-20 | 1974-04-25 | Ibm | Datenverarbeitungsanlage |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3701107A (en) * | 1970-10-01 | 1972-10-24 | Rca Corp | Computer with probability means to transfer pages from large memory to fast memory |
US3699526A (en) * | 1971-03-26 | 1972-10-17 | Ibm | Program selection based upon intrinsic characteristics of an instruction stream |
JPH0218620A (ja) * | 1988-07-07 | 1990-01-22 | Toshiba Corp | 情報処理装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3156897A (en) * | 1960-12-01 | 1964-11-10 | Ibm | Data processing system with look ahead feature |
US3292153A (en) * | 1962-10-01 | 1966-12-13 | Burroughs Corp | Memory system |
US3275991A (en) * | 1962-12-03 | 1966-09-27 | Bunker Ramo | Memory system |
-
1967
- 1967-06-28 GB GB29802/67A patent/GB1199991A/en not_active Expired
-
1968
- 1968-06-27 US US740729A patent/US3535697A/en not_active Expired - Lifetime
- 1968-06-27 FR FR1576642D patent/FR1576642A/fr not_active Expired
- 1968-06-27 DE DE1774466A patent/DE1774466C3/de not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2351791A1 (de) * | 1972-10-20 | 1974-04-25 | Ibm | Datenverarbeitungsanlage |
Also Published As
Publication number | Publication date |
---|---|
DE1774466A1 (de) | 1972-02-24 |
US3535697A (en) | 1970-10-20 |
DE1774466C3 (de) | 1974-02-07 |
FR1576642A (de) | 1969-08-01 |
GB1199991A (en) | 1970-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3300261C2 (de) | ||
DE69130630T2 (de) | Synchrones Verfahren und Gerät für Prozessoren | |
DE4019135C2 (de) | Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung | |
DE2457612C3 (de) | Mikroprogrammier-Steuereinrichtung | |
EP1146432A2 (de) | Umkonfigurierungs-Verfahren für programmierbare Bausteine während der Laufzeit | |
DE1303071B (de) | ||
DE2036729A1 (de) | Digital Datenverarbeiter | |
DE2003150C3 (de) | Prioritätsschaltung | |
EP0134831A1 (de) | Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung | |
DE3331433A1 (de) | Vorrichtung zum einsetzen von komponenten mit variabler geschwindigkeit | |
DE2454613C2 (de) | Kanaleinheit für die Steuerung der Datenübertragung auf einer Vielzahl von Kanälen zwischen den peripheren Einrichtungen und dem Hauptspeicher einer digitalen Datenverarbeitungsanlage | |
WO2017140504A1 (de) | Verfahren und vorrichtung zum betreiben eines steuergeräts | |
DE69031361T2 (de) | Taktsignalgeneratorsystem | |
DE1774466B2 (de) | Datenverarbeitungsanlage | |
DE1285218B (de) | Datenverarbeitungsanlage | |
DE1449774C3 (de) | Speichereinrichtung mit kurzer Zugriffszeit | |
DE3009121C2 (de) | Mikroprogramm-Steuereinrichtung | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE2610428B2 (de) | ||
EP0525214A1 (de) | Verfahren zum Betreiben eines Automatisierungsgeräts | |
DE2355814C2 (de) | Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung | |
DE2612316C3 (de) | Anordnung zur Steuerung des Multiplexbetriebes zwischen mehreren Kanälen und einer zentralen Steuerschaltung eines Ein-/Ausgabewerkes in einem Datenverarbeitungssystem | |
EP0025511A2 (de) | Steuereinrichtung zur Ausführung von Instruktionen | |
DE2523795B2 (de) | ||
DE2606295B2 (de) | Anordnung zur Übertragung von Zeichen zwischen über einen Multiplexkanal ansteuerbaren peripheren Einheiten und einem Arbeitsspeicher eines Zentralprozessors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |