DE602005004508T2 - Speichersystem und Speichersteuerverfahren - Google Patents

Speichersystem und Speichersteuerverfahren Download PDF

Info

Publication number
DE602005004508T2
DE602005004508T2 DE602005004508T DE602005004508T DE602005004508T2 DE 602005004508 T2 DE602005004508 T2 DE 602005004508T2 DE 602005004508 T DE602005004508 T DE 602005004508T DE 602005004508 T DE602005004508 T DE 602005004508T DE 602005004508 T2 DE602005004508 T2 DE 602005004508T2
Authority
DE
Germany
Prior art keywords
processors
processor
access
data
controller
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.)
Active
Application number
DE602005004508T
Other languages
English (en)
Other versions
DE602005004508D1 (de
Inventor
Nobuyuki Chiyoda-ku Minowa
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 DE602005004508D1 publication Critical patent/DE602005004508D1/de
Application granted granted Critical
Publication of DE602005004508T2 publication Critical patent/DE602005004508T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Description

  • 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.

Claims (15)

  1. Speichersystem (20), das Verarbeitungen für einen oder mehrere Speicher (21) mittels mehrerer Prozessoren durchführt, mit mehreren Prozessoren (5A, 5B, 15A, 15B), mehreren lokalen Speichern (7A, 7B, 17A, 17B), die jeweils für die mehreren Prozessoren vorgesehen sind, mehreren Kanaladaptern (3A, 3B), die von einem Hostcomputer (31) empfangene Daten in einem Cache-Speicher (41) speichern, oder mehreren Plattenadaptern (13A, 13B), die in dem Cache-Speicher (41) gespeicherte Daten in den Speichern (21) speichern, einem Speicher (39) zum Speichern von zwischen den mehreren Kanaladaptern oder den mehreren Plattenadaptern übertragenen Steuerinformationen, einer mit dem Speicher zum Speichern von Steuerinformationen verbundenen Steuerung und einem oder mehreren Zwischengeräten (6A, 6B, 16A, 16B), die mit den mehreren Prozessoren und der Steuerung verbunden sind, so daß Übertragungen möglich sind, wobei jeder der mehreren lokalen Speicher mehrere lokale Speicheradressen und diesen jeweils entsprechende lokale Speicherbereiche aufweist, dadurch gekennzeichnet, daß ein mit dem Prozessor verbundenes erstes Zwischengerät so ausgelegt ist, daß es an die Steuerung eine erste Zugriffsnachricht (281) überträgt, die einen von dem Prozessor bezeichneten Wert enthält, die Steuerung so ausgelegt ist, daß 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 an zwei oder mehrere weitere Prozessoren eine zweite Zugriffsnachricht überträgt, die die spezifizierte örtliche Speicheradresse enthält, und ein an die zwei bzw. mehreren weiteren Prozessoren angeschlossenes zweites Zwischengerät so ausgelegt ist, daß es die zweite Zugriffsnachricht empfängt, wobei das zweite Zwischengerät oder die zwei oder mehreren weiteren Prozessoren so ausgelegt sind, daß sie Zugriff auf die lokalen Speicherbereiche von zwei oder mehreren, den zwei bzw. mehreren weiteren Prozessoren entsprechende lokale Speicher haben, bei denen es sich um lokale Speicherbereiche handelt, die den in der zweiten Zugriffsnachricht enthaltenen lokalen Speicheradressen entsprechen.
  2. Speichersystem (20) nach Anspruch 1, wobei die Steuerung (37) so ausgelegt ist, daß sie das Auf- und Zusperren jeder der lokalen Speicheradressen steuert, wobei dann, wenn die lokale Speicheradresse, die dem in der empfangenen ersten Zugriffsnachricht enthaltenen bezeichneten Wert entspricht, zugesperrt ist, die Steuerung diese lokale Speicheradresse aufsperrt, die erste Zugriffsnachricht anschließend verarbeitet wird und die Steuerung zu einem Zeitpunkt im Anschluß an die Übertragung der zweiten Zugriffsnachricht die lokale Speicheradresse zusperrt, und dann, wenn die lokale Speicheradresse, die dem in der empfangenen ersten Zugriffsnachricht enthaltenen bezeichneten Wert entspricht, aufgesperrt ist, die Steuerung die Verarbeitung der ersten Zugriffsnachricht ausführt, nachdem die lokale Speicheradresse zugesperrt ist.
  3. Speichersystem (20) nach Anspruch 2, wobei die Prozessoren (5A, 5B, 15A, 15B) so ausgelegt sind, daß sie an die Steuerung (37) 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, wobei die Steuerung so ausgelegt ist, daß 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, und wenn die Mitteilung, daß das Aufsperren erfolgreich durchgeführt wurde, von den Prozessoren empfangen wird, diese Daten aus den lokalen Speicherbereichen auslesen.
  4. Speichersystem (20) nach einem der Ansprüche 1 bis 3, wobei dieselbe lokale Speicheradresse der mehreren Speicher einem spezifizierten Prozessor zugeordnet ist und der lokale Speicherbereich, der der dem Prozessor zugeordneten lokalen Speicheradresse entspricht, ein Schreibbereich für diesen Prozessor und ein Lesebereich für die anderen Prozessoren ist.
  5. Speichersystem (20) nach Anspruch 4, wobei der Prozessor zum Schreiben von Daten in den Schreibbereich ausgelegt ist und das erste Zwischengerät so ausgelegt ist, daß es an die Steuerung die erste Zugriffsnachricht überträgt, in der die dem Schreibbereich entsprechende lokale Speicheradresse als der bezeichnete Wert angenommen ist.
  6. Speichersystem (20) nach einem der Ansprüche 1 bis 5 mit einer Zugriffskarte (55), in der mehrere Gruppen von Zugriffszieldaten verzeichnet sind, die jeweils mehreren bezeichneten Werten entsprechen, wobei in der Karte vermerkt ist, welcher Prozessor als Zugriffsziel für jede der mehreren Gruppen von Zugriffszieldaten angenommen wird, und wobei die Steuerung (37) so ausgelegt ist, daß sie die Zugriffszieldaten entsprechend dem in der empfangenen ersten Zugriffsnachricht enthaltenen bezeichneten Wert aus der Zugriffskarte (55) spezifiziert und die zweite Zugriffsnachricht an zwei oder mehrere weitere, durch die spezifizierten Zugriffszieldaten ausgedrückte Prozessoren sendet.
  7. Speichersystem nach einem der Ansprüche 1 bis 6, wobei zwei oder mehrere weitere Prozessoren eine Prozessorgruppe mit spezifizierten Attributen bilden.
  8. Speichersystem (20) nach einem der Ansprüche 1 bis 7, wobei die Steuerung (37) die zwei oder mehreren weiteren Prozessoren aufgrund des in der ersten Zugriffsnachricht enthaltenen bezeichneten Wertes sowie den Prozessor, der den bezeichneten Wert bezeichnet hat, bestimmt.
  9. Speichersystem (20) nach einem der Ansprüche 1 bis 8, wobei zwischen der Steuerung (37) 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 sind und die Steuerung die erste Zugriffsnachricht über den zweiten Pfad empfängt und die zweite Zugriffsnachricht über den ersten Pfad sendet.
  10. Speichersystem (20) nach einem der Ansprüche 1 bis 9, wobei die Steuerung (37) so ausgelegt ist, daß 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, sooft 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) in Fällen, in denen entsprechend der zweiten Zugriffsnachricht Daten in die zwei oder mehreren lokalen Speicher geschrieben werden, sendet die Steuerung an den Prozessor eine Antwort zurück, sooft von jedem der zwei oder mehreren Prozessoren eine Ausgangsnachricht empfangen wird; (E) in Fällen, in denen entsprechend der zweiten Zugriffsnachricht von allen der zwei oder mehreren Prozessoren Daten in die zwei oder mehreren lokalen Speicher geschrieben werden, sendet die Steuerung an den Prozessor eine Antwort zurück, nachdem sie von den zwei oder mehreren weiteren Prozessoren eine Ausgangsantwort empfangen hat; (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.
  11. Speichersystem (20) nach Anspruch 10, wobei die Steuerung (37) eine der Reaktionen (A) bis (F) aufgrund mindestens eines der folgenden Merkmale wählt: Zuverlässigkeit, mit der ein Zugriff akkurat erfolgt, Belegungsrate des Pfades zwischen der Steuerung und den Zwischengeräten, und Dauer der für die Antwort an den Prozessor nach Senden der ersten Zugriffsnachricht benötigten Zeit; und die gewählte Reaktion ausführt.
  12. Speichersystem (20) nach einem der Ansprüche 1 bis 11, wobei in jedem Prozessor mehrere Speichergeräte einschließlich eines für den Prozessor selbst vorgesehenen lokalen Speichers (407) und weiterer lokaler Speicher (409) für weitere Prozessoren angeordnet sind, wobei jeder Prozessor einen Prozessorkern (406), der den bezeichneten Wert ausgibt, und eine Zugriffssteuerschaltung (408) aufweist, die so ausgelegt ist, daß 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 Prozessor ausgegebenen Wertes zwei oder mehrere Speichergeräte bestimmt, und wobei jeder Prozessor zum Zugriff auf die zwei oder mehreren bestimmten Speichergeräte ausgelegt ist.
  13. Speichersystem (20) nach einem der Ansprüche 1 bis 12 mit mehreren Plattenadaptern (13A, 13B) und mehreren Kanaladaptern (3A, 3B), wobei die mehreren Prozessoren (5A, 5B, 15A, 15B) in den mehreren Platten- und Kanaladaptern enthalten sind und das erste Zwischengerät (6A, 6B) in den mehreren Kanaladaptern und das zweite Zwischengerät (16A, 16B) in den mehreren Plattenadaptern enthalten ist.
  14. Prozessor (405) zum Einbau in ein Speichersystem (20), umfassend einen Prozessorkern (406), der einen Wert ausgibt, und eine Zugriffssteuerschaltung (408), wobei der Prozessorkern zur Ausgabe eines Wertes ausgelegt ist, die Zugriffssteuerschaltung so ausgelegt ist, daß sie aufgrund des von dem Prozessorkern ausgegebenen Wertes aus mehreren Speichergeräten, zu denen ein für den Prozessor vorgesehener lokaler Speicher (407) sowie lokale Speicher (409) 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.
  15. Speichersteuerung, die Verarbeitungen für einen oder mehrere Speicher (21) mittels mehrerer Prozessoren (5A, 5B, 15A, 15B) durchführt, wobei jeder von mehreren für die mehreren Prozessoren vorgesehenen lokalen Speichern (7A, 7B, 17A, 17B) mehrere lokale Speicheradressen und diesen jeweils entsprechende lokale Speicherbereiche aufweist, dadurch gekennzeichnet, daß von mit den Prozessoren verbundenen ersten Zwischengeräten an eine Steuerung (37) erste Zugriffsnachrichten (281) gesendet werden, zu denen ein von dem Prozessor bezeichneter Wert gehört, 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 Zugriff genommen wird auf lokale Speicherbereiche von zwei oder mehreren den zwei oder mehreren Prozessoren jeweils entsprechenden lokalen Speichern, bei dem es sich um die lokalen Speicherbereiche handelt, die den in der zweiten Zugriffsnachricht enthaltenen lokalen Speicheradressen entsprechen.
DE602005004508T 2005-04-01 2005-09-29 Speichersystem und Speichersteuerverfahren Active DE602005004508T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005106613A JP4794194B2 (ja) 2005-04-01 2005-04-01 ストレージシステム及び記憶制御方法
JP2005106613 2005-04-01

Publications (2)

Publication Number Publication Date
DE602005004508D1 DE602005004508D1 (de) 2008-03-13
DE602005004508T2 true DE602005004508T2 (de) 2009-01-29

Family

ID=35840119

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005004508T Active DE602005004508T2 (de) 2005-04-01 2005-09-29 Speichersystem und Speichersteuerverfahren

Country Status (4)

Country Link
US (1) US7395392B2 (de)
EP (1) EP1708076B1 (de)
JP (1) JP4794194B2 (de)
DE (1) DE602005004508T2 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5057755B2 (ja) * 2006-11-28 2012-10-24 株式会社日立製作所 記憶制御装置及びその制御方法
JP4369467B2 (ja) 2006-12-12 2009-11-18 富士通株式会社 データ中継装置、ストレージ装置、およびデータ中継方法
JP4475598B2 (ja) * 2007-06-26 2010-06-09 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
US8775717B2 (en) * 2007-12-27 2014-07-08 Sandisk Enterprise Ip Llc Storage controller for flash memory including a crossbar switch connecting a plurality of processors with a plurality of internal memories
JP5102917B2 (ja) * 2008-02-22 2012-12-19 株式会社日立製作所 ストレージ装置及びアクセス命令送信方法
US8527710B2 (en) 2009-02-17 2013-09-03 Hitachi, Ltd. Storage controller and method of controlling storage controller
US8285943B2 (en) 2009-06-18 2012-10-09 Hitachi, Ltd. Storage control apparatus and method of controlling storage control apparatus
US20110153969A1 (en) * 2009-12-18 2011-06-23 William Petrick Device and method to control communications between and access to computer networks, systems or devices
US8489918B2 (en) 2010-04-21 2013-07-16 Hitachi, Ltd. Storage system and ownership control method for storage system
US8412892B2 (en) 2010-04-21 2013-04-02 Hitachi, Ltd. Storage system and ownership control method for storage system
US20140136740A1 (en) * 2011-06-29 2014-05-15 Hitachi, Ltd. Input-output control unit and frame processing method for the input-output control unit
KR20190086177A (ko) * 2018-01-12 2019-07-22 에스케이하이닉스 주식회사 컨트롤러 및 그것의 동작방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0554005A (ja) * 1991-08-23 1993-03-05 Kyocera Corp マルチプロセツサシステム
US5577204A (en) 1993-12-15 1996-11-19 Convex Computer Corporation Parallel processing computer system interconnections utilizing unidirectional communication links with separate request and response lines for direct communication or using a crossbar switching device
JP3772369B2 (ja) * 1995-11-20 2006-05-10 株式会社日立製作所 記憶サブシステム
JP3657428B2 (ja) * 1998-04-27 2005-06-08 株式会社日立製作所 記憶制御装置
JP4123621B2 (ja) * 1999-02-16 2008-07-23 株式会社日立製作所 主記憶共有型マルチプロセッサシステム及びその共有領域設定方法
JP4309508B2 (ja) * 1999-03-25 2009-08-05 コニカミノルタビジネステクノロジーズ株式会社 Dma制御装置
JP3769413B2 (ja) * 1999-03-17 2006-04-26 株式会社日立製作所 ディスクアレイ制御装置
JP4053208B2 (ja) * 2000-04-27 2008-02-27 株式会社日立製作所 ディスクアレイ制御装置
JP3426223B2 (ja) * 2000-09-27 2003-07-14 株式会社ソニー・コンピュータエンタテインメント マルチプロセッサシステム、データ処理システム、データ処理方法、コンピュータプログラム
JP2004110503A (ja) 2002-09-19 2004-04-08 Hitachi Ltd 記憶制御装置、記憶システム、記憶制御装置の制御方法、チャネル制御部、及びプログラム
JP4112954B2 (ja) * 2002-11-21 2008-07-02 株式会社日立製作所 磁気ディスク記憶制御装置
US7028147B2 (en) * 2002-12-13 2006-04-11 Sun Microsystems, Inc. System and method for efficiently and reliably performing write cache mirroring
JP2004227098A (ja) 2003-01-20 2004-08-12 Hitachi Ltd 記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置

Also Published As

Publication number Publication date
JP2006285778A (ja) 2006-10-19
EP1708076A1 (de) 2006-10-04
DE602005004508D1 (de) 2008-03-13
US20060236052A1 (en) 2006-10-19
US7395392B2 (en) 2008-07-01
EP1708076B1 (de) 2008-01-23
JP4794194B2 (ja) 2011-10-19

Similar Documents

Publication Publication Date Title
DE602005004508T2 (de) Speichersystem und Speichersteuerverfahren
DE3908459C2 (de) Netzwerkserver
DE69724846T2 (de) Mehrweg-Ein/Ausgabespeichersysteme mit Mehrweg-Ein/Ausgabeanforderungsmechanismus
DE69929095T2 (de) Verwaltung eines durch eine Mehrzahl von Knoten benutzten Betriebsmittels
DE69636663T2 (de) System und Verfahren zur Zugriffsverteilung von Mehrfachspeichermatrixen zwischen Mehrfachwirtrechnersystemen
DE2856483C2 (de)
DE60216001T2 (de) Automatischer Lastausgleich in Vermittlungsknoten
DE69533230T2 (de) Verfahren und vorrichtung zur verbesserung der fehlertoleranz eines netzwerkes
DE60038448T2 (de) Vorrichtung und verfahren zur hardware-ausführung oder hardware-beschleunigung von betriebssystemfunktionen
DE19605093B4 (de) Verfahren und Vorrichtung zum Einrichten und Verwalten einer Verbindung zwischen einem Client-Computersystem und jedem einer Mehrzahl von Server-Computersystemen
DE69937715T2 (de) Verbessertes Zwei-Phasen-Bindungsprotokoll
DE69733305T2 (de) System/Verfahren zur wirkungsvollen Übermittlung von Datenströmen in einem Multimediasystem
EP0807883B1 (de) Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen
DE102008055892A1 (de) Abspeichern von Abschnitten eines Datenübertragungsdeskriptors in einem gecachten und einem nicht gecachten Adressbereich
DE69935115T2 (de) Dokumenteingabesystem
DE60028793T2 (de) Skalierbarer dateiserver mit hochverfügbaren paaren
DE69907852T2 (de) Hochverfügbare asynchrone Ein/Ausgabe für gruppierte Rechnersysteme
DE19882975B4 (de) Zugreifen auf eine Nachrichtenaustauscheinheit von einem sekundären Bus aus
DE60031665T2 (de) System und verfahren zur dateienfernübertragung
DE102004003102A1 (de) System und Verfahren zum Bestimmen einer Transaktionszeitüberschreitung
DE3142504A1 (de) Mehrfachplattenspeicher-uebertragungssystem
DE60023429T2 (de) Geräteregistrierung in einem Netzwerk
DE4129412C2 (de) Verfahren zur Datenübertragung in einer Datenverarbeitungsanlage
EP1524608B1 (de) Kommunikationssystem zur Verwaltung und Bereitstellung von Daten
DE2629401C2 (de)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition