DE2506117C2 - Adreßumsetzungseinrichtung zur Bildung einer absoluten Adresse - Google Patents
Adreßumsetzungseinrichtung zur Bildung einer absoluten AdresseInfo
- Publication number
- DE2506117C2 DE2506117C2 DE2506117A DE2506117A DE2506117C2 DE 2506117 C2 DE2506117 C2 DE 2506117C2 DE 2506117 A DE2506117 A DE 2506117A DE 2506117 A DE2506117 A DE 2506117A DE 2506117 C2 DE2506117 C2 DE 2506117C2
- Authority
- DE
- Germany
- Prior art keywords
- associative
- address
- word
- register
- registers
- 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1036—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
-
- 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/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
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
dadurch gekennzeichnet, daß
die Register {AR Wi-AR 15) in Reihenfolge hintereinander angeordnet sind,
2C eine Leseeinrichtung
2C eine Leseeinrichtung
die assoziativen Worte aus dem Speicher in das Register der höchsten Stelle nacheinander herausliest und
eine Schiebeeinrichtung die assoziativen Worte aus einem Register höherer Ordnung zu einem Register
niedrigerer Ordnung nacheinander verschiebt,
wobei die erste Steuereinrichtung
das die entsprechende virtuelle Seitenadresse enthaltende assoziative Wort von einem Register niedriger Ordnung zum Register der höchsten Stelle überträgt und
das die entsprechende virtuelle Seitenadresse enthaltende assoziative Wort von einem Register niedriger Ordnung zum Register der höchsten Stelle überträgt und
die Schiebeeinrichtung in der Weise betätigt, daß assoziative Worte zum Register der nächstniedrigeren
Stelle geschoben werden, die vorher in einem Register höherer Ordnung afc dem der genannten niedrigeren
Ordnung gespeichert waren, von dem aus das assoziative Wort übertragen wurde.
2. Adreßumsetzungsemrichtung nach Anspruch l,gekennzeichnetdurcheinenSpeicherzurSpeicherung der Wortadresse von der virtuellen Adresse im Speicheradressenregister.
2. Adreßumsetzungsemrichtung nach Anspruch l,gekennzeichnetdurcheinenSpeicherzurSpeicherung der Wortadresse von der virtuellen Adresse im Speicheradressenregister.
3. Adreßirmsetzungseinrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß jedes assoziative
Wort einen Benutzungskode enthält, und daß die Schiebeeinrichtung ein einen vorbestimmten Benutzungskode enthaltendes assoziatives Wort in eine Position einer niedrigeren Ordnung zu verschieben vermag, die
vorher von einem assoziativen Wort eingenommen wurde, welches eine virtuelle Seitenadresse entsprechend
der virtuellen Adresse des Arbeitsprogramms enthält.
4. Adreßumsetzungseinrichtung nach einem der Ansprüche 1 bis 3, gekennzeichnet durch
eine zweite Steuereinrichtung, die anspricht, wenn die Vergleichseinrichtung eine Nichtübereinstimmung
zwischen der virtuellen Seitenadresse der virtuellen Adresse des Arbeitsprogramms und der virtuellen
Seitenadresse in den Registern feststellt, und selektiv eine Einschreibeinrichtung betätig?., am sequentiell
assoziative Worte aus allen Registern, mit Ausnahme des Registers der niedrigsten Ordnung, in den Speicher
einzuschreiben,
die weiterhin die Leseeinrichtung betätigt, im sequentiell zusätzliche assoziative Worte aus dem Speicher in
das Register der höchsten Ordnung einzulesen, wobei die Vergleichseinrichtung die virtuelle Seitenadresse
der zusätzlichen assoziativen Worte mit der virtuellen Seitenadresse der virtuellen Adresse des Arbeitsprogramms zu vergleichen vermag,
wobei die zweite Steuereinrichtung weiterhin auf die Vergleichseinrichtung anspricht und die Einschreibeeinrichtung
betätigt, um assoziative Worte zum Speicher zurück einzuschreiben, nur mit Ausnahme
des assoziativen Worts, welches die virtuelle Seitenadresse entsprechend der virtuellen Adresse des Arbeits-Programms
enthält,
wobei die zweite Steuereinrichtung daraufhin die Leseeinrichtung betätigt, um die ursprünglichen assoziativen
Worte sequentiell in die Register zurück einzuiesen, und die Schiebeeinrichtung betätigt, um das assoziative
Wort mit der virtuellen Seitenadresse, welche der virtuellen Adresse im Arbeitsprogramm entspricht,
in das Register der höchsten Ordnung zu verschieben, wodurch das assoziative Wort, welches die der virtuellen
Adresse des Arbeitsprogramms entsprechende virtuelle Seitenadresse enthält, daraufhin im Register der
höchsten Ordnung gespeichert wird, die mit Ausnahme des Registers niedrigster Ordnung vorher in allen
Registern enthaltenen assoziativen Worte danach der Reihe nach in den auf das Register der höchsten Ordnung
folgenden Registern enthalten sind und das vorher im Register der niedrigsten Ordnung enthaltene
assoziative Wort danach im Speicher in einer Stelle höherer Ordnung als die zurück eingelesenen assoziativen
Worte gespeichert wird.
Die Erfindung bezieht sich auf eine Adreßumsetzungseinrichtung nach dem Oberbegriff des Patentanspruches
1.
Bisher wurde eine »virtuelle Adressierung« unter Verwendung von Software durchgeführt, um einen Zugriff
zu Daten und Informationen aus einem zentralen Speicher eines elektronischen Rechners zu erhallen. Der Aus-
f- druck »virtuelle Adressierung« wird häufig zur Bezeichnung einer Zugriffsart in einem zentralen Speicher
", benutzt bei welcher die absolute Adresse der aus dem zentralen Speicher herauszugreifenden Informationen
oder Daten durch.Kombination von mindestens zwei anderen Adressen gebildet wird-.Beispielsweisekann die
absolute Adresse unter Verwendung einer Programmadresse in Verbindung mit einer Adresse gebildet werden,
welche den Bereich des zentralen Speichers bezeichnet aus dem die gewünschten,Informationen herausgeholt
werden sollen.
Ein mit dem bisherigen Adressierverfahren unter Verwendung von Software zusammenhängendes.Problem
besteht darin, daß üblicherweise benutzte Informationen und Daten außerhalb der Feldlänge eines Arbeitsprogramms in der Weise herausgegriffen werden müssen, daß die absolute Adresse der Information jedesmal
wieder zusammengesetzt werden muß, wenn die Information herausgegriffen werden soll.
Aus dem DE-Buch »Rechnerstrukturen«, Vorträge des Informatik-Symposiums der IBM Deutschland, WiId-
bad 1973, R. Oldenboürg Verlag München Wien, 1974, Seiten 224 bis 260, ist eine Adreßumsetzungseinrichtung
^, der eingangs genannten Art bekannt Bei dieser bekannten Adreßumsetzungseinrichtung besteht keine
1? Rangordnung zwischen den einzelnen Registem.,Die in denRegistern enthaltenen Daten werden daher solange
in diesen gespeichert, bis ein Zähler auf das betreffende Register zeigt und dann eine Ersetzung deslnhalts die-'s;,
ses Registers erfolgt Dabei ist unmaßgeblich, wie häufig die zugeordnete virtuelle Adresse vorher benutzt
f wurde. Somit kann der Fall eintreten, daß eine virtuelle Adresse ersetzt wird, obwohl diese unmittelbar vorher
-1^ gegebenenfalls sogar mehrfach benutzt wurde. Der ErsetzungsaJgorithmus richtet sich hier somit nicht nach der
jg Häufigkeit der Benutzung der gespeicherten virtuellen Adressen und auch nicht danach, wann jeweils die letzte
"!?, Benutzung erfolgte, sondern die Ersetzung erfolgt in einer starren Reihenfolge bezüglich .der die virtuellen
H Adressen enthaltenden Register. Mit dieser bekannten Adreßumsetzungseinrichtung ist es swnit nicht möglich,
§j die Inhalte der Register ständig auf den a^uesteir Stand zu bringen, um auf die am meisten benutzten Adressen
Μ Bezug zu nehmen.
s^ Es ist daher Aufgabe der vorliegenden Erfindung, eine Adreßumsetzungseinrichtung nach dem Oberbegriff
'φ des Patentanspruchs I zu schaffen, bei der die Inhalte der assoziativen Register ständig auf den neuesten Stand
g gebracht sind, so daß auf die am meisten benutzten Adressen Bezug genommen werden kann.
0 Diese Aufgabe wird bei einer Adreßumsetzungseinrichtung nach dem Oberbegriff des Patentanspruches 1
1 erfindungsgemäß durch die in dessen kennzeichnendem Teil enthaltenen Merkmale gelöst.
ft Vorteilhafte Weiterbildungen der Erfindung ergeben sich insbesondere aus den Patentansprüchen 2 bis 4.
fr* Di« Erfindung ermöglicht eine Adreßumsetzungseinrichtung, bei welcher die absoluten Adressen unter Ver-
wendung mehrerer Speicherregister herausgegriffen werden, wobei die Inhalte dieser Speicherregister ständig
auf den neuesten Stand gebracht werden, um auf die am meisten benutzten Adressen Bezug zu nehmen. Seiten
aus einem Speicher können unter Verwendung einer Seitentabelle herausgegriffen werden, die zumindest teilweise
in vorbestimmten assoziativen Registern enthalten ist während ihr restlicher Teil über eine Zeilentabelle
H zugreifbar ist Bei der erfindungsgemäßen Einrichtung werden die Adressen in einer Reihenfolge untersucht,
H bei welcher die am meisten benutzten Adressen zuerst geprüft und dann, nach Durchsicht einer vorbestimmten
p Zahl derartiger Adressen, weitere Adressen zur Prüfung eingeführt werden können. Wenn eine solche weitere
P: Adresse eine zu benutzende Adresse darstellt, wird sie anschließend in eine Position großen Vorranges
C; gebracht.
; r- Es sini mehrere assoziative Register fortlaufend so angeordnet, daß sie assoziative Worte enthalten, die beim
'*[ Zugriff durch ein Arbeitsprogramm zur Bildung einer absoluten Adresse für die aus dem Zentralspeicher her-
;| auszugreifenden Daten oder Informationen benutzt werden. Falls eine Adresse in einem der assoziativen
$ Register einer durch ein Arbeitsprogramm gesuchten Adresse entspricht, wird die absolute Adresse der gesuch-
;| ten Daten gebildet, und die Daten können aus dem Speicher herausgegriffen werden. Falls die assoziativen
U Registerjedoch die richtige Adresse nicht enthalten, werden weitere Adressen vom Speicherdurch die assoziati-
Il ven Register durchgeführt, bis die richtige Adresse gefunden worden ist.
ijf Die am vorrangigsten benutzten Adressen sind so in assoziativen Registern höherer Randordnung enthalten.
j;: Ein in den assoziativen Registern oder im Speicher befindliches assoziatives Wort wird in eine verhältnismäßig
ρ hohe Vorrangstellung in den assoziativen Registern gebracht. Wenn ein vorher nicht in einem Register enthalte-
|| nes Wort 'm Zentrafc|ieicher aufgefunden wird, dann wird dieses Wort danach im assoziativen Register für die
|| spätere Benutzung in einer Prioritätsposition gespeichert, während Worte niedrigerer Priorität um eine Priori-
|| tätsstuf«; abgestuft werden. Falls ein Wort in eine Position höherer Priorität verschoben wurde, wird die an der
!j absoluten Adresse dieses verschobenen Worts bestehende Lücke durch Verschiebung anderer Worte ausgefüllt.
Ij Die in der Beschreibung in Verbindung mit dem Herausgreifen aus dem Speicher mittels einer Adresse
§ benutzten Ausdrücke »Informationen« und/oder »Daten« sollen in ihrem weitesten Sinn verstanden werden
5iä und Unterprogramme und andere Arten von in einem Rechnerspeicher gespeichertem Material umfassen.
H Diese Ausdrücke sollen sich mithin nicht auf das von einem Rechner verarbeitete Material beschränken, son-
% dem auch zentrales Material zur Beeinflussung des Rechnerbetriebs beinhalten. Der in der Beschreibung
£ benutzte Ausdruck »Arbeitsprogramm« soll sich auf alle dem Rechner eingegebenen Befehle oder Anweisun-
■i gen beziehen, einschließlich der im Speicher zurückgehaltenen sowie der durch eine Eingabevorrichtung zur
Beeinflussung einer spezfeilen Arbeit eingegebenen Befehle oder Anweisungen.
Im folgenden ist eine bevorzugte Ausführungsform der Erfindung anhand der Zeichnung näher srlautert Es
Fig. 1 ein Flußdiagramm zur Erläuterung des Konzepts der virtuellen Adresse,
Fig. 2 eine graphische Darstellung des Formats der assoziativen Worte,
Fig. 3 ein Flußdiagramm zur Darstellung einer Art von Informationen von absoluten Adressen für den
Speicherzugriff, ■
Fig. 4 und S Blockschaltbilder einer bevorzugten Ausfuhrungsform,
Fig. 4 und S Blockschaltbilder einer bevorzugten Ausfuhrungsform,
Fig. 6 ein Flußdiagramm, welches die Lese- und Einschreibfunktionen der Einrichtung gemäß den Fig. 4
und S veranschaulicht; und
Fig. 7 eine graphische Darstellung bestimmter Wortformate. ■'.,
Wie speziell aus Fig. 1 hervorgeht, wird eine absolute Adresse für den Zugriff zu einem Speicher durch eine i
Instruktion von einem Arbeitsprogramm gebildet. Diese Adresse, die als »virtuelle Adresse« bezeichnet werden ■
kann, enthält eine virtuelle Seitenadresse und eine virtuelle Wortadresse. Eine Seitentabelle, die eine Anzahl .
von assoziativen Worten enthält, wird zum Vergleichen und Suchen des assoziativen Worts benutzt, welches der S
betreffenden virtuellen Seitenadresse zugeordnet ist. Wenn dieses assoziative Wort aufgefunden worden ist, ["·■
wird eine absolute Seitenadresse geliefert, die in Kombination mit der Wortadresse von der virtuellen Adresse ä
eine absolute Adresse für den Zugriff zu einer bestimmten Position im Speicher bildet. Wie noch nähererläutert Ij
werden wird, ist die Seitentabelle zumindest teilweise in mehreren Registern gespeichert, z. B. in sechzehn asso- f
ziativen Registern, um durch das Programm leicht zugreifbar zu sein. Der restliche Teil der Seitentabelle ist im
Speicher in einer vorbestimmten, im folgenden als Zeilentabelle bezeichneten Position gespeichert, wie dies
noch näher erläutert werden wird. Vorzugsweise enthält zumindest eines der assoziativen Worte nahe des Endes
der Seitentabelle einen Benutzungskode, welcher anzeigt, daß es sich um das letzte assoziative Wort der Tabelle
handelt. Eines der assoziativen Worte enthält mithin einen »Ende-der-Tabelle«-Kode EOT. j
Zur Erläuterung sei im folgenden angenommen, daß die im Speicher des Rechners enthaltenen Daten in
»Seiten« angeordnet sind und daß die Seitengröße aus Veranschaulichungsgründen jeweils einem von zwei Formaten
entsprechen kann, nämlich einer großen Seite und einer kleinen Seite. Weiterhin sei angenommen, daß
eine große Seite 65 536 Worte zu je 64 Bits und eine kleine Seite 512 Worte zu je 64 Bits enthält. Ersichtlicherweise
muß daher ein Speicher mit einer Million Worte entweder 16 große Blätter oder nahezu 2000 kleine Blätter
enthalten. Weiterhin ist ersichtlich, daß bei einem solchen Speicher mit einer Million Worte 2000 Blätter
unabhängig durch eine 11-Bit-Absolut-Seitenadresse erfaßt werden können, während ein Speicher mit 16 großen
Seiten durch eine 4-Bit-Absolut-Seitenadresse zugreifbar ist. Weilerhin ist ersichtlich, daß zum Herausgrcifen
eines Einzel worts aus einer großen Seite mit mehr als 65 000 Worten eine 16-Bit-Wortadresse erforderlich ist,
wahrend für das Herausgreifen eines Einzelworts aus einer kleinen Seite mit 512 Worten nur eine 9-Bit-Wortadresse
nötig ist.
Im Hinblick auf die vorstehenden Erläuterungen sei nunmehr auf Fig. 2 verwiesen, welche das Absolutwortformat
für eine große und eine kleine Seite veranschaulicht. Gemäß dem oberen Teil von Fig. 2, welcher das
assoziative Wortformat einer kleinen Seite zeigt, ist ein aus 64 Bits bestehendes assoziatives Wort vorgesehen,
bei dem die Bits 0 bis 3 nicht benutzt werden, das Bit 4 ein Kennzeichenbit ist, die Bits 5 bis 15 die absolute '
Seitenadresse enthalten, die Bits 16 bis 18 einen Benutzungskode beinhalten, die Bits 19 bis 30 einen Verriege- '
lungs- bzw. Sperrkode enthalten und die Bits 31 bis 63 eine virtuelle Seitenadresse beinhalten. Gemäß dem
unteren Teil von F i g. 2 besteht das assoziative Wortformat für eine große Seite gleichfalls aus einem Wort mit
64 Bits, dessen Bits 0 bis 3 nicht benutzt werden, während Bit 4 einen Kennzeichenkode darstellt, Bits 5 bis 8
eine absolute Seitenadresse enthalten, die Bits 9 bis 15 nicht benutzt werden, Bits 16 bis 18 einen Benutzungskode enthalten, die Bits 19 bis 30 einen Verriegelungs- oder Sperrkode beinhalten, die Bits 31 bis 56 eine
virtuciie SciicnaufcSse enthalten und die Bits 57 bis 63 nicht benutzt werden.
Die Ableitung der absoluten Adresse läßt sich anhand von Fig. 3 erläutern, in welcher das eine absolute Seitenadresse, einen Benutzungskode, einen Sperrkode und eine virtuelle Seitenadresse enthaltende assoziative Wort durch eine Seitentabelle geliefert wird, während eine virtuelle Adresse gleichfalls vom Arbeitsprogramm (Fig. 1) gebildet wird. Die virtuelle Seitenadresse eines assoziativen Worts wird mit der Adresse einer virtuellen Adresse (z. B. vom Arbeitsprogramm) verglichen, und wenn eine Übereinstimmung auftritt, wird die absolute Seitenadresse vom assoziativen Wort zum Speicheradressenregister übertragen, während eine Wortadresse von der virtuellen Adresse zum Speicheradressenregister für den Zugriff zum Speicher überführt wird. Gemäß Fig. 3 wird im Fall einer kleinen Seite die in den Bits 31 bis 63 des assoziativen Worts enthaltene virtuelle Seitenadresse mit einer in den Bits 16 bis 48 der virtuellen Adresse enthaltenen Adresse verglichen, und wenn Übereinstimmung oder Koinzidenz vorliegt, wird eine absolute Seitenadresse an den Bits 5 bis 15 des assoziativen Worts zu den Bitpositionen 38 bis 48 des Speicheradressenregisters übertragen, während eine in den Bits 49 bis 54 der virtuellen Adresse enthaltene Wortadresse zum Speicheradressenregister übertragen und in diesem in den Bitpositionen 49 bis 54 gespeichert wird. Im Fall eines großen Worts wird eine in den Bitpositionen 31 bis ςΊ des assoziativen Worts enthaltene virtuelle Wortadresse mit einer Adresse in den Bitpositionen 16 bis 41 der virtuellen Adresse verglichen, und im Fall von Koinzidenz wird die in den Bits 5 bis 8 des assoziativen Worts enthaltene absolute Seitenadresse zu den Bitpositionen 38 bis 41 des Speicheradressenregisters übertragen, während eine in den Bitpositionen 42 bis 54 der virtuellen Adresse enthaltene Wortadresse zum Speicheradressenregister in dessen Bitpositionen 42 bis 54 übertragen wird. Das Speicheradressenregister enthält daher die absolute Adresse der aus dem zentralen Speicher herauszugreifenden Daten oder Informationen.
Die Ableitung der absoluten Adresse läßt sich anhand von Fig. 3 erläutern, in welcher das eine absolute Seitenadresse, einen Benutzungskode, einen Sperrkode und eine virtuelle Seitenadresse enthaltende assoziative Wort durch eine Seitentabelle geliefert wird, während eine virtuelle Adresse gleichfalls vom Arbeitsprogramm (Fig. 1) gebildet wird. Die virtuelle Seitenadresse eines assoziativen Worts wird mit der Adresse einer virtuellen Adresse (z. B. vom Arbeitsprogramm) verglichen, und wenn eine Übereinstimmung auftritt, wird die absolute Seitenadresse vom assoziativen Wort zum Speicheradressenregister übertragen, während eine Wortadresse von der virtuellen Adresse zum Speicheradressenregister für den Zugriff zum Speicher überführt wird. Gemäß Fig. 3 wird im Fall einer kleinen Seite die in den Bits 31 bis 63 des assoziativen Worts enthaltene virtuelle Seitenadresse mit einer in den Bits 16 bis 48 der virtuellen Adresse enthaltenen Adresse verglichen, und wenn Übereinstimmung oder Koinzidenz vorliegt, wird eine absolute Seitenadresse an den Bits 5 bis 15 des assoziativen Worts zu den Bitpositionen 38 bis 48 des Speicheradressenregisters übertragen, während eine in den Bits 49 bis 54 der virtuellen Adresse enthaltene Wortadresse zum Speicheradressenregister übertragen und in diesem in den Bitpositionen 49 bis 54 gespeichert wird. Im Fall eines großen Worts wird eine in den Bitpositionen 31 bis ςΊ des assoziativen Worts enthaltene virtuelle Wortadresse mit einer Adresse in den Bitpositionen 16 bis 41 der virtuellen Adresse verglichen, und im Fall von Koinzidenz wird die in den Bits 5 bis 8 des assoziativen Worts enthaltene absolute Seitenadresse zu den Bitpositionen 38 bis 41 des Speicheradressenregisters übertragen, während eine in den Bitpositionen 42 bis 54 der virtuellen Adresse enthaltene Wortadresse zum Speicheradressenregister in dessen Bitpositionen 42 bis 54 übertragen wird. Das Speicheradressenregister enthält daher die absolute Adresse der aus dem zentralen Speicher herauszugreifenden Daten oder Informationen.
Die F i g. 4 und 5 sind Blockschaltbilder einer bevorzugten Ausführungsform der Erfindung. Wie speziell aus
F i g. 4 hervorgeht, werden die Daten von einer Lesehauptleitung I über einen Kanal 10 durch Leseschaltungen
11 und 12 ausgelesen, die beide Ausgangssignale zu einer Fan-in-Schaltung 16, einer Sperrkode-Fan-in-Schaltung
Π und einer Virtuellseitenadressier-Fan-in-Schaltung 18 liefern. Ein Fan-in-Schaltkreis 13, welcher die
einzelnen Fan-in-Schaltungen 14 bis 18 umfaßt, liefert Eingangssignale zu einem ersten Register 19, das als assoziatives
Register AR 00 bezeichnet ist. Dieses Register enthält ein Register-Adressenkennzeichen 19 a, eine
Absolutseitenadresse (absolute Seitenadresse) 19 b, einen Benutzungskode 19 c, einen Sperrkode 19 d und eine
virtuelle Seitenadresse 19 e. Die Lesedaten werden ebenfalls von den Leseschaltungen 11 und 12 zur Fan-in-Schaitung
20 des assoziativen Registers AR 00 geliefert. Zusätzlich liefert das assoziative Register AR 00 ein
Ausgangssignal über einen Kanal 41 zur Fan-in-Schaltung 20 und zur Fan-in-Schaltung 21, welche ihrerseits die
Fan-in-Schaltung für das assoziative Register AR Oil darstellt Ein mit 22 bezeichnetes assoziatives Register
AR 01 empfangt ein Eingangssignal von der Fan-in-Schaltung 20 und liefert ein Ausgangssignal zur Fan-inSchaltung 21, die ihrerseits sin Ausgangssignal zum Register 22 abgibt. Letzteres gibt ein Ausgangssignal an ein
Register 24 und hierauf der Reihe nach an Register 25,26,27,28,29,30,31 und 32 ab. Wie dargestellt, sind die
Register 23 bis 32 jeweils assoziative Register, die derart fortlaufend verdrahtet sind, daß der Inhalt eines vorgeschalteten Registers in ein nachgeschaltetes Register übertragen wird. Die Register 23 bis 32 sind somit auf- s
cinanderfolgende assoziative Register, die mit AR Wl-AR 11 bezeichnet sind. Das mit 32 bezeichnete elfte assoziative Register AR 11 liefert ein Ausgangssignal zu dem mit 33 bezeichneten Register AR 12, das seinerseits ein
Λ'1-sgangssignal zu dem mit 34 bezeichneten Register ΛÄ 13 liefert. Das assoziative Register/4/? 13 gibt ein AusgaRgssignal an eine Fan-in-Schaltung 35 ab, die ihrerseits ein Ausgangssignal zu dem assoziativen Register
AR 14 (36) liefert. Gemäß Fig. 4 sind die Ausgänge der Register AR U-AR 14 an eine Fan-in-Schaltung37 als
Eingang zum Register AR 15 (38) angeschlossen. Ebenso empfängt eine Fan-in-Schaltung 35 die Eingangssignale von beiden Registern AR MnnaAR 13. Das Register/*/? 15gibt übereinen Kanal 39 ein Ausgangssignal
an jede Fan-in-Schaltung des Fan-in-Schaltkreises 13 ab, welcher dem assoziativen Register AR 00 zugeordnet
ist. Außerdem liefern die assoziativen Register AR 14 und AR 15 ein Ausgangssignal zu der mit 40 bezeichneten
Einschreibleitung I. Alle Register AR 00-/1/? 15 sind ähnlich aufgebaut wie das Register AR 00. Die Fan-in-Schaltungen 20,21,35 und 37 ähneln der Schaltung 13, nur mit dem Unterschied, daß lediglich die Schaltung 13
die Eingangssignale von den Steuer- oder Regelorganen gemäß F i g. 5 empfangt und lediglich die Fan-in-Schaltungen 13 und 20 Eingangssignale von der Leseleitung I aufnehmen.
Die Adressenkennzeichen-Fan-in-Schaltung 14 empfängt die beschriebenen Eingangssignale und zusätzlich
die Eingangssignale von den einzelnen Registeradressenkennzeichen der Register AR 00-AR 15; die genaue
Schaltungsverbindung ist dabei für das Register^/? 00 dargestellt, während die anderen Verbindungen über den
Kanal 14 von den Registern AR 01 bis AR 15 erfolgen.
F i g. 6 veranschaulicht schematisch einen Teil des die assoziativen Worte enthaltenden Zentralspeichers. Zur
Erläuterung sei angenommen, daß das assoziative Wort 0 an der absoluten Adresse 4000, das assoziative Wort 15
an der absoluten Adresse 4300 und das Wort 16 an der Adresse 4400 erscheint und das letzte assoziative Wort
einen Ende-der Tabelle- bzw. EOT-Kode enthält. Im Speicher kann jede beliebige Anzahl von assoziativen Worten enthalten sein, aus Gründen der Erläuterung werden die im Speicher enthaltenen assoziativen Worte 16 usw.
als »Leertabelle« bezeichnet. Die assoziativen Worte 0-15 sollen dabei in die assoziativen Register ΛΛ 00 bis
AR 15 eingelesen werden. Wie noch näher erläutert werden wird, ist es zudem vorteilhaft, die assoziativen Worte
in umgekehrter Reihenfolge zu lesen, so daß das an der absoluten Adresse 4300 auftretende assoziative Wort IS
zuerst in das Register AR 00 eingelesen und durch die einzelnen assoziativen Register verschoben wird, bis es
schließlich im Register AR 15 zum gleichen Zeitpunkt erscheint wie das an der absoluten Adresse 4000 auftretende assoziative Wort 0 im Register AR 00 erscheint. Die Reihenfolge zur Durchführung des Einlesens oder
Ladens der assoziativen Wortregister ist folgende: Zum Zeitpunkt T 0 werden die assoziativen Worte 14 und 15
von der Hauptleitung I über die betreffenden Lesekreise 11 und 12 (Fig. 4) in die Register AR 00 und AR 01
eingelesen. Während des nächsten Zyklus T 1 wird das assoziative Wort 15 zum assoziativen Register AR 02
übertragen. Während des Zykius T2 wird das assoziative Wort 15 zum assoziativen Register AR 03 und das Wort
14 zum Register AR 02 übertragen, während die Worte 12 und 13 in die Register AR 00 bzw. AR 01 eingelesen
werden. Dieser Vorgang setzt sich bis zum Zeitpunkt T11 fort, an welchem das assoziative Wort 15 zum assoziativen Register AR 12 verbracht worden ist. Während des nächsten Zeitzyklus T12 wird das assoziative Wort 15
zu beiden Registern AR 13 und AR 15 übertragen, während des nächsten Zykius T 14 gelangt das assoziative
Wort 14 zum Register^/? 13, und während des Zykius T 14 gelangt das assoziative Wort 14 zum Register^/? 14,
so daß die assoziativen Register AR 00-AR 15 geladen sind. Die folgende Tabelle I gibt die Ladung der einzelnen assoziativen Register zu den einzelnen Zeitpunkten 7Ό-7Ί4 an:
Laden der assoziativen Register
14 13 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
15 14 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 |
15 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | ||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |||
15 | 14 | 13 | 12 | 11 | 10 | 9 | ||||
15 | 14 | 13 | 12 | 11 | 10 | |||||
15 | 14 | 13 | 12 | 11 | ||||||
15 | 14 | 13 | 12 | |||||||
15 | 14 | 13 | ||||||||
14 | ||||||||||
15 | 15 | 15 |
Reg. Zeit
70 T\ Tl T3 Γ4 TS T6 Tl Γ 8 T9 TlO TW T\2 TU TU
AROO 14 14 12 12 10 10 8 8 6 6 4 4 2 2 0
AR0\ 15 15 13 13 11 11 9 9 7 7 5 5 3 3 1 AR 02 !5
AR 04
AR 05
AR 06
AR 05
AR 06
AROl
AROi
AR 09
ΛΛ10
ΛΛ10
AR U
ΛΛ 12
ΛΛ13
ARU ARlS
ΛΛ 12
ΛΛ13
ARU ARlS
)5 Aurähnliche Weise können die in den assoziativen Registern AR 00 bis AR 15 erhaltenen Daten in umgekehrter
Reihenfolge über die an die Einschreibdatenleitungen 1 angeschlossenen Register AR 14 und AR 15 im
Zentralspeicher gespeichert werden. Die Inhalte der Register AR 15 und AR 14 werden somit in umgekehrter
Reihenfolge, beginnend mit der absoluten Adresse 4300 (Fig. 6), in den Speicher eingeschrieben. Zum Zeitpunkt
T 0 werden die Inhalte der Register AR 15 und AR 14 also zum Speicher überführt, so daß zum Zeitpunkt
Tl der Inhalt des Registers AR 13 zum Register AR 15 und der Inhalt des Registers AR 12 zu beiden Registern
AR 13 und AR 14 weitergegeben werden. Zum Zeitpunkt T 2 wird außerdem der Inhalt der Register AR 02 bis
AR 11 um eine Stelle b.?.rv. Position verschoben. Zum Zeitpunkt T3 werden die Registerinhalte wiederum verschoben.
Dieser Vorgang dauert an, bis die in den Registern AR 00-AR 15 enthaltenen assoziativen Worte in
umgekehrter Reihenfolge vollständig in den Speicher eingegeben worden sind, wodurch die vorher im Speicher
bestehende Reihenfolge wiederhergestellt wird, so daß das assoziative Wort 0 an der absoluten Adresse 4000 und
das assoziative Wort 15 an seiner absoluten Adresse 4300 erscheint. Die Tabelle II verdeutlicht die Zeitsteuerungsmerkmale
des Einschreibens der assoziativen Worte aus den assoziativen Registern AR 00 bis AR 15 in den
Speicher.
'a^.„ »ι ... - Γ I |
Tabelle II | der assoziativen Register | 71 | 72 | 73 | 74 | 25 | 06 | 117 | 78 | 79 | 7 10 | 711 | 7 12 7 1* | 714 | 5 |
Speicherung | Zeit 70 |
0 | 0 | |||||||||||||
I | Reg. | 0 | 1 | 1 | 7 5 | 76 | 77 | ίο Ι | ||||||||
ϊ Λ I |
AROO | 1 | 2 | 1 | 0 | |||||||||||
ARO\ | 2 | 3 | 2 | 1 | 0 | |||||||||||
,ϊ | AR 02 | 3 | 4 | 3 | 2 | 1 | 15 | |||||||||
AROi | 4 | 5 | 4 | 3 | 2 | |||||||||||
ARM | 5 | 6 | 5 | 4 | 3 | 0 | ||||||||||
■„'■ | AROS | 6 | 6 | 5 | A t |
1 | 0 | 0 | 20 | |||||||
AR 06 | 7 | 8 | 7 | 6 | 5 | 2 | 1 | 0 | 1 | 0 | ||||||
<4Ä 07 | 8 | 9 | 8 | 7 | 6 | 3 | Λ Z |
ί | 2 | 1 | 0 | |||||
Ι;"·' | ΛΛ08 | 9 | 10 11 |
9 10 |
8 9 |
7 8 |
4 | 3 | 2 | 3 4 |
2 3 |
1 2 |
0 1 |
0 | 25 | |
ΛΛ09 | 10 11 |
12 | 11 | 10 | 9 | 5 | 4 | 3 | 5 | 4 | 3 | 2 | 1 0 | |||
';5 | ARlO | 12 | 13 | 12 | 11 | 10 | 6 7 |
5 6 |
4 5 |
6 | 5 | 4 | 3 | 2 1 | 0 | |
ARM | 13 | 12 | 10 | 8 | 7 | 6 | 6 | 4 | 2 | 0 | 30 | |||||
ARU | 14 | 13 | 11 | 9 | 8 | 7 | 7 | 5 | 3 | 1 | ||||||
ARU | 15 | 8 | ||||||||||||||
AR 15 | 9 | |||||||||||||||
Gemäß F i g. 5 ist eine Einschreibdatenleitung 50 an eine Einschreibschaltung 51 angeschlossen, die ihrerseits
ein Eingangssignal zu Schlüsselregistern 52 liefert, welche eine Anzahl von mit 52 a, 52 b, 52 c und 52 d bezeichneten
Schlüsselkodes enthalten. Das Ausgangssignal des Registers 52 wird an einen Eingang eines Sperrwählers
r 53 angelegt, der seinerseits ein Ausgangssignai zur Sperr-Fan-iri-Sc-haiturig 17 des Registers AR 00 gemäß F i g. 4
liefert. Zusätzlich wird ein Ausgangssignal vom Register 52 als Eingangssignal zu einer Sperrschlüssel-Ver-
: gleichschaltung 54 geliefert, die ein zweites Eingangssignal von der Sperrschaltuug 19d (Fig. 4) der Register
I AR Od-AR 15 empfängt. Ein Ausgangssignal vom Register 52 bildet auch ein Eingangssignal zur Spenr-Ver-
gleichschaltung 55. Die Vergleichschaltung 54 liefert ein Eingangssignal zu einer Schlüsselauswahl-Fan-inSchaltung
56, die ihrerseits ein Eingangssignal zu einzelnen Schlüsselauswahlschaltungen 57, 58, 59 und 60
liefert. Die Ausgangssignale der Auswahlschaltungen 57 bis 60 werden als Eingangssignal zum Sperrvfihler 53
und zum Schlüsseldetektor 61 geliefert. Das Ausgangssignal der Schlüsseldetektorschaltung 61 wird als Eingangssignal
zu einer Cause-Bitauswahlschaltung 62 geliefert, die über einen Kanal 63 ein Ausgangssignal zur
'; Datenstromeinheit liefert. Die Vergleichsschaltung 54 liefert weiterhin ein Ausgangssignal zu einer Anpaß-Fan-
; in-Schaltung 64, die ihrerseits ein Eingangssignal zu Anpaßregistern 65 liefert. Vorzugsweise ist eine der Zahl
j der assoziativen Register entsprechende Zahl von Anpaßregistern vorgesehen, und zwar sind bei der dargesteil-
i' ten Ausführungsform sechzehn Anpaßregister 65 vorgesehen, welche ein Ausgangssignal zu einer Anpaß-Fan- „v
;; out-Schaltung 66 liefern, die ihrerseits ein Ausgangssignal an eine Anpaßdetektorschaliung 67 anlegt, welche
; ein Ausgangssignal zum Cause-Bitwähler 62 schickt. Letzterer liefert die Daten zur Datenstromeinheit bzw.
'; zum Puffer, um diese Einheit bezüglich der Ursache etwaiger Zugriffsunterbrechungen anzuweisen. Der
|j virtuelIeSeitenadressierkodevonderSchaltungl9ederRegister^Ä 00-AR lSgemäßFsg. 1 wird als Eingangs-
|: signal einer virtuellen Adressen-Vergleichsschaltung 70 eingegeben, welche ein zweites Eingangssignal von
?3 einer virtuellen Adressen-Fan-out-Schaltung 71 empfangt, weiche ihrerseits ein Eingangssignal vom virtuellen
aj Adressenregister 72 erhält. Letzteres nimmt die Datenstromadressen von Speicher auf. Die Vergleichsschaltung
pi: 70 liefert ein Eingangssignal zur Schlüsselauswahl-Fan-in-Schaltung56 und zu den Anpaß-Fan-in-Schal-
fj' tungen 64.
i-% Ein Funktionssignal wird über einen Kanal 75 einer Funktionssteuer-Fan-in-Schaltung 76 eingegeben, die
ι, ihrerseits sequentielle Ausgangssignale zu Funktionsanforderungsschaltungen 77 und 78 abgibt, wobei der Aus-
I* gang der Schaltung 77 an die Sperr-Vergleichsschaltung 55 sowie an die Funktionsanforderungsschaltung
fi 78 angeschlossen ist und das Ausgangssignal der Schaltung 78 als Eingangssignal der Funktions-Fan-in-Schal-
ψ tung 76 eingegeben wird. Das virtuelle Adressenregister 72 liefert ein Ausgangssignai zu einem Hilfsadressen-
ii register 80, das seinerseits Ausgangssignale zu einem Speicheradressenregister 81, zur virtuellen Blatt-Fan-in-
jg Schaltung 18 des Registers ΛΑ 00 (Fig.4) und zum virtuellen Adressenregister 72 liefert. Eine Absolut-
j| adressenauswahlschaltung 85 empfangt ein Eingangssignal von den absoluten Blattidentifiziergrößen 19 b der
'■% Register AR W-AR 15 gemäß Fig. 4 und von der Anpaß-Fan-out-Schaltune 66. Die Schalhmo «ί ii>f#»rt pin
Ausgangssigna] zur Absolutblattidentifizier-Fan-in-Schaltung 15 des Registers AR 00 gemäß F ϊ g. 4 sowie zum
SpeicheradressenregisterSl. Der Ausgatgs-Benutzungskode 19 c der Register AR OQ-AR 15 wird an die Beniutzungsbitwählschaltung
86 angelegt, die ihrerseits ein Ausgangssignal zu einer Benutzungsbit-Änderungsschaltung
87 zur Eingabe in die Benutzungsbit-Fan-in-Schaltung 16 (Fig. 4) des Registers AR 00 liefert Außerdem
empfängt die Schaltung 86 ein Eingangssignal von der Anpaß-Fan-out-Schaltung 66. Das Speicheradressenregister
31 liefert über einen Kanal 88 ein Ausgangssignal zum Zentralspeicher.
Vor der Erörterung der Arbeitsweise beim Heraussuchen derassoziativenRegisterzurBildung einer Absolutadresse
wird eine Beschreibung des Benutzungskodes des assoziativen Wortformats als zweckmäßig angesehen.
In Fig. 2 ist ein 3-Bit-Benutzungskode in den Bitpositionen 16 bis 18 des assoziativen WortformEt·- dargestellt
Es ist zu beachten, daß dieser Kode sowohl im kleinen als auch im großen assoziativen Seiten-Wortformat
erscheint Der Benutzungskode ist ein 3-Bit-Kode, dersich am besten anhand der folgenden Tabelle III erläutern
läßt
Benutzuneskode
Kode Bedeutung
000 Ende der Tabelle; keine weiteren Seiten in der Tabelle an den folgenden absoluten Adressen vorhanden.
001 Nullkode; dient nicht jur Kennzeichnung einer im Speicher gespeicherten
Seite.
010 Kleine (512-Wort) Seite, auf die nicht durch CPU (Zentraleinheit)
Bezug genommen worden ist.
011 Große (65 536-Wort) Seite, auf die nicht durch CPU Bezug genommen
worden ist
100 Kleine Seite, auf die durch CPU Bezug genommen worden ist; CPU
hat ein Wort aus der Seite ausgelesen.
hat ein Wort aus der Seite ausgelesen.
101 Große Seite, auf die durch CPU Bezug genommen worden ist; CPU
hat ein Wort aus der Seite ausgelesen.
hat ein Wort aus der Seite ausgelesen.
110 Kleine Seite, die durch CPU abgeändert worden ist; mindestens ein Bit
in Seite ist geändert worden.
in Seite ist geändert worden.
111 Große Seite, durch CPU geändert; mindestens ein Bit der Seite ist
geändert worden.
geändert worden.
Der Benutzungskode kann mithin eine Tabelle entsprechend dem Ende der Seite oder einen Nullzustand des
assoziativen Worts anzeigen oder angeben, ob auf eine Seite durch die CPU Bezuggenommen wurde oder durch
diese geändert worden ist oder nicht.
In Verbindung mit den Fig. 1,4 und 5 sei angenommen, daß das Arbeitsprogramm eine Anforderung für Informationen
oder Daten aus dem zentralen Speicher enthält und daß das der absoluten Adresse dieser Daten
oder Informationen zugeordnete assoziative Wort in einem der assoziativen Speicher AR QO-AR 15 enthalten
ist. Die durch das Programm gelieferte virtuelle Adresse wird zum Virtuell-Adressenregister 72 (Fig. 5) und
anschließend zur Virtuell-Adressen-Fan-out-Schaltung 71 und zur Virtuell-Adressenvergleichsschaltung 70
übertragen. Die jedem der assoziativen Register AR OQ-AR 15 zugeordneten assoziativen Worte werden als
zweites Eingangssignal der Schaltung 70 eingegeben. Wenn Übereinstimmung zwischen der virtuellen Seitenadresse
sowohl des assoziativen Worts als auch der virtuellen Adresse festgestellt wird, wird ein Eingangssignal
zur Anpaß-Fan-in-Schaltung 64 und sodann zu den Anpaßregistern 65 erzeugt. Letztere enthalten Informationen dahingehend, wo die Koinzidenz zwischen der virtuellen Adresse und dem entsprechenden assoziativen
Wort auftrat, nämlich welches der assoziativen Wortregister das richtige Wort enthält. Ein Ausgangssignal über
die Anpaß-Fan-out-Schaltung 66 zu den absoluten Adressenauswahlschaltungen 85 gewährleistet die Auswahl
des assoziativen Worts. Die absolute Seitenadresse von der Schaltung 19 b (F i g. 4) wird zur absoluten Adressenauswahlschaltung
85 übertragen, um die absolute Adresse auszuwählen, die ihrerseits im Speicheradresse nregister81
gespeichert wird. Die Wortadresse der virtuellen Adresse wird vom Wähler 72 in das Register 80 über-
tragen, um zur Vervollständigung der absoluten Adresse in das Register 81 eingegeben zu werden. Das Anpaßregister
65 bewirkt außerdem, daß das ausgewählte assoziative Wort in einem der Register AR QQ-AR 15 über
die Schaltungen 85,87,53 und 80 sowie über den Kanal 41 zur Fan-in-Schaltung 13 übertragen wird, um unmittelbar
in das Register AR 00 eingegeben zu werden. Alle vorher dem ausgewählten Wort vorhergehenden assoziativen
Worte werden in den assoziativen Wortregistern um eine Stelle abwärts verschoben. Wenn daher dus
entsprechende assoziative Wort im Register AR 00 erscheint, tritt die virtuelle Seiteriadresse in der Schaltung
19 e auf, um der virtuellen Adressenvergleichsschaltung 70 eingegeben zu werden und den Anpaßregistern
anzuzeigen, daß das gesuchte assoziative Wort sich nunmehr im Register AR 00 befindet. Die so im Speichcradressenregister
81 gebildete absolute Adresse steht für den Zugriff zum Speicher über den Kanal 88 bereit.
Vorstehend wurde angenommen, daß das der absoluten Adresse für die Daten oder Informationen im Zentralspeicher
zugeordnete assoziative Wort vorher in einem der assoziativen Register AR 00—AR 15 gepeichert worden
ist Im folgenden sei nunmehr angenommen, daß das gewünschte assoziative Wort, das eine Übereinstimmung
mit der virtuellen Seitenadresse des Arbeitsprogramms herstellt, nicht in einem der assoziativen Register
AR Wi-AR 15 gespeichert ist
Wie erwähnt, werden hei einer Datenstromanforderung für Daten aus dem Speicher die assoziativen Register
auf eine Übereinstimmung zwischen dem assoziativen Wort und der virtuellen Seitenadresse untersucht, und
wenn eine solche Übereinstimmung bzw. Anpassung vorhanden ist, wird das im gewählten assoziativen Register
enthaltene Wort in das Register Aß 00 eingelesen, während die anderen Worte um eine Stelle oder Position verschoben
werden. Die absblute Adresse wird zum Speicheradressenregister 81 und von dort zum Speicher übertragen,
um das gewünschte Wort herauszugreifen.
Wenn z. B. das assoziative Wort nicht in den assoziativen Registern AR 00-AR 15 erscheint, werden die
Anpaßregister nicht gesetzt Der Benutzungskode wird durch die Schaltung 19 cgeprüft, um festzustellen, ob in
den assoziativen Registern ein Ende-der-Tabelle-Benutzungskode auftritt Sofern dies der Fall Ist, wird ein
Unterbrechungszyklus eingeleitet, um den weiteren Informationsstrom vom Speicher über eine nicht darge- is
stellte Vorrichtung zu beenden. Falls jedoch der Ende-der-Tabelle-Kode in den assoziativen Registern nicht
erscheint, wird der Benutzungskode durch die Benutzungsbit-Auswahlschaltung 86 untersucht bzw. geprSft, um
festzustellen, ob in einem der assoziativen Register ein »Null«-Kode vorhanden ist Obgleich die Benutzung des
»NuH«-Kodes vorher nicht beschrieben worden ist, sei zum Zweck der Erläuterung angenommen, daß in keinem
der assoziativen Register AR W-AR 15 ein »Null«-Kode erscheint Wenn dies zutrifft, wird das im Register
AR 15 enthaltene assoziative Wort 15 über den Kanal 39 (F i g. 4) zum assoziativen Register AR 00 verschoben,
und die restlichen assoziativen Worte 0 bis 14 werden über die Einschreibleitung 1 (Kanal 40) wieder in die Positionen
1 bis 14 des Speichers eingeschrieben, und zwar beginnend an der absoluten Adresse 4000. Die Vorrichtung
steht sodann für die Einleitung einer neuen Zeilentabellensuche bereit.
Bei einer Zeilentabellensuche werden die Daten, beginnend an der absoluten Adresse 4400 (assoziatives Wort
16) in die Register AR 00 und AR 01 eingelesen, während die assoziativen Worte 16 usw. über die Lesedatenleitung
1 in die Register übertragen werden, und das Wort 15 wird in Abwärtsrichtung durch die assoziativen
Register durchgeschaltet Der Vergleich zwischen dem Benutzungskode und der virtuellen Seitenadresse erfolgt
in Verbindung mit den Registern AR 00 und AR 01. Durch Entleerung des Inhalts von 15 der 16 assoziativen
Register vermögen die assoziativen Register AR 00 und AR 01 nunmehr ungehindert auf die Vergleichsnetze
einzuwirken, um das richtige assoziative Wort in der Zeilentabelle festzustellen.
Beispielsweise sei angenommen, daß das 17. assoziative Wort die Anpassung bzw. Übereinstimmung für die
virtuelle Seitenadresse im Arbeitsprogramm enthält. Gemäß Tabelle IV erscheint das assoziative Wort 15
anfanglich im Register AR 00. Während des nächsten Zyklus TO liest die Lesedatenleitung 1 die assoziativen
Worte 16 und 17 in die Register AR 01 bzw. AR 00 ein, wodurch die Position des assoziativen Worts 15 zum assoziativen
Register AR 02 verschöben wird. Die Vergleichsschaiiüngen (Fig. 5) zeigen eine Übereinstimmung
mit dem assoziativen Wort 17 an. Die Anpaß-Flip-Flops sind so gesetzt oder eingestellt, daß dann, wenn das
assoziative Wort 17 das assoziative Register ΛΛ 13 erreicht, dieses Wort während des Rests des Zyklus in diesem
Register zurückgehalten wird. Das System arbeitet somit auf die vorher beschriebene Weise weiter, bis - wie am
Zyklus 7*11 angedeutet - die assoziativen Worte 15 bis 23 in den assoziativen Registern AR U-AR 05 in umgekehrter
Reihenfolge erscheinen. Beim nächsten Zyklus T12 wird das Wort 15 zum assoziativen Register ΛΑ 14
und das Wort 16 zum assoziativen Register AR 15 übertragen, so daß die assoziativen Worte 15 und 16, beginnend
mit der absoluten Adresse 4400, wieder in die Zeilentabelle eingelesen werden und das assoziative Wort 15
an der Stelle erscheint, an welcher vorher das frühere assoziative Wort 16 erschien. Beim nächsten Zyklus T13
wird das assoziative Wort 17 zum Register AR 13 überführt, so daß der Inhalt der assoziativen Wortregister
AR 11 und AR 12 beim nächsten Zyklus T14 in die assoziativen Wortregister ΛΛ 15 bzw. AR 14 verbracht wird.
Die assoziativen Worte werden daher, beginnend an einer absoluten Adresse 4400, wieder in die Zeilentabelle
eingelesen, und zwar der Reihe nach beginnend mit dem Wort 15, gefolgt vom Wort 16, worauf das Wort 18, das
Wort 19 usw. folgt, wobei das Wort 17 stets im Register AR 13 gehalten wird.
Reg.
Zeit
ι ro
10
15
20
25
35
45
50
55
M)
(ι5
Λ-ROO
ΛΑΟΙ
ΛΑ 02
ΛΑ 03
ΛΑ 04
ΛΛ05
16
15
16 16 15
19
18
18
16
15
ΛΑ 08
ΛΑ 09
ΛΛ10
ΛΑ 11
ΛΑ 12
ΛΑ 13
ΛΑ 14
Λ/Μ5
23
22
21
20
19
18
16
15
23
22
21
20
19
18
16
15
15
23 22 21 20 19 18
16 15 16
23 22 21 20 19 18
23 22 21 20 19
18 19
23 22 21 20
23 22 21
GH 20 21
23 22 [Ϊ7]
Als nächstes wird der Inhalt des Speichers, beginnend mit der absoluten Adresse 4000, in umgekehrter
Reihenfolge wieder in die assoziativen Register eingelesen, bis das assoziative Wort 14 im assoziativen Register
AR 12 erscheint. Sodann wird der Vorgang fortgesetzt, indem das assoziative Wort 17 aus dem assoziativen
Register AR 13 zürn Register AR 15 verschoben wird, so daß die Inhalte der Register AR (SS-AR IS die Worte
0-14 und 17 enthalten. Hierauf wird das assoziative Wort 17 aus dem assoziativen Register AR 15 über den
Kanal 39 zum Register AR 00 ausgelesen, wobei die anderen Worte um ein Register abwärts verschoben werden.
Gemäß Tabelle V erscheinen die assoziativen Worte somit vor der Zeilentabellensuche in richtiger Reihenfolge,
während sie nach der Suche der Reihe nach auftreten, nur mit dem Unterschied, daß das assoziative Wort 17
nunmehr im Register AR 00 erscheint.
Tabelle V Leertabellensuche
Tabellenposilion
ΛΛ00 ΛΛ01
AR 02 AR 03 ΛΛ04
ΛΛ05 ΛΛ06
ΛΛ07 ΛΛ08
ΛΛ09 ΛΛ10
ΛΛ11 ARU AR 13 AR 14 ARlS
Vor der Suche | Nach der Suche |
0 | 17 |
1 | 0 |
2 | 1 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
7 | 6 |
8 | 7 |
9 | 8 |
10 | 9 |
11 | 10 |
12 | 11 |
13 | 12 |
14 | 13 |
15 | 14 |
Fortsetzung
Leertabelle 4400 4440 4480 44C0 4500 4540 4580 45C0 4600
Vor der Suche
16 17 18 19 20 21 22 23 EOT
Nach der Suche
15
16
18
19
20
21
22
23
EOT
16
18
19
20
21
22
23
EOT
10
15
Die mit der Umspeicherung der assoziativen Worte aus dem Speicher in die assozfe'fven Wortregister
AfC(Sd-AR 14 zurück und mit der Verschiebung des assoziativen Worts 17 zum assoziativen Register AR 00
verbundene Zeit- oder Taktsteuerung irc in Tabelle VI veranschaulicht.
Wiederbeladen der assoziativen Register nach Leertabellensuche
20
Reg. | Zeit | Ti | TZ | Γ3 | T4 | Γ5 | T6 | Tl | TS | T9 | Γ 10 | τη | τη | T Π | Γ 14 | Γ 16 |
TO | 13 | 11 | 11 | 9 | 9 | 7 | 7 | S | 5 | 3 | 3 | ι | 1 | 0 | 17 | |
AROO | 13 | 14 | 12 | 12 | 10 | 10 | 8 | 8 | 6 | 6 | 4 | 4 | 2 | 2 | 1 | 0 |
ARQl | 14 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 2 | I |
AR 02 | 14 | 13 | 12 | 1! | !0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 3 | >2 | ||
AR 03 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 15 | 4 | 4 | 3 | |||
ΛΛ04 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 5 | 4 | ||||
AROS | 14 | 13 | 12 | Jl | 10 | 9 | 8 | 7 | 6 | 6 | 5 | |||||
AR 06 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 7 | 6 | ||||||
ARVl | 14 | 13 | 12 | 11 | 10 | 9 | 8 | ü | 7 | |||||||
ARm | 14 | 13 | 12 | 11 | 10 | 9 | 9 | 8 | ||||||||
/1Λ09 | 14 | 13 | 12 | 11 | 10 | 10 | 9 | |||||||||
AR 10 | 14 | 13 | 12 | 11 | 11 | 10 | ||||||||||
ARW | 14 | 13 | 12 | 12 | 11 | |||||||||||
ARM | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 14 | 13 | 13 | 12 | |
ARU | 17 | 14 | 14 | 14 | 13 | |||||||||||
ARU | 17 | 17 | 17 | 17 | F | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 17 | 14 | |
AR\S | 17 | |||||||||||||||
30
35
40
45
50
55
Wenn die Zeilentabelle mehr als 31 assoziative Worte enthält und wenn das gesuchte assoziative Wort das
Wort 32 oder ein folgendes Wort ist, werden die assoziativen Worte ersieh llicherweise kontinuierlich durch die
Register AR W-AR 15 geleitet, bis das richtige assoziative Wort gefunden ist, so daß das assoziative Wort 15
schließlich im Speicher an der Adresse 4400 erscheint. Das gesuchte assoziative Wort gelangt dann schließlich in
das Register AR 00, während alle anderen, vorher vor dem gesuchten Wort stehenden assoziaii£«ri"Worte um
eine Position zurückverschoben werden.
Wie erwähnt, kann das assoziative Wort einen Benutzungskode enthalten, der angibt, daß das betreffende
Wort ein »Nuriwort« ist, was speziell bedeutet, daß das assoziative Wort keine; Seite im Speicher zugeordnet ist.
Wenn ein einen »Null«-Benutzungskode enthaltendes assoziatives Wort festgestellt und eine Leer- oder Zeilentabellensuche
eingeleitet wird, wird das den Nullkode enthaltende Wort, anstatt das assoziative Wort 15 in das
Register Λ/? 00 zu verschieben, in das Register AR 00 eingelesen. Die assoziativen Worte 16 bzw. werden in die
11
60
Register AR 00-AR 15 eingelesen, und das den Nullkode enthaltene Wort wird gelöscht. Wenn das gesuchte
Wort einläuft, wird es in das Register Λ Λ 00 eingelesen, während ein Nullbenutzungskode in seine Position eingesetzt wird. Alle ursprünglich nach dem Nullkode auftretenden assoziativen Worte werden daher in derTabellc
um eine Position oder Stelle vorwärts verschoben, und der Nullkode wird wieder in die Position eingesetzt,
S welche vorher von dem der virtuellen Seitenadresse angepaßten assoziativen Wort eingenommen wurde.
Gemäß Tabelle VlI sei somit angenommen, daß das assoziative Register ΛΛ 10 ein den Nullkode enthaltendes
assoziatives Wort enthält, und daß die virtuelle Seitenadresse mit dem in der Leertabelle an der absoluten
Adresse 4500 erscheinenden assoziativen Wort übereinstimmt. Es wird auf vorher beschriebene Weise eine
Leertabellensuche durchgerührt, wobei der im Register AR 10 benndliche Nullbenutzungskode in die vorher
ίο vom assoziativen Wort 23 an der absoluten Adresse 4500 eingenommene Position und das assoziative Wort 23 in
das assoziative Register AR 00 verschoben wird. Bei jeder Leertabellensuche wird jeweils nur eine Null herausgezogen.
Leertabellensuche; Null im assoziativen Register Tabellenposition
20 AR 00
AROl
AROl
AR 03 25 AR 04
AR 05
AR 06
AROl 30 AR 08
AR 09
ARlO
ARU 35 AR 12
ARU
ARU
ARlS 40 4400
4440
4480
44C0
4500
4540
4580
45C0
4600
wird die Null ebenso abwärts verschoben, um die Position des Übereinstimmungs-Worts einzunehmen. Wie aus
verschoben, während das assoziative Wort 21 von der absoluten Adresse 4540 zum assoziativen Register AR 00
verschoben wird.
12
Vor der Suche | Nach der Suche |
0 | [?3 |
1 | 0 |
2 | 1 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
7 | 6 |
8 | 7 |
9 | 8 |
NULL | 9 |
11 | 11 |
12 | 12 |
13 | 13 |
14 | 14 |
15 | 15 |
16 | 16 |
17 | 17 |
18 | 18 |
NULL | NULL |
20 | 20 |
21 | 21 |
22 | 22 |
Bj | NULL |
EOT | EOT |
Leertabellensuche; Null in der Leertabelle
AROO AROl AROZ AR 03 AR 04 AR 05 AR 06 ΛΛ07
ΛΛ08 ΛΛ09
ΛΛ10 ARU ARU
ARU ARU AR\S 4400 4440 4480
44CO 4500 4540 4580 45C0 4600
Vor der Suche | Nach der Suche |
0 | ED |
1 | 0 |
2 | 1 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
7 | 6 |
8 | 7 |
9 | 8 |
10 | 9 |
11 | 10 |
12 | 11 |
13 | 12 |
14 | 13 |
15 | 14 |
16 | 15 |
17 | 16 |
NULL | 17 |
19 | 19 |
20 | 20 |
ID | NULL |
22 | 22 |
23 | 23 |
EOT | EOT |
Für die Bildung einer Null sei anhand von Tabelle IX angenommen, daß in den assoziativen Registern und in
der Leertabelle eine Tabelle erscheint, die 23 assoziative Worte, gefolgt von einem einen Ende-der-Tabelle-Benutzungskode
(EOT) enthaltenden assoziativen Wort, enthält. Weiter sei angenommen, daß ein mit einem
nicht in der Tabelle erscheinenden Wort übereinstimmender Befehl gegeben wird. Die Leertabellensuche wird
dabei aufdie vorher beschriebene Weise durchgeführt, wobei jedes assoziative Wort um eine Position oder Stelle
zurück verschoben wird. Um die »Lücke« am Kopf der Tabelle auszufüllen, wird dann ein assoziatives Wort eingesetzt,
das einen »Null«-Kode enthält, welcher angibt, daß das assoziative Wort nicht mit einem Blatt der Leeroder
Zeilentabelle übereinstimmt. Der Nullkode wird durch Änderung des Benutzungskodes durch die Schaltung
87 in Fig. 5 erzeugt.
Tabelle IX Nullbildung
Tabellenposition
AROO AROl AROl AR 03
AR 04 AR 05 AR 06 AR 07
AR 08
Vor der Suche | Nach der Suche |
0 | NULL |
1 | 0 |
2 | 1 |
3 | 2 |
4 | 3 |
5 | 4 |
6 | 5 |
7 | 6 |
8 | 7 |
13
25 06 117 | Nach der Suche | |
Fortsetzung | 8 | |
Tabellenposition | Vor der Suche | 9 |
AR 09 | 9 | 10 |
AKiO | 10 | 11 |
AR H | 11 | 12 |
ARlZ | 12 | 13 |
ARU | 13 | 14 |
ARU | 14 | 15 |
AR IS | 15 | 16 |
4400 | 16 | 17 |
4440 | 17 | 18 |
4480 | 18 | 19 |
44C0 | 19 | 20 |
4500 | 20 | 21 |
4540 | 21 | 22 |
4580 | 22 | 23 |
45C0 | 23 | EOT |
4600 | EOT | |
4640 | ||
Aus den Fi g. 2 und 3 geht hervor, daß das assoziative Wort einen »Sperr«-Kode enthält, der einen Programmschutzkode
darstellt. Der Sperrkode wird gemäß Fig. 4 zu den Sperrschaltungen 19rf und von diesen zu den
Vergleichsschaltungen 54 (F i g. 5) übertragen. Über die Einschreibdatenleitung 51 wird ein »Schlüssel«-Wort in
das Register 52 eingeführt, und dieses Wort enthält vier Schlüssel mit dem Format gemäß Fig. 7. Gemäß den
F i g. 7 und 5 sind vier Schlüsselkode vorgesehen, die von den Befehls- oder ΙΟ-Abschnitten des Rechners in das
Register 52 eingegeben werden. Jedem Schlüsselkode geht ein entsprechender Sperrkode mit drei Bits voraus.
Wenn der Sperrkode eines assoziativen Worts einem Schlüsselkode entspricht, wird die absolute Seitenadresse
in die Lage versetzt, die vorher beschriebenen Operationen durchzuführen. Wenn keine Übereinstimmung zwisehen
dem Sperrkode und einem der vier Schlüsselkode vorhanden ist, wird ein Zugriff zur betreffenden Seite
des Speichers blockiert. Die jedem Schlüsselkode zugeordneten Sperrkode blockieren bestimmte Operationen
bei der Durchführung der absoluten Adressierung. Wenn daher das erste Bit des Sperrkodes eines bestimmten,
zugeordneten Schlüssels gesetzt ist, kann die CPU für Einschreiboperationer. gesperrt werden; wenn das zweite
Bit gesetzt ist, kann die CPU für Leseoperationen gesperrt werden; ist dagegen das dritte Bit gesetzt, so kann die
genannte Einheit für Instruktionsbezugnahmen gesperrt werden. Unter Verwendung der Sperr- und Schlüsselkode
können die absoluten Adressen für die Operation für spezielle Funktionen gehandhabt werden, während
andere Funktionen gesperrt werden. Die Sperrauswahl wird, wie dargestellt, zur Sperr-Fan-in-Sch^ltung 17
(F i g. 4) zurück übertragen. Weiterhin wird durch einen Vergleich der Schlüssel- und Sperrkode durch die Vergleichsschaltungen
54 eine bestimmte Schlüsselfunktion über die Schaltungen 57-60 gemäß F i g. 5 ausgewählt,
um die Cause-Bit-Auswahlschaltung 62 zu betätigen.
Es wird somit eine Adreßumsetzungseinrichtung zur Ermöglichung der Aufstellung einer absoluten Adresse
für den Zugriff zu einem zentralen Speicher eines Rechners geschaffen. Häufig benutzten Adressen wird in einer
assoziativen Registertabelle Priorität bzw. Vorrang eingeräumt, während weniger häufig benutzte Adressen in
der Tabelle schrittweise der Reihe nach abwärts verlagert werden. Wenn in der Tabelle eine Suche nach einer
nicht in einem assoziativen Register enthaltenen Adresse eingeleitet wird, wird die im assoziativen Register in
der niedrigsten Stelle stehende Adresse in die höchste Stelle der Leer- oder Zeilentabelle verlagert, während die
anderen Worte zum Speicher überführt werden. Das übereinstimmende Wort wird während seines Durchlaufs
durch die Register festgestellt und in die höchste Vorrangstellung gebracht. Die Registerinhalte werden zum
Speicher zurückgeführt, und die früheren Inhalte werden in die Register zurück übertragen.
Durch Handhabung der Register werden zudem die normalerweise zwischen den im Speicher gespeicherten
assoziativen Worten auftretenden Spalte bzw. Lücken automatisch geschlossen, so daß eine Zeitvergeudung für
das Durchforschen der leeren Register- und Speicherpositionen vermieden wird.
Zusammenfassend wird also eine Einrichtung zur Bildung einer absoluten Adresse für den Zugriff zum Speicher
eines Rechners geschaffen, bei welcher eine Anzahl von assoziativen Registern, die jeweils ein assoziatives
Wort enthalten, der Reihe nach angeordnet sind und jedes assoziative Wort eine absolute Seitenadresse und eine
virtuelle Seitenadresse besitzt. Dabei sind Einrichtungen zum Vergleichen der virtuellen Seitenadressen der
assoziativen Worte mit einer virtuellen Adresse eines Arbeitsprogramms sowie eine Einrichtung zum sequentiellen
Verschieben der assoziativen Worte vorgesehen, so daß das die virtuelle Seitenadresse, welche der
virtuellen Adresse des Arbeitsprogramms entspricht, enthaltene assoziative Wort in das assoziative Register der
höchsten Stelle eingesetzt wird.
Hierzu 5 Blatt Zeichnungen
Claims (1)
- Patentansprüche:I. Adreßumsetzungsemrichtung zur Bildung einer absoluten Adresse für den Zugriff zum Speicher eines elektronischen Rechners, mitmehreren assoziativen Registern zur Speicherung jeweils eines assoziativen Worts, von denen jedes eine absolute und eine virtuelle Serienadresse besitzt,einer Empfangseinrichtung zur Aufnahme einer virtuellen Adresse aus einem Arbeitsprogiamm, wobei die virtuelle Adresse aus einer virtuellen Seitenadresse und einer Wortadresse besteht,
einer Vergleichseinrichtung zum Vergleichen der virtuellen Seitenadresse der virtuellen Adresse des Arbeitsprogramms mit der virtuellen Seitenadresse in mindestens einigen der Register,einer ersten Steuereinrichtung, welche anspricht, wenn die Vergleichseinrichtung eine Übereinstimmung zwischen der virtuellen Seitenadresse der virtuellen Adresse des Arbeitsprogramms und einer virtuellen Seitenadresse eines assoziativen Wortes feststellt, und
einem auf die Vergleichseinrichtung ansprechenden Speicheradressenregister zur Speicherung der absolu-IS ten Seitenadresse des die entsprechende virtuelle Seitenadresse enthaltenden assoziativen Worts,
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/477,215 US3938100A (en) | 1974-06-07 | 1974-06-07 | Virtual addressing apparatus for addressing the memory of a computer utilizing associative addressing techniques |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2506117A1 DE2506117A1 (de) | 1976-01-02 |
DE2506117C2 true DE2506117C2 (de) | 1986-04-03 |
Family
ID=23895003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2506117A Expired DE2506117C2 (de) | 1974-06-07 | 1975-02-13 | Adreßumsetzungseinrichtung zur Bildung einer absoluten Adresse |
Country Status (7)
Country | Link |
---|---|
US (1) | US3938100A (de) |
JP (1) | JPS5732428B2 (de) |
CA (1) | CA1015865A (de) |
DE (1) | DE2506117C2 (de) |
FR (1) | FR2274086A1 (de) |
GB (1) | GB1477977A (de) |
NL (1) | NL180887C (de) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4020470A (en) * | 1975-06-06 | 1977-04-26 | Ibm Corporation | Simultaneous addressing of different locations in a storage unit |
US4053948A (en) * | 1976-06-21 | 1977-10-11 | Ibm Corporation | Look aside array invalidation mechanism |
US4084226A (en) * | 1976-09-24 | 1978-04-11 | Sperry Rand Corporation | Virtual address translator |
US4096568A (en) * | 1976-09-24 | 1978-06-20 | Sperry Rand Corporation | Virtual address translator |
US4099256A (en) * | 1976-11-16 | 1978-07-04 | Bell Telephone Laboratories, Incorporated | Method and apparatus for establishing, reading, and rapidly clearing a translation table memory |
GB2008821B (en) * | 1977-11-04 | 1982-01-13 | Sperry Rand Corp | Digital computers |
US4241401A (en) * | 1977-12-19 | 1980-12-23 | Sperry Corporation | Virtual address translator utilizing interrupt level code |
US4218743A (en) * | 1978-07-17 | 1980-08-19 | International Business Machines Corporation | Address translation apparatus |
US4170039A (en) * | 1978-07-17 | 1979-10-02 | International Business Machines Corporation | Virtual address translation speed up technique |
DE2842288A1 (de) * | 1978-09-28 | 1980-04-17 | Siemens Ag | Datentransferschalter mit assoziativer adressauswahl in einem virtuellen speicher |
US4277826A (en) * | 1978-10-23 | 1981-07-07 | Collins Robert W | Synchronizing mechanism for page replacement control |
US4300208A (en) * | 1979-11-30 | 1981-11-10 | Control Data Corporation | Controlling which of two addresses is used by a microcode memory |
US4482952A (en) * | 1980-12-15 | 1984-11-13 | Nippon Electric Co., Ltd. | Virtual addressing system using page field comparisons to selectively validate cache buffer data on read main memory data |
US4439830A (en) * | 1981-11-09 | 1984-03-27 | Control Data Corporation | Computer system key and lock protection mechanism |
US4926316A (en) * | 1982-09-29 | 1990-05-15 | Apple Computer, Inc. | Memory management unit with overlapping control for accessing main memory of a digital computer |
GB2127994B (en) * | 1982-09-29 | 1987-01-21 | Apple Computer | Memory management unit for digital computer |
US4538241A (en) * | 1983-07-14 | 1985-08-27 | Burroughs Corporation | Address translation buffer |
US4532606A (en) * | 1983-07-14 | 1985-07-30 | Burroughs Corporation | Content addressable memory cell with shift capability |
US4587610A (en) * | 1984-02-10 | 1986-05-06 | Prime Computer, Inc. | Address translation systems for high speed computer memories |
US4821171A (en) * | 1985-05-07 | 1989-04-11 | Prime Computer, Inc. | System of selective purging of address translation in computer memories |
US4868738A (en) * | 1985-08-15 | 1989-09-19 | Lanier Business Products, Inc. | Operating system independent virtual memory computer system |
JPH07104868B2 (ja) * | 1988-04-08 | 1995-11-13 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | データ記憶検索システム |
US4965720A (en) * | 1988-07-18 | 1990-10-23 | International Business Machines Corporation | Directed address generation for virtual-address data processors |
JPH0373328U (de) * | 1989-11-22 | 1991-07-24 | ||
GB2251102B (en) * | 1990-12-21 | 1995-03-15 | Sun Microsystems Inc | Translation lookaside buffer |
EP0506236A1 (de) * | 1991-03-13 | 1992-09-30 | International Business Machines Corporation | Adressübersetzungseinrichtung |
JPH0581133A (ja) * | 1991-09-19 | 1993-04-02 | Nec Corp | 情報処理装置 |
US5204633A (en) * | 1992-02-25 | 1993-04-20 | International Business Machines Corporation | Electromagnetic contactor with closure fault indicator |
US5497474A (en) * | 1993-02-25 | 1996-03-05 | Franklin Electronic Publishers, Incorporated | Data stream addressing |
US6370655B1 (en) * | 1998-10-19 | 2002-04-09 | Winbond Electronics Corp. | Method and system for reversed-sequence code loading into partially defective memory |
US7013355B2 (en) * | 2003-01-09 | 2006-03-14 | Micrel, Incorporated | Device and method for improved serial bus transaction using incremental address decode |
TW591388B (en) * | 2003-02-21 | 2004-06-11 | Via Tech Inc | Memory address decoding method and related apparatus by bit-pattern matching |
TWI221221B (en) * | 2003-02-27 | 2004-09-21 | Via Tech Inc | Address decoding method and related apparatus by comparing mutually exclusive bit-patterns of address |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3292153A (en) * | 1962-10-01 | 1966-12-13 | Burroughs Corp | Memory system |
GB1124017A (en) * | 1964-12-17 | 1968-08-14 | English Electric Computers Ltd | Data storage apparatus |
US3533075A (en) * | 1967-10-19 | 1970-10-06 | Ibm | Dynamic address translation unit with look-ahead |
US3588839A (en) * | 1969-01-15 | 1971-06-28 | Ibm | Hierarchical memory updating system |
US3685020A (en) * | 1970-05-25 | 1972-08-15 | Cogar Corp | Compound and multilevel memories |
FR10582E (fr) * | 1970-06-29 | 1909-07-30 | Paul Alexis Victor Lerolle | Jeu de serrures avec passe-partout |
US3693165A (en) * | 1971-06-29 | 1972-09-19 | Ibm | Parallel addressing of a storage hierarchy in a data processing system using virtual addressing |
US3786427A (en) * | 1971-06-29 | 1974-01-15 | Ibm | Dynamic address translation reversed |
US3761881A (en) * | 1971-06-30 | 1973-09-25 | Ibm | Translation storage scheme for virtual memory system |
US3764996A (en) * | 1971-12-23 | 1973-10-09 | Ibm | Storage control and address translation |
US3839706A (en) * | 1973-07-02 | 1974-10-01 | Ibm | Input/output channel relocation storage protect mechanism |
-
1974
- 1974-06-07 US US05/477,215 patent/US3938100A/en not_active Expired - Lifetime
-
1975
- 1975-02-13 DE DE2506117A patent/DE2506117C2/de not_active Expired
- 1975-03-20 JP JP3310775A patent/JPS5732428B2/ja not_active Expired
- 1975-05-07 GB GB1919975A patent/GB1477977A/en not_active Expired
- 1975-05-21 CA CA227,435A patent/CA1015865A/en not_active Expired
- 1975-06-06 FR FR7517810A patent/FR2274086A1/fr active Granted
- 1975-06-06 NL NLAANVRAGE7506726,A patent/NL180887C/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
GB1477977A (en) | 1977-06-29 |
NL7506726A (nl) | 1975-12-09 |
JPS50159934A (de) | 1975-12-24 |
DE2506117A1 (de) | 1976-01-02 |
JPS5732428B2 (de) | 1982-07-10 |
FR2274086A1 (fr) | 1976-01-02 |
US3938100A (en) | 1976-02-10 |
CA1015865A (en) | 1977-08-16 |
AU8154175A (en) | 1976-12-02 |
FR2274086B1 (de) | 1980-08-01 |
NL180887C (nl) | 1987-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2506117C2 (de) | Adreßumsetzungseinrichtung zur Bildung einer absoluten Adresse | |
DE1499182C3 (de) | Datenspeichersystem | |
DE2856133C2 (de) | Datenverarbeitungsvorrichtung mit einem Hauptspeicher und einem Assoziativspeicher als Pufferspeicher | |
DE2463200C2 (de) | ||
DE2730328C3 (de) | Schaltungsanordnung zur Feststellung des bestübereinstimmenden Datenworts von in einem Datenwort-Speicher gespeicherten Datenworten mit einem Suchwort | |
DE3807997A1 (de) | Ic-karte mit interner fehlerpruefung | |
DE69027017T2 (de) | Anordnung und Verfahren zur Speicherverwaltung in einem Mikrorechner | |
DE1286789B (de) | Einrichtung an einem elektronischen Ziffernrechner zum schnellen Datenaustausch zwischen der Verarbeitungseinheit und dem zentralen Speicher | |
DE3688738T2 (de) | Musteradressierbarer speicher. | |
DE19621768A1 (de) | Telefon mit Aufnahmevorrichtung für eine Telefonspeicherkarte und Verfahren zum Übertragen von Daten einer Telefonspeicherkarte | |
DE2856680A1 (de) | Befehlspuffer fuer ein datenverarbeitungssystem | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE3234892C2 (de) | ||
DE1774607B2 (de) | Speicheranordnung mit einem informationszerstoerend lesbaren speicher | |
EP0230994B1 (de) | Verfahren zur Steuerung des Programmablaufs bei der Formularbearbeitung in Datenverarbeitungsanlagen | |
DE3852694T2 (de) | Datenverarbeitungsvorrichtung. | |
DE1221037B (de) | Verfahren zur Speicherung hierarchisch geordneter Datenketten und Anordnung zur Durchfuehrung dieses Verfahrens | |
WO2001006347A1 (de) | Operandenstapelspeicher und verfahren zum betreiben eines operandenstapelspeichers | |
EP0535265A1 (de) | Verfahren zur Erstellung einer ablauffähigen Konfiguration eines in einen Systemspeicherbereich eines Prozessorsystems ladbaren Systemprogramms | |
DE2912037A1 (de) | Elektronisches geraet zur speicherung eines betriebsablaufs | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher | |
DE2419836A1 (de) | Verfahren zur durchfuehrung von unterprogramm-sprungbefehlen in datenverarbeitungsanlagen | |
DE68928011T2 (de) | Datenverarbeitungsgerät | |
DE69304382T2 (de) | Hochgeschwindigkeitssortiergerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8128 | New person/name/address of the agent |
Representative=s name: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZ |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |