-
Die
vorliegende Erfindung betrifft die Technik für ein System, welches eine
Mehrzahl von Prozessoren umfasst, das heißt ein Speichersystem und ein Speichersteuerverfahren,
welches den Speicherzugriff steuert.
-
Beispielsweise
ist das in der
japanischen
Patentanmeldung mit der Offenlegungs-Nr. 2001-306265 beschriebene
Steuergerät
für eine
Datenträgeranordnung
als System mit einer Mehrzahl von Prozessoren bekannt. Das Steuergerät für eine Datenträgeranordnung
umfasst eine Mehrzahl von Kanaladaptern, die die Ein/Ausgabe-Steuerung
mit einem Host-Computer durchführen,
eine Mehrzahl von Disk-Adaptern, die die Ein- und Ausgabe mit magnetischen
Plattengeräten
steuern, und einen Prozessor mit gemeinsam genutztem Speicher, der
den gemeinsamen Speicher und einen internen Daten-Cache umfasst.
Eine Mehrzahl von als Kanaladapter ausgebildeten Prozessoren sind
auf einer Mehrzahl von Plattenadaptern angebracht. Der Zugriff auf
den gemeinsamen Speicher von den als Kanaladapter ausgebildeten
Prozessoren und den als Plattenadapter ausgebildeten Prozessoren
wird über den
internen Daten-Cache durchgeführt.
Dies hat zur Folge, dass die erforderliche Zeit für den Zugriff
auf den gemeinsamen Speicher reduziert werden kann.
-
Einer
oder mehrere Speicher (nachfolgend als „lokale Speicher" bezeichnet, um diese
Speicher von dem gemeinsamen Speicher zu unterscheiden) können so
verbunden sein, dass Kommunikationen mit den in den Kanaladaptern
und den Plattenadaptern installierten Prozessoren möglich sind.
Die Prozessoren können
mit anderen Prozessoren über
den gemeinsamen Speicher kommunizieren und die Daten, die Gegenstand
der Kommunikation sind, können
aus den lokalen Speichern ausgelesen und in die lokalen Speicher
geschrieben werden. Konkret ausgedrückt kann beispielsweise der
Prozessor Daten für
andere Prozessoren in den gemeinsamen Speicher schreiben, und kann
Daten aus dem gemeinsamen Speicher lesen, die durch andere Prozessoren eingeschrieben
wurden. Diese Daten, die Gegenstand des Schreibens und diejenigen
die ausgelesen werden, können
in die lokalen Speicher geschrieben und aus diesen lokalen Speichern
ausgelesen werden. Der gemeinsame Speicher (das heißt eine
Speichersteuerung, die zwischen dem gemeinsamen Speicher und den
Prozessoren eingefügt
ist) kann eine Antwort zu dem Prozessor zurücksenden, der den Ursprung
des Schreibvorgangs zu einen bestimmten Zeitpunkt darstellt (dies
ist der Zeitpunkt, an dem die Daten geschrieben wurden oder an dem
die Daten von einem anderen Prozessor ausgelesen wurden).
-
Im
Falle der oben erwähnten
Kommunikationen zwischen Prozessoren ist jedoch der Zugriff auf den
gemeinsamen Speicher konzentriert und es ist denkbar, dass die Dauer
der Wartezeit auf eine Antwort seitens des gemeinsamen Speichers
zu einem Engpass in der Verarbeitungsleistung führt. Konkret bedeutet dies
beispielsweise, dass der Pfad zwischen dem gemeinsamen Speicher
und dem Prozessor so lange besetzt ist, bis eine Antwort zum Prozessor
von dem gemeinsamen Speicher zurückgesendet
worden ist, so dass die Verarbeitungsleistung der jeweiligen Prozessoren
möglicherweise
abfällt.
-
Im
Falle der oben erwähnten
Kommunikationen zwischen den Prozessoren muss außerdem der Zugriff zu dem gemeinsamen
Speicher von den jeweiligen Prozessoren mehrere Einrichtungen durchlaufen
(das heißt,
Kommunikations-Anpassungseinrichtungen, Schalter und dergleichen).
Entsprechend scheint es so zu sein, dass wenigstens eine Zeit, die länger ist
als die geforderte Zeit, im Falle des Zugriffs auf die lokalen Speicher
durch die Prozessoren für diesen
Zugriff erforderlich sein würde
(insbesondere für
erforderliche Auslesedaten). Auch unter diesem Gesichtspunkt kann
ein Engpass bei der Verarbeitungsleistung entstehen.
-
US 5,859,975 offenbart ein
gemeinsames Mehrprozessorensystem mit mehreren Knoten oder Verarbeitungseinheiten,
die zum Zwecke der Kommunikation miteinander über einen zweikanaligen Kreuzschienenschalter
verbunden sind. Mehrere solcher Mehrkanal-Kreuzschienenschalter
können
miteinander verbunden sein, um ein großes zusammenhängendes
Verarbeitungssystem zu bilden, wobei Verarbeitungseinheiten eines
Knoten auf Speicher von anderen Knoten auf der gleichen Kreuzschiene oder
von anderen Knoten auf einer anderen Kreuzschiene zugreifen können. Die
Verbindung zwischen Kreuzschienen ist mittels eines kreisförmigen Rings ausgeführt. Im
Betrieb erlaubt das System lange Speicherlatenzzeiten, wobei die
Länge kurzer
(lokaler) Speicherlatenzzeiten sich nicht erhöht. Dies wird dadurch erreicht,
dass der Hauptteil von langen Latenzanforderungen in der lokalen
Speichereinheit gespeichert wird und die Anforderung nur dann gesendet
wird, wenn gerade eine Kommunikationskapazität zur Verfügung steht, um die lange Latenzanforderung
zu bearbeiten.
-
EP 1,443,411 offenbart ein
Verfahren, bei dem in einem Speicher-Steuergerät enthalten sind: Eine Mehrzahl
von Kanalsteuerungen, die eine Schaltungsplatine haben, auf der
ein Dateizugriff-Bearbeitungsbereich ausgebildet ist, der von einem
Informations-Bearbeitungsgerät Aufforderungen
erhält, Daten
in Dateien als Einheiten einzugeben und auszugeben über ein
Netzwerk und einen I/O-Prozessor (Ein/Ausgabe-Prozessor), der zu
einer Speichereinrichtung I/O-Aufforderungen entsprechend den Aufforderungen
für Ein/Ausgabe-Daten
ausgibt; und eine Festplattensteuerung, die die Ein- und Aus gabe von
Daten zu und von einer Speichereinrichtung als Antwort auf die I/O-Aufforderungen
von den I/O-Prozessoren ausführt,
wobei wenigstens einer der Kanalsteuerungen Daten empfängt, die
eine Zuordnung eines logischen Volumens zu der Kanalsteuerung kennzeichnen,
die Daten werden von dem Informationsverarbeitungsgerät ausgesendet,
und die empfangene Zuordnung wird gespeichert.
-
Demgemäß ist es
ein bevorzugtes Ziel der vorliegenden Erfindung, ein Abfallen in
der Verarbeitungsleistung der Mehrzahl von Prozessoren zu verhindern.
-
Andere
bevorzugte Aufgabenstellungen der vorliegenden Erfindung werden
anhand der nachfolgenden Beschreibung deutlich.
-
Das
Speichersystem gemäß einem
ersten Gesichtspunkt der vorliegenden Erfindung umfasst mehrere
Prozessoren, mehrere lokale Speicher, die jeweils für die erwähnten mehreren
Prozessoren vorgesehen sind, mehrere Kanaladapter, die von einem Hostcomputer
empfangene Daten in einem Cache-Speicher speichern, oder mehrere
Plattenadapter, die in dem Cache-Speicher gespeicherte Daten in den
Speichern speichern, einen Speicher zum speichern von zwischen den
mehreren Kanaladaptern oder den mehreren Plattenadaptern übertragenen Steuerinformationen,
einen mit dem Speicher zum speichern von Steuerinformationen verbundenen Steuerung
und einen oder mehrere Zwischengeräte, die mit den mehreren Prozessoren
und der oben erwähnten
Steuerung verbunden sind, so dass Übertragungen möglich sind.
Jeder der oben erwähnten mehreren
lokalen Speicher hat mehrere lokale Speicheradressen und lokale
Speicherbereiche, die jeweils den oben erwähnten mehreren lokalen Speicheradressen
zugeordnet sind. Ein mit dem Prozessor verbundenes erstes Zwischengerät ist so
ausgelegt, dass es an die Steuerung eine erste Zugriffsnachricht überträgt, die
einen von dem Prozessor bezeichneten Wert enthält. Die obige Steuerung ist
so ausgelegt, dass sie die erste Zugriffsnachricht von dem ersten
Zwischengerät
empfängt,
eine lokale Speicheradresse spezifiziert, die dem in der empfangenen
ersten Zugriffsnachricht enthaltenen bezeichneten Wert entspricht,
und überträgt an zwei
oder mehrere weitere Prozessoren eine zweite Zugriffsnachricht,
die die spezifizierte lokale Speicheradresse enthält. Ein
zweites Zwischengerät,
welches mit den zwei beziehungsweise mehreren weiteren Prozessoren
verbunden ist, ist so ausgelegt, dass es die zweite Zugriffsnachricht
empfängt,
wobei das zweite Zwischengerät
oder die obigen zwei oder mehreren anderen Prozessoren so ausgelegt
sind, dass sie Zugriff auf die lokalen Speicherbereiche von zwei
oder mehreren lokalen Speichern haben, die jeweils den obigen zwei
oder mehreren weiteren Prozessoren entsprechen, bei denen es sich
um lokale Speicherbereiche handelt, die den in der zweiten Zugriffsnachricht
enthaltenen lokalen Speicheradressen entsprechen.
-
Hierbei
können
die Zwischengeräte
vom Typ eines Schnittstellengeräts
sein (das heißt,
wie später als
MPA beschrieben), die in einer Gerätegruppe angeordnet sind, wie
CHA, DKA oder dergleichen, wie später beschrieben, oder können Übertragungssteuerschaltungen
sein, wie später
beschrieben.
-
Bei
einem Ausführungsbeispiel
kann die oben erwähnte
Steuerung so ausgelegt sein, dass sie das Auf- und Zusperren der
jeweiligen lokalen Speicheradressen steuert. Konkret bedeutet dies, dass
wenn die lokale Speicheradresse, die dem in der empfangenen ersten
Zugriffsnachricht enthaltenen bezeichneten Wert entspricht zugesperrt
ist, die Steuerung diese lokale Speicheradresse aufsperrt und die
erste Zugriffsnachricht wird nachfolgend verarbeitet, und die Steuerung
sperrt diese lokale Speicheradresse zu einem auf die Übertragung
der zweiten Zugriffsnachricht folgenden Zeitpunkt zu. Außerdem,
wenn die lokale Speicheradresse, die dem in der empfangenen ersten
Zugriffsnachricht bezeichneten Wert entspricht aufgesperrt ist,
kann die Verarbeitung der obigen ersten Zugriffsnachricht durch
die obige Steuerung durchgeführt
werden, nachdem die erwähnte
lokale Speicheradresse zugesperrt ist.
-
Bei
einem Ausführungsbeispiel
können
die oben erwähnten
Prozessoren so ausgelegt sein, dass sie an die oben genannte Steuerung
eine Aufforderung senden, die dem lokalen Speicherbereich entsprechende
lokale Speicheradresse aufzusperren, bevor sie Daten aus diesem
lokalen Speicherbereich des für
jeden dieser Prozessoren selbst vorgesehenen lokalen Speicher auslesen.
Dabei kann die Steuerung so ausgelegt sein, dass sie an die Prozessoren
eine Mitteilung darüber
sendet, ob die lokalen Speicheradressen, die Gegenstand von Anforderungen
seitens der Prozessoren sind, erfolgreich aufgesperrt worden sind.
Wenn die Mitteilung, dass das Aufsperren erfolgreich durchgeführt wurde,
von den genannten Prozessoren empfangen wurde, können diese Prozessoren so eingerichtet
werden, dass diese Daten von den genannten lokalen Speicherbereichen
auslesen.
-
Bei
einem Ausführungsbeispiel
kann die gleiche lokale Speicheradresse von den mehreren Speichern
einem spezifizierten Prozessor zugeordnet sein. in diesem Fall kann
der lokale Speicherbereich, der der lokalen Speicheradresse entspricht,
die dem Prozessor zugeordnet ist, ein Schreibbereich für diesen
Prozessor sein und kann ein Lesebereich für die genannten anderen Prozessoren
sein.
-
Bei
einem Ausführungsbeispiel
kann der obige Prozessor zum Schreiben von Daten in den Schreibbereich
ausgelegt sein, und das genannte erste Zwischengerät kann so
ausgelegt sein, dass es an die Steuerung die erste Zugriffsnachricht überträgt, in der
die dem Schreibbereich entsprechende lokale Speicheradresse als
der bezeichnete Wert angenommen ist.
-
Bei
einem Ausführungsbeispiel
kann das genannte Speichersystem eine Zugriffskarte umfassen, in
der mehrere Gruppen von Zugriffszieldaten verzeichnet sind, die
jeweils mehreren bezeichneten Werten entsprechen. Dabei kann vermerkt
sein, welcher Prozessor als Zugriffsziel für jede der mehreren Gruppen
von Zugriffszieldaten angenommen wird. Die Steuerung kann so ausgelegt
sein, dass sie die Zugriffszieldaten entsprechend dem in der empfangenen
ersten Zugrffsnachricht enthaltenen bezeichneten Wert aus der Zugriffskarte
spezifiziert und die zweite Zugriffsnachricht an zwei oder mehrere
weitere, durch die spezifizierten Zugriffszieldaten ausgedrückte Prozessoren
sendet.
-
Bei
einem Ausführungsbeispiel
können
die zwei oder mehreren weiteren Prozessoren eine Prozessorgruppe
mit spezifizierten Attributen bilden.
-
Bei
einem Ausführungsbeispiel
kann ein gemeinsamer Speicher, auf den mittels der mehreren Prozessoren über die
Steuerung zugegriffen werden kann, mit der genannten Steuerung verbunden
werden. Die Steuerung kann so ausgelegt sein, um Daten, die Gegenstand
des Zugriffs auf die zwei oder mehreren lokalen Speicher sind, in
den gemeinsamen Speicher zu schreiben.
-
In
einem Ausführungsbeispiel
kann die Steuerung so ausgelegt sein, um die zwei oder mehreren weiteren
Prozessoren aufgrund des in der ersten Zugriffsnachricht enthaltenen
bezeichneten Wertes sowie den Prozessor, der den bezeichneten Wert
bezeichnet hat, zu bestimmen.
-
Bei
einem Ausführungsbeispiel
können
zwischen der Steuerung und den jeweiligen Zwischengeräten ein
erster Pfad von der Steuerung zu den jeweiligen Zwischengeräten und
ein zweiter Pfad von den jeweiligen Zwischengeräten zu der Steuerung angeordnet
sein. Die Steuerung kann so angeordnet sein, um die erste Zugriffsnachricht über den
zweiten Pfad zu empfangen und kann die zweite Zugriffsnachricht über den
ersten Pfad übertragen.
-
Gemäß einem
Ausführungsbeispiel
kann die Steuerung so ausgelegt sein, dass sie dann, wenn sie die
erste Zugriffsnachricht empfängt
und die zweite Zugriffsnachricht sendet, eine der folgenden Reaktionen
(A) bis (F) durchführt:
- (A) die Steuerung sendet an den Prozessor eine Antwort
zurück,
bevor sie von den zwei oder mehreren weiteren Prozessoren eine Antwort
auf die zweite Zugriffsnachricht empfängt;
- (B) die Steuerung sendet an den Prozessor eine Antwort zurück, so oft
sie von jedem der zwei oder mehreren weiteren Prozessoren eine Antwort
auf die zweite Zugriffsnachricht empfängt;
- (C) die Steuerung sendet an den Prozessor eine Antwort zurück, nachdem
sie von jedem der zwei oder mehreren Prozessoren eine Antwort auf
die zweite Zugriffsnachricht empfangen hat;
- (D) die Steuerung sendet eine Antwort an den Prozessor, so oft
eine Antwort von den zwei oder mehreren weiteren Prozessoren ausgegeben wird,
in den Fällen,
wo Daten in die zwei oder mehreren lokalen Speicher geschrieben
werden, entsprechend der von jedem der zwei oder mehreren weiteren
Prozessoren empfangenen zweiten Zugriffsnachricht;
- (E) die Steuerung sendet eine Antwort an den Prozessor zurück, nach
dem Empfang einer Antwort von den genannten zwei oder mehreren weiteren
Prozessoren, in Fällen,
wo Daten in die zwei oder mehrere lokalen Speicher gemäß der zweiten
Zugriffsnachricht von jedem der zwei oder mehreren weiteren Prozessoren
eingeschrieben worden sind; und
- (F) die Steuerung führt
den Empfang der ersten Zugriffsnachricht und die Aussendung der
zweiten Zugriffsnachricht mehrmals aus und sendet an den Prozessor
eine Antwort zurück,
nachdem sie von den zwei oder mehreren weiteren Prozessoren auf
die mehreren zweiten Zugriffsnachrichten mehrere Antworten empfangen
hat.
-
Bei
einem Ausführungsbeispiel
kann die Steuerung so ausgebildet sein, dass sie eine Reaktion unter
den Reaktionen (A) bis (F) aufgrund mindestens eines der folgenden
Merkmale auswählt:
Zuverlässigkeit,
mit der ein Zugriff akkurat erfolgt, Belegungsrate des Pfades zwischen
der Steuerung und den Zwischengeräten, und der Dauer der für die Antwort
an den Prozessor nachsenden der ersten Zugriffsnachricht benötigten Zeit.
Und sie kann die gewählte
Reaktion ausführen.
-
Bei
einer Ausführung
können
in jedem Prozessor mehrere Speichergeräte einschließlich ein
für den
Prozessor selbst vorgesehener lokaler Speicher und weitere lokale
Speicher für
weitere Prozessoren angeordnet sein. Jeder Prozessor kann einen
Prozessorkern umfassen, der den bezeichneten Wert ausgibt, und kann
eine Zugriffssteuerschaltung haben, die so ausgelegt ist, dass sie
aus mehreren Speichergeräten,
zu denen ein für
den Prozessor vorgesehener lokaler Speicher sowie lokale Speicher für weitere
Prozessoren gehören,
aufgrund des von dem Prozessorkern ausgegebenen Wertes zwei oder mehrere
Speichergeräte
bestimmt, und wobei jeder Prozessor zum Zugriff auf die zwei oder
mehreren bestimmten Speichergeräte
ausgelegt sein kann.
-
Die
Merkmale eines oder mehrerer der obigen Ausführungsbeispiele können wunschgemäß oder in
geeigneter Weise kombiniert werden.
-
Der
Prozessor gemäß einem
zweiten Aspekt der vorliegenden Erfindung kann einen Prozessor enthalten,
der in einem Speichersystem angeordnet sein kann, welches einen
Prozessorkern, der einen Wert ausgibt, und eine Zugriffssteuerschaltung
umfasst, wobei: Der Prozessorkern zur Ausgabe eines Wertes ausgelegt
ist; die Zugriffssteuerschaltung so ausgelegt ist, dass sie aufgrund
des von dem Prozessorkern ausgegebenen Wertes aus mehreren Speichergeräten, zu
denen ein für
den Prozessor vorgesehener lokaler Speicher sowie lokale Speicher
für weitere
Prozessoren gehören,
zwei oder mehrere Speichergeräte
bestimmt; und der Prozessor zum Zugriff auf die zwei oder mehreren
bestimmten Speichergeräte
ausgelegt ist.
-
Die
Speichersteuerung gemäß einem
dritten Aspekt der vorliegenden Erfindung ist so eingerichtet, dass
in dem Falle, in dem jeder einer Mehrzahl von lokalen Speichern,
die jeweils für
eine Mehrzahl von Prozessoren vorbereitet sind, mehrere lokale Speicheradressen
und lokale Speicherbereiche hat, die jeweils den mehreren lokalen
Speicheradressen zugeordnet sind, wobei erste Zugriffsnachrichten
von mit den Prozessoren verbundenen ersten Zwischengeräten an eine
Steuerung gesendet werden, die einen von dem Prozessor bezeichneten
Wert enthalten, die lokalen Speicheradressen, die den in den ersten
Zugriffsnachrichten enthaltenen bezeichneten Werten entsprechen,
spezifiziert werden, zweite Zugriffsnachrichten, die die spezifizierten
lokalen Speicheradressen enthalten, von der Steuerung an zwei oder
mehrere Prozessoren gesendet werden, und wobei Zugriff genommen
wird auf lokale Speicherbereiche von zwei oder mehreren den zwei
oder mehreren Prozessoren jeweils entsprechenden lokalen Speichern,
welches die lokalen Speicherbereiche sind, die den in der zweiten
Zugriffsnachricht enthaltenen lokalen Speicheradressen entsprechen.
-
Außerdem kann
wenigstens eines der erwähnten
Zwischengeräte
und Steuerungen oder die Funktion, welche den Prozess dieser Geräte durchführt, mit
dem Ausdruck „Mittel" bezeichnet werden. Außerdem könnten solche „Mittel" unter der Verwendung
von Hardware, Computerprogrammen oder einer Kombination von beidem
realisiert werden.
-
In
den Zeichnungen zeigt:
-
1 zeigt
eine Übersicht
eines Beispiels des Hardware-Aufbaus eines Systems, welches ein erstes
Ausführungsbeispiel
der vorliegenden Erfindung bildet;
-
2A zeigt
eine Übersicht
eines Verarbeitungstyps, der im ersten Ausführungsbeispiel der vorliegenden
Erfindung durchgeführt
wird;
-
2B zeigt
ein Beispiel des Aufbaus der LM-Karte von LM 7 und LM 17;
-
3A zeigt
ein Aufbaubeispiel der Nachrichten, die jeweils zwischen CHA 3 beziehungsweise
DKA 13 und dem Schalt-LSI 37 ausgetauscht werden;
-
3B zeigt
ein Hardware-Aufbaubeispiel des Schalt-LSI 37;
-
4 zeigt
ein Aufbaubeispiel der Adresskarte 55;
-
5 zeigt
ein Flussdiagramm der Verarbeitung, die durch den Steuerteil 53 in
den Fällen
durchgeführt
wird, bei denen entschieden wurde, dass die empfangene Schreibnachricht
eine Mehrfach-LM-Schreibnachricht ist;
-
6A ist
ein Diagramm, zur Veranschaulichung eines Beispiels der LM-Adress-Exclusivverarbeitung;
-
6B ist
ein erläuterndes
Diagramm eines Beispiels der Reaktionen, die durch den Schalt-LSI 37 mit
Bezug auf die gesendete Zieladresse MP durchgeführt werden;
-
7A ist
ein Diagramm zur Darstellung, dass die Schreibziele bei der Multi-LM-Schreibverarbeitung
als Gruppeneinheiten ausgebildet sein können;
-
7B ist
ein Diagramm zur Darstellung, wie die Daten, die Gegenstand des
Multi-LM-Schreibens
sind, auch in den Speicher SM 39 geschrieben werden;
-
7C zeigt
ein Beispiel der Adresskarte, die für jede Übertragungsquelle bereit steht;
-
8 zeigt
den Pfadaufbau zwischen den CHA 103 (oder den DKA 113)
und den Verbindungsteil 133 in einem zweiten Beispiel einer
ersten Ausführung
der vorliegenden Erfindung;
-
9 zeigt
ein Beispiel des Aufbaus des RX-Teils 181 und des TX-Teils 183 des
Verbindungsteils 133;
-
10 zeigt
ein Beispiel des Aufbaus des Schalt-LSI 37 in einem zweiten
Beispiel der ersten Ausführung
der vorliegenden Erfindung;
-
11A ist ein Diagramm zur Veranschaulichung eines
ersten Antwortsystems;
-
11B ist ein Diagramm zur Veranschaulichung eines
zweiten Antwortsystems;
-
11C ist ein Diagramm zur Veranschaulichung eines
dritten Antwortsystems;
-
11D ist ein Diagramm zur Veranschaulichung eines
vierten Antwortsystems;
-
12 ist
Diagramm, welches zeigt, dass eine Mehrzahl von Antwortsystemen
ausgewählt werden
kann;
-
13A zeigt ein Beispiel des Aufbaus der Kanaladapter
CHA 403 (oder von den DKA 413) in einem dritten
Beispiel der ersten Ausführung
der vorliegenden Erfindung;
-
13B zeigt ein Beispiel des Aufbaus einer Zugriffszielkarte 415 für bezeichnete
Werte;
-
14A ist ein Diagramm zur Erläuterung des Multi-LM-Lesens,
welches beim vierten Beispiel der ersten Ausführung der vorliegenden Erfindung durchgeführt wird;
-
14B zeigt ein Beispiel des Aufbaus der Auslesekarte 592;
-
15 zeigt
ein Beispiel des Antwortsystems, welches vom sendenden Zielprozessor
MP verwendet werden kann; und
-
16 zeigt
ein Beispiel des Aufbaus eines anderen Speichersystems 200.
-
Mehrere
Beispiele der vorliegenden Erfindung werden nachfolgend unter Bezugnahme
auf die zugehörigen
Zeichnungsfiguren beschrieben.
-
Beispiel 1
-
1 zeigt
ein Beispiel des Hardware-Aufbaus eines Systems, welches ein erstes
Ausführungsbeispiel
der vorliegenden Erfindung bildet. In der nachfolgenden Beschreibung
werden Referenznummern, die aus Stammnummern (z. B. 3) und Verzweigungssymbole
(z. B. A) zur Unterscheidung von Elementen des gleichen Typs (z.
B. CHA) verwendet; jedoch in Fällen,
in denen Elemente des gleichen Typs nicht unterschieden werden,
können
dies Beispiele sein, bei denen nur die Stammnummern verwendet werden.
-
Eine
oder mehrere Host-Einrichtungen 31 und Speichersysteme 20 sind
mit einem Kommunikationsnetzwerk (z. B. LAN (local area network)
oder SAN (storage area network)) 32 verbunden.
-
Die
jeweiligen Host-Einrichtungen 31 sind Computervorrichtungen
mit wenigstens einem Hardware-Betriebsmittel, welches ausgewählt wird
von einem Set bestehend aus (z. B.) CPUs, (zentralen Verarbeitungseinheiten, „s" bedeutet Mehrzahl),
Speichern, Eingabevorrichtungen (z. B. Mäuse oder Tastaturen) und Ausgabevorrichtungen
(z. B. Displayvorrichtungen). Beispielsweise können die jeweiligen Host-Einrichtungen 31 Personalcomputer,
Workstations, Server-Vorrichtungen oder dergleichen sein. Die Host-Einrichtungen 31 können Schreibaufforderungen,
Daten, die Gegenstand des Schreibvorgangs sind, Leseaufforderungen
und dergleichen zu den Speichersystemen 20 übermitteln.
In diesen Fällen
kann wenigstens einer der Mehrzahl von CHAs 3A, 3B ...,
die später
beschrieben werden, ein Zentralrechner sein. Beispielsweise können die
Kommunikationen zwischen einer Host-Einrichtung 31, der wie
ein Zentralrechner ausgebildet ist, und einem CHA 3 vom
Typ eines Zentralrechners gemäß einem Kommunikationsprotokoll
durchgeführt
werden, wie beispielsweise FICON (Fiber Connection: eingetragene
Marke) ESCON (Enterprise System Connection: eingetragene Marke),
ACONARC (Advanced Connection Architecture: eingetragene Marke),
FIBARC (Fiber Connection Architecture: eingetragene Marke) oder
dergleichen.
-
Jedes
Speichersystem 20 umfasst eine Mehrzahl von Kanaladaptern
(nachfolgend als CHAs bezeichnet, wobei „s" Mehrzahl bedeutet) 3A, 3B ... (es
kann auch ein einzelner Kanaladapter verwendet werden), mehrere
Speicher 21, 21, ... (es kann auch ein einzelner
Speicher verwendet werden), mehrere Plattenadapter (nachfolgend
als DKAs bezeichnet) 13A, 13B ... (es kann auch
ein einzelner Plattenadapter verwendet werden), ein Cache-Speicher
(nachfolgend als CM bezeichnet) 41, ein gemeinsamer Speicher 35 und
ein Verbindungsteil 33.
-
Da
die Mehrzahl der CHAs 3A, 3B ... den gleichen
Aufbau und die gleiche Funktion haben können, wird der CHA 3A als
ein typisches Beispiel der Mehrzahl von CHAs 3A, 3B ...
beschrieben. Der CHA 3A ist eine Schnittstellenvorrichtung
(z. B. eine Leiterplatte), der die Kommunikation mit der Host-Einrichtung 31 steuert.
Der CHA 3A kann Ausleseanfragen von der Host-Einrichtung 31 empfangen,
Mitteilungen für
die DKAs 13 erstellen und übertragen (z. B. Mitteilungen,
die anzeigen, welche Auslesedaten von welchem Speicher 21 auszulesen
sind, und wo diese Daten in dem CM 41 oder dergleichen
gespeichert werden sollen), und liest die auszulesenden Daten von
dem CM 41 aus und überträgt diese
Daten zu der Host-Einrichtung auf der Grundlage der Nachrichten
von den DKAs 13 auf der Basis der Leseanfragen von der
Host-Einrichtung 31 (z. B. Mitteilungen, dass das Auslesen
für CM 41 abgeschlossen ist).
Ein Beispiel des Hardwareaufbaus des CHA 3A wird später beschrieben.
-
Die
Speicher 21 können
irgendeine Art von Speichervorrichtung sein; z. B. Hard-Disks, optische Disks,
magnetische Disks oder Halbleiterspeicher können verwendet werden.
-
Da
die Mehrzahl der DKAs 13A, 13B, ... den selben
Aufbau und die selbe Funktion haben können, wird ein einzelner DKA 13A als
typisches Beispiel für die
Mehrzahl der DKAs 13A, 13B, ... beschrieben. Der
DKA 13A ist eine Schnittstellenvorrichtung (z. B. eine
Leiterplatte) der die Kommunikation mit einem oder mehreren Speichern 21, 21 ...
steuert, die selbst mit diesem DKA 13A kommunizieren können. Auf
der Basis von Meldungen von den CHAs 3, kann der DKA 13A Schreibdaten
von dem CM 41 auslesen und diese Daten in die Speicher 21 schreiben,
und auf der Basis von Nachrichten von dem CHA 3 kann dieser
DKA 13A Auslesedaten von den Speichern 21 auslesen
und diese Daten in den CM 41 schreiben. Ein Beispiel des
Hardwareaufbaus des DKA 13A wird später beschrieben.
-
Der
CM 41 ist ein Speicher, der für das temporäre Speichern
von Schreibdaten und Auslesedaten verwendet wird, die zwischen der
Host-Einrichtung 31 und den Speichern 21 ausgetauscht
werden.
-
Die
Baugruppe des gemeinsamen Speichers 35 (z. B. eine Leiterplatte)
umfasst einen gemeinsamen Speicher (nachfolgend als SM bezeichnet) 39 und
einen Schalt-LSI (large-scale integrated circuit = hochintegrierter
Schaltkreis) 37. Der SM 39 kann verschiedene Arten
von Informationen speichern (z. B. Steuerinformation, die zur Steuerung
des Betriebs der Speichersysteme 20 verwendet wird), und
er ist ein Speicher, auf den mittels Mikroprozessoren (nachfolgend
als MP bezeichnet) 5 der jeweiligen CHAs 3 und
der MPs 15 der jeweiligen DKAs 13 zugegriffen
werden kann. Der Schalt-LSI 37 kann einen Zugriff auf den
SM 39 durch die jeweiligen MPs 5 und 15 zulassen
und kann das Schreiben von Mitteilungen von den jeweiligen MPs 5 und 15 in
die lokalen Speicher (nachfolgend als LM bezeichnet) 7 und 17 von
anderen MPs 5 und 15 sowie das Schreiben dieser
Daten in den SM 39 steuern.
-
Das
Verbindungsteil 33 kann als Schalter (z. B. als ein Kreuzschienenschalter,
der den Datentransfer durch einen Schaltvorgang durchführt) ausgebildet
sein, oder kann als Bus ausgebildet sein, der die jeweiligen CHAs 3,
CM 41, beziehungsweise die DKAs 13 und den Schalt-LSI 37 miteinander
verbindet.
-
Das
obige ist eine Beschreibung der Kontur des Hardwareaufbaus des Systems
des vorliegenden Beispiels gewesen. Nachfolgend werden die Konturen
von Hardwareaufbaubeispielen der jeweiligen CHAs 3 und
DKAs 13 beschrieben. Außerdem werden in der nachfolgenden
Beschreibung Informationen, die zwischen den CHAs 3 oder
DKAs 13 und anderer CHAs 3 und DKAs 13 entweder
mit oder ohne einer Zwischenschaltung des Schalt-LSI 37 ausgetauscht
werden, als „Meldungen" bezeichnet. Beispielsweise
können
solche Meldungen sowohl Daten als auch Befehle oder beides enthalten.
-
Der
CHA 3A wird als ein typisches Beispiel für die jeweiligen
CHAs 3 beschrieben. Beispielsweise umfasst der CHA 3A einen
Anschluss 2A (Anschluss in der Zeichnung = Port), der mit
dem Verbindungsnetzwerk 32 verbunden ist, einen Mikroprozessoradapter
(nachfolgend als MPA bezeichnet) 4A, der mit dem Verbindungsteil 33 verbunden
ist, einen MP 5A, einen LM 7A, auf den vom MP 5A zugegriffen werden
kann, und eine Transfer-Steuerungsschaltung 6A, die mit
dem Anschluss 2A an dem MP 5A, dem LM 7A und
dem MPA 4A verbunden ist (in 1 ist das
Zweigstellensymbol „B" einzelnen Elementen des
CHA 3B angefügt,
anstelle des Zweigstellensymbols „A"). Bei diesem Beispiel ist ein MP 5 auf
einem CHA 3 angebracht; jedoch können auch eine Mehrzahl von
MPs 5 ebenso angebracht sein (dies trifft auch auf die
DKAs 13 zu, wie später
beschrieben). Weiterhin ist bei diesem Beispiel ein LM 7 für einen MP 5 vorgesehen;
jedoch kann eine Mehrzahl von LMs 7 ebenfalls vorgesehen
sein (dies trifft auch für die
MPs 15, wie später
beschrieben, zu). Die Transfer-Steuerungsschaltung 6A kann
den gemeinsamen Datentransfer zwischen dem Anschluss 2A,
MP 5A, LM 7A und MPA 4A. Konkret ausgedrückt kann
beispielsweise die Transfer-Steuerungsschaltung 6A Daten
ausgeben, die eine Eingabe über
den Anschluss 2A zu wenigstens einem Teil darstellen, welches
von einem aus MP 5A, LM 7A und MPA 4A besteht,
darstellen, und kann Daten ausgeben, an die eine Eingabe über den
MPA 4A zu wenigstens einem Teil darstellen, welches aus
einem aus MP 5A und LM 7A bestehenden Satz ausgewählt ist.
Der MP 5A kann Daten in den LM 7A schreiben oder
Daten von dem LM 7A über
die Transfer-Steuerungsschaltung 6A auslesen.
-
Der
DKA 13A wird als typisches Beispiel der jeweiligen DKAs 13 beschrieben.
Der DKA 13A kann mit dem im Wesentlichen gleichen Aufbau
wie der CHA 3A aufgebaut sein. Insbesondere kann beispielsweise
der DKA 13A einen Anschluss 12A, einen MPA 14A,
einen MP 15A, einen LM 17A und eine Transfer-Steuerungsschaltung 16A umfassen
(in 1 ist das Zweigstellensymbol „B" zu den einzelnen Elementen des DKA 13B anstelle
des Zweigstellensymbols „A" angefügt). Beispielsweise
ist ein Speicher 21 mit dem Anschluss 12A über ein
Glasfaserkanalkabel verbunden.
-
2A zeigt
den Umriss eine Verarbeitungsart, die beim ersten Beispiel der vorliegenden Erfindung
durchgeführt
wird. Weiterhin können
die Schreibmeldungen (Schreib-Messages),
die später beschrieben
werden, von wenigstens einem Teil übertragen und empfangen werden,
welches aus einem Satz ausgewählt
ist, der aus dem MP, dem Transfersteuerungsteil und der MPA besteht;
in der folgenden Beschreibung wird jedoch angenommen, dass diese
Schreibmeldungen übertragen
und empfangen werden von dem MP.
-
Bei
diesem ersten Beispiel können
die jeweiligen MPs 5 und 15 Daten in eine Mehrzahl
von LMs 7 und 17 entsprechend einer Mehrzahl anderer
MPs 5 und 15 schreiben, und zwar anstelle oder
zusätzlich zu
dem Einschreiben der Daten in ihre eigenen LMs 7 und 17 (z.
B. im Wesentlichen gleichzeitig mit diesem Schreibvorgang)(dies
kann nachfolgend als „Multi-LM-Schreiben" bezeichnet werden).
-
Insbesondere
in Fällen,
wo der MP 5A des CHA 3A Daten in den LM 7A schreibt,
beispielsweise, kann wenigstens ein Teil von den MP 5A,
MPA 4A und der Transfer-Steuerungsschaltung 6A eine
Meldung erstellen, die diese Daten enthält (Meldung die einen Befehl
zur Ausführung
von Multi-LM-Schreiben enthält;
nachfolgend als Multi-LM-Schreibmeldung bezeichnet),
und kann diese Meldung zu dem Schalt-LSI 37 übertragen.
Hier können
sich die „Fälle, wo
Schreiben ausgeführt
wird" entweder auf
eine Zeit vor dem Datenschreibvorgang (z. B. unmittelbar vor dem
Schreiben), eine Zeit nach dem Datenschreibvorgang oder eine Zeit
beziehen, die auf den Datenschreibvorgang und den Empfang einer
Antwort folgt.
-
Der
Schalt-LSI 37 kann Daten, die in der Multi-LM-Schreibmeldung
enthalten sind, in eine Mehrzahl anderer LMs 7B und 17A entsprechend
dieser Multi-LM-Schreibmeldung schreiben. Konkret ausgedrückt kann
der Schalt-LSI 37 beispielsweise eine Meldung erzeugen,
die diese Daten enthält
(eine Meldung mit einem Befehl zum Schreiben dieser Daten; nachfolgend
als normale Schreibmeldung bezeichnet), und kann diese normale so
erzeugte Schreibmeldung jeweils zu dem CHA 3B und DKA 13A übermitteln,
die jeweils mit dem LM 7B und LM 17A ausgerüstet sind
(Multi-LM-Schreibvorgang betrifft Fälle, in denen die Zahl der
LMs als Schreibziele eins oder mehr ist, während der normale LM-Schreibvorgang
Fälle betrifft,
in denen die Zahl der als Schreibziele dienenden LMs = 1 ist). In
dem CHA 3B) oder DKA 13A), der die normale Schreibmeldung empfängt, kann
wenigstens einer von den Teilen MP 5B (15A), MPA 4B (14A)
und Transfer-Steuerungsschaltung 6B (16B) Daten,
die in der empfangenen normalen Schreibmeldung enthalten sind, in
den LM 7B (17A) schreiben. Der MP 5B (15A)
kann Daten durch das Auslesen von Daten von seinem eigenen LM 7B (17A)
erhalten.
-
Als
eine Vorrichtung zur Realisierung des obigen Ablaufs ist es denkbar,
dass die jeweiligen LMs 7 und 17 der jeweiligen
MPs 5 und 15 wie unten beschrieben unterteilt
sein können,
und das Informationen, die die Ergebnisse dieser Unterteilung ausdrücken (nachfolgend
als „LM-Karte" bezeichnet), können in
Speichermitteln eingesetzt sein (z. B. Internregister in den MPs 5 und 15)
in dem CHA 3 oder DKA 13, die mit dem LM 7 oder 17 ausgestattet
sind.
-
2B zeigt
ein Beispiel des Aufbaus der LM-Karte von den LMs 7 und 17.
In 2B sind die LM-Karten 71A, 71B und 73A für die LMs 7A, 7B und 17A als
typische Beispiele beschrieben, um eine Entsprechung zu 2A zu
erhalten.
-
Die
LM-Karten 71A, 71B und 73A zeigen jeweils
die Bereichsergebnisse der LMs 7A, 7B und 17A.
-
Entsprechend
dieser Bereichsergebnisse werden die gleichen Adressen der LMs 7A, 7B und 17A den
bezeichneten MP 5 oder 15 zugeordnet. Konkret
ausgedrückt
werden beispielsweise die jeweiligen Speicherbereiche entsprechend
der Adresse „0" der LMs 7A, 7B und 17A als
Schreibbereiche für
den MP 5A zugewiesen, die jeweiligen Speicherbereiche entsprechend
der Adresse „1" werden als Schreibbereiche
für den
MP 5B zugewiesen, und die jeweiligen Speicherbereiche entsprechend
der Adresse „2" werden als Schreibbereiche
für den
MP 15A zugewiesen.
-
Somit
sind die Speicherbereiche der jeweiligen Adressen (z. B. „0") Schreibbereiche
für die
MPs 5 und 15 (z. B. 5A), denen die Speicherbereiche
dieser Adressen in irgendeinem der LMs 7A, 7B und 17A zugewiesen
sind.
-
Jedoch
sind für
die anderen MPs 5 und 15 (z. B. 5B und 15A)
diese Schreibbereiche Auslesebereiche. Dementsprechend können die
anderen MPs 5 und 15 (z. B. 5B und 15A)
Daten aus den Speicherbereichen der Adressen (z. B. „0") auslesen, die den MPs 5 und 15 (z.
B. 5A) zugewiesen sind, und können daher Daten von den MPs 5 und 15 (z.
B. 5A) erhalten.
-
Derartige
LM-Karten können
an Stellen eingesetzt sein, die eine Bezugnahme durch die entsprechenden
Prozessoren ermöglichen
(z. B. Internregister in den Prozessoren). Außerdem kann an diesen Stellen
auch zusätzlich
zu der obigen Information eine Information registriert werden, die
anzeigt, welche LM-Daten von welchen MP-Daten ein geschrieben werden,
wenn Daten an der fraglichen Adresse eingeschrieben sind. Als Ergebnis
können
die MPs 5 und 15 Schreibbereiche entsprechend
den Sendezielen MPs 5 und 15 auswählen aus
der Mehrzahl der Schreibbereiche ihrer eigenen LMs 7 und 17 entsprechend
den anderen MPs 5 und 15, zu denen Daten gesendet
werden, und können
Daten in die ausgewählten
Schreibbereiche schreiben sowie Schreibmeldungen zu dem Schalt-LSI 37 übertragen,
die die Adressen der ausgewählten
Schreibbereiche enthalten.
-
Somit
sind für
alle die LMs 5 und 15 Speicherbereiche der jeweils
gleichen Adressen (diese können
in ihrer Bedeutung gleich sein, sogar wenn die Werte unterschiedlich
sind infolge eines Offsets oder dergleichen) als Speicherbereiche
eines MP 5 oder 15 zugewiesen. Für die jeweiligen
MPs 5 und 15 sind die Speicherbereiche entsprechend
den Adressen, die anders sind als die zugewiesenen Adressen zu diesen
MPs, selbst in ihrer eigenen LMs 5 und 15 als
Auslesebereiche zugewiesen. Damit kann der Multi-LM-Schreibvorgang, wie
er im Beispiel in 2A gezeigt ist, ausgeführt werden.
-
Speziell
in dem Fallbeispiel, wo der MP 5A Daten in den Speicherbereich,
der der Adresse „0" des LM 7A entspricht,
schreibt, kann wenigstens einer der Teile der MP 5A, MPA 4A und
der Transfer-Steuerungsschaltung 6A eine Multi-LM-Schreibmeldung
erstellen, die diese Daten und die Adresse „0" enthält, und kann diese Meldung
zu dem Schalt-LSI 37 übertragen.
-
Der
Schalt-LSI 37 kann eine normale Schreibmeldung erstellen,
die die Daten und Adresse „0" enthält und in
der Multi-LM-Schreibmeldung enthalten ist, und kann diese normale
Schreibmeldung zu dem CHA 3B und DKA 13A übertragen.
-
In
den CHA 3B (oder DKA 13A), welcher diese normale
Schreibmeldung empfängt,
kann wenigstens einer der Teile von dem MP 5B (15A),
MPA 4B (14A) und der Transfer-Steuerungsschaltung 6B (16B)
die Daten, welche in der empfangenen normalen Schreibmeldung enthalten
sind, in den Speicherbereich (Speicherbereich des LM 7B)17A))der Adresse „0" schreiben, die in
der normalen Schreibmeldung enthalten ist. Durch Auslesen der Daten
aus dem Speicherbereich der Adresse „0" der eigenen LM 7B (17A)
(z. B. durch Abfrage des Auslesebereichs der Adresse „0") kann der MP 5B (15A)
Daten vom MP 5A erhalten.
-
Beispielsweise
können
die jeweiligen CHAs 3A, die jeweiligen DKAs 13 und
der Schalt-LSI 37 Meldungen untereinander austauschen,
die einen Aufbau haben, wie er beispielsweise in 3A gezeigt
ist.
-
3A zeigt
ein Beispiel des Aufbaus der Meldungen, die jeweils zwischen CHAs 3,
DKAs 13 und dem Schalt-LSI 37 ausgetauscht werden.
-
Die
Bezugszahl 281 kennzeichnet eine Schreibmeldung, die in
Fällen
verwendet wird, bei denen ein Schreibvorgang auszuführen ist.
Die Meldung 281 hat ein Adressfeld 281A, in welchem
ein Information angezeigt wird, die die festgelegte Adresse anzeigt,
und hat ein Befehlsfeld 281B, in welchem ein Befehl festgelegt
ist, sowie ein Datenfeld 281C, in welchem die Daten festgelegt
sind, die Gegenstand des Schreibvorganges sind, und hat ein Code-Feld 281D,
in welchem ein Fehlerkorrekturcode, Fehlerprüfcode oder dergleichen festgelegt
ist. Wenigstens eines der Felder 281A bis 281D kann
entweder eine feste Länge
(z. B. 8 Bits) oder eine variable Länge haben (das gleiche trifft
für die
verschiedenen anderen Arten der später beschriebenen Felder zu).
Weiterhin können
Befehle, die in dem Feld 281B festgelegt sind, Befehle
enthalten, die die Art des Schreibens zusätzlich zu der Tatsache anzeigen,
dass der Befehl ein Schreibbefehl ist. Die Schreibarten enthalten
beispielsweise das Multi-LM-Schreiben (bei dem die Anzahl von LMs
Schreibzielen 1 ist oder mehr), normales Schreiben (bei dem die
Anzahl der LMs Schreibziele = 1 ist), SM-Schreiben und dergleichen. Dementsprechend
ist beispielsweise eine Meldung 281, die einen Befehl enthält, die
das Multi-LM-Schreiben kennzeichnet, die oben erwähnte Multi-LM-Schreibmeldung,
während
eine Meldung 281, die einen Befehl enthält, der das normale Schreiben
kennzeichnet, die oben erwähnte
normale Schreibmeldung darstellt.
-
Die
Bezugszahl 283 kennzeichnet eine Schreibantwortmeldung
auf die Schreibmeldung 281. Die Meldung 283 hat
ein Statusfeld 283A in welchem Statusinformation festgelegt
ist, die den Status angibt. (z. B. Schreiberfolg oder Schreibfehler)
und hat ein Code-Feld 283B, in welchem ein Fehlerkorrekturcode
oder dergleichen festgelegt ist.
-
Der
Schalt-LSI 37 kann eine Schreibmeldung 281 von
jeweils den CHAs 3 und DKAs 13 empfangen und kann
Schreibantwortmeldungen 283 als Antworten auf diese Schreibmeldung 281 zu
den CHAs 3 oder DKAs 13 übermitteln, welche die Übermittlungsquellen
für diese
Schreibmeldungen 281 sind.
-
3B zeigt
den Umriss eines Beispiels des Hardwareaufbaus des Schalt-LSI 37.
-
Der
Schalt-LSI 37 kann ein Übertragungsteil 51,
eine Schnittstelle für
den SM 39 (nachfolgend als SM I/F bezeichnet) 54,
einen Adresskartenspeicherbereich (z. B. Register) 52,
der eine Adresskarte 55 speichert, einen Adresszustandsspeicherbereich 57, eine
Warteschlange 59 und ein Steuerteil 53 umfassen.
-
Das Übermittlungsteil 51 ist
beispielsweise eine Schnittstelle für das Verbindungsteil 33.
Das Übermittlungsteil 51 kann
beispielsweise Meldungen 281 oder 283 von den
jeweiligen CHAs 3 und DKAs 13 über das Verbindungsteil 33 empfangen
und kann diese empfangenen Meldungen 281 oder 283 zum Steuerteil 53 übertragen.
Außerdem
kann das Übertragungsteil 51 beispielsweise
Meldungen 281 oder 283 von dem Steuerteil 53 empfangen
und kann die empfangenen Meldungen 281 oder 283 jeweils
zu den CHAs 3 und DKAs 13 über das Verbindungsteil 33 übertragen.
-
Die
Adresskarte 55 wird mit Bezugnahme auf 4 beschrieben.
Dabei werden in diese LMs Daten geschrieben, wenn die bestimmten
Adressen der LMs 7 und 17 in der Adresskarte 55 aufgezeichnet sind.
Beispielsweise ist die gesendete Zielinformation, die die Sendeziele
der Daten anzeigt, den jeweiligen Adressen in der Adresskarte 55 zugeordnet. Beispielsweise
enthält
die gesendete Zielinformation eine Mehrzahl von Ja- oder Nein-Übertragungsflags (Flags
kennzeichnen, ob Daten zu senden sind oder nicht) die jeweils der
Mehrzahl von MPs 5 und 15 entspricht. Außerdem wird
Information ebenfalls in der Adresskarte 55 für jeden
MP 5 und 15 aufgezeichnet, die den CHA 3 oder
DKA 13 kennzeichnet, auf dem der MP angebracht ist. Das
Multi-LM-Schreiben kann unter Verwendung solch einer Adresskarte 55 und der
obigen LM-Karten 71A bis 71C, die für jeden CHA 3 und
DKA 13 (s. 2B) festgelegt sind, durchgeführt werden
(der konkrete Verfahrensablauf wird später beschrieben).
-
Es
wird nochmals auf 3B Bezug genommen. Der Adresszustandsspeicherbereich 57 kann Information
Speichern, die anzeigt, welche Adressen der LMs 7 und 17 sich
in welchen Zuständen
befinden. Konkret ausgedrückt
kann der Adresszustandsspeicherbereich 57 beispielsweise
Information speichern, die anzeigt, welche der Adressen der LMs 7 und 17 (nachfolgend
als „LM-Adressen" in manchen Fällen bezeichnet)
sich in einem aufgesperrten Zustand befindet (mit anderen Worten,
in einem Ausschlusszustand). Dies kann beispielsweise durch das Vorsehen
eines Flags realisiert werden, welches dazu verwendet wird, anzuzeigen,
ob die LM-Adresse sich in einem aufgesperrten Zustand für jede LM-Adresse
befindet, oder nicht, oder durch das Speichern der LM-Adressen,
die in einem aufgesperrten Zustand sind.
-
Die
Warteschlange 59 kann unverarbeitete Multi-LM-Schreibmeldungen
speichern.
-
Das
Steuerteil 53 kann den Betrieb des Schalt-LSI 37 steuern.
Das Steuerteil 53 kann mittels Hardware realisiert sein,
durch Computerprogramme oder eine Kombination von beidem (z. B.
als CPU). Das Steuerteil 53 empfängt Schreibmeldungen 281, die
von den CHAs 3 oder DKAs 13 über das Übertragungsteil 51 ausgegeben
werden. Das Steuerteil 53 kann entscheiden, ob die empfangene
Schreibmeldung 281 eine Multi-LM-Schreibmeldung, eine normale LM-Schreibmeldung
oder eine SM-Schreibmeldung ist, und zwar durch die Interpretation
des Befehls, der in dieser Schreibmeldung 281 enthalten
ist. In Fällen,
bei denen das Steuerteil 53 entscheidet, dass die Schreibmeldung
eine normale Schreibmeldung ist, kann das Steuerteil 53 eine
Schreibmeldung 281 mit den Daten, die in der normalen LM-Schreibmeldung
enthalten sind, zu dem CHA 3 oder dem DKA 13 übermitteln,
die das Ziel enthält
(z. B. MP bestimmt durch eine Adresse, MP-Zahl oder dergleichen),
welches durch diese normale LM-Schreibmeldung bestimmt ist. In Fällen, in
denen das Steuerteil 53 entscheidet, dass die Schreibmeldung
eine SM-Schreibmeldung
ist, kann das Steuerteil 53 die Daten dieser SM-Schreibmeldung
in den SM 39 über den
SM I/[F] 54 schreiben. In Fällen, in denen das Steuerteil 53 entscheidet,
dass die Schreibmeldung eine normale LM-Schreibmeldung ist, kann
das Steuerteil 53 den Ablauf, wie er beispielsweise in 5 gezeigt
ist, ausführen.
-
5 zeigt
ein Beispiel des Bearbeitungsablaufs, der von dem Steuerteil 53 in
Fällen
durchgeführt
wird, in denen festgelegt ist, dass die empfangene Schreibmeldung
eine Multi-LM-Schreibmeldung ist.
-
Bezüglich des
Adresszustandsspeicherbereichs 57 entscheidet das Steuerteil 53 ob
die LM-Adressen in der Multi-LM-Schreibmeldung sich in einem aufgeschlossenem
Zustand (Schritt S20) befinden, oder nicht.
-
Das
sich die LM-Adressen in einem aufgeschlossenem Zustand befinden,
bedeutet, dass die LM-Adressen in der Multi-LM-Schreibmeldung in
einem Ausschlusszustand sind, so dass die Multi-LM-Schreibmeldung
nicht ausgeführt
werden kann. In Fällen,
in denen in S20 entschieden ist, dass der Zustand ein aufgesperrter
Zustand ist (ja in S20), sammelt das Steuerteil 53 die
Multi-LM-Schreibmeldung in der Warteschlange 59 (S60).
Bezüglich
des Adresszustandsspeicherbereichs 57 führt nachfolgend das Speicherteil 53 eine
Entscheidung durch, ob es möglich
geworden ist für
die LM-Adressen in der Multi-LM-Schreibmeldung,
die in der Warteschlange 59 angesammelt sind, dass diese
aufgesperrt werden (S70), oder nicht. In Fällen, in denen das Steuerteil 53 entscheidet,
dass das Aufsperren möglich
geworden ist (ja in S70) führt
das Steuerteil 53 den Vorgang von S30 aus, der später für die Multi-LM-Schreibmeldung
beschrieben wird, für
diese Entscheidung durchgeführt
worden ist, und in Fällen, in
denen das Steuerteil 53 entscheidet, dass das Aufsperren
nicht möglich
geworden ist (nein S70), führt das
Speicherteil 53 den Vorgang von S20 erneut durch.
-
Wenn
in S20 entschieden worden ist, dass der Zustand kein aufgeschlossener
Zustand (nein in S20), schreibt das Steuerteil 53 eine
Kennung, dass die LM-Adressen in der Multi-LM-Schreibmeldung, die
Gegenstand der Verarbeitung sind, in dem Adresszustandsspeicherbereich 57 (S30)
aufgesperrt sind.
-
Dann
führt das
Steuerteil 53 den Vorgang der Multi-LM-Schreibmeldung durch
(S40). Konkret gesagt kann das Steuerteil 53 auf die Adresskarte 55 Bezug
nehmen, das Sendeziel MPs 5 15 benennen entsprechend.
den LM-Adressen in der Multi-LM-Schreibmeldung,
die Gegenstand der Verarbeitung ist, und kann eine Schreibmeldung
mit der LM-Adresse für
jede der benannten Sendeziele MPs 5 und 15 erstellen
und übermitteln.
-
Auf
S40 führt
das Steuerteil 53 einen Zusperrvorgang für die LM-Adressen
durch (S50). Beispielsweise greift das Steuerteil 53 auf
den Adresszustandsspeicherbereich 57 zu und löscht den
zugesperrten Zustand der LM-Adressen.
-
Das
obige ist ein Beispiel des Bearbeitungsablaufs, der von dem Steuerteil 53 in
Fällen
durchgeführt
wird, in denen festgestellt ist, dass die empfangene Schreibmeldung
eine Multi-LM-Schreibmeldung ist.
-
Wie
bereits oben beschrieben, kann das Steuerteil 53 die ausschließliche Bearbeitung
für die jeweiligen
LM-Adressen durchführen.
Dem zufolge kann die Reihenfolge der in die jeweiligen LM-Adressen
geschriebenen Daten aufrechterhalten werden. Mit anderen Worten,
kann eine Situation, in welcher später ausgegebene Daten in den
LM-Adressbereich eingeschrieben
werden, vor früher
ausgegebenen Daten, verhindert werden.
-
Nachfolgend
wird ein Beispiel der exklusiven Verarbeitung der LM-Adressen mit
Bezugnahme auf 6A beschrieben.
-
Liest
der MP 5A Daten aus einem Bestimmten Auslesebereich 62B seinen
eigenen LM 7A aus (beispielsweise, wenn er MP 5A feststellt,
das Daten in diesen Auslesebereich geschrieben worden sind) kann
der MP 5A eine Aufforderung an den Schalt-LSI 37 zum
Aufsperren bezüglich
der LM-Adresse dieses Auslesebereichs 62B senden.
-
Als
Antwort auf diese Aufforderung kann das Steuerteil 53 des
Schalt-LSI 37 auf den Adresszustandsspeicherbereich 57 Bezug
nehmen und entscheiden, ob diese LM-Adresse aufgesperrt werden kann, oder
nicht, und kann eine Kennung an den MP 5A, der die Quelle
der Aufsperraufforderung ist, eine Kennung senden, ob das Aufsperren
möglich
ist, oder nicht.
-
In
Fällen,
in denen der MP 5A die Kennung erhält, dass das Aufsperren erfolgt
ist, kann der MP 5A Daten aus dem Auslesebereich 62B auslesen
(in Fällen
in denen der MP 5A die Kennung erhält, dass das Aufsperren nicht
erfolgen konnte, liest der MP 5A keine Daten aus und kann
nochmals eine Aufsperraufforderung ausgeben). Darauf folgend kann
der MP 5A außerdem
Daten in den Schreibbereich 62A seines eigenen LM 7A schreiben
und kann eine Multi-LM-Schreibmeldung zum Schalt-LSI 37 übertragen,
die die Adresse des Schreibbereichs 62A und die oben genannten
Daten enthält.
In Fällen,
in denen das Steuerteil 53 des Schalt-LSI 37 eine
solche Multi-LM-Schreibmeldung empfängt, kann das Steuerteil 53 die
Verarbeitung von S20, die mit Bezugnahme auf 5 beschrieben
wurde, weiterführen.
In diesem Falle kann das Steuerteil 53 außerdem beispielsweise
ein Aufsperren der LM-Adresse bei jedem der nachfolgenden Zeitpunkte
(1) bis (3) durchführen:
(1) wenn eine Schreibmeldung zum Sendeziel MP übermittelt wird, (2) wenn eine
Absperraufforderung von der Sendequelle MP empfangen wird, und (3)
wenn eine Antwort auf die übermittelte Schreibmeldung
von dem Sendeziel MP empfangen wird.
-
Somit
wird in den Fällen,
in denen Daten aus den jeweiligen LM-Adressen ausgelesen werden, diese
LM-Adressen in einen aufgesperrten Zustand gebracht; entsprechend
kann das Überschreiben
solcher Daten durch andere Daten, bevor diese Daten ausgelesen sind,
verhindert werden.
-
In
Fällen,
in denen eine Multi-LM-Schreibmeldung übertragen wird und Schreibmeldungen
zu einer Mehrzahl von Sendezielen entsprechend dieser Meldung übertragen
werden, kann der Schalt-LSI 37 oder die Sendeziele MPs
eine Antwort zurücksenden,
wie dies nachfolgend beispielhaft gezeigt wird. Nachfolgend wird
der MP 5A als die Sendequelle MP beschrieben und der MP 5B und
MP 15A werden als Sendeziel MP unter Bezugnahme auf 6B beschrieben.
-
In
Fällen,
bei denen der Schalt-LSI 37 eine Multi-LM-Schreibmeldung
von dem MP 5A empfängt und
jeweils Schreibmeldungen zu den Sendezielen MPs 5B und 15A überträgt, überträgt der Schalt-LSI 37 eine
Antwort zu dem MP 5A. Die Sendeziele MPs 5B und 15A senden
keine Rückantwort
zu dem Schalt-LSI 37 für
die Schreibmeldungen von dem Schalt-LSI 137.
-
Dadurch
ist es möglich,
die Zeit von der Übertragung
einer Multi-LM-Schreibmeldung durch den MP 5A bis zum Empfang
einer Antwort zu minimieren. Dies scheint effektiv zu sein bei einem
verbindungsartigen Datenaustausch (in anderen Worten bei Kommunikationen
durch ein System, in welchem der Pfad für die Zeit der Übertragung
bis zur Erhalt einer Antwort belegt ist).
-
Das
obige ist eine Beschreibung eines ersten Beispiels des ersten Ausführungsbeispiels
der vorliegenden Erfindung gewesen. Weiterhin kann bei diesem ersten
Beispiel das nachfolgende ebenfalls durchgeführt werden. Insbesondere, wie
beispielhaft in 7A gezeigt, können die
Sendeziele der Daten in der Multi-LM-Schreibmeldung in Gruppeneinheiten unterschieden
werden.
-
Dies
bedeutet beispielsweise, dass durch eine Festlegung aller vorhandenen
MPs 15 in allen der DKAs 12 als Sendeziele in
der Adresskarte 55, wie im Falle der LM-Adressnummern „13" bis „16" der Adresskarte 55 des Beispiels
von 4 (mit anderen Worten, durch Erstellung von LM-Adressen,
in denen die Sendeziele DKA-Gruppen sind), ist es möglich, die
Daten in die LMs 17 von allen MPs 15 aller DKAs 13 in
Fällen,
in denen Daten in irgendeine der LM-Adressnummern „13" bis „16" geschrieben sind, zu
schreiben (wie beispielsweise in 7A gezeigt). Hierbei
können
Daten zwischen den DKAs 15 übertragen und empfangen werden,
durch die Zuordnung der jeweiligen LM-Adressnummern „13" bis „16" zu den MPs 15 der DKAs 15.
-
Gleichermaßen ist
es beispielsweise möglich,
durch eine Festlegung aller der MPs 5, die in allen der
CHAs 3 vorhanden sind, als Sendeziele in der Adresskarte 55,
wie im Falle der LM-Adressen der Nummern „9" bis „12" der Adresskarte 55 des gezeigten
Beispiels von 4, Daten in die LMs 7 aller
der MPs 5 von allen CHAs 3 in den Fällen einzuschreiben,
in denen Daten in irgendeine der LM-Adressnummern „9" bis „12" geschrieben sind.
-
Damit
können
die Sendeziele der Daten in der Multi-LM-Schreibmeldung als Gruppeneinheiten entsprechend
der Festlegung der Sendeziele in der Adresskarte 55 festgelegt
sein. Die Gruppen sind eine unbegrenzte Mehrzahl von MPs 5 einer
Mehrzahl von CHAs 3 oder eine Mehrzahl von MPs 15 einer
Mehrzahl von DKAs 13; beispielsweise können solche Gruppen bestehen
aus einer Mehrzahl von MPs, die einen Cluster (Paket) bilden, aus
einer Mehrzahl von MPs, die einen definierten Kopiervorgang durchführen (z.
B. einen Vorgang, der ein ferngesteuertes Kopieren in andere Speichersysteme durchführt), aus
einer Mehrzahl von jeweils freien MPs (MPs in CHAs 3),
die nicht mit der Host-Einrichtung 31 verbunden sind, aus
einer Mehrzahl von MPs (MPs in DKAs 13), die Paritätsdaten
auf der Basis der RAID-Ebene oder dergleichen erzeugen (RAID = redundant
array of inexpensive disks = Redundante Anordnung preisgünstiger
Datenträger).
-
Wie
in 7B gezeigt, kann der Schalt-LSI 37 auch
Daten, die in einer Multi-LM-Schreibmeldung enthalten
sind (oder in einer normalen Schreibmeldung) in den SM 39 schreiben.
Konkret ausgedrückt kann
der Schalt-LSI 37 beispielsweise in Fällen, bei denen Backup-Befehle
in der Multi-LM-Schreibmeldung enthalten sind (oder in einer normalen
Schreibmeldung), Daten in den SM 39 schreiben, die in dieser
Multi-LM-Schreibmeldung
(oder in der normalen Schreibmeldung) enthalten sind. Weiterhin
kann beispielsweise in Fällen,
in denen die Übernahme
eines Backups zuvor festgelegt worden ist, der Schalt-LSI 37 die
Daten, die in allen Multi-LM-Schreibmeldungen enthalten sind (oder
in allen normalen Schreibmeldungen) in den SM 39 schreiben.
-
Außerdem kann
der Schalt-LSI 37 Daten zu einem definierten Zeitpunkt
löschen,
die in Multi-LM-Schreibmeldungen (oder in normalen Schreibmeldungen)
unter den in den SM 39 eingeschriebenen Daten enthalten
sind. Konkret ausgedrückt
kann beispielsweise der Schalt-LSI 37 in Fällen, in
denen der Bereich des SM 39, der zum Hinterlegen von Datenbackups
verwendet wird, voll wird, die ältesten Daten
löschen.
Weiterhin kann der Schalt-LSI 37 in Fällen, in denen der Schalt-LSI 37 eine
Antwort auf eine Schreibmeldung empfängt, die zum Sendeziel MP gesendet
wurde, oder in Fällen,
in denen eine Antwort zu einer Multi-LM-Schreibmeldung (oder einer
normalen Schreibmeldung) zurückgesendet
worden ist, Daten in der Schreibmeldung löschen, die sich auf diese Antwort
von dem SM 39 beziehen. Weiterhin kann der Schalt-LSI 37 beispielsweise
in Fällen,
in denen der Schalt-LSI 37 erneut Daten für eine bestimmte
LM-Adresse empfängt,
die als nächstes
in diese LM-Adresse einzuschreiben sind, die unmittelbar zuvor geschriebenen
Daten vom SM 39 löschen
und kann diese neu empfangenen Daten in den SM 39 schreiben.
-
Damit
ist es durch die Übernahme
des Backups in den SM 39 (insbesondere in einem bestimmten
Bereich des SM 39) möglich,
(beispielsweise)in den Fällen,
in denen Schwierigkeiten vor dem Schreiben der Daten in die LMs 7 oder 17 der
Sendeziele MPs 5 oder 15 oder dergleichen für die jeweiligen MPs 5 oder 15 auftreten,
eine Erholung von diesen Schwierigkeiten durch die Backupdaten zu
erhalten, die im SM 39 gesammelt sind.
-
Wie
beispielsweise in 7C gezeigt, können Adresskarten 55A, 55B für jedes
Sendeziel der Schreibmeldungen in dem Adresskatenspeicherbereich 52 abgelegt
sein. Demzufolge kann das Sendeziel entsprechend der Sendequelle
variieren. Konkret gesagt kann beispielsweise das Sendeziel der
Daten entsprechend der Sendequelle der Schreibmeldung variieren,
sogar in Fällen,
in denen Daten in die gleiche LM-Adresse geschrieben sind.
-
Somit
kann bei diesem obigen ersten Beispiel in Fällen, in denen ein bestimmter
MP 5 oder 15 Daten in den Schreibbereich des eigenen
LM 7 oder 17 schreibt, eine Multi-LM-Schreibmeldung,
die Daten und die LM-Adresse dieses Schreibbereichs enthält, zu dem
Schalt-LSI 37 übertragen
werden, und der Schalt-LSI 37 kann eine Schreibmeldung,
die diese Daten enthält,
zu einer Mehrzahl von Sendezielen übermitteln, die dieser LM-Adresse
zugeordnet sind; das Ergebnis ist, dass die gleichen Daten in Bereiche mit
der gleichen LM-Adresse in eine Mehrzahl von LMs 7 und 17 als
eine Mehrzahl von Sendezielen geschrieben werden kann. Mit Bezug
auf die Auslesebereiche ihrer eigenen LMs 7 und 17 können die
MPs 5 und 15 bei den jeweiligen Sendezielen von
der Sendequelle übermittelte
Daten erhalten. Damit ist es nicht erforderlich, für die Mehrzahl
der MPs 5 und 15, dass auf den SM 39 zugegriffen
wird, um Daten von der Sendequelle zu erhalten; demgemäß kann ein
Absturz im Bearbeitungsablauf der Mehrzahl der MPs 5 und 15 verhindert
werden.
-
Beispiel 2
-
Ein
zweites Beispiel der ersten Ausführung der
vorliegenden Erfindung wird nachfolgend beschrieben. Außerdem werden
nachfolgend die wesentlichen Unterscheidungspunkte gegenüber dem ersten
Beispiel beschrieben; eine Beschreibung der Punkte, die gleich sind,
wie im ersten Beispiel, wird unterlassen oder abgekürzt.
-
Im
obigen ersten Beispiel werden Kommunikationen zwischen den jeweiligen
MPs 5 und 15 und dem Schalt-LSI durch Kommunikationen
in der Art einer Verbindung erreicht; bei diesem zweiten Beispiel werden
dagegen verbindungslose Kommunikationen verwendet. Beispielsweise
können
verbindungslose Kommunikationen durch Ausführung einer Duplex-Übertragung
realisiert werden, bei der der Übertragungspfad
und der Empfangspfad getrennt sind.
-
8 zeigt
den Aufbau des Pfads zwischen den CHAs 103 (oder DKAs 113)
und das Verbindungsteil 133 in diesem zweiten Beispiel
der ersten Ausführung
der vorliegenden Erfindung.
-
Die
jeweiligen CHAs 103 (oder DKAs 113) und das Verbindungsteil 133 sind
durch einen oder mehr erste Pfade 604 und einen oder mehr
zweite Pfade 606 verbunden.
-
Ein Übertragungsteil
(nachfolgend als TX-Teil bezeichnet) 185, das mit dem ersten
Pfad 604 verbunden ist, ein Empfangsteil (nachfolgend als RX-Teil
bezeichnet) 187, welches mit dem zweiten Pfad 606 verbunden
ist, und ein Datensteuerteil 184, welches zwischen dem
TX-Teil 185 und dem Empfangsteil 187 und der MP-Seite
angeordnet ist (z. B. in dem Teil, welches den MP 105 (oder 115)
oder die Übertragungssteuerschaltung
enthält)
sind in dem MPA 186 von jedem CHA 103 (oder DKA 113)
angeordnet.
-
Das
TX-Teil 185 kann Daten seitens des MP 105 (oder 115) über das
Datensteuerteil 184 empfangen, und kann die empfangenen
Daten über
den ersten Pfad 604 übermitteln.
Das RX-Teil 187 kann Daten, die von dem Verbindungsteil 133 über den
zweiten Pfad 606 empfangen wurden, zu der MP-Seite über das
Datensteuerteil 184 übermitteln.
Beispielsweise können
ein TX-Teil 185 und ein RX-Teil 187 für jeden
LM oder jeden MP angeordnet sein.
-
Das
Verbindungsteil 134 kann ein RX-Teil 181 umfassen,
welches mit dem ersten Pfad 604 verbunden ist, und ein
TX-Teil 183, das mit dem zweiten Pfad 606 verbunden
ist, und zwar für
jeden CHA 103 und DKA 113. Weiterhin kann das
Verbindungsteil 134 auch ein Schaltteil (Koppelteil) 134 umfassen, welches
mit jedem RX-Teil 181 und jedem TX-Teil 183 verbunden
ist. Das Schaltteil 134 kann Daten von dem RX-Teil 181 empfangen
und Daten, die vom RX-Teil 181 empfangen wurden, zu einem
TX-Teil 183 übertragen,
welches diese Daten zu dem Ziel dieser Daten übermitteln kann.
-
9 zeigt
Beispiele für
den Aufbau des RX-Teils 181 und das TX-Teil 183 des
Verbindungsteils 133. Außerdem kann dieses Aufbaubeispiel
für das
RX-Teil 181 auch auf das RX-Teil 187 eines jeden
CHA 103 (oder DKA 113) angewendet werden, und
das Aufbaubeispiel des TX-Teils 183 kann auch auf das TX-Teil 185 eines
jeden CHA 103 (oder DKA 113) angewendet werden.
-
Das
RX-Teil 181 kann umfassen: Eine serielle Empfangsschaltungs-Schnittstelle 201,
die serielle Daten empfängt
und diese Daten abwärts
ausgibt, eine SP-Umwandlungsschaltung 203, die die ausgegebenen
seriellen Daten empfängt,
umwandelt in parallele Daten und die parallelen Daten aus gibt,
eine Paket-Steuerschaltung 205, die diese ausgegebenen parallelen
Daten (Datenpakete) empfängt,
und einen Empfangspuffer 207. Die Paket-Steuerschaltung 205 kann
die empfangenen parallelen Daten in dem Empfangspuffer 207 sammeln
und, wenn der Empfangspuffer 207 voll ist, eine Kennung „Voll", die dies kennzeichnet
(z. B. die empfangenen parallelen Daten selbst) an die Paket-Steuerschaltung 215 des TX-Teils 183 senden.
-
Das
TX-Teil 183 kann umfassen: Einen Übertragungspuffer 217,
der parallele Daten von dem Schaltteil 134 sammelt, eine
Paket-Steuerschaltung 215, die die in dem Übertragungspuffer 217 gesammelten
Daten (oder eine Kennung „Voll", die von dem RX-Teil 181 übertragen
wurde) empfängt
und ausgibt, eine PS-Umwandlungsschaltung 213, die parallele
Daten von der Paket-Steuerschaltung 215 in serielle Daten
umwandelt und diese serielle Daten ausgibt, Übertragungsschaltungs-Schnittstelle 211,
welches serielle Daten empfängt,
die von der PS-Umwandlungsschaltung 213 ausgegeben werden,
und diese serielle Daten zu den CHAs 103 (oder DKAs 113) überträgt.
-
10 ist
ein Aufbaubeispiel des Schalt-LSI 137 des zweiten Beispiels
der ersten Ausführung
der vorliegenden Erfindung.
-
Bei
diesem zweiten Beispiel ist eine Mehrzahl von RX-Teilen 151A, 151B,
... und eine Mehrzahl von TX-Teilen 158A, 158B ...
zwischen der Steuerschaltung 153 und dem Verbindungsteil 133 angeordnet.
Das oben erwähnte
Ausführungsbeispiel
des RX-Teils 181 kann auf Ausführungen der jeweiligen RX-Teile 151 angewendet
werden. Das obige Ausführungsbeispiel
des TX-Teils 183 kann auf Ausführungsbeispiele der jeweiligen
TX-Teile 158 angewendet
werden.
-
Die
RX-Teile 151 und TX-Teile 158 können für die jeweiligen
LMs der jeweiligen MPs angeordnet sein. Weiterhin kann beispielsweise
in Speichermitteln, wie dem Adresskartenspeicherbereich 52 oder dergleichen,
eine Übertragungs-
und Empfangskarte 608 gespeichert sein, die die Zugehörigkeit
der IDs (z. B. Nummern) der jeweiligen RX-Teile 151, der
IDs der jeweiligen TX-Teile 158 und der jeweiligen MPs ausdrückt. Damit
kann beispielsweise das Steuerteil 153 den MP spezifizieren,
von welchem eine Schreibmeldung entsprechend dem RX-Teil 151, über den
diese Schreibmeldung empfangen worden ist, gesendet wurde, und kann
das TX-Teil 158 spezifizieren, über welches die Schreibmeldung übertragen
werden kann, im Falle, wenn diese Schreibmeldung zu einem vorgegebenen
MP zu übertragen
ist. Konkret ausgedrückt
kann das Steuerteil 153 beispielsweise eine Multi-LM-Schreibmeldung
empfangen, bezogen auf die obige Übertragungs- und Empfangskarte 608,
in Fällen,
in denen eine Mehrzahl von Sendezielen MPs, die der LM-Adresse in
dieser Multi-LM-Schreibmeldung zugeordnet ist, durch die Adresskarte 55 spezifiziert
sind, und kann eine Mehrzahl der TX-Teile 158 zugehörig zu der
Mehrzahl der Sendeziele MPs spezifizieren, und kann eine Schreibmeldung übermitteln,
die die Daten der Multi-LM-Schreibmeldung von der Mehrzahl der spezifizierten
TX-Teile 158 enthält.
-
Bei
diesem zweiten Beispiel kann der Schalt-LSI 137 eine Antwort
zu der Sendequelle MP der Multi-LM-Schreibmeldung zurücksenden,
unter Verwendung des nachfolgend beschriebenen Antwortsystems (Reaktionssystems).
Außerdem
wird in der nachfolgenden Beschreibung der MP 105A als Sendequelle
MP und der MP 105B und der MP 115A als Sendeziele
MPs verwendet.
-
11A ist ein Diagramm zur Erläuterung des ersten Antwortsystems.
-
Wenn
der Schalt-LSI 137 eine Schreibmeldung zu dem MP 105B und
dem MP 115A entsprechend einer Multi-LM-Schreibmeldung
vom MP 105A überträgt, empfängt der
Schalt-LSI 137 eine Antwort von dem MP 105B und
von dem MP 115A. Diese Antwort kann beispielsweise eine
Antwort sein, die dann gesendet wird, wenn die MPAs der Sendeziele MPs 105B und 115A eine
Schreibmeldung empfangen.
-
Im
Falle dieses ersten Antwortsystems kann der Schalt-LSI 137 eine
Antwort zu dem MP 105A immer dann zurücksenden, wenn eine jeweilige
Antwort von den Sendezielen MPs 105B und 115A empfangen
wurde. Darauf kann die Sendequelle MP 105A bestätigen, dass
Daten zu den Sendezielen abgeliefert worden sind.
-
11B ist ein Diagramm zur Erläuterung des zweiten Antwortsystems.
-
Bei
diesem zweiten Antwortsystem kann der Schalt-LSI 137 eine
Antwort zu der Sendequelle MP 105A zurücksenden, wenn der Schalt-LSI 137 sämtliche
Antworten empfangen hat, die zu sämtlichen Sendezielen MPs 105B und 115A zugeordnet
sind (z. B. wenn bestätigt
wurde, dass alle Antworten in einem bestimmten Puffer aufsummiert
worden sind). Daraufhin kann die Sendequelle MP 105A bestätigen, dass
die Daten zu den Sendezielen ausgeliefert worden sind. Weiterhin,
wenn die zu der Sendequelle MP 105A von sämtlichen
Sendezielen für
alle Antworten zurückgesandte
Antwort eine Einzelantwort ist, kann die Belegungsrate für den Pfad
zwischen der Sendequelle MP 105A und dem Schalt-LSI 137 reduziert
werden.
-
11C ist ein erläuterndes Diagramm des dritten
Antwortsystems.
-
Bei
diesem dritten Antwortsystem werden die Antworten zum Schalt-LSI 137 von
den jeweiligen Sendezielen MPs 105B und 115A zurückgesandt, sobald
bestätigt
ist, das Daten in die LMs 107B und 117A geschrieben
worden sind. Der Schalt-LSI 137 kann eine Antwort zu dem
MP 105A immer dann zurücksenden,
wenn der Schalt-LSI 137 eine jeweilige Antwort von den
Sendezielen MPs 105B und 115A empfängt. Das
Ergebnis ist, dass die Sendequelle MP 105A bestätigen kann,
das Daten in die Sendeziele LMs geschrieben worden sind.
-
11D ist ein erläuterndes Diagramm des vierten
Antwortsystems.
-
Bei
diesem vierten Antwortsystem kann der Schalt-LSI 137 im
obigen dritten Antwortsystem eine Antwort zu der Sendequelle MP 105A zurücksenden, wenn
der Schalt-LSI 137 sämtliche
Antworten empfängt,
die den jeweiligen Sendezielen MPs 105B und 115A zugeordnet
sind. Demzufolge kann die Sendequelle MP 105A bestätigen, das
Daten in sämtliche Sendeziele
LMs eingeschrieben worden sind; weiterhin kann die Belegungsrate
des Pfads zwischen der Sendequelle MP 105A und den Schalt-LSI 137 reduziert
werden, wenn die Antwort, die von der Sendequelle MP 105A für alle Antworten
aller Sendeziele eine Einzelantwort ist.
-
Von
dem oben erwähnten
ersten bis zum vierten Antwortsystem scheint das zweite Antwortsystem
oder das vierte Antwortsystem beim zweiten Ausführungsbeispiel wünschenswerter.
Weiterhin kann wenigstens eines von dem ersten bis zum vierten Antwortsystem
bei dem ersten Ausführungsbeispiel
angewendet werden. Bei dem zweiten Ausführungsbeispiel kann außerdem das
von dem ersten bis vierten Antwortsystem verwendete Antwortsystem
und das Antwortsystem, welches bei dem obigen ersten Beispiel beschrieben
worden ist, durch den Schalt-LSI 137 dynamisch verändert werden.
Beispielsweise kann in den Fällen,
wie dies Beispielsweise in 12 gezeigt
ist, bei denen eine bestimmte Information eingegeben wird, irgendeines
der mehreren Antwortsysteme auf der Basis dieser Information durch
das Schalt-LSI 137 ausgewählt werden. Beispielsweise
kann diese Information wenigstens eins von mehreren Elementen sein,
die ausgewählt
sind von einem Set aus wichtigen Daten, der Pfadbelegungsrate und
der Länge
der Antwortzeit, oder der Priorität einer Mehrzahl von Elementen
oder dergleichen.
-
Alternativ
dazu kann wenigstens ein Informationselement dieser Eingangsinformation
auch in der Multi-LM-Schreibmeldung enthalten sein. Beispielsweise
in Fällen,
bei denen der Schalt-LSI 137 entscheidet (entsprechend
der Eingangsinformation), dass die Zuverlässigkeit der Daten nicht zu
berücksichtigen
ist, und dass die Paket-Belegungsrate und die Länge der Antwortzeit Priorität der dritten
Stufe haben (höher
als die erste und die zweite Stufe), kann das Antwortsystem des
ersten Beispiels ausgewählt
werden. Beispielsweise in Fällen,
bei denen der Schalt-LSI 137 entscheidet (gemäß der Eingangsinformation),
dass die Zuverlässigkeit
der Daten die Priorität
der zweiten Stufe hat, dass die Paket-Belegungsrate nicht zu berücksichtigen
ist, und dass die Länge
der Antwortzeit Priorität
der dritten Stufe hat, kann das erste Antwortsystem ausgewählt werden. Außerdem kann
in Fällen,
bei denen der Schalt-LSI 137 entscheidet (entsprechend
der Eingangsinformation), das die Zuverlässigkeit der Daten die Priorität der zweiten
Stufe hat und dass die Paket-Belegungsrate und die Länge der
Antwortzeit die Priorität der
dritten Stufe haben, das zweite Antwortsystem ausgewählt werden.
Weiterhin kann in Fällen,
in denen der Schalt-LSI 137 entscheidet (gemäß der Eingangsinformation),
dass die Zuverlässigkeit
der Daten die Priorität
der ersten Stufe hat, und dass die Paket-Belegungsrate und die Länge der
Antwortzeit nicht zu berücksichtigen
sind, das dritte Antwortsystem ausgewählt werden. Weiterhin kann
in Fällen,
in denen der Schalt-LSI 137 entscheidet (entsprechend der
Eingangsinformation), dass die Zuverlässigkeit der Daten die Priorität der ersten
Stufe hat, dass die Paket-Belegungsrate die Priorität der zweiten
Stufe hat, und dass die Länge
der Antwortzeit nicht zu berücksichtigen
ist, dass vierte Antwortsystem ausgewählt werden. Durch die Ausführung einer
derartigen Auswahl ist es möglich,
sowohl dem Erfordernis der Datenzuverlässigkeit als auch dem Datendurchsatzlevel
in einer gut ausgewogenen Weise zu genügen.
-
Bei
diesem zweiten Beispiel kann der Datendurchsatz des Multi-LM-Schreibvorgangs
erhöht
werden, da die Pfade für
die Übertragung
und die Annahme (Rezeption) getrennt sind.
-
Beispiel 3
-
13A zeigt ein Aufbaubeispiel der CHAs 403 (oder
DKA 413) in einem dritten Beispiel der ersten Ausführung der
vorliegenden Erfindung.
-
Bei
obigem ersten und zweiten Beispiel schreiben die jeweiligen MPs
Daten in die Schreibbereiche ihrer eigenen LMs, so dass LM-Schreibmeldungen,
die diese Daten enthalten, erstellt und übertragen werden. Bei diesem
dritten Beispiel kann dagegen eine Mehrzahl von Schreibsystemen
selektiv verwendet werden: Z. B. ein System in welchem die MPs Daten
nur in ihre eigenen LMs schreiben, ein System, in welchem die MPs
Daten in ihre eigenen LMs und eine Mehrzahl anderer LMs schreiben,
ein System, in welchem die MPs Daten in Mehrzahl anderer LMs schreiben,
ohne Daten in ihre eigenen LMs zu schreiben, und dergleichen.
-
Jeder
CHA 403 (oder DKA 413) kann einen Prozessor 405 und
ein Kanalsteuerteil 412 umfassen.
-
Jeder
Prozessor 405 kann aus einem MP-Kern (Prozessorkern) 406,
einem internen LM 407, einer Adressdecodierschaltung 408 und
einem extern zugeordneten LM 409 und dergleichen bestehen.
Das Pfadsteuerteil 412 kann aus einem Speicher 413 und
dergleichen bestehen.
-
Wie
hier beispielsweise in 13B dargestellt
ist, ist eine bestimmte Wert-Zugriffszielkarte 415 in der
Adressdecodierschaltung 408 eingesetzt, die eine Mehrzahl
von Zugriffszieldatensätzen
enthält, jeweils
entsprechend einer Mehrzahl von bestimmten Werten. Dabei bezieht
sich beispielsweise der Ausdruck „bestimmter Wert" auf eine Schreibdatenzieladresse,
die durch den MP-Kern 406 bestimmt ist. Weiterhin kann
der Ausdruck „Zugriffszieldaten" sich auf Daten beziehen,
die dazu verwendet werden, um einen oder mehrere der Zugriffsziele
zu spezifizieren. Beispielsweise kann ein derartiges oder eine Mehrzahl
von derartigen Zugriffszielen interne LMs 407, extern zugeordnete
LMs 409, Speicher 413, SMs 39 oder LMs 407 von
anderen CHAs 403 oder DKAs 413 sein.
-
Die
Adressdecodierschaltung 408 kann Befehle empfangen, die
bestimmte Werte von dem MP-Kern 406 enthält, kann
die Zugriffszieldaten entsprechend dem bestimmten Wert, der in jedem
Befehl der bezeichneten Wert-Zugriffszielkarte 415 enthalten
ist, spezifizieren, und kann Daten in einen oder eine Mehrzahl von
Zugriffszielen schreiben, die durch die spezifizierten Zugriffszieldaten
angegeben sind. Konkret ausgedrückt
können
beispielsweise Daten in wenigstens einen Teil eingeschrieben werden,
der aus einem Set ausgewählt
worden ist, welches aus dem internen LM 407, dem extern
zugeordneten LM 409, dem Speicher 413, dem SM 39 und
LM 407 eines anderen CHA 403 oder DKA 413 bestehen,
und zwar durch einen einzelnen Befehl von dem MP-Kern 406.
-
Beispiel 4
-
Das
Multi-LM-Schreiben wurde im ersten bis dritten Beispiel beschrieben;
im vierten Beispiel kann Multi-LM-Auslesen durchgeführt werden.
Beispielsweise kann das Multi-LM-Auslesen auch durch den Austausch
von „Auslesen" für „Schreiben" bei dem Multi-LM-Schreiben
realisiert werden; als ein separates Verfahren kann dies jedoch
auch durch das folgende Verfahren realisiert werden.
-
14A ist ein Diagramm zur Erläuterung des Multi-LM-Auslesens,
welches in einem vierten Beispiel der ersten Ausführung der
vorliegenden Erfindung durchgeführt
wird.
-
Ein
DMA-Prozessteil 581 zur Ausführung eines direkten Speicherzugriffs
(DMA = direct memory access = direkter Speicherzugriff), kann in
dem MPA 583 eines jeden CHA 503 (oder DKA) installiert
sein. Weiterhin kann ein Bereich zum Speichern von Daten, die durch
andere MPs ausgegeben werden, für jeden
anderen MP in den LMs 507A bis 507D der jeweiligen
MPs 505A bis 505D (505B bis 505D sind
der Zweckmäßigkeit
wegen in den Figuren weggelassen)installiert sein. Außerdem können Bereiche
zur Aufzeichnung von Daten entsprechend den Sendezielen MPs für jedes
Sendeziel MP in den LMs 507A bis 507D der jeweiligen
MPs 505A bis 505D installiert sein.
-
Der
Schalt-LSI 537 kann einen Auslesekartenspeicherbereich 591 umfassen,
der einen Speicherbereich darstellt, auf den das Steuerteil 553 zugreifen
kann, und der die Auslesekarte 592 speichern kann, die
beispielhaft in 14B gezeigt ist. Es ist beispielsweise
eine Auslesekarte 592 für
jeden MP vorgesehen. Beispielsweise ist der LM der anderen MP 505B bis 505D,
aus denen Daten in Fällen auszulesen
sind, bei denen eine gegebene Bereichs-ID (z. B. LM-Adresse) bezeichnet
ist, in der Auslesekarte 592 des MP 505A gespeichert.
Außerdem
kann auch Information (z. B. Bereichs-IDs, wie LM-Adressen oder dergleichen),
die anzeigen, wo in dem LM 507A des MP 505A Daten
von anderen MPs eingeschrieben werden können, in die Auslesekarte 592 des
MP 505A für
jeden der anderen MPs 505B bis 505D aufgezeichnet
sein.
-
Unter
Verwendung dieses Aufbaus kann das LM-Auslesen wie folgt ausgeführt werden:
Beispielsweise
kann in Fällen,
in denen der MP 505A Daten aus den LMs der anderen MPs 505B bis 505D ausliest,
die Bereichs-ID „A" für das DMA-Verarbeitungsteil 581 bestimmt
werden. Das DMA-Verarbeitungsteil 581 kann eine Multi-LM-Auslesemeldung übermitteln,
die die Bereichs-ID „A" (Adresse) und einen
Befehl beinhaltet, der anzeigt, dass der Vorgang ein Multi-LM-Auslesevorgang
zum Schalt-LSI 537 ist.
-
Der
Schalt-LSI 537 kann das Zugriffsziel MP 505B bis 505D entsprechend
der Adresse (Bereichs-ID) spezifizieren, die in der Multi-LM-Auslesemeldung
enthalten ist, und zwar unter Bezugnahme auf die Auslesekarte, entsprechend
dem MP 505A, und kann Daten aus dem Bereich auslesen, der
für den
MP 505A in dem LM 507B bis 505D des gekennzeichneten
Zugriffsbereich MP 505B bis 505D verwendet ist.
Für jeden
Datensatz, der ausgelesen ist, kann der Schalt-LSI 537 eine
Antwortmeldung 284 vorbereiten, die diese Daten und die
Bereichs-ID des Datenaufzeichnungsziels enthält, und kann dies jeweiligen
Antwortmeldungen zu den CHAs 503 übermitteln.
-
Jedes
Mal wenn das DMA-Verarbeitungsteil 581 von jedem CHA 503 eine
jeweilige Antwortmeldung empfängt,
kann dieses DMA-Verarbeitungsteil Daten, die in der Antwortmeldung
enthalten sind in den Bereich des LM 507A entsprechend
der Bereichs-ID einschreiben, die in dieser Antwortmeldung enthalten
ist.
-
Darauf
folgend kann der MP 505A durch Zugriff auf die Bereiche,
die für
die anderen MPs benutzt werden, die Daten erhalten, die in diesen
Bereichen aufgezeichnet sind. Mehrere bevorzugte Ausführungsbeispiele
der vorliegenden Erfindung wurden oben beschrieben. Jedoch sind
diese Ausführungsbeispiele
nur Beispiele zur Darstellung der vorliegenden Erfindung; die Bedeutung
der vorliegenden Erfindung ist nicht auf diese Ausführungsbeispiele
alleine begrenzt. Die vorliegende Erfindung kann auch in anderer
Weise ausgeführt
sein.
-
Beispielsweise
kann es auch möglich
sein, anstelle des Auslesens von Daten durch einen Vorgang, bei
dem die jeweiligen MPs die Auslesebereiche ihre eigenen LMs abfragen,
das System so ausgelegt ist, dass wenn Daten in den Lesebereich
geschrieben werden, entsprechend einer bestimmten LM-Adresse des
LM, eine Unterbrechung entsprechend der LM-Adresse zu dem MP ausgegeben
wird, entsprechend diesem LM. Der MP kann auf diese Unterbrechung
Daten auslesen aus dem Auslesebereich, wenn die LM-Adresse der Unterbrechung
zugeordnet ist.
-
Weiterhin
ist in 15 beispielsweise dargestellt,
dass es auch möglich
ist, das System so zu entwerfen, dass das Datensendeziel MP 5B eine
Antwort zurücksendet
(z. B. Empfangsanzahl) zu dem Datensendeziel MP 5A in einem
Stadium, in welchem Daten mehrfach empfangen worden sind (z. B. vier
Mal). Konkret gesagt, kann das Sendeziel MP 5B beispielsweise
eine Antwort zurücksenden,
wenn eine Zeichensetzung in der Mikrosteuerung festgestellt wurde
(z. B. wenn die Verarbeitung bis zu einer gekennzeichneten Stufe
abgeschlossen worden ist), wenn der Datenempfang von dem MP 5A mit
einer spezifizierten Häufigkeit
festgestellt worden ist, oder wenn eine spezifizierte LM-Adresse
festgestellt wurde (z. B. wenn das Auslesen bis zu einer spezifizierten
LM-Adresse abgeschlossen
worden ist). Weiterhin kann der Schalt-LSI das verwendete Antwortsystem
durch das gleiche Verfahren auswählen,
wie das oben unter Bezugnahme auf 12 beschriebene Verfahren
(das von diesem Antwortsystem benutzte System, das mit Bezugnahme
auf 6B beschriebene Antwortsystem und die Antwortsysteme,
die unter Bezugnahme auf die 11A bis 11D beschrieben wurden).
-
Außerdem kann
beispielsweise von dem SM 39, CM 41 und dem Schalt-LSI 37 wenigstens
der Schalt-LSI 37 in dem Verbindungsteil 33 angeordnet sein.
Mit anderen Worten kann beispielsweise der Schalt-LSI 37 veranlasst
werden, die Verarbeitung des Verbindungsteils 33 durchzuführen. Oder
in anderen Worten gesagt, kann das Verbindungsteil 33 veranlasst
werden, die Verarbeitung durchzuführen, die durch den Schalt-LSI 37 durchgeführt wird. 16 zeigt
ein Beispiel des Speichersystems 200 für diesen Fall.