DE2350225A1 - Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen - Google Patents

Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen

Info

Publication number
DE2350225A1
DE2350225A1 DE19732350225 DE2350225A DE2350225A1 DE 2350225 A1 DE2350225 A1 DE 2350225A1 DE 19732350225 DE19732350225 DE 19732350225 DE 2350225 A DE2350225 A DE 2350225A DE 2350225 A1 DE2350225 A1 DE 2350225A1
Authority
DE
Germany
Prior art keywords
memory
buffer
bytes
buffer memory
information
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
DE19732350225
Other languages
English (en)
Other versions
DE2350225C2 (de
Inventor
John L Curley
Wallace A Martland
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.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
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 Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2350225A1 publication Critical patent/DE2350225A1/de
Application granted granted Critical
Publication of DE2350225C2 publication Critical patent/DE2350225C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • 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/04Addressing variable-length words or parts of words
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Description

Dipl.-ing.. .J..
"ο
8 Mönchen 22, t!-:iii:!r. 15, TcI. 292553 Postanschrift München 26, Postfach 4
München, den I 5. Okt. 1973
Mein Zeichen: P 1709
Anmelder: Honeywell Information Systems Inc. 200 Smith Street
Waltham/Mass., V. St. A.
Anordnung für ein Rechnersystem zur variablen Ausblendung von Informationen
Die Erfindung bezieht sich generell auf Rechner-Mehrebenen-Speichersysteme und insbesondere auf Speicherhierarchien mit einer eine hohe Geschwindigkeit und eine niedrige Kapazität besitzenden Speichereinrichtung, die mit aufeinanderfolgenden Stufen von eine niedrigere Geschwindigkeit besitzenden Speichereinrichtungen hoher Kapazität verbunden wird, wobei diese Speichereinrichtungen aus η Modulen bestehen, und wobei ferner Einrichtungen vorgesehen sind, die die Anzahl von Bytes zu ändern gestatten, zu welchen gleichzeitig Zugriff von irgendeinem der η Module der eine hohe Kapazität besitzenden Speichereinrichtungen erfolgt.
Das■Speicherhierarchie- bzw. Speicherrangordnungskonzept basiert auf der festzustellenden Tatsache, daß individuell gespeicherte Programme bei der Ausführung das Verhalten zeigen, daß innerhalb einer vorgegebenen Zeitspanne ein örtlicher Speicherbereich eine sehr starke Benutzung er-
409816/0886
fährt. Somit kann eine Speicherorganisation, die zu einem relativ kleinen Kochgeschwindigkeitspufferspeicher in einer. Zentraleinheits-Schnittstelle und den verschiedenen Stufen einer langsameren Speicherung zunehmender1 Kapazität eine effektive Zugriffszeit mit sich bringen, die irgendwo zwischen dem Bereich der schnellsten und der langsamsten Elemente der Hierarchie liegt. Dies führt zu einem Speichersystem groi3er Kapazität, welches für die Software sozusagen "transparent" ist.
Um sämtliche bemerkenswerten Speicherstufenausführungen der nicht sichtbaren Speicherhierarchie herzuleiten, sind Spei'chersysteme aus den Systemen IBH 360/85, 370/'155 und 370/165 zusammengesetzt worden, welche aus zwei Speicherebeilen bestehen. Die erste Speicherebene bzw. -stufe besteht aus einem Hochgeschwindigkeits-Festkörperpufferspeicher, der als "Vorratsspeicher" bezeichnet wird. Aui3erdem nutzen die Speichersi^steme mit hoher Geschwindigkeit arbeitende assoziative Verknüpfungsverfahren und Hochgeschwindigkeits-Steuerverknüpfungen aus, um die vollständige Verschachtelung der zweiten Speicherebene um 2:4:8 zu steuern. Die zweite Speicherebene in den 370-3ystemen kann entweder einen Massenspeicher oder integrierte MOS-Chips (MOSIC) enthalten. Eine generelle Beschreibung des IBM-Systems/370, Modell 165 (Vorratsspeicher) findet sich auf Seiten 214 bis 220 des Buches "Computer Organization and the System 370" von Harry Katzen, Jr., 1971, Van Nostrand Reinhold Company. Das IBM-System 360/85 ist generell auf den Seiten 2 bis 30 der Druckschrift "IBM System Journal", Vol. 7, No. 1, I968 beschrieben.
409816/0886
Abbilduiigsprinzipien für Pufferspeicher finden sich in einem Artikel von CJ. Conti hinsichtlich Speicherhierarchien; in der Druckschrift "Computer Group News.", Harz 1969,-leiten 10 bis 13. In der betreffenden Druckschrift ist, mit wenigen V/orten gesagt, ein Sektor-Abbildungsschema beschrieben, welches in großem Maße assoziative Verfahren von hochintegrierten inhaltsadressierbaren Speichern (LSICAM) oder eine direkte Logikausführung erfordert. Dieses Verfahren ist in einigen der IBM-360/85-Systeme benutzt. In den. IBM-Systemen 370/155, 165 sind auf zwei und vier Ebenen angesetzte assoziative Algorithmenverfahren für eine Pufferspeicherabbildung benutzt. Diese Verfahren sind ebenfalls in dem oben erwähnten Artikel von Conti beschrieben; sie können durch einen Zvei-Datenebenen- oder Vier-Datenebenen-Vergleicher ausgeführt werden, üin Speicherblockersatz erfolgt in samt- : liehen Fällen bezüglich des zuletzt benutzten Blocktyps_ (LiIU), während ein weniger häufig benutzter Blocktyp (LFU), ein Arbeitsgerät und eine erste Eingabe- bzw. erste Ausgabe-Anordnung (FIFO) für Srsatzalgorithmen verwendet werden kann.
In bisher bekannten Pufferspeichersystemen führt der Pufferspeicher lokale Operationen und Speicheroperationen in einer Betriebsart auf einen Befehl von der Zentraleinheit her aus. Wenn eine Zentraleinheit eine Ladeoperation ausführt und wenn die adressierte Information in dem Pufferspeicher enthalten ist, dann gibt der betreffende Pufferspeicher die Information zu der Zentraleinheit mit hoher PufferSpeichergeschwindigkeit ab» Ist die adressierte Information nicht in dem Pufferspeicher vorhanden,- so bewirkt die Steuerschaltung in dem Pufferspeicher eine Übertragung eines Informationsblocks von einem Hauptspeicher zu dem Pufferspeicher, und ferner liefert die betreffende
0 9 8 16/0886
Steuerschaltung der Zentraleinheit die geforderte Information aus diesem Block. Pur Zentraleinheit-Speicheroperationen wird·die Information von der Zentraleinheit zu dem Hauptspeicher ausgesendet. ¥enn der adressierte Speicherplatz /Ur diese Speicheroperation sich in dem Pufferspeicher befindet, dann wird auch der betreffende Pufferspeicherplatz aktualisiert.
Es ist zuweilen erwünscht, den Pufferspeicher vollständig zu umgehen, nämlich dann, wenn dieser aus irgendeinem Grund unwirksam wird. Ks kann zuweilen aber auch erwünscht sein, die Pufferspeichergröße zu verringern, und zwar dann, wenn der Anwenderbedarf eine geringere Leistung zuläßt, um geringere Kosten zu verursachen. Darüber hinaus ist zur Lösung gewisser Probleme das vollständige "Vorrats-Abbildungsverfahren nicht erforderlich, und außerdem braucht ein vollständiger Block nicht in den Pufferspeicher im Anschluß auf den jeweiligen Leseausfall geladen zu werden. Darüber hinaus ist es erwünscht, die Anzahl von Bytes zu ändern, zu denen gleichzeitig ein Zugriff von irgendeinem Modul der η Module, der eine hohe Kapazität besitzenden Speichereinrichtungen erfolgen kann.
Der Jirfindung liegt demgemäß die Aufgabe zu Grunde, ein verbessertes Mehrebenen-Speichersystem zu schaffen. Dabei ist insbesondere eine Einrichtung mit einem Mehrebenen-Speichersystem zu schaffen, das eine Mehr-Betriebsabbildung des Pufferspeichers vorzunehmen gestattet und bei dem zu irgendeinem Zeitpunkt gleichzeitig ein Zugriff zu einer variablen Anzahl von Bytes erfolgen kann. Überdies ist eine Einrichtung mit einem Mehrebenen-Speichersystem bereitzustellen, welches dynamisch den Pufferspeicher zu umgehen imstande ist und in welchem die Anzahl, an Bytes geändert
409816/0888
werden kann, zu denen zu irgendeinem Zeitpunkt gleichzeitig ein Zugriff erfolgen kann. Schließlich ist eine Einrichtung mit einem Mehrebenen-Speichersystem bereitzustellen,, in welchem die Pufferspeicherkapazität variabel ist und in welchem außerdem der Informationszugriff veränderbar ist.
Gelöst wird die vorstehend aufgezeigte Aufgabe gemäß einer Ausführungsform der Erfindung dadurch, daß eine Mehrebenen-Speicherung mit einem eine hohe Geschwindigkeit und niedrige Kapazität besitzenden Pufferspeicher geschaffen ist, der seriell mit aufeinanderfolgende Ebenen von eine geringere Geschwindigkeit besitzenden Einrichtungen hoher Kapazität verbunden wird,, wobei Einrichtungen vorgesehen sind, die die Anzahl an Bytes zu ändern gestatten, zu welchen von irgendeiner oder sämtlichen der Speichereinrichtungen gleichzeitig ein Zugriff erfolgt.
Pufferspeichermodul ist normalerweise in zwei Modulen mit jeweils 128 Spalten geordnet, deren jede imstande ist, einen 32 Bytes umfassenden Informationsblock zu speichern. Der Pufferspeicher weist Einrichtungen für die Ausführung von Operationen im Normalbetrieb auf, der generell als ■128x2x32-Betrieb bezeichnet wird. Dies bedeutet, daß zwei Module: von 128 Spalten jeweils einen Block pro Spalte speichern. Eine weitere Betriebsart ist die 128x2x16-Betriebsart, in der der Pufferspeicher zwei Module mit 128 Spalten besitzt, deren jede einen halben Block pro Spalte speichert, das sind 16 Bytes. Eine noch weitere Betriebsart ist die 256x2x16-Betriebsart, in der der Pufferspeicher zwei Module., mit 256 Spalten besitzt, deren jede einen halben -Informationsblock, das sind 16 Bytes enthält. Im normalen Betrieb erfolgt ein Laden von und
409816/0886
ein Zugriff zu Hilfsspeicliermodulen für entweder "16 Bytes oder 32 Bytes. Auf diese Weise wird einer Mikroprogrammiereinrichtung eine größere Flexibilität hinsichtlich der Optimierung der individuellen Befehlsleistung bei der Mikroprogrammierung gegeben. J^in Nicht-Zuordnungs-Betrieb in welchem acht Bytes abgeholt werden, wenn Vier-Byte-Gruppen kurzzeitig in dem Vorratsspeicher gespeichert werden ist eine Betriebsart, in der sämtliche Vorrats-Bezugnahmen als "erfolglos" behandelt werden. Schließlich ist eine solche Betriebsart vorgesehen, daß der Pufferspeicher vollständig umgangen werden kann. Außerdem sind Einrichtungen, vorgesehen, die irgendwelche oder sämtliche der K Bytes in irgendeinem oder sämtlichen der η Nodule der eine hohe Kapazität besitzenden Speichereinrichtungen markieren.
An Hand von Zeichnungen wird die Erfindung nachstehend an einer bevorzugten Ausführungsform näher erläutert.
Fig. 1 zeigt in einem Blockdiagramm eine Gesamtansicht der Erfindung, wobei ein mehrstufiges Speichersystem und Steuereinrichtungen für dieses System veranschaulicht sind.
Fig. 2A und 2B zeigen in Blockdiagrammen durch die Erfindung benutzte Adressenanordnungen.
Fig. 3 zeigt in einem detaillierteren Blockdiagramm die Hauptbauelemente der Erfindung.
Fig. 4, 5, 6 und 7 zeigen in detaillierten Verknüpfungsblockschaltbildern Merkmale der Erfindung.
409816/08 86
Fig. 8a bis 8d zeigen Verknüpfungsbiockdiagramme der Ausblend- und Betriebsart-Auswahlstrukturen der Erfindung.
Fig. 8e zeigt in einem Verknüpfungsblockschaltbild eine Betriebsauswahl der Erfindung.
Fig. 9a zeigt Taktdiagramme gemäß der Erfindung. Fig. 10 zeigt in einem Blockschaltbild eine Verknüpfungsschaltung.
im folgenden sei eine bevorzugte Ausfuhrungsform der Erfindung erläutert. In Fig. 1 ist schematisch ein mehrstufiges Speichersystem dsrgestellt, \i\relches für eine in diesem System vorgesehene mehrstufige Speicherung dient, die hier einen Pufferspeicher 104 und einen Haupt-(Aushilfs)-Speicher 101 umfaßt. Der Pufferspeicher 104 ist in typischer Weise eine 8 192 Bytes umfassende bipolare Halbleiter-Speicheranordnung mit wahlfreiem Zugriff. Die Zykluszeit des Pufferspeichers beträgt in typischer ¥eise 150 Nanosekunden bei einer typischen Zugriffszeit von 95 Nanosekunden. Der Hauptspeicher ist normalerweise ein zerschachtelter VierwTege-Speicher mit wahlfreiem Zugriff, bestehend aus vier MOS-Speichermodulen 101A bis 101D. Der Hauptspeicher ist in typischer ¥eise derart organisiert, daß 32 aufeinanderfolgende Bytes über die vier Speicher-
409 816/0886
einheiten 101 verteilt werden, das sind der Speicherplatz iiuil in der Sp ei eher einheit 101A, der Speicherplatz 8 in der Speichereinheit 1Ü1B, etc.. Die Zykluszeit des Hauptspeichers 101 beträgt in typischer "weise 0,8 ,us. ils dürfte ohne weiteres ersichtlich sein., daß der "Pufferspeicher ein Hochgeschwindigkeits-Speicher ist, der mehrere Male schneller ist als der Haupt-(Aushilfs)-Speicher.
Eine Pufferspeicher-Adressliste 105 wird zur Speicherung von Zeilen- bzw. Reihenadressen der Daten benutzt, die im Pufferspeicher 104 gespeichert sind. Die Pufferspeicher-Adressliste 105 enthält in typischer Weise ein Feld aus 128x36 Bits; sie besitzt eine Zykluszeit von 150 HanoSekunden bei einer Zugriffszeit von 75 Hano Sekunden. Die Ilauptfunktion des Pufferspeichers 104 besteht in der Speicherung des Inhalts solcher Teile des Hauptspeichers 101, die gerade von der Verarbeitungseinheit bzw. Zentraleinheit verwendet werden. Deshalb kann die Zentraleinheit eine große Informationsmehrheit, die sie benötigt, abholen, und zwar durch Zugriff zu dem Hochgeschwindigkeits-.Pufferspeicher 104. ¥enn-das Programm seine Operationen von jenen verschiebt, die die Information aus demjenigen Teil des Hauptspeichers erfordern, die gerade in dem Pufferspeicher sind, und zwar zu jenen Operationen hin, die eine Information benötigen, welche gerade in einem anderen Teil des Hauptspeichers vorhanden ist, dann wird der betreffende Teil des Hauptspeichers in den Pufferspeicher geladen. Die Hauptspeicher-Folge Steuer einrichtung 102 (die an anderer stelle näher beschrieben v/ird) stellt die Schnittstelle zwischen dem. Hauptspeicher 101 und der·Pufferspeichersteuereinrichtung 103 dar. Dabei verlaufen Datenwege 106, 107> 108 und 109 zwischen den Modulen des Hauptspeichers und zwischen dem Hauptspeicher und der Hauptspeicher-Folgesteuereinrichtung 102; die betreffenden Datenwege besitzen eine Breite von acht Bytes> die zu sechzehn Bytes geändert werden kann. Darüber hinaus sind Datenwege 114 und 115 zwischen der Hauptspeicher-Folgesteuereinrichtung 102 und dem Pufferspeicher 103 sowie der Puffer-
409816/08 8 6
speicher-Steuereinrichtung 103 und dem Pufferspeicher 104 und zwischen der Hauptspeicher-Folgesteuereinrichtung 102 und der Eingabe/Ausgabe-Steuereinheit (nicht dargestellt) vorhanden; diese Datenvege besitzen eine Breite von acht Bytes. Die Datenwege 110 von der Zentraleinheit (nicht dargestellt) und der Pufferspeicher-Steuereinheit besitzen in typischer Weise eine Breite von acht Bytes. Der Datenweg 113 von der Pufferspeicher-Steuereinheit zu der Zentraleinheit ist jedoch vier Bytes breit.
Da die in den Hilfs- beziehungsweise Zubringerspeicher (das ist in diesem Beispiel der Hauptspeicher 101) gespeicherten individuellen Programme, die zu einem vorgegebenen Zeitpunkt ausgeführt werden, generell als in Örtlichen Bereichen oder im Örtlichen Bereich befindlich ermittelt werden, welche innerhalb des verfügbaren Speichers des Hauptspeichers 101 verteilt sind, und mit Rücksicht darauf, dass der betreffende Bereich sehr wahrscheinlich während der laufenden Programmausführung in dem Pufferspeicher 104 enthalten ist, sowie^durch Zugriff zu der gerade benötigten Information in dem Pufferspeicher 102 wird . die effektive Hauptspeicher-Zugriffszeit wesentlich verringert.
Die Eingabe/Ausgabe-Steuereinheit IOC (nicht dargestellt) vermag den Pufferspeicher 104 nicht direkt zu erreichen; vielmehr ist die betreffende Steuereinheit mit dem Hauptspeicher 101 über die Hauptspeicher-Folgesteuereinrichtung 102 verbunden. Demgemäss wird der Pufferspeicher 104 von seinem Speicherin-" halt befreit, wenn im Zuge von Speicheroperationen Einspeicherungen in Speicherplätze vorgenommen werden, bezüglich welcher gerade Vorgänge ausgeführt werden und die von dem Pufferspeicher 104 umfasst sind.
In dem Speicherhierarchie-System gemäss'Fig. 1 sind lediglich zwei Stufen-gezeigt, nämlich der Pufferspeicher 104 und der Hauptspeicher 101. Es sei jedoch bemerkt, dass auch viele
409816/0886
weitere Stufen verwendet werden können. Ia allgemeinen wird die höchste Speicherstufe bzw. -ebene als örtlicher Speicher bezeichnet, der zuweilen als "Vorratsspeicher" bekannt ist. Demgegenüber ist die niedrigste Speicherstufe bzw. -ebene als Ergänzungs- bzw. Hilfsspeicher bekannt. Die höchste Ebene bzw. Stufe des Speichers besitzt im allgemeinen die kürzeste Zugriffszeit; sie besitzt im allgemeinen auch die geringste Speicherkapazität. Da in Fig. 1 lediglich zwei Speicherstufen dargestellt sind, entspricht der nVorratsspeicher" dem Pufferspeicher 104, und der Hilfsspeicher entspricht dem Hauptspeicher 101. Jede Speichereinrichtung .in der Speicherhierarchi ist verknüpf ungsmässig in Blöcke b aufgeteilt, deren jeder 32 Bytes umfasst. Der Pufferspeicher ist im Normalbetrieb in typischer Veise in zwei 128-Spalten-Modulen organisiert. (Hiera wird weiter unten noch näher eingegangen werden.) Jede Spalte des Pufferspeichers kann einen 32 Bytes umfassenden Informationsblock enthalten. Der Hauptspeicher 101 kann eine Vielzahl von Blöcken bn von 32-Bytes-Informationen in Spalten und Zeilen enthalten.
In Fig. 2A ist in einem Blockdiagramm eine Adressenstruktur 200 gezeigt, die zur Adressierung des Puffespeichers 104 benutzt wird. Die in Fig. 2A dargestellte Struktur stellt eine Adresse des Systems dar, die einen Adressenplatz in dem Pufferspeicher 104 bezeichnet und die die Pufferadresse mit einer Adresse in dem Hauptspeicher 101 in Verbindung bringt. Die · Adressenstruktur 200 besitzt in typischer Weise eine Länge von 24 Bits. Sie beginnt mit dem Bit 8, da Prioritätsbits mit der Adresse nicht in.Zusammenhang stehen. Das Adressenfeld 201 besteht aus den Bits 8 bis 10, also insgesamt aus drei Bits. Das Adressenfeld 201 ist ein reservierter Adressenplatz für die Bereitstellung einer zusätzlichen Adressierungskapazität zwecks Adressierung von einem erweiterten Hauptspeicher. Ein Zeilenadressenfeld 202 besteht in typischer Weise aus den Bits 11 bis 19, also insgesamt aus neun Bits.
409816/0886
Demgegenüber besteht das Spaltenadressenfeld 203 in typischer Weise aus den Bits 20 bis 26, also insgesamt aus sechs Bits. Ein Doppelwortadressenfeld 204 besteht in typischer Weise aus zwei Bits, die mit 27 und 28 nummeriert sind. Ein Wortadressenfeld 205 besteht in typischer Weise aus einem, mit 29 bezeichneten Bit. Ein Byte-Adressenfeld 206 besteht in typischer Weise aus den beiden Bits 30 und 31. (Die Funktionen dieser Adressenfelder werden weiter unten noch beschrieben werden. ) In Fig. 2B ist eine typische Struktur eines Adressenplatzes 250 dargestellt, der in typischer Weise in einem Teil der Pufferspeicher-Adressliste 105 enthalten ist. Der Adressenplatz 250 besitzt in typischer Weise eine Länge von 36 Bits; er besteht in typischer Weise aus einem 4-Bit-Paritätsfeld 251, einem 2-Bit-Pufferzählerfeld 252, vier Gültigkeits-1-Bit-Feldern 253 bis 256, einem unterem 12-Bit-Zeilen-FeId, einem oberen 12-Bit-Zeilenfeld, einem 1-Bit-Aktivitätsfeld 259 und einem 1-Bit-OK-Feld 260. Das Spaltenfeld 203 (Fig. 2A) wird dazu benutzt, die Adresspufferspeicher-Adressliste 105 zu adressieren. Durch Heranziehen der Bits 27 und 28 zusammen mit dem Spaltenfeld 203 kann der Pufferspeicher 104 .ebenfalls adressiert werden. Das Zeilenfeld 202 des Adressenplatzes 200 wird dazu benutzt, das untere Zeilenfeld 257 und das obere Zeilenfeld 258 zu vergleichen. Diese Zeilenfelder sind in der Pufferspeicher-Adressliste bzw. -Adresstabeile 105 enthalten. Läuft der Vergleich erfolgreich ab, so wird dies hier als "Treffer" "bezeichnet, . * der anzeigt, dass die benötigte Information des Hauptspeichers, die in dem Zeilenfeld 202 des Adressenplatzes 200 vorhanden ist, auch in dem Pufferspeicher vorhanden ist und sich in einer Spalte des Pufferspeichers 104 befindet, die durch das Spaltenfeld 203 bestimmt ist. Das Paritätsfeld 251 wird dazu herangezogen, die Richtigkeit der in dem Adressenplatz 250 enthaltenen Information festzustellen. *in PariT tätsbit wird in den folgenden Bitfeldern gebildet! Pufi'erzählerfeld 252, Gültigkeitsbitfelder 253, 254, 255 und 256 und OK-Feld 260. Wird ein Ädresslistenwort gelesen, so wird
. " - 409816/G886 , . λ
die Parität bezüglich dieser Bits geprüft. Bei den übrigen 24 Bits werden die drei Paritätsbits beim Lesen überprüft und regeneriert bzw. wieder eingeschrieben, wenn ein Einschreiben in die Adressliste erfolgt. Das Pufferzählerfeld 252 speichert gegebenenfalls auftretende Fehler in Bezug auf einen bestimmten Pufferspeicher-Adresslistenplatz. Dabei werden drei Fehlerereignisse gespeichert und zugelassen; mit Auftreten des vierten Fehlerfalls wird der bestimmte Speicherplatz in der Pufferspeicher-Adressliste, auf den Bezug genommen worden ist, gewjssermassen ungültig gemacht. Die Gültigkeitsbits 253 und 252 zeigen zu dem Speicherplatz der oberen Reihe, während die Gültigkeitsbits 254 und 256. zu Speicherplätzen der unteren Reihe bzw. Zeile hinzeigen; diese GUltigkeitsbits werden dazu herangezogen, die Gültigkeit von Daten anzuzeigen, die sich in dem Speicherplatz befinden, auf den Bezug genommen worden ist. Wird zum Beispiel ein "Treffer"(das ist ein erfolgreicher Vergleich) in der Pufferspeicher-Adressliste erzielt, so werden die Gültigkeitsbits für diesen Speicherplatz ebenfalls überprüft. Ist verknüpfungsmässig gesehen eine n1" vorhanden, so sind die Daten in dem Pufferspeicher gültig und können verwendet werden. Ist hingegen verknüpfungsmässig eine 11O" vorhanden, so zeigt diese an, dass die Daten in dem Pufferspeicher nicht gültig bzw. kennzeichnend für die vergleichbaren Daten in dem Hauptspeicher sind, und zwar aufgrund einer möglichen Veränderung des Hauptspeicherplatzes durch die Eingabe/Ausgabe-Einheit oder aufgrund sonstiger Fehler oder aufgrund der TatT , sache, dass der betreffende Speicherplatz niemals geladen wor-" den ist. Das Aktivitätsfeld 259 zeigt die erst zuvor.benutzten oberen oder unteren Zeilen in der Pufferspeicher-Adressliste an. Das betreffende Aktivitätsfeld wird als Teil des Algorithms benutzt,_ der einen Speicherplatz für das Einschreiben neuer Daten auswählt, wenn "kein Treffer" (erfolgloser Vergleich) auftritt. Das OK-Bit 260 zeigt an, dass das zugehörige Wort keine Fehler enthält. Dies bedeutet, dass das Wort 250 . durch das Fehlerfeld nicht für ungültig erklärt worden ist. Eine
40981 S/0886
. - . 7350225
verknüpfungsmässige "1" zeigt an, dass der Fehler-Zählerwert nicht überschritten worden ist; eine nOw zeigt Fehler an.
Im folgenden sei auf die Figuren 3 und 4 Bezug genommen. Die Zentraleinheit 306 gibt eine die Bits 8 bis 29 gemäss Fig. 2A umfassende Adresse zusammen mit einem Befehl für die Ausführung einer Massnahme durch das Pufferspeichersystem 300 ab. Die abgegebene Adresse wird in der Speicheradresseneinheit 307 gespeichert, welche Speicher-Flipflops und eine
einer (nicht dargestellten) Verknüpfungsschaltung gehörige Decodierlogik enthält und welche Signale erzeugt, und zwar in auf dem vorliegenden Gebiet bekannter Weise, um generell das obere Datenmodul 304A, das untere Datenmodul 304L und das Puffer-Adresslistenmodul 305 zu adressieren. (Das obere Datenmodul 304A und das untere Datenmodul 304L zeigen detailliert Module des Pufferspeichers 104 gemäss Fig. 1.) Die Bits 20 bis 26 gemäss-Fig. 2A werden dazu benutzt, das Puffer-Adresslistenmodul 305 zu.adressieren; die Bits 20 bis 29 werden dazu benutzt, die Datenpuffermodule 3O4U und 304L zu adressieren. (Es sei hier auf die Wiederverwendung der Bits 20 bis 26 für diesen Zweck hingewiesen). Die Bits 8 bis 19 werden in der Vergleichseinheit 308 für einen Vergleich mit der Information benutzt, die in dem Puffer-Adresslistenmodul 305 gespeichert ist. Im folgenden sei auf Fig. 4 Bezug genommen. Die oberen und unteren Datenmodule 304U bzw. 3Ö4L sind weiter unterteilt, und zwar in obere und untere Reihen bzw. Bänke 401, 402 bzw. 403, 404. Das Puffer- · bzw. Pufferspeicher-Adresslistenmodul 305 ist-weiter in obere Zeilenfelder 405 und untere Zeilenfelder 406 aufgeteilt. Die Daten in den oberen und unteren Zeilenfeldern 405 und 406 enthätten jeweils eine Information, die in oberen und unteren Zeilenfeldern 258 bzw. 257 angeordnet ist, und zwar in Übereinstimmung mit dem Worttyp 250 gemäss Fig. 2B. Diese Daten werden jeweils in dem Vergleicher 308 mit den Daten verglichen, die in dem Zjsilenadressenfeld 202 des von der Zentraleinheit 206 abgegebenen Worttyps 200 enthalten sind. Führt der
4 0 9 8 16/08 8 6
7350225
Vergleich zu einem "Treffer", liegt also ein erfolgreicher Vergleich vor, so kann es sich dabei um einen oberen Treifer oder um einen unteren Treffer handeln, wodurch angezeigt wird, dass der erfolgreiche Vergleich mit der oberen Zeile 405 oder der unteren Zeile 406 des Puffer-Adresslistenmoduls 305 durchgeführt worden ist und dass die gewünschte Information sich in dem Pufferspeicher des oberen Datenmoduls oder des unteren Datenmoduls befindet. In welchem Datenmodul sich die betreffende Information befindet, hängt davon ab, in weiener Zeile bzw. Reihe (obere oder untere) der Puffer-Adressliste der "Treffer" aufgetreten ist. (Es sei darauf hingewiesen, dass ein Treffer in der oberen Zeile oder der unteren Zeile der Pufferspeicher-Adressliste anzeigt, dass die Information entweder in dem oberen Modul 304U oder in dem unteren Modul 304L vorhanden ist; es wird jedoch nifcht die Zeile bzw. Reihe - das heisst die obere Bank oder die untere Bank - innerhalb des oberen oder unteren Moduls angezeigt.) Wenn ein Treffer auftritt, kann ein acht Daten-Bytes umfassendes Wort aus irgend einer der Datenmodulbänke in die Auswahl einrichtung 309 gelesen werden. Es sei jedoch mit Rücksicht auf die vorhergehende Beschreibung bemerkt, dass Daten von der Zentraleinheit zu dem Pufferspeicher über einen Acht-Byte-Weg gelangen (der generell für Schreiboperationen benutzt wird,, im Zuge welcher Daten in den Pufferspeicher eingeschrieben werden) und dass Daten von dem Datenpufferspeicher zu der Zentraleinheit über einen Weg übertragen werden, der eine Breite von lediglich · ' vier Bytes besitzt (und der in typischer Weise dann benutzt wird, wenn eine Information aus dem Pufferspeicher gelesen und an die Zentraleinheit abgegeben wird). Es sei im Hinblick auf Fig. 4 ferner bemerkt, dass das obere Modul 304U und das untere Modul 304L ferner jeweils in 128 Spalten organisiert sind, deren jede einen Informationsblock, das sind 32 Bytes, festzuhalten im Stande ist. Der obere Modul 3O4U und der untere Modul 3O4L sind ferner jeweils in obere bzw. untere Bänke 401, 402, 403 bzw. 404 unterteilt (das sind
409816/0886
Reihen bzw. Zeilen des oberen oder unteren Moduls), wobei jede Bank dieselben. 128 Spalten enthält wie die Datenmodule 3O4U und 3O4L. Jede Spalte der jeweiligen Bank enthält jedoch zwei Worte, das sind sechzehn Bytes. Somit enthält jede Bank (das heisst eine Zeile des jeweiligen Pufferspeichermoduls) 2 Bytes, wobei jedes Datenmodul 4 096 Bytes enthält und wobei der gesamte Pufferspeicher 108 insgesamt 8 192 Bytes enthält.
Es sei nunmehr zum Beispiel angenommen, dass ein Treffer in der Adressliste 305 bezüglich des Wortes 511 in der oberen Bank 304U auftritt und dass die Zentraleinheit eine Leseoperation angefordert hat, das heisst vier Bytes wünscht, die gerade in dem adressierten Speicherplatz vorhanden sind. Ferner sei angenommen, dass die Zentraleinheit die ersten vier Bytes des Wortes 511 wünscht, das in der oberen Bank des oberen Datenmoduls 304U enthalten ist, (In dem Fall, dass insgesamt acht Bytes benötigt würden, wie dies bei Schreiboperationen der Fall ist, würden die Bits 27, 28 benutzt werden und somit das gesamte obere Modul 3O4U adressieren. ) Bei diesem Beispiel ist das Adressenbit 29 gemäss Fig. 2A nicht gesetzt. Dies bedeutet, dass das betreffende Bit durch ein® w05i dargestellt ist. Somit stellt ein not niedrigem Pegel auftretendes Signal das Adressenbit 29 dar, und das UND-Glied 407 gibt ein Freigabesignal an einen Anschluss des UND-Gliedes 407 und ein Sperrsignal an einen Anschluss des UND-Gliedes 408 ab. Bei ausgewählten oberen Bänken des oberen bzw. unteren Moduls 3O4U bzw., 304L und bei nicht gesetztem Adressenbit 29 und damit erfolgender Bezugnahme auf vier Bytes in derselben Spalte zweier verschiedener Module, das sind die Worte 511 und 512, ergibt sich gewissermassen ein Konflikt, da zu diesem Zeitpunkt keine Kenntnis darüber vorhanden ist, ob vier Bytes von der oberen Bank des oberen Moduls oder des unteren Moduls zu liefern sind. Der Konflikt wird durch das UND-Glied 410 und das UND-Glied 411 aufgelöst, und zwar durch dasjenige UND-Glied, dem ein Freigabesignal zugeführt ist. Welches der
409816/0886
.- 16 -
7350225
beiden UND-Glieder ein Freigabesignal führt, hängt davon ab, welches Modul - nämlich das obere oder das untere Modul von dem Treffer in der Adressliste 305 betroffen ist. In diesem Fall sei das UND-Glied 410 freigegeben, da der Treffer auf das obere Modul bezogen ist. Damit werden die ersten vier Bytes des Wortes 511 ausgewählt. Es sei darauf hingewiesen, dass die Verknüpfungsschaltung 490 die obere Bankauswahlr schaltung des oberen Moduls 304U und des unteren Moduls 304L ist, und dass die Verknüpfungsschaltung 491» von der lediglich ein Teil dargestellt ist, da sie der Verknüpfungsschaltung 490 ähnlich ist bzw. dieser entspricht, die untere Bankauswahlschaltung für das obere Modul 304U und das untere Modul 304L ist. Die nächsten vier Byte» werden dadurch ausgewählt, dass von der Zentraleinheit eine neue Operation angezeigt wird, gemäss der die Adresse dieselbe ist; hiervon ausgenommen ist Jedoch das Adressenbit 29» welches das eine Komplement seines Zustandes während der vorhergehenden Operation wiedergibt. Besteht die Forderung nach einer Schreiboperation, so ist ein Acht-Byte-Wort erforderlich, und dieses Wort wird durch eine nachstehend noch zu beschreibende Schaltung ausgewählt, indem die Bits 27 und 28 des Doppelwortfeldes 204 verwendet werden.
Tritt kein Trefferzustand auf, so sind die von der Zentraleinheit benötigten Daten nicht in dem Pufferspeicher enthalten; sie müssen vielmehr aus dem Hauptspeicher 301 abgeholt wer- ' den. Da der Hauptspeicher 301 aus vier Modulen 301A bis 301D besteht und da ein Informationsblock normalerweis vierfach verschachtelt ist mit acht Bytes in jedem der Hauptspeichermodule, muss ein Zugriff zu jedem dieser Module erfolgen, um einen Informationsblock wieder aufzufinden bzw. zu ermitteln. Während des ersten Zugriffs waden von einem der Hauptspeichermodule 301A bis 301D acht Daten-Bytes erhalten und in den Pufferspeicher unter einer Adresse geladen, die von der Zentraleinheit über den Daten-Schalter 3^5 ausge-
4098 16/08 86
7350225
wählt worden ist. Ferner werden vier Daten-Bytes an die Zentraleinheit abgegeben, und zwar über die Daten-Schalter bzw. 311. Die Adresse wird dann erhöht, und ferner erfolgt eine weitere Hauptspeicheranforderung. Ausserdem werden v/eitere Acht-Daten-Bytes in den Pufferspeicher geladen; vier weitere Bytes werden jedoch nicht an die Zentraleinheit abgegeben, wie dies im vorhergehenden Zyklus der Fall war. Dieser Vorgang wird zwei weitere Male wiederholt (insgesamt sind es vier Zugriffe), bis ein Informationsblock in den Pufferspeicher eingeschrieben worden und ein Informationswort (1/8-Block an die Zentraleinheit abgegeben worden ist. Um die übrige Information zu erhalten, setzt die Zentraleinheit die Adressierung des Pufferspeichers fort. Da jedoch ein vollständiger Informationsblock an den Pufferspeicher abgegeben worden ist, tritt ein "Treffer" auf, und die Information wird dann aus dem Pufferspeicher abgegeben, ohne dass ein weiterer Zugriff zu dem Hauptspeicher 301 erfolgt (hierbei sei angenommen, dass der betreffende Speicher durch die Eingabe/Ausgabe-Einrichtung bzw. -Steuereinrichtung geleert worden ist). Die Zentraleinheit bewirkt eine Adressierung der Pufferspeicher-Adressliste 305 über die Eingabe/Ausgabe-Adressierungsund Steuereinheit 312 sowie den 2x1-Schalter 310. Der 2x1-Schalter 310 ermöglicht die Benutzung von zwei Adressen, und zwar einer Adresse für den Hauptspeicher 301 und der anderen Adresse für die Pufferspeicher-Adressliste 305, wobei lediglich eine Adresse an die Pufferspeieher-Adressliste des Hauptspeichers gerichtet ist.
Zurückkommend auf Fig. 3 sei bemerkt, dass die Zentraleinheit 306 das Pufferspeicher-Adresslistenmodul 305 über die Speicheradresseneinheit 307 adressiert. Die Speicheradresseneinheit 307 wird ferner dazu herangezogen, den Einstellzähler 350 und den 2x1-Schalter 310 zu adressieren. Wenn die Zentral-
409816/0886
einheit anordnet, dass Daten in den Pufferspeicher oder ir. die Hauptspeichermodule einzuschreiben sind, dann wird der Daten-Schreibschalter 315 dazu benutzt, die richtige Einheit auszuwählen. Die Zentraleinheit 306 kann Daten entweder von dem Pufferspeicher mit den Datenmodulen 304U, 304L oder von. dem Hauptspeicher 301 wünschen, wobei die Auswahl durch einen Daten-Leseschalter 311 bewirkt wird. Zuweilen ist es erforderlich, dass die Eingabe/Ausgabe-Steuereinheit 307 die Pufferspeicher-Eingabe/Ausgabe-Adressensteuereinheit 312 adressiert. Dies wird durch einen 2x1-Schalter 310 bewirkt, der festlegt, ob die Zentraleinheit 306 oder die Eingabe/Ausgabe-Steuereinrichtung 307 das Pufferspeicher-Adresslistenmodul einzustellen vermag. Existiert ein Konflikt, so wird dieser über die Prioritäts- bzw. Vorrang-Auflöseeinheit 351 in Zusammenwirkung mit der Puffersteuereinheit 303 gelöst.
Die generell mit 300A bezeichnete Hauptspeicher-Folgesteuereinrichtung ist an anderer Stelle näher beschrieben; sie ist hier der Vollständigkeit halber und zur Veranschaulichung des Umgebungsbereichs der Erfindung dargestellt. Mit Hilfe einer Hauptspeicher-Folgesteuereinrichtung 352 wird bestimmt, ob der Hauptspeicher belegt ist oder nicht, und ferner wird diese Steuereinrichtung dazu herangezogen, ein Signal zu speichern und abzuleiten, welches die Forderung nach dem Hauptspeicher quittiert, sowie eine Information bezüglich des gegenwärtigen Zustande des Hauptspeichers bereitzustellen. Die betreffende Steuereinrichtung ist in typischer Weise ausserdem mit der Prioritäts-Auflöseelnheit 351, dem Adressenzähler 350 und dem Daten-Leseschalter 311 verbunden. Die Neuordnungseinheit bzw. Neueinteilungseinheit 353 nimmt Signale von der Zentraleinheit auf; in Übereinstimmung mit der Forderung der betreffenden Signale bewirkt die betreffende Einheit eine Einteilung des Hauptspeichers 301 in verschiedene Betrtö>sarten, und zwar über den Hauptspeichermodulschalter 35^. Die Adressensteuereinheit 350 steht unter dem Einfluss der Haupt-
409816/0 888
speicher-Folgesteuereinrichtung; sie wird dazu benutzt, die Eingabe/Ausgabe-, Zentraleinheits- oder Pufferspeicheradressen zu dem Hauptspeicher 301 hin zu leiten.
Im folgenden sei auf Fig. 5 Bezug genommen, in der eine zweite Betriebsart des Pufferspeichersystems 300 veranschaulicht ist. Wenn ein Anwender eine gewisse Geschwindigkeit und Kapazität opfern kann, um gewisse wirtschaftliche Vorteile zu realisieren, wird zuweilen der als 128x2x16-Betrieb bezeichnete Betrieb angewandt. Bei dieser Betriebsart ist die halbe Pufferspeichergrösse in Bezug auf den zuvor beschriebenen Normalbetrieb vorhanden. Zum Zwecke eines leichten Verständnisses ist die Figur 5 in ähnlicher Weise angeordnet wie die Figur 4. Es sei jedoch darauf hingewiesen, dass in dem oberen Modul 504U und in dem unteren Modul 504L keine unteren Bänke bzw. Felder vorhanden sind. Somit sind 2 048 Bytes in dem oberen Feld 501 und 2 048 Bytes in dem oberen Feld 503 vorhanden, was insgesamt zu 4 096 Bytes für den Pufferspeicher 104 führt. Der Einjachheit halber ist die Terminologie bezüglich der Pufferspeicher-Adressliste 5O5D ähnlich der Terminologie bezüglich der Pufferspeicher-Adressliste 305 gemäss Figur 4 belassen worden, da in beiden Fällen eine Bezugnahme gemäss den Feldern 257 und 258 des Adressenplatzes 250 erfolgt, der in der Pufferspeicher-Adressliste enthalten ist, anstelle einer Bezugnahme auf den Pufferspeicher 104. Die Information in der oberen Reihe bzw. Zeile 505 und der unteren Reihe · ' bzw. Zeile 506 der Pufferspeicher-Adressliste 5O5D bewirkt jedoch eine Bezugnahme auf den Pufferspeicher 104; diese Information wird in der zuvor beschriebenen Weise benutzt. Aus einer weiteren überprüfung der oberen Bänke bzw. Reihen 504ü bzw. 5O4L dürfte ersichtlich sein, dass in beiden oberen Bänken 128 Spalten vorhanden sind, dass jedoch jede Spalte nunmehr nur die Hälfte eines Blocks oder sechzehn Bytes zu speichern im Stande ist, da die besetzten Felder 502 und nicht benutzt werden. Die Operation bei dieser Betriebsart
409816/0886
ist der des zuvor beschriebenen Normalbetriebs ähnlich. Es sind jedoch lediglich zwei Zugriffe vorhanden und zwar entweder zu dem oberen Modul oder zu dem unteren Modul, da lediglich ein halber Informationsblockfplesen oder vorrätig in irgendeine Spalte irgendeines Moduls eingeschrieben zu werden braucht. Die Wortauswahlschaltung 590 gemäss Fig. 5 ist ebenfalls von der Wortauswahlschaltung 490 und 491 gemäss Fig. 4 verschieden, da lediglich die Hälfte der Schaltung benötigt wird, um die obere Bank, auf die Bezug genommen ist, in dem oberen Modul oder dem unteren Modul auszuwählen. Der Betrieb der Schaltungsanordnung nach Fig. 5 wird im Betrieb festgelegt; er bringt höhere Geschwindigkeiten mit sich, da ein Zugriff zu lediglich sechzehn Bytes in irgendeiner Spalte erforderlich ist, wodurch die halbe Anzahl an Zugriffen von dem Pufferspeicher benötigt wird.
Die in Fig. 6 veranschaulichte Betriebsart ist als 256x2x16-Betriebsart bekannt. Im Hinblick auf Fig. 6 sei bemerkt, dass das obere Modul 604U und das untere Modul 604L jeweils in 256 Spalten geordnet sind, deren jede im Stande ist, ein Acht-Byte-Wort zu speichern. Mit anderen Worten ausgedrückt heisst dies, dass jede Bank 601, 602 des oberen Moduls 604U eine Kapazität von 2 048 Bytes besitzt, wobei jede Bank eine Breite von 128 Spalten besitzt. Die beiden Bänke sind zwar in vertikaler Beziehung zueinander dargestellt, um eine leichtere Bezugnahme auf die anderen Betriebsarten zu ermöglichen; tatsächlich sind die betreffenden Bänke jedoch besser durch eine ' fortlaufende Anordnung von Spalte 1 bis Spalte 25.6 beschrieben, wobei Acht-Byte-Worte 1 und 2 in der Spalte 1 und Acht-Byte-Worte 1 023 und 1 024 in der Spalte 256 vorhanden sind. Das untere Modul 604 L kann in entsprechender Weise beschrieben werden. Die Adressliste 6O5D nutzt bei dieser Betriebsart den gesamten Speicherplatz aus, der ihr zugeteilt ist, während bei den vorhergehenden Betriebsarten zu erkennen war, dass lediglich die Hälfte des der Adressliste zugeteilten Speicherplatzes ausgenutzt wurde. Die übrigen Elemente
409816/088
wie die Verknüpfungsauswahlschaltungen 69O und 691, entsprechen den in Fig. 4 dargestellten Elementen. Liegt bei dieser Betriebsart des Bezugnehmens bzw. Ansteuerns einer in Frage kommenden Spalte 1 bis 256 ein Trefferzustand vor, so werden vier Daten-Bytes, zu denen Zugriff erhalten wird, zu der Zentraleinheit im Lesebetrieb abgegeben. Tritt kein Trefferzustand auf, so erfolgt ein Zugriff zu dem Hauptspeicher lediglich zweimal wobei jedes Mal acht Daten-Bytes in den Pufferspeicher geladen werden. Dabei werden vier Bytes an die Zentraleinheit während des ersten Hauptspeicherzugriffs abgegeben. Obwohl diese Betriebsart, das ist die 256x2x16-Betriebsart, selbst die Vor+eile des 128x2x16-Betriebs mit sich bringt und den Nachteil hinsichtlich der Kapazität vermeidet, ist es dennoch zuweilen erwünscht, über die Fähigkeit des Ladens oder Abgebens eines vollständigen Blockes oder eines halben Blockes von irgendeiner bezeichneten Spalte verfügen zu können, und zwar in Abhängigkeit von den Forderungen seitens des Programmierers. Der in Fig. 7 veranschaulichte Betrieb, das ist der 128x2x32/i(rBetrieb, kann in dieser Weise ausgeführt werden.
Im folgenden sei auf Fig. 7 Bezug genommen. Das obere Modul 7O4U weist eine obere Bank 701 und eine untere Bank 702 auf. Jede dieser Bänke ist hinsichtlich ihrer Kapazität noch weiter unterteilt, und zwar derart, dass die obere Bank in zwei Hälften unterteilt ist, deren jede die Hälfte Kapazität der gesamten Bank besitzt. Diese Unterteilung ist in sämtlichen Bänken sämtlicher Module vorgenommen. Die übrigen Elemente der Anordnung gemäss Flg. 7, nämlich die Auswahlschaltungsanordnung 790 und 791 und die Adressliste 705D, entsprechen den Anordnungen beim. Normalbetrieb der Anordnung gemäss Fig. 4. Demgemäss besitzt die Mikroprogrammiereinrichtung die Betriebsarten gemäss Fig. 4, 6 und 7, um entsprechend den Forderungen, die das Mikroprogramm festlegt, Steuerungen, bzw. Manipulationen vornehmen zu können. Der Betrieb gemäss Fig. 5 ist, wie zuvor erwähnt, zu dem Zeitpunkt festgelegt bzw. bestimmt, zu .dem das System erworben wird. Es sei jedoch bemerkt, dass von der Be-
409818/0886
triebsart auch auf die Betriebsarten gemäss Fig. 4, 6 und 7 übergegangen werden kann, indem die erforderlichen zusätzlichen unteren Bänke und die hierfür benötigte Auswahlschaltungsanordnung mit einbezogen werden.
Im folgenden sei. auf Fig. 10 Bezug genommen, in der in einem bekannten Schaltplan verschiedene Schaltungen gezeigt sind, anhand welcher die hier benutzten Übereinkünfte veranschau.i icht werden. Zur Vereinfachung der Vielzahl von komplizierten Verknüpfungsschaltungen, die beim Aufbau eines speziellen Recrmers erforderlich sind, und zur Automatisierung der Herstellung und des Lesens derartiger Schaltpläne sind, nachdem der Schaltungsentwurf einmal gebilligt worden ist, sogenannte PLEXEDIT-Listen von Verknüpfungsfunktionen (das sind Listen von Verknüpfung Signalen) verwendet worden. Aus derartigen PLEXEDIT-Listen können detaillierte Verknüpfungsblockschaltbilder, wie sie in Fig.8A bis 8 E gezeigt sind, hergestellt werden. Es kann aber auch so vorgegangen werden, dass nach Entwurf von Verknüpfungsblockschaltbildern sogenannte PLEXEDIT-Listen hergestellt werden können. Das Verfahren des Lesens von PLEXEDIT-Listen und der Ausnutzung derartiger Listen ist im dritten Teil des Buches "Computer Fundamentals", veröffentlicht 1969, Honeywell Inc., beschrieben worden. Die Fig. 10 stellt nicht irgendeine spezielle Schaltungsanordnung der Erfindung dar, sondern lediglich eine Beschreibung einer Schaltung, wobei die benutzten Übereinkünfte dem auf dem vorliegenden Gebiet tätigen Fachmann ' in den Stand versetzen, die Figuren 8A bis 8E zu lesen und die Erfindung auszuführen.
Einem Eingangsanschluss 1000 wird ein Signal BXXXXXX zugeführt. Dem betreffenden Signal ist die Bezeichnung BXXjCiKX gegeben worden, um anzudeuten, dass B und 1 oder X irgendein Buchstabe oder irgendeine Zahl sein können. Im allgemeinen bezeichnen die ersten beiden Zeichen, in diesem Fall BX, einen
409816/0886
• Haupt- und einen Neben-Verknüpfungsbereich oder einen Hauptverknüpfungsbereich und" eine Verknüpfungsfunktion. Bei diesem Beispiel bezeichnet B den Hauptverknüpfungsbereich, der zu dem Pufferspeicher gehört. Das dritte, vierte und fünfte X-Zeichen sind reserviert, um die Funktion zu bezeichnen (das ist das Verknüpfungssignal). Dieser Funktionsname kann in Übereinstimmung mit den Forderungen seitens des Entwurfs geändert werden. Der Bereich vom nächsten Zeichen bis zum letzten Zeichen, ά&ε ist bei dem speziellen Beispiel die sechste Stelle, liefert aie Information bezüglich des Signalzustands, das heisst eine Information darüber, ob eine Feststellung oder eine Negation vorliegt oder nicht. Wenn zum Beispiel das Signal BXXXXXX durch das UND-Glied 1001 und durch den Verstärker 1002 hindurchgelangt, liegt eine erste Feststellung vor. Diese erste Feststellung wird durch den Zeichenbereich, umfassend das nächste bis letzte Zeichen, angezeigt. Dieser Bereich ist in diesem Fall eine M1" (Feststellungen werden durch eine ungerade Zahl von Zeichen vom nächsten bis letzten Zeichen angezeigt, und Negationen werden durch eine gerade Anzahl von Zeichen vom nächsten bis zum letzten Zeichen angezeigt). Gelangt das Signal BXXXXXX durch das IMD-Glied 1003 und durch einen weiteren Verstärker 1004, so liegt eine zweite Feststellung vor, die von dem nächsten bis letzten Zeichen angezeigt wird9 das ist hier eine n3n. Wenn das Signal ii?eiterg©leitet wird, teilt es sich zunächst auf, und zwar zum einen über das UND-Glied 1005 und sodann durch den Verstärker 1006, wodurch eine weitere · ' Feststellung vorliegt, die durch die Zahl 5 in dem Signal BXXXX5C angezeigt wird. Dieses Signal zeigt an, dass dies die dritte Feststellung des Signals ist* Vom Ausgang des Verstärkers 1004 teilt sich das Signal ferner auf und gelangt durch das UND-Glied 1009 und sodann durch den Verstärker 1010, der ebenfalls die dritte Feststellung liefert, welche nunmehr jedoch auf einem zweiten Pegel der Schaltung auftritt. Dieser Pegel ist in diesem Fall eine "1". Wäre ein dritter Pegel vorhanden, so wäre
409816/0886
das letzte Zeichen eine "2",und so weiter. Nunmehr wird da>: ursprüngliche Signal BXXXXXX, welches dem Eingangsanschluss 1000 zugeführt wird, auch dem UND-Glied 1011 und dem Inverter 1012 zugeführt. Dies führt zur Lieferung einer esten Inversion des Signals, wozu dieser Name benutzt wird und dem Signal folgendes Aussehen gegeben ist: BXXXXOO; der Bereich des nächsten bis letzten Zeichens ist hier eine w0n, die das Vorliegen .einer ersten Negation anzeigt. Wenn das Signal weiter durch das UND-Glied 1013 und den Inverter 1014 hindurchgelangt, tritt eine zweite Negation auf, welche dadurch angezeigt wird, dass des zweite bis letzte Zeichen eine n2" ist, wodurch das Signal ■ die Bezeichnung BXXXX20 erhält.
Bei der Schaltungsanordnung gemäss Fig. 10 sind einige weitere Übereinkünfte getroffen und hier benutzt. Ein ausgefüllter Kreis, wie der Kreis 1018, stellt eine interne Quelle dar, während ein Quadrat, wie das Quadrat 1019» einen Ausgangsanschluss-Stift darstellt. Ein kleiner Kreis, wie der Kreis 1000, zeigt einen Eingangsanschluss-Stift an (eine Ausnahme hiervon liegt am Ende eines Verstärkers vor; in diesem Fall wird eine Erfindung angedeutet). Ein Quadrat 1020, das in der aus Fig. ersichtlichen Weise geschaltet ist, deutet ein Flipflop mit Ausgangsanschlüssen 1021 und 1022 an. An diesen Ausgangsanschlüssen wird der Zustand des Flipflops angezeigt, und zwar in Abhängigkeit davon, welcher der beiden Ausgangsanschlüsse einen hohen Signalpegel führt. Das UND-Glied 1015 weist zwei" Eingangsanschlüsse auf, während die übrigen dargestellten UND-Glieder einen Eingangsanschluss aufweisen. (Im allgemeinen weisen UND-Glieder mehr als einen Eingangsanschluss auf; die ■ Einzel-Eingangs-UND-Glieder werden hier jedoch dazu benutzt, anzuzeigen, dass das Signal in entsprechender Weise einem Doppel-Eingangs-UND-Glied zugeführt wird).
Im folgenden sei die bevorzugte Ausführungsform der Erfindung näher beschrieben. In Fig. 8E ist in einem teilweisen Ver-
409816/08 86
köüpfungsblockschalbild eine Schaltungsanordnung zur dynamischen Auswahl der Betriebsart gemäss der Erfindung gezeigt.'(Entspreche de Verknüpfungsblockschaltbilder können für die Auswahl des gewünschten Betriebs benutzt werden). In Fig. 8A ist insbesondere eine Speicherschaltung 812S gezeigt, die aus einem Modul· des Pufferspeichers besteht. UND-Glieder 801E und 802E sind odermässig zusammengefasst an dem Eingangsanschluss eines Verstärkers 803E angeschlossen, dessen Ausgangsansdäuss mit der Speicherschaltung 812E verbunden ist. Dieser Teil der Eingangsschaltung der Speicherschaltung 812E verwendet die Bits -j:i bis 26 (siehe Fig. 2A), um die in Frage kommende Spalte dev Speicherschaltung 812E "zu adressieren. Die in Frage komme η nt· Adresse, die als die Eingangsbits (22-26) enthaltend dargestellt ist, wird den UND-Gliedern 801E und 802E zugeführt;. Ob die Speicherschaltung 812E von der Zentraleinheit od'?r der Eingäbe/Ausgabe-Einheit her adressiert wird, wird durch, die Eingangssignale CPAGAT und I/O AGAT bestimmt. Diese Eingangssignale können den UND-Gliedern 801E bzw. 802E zugeführt werden. Tritt das CPAGAT-Signal mit hohem Pegel aui und liegt die in Frage kommende Adresse an dem UND-Glied "01E an, so zeigt dieses an, dass die Zentraleinheit die Adressierung des Speichermoduls 812E bewirkt. Tritt in entsprechender Weise das Signal I/O AGAT mit hohem Pegel auf und liegt die in Frage kommende Adresse an dem UND-Glied 802E an, so zeigx -dieses an, dass die Eingabe/Ausgabe-Einheit das Speichermodul" 812E adressiert. Konflikte zwischen der Zentraleinheit und der Eingabe/Ausgabe-Einheit werden durch die Prioritäts- bzw. Vorrang-Auflöseeinheit e351 gemäss Fig. 3 aufgelöst (was an anderer Stelle beschrieben wird) .
Sobald die in Frage kommende Spalte ausgewählt ist, ist, wie dies in Verbindung mit Figuren 4, 5, 6 und 7 zuvor gezeigt worden ist, angezeigt, ob das Wort in der oberen oder unteren
409816/0888
Bank enthalten ist. Wieviele Bytes abgegeben oder aus dem Pufferspeicher abgezogen werden, hängt ausserdem van der zuvor beschriebenen Betriebsart ab. In Fig. 8E ist gezeigt, wie diese Betriebswahl erfolgen kann. Ist z.B. die 128x2x32-Beu~iebsart erwünscht, in der ein 32-Byte-Signal zu laden oder aus dem Pufferspeicher herauszuführen ist, so ist ein als B823210 bezeichnetes Funktionssignal mit hohem Pegel vorhanden. Wenn die übrigen in Frage kommenden Signale ebenfalls mit hohem Peg*I bei demselben UND-Glied auftreten, handelt es sich bei der Betriebsart um die 128x2x32-Betriebsart. Wenn es erwünscht ist, im 128x2x16-Betrieb zu arbeiten, muss ein Signal, welches dur-u die Bezeichnung B821610 gegeben ist, mit hohem Pegel auftreten (siehe Tabelle I). Im Hinblick auf Fig. 8E sei bemerkt, dass die UND-Glieder 804E und 806E das Zentraleinheits- bzw. Ei ngabe/Ausgabe-Steuereinrichtungs-Adressierungsgatter für die 128x2x32-Betriebsarten sind. Dies bedeutet, dass dann, wenn das Verknüpfungssignal B823210 (das ist das' 128x2x32-Betriebssignal) mit hohem Pegel auftritt und wenn die Signale CPAGAT und CPA2O (das Bit 20 in Fig. 2A) ebenfalls mit hohem Pegel auftreten, das UND-Glied 804E freigegeben bzw. übertragungsfähig ist und dass die Zentraleinheit einen Zugriff zu den-Pufferspeicher für ein einzelnes 16-Byte-Wort erhält. (Es sei unter Bezugnahme auf Fig. 2A darauf hingewiesen, dass das Bit 27 in dem Block 204 ein Doppelwort (32 Bytes) bezeichnet, während das Bit 20 in dem Block 203 ein Einzelwort (4 Byres) bezeichnet. Wenn demgegenüber die Eingangssignale des UND-Gi iedes 806E alle mit hohem Pegel auftreten, das sind die Signale I/O AGT, (Eingabe/Ausgabe-Freigabesignal I/O 20 (Bit 20)) und wenn das Signal B823210 (128x2x32-Betrieb) ebenfalls mit hohem Pegel auftritt, dann ist das UND-Glied 806E übertragungsfähig, und die Eingabe/Ausgabe-Steuereinheit erhält Zugriff zu dem Pufferspeicher, und zwar unter der zuvor adressierten (una oben beschriebenen) in Frage kommenden Adresse für ein Einzelwort. Durch Heranziehen dieser Untersuchung können ferner die übrigen Betriebsarten bestimmt werden, da die physikalische Schaltung
409816/0886
und die Verknüpfungsschaltungsschaltung in dem unteren Puffer-Speichermodul ähnlich sind.
Anhana Nunmehr sei auf die Figuren 8A bis 8D sowie auf die CEeuellen I bis VI und die Tabelle I (weiter unten) Bezug genommen, in welchen Verknüpfungsblockschaltbilder für eine Ausblendsteuerung gezeigt sind, welche das Einschreiben von Daten in die in Frage kommende Zeile bzw. Reihe (das heisst die obere oder untere Bank bzw. Reihe) des in Frage kommenden Datenmoduls (das ist der obere oder untere Pufferspeicher) steuert.
Annans, Es sei darauf hingewiesen, dass die Tabelle I und die aal·?!] η I bis V sich auf die verschiedenen Teile des Pufferspeichers und deren Organisation beziehen, und zwar in codierten Zahlen und/oder Buchstaben. Der Code wird unter Bezugnahme auf Fig. k erläutert. Gemäss Fig. 4 ist das obere Modul 3O4U des Pufferspeichers 104 das Puffermodul 1, während das untere Modul 3O4L· das Puffermodul 2 ist. Die oberen Bänke des Puffermoduls 304U sind die Reihe bzw. Zeile 1 oder die obere Reihe, während die untere Bank des Puffermoduls 3O4U die Reihe 2 oder die untere Reihe bzw. Zeile ist. In entsprechender Weise ist die obere Bank des Moduls 304U die Reihe 1 oder die obere Reihe, und die untere Bank ist die Reihe 2 oder die untere Reihe. In einer vorgegebenen Reihe oder Zeile einer vorgegebenen Spalte eines vorgegebenen Moduls werden sechzehn Bytes gespeichert Somit zeigt ein Treffer 1 an, dass eine Übereinstimmung mix · ' einem 32-Byte-Wort erzielt worden ist, welches in dem Puffei modul 304U gespeichert war. Demgegenüber zeigt ein sogenannter oberer Treffer 1 an, dass eine Übereinstimmung mit einem Sechzehn-Byte-Wort aufgetreten ist, welches in der oberen Bank (obere Reihe) des oberen Moduls 304U (Modul 1) gespeichert war.
Zuvor ist gezeigt worden, dass Daten in dem Pufferspeicher in verschiedenen Betriebsarten gespeichert werden. Eine Betriebsart
409816/0886
ist die 128x2x32-Betriebsart, gensäss der 128 Spalten jeweils einen Datenblock (32 Bytes) enthalten. Dabei sind zwei Pui'ferspeichermodule vorhanden, die jeweils 128 Spalten aufweisen. Da jeweils sechzehn Bytes der jeweiligen Spalte eine Reihe bilden, sind in einem vollständigen Block von 32 Bytes zwei Reihen in einer gegebenen Spalte vorhanden. Es ist zuvor gezeigt worden, wie ein Zugriff zu einer Spalte und zu irgendeinem Sechzehn-Bytes- oder Zweiunddreissig-Bytes-Wort bei irgendeiner Betriebsart der verschiedenen Betriebsarten erfolgt. Es ist ferner gezeigt worden, dass Schreibkanäle eine maximale Breite zum Schreiben eines Acht-Byte-Wortes enthalten. Es ist häufig erforderlich, lediglich einen Teil eines Wortes zu schreiben, das eine Breite von einem Byte oder eine Breite zwischen zwei Bytes bis acht Bytes besitzt. Zu diesem Zweck ist es erforderlich, Ausblendfelder O bis 7 zu entwickeln bzw. bereitzustellen, um unerwünschte Felder auszublenden, damit lediglich Teile von Wörtern geschrieben oder gelesen werden. In diesem Zusammenhang sei Bezug genommen auf diejenigen Teile der Figuren 8A, 8B und 8C, die innerhalb der Strichpunktlinien liegen und die mit d bezeichnet sind. Ferner sei auf die Anhangtabelle I Bezug genommen. In den betreffenden Figuren sind Verknüpfungsblockschaltbilder gezeigt, und in der betreffenden Anhangtabelle sind Verknüpfungsausdrücke angegeben, und zwar für die Entwicklung der Anfangsbedingungen zwecks Ersetzens der Reihe bzw. Zeile 1 im Puffer 1. Im folgenden sei insbesondere auf die Anhangtabelle I Bezug , genommen, in der die Verknüpfungsausdrücke für die Erzeugung einer Funktion (das ist ein Signal) B1WES (Puffer-1-Schreibfreigabe setzen) angegeben sind. In der Anhangtabelle II sind die Verknüpfungsausdrücke oder Bedingungen für die Erzeugung einer Funktion B2WES (Puffer-2-Schreibfreigabe setzen) angegeben. Diese Funktionen sind ähnlich und werden in ähnlicher Weise erzeugt; sie beziehen sich jedoch auf verschiedene Puffermodule. Aus den Anhangtabellen I und II
409816/0 8 86
dürfte hervorgehen, dass acht Abschnitte innerhalb der jeweiligen Anhangtabelle vorhanden sind und dass jeder Abschnitt die Bedingung für die Erzeugung der BIViES- oder B2WES-Funktion angibt, und zwar in Abhängigkeit davon, ob eine Bezugnahme auf die Anhangtabelle I oder auf die Anhangtabelle II erfolgt. Die Bedingungen jeder Anweisung stellen die Eingangssignale für ein UND-Glied dar, wobei die betreffenden UND-Glieder odermässig zusammengefasst einen Verstärker für die Erzeugung des B1WES- oder B2WES-Signals ansteuern.
Um die vorstehende Funktion zu erläutern, sei auf die Anhangtabelle I, Abschnitt 1 Bezug genommen, in der eine Anweisung enthalten ist, die besagt, dass dann, wenn das untere Gültigkeitsbit 1 (V1L) und das obere Gültigkeitsbit 1 ,V1U) verknüpfungsmässig Null sind und wenn ein Aktivitätsbit (ACTB) verknüpfungsmässig ebenfalls Null ist und wenn ferner ein OK-Bit verknUpfungsmässig 1 ist, die Funktion B1WE3 erzeugt wird. Sind jedoch die beiden Bits V1L und V1U jeweils verknüpfungsmässig Null, so kann ein weiteres Signal BV1SZ1O (Puffer-Gültigkeitsbit 1, in den Verknüpfungszustand Null zu Sätzen) erzeugt werden, und dieses Signal kann an die Stelle der Signale V1L und V1U, die verknüpfungsmässig gleich Null sind, gesetzt werden. Das Ergebnis ist in der Anhangtabelle I im Abschnitt 1b gezeigt. Die Bedeutung des Aktivitätsbits als verknüpfungsmässlge Null bedeutet, dass dieses Bit auf den Puffer 1 der Reihe bzw. Zeile 1 zeigt (obere Bank des oberen Moduls); wenn im Unterschied dazu das Aktivitätsbit verknüpfungsmässig eine H1" ist, zeigt es auf den Puffer 2, Reihe bzw. Zeile 2 (untere Bank des unteren Puffermoduls 6). - -
Im Abschnitt 2b der Anhangtabelle I ist die Anweisung enthalten, dass dan} wenn das Signal BV1SZ1O verknüpfungsmässig Null· ist und das Signal BV2SZOO verknüpfungsmässig Null nicht ist (was bedeutet, dass es verknüpfungsmässig
409816/0886
eine "I" ist) und wenn ferner das OK-Bit verknüpfungsmässig 1 ist,wieder das Signal B1WES erzeugt wird. Es sei darauf hingewiesen, dass das Signal BV1SZ1O gemäß der in Fig. 1O dargestellten Übereinkunft kennzeichnend ist für den bejahenden Zustand und als Signal BV1SZ geschrieben werden könnte, was bedeutet, dass das Puffer-Gültigkeitsbit 1 auf Null gesetzt ist. Demgegenüber ist das Signal BV1SZOO negativ und könnte geschrieben werden in der Form BV1SZ, was bedeutet, dass das Puffer-Gültigkeitsbit 1 nicht auf Null gesetzt ist. Die in diesem Beispiel gezeigte Darstellungsweise wird hier jedoch bevorzugt, da sie mit der oben beschriebenen Übereinkunft übereinstimmt. Es sei jedoch bemerisfc, dass auch der alternative Ausdruck völlig zutrifft und zuweilen benutzt werden wird, wo es leichter ist, ihn zu lesen. Es sei ferner darauf hingewiesen, dass das Signal BV2SZ durch die Signale V2L und V2U erzeugt wird, die von einem bestimmten Speicherplatz in dem Pufferspeicher herkommen.
Im 3.Abschnitt der Anhangtabelle I ist die Anweisung enthalten, dass dann, wenn ein 128-zu-2-zu-32-Betriebssignal eine "1" ist und eins Treffer-1 gespeichert worden ist (der anzeigt, dass die gewünschte Information in dem Pufferspeicher 1 gespeichert ist) und wenn das OK-Bit eine "1" ist, wieder die Funktion B1WES erzeugt wird. Im 4.Abschnitt der Anhangtabelle I ist die Anweisung enthalten, dass der 128-zu-2-zu32-Byte-Betrieb nicht 1 ist und dass eine untere Treffer-1 gespeichert ist. Wenn das OK-Bit verknüpfungsmässig eine "1" ist, dann wird wieder das Signal B.1WES erzeugt. Der 5.Abschnitt gibt an, dass dann, wenn ein oberes Bit 1 gespeichert ist und wenn der 12x2x32-Betrieb nicht vorhanden und das OK-Bit verknüpfungsmässig "1" ist, das Signal B1WES erzeugt wird. Im 6.Abschnitt ist die Anweisung enthalten, dass dann, wenn die Signale V2L und V2U verknüpfungsmässig nicht Null sind und das Aktivitätsbit verknüpfungsmässig Null ist und ausserdem der 128-zu£-zu-32-Betrieb vorhanden ist und eineTreffer-2 (Treffer im Puffer-
409616/0886
Speichermodul 2) nicht gespeichert und ein OK-Bit verknüpfungsmassig 1 ist, wieder die Funktion B1WES erzeugt wird. Im Abschnitt 7 ist die Anweisung enthalten, dass dann, wenn die Signale V2L und V2U nicht Null sind und wenn das Aktivitätsbit Null und der 128-zu2-32-Betrieb nicht vorhanden ist und ausserdem eine untere Treffer-2 nicht gespeichert ist, das Signal B1WES erzeugt wird. Schliesslich gibt der Abschnit" 8 die Anweisung an, dass dann, wenn die Signale V2L und V2U nicht Null sind und das Aktivitätsbit verknüpfungsmässig Null und der 128-zu£-zu-32-Betrieb nicht vorhanden ist und wenn der obere Treffer-2 nicht gespeichert ist (das heisst, dase kein derartiger Treffer aufgetreten ist) und wenn das OK.-b.it verknüpfungsmässig 1 ist, wieder das Signal B1WES erzeugt wird. ■
Die Anhangtabelle II zeigt die Bedingungen an, unter denen die Reihe 2 bzw. Zeile 2 des Puffers 2 zu ersetzen ist. Mit Ausnahme der umgekehrten Bedingungen sind sämtlichen übrigen Bedingungen der Anhangtabelle II mit jenen der Anhangtabelle I identisch. In diesem Zusammenhang sei zum Beispiel auf den ersten Abschnitt der Anhangtabelle I und der Anhangtabelle II Bezug genommen. Anstell© des Signals BV1SZ1Q, bei dem es sich um das untere Gültigkeitsbit 1 und das obere Gültigkeitsbit 1 handelt und das Mull ist, ist das signal BV2SZ1O Null, welches das untere Gültigkeitsbit 2 und das obere Gültigkeitsbit 2 ist. Wenn darüber _ , hinaus ein Aktivitätsbit in irgendeinem der Abschnitte der Anhangtabelle II vorhanden ist, wird dies auf den Verknüpfungswert 1 gesetzt anstatt auf den Verknüpfungswert Null wie in der Anhangtabelle I.
Die Anhangtabellen IIIA und IIIB zeigen die Zustände für die Entwicklung von Funktionen B1WMO bis B1WM7 und B2WMO bis zu negativen Funktionen B2WM0 an.(Die Funktionen B1WMO bis 7 sind die Schreibausblendfunktionen O bis 7 betreffend
409816/0886
den Puffer 1, und die Funktionen B2WM0 bis 7 sind die Schreibausblendfunktionen O bis 7 betreffend den Puffer 2). Die zuvor erzeugten bzw. entwickelten Funktionen B1WES1O und B2WES1O werden gemäss der Anhangtabelle III dazu herangezogen, die Pufferwort-Ausblendsteuersignale zu erzeugen. Der Abschnitt O in der Anhangtabelle IIIA liefert die Anweisung, dass dann, wenn die Funktion B1WES vorhanden. bzw.n1n ist und wenn der Datenschreibzyklus (DWC) vorhanden oder wenn das Signal B1WES 1 und der Speicherscnreibzyklus (MWC) vorhanden und die Datenschreibausblendung Null vorhanden ist, eine den Puffer 1 betreffende SchreibausDlend-Steuerungs-Nullfunktion (B1WMO) erzeugt wird. Diese Funktion bzw. dieses erzeugte Signal zeigt auf das erste Byte eines Acht-Byte-Wortes, welches auszublenden ist. In entsprechender Weise werden sieben weitere Funktionen bezüglich der Bytes 1 bis 7 eines dem Pufferspeicher 1 zugehörigen Acht-Byte-Wortes erzeugt. Die Anhangtabelle IIIB zeigt anf *fe die Schreibausblend-Steuerfunktionen für den Puffer 2 bezüglich eines dem Pufferspeicher 2 zugehörigen Acht-Byte-Wortes erzeugt werden. Somit kann irgendeine Anzahl Null bis sieben von Bytes eines Acht-Byte-Wortes ausgeblendet werden, das heisst nicht geschrieben oder aus dem Pufferspeicher gelesen werden.
Im folgenden sei die Anhangtabelle IV betrachtet, in der die Bedingungen der verschiedenen Anweisungen für die Entwicklung der Funktion BSV1U (Puffer-Setzen des oberen Gültigkeitsbits 1 ) angegeben sind. Irgendeine Anweisung der vier Anweisungen bewirkt das Setzen des oberen Gültigkeits-1-Bits, das heisst des Gültigkeitsbits für die Pufferspeicher 1, obere Reihe. Die Anweisungsnummer 1 besagt, dass die obere Anweisung zutrifft, wenn die untere Gültigkeit 1 und die obere Gültigkeit 1 verknüpfungsmässig Null sind und wenn
409816/0886
die untere Gültigkeit 2 und die obere Gültigkeit 2 verknüpfungsmässig nicht Null sind und wenn das 16-Byte-Wort des 128-zu-2-zu-32-Betriebs zutrifft und das Adressenbit gesetzt ist (das heisst 1 ist). Die Anweisung 2 besagt, dass dann, wenn die als Null gespeicherte Puffergültigkeit (das ist das Gültigkeitsbit für den Pufferspeicher 1, enthaltend die oberen und unteren Reihen) zutrifft und wenn die als Null gespeicherte Puffergültigkeit 2 (das ist das Gültigkeitsbit für den Pufferspeicher 2, obere und untere· Zeile) nicht zutrifft und der Pufferspeicher in einem 32-Byte-Betrieb arbeitet, wieder das obere Gültigkeits-1-Signal erzeugt wird, das heisst dass das obere Gültigkeits-1-Bit auf 1 gesetzt wird. Die dritte Anweisung besagt, dass das Puffergültigkeitsbit für den oberen Pufferspeicher 1 auf 1 gesetzt wird, wenn die Puffergültigkeit 1 auf Null gesetzt wird (BV1SZ1O) und wenn das Aktivitätsbit eine Null ist und der Pufferspeicher entweder im 128-zu-2-zu-i6-Betrieb oder im 256-zu-3eu-i6-Betrieb arbeitet. Die Anweisung mit der Nummer k besagt, dass das obere Puffer-Gültigkeits-1-Bit gesetzt wird, wenn die Puffergültigkeit 1 als Null gespeichert wird und wenn das Aktivitätsbit eine Null und das Adressenbit 27 gesetzt ist und wenn ausserdem der Pufferspeicher sich im 128-zu-2-zu-32-Betrieb befindet. Nunmehr sei auf die Anhangtabelle V Bezug genommen, in der drei Anweisungen gezeigt sind, die dazu herangezogen werden, die Schreibfunktion betreffend die obere Puffergültigkeit 1 zu entwickeln, bei . der es sich um die eigentliche Schreibausblendung für das obere Gültigkeitsbit 1 handelt. Die Ausblendung für die übrigen Gültigkeitsbits kann in einer entsprechenden Weise hervorgebracht werden. Die Anweisung 1 der Anhangtabelle V
besagt, dass das Schreibausblendsignal BV1UW 1 ist bzw. zutrifft, wenn die Funktion BSV1Ü1O erfüllt ist bzw. zutrifft und wenn der Puffer-Adressiisten-Schreibaktualisierungszyklus vorhanden ist. Diese Anweisung besagt, dass
4098 1 6/088<S
richtige Daten in die Reihe 1 des Puffers 1 einzuschreiben sind und dass daher das obere Gültigkeitsbit 1 gesetzt werden muss. Die Anweisung mit der Nummer 2 besagt, dass die Schreibausblendung für das obere Puffer-Gültigkeitsbit 1 hervorgerufen wird, wenn der Puffer-Adresslisten-Schreibaktualisierungszyklus vorhanden ist und wenn ferner die Aktualisierung der Puffer-Setz-Gültigkeit-1 nicht richtig ist»und wenn die obere Funktions-Puffer-1-Gültigkeit richtig ist bzw. auf 1 gesetzt ist. (Die Funktion B1VUS1O wird in der Anhangtabelle VI gebildet Die dritte Anweisung besagt, dass die Schreibausblendfunktion für das obere Puffer-Gültigkeitsbit 1 durch die Eingabe/Ausgabe-Einheit gebildet wird. Die Eingabe/Au_gabe-Einheit macht die Gültigkeitsbits nur dann ungültig, wenn neue Eingangssignale von der Eingabe/Ausgabe-Einheit an aen Hauptspeicher abgegeben werden und wenn jene. Eingangssignale ausserdem in dem Pufferspeicher gespeichert werden. Deshalb trifft die Funktion BV1UW zu bzw. ist 1, wenn die Funktion BIH1U1O (Puffer-Eingabe/Ausgabe-Treffer im oberen Pufferspeicher 1 ' ist erfolgt) und eine Funktion BIUDC3O zutrefien bzw. 1 sind, was anzeigt, dass ein Puffer-Eingabe/Ausgabe-Aktualisierungszyklus vorhanden ist.
Nunmehr sei auf die Anhangtabelle VI Bezug genommen, in der bezüglich der Funktion B1VUS 6 Anweisungen als vorhanden bzw. 1 dargestellt sind. Die erste Anweisung besagt, dass die Anweisung B1VUS zutrifft bzw. 1 ist, wenn das Aktiv!räts-r bit eine Null ist und wenn der Pufferspeicher entweder im 128-zu-2-zu-i6-Betrieb oder im 256-zu-2-zu-i6-Betrieb arbeitet. Die zweite Anweisung (861610) besagt, dass die Funktion B1VUS zutrifft bzw. 1 ist, wenn ein unterer 1-Treffer vorhanden und gespeichert ist (BH1LS1O) und wenn der Pufferspeicher im 128-zu-2-zu-32-Betrieb mit einer 16-Byte-Last arbeitet (B82323O) Die Anweisung 3 besagt, dass die Funktion BV1US zutrifft bzw. 1 ist, wenn das Aktivitätsbit auf Null gesetzt ist und
409816/0886
wenn der Betrieb der 128-zu-2-zu-32-Betrieb ist und wenn kein unterer Treffer 2 (BH2LS) gespeichert ist. Die v;erte Anweisung besagt, dass die Furie tion B1VUS zutrifft bzv. 1 ist, wenn das Aktivitätsbit eine Null ist und wenn kein Treffer im oberen Puffer 2 (BH2US00) aufgetreten ist und die Einheit im 128-zu-2-zu-iE-Byte-Betrieb mit einem 16-Byte-Wort arbeitet. Die fünfte Anweisung besagt, dass die Funktion B2VUS zutrifft bzw. 1 ist, wenn das Aktivitätsbit NuI] ist und wenn kein Treffer im Puffar 2 (BH2S00) vorhanden ist und die Einheit in einem 32-Byte-Ladebetrieb arbeitet.
Nachdem die verschiedenen Funktionen (das heisst Signale) für die Ausführung der Erfindung entwickelt bzw. gebildet worden sind, folgt normalerweise die Verknüpfungsschaltung, welche die entsprechenden Signale erzeugt. Die Verknüpl-angsschaltung zur Lieferung des Signals B1WES1O ist in Fig. 8C gezeigt und durch eine Strichpunktlinie umrahmt; sie enthält die UND-Glieder 892C bis 898C sowie 8010C bis 601J5C und den Verstärker 899C; die Verknüpfungsschaliurg zur Erzeugung des Signals B2WES10 ist in Fig. 8A gezeigt; sie enthält die UND-Glieder 801A bis 806 und 808 bis 8012A und einen Verstärker 807A. Die Verknüpfungsschaltung zur Erzeugung der Signale B1WMOOO bis Β1ΉΜ700 und B2WM000 bis B2VM700, also zur Erzeugung von insgesamt sechzehn Signalen, ist in Fig. 8A und in Fig. 8B in dem mit Λ bezeichneten Schaltungsteil dargestellt; sie enthält unter , anderem das UND-Glied 830B und den Verstärker 827B. Die Verknüpfungsschaltung für die Erzeugung der Signale BSW1L10 bis BSV1U10 und der Signale BSV2L10 bis BSV2U10 ist jeder der übrigen Schaltungen ähnlich und in Fig. 8B als innerhalb der Strichpunktlinien im Bereich B liegend dargestellt, und zwar beginnend mit dem UND-Glied 831B bis hinab zu dem UND-Glied 863B und sämtlicher zugehöriger Verstärker. In entsprechender-Weise ist auch die Verknüpfungs-
409816/0886
schaltung für die Erzeugung der Signale B1VLS1O bis B1VUSOO in Fig. 8B dargestellt, und zwar ebenfalls einschliesslich sämtlicher UND-Glieder und Verstärker, beginnend von dem UND-Glied 863B bis zu dem UND-Glied 882B. Die. Signale B2VLS bis B2VUS können mit einer entsprechenden Verknüpfungsschaltung erzeugt werden. Die Verknüpfungsschaltung für die Erzeugung der Signale BV1LW00 bis BV2LJStf00 und der Signale BV1UW00 bis BV2UW00 ist in physikalischer und funktioneller Hinsicht jeder der übrigen Schaltungen ähnlich; sie ist in Fig. 8B als diejenige Schaltung dargestellt, die UND-Glieder und Ver.-stärker enthält, und zwar von dem UND-Glied 883B beginnend und zu dem UND-Glied 897B hin laufend. In Fig. 8C sind Verknüpfungsschaltungen gezeigt, welche die Signale BH1LSOG und BH1LS10, BH1US00 und BH1US10, BH2LS00 und BH2LS10, BH2US00 und BH2US10, BH2ST00 und BH2ST10, BOKBSOO und B0KBS10, BACTSOO und BACTS10, BV1LS00 und BV1LS10, BV1USO0 und BV1US10, BV2LS00 und BV2LS10 und BV2US00 und BV2US1O speichern. Unter Heranziehung der Übereinkunft für die Signalnamen und der in dem bekannten Diagramm gemäss Fig. 10 dargestellten Symbole sind die Anhangtabellen I bis VI sowie die Tabelle I und die Figuren 8A bis 8D gewissermassen aus sich selbst heraus verständlich.
Um zum Beispiel das Sigial B2WES10 gemäss Fig. 8A zu erzeugen, ist es lediglich erforderlich, die UND-Glieder 801A bis 805A odermässig zusammenzufassen und das Ausgangssignal' dieser UND-Glieder als ein Eingangssignal dem UND-Glied 806A zuzuführen. Dem anderen Eingangsanschluss des UND-Gliedes 806A wird das Signal B0KBS10 zugeführt. Ferner sind die UND-Glieder 809A bis 811A odermässig zusammengefasst, wobei ihr Ausgangssignal als ein Eingangssignal dem UND-Glied 808A zugeführt wird. Die anderen, den Eingangsanschlüssen des UND-Gliedes 808A zugeführten Eingangssignale sind die Signale BV1SZ00, BACTS10 und B0KBS10. Die UND-Glieder 806A und 808A
409816/0886
werden sodann odermässig zusammengefasst, wobei ihr Ausgarxgssignal dem Eingangsanschluss des Verstärkers 807A zugeführt wird, der das gewünschte Signal B2WES10 erzeugt. Eine Betrachtung des in Figuren 8A bis 8D dargestellten dürJ te unter Heranziehung der oben definierten Übereinkunft gewissermassen aus sich selbst heraus verständlich sein.
Im folgenden sei auf Fig. 9A Bezug genommen, in der Taktdiagramme bzw. Zeitsteuerungsdiagramme für einen Zentrale.nheitslesevorgang ohne einen Treffer und für einen Zentral ??inheits-Lesevorgang mit einem Treffer gezeigt sind. Das CPGu-Signal ist ein in der Zentraleinheit erzeugter Zyklus, der den Puffer darüber informiert, dass von der Zentraleinheit ein Zyklus angefordert ist. Das IOQGO-Signal ist ein vergleichbarer Zyklus, der den Pufferspeicher darüber informiert, dass.die Eingabe/Ausgabe-Einheit einen Zyklus benötigt bzw. anfordert. Wenn bezüglich des Pufferspeichers eine Entscheidung zwischen der Zentraleinheit und der Eingabe/Ausgabe-Steuereinheit zu fällen ist, wird der Pufferspeicher zuerst der Zentraleinheit zugeordnet. Das BCPDC10-Signal ist ein Zentraleinheits-Adresslistenzyklus. Während dieses Zyklus existiert eine Feststellung darüber, ob die von der Zentraleinheit äusgewendete Adresse in dem Pufferspeicher enthalten ist oder nicht, womit eine Entscheidung darüber auftritt, ob ein "Treffer" vorhanden ist oder nicht. Wird kein Treffer während dieses Zyklus erzielt, so wird die Funktion BHAONt0 · ' (9.Z]JKLUs von oben) gesetzt. Tritt kein Treffer in der Pufferspeicher-Adressliste auf, so erfolgt ein Zugriff zu dem Hauptspeicher, um die von der Zentraleinheit benötigten Daten zu erhalten. Das Pufferspeichersystem 300 gemäss Fig. 3 löst sodann zwei Zyklen BM1PF10 und BPBCB10 aus. Während des BM1PF1Q~Zyklus erhält das Pufferspeichersystem 300 Zugriff zu den ersten acht Datenbytes aus dem Hauptspeicher und sendet vier der acht Bytes an die Zentraleinheit und hält acht Bytes fest. Das BPBCBIO-Signal ist ein Puffer-Belegt-Signal; es verhindert, dass jegliche nachfolgende Zentraleinheits-Anforde-
816/0886
rangen während des Zyklus in den Pufferspeicher gelangen. Dieses Signal bleibt solange mit. hohem Pegel erhalten, bis die vier Hauptspeicheranforderungen von der Zentraleinheit erfüllt sind. Nunmehr sei auf das vierte Signal von oben, das ist das Signal BIGOS1O, Bezug genommen; dieses Signal wird von der Prioritätsauflöselogik dazu herangezogen, jegliche noch nicht erledigte Eingabe/Ausgabe-Adressenlistenzykluskonflikte zu lösen. Das BIODC1O-Signal ist der Ein^abe-Ausgabe-Adresslistenzyklus, der der Eingabe/Ausgabe-Einheit 307 ermöglicht, das Puffer-Adresslistenmodul 305 bezüglich eines Treffers zu überprüfen. Der hier dargestellte FaIJ zeigt an, dass die Eingabe/Aüsgabe-Einheit keinen Treffer ermittelt hat und daher die Puffer-Adressliste freigibt dzw. auslöst. Ist jedoch ein Treffer festgestellt worden, so würde das Signal B1UDC1O (Puffer-1-Aktualisierungszyklus) mit hohem Pegel auftreten, so dass die Eingabe/Ausgabe-Einheit das Pufferspeicher-1-Adresslistenmodul aktualisieren könnte. Da jedoch in diesem Fall kein Treffer vorhanden war, ist das den Puffer-Eingabe/Ausgabe-Aktualisierungszyklus betreffende Signal ein Signal mit niedrigem Pegel, und ausserdem erfolgt keine Aktualisierung in der Puffer-Adressliste. Das CPGO-Rücksteilsignal ist die Umkehrung des CPGO-Signals; es quittiert der Zentraleinheit, dass sie das GO-Signal bzw. Sprungsignal zurückstellen kann. Das Signal BNMG010 ist das GO-Signal bzw. Sprungsignal, das von dem Puffer an den Hauptspeicher abgegeben worden ist, um anzuzeigen, dass in der Puffereinheit 300 kein Trefferzustand bezüglich der Zentraleinheit vorgelegen hat und dass die Puffereinheit ein Anforderungssprungsignal GO an den Hauptspeicher abgibt, um die benötigte Information zu erhalten. Das nachfolgende Puffer-Go-Rückstellsignal bedeutet einen Zyklus, der von der Hauptepeicher-Folgesteuereinrichtung benutzt wird, (hierauf wird an anderer Stelle näher eingegangen), um den Empfang des Sprungsignals von dem Puffer zu quittieren und dem puffer anzuzeigen, dass dieser sein Sprungsignal zurückstellt bzw.' zurücksetzt. Das NBACK1O-Signal ist ein Quittungssignal,
409816/0886
das von dem Hauptspeicher zu dem Puffer abgegeben wird und das dem Puffer anzeigt, dass der Hauptspeicher die Pufferanforderung verarbeitet und dass ferner der Puffer eine'neue Adresse oder Anforderung erzeugen kann. Das Leseabtastsignal READ STROBE ist ein Signal, das von der Puffereinheit an die Zentraleinheit abgegeben Wird und diese darüber informiert, dass die von dieser angeforderten vier Bytes abgegeben werden. Das BMSCF10-Signal lässt die Zähler laufen, die dazu benutzt werden, die Anzahl der Taktzyklen von dem Speicherquittungssignal bis zu einem Zeitpunkt zu zählen, zu dem die Daten •in der Pufferspeichereinheit wirksam bzw. gültig sind. Das betreffende Signal wird dazu herangezogen zu bestimmen, ob irgendwelche Taktverschiebungen in der Puffer-Hauptspeicher-Schnittstelle vorhanden sind. Die BMAC-Zyklen 1 bis 6 sind Zählzyklen, die dazu herangezogen werden zu bestimmen, ob irgendwelche Verschiebungen vorhanden sind oder nicht. Der Scheintreffer-Zyklus DUMMY HIT wird lediglich während der Zeitspanne benutzt, während der die erste Anforderung der Zentraleinheit durchläuftj der betreffende Zyklus wird dazu herangezogen, die Zentraleinheit einzustellen, wenn sie das Schreiben bezüglich der Speicherbedienung angehalten hat. Wenn die Zentraleinheit den Puffer anfordert, wird ihr Takt bedingt abgeschaltet und ausgesetzt, wobei das Scheintreffer-Signal den Takt wieder beginnen lässt. Das BMH1F1O-Signal ist ein Fehleranzeigezyklus. Der BMDWC1O-Zyklus ist der Datenschreibzyklus; der betreffende Zyklus ist das Intervall während dessen Daten aus dem Hauptspeicher in die Puffermodule geschrieben werden. Die Zyklen BWCC1 und BWCC2 werden dazu herangezogen, die Anzahl der Hauptspeicheranforderungen zu zählen, die von dem puffer unternommen worden sind. Das BDWUC1C Signal ist der Datenaktualisierungszyklus; das betreffende Signal tritt nur dann mit hohem Pegel auf, wenn während der vier Hauptspeicherzugriffe ein Fehler aufgetreten ist. Vfenn ein Fehler aufgetreten ist, bewirkt die Puffereinheit die Nullstellung der Gültigkeitsbits, um nämlich anzuzeigen,
409818/0886
dass die in dem Puffer enthaltenen Daten nicht gültig sind, und zwar wegen eines Fehlers, der während des Schreibens aufgetreten ist«, Das BDWC1 -Signal ist ein Zyklus, der dazu benutzt wird, die Adressenbits zu erhöhen. Das BDWUB-Signal ist ein Puffer-Schreibaktualisierungs-Belegtsignal, welches Konflikte zwischen der Eingabe/Ausgabe-Einheit und dem Puffer löst. Es verhindert einen Zugriff der Eingabe/Ausgabe-Eiriheit zu dem Puffer während dieser Zeitspanne.. Die danach folgenden Funktionen BNA27 bis 28^BMA27 bis 28 und BSA27 bis 28 sind Adressenbits für eine Vergrösserung der Adresse für den Zugriff zu unterschiedlichen Modulen des Hauptspeichers.
Nachdem vorstehend eine Ausführungsform der Erfindung beschrieben worden ist, folgen nunmehr die oben erwähnten Anhangtabellen sowie die erwähnte Tabelle.
409818/0886
Anhangtabelle I
Bedingungen für die Funktion der B1WES
1a) Unteres Gültigkeitsbit 1 .(V1L) und oberes Gültigkei-csbit 1 (V1U) sind Null, und Aktivitätsbit (ACTB) ist Null; äusserdem ist OK-Bit 1j wenn jedoch die Signals V1L und V1U beide Null sind, wird das Signal BV1SZ1O (Puffer-GültigKeLtsbit 1 auf Null gesetzt) erzeugt. Dann ist (ia)s
b) BV1SZ1O ist Null. ACT B ist Null/ OK-Bit"ist 1.
2 a) Unteres Gültigkeitsbit 2 (V2L) und oberes Gültigkeitebit (V2U) sind Null und V1U ist Null; UND=OK-Bit ist 1 j, da dann, wenn das untes Gültigkeitsbit 2 (V2L) und das obere Gültigkeitsbit 2 (Y2U) verknüpfungsmässig Null sind, das Signal BV2SZ (Puffer-Gültigkeitsbit; 2 ist verknüpfungsmässig auf Null gesetzt) erzeugt v/ird. Dann ♦ ist (2a)$
b) BV1SZ1O ist verknüpfungsmässig Null. BV2SZ00 ist verknüpfungsmässig nicht Null ο OK-Bit ist verknüpfungsmässig '
3.." 128x2x32~Betrieb. Treffer-1 wird gespeichert, OK-Bit ist verknüpfungsmässig 1.
128x2x52-Betrieb . Unterer Treffer-1 wird gespeichert OK-Bit ist verknüpfungsmässig 1.
5ο I28x2x32-Befcrieb · oberer Treffer-1 wird gespeichert · OK-Bit ist verknüpfungsmässig 1.
ist Null · ACT B ist Mull " 128x2x32-Betrieb.
408816/0881
Treffer-2 gespeichert * OK-Bit ist 1
7. V2L.V2U ist Null · ACT B ist Null · 128x2x32-Betrieb, Unterer Treffer-2 wird gespeichert.
8. , V2L.V2U ist Null · ACT B ist Null · 128x2x32-Betrj>b.
Oberer Treffer-2 gespeichert. OK-Bit ist 1
B1WES1O
409816/0886
Anhangtabelle II
für die Bildung der Funktion B2WBS
Λ, a) (V2L. Y2U ist verknüpfungsmässig Null)« ACT B ist verknüpfungsmässig 1, OK-Bit ist 1
oder
1. b) BV2SZ10. ACT B ist verknüpft. OK-Bit ist 1
2. a) V2L. V2U ist Null)« (V1LoVlU ist Null) OK-Bit ist 1
oder
2. b) BV2SZ10 · BV1SZ00 ·■ OK-Bit ist 1
3. a) 128x2x32-Betriebo Treffer 2 wird gespeichert.
OK-Bit ist 1. Da Treffer 2 gespeichert ist, isi BH2ST - OK-Bit ist 1
b) 128x2x32-Betrieb · BH2ST * OK-Bit ist 1
4. 128x2x32. Treffer 2L gespeichert * OK-Bit isx 1
5. 128x2x32 * Treffer 2U gespeichert ' QK-Bit ist 1
6. (V1L.V1U ist gespeichert)* ACT B ist 1. 128x2x32-Betrieb. Treffer 1 gespeichert. OK-Bit ist 1. ■
7. CV1L. V1U ist Null; ' ACT B ist 1. 128x2x32 -Betrieb Unterer Treffer 1 gespeichert " OK-Bit ist 1
4Q9816/Q886
8. (V1L.Y1U ist Null. ACT B ist Oberer Treffer 1 gespeichert -Be trieb. OK-Bit ist 1
B2WES1O
Anhangtabelle IIIA
Bedingungen für die Bildung der gchreibau&lblendungs-Bits B1WMQ bis B1WM7
MfC * DWMOO3O) = blWMOOO MWC. DIfMOI 30) = B1WM100 MWC.DWM0230) = B1WM2OO ; MWC.DWMO33O) = B1WM300 MWC.DWM0430)= B1WM400 MWCDWMO53O) = B1WM500 MWC.DWM0630) = B1WM600 DWMO73O) = B1WM700
O (BWES10 " D¥C30) + (B1WES10
1 (B1WES10 . DWC30) + (B1¥ES10
2 (B1WES10 . DWC30) + (B1WES10
3 (B1WES10 . DWC30) + (B1WES10
k (B1WES10 . DWC30) + (B1WES10
5 (B1WES10 . DWC30) + (B1WES10
6 (B1WES10 . DWC30) + (B1WES10
7 (B1WES10 . DWC30) + (B1WES10
Anhangtabelle IIIB
Bedingungen für die Bildung der Schreibausblend-Bits BIWMO bis B2WM7
(B2WES10
(B2WES10
(B2WES10
(B2WES10
(B2WES10
(B2WES10
(B2WES10
(B2WES10
DWC30) DWC30) DWC3O) DWC30) DWC30) DWC30) DWC30) DWC30)
(B2WES10 (B2WES10 (B2WES10 (B2WES10 (B2WES10 (B2WES10 (B2WES10 (B2WES10 MWC.DWMOO3O)
MWC.DWM0130)
MWC.DWMO23O)
MWC.DWMO33O)
MWC.DWM0430)
MWC.DWMO53O)
MWC.DWM06J0)
MWC.DWMO73O)
B2WMOOO B2WM100 B2WM2OO B2WM3OO B2WM400 B2WM5OO B2WM600 B2WM7OO
^09816/0886
'45
Anhängtabeile IV
Bedingungen für die Bildung der Funktion (Puffer-Setzen qes oberen Gültigkeitsbits 1)
.1. a) (V1LoV1ü ist verknüpfungsmässig Null. (V21.V2U) ist verknüpfungsmässig Null.
128x2x32-Betrieb, 16-Byte-Wort laden. Adressenbit 27
b) BV1SZ10.BV2SZ00 .-128x2x32 - Betrieb. Adressenbit 27
2. BV1SZ1O . BV2SZ00 .. 32-Byte-.-Betrieb
BV1SZ1O . ACT B ist Null' (128x2x16-Betrieb + 256x2x16-Betrieb
BY1SZ1O . ACT B ist Null. 128x2x32-Betrieb. Adressen-Bit
BSV1U1O
Anhangtabelle V
Bedingungen für die Bildung der Funktion BV1UW (Puffer-Gültigkeit 1 r obere?schreiben)
BSV1U1O . BDWUC3O
2. BDWUC3O . BSV1VUOO . B1VUS1O
3 ο BIH1U1O . BIUDC3O
BV1UW 409816/088
Anhangtabelle Yl
Bedingungen für die- Bildung der Funktion B1VUS (Puffer 1 Gültigkeit«obereT setzen)
1.' B86161O.ACT B ist Null
+
BH1LS1O
2. (Unterer Treffer 1 gespeicher.) . B823230 (16-B>t?· laden
BH2LS00
3. BACTS ist Null. B82323O . Unterer Treffer 2gespeichert
BH2US00 —-_
4. ACTS ist Null. B823230 . Oberer Treffer 2 gespeichert
BH2US00
5. B32BM3O . Treffer 2gespeichert . ACTS ist Null
B1VUS1O
Tabelle I
Signal-Funktions-Defini ti onen
Signal/Funktions- Definition
Negation
1. BV1SZDC? gespeicherte Bits V1L und V1U sind
nicht Null
Bestätigung.
2. BV1Szf& gespeicherte Bits V1L und V1U sind Null,
4098 16/088
Signal-Fuaktions-Name
4. V1U
5- V2U
6. V2L
7ο VB2SZ00
8. BV2SZ1O
9. BACTS1O
10.BACTSOO
11.BV2SZ "
12.BH1ST 13.BH2ST 14.BH1LS 15.BH1US
16.BH2LS · 17.BH2US
Gültigkeitsbit-f Pufferspeicher 1-9 untere bank. GUltigkeitsbitj Pufferspeicher 1, obere BanX Gültigkeitsbit, Pufferspeicher1 2, obere BanF GUltigkeitsbit, Pufferspeicher 2, untere Bank gespeicherte Bits V2L und ¥2U sind nie nt NuJi gespeicherte Bits V2L und Y2U sind Nv111
Pufferaktivitätsbit ist in einem Flipflop gemäss Fig. 8C gespeichert
Aktivitätsbit ist nicht im Flipflop gespeichert
gespeichert© V2L und ¥2U · sind / sind nic'ii Null, u.zw. abhängig vom Anhang? OC = Nein; 10 = Ja (Anhangbits werden in dieser Tabelle nunmehr weggelassen)
Zentraleinheits-Treffer im Pufferspeicher gespeichert; Ja/Nein
Zentraleinheits-Treffer im Pufferspeicher gespeichert; Ja/Nein
Zentraleinheits-Treffer im Pufferspeicher 1> untere Bank, gespeichert; Ja/Nein
Zentraleinheits-Treffer im Pufferspeicher 1, obere Bank, gespeichert; Ja/Nein
Zentraleinheits-Treffer im Pufferspeicher 2, untere Bank, gespeichert; Ja/Nein
Zentraleinheits-Treffer im Pufferspeicher obere Bank, gespeichertι Ja/Hein
18.BIHTL
19.BIHTU 20.BIH1L 21.BIH1U 22.BIH2L 23.BIH2U
18-23 sind wie 12-17, abgesehen davon, dass die Eingabe/Autgabe-Einheit einen "Treffer" bewirkt.
409816/0886
Signal-Funktiöne BPSTE
Name DIAGM
24. DIMWC
25. BPDHE
20. MPSWL
21. BPMWC
22. DWMO
23. DWM1
24. DWM2
25. DWM3
26. DWM4
27. DWM5
28. DWM6
29. DWM7
30. B1WM0-7
31. B2WM0-7
32 40. BAB 27
40 48. BDWUC
49. BIUDC
50. BSV1U
51. BSV2U
' 52. BSV1L
53. BSV2U
54. B1WES
55. B2WES
56. BV1UW
57. BV1LW
.50. BV2UW
59.
60.
Definition
Gespeicherter Fehler
Fehlersuchbetrieb
Fehlersuchbetrieb-Schreibzyklus Fehlersuchbetrieb- Fehler Wartungsfehldschalter
Datenmodul-SGhreibzyklus Zentraleinheits-Schreibausblendung, öyte C
» ' ' » Byte ".
" M Byte a
« . ' - " Byte 3
" · Byte 4.
" . ' n Byte 5
11 » Byte 6
11 " Byte 7
Pufferspeicher 1, Schreibsteuerbytes 0-7 Pufferspeicher 2, Schreibsteuerbytes 0-7 Pufferadressenbit 27
Pufferadresslisten-Schreibaktualisierungszyklus
Puffer-Eingabe/Außgabe-Aktualisierungszyklus
Puffer, Setzen des oberen GÜltigkeitsbits 1
Puffer, Setzen des oberen Gültigkeits-. ' bits 2
Puffer, Setzen des unteren Gültigkeitsbits 1
Puffer, Setzen des unteren Gültigkeitsbits 2
Pufferspeicher 1, Schreibfreigabe-Setzen Puffenspeicher 2, Schreibfreigabe-Setzen Oberes Puffergültigköltsbit 1, Schreiben Unteres Puffergültigkeitsbit 1, Schreiben Oberes Puffergültigkeitsbit 2, Schreiben
409816/088
Sign&l-Funktioz&g Nass®
Definition
61 ο BV2LW 62. BV1LS
63« BV1US 64o BV2LS
65. BV2US
66. BCPDC
67. BCBCB 68ο BOKBS 69.
70. CPDAT 71ο BPAWC
72. Β32ΒΜ
73. Β8232
74. Β8616
75. BOKWE 76.. BACTB 77./BDV1I. 78. BDV1U 79c BDY2L
80. BDV2U
81. BPA¥C
82-. BCPBC 83. BTMIfC 84«, BPWDI unteres Puffergültigkeitsbit, Schreiben
Unteres"Puffergültigkeitsbit 1 gespeichert
Oberes Puffergültigkeitsbit 1 gespeichert
Unteres Puffergültigkeitsbit 2 gespeichert
Oberes Puffergültigkeitsbit 2 gespeichert
Puffer-Zentraleinheits-AdresslistenzyRlus Puffer»Zyklus belegt
Puffer-OK-Bit gespeichert
Puffer-Adresslisten-Schreibaktttalisie-
rungszyklus
Zentraleinheitsdaten
Puffer-Verarbeittmgselnrichtungs-Aktivitäts-Schreibzyklus
128x2x32i-Betrieb
128x2x16- oder 256x2x16»Betrieb BQiC-Sehreib-Freigabe ■.".
Pnffer-Aktivitätsbit
Puff@r<»Acir®sslist©ii-Gültigk©it 1
untere
Pu£fer-Adres'8listen~(2Ultlgkeit t, obere t
29 unter© 2, obere
Puffer-Vararbeitrnigseinrichtungs-Aktivitäts-Schreibzykius
¥@rarb©itiiiiga©isirichtmagg-Datenf ahler
409816/088
Signal-Funktions-Name
Definition
85. UBWAB
86. BPAPE
87. BIDHE
88. BIOWA
89. BPDHE
90. BIODC
91. BPBCB
92. BLOG1
Verarbeitungeeinrichtung-Schreibabänd'erunp Verarbeitungseinrichtungs-Paritätsfehler Kingabe/Ausgabe-Doppeltrefferfehler-
2 Treffer gleiehzeitig
Eingabe/Ausgabe-Schreibabänderung
Verarbeitungseinrichtungs-Doppel trt- .ff erfehler
Singabe/Ausgabe-Adresslistenzyklus Puffer-Verarbeitungeeinrichtungs-Zyklus
belegt
VerknUpfungsmässig 1 (geerdete Leitungen)
409816/0886-

Claims (11)

  1. 235022a
    Patentansprüche
    Qy Anordnung für ein Rechnersysteni zur variablen Ausblendung von Informationen bei einem gleichzeitigen, unter einer Programmsteuerung stehenden Zugriff zu einer veränder-. baren Anzahl von Informationsbytes b, die in Gruppen mit jeweils i Bytes in irgendeinem Modul von η Modulen-einer Speichereinrichtung gespeichert sind, die in irgendeiner Betriebsart von m Speicherbetriebsarten zu arbeiten ■ imstande ist, dadurch gekennzeichnet,
    a) daß mit den η Modulen eine erste einrichtung verbunden ist, die ein ausgewähltes Modul der η Module der Speichereinrichtung in dem Fall zu adressieren gestattet, daß die Speichereinrichtung in einem ausgewählten Betrieb der m Betriebsarten arbeitet,
    b) daß mit der ersten Einrichtung und den η Modulen eine zweite Einrichtung zur Adressierung einer ausgewählten Gruppe von i Informationsbytes innerhalb des ausgewählten Moduls der η Module.. verbunden ist, und
    c) daß mit der zweiten Einrichtung und mit den η Modulen eine variable Ausblendeinrichtung verbunden ist, die ausgewählte Bytes der b Bytes einer ausgewählten, i Bytes umfassenden Gruppe auszublenden gestattet.
  2. 2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Betriebsarten der Speichereinrichtung einen Kormalbetrieb (A zu B.zu C), in welchem die Speichereinrichtung A Spalten eines Informationsblocks (das sind C Bytes) oder einen halben Informationsblock (das -sind C/2 Bytes) pro Spalte zu speichern imstande ist, einen A-zu-B-zu-C/2-Betrieb, in welchem die Speichereinrichtung A Spalten eines halben Informationsblocks pro Spalte zu speichern imstande ist, und einen E-zu.-B-C/2-Betrieb umfaßt, in welchem die Speichereinrichtung E Spal-
    409816/0 8 86
    ten ©ines halben Informationsblocks pro Spalte zu speichern imstande ist, und daß B irgendein Teil der Speichereinrichtung ist.
  3. 3. Anordnung nach Anspruch 2, dadurch gekennzeichnet", daß die Speichereinrichtung aus einem Hauptspeicher, der in k Wegen verschachtelt in einer Betriebsart betreibbar ist, und aus einem Pufferspeicher besteht, der eine geringere Kapazität und geringere Zugriffszeit besitzt als der in irgendeiner Betriebsart von m Betriebsarten unter Programmsteuerung betreibbare Hauptspeicher.
  4. 4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß die Betriebsarten des Pufferspeichers einen Umgehungsbetrieb umfassen, in welchem der Pufferspeicher nicht benutzt wird und in welchem sämtliche Zugriffe nach einer Information zu dem Hauptspeicher hin erfolgen, und daß mit dem Hauptspeicher Einrichtungen verbunden sind, die auf ein ausgeführtes Programm hin dynamisch den Umgehungsbetrieb einzuführen gestatten.
  5. 5. Anordnung nach einem der Ansprüche 1 bis 4, mit einem Allzwe.ckrechnersystem, welches ein Mehrebenen-Speichersystem aufweist, dadurch gekennzeichnet,
    a) daß ein Hauptspeicher für die Abspeicherung von Informationsblöcken vorgesehen ist, deren jeder C Bytes enthält,
    b) daß ein Pufferspeicher vorgesehen ist, der zumindest zwei Module enthält, deren jedes eine Information in einer ausgewählten Betriebsart einer Vielzahl von Mehrlängen-Byte-Wort-Betriebsarten zu speichern vermag,
    c) daß mit dem Pufferspeicher eine erste Einrichtung
    409 816/0886
    verblinden ist, die auf ein von dem Rechner system ausgeführtes Programm hin dynamisch den vorhandenen Speicherbetrieb des Pufferspeichers zu ändern gestattet,
    d) daß mit dem Hauptspeicher unidem Pufferspeicher eine zweite Einrichtung verbunden ist, die festzustellen gestattet, ob eine von dem Rechnersystem angeforderte Information in dem Pufferspeicher enthalten ist oder nicht, ,
    e) daß mit dem Hauptspeicher und dem Pufferspeicher eine dritte Einrichtung verbunden ist, die durch die zweite Einrichtung gesteuert ein ausgewähltes Modul der Module des Pufferspeichers in dem Fall zu adressieren gestattet, daß der Pufferspeicher in einem ausgewählten Betrieb der Mehrlängen-Byte-Betriebsarten arbeitet,
    f) daß mit dem Hauptspeicher, dem Pufferspeicher und der dritten Einrichtung eine vierte Einrichtung verbunden ist, die durch die zweite Einrichtung gesteuert ein ausgewähltes Wort in dem adressierten Modul zu adressieren gestattet, und
    g) daß mit dem Pufferspeicher, der dritten Einrichtung und der vierten Einrichtung eine variable Ausblendeinrichtung .verbunden ist, die durch die zweite Einrichtung gesteuert ausgewählte Teile des ausgewählten Wortes dem adressierten Modul auszublenden gestattet»
  6. 6. Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß die Betriebsart des Pufferspeichers einen Normalbetrieb (A zu B zu C), in weichem der Pufferspeicher A Spalten eines Informationsblocks (das sind C Bytes) oder einen halben Informationsblock (C/2 Bytes) pro Spalte zu sparten imstande ist, einen Ozu-B-zu-C/2-Betrieb,
    -SH-
    in welchem der Pufferspeicher Δ Spalten eines halben Informationsblocks (das sind C/2 Bytes) pro Spalte zu speichern imstande ist, und einen E-zu-B-zu-C/2-Betrieb umfaßt, in welchem der Pufferspeicher E Spalten eines halben Informationsblocks (das sind C/2 Bytes) pro Spalte zu speichern imstande ist, und daß B irgendein Teil des Pufferspeichers ist.
  7. 7. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß die Betriebsarten des Pufferspeichers einen Umgehungsbetrieb umfassen, in welchem der Pufferspeicher nicht benutzt wird und in welchem sämtliche Zugriffe zu einer Information in dem Hauptspeicher erfolgen.
  8. 8. Anordnung nach Anspruch 7, dadurch gekennzeichnet, daß der Speicher in k Wegen verschachtelt ist.
  9. 9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, daß mit dem Hauptspeicher eine Einrichtung verbunden ist,· die auf ein ausgeführtes Programm hin dynamisch den Umgehungsbetrieb einzuführen gestattet.
  10. 10. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß mit dem Pufferspeicher eine Adresslisteneinrichtung (105) verbunden ist, die zur Speicherung von Adressen des Hauptspeichers dient, wobei die durch die Adressen des Hauptspeichers angezeigte Informa-
    - tion sowohl in dem Pufferspeicher (104) als auch in dem Hauptspeicher (101) gespeichert wird.
  11. 11. Anordnung für ein Rechnersystem zur variablen Ausblendung von Informationen bei einem gleichzeitigen,
    unter einer Programmsteuerung stehenden Zugriff zu einer veränderbaren Anzahl von Informationsbytes b, die in Gruppen mit jeweils i Bytes in irgendeinem Modul von η Modulen einer Speichereinrichtung gespeichert' sind, die in irgendeiner Betriebsart von m Speicherbetriebsarten zu arbeiten imstande ists dadurch gekennzeichnet,
    a) daß mit den η Modulen der Speichereinrichtung eine erste Einrichtung verbunden istj die auf für den Speicherbetrieb und den Zustand der; η Module, kennzeichnende Signale hin Signale (BIfWSS) erzeugt, welche kennzeichnend sind für das Speichermodul (n)?das für das Einschreiben einer Information freigegeben ist,
    b) daß mit den η Modulen der Speichereinrichtung zweite, dritte und vierte Einrichtungen verbunden sind, die ein Datenschreibzyklussignal (DWC) bzw. ein Speicherschreibzyklussignal bzw. ein Datenschreibausblendsignal (DWMXX) für die Ausblendung von Bytes XX erzeugen, und
    c) daß mit der ersten Einrichtung, der zweiten Einrichtung,, der dritten Einrichtung und der vierten Einrichtung eine fünfte Einrichtung verbunden ist, die auf Signale entsprechend dem Boulesehen Ausdruck (BNIiESODWC)+ (BNWES·MWC·DWMXX) von .der vierten Einrichtung her ein Schreibausblendsteuersignal BNWMY erzeugt, welches die Anzahl von Bytes Y bezeichnet, die auszublenden sind.
    409816/0886
    Le e rs e ι te
DE19732350225 1972-10-05 1973-10-05 Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen Granted DE2350225A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US00295303A US3800292A (en) 1972-10-05 1972-10-05 Variable masking for segmented memory

Publications (2)

Publication Number Publication Date
DE2350225A1 true DE2350225A1 (de) 1974-04-18
DE2350225C2 DE2350225C2 (de) 1988-12-29

Family

ID=23137121

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19732350225 Granted DE2350225A1 (de) 1972-10-05 1973-10-05 Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen

Country Status (6)

Country Link
US (1) US3800292A (de)
JP (1) JPS5710498B2 (de)
CA (1) CA1002204A (de)
DE (1) DE2350225A1 (de)
FR (1) FR2202611A5 (de)
GB (1) GB1433393A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6986118B2 (en) 2002-09-27 2006-01-10 Infineon Technologies Ag Method for controlling semiconductor chips and control apparatus

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3979726A (en) * 1974-04-10 1976-09-07 Honeywell Information Systems, Inc. Apparatus for selectively clearing a cache store in a processor having segmentation and paging
US3964054A (en) * 1975-06-23 1976-06-15 International Business Machines Corporation Hierarchy response priority adjustment mechanism
US4084234A (en) * 1977-02-17 1978-04-11 Honeywell Information Systems Inc. Cache write capacity
US4195342A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. Multi-configurable cache store system
GB2016752B (en) * 1978-03-16 1982-03-10 Ibm Data processing apparatus
DE2842288A1 (de) * 1978-09-28 1980-04-17 Siemens Ag Datentransferschalter mit assoziativer adressauswahl in einem virtuellen speicher
US4394733A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem
US4460958A (en) * 1981-01-26 1984-07-17 Rca Corporation Window-scanned memory
US4493026A (en) * 1982-05-26 1985-01-08 International Business Machines Corporation Set associative sector cache
IT1153611B (it) * 1982-11-04 1987-01-14 Honeywell Inf Systems Procedimento di mappatura della memoria in sistema di elaborazione dati
US4803617A (en) * 1986-02-10 1989-02-07 Eastman Kodak Company Multi-processor using shared buses
JPH087715B2 (ja) * 1990-11-15 1996-01-29 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理装置及びアクセス制御方法
US5454093A (en) * 1991-02-25 1995-09-26 International Business Machines Corporation Buffer bypass for quick data access
US6766431B1 (en) * 2000-06-16 2004-07-20 Freescale Semiconductor, Inc. Data processing system and method for a sector cache
US9542352B2 (en) * 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US8796830B1 (en) 2006-09-01 2014-08-05 Google Inc. Stackable low-profile lead frame package
US7386656B2 (en) 2006-07-31 2008-06-10 Metaram, Inc. Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit
US8089795B2 (en) 2006-02-09 2012-01-03 Google Inc. Memory module with memory stack and interface with enhanced capabilities
US8077535B2 (en) 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US8327104B2 (en) 2006-07-31 2012-12-04 Google Inc. Adjusting the timing of signals associated with a memory system
US8244971B2 (en) * 2006-07-31 2012-08-14 Google Inc. Memory circuit system and method
US8060774B2 (en) 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
US7609567B2 (en) * 2005-06-24 2009-10-27 Metaram, Inc. System and method for simulating an aspect of a memory circuit
US8055833B2 (en) 2006-10-05 2011-11-08 Google Inc. System and method for increasing capacity, performance, and flexibility of flash storage
US20080082763A1 (en) * 2006-10-02 2008-04-03 Metaram, Inc. Apparatus and method for power management of memory circuits by a system or component thereof
US8041881B2 (en) * 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US8090897B2 (en) 2006-07-31 2012-01-03 Google Inc. System and method for simulating an aspect of a memory circuit
US8386722B1 (en) 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
US8081474B1 (en) 2007-12-18 2011-12-20 Google Inc. Embossed heat spreader
US10013371B2 (en) 2005-06-24 2018-07-03 Google Llc Configurable memory circuit system and method
US8397013B1 (en) 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
US8111566B1 (en) 2007-11-16 2012-02-07 Google, Inc. Optimal channel design for memory devices for providing a high-speed memory interface
US8335894B1 (en) 2008-07-25 2012-12-18 Google Inc. Configurable memory system with interface circuit
US20080028136A1 (en) * 2006-07-31 2008-01-31 Schakel Keith R Method and apparatus for refresh management of memory modules
US8359187B2 (en) 2005-06-24 2013-01-22 Google Inc. Simulating a different number of memory circuit devices
US9507739B2 (en) 2005-06-24 2016-11-29 Google Inc. Configurable memory circuit system and method
WO2007002324A2 (en) * 2005-06-24 2007-01-04 Metaram, Inc. An integrated memory core and memory interface circuit
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US8130560B1 (en) 2006-11-13 2012-03-06 Google Inc. Multi-rank partial width memory modules
US8438328B2 (en) 2008-02-21 2013-05-07 Google Inc. Emulation of abstracted DIMMs using abstracted DRAMs
GB2444663B (en) 2005-09-02 2011-12-07 Metaram Inc Methods and apparatus of stacking drams
US9632929B2 (en) 2006-02-09 2017-04-25 Google Inc. Translating an address associated with a command communicated between a system and memory circuits
US7724589B2 (en) 2006-07-31 2010-05-25 Google Inc. System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits
US8269792B2 (en) * 2006-11-21 2012-09-18 Qualcomm Incorporated Efficient scissoring for graphics application
US7921274B2 (en) * 2007-04-19 2011-04-05 Qualcomm Incorporated Computer memory addressing mode employing memory segmenting and masking
US8209479B2 (en) 2007-07-18 2012-06-26 Google Inc. Memory circuit system and method
US8080874B1 (en) 2007-09-14 2011-12-20 Google Inc. Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween
EP2441007A1 (de) 2009-06-09 2012-04-18 Google, Inc. Programmierung von dimm-abschlusswiderstandswerten

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3626374A (en) * 1970-02-10 1971-12-07 Bell Telephone Labor Inc High-speed data-directed information processing system characterized by a plural-module byte-organized memory unit

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3292151A (en) * 1962-06-04 1966-12-13 Ibm Memory expansion
US3380034A (en) * 1963-07-17 1968-04-23 Vyzk Ustav Matemat Stroju Addressing system for computer memories
US3340512A (en) * 1964-07-20 1967-09-05 Burroughs Corp Storage-pattern indicating and decoding system
US3634882A (en) * 1964-12-14 1972-01-11 Bell Telephone Labor Inc Machine-processing of symbolic data constituents
US3569938A (en) * 1967-12-20 1971-03-09 Ibm Storage manager
US3543245A (en) * 1968-02-29 1970-11-24 Ferranti Ltd Computer systems
US3686640A (en) * 1970-06-25 1972-08-22 Cogar Corp Variable organization memory system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3626374A (en) * 1970-02-10 1971-12-07 Bell Telephone Labor Inc High-speed data-directed information processing system characterized by a plural-module byte-organized memory unit

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Computer Group News, März 1969, S. 9-13 *
Elektron. Rechenanlagen, 1970, H. 2, S. 95-103 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6986118B2 (en) 2002-09-27 2006-01-10 Infineon Technologies Ag Method for controlling semiconductor chips and control apparatus

Also Published As

Publication number Publication date
CA1002204A (en) 1976-12-21
FR2202611A5 (de) 1974-05-03
US3800292A (en) 1974-03-26
GB1433393A (en) 1976-04-28
DE2350225C2 (de) 1988-12-29
JPS4974447A (de) 1974-07-18
JPS5710498B2 (de) 1982-02-26

Similar Documents

Publication Publication Date Title
DE2350225A1 (de) Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen
DE2350215A1 (de) Rechnersystem sowie bei diesem verwendbares mehrebenen-speichersystem
DE3011552C2 (de)
DE69630624T2 (de) EEPROM-Matrix mit einem, dem &#34;Flash&#34;-Speicher ähnlichen Kern
EP0013737B1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE2501853A1 (de) Prozessor fuer ein datenverarbeitungssystem
DE4221278C2 (de) Busgekoppeltes Mehrrechnersystem
DE69635865T2 (de) Adressentransformation in einem cluster-computersystem
DE2455047A1 (de) Datenverarbeitungssystem
DE3621321A1 (de) Cache-speicher- bzw. multiprozessor-system und betriebsverfahren
DE2619159A1 (de) Fehlererkennungs- und korrektureinrichtung
DE2231146B2 (de) Datenverarbeitungsanlage mit virtueller Adressierung
DE2230266A1 (de) Datenverarbeitungsanlagen mit einer zentraleinheit unter verwendung virtueller adressierung
DE2117936A1 (de) Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems
DE2917441A1 (de) Multiprozessoranlage
EP0762274A1 (de) Einrichtung und Verfahren zur Echtzeit-Verarbeitung einer Mehrzahl von Tasks
DE2517356A1 (de) In datenverarbeitungsanlagen universell einsetzbarer logischer modul- baustein
DE2115431A1 (de) Universalmodul zum Verbinden von Einheiten in Patenverarbeitungsanlagen
DE2641722C3 (de) Hierarchisch geordnetes Speichersystem für eine datenverarbeitende Anlage mit virtueller Adressierung
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE2441754A1 (de) Prozessor-datenuebertragungssteueranordnung sowie verfahren zur steuerung der datenuebertragung eines prozessors
DE60025788T2 (de) Flexibles Mehrzweck-Ein/Ausgabesystem
DE2856715B2 (de) Verfahren zum Durchführen einer Pufferspeicher-Koinzidenz in einem Mehrprozessorsystem
DE2532125C2 (de) Modularbaustein für Datenverarbeitungsanlagen
DE2117581C3 (de) Einrichtung zur Adressenprüfung

Legal Events

Date Code Title Description
OD Request for examination
8127 New person/name/address of the applicant

Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee