DE2506117A1 - Vorrichtung zur bildung einer absoluten adresse fuer den zugriff zu einem speicher eines elektronischen rechners - Google Patents

Vorrichtung zur bildung einer absoluten adresse fuer den zugriff zu einem speicher eines elektronischen rechners

Info

Publication number
DE2506117A1
DE2506117A1 DE19752506117 DE2506117A DE2506117A1 DE 2506117 A1 DE2506117 A1 DE 2506117A1 DE 19752506117 DE19752506117 DE 19752506117 DE 2506117 A DE2506117 A DE 2506117A DE 2506117 A1 DE2506117 A1 DE 2506117A1
Authority
DE
Germany
Prior art keywords
associative
word
register
virtual
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19752506117
Other languages
English (en)
Other versions
DE2506117C2 (de
Inventor
Louis Kent Steiner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Control Data Corp
Original Assignee
Control Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Control Data Corp filed Critical Control Data Corp
Publication of DE2506117A1 publication Critical patent/DE2506117A1/de
Application granted granted Critical
Publication of DE2506117C2 publication Critical patent/DE2506117C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list

Description

Die Erfindung bezieht sich auf Rechner-Adressiertechniken und betrifft insbesondere eine Vorrichtung zum Adressieren eines Rechnerspeichers.
Bisher wurde eine "virtuelle Adressierung" unter Verwendung von Rechner-Programmausrüstung bzw. -Software durchgeführt, um einen Zugriff zu Daten und Informationen aus einem zentralen Speicher eines elektronischen Rechners zu erhalten. Der Ausdruck "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. Beispielsweise kann 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ünschte(n) Information(en) herausgeholt werden soll(en).
vl/Bl/ro - 2
509881/0686
Ein mit dem bisherigen Adressierverfahren unter Verwendung von Programmausrüstung 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.
Die Erfindung bezieht sich auf eine Vorrichtung zur Anordnung bzw. Zusammenstellung von zumindest teilweisen absoluten Adressen entsprechend dem Benutzungsausmaß jeder dieser absoluten Adressen. Der Erfindung liegt damit die Aufgabe zugrunde, eine Adressiervorrichtung für einen Rechner zu schaffen, in welchem eine Anzahl von zumindest teilweisen absoluten Adressen zumindest zum Teil in einer zweckmäßigen Position gespeichert sind, so daß sie durch ein Arbeitsprogramm ohne weiteres herausgreifbar sind.
Im Zuge dieser Aufgabe bezweckt die Erfindung auch die Schaffung eines Gerätes, bei welchem die absoluten Adressen unter Verwendung 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.
Die Erfindung bezweckt damit auch die Schaffung von Adressiertechniken oder -verfahren, bei denen Datenblätter aus einem Speicher unter Verwendung einer Blattabelle herausgegriffen werden können, die zumindest zum Teil in vorbestimmten assoziativen Registern enthalten ist, während ihr restlicher Teil über eine Zeilentabelle (space table) zugreifbar ist.
509881/0686
Weiterhin befaßt sich die Erfindung mit der Schaffung eines Gerätes zum Adressieren des Zentralspeichers eines Rechners, bei welchem die Adressen sequentiell in einer
Reihenfolge untersucht werden, bei welcher die am meisten benutzten Adressen zuerst geprüft und dann, nach Durchsicht einer vorbestimmten Zahl derartiger Adressen, wei- ' tere Adressen zur Prüfung eingeführt werden können. Wenn eine solche weitere Adresse eine zu benutzende Adresse darstellt, wird sie anschließend in eine Position großen Vorranges gebracht.
Die genannte Aufgabe wird bei einem Gerät zur Bildung einer absoluten Adresse für den Zugriff zum Speicher eines elektronischen Rechners erfindungsgemäß gelöst durch mehrere Register zur Speicherung jeweils eines assoziativen Datenworts, yon denen jedes eine absolute und eine virtuelle Blattidentifiziergröße besitzt, wobei die Register in einer Reihenfolge angeordnet sind, durch Leseeinrichtungen zum sequentiellen Herauslesen der assoziativen Worte aus dem Speicher in das Register der höchsten Stelle, durch Schiebeeinrichtungen zum sequentiellen Verschieben der assoziativen Worte aus dem Register einer höheren Ordnung in ein Register einer niedrigeren Ordnung, durch Empfänger- oder Aufnahmeeinrichtungen zum Aufnehmen einer virtuellen Adresse von einem Arbeitsprogramm, wobei die virtuelle Adresse eine virtuelle Blatt- und eine Wortidentifiziergröße besitzt, durch Vergleichseinrichtungen zum Vergleichen der virtuellen Blattidentifiziergröße der virtuellen Adresse mit der virtuellen Blatidentifiziergröße in mindestens einigen Registern, durch eine erste Steuereinrichtung, welche anspricht, wenn die Vergleichseinrichtung (en) eine Übereinstimmung zwischen der virtuellen Blattidentifiziergröße der virtuellen Adresse und einer virtuellen Blattidentifiziergröße eines assoziativen Worts
509881/0686
feststellt, und das die betreffenden virtuellen Blattidentifiziergrößen enthaltende assoziative Wort in das Register der höchsten Ordnung überträgt, wobei die erste Steuereinrichtung die Schiebeeinrichtung betätigt, um andere assoziative Worte zu Registern niedrigerer Ordnung zu verschieben, und durch eine auf die Vergleichseinrichtungen ansprechende Speicheradressenregistereinrichtung zur Speicherung der absoluten Blattidentifiziergröße des die entsprechende virtuelle Blattidentifiziergröße enthaltenden assoziativen Worts.
Erfindungsgemäß sind mehrere assoziative Register fortlaufend so angeordnet, daß sie assoziative Worteenthalten, die beim Zugriff durch ein Arbeitsprogramm zur Bildung einer absoluten Adresse für die aus dem Zentralspeicher herauszugreifenden 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 gesuchten Daten gebildet, und die Daten können aus dem Speicher herausgegriffen werden. Falls die assoziativen Register jedoch die richtige Adresse nicht enthalten, werden weitere Adressen vom Speicher durch die assoziativen Register durchgesucht, bis die richtige Adresse gefunden worden ist.
Ein Merkmal der Erfindung besteht in der Schaffung eines Gerätes zur sequentiellen (aufeinanderfolgenden) Anordnung der Adressen in den assoziativen Registern, so daß die am vorrangigsten benutzten Adressen in assoziativen Registern höherer Rangordnung enthalten sind.
Ein anderes Merkmal der Erfindung bezieht sich auf eine Vorrichtung, mit deren Hilfe ein in den assoziativen Registern oder im Speicher befindliches assoziatives Wort
509881/0686
in eine verhältnismäßig hohe Vorrangstellung in den assoziativen Registern verbracht wird.
Ein weiteres Merkmal der Erfindung betrifft ein Gerät zur Steuerung der assoziativen Register in der Weise, daß dann, wenn ein vorher nicht in einem solchen Register enthaltenes Wort aufgefunden wird, dieses Wort danach im assoziativen Register für die spätere Benutzung in einer Prioritätsposition gespeichert wird, während Worte niedrigerer Priorität um eine Prioritätsstufe abgestuft werden.
Noch ein weiteres Merkmal der Erfindung betrifft ein Gerät zur Handhabung von assoziativen Worten in den assoziativen Registern und in der Zeilentabelle (space table) in der Weise, daß dann, wenn ein Wort in eine Position höherer Priorität verschoben wurde, die an der absoluten Adresse dieses verschobenen Worts bestehende Lücke durch Verschiebung anderer Worte ausgefüllt wird.
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 und Unterprogramme und andere Arten von in einem Rechnerspeicher gespeichertem Material umfassen. Diese Ausdrücke sollen sich mithin nicht auf das von einem Rechner verarbeitete Material beschränken, sondern auch zentrales Material zur Beinflussung des Rechnerbetriebs beinhalten. Der in der Beschreibung benutzte Ausdruck "Arbeitsprogramm" soll sich auf alle dem Rechner eingegebenen Befehle oder Anweisungen beziehen, einschließlich der im Speicher zurückgehaltenen sowie der durch eine Eingabevorrichtung zur Beeinflussung einer speziellen Arbeit eingegebenen.
509881/0686
Im folgenden ist eine bevorzugte Ausführungsform der Er- · findung anhand der beigefügten Zeichnung näher erläutert. Es zeigen:
Fig. 1 ein Blockflußdiagramm zur Erläuterung des Konzepts der virtuellen Adresse, soweit es auf die Erfindung zutrifft,
Fig. 2 eine graphische Darstellung des Formats der assoziativen Worte, wie es in Verbindung mit der Erfindung nützlich ist,
Fig. 3 ein Flußdiagramm zur Darstellung einer Art von Informationen von absoluten Adressen für den erfindungsgemäßen Speicherzugriff,
Fig. 4 und 5 Blockschaltbilder einer bevorzugten Ausführungsform des erfindungsgemäßen Gerätes,
Fig. 6 ein Flußdiagramm, welches die Lese- und Einschreibfunktionen der Vorrichtung gemäß den Fig. 4 und 5 veranschaulicht; und
Fig. 7 eine graphische Darstellung bestimmter, für die Erfindung zweckmäßiger Wortformate.
Wie speziell aus Fig. 1 hervorgeht, wird eine absolute Adresse für den Zugriff zu einem Speicher durch eine Instruktion von einem Arbeitsprogramm gebildet. Diese Adresse, die als "virtuelle Adresse" bezeichnet werden kann, enthält eine Virtuellblatt- und eine Wortidentifiziergröße. Eine Blatttabelle, die eine Anzahl von assoziativen Worten enthält, wird zum Vergleichen und Suchen des assoziativen Worts benutzt, welches der betreffenden Virtuelljalattidentifizier-
509881/068 6
größe zugeordnet ist. Wenn dieses assoziative Wort aufgefunden worden ist, wird eine Absolutblattidentifiziergröße •geliefert, die in Kombination mit der Wortidentifiziergröße von der virtuellen Adresse e'ine absolute Adresse für den Zugriff zu einer bestimmten Position im Speicher bildet. Wie noch näher erläutert werden wird, ist die Blattabelle zumindest teilweise in mehreren Registern gespeichert, z.B. in sechzehn assoziativen Registern, um durch das Programm leicht zugreifbar zu sein. Der restliche Teil der Blatttabelle ist im Speicher in einer vorbestimmten, im folgenden als Zeilentabelle (space table) bezeichneten Position gespeichert, wie dies noch näher erläutert werden wird. Vorzugsweise enthält zumindest eines der assoziativen Worte nahe des Endes der Blattabelle 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.
Zur Erläuterung sei im folgenden angenommen, daß die im Speicher des Rechners enthaltenen Daten in "Blättern" (pages) angeordnet bzw. zusammengesetzt sind und daß die Blattgröße aus Veranschaulichungsgründen jeweils einem von zwei Formaten entsprechen kann, nämlich einem großen Blatt und einem kleinen Blatt. Weiterhin sei angenommen, daß ein großes Blatt 65 536 Worte zu je 64 Bits und ein kleines Blatt.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-Absolutblattidentifiziergröße erfaßt werden können, während ein Speicher mit 16 großen Blättern durch eine 4-Bit-Absolutblattidentifiziergröße zugreifbar ist. Weiterhin ist. ersichtlich, daß zum Heraus-
509881/0686
greifen eines Einzelworts aus einem großen Blatt mit mehr als 65OOO Worten eine 16-Bit-Wortidentifiziergröße erforderlich ist, während für das Herausgreifen eines Einzelworts aus einem kleinen Blatt mit 512 Worten nur eine 9-Bit-Wortidentifiziergröße nötig ist.
Im Hinblick auf die vorstehenden Erläuterungen sei nunmehr auf Fig. 2 verwiesen, welche das Absolutwortformat für ein großes und ein kleines Blatt veranschaulicht. Gemäß dem oberen Teil von Fig. 2, welcher das assoziative Wortformat eines kleinen Blatts zeigt, ist ein aus 64 Bits bestehendes assoziatives Wort vorgesehen, bei dem die Bits O bis 3 nicht benutzt werden, das Bit 4 ein Kennzeichenbit (flag) ist, die Bits 5 bis 15 die Absolutblattidentifiziergröße enthalten, die Bits 16 bis 18 einen Benutzungskode beinhalten, die Bits 19 bis 30 einen Verriegelungs- bzw. Sperrkode (lock code) enthalten und die Bits 31 bis 63 eine virtuelle Blattidentifiziergröße beinhalten. Gemäß dem unteren Teil von Fig. 2 besteht das assoziative Wortformat für ein grosses Blatt 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 Absolutblattidentifiziergröße 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 virtuelle Blattidentifiziergröße 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 Blattidentifiziergröße, einen Benutzungskode, einen Sperrkode und eine virtuelle Blattidentifiziergröße enthaltende assoziative Wort durch eine Blattabelle geliefert wird, während eine
SO 98 81/0686
virtuelle Adresse gleichfalls vom Arbeitsprogramm (Fig. 1) gebildet wird Die virtuelle Blattidentifiziergröße eines assoziativen Worts wird mit der Identifiziergröße einer virtuellen Adresse (z.B. vom Ablaufprogramm) verglichen, und wenn eine Übereinstimmung auftritt, wird die absolute Blattidentifiziergröße vom assoziativen Wort zum Speicheradressenregister übertragen, während eine Wortidentifiziergröße von der virtuellen Adresse zum Speicheradressenregister für den Zugriff zum Speicher überführt wird. Gemäß Fig. 3 wird im Fall eines kleinen Blatts die in den Bits 31 bis 63 des assoziativen Worts enthaltene virtuelle Blattidentifiziergröße mit einer in den Bits 16 bis 48 der virtuellen Adresse enthaltenen Identifiziergröße verglichen, und wenn Übereinstimmung oder Koinzidenz vorliegt, wird eine absolute Blattidentifiziergröße 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 Wortidentifiziergröße 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 56 des assoziativen Worts enthaltene virtuelle Wortidentifiziergröße mit einer Identifiziergröße 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 Blattidentifiziergröße zu den Bitpositionen 38 bis 41 des Speicheradressenregisters übertragen, während eine in den Bitpositionen 42 bis 54 der virtuellen Adresse enthaltene Wortidentifiziergröße 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 Information(en).
509881/06 8 6
- ίο -
Die Fig. 4 und 5 sind Blockschaltbilder einer bevorzugten Ausführungsform der Erfindung zur Durchführung der erfindungsgemäßen Adressiertechnik. Wie speziell aus Fig. 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 17 und einer Virtuellblattidendifiziergrößen-Fan-in-Schaltung 18 liefern. Ein Fan-inSchaltkreis 13, welcher die einzelnen Fan-inSchaltungen 14 bis 18 umfaßt, liefert Eingangssignale zu einem ersten Register 19, das als assoziatives Register AROO bezeichnet ist. Dieses Register enthält ein Register-Adressenkennzeichen 19a, eine Absolutblattidentifiziergröße 19b, einen Benutzungskode 19c, einen Sperrkode 19d und eine virtuelle Blattidentifiziergröße 19e. Die Lesedaten werden ebenfalls von den Lesekreisen 11 und 12 zur Fan-in-Schaltung 20 des assoziativen Registers AR01 geliefert. Zusätzlich liefert das assoziative Register AROO 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 AR02 darstellt. Das mit 22 bezeichnete assoziative Register AR01 empfängt ein Eingangssignal von der Fan-inSchaltung 20 und liefert ein Ausgangssignal zur Fan-in-Schältung 21, die ihrerseits ein Ausgangssignal zu einem Register 22 abgibt, welches das assoziative Register AR02 darstellt. Letzteres gibt ein Ausgangssignal an das Register 24 und hierauf der Reihe nach an die 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 3ines vorgeschalteten Registers in ein nachgeschaltetes Register übertragen wird. Die Register 23 bis 32 sind somit aufeinanderfolgende assoziative Register, die mit AR02 - AR11 bezeichnet sind. Das mit 32 bezeichnete elfte assoziative Register AR11 liefert ein Ausgangssignal zu dem mit 33 bezeichneten Register AR12,
509881/0686
das seinerseits ein Ausgangssignal zu dem mit 34 bezeichneten Register AR13 liefert. Das assoziative Register AR13 gibt ein Ausgangssignal an eine Fan-in-Schaltung 35 ab, die ihrerseits ein Ausgangssignal zu dem assoziativen Register AR14 (36) liefert. Gemäß Fig. 4 sind die Ausgänge der Register AR11 - AR14 an eine Fan-in-Schaltung 37 als Eingang zum Register AR15 (38) angeschlossen. Ebenso empfängt eine Fan-in-Schaltung 35 die Eingangssignale von beiden Registern AR12 und AR13. Das Register AR15 gibt über einen Kanal 39 ein Ausgangssignal an jede Fan-inSchaltung des Fän-in-Schaltkreises 13 ab, welcher dem assoziativen Register AROO zugeordnet ist. Außerdem liefern die assoziativen Register AR14 und AR15 ein Ausgangssignal zu der mit 40 bezeichneten Einschreibleitung I. Alle Register AROO - AR15 sind ähnlich aufgebaut wie das Register AROO. Die Fan-in-Schaltungen 20, 21, 35 und 37 ähneln der Schaltung 13» nur mit dem Unterschied, daß nur die Schaltung 13 die Eingängssignale von den Steuer- oder Regelorganen gemäß Fig. 5 empfängt und nur die Fan-inSchaltungen 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 AROO - AR15; die genaue Schaltungsverbindung ist dabei für das Register AROO dargestellt, während die anderen Verbindungen über den Kanal 41 von den Registern ARO1 bis AR15 erfolgen.
Im folgenden ist das Laden der assoziativen Wortregister erläutert.
Fig. 6 veranschaulicht schematisch einen Teil des die .
C rs
5*9881/068©
assoziativen Worte enthaltenden Zentralspeichers. Zur Erläuterung sei angenommen, daß das assoziative Wort O 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-Tabellebzw. 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 AROO - AR15 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 15 zuerst in das Register AROO eingelesen und durch die einzelnen assoziativen Register verschoben wird, bis es schließlich im Register AR15 zum gleichen Zeitpunkt erscheint wie das an der absoluten Adresse 4000 auftretende assoziative Wort 0 im Register AROO erscheint. Die Reihenfolge zur Durchführung des Einlesens oder Ladens der assoziativen Wortregister ist folgende: Zum Zeitpunkt TO werden die assoziativen Worte 14 und 15 von der Hauptleitung I über die betreffenden Lesekreise 11 und 12 (Fig. 4) in die Register AROO und AR01 eingelesen. Während des nächsten Zyklus T1 wird das assoziative Wort 15 zum assoziativen Register AR02 übertragen. Während des Zyklus T2 wird das assoziative Wort zum assoziativen Register AR03 und das Wort 14 zum Register AR02 übertragen, während die Worte 12 "und 13 in die Register AROO bzw. AR01 eingelesen werden. Dieser Vorgang setzt sich bis zum Zeitpunkt T11 fort, an welchem das assoziative Wort 15 zum assoziativen Register AR12 verbracht worden ist. Während des nächsten Zeitzyklus T12 wird das assoziative Wort 15 zu beiden Registern AR13 und AR15 über-
509881/0686
tragen, während des nächsten Zyklus T14 gelangt das assoziative Wort 14 zum Register AR13, und während des Zyklus T14 gelangt das assoziative Wort 14 zum Register AR14, so daß die assoziativen Register AROO - AR15 voll geladen sind, Die folgende Tabelle I gibt die Ladung der einzelnen assoziativen Register zu den einzelnen Zeitpunkten TO - T14 an:
50 988 1/0686
Tabelle I Laden der assoziativen Register
Reg.
Zeit TO T1 T2 Τ3 Τ4 Τ5 Τ6 , Τ7 Τ8 Τ9 Τ10 Τ11 Τ12 Τ13 Τ14
AROO 14 14 12 12 10 10 8 8 6 6 4 4 2 2 0
AR01 15 15 13 13 11 11 9 9 7 7 Ui 5 3 3 1
AR02 15 14 13 12 11 10 9 8 7 6 VJl 4 3 2
AR03 15 14 13 12 11 10 9 8 7 6 5 4 3
AR04 15 14 13 12 11 10 9 8 7 6 5 4
AR05 15 14 13 12 11 10 9 8 7 6 Ul
AR06 15 14 13 12 11 10 9 8 7 6
AR07 15 14 13 12 11 10 9 8 7
AR08 15 14 13 12 11 10 9 8
AR09 15 14 13 12 11 10 9
AR10 15 14 13 12 11 10
AR11 15 14 13 12 11
AR12 15 14 13 12
AR13 15 14 13
AR14 14
AR15 15 15 15
Auf ähnliche Weise können die in den assoziativen Registern AROO bis AR15 enthaltenen Daten in umgekehrter Reihenfolge über die an die Einschreibdatenleitungen 1 angeschlossenen Register AR14 und AR15 im Zentralspeicher gespeichert werden. Die Inhalte der Register AR15 und AR14 werden somit in umgekehrter Reihenfolge, beginnend mit der absoluten Adresse 4300 (Fig. 6), in den Speicher eingeschrieben. Zum Zeitpunkt TO werden die Inhalte der Register AR15 und AR14 also zum Speicher überführt, so daß zum Zeitpunkt T2 der Inhalt des Registers AR13 zum Register AR15 und der Inhalt des Registers AR12 zu beiden Registern AR13 und AR14 weitergegeben werden. Zum Zeitpunkt T2 wird außerdem der Inhalt der Register AR02 - AR11 um eine Stelle bzw. Position verschoben. Zum Zeitpunkt T3 werden die Registerinhalte wiederum verschoben. Dieser Vorgang dauert an, bis die in den Registern AROO - AR15 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 AROO bis AR15 in den Speicher.
09^81 /0686
Tabelle II Speicherung der assoziativen Register
Reg. Zeit
TO T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 T13 T14
AROO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ι 0 !506
AR01 1 1 1 1 1 1 1 1 1 1 1 1 1 1
cn
0
AR02 2 2 1 2 2 2 ■ 2 2 2 2 2 2 2 ι 1
AR03 3 3 2 3 3 3 3 3 3 3 3 3 2
AR04 4 4 3 4 4 4 4 4 4 4 4 3
AR05 5 5 4 5 VJl 5 5 5 5 5 4
AR06 6 6 5 6 6 6 6 6 6 5
AR07 7 7 6 C-- 7; 7 7 7 6
AR08 8 8 7 8 ' 8 8 8 7
AR09 9 9 8 9 9 9 8
AR10 10 10 9 10 10 9
AR11 11 11 10 11 10
AR12 12 12 11 11
AR13 13 13 12
AR14 14 12
AR15 15 13
Gemäß Fig. 5 ist eine Einschreibdatenleitung 50 an eine Einschreibschaltung 51 angeschlossen, die ihrerseits ein Eingangssignal zu Schlüsselregistern 52 liefert, welche eine Anzahl von mit 52a, 52b, 52c und 52d bezeichneten Schlüsselkodes enthalten. Das Ausgangssignal des Registers 52 wird an einen Eingang eines Sperrwählers 53 angelegt, der seinerseits ein Ausgangssignal zur Sperr-Fan-in-Schaltung 17 des Registers AROO gemäß Fig.,4 liefert. Zusätzlich wird ein Ausgangssignal vom Register 52 als Eingangssignal zu einer Sperrschlüssel-Vergleichschaltung 54 geliefert, die ein zweites Eingangssignal von der Sperrschaltung 19d (Fig. 4)der Register AROO - AR15 empfängt. Ein Ausgangssignal vom Register 52 bildet auch ein Eingangssignal zur Sperr-Vergleichschaltung 55. Die Vergleichschaltung 54 liefert ein Eingangssignal zu einer Schlüsselauswahl -Fan- in-Schaltung 56, die ihrerseits ein Eingangssignal zu einzelnen Schlüsselauswahlschaltungen 57, 58, 59 und 60 liefert. Die Ausgangssignale der Auswahlschaltungen 57 bis 60 werden als Eingangssignale zum Sperrwähler 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-inSchaltung 64, die ihrerseits ein Eingangssignal zu Anpaßregistern 65 liefert. Vorzugsweise ist eine der Zahl der assoziativen Register entsprechende Zahl von Anpaßregistern vorgesehen, und zwar sind bei der dargestellten Ausführungsform sechzehn Anpaßregister 65 vorgesehen, welche ein Ausgangssignal zu einer Anpaß-Fan-out-Schaltung 66 liefern, die ihrerseits ein Ausgangssignal an eine Anpaßdetektorschaltung 67 anlegt, welche ein Ausgangssignal zum Cause-Bitwähler 62 schickt. Letzterer liefert die Daten
5098 8 1/0686
zur Datenstroraeinheit bzw. zum Puffer, um diese Einheit bezüglich der Ursache etwaiger Zugriffsunterbrechungen anzuweisen. Der virtuelle Blattidentifiziererkode von der Schaltung 19e der Register AROO - AR15 gemäß Fig. 1 wird als Eingangssignal einer virtuellen Adressen-Vergleichsschaltung 70 eingegeben, welche ein zweites Eingangssignal von einer virtuellen Adressen-Fan-out-Schaltung 71 empfängt, welche ihrerseits ein Eingangssignal vom virtuellen Adressenregister 72 erhält. Letzteres nimmt die Datenstromadressen vom Speicher auf. Die Vergleichsschaltung 70 liefert ein Eingangssignal zur Schlüsselauswahl-Fan-in-Schaltung 56 und zu den Anpaß-Fan-in-Schaltungen 64.
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 Ausgang der Schaltung an die Sperr-Vergleichsschaltung 55 sowie an die Funktionsanforderungsschaltung 78 angeschlossen ist und das Ausgangssignal der Schaltung 78 als Eingangssignal der Funktions-Fan- in-Schaltung 76 eingegeben wird. Das virtuelle Adressenregister 72 liefert ein Ausgangssignal zu einem Hilfsadressenregister 80, das seinerseits Ausgangssignale zu einem Speicheradressenregister 81, zur virtuellen Blatt-Fan- in-Schaltung 18 des Registers AROO (Fig. 4) und zum virtuellen Adressenregister 72 liefert. Eine Absolutadressenauswahlschaltung 85 empfängt ein Eingangssignal von den absoluten Blattidentifiziergrößen 19b der Register AROO AR15 gemäß Fig. 4 und von der Anpaß-Fan-out-Schaltung 66. Die Schaltung 85 liefert ein Ausgangssignal zur Absolutblattidentifizier-Fan-in-Schaltung 15 des Registers AROO gemäß Fig. 4 sowie zum Speicheradressenregister 81. Der Ausgangs-Benutzungskode 19c der Register AROO - AR15 wird an die Benutzungsbitwählschaltung 86 angelegt, die ihrerseits ein Aus gangs signal zu einer Benutzungsbit-Ä'nde rungs -
509881/0686
schaltung 87 zur Eingabe in die Benutzungsbit-Fan-inSchaltung 16 (Fig. 4) des Registers AROO liefert. Außerdem empfängt die Schaltung 86 ein Eingangssignal von der Anpaß-Fan-out-Schaltung 66. Das Speicheradressenregister 81 liefert über einen Kanal 88 ein Ausgangssignal zum Zentralspeicher.
Vor der Erörterung der Arbeitsweise beim Heraussuchen der assoziativen Register zur Bildung 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 Wortformats dargestellt. Es ist zu beachten, daß dieser Kode sowohl im kleinen als auch im großen assoziativen Blatt-Wortformat erscheint. Der Benutzungskode ist ein 3-Bit-Kode, der sich am besten anhand der folgenden Tabelle III erläutern läßt.
509881/0686
Tabelle III
Benutzungskode
Kode Bedeutung
Ende der Tabelle; keine weiteren Blätter in der Tabelle an den folgenden absoluten Adressen vorhanden.
Nullkode; dient nicht zur Kennzeichnung eines im Speicher gespeicherten Blatts.
Kleines (512-Wort) Blatt,auf das nicht durch CPU (Zentraleinheit) Bezug genommen worden ist.
Großes (65 536-Wort) Blatt, auf das nicht durch CPU Bezug genommen worden ist.
100 Kleines Blatt, auf das durch CPU Bezug genommen worden ist; CPU hat ein Wort aus dem Blatt ausgelesen.
101 Großes Blatt, auf das durch CPU Bezug genommen worden ist; CPU hat ein Wort aus dem Blatt ausgelesen.
110 Kleines Blatt, das durch CPU abgeändert worden ist; mindestens ein Bit im Blatt ist geändert worden.
Großes Blatt, durch CPU geändert; mindestens ein Bit des Blatts ist geändert worden.
Der Benutzungskode kann mithin eine Tabelle entsprechend dem Ende des Blattes oder einen Nullzustand des assoziati-
509881/0686
ven Worts anzeigen oder angeben, ob auf ein Blatt durch die CPU Bezug genommen 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 AROO - AR15 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 AROO - AR15 zugeordneten assoziativen Worte werden als zweites Eingangssignal der Schaltung 70 eingegeben. Wenn Übereinstimmung zwischen der virtuellen Blattidentifiziergröße 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 Adressenauswahlschal tungen 85 gewährleistet die Auswahl des· assoziativen Worts. Die absolute Blattidentifiziergröße von der Schaltung 19b (Fig. 4) wird zur absoluten Adressenauswahlschaltung 85 übertragen, um die absolute Adresse auszuwählen, die ihrerseits im Speicheradressenregister 81 gespeichert wird. Die Wortidentifiziergröße der virtuellen Adresse wird vom Wähler 72 in das Register 80 übertragen, um zur Vervollständigung der absoluten Adresse in das Re-
509881/0686
gister 81 eingegeben zu werden. Das Anpaßregister 65 bewirkt außerdem, daß das ausgewählte assoziative Wort ' in einem der Register AROO - AR15 über die Schaltungen 85, 87, 53 und 80 sowie über den Kanal 41 zur Fan-inSchaltung 13 übertragen wird, um unmittelbar in das Register AROO 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 das entsprechende assoziative Wort im Register AROO erscheint, tritt die virtuelle Blattidentifiziergröße in der Schaltung 19e auf, um der virtuellen Adressenvergleichsschaltung 70 eingegeben zu werden und den Anpaßregistern anzuzeigen, daß das gesuchte assoziative Wort sich nunmehr im Register AROO befindet. Die so im Speicheradressenregister 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 AROO - AR15 gespeichert worden ist. Im folgenden sei nunmehr angenommen, daß das gewünschte assoziative Wort, das eine Übereinstimmung mit der virtuellen Blattidentifiziergröße des Arbeitsprogramms herstellt, nicht in einem der assoziativen Register AROO - AR15 gespeichert ist.
Wie erwähnt, werden bei einer Datenstromanforderung für Daten aus dem Speicher die assoziativen Register auf eine Übereinstimmung zwischen dem assoziativen Wort und der virtuellen Blattidentifiziergröße untersucht, und wenn eine solche Übereinstimmung bzw. Anpassung vorhanden ist, wird das im gewählten assoziativen Register enthaltene
5 0 9 8 81/0686
Wort in das Register AROO eingelesen, während die anderen Worte um eine Stelle oder Position verschoben werden. Die absolute 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 AROO - AR15 erscheint, werden die Anpaßregister nicht gesetzt. Der Benutzungskode wird durch die Schaltung 19c geprü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 dargestellte 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. geprüft, um festzustellen, ob in einem der assoziativen Register ein "Null"-Kode vorhanden ist. Obgleich die Benutzung des "Null"-Kodes vorher nicht beschrieben worden ist, sei zum Zweck der Erläuterung angenommen, daß in keinem der assoziativen Register AROO - AR15 ein "Null"-Kode erscheint. Wenn dies zutrifft, wird das im Register ARI5 enthaltene assoziative Wort 15 über den Kanal 39 (Fig. 4) zum assoziativen Register AROO 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 AROO und AROT eingelesen, während die assoziativen
509881/0686
Worte 16 usw. über die Lesedatenleitung 1 in die Register übertragen werden, und das Wort 15 wird in Abwärts richtung durch die assoziativen Register durchgeschaltet. Der Vergleich zwischen dem Benutzungskode und der virtuellen Blattidentifiziergröße erfolgt in Verbindung mit den Registern AROO und AR01. Durch Entleerung des Inhalts von 15 der 16 assoziativen Register vermögen die assoziativen Register AROO und AR01 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 Blattidentifiziergröße im Arbeitsprogramm enthält. Gemäß Tabelle IV erscheint das assoziative Wort 15 anfänglich im Register AROO . Während des nächsten Zyklus TO liest die Lesedatenleitung 1 die assoziativen Worte 16 und 17 in die Register AR01 bzw. AROO ein, wodurch die Position des assoziativen Worts 15 zum assoziativen Register AR02 verschoben wird. Die Vergleichsschaltungen (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 AR13 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 T11 angedeutet - die assoziativen Worte 15 bis 23 in den assoziativen Registern AR13 - AR05 in umgekehrter Reihenfolge erscheinen. Beim nächsten Zyklus T12 wird das Wort 15 zum assoziativen Register AR14 und das Wort 16 zum assoziativen Register AR15 ü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
50 9 8 81/0686
vorher das frühere assoziative Wort 16 erschien. Beim nächsten Zyklus T13 wird das assoziative Wort 17 zum Register AR13 überführt, so daß der Inhalt der assoziativen Wortregister AR11 und AR12 beim nächsten Zyklus T14 in die assoziativen Wortregister AR15 bzw. AR14 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 AR13 gehalten wird.
509881/0S8S
Tabelle IV Suche der Leertabelle
Zeit
I TO T1 T2 T3. ..T10 T11 T12 T13 T14 T15 T16 T17 T18 t TO
AROO 15 (T7) |W] 19 19 ro cn
O
cn
AR01 16 16 18 18
AR02 15 16 Ez3 18
AR03 15 16 D3
AR04 15 16 23
AR05 15 22 23
AR06 21 22 23
AR07 20 21 22 23
AR08 19 20 21 22 23
AR09 18 19 20 21 .22 23
AR10 03 18 19 20 21 22 23
AR11 16 GH 18 19 20 21 22 23
AR12 15 16 EZI 18 19 20 21 22 23
AR13 15 16 Ijzl EzI |17 GH HzI EzI
AR14 15 18 20 22
AR15 16 19 21 23
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 AR12 er-' scheint. Sodann wird der Vorgang fortgesetzt, indem das assoziative Wort 17 aus dem assoziativen Register AR13 zum Register AR15 verschoben wird, so daß die Inhalte der Register AROO - AR15 die Worte 0-14 und 17 enthalten. Hierauf wird das assoziative Wort 17 aus dem assoziativen Register AR15 über den Kanal 39 zum Register AROO 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 AROO erscheint.
509881/0686
H- t+ S O ö
0 μ H- Ϊ3- H-
<! rf· Φ <D
Η3 (B H
JB 0 Ρα P
σ* (D η- η-
φ ?0 4 0 C+ φ
Leertabelle
H H- <5 P- Ρ«
Φ CQ Φ H- φ
«+
Φ
2 Φ 4
<!
H
Ol
O
P)
<) % CO
co
CQ
φ O
O
φ
σ*
O
N
φ
§ S H-
P)
H-
O
ca < rf· 0*
ο Φ H- Φ
0* 4 Ρ· <
σ1 φ Φ Cj
£ Ρ· CO 0
s:
ο
OQ
H-
O
φ CQ Ρ-
0* 0 CO rf- φ
rf- φ O 4
N Φ
N H- m P)
Φ P) H- CQ
H- rf· η CO
rf" H- rf- O
< φ N
Φ 4 H-
O 0 P)
P- !&» rf·
φ p3 H-
*1 ο O
O
Hi Φ
0
P) CO ι
C+ > S=:
CO -«Ο ο
C+ rf·
Φ N φ
Φ N P)
1-J
rj W co
Pj CO
Oq co O P-
ο φ
Η·
CQ
N 3
rf- H-
P)
CQ
I Ρ·
Φ
H-
Assoziative Register
O O O
t-3
cn rf·
CQ C O
Φ 9 I
Φ
InJ
Kf
T
C+
φ ro
H 03
σ" H
< φ Φ
O H <
H
φ
P.
φ
0
CO
Ι-·
Ο
CQ 0*
Φ
O
ro
«cn O cn
Tabelle VI Wiederbeladen der assoziativen Register nach Leertabellensuche
Reg. TO T1 T2 T3 T4 T5 T6 T7 Zeit T9 T10 T11 T12 T13 T14 T16
13 13 11 11 9 9 7 7 T8 5 3 3 1 1 O 17
AROO 14 14 12 12 10 10 8 8 VJl 6 4 4 2 2 1 O
AR01 14 13 12 11 10 9 8 6 6 5 4 3 CVJ 2 1
AR02 14 13 12 11 10 9 7 7 6 5 4 3 3 2
AR03 14 13 12 11 10 8 8 7 6 VJl 4 4 3
AR04 14 13 12 11 9 9 8 7 6 VJl 5 4
AR05 14 13 12 10 10 9 8 7 6 6 VJl
AR06 14 13 11 11 10 9 8 7 7 6
AR07 14 12 12 11 10 9 8 8 7
AR08 13 13 12 11 10 9 9 8
AR09 14 14 ' 13 12 11 10 10 9
AR10 14 13 12 11 11 10
AR11 14 13 12 12 11
ARi 2 17 17 17 17 17 17 17 17 17 17 17 14 13 13 12
AR13 17 14 14 14 13
AR14 17 17 17 17 17 17 17 17 17 17 17 17 17 17 14
AR15 17
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 ersichtlicherweise kontinuierlich durch die Register AROO AR15 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 AROO, während alle anderen, vorher vor dem gesuchten Wort stehenden assoziativen Worte um eine Position zurückverschoben werden.
Wie erwähnt, kann das assoziative Wort einen Benutzungskode enthalten, der angibt, daß das betreffende Wort ein "Nullwort" ist, was speziell bedeutet, daß das assoziative Wort keinem Blatt 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 AROO zu verschieben, in das Register AROO eingelesen. Die assoziativen Worte 16 usw. werden in die Register AROO - AR15 eingelesen, und das den Nullkode enthaltende Wort wird gelöscht. Wenn das gesuchte Wort einläuft, wird es in das Register AROO eingelesen, während ein Nullbenutzungskode in seine Position eingesetzt wird. Alle ursprünglich nach dem Nullkode auftretenden assoziativen Worte werden daher in der Tabelle um eine Position oder Stelle vorwärts verschoben, und der Nullkode wird wieder in die Position eingesetzt, welche vorher von dem der virtuellen Blattidentifiziergroße angepaßten assoziativen Wort eingenommen wurde. Gemäß Tabelle VII sei somit angenommen, daß das assoziative Register AR10 ein den Nullkode enthaltendes assoziatives Wort enthält, und daß die virtuelle Blattidentifiziergroße mit dem in der Leertabelle an der absoluten Adresse 4500 erscheinenden assoziativen Wort
5 09881/0686
übereinstimmt. Es wird auf vorher beschriebene Weise eine Leertabellensuche durchgeführt, wobei der im Register ARIO befindliche Nullbenutzungskode in die vorher vom assoziativem Wort 23 an der absoluten Adresse 4500 eingenommene Position und das assoziative Wort-23 in das assoziative Register AROO verschoben wird. Bei jeder Leertabellensuche wird jeweils nur eine Null herausgezogen.
Tabelle VII Leertabellensuche; Null im assoziativen Register
TabellenOOsition Vor der Suche Nach der Suche
AROO 0 IH
AR01 1 0
AR02 2 1
ARO3 3 2
AR04 4 3
AR05 VJl 4
AR06 6 VJl
AR07 7 6
AR08 8 7
AR09 9 8
AR10 NULL 9
AR11 11 11
AR12 12 12
AR13 13 13 ■
AR14 14 14
AR15 15 15
4400 16 16
4440 17 17
4480 18 18
44C0 NULL NULL
4500 20 20
4540 21 21
4580 22 22
45CO 23 NULL
4600 EOT EOT
509881/0686
Wenn die Null in der Leer- oder Zeilentabelle erscheint und das Übereinstimmungswort auf die Null folgt, wird die Null ebenso abwärts verschoben, um die Position des Übereinstimmungs-Worts einzunehmen. Wie aus Tabelle VIII hervorgeht, wird der Nullkode somit von der absoluten Adresse 4480 zur absoluten Adresse 4540 verschoben, während das assoziative Wort 21 von der absoluten Adresse 4540 zum assoziativen Register AROO verschoben wird.
50988 1 /0686
Tabelle VIII Leertabellensuche;
Null TabelleniDOSition in der Leertabelle Nach der Suche
AROO Vor der Suche [|T)
AR01 0 0
AR02 1 1
AR03 2 2
AR04 3 3
AR05 4 4
AR06 5 5
AR07 6 6
AR08 7 7
AR09 8 8
AR10 9 9
AR11 10 10
AR12 11 11
AR13 12 12
AR14 13 13
AR15 14 14
4400 15 15
4440 16 16
4480 17 17
44C0 NULL 19
4500 19 20 .
4540 20 NULL
4580 £3 22
45C0 22 23
4600 23 EOT
EOT
509881/0686
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 auf die 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.
509881/0686
Tabelle IX Nach der Suche
Nullbildung NULL
TabellenDOsition Vor der Suche 0
AROO 0 1
AR01 1 2
AR02 2 . 3
AR03 - 3 4
AR04 4 5
AR05 5 6
AR06 6 7
AR07 7 8
AR08 8 9
AR09 9 10
AR10 10 11
AR11 11 12
AR12 12 13 Γ
AR13 13 14
AR14 14 15
AR15 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
509881 /0686
Aus den Fig. 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 19d und von diesen zu den Vergleichsschaltungen 54 (Fig. 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 Fig. 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 Blattidentifiziergröße in die Lage versetzt, die vorher beschriebenen Operationen durchzuführen. Wenn keine Übereinstimmung zwischen dem Sperrkode und einem der vier Schlüsselkode vorhanden ist, wird ein Zugriff zum (betreffenden) Blatt 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 Einschreiboperationen 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-Schaltung 17 (Fig. 4) zurück übertragen. Weiterhin wird durch einen Vergleich der Schlüssel- und Sperrkode ' über die Schaltungen 57 - 60 gemäß Fig. 5 ausgewählt, um die Cause-Bit-Auswahlschaltung 62 zu betätigen.
' durch die Vergleichsschaltungen ^K eine bestimmte
Schlüsse1funktion
5 0988 1/0686
Mit der Erfindung wird somit eine Adressiervorrichtung zur Ermöglichung der Aufstellung einer absoluten Adresse für den Zugriff zu einem zentralen Speicher eines Rechners geschaffen. Ein Merkmal der Erfindung besteht darin, daß häufig benutzten Adressen in einer assoziativen Registertabelle Priorität bzw. Vorrang eingeräumt wird, 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.
Selbstverständlich sind dem Fachmann gewisse Änderungen und Abwandlungen der dargestellten und beschriebenen Ausführungsform möglich, ohne daß vom Rahmen der Erfindung abgewichen wird.
Zusammenfassend wird mit der Erfindung also eine Vorrichtung 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
509881/0686
enthalten, der Reihe nach angeordnet sind und jedes assoziative Wort eine absolute Blatt- und eine virtuelle Blattidentifiziergröße besitzt. Dabei sind Einrichtungen zum
Vergleichen der virtuellen Blattidentifiziergrößen der
assoziativen Worte mit einer virtuellen Blattidentifiziergröße eines Arbeitsprogramms sowie eine Einrichtung zum sequentiellen Verschieben der assoziativen Worte vorgesehen,
so daß das die virtuelle Blattidentifiziergröße, welche der virtuellen Blattidentifiziergröße des Arbeitsprogramms entspricht, enthaltende assoziative Wort in das assoziative Register der höchsten Stelle eingesetzt wird.
509881 /0686

Claims (8)

  1. - 39 Patentansprüche
    Gerät zur Bildung einer absoluten Adresse für den Zugriff zum Speicher eines elektronischen Rechners, g e kennzeichnet durch mehrere Register zur Speicherung jeweils eines assoziativen Datenworts, von denen jedes eine absolute und eine virtuelle Blattidentifiziergröße besitzt, wobei die Register in einer Reihenfolge angeordnet sind, durch Leseeinrichtungen zum sequentiellen Herauslesen der assoziativen Worte aus dem Speicher in das Register der höchsten Stelle, durch Schiebeeinrichtungen zum sequentiellen Verschieben der assoziativen Worte aus dem Register einer höheren Ordnung in ein Re-. gister einer niedrigeren Ordnung, durch Empfänger- oder Aufnahmeeinrichtungen zum Aufnehmen einer virtuellen Adresse von einem Arbeitsprogramm, wobei die virtuelle Adresse eine virtuelle Blatt- und eine Wortidentifiziergröße besitzt, durch Vergleichseinrichtungen zum Vergleichen der virtuellen Blattidentifiziergröße der virtuellen Adresse mit der virtuellen Blattidentifiziergröße in mindestens einigen Registern, durch eine erste Steuereinrichtung, welche anspricht, wenn die Vergleichseinrichtung(en) eine Übereinstimmung zwischen der virtuellen Blattidentifiziergröße der virtuellen Adresse und einer virtuellen Blattidentifiziergröße eines assoziativen Worts feststellt, und das die betreffenden virtuellen Blattidentifiziergrössen enthaltende assoziative Wort in das Register der höchsten Ordnung überträgt, wobei die erste Steuereinrichtung die Schiebeeinrichtung betätigt, um andere assoziative Worte zu Registern niedrigerer Ordnung zu verschieben, und durch eine auf die Vergleichseinrichtungen ansprechende Speicheradressenregistereinrichtung zur Speicherung der absoluten Blattidentifiziergröße des die entsprechende virtuelle Blattidentifiziergröße enthaltenden assoziativen Worts.
    50 9 881/0686
  2. 2. Vorrichtung nach Anspruch 1, gekennzeichnet durch eine Einrichtung zur Speicherung der Wortidentifiziergröße der virtuellen Adresse im Speicheradressenregister.
  3. 3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß jedes assoziative Wort einen Benutzungskode enthält, 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 Blattidentifiziergröße entsprechend der virtuellen Blattidentifiziergröße der virtuellen Adresse enthält.
  4. 4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß eine Einrichtung zur Speicherung der Wortidentifiziergröße von der virtuellen Adresse im Speicheradressenregister vorgesehen ist.
  5. 5. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß eine zweite Steuereinrichtung vorgesehen ist, die anspricht, wenn die Vergleichseinrichtungen eine Nichtübereinstimmung zwischen der virtuellen Blattidentifiziergröße der virtuellen Adresse und der virtuellen Blattidentifiziergröße in den Registern feststellen, und selektiv die Einschreibeinrichtung betätigt, um sequentiell assoziative Worte aus allen Registern, mit Ausnahme des Registers der niedrigsten Ordnung, in den Speicher einzuschreiben, daß die zweite Steuereinrichtung weiterhin die Leseeinrichtung betätigt, um sequentiell zusätzliche assoziative Worte aus dem Speicher in das Register der höchsten Ordnung einzulesen, daß die Vergleichseinrichtungen die virtuellen Blattidentifiziergrößen der zusätzlichen assoziativen Worte mit der virtuellen Blattidentifiziergröße der virtuellen Adresse zu vergleichen vermögen, daß die zweite
    50 9 881/0686
    Steuereinrichtung weiterhin auf die Vergleichseinrichtungen anspricht und die Einschreibeinrichtung betätigt, um assoziative Worte zum Speicher zurück einzuschreiben, nur mit Ausnahme des assoziativen Datenworts, welches die der virtuellen Blattidentifiziergröße in der virtuellen Adresse entsprechende virtuelle Blattidentifiziergröße enthält, daß die zweite Steuereinrichtung daraufhin die Leseeinrichtung betätigt, um die ursprünglichen assoziativen Worte sequentiell in die Register zurück einzulesen, und die Schiebeeinrichtung betätigt, um das assoziative Wort mit der virtuellen Blattidentifiziergröße, welche der virtuellen Blattidentifiziergröße in der virtuellen Adresse entspricht, in das Register der höchsten Ordnung zu verschieben, wobei das assoziative Wort, welches die der virtuellen Blattidentifiziergröße der virtuellen Adresse entsprechende virtuelle Blattidentifiziergröße enthält, daraufhin im Register der höchsten Ordnung gehalten bzw. 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 gespeichert wird als die zurück eingelesenen assoziativen Worte.
  6. 6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß eine Einrichtung zur Speicherung der Wortidentifiziergröße aus der virtuellen Adresse im Speicheradressenregister vorgesehen ist.
  7. 7. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß jedes assoziative Wort einen Benutzungskode enthält, und daß die Schiebeeinrichtung das einen vorbestimmten Benut-
    50988 1/0686
    zungskode enthaltende assoziative Wort in eine Stelle niedrigerer Ordnung zu verschieben vermag, die vorher, von einem assoziativen Wort eingenommen wurde, welches einen der virtuellen Blattidentifiziergröße der virtuellen Adresse entsprechende virtuelle Blattidentifiziergröße enthält.
  8. 8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß eine Einrichtung zur Speicherung der Wortidentifiziergröße aus der virtuellen Adresse im Speicheradressenregister vorgesehen ist.
    509881 /0686
DE2506117A 1974-06-07 1975-02-13 Adreßumsetzungseinrichtung zur Bildung einer absoluten Adresse Expired DE2506117C2 (de)

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 true DE2506117A1 (de) 1976-01-02
DE2506117C2 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)

* Cited by examiner, † Cited by third party
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
US4170039A (en) * 1978-07-17 1979-10-02 International Business Machines Corporation Virtual address translation speed up technique
US4218743A (en) * 1978-07-17 1980-08-19 International Business Machines Corporation Address translation apparatus
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

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3422401A (en) * 1964-12-17 1969-01-14 English Electric Computers Ltd Electric data handling apparatus
US3675215A (en) * 1970-06-29 1972-07-04 Ibm Pseudo-random code implemented variable block-size storage mapping device and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3292153A (en) * 1962-10-01 1966-12-13 Burroughs Corp Memory system
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
US3786427A (en) * 1971-06-29 1974-01-15 Ibm Dynamic address translation reversed
US3693165A (en) * 1971-06-29 1972-09-19 Ibm Parallel addressing of a storage hierarchy in a data processing system using virtual addressing
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3422401A (en) * 1964-12-17 1969-01-14 English Electric Computers Ltd Electric data handling apparatus
US3675215A (en) * 1970-06-29 1972-07-04 Ibm Pseudo-random code implemented variable block-size storage mapping device and method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DE-Buch "Rechnerstrukturen" Vorträge des Informatik-Symposiums der IBM-Deutschland, Wildbad 1973, Oldenburg Verlag 1974 S. 224-260 *

Also Published As

Publication number Publication date
CA1015865A (en) 1977-08-16
DE2506117C2 (de) 1986-04-03
GB1477977A (en) 1977-06-29
NL180887C (nl) 1987-05-04
FR2274086B1 (de) 1980-08-01
NL7506726A (nl) 1975-12-09
US3938100A (en) 1976-02-10
FR2274086A1 (fr) 1976-01-02
AU8154175A (en) 1976-12-02
JPS50159934A (de) 1975-12-24
JPS5732428B2 (de) 1982-07-10

Similar Documents

Publication Publication Date Title
DE2506117A1 (de) Vorrichtung zur bildung einer absoluten adresse fuer den zugriff zu einem speicher eines elektronischen rechners
DE2756352C3 (de) Schaltungsanordnung zum Aussuchen und Sortieren von Daten in gleichartig aufgebauten Sätzen
DE2914132A1 (de) Datenbanksystem mit informationsvergleich
DE2659042A1 (de) Datenbanksystem
DE2331589A1 (de) Datenverarbeitungsanordnung
DE2521436B2 (de) Informationswiedergewinnungsanordnung
DE1499182B2 (de) Datenspeichersystem
DE3327379A1 (de) Einrichtung und verfahren zum umordnen von datensaetzen
DE2062165A1 (de) Verfahren und Anordnung zum Sortieren oder Mischen von Datensätzen
DE2435889A1 (de) Verfahren und einrichtung zum unterscheiden von zeichengruppen
DE2912073A1 (de) Stapelspeicheranordnung zur kurzzeitigen speicherung von informationen bei nichtabsetzbarkeit dieser informationen in einem datenverarbeitungssystem
DE1499713A1 (de) Verfahren und Schaltungsanordnung zum Packen von Informationen in einem zyklisch umlaufenden Speicher mit wahlfreiem Zugriff zu den auf den Spuren befindlichen Speicherzellen
DE1237621C2 (de) Informationsspeicher
DE1524155A1 (de) Verfahren und Schaltungsanordnung zum Einspeichern und/oder Lesen von Informationen in einem Speichersystem,das mit mehreren Verarbeitungseinrichtungen einer Datenverarbeitungsanlage zusammenarbeitet
EP0230994B1 (de) Verfahren zur Steuerung des Programmablaufs bei der Formularbearbeitung in Datenverarbeitungsanlagen
DE1955797A1 (de) Verfahren zur Steuerung der Verarbeitung von Eingabedaten und Datenverarbeitungsanlage hierfuer
DE2519195A1 (de) Assoziativspeicher
DE3838732A1 (de) Informationsverarbeitungsgeraet
DE1774212B2 (de) En 20417 12.08.67 &#34; 37132 bez: datenverarbeitungsanlage
DE1524006B2 (de) Vorrichtung zum erhoehen der informationsuebergaberate eines speichers
EP0139816B1 (de) Verfahren und Anordnung zum Aufsuchen von einem vorgegebenen Suchargument entsprechenden Daten einer Datenfolge mit assoziativen Einrichtungen
DE1774158B2 (de) Einrichtung zum Abspeichern und Auffinden von Informationen
DE1774390C3 (de) Datenerfassungssystem
DE1269657B (de) Anordnung zur gesteuerten Entnahme von Informationen aus einer aus mehreren Registerstufen bestehenden, pyramidenfoermig ausgebildeten Speicheranordnung
DE2101586A1 (de) Datenaufzeichnungssystem fur Magnet karten

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