DE2543589C2 - Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen Betrieb - Google Patents
Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen BetriebInfo
- Publication number
- DE2543589C2 DE2543589C2 DE2543589A DE2543589A DE2543589C2 DE 2543589 C2 DE2543589 C2 DE 2543589C2 DE 2543589 A DE2543589 A DE 2543589A DE 2543589 A DE2543589 A DE 2543589A DE 2543589 C2 DE2543589 C2 DE 2543589C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- page
- buffer
- address
- storage
- 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
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)
Description
Die Erfindung bezieht sich auf ein hierarchisch aufgebautes, mehrstufiges Speichersystem einer datenverarbeitenden
Anlage gemäß dem Oberbegriff des Hauptanspruches und auf ein Verfahren zum Betreiben
eines derartigen Speichersystems.
In allen hierarchisch gegliederten, mehrstufigen Speichersystemen, deren Speicherstufen mit den Mitteln
moderner Speichertechnologiei: aufgebaut sind,
werden die vollständigen Programme der einzelnen, simultan in der Datenverarbeitungsanlage ablaufenden
Prozesse in der niedrigsten Speicherstufe, dem Hauptspeicher abgelegt sein. Jede höhere Speicherstufe
enthält dann nur Teile dieser Programme. Diese Programtnteile müssen dann so ausgewählt sein, daß
Speicheranforderungen des simultan mehrere Prozesse bearbeitenden Zentralprozessors oder auch mehrerer
unabhängig voneinander arbeitender Prozessoren der Datenverarbeitungsanlage möglichst aus den höheren
Stufen des Speichersystems bedient werden können, um die Zugriffszeiten möglichst klein zu halten, und damit
die Leistungsfähigkeit moderner Prozessoren voll auszunutzen.
CCD (Charge Coupled Devices)-Schaltungen eignen sich bekanntlich zum Aufbau von Schieberegistern, in
denen digitale oder analoge Informationen in Form von Ladungspaketen durch Kondensatorketten geschoben
werden kann. Ein wesentliches Anwendungsgebiet dieser Halbleiterbausteine sind digitale Speicher von
Datenverarbeitungsanlagen, da wegen der kleinen, einfachen Elementarzelle eine hohe Speicherdichte bei
guter Ausbeute möglich ist
Ein CCD-Baustein enthält eine Anzahl von wahlfrei adressierbaren Schieberegistern, die über je eine
Lese/Schreib-Station, die gleichzeitig zum Regenerieren der umlaufenden Ladung dient, geschlossen werden.
Die mögliche Schleifenlänge eines Schieberegisters wird durch den Ladungsverlust pro Stufe bestimmt, der
unter anderem von der Schiebefrequenz abhängt. Bei einer Schiebefrequenz von 10 MHz werden heute 256
Speicherstellen pro Schleife für technologisch realisierbar
gehalten. Das bedeutet einen vollen Schleifenumlauf in 25,6 us, wobei im Mittel ein halber Schleifenumlauf
für einen Zugriff zu einem beliebigen Bit einer Schleife erforderlich ist
Damit fallen digitale Speicher aus CCD-Bausteinen in die sogenannte Zugriffszeiten-Lücke, die bislang zwischen
den in Arbeitsspeichern von Datenverarbeitungsanlagen eingesetzten MOS-Speichern und den bekannten
rotierenden Magnetschicht-Speichern klafft, die bei virtuellen Speichersystemen vielfach als Sekundärspeieher
verwendet werden. Ein CCD-Speicher kann mit diesen von den Kosten her durchaus konkurrieren, so
daß er auch an Stelle der genannten Speicher als Seitenspeicher eingesetzt werden kann. In diesem Fall
stört auch die Tatsache nicht, daß er — wie fast alle Halbleiterspeicher — die Information nur solange hält,
als die Versorgungsspannung nicht unterbrochen wird. Denn bei den genannten Speichern wird auch nicht von
der Möglichkeit Gebrauch gemacht, nach einem Systemausfall die auf ihnen noch gespeicherte Informa- eo
tion wieder zu benutzen.
Der direkte Ersatz des rotierenden Seitenspeichers durch einen CCD-Speicher hat den Vorteil, keinerlei
sonstige Änderungen im System — weder in Software noch in Hardware — zu erfordern und darüber hinaus
durch den Wegfall der mechanischen Bewegung geringere Wartungsanforderungen zu stellen. Hinzu
kommt ein geringerer Reparaturaufwand, der sich auch aus der üblichen modularen Struktur eines Halbleiterspeichers
ergibt Der direkte Ersatz eines herkömmlichen Sekundärspeichers durch einen CCD-Speicher
bietet allerdings noch keinen großen Leistungsvorteil, weil dabei die funktionellen Eigenschaften des CCD-Speichers
noch nicht voll ausgenutzt werden.
In der DE-OS 2542 845 wurde daher bereits vorgeschlagen, einen CCD-Speicher als Hauptspeicher
eines mehrstufigen Speichersysteins zu verwenden, der bei einer Kapazität von z. B. 16 MByte die Funktion des
Seitenspeichers übernehmen kann, in den also von den
Programmbibliotheken her ganze Programme geladen werden und bei dem die Lese/Schreib-Stationen selbst
speichernd gestaltet sind, so daß diese die Funktion eines Seitenpuffers als nächsthöhere Hierarchiestufe
übernehmen. Für die Struktur dieses CCD-Speichersystems bietet sich eine sogenannte »Queradressierung«
an, bei der Worte einer Speicherseite an homologen Speicherstellen verschiedener CCD-Schleifengruppen
von jeweils Wortbreite liegen. Alle derartigen Schleifengruppen werden gemeinsam geschoben, so daß an
ihren Lese/Schreib-Stationen alle Worte einer Speicherseite gleichzeitig anliegen. Der durch die
synchron rotierenden Schleifengruppen gebildete Teil des gesamten CCD-Speichers bildet einen Speichermodul,
der so viele Speicherseiten enthält, wike die verwendeten CCD-Schleifen Speichersteüen aufweisen.
Wegen der verwandten Eigenschaften der beiden Technologien bietet es sich an, die den Lese/Schreib-Stationen
der CCD-Schleifen zugeordneten Speicherstellen im Seitenpuffer in einer MOS-Technologie zu
realisieren, da bei dynamischen MOS-Speicherzellen die praktisch ausnutzbare Speicherzeit gegenwertig bereits
bei 2 ms liegt.
Diese hierarchisch nach wie vor zweistufige Speicherstruktur hat folgende Vorteile: Sie bildet eine bauliche
Einheit, hat also eine interne Nahtstelle zwischen den beiden Hierarchiestufen. Diese Nahtstelle hat in jedem
Speichermodul eine Datenbreite von einer Speicherseite, ermöglicht also alle Worte einer Speicherseite
parallel zu übertragen. Dabei ist außerdem eine höhere Datenrate möglich, da kein Auslesevorgang erforderlich
ist. Allerdings ist die im Seitenpuffer enthaltene Information nicht-redundant gespeichert, d. h. im
Hauptspeicher nicht nochmals vorhanden, was gegenüber bestehenden Speichersystemen weitere Änderungen
in der Speicherverwaltung mit sich bringt.
Dieses hierarchisch aufgebaute Speichersystem mit einem Hauptspeicher, der eine räumliche Einheit mit
dem Seitenpuffer bildet, besitzt allerdings eine durch die Struktur bestimmte Eigenschaft: Im Seitenpuffer steht
nur eine Anzahl von Seitenrahmen zur Verfügung, die genau der Anzahl der Speichermoduln des Hauptspeichers
entspricht. Zudem kann im Seitenpuffer aus jedem Speichermodul gleichzeitig immer nur eine einzige
Speicherseite gespeichert sein. Bei Multiprogramm- bzw. Multiprozessorbetrieb einer datenverarbeitenden
Anlage kann dies aber dazu führen, daß eine ganze Anzahl von Speicheranforderungen aus laufenden
Prozessen nicht mehr aus dem Seitenpuffer bedient werden kann, wenn simultan 'aufende Prozesse bei
Speicheranforderungen zu gleichen Speichermoduln zugreifen. Es müßte in jedem Fall eine neue
Speicherseite im Seitenpuffer bereitgestellt werden, die bei der nächsten Seitenwechselanforderung zum gleichen
Speichermodul wieder in den Hauptspeicher ausgelagert wird. Dies kann dann gelegentlich zu
mehrfachen Seitenwechselanforderungen (»Mehrfach-
• Page faults«) führen, bei denen ein laufender Prozeß eine bereits einmal angeforderte Speicherseite nicht
mehr im Seitenpuffer vorfindet, weil sie daraus bereits durch einen anderen Prozeß wieder verdrängt wurde.
Der Erfindung liegt daher die Aufgabe zugrunde, bei 5 einem hierarchisch aufgebauten Arbeitsspeichersystem
der eingangs genannten Art eine Möglichkeit zu schaffen, solche mehrfachen Seitenwechselanforderungen
auch dann zu verhindern, wenn eine Mehrzahl von aktivierten Prozessen in einem Multiprogramm- bzw.
Multiprozessorbetrieb der datenverarbeitenden Anlage jeweils sowohl ein verhältnismäßig großes »Working-Set«
aufweist, als auch dabei zu mehreren Speichermoduln gemeinsam zugreift. Unter einem »Working-Set«
wird dabei die Anzahl von Speicherseiten verstanden, die ein Prozeß aus seinem gesamten Programm in einem
festgelegten zurückliegenden Zeitintervall benötigt hat Bei einem hierarchisch aufgebauten, mehrstufigen
Speichersystem einer datenverarbeitenden Anlage gemäß dem Oberbegriff des Hauptanspruches wird
diese Aufgabe erfindungsgemäß gelöst durch die im Kennzeichen des Hauptanspruches genannten Merkmale.
Patentschutz wird nur für die im Anspruch 1 angegebene Gesamtkombination aller Merkmale beansprucht.
Im übrigen ist aus der DE-AS 2154106 ein
Arbeitsspeicherwerk mit zwei Pufferspeichern und zusätzlichem, inhaltsadressiertem Hilfsspeicher bekannt.
Diese Pufferspeicher sind nach dem sogenannten Kongruenzklassenprinzip strukturiert, sind gleichgeordnet
und entsprechen im übrigen in ihrer Funktion dem Seitenpuffer bei erfindungsgemäßen Speichersystemen.
Bei dem Kongruenzklassenprinzip sind der Hilfsspeicher und ein oder wie hier mehrere Pufferspeicher in
eine identische Zahl von Untereinheiten gegliedert, wobei jeweils eine Untereinheit im Pufferspeicher einer
Untereinheit im Hauptspeicher fest zugeordnet ist Bezeichnet man die in einer Untereinheit des Hauptspeichers
zu speichernde Informationsmenge als »Klasse«, dann ist mit anderen Worten je eine Untereinheit
des oder der Pufferspeicher für auszulagernde Informationen aus nur einer der Klassen reserviert Soll dann bei
einem Speicherzugriff zu nicht im Pufferspeicher stehenden Informationen einer Klasse zugegriffen
werden, wird die in der entsprechenden Untereinheit des Pufferspeichers stehende Information daraus
verdrängt
Bei dem bekannten Speichersystem ist nun ein wenige Speicherworte umfassender kleiner Hilfsspeicher vorgesehen,
der an beliebiger Stelle, weil er inhaltsadressiert ist die verdrängte Information aufnehmen kann.
Sein Inhalt wiederum wird nach dem Prinzip des »least recently used« (LRU-Prinzip) ersetzt
Beide Merkmale des HilfsSpeichers, seine Adressierung
und das gewählte Ersetzungsschema, bedingen wegen des damit verbundenen Aufwandes, den Hilfsspeicher
in seiner Kapazität stark zu beschränken. Der beim erfindungsgemäßen Speichersystem dem Seitenpuffer
zugeordnete Oberlaufpuffer entspricht in seiner Funktion etwa dem Hilfsspeicher des bekannten
Speichersystems, bildet ebenso mit dem den beiden Pufferspeichern entsprechenden Seitenpuffer eine Hierarchiestufe
des Speichersystems. Auch bei ihm besteht keine feste räumliche Zuordnung zum Seitenpuffer,
seine Seitenrahmen sind also frei verteilbar. Er könnte aber seine Funktion im erfindungsgemäßen Speichersystem
nicht erfüllen, wenn seine Speicherkapazität nur wenige Speicherworte betrüge.
Er wird vielmehr so groß gewählt, daß er bei ι
gleichzeitig aktiven Prozessen die »Working-Sets« vor η — 1 Prozessen aufnehmen kann. Dies berücksichtigi
den ungünstigsten Fall, daß ein aktivierter Prozeß der gesamten Seitenpuffer belegt und so daraus alle
anderen Prozesse verdrängt. Jedoch wird man im allgemeinen Betriebsfall mit einer geringeren Speicherkapazität
auskommen, so daß nur noch in ganz seltener extremen Fällen mehrfache Seitenwechselanforderungen
vorkommen können, die dann allerdings ein Rückschreiben einer Speicherseite aus einem freizugebenden
Seitenrahmen des Überlaufpuffers in den Hauptspeicher bedingen. In den Überlaufpuffer erfolgi
stets nur dann ein Seiteneintrag, wenn zwei oder mehrere Prozessoren bzw. Prozesse Speicherseiten aus
demselben Speichermodul benötigen, so daß die im Seitenpuffer stehende Speicherseite dieses Speichermoduls
nicht verdrängt werden darf. Sie wird dann in den Überlaufpuffer ausgelagert und die angeforderte
Speicherseite anschließend an den Lese/Schreib-Stationen des CCD-Speichers eingestellt
Der Vorteil dieser Speicherstruktur liegt insbesondere darin, daß einerseits die Pufferspeicherkapazität der
Lese/Schreib-Stationen des CCD-Speichers und die Vorzüge der internen Nahtstelle voll ausgenutzt und
andererseits Blockierungen des Speichersystems für Zugriffe durch bereits im Seitenpuffer eingestellte
Speicherseiten bzw. Überschreiben noch benötigter Speicherseiten durch neu einzustellende Speicherseiten
vermieden werden. Dabei tritt die Übertragungszeil zum Eintrag von Speicherseiten in den Überlaufpuffer
nur bei Kollisionen im selben Speichermodul auf. Das reine Einstellen der Speicherseiten, d. h. das Verschieben
in die Lese/Schreib-Stationen kann dagegen bei genügend hoher Schiebefrequenz im CCD-Speicher
rasch vor sich gehen.
Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand der Zeichnung näher erläutert Es
zeigt
F i g. 1 das Prinzipschaltbild einer Mehrprozessoranlage mit einem mehrstufigen Speichersystem,
F i g. 2 ein Blockschaltbild des mehrstufigen Speichersystem zur Erläuterung mit den Daten- und Adreßwegen,
Fig.3 ein Blockschaltbild des Speichersystems, in
dem insbesondere die Steuersignalleitungen des Speichersystems näher dargestellt sind und
F i g. 4 ein Blockschaltbild der eigentlichen Speichersteuereinheit
In F i g. 1 ist das Prinzipschaltbild einer datenverarbeitenden Anlage dargestellt in der mehrere voneinander
unabhängig arbeitende Prozessoren Pi, wobei / = 1 ... π über eine ihnen gemeinsam zugeordnete
Speicherverwaltung SPVmit einem hierarchisch gegliederten,
also mehrstufigen Speichersystem verkehren. Die niederste Hierarchiestufe dieses Speichersystems
bildet ein modular aufgebauter Hauptspeicher HSP mit 32 Speichermoduln MODk, wobei k = 1 ... 32, der als
CCD (Charge Coupled Devices)-Speicher aufgebaut ist Jeder der unabhängig ansteuerbaren Speichermoduln
MODk enthält eine Mehrzahl vor Speicherbausteinen mit einer Vielzahl von Speicherschleifen. Innerhalb
jedes Speichermoduls werden diese synchron getaktet d.h. die in ihnen enthaltene Information synchron
verschoben. Homologe Speicherstellen aller Speicherschleifen bilden zusammen jeweils eine Speicherseite
von z. B. 2 kByte Speicherkapazität
Bei einer Schleifenlänge von 256 Bit pro Speicher-
Bei einer Schleifenlänge von 256 Bit pro Speicher-
7 8
schleife hat dann jeder Speichermodul MODk eine innerhalb der so adressierten Speicherseite.
Speicherkapazität von 256 Speicherseiten. Bei einer Speicheranforderung eines Prozessors wird
Wenn die pro Speicherschleife einmal vorgesehenen diese so definierte Speicheradresse der Speicherverwal-Lese/Schreib-Stationen
des CCD-Speichers selbst spei- tung 5PV über ihre prozessorseitige Schnittstelle auf
chernd ausgebildet sind, indem ihnen z. B. jeweils ein 5 mehradrigen Leitungsbündeln zugeführt. Die Speicher-Flip-Flop
in MOS-Technik zugeordnet wird, können sie Verwaltung enthält eine sogenannte Hit/Miss-Logik
als die dem Hauptspeicher HSP übergeordnete HML und eine Speichersteuereinheit ST. Über die
Speicherstufe aufgefaßt werden. Man bezeichnet diese Hit/Miss-Logik HML läßt sich feststellen, ob von
Speicherstufe als Seitenpuffer SSP, da — wie sich aus Prozessoren abgegebene Speicheranforderungen aus
obigen Erläuterungen ergibt — im Seitenpuffer jeweils ι ο der übergeordneten Hierarchiestufe des Speichersyeine
Speicherseite jedes der Speichermoduln MODk stems, d.h. aus dem Seitenpuffer SSP bzw. dem
gespeichert ist. Überlaufpuffer UP bedient werden können (Hit) oder
Die Speicherverwaltung SPV hat, unterstützt durch ein Zugriff zum Hauptspeicher HSP erforderlich ist,
das Betriebssystem der datenverarbeitenden Anlage, weil die entsprechende Speicherseite in der höheren
die Aufgabe, die im Seitenpuffer SSP zur Verfügung 15 Hierarchiestufe nicht enthalten ist (Miss). Da die
stehende Speicherkapazität auf die laufenden Prozesse angeforderte Speicherseite dann erst in die Lese/
derart zu verteilen, daß eine Speicheranforderung eines Schreib-Stationen des CCD-Speichers gedreht werden
der Prozessoren Pi im Teilablauf eines Prozesses aus muß, d. h. diese Seite aus dem Hauptspeicher HSPm den
dem Seitenpuffer SSP bedient werden kann und keinen Seitenpuffer SSP eingetragen werden muß, und damit
Zugriff zum Hauptspeicher HSP erfordert. Dies wird 20 noch weitere, später zu erläuternde Steuerschritte im
dadurch erleichtert, daß erfahrungsgemäß jeder laufen- Speichersystem ablaufen müssen, ist diese Hit/Miss-Lo-
de Prozeß nur einen gewissen Ausschnitt aus dem ihm gik HML ein wesentliches Kennzeichen aller mehrstufi-
zugeordneten Programm während eines Teilablaufes gen Speichersysteme. Sie besteht hier, um ihren
benötigt Man bezeichnet diesen gerade aktiven Aufgaben gerecht zu werden, aus zwei sogenannten
Speicherbereich eines Prozesses als sein »Working-Set« 25 Tagfeldern TFi bzw. TF2. Das erste Tagfeld Γ1 ist
und versteht darunter die Menge von Programmseiten, dem Seitenpuffer SSP zugeordnet und enthält entspre-
die der Prozeß in einem festgelegten zurückliegenden chend der Anzahl der Speichermoduln MODk 32
Zeitintervall benötigt hat Bei mehreren, bezogen auf Tafeleinträge, die fortlaufend jeweils einem der
das Speichersystem simultan ablaufenden Prozessen Speichermoduln MODk zugeordnet sind, so daß diese
können jedoch Störungen in der Verteilung des 30 Einträge unmittelbar über die Moduladresse MA
Speicherplatzes im Seitenpuffer SSP auftreten, wenn adressiert werden können. Jeder Eintrag enthält die
Speicherseiten von Prozessen, die von verschiedenen Seitenadresse SP, der im Seitenpuffer SSP stehenden
Prozessoren Pi bearbeitet werden, in dem gleichen Speicherseite und ein Gültigkeitsbit V. Bei einer
Speichermodul MODk des CCD-Speichers liegen, da im Speicheranforderung wird mit der Moduladresse MA
Seitenpuffer SSP jeweils nur eine Speicherseite jedes 35 ein Eintrag des ersten Tagfeldes TFi ausgewählt und
Speichermoduls MODk gleichzeitig gehalten werden die dort aufgefundene Seitenadresse SPmit der Adresse
kann. der angeforderten Speicherseite verglichen. Im Fall
Um darauf beruhende Störungen im Ablauf von einer Übereinstimmung (Hit) kann die Speicheranforde-
Prozessen zu vermeiden, ist dem Seitenpuffer SSP ein rung aus dem Seitenpuffer SSPbedient werden. Diesem
kleiner zusätzlicher Überlauf puff er UP zugeordnet der 40 wird dann unmittelbar nur noch die Moduladresse MA
ebenfalls in MOS-Technik aufgebaut ist und aus dem und die Wortadresse WA über einen schematisch
Seitenpuffer SSP solche Speicherseiten aufnimmt die dargestellten Multiplexer zugeführt
aus diesem verdrängt werden, weil ein Prozessor zu Die Hit/Miss-Logik HML enthält außerdem ein
einer anderen, nicht an den Lese/Schreib-Stationen zweites, dem Überlaufpuffer UP zugeordnetes Tagfeld
gehaltenen Speicherseite zugreift. In bezug auf die 45 TZ Dessen Umfang hängt von der gewählten
hierarchische Anordnung des gesamten Speichersy- Speicherkapazität des Überlaufpuffers UP ab und
stems liegt dieser Überlauf puffer UP in der Ebene des beträgt in diesem Beispiel 128 Eintragszeilen, da für den
Seitenpuffers SSP. Er ist so ausgelegt daß er bei η Überlaufpuffer UP eine Kapazität von 128 Speichersei-
simultan in der datenverarbeitenden Anlage ablaufen- ten angenommen wurde.
den Prozessen die »Working-Sets« von η — \ Prozes- 50 Da in dem Überlaufpuffer UP keine strenge
sen aufnehmen kann. Dabei wird von dem ungünstigen Zuordnung zwischen den Einträgen und den Speicher-Fall
ausgegangen, daß ein Prozeß bereits den gesamten moduln MODk besteht, haben die Einträge im zweiten
Seitenpuffer SSPmit seinem »Working-Set« belegt Tagfeld TFI ein anderes Format Aufgrund einer
Zur näheren Erläuterung dieses Speichersystems ist Moduladresse MA und einer Seitenadresse SP läßt sich
in Fig.2 ein Blockschaltbild dargestellt, in dem 55 eine bestimmte Speicherseite des CCD-Speichers
insbesondere die Daten- und Adreßwege genauer adressieren bzw. identifizieren. Dieser Teil des Tagfelangegeben
sind. Um den Zusammenhang mit dem des TF2 ist assoziativ aufgebaut, um mit dem
erläuterten Prinzipschaltbild in F i g. 1 herzustellen, ist entsprechenden Teil der Adresse bei einer Speicherandort
ein Adreßregister AR angegeben, das das Format förderung eine der Eintragszeilen auszuwählen. Jeder
einer Speicheranforderung wiedergibt und z. B. 24 Bit- 60 Eintrag enthält darüber hinaus ein Adreßfeld für eine
stellen umfaßt Die ersten fünf Bitstellen sind die Überlaufpufferadresse UPA, die einen Eintrag im
Moduladresse MA, mit der einer der 32 Speichermoduln Überlaufpuffer UP bezeichnet, an dem die durch die
MODk des CCD-Speichers auswählbar ist Die nächsten Moduladresse MA und die Seitenadresse SP identifiacht
Bitstellen ergeben eine Seitenadresse SP, denn sie zierte Speicherseite steht Das Eintragsformat im
definieren eine Schleifenposition, d.h. sie erlauben 65 zweiten Tagfeld TFl umfaßt schließlich ebenfalls ein
innerhalb eines Speichermoduls MODk eine der 256 Gültigkeitsbit Vund außerdem ein Schreibbit W.
Speicherseiten auszuwählen. Die restlichen elf Bitstellen Diese Einträge werden in der Hit/Miss-Logik HML bilden die Wortadresse WA eines Datenwortes intern geprüft Bei einem durch das zweite Tagfeld TF2
Speicherseiten auszuwählen. Die restlichen elf Bitstellen Diese Einträge werden in der Hit/Miss-Logik HML bilden die Wortadresse WA eines Datenwortes intern geprüft Bei einem durch das zweite Tagfeld TF2
angezeigten Treffer (Hit) wird über einen weiteren, dem Überlaufpuffer UP zugeordneten Multiplexer mit Hilfe
der Überlaufpufferadresse UPA und der Wortadresse WA unmittelbar zum Überlaufpuffer zugegriffen.
Da der Überlauf puffer UP immer nur Speicherseiten enthält, die aus dem Seitenpuffer SSP ausgelagert
wurden, ist immer nur ein Treffer (Hit) über das erste oder das zweite Tagfeld TFi bzw. TFl möglich. Die
Speicheranforderungen werden dann entweder aus dem Seitenpuffer SSPoder dem Überlaufpuffer L/Pbedient,
d. h. Dateneingangsleitungen D/I über weitere in F i g. 2 angedeutete Multiplexer bei einem Schreibvorgang mit
dem Seitenpuffer SSP bzw. dem Überlaufpuffer UP verbunden oder bei einem Lesevorgang über einen von
zwei Demultiplexern Daten aus dem Seitenpuffer SSP bzw. dem Überlaufpuffer UP über Datenausgangsleitungen D/O ausgelesen.
Bisher wurde der Fall betrachtet, daß eine Speicheranforderung direkt entweder aus dem Seitenpuffer SSP
bzw. dem Überlauf puffer UP bedient werden kann, d. h. eines der beiden Tagfelder TFi bzw. TF2 der
Hit/Miss-Logik HML einen Treffer (Hit) zeigt. Dies ist der einfachste und zugleich der Normalfall bei einer
Speicheranforderung. Neben anderen Speicheranforderungen mit mehr oder minder umfangreichen Steuer-
vorgängen tritt ein allerdings sehr seltener Extremfall bei folgender Konstellation auf:
Bei einer Speicheranforderung ist die adressierte Speicherseite weder im Seitenpuffer SSP noch im
Überlaufpuffer t/P enthalten, beide Tagfelder TFi bzw.
TF2 zeigen daher Miss an. Zugleich darf die aus dem angeforderten Speichermodul MODk in den Seitenpuffer SSP ausgelagerte Speicherseite nicht überschrieben
werden, da sie von einem laufenden Prozeß benutzt ist Dies wird im ersten Tagfeld TFi durch Setzen des
Gültigkeitsbits V = »1« gekennzeichnet In diesem Fall wird normalerweise die im Seitenpuffer enthaltene
Speicherseite des angeforderten Speichermoduls in den Überlaufpuffer UP ausgelagert. Wenn dieser aber in
dem angenommenen Extremfall durch bereits ausgelagerte Speicherseiten vollständig belegt ist und alle diese
Einträge ebenfalls als benutzte Speicherseiten bezeichnet sind, d. h. ein aus den Bitstellen Wund Vgebildetes
Gültigkeitssignal V 2 = »1« gesetzt ist, muß aus dem Überlaufpuffer UP eine Speicherseite in den Hauptspeieher HSP ausgelagert werden. Dazu muß der anfordernde Prozessor Pi eine Speicherseite seines »Working-Set« freigeben. Falls diese im Überlaufpuffer UP
steht, läuft nun die Bereitstellung der angeforderten Speicherseite folgendermaßen ab:
Um die freigegebene Speicherseite in den Hauptspeicher HSP zurückschreiben zu können, muß der
zugehörige Speichermodul MODk ausgewählt, die zugehörigen Schleifenpositionen in die Lese/Schreib-Stationen gedreht, die Speicherseite in dem Überlauf-
puffer UP ausgewählt und in den CCD-Speicher zurückgeschrieben werden. Danach kann die den
Seitenpuffer SSP belegende Speicherseite im angeforderten Speichermodul MODk in den freigewordenen
Seitenrahmen im Überlaufpuffer UP ausgelagert werden. Anschließend wird die angeforderte Speicherseite
in die Lese/Schreib-Stationen gedreht und damit in den Seitenpuffer 5SP eingetragen. Schließlich mußte zum
Rückschreiben der freigegebenen Speicherseite aus dem Überlaufpuffer UPm den Hauptspeicher HSPeine
im Seitenpuffer liegende Speicherseite verdreht werden, die nach dem Rückschreiben wieder in den
Seitenpuffer SSPgeholt wird.
Diese beiden Extremfälle werden nachfolgend im einzelnen anhand von F i g. 3 erläutert, die im Prinzip
der Darstellung von F i g. 2 entspricht, jedoch im Detail zeigt, wie die Steuersignale für die geschilderten
Speichervorgänge erzeugt werden.
Die im Adreßregister AR gespeicherte Moduladresse MA wird über einen ersten Multiplexer MUXi zum
ersten Tagfeld TFi durchgeschaltet. An einem Vergleicher VG liegt dann der so adressierte Eintrag und die
Adresse der angeforderten Speicherseite SP an, sofern ein erstes Torglied Ti durch ein Steuersignal RSAE
durchgeschaltet ist, dessen Bedeutung noch erläutert wird. Gleichzeitig wird das zweite Tagfeld TF2 durch
die Moduladresse MA und die Seitenadresse SP assoziativ adressiert Aufgrund der Organisation des
Speichersystems können nie beide Tagfelder TFi und TF2 zugleich einen Treffer signalisieren. Je nach dem
welches einen Treffer mit dem invertierten Miss-Signal Mi bzw. M 2 signalisiert, wird entweder die angeforderte Moduladresse MA und die Wortadresse WA an
den mit dem Hauptspeicher HSP räumlich vereinigten Seitenpuffer SSPüber einen dritten Multiplexer MUX3
oder eine Überlaufpufferadresse UPA und die Wortadresse WA über einen vierten Multiplexer MUX4 an
den Überlaufpuffer L/Pdurchgeschaltet
Geben beide Tagfelder TFi und TF2 Miss-Signale Mi bzw. M 2 ab, so werden aus diesen und aus
Gültigkeitssignalen Vl und V 2, die den Zustand der Gültigkeitsbits V der beiden Tagfelder TFi bzw. TF2
wiedergeben, Steuersignale für die Speichersteuereinheit 57"erzeugt. Dazu werden die Signale Mi, M2 und
Vl in einem ersten UND-Glied UG1 zu einem ersten
Steuersignal A verknüpft, das einen Speichervorgang »Auslagern« steuert In einem weiteren UND-Glied
UG 2 wird das zweite Miss-Signal M 2 und das zweite Gültigkeitssignal V2 zu einem weiteren Steuersignal
RS verknüpft, das den Speichervorgang »Rückschreiben aus dem Überlaufpuffer UP«, steuert Dieses Signal
wird über einen invertierten Eingang an ein weiteres UND-Glied UG3 gelegt, dem außerdem das Steuersignal A für den Speichervorgang »Auslagern« zugeführt
wird. Damit wird ein weiteres Steuersignal AE zum Steuern des Vorganges »Auslagern und Einstellen«
erzeugt. Das Rückschreibe-Signal ÄS und das Auslager-Signal A werden außerdem einem vierten UND-Glied
UG 4 zugeführt, das ein Steuersignal RSAE zum Steuern des Speichervorganges »Rückschreiben, Auslagern, Einstellen« erzeugt Diese Steuersignale werden
sowohl der Speichersteuereinheit ST zugeführt, in der sie, wie noch zu erläutern sein wird, entsprechende
Steuervorgänge auslösen, als auch — wie dargestellt — den einzelnen Multiplexern MUXi bis MUX 4
zugeführt, um jeweils die entsprechenden Daten- bzw.
Adreßwege durchzuschalten.
Liegt an der Speichersteuereinheit 57" das Steuersignal E = Ä für den Speichervorgang »Einstellen« an, so
wird von dieser nur das Verdrehen des entsprechenden Speichermoduls im Hauptspeicher HSP über eine
Taktleitung Tangestoßen. Darüber hinaus wird durch
dieses Steuersignal die angeforderte Moduladresse MA, die angeforderte Speicherseitenadresse SP und eine
weitere Seitenadresse SPO an die Speichersteuereinheit Srüber den zweiten Multiplexer MUX2 durchgeschaltet Diese weitere Seitenadresse SPO wird auch beim
»Auslagern« dem über die angeforderte Moduladresse MA ausgewählten Eintrag im ersten Tagfeld TFl bei
Miss entnommen. Dabei wird mit dem zweiten Miss-Signal M2 ein dem zweiten Tagfeld TF2
zugeordnetes Torschaltglied 7"3 aufgesteuert. Damit wird das Tagfeld über seinen nichtassoziativen Teil mit
dem Inhalt eines angeschlossenen Adreßregisters ERZ adressiert das einen Ersetzungszeigereintrag enthält
Der dabei aufgefundene Eintrag wird in ein Ausgangsregister REG des zweiten Tagfeldes TF2 übernommen.
Aus diesem wird die Überlaufpufferadresse UPA über den vierten Multiplexer MUXA, gesteuert durch das
Ausgangssignal eines ODER-Gliedes OG, an den Überlaufpuffer UP durchgeschaltet. Die außerdem im
Ausgangsregister REG stehenden Einträge für eine Moduladresse M-4'und eine Seitenadresse SP' werden
nicht an den der Speichersteuereinheit STzugeordneten zweiten Multiplexer MUX2 durchgeschaltet, da zwei in
den Leitungsweg eingeschaltete Torglieder T2 und Γ3 gesperrt sind, die durch das Steuersignal RSAE für den
Speichervorgang »Rückschreiben, Auslagern und Einstellen« jeweils aktiviert werden.
Beim Speichervorgang »Auslagern und Einstellen« wird an den Hauptspeicher HSP die angeforderte
Moduladresse MA über den dritten Multiplexer MUX 3 durchgeschaltet. Damit ist die im Seitenpuffer SSP
stehende Speicherseite adressiert Um diese Speicherseite in den Überlaufpuffer UP auszulagern, wird dieser
mit der im Ausgangsregister REG stehenden Überlaufpufferadresse UPA über den vierten Multiplexer
MUX 4 adressiert Danach gibt die Speichersteuerung
ST an den Hauptspeicher HSP und den Überlauf puffer
UP sequentiell Anforderungen zum Übertrgagen der Datenworte dieser Speicherseite mit Hilfe von Wortadressen
WA' ab. Diese Adressensignale werden im Hauptspeicher HSP von einem Signal »Lesen Wort«
LW und im Überlaufpuffer UP von einem Signal »Schreiben Wort« SW begleitet Die so adressierten
Worte werden in den Überlaufpuffer übertragen. Nach Abschluß des Eintrages der Speicherseite wird von der
Speichersteuereinheit 57" der Schiebeakt über die Taktleitung T an den mit der Moduladresse MA
ausgewählten Speichermodul MODk gelegt und die mit der angeforderten Seitenadresse SP bezeichnete Seite
im Seitenpuffer SSPeingestellt
Zum Abschluß dieses Vorganges müssen die Einträge in den beiden Tagfeldern TFi und TF2 aktualisiert
werden. Dazu gibt die Speichersteuereinheit ST ein Fortschreibesignal UPD ab. Mit Hilfe dieses Signals
wird in das erste Tagfeld TFi die Seitenadresse SP der
angeforderten und nunmehr im Seitenpuffer SSP stehenden Speicherseite mit Hilfe einer dem ersten
Tagfeld TFi zugeordneten fünften Torschaltung 7"5
übernommen. Dieses Fortschreibesignal UPD aktiviert ebenfalls eine dem zweiten Tagfeld TF2 zugeordnete
sechste Torschaltung Γ6, über die die angeforderte Moduladresse MA und die Adresse der in den
Uberlauipufier ausgelagerten Speicherseite SPO in den
ausgewählten Eintrag im zweiten Tagfeld TF2 eingeschrieben wird-
Beim Speichervorgang »Rückschreiben« wird das zweite Tagfeld TF2 wiederum mit Hilfe der in dem ihm
zugeordneten Adreßregister ERZ stehenden Adresse nicht assoziativ adressiert Der ausgewählte Eintrag
wird in das Ausgangsregister REG übertragen. In diesem Fall sind die beiden Torglieder T2 und Γ3
durchgeschaltet, so daß die beiden Teileinträge mit der eingespeicherten Moduladresse AM'und der eingespeicherten
Seitenadresse SP'über den zweiten Multiplexer MUX2 an die Speichersteuereinheit ST durchgeschaltet
werden. Diese adressiert mit der eingespeicherten Moduladresse AM'den Hauptspeicher HSPund steuert
eine Übertragung der im Überlaufpuffer UP aufgrund der Überlaufpufferadresse UPA ausgewählten
Speicherseite in den Hauptspeicher analog wie oben.
Allerdings wird beim Einstellen des Hauptspeichers HSP auf die zurückzuschreibende Speicherseite aus dem Seitenpuffer SSP eine Speicherseite verdreht, die wieder eingestellt werden muß. Aus diesem Grund wird mit Hilfe des Steuersignals RSAE über den ersten Multiplexer MUXi mit der eingespeicherten Moduladresse MA' das erste Tagfeld TFl adressiert. Aus diesem wird die dort eingespeicherte Seitenadresse SPO' entnommen und über den zweiten Multiplexer MUX2 der Speichersteuereinheit ST zugeführt Diese steuert nach Abschluß des Rückschreibens einen Speichervorgang »Einstellen«, bei dem die verdrehte Speicherseite des durch die eingespeicherte Moduladresse MA' ausgewählten Speichermoduls wieder in den Seitenpuffer SSPzurückgedreht wird.
In den so freigewordenen Seitenrahmen (vorgesehener Speicherplatz für eine Speicherseite eines Speichermoduls) im Überlaufpuffer UP kann nun in der beschriebenen Weise eine andere im Seitenpuffer 5SP stehende Speicherseite mit der Seitenadresse SPO ausgelagert und eine dritte Speicherseite desselben, durch die angeforderte Moduladresse MA ausgewählten Speichermoduls in den Seitenpuffer eingestellt werden. Nach Abschluß dieser Vorgänge gibt die Speichersteuereinheit das Fortschreib-Signal UPD ab, so daß die beiden Tagfelder TFi und TF2 aktualisiert werden.
Allerdings wird beim Einstellen des Hauptspeichers HSP auf die zurückzuschreibende Speicherseite aus dem Seitenpuffer SSP eine Speicherseite verdreht, die wieder eingestellt werden muß. Aus diesem Grund wird mit Hilfe des Steuersignals RSAE über den ersten Multiplexer MUXi mit der eingespeicherten Moduladresse MA' das erste Tagfeld TFl adressiert. Aus diesem wird die dort eingespeicherte Seitenadresse SPO' entnommen und über den zweiten Multiplexer MUX2 der Speichersteuereinheit ST zugeführt Diese steuert nach Abschluß des Rückschreibens einen Speichervorgang »Einstellen«, bei dem die verdrehte Speicherseite des durch die eingespeicherte Moduladresse MA' ausgewählten Speichermoduls wieder in den Seitenpuffer SSPzurückgedreht wird.
In den so freigewordenen Seitenrahmen (vorgesehener Speicherplatz für eine Speicherseite eines Speichermoduls) im Überlaufpuffer UP kann nun in der beschriebenen Weise eine andere im Seitenpuffer 5SP stehende Speicherseite mit der Seitenadresse SPO ausgelagert und eine dritte Speicherseite desselben, durch die angeforderte Moduladresse MA ausgewählten Speichermoduls in den Seitenpuffer eingestellt werden. Nach Abschluß dieser Vorgänge gibt die Speichersteuereinheit das Fortschreib-Signal UPD ab, so daß die beiden Tagfelder TFi und TF2 aktualisiert werden.
Bisher wurde noch nicht erläutert, wie die Speichersteuereinheit ST die einzelnen Vorgänge zu steuern
vermag. Um dies nachzuholen, ist in Fig.4 ein Blockschaltbild der Speichersteuereinheit ST dargestellt
Sie enthält einen Mikroprozessor AfP mit einem ihm zugeordneten Mikroprogrammspeicher MPSP und
einen kleinen Zwischenspeicher ZSP, in den an festgelegten Adressen jeweils die bei den einzelnen
Vorgängen durchgeschalteten Teiladressen MA, SP, SPO bzw. MA', SP'und SPO'eingetragen werden. Die
Speichersteuereinheit ST enthält darüber hinaus eine Einrichtung zum Erzeugen der Schiebetakte auf der
Taktleitung T die aus einem Speicherregister S-REG, einem ladbaren Zähler ZA, einem beiden zugeordneten
Vergleicher S-VG sowie einem Taktgenerator TG besteht
In das Speicherregister S-REG und in den ladbaren Zähler ZA werden, gesteuert durch den Mikroprozessor
MP, die angeforderte Seitenadresse SP bzw. die zwischengespeicherte Seitenadresse SPO eingetragen.
Beide Registerinhalte werden durch den Vergleicher S-VG miteinander verglichen. Solange die beiden
Registerinhalte ungleich sind, gibt der Vergleicher S-VC ein Signa! ab, das den Taktgenerator TG anstößt
und damit externe und interne Takte erzeugt Dabei wird intern der Zählerstand des ladbaren Zählers ZA
laufend so lange erhöht bis die beiden Registerinhalte gleich sind. Bei den durch die Steuersignale AE bzw.
RSAE angestoßenen Speichervorgängen wird ein Adreßgenerator AG durch den Mikroprozessor AfP
aktiviert und zugleich vom letzteren die Signale »Lesen Wort« LWbTM. »Schreiben Wort« SWgeneriert
Die intern in der Speichersteuereinheit ST ablaufenden
Steuervorgänge seien im folgenden im Zusammenhang mit dem Speichervorgang »Rückschreiben, Auslagern,
Einstellen«, der durch das Steuersignal RSAE ausgelöst wird, beschrieben:
Der Mikroprozessor AiP entnimmt dabei aus dem
Der Mikroprozessor AiP entnimmt dabei aus dem
Zwischenspeicher ZSP die eingespeicherten Werte für die im zweiten Tagfeld TF2 gespeicherte Moduladresse
MA' und die Seitenadresse SP" sowie die im ersten Tagfeld gespeicherte Seitenadresse SPO'. Die gespeicherte Moduladresse M\' wird an den Hauptspeicher
HSP ausgegeben. Das Steuerregister S-REG wird mit der im zweiten Tagfeld zwischengespeicherten Seitenadresse S/" und der ladbare Zähler mit der im ersten
Tagfeld zwischengespeicherten Seitenadresse SPO' geladea Es wird so lange ein Takt erzeugt, als der Inhalt
der beiden Register ungleich ist Bei Gleichheit der Registerinhalte gibt der Vergleicher S-VG ein Ende-Signal an den Mikroprozessor MP ab, das über einen
Inverter / auch dem Taktgenerator TG zugeführt wird.
Dadurch wird letzterer desaktiviert
Aufgrund des Ende-'Jignals R startet der Mikroprozessor MP den Adreßgenerator AG durch ein
Startsignal STA und gibt zugleich an den Hauptspeicher HSP das Signal »Schreiben Wort« SW bzw. an den
Oberlaufpuffer UP das Signal »Lesen Wort« LW ab. Der Adreßgenerator AG erzeugt fortlaufend die
Wortadressen WA' für jedes aus dem Überlaufpuffer UP in den Hauptspeicher HSP zu übertragende
Datenwort der zurückzuschreibenden Speicherseite. Nach Abschluß der Übertragung dieser Speicherseite
gibt der Adreßgenerator an den Mikroprozessor MP ebenfalls ein Ende-Signal R'ab.
Daraufhin wird das Steuerregister S-REG mit der
Seitenadresse SPO'der beim Rückschreiben verdrehten
Speicherseite geladen. Über die Taktleitung Γ wird dem mit der Moduladresse MA' ausgewählten Speichermodul im Hauptspeicher HSP so lange Schiebetakte
zugeführt, bis die vorher verdrehte Speicherseite mit der Seitenadresse SPO'wieder im Seitenpuffer SPsteht
Gleichzeitig mit dem vom Adreßgenerator AG abgegebenen Ende-Signal R' erfolgt ein neuer Start des
Adreßgenerators, da aus dem durch die angeforderten Moduladresse MA adressierten Speichermodul die
Speicherseite mit der im Tagfeld TF \ enthaltenen Seitenadresse SPO in den freigewordenen Seitenrahmen im Überlauf puffer UP mit der Adresse UPA'
geschrieben werden kann. Dazu wird von dem Mikroprozessor MP an den Hauptspeicher das Signal
»Lesen Wort« L Wund an den Überlaufpuffer das Signal
»Schreiben Wort« SWgelegt
Sobald am Mikroprozessor AiPbeide Ende-Signale R
und R' anliegen, wird das Steuerregister S-REG mit der
angeforderten Seitenadresse SP und der ladbare Zähler ZA mit der im ersten Tagfeld TFi stehenden
Seitenadresse SPO geladen. Der Taktgenerator TG läuft so lange bis die Inhalte beider Register gleich sind,
d. h. die angeforderte Speichersehe im ausgewählten Speichermodul eingestellt ist Danach gibt der Mikroprozessor MP das Fortschreibe-Signal UPD ab. Damit
und mit der vom Mikroprozessor MP an das Tagfeld TF2 durchgeschaleten Seitenadresse SPO wird dieses
Tagfeld auf neuesten Stand gebracht Außerdem wird das Ersetzungsregister ERZ mit dem Fortschreibe-Signal UPD weitergeschaltet und schließlich in das erste
Tagfeld TFX die angeforderte Seitenadresse SP an der
mit der Moduladresse MA adressierten Eintragszeile eingetragen.
Claims (6)
1. Hierarchisch aufgebautes, mehrstufiges Speichersystem einer datenverarbeitenden Anlage,
in der simultan mehrere Prozesse unterschiedlicher
Programme ablaufen, mit einem modularen, aus Ladungsverschiebespeichern aufgebauten Hauptspeicher als der niedersten Hierarchiestufe, dem als
nachgeordnete Hierarchiestufe ein Seitenpuffer zugeordnet ist, in dem jedem Speichermodul des
Hauptspeichers ein Speicherbereich für eine Speicherseite dadurch fest zugeordnet ist, daß die
speichernd ausgebildeten Lese/Schreib-Stationen aller Speicherschleifen selbst den Seitenpuffer
bilden, alle Speicherschleifen innerhalb eines Speichermoduls synchron verschoben werden und
ihre homologen Schleifenpositionen eine Speicherseite aufnehmen, gekennzeichnet durch die
Kombination folgender Merkmale:
20
1. Dem Seitenpuffer (SSP) ist als weiterer Pufferspeicher ein Übelaufpuffer (UP)m\\. einer
Speicherkapazität von η — 1 aktiven Speicherbereichen bei η simultan ablaufenden Prozessen
derart zugeordnet, daß
2. bei einer Anforderung an eine nicht im Seitenpuffer stehende Speicherseite, die an
deren Stelle stehende Speicherseite in den Überlaufpuffer auszulagern und der dann freie
Seitenrahmen im Seitenpuffer mit der fehlenden Speicherseite zu belegen ist und daß
3. erneute Speicheranforderungen aus dem aktiven Speicherbereich eines der η simultan
ablaufenden Prozesse parallel entweder aus dem Seitenpuffer oder dem Überlaufpuffer
bedient werden.
2. Hierarchisch aufgebautes mehrstufiges Speichersystem einer datenverarbeitenden Anlage
nach Anspruch 1, dadurch gekennzeichnet, daß der Hauptspeicher (HSP) als CCD (Charge Coupled
Device)-Speicher mit einer Mehrzahl von Speichermoduln (MODk) aufgebaut ist, in denen den
Lese/Schreib-Stationen aller CCD-Schleifen jeweils eine Speicherzelle in MOS-Technik zugeordnet ist,
daß die Gesamtheit dieser Speicherzellen den Seitenpuffer (SSP) und daher diese mit dem
Hauptspeicher eine räumliche Einheit bildet und daß der Überlaufpuffer (UP) analog zum Seitenpuffer
ebenfalls in MOS-Technik aufgebaut is».
3. Hierarchisch aufgebautes, mehrstufiges Speichersystem einer datenverarbeitenden Anlage
nach Anspruch 1 oder 2 mit einer Speicherverwaltung zum Steuern der Speichervorgänge, an die ein
tätiger Prozessor Speicheranforderungen unter Angabe einer vollständigen Speicheradresse richtet,
dadurch gekennzeichnet, daß diese Speicherverwaltung eine sogenannte Hit/Miss-Logik (HML) mit je
einem dem Hauptspeicher (HSP) bzw. dem Überlaufpuffer (UP) zugeordneten sogenannten Tagfeld
(TFl bzw. TF2) enthält, in denen anhand von
Moduladressen (MA) ein vollständiges Abbild des aktuellen Inhalts des Seitenpuffers (SSP) bzw.
anhand von Moduladressen (MA) und Seitenadressen (SP) ein vollständiges Abbild des Überlaufpuf-
fers (UP) enthalten ist, so daß durch Vergleichen mit Teilformaten der Adresse einer Speicheranforderung feststellbar ist, ob diese aus einem dieser
Teilspeicher bedient werden kann (Hit) oder nicht (Miss).
4. Hierarchisch aufgebauter, mehrstufiges Speichersystem nach Anspruch 3. dadurch gekennzeichnet, daß das erste Tagfeld (TFi) derart
aufgebaut ist, daß seine k Eintragszeilen fortlaufend jeweils einem der Speichermoduln (MODk) des
CCD-Speichers fest zugeordnet sind, so daß eine Eintragszeile direkt über einer Moduladresse (MA)
adressierbar ist und daß das zweite Tagfeld (TF2) in jedem Eintrag zum assoziativen Adressieren die
vollständige Adresse (MA und SP) einer Speiciierseite und daneben die Adresse (UPA) eines
Seitenrahmens im Überlaufpuffer (UP) enthält, in den die betreffende Speicherseite ausgelagert ist, so
daß der Überlaufpuffer bei einem Hit mit dieser Überlaufpufferadresse adressierbar ist
5. Hierarchisch aufgebautes, mehrstufiges Speichersystem nach Anspruch 3 oder 4, dadurch
gekennzeichnet, daß die Eintragszeilen in beiden Tagfeldern (TF \ bzw. TF2) jeweils ein Gültigkeitsbit (V) im Überlaufpuffer (UP) darüber hinaus die
Eintragszeilen im Tagfeld (TF2) Schreibbits (W) aufweisen, deren Zustand angibt, ob der betreffende
Eintrag gültig ist, d. h. die zugehörige Speicherseite
im Seitenpuffer (SSP) bzw. im Überlaufpuffer (UP) nicht überschrieben werden darf.
6. Verfahren zum Betreiben eines hierarchisch aufgebauten, mehrstufigen Speichersystems nach
Anspruch 5, dadurch gekennzeichnet, daß bei einer Speicheranforderung eines Prozessors (Pi) mit Hilfe
der vollständigen Adresse (MA und SP) der angeforderten Speicherseite durch Vergleichen mit
den Einträgen in beiden Tagfeldern (TFi bzw. TF2) »Hit« oder »Miss« festgestellt wird, daß bei »Miss«
in beiden Tagfeldern aus dabei abgegebenen Miss-Signalen (Mi und Af 2) und einem vom
Zustand des Gültigkeitsbits (V) im Tagfeld (TFl) abgeleiteten Gültigkeits-Signal (Vi) ein Steuersignal (A) für einen Speichervorgang »Auslagern«
einer Speicherseite aus dem Seitenpuffer (SSP) in den Überlaufpuffer (UP) abgeleitet wird, daß
zugleich ein weiteres Steuersignal (RS) für einen Speichervorgang »Rückschreiben« einer Speicherseite aus dem Überlaufpuffer in den Hauptspeicher
(HSP) erzeugt wird, wenn neben dem zweiten Miss-Signal (M 2) ein zweites, aus den Gültigkeitsbits (V) und den Schreibbits (W) abgeleitetes
Gültigkeits-Signal (V2) für gültige Einträge im zweiten Tagfeld (TF2) auftritt, daß beim Fehlen
dieses Steuersignals (RS) aus dem ersten Steuersignal (A) ein weiteres Steuersignal (AE) für einen
Speichervorgang »Auslagern und Einstellen« einer Speicherseite aus dem Seitenpuffer bzw. in den
Seitenpuffer anstelle der ausgelagerten Speicherseite erzeugt wird, daß aus dem Steuersignal (RS) für
den Speichervorgang »Rückschreiben« und dem Steuersignal (A) für den Speichervorgang »Auslagern« ein weiteres Steuersignal (RSAE) für einen
Speichervorgang »Rückschreiben, Auslagern, Einstellen« abgeleitet wird und daß mit diesen
Steuersignalen von der Speichersteuereinheit (ST) die notwendigen Speichervorgänge allein aufgrund
des Zustandes in den beiden Tagfeldern (TFi, TFT) ausgelöst werden.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2543589A DE2543589C2 (de) | 1975-09-30 | 1975-09-30 | Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen Betrieb |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2543589A DE2543589C2 (de) | 1975-09-30 | 1975-09-30 | Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen Betrieb |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2543589A1 DE2543589A1 (de) | 1977-03-31 |
DE2543589C2 true DE2543589C2 (de) | 1982-11-04 |
Family
ID=5957840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2543589A Expired DE2543589C2 (de) | 1975-09-30 | 1975-09-30 | Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen Betrieb |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2543589C2 (de) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3699533A (en) * | 1970-10-29 | 1972-10-17 | Rca Corp | Memory system including buffer memories |
US3737881A (en) * | 1972-04-13 | 1973-06-05 | Ibm | Implementation of the least recently used (lru) algorithm using magnetic bubble domains |
-
1975
- 1975-09-30 DE DE2543589A patent/DE2543589C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2543589A1 (de) | 1977-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2415900C3 (de) | Rechenautomat mit mehreren mit je einem Vorratsspeicher versehenen Rechenanlagen | |
DE1966633C3 (de) | Datenverarbeitungsanlage mit überlappter Arbeitsweise bei Verwendung eines Haupt- und Pufferspeichers | |
EP0013737B1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2547488C2 (de) | Mikroprogrammierte Datenverarbeitungsanlage | |
DE69224084T2 (de) | Rechneranordnung mit Mehrfachpufferdatencachespeicher und Verfahren dafür | |
CH627580A5 (de) | Austauschanordnung zur bereitstellung von austauschadressen fuer den betrieb eines pufferspeichers in einer speicherhierarchie. | |
DE2231146A1 (de) | Verfahren zum steuern der datenuebertragung in einer datenverarbeitungsanlage und anlage zur durchfuehrung dieses verfahrens | |
DE2630323A1 (de) | Datenspeichereinrichtung | |
DE2617408B2 (de) | Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie | |
DE2154106A1 (de) | Arbeitsspeicherwerk | |
DE4022885C2 (de) | Verfahren zum Verschieben von Speicherbereichen und Hierarchie-Speichersystem | |
DE2252489A1 (de) | Speichersystem | |
EP0651536A2 (de) | Verfahren zur Wiederherstellung einer vorgegebenen Reihenfolge für ATM-Zellen | |
DE4213073A1 (de) | Cache-steuergeraet und verfahren zur auswahl eines pfades eines cache-verzeichnisses bei einem zeilen-fuell-zyklus | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE4114053A1 (de) | Computersystem mit cachespeicher | |
DE2543589C2 (de) | Hierarchisch aufgebautes, mehrstufiges Speichersystem und Verfahren zu dessen Betrieb | |
EP0012207B1 (de) | Speicherhierarchie mit Ladungsverschiebungsspeicher | |
DE19957612A1 (de) | Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen | |
DE69030368T2 (de) | Tandem-Cache-Speicher | |
DE69808700T2 (de) | Cachespeichervorrichtung | |
DE2355814C2 (de) | Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung | |
DE2542845C3 (de) | ||
DE10310340A1 (de) | Datenzugriffsverfahren und System mit verteiltem, gemeinsam genutzten Speicher | |
DE3853933T2 (de) | Unterbrechbares Cache-Laden. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |