DE3012951A1 - Datenverarbeitungssystem - Google Patents

Datenverarbeitungssystem

Info

Publication number
DE3012951A1
DE3012951A1 DE19803012951 DE3012951A DE3012951A1 DE 3012951 A1 DE3012951 A1 DE 3012951A1 DE 19803012951 DE19803012951 DE 19803012951 DE 3012951 A DE3012951 A DE 3012951A DE 3012951 A1 DE3012951 A1 DE 3012951A1
Authority
DE
Germany
Prior art keywords
central
central processing
cpu
request
data
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.)
Withdrawn
Application number
DE19803012951
Other languages
English (en)
Inventor
Tsuguo Matsuura
Tsuguo Shimizu
Shunichi Torii
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3012951A1 publication Critical patent/DE3012951A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

HITACHI, LTD., Tokyo, Japan
Datenvorarbo itungssystom
Die Erfindung betrifft ein Multiprozessor-Datoiiverarbe ί timg.s.system mit mehreren zentralen VerarbeitungseinheL ton, kurz Zentraleinheiten.
Bei einem Multiproze.ssor-Datenvorarbeitungssystem, bei dem die mehreren Zentraleinheiten sehr funktionell miteinander verbunden sind, teilen sich alle Zentraleinheiten einen Hauptspeicher im System miteinander. Jede Zentraleinheit ist mit einem Hochgeschwindigkeits-Pufforspeicher versehen, der kleinere Kapazität besitzt. Die Pufforspeicher sind so ausgebildet, daß sie Teile der im Hauptspeicher gespeicherten Daten einführen und speichern können. Unter Verwendung der dem Pufferspeicher zugeführten Daten kann die Zugriffszeit verkürzt werden, da dann, wenn eine der Zentraleinheiten ein Teil der Daten, die in sowohl dem Hauptspeicher als auch dem
030042/0821
zugeordneten Pufferspeicher gespeichert sind, benötigt, sie die gewünschten Daten durch Zugriff zum Hochgeschwindigkeit s-Puff erspeicher verwenden kann und nicht durch direkten Zugriff zum Hauptspeicher. Wenn eine Zentraleinheit erkennt, daß ein gemischter Datenteil nicht in den zugeordneten Pufferspeicher eingegeben ist, erfolgt ein Zugriff zum Hauptspeicher zur Verwendung der notwendigen Daten und auch zum Eingeben der gleichen Daten in den zugeordneten Pufferspeicher.
Die Pufferspeicher sind daher geeignet für die jeweiligen Zentraleinheiten, während der Hauptspeicher von allen Zentraleinheiten geteilt -wird. Zum Betreiben eines solchen Multiprozessor-Datenverarbeitungssystems unter Steuerung durch das gleiche Programm ist es für jede Zentraleinheit notwendig, daß sie in der Lage ist, Daten zu verwenden, die einander zugeordnet sind, sowie auch gemeinsame Daten, die im Hauptspeicher gespeichert sind. Jede Zentraleinheit führt einen Zugriff zum Hauptspeicher unabhängig von den anderen durch. Folglich können, wenn eine Zentraleinheit das Einschreiben von Daten in den Hauptspeicher zum Ersetzen eines Teils der alten Daten durch neue Daten durchführt, die anderen Zentraleinheiten nicht die richtigen erneuerten Daten verwenden, wenn deren Pufferspeicher die Daten speichern, die den ersetzten Teilen der alten Daten entsprechen. Dieses Problem ist schon gelöst worden (vergleiche US-PS 3 618 040, JP-PS 12 02/74, JP-PS 1611/78). Bei den bekannten Systemen sendet die Zentraleinheit, die Daten in den Hauptspeicher eingeschrieben hat, die Adresse der eingeschriebenen Daten allen anderen Zentraleinheiten zu. Jede der anderen Zentraleinheiten prüft, ob ihr zugeordneter Pufferspeicher Daten speichert, die die empfangene Adresse besitzen. Wenn die Pufferspeicher die Daten speichern, die die fragliche Adresse besitzen, werden die Daten ungültig gemacht, vun eine Fehlverwendung der Daten zu verhindern.
030042/0821
Bei den bekannten Systemen ist daher jede Zentraleinheit mit Interfaceschaltungen versehen für die jeweiligen Zentraleinheiten, um eine Adressenübertragung im Falle eines Überschreibens zu bewirken, das am Hauptspeicher auftritt. Wenn dieses System vier Multi-Zentraleinheiten verwendet, ist die Anzahl der zu verwendenden Interfaceschaltungen abhängig von den vier Einheiten bestimmt. Folglich sind, wenn dieses System mit lediglich zwei der Zentraleinheiten in Betrieb läuft, die Interfaceschaltungen für die beiden ruhenden Einheiten überflüssig.
Wenn ein Datenverarbeitungssystem optimiert ist oder standardisiert ist, unter Verwendung von Interfaceschaltungen entsprechend der größten Anzahl der Zentraleinheiten, die botroi.bbar .sind, wonn das System mit einem einzigen Prozessor zu verwenden ist oder in einem Multiprozessor-System, dann werden einige der Interfaceschaltungen in einigen Fällen überflüssig. Dies ist im Hinblick auf die Kostengrößen nicht günstig. Im Fall eines Allzweckrechners hoher Kapazität wird dieser beispielsweise häufig als Zwei-Miltiprozessor- oder als Einzelprozessor-Datenverarbeitungssystem verwendet. Es ist daher zweckmäßig, ein Datenverarbeitungssystem in solcher Weise auszubilden, daß es auch als Drei- oder Vier-Multiprozessor-System arbeiten kann, während es für ein Einzel- oder Zwei-Multiprozessor-System optimiert ist.
Es ist Aufgabe der Erfindung, ein Datenverarbeitungssystem anzugeben, das standardisierten Aufbau besitzt und das auch als Multiprozessor-System mit günstiger Kostengestaltung arbeiten kann.
Gemäß den Merkmalen des erfindungsgemäßen Multiprozessor-Systems sind mehrere Zentraleinheiten miteinander in Kreisform mittels spezifischer Verbindungseinrichtungen ver-
030042/0821
bunden, wobei die Zentraleinheit, die einen Teil der Daten im Hauptspeicher überschrieben hat, die Adresse der überschriebenen Daten über die Verbindungseinrichtung den anderen Zentraleinheiten zuführt, und wenn irgendeine der anderen Zentraleinheiten erkennt, daß deren zugeordneter Pufferspeicher darin Daten speichert, die die gleiche Adresse wie die empfangene besitzt, werden die gespeicherten Daten ungültig gemacht.
Gemäß der Erfindung kann, da die mehreren Zentraleinheiten in Kreisform miteinander verbunden sind, das Datenverarbeitungssystem mit standardisiertem Aufbau-als Multiprozessor-System arbeiten mit einer unterschiedlichen Anzahl von Zentraleinheiten, wobei die Ko_inzidenz der Daten zwischen dem Hauptspeicher und den Pufferspeichern für die jeweiligen Zentraleinheiten sichergestellt werden kann.
Die Erfindung gibt also ein Datenverarbeiturigssystem an, das im wesentlichen aus einem Hauptspeicher, mehreren Zentraleinheiten, die sich den Hauptspeicher teilen und jeweils einen Pufferspeicher aufweisen, und Verbindungsleitungen zur Verbindung der mehreren Zentraleinheiten in kreisförmigem Weg aufweist. Die Zentraleinheit, die einen Teil der Daten im Hauptspeicher neugeschrieben oder überschrieben hat, überträgt eine Lösch- bzw. Ungültigkeitsanforderung an die anderen Zentraleinheiten über die Verbindungsleitungen. Jede der anderen Zentraleinheiten, die die Ungültigkeitsanforderung empfangen hat, macht den Inhalt ihres Pufferspeichers gemäß der Ungültigkeitsanforderung ungültig, so daß eine nicht vorhandene Übereinstimmung zwischen den Daten im Hauptspeicher und den Daten im Pufferspeicher vermieden wird.
Die Erfindung wird anhand der in der Zeichnung dargestellten Ausführungsbeispiele näher erläutert. Es zeigen
030042/0821
Fig. 1 ein Blockschaltbild eines Datenverarbeitungssystems gemäß einem Ausführungsbei spiel der Erfindung,
Fig. 2 schematisch ein Lösch- bzw. Ungültigkeitsinterface, das bei der Schaltung gemäß Fig. verwendet ist,
Ϊ' i S · ~5 + 4· Blockschaltbilder von Datenverarbeitungssystemen gemäß anderen Ausfiihrungsbei spielen der Erfindung.
Fig. I zeigt ein Dcitenverarbeitungssystem mit vier Prozessoren als Ausführungsbeispiel der Erfindung, wobei vier Zentraleinheiten vorgesehen sind. Vier Zentraleinheiten CPU 0-3 sind mit einem Hauptspeicher MS verbunden und teilen sich daher diesen. Jede Zentraleinheit CPU ist mit einem Eingabe/Ausgabe-Prozessor IOP verbunden, der mit mehreren Eingabe/Ausgabeeinrichtungen I/O verbunden ist und diese steuert. Die Zentraleinheiten CPU 0-3 besitzen den gleichen Aufbau, wobei lediglich die Zentraleinheit CPU O ausführlich erläutert wird. Zusätzlich sind bei dor Schaltung gemäß Fig. 1 lediglich diejenigen Teile der Schaltung dargestellt, die mit dem Speicheranforderungsbetrieb befaßt sind, der dem Hauptspeicher MS zugeordnet ist, da dieser Betrieb durch die Erfindung betroffen ist.
Im CPU 0 besitzt ein Pufferspeicher BS 11 eine kleinere Kapazität und höhere Geschwindigkeit als der Hauptspeicher MS und speichert darin diejenigen Teile der im Hauptspeicher MS gespeicherten Daten, die von der CPU O am häufigsten verwendet werden. Die Adresse im Hauptspeicher MS der im Pufferspeicher BS 11 gespeicherten Daten ist in einem Pufferadressfeld BAA12 gespeichert. Durch Untersuchen des Inhalts des Pufferadressfelds BAA wird geprüft, ob angeforderte Daten im Pufferspeicher BS gespeichert sind. Und wenn die gewünschten Daten in dem Pufferspeicher BS 11 gespeichert sind, ist die Adresse des
030042/0821
Pufferspeichers BS 11 der gewünschten Daten auch zur Verwendung der gleichen Daten bestimmt. Ein Pufferlöschadressfeld FAAI3 besitzt den gleichen Aufbau, wie das Pufferadressfeld BAA12 und speichert die Adresse im Hauptspeicher MS der im Pufferspeicher BSIl gespeicherten Daten. Wenn ein Datenblock von dem Hauptspeicher MS zum Pufferspeicher BSIl übertragen und im Pufferspeicher BSIl gespeichert wird, sendet eine Befehlssteuereinheit IUlO über eine Leitung \k die Adresse im Hauptspeicher MS, der in dem Pufferspeicher BSIl gespeicherten Daten zum Pufferadressfeld BAA12 und zum Pufferlöschadressfeld FAAI3. Die Funktion des Pufferungültigkeits- bzw. Pufferlöschadressf elds F1AA wird weiter unten näher erläutert.
Wenn eine Speicheranforderung in der Zentraleinheit CPUO erzeugt wird, gibt die Befehlssteuereinheit IUlO die Adresse ab, die dem Befehl zugeordnet ist, an ein Adressregister 15, und die Adresse wird in das Adressregister gesetzt. Auch wird, wenn der Eingabe/Ausgabe-Prozessor IOP eine Speicheranforderung erzeugt, die damit verbundene Adresse in ein Adressregister l6 gesetzt. Die in den Adressregistern 15 und 16 gespeicherten Adressen werden über ein Wählglied I9 dem Hauptspeicher MS zugeführt und den gewünschten Datenvwden dann Adressen gesendet, (die zugeordnete Datenleitung ist weggelassen). Die Speicheranforderungsadresse, die von der Befehlssteuereinheit IUlO gesendet ist und in dem Adressregister 15 gesetzt ist, wird auch dem Pufferadressfeld BAA12 gesendet. Das Pufferadressfeld BAA12 vergleicht die empfangene Adresse mit der in ihr gespeicherten Adresse, um zu prüfen, ob die der Adresse entsprechenden Daten, die von dem Register 15 gesendet werden, in dem Pufferspeicher BSIl gespeichert sind. Wenn die Daten in dem Pufferspeicher BSIl gespeichert sind, schreibt die Befehlssteuereinheit IUlO Daten in den Pufferspeicher BSIl abhängig von dem Signal von dem Pufferadressfeld BAA12 ein. Andererseits
030042/0821
werden, wenn die Anforderungsadressdaten nicht in dem Pufferspeicher DSIl gespeichert sind, keine Daten in den Puffersx)eicher DSU eingeschrieben. Da der Eingabe/ Ausgabe-Prozessor IOP niemals den Pufferspeicher BSIl verwendet, wird die Speicheranforderungsadresse in dem Adressregister 16 nicht zum Pufferadressfeld BAA12 gesendet, sondern vielmehr zu einem Wählglied 35 gesendet und in diesem gespeichert, das weiter unten erläutert wird, da eine Nichtübereinstimmung zwischen den Daten in dem Hauptspeicher MS und den Daten in dem Pufferspeicher BS erreicht ist.
Die in den Adressregistern 15 und 16 gespeicherten Speicheranforderungsadressen werden auch über Wählglieder 19,20 einem Register 21 zugeführt. Zum Zeitpunkt der Speicheranforderung senden die Befehlssteuereinheit IUlO und der Eingabe/Ausgabe-Prozessor IOP Signale zu einem Zentraleinheitsnununerregister 23· Ein Zentraleinheitsnummerschalter l8 gibt die Zahl oder Nummer der Zentraleinheit an, der er zugeordnet ist, und gibt nachher ein Ausgangssignal "0" ab. Die Adresse und die Zentraleinheit snummer, die jeweils in den Registern 21 bzw. 23 gespeichert sind, werden als ein Paar von Ungültigkeits- bzw. Löschanforderungen von einem Ausgangsanschluß 0 abgegeben. Der Ausgangsanschluß 0 einer Zentraleinheit CPU ist durch eine Verbindungsleitung L mit dem Eingangsanschluß I einer benachbarten Zentraleinheit verbunden und die vier Zentraleinheiten sind im Kreis miteinander verbunden. Eine Löschanforderung, die von dem Ausgangsanschluß 0 der Zentraleinheit CPUO abgegeben wird, wird der Zentraleinheit CPUl zugeführt. Und die
empfangene Löschanforderung wird weiter zur Zentraler*
einheit CPU2 und zur Zentraleinheit CPU3 übertragen. Daher führen alle Zentraleinheiten den gleichen Löschbetrieb durch, der weiter unten mit Bezug auf die Zentraleinheit CPUO näher erläutert wird.
030042/0821
Die Wählglieder 19,20,22 und 35 zeigen bei simultanem Empfang von Eingangssignalen eine vorgegebene Bevorzugung in der Reihenfolge beim Abgeben von Ausgangssignalen, wobei sie ihre Ausgangssignale in vorgegebener Folge abgeben.
Der Eingangsanschluß T der Zentraleinheit CPUO empfängt eine Adresse und eine Zentraleinheitsnummer als eine Löschanforderung von dem Ausgangsanschluß 0 der Zentraleinheit CPU3· Die Adresse und die Zentraleinheitsnummer, die am Eingangsanschluß I empfangen werden, werden jeweils in die Register 31 bzw. 32 gesetzt. Die in dem Register 31 gesetzte Adresse wird zum Register 33 übertragen und auch in einem Löschpuffer 3^ über das Wählglied 35 gesetzt. Die Speicheranforderungsadros.se, die von dem Eingabe/Ausgabe-Prozessor 1OP dem Register 1(> übertragen wird, wird auch in den Löschpuffer· 3^ gesetzt. Der Löschpuffer JG »kann beispielsweise ein vierstufiges Schieberegister sein, in dem eine in ihre unterste Stufe gesetzte Adresse nacheinanderfolgond in die oberen Stufen verschoben wird zur letzt liehen Übertragung zum Pufferlöschadressenfeld FAAl3· Das Pufferlöschadressenfeld FAAI3 prüft, ob es eine Adresse speichert, die der Adresse gleich ist, die von dem Löschpuffer 3^> gesendet ist, und wenn es eine koinzidente Adresse speichert, wird die Adresse ungültig gemacht und wird auch die entsprechende Adresse in dem Pufferadressfeld BAA12 ungültig gemacht. Dies bedeutet, daß die entsprechenden Daten in dem Pufferspeicher BSIl ungültig genmcht werden, da das Pufferadressfeld BAA das Inhaltsverzeichnis für den Pufferspeicher BS ist. Die Bedeutung des Vorsehens des Pufferlöschadressfeldes FAA13 ist erläutert in der US-PS k 05»
Da nämlich das Pufferloschadressfeld FAAl3 zum Prüfen der Koinzidenz zwischen den Adressen als ihrem Inhcilt und der Adresse, die von dem Löschpuffer 36 zugeführt ist, dient, kann die Befehlssteuereinheit IUlO währenddessen
030042/0821
das Pufferadressfeld 12 ohne Störung der normalen Verarbeitung verwenden. Dies stellt hohen Wirkungsgrad sicher. In diesem Fall können das Pufferlöschadressfeld FAA und der Löschpuffer 3^ weggelassen sein. Folglich wird das Ausgangssignal des Wählglieds 35 direkt dem Pufferadressfeld BAA12 zugeführt und führt das Pufferadressfeld BAA12 alleine den obigen Ungültigkeits- bzw. Löschbetrieb durch.
Die in dem Register 32 gesetzte Zentraleinheitsnummer wird dom Register 3^ synchron mit dem Augenblick zugeführt, zu dem die im Register Jl gesendete Adresse zum Register 33 übertragen wird. Die im Register 3'* gesetzte Zentraleinheitsriummer wird einem Vergleicher 37 zugesendet. Der Vergleicher 37 empfängt stets auch das Ausgangssignal eines Addierers 3^5 unabhängig vom Eintreffen dt·β Signals auf der Leitung 17, wobei das Ausgangssignal des Addierers 38 der Zentraleinheitsnummer gleich ist von dem Zentraleinheitsnummerschalter l8 zuzüglich Eins.
Wenn der Vergleicher 37 eine Koinzidenz zwischen der ZentraLeinheitsnummer vom Register "}k und dem Ausgangssignal des Addierers 38 feststellt, d.h., der Zentraleinheit snummer vom Schalter 18 plus Eins, identifiziert der Vergleicher 37 die Beendigung der Löschverarbeitung bzw. des Löschprozesses unter Angeben eines Ausgangssignals an die Wählglieder 20 und 22 über eine Leitung 39)Um zu verhindern, daß die Adresse und die Zentraleinheitsnummer, die im Register 33 bzw. 34 gesetzt sind, zu den Registern 21 bzw. 23 übertragen werden. Das heißt, die Abgabe eines Koinzidenzausgangssignals vom Vergleicher 37 in der Zentraleinheit CPUO zeigt an, daß die in dem Register "}k gesetzte Zentraleinheitsnummer "1" ist, die durch die Zentraleinheit CPUl erzeugt ist und über die Zentraleinheiten CPU2 und CPU3 umläuft. Folglich werden die Selektoren oder Wählglieder 20 und 22 so ge-
030042/0821
schlossen, daß die Adresse und die Zentraleinheitsnummer, die durch die Zentraleinheit CPUl erzeugt sind, und in die Register 33 bzw. Jh gesetzt sind, daran gehindert werden, daß sie zur Zentraleinheit CPUl übertragen werden. Daher verschwindet die vorliegende Löschanforderung· Wenn der Vergleicher 37 eine Nichtübereinstimmung feststellt j werden die Inhalte der Register 33 und "}k über die Wählglieder 20 bzw. 22 den Registern 21 bzw. 23 usw. in der Zentraleinheit CPUl übertragen.
Auf diese Weise wird eine für eine Speicheranforderung in einer Zentraleinheit erzeugte Adresse über den kreisförmigen bzw. umlaufenden Signalweg zu einer weiteren Zentraleinheit übertragen. Eine durch die Zentraleinheit CPUO erzeugte Löschanforderung wird aufeinanderfolgend zu den Zentraleinheiten CPU1,CPU2 und CPU3 übertragen. In ähnlicher Weise wird eine Löschanforderung, die durch die Zentraleinheit CPUl erzeugt ist, aufeinanderfolgend den Zentraleinheiten CPU2,CPU3 und CPUO zugeführt, wird eine Löschanforderung durch die Zentraleinheit CPU2 den Zentraleinheiten CPU3,CPUO und CPUl zugeführt und wird eine Löschanforderung durch die Zentraleinheit CPU3 den Zentraleinheiten CPUO5CPUl und CPU2 zugeführt. Jede Zentraleinheit, die eine solche Löschanforderung empfangen hat, führt einen Löschbetrieb in der obigen Weise durch.
Gemäß dem Datenverarbeitungssystem des Ausführungsbeispiels der Erfindung gemäß Fig. 1 kann ein günstiger Kostenfaktor erreicht werden, selbst bei jeder beliebigen Anzahl von Zentraleinheiten mit jeweils standardisiertem Aufbau. Wenn beispielsweise der Ausgangsanschluß 0 der Zentraleinheit CPUl mit dem Eingangsanschluß I der Zentraleinheit CPUO verbunden ist zur Bildung eines kreisförmigen oder zirkularen Signalweges, kann das System als Zwei-Prozessor-Datenverarbeitungssystem verwendet werden. Darüber hinaus kann, wenn Zentraleinheiten CPU%,
0300A2/0821
CPU5,...CPU(n-1) dem System hinzugefügt werden und wenn der Ausgangsanschluß O der Zentraleinheit CPU(k-l) mit dem Eingang I der Zentraleinheit CPU k verbunden ist, mit k = l,2,...n-l, wobei der Ausgangsanschluß
0 der Zentraleinheit CPU(n-l) mit dem Eingangsanschluß
1 der Zentraleinheit CPUO verbunden ist, das System dann als n-Prozessor-Datenverarbeitungssystem arbeiten. In jedem Fall ist die Interfaceschaltung für eine Löschanforderung nicht überflüssig bzw. überzählig und ist ausreichend für den Bedarf. Jedoch tritt mit der Erhöhung der Anzahl der Zentraleinheiten die Möglichkeit des Zustands eines gegenseitigen Sperrens auf, das erzeugt wird, sowie ein Problem bezüglich der Zun.ahme der Zeit, die für eine Löschanforderung erforderlich ist, die von der ersten Zentraleinheit zur letzten Zentraleinheit übertragen werden muß. Der Zustand gegenseitigen Sperrens wird erzeugt, wenn eine Löschanforderung daran gehindert wird, daß sie über den Signalumlaufweg fortschreitet, da alle Register, die den Umlaufweg bilden, mit Löschanforderungen gefüllt sind, obwohl es weiter vorwärtsschreiten muß über den Weg, bis die Löschanforderungen in allen Registern verschwunden sind. Das Problem des Zustandes gegenseitigen Sperrens kann dadurch gelöst werden, wenn die Existenz von mehr als einem freien oder vakanten Register logisch in dem Signalumlaufweg gesichert ist. Beispielsweise ist es im Fall der Schaltungsanordnung gemäß Fig. 1 lediglich notwendig, wenn eine Zentraleinheit CPU eine Löschanforderung in den Umlaufweg eingibt, sowohl die Vakanz sowohl des Registers 21 der Zentraleinheit als auch die Vakanz oder die Lücke eines der Register "}1 und 33 in der Zentraleinheit CPUO sicherzustellen.
Fig. 2 zeigt schematisch das Löschinterface gemäß Fig. In Fig. 2 bezeichnen jeweils A„-A„ eine Kombination der Register 31 und 32, B„-B eine Kombination der Register 33 und 3k, Cq-C eine Kombination der Register 21 und 22, D -D, die Löschpuffer 36 und X_-X_ eine Löschanforderung, die in jeder der Zentraleinheiten CPUO-CPU3 erzeugt ist.
030042/0821
Zunächst werden Löschanforderungen X„-X„ jeweils in die Register CQ-C gesetzt. Während des nächsten Zyklus werden die Löschanforderungen, die in die Register C„-C gesetzt sind, jeweils zu den Registern A.-A„ übertragen, wie in Fig. 2 dargestellt. Wenn die Löschanforderungen X -X„ noch in dieser Stufe vorhanden sind, werden diese Anforderungen X„-rX„ als neue Löschanforderungen in die Register C„ -C„ gesetzt. Auf diese Weise werden die Löschanforderungen, wie durch Pfeile dargestellt, über den kreisförmigen oder Umlaufweg umgewälzt.
Fig. 3 zeigt ein weiteres Ausführungsbeispiel der Erfindung. In Fig. 3 sind lediglich diejenigen Teile eines Datenverarbeitungssystems dargestellt, das sich von den entsprechenden Teilen des Systems gemäß Fig. 1 unterscheidet und die lediglich den Interfaceabschnitt für die Adressenübertragung bilden. Gemäß Fig. 3 sind eine Zentraleinheitsnummer und deren zugeordnete Adresse als Löschanforderung bezeichnet. Dieses Ausführungsbeispiel zeichnet sich dadurch aus, daß die Zentraleinheiten miteinander durch zwei Verbindungsleitungen L und L0 verbunden sind. Die durch die Zentraleinheit CPUO erzeugte Löschanforderung ist in ein Register 10 1 gesetzt und dann durch die Verbindungsleitung L. zu einem Register 106 in der Zentraleinheit CPUl übertragen. Die von der CPU3 übertragene Löschanforderung ist in Register 102 und 103 gesetzt zur Zufuhr zum Löschpuffer. Die im Register 102 gesetzte Löschanforderung wird über die Register 101 und die Verbindungsleitung L der Zentraleinheit CPUl zugeführt, während die im Register IO3 gesetzte Löschanforderung über die Verbindungsleitung Lr> dem Register I05 der Zentraleinheit CPUl übertragen wird. Die in der Zentraleinheit CPUl erzeugte Loschanforderung ist in ein Register 10'i gesetzt, das mit der Verbindungsleitung L0 verbunden ist. Die durch die Zentraleinheit CPUl erzeugte Lö schanf orderung ist in ein Register lO't ge-
0300A2/0821
setzt, das mit der Verbindungsleitung L0 verbunden ist. Die durch die Zentraleinheit CPU2 erzeugte Löschanforderung wird über die Verbindungsleitung L. gesendet und die durch die Zentraleinheit CPU3 erzeugte Löschanforderung wird über die Verbindungsleitung L0 gesendet. Daher werden die Löschanforderungen, die durch die Zentraleinheiten CPUO und CPU2 erzeugt werden, über einen Umlaufweg gesendet, der durch die Verbindungsleitung L1 gebildet ist, während die durch die Zentraleinheiten CPUl und CPU3 erzeugten Löschanforderungen über einen Umlaufweg gesendet werden, der durch die Verbindungsleitung LQ gebildet ist.
Bei der Ausbildung des Ausführungsbeispiels gemäß Fig. 3 können mehr Löscheinforderungen über den Umlaufweg umgewälzt werden, als b(»i der Ausbildung des vorhergehenden Ausf ührungsbeispiels, wobei dieses Ausführungsbeispiel besser für einen Multiprozessor-Datenverarbeitungsbetrieb ausgebildet ist.
Fig. K zeigt ein noch weiteres Ausführungsbeispiel der Erfindung, das sich dadurch auszeichnet, daß die VerbLndungsleitung L. einen Umlaufweg im GegenuhrzeigersLnn bildet, während die Verbindungsleitung L0 als Umlaufweg im Uhrzeigersinn dient, und daß die durch jede Zentraleinheit erzeugte Löschanforderung über die beiden Umlaufwege in entgegengesetzte Richtungen gesendet wird. Die durch die Zentraleinheit CPUO erzeugte Löschanforderung wird in sowohl das Register 201 als auch das Register 202 gesetzt. Die Löscheinforderung im Register 201 wird über die Verbindungsleitung L. zur Zentreileinheit CPUl übertragen, während die Löschanforderung im Register 202 über die Verbindungsleitung L0 der Zentraleinheit CPU3 übertragen wird. Die durch die Zentralein-
wird
he Lt CPU3 erzeugte Löschanforderung über die Verbindungsleitung L zum Register 203 übertragen und die durch die
030042/0821
Zentraleinheit CPUl erzeugte Löschanforderung wird über die Verbindungsleitung LQ zum Register 2O'l übertragen. Die Löschanforderungen in den Registern 203 und 2O'i werden zum Löschpuffer gesendet und auch zu den Registern 201 und 202 übertragen. Die Zentraleinheiten CPU1-CPU3 haben den gleichen Aufbau wie die Zentraleinheit CPUO. Die
durch die Zentraleinheit CPUO erzeugte und an die Verbindungsleitung L.abgegebene Löschanforderung wird zur Zentraleinheit CPUl und sequentiell zur Zentraleinheit CPU2 übertragen. Diese Löschanforderung wird daran gehindert, daß sie von der Zentraleinheit CPU2 zur Zentraleinheit CPU3 übertragen wird. Die von der Zentraleinheit CPUO erzeugte und über die Verbindungsleitung LQ abgegebene Löschanforderung wird zur Zentraleinheit CPU3 übertragen und daran gehindert, daß sie weiter zur Zentraleinheit CPU2 übertragen wird. Die Löschanforderungen,
die durch die anderen Zentraleinheiten erzeugt werden, werden ebenfalls in ähnlicher Weise übertragen.
Bei der Ausbildung gemäß Fig. k kann die Löschanforderung von einer Zentraleinheit zur anderen ohne irgendeine
merkliche Verzögerung übertragen werden, selbst wenn das System viele Zentraleinheiten enthält.
030042/0821
-Li-
e e r s e

Claims (1)

  1. Ansprüche;
    / 1./ Datenverarbeitungssystem,
    gekennzeichnet durch
    einen Hauptspeicher (MS),
    mehrere Zentraleinheiten (CPU), wobei jede Zentraleinheit einen Pufferspeicher (DS) enthält, um eine Kopie eines Teils der in dem Hauptspeicher (MS) gespeicherten Daten zu speichern, und
    eine Verbindungseinrichtung (L15L0) zum Verbinden der Zentraleinheiten (CPU) in einem kreisförmigen oder Umlaufweg, wobei jede der Zentraleinheiten (CPU) eine Einrichtung aufweist zur Abgabe einer Löschanforderung an die Verbindungseinrichtung (L , Lg) zum Senden der Löschanforderung an alle anderen Zentraleinheiten (CPU), wenn sie einen Teil der Daten im Hauptspeicher (MS) neu bzw. überschreibt.
    2. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß jede Zentraleinheit (CPU) eine Übertragungseinrichtung zum Übertragen der Löschanforderung aufweist, die von einer anderen Zentral-
    81-(a4011-02J-MeKl
    030042/0821
    einheit (CPU) über die Verbindungseinrichtung (L.,L„) zu dem Pufferspeicher (BS) gesendet istund daß der Pufferspeicher (BS) eine Einrichtung aufweist, um die Daten ungültig zu machen, die darin gespeichert sind, entsprechend der Löschanforderung von der Übertragungseinrichtung.
    3· Datenverarbeitungssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Verbindungseinrichtung eine Einrichtung aufweist, um zu verhindern, daß eine durch eine der Zentraleinheiten (CPU) erzeugte Löschanforderung zur gleichen Zentraleinheit (CPU) rückübertragen wird.
    h. Datenverarbeitungssystem nach einem der Ansprüche 1-31 dadurch gekennzeichnet, daß die Einrichtung zur Zufuhr der Löschanforderung zur Verbindungseinrichtung die Adresse im Hciupt spei eher (MS) des Neu- bzw. überschriebenen Teils der Daten als eine Löschanforderung abgibt.
    5. Datenverarbeitungssystem nach Anspruch ιί, dadurch gekennzeichnet, daß die Einrichtung zur Abgabe der Löschanforderung an die Verbindungseinrichtung nicht nur als Löschanforderung die Adresse, sondern auch die Zentraleinheitsnummer der Zentraleinheit abgibt, die die Löschanforderung erzeugt hat.
    6. Datenverarbeitungssystem nach Anspruch 55
    dadurch gekennzeichnet, daß die Zentraleinheit (CPU) einen Vergleicher (37) zum Vergleich ihrer Zentraleinheit snummer mit der über die Verbindungseinrichtung empfangenen Zentraleinheitsnummer aufweist und daß die Verbindungseinrichtung eine für die Zentraleinheiten vorgesehene Einrichtung aufweist, um zu vermeiden, daß eine durch eine zugeordnete Zentraleinheit erzeugte Löschanforderung zur nächsten Zentraleinheit übertragen wird in Übereinstimmung mit dem Ausgangssignal des Ver-
    030042/0821
    - 3 -gleichers (37).
    7- Datenverarbeitungssystem nach Anspruch 5 oder 6, dadurch gekennzeichnet, daß die Verbindungseinrichtung mehrere kaskadengeschaltete Register (15,16,21,23,31-34, 101-106,201-204) enthält und eine Zentraleinheitsnummer und deren zugeordnete Adresse, die eine Löschanforderung bilden,von einem Register zum nächsten synchron überträgt,
    8. Datenverarbeitungssystem,
    gekennzeichnet durch
    einen Hauptspeicher (MS),
    mehrere Zentraleinheiten (CPU), die sichden Hauptspeicher (MS) teilen, wobei jede Zentraleinheit (CPU) aufweist einen Pufferspeicher (BS) zum Speichern der Kopie eines Teils der in dem Hauptspeicher (MS) gespeicherten Daten, eine Eingabeeinrichtung (I0P), eine Ausgabeeinrichtung (IOP), eine erste Verbindungseinrichtung zum Verbinden der Eingangseinrichtung mit der Ausgangseinrichtung, eine Einrichtung zur Abgabe einer Löschanforderung von der Zentraleinheit (CPU) zu den anderen, abhängig vom Betrieb des Einschreibens von Daten in den Hauptspeicher (MS) durch die Einheit (CPU) und eine Übertragungseinrichtung zum Senden einer der Eingangseinrichtung zugeführten Löschanforderung an den Pufferspeicher (BS), und
    eine zweite Verbindungseinrichtung zum Verbinden der mehreren Zentraleinheiten (CPU) in Form eines Kreises, derart, daß der Ausgangsanschluß (0) einer Zentraleinheit (CPU) mit dem Eingangsanschluß (I) einer weiteren verbunden ist, zum sequentiellen Übertragen der Löschanforderung von einer Zentraleinheit (CPU) zur nächsten.
    9· Datenverarbeitungssystem nach Anspruch 8, dadurch gekennzeichnet, daß der Pufferspeicher (BS) seinen Inhalt in Übereinstimmung mit der von der Über-
    030042/0821
    tragungseinrichtung gesendeten Löschanforderung ungültig macht.
    10. Datenverarbeitungssystem nach Anspruch 8 oder 9, dadurch gekennzeichnet, daß die Löschanforderung die Adresse im Hauptspeicher (MS) des neugeschriebenen bzw. überschriebenen Teils der Daten enthält.
    11. Datenverarbeitungssystem nach Anspruch 10, dadurch gekennzeichnet, daß die Löschanforderung weiter die Zentraleinheitsnummer der Zentraleinheit (CPU) enthält, die die Löschanforderung erzeugt hat.
    12. Datenverarbeitungssystem nach Anspruch 8 oder 9, dadurch gekennzeichnet, daß die erste Verbindungseinrichtung eine Einrichtung aufweist, um zu verhindern, daß eine Löschanforderung zu der Zentraleinheit (CPU) rückübertragen wird, die die Löschanforderung erzeugt hat.
    13· Datenverarbeitungssystem nach Anspruch 11, dadurch gekennzeichnet, daß die Zentraleinheit (CPU) einen Vergleicher (37) enthält zum Vergleichen ihrer Zentraleinheitsnummer mit der über die erste Verbindungseinrichtung zugeführten Zentraleinheitsnummer und daß die erste Verbindungseinrichtung eine Einrichtung aufweist, um die Übertragung der Löschanforderung entsprechend dem Ausgangssignal des Vergleichers (37) zu verhindern.
    l4. Datenverarbeitungssystem nach Anspruch 11, dadurch gekennzeichnet, daß die Eingangseinrichtung, die Ausgangseinrichtung und die erste Verbindungseinrichtung mehrere kaskadengeschaltete Register (15,16, 21,22,31-34t, 101-106,201-203) enthält, und daß eine Adresse und ihre zugeordnete Zentraleinheitsnummer, die eine Löschanforderung bilden, von einem Register
    030042/0821
    zum nächsten übertragbar .sind.
    15· Datenverarbeitungssystem nach einem der Ansprüche l-l4, dadurch gekennzeichnet, daß die Verbindungseinrichtung voneinander unabhängige erste und zweite Verbindungeeinrichtungen aufweist, und daß die die Löschanforderung abgebende Einrichtung die Löschanforderung einer von erster und zweiter Verbindungseinrichtung zuführt.
    16. Datenverarbeitungssystem nach einem der Ansprüche l-l'l, dadurch gekennzeichnet, daß die Verbindurigseinrichtung voneinander unabhängig eine erste und eine zweite Verbindungseinrichtung aufweist, die entgegengesetzte Signalübertragungsrichtung besitzen, und daß die Einrichtung zur Abgabe einer Löschanforderur.g die Löschanforderung sowohl erster als auch zweiter Verbindimgseinrichtung zuführt.
    030042/0021
DE19803012951 1979-04-06 1980-04-02 Datenverarbeitungssystem Withdrawn DE3012951A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4111879A JPS55134459A (en) 1979-04-06 1979-04-06 Data processing system

Publications (1)

Publication Number Publication Date
DE3012951A1 true DE3012951A1 (de) 1980-10-16

Family

ID=12599535

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19803012951 Withdrawn DE3012951A1 (de) 1979-04-06 1980-04-02 Datenverarbeitungssystem

Country Status (3)

Country Link
US (1) US4385351A (de)
JP (1) JPS55134459A (de)
DE (1) DE3012951A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3105115A1 (de) * 1980-02-14 1982-02-04 Hitachi, Ltd., Tokyo Datenverarbeitungssystem mit bezueglich einer schluesselspeicherung ringfoermig angeschlossenen mulitprozessoren
EP0301354A2 (de) * 1987-07-27 1989-02-01 Computer X, Inc. Cachespeicherübereinstimmungsprotokoll für eine Mehrprozessoranordnung

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56143069A (en) * 1980-04-09 1981-11-07 Nec Corp Bus coupling system
US4814979A (en) * 1981-04-01 1989-03-21 Teradata Corporation Network to transmit prioritized subtask pockets to dedicated processors
US4525777A (en) * 1981-08-03 1985-06-25 Honeywell Information Systems Inc. Split-cycle cache system with SCU controlled cache clearing during cache store access period
DE3376590D1 (en) * 1982-04-28 1988-06-16 Int Computers Ltd Data processing system
US4639856A (en) * 1983-11-04 1987-01-27 International Business Machines Corporation Dual stream processor apparatus
US4747043A (en) * 1984-02-10 1988-05-24 Prime Computer, Inc. Multiprocessor cache coherence system
US4847804A (en) * 1985-02-05 1989-07-11 Digital Equipment Corporation Apparatus and method for data copy consistency in a multi-cache data processing unit
US4757442A (en) * 1985-06-17 1988-07-12 Nec Corporation Re-synchronization system using common memory bus to transfer restart data from non-faulty processor to failed processor
FR2590699B1 (fr) * 1985-11-25 1994-07-01 Nec Corp Systeme assurant la coherence pour les contenus d'une antememoire
EP0247604B1 (de) * 1986-05-30 1994-08-03 Bull HN Information Systems Inc. Gerät und Verfahren zur Übertragung zwischen Prozessoren
AU601784B2 (en) * 1986-12-18 1990-09-20 Honeywell Bull Inc. Data processing system having a bus command generated by one subsystem on behalf of another subsystem
US5182798A (en) * 1988-12-30 1993-01-26 Pitney Bowes Inc. Multiple material processing system start-up
US5185875A (en) * 1989-01-27 1993-02-09 Digital Equipment Corporation Method and apparatus for reducing memory read latency in a shared memory system with multiple processors
GB2260631B (en) * 1991-10-17 1995-06-28 Intel Corp Microprocessor 2X core design
US5418934A (en) * 1993-09-30 1995-05-23 Intel Corporation Synchronizing chained distributed digital chronometers by the use of an echo signal
DE19503206C1 (de) * 1995-02-02 1996-08-14 Becker Gmbh Verfahren zur Bestimmung der Position eines Netzteilnehmers in einem Netzwerk bei einer auftretenden Leitungsstörung
US6052772A (en) * 1998-04-13 2000-04-18 International Business Machines Corporation Memory request protocol method
JP4439685B2 (ja) * 2000-06-12 2010-03-24 パナソニック株式会社 記憶データ修正回路

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3618040A (en) * 1968-09-18 1971-11-02 Hitachi Ltd Memory control apparatus in multiprocessor system
US3631405A (en) * 1969-11-12 1971-12-28 Honeywell Inc Sharing of microprograms between processors
US3699529A (en) * 1971-01-07 1972-10-17 Rca Corp Communication among computers
US3735360A (en) * 1971-08-25 1973-05-22 Ibm High speed buffer operation in a multi-processing system
US3771137A (en) * 1971-09-10 1973-11-06 Ibm Memory control in a multipurpose system utilizing a broadcast
US3806885A (en) * 1972-12-29 1974-04-23 Ibm Polling mechanism for transferring control from one data processing system or subsystem to another
JPS5444161B2 (de) * 1973-09-08 1979-12-24
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system
JPS5440182B2 (de) * 1974-02-26 1979-12-01
US4007450A (en) * 1975-06-30 1977-02-08 International Business Machines Corporation Data sharing computer network
JPS6016664B2 (ja) * 1977-10-28 1985-04-26 豊田工機株式会社 デ−タ転送装置
US4142234A (en) * 1977-11-28 1979-02-27 International Business Machines Corporation Bias filter memory for filtering out unnecessary interrogations of cache directories in a multiprocessor system
US4314331A (en) * 1978-12-11 1982-02-02 Honeywell Information Systems Inc. Cache unit information replacement apparatus
US4264953A (en) * 1979-03-30 1981-04-28 Honeywell Inc. Virtual cache
US4322795A (en) * 1980-01-24 1982-03-30 Honeywell Information Systems Inc. Cache memory utilizing selective clearing and least recently used updating

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3105115A1 (de) * 1980-02-14 1982-02-04 Hitachi, Ltd., Tokyo Datenverarbeitungssystem mit bezueglich einer schluesselspeicherung ringfoermig angeschlossenen mulitprozessoren
EP0301354A2 (de) * 1987-07-27 1989-02-01 Computer X, Inc. Cachespeicherübereinstimmungsprotokoll für eine Mehrprozessoranordnung
EP0301354A3 (de) * 1987-07-27 1990-08-22 Computer X, Inc. Cachespeicherübereinstimmungsprotokoll für eine Mehrprozessoranordnung

Also Published As

Publication number Publication date
JPS55134459A (en) 1980-10-20
US4385351A (en) 1983-05-24

Similar Documents

Publication Publication Date Title
DE3012951A1 (de) Datenverarbeitungssystem
EP0013737B1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE3146356C2 (de) Vorrichtung zur Steuerung der Übertragung von Gerätesteuerinformation in einem Datenendgerät
DE69233655T2 (de) Mikroprozessorarchitektur mit der Möglichkeit zur Unterstützung mehrerer verschiedenartiger Prozessoren
DE3502147C2 (de)
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE2523372C3 (de) Eingabe-/Ausgabe-Anschlußsteuereinrichtung
DE2415900A1 (de) Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen
DE2844357A1 (de) Speichererweiterung
EP0600112A1 (de) Datenverarbeitungsanlage mit virtueller Speicheradressierung und schlüsselgesteuertem Speicherzugriff
DE2226382B2 (de) Datenverarbeitungsanlage mit mehreren Prozessoren und diesen zugeordneten Pufferspeichern
DE4417068A1 (de) Verfahren und Einrichtung zum Betreiben eines Einzel-Prozessor-Computersystems als Mehr-Prozessor-System
DE3621321A1 (de) Cache-speicher- bzw. multiprozessor-system und betriebsverfahren
CH634940A5 (en) Channel-adapter arrangement
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE69724732T2 (de) Atomare Operation in Fernspeicher und Vorrichtung zur Durchführung der Operation
DE2645341A1 (de) Koppleranordnung
DE4135031C2 (de) Eingabe/Ausgabe-Einrichtung und Verfahren zum Betreiben einer Eingabe/Ausgabe-Einrichtung
DE3919802A1 (de) Speicherbaustein mit vektorprozessoren und einem skalarprozessor
DE3105115C2 (de)
DE2759120C2 (de)
DE3247083A1 (de) Mehrprozessorsystem
DE4227784A1 (de) Rechnersystem und verfahren zum beheben eines seitenfehlers
DE10026017B4 (de) Vorabruf-Puffer mit Gültigkeitswerten zur Bereitstellung von abgeglichenen Befehlen

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
8130 Withdrawal