DE2560206C2 - Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität - Google Patents
Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer KapazitätInfo
- Publication number
- DE2560206C2 DE2560206C2 DE2560206A DE2560206A DE2560206C2 DE 2560206 C2 DE2560206 C2 DE 2560206C2 DE 2560206 A DE2560206 A DE 2560206A DE 2560206 A DE2560206 A DE 2560206A DE 2560206 C2 DE2560206 C2 DE 2560206C2
- Authority
- DE
- Germany
- Prior art keywords
- block
- buffer memory
- data
- address
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/128—Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0851—Cache with interleaved addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0859—Overlapped cache accessing, e.g. pipeline with reload from main memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Description
Die Erfindung betrifft ein Speichersystem mit einem lengsam arbeitenden Hauptspeicher von großer Kapazität und mit zumindest einem schnell arbeitenden
Pufferspeicher von geringer Kapazität, zwischen dem und einem anfordernden Gerät Adressensignale und ein
diesen zugeordnetes Da ten wort übertragbar sind, mit einer Vergleichsschaltung, von der bei der Feststellung,
daß das den Adressensignalen zugeordnete Datenwort nicht im Pufferspeicher erreichbar ist. ein Schaltsignalgeber eir.schaltbar ist. von dem sowohl ein Datenblock,
der das den Adressensignalen zugeordnete Datenwort enthält bzw. aufnehmen soll, aus dem Hauptspeicher zu
einem freigemachten Platz des Pufferspeichers als auch ein am längsten unbenutzt im Pufferspeicher verweilender Datenblock vom Pufferspeicher zu dem freigemachten Platz des Hauptspeichers übertragbar sind.
Wie aus der US-Patenlschrift 32 75 991 bekannt ist, ist
der Pufferspeicher normalerweise mit einer vorgegebenen, beschränkten Anzahl Datenwörter gefüllt, auf die
einzeln ohne eine Beteiligung des langsam arbeitenden Hauptspeichers sehr schnell durch ein äußeres Gerät
oder einen Rechner zugegriffen werden kann, der auch
als anforderndes Gerät betrachtet sei. Wenn zur Ausgabe oder Abänderung eines solchen Datenwortes
die zugeordneten Adressensignale in ein dem Pufferspeicher vorgeschaltetes Register eingegeben werden,
findet eine Prüfung statt, ob sich dieselben Adressensignale im Pufferspeicher befinden. Im positiven Fall wird
das diesen Adressensignalen zugeordnete Datenwort unter Rückstellung des Fehlerflipflop vom Pufferspeicher in ein Halteregister ausgelesen und dann zum
Rechner oder zu einem äußeren Gerät weiterbefördert Im negativen Fall, wenn also dieselben Adressensignale
nicht im Pufferspeicher auffindbar sind, bewirkt das gesetzt gebliebene Fehlerflipflop mit dem nächsten
Taktpuls die Einschleusung der Adressensignale in ein der Adressierschaltung des Hauptspeichers vorgeschaltetes Register, damit das Datenwort das nunmehr
entsprechend den herangeführten Adressensignalen im Hauptspeicher adressiert wird, in ein nachgeschaltetes
Register ausgelesen wird. Dieses läuft dann einmal über ein Ausgabe-Register zum Rechner oder äußeren Gerät
und zum anderen zum Pufferspeicher, wobei aus diesem gleichzeitig ein Datenwort auf das im Pufferspeicher
während einer längsten Zeitspanne im Vergleich mit der der anderen Daterwörter des Pufferspeichers nicht
zugegriffen wurde, vom Pufferspeicher zum Hauptspeicher an den dort gerade freigewordenen Plate
zurückbefördert wird. Um dieses spezielle Datenwort im Pufferspeicher ausfindig zu machen, weist der
Pufferspeicher einen gesonderten Abschnitt auf, in dem für jedes Daten wort einige Bits festgehalten werden, die
das Alter, also die Zeitspanne angeben, die seit dem letzten Zugriff auf das Datenwort verstrichen ist
Folglich werden bei der Heranführung der Adressensignale aus dem Rechner oder dem äußeren Gerät und bei
einem unmittelbaren Zugriff auf ein Datenwort im Pufferspeicher alle diese das Aker angebenden Bits um
einen Schritt abgeändert Dasselbe ist der Fall, wenn aus dem Hauptspeicher ein Datenwort ausgegeben und
zugleich im Pufferspeicher anstelle des Datenwortes abgelegt wird, das zum Hauptspeicher zurückbefördert
wird, weil es während der längsten zurückliegenden Zeitspanne im Pufferspeicher unbenutzt blieb. Außer
den das Alter angebenden Bits kann jedem Datenwort im Pufferspeicher noch ein weiteres Bit zugeordnet sein,
das anzeigt, daß ein Schreibvorgang, also eine Abänderung an de*n betreffenden Datenwort ohne eine
Beteiligung des Hauptspeichers stattgefunden hat.
Die Besonderheit dieser bekannten Anordnung liegt darin, daß zwischen dem Pufferspeicher und dem
Hauptspeicher nur einzelne Datenwörter gegeneinander ausgetauscht werden, also nur ein Datenwort vom
Pufferspeicher zum Hauptspeicher und ebenso nur ein Datenwort vom Hauptspeicher zum Pufferspeicher
befördert werden, falls das vom äußeren Gerät oder Rechner angeforderte Datenwort nicht im Pufferspeicher auffindbar ist. Eine weitere Besonderheit besteht
darin, daß im Falle der Nichtauffindbarkeit des Datenwörtes im Pufferspeieher dessen Abschnitt, der
die das Alter des betreffenden Datenwortes angebenden Bits speichert, diejenigen Adressensignale ermittelt,
die zum Datenwort gehören, auf das während der längsten zurückliegenden Zeitspanne nicht zugegriffen
wurde, und die so ermittelten Adressensignale aus dem Pufferspeicher ausgibt und an die Adressierschaltung
des Hauptspeichers heranbringt, damit das zugehörige
Datenwort, insbesondere wenn es innerhalb des Pufferspeichers vor etlicher Zeit einer Änderung
unterzogen wurde, an den richtigen Platz des Hauptspeichers gelangt
Aus der deutschen Offenlegungsschrift 24 15 900 ist bekannt, die Datenwörter im Pufferspeicher zu
Datenblöcken zusammenzufassen, die z. B. jeweils 16 Datenwörter enthalten. Dementsprechend sind die
aus dem Rechner bzw. dem äußeren Gerät herangeführten Adressensignale in Abschnitte unterteilt, von denen
der eine für das Aufsuchen einer im Pufferspeicher vorhandenen Datenblockadresse und der andere für das
Aufsuchen eines der 16 Datenwörter innerhalb des aufgefundenen Datenblockes vorgesehen ist
Im Vergleich mit der zuerst erläuterten bekannten Anordnun; kann die Vergleichsschaltung zur Feststellung,
ob die durch die Adressensignale festgelegten Daten im Pufferspeicher enthalten sind oder nicht
kleiner gehalten werden, da der andere Abschnitt der herangeführten Adressensignale nicht mehr an dem
Vergleich innerhalb der Vergleichsschaltung teilnimmt Umgekehrt gesehen, kann bei einer Beibehaltung des
Umfangs der Vergleichsschaltung die Kapazität des Pufferspeichers z. B. um den Faktor 16 vergrößert
werden, was insbesondere dann von Interesse ist wenn der Hauptspeicher eine sehr große Kapazität besitzt
Entsprechend der Zusammenfassung von jeweils 16 Datenwörtern im Pufferspeicher zu einem Daten block
werden auch in einem solchen Hauptspeicher sehr großer Kapazität jeweils 16 Datenwörter an einem
einzigen adressierbaren Platz des Hauptspeichers ■ntergebracht dem also eine Blockadresse zugeordnet
ist Im Falle der Nichtauffindbarkeit eines Datenblockes im Pufferspeicher muß zwangsläufig von den Adressenlignalen
des einen Abschnittes, der sog. Blockadresse ein Datenblock im Hauptspeicher adressiert werden.
der bei der bekannten Anordnung nach der deutschen Offenlegungsschrift 24 15 900 als Ganzes in den
Pufferspeicher übertragen werden muß. Falls dieser gefüllt war, erfolgt ein Austausch gegen einen
Datenblock, der während der längsten zurückliegenden Zeitspanne im Pufferspeicher unbenutzt blieb. Dieser
Austausch zweier Datenblöcke zwiscnen dem Pufferspeicher
und dem Hauptspeicher, der mit dem Austausch zweier Datenwörter zwischen dem Pufferspeicher
und dem Hauptspeicher bei der Anordnung ■ach der US-Patentschrift 32 75 991 Ähnlichkeit hat, ist
mit einem erheblichen Aufwand an Zwischenregisterstufen, Schaltgliedern und Leitungen verknüpft, wenn
die Übertragung a'Mr 16 Datenwörter eines Datenblokkes
zwischen dem Pufferspeicher und dem Hauptspeicher bzw. umgekehrt parallel, also gleichzeitig erfolgen
toll, was natürlich aus Gründen der Zeitersparnis tngestrebt wird.
Der Erfindung liegt die Aufgabe zugrunde, in dem Speichersystem der eingangs bezeichneten Art die
Vergleichsschaltung mit einer Schaltung zu kombinie ren. von der bei der Feststellung, daß der den
Adressensignalen zugehörige Datenblock im Pufferspeicher erreichbar ist, seine das Alter angebenden Bits,
sowie die das Alter aller anderen Datenblöeke angebenden Bits im Pufferspeicher passend abgeändert
werden.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß die das Alter angebenden Bits der zur Vergleichsschaltung
gleichzeitig ausgebbaren Blockadressen in mehreren paralleler Registern aufnehmbar sind, denen
je ein Rückkopphingskreis mit einem Komparator und einem Addierer zugeordnet ist, und daß mit den
Registern ein gemeinschaftlicher Vergleichswähler verbunden ist, von dem ein Signa! bei der Festctellung,
weiche der Blockadressen den im Pufferspeicher erreichbaren Datenblock angibt, den Komparatoren
zuführbar ist von deren Vergleichsergebnis über den Rückkopplungskreis die das Alter angebenden Bi's iii
den Registern nachstellbar sind.
Ein Ausfuhrungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher
erläutert Es stellt dar
Fig. 1 die sich aus den Fig. la und Ib zusammensetzt
ein Blockschaltbild des Pufferspeichers, in dem die Erfindung angewendet wird,
Fig.2 den Anzeichenabschnitt der dem Satz
zugehörigen Speichermoduln in Blockdarstellung,
F i g. 3 den Pufferabschnitt der zuvor genannten Speichermoduln,
Fig.4 ein Blockschaltbild derjenigen Schaltungen. von denen der die längste Zeit nicht verwendete
Algorithmus ermittelt wird,
F i g. 5 die sich aus den F i g. 5a Lis 5c zusammensetzt die Reihenfolge der verschiedenen, von der bevorzugten
Ausführungsform der Erfindung auszuführenden Operationen in einem Flußbild.
In Verbindung mit der F i g. 1 werden die Organisation und die funktioneilen Arbeitsgänge des Speichersystems
gemäß der Erfindung erklärt; hiernach werden der Aufbau und die Arbeitsweise der einzelnen Blöcke
aus der F i g. 1 ausführlich erläutert, so weit sie vom bekannten Stand der Technik abweichen.
Wie bereits angedeutet ist bei dem Speichersystem gemäß der Erfindung ein Pufferspeicher 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 einem anfordernden Gerät zum Lesen oder Schreiben
gesucht wird, in diesem Pufferspeicher vorgefunden wird, so daß kein Zugriff auf der· mit geringer
Geschwindigkeit arbeitenden Harptspeicher zu erfolgen braucht.
Das System der F i g. I weist 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 C runde werden die verschiedenen Funktionselemente nur beim »ungeraden« Abschni'.t links
von einer Linie 10 erläutert, obgleich diese Angaben auch für den »geradzahligen« Abschnitt rechts von
einer Linie 12 gelten. Diejenigen Elemente, die mit den beiden Abschnitten zusammenarbeiten, sind zwischen
den Linien 10 und 12 gezeigt.
Von drei anfordernden Geräten 0, 1 und 2 gehen Eingabe-Leifngen 13 aus und führen dem Pufferspei
eher 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
Ein-/Ausgabe-Geräte gehören. Die am unteren Ende der Fig. Ib ei !tretenden, der Anforderung dienenden
Signale gelangen zu je einem Prioritätsnetzwerk 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 Pufferspeicher die Priorität
zuerkannt. Sowohl die zentralen Bearbeitungseinheiten als auch die Ein-/Ausgabe-Geräte übermitteln die Daten
zum Pufferspeicher auf der Grundlage einer Anforderung und eines Anerkenntnisses, wie in der US-Patentschrift
32 43 781 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 Anfordeningssignale 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 zum Lesen oder Schreiben wird eine Adresse zugeführt, die das
gewünschte Wort auswählt, das gelesen oder abgeändert werden soii. Die die Adressen wiedergebender!
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 mit üblichen Verknüpfungsschaltungen
aufgebaute Pufferschreibwähler 20 zu schreibende Daten vom gewählten anfordernden Gerät in Pufferschreib-Register
22 hineinlaufen.
Die von den Anforderungs-Adressen- und Pufferschreib-Registern 18 und 22 abgegebenen Signale
werden zugehörigen Satzspeicher-Einheiten 24 und 26 zur Verfügung gestellt, von denen die erstere die
ungeradzahligen Adressen mehrerer Blöcke und die letztere die geradzahligen Adressen in denselben
Blöcken speichern, und die übliche adressierbare Speicher mit zufsllsverteiltem Zugriff sein können, aber
in zwei Teile, nämlich einen Anzeichenteil und einen Pufferteil eingeteilt sind.
Zur Aufbewahrung sog. Anzeichenwörter enthält die Satzspeichereinheit 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 Satzspeichereinheit 26 in zwei Teile,
nämlich je einen Stapel von Registern 32 und 34 zerlegt,
die Anzeichenwörter bzw. mehrere Sätze von halben Datenblöcken speichern. In den Registern 28 und 32 ist
ein Anzeichenwort für jeden halben Datenblock vorhanden, der in den Registern 30 bzw. 34 untergebracht
ist.
Zum besseren Verständnis der Gesamtorganisation des Pufferspeichers erscheint die Betrachtung einer
Ausführungsform hilfreich, obgleich die Speicherkapazitäten frei wählbar sind. Beispielsweise mögen die
beiden Satzspeicher-Einheiten 24 und 26 kombiniert eine Kapazität von 4096 Datenwörtern und ein
Hauptspeicher 36 eine Kapazität von 262 144 Wörtern
aufweisen. Die Satzspeicher-Einheiten können in 128 Sätze aus vier Datenblöcken mit je acht Wörtern
(128 · 4 - 8 = 4096) unterteilt sein. Man kann dann auch den Hauptspeicher als aus 128 Sätzen aufgebaut
betrachten, wobei der einzelne Satz 1A28 der Wortkapaziiät
des Hauptspeichers aufweist. Dabei würde jeder Satz 256 Datenblöcke aus acht Wörtern
(128 ■ 256 - 8 = 262 144) enthalten. Vier von den 256 Datenblöcken aus 8 Wörtern in einem Satz des
Hauptspeichers können in einem entsprechenden Satz der 128 Sätze in den Satzspeicher-Einheiten 24 und 26
ruhen.
Um das Adressieren der im Pufferspeicher untergebrachten Daten zu 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 Putferspeicher 2048
Wörter mit ungeradzahligen Adressen und 2048 Wörter mit geradzahligen Adressen aufnehmen, wie aus der
nachfolgenden Tabelle I hervorgeht.
4 Blöcke aus | 4 halbe Blöcke | 4 halbe | Blöcke | D | 24 |
8 Wörtern | aus 4 Wörtern | aus 4 Wörtern | 0 | ||
Block | Block | Block | 0 | ||
ABCD | ABCD | ABC | 0 | ||
EEEE | EEEE | 0 0 0 | 0 | ||
0 0 0 0 | EEEE | 0 0 0 | |||
EEEE | EEEE | 0 0 0 | |||
0 0 0 0 | EEEE | 0 0 0 | Satzspeicher | ||
EEEE | einheit | ||||
0 0 0 0 | |||||
EEEE | Satzspeicher | ||||
0 0 0 0 | einheit 26 |
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 Satzspeichereinheiten 24 und 26 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 262144
Wörtern und einen mit ihm kombinierten Pufferspeicher mit der Kapazität von 4096 Wörtern verwendet
wird. Bei einer Anwendung zusätzlicher Speichermoduln sind weitere Adressenbits zur Auswahl der Moduln
notwendig.
22-10
Blockwahi
Blockwahi
9-3
Satzwahl
Satzwahl
2-1 Wortwahl
0 0/E-Wahl
Hauptspeicher-Adresse
20
Nun seien die Satzspeichereinheit 24 mit dem Stapel Register 28 und die Satzspeichereinheit 26 mit dem
Stapel Register 32 in Verbindung mit der Fig.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 zu einen».
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
Anzeichentdles werden 64 Bits in dem Format aufgenommen, das als Satzadresse 000 in der F i g. 2 gezeigt
ist. Der Teil des Anzeichenworts mit der Bezeichnung: »Blockadresse« schließt die Bits 10—22 der Adresse des
?-sten 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 sind.
Mit dem Begriff: »Alter« werden zwei Bits in einem Feld bezeichnet, das allen vier Blockadressen am
Anzeichenplatz zugeordnet ist und eine relative Angabe darüber liefert, wie lange es her ist, seitdem auf alle
Blöcke zug »griffen wurde. Über dieses Feld folgen noch Erläuterungen, wenn der Ersatzalgorithmus für den seit
einer maximalen Zeitspanne nicht benutzien Block ausführlich erklärt wird.
Ein Feld Wb ist I 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ückgeschrieben 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 (Fig.2) enthalten ist. Falls die eine der vier Blockadressen
übereinstimmt, was von einer Vergleichsschaltung 42 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) und die Bits adressiert werden, die ein Wort innerhalb des Blockes (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 Vergleichsschaltung 42, die die
Nummer des Blockes angeben, in dem die Übereinstimmung auftrat, werden zur Auswahl des passenden
Wortes aus dem Pufferspeicher benutzt, damit es zum anfordernden Gerät übertragen wird.
In der F i g. 3 ist die Organisation der Satzspeichereinheit
24 aufgezeigt; diese enthält zahlreiche adressierbare Register zum Speichern von Daten. 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 Satzspeichereinheit 26 und
die ungeradzahligen in der Satzspeichereinheit 24 untergebracht Um auf ein gegebenes Wort einen
Zugriff zu ermöglichen, wählen die Bits 09 bis 03 der Adresse aus dem anfordernden Gerät einen der 128 im
Pufferspeicher untergebrachten Sätze 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ähier werden die Bits 02 und 01 aus dem
Anforderungs-Adressenregister übersetzt, damit in einmaliger Form eines der vier Wörter in allen Blöcken
innerhalb eines gegebenen Satzes in dem betreffenden ungerad- oder geradzahligen Abschnitt ausgewählt
wird. Da dieselbe Adresse aus dem anfordernden Gerät gleichzeitig dem Stapel der Anzeichen-Register der
Fig. 2 zugeleitet wird, wird in dem Falle, daß eine Übereinstimmung zwischen der Adresse eines angeforderten
Blockes 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 geradzahligen Abschnittes austritt. Dadurch, daß dieses Ausgangssignal zu den Eingangsklemmen eines
Blockwählers 48 der Fig.3 gelangt, kann allein das gewählte Wort des ausgewählten Blockes im ausgesuchten
Satz 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 Wnrtwählpr 4« rUn Austritt
eines Wortes aus der Satzspeichereinheit 24 verhindert. Die von den Satzspeicher-Einheiten 24 und 26
abgegebenen Wörter laufen durch Kabel 50 der Fig. 1 in Lesedatenwähler 52 hinein, die vom Prioritätsnetzwerk
14 beeinflußt werden und die Wörter über Kabel 54 zu einem von mehreren Leseregistern 56,58 oder 60
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 Pufferspeicher befindet, wird die gewünschte Adresse aus den Anforderungs-Adressenregistern
18 über ein Kabel 61 zu einem Verfehlungs-Adressenregister 62 übertragen, wo sie festgehalten
wird, damit sie in einem späteren Zeitpunkt 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 zugeordnete Anzeichenadresse aus dem Anzeichenteil der Satzspeichereinheit 24 oder 26 zu
einem Anzeichen-Adressen-Register 64 ausgelesen und von diesem zu einem Pufferanzeichen-Adressen-Register
66 durch ein Kabe! 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 Satzspeicher-Einheiten 24 und 26 ausgelesen und der
Reihe nach zu den vier Abschnitten von Schreibdaten-Registern 68 des Hauptspeichers übertragen, in denen
so sie festgehalten werden.
Der gewünschte, nicht ruhende Datenblock wird zu je zwei Wörtern 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 eine Einheit vergrößert Auch das neue Anzeichenwort
wird in die Anzeichenteile der Satzspeicher-Einheiten 24 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 Anzeichen-Adressenregister 64 enthalten ist, geprüft; falls es gesetzt ist bedeutet dies, daß der jetzt in den Schreibdaten-Registern 68 ruhende Datenblock einer
Während diese Vorgänge ablaufen, wird das Rückschreibebit des Anzeichenwortes, das gegenwärtig im Anzeichen-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-Registern
•8, nämüch eines aus dem ungeradzahligen Abschnitt
und eines au. dem geradzahligen Abschnitt in den Hauptspeicher eingelassen, wobei der Platz dieses
Blockes von der Adresse vorgeschrieben ist, die zu einem früheren Zeitpunkt im Verfehlungs-Adressenrefister
62 aufgenommen wurde, dessen Inhalt einem Adressen-Register 72 des Hauptspeichers 36 zugeleitet
wird.
Nachdem das letzte Wort der aus dem Hauptspeicher tusgelesenen Daten in den Pufferspeicher eingetreten
ist, wird die Abtastung einer weiteren Priorität eingeleitet, wodurch das ursprünglich anfordernde
Gerät Zugang *u der nun im Pufferspeicher ruhenden Adresse gewinnt und ihm das gewünschte Wort zum
Lesen oder 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 im Pufferspeicher
befindet, sei auf die F i g. 4 verwiesen.
Wie aus der Erläuterung des Anzeichenteiles in der Satzspeichereinheit der Fig.2 hervorgeht, verfügt
jeder Satz über ein Anzeichenwort, das die Adresse der vier laufend im Pufferspeicher 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 Bi?', 11 zum Ersatz auszuwählen.
Mit Hilfe der Schaltung nach der F i g. 4 werden die das Alter angebenden Bits eines Anzeichenwortes eines
Satzes jedesmal auf den neuesten Stand gebracht, wenn auf einen Block in diesem Satz zugegriffen wird. Vier
Register 74, 76, 78 und 80 am unteren Ende der F i g. 4 können einen Teil der Vergleichsschaltung 42 der F i g. 2
bilden. Bei der Heranführung einer Anzeichenadresse aus dem mit der höchsten Priorität anfordernden Gerät
an den Adressen-Zuordner 40 wird das Anzeichenwort dieses Satzes in die Vergleichsschaltung 42 eingelassen,
wobei die das Alter der Blockadresse angebenden Bits und ein Rückschreibbit für einen Block A in das Register
74, die für einen Block B in das Register 76 usw. eintreten. Die das Alter nennenden Bits werden von den
Registern 74, 76, 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 es
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 dieselbe ■" 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 F i g. 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
empfängt der Vergleichswähler 82 ein Signal, von dem die das Alter bezeichnenden Bits 10 der einen
Eingangsklemme der Komparatoren 84, 86, 88 und 90 zugeleitet werden. Daher wird der Binärwert 10 mit den
das Alter angebenden Bits in den Registern 74, 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.
Wenn 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 Datcnblockes 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 sollen, gibt der Komparator 90 ein Signal ab, mit dessen Hilfe zum Inhalt des Registers
80 eine Null hinzugefügt wird. Beim Verfolgen dieser Weiterschaltvorgänge werden die das Alter angebenden
Binärwerte 01,00, 01 und 11 verwendet, von denen
angezeigt wird, daß der Block B der zuletzt in Anspruch genommene Block ist und der Block D während der
längsten Zeitspanne nicht benutzt wurde.
Zusammenfassend betrachtet, bestimmen die Komparatoren 84, 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 Satzes sind, und die Addierer 92,94,96 und 98 zählen unter den
zuvor aufgezählten Bedingungen eine Null zu 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 US Patentschrift 32 93 603 näher erläutert
Zur weiteren Erläuterung der Arbeitsweise der Schaltung nach der F i g. 1 sei das Flußbild der F i g. 5a,
5b und 5c herangezogen. Zu Anfang ist das Prioritätsnetzwerk 14 bereit eingehende Anforderungssignale
aus mehreren der Anforderung dienenden Geräten anzunehmen, die an den Eingangsleitungen 13 des
Pufferspeichers angeschlossen sind (Block 102). Nach
dem Empfang eines Anforderungssignals zum Lesen oder Schreiben wird festgestellt, ob gerade mehrere
derartige Geräte Anforderungssignale übertragen (Block 104). Im positiven Falle wählt das Prioritätsnetzwerk
14 (Fig. 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
Schreibvorganges gesperrt (Block 108). Das Prioritätsnetzwerk 14 sendet ein Schaltsignal zu dem
der Anforderung dienenden Gerät, wodurch die Bits 05)
bis 03 der angeforderten Adresse in den Adressen-Zuordner 40 und Satzwähler 44 (Fig.2 und 3) der
Anzeichenteile und Pufferteile der Satzspeicher-Einheiten 24 unci 26 eingeschleust werden. Gleichzeitig laufen
die Bits C^ und 01 der vom anfordernden GeräH
dargebotenen Adresse in den Wortwähler 46 (Fig.3)
hinein (Block 110).
Als nächstes werden die Satzspeicher-F.inheitpn 7i\
und 26 zyklisch durchgeschaltet, und das Anzeichenwoin:
wird für ien 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 der Blockwähler 48 der F i g. 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 Satzspeichereinheit dargebotenen Adresse
verglichen (Block 116). Falls sich beim Vergleich eine Übereinstimmung ergibt, wird auf einer der aus der
Vergleichsschaltung 42 austretenden Leitungen A, B, C oder D ein Steuersignal zum Vergleichswähler 82
(F i g. 4) übermittelt, wodurch die das Alter angebenden Bits des Anzeichenwortes in der Vergleichsschaltung 42
auf den neuesten Stand gebracht werden (Blöcke 1113
und 120). Bei einer fehlenden Übereinstimmung gehen die Vorgänge gemäß den Blöcken der F i g. 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 Prioritätsnetzwerk 14
angenommene Anforderung für das Lesen oder Schreiben bestimmt ist (Block 122). Im Falle des
Schreibens geht das Flußbild in der Fig.5c weiter. Unter der Annahme einer Anforderung zum Schreiben
wird den Satzspeicher-Einheiten 24 und 26 ein Schaltsignal ü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 Fig.5c). Da sich infolge des
Schreibvorganges die in einem Dalsnb'cck des Pufferspeichers
untergebrachten Daten von denen im entsprechenden 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 des Anzeichenwortes für den abgeänderten Datenblock gesetzt (Block 126). Schließlich wird
ein Anerkenntnissignai zur·', ausgesuchter! anfordernden
Gerät zurückgesandt das die Mitteilung gibt, öaS das
von ihm gelieferte Datenwort in dem mit der hohen Geschwindigkeit arbeitenden Pufferspeicher eingeschrieben
ist Mit dem Ende dieser Folge wird das Prioritätsnetzwet k ΐ4 freigegeben, damit es neue
Anforderungssignaie abtasten Ran« (Biork 138 der
Fig. 5c).
Falls sich die ursprüngliche Anforderung auf das Lesen bezieht, wird das gewählte Wort im ausgesuchten
Dater.block des ausgewählten Satzes durch den Blockwähler 148 der F i g. 3 in den Lesedatenwähler 52
d^r Fig. 1 und von diesem aus in dip. Anforderungs-Leseregister
56, 58 und 60 des anfordernden Gerätes mit der höchsten Priorität eingeschleust (Block 130 der
F i g. 5a). An dieses Gerät gibt dann die Steuerung des Pufferspeichers ein Anerkenntnissignal ab, von uem
mitgeteilt wird, daß das gewünschte Wort in seinem Leseregister vorhanden ist und aus diesem 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 Fig.5b weitervjrfolgt
werden. Dann gibt die Vergleichsschaltung 42 des gerade adressierten Abschnittes auf der Leitung 67 ein
Steuersigna! zu einer Steuerung JS hin ab, die bei seinem
Empfang einen Befehlsgenerator mit einer Verzögerungsleiiung 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 F i g. 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. Im einzelnen bewirkt der
Befehl aus der Steuerung 15, daß der Inhalt des Anforderungs-Adresserregisters 18 durch die Leitungen
des Kabels 61 zum Verfehlungs-Adressenregister 62 übertragen wird (Block 134 der F i g. 5b). Gleichzeitig
arbeitet die Schaltung der Fig.4 in der bereits erläuterten Weise, damit der spezielle Blocl A, B, C, D
in der Vergleichsschaltung 42 identifiziert wird, indem 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 des Rückschreibebit werden aus dem Anzeichenteil der Satzspeichereinheit in das Anzeichen-Adressenregister
64 ausgelesen und von dort zum Pufferanzeichen-Adressenregister 66 übertragen (Block
136).
Hiernach sendet die Steuerung 15 ein Anforderungssignal zum Lesen an den Hauptspeicher, wodurch der
Datenblock mit acht Wörtern ausgelesen wird, der durch die im Verfehlungs-Adressenregister 62 enthaltene
Adresse bezeichnet ist (Block 138). Insbesondere wird der Inhalt des Verfehlungs-Adressenregisters 62 in
das Adressen-Register 72 des Hauptspeichers 36 eingeschleust in dem er zur Auswahl des gewünschten
Blockes rar Verfügung no:ht, der als nicht im
Pufferspeicher vorhanden festgestellt wurde.
Von der Steuerung 15 wird außerdem ein Anforderunpsignal zum Lesen an dio Saizspeicher-Einheiten 24
und 26 abgegeben (Blöd: 440 der F i g. 5b). Hierdurch
werden die acht Worte; ausgegeben, die in dem am
lgen cat·-w'tzten Daienblock enthalten sind. Zu
i ZwWr. wird die Hanntvf»r7ficrAi-iincrcloitiin<T Ao<-
Steuerung 15 in Gang gesetzt, die 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 BeIade-Flip-flop gesetzt, wodurch angezeigt wird, daß die
ersten beiden Wörter aus den Satzspeicher-Einheiten 24 und 26 zu 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
in der Steuerung 15 enthaltenes Rückschreibe-Füpflop gesetzt, voTasgesetzt 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 tätigsten unbenutzten Datenbio.kes
gerade in den Hauptspeicher 36 übertragen werden, ein Anforderungss'gnal 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 Satzspeicher-Einheiten übermittelt werden können. Sie laufen durch das Kabel
70 zu den Pufferschreibwählern 20 und Pufferschreib-Registem 22 während der vier Zyklen, die von der
Hauptverzögerungsleitung innerhalb der Steuerung 15 eingestellt werden, die für die Schreibvorgänge
vorgesehen ist
Auch diese Hauptverzögerungsleitung setzt vier Zyklen fest. Im ersten wird der Inhalt des Anforderungs-Adressenregisters 18 in den Abschnitt der Blockadresse
des Anzeichenwones 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 Ruckschreibebit des Anzeichenwortes gelöscht das dem neuen Datenblock gehört, was
deshalb notwendig ist weil während des Einschreiben* in den Pufferspeicher das Rückschreibebit automatisch
gesetzt wird; während des Eintretens eines Ersatzblokkes 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 Ersatzblockes aus acht Wörtern in den Pufferspeicher werden die das Alter bezeichnenden Bhs in dem
Anzeichenwort für den Ersatzblock auf den neuesten Stand gebracht, damit am Schluß des Einschreibvorganges in den Pufferspeicher die das Alter angebenden Bits
für den Ersatzblock anzeigen, daß er der zuletzt eingespeiste Datenblock ist Zur Übertragung des
to 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 zum Löschen des
Rückschreibebit sei auf das Flußbild der Fig.5b
verwiesen (Blöcke 148,150 und 152).
Nachdem der Ersatzblock 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 Weiterlesesignal ab, das dem
Pufferspeicher angibt daß der Lesezyklus des Hauptspeichers beendet also die Datenübertragung zum
Nach der Erzeugung des Weiteriesesignals 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
Vorgange in der Reihenfolge ablaufen, wie vom entsprechenden Punkt in der F i g. 5a an zu sehen ist
(Blöcke 122 bis 132). Es wird bestimmt ob das
anfordernde Gerät ein Anforderungssignai zum Schreiben liefert; im positiven Falle gehen dann die Vorgänge
in der Folge gemäß der F i g. 5c weiter. Im Falle eines Anforderungssignals zum Lesen kann man die weiteren
Vorgänge in der F i g. 5a verfolgen (Blöcke 130 und 132).
«o In der Fig.6 sind Einzelheiten der Steuerung 15
gemäß der F i g. 1 wiedergegeben. Ihre Hauptfunktion besteht darin, die im Pufferspeicher untergebrachten
Daten ordnungsgemäß durch die im Hauptspeicher untergebrachten Daten zu ersetzen, wozu die folgenden
1. Im ungeradzahligen Abschnitt oder im geradzahligen wird eine mangelnde Übereinstimmung 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 SS Hauptspeicher in den Pufferspeicher eingeschrieben, und eine neue, ruhende Adresse wird in den
Anzeichenteil eingeschrieben.
5. Die zuvor entnommenen, am längsten unbenutzten Daten werden in den Hauptspeicher eingeschrie
bin. wenn sie während ihre» Aufenthaltes im
Pufferspeieher abgeändert wurden.
6. Das ursprünglich anfordernde Gerät gewinntwieder die Priorität und kann nun auf die
gewünschten Daten im Pufferspeicher zugreifen.
Von der Steuerung 15 werden die erforderlichen Schalt- und Befehlssignale for das übrige System in einer
derartigen Folge erzeugt, daß die zuvor aufgezählten Schritte Zustandekommen.
Claims (2)
1. Speichersystem mit einem langsam arbeitenden Hauptspeicher von großer Kapazität und mit
zumindest einem schnell arbeitenden Pufferspeicher von geringer Kapazität, zwischen dem und einem
anfordernden Gerät Adressensignale und ein diesen zugeordnetes Datenwort übertragbar sind, mit einer
Vergleichsschaltung, von der bei der Feststellung, daß das den Adressensignalen zugeordnete Datenwort nicht im Pufferspeicher erreichbar ist, ein
Schaltsignalgeber einschaltbar ist, von dem sowohl ein Datenblock, der das den Adressensignalen
zugeordnete Datenwort enthält bzw. aufnehmen soll, aus dem Hauptspeicher zu einem freigemachten
Platz des Pufferspeichers als auch ein am längsten unbenutzt im Pufferspeicher verweilender Datenblock vom Pufferspeicher zu dem freigemachten
Platz des Hauptspeichers übertragbar sind, dadurch gekennzeichnet, daß die das Alter
angebend«. Bits (00,10, 01. 11) der zur Vergleichsschaltung (42) gleichzeitig ausgebbaren Blockadressen in mehreren parallelen Registern (74,76,78,80)
aufnehmbar sind, denen je ein Rückkopplungskreis mit einem Komparator (84, 86. 88 bzw. 90) und
einem Addierer (92, 94, 96 bzw. 98) zugeordnet ist und daß mit den Registern (74, 76, 78. 80) ein
gemeinschaftlicher Vergleichswähler (82) verbunden ist, von dem ein Signal bei der Feststellung, welche
der Blockadressen den im Pufferspeicher (24, 26) erreichbaren Datenblock angibt, den Komparatoren
(84,86,88,9">
üuführbar ist. von deren Vergleichsergebnis (>. = .
<) über den Rückkopplungskreis die das Alter angebenden Bits in den Registern (74, 76,
78,80) nachstellbar sind.
2. Speichersystem nach dem . .nspruch 1. dadurch gekennzeichnet, daß der Komparator (84, 86, 88
oder 90) beim Empfang der aus dem zugeordneten Register (74, 76, 78 oder 80) unmittelbar übertragenen, das Alter der Blockadresse angebenden Bits,
sowie des vom Vergleichswähler (82) abgegebenen *o Signals, das das Al;er der Blockadresse desjenigen
Datenblockes anzeigt, der im Pufferspeicher (24,26) gerade erreichbar ist, ein »Größer-als«-. Gleichheits- oder »Kleiner-als«-Signal an den Addierer (92,
94.96 oder 98) des betreffenden Rückkopplungskrei· «
ses weitergibt.
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 (1)
Publication Number | Publication Date |
---|---|
DE2560206C2 true DE2560206C2 (de) | 1983-01-20 |
Family
ID=24081323
Family Applications (2)
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 |
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 |
Family Applications After (1)
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 |
Country Status (8)
Country | Link |
---|---|
US (1) | US3967247A (de) |
JP (1) | JPS6118222B2 (de) |
CH (1) | CH607139A5 (de) |
DE (2) | DE2560206C2 (de) |
FR (1) | FR2290710A1 (de) |
GB (1) | GB1532798A (de) |
IT (1) | IT1049044B (de) |
SE (1) | SE411404B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Families Citing this family (80)
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 |
US4092713A (en) * | 1977-06-13 | 1978-05-30 | Sperry Rand Corporation | Post-write address word correction in cache memory system |
US4141067A (en) * | 1977-06-13 | 1979-02-20 | General Automation | Multiprocessor system with cache memory |
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 |
EP0173884B1 (de) * | 1984-08-10 | 1989-11-23 | Siemens Aktiengesellschaft | Schaltungsanordnung zur prioritätsbezogenen Einordnung und Registrierung einzelner Speicherabschnitte bzw. Bänke unter Anwendung des LRU-Algorithmus |
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 |
US4939641A (en) * | 1988-06-30 | 1990-07-03 | Wang Laboratories, Inc. | Multi-processor system with cache memories |
US5097409A (en) * | 1988-06-30 | 1992-03-17 | 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 |
IL142400A0 (en) * | 1998-09-18 | 2002-03-10 | Harris Corp | Distributed trunking mechanism for vhf networking |
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 (3)
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 |
DE2415900A1 (de) * | 1973-04-04 | 1974-10-31 | Sperry Rand Corp | Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE629069A (de) * | 1962-03-05 | |||
US3569938A (en) * | 1967-12-20 | 1971-03-09 | Ibm | Storage manager |
US3581291A (en) * | 1968-10-31 | 1971-05-25 | Hitachi Ltd | Memory control system in multiprocessing system |
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 |
US3737871A (en) * | 1971-07-28 | 1973-06-05 | Hewlett Packard Co | Stack register renamer |
GB1354827A (en) * | 1971-08-25 | 1974-06-05 | Ibm | Data processing systems |
US3735360A (en) * | 1971-08-25 | 1973-05-22 | Ibm | High speed buffer operation in a multi-processing system |
-
1974
- 1974-11-11 US US05/522,553 patent/US3967247A/en not_active Expired - Lifetime
-
1975
- 1975-11-06 FR FR7533944A patent/FR2290710A1/fr active Granted
- 1975-11-07 SE SE7512524A patent/SE411404B/sv not_active IP Right Cessation
- 1975-11-07 IT IT29118/75A patent/IT1049044B/it active
- 1975-11-08 DE DE2560206A patent/DE2560206C2/de not_active Expired
- 1975-11-08 DE DE2550339A patent/DE2550339C2/de not_active Expired
- 1975-11-10 GB GB46376/75A patent/GB1532798A/en not_active Expired
- 1975-11-10 CH CH1448875A patent/CH607139A5/xx not_active IP Right Cessation
- 1975-11-11 JP JP50135592A patent/JPS6118222B2/ja not_active Expired
Patent Citations (3)
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 |
DE2415900A1 (de) * | 1973-04-04 | 1974-10-31 | Sperry Rand Corp | Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Also Published As
Publication number | Publication date |
---|---|
DE2550339C2 (de) | 1982-10-14 |
US3967247A (en) | 1976-06-29 |
FR2290710A1 (fr) | 1976-06-04 |
DE2550339A1 (de) | 1976-06-16 |
SE7512524L (sv) | 1976-05-12 |
FR2290710B1 (de) | 1980-04-18 |
SE411404B (sv) | 1979-12-17 |
GB1532798A (en) | 1978-11-22 |
CH607139A5 (de) | 1978-11-30 |
JPS6118222B2 (de) | 1986-05-12 |
JPS5176936A (de) | 1976-07-03 |
IT1049044B (it) | 1981-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2560206C2 (de) | Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität | |
DE3237224C2 (de) | ||
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE2163342C3 (de) | Hierarchische binäre Speichervorrichtung | |
DE2230987C2 (de) | ||
DE3327379A1 (de) | Einrichtung und verfahren zum umordnen von datensaetzen | |
DE2758829C2 (de) | Datenverarbeitungsanlage mit mehreren Prozessoren | |
DE3618136C2 (de) | ||
DE2854782C2 (de) | Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher | |
DE2310631A1 (de) | Speicherhierarchie fuer ein datenverarbeitungssystem | |
DE1524788C3 (de) | Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern | |
DE2926322A1 (de) | Speicher-subsystem | |
DE2912073A1 (de) | Stapelspeicheranordnung zur kurzzeitigen speicherung von informationen bei nichtabsetzbarkeit dieser informationen in einem datenverarbeitungssystem | |
DE2221442A1 (de) | Assoziativspeicher | |
EP0009625B1 (de) | Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher | |
DE2343501C3 (de) | Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von Ein-/Ausgabe-Programmen bestimmten Registern | |
EP0012207B1 (de) | Speicherhierarchie mit Ladungsverschiebungsspeicher | |
DE1549473A1 (de) | Datenspeichersystem bzw. Verfahren zur Einteilung von Datenspeichern | |
DE2853165C2 (de) | ||
DE3016738C2 (de) | Verfahren zur Übertragung eines Bitmusterfeldes in einen Speicher und Schaltungsanordnung zur Ausübung des Verfahrens | |
DE2854286A1 (de) | Schaltungsanordnung mit einem befehlspuffer fuer eine cachespeichereinheit eines datenverarbeitungssystems | |
EP1100016B1 (de) | Speichereinrichtung mit Ersatz-Speicherzellen | |
DE2605066A1 (de) | Kanalzuordnungsschaltung zur herstellung einer zeitvielfach-breitbandverbindung | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher | |
DE2509835C3 (de) | Arbeitsspeicheranordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OI | Miscellaneous see part 1 | ||
OI | Miscellaneous see part 1 | ||
OGA | New person/name/address of the applicant | ||
OD | Request for examination | ||
AC | Divided out of |
Ref country code: DE Ref document number: 2550339 Format of ref document f/p: P |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
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 |