DE2550339A1 - Pufferspeicher mit sehr kurzer zykluszeit zwischen mehreren daten anfordernden einheiten und einem hauptspeicher mit ziemlich langer zykluszeit - Google Patents

Pufferspeicher mit sehr kurzer zykluszeit zwischen mehreren daten anfordernden einheiten und einem hauptspeicher mit ziemlich langer zykluszeit

Info

Publication number
DE2550339A1
DE2550339A1 DE19752550339 DE2550339A DE2550339A1 DE 2550339 A1 DE2550339 A1 DE 2550339A1 DE 19752550339 DE19752550339 DE 19752550339 DE 2550339 A DE2550339 A DE 2550339A DE 2550339 A1 DE2550339 A1 DE 2550339A1
Authority
DE
Germany
Prior art keywords
data
main memory
block
address
buffer memory
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
DE19752550339
Other languages
English (en)
Other versions
DE2550339C2 (de
Inventor
Vernon Kenneth Andersen
Michael Wayne Goddard
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.)
Unisys Corp
Original Assignee
Sperry Rand Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sperry Rand Corp filed Critical Sperry Rand Corp
Publication of DE2550339A1 publication Critical patent/DE2550339A1/de
Application granted granted Critical
Publication of DE2550339C2 publication Critical patent/DE2550339C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/128Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0859Overlapped cache accessing, e.g. pipeline with reload from main memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache

Description

PATEMT Λ -■ "/ ALT ' ' "" " "1^'
H. F. E ■. ^ ;.ί E R
FRIEPEN5S7RASSE £9/31
TELEFON; IDSTElN 8137
SPKSRT HAND CORPOHAT10», KeH lork, H. Ϊ./U. S. A.
P-<:':*.·?e.r*?pa' db.er nn ϊ sehr kn^er Zykl-i3v,e^t· ■awi'aohen mehreren Daten sn.fordernden E'nbeiten ;md ei.nem. Hanptspeicher m'.t Eiemlich langer
•!•r'e Xj'f^.ndTng hetcjffi'· e*ner· 2v,'r5Johenspe3,cb.ar, der als mit hoher Qsrebw'.ruVlgkv^i!- ar te". lender P -fferspei eher ','wischen mehreren die "OaI β"« an.fo.r*iio'inden E:'.rhe;vten und einem mit ziemlich geringer Oci.st'l.'w'rjdlgkoit ax'beitenden UcT.iptnpeieher ir> einem datenvei'arbei- ts.ndei) Sys^SiTi eingeschaltet, ist. D.'ftser Pufferspeicher sorgt für ei;-e ",'oWibe^geherde .Speicherung einer hsgcenKten Anzahl Blöcke von im Ha-}.pt..vpeJcbe.t» nnhcrgatrachten Daten, Wenn eine spezielle Ad^'espe τοη ο ine** Einheit, angei'ojt-dert wird, wird nachgeprüft, ob sr'.dh diene Adresse im Pufferspeicher befindet, und im positiven Falle w3:-/d eis- der anfordernden Einheit zum Lesen oder Schreiben '.'.Ui" Verfügung gestellt, Falls jsdooh die gewünschte Adresse im P'jfferppslchs'.* nicht vorhanden ist, wird in diesem zum Ersatz ein Block ausgewählt*
Es 1st bekannt, daß die Arbeitsgeschwindigkeit des Hauptspeichers eines Reshetiautomaten durroh die Anwendung eines Pufferspeichers
BAD ORiGJNAU
60 9825/0 64 3
2550333
• λ ·
von geringer Kapassitat, der ate? mit einer dienlich hohen Geschwindigkeit arteitet, gesteigert werden kann. Wenn also ein mit hoher Geschwindigkeit arbeitender Pufferspeicher in passender Weise In das System sines Rechenautomaten eingefügt wird, scheint sich d:' e Arbeitsgeschwindigkeit des Hauptspeichers der des Pufferspeichers anzunähern. In den Falle, in dem die Zyklus* zeit des Pufferspeichers ein Zehntel der des Hautspeichers beträgt, kann die effektive Zugriffszeit acht- bis neunmal geringer als die des Hauptspeichers sein· Der Grund für diese Beschleunigung der Arbeitsweise ist darin au eehen, dad erfahrungsgemäß die laufend bearbeiteten Daten »it hoher Wahrscheinlichkeit in naher Zukunft eraeut benutzt werden, und daß irgendwie zueinander in Beziehung stehende Daten gewöhnlich an benachbarten Adressenplätaen des Hauptspeichers untergebracht werden.
Im Aufsatz von J. S. Lipt.ay Bit de» Titel: ^Structural Aepeete of the System/360 Model 85, TI the Cache*, erschienen in der Zeitschrift! "IBH Systems Journal11, Band 7, Kr· 1, Seiten 15 21, in einem Aufsata von D. H. Gibson nit dem Titel: "Considerations in Block-Orient ed Systems Design" ι erschienen in den Mitteilungen der; "Spring Joint Computer Conference 196711Jund in einem dritten Auf sat a von C. J. Conti u. a. mit den Titel: "Structural Aspects of the Systen/360 Hodel 85, I General Organization" in der Zeitschrift: "IBM Systene Journal11, Band 7, Mr. 1, (1968) ist der Anschluß sog. Depotspeicher «la Pufferspeicher in verschiedenen Systemen von Rechenautomaten erläutert. Bei dem
609825/0643
"IBM System 36O - Modell 85" bewirken die Speichervorgänge stets, daß der Hauptspeicher unmittelbar auf den neuesten Stand gebracht wird. Wenn dem Abschnitt des Hauptspeichers, der gerade abgeändert wird, ein Abschnitt im Pufferspeicher zugeteilt ist, wii'd auch dieser auf den neuesten Stand gebracht; sonst findet ke5ne auf den Pufferspeicher bezogene Tätigkeit statt. Daher können die Spei ehe** vox'gänge keine erneute Zuteilung der Abschnitte des Pufferspeichers, keine Beladung mit einem Rlock und keine Überarbeitung der Tätigkeitsliste zur Folge haben, die den Ersatzalgorithmus beeinflußt«
Gemäß der Erfindung empfangen ein oder mehrere Rechenanlagen und/ oder Ein-/Ausgabe-Geräte Befehle und Operanden, die hier gemeinsam als Daten bezeichnet seien, aus einem Hauptspeicher allein über einen Pufferspeicher mit kurzer Zyklusaeit, durch den außer~ dem die im Hauptspeicher unterzubringenden Daten aus den Rechenanlagen und/oder Ein-/Ausgabe-Geräten hindurchgehen müssen» Somit ist dieser Pufferspeicher derart konstruiert; daß die gesamte Verzögerungszeit beim Speichern dadurch herabgesetzt wird, daß selbsttätig eine große Anzahl Zugriffe in den Pufferspeicher verlegt werden, also außerhalb des Hauptspeichers mit langer Zykluszeit stattfinden. Bei der bevorzugten Ausführungsform tiberträgt zu diesem Zweck eine Schaltung jedesmal dann einen Datenblock aus acht Wörtern in den Paff er spei eher, wenn ein beliebiges Wort aus diesem Block von einer Rechenanlage und/oder einem Ein-/Ausgabegex'ät benötigt wird«, Dieser Datenblock verbleibt mit mehre-
609825/0643
ren Blöcken so lange im Pufferspei eher, bis er von einem neuen la-jfenden Datenblock verdrängt wird, wie von einem Ersataalgor.ithmus vorgeschrieben wird.
Xm Pufferspeicher gemäß der Erfindung wird ein sog.^Kugeordneter Speicher1* verwendet, der 4.096 Wörter enthalten kann, die in Sätze unterteilt s5nd5 von denen jeder aus vier Datenblöcken mit acht Wörtern besteht. Der im System angewendete Hauptspeicher ist dann auch in 128 Sät'/e eingeteilt, die je 1/128 der Anzahl Wörter im gesamten Adressierbereich des Hauptspeichers enthalten* Andererseits kann der Pufferspeicher mit zusätzlichen Wörtern erweitert werden, die in einer größeren Anzahl Sätze unterteilt sind, die je aus- vier Datenblöcken aus acht Wörtern bestehen. Bei dieser andersartigen Anordnung wird auch der Hauptspeicher in dieselbe Anzahl Sätze eingeteilt, aber jeder Sata enthält dann eine geringere Anzahl von Datenblöcken aus acht Wörtern. Ein beliebiger derartiger Datenblock kann aus einem gegebenen Satz des Hauptspeichers in einen der vier Datenblöcke des entsprechenden Satzes im Pufferspeicher verlegt werden. Wenn eine Datenübertragung eum Lesen oder Schreiben zwischen dem Puffer» und Hauptspeicher stattgefunden hat, wird während «ines einsigen Zyklus des Hauptspeichers ein Datenblock aus acht Wörtern von nebeneinander liegenden Adressen aus Übermittelt·
Wenn ein Wort aus dem Hauptspeicher von einer Rechenanlage oder · einem Ein-/Ausgabegerät angefordert wird, nimmt nur der Puffer-
609825/0643
2550333
speieher diese Anfordering wahr. In üblicher Weise wird durch eine unmittelbare Adressenauswahl einer der 128 SSf.ze addressiert, in dem sich das gewünschte bzw. benötigte Wort befindet. Bei dieser Wohl wird der Pufferspeicher veranlaßt, gleichzeitig die Adresse aller vier Datenblöcke zu lesen, die sich laufend -im Satz befinden, und mit der angeforderten Adresse zu vergleichen. Wenn eine der vier Blockadressen mit der angeforderten Adresse übereinstimmt, wird das entsprechende Wort aus diesem Datenblock ausgelesen und zur anfordernden Einheit übermittelt. Falls keine der vier Blockadressen passend ist, wird der Hauptspeicher vom Pufferspeicher nach dem gesamten Datenblock abgefragt, der das gewünschte Wort enthält. Während des Wartens auf diesen neuen Datenblook bestimmt der Pufferspeicher, welcher der vier laufenden Datenblöcke am wenigsten verwendet wurde, und markiert ihn zum Ersetzen. Als nächstes Überprüft der Pufferspeicher den zu ersetzenden Datenblock daraufhin, ob ein Wort in diesem Block abgeändert worden war, während er sich i« Pufferspeicher befand. In dem Falle, daß eine Abänderung vorgenommen wurde, wird der gesamte Datenbloek samt seiner Adresse in ein vorübergehend speicherndes Halteregister des Pufferspeichers eingebracht, damit er in den Hauptspeicher rückgespeichert werden kann, so bald der laufende Zyklus des Hauptspeichers beendet ist. Wenn die Daten aus dem Hauptspeicher eintreffen, wird er in dem nun leeren Block untergebracht, und schließlich wird das entsprechende Wort vom Pufferspeicher aum ursprünglich anfordernden Gerät übermittelt, womit der Zyklus abgeschlossen ist.
609825/0643
2550333
* fr-Wenn in den bekannten Systemen von Rechenautomaten mit hoher Geschwindigkeit arbeitende Pufferspeicher zur Steigerung des Datendurchsatzes verwendet; werden, bewirken die Speichervorgänge stets, daß der Hauptspeicher auf den neuesten Stand gebracht wird- Falls der gerade abgeänderte Sata des Hauptspeichers einem entsprechenden Sate· im Pufferspeicher zugeteilt ist, wird der Pufferspeicher ebenfalls auf den neuesten Stand gebracht. Jedesmal wenn exneRechenanlage oder ein £in-/Ausgabegerät einen Schreibvorgang einleitet, muß der Hauptspeicher unmittelbar auf den neuesten Stand gebracht werden. Da dieser über eine ziemlich lange Zykluszeit verfügt, setzt ein häufiger Zugriff auf den Hauptspeicher die gesamte Bearbeitungsaeit des Systems herab.
Um dieses Problem zu umgehen, wird vom System gemäß der Erfindung ein sog· Nachspeicher-Verfahren ausgenutzt. Anstatt jedesmal den Hauptspeicher einem Schreibvorgang zu unterziehen, wenn in den Pufferspeicher Daten eingeschrieben werden, wird der Hauptspeicher gemäß der Erfindung nur dann auf den neuesten Stand gebracht, wenn sich die abzuändernde Adresse nicht im Pufferspeicher befindet und ein die abgeänderten Daten enthaltender Block - gemeint sind gegenüber dem entsprechenden Block unterschiedliche Daten - zum Ersetzen gewählt wird. Bei der Wahrnehmung, daß sich die gewünschte Adresse nicht im Pufferspeicher befindet, sendet der letztere ein Leseanforderungseignal zum Hauptspeicher, um den gesamten Datenblock zu erhalten, in dem sich die gewünschte Adresse befindet. Gleichzeitig be-
609825/0643
Au
stimmt der Pufferspeicher mit Hilfe eines Ersatzalgorithmus, welcher der im Pufferspeicher laufenden Datenblöcke ersetzt werden soll. Weiter wird geprüft, ob der Inhalt dieses gewählten Datenblockes abgeändert wurde, während er sich im Pufferspeicher befand; 5on positiven Falle wird der gesamte Datenblock samt seiner Adresse in ein vorübergehend speicherndes Halteregister eingeschleust. Während der neue Datenblock gerade vom Hauptspeicher in den Pufferspeicher an den nun leeren Platz des Blockes gebracht wird, wird der im Halteregister aufbewahrte, verdrängte Datenblock zum Hauptspeicher rückgeschrieben, wodurch dieser auf seinen neuesten Stand gebracht wird.
Die Einsparung an Zeit bei diesem Nachspeicherverfahren geht aus der folgenden Erklärung einleuchtend hervor. Anstatt in bekannter Weise den ziemlich langsam arbeitenden Hauptspeicher jedesmal auf den neuesten Stand bringen zu müssen, wenn ein im Pufferspeicher untergebrachter Datenblock verändert wird, wird gemäß der Erfindung nur ein Zyklus des Hauptspeichers ausgenutzt, um diesen auf den neuesten Stand zu bringen, und dies geschieht nur dann, wenn ein Datenblock für einen Ersatz ausgewählt ist, bei dem sein Inhalt abgeändert wurde, während er Im Pufferspeicher verblieb» Beim Verweilen im Pufferspeicher kann dieser Datenblock jedoch zahlreichen Abänderungen unterzogen werden, bis er für einen Ersatz oder Austausch ausgewählt wird.
6 0 9825/06A3
Ziel der Erfindung ist ess einen mit hoher Geschwindigkeit arbeitenden Pufferspeicher als Zwischenspeicher zwischen einem oder mehreren anfordernden Geräten und einem Hauptspeicher anzugeben, der auf statistischer Grundlage mit hoher Wahrscheinlichkeit eine Wortädresse enthält, die von dem anfordernden Gerät vorgeschrieben ist.
Bin weiteres Ziel der Erfindung ist es, eine Verdrahtung für den Hauptspeicher eines digitalen Rechenautomaten anzugeben, bei der ein gegebener Datenblock in einem mit hoher Geschwindigkeit arbeitenden Pufferspeicher wiederholt abgeändert werden kann, ohne daß der zugehörige Block im Hauptspeicher bei jeder derartigen Abänderung des Datenblockes im Pufferspeicher entsprechend verändert zu werden braucht»
Ein Ausführungsbeispiel der Erfindimg ist in der Zeichnung dai*- gestellt und wird im folgenden näher erläutert» Es stellen dar:
Figur 1 , die sich aus den Figuren la und Ib zusammensetzt, ein Blockschaltbild des Pufferspeichers, in dem die Erfindung angewendet wird,
Figur 2 den Am e^henabschnitt der den Sat?a zugehörigen Speichermoduln in Blockdarstellung,
Figur 3 den Pufferabschnitt der auvor genannten Speichermoduln,
8 -
609825/0643
Figur 4 ein Blockschaltbild derjenigen Schaltungen, von denen der die langete Zeit nioht verwendete Algorithms ermittelt wird,
Figur 5 , die sich aus den Figuren 5a bis 5c zusammensetzt, die Reihenfolge der verschiedenen, von der bevorzugten Ausführungsform der Erfindung auszuführenden Operationen in einem Flußbild und
Figur 6 das Blockschaltbild des steuernden Netsswerkes la System der Figur 1.
In Verbindung mit der Figur 1 werden die Organisation und die funktionellen Arbeitsgänge des Pufferspeichers gemäß der Erfindung erklärt; hiernach werden der Aufbau und die Arbeitswe5.se der einzelnen Blöcke aus der Figur 1 ausführlich erläutert, so weit sie vom bekannten Stand der Technik abweichen*
Wie bereite angedeutet, 1st der Pufferspeicher gemäß der Erfindung als Zwischenspeicher zwischen mehreren anfordernden Geräten und einem Hauptspeicher in der Weise angeordnet, daß die Zugriffszeit für einen Operanden auf den gesamten Speicher wesentlich herabgesetzt wird· Dabei enthält der Pufferspeicher nur eine Teilmenge der im Hauptspeicher aufbewahrten Informationen« Bei diesem Aufbau besteht, statistisch gesehen, eine hohe Wahrscheinlichkeit, daß ein gegebener Operand, der von eine« anfor-
609825/0643
2550333
* tr.
dernden Gerät «um Lesen oder Schreiben gesucht wird, in diesem Pufferspeicher vorgefunden wird, so daß kein Zugriff auf den mit geringer Geschwindigkeit arbeitenden Hauptspeicher "zu erfolgen braucht=
Has System der Figur 1 wei^t zwei in ihrer Konstruktion identische Abschnitte, nämlich einen sog. "ungeraden" Abschnitt und einen sog. "geradzahligen" Abschnitt auf, die parallel in derselben Weise arbeiten. Aus diesem Grunde v/erden die verschiedenen Funktionselemente nur beim "ungeraden" Abschnitt links von einer Linie IO erläutei't, obgleich diese Angaben auch für den "geradzahligen" Abschnitt rechts von einer Linie 12 gelten. Diejenigen Elemente, die mit den beiden Abschn5.tten zusammenarbeiten, 3ind zwischen den Linien 10 und 12 gezeigt.
Von drei anfordernden Geräten 0, .1 und 2 gehen Eingabe-Leitungen 13 aus und führen dem Pufferspeicher der Anforderung dienende Steuersignale und Adressen wiedergebende Signale, sowie einzuschreibende Daten zu. Zu den anfordernden Geräten können ein oder mehrere zentrale Bearbeitungseinheiten und Bin-/Ausgabe-Geräte gehören. Die am unteren Ende der Figur Ib eintretenden, der Anforderung dienenden Signale gelangen zxi je eine» Prioritätsnetfcwerk 14, das sich in dem einen oder anderen Abschnitt des Pufferspeichers befindet; beim gleichzeitigen Empfang von Anforderungssignalen aus zwei oder mehreren anfordernden Geräten wird nur einem solchen Gerät für die Übertragung zum Pufferspei-
- 10
609825/06 A3
2550333
* f
eher die Priorität zuerkannt. Sowohl die aentralen Bearbeitungseinheiten als auch die Ein-/Ausgabe-Geräte übermitteln die Daten zum Pufferspeicher auf der Grundlage einer Anforderung und eines Anerkenntnisses, wie in der USA-Patentschrift Hr. 3»243.781 ron Ehraian u. a. in Verbindung mit der Konstruktion bzw. Organisation solcher der Anforderung dienender Geräte ausführlich erläutert ist. Wie dort ferner beschrieben ist, werden mehrere von unterschiedlichen Geräten kommende Anforderungssignale einem Prioritätsnetzwerk zugeleitet, das zu einem gegebenen Zeitpunkt ein derartiges Gerät für eine Datenübertragung zum übrigen System auswählt.
Gemeinsam mit dem Anforderungssignal sum Lesen oder Schreiben wird eine Adresse zugeführt, die das gewünschte Wort auswählt, das gelesen oder abgeändert werden soll. Die die Adressen wiedergebenden Signale bilden die Eingangssignale von Anforderungs-Adressenwählern 16, die lediglich Verknüpfungsschaltungen sind, die auf Steuersignale ansprechen, die aus dem jeweiligen Prioritätsnetzwerk 14 austreten und die die Adressen wiedergebenden Signale aus dem einen Anforderungs-Adressenwähler 16 zu Anforderungs-Adressenregistern 18 hindurchgehen lassen. In ähnlicher Weise lassen Pufferschreibwähler 20 als übliche Verknüpfungsschaltungen zu schreibende Daten vom gewählten anfordernden Gerät in Pufferschreib-Register 22 hineinlaufen.
- 11 -
609825/0643
25^0339
Die vor. den Anfordertmgs-Adressen- und PiuCTerachreib-Registtrn 18 und 22 abgegebenen 3ignale werden zugehörigen Sat'^Speicher-Einheiten 24 und 26 zur Verfugung gestellt, τοη denen die erstere die ungeradzahllgen Adressen mehrerer Blöcke und die letztere die geradzahligen Adressen in denselben Blocken speichern, und die übliche adressierbare Speicher mit zufallsverteiltem Zugriff sein können, aber in zwei Teile, nämlich einen An^eichenteil unc einen Pufferteil eingeteilt sind.
Zur Aufbewahrung sog. Ar.ze3 chenwörter enthllt dl· Satiepeicherainheit 24 einen Stapel adressierbarer Register 28 und zur Speicherung mehrerer Sätze aus vier halben Datenblöcken mit vier Wörtern einen weiteren Stapel adressierbarer Register 30. In ähnlicher Weise ist die Sataspeichefeinheit 26 in «wei Teile, nämlich Je einen Stapel von Registern 32 und 34 zerlegt, die ter bzw. mehrere Sätze von halben Datenblöcken speichern· In den Registern 28 und 32 ist ein An^e:? cJienwort für jeden, halben Datenblock vorhanden, der in den Registern 30 baw. 34 untergebracht
Zum besseren Verständnis der Gesamtorganisation des PtAff er speichere erscheint die Betrachtung einer AusfUhrungsfoni hilfreich, obgleich die Speicherkapazitäten frei wählbar sind· Beispielsweise mögen die beiden Satzspeicher-Binheiten 24 und 26 konbiniert eine Kapazität von 4·096 Datenwörtern und ein Hauptspeicher 36 eine Kapazität von 262.144 Wörtern aufweisen. Die 8atK«peicher-
- 12 -
60982S/0643
Einheiten können in 128 Sätze ana vier Datenblöcken mit je acht Wörtern (128 χ 4 χ 8 «» 4.096) unterteilt sein. Man kann dann auch den Hauptspeicher als aus 128 Sätzen aufgebaut betrachten, wobei der einzelne Satz 1/128 der Wortkapazität des Hauptspeiciers aufweist. Dabei würde jeder Satz 256 Datenblöcke aus acht Wörtern (128 χ 256 χ 8 ~ 262.144) enthalten. Vier τοη den 256 Datenblöeken aus 8 Wörtern in einem Satz des Hauptspeichers können in einem entsprechenden Satss der 128 Sätze in den Satzspeicher-Einheiten 24 und 26 ruhen.
Um das. Adressieren der im Pufferspeicher untergebrachten Daten KU beschleunigen, ist dieser in einen Abschnitt mit ungeradzahligen Adressen und einen Abschnitt mit geradzahligen Adressen unterteilt, damit unter bestimmten, noch zu erklärenden Bedingungen der Zugriff überlappend erfolgen kann. Die Einteilung in ungerad- und geradzahlige Abschnitte bewirkt, daß der Aufbau der Sätze und Datenblöcke zwei halbe Datenblöcke aus vier Wörtern je Block mit acht. Wörtern enthält. Somit kann der Pufferspeicher 2a048 Wörter mit ungeradzahligen Adressen und 2.046 Wörter eit geradzahligen Adressen aufnehmen, wie aus der nachfolgenden Tabelle X hervorgeht.
- 13 -
60 9 8 25/0643
255033S
4 Blöcke aus 8 Wörtern
ABCD <—BLOCK-ESEE 0 0 0 0 ESSE 0 0 0 0 EESS 0 0 0 0 EESS 0 0 0 0
TABELLE I
4 halbe Blöcke aus 4 Wörtern
A BGD EEEE EEEE EEEE EEEE
Satzspeichereinheit 26
4 halbe Blöcke 4 Wörtern
ABCD 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Satzspeichereinheit 24
Das Format, das für die Adresse angenommen ist, die von den gewählten anfordernden Geräten geliefert wird und dem Zugriff auf die Information dient, die in den Sat«Speichereinheiten 24 und 2ό oder im Hauptspeicher 36 in den Fällen aufbewahrt ist, falls die zum Lesen oder Schreiben gerade gesuchte Adresse nicht in den Satzspeichereinheiten 24 und 26 ruht, ist in der folgenden Tabelle II angegeben. Wiederum ist dabei vorausgesetzt, daß dieses Format für einen einzigen Hauptspeicher 36 mit der Kapazität von 262.144 Wöi*tern und einen mit ihm kombinierten Pufferspeicher mit der Kapazität von 4.096 Wörtern verwendet wird. Bei einer Anwendung zusätzlicher Speichermoduln sind weitere Adressenbits zur Auswahl der Moduln notwendig.
609825/0643
TABELLE .11
22-10 9-3 2-1 O
Blockwahl Sat«wähl Wortwahl · O/E-Wahl Hauptspeicher-Adresse
ftun seien die Satzspeichereinheit 24 mit dem Stapel Register 28 und die Satzspeichereinheit 26 mit dem Stapel Register 32 in Verbindung mit der Figur 2 bezüglich ihrer Organisation und Arbeitsweise ausführlich betrachtet. Bei der Satzspeichereinheit 24 werden der Anzeichen- und Pufferteil in üblicher Weise adressiert. Die vom Anforderungs-Adressenregister 18 abgegebenen Signale laufen über ein Kabel au einem Adressen-Zuordner 40 innerhalb der Satzspeichereinheit 24, wo die Bits 3 bis 9 der Adresse geprüft werden, damit eine von 128 Leitungen ausgewählt wird, über die eines der 128 Register im Stapel des Anzeichenteiles einem Zugriff unterzogen wird. In jedem Register des Anzeichenteiles werden 64 Bits in dem Format aufgenommen, das als Satzadresse 0 0 0 in der Figur 2 gezeigt ist. Der Teil des Anzeichenwortes mit der Bezeichnung: "Blockadresse" schließt die Bits 10 - 22 der Adresse des ersten Wortes in allen vier Blöcken ein, die jenen Satz im Pufferspeicher enthalten, wobei ein Block acht Wörter umfaßt, die nebeneinander an acht Wortbegrenzungen .angeordnet Bind.
- 15 -60 982 5/064
Mit dem Begriff: "Alter" werden zwei Bits in einem Feld bezeichnet, das allen vier Blockadressen am Anzeichenplats zugeordnet ist und eine relative Angabe darüber liefert, wie lange es her ist, seitdem auf alle Blöcke zugegriffen wurde. Über dieses Feld folgen noch Erläuterungen, wenn der Ersatzalgorithmus für den seit einer maximalen Zeitspanne nicht benutzten Block ausführlich erklärt wird.
Ein Feld Wg ist 1 Bit breit und wird beim Rückschreiben der Bits verwendet, um anzuzeigen, ob in dem vorgeschriebenen Block abgeänderte Daten vorhanden sind. Falls dieses Bit ein 1-Bit ist und der in Frage kommende Block für einen Ersatz ausgewählt ist, müssen alle vier Wörter in diesem Datenblock in den Hauptspeicher rüekgeschrieben werden. Im Falle eines O-Bit braucht der verdrängte Block nicht in den Hauptspeicher eingeschrieben zu werden, da kein Wort in diesem Block durch einen Schreibvorgang abgeändert wurde, während er sich im Pufferspeicher befand.
Um festzustellen, ob ein gewünschter Datenblock im Pufferspeicher ruht, werden die vier Blockadressen des Anzeichens, das zum angeforderten Satz gehört, Bit für Bit mit den Bits 10 bis 22 derjenigen Adresse verglichen, die im Anforderungs-Adressenregister 18 (Figur 2) enthalten ist. Falls die eine der vier Blockadressen übereinstimmt, was von einer Vergleichsschaltung 4.2 festgestellt wird, ruht das angeforderte Wort im Pufferspeicher und kann aus diesem unmittelbar erhalten werden. Da die Abschnitte des Pufferspeichers mit den Satzzahlen (Bits 3-9)
16 -
60982 5/064 3
and die Bits adressiert werden, die ein Wort innerhalb des Blokkes (Bits 1-2) identifizieren, umfaßt der Ausgang die Breite von vier Wörtern, wobei ein Wort von jedem der vier Datenblöcke im angeforderten Satz abgegeben wird. Die Ausgangssignale der 1rerglei<f.hsschaltung 42, die die Nummer des Blockes angeben, in dem die Übereinstimmung auftrat, werden aur Auswahl des passenden Wortes aus dem Pufferspeicher benutzt, damit es zum anfordernden Gerät übertragen wird·
In der Figur 3 ist die Organisation der Satzspeichereinheit 24 aufgezeigt; diese enthält Kahlreiche adressierbare Register zum Speichern von Baten. Die einzelnen Wörter sind in 128 Sätzen gruppiert, die je vier halbe Blöcke mit vier Wörtern aufweisen; die geradzahligen Adressen sind dabei in der SataSpeichereinheit 26 und die ungeradzahligen in der Satzspeichereinheit 24 untergebracht. Um auf ein gegebenes Vort einen Zugriff au ermöglichen, wählen die Bits 09 bis 03 der Adresse aus dem anfordernden Gerät einen der 128 im Pufferspeicher untex'gebrachten Sätae aus. Das Bit 0 aus dem Anforderungs-Adressenregister wird decodiert und schreibt infolgedessen vor, ob die Adresse ungerad- oder geradzahlig ist, damit auf die Satzspeichereinheit 24 oder 26 zugegriffen werden kann; von einem Wortwähler werden die Bits 02 und 01 aus dem Anforderungs-Adressenregister übersetzt, damit in (iinaaliger Form eines der vier Wörter in allen Blöcken innerhalb eines gegebenen Sataes in dem betreffenden ungerad- oder geradzahligen Abschnitt ausgewählt wird« Da diestlb« Adresse aus dem
- 17 -
609825/0643
anfordernden Gerät gleichzeitig dem Stapel der Anzeichen-Register der Figur 2 zugeleitet wird, wird in dem Falle, dafl eine Übereinstimmung -zwischen der Adresse eines angeforderten Blokkes und der Adresse eines im Pufferspeicher ruhenden Blockes auftritt, ein Ausgangssignal auf einer Leitung A, B, C oder D entwickelt, die aus der Vergleichsschaltung 42 des vorgeschriebenen ungerad- oder geradsahligen Abschnittes austritt. Dadurch daß dieses Ausgangssignal zu den Eingangsklemmen eines Blockwählers 48 der Figur 3 gelangt, kann allein das gewählte Wort des ausgewählten Blockes im ausgesuchten Sats; des gewählten Abschnittes aus der Satzspeichereinheit 24 oder 26 ausgelesen werden« Falls natürlich der gewünschte Block nicht im Pufferspeicher vorhanden ist, kann die Vergleichsschaltung 42 kein Signal liefern, wodurch der Wortwähler 48 den Austritt eines Wortes aus der Satzspeichereinheit 24 verhindert.
Die von den Satsspeicher-Einheiten 24 und 26 abgegebenen Wörter laufen durch Kabel $0 der Figur 1 in Lesedatenwähler 52 hinein, die vom Prioritätsnetsswerk 14 beeinflußt werden und die Wörter über Kabel 54 zu einem von mehreren Leseregistern 56, 58 oder des anfordernden Gerätes hindurchtreten lassen, das im ersten Fall die Anforderung zum Lesen an den Pufferspeicher gesendet hat.
Falls in Verbindung mit einer Anforderung zum Lesen oder Schreiben ermittelt wird, daß sich das gerade gesuchte Wort nicht im
- 18 -
ORIGINAL INSPECTED
609825/0643 X
Pufferspeicher befindet, wird die gewünschte Adresse aus den Anforderungs-Adressenregistern 18 über ein Kabel 6l zu einem Verfehlungs-Adressenregister 62 übertragen, wo sie festgehalten wird, damit sie in einem späteren Zeitpurkt verwendet werden kann« Als nächstes wird der während der längsten, -vorausgehenden Zeitspanne nicht benutzte Algorithmus angerufen, wodurch die dem zu ersetzenden Block angeordnete Anseichenadresse aus dem Anseichenteil der Satesäspeichereinheit 24 oder 26 au einem Anaeichen-Adressen-Register 6k ausgelesen und von diesem ssu einem Pufferanzeichen-Adressen-Register 66 durch ein Kabel 63 übertragen wird.
Hiernach werden während vier Lesezyklen des Pufferspeichers die beiden für einen Ersatz ausgesonderten, halben Datenblöcke mit vier Wörtern aus den Sataspeicher-Einheiten 24 und 26 ausgelesen und der Reih· nach zu den vier Abschnitten von Schreibdaten-Registern 68 des Hauptspeichers übertragen, in denen sie festgehalten werden.
Der gewünschte, nicht ruhende Datenblock wird zu je zwei IfSrtern gleichzeitig aus dem Hauptspeicher 36 über ein Kabel 70 in vier Zyklen Ausgelesen und durch die Pufferschreibwähler 20 in die Pufferschreib-Register 22 eingelassen. Der Ersatzblock aus dem Hauptspeicher wird bei der beginnenden Pufferadresse untergebracht, die vom Inhalt des Pufferanzeichen-Adressenregisters 66 bezeichnet ist; wenn ein Wort eintritt, werden die Bits 1 und 2 zur Bildung der Wortadresse beim Einlaß um ei-
- 19 -
ORiGS^AL INSPECTED
609825/0643
ne Einheit vergrößert. Auch das neue Anaeichenwort wird in die Ansseichenteile der Satzspeicher-Einheiten Zk und 26 eingeschrieben, wie noch zu erläutern ist.
Während diese Vorgänge ablaufen, wird das Rückschreibebit des Anzeichenwortes., das gegenwärtig im Anaeichen-Adressenregister 64 enthalten ist, geprüft; falls es gesetzt ist, bedeutet dies, daß der jetzt in den Schreibdaten-Registern 68 ruhende Datenblock einer Abänderung unterzogen wurde, während er sich im Pufferspeicher befand. Somit ist es notwendig, daß dieser Datenblock in den Hauptspeicher 36 rückgeschrieben wird.
Während der vier Zyklen des Hauptspeichers werden die Wörter paarweise aus den Schreibdaten-Regä&ern 68. näm3.ich eines aus dem ungeradaaiiligen Abschnitt und eines aus dem geradzahligen Abschnitt in den Hauptspeicher eingelassen, wobei der Platz dieses Blockes von der Adresse Torgeschrieben ist, die au einem früheren Zeitpunkt im Verfehlungs-Adressenregister 62 aufgenommen wurde» dessen Inhalt einem Adressen-Register 72 des Hauptspeichers 36 augeleitet wird.
Nachdem das letzte Wort der aus dem Hauptspeicher ausgelesenen Daten in den Pufferspeicher eingetreten ist, wird die Abtastung einer weiteren Priorität eingeleitet, wodurch das ursprünglich anfordernde Gerät Zugang zu der nun im Pufferspeicher ruhenden Adresse gewinnt und ihm das gewünschte Wort zum Lesen oder
20 -
609825/0643
Schreiben zur Verfügung gestellt wird. Zum besseren Verständnis der Vorgänge, die mit einem während einer längsten Zeitspanne nicht benutzten Algorithmus in Verbindung stehen, mit dessen Hilfe ein Block zum Ersatz gewählt wird, falls ein Wort angefordert wird, das sich nicht 5.m Pufferspeicher befindet, sei auf d?e Figur 4 verwiesen.
Wie aus der Erläuterung des Anseichenteiles in der Satzspeichereinheit der Figur 2 hervorgeht, verfügt jeder Satz über ein Anzeichenwort, das die Adresse der vier laufend im Pufferspeieher ruhenden Blöcke, sowie zwei das Alter angebende Bits für jeden Datenblock vorschreibt., die die Binärwerte 00, 01, 10 oder 11 einnehmen können. Die Binärwerte 00 geben den zuletzt benutzten Block und die Binärwerte 11 den während der längsten Zeitspanne nicht verwendeten Block an. Wenn also ein Block des Pufferspeichers durch einen neuen Datenblock aus dem Hauptspeicher ersetzt werden soll, brauchen die Steuerschaltungen nur die das Alter des Blockes angebenden Bits im gerade adressierten Satz zu prüfen und den Datenblock mit den das Alter nennenden Bits 11 zum Ersatz auszuwählen»
Mit Hilfe der Schaltung nach der Figur 4 werden die das Alter angebenden Bits eines Änzeichenwortes eines Satzes jedesmal auf den neuesten Stand gebracht, wenn auf einen Block in diesem Satz zugegriffen wird. Vier Register 74, 76. *?8 und 80 am unteren Ende der Figur 4 können einen Teil der Vergleichsschal-
21 -
609825/0643
tung 42 der Figur 2 bilden. Bei der Heranführung einer Anaeichenadresse aus dem mit der höchsten Priorität anfordernden Gerät an den Adressen-Zuordner 40 wird das Anaeichenwort dieses Satzes in die Vergleichsschaltung 42 eingelassen, wobei die das Alter der Blockadresse angebenden Bits und ein Rückschre5.bbit für einen Block A in das Register 745 die für einen Block B in das Register 76 usw. eintreten. Die das Alter nennenden Bits werden von den Registern 74, ?6, 78 und 80 zu einem Vergleichswähler 82 und Komparatoren 84, 86, 88 und 90 übertragen, deren zweites Eingangssignal aus dem Vergleichswähler 82 herangeführt wird. An die Ausgangsklemme des jeweiligen Komparators 84, 86, 88 und 90, der feststellt, welche der beiden Eingangsgrößen größer oder kleiner als die andere ist, oder ob beide gleich sind, ist über je einen Addierer 92, 94» 96 bzw. 98 zum zugehörigen Register 74, 76, 78 bzw. 80 zurückgeführt. Beim Empfang des Ausgangssignals von den Komparatoren 84, 86, 88 und 90 fügen die Addierer zu den in den Registern 74, 76, 78 und 80 vorhandenen, das Alter bezeichnenden Bits eine Eins oder Null hinzu oder löschen dieselben auf Null.
Als Beispiel sei angenommen, daß die das Alter anzeigenden Bits in den Registern 74, 76, 78 und 80 die Binärwerte 00, 10, 01 und 11 sind, und daß ein Signal aus der Vergleichsschaltung 42 der Figur 2 auf einer Leitung B erscheint, womit angezeigt wird, daß jener Block in einem vom Adressen-Zuordner 40 bestimmten Satz gerade adressiert wird. Aus der Vergleichsschaltung 42
- 22 -
609825/0643
empfängt der Vergleichswähler 82 ein Signal, von dem die das Alter bezeichnenden Bits IO der einen Eingangskierarae der Kompa ratoren 84, 86, 88 -and 90 zugeleitet werden. Daher wird der Bi närwert 10 mit den das Alter angebenden Bits in den Registern 74j 76, 78 und 80 verglichen. Wenn der Binärwert 10 aus dem Vergleichswähler 82 mit dem angenommenen Binärwert 00 im Komparator 84 verglichen wird, entsteht ein Ausgangssignal, das anzeigt, daß die das Alter angebenden Bits im Register 74 einen niedrigeren Binärwert als die vom Vergleichswähler 82 abgegebenen Bits aufweisen, und der Addierer 92 fügt die Zahl 1 zum Inhalt des Registers 74 hinzu.
die Bits aus dem Vergleichswähler 82 mit den das Alter angebenden Bits aus dem Register 76 verglichen werden, kann sich eine Übereinstimmung ergeben, und unter dieser Bedingung gibt der Addierer 94 ein Signal ab, das das Register 76 auf Null einstellt, also löscht. Der Vergleich der das Alter bezeichnenden Bits aus dem Register 78 mit den das Alter angebenden Bits des gewählten Datenblockes im Komparator 88 bewirkt, daß der Addierer 96 zum Inhalt des Registers 78 eine Eins hinzufügt, zumal angenommen ist, daß die Bits des Registers 78 einen kleineren Binärwert darstellen, als es beim gewählten Binärwert 10 der Fall ist.
Da die das Alter angebenden Bits aus dem Register 80 einen größeren Binärwert als die aus der Vergleichsschaltung 42 aufweisen
609825/0643
2550333
sollen, gibt der Komparator 90 ein Signal ab, mit dessen Hilfe zum Inhalt des Registers 80 eine Hull hinzugefügt wird. Beim Verfolgen dieser Weiterschaltvorgänge werden die das Alter angebenden Binärwerte 01, 00, 01 und 11 vex'wendet, von denen angezeigt wird, daß der Block B der zuletzt in Anspruch genommene Block ist und der Block I1 während der längsten Zeitspanne nicht benutzt, wurde.
Zusammenfassend betrachtet, bestimmen die Komparatoren 845 86, 88 und 90, ob die das Alter angebenden Bits in den Registern 74, 76, 78 und 80 größer, gleich oder kleiner als die das Alter bezeichnenden Anzeichenbits aus dem gewählten Block des ausgesuchten Sataes sind, und die Addierer 92, 94, 96 und 98 zählen unter den zuvor aufgezählten Bedingungen eine Null au den Bits aus den Registern 74$ 76, 78 und 80 zu, löschen diese oder addieren eine Eins hinzu. Bei jedem Zugriff auf einen Satz werden dann die das Alter angebenden Bits des Anzeichenteils dieses Satzes auf den neuesten Stand gebracht, um den Block in diesem Satz zu identifizieren, auf den während der längsten Zeitspanne nicht zugegriffen wurde. Die genannten Komparatoren 84, 86, 88 und 90 sind in der USA-Patentschrift 3.293.6O3 näher erläutert.
Zur weiteren Erläuterung der Arbeitsweise der Schaltung nach der Figur 1 sei das Flußbild der Figuren 5a, 5b und 5c herangezogen. Zu Anfang ist das Prioritätsnetzwerk 14 bereit, eingehende Anforderungssignale aus mehreren dex- Anforderung dienenden Geräten
- 24 -
609825/06A 3
2550333
anzunehmen, die an den Eingangsieifcungen 13 des Pufferspeichers angeschlossen sind, (Block 102} Nach dem Empfang eines Anforderungssignals zum Lesen oder Schreiben wird festgestellt, ob gerade mehrere derartige üeräte Anforderungssignale übertragen. (Block 104) Tm positiven Falle wählt das Prioritätsnetswerk 14 (Figur 1} nur ein solches Gerät für eine Übermittlung aus;(Block 106) im negativen Falle werden alle anderen Geräte mit Ausnahme des gerade anfordernden während der Dauer des folgenden Leseoder Sehreibvorganges gesperrt. (Block 108) Das Prioritätsnetzwerk 14 sendet ein Schalbsignal au dem der Anforderung dienenden Gerät, wodurch die Bits 09 bis 03 der angeforderten Adresse in den Adressen-Zuordner 40 und Satawähler 44 (Figuren 2 und 3) der Anasichenteile und Pufferteile der SatKspeicher-Einheiten 24 und 26 eingeschleust warden. Gleichzeitig laufen die Bits 02 und 01 der rom anfordernden Gerät dargebotenen Adresse in den Wortwähler 46 (F5.gur 3) hinein. (Block 110)
Als nächstes werden die Satzspeicher-Einheiten 24 und 26 zyklisch durchgeschaltet, und das Anzeichenwort wird für den gewählten Satz in. die Vergleichsschaltung 42 übertragen; ferner werden die vier Datenwörter aus den gewählten Blöcken des gewählten Satzes in den Blockwähler 48 der Figur 3 eingelassen. (Blöcke 112 und 114) Daraufhin werden die Blockadressen der vier Datenblöcke, die den gewählten Satz bilden und in der Vergleichsschaltung 42 enthalten sind, Bit für Bit mit der von der Satζspeiehereinheit dargebotenen Adresse verglichen. (Block 116)
609825/0643
Falls sich beim Vergleich eine Übereinstimmung ergibt, wird auf einer der aus der Vergleichsschaltung 42 austretenden Leitungen A, Β, C oder D ein Seuersignal zum Vergleichswähler 82 (Figur 4) übermittelt, wodurch d:?e das Alter angebenden Bits des Anzeichenwortes in der Vergleichsschaltung 42 auf den neuesten Stand gebracht werden. (Blöcke 118 und 120) Bei einer fehlenden Übereinstimmung gehen die Vorgänge gemäß den Blöcken der Figur 5b weiter.
Nachdem im Falle einer Übereinstimmung die das Alter bezeichnenden Bits des Anzeichenwortes im gewählten Satz auf den neuesten Stand gebracht sind, wird festgestellt, ob die vom Priori tätenetzwerk 14 angenommene Anforderung für das Lesen oder Schrei« ben bestimmt ist. (Block 122) Im Falle des Schreibens geht das Flußbild in der Figur 5c weiter. Unter der Annahme einer Anforderung zum Schreiben wird den Satzspeicher-Einheiten 24 und 26 ein Schalt signal übermittelt, das das Datenwort, das im Pufferschreib-Register 22 untergebracht ist, an demjenigen Platz einschreiben läßt, der von der Adresse bestimmt ist, die im Anforderungs-Adressenregister 18 ruht. (Block 124 der Figur 5c) Da sich infolge des Sehreibvorganges die in einem Datenblock des Pufferspeichers untergebrachten Daten von denen im entsprechen den Block des Hauptspeichers unterscheiden, muß der abgeänderte Datenblock in den Hauptspeicher eingeschrieben werden, so bald er vom Ersatz-Algorithmus für einen Ersatz ausgewählt wird. Um eine derartige Abänderung anzuzeigen, wird das Rückschreibebit
- 20
509825/0643
des Anseic'ienwortes für den abgeänderten Datenblock gesetzt. (Block 126} S'„'fcl:leÄl:'oh wird ein Anerkenntnissignal zum ausgesuchten anfordernden Gerät zurückgesandt-, das die Mitteilung gibt, daß das von ihm gelieferte Batenwort in dem mit der hohen Geschwindigkeit arbeitenden Pufferspeicher eingeschrieben ist. Mit dem Ende dieser Folge wird das Prioritätsnetmwerk 14 freigegeben damit es neue Anforderungssignale abtasten kann« (Block 128 der Figur 5c)
Falls sich die ursprüngliche Anforderung auf das Lesen bezieht, wird das gewählte Wort im ausgesuchten Datenblock des ausgewählten Satzes durch den Blockwähler 148 der Figur 3 in den Lesedatenwähler 52 der Figur 1 und von diesem aus in die Anforderungs-Leseregister 56, 58 und 60 des anfordernden Gerätes mit der höchsten Priorität eingeschleust. (Block 130 der Figur 5a) An dieses Gerät gibt dann die Steuerung des Pufferspeichers ein Anerkenntnissignal ab, von dem mitgeteilt wird, daß das gewünschte Wort in seinem Leseregister vorhanden ist und aus diedem abgeholt werden kann. (Block 132)
Wenn die Adressen der vier Datenblöcke im ausgewählten Satz nicht mit der angeforderten Adresse übereinstimmen, was die Vergleichsschaltung 42 abtastet, muß das Flußbild der Figur 5b weiterverfolgt werden* Dann gibt die Vergleichsschaltung 42 des gerade adressierten Abschnittes auf der Leitung 6? ein Steuersignal zu einer Steuerung 15 hin ab, die bei seinem Empfang
- 27 60 98 25/06A3
2550333
einen Befehlsgenerator mit einer Verzögerungsleitung einschaltet, um in vorgegebenen Zeitpunkten Befehle herauszugeben und den Datenaustausch zwischen dem mit hoher Geschwindigkeit arbeitenden Pufferspeicher und dem mit geringer Geschwindigkeit arbeitenden Hauptspeicher zu steuern«, Wegen ihrer unterschiedlichen Zykluszeiten können mehrere Vorgänge parallel nebeneinander oder auch zeitlich sich überlappend ablaufen« In der Figur 5b sind die sich überlappenden Operationen in den beiden parallelen Zweigen angegeben, in denen jedoch nicht spezifische zeitliche Beziehungen zur Schau gestellt werden.
Wenn die Steuerung 15 das die mangelnde Übereinstimmung angebende Signal empfängt, gibt sie einen Befehl heraus, durch den die Adresse des nicht ruhenden Datenblockes, also diejenige Adresse gespeichert wird, die vom anfordernden Gerät geliefert wird, dem zuvor die Priorität zuerteilt wurde. Xm einzelnen bewirkt der Befehl aus der Steuerung 15, daß der Inhalt des Anforderungs-Adressenregisters 18 durch die Leitungen des Kabels 61 zum Verfehlungs~Adressenregister 62 übertragen wird. (Block 134 der Figur 5b) Gleichzeitig arbeitet die Schaltung der Figur 4 in der bereits erläuterten Weise, damit der spezielle Block A, B, C,, B in der Vergleichsschaltung 42 identifiziert wird, in dem die das Alter bezeichnenden Bits 11 vorhanden sind; es wird also der am längsten unbenutzte Block ermittelt. Die diesem Block zugeordneten Bits der Blockadresse» des Alters und das Rtickschreibebit werden aus dem Anaeichenteil der Satzspeichereinheit in das An-
- 28 609825/0643
zeichen-Adressenregister 64 ausgelesen und von dort zum Pufferanzeiehen-Adressenregister 66 übertragen. (Block 136)
Hiernach sendet die Steuerung 15 ein Anforderungssignal zum Lesen an den Hauptspeieher, wodurch der Datenblock mit acht Wörtern ausgelesen wird, der durch die im Yerfehlungs-Adressenregister 62 enthaltene Adresse bezeichnet ist. (Block 138) Insbesondere wird der Inhalt des Verfehlungs-Adressenregisters 62 in das Adressen-Register 72 des Hauptspeichers 36 eingeschleust5 in dem er aur Auswahl de3 gewünschten Blockes zur Verfügung steht, der als nicht im Pufferspeicher vorhanden festgestellt wurde.
Von der Steuerung 15 wird außerdem ein Anforderungssignal zum Lesen an dia Satzspeicher-Einheiten 2k und 26 abgegeben.(Block IZ1X) der .Figur 5b) Hierdurch werden die acht Wörter ausgegeben» die in dem am längsten unbenutzten Datenblock enthalten sind. Zu diesem Zweck wird die Hauptverzögerungsleitung der Steuerung 15 in Gang gesetzt, dJe in vier aufeinanderfolgenden Zeitpunkten zyklisch durchschaltet. In jedem Zyklus wird ein Wort aus den beiden Abschnitten des Pufferspeichers über die Anzeichen-Adressenregister 64 ausgelesen und in vorübergehend festhaltende Register, nämlich die Schreibdaten-Register 68 eingegeben. Am Ende des ersten Zyklus dieser Hauptverzögerungsleitung wird in der Steuerung 15 ein Belade-Flipflop gesetzt, wodurch angezeigt wird} daß die ersten beiden Wörter aus den Satzspeicher-
- 29 609825/0643
Einheiten 24 und Zd au den Schreibdaten-Registern 68 hin ausgelesen sind. Nach dem Setzen des genannten Flipflop werden die Daten über die Schreibdatenwähler 71 in den Hauptspeicher 36 übertragen« (Block 142) Im dritten Zyklus der Hauptverzögerungsleitung wird ein Jn der Steuerung 15 enthaltenes Rückschrelbe-Flipflop gesetzt,. vorausgesetzt daß das Rückschreibebit des Anzeichenwortes gesetzt ist, das dem am längsten unbenutzten Datenblock zugeordnet ist. (Block 144)
Falls ein Schreibschaltsignal vorhanden und das Rückschreibe-Flipflop gesetzt ist, wird im vierten Zyklus der Hauptverzögerungsleitung, wenn die Wörter 7 und 8 des am längsten unbenutzten Datenblockes gerade 3n den Hauptspeicher 36 übertragen werden, ein Anforderungasignal zum Schreiben in den Hauptspeicher ausgegeben, das einen Eintritt des Datenblockes in die entsprechende Adresse des Hauptspeichers bewirkt. (Block 146) Während der am längsten unbenutzte Datenblock gerade aus dem Pufferspeicher ausgegeben und in die vorübergehend festhaltenden Register eingespeist wird, arbeitet der Hauptspeicher gerade in Abhängigkeit von einem zeitigeren Anforderungssignal zum Lesen, so daß aus ihm die acht Wörter des gewünschten Datenblockes in ein vorübergehend festhaltendes Register eingelesen werden. Etwa zur selben Zeit, wenn die Steuerung ein Anforderungssignal zum Schreiben gerade dem Hauptspeicher anbietet, sind die aus dem Hauptspeicher ausgelesenen Daten verfügbar, damit sie zu den Satz· speicher-Einheiten übermittelt werden können. Sie laufen
- 30 609825/0643
durch das Kabel 70 zu den Pufferschreibwählern 20 und Pufferschreib-Registern 22 während der vier Zyklen, die von der Hauptverzögerungsleitung innerhalb der Steuerung 15 eingestellt werdenj die für die Schreibvorgänge vorgesehen ist·
Auch diese Hauptverzögerungsleitung setzt vier Zyklen fest. !Da ersten wird der Inhalt des Anforderungs-Adressenregisters 18 in den Abschnitt der Blockadresse des Anzeichenwortes für den Datenblock eingeschrieben, der zu einem früheren Zeitpunkt als am längsten unbenutzter Datenblock ermittelt wurde, damit nach diesem Schreibvorgang das Anzeichenwort den zuvor nicht vorhandenen Datenblock vorschreibt, der am Schluß der gesamten Datenübertragung im Pufferspeicher ruht. Außerdem wird während jedes der vier Schreibzyklen das Rückschreibebit des Anzeichenwortes gelöscht, das dem neuen Datenblock gehört, was deshalb notwendig ist, weil während des Einschreibens in den Pufferspeicher das Rückschreibebit automatisch gesetzt wird; während des Eintretens eines Ersatzblockes besteht jedoch eine Übereinstimmung zwischen den gerade in den Pufferspeicher eingespeisten Daten und den Daten für den im Hauptspeicher enthaltenen Datenblock· Folglich muß das Rückschreibebit bei jedem Durchgang der Hauptverzögerungsleitung zum Schreiben in den Pufferspeicher gelöscht werden, damit beim Abschluß des Ersetzens das Rückschreibebit für den Ersatzblock gelöscht ist, um anzuzeigen, daß dieses Wort, das im Hauptspeicher wiedergefunden wurde, einer Abänderung unterzogen ist. Auch beim Eintritt des Ereatzblockee
. - 31 609825/0643
aus acht Wörtern in den Pufferspeicher werden die das Alter bezeichnenden Bits in dem Ar.sseichenwori-, für den Ersafczblock auf den neuesten Stand gebracht, damit am Schluß des Einschreibvorganges in den Pufferspeicher die das Alter angebenden Bits für den Ersatssblock anzeigen, daß er der auletzt eingespeiste Datenblock ist. Zur Übertragung des gewünschten Datenblockes aus acht Wörtern vom Hauptspeicher in den Pufferspeicher, zur Einspeisung dieses Datenblockes an dem zuvor identifizierten Platz und zur Weiterschaltung der Anzeichenadresse, der das Alter bezeichnenden Bits und aum Löschen des Rückschreibebit sei auf dae P.lußbild der Figur 5b verwiesen. (Blöcke 148, 150 und 152)
Nachdem der Ersatsblock an dem gewünschten Platz des Pufferspeichers eingespeist ist, gibt der Hauptspeicher ein Weiterschreibsignal heraus, das der Steuerung 15 anzeigt, daß eine rückgeschriebene Information im Hauptspeicher abgelegt ist.. Nahezu gleichzeitig gibt der Hauptspeicher ein Weiterleseaignal ab, das dem Pufferspeicher angibt, daß der Lesezyklus des Hauptspeichers beendet, also die Datenübertragung zum Lesen abgeschlossen ist. (Blöcke 154 und 156)
Nach der Erzeugung des Weiterlesesignals setzt die Steuerung 15 wieder das ursprüngliche anfordernde Gerät in Gang, das zum früheren Zeitpunkt Anlaß zur mangelnden Übereinstimmung gegeben hatte. Diesem ursprünglich anfordernden Gerät erteilt das Prioritätsnetzwerk 14 die höchste Priorität, wodurch die Vorgänge in der
609828/0643
. 33.
Reihenfolge ablaufen, wie vom entsprechenden Pu*kt in der Figur 5a an zv sehen ist. (Blöcke 122 bis 132) Es wird bestimmt, ob das anfordernde Gerät ein Anforderungssignal zum Schreiben liefert; im positiven Falle gehen dann die Vorgänge in der Folge gemäß der Figur 5« weiter. ICm Falle eines Arsforderungssignals stun Lesen kann man die weiteren Vorgänge in der Figur 5a verfolgen. (Blöcke 130 und 132)
In der Figur 6 sind Einzelheiten der Steuerung 1.5 gemäß der Figur 1 wiedergegeben. Ihre Hauptf^nktion besteht darin, die im Pufferspeiche?· untergebrachten Daten ordnungsgemäß durch die im Hauptspeicher untergebrachten Daten sju ersetzen, wozu die folgenden Schritte notwendig sind:
1) Im ungeradzahligen Abschnitt oder im geradzahligen wird eine mangelnde Ütereinstimmung wahrgenommen.
2) Die Steuerung bietet ein Anforderungssignal dem Hauptspeicher für eine nicht vorhandene Adresse an.
3) Die Steuerung entnimmt die am längsten unbenutzten Daten dem Pufferspeicher«
4) Die nicht vorhandenen Daten werden vom Hauptspeicher in den Pufferspeicher eingeschrieben, und eine nwx&t nahende Adresse wird in den Anzeichenteil eingeschrieben.
- 33 -
609825/0643
5) Die zuvor entnommenen, am längsten "unbenutzten Daten werden in den Hauptspei eher eingeschrieben, wenn sie während ihres Aufenthaltes im Pufferspeicher abgeändert wurden.
6) Das ursprünglich anfordernde Gerät gewinnt wieder die Priorität und kann nun auf die gewünschten Daten im Pufferspeicher zugreifen.
Von der Steuerung 15 werden die erforderlichen Schalt- und Befehlssignale für das übrige System in einer derartigen Folge erzeugt, daß die zuvor aufgezählten Schritte Zustandekommen. Gemäß der Figur 6 enthält die Steuerung mehrere Verzögerungsleitungen l6O, 162 und I64. sowie die zur Entwicklung erforderlichen, logischen Schaltungen, Wie an sich bekannt ist, verfügt eine Verzögerungsleitung über eine endliche Impulsfortpflanzungszeitj wenn also ein Impuls in sie eintritt, läuft er sie mit einer bekannten Geschwindigkeit abwärts, so daß an den längs der Verzögerungsleitung angeordneten Anzapfungen Impulse abgenommen werden können» Die nacheinander erzeugten Impulse können in den Netzwerken des Rechenautomaten als Befehle- oder Schaltsignale für andere Einheiten des Systems benutzt werden»
Die Ausgangsleitungen A, B, C und D der Vergleichsschaltung 42 (Figur 2) werden für den ungeradzahligen Abschnitt zu einem MQR-Glied 166 geführt, damit in dem Falle, daß die gerade vom anfordernden Gerät gesuchte Adresse nicht mit den im Anzeichenteil
- 34 -609825/0643
des Pufferspeichers ruhenden Adressen übereinst5.mmt, das NOR-Glied 166 ein Fehlersignal erzeugt. In ähnlicher Heise laufen die Ausgangsleitungen A, B, C und D vom geradzahligen Abschnitt des Pufferspeichers an einem NOR-Glied 168 zusammen, das ein Fehlersignal abgibt, wenn die angeforderte Adresse nicht mit dem Anaeichenteil des im geradsahligen Abschnitt gewählten Satzes tibereinstimmt. Die NOR-Glieder 166 und 168 führen ihre Signale einem ODER-Glied 170 zu; im Falle, daß die eine Eingangsklemme en-egt wird, gibt das ODER-Glied 170 ein Setzsignal an ein Fehler-Flipflop 172 ab, dessen Set'/ausgangsklemme mit der Eingangsklemme der Verzögerungsleitung l60 verbunden ist, damit in die letztere ein Impuls eintreten kann. Dieser Impuls läuft die Verzögerungsleitung 160 hinab und erzeugt der Reihe nach mehrere Sehaltsignale. Insbesondere erscheint der Impuls zuerst an einer Anzapfung 174, über die die Verknüpfungsglieder (nicht gezeigt) zwischen dem Anforderungs-Adressenregister 18 und dem Verfehlungs-Adressenregister 62 eingeschaltet werden, damit der Inhalt in das letztere eingelassen und für eine spätere Verwendung dort vorübergehend festgehalten wird.
Xn demselben Zeitpunkt, in dem der Pufferspeicher zur Feststellung abgefragt wurde, ob eine angeforderte Adresse in ihm enthalten ist, arbeitete die Schaltung der Figur 4 asynchron, um zu bestimmen, welcher der vier Datenblöcke des gewählten Satzes während der längsten zurückliegenden Zeit nicht benutzt wurde. Da.der Impuls dann die Verzögerungsleitung 160 in einem vorgege-
609825/0643
benen Zeitabschnitt durchquert, erscheint ein Schaltsignal an einer Anzapfung 176, von dem die Adresse des am längsten unbenutzten Blockes in das Anzeichen-Adressenregister 64 und in das Pufferanseichen-Adressenregister 66 eingeschleust wird.
Im nächsten Augenblick ruft der die Verzögerungsleitung l60 entlang laufende Impuls ein Signal an einer Anzapfung 178 hervor, das als Leseanforderungssignal für den Hauptspeicher dient. Auf dieses Anforderungssignal sprechen die üblichen Steuerschaltungen des Hauptspeichers an und bewirken, daß eiu Block mit acht Wörtern von einer Startadresse, die vom Verfehlungs-Adressenregister 62 über das Adressen-Register 72 augeleitet wird, ausgelesen wird·
Nach der Übertragung des Anforderungssignals zum Lesen zum Hauptspeicher 36 erreicht der die Verzögerungsleitung I60 durchquerende Impuls eine Leitung 180, die ihn einem üblichen Zähler 182 zuführ.t, der dadurch auf die Zahl 3 bzw. den Binärwert 11 eingestellt wird. Das Ausgangssignal dieses Zählers 182 bildet das Eingangssignal der Hauptverzögerungsle5.tung 162 zum Lesen des Pufferspeichers, Wenn der Zähler 182 bis zum Binärwert 11 vorgerückt ist und anschließend hinabgeschaltet wird, entsteht ein Impuls, der die Hauptverzögerungsleitung 162 durchläuft. Wenn im ersten Zyklus der Zähler 182 auf der Zahl 3 steht, läuft der Impuls die Hauptverzögerungsleitung 162 entlang, wobei er eine Anzapfung 184 erregt, so daß ein Anforderungssignal zum Lesen
609825/0643
sowohl zum ungeradzahligen Abs'chnitt als auch zum geradzahligen Abschnitt des Pufferspeichers übermittelt wird, um die Entnahme des am längsten unbenutzten Datenblockes einzuleiten. Als nächstes tritt an einer Anzapfung 186 ein Impuls auf, der an einer Eingangsklemme eines UND-Gliedes erscheint, das jedoch nicht eingeschaltet werden kann; dieses UND-Glied 188 leitet sonst mit Hilfe des von ihm abgegebenen Befehlssignals die Einschreibvorgänge am Hauptspeicher ein»
Fernerhin erreicht der die Hauptverzögeningsleitung 162 durchquerende Impuls eine Anzapfung 190, wodurch einem UND-Glied 192 das eine Eingangssignal angeleitet wird* Falls das Rückschreibebit im Anzeichen des am längsten unbenutzten Blockes, -das im Anzeichen-Adressenregister 64 enthalten ist, gesetzt ist, wird das UND-Glied voll geschaltet, und es setzt ein Rückschreibe-Flipflop 194. In dem Falle natürlich, daß das Rückschreibebit nicht gesetzt ist, was bedeutet, daß die dieser Adresse entsprechenden Daten nicht geändert wurden, während sich der am längsten nicht benutzte Datenblock im Pufferspeicher befand, wird das UND-Glied 192 in diesem Zeitpunkt nicht eingeschaltet, so daß dae Rückschreibe-Flipflop 194 gelöscht bleibt.
Wenn der die Hauptverzögerungsleitung 162 durchlaufende Impuls am Ende eine Leitung 196 erreicht, wird er zum Zähler 182 zurückgeführt, der um die Zahl 1 abwärts geschaltet wird. Hierdurch wird wiederum ein Impuls der Eingangsklemme der Hauptver-
- 37 ~
6098 2 5/0643
zögerungsleitung l62 zugeleitet, so daß der Reihe nach wieder Impulse an den Anzapfungen 184j 186 und 190 1JUId in der Leitung 196 erscheinen. Wenn zusätzlich die Zahl 5„m Zähler 182 von Drei auf Zwei hinunter geschaltet wird, spricht ein Komparator 198 an, der dann über eine Leitung 200 ein Belade-Flipflop 202 setzt. Falls während der zweiten Wiederholung der die Hauptverzögerungsleitung 162 durchlaufende Impuls an der Anzapfung 186 erscheint, wird im Setazustand des Belade-Flipflop 202 das UND-Glied 188 voll eingeschaltet, wodurch der Befehl zur Einleitung des Schreibvorganges in den Hauptspeicher erzeugt wird. Wie erinnert sei, wird während des ersten Zyklus der Hauptverzögerungsleitung I62 der an der Anzapfung 184 erscheinende Impuls zum Lesen der Wörter 0 und 1 des ausgewählten Blockes im ausgesuchten Satz verwendet, was von den Satzspeichereinheiten 24 und 26 über die Pufferlese-Register 69 zum Schreibdaten-Register 68 vonstatten geht. Im zweiten Zyklus der Hauptverzögerungsleitung 162 bewirkt das Signal an der Anzapfung 184 das Auslesen der Wörter 2 und 3 des gewählten Blockes im ausgesuchten Satz in die Schreibdaten-Register 68 des Hauptspeichers; kurz danach wird das UND-Glied 188 voll eingeschaltet, um die Übertragung zum Einschreiben durch die Schreibdatenwähler 71 zu den Halteregistern des Hauptspeichers 36 einzuleiten.
Am Schluß des dritten Arbeitszyklus erscheint der durch die Hauptverzögerungsleitung 162 hindurchgehende Impuls in der Leitung 196, von dem der Zähler 182 auf Null hinabgeschaltet wird.
609825/0643
Die Einstellung des Zählers 182 auf Null wird von einem Komparator 204 wahrgenommen, der ein Sehaltsignal über eine Leitung 206 einem UND-Glied 208 zuleitet. Wenn zu dieser Zeit das Rückschrei.be-Flipflop 194 gesetzt ist, erscheint über eine Leitung 210 ein weiteres Schaltsignal am UND-Glied 208. Wenn schließlich ein Schreibschaltsignal über eine Leitung 212 dem UND-Glied 208 zugeleitet wird, wird es vollständig eingeschaltet und erzeugt ein Anforderungssignal sum Einschreiben in den Hauptspeicher, von dem der zum Ersatz ausgewählte Datenblock an die Speicherplätze gebracht wird, die durch den Inhalt des Adressen-Registers 72 des Hauptspeichers festgelegt sind.
Eine vorgegebene Zeitspanne nach der Erzeugung des Anforderungssignals zum Lesen des Hauptspeichers« das an der Anzapfung 178 der Verzögerungsleitung 160 erscheint, erzeugen die Steuerschaltungen des Hauptspeichers ein Signal zur Übertragung der gelesenen Daten, wobei die Zeitspanne zwischen dem letzteren und dem genannten Anforderungssignal so groß gewählt ist, daß die acht Wörter des gewünschten Datenblockes ausgelesen werden können. Das zuvor bezeichnete Übertragungssignal gelangt über eine Leitung 214 zu einem weiteren Zähler 210, von dem dieser auf die Zahl 3 bzw. den Binärwert 11 eingestellt werden soll* Infolge dieser Einstellung und des sich anschließenden Abwärtsschaltens wird eine Folge hintereinander liegender Impulse über eine Leitung 218 in die Hauptverzögerungsleitung 164 eingelassen. Bei jedem Einschreibzyklus von aus dem Hauptspeicher kommenden Daten
- 39 -6098 2 5/0643
werden von der Hauptveraogesningsleitung 164 dem ungerad- und geradzahligen Abschnitt des Pufferspeichers die .Adresse aus dem ursprünglich anfordernden Gerät und deren Zunahmebits 2 und 1 herangebracht. Wenn während des ersten Schreibzyklus des Pufferspeichers der erste Impuls über die Leitung 218 in die Hauptverzögerungsleitung 164 eintritt, läuft er diese abwärts und erzeugt an der Anzapfung 220 ein Schaltsignal, mit dessen Hilfe eine neue Adresse im Anzeichenteil der Satzspeicher-Einheiten 24 und 26 gespeichert wird. Die eingespeiste Adresse wird als zuvor verfehlende Adresse des anfordernden Gerätes aus dem Pufferanzeichen-Adressenregister 66 über die Anforderungs-Adressenwähler l6 und Anforderungs-Adressenregister 18 empfangen. Die Anzeichenadresse wird an dem Platz des zuletzt benutzten Datenblockes eingeschrieben. Dieser jüngste Datenblock ist die am längsten unbenutzte Adresse gewesen, die während der vier Zyklen der Hauptverzögerungsleitung 162 entlastet wurde; auf Grund der Art der Lesezyklen werden die das Alter angebenden Anzeichenbits selbsttätig auf den Wert des neuesten Alters gebracht«
Wenn während der Zyklen ein Impuls an einer Anzapfung 222 der Hauptverzögerungsleitung I64 auftritt, wird ein Befehlssignal erzeugt, das die aus dem Hauptspeicher ausgelesenen Daten in den passenden Platz des Pufferspeichers einschleust. In ähnlicher Weise tritt in jedem der vier Zyklen anschließend ein Impuls an einer Anzapfung 224 der Hauptverzögerungsleitung I64 auf und löscht das Rückschreibebit. Dies ist deswegen notwendig,
40 -
609825/0643
weil der Anzeichenteil selbsttätig das Rückschreibebit stets dann setzt, wenn der ihm zugeordnete Platz des Pufferspeichers abgeändert wird, also in ihn Daten eingeschrieben werden. Somit muß die Steuerung 15 das Rückschreibebit bei jedem Schreibvorgang am Pufferspeicher löschen, damit nicht später eine Information in den Pufferspeicher eingespeist wird, die sich von der unterscheidet, die aus dem entsprechenden, im Hauptspeicher enthaltenen Datenblock stammt.
Wenn im vierten Zyklus der Hauptverzögerungsleitung 164 die Wörter 7 und 8 des gewünschten Datenblockes vom Hauptspeicher ausgelesen und in den Pufferspeicher eingebracht werden, ist der Stand des Zählers 216 bis auf Null abwärts geschaltet, was von einem Komparator 226 wahrgenommen wird, der ein den letzten Durchlauf angebendes Flipflop 228 setzt. Die Setzausgangsklemme des letzteren ist am Prioritätsnetzwerk 14 angeschlossen, damit dieses angewiesen wird, am Ende des letzten Zyklus der Hauptverzögerungsleitung I64 weitere äußere, anfordernde Geräte einzuschalten. Das Ende dieses letzten Zyklus wird auch von einem UND-Glied 230 wahrgenommen, dessen eines Eingangssignal vom Komparator 226 herankommt,und dessen anderes Eingangssignal der Impuls an der Anzapfung 232 der Hauptverzögerungsleitung I64 ist. Das Ausgangssignal des UND-Gliedes 230, das nach dem letzten Durchlauf eines Impulses durch die Hauptverzögerungsleitung 164 auftritt, löscht alle Flipflops in der Steuerung 15 der Figur 6, die eine Information über den Fehlerzyklus enthält.
- 41 -
609825/0643
Am Schluß der vier Arbeitszyklen der Hauptverzögerungsleitung 164 sind also das Flipflop 228, das nach dem letzten Durchlauf gesetzt wird, das Belade-Flipflop 202 und das Fehler-Flipflop 172 gelöscht., während das Prioritätsnetzwerk 14 das ursprünglich anfordernde Gerät wieder in Betrieb nimmt und ihm die höchste Priorität gewährt. Infolgedessen kann sü die neuen gespeicherten Daten aus dem Pufferspeicher zur Erfüllung der früheren Anfox'derung auslesen.
Zusammenfassend betrachtet, ist zuvor ein Zwischenspeicher für eine begrenzte Anzahl Datenblöcke aus einem Hauptspeicher erläutert, der etwa, wie folgt, mit hoher Geschwindigkeit arbeitet ο Wenn eine -spezielle Adresse aus einem Rechenwerk oder äußeren Ein-/Ausgabegerät angefordert wird, wird geprüft, ob diese Adresse im Zwischenspeicher ruht; im positiven Fall steht sie gum Lesen oder Schreiben '/.ur Verfugung« Im negativen Falle wird ein Datenblock im Zwischenspeicher ausgewählt und durch einen passenden Datenblock aus dem Hauptspeicher ersetzt. Während der neue Datenblock aus dem Hauptspeicher angefordert wird, wird zugleich der bisherige, su verdrängende Datenblock auf Abänderungen überprüft, die seit seiner ursprünglichen Entnahme aus dem Hauptspeicher erfolgt sind. Bei einer Abänderung auch nur eines Wortes wird der bisherige Block in ein vorübergehend festhaltendes Register eingespeist und im Hauptspeicher wiederhegestellt, während gleichzeitig der neue Datenblock in den Zwischenspeicher eingegeben wird.
- 42 -
609825/0643
- ί

Claims (1)

  1. PATENTANWALT
    H. F. E L L M E R
    627 IDSTEiN
    FRIEDENSSTRASSE 29/31
    TELEFON: IDSTElN 8237 Jo O Γ C Π 1 ο Λ
    ζοουοοα
    it. -; -
    Q Schaltung zur übertragung voii Jörtern in DateiiclC ;ken 3-zischen mehreren aufordernden Geräten und einem mi"o hoher Gesioiiwiaditkait; arbeitenden Pufferspeicher von niedriger Kapazität, von dem eine Teilmenge von Datenbiocken aus einem adrussierbaren Plats sines nachgcschalteten Hauptspeichers aufnehmbar ist, der eine große Kapazität und eine lange Zykluszeit besitzt, dadurch gekennzeichnet, daß eine Vergleichsschaltung (42) you den anfordernden Geräten (0, 1 und 2) herankommende Adressensignale daraufhin prüft, ob ein gewünschter Datenbiock im Pufferspeicher (24, 2o) vorhanden ist, und im negativen Fall ein Fehlersignal an eine Steuerung (15) abgibt, die denjenigen Datenblock, auf den während der längsten, zurückliegenden Zeitspanne nicht zugegriffen ist, aus dem Pufferspeicher (24, 26) in ein vorübergehend festhaltendes Register (68) und den gewünschten Datenbiock aus dem Hauptspeicher (36) zu dem Platz im Pufferspeicher (24, 26) überträgt, der durch die Adresse festgelegt ist, bei der der andere Datenblock zu dem vorübergehend festhaltenden Register (68) ausgelesen wurde, und daß von einer innerhalb der Steu-
    erung vorgesehenen Prüfvorrichtung feststellbar ist, ob die Daten/im vorübergehend festhaltenden Register (68) befindlichen Datenblockes während ihres Verbleibs im Pufferspeicher (24, 26) einer Abänderung unterzogen wurden, und im positiven Fall diesen Datenblock aus dem vorübergehend festhaltenden Register (68) in den Hauptspeicher (36) überträgt.
    2) Schaltung nach dem Anspruch !,dadurch gekennzeichnet, daß die Vergleichsschaltung (42) mit Registern (28, 32) des Anzeichenteiles der Satzspeichereinheit (24, 26) zusammenwirkt, in denen Anzeichenwörter gespeichert sind, deren eines Feld die Adresse von mehreren Datenblöcken anzeigt, die gerade in der SatzSpeichereinheit (24, 26) ruhen, und daß von der Vergleichsschaltung (42), die die Ausgangssignale des Anzeichenteiles und die Adressensignale aus einem anfordernden Gerät (0,-1 und 2) überprüft, das .Fehlersignal nur erzeugbar ist, wenn die Adressensignale nicht mit dem Feld des ausgewählten ilnzeichenwortes übereinstimmen.
    609825/0643
    '3. Schaltung nach dem Anspruch 2, dadurch g e k e η η zeichnet, daß ein weiteres Feld (Älter) des Änzeichenwortes die relative Reihenfolge angibt, in der die anfordernden Geräte (O, 1 und 2) auf die zugehörigen Datenblöcke zugegriffen haben, die vom ersten
    Feld dieses Anzeichenwortes vorgeschrieben sind.
    4. Schaltung nach dem Anspruch 3, dadurch ge kenn zeichnet, daß ein drittes Feld (¥ß) des Anzeichenwortes angibt, ob der zugeordnete Datenblock im Pufferteil (30, 34), der vom ersten Feld dieses Anzeichenwortes vorgeschrieben ist, während seines Verbleibs im Pufferteil (30, 34) abgeändert wurde.
    5· Schaltung nach dem Anspruch 4, dadurch gekenn zeichnet, daß das im dritten Feld (Wg) des Anzeichenwortes enthaltene 1-Bit von der innerhalb der Steuerung (15) vorgesehenen Prüfvorrichtung abtastbar ist.
    6. Schaltung nach dem Anspruch 5, dadurch gekennzeichnet, daß von Komparatoren (84, 86, 88) das weitere Feld (Älter) des gewählten Anzeichenwortes mit allen weiteren Feldern (Älter) der übrigen Datenblöcke vergleichbar ist und in Abhängigkeit davon, ob die letzteren größer, gleich oder kleiner als das zuerst genannte weitere Feld .(Alter) sind, um den Viert 0 vergrößerbar ist, gelöscht wird bzw. um den Wert 1 vergrößerbar ist.
    7. Schaltung zur Übertragung von Wörtern in Datenblöcken zwischen mehreren anfordernden Geräten, die Adressen- und Datensignale, sowie Anforderungs-Steuersignale abgeben bzw. annehmen, und einem Hauptspeicher, in dem an adressierbaren Plätzen M Sätze mit N Datenblöcken aus je P Wörtern Länge speicherbar sind, unter Zwischenschaltung eines Pufferspeichers nach dem Anspruch 1,- da durch ge-, kennzeichnet, daß der Pufferspeicher (24, 26) in den Registern (30, 34) seines Pufferteiles an adressierbären Plätzen M Sätze* mit η Datenblöcken aus je P Wörtern Länge y wobei η { N ist, und in den Registern (28, 32) seines Anzeiehenteiles M Anzeichenwörter aufnimmt,
    609825/0643 '
    die Felder von η Blockadressen zur Angabe, welche der N Datenblöcke aus einem gegebenen Satz des Hauptspeichers (36) in einem festgesetzten Zeitpunkt zusätzlich in einem entsprechenden Satz dee Puffer(teils (30, 34) ruhen, und einen Abänderungs-Anzeiger (Wg) enthalten, der angibt, ob sich die Daten in den η Datenblöcken, die durch das Feld der η Blückadressen vorgeschrieben sind, von den Dateminterscheiden, die in den entsprechenden N Datenblöcken des Hauptspeichers (36) aufbewahrt sind.
    8. Schaltung nach den Ansprüchen 1 und 7j <i a d u r c h gekennzeichnet, daß ein Prioritätsnetzwerk (14) die aus mehreren anfordernden Geräten (0, 1 und 2) herangeführten Anforderungs-Steuersignale auswertet und in einem vorgegebenen Zeitpunkt einem solchen Gerät (0, 1 oder 2) den Vorrang für die Übertragung der Adressensignale zum Pufferspeicher (24, 26) zuerteilt.
    >. Schaltung nach dem Anspruch 8, dadurch gekennzeichnet, daß eine Einrichtung (18, 40) die Adressensignale aus dem mit Vorrang anfordernden Gerät (0, 1 oder 2) auswertet und für den gewünschten Satz ein Anzeichenwor.t aus dem Pufferspeicher (24, .26) ausliest.
    10. Schaltung nach dem Anspruch 1, dadurch gekennzeichnet, daß die Vergleichsschaltung (42) die Bitpermutationen des Anzeichenwortes für den gewünschten Satz und die Adressensignale aus dem mit Vorrang anfordernden Gerät (0, 1 oder 2) auswertet und ein Fehlersignal erzeugt, wenn die η Datenblöcke des gewünschten Satzes nicht denjenigen der N Datenblöcke aus dem entsprechenden Satz des Hauptspeichers (36) enthalten.
    11. Schaltung nach dem Anspruch 10, dadurch gekennzeichnet, daß das Fehlersignal aus der Vergleichsschaltung (42) der Steuerung (15) zuführbar ist, die einen der η Datenblöcke aus dem gewünschten Satz des Pufferspeichers (24, 26) zum Ersatz durch einen der N Datenblöcke des Hauptspeichers (36) auswählt.
    609825/0643
    12. Schaltung nach dem Anspruch 7, dadurch gekenn zeichnet, daß eine den Abänderungs-Änzeiger (Wg) auswertende Vorrichtung in dem Falle, daß der Abänderungs-Anzeiger eine vorgegebene binäre Bedeutung aufweist, den Hauptspeicher (36) zur Aufnahme eines der η Datenblöcke veranlaßt, der zwecks Ersatz bei der Adresse ausgewählt ist, die durch die Adressensignale aus dem mit Vorrang anfordernden Gerät vorgeschrieben ist.
    13. Schaltung nach dem Anspruch 3, dadurch gekennzeichnet, daß die in den Registern (28, 32) des Anzeichenteiles untergebrachten Anzeichenwörter η das Alter angebende Felder zur ständigen Anzeige der relativen Reihenfolge enthalten, in der ein anforderndes Gerät (O, 1 oder Z) auf die η Datenblöcke des Pufferteiles zugegriffen hat.
    Schaltung nach dem Anspruch 13,dadurch gekenn zeichnet, daß die η das Alter angebenden Felder ihren Inhalt an die Steuerung (15) aur Auswahl desjenigen der η Datenblöcke in einem gegebenen Satz abgeben, auf den während der am längsten zurückliegenden Zeitspanne von einem anfordernden Gerät (0, 1 oder 2) nicht zugegriffein ist.
    6098 2 5/0643
    Leers
DE2550339A 1974-11-11 1975-11-08 Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität Expired DE2550339C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/522,553 US3967247A (en) 1974-11-11 1974-11-11 Storage interface unit

Publications (2)

Publication Number Publication Date
DE2550339A1 true DE2550339A1 (de) 1976-06-16
DE2550339C2 DE2550339C2 (de) 1982-10-14

Family

ID=24081323

Family Applications (2)

Application Number Title Priority Date Filing Date
DE2550339A Expired DE2550339C2 (de) 1974-11-11 1975-11-08 Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE2560206A Expired DE2560206C2 (de) 1974-11-11 1975-11-08 Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE2560206A Expired DE2560206C2 (de) 1974-11-11 1975-11-08 Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität

Country Status (8)

Country Link
US (1) US3967247A (de)
JP (1) JPS6118222B2 (de)
CH (1) CH607139A5 (de)
DE (2) DE2550339C2 (de)
FR (1) FR2290710A1 (de)
GB (1) GB1532798A (de)
IT (1) IT1049044B (de)
SE (1) SE411404B (de)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4073005A (en) * 1974-01-21 1978-02-07 Control Data Corporation Multi-processor computer system
FR2348544A1 (fr) * 1976-04-15 1977-11-10 Honeywell Bull Soc Ind Ensemble double de memoire associative
DE2703559A1 (de) * 1977-01-28 1978-08-03 Siemens Ag Rechnersystem
US4126893A (en) * 1977-02-17 1978-11-21 Xerox Corporation Interrupt request controller for data processing system
US4158235A (en) * 1977-04-18 1979-06-12 Burroughs Corporation Multi port time-shared associative buffer storage pool
US4149262A (en) * 1977-04-19 1979-04-10 Semionics Associates Associative memory device with variable recognition criteria
US4141067A (en) * 1977-06-13 1979-02-20 General Automation Multiprocessor system with cache memory
US4092713A (en) * 1977-06-13 1978-05-30 Sperry Rand Corporation Post-write address word correction in cache memory system
US4142234A (en) * 1977-11-28 1979-02-27 International Business Machines Corporation Bias filter memory for filtering out unnecessary interrogations of cache directories in a multiprocessor system
JPS5489444A (en) * 1977-12-27 1979-07-16 Fujitsu Ltd Associative memory processing system
US4168541A (en) * 1978-09-25 1979-09-18 Sperry Rand Corporation Paired least recently used block replacement system
US4432050A (en) * 1978-10-02 1984-02-14 Honeywell Information Systems, Inc. Data processing system write protection mechanism
US4258417A (en) * 1978-10-23 1981-03-24 International Business Machines Corporation System for interfacing between main store memory and a central processor
CA1123964A (en) * 1978-10-26 1982-05-18 Anthony J. Capozzi Integrated multilevel storage hierarchy for a data processing system
US4323968A (en) * 1978-10-26 1982-04-06 International Business Machines Corporation Multilevel storage system having unitary control of data transfers
US4225922A (en) * 1978-12-11 1980-09-30 Honeywell Information Systems Inc. Command queue apparatus included within a cache unit for facilitating command sequencing
GB2037039B (en) * 1978-12-11 1983-08-17 Honeywell Inf Systems Cache memory system
US4276609A (en) * 1979-01-04 1981-06-30 Ncr Corporation CCD memory retrieval system
US4298929A (en) * 1979-01-26 1981-11-03 International Business Machines Corporation Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
US4868734A (en) * 1984-04-30 1989-09-19 Unisys Corp. Variable rate improvement of disc cache subsystem
US5241666A (en) * 1979-06-04 1993-08-31 Unisys Corporation Variable rate improvement of disc cache subsystem
US4298932A (en) * 1979-06-11 1981-11-03 International Business Machines Corporation Serial storage subsystem for a data processor
US4445191A (en) * 1979-08-13 1984-04-24 Burroughs Corporation Data word handling enhancement in a page oriented named-data hierarchical memory system
DE2934771C3 (de) * 1979-08-28 1982-03-25 Siemens AG, 1000 Berlin und 8000 München Speichervorrichtung.
US4317168A (en) * 1979-11-23 1982-02-23 International Business Machines Corporation Cache organization enabling concurrent line castout and line fetch transfers with main storage
JPS5680872A (en) * 1979-12-06 1981-07-02 Fujitsu Ltd Buffer memory control system
US4322795A (en) * 1980-01-24 1982-03-30 Honeywell Information Systems Inc. Cache memory utilizing selective clearing and least recently used updating
US4345309A (en) * 1980-01-28 1982-08-17 Digital Equipment Corporation Relating to cached multiprocessor system with pipeline timing
US4323967A (en) * 1980-04-15 1982-04-06 Honeywell Information Systems Inc. Local bus interface for controlling information transfers between units in a central subsystem
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
US4382278A (en) * 1980-06-05 1983-05-03 Texas Instruments Incorporated Hierarchial memory system with microcommand memory and pointer register mapping virtual CPU registers in workspace cache #4 and main memory cache
US4370710A (en) * 1980-08-26 1983-01-25 Control Data Corporation Cache memory organization utilizing miss information holding registers to prevent lockup from cache misses
US4381541A (en) * 1980-08-28 1983-04-26 Sperry Corporation Buffer memory referencing system for two data words
JPS57105879A (en) * 1980-12-23 1982-07-01 Hitachi Ltd Control system for storage device
EP0055579B1 (de) * 1980-12-31 1991-03-20 Bull HN Information Systems Inc. Cache-Speicher mit Doppelwort-Zugriff
US4355306A (en) * 1981-01-30 1982-10-19 International Business Machines Corporation Dynamic stack data compression and decompression system
US4414644A (en) * 1981-04-03 1983-11-08 International Business Machines Corporation Method and apparatus for discarding data from a buffer after reading such data
US4821184A (en) * 1981-05-22 1989-04-11 Data General Corporation Universal addressing system for a digital data processing system
CA1187198A (en) * 1981-06-15 1985-05-14 Takashi Chiba System for controlling access to channel buffers
US4439837A (en) * 1981-06-16 1984-03-27 Ncr Corporation Non-volatile memory system for intelligent terminals
US4525777A (en) * 1981-08-03 1985-06-25 Honeywell Information Systems Inc. Split-cycle cache system with SCU controlled cache clearing during cache store access period
JPS58147879A (ja) * 1982-02-26 1983-09-02 Toshiba Corp キヤツシユメモリ制御方式
US4811203A (en) * 1982-03-03 1989-03-07 Unisys Corporation Hierarchial memory system with separate criteria for replacement and writeback without replacement
US4493026A (en) * 1982-05-26 1985-01-08 International Business Machines Corporation Set associative sector cache
US4574346A (en) * 1982-09-29 1986-03-04 International Business Machines Corporation Method and apparatus for peripheral data handling hierarchies
US4675812A (en) * 1983-02-14 1987-06-23 International Business Machines Corp. Priority circuit for channel subsystem having components with diverse and changing requirement for system resources
US4607331A (en) * 1983-05-13 1986-08-19 Motorola, Inc. Method and apparatus for implementing an algorithm associated with stored information
US4695951A (en) * 1983-07-07 1987-09-22 Honeywell Bull Inc. Computer hierarchy control
US4858111A (en) * 1983-07-29 1989-08-15 Hewlett-Packard Company Write-back cache system using concurrent address transfers to setup requested address in main memory before dirty miss signal from cache
US4625273A (en) * 1983-08-30 1986-11-25 Amdahl Corporation Apparatus for fast data storage with deferred error reporting
US4710966A (en) * 1984-01-04 1987-12-01 Itek Corporation Digital frame processor pipe line circuit
US4736293A (en) * 1984-04-11 1988-04-05 American Telephone And Telegraph Company, At&T Bell Laboratories Interleaved set-associative memory
USRE34052E (en) * 1984-05-31 1992-09-01 International Business Machines Corporation Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
US4630195A (en) * 1984-05-31 1986-12-16 International Business Machines Corporation Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
DE3429571A1 (de) * 1984-08-10 1986-02-20 Siemens AG, 1000 Berlin und 8000 München Schaltungsanordnung zur prioritaetsbezogenen einordnung und registrierung von speicherabschnitten bzw. speicherbaenken, unter anwendung des lru-algorithmus
DE3574421D1 (en) * 1984-08-10 1989-12-28 Siemens Ag Circuit arrangement for classifying in order of priority and for recording individual memory sections or banks using the lru algorithm
JPH0670773B2 (ja) * 1984-11-01 1994-09-07 富士通株式会社 先行制御方式
US4714994A (en) * 1985-04-30 1987-12-22 International Business Machines Corp. Instruction prefetch buffer control
CH672816A5 (de) * 1986-10-03 1989-12-29 Pantex Stahl Ag
US5034885A (en) * 1988-03-15 1991-07-23 Kabushiki Kaisha Toshiba Cache memory device with fast data-write capacity
US5097409A (en) * 1988-06-30 1992-03-17 Wang Laboratories, Inc. Multi-processor system with cache memories
US4939641A (en) * 1988-06-30 1990-07-03 Wang Laboratories, Inc. Multi-processor system with cache memories
US5027270A (en) * 1988-10-11 1991-06-25 Mips Computer Systems, Inc. Processor controlled interface with instruction streaming
US5025365A (en) * 1988-11-14 1991-06-18 Unisys Corporation Hardware implemented cache coherency protocol with duplicated distributed directories for high-performance multiprocessors
US5202972A (en) * 1988-12-29 1993-04-13 International Business Machines Corporation Store buffer apparatus in a multiprocessor system
EP0419961A3 (en) * 1989-09-26 1991-10-23 Siemens Aktiengesellschaft Method and circuit for replacement control, particularly for a system containing digital memory elements
US5297269A (en) * 1990-04-26 1994-03-22 Digital Equipment Company Cache coherency protocol for multi processor computer system
US5263144A (en) * 1990-06-29 1993-11-16 Digital Equipment Corporation Method and apparatus for sharing data between processors in a computer system
US5434990A (en) * 1990-08-06 1995-07-18 Ncr Corporation Method for serially or concurrently addressing n individually addressable memories each having an address latch and data latch
US5218246A (en) * 1990-09-14 1993-06-08 Acer, Incorporated MOS analog XOR amplifier
US5276852A (en) * 1990-10-01 1994-01-04 Digital Equipment Corporation Method and apparatus for controlling a processor bus used by multiple processor components during writeback cache transactions
US5345582A (en) * 1991-12-20 1994-09-06 Unisys Corporation Failure detection for instruction processor associative cache memories
US5404484A (en) * 1992-09-16 1995-04-04 Hewlett-Packard Company Cache system for reducing memory latency times
US5673415A (en) * 1993-12-03 1997-09-30 Unisys Corporation High speed two-port interface unit where read commands suspend partially executed write commands
JP3266470B2 (ja) * 1994-10-03 2002-03-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 強制順序で行う要求毎ライト・スルー・キャッシュを有するデータ処理システム
EP0803095A1 (de) 1994-10-14 1997-10-29 Silicon Graphics, Inc. Indexierung und mulitplizierung von verschachtelten cache-speichermatrixen
US5838631A (en) 1996-04-19 1998-11-17 Integrated Device Technology, Inc. Fully synchronous pipelined ram
US6115320A (en) 1998-02-23 2000-09-05 Integrated Device Technology, Inc. Separate byte control on fully synchronous pipelined SRAM
DE69938350T2 (de) * 1998-09-18 2009-04-02 Harris Corp., Melbourne Verteilter verbindungsmechanismus für ein vhf-netzwerk
US7069406B2 (en) * 1999-07-02 2006-06-27 Integrated Device Technology, Inc. Double data rate synchronous SRAM with 100% bus utilization
US9274964B2 (en) 2012-02-02 2016-03-01 Qualcomm Incorporated Multi-bank cache memory

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3243781A (en) 1961-10-06 1966-03-29 Sperry Rand Corp Digital communication system
US3275991A (en) * 1962-12-03 1966-09-27 Bunker Ramo Memory system
US3581291A (en) * 1968-10-31 1971-05-25 Hitachi Ltd Memory control system in multiprocessing system
DE2246405A1 (de) * 1971-09-25 1973-04-12 Ibm Speichersystem
DE2241257B2 (de) * 1971-08-25 1974-01-03 International Business Machines Corp., Armonk, N.Y. (V.St.A.) Datenverarbeitende Anlage
DE2240433B2 (de) * 1971-08-25 1974-10-10 International Business Machines Corp., Armonk, N.Y. (V.St.A.)
DE2415900A1 (de) * 1973-04-04 1974-10-31 Sperry Rand Corp Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen
DE2233193C3 (de) * 1971-07-28 1975-04-24 Hewlett-Packard Co., Palo Alto, Calif. (V.St.A.) Stapel-Speichersystem

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE629069A (de) * 1962-03-05
US3569938A (en) * 1967-12-20 1971-03-09 Ibm Storage manager
US3588839A (en) * 1969-01-15 1971-06-28 Ibm Hierarchical memory updating system
US3670309A (en) * 1969-12-23 1972-06-13 Ibm Storage control system
US3647348A (en) * 1970-01-19 1972-03-07 Fairchild Camera Instr Co Hardware-oriented paging control system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3243781A (en) 1961-10-06 1966-03-29 Sperry Rand Corp Digital communication system
US3275991A (en) * 1962-12-03 1966-09-27 Bunker Ramo Memory system
US3581291A (en) * 1968-10-31 1971-05-25 Hitachi Ltd Memory control system in multiprocessing system
DE2233193C3 (de) * 1971-07-28 1975-04-24 Hewlett-Packard Co., Palo Alto, Calif. (V.St.A.) Stapel-Speichersystem
DE2241257B2 (de) * 1971-08-25 1974-01-03 International Business Machines Corp., Armonk, N.Y. (V.St.A.) Datenverarbeitende Anlage
DE2240433B2 (de) * 1971-08-25 1974-10-10 International Business Machines Corp., Armonk, N.Y. (V.St.A.)
DE2246405A1 (de) * 1971-09-25 1973-04-12 Ibm Speichersystem
DE2415900A1 (de) * 1973-04-04 1974-10-31 Sperry Rand Corp Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IBM Systems Journal, Bd. 7, No. 1, S. 15-21 *
IBM Systems Journal, Bd.7, Nr. 1 (1968) *
Spring Joint Computer Con- ference 1967, Aufsatz: Con- siderations in Blook-Orient Systems Design" *

Also Published As

Publication number Publication date
SE7512524L (sv) 1976-05-12
FR2290710B1 (de) 1980-04-18
IT1049044B (it) 1981-01-20
CH607139A5 (de) 1978-11-30
US3967247A (en) 1976-06-29
DE2550339C2 (de) 1982-10-14
GB1532798A (en) 1978-11-22
JPS5176936A (de) 1976-07-03
SE411404B (sv) 1979-12-17
FR2290710A1 (fr) 1976-06-04
JPS6118222B2 (de) 1986-05-12
DE2560206C2 (de) 1983-01-20

Similar Documents

Publication Publication Date Title
DE2550339A1 (de) Pufferspeicher mit sehr kurzer zykluszeit zwischen mehreren daten anfordernden einheiten und einem hauptspeicher mit ziemlich langer zykluszeit
DE2415900C3 (de) Rechenautomat mit mehreren mit je einem Vorratsspeicher versehenen Rechenanlagen
DE3508291C2 (de) Datenverarbeitungssystem
DE2646296C3 (de) Elektronische assoziative Mehrrechner Schaltungsanordnung mit einem modularen Aufbau
DE2230987C2 (de)
DE4206286C2 (de) Speicherzugriffssystem und Verfahren zum Ausgeben eines digitalen Datenstromes
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2803989A1 (de) Wahlfreie zugriffsspeichervorrichtung fuer digitale daten
DE2621882A1 (de) Dynamischer digitalspeicher mit ununterbrochen umlaufendem datenfluss
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2926322A1 (de) Speicher-subsystem
DE2912073A1 (de) Stapelspeicheranordnung zur kurzzeitigen speicherung von informationen bei nichtabsetzbarkeit dieser informationen in einem datenverarbeitungssystem
DE1191145B (de) Elektronische Zifferrechenmaschine
DE1499713A1 (de) Verfahren und Schaltungsanordnung zum Packen von Informationen in einem zyklisch umlaufenden Speicher mit wahlfreiem Zugriff zu den auf den Spuren befindlichen Speicherzellen
DE2613800C2 (de)
DE2519195C2 (de) Assoziativspeicher
DE2610428A1 (de) Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher
DE2502920A1 (de) Steueranordnung fuer den betrieb eines datenendgeraetes
DE2853165C2 (de)
DE3016738A1 (de) Verfahren zur uebertragung eines bitmusterfeldes in einen speicher und schaltungsanordnung zur ausuebung des verfahrens
DE19843048C2 (de) Verfahren für einen Softwarezugriffswechsel in einem Netzwerkknoten eines Telekommunikationsnetzwerkes sowie ein zum Durchführen eines solchen Verfahrens geeigneter Netzwerkknoten
DE10310340A1 (de) Datenzugriffsverfahren und System mit verteiltem, gemeinsam genutzten Speicher
DE3918453C2 (de) LRU-Schaltung
DE2855856A1 (de) Datenverarbeitungssystem
DE102005058690A1 (de) Einrichtung und Prozess zur Steuerdatenspeicherung

Legal Events

Date Code Title Description
OD Request for examination
OI Miscellaneous see part 1
OI Miscellaneous see part 1
OGA New person/name/address of the applicant
D2 Grant after examination
AH Division in

Ref country code: DE

Ref document number: 2560206

Format of ref document f/p: P

8339 Ceased/non-payment of the annual fee
8327 Change in the person/name/address of the patent owner

Owner name: UNISYS CORP. (N.D.GES.D.STAATES DELAWARE), BLUE BE

8328 Change in the person/name/address of the agent

Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING. RABUS, W., DR.-ING. BRUEGGE, J., DIPL.-ING., 2800 BREMEN MAIWALD, W., DIPL.-CHEM.DR., PAT.-ANWAELTE, 8000 MUENCHEN