DE2350225A1 - Anordnung fuer ein rechnersystem zur variablen ausblendung von informationen - Google Patents
Anordnung fuer ein rechnersystem zur variablen ausblendung von informationenInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling 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.
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
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
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
(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)
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
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
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-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
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-OK-Bit gespeichert
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)
- 235022aPatentansprücheQy 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, undc) 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. 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 86ten ©ines halben Informationsblocks pro Spalte zu speichern imstande ist, und daß B irgendein Teil der Speichereinrichtung ist.
- 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. 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. 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 Einrichtung409 816/0886verblinden 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, undg) 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. 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. 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. Anordnung nach Anspruch 7, dadurch gekennzeichnet, daß der Speicher in k Wegen verschachtelt ist.
- 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. 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. 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, undc) 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/0886Le e rs e ι te
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)
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)
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)
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)
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 |
-
1972
- 1972-10-05 US US00295303A patent/US3800292A/en not_active Expired - Lifetime
-
1973
- 1973-07-13 CA CA176,385A patent/CA1002204A/en not_active Expired
- 1973-08-09 GB GB3774173A patent/GB1433393A/en not_active Expired
- 1973-08-09 JP JP8889873A patent/JPS5710498B2/ja not_active Expired
- 1973-10-04 FR FR7335438A patent/FR2202611A5/fr not_active Expired
- 1973-10-05 DE DE19732350225 patent/DE2350225A1/de active Granted
Patent Citations (1)
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)
Title |
---|
Computer Group News, März 1969, S. 9-13 * |
Elektron. Rechenanlagen, 1970, H. 2, S. 95-103 * |
Cited By (1)
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 "Flash"-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 |