DE10116343A1 - Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk, mit einer Mehrzahl von Leitsteuereinrichtungen auf einer gemeinsamen gedruckten Schaltungsplatte - Google Patents

Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk, mit einer Mehrzahl von Leitsteuereinrichtungen auf einer gemeinsamen gedruckten Schaltungsplatte

Info

Publication number
DE10116343A1
DE10116343A1 DE10116343A DE10116343A DE10116343A1 DE 10116343 A1 DE10116343 A1 DE 10116343A1 DE 10116343 A DE10116343 A DE 10116343A DE 10116343 A DE10116343 A DE 10116343A DE 10116343 A1 DE10116343 A1 DE 10116343A1
Authority
DE
Germany
Prior art keywords
data
control devices
master
input
routing
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.)
Ceased
Application number
DE10116343A
Other languages
English (en)
Inventor
Stephen D Macarthur
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.)
EMC Corp
Original Assignee
EMC Corp
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 EMC Corp filed Critical EMC Corp
Publication of DE10116343A1 publication Critical patent/DE10116343A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0873Mapping of cache memory to specific storage devices or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/261Storage comprising a plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/281Single cache
    • 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
    • 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/0671In-line storage system
    • G06F3/0673Single storage device

Abstract

Es wird eine Systemschnittstelle angegeben, welche eine Mehrzahl von ersten Leitsteuereinrichtungen und einen Querschienenschalter enthält, welcher Eingangs-/Ausgangsanschlüsse, die mit den ersten Leitsteuereinrichtungen auf der betreffenden einen der ersten Leitsteuereinrichtungs-Schaltungsplatten verbunden sind, und ein Paar von Ausgangs-/Eingangsanschlüssen aufweist. Ferner ist eine Mehrzahl von zweiten Leitsteuereinrichtungs-Schaltungsplatten vorgesehen. Jede der zweiten Leitsteuereinrichtungs-Schaltungsplatten hat eine Mehrzahl von zweiten Leitsteuereinrichtungen und einen Querschienenschalter mit Eingangs-/Ausgangsanschlüssen, welche mit den zweiten Leitsteuereinrichtungen auf der betreffenden einen der zweiten Leitsteuereinrichtungs-Schaltungsplatten gekoppelt sind, und mit einem Paar von Ausgangs-/Eingangsanschlüssen. Weiterhin ist ein Datenübertragungsabschnitt mit einem Cache-Speicher vorgesehen. Der Cache-Speicher ist mit der Mehrzahl von ersten und zweiten Leitsteuereinrichtungen gekoppelt. Des ferneren ist ein Nachrichtenübertragungsnetzwerk vorgesehen, welches unabhängig von dem Datenübertragungsabschnitt arbeitet. Die ersten und zweiten Leitsteuereinrichtungen steuern die Übertragung von Daten zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen in Abhängigkeit von Nachrichten, die zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen durch das Nachrichtenübertragungsnetzwerk fließen, um die ...

Description

Hintergrund der Erfindung
Die vorliegende Erfindung betrifft allgemein Datenspeichersysteme und, genauer gesagt, Datenspeichersysteme mit Redundanzvorkehrungen zum Schutz gegen einen totalen Systemausfall bei einem Ausfall einer Komponente oder einer Unteranordnung des Speichersystems.
Es ist im Stande der Technik bekannt, daß große Host-Computer und Server (nachfolgend zusammengefaßt als "Host-Computer/Server" bezeichnet) Datenspeichersysteme großer Kapazität benötigen. Diese großen Host-Computer/Server enthalten im allgemeinen Datenprozessoren, welche viele Operationen an Daten durchführen, die den Host-Computern/Servern über periphere Einrichtungen einschließlich des Datenspeichersystems zugeführt werden. Die Ergebnisse dieser Operationen werden zu peripheren Geräten einschließlich des Datenspeichersystems ausgegeben.
Eine Art von Datenspeichersystem ist ein Magnetplatten-Speichersystem. Hier ist eine Reihe von Plattenlaufwerken mit dem Host-Computer/Server über eine Schnittstelle gekoppelt. Die Schnittstelle enthält frontseitige oder Host- Computer/Server-seitige Leitersteuereinrichtungen und rückseitige oder plattenlaufwerkseitige Leitsteuereinrichtungen. Die Schnittstelle betätigt die Leitsteuereinrichtungen in solcher Weise, daß sie für den Host-Computer/Server gleichsam transparent sind. Das bedeutet, es werden Daten in die Reihe von Plattenlaufwerken eingespeichert und von ihnen entnommen, derart, daß der Host- Computer/Server gleichsam denkt, er arbeitet mit seinem eigenen Plattenlaufwerk. Ein derartiges System ist in dem US-Patent 5,206,939 beschrieben, welches den Titel "System and Method for Disk Mapping and Data Retrieval" hat, Erfinder Moshe Yanai, Natan Vishlitzky, Bruno Alterescu und Daniel Castel, erteilt am 27. April 1993 und auf den Zessionar der vorliegenden Erfindung übertragen.
Wie in dem genannten US-Patent beschrieben ist, kann die Schnittstelle auch, zusätzlich zu den Host-Computer/Server-Leitsteuereinrichtungen und den Plattenlaufwerk-Leitsteuereinrichtungen, adressierbare verborgene Speicher oder Cache-Speicher enthalten. Der Cache-Speicher ist ein Halbleiterspeicher und ist so ausgebildet, daß er rasch Daten von dem Host-Computer/Server vor der Einspeicherung in die Plattenlaufwerke speichern kann und, andererseits, Daten von den Plattenlaufwerken vor der Absendung zu dem Host-Computer/Server speichern kann. Der Cache-Speicher ist ein Halbleiterspeicher im Unterschied von einem magnetischen Speicher wie im Falle der Plattenlaufwerke, und arbeitet daher bedeutend schneller als die Plattenlaufwerke bezüglich des Herauslesens oder Einschreibens von Daten.
Die Host-Computer/Server-Leitsteuereinrichtungen, die Plattenlaufwerk- Leitsteuereinrichtungen und der Cache-Speicher sind über eine Hintergrundebenen- Printplatte miteinander verbunden. Genauer gesagt, die plattenlaufwerkseitigen Leitsteuereinrichtungen sind auf Printplatten für plattenlaufwerkseitige Leitsteuereinrichtungen angeordnet. Die Host-Computer/Server-Leitsteuereinrichtungen sind auf Printplatten für Host-Computer/Server-Leitsteuereinrichtungen angeordnet. Schließlich sind die Cache-Speicher auf Printplatten für solche Cache-Speicher angeordnet. Die Printplatten für die plattenlaufwerkseitigen Leitsteuereinrichtungen, für die Host-Computer/Server-Leitsteuereinrichtungen und für den Cache-Speicher sind in die Hintergrundebenen-Printplatte eingesteckt. Um eine Datenunversehrtheit im Falle des Ausfalles in einer Leitsteuereinrichtung zu garantieren, weist die Hintergrundebenen-Printplatte ein Paar von Sammelschienen oder Bussen auf. Eine Gruppe von plattenlaufwerkseitigen Leitsteuereinrichtungen ist mit einem Bus verbunden und eine andere Gruppe von plattenlaufwerkseitigen Leitsteuereinrichtungen ist mit dem anderen Bus verbunden. In ganz entsprechender Weise ist eine Gruppe von Host-Computer/Server-Leitsteuereinrichtungen mit einem Bus verbunden und eine andere Gruppe von Host-Computer/Server-Leitsteuereinrichtungen ist mit dem anderen Bus verbunden. Die Cache-Speicher sind mit beiden Bussen verbunden. Jeder Bus der Busse liefert Daten-, Adressen- und Steuerinformationen.
Die Schaltungsanordnung ist schematisch in Fig. 1 dargestellt. Die Verwendung von zwei Bussen B1 und B2 bietet also einen Grad von Redundanz zum Schutz gegen einen Gesamtausfall des Systems im Falle eines Fehlers der Leitsteuereinrichtungen oder der Plattenlaufwerke, die mit einem Bus verbunden sind. Weiter erhöht die Verwendung von zwei Bussen die Bandbreite des Datentransfers des Systems im Vergleich zu einem System mit einem einzigen Bus. Wenn also im Betrieb der Host- Computer/Server 12 Daten zu speichern wünscht, dann gibt der Host- Computer/Server 12 eine Schreibanfrage an eine der frontseitigen Leitsteuereinrichtungen 14 (d. h., der Host-Computer/Server-Leitsteuereinrichtungen) aus, um einen Schreibbefehl zu bewirken. Eine der frontseitigen Leitsteuereinrichtungen 14 antwortet auf die Anfrage und fordert von dem Host- Computer/Server 12 Daten an. Nachdem die Anforderung zu der anfragenden Einrichtung der frontseitigen Leitsteuereinrichtungen 14 gelangt ist, bestimmt die Leitsteuereinrichtung 14 die Größe der Daten und reserviert Speicherraum in dem Cache-Speicher 18, um die Anforderung zu speichern. Die frontseitige Leitsteuereinrichtung 14 erzeugt dann Steuersignale auf einem der Speicheradressenbusse B1, B2, die mit dieser frontseitigen Leitsteuereinrichtung 14 verbunden sind, um die Übertragung an den Cache-Speicher 18 zu ermöglichen. Der Host-Computer/Server 12 überträgt dann die Daten an die frontseitige Leitsteuereinrichtung 14. Die frontseitige Leitsteuereinrichtung 14 benachrichtigt darauf den Host-Computer/Server 12, daß die Übertragung vollendet ist. Die frontseitige Leitsteuereinrichtung 14 sieht nun in einer nicht dargestellten Tabelle, welche in dem Cache-Speicher 18 gespeichert ist, nach, um festzustellen, welche der rückseitigen Leitsteuereinrichtungen 20 (d. h., die plattenlaufwerkseitigen Leitsteuereinrichtungen) die genannte Anfrage handhaben soll. In der Tabelle sind die Adressen des Host- Computer/Server 12 mit einer Adresse in der Reihe 14 von Plattenlaufwerken in Beziehung gesetzt. Die frontseitige Leitsteuereinrichtung 14 setzt dann einen Hinweis in eine Mailbox (nicht dargestellt, in dem Cache-Speicher 18 gespeichert) für die rückseitige Leitsteuereinrichtung 20, welche die betreffende Anfrage handhaben soll, bezüglich des Datenumfanges und der Plattenadresse für die Daten. Andere rückseitige Leitsteuereinrichtungen 20 wählen den Cache-Speicher 18 an, wenn sie sich im Leerlauf befinden, um ihre Mailboxen zu überprüfen. Wenn die angewählte Mailbox anzeigt, daß ein Datentransfer durchgeführt werden soll, dann bearbeitet die rückwärtige Leitsteuereinrichtung 20 die Anfrage, adressiert das Plattenlaufwerk in der Reihe 22 von Plattenlaufwerken, liest die Daten aus dem Cache-Speicher 18 und schreibt sie in die Adressen eines Plattenlaufwerks in der Reihe 22 ein.
Wenn Daten von einem Plattenlaufwerk in der Reihe 22 zu dem Host- Computer/Server 12 hin ausgelesen werden sollen, dann arbeitet das System in der umgekehrten Weise. Genauer gesagt wird während einer Leseoperation eine Leseanforderung durch den Host-Computer/Server 12 für Daten an bestimmten Speicherplätzen (d. h., ein angeforderter Datenblock) gemacht. Eine der frontseitigen Leitsteuereinrichtungen 14 empfängt die Leseanforderung und untersucht den Cache- Speicher 18, um festzustellen, ob der angeforderte Datenblock in dem Cache- Speicher 18 gespeichert ist. Wenn der angeforderte Datenblock sich in dem Cache- Speicher 18 befindet, dann wird der angeforderte Datenblock aus dem Cache- Speicher 18 herausgelesen und zu dem Host-Computer/Server 12 übertragen. Wenn die frontseitige Leitsteuereinrichtung 14 feststellt, daß sich der angeforderte Datenblock nicht in dem Cache-Speicher 18 befindet (d. h., eine sogenannte Cache-Speicher- Fehlanzeige), dann schreibt die Leitsteuereinrichtung 14 einen Hinweis in den Cache- Speicher 18 (d. h., in die Mailbox), daß sie den angeforderten Datenblock benötigt. Die rückseitigen Leitsteuereinrichtungen 20 wählen den Cache-Speicher 18 an, um festzustellen, ob eine Maßnahme zu ergreifen ist (d. h., eine Leseoperation bezüglich des angeforderten Datenblockes). Diejenige der rückwärtigen Leitsteuereinrichtungen 20, welche den Cache-Speicher 18 bezüglich seiner Mailbox anwählt und eine Leseoperation feststellt, liest den angeforderten Datenblock heraus und löst die Speicherung des angeforderten Datenblockes, der im Cache-Speicher 18 gespeichert ist, aus. Wenn die Speicherung in dem Cache-Speicher 18 vervollständigt ist, dann wird eine Lesevervollständigungsanzeige in die Mailbox des Cache- Speichers 18 gesetzt. Es sei darauf hingewiesen, daß die frontseitigen Leitsteuereinrichtungen 14 den Cache-Speicher 18 nach Lesevervollständigungsanzeigen abfragen. Wenn die Abfrage durch eine der frontseitigen Leitsteuereinrichtungen 14 eine Lesevervollständigungsanzeige ergibt, dann vervollständigt diese frontseitige Leitsteuereinrichtung 14 die Übertragung der angeforderten Daten, welche nun in dem Cache-Speicher 18 gespeichert sind, zu dem Host-Computer/Server 12 hin.
Die Verwendung von Mailboxen und das Anwählen erfordert Zeit für die Übertragung von Daten zwischen dem Host-Computer/Server 12 und der Reihe 22 von Plattenlaufwerken und vermindert daher die Betriebsbandbreite der Schnittstelle.
Zusammenfassung der Erfindung
Gemäß der vorliegenden Erfindung wird eine Systemschnittstelle geschaffen. Diese enthält eine Mehrzahl von ersten Leitsteuereinrichtungs-Schaltungsplatten. Jede der ersten Leutsteuereinrichtungs-Schaltungsplatten weist folgendes auf: i) eine Anzahl erster Leitsteuereinrichtungen; und ii) einen Querschienenschalter mit Eingangs- /Ausgangsanschlüssen, die mit den ersten Leitsteuereinrichtungen auf der betreffenden der ersten Leitsteuereinrichtungs-Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs-/Eingangsanschlüssen. Eine Anzahl zweiter Leitsteuereinrichtungs- Schaltungsplatten ist ebenfalls vorgesehen. Jede der zweiten Leitsteuereinrichtungs- Schaltungsplatten weist folgendes auf: i) eine Anzahl von zweiten Leitsteuereinrichtungen; und ii) einen Querschienenschalter mit Eingangs- /Ausgangsanschlüssen, welche mit den zweiten Leitsteuereinrichtungen auf der betreffenden der zweiten Leitsteuereinrichtungs-Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs-/Eingangsanschlüssen. Weiter ist ein Datenübertragungsabschnitt mit einem Cache-Speicher vorgesehen. Der Cache-Speicher ist mit der Anzahl von ersten und zweiten Leitsteuereinrichtungen gekoppelt. Ein Nachrichtenübertragungsnetzwerk ist außerdem vorgesehen und arbeitet unabhängig von dem Datenübertragungsabschnitt. Die ersten und zweiten Leitsteuereinrichtungen steuern die Ubertragung von Daten zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen in Abhängigkeit von Nachrichten, die zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen über das Nachrichtenübertragungsnetzwerk fließen, um die Datenübertragung zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen zu erleichtern. Die Daten fließen durch den Cache-Speicher in dem Datenübertragungsabschnitt.
In einer Ausführungsform enthält jede der Leitsteuereinrichtungen folgendes: eine Datenpipeline, welche zwischen einen Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und dem Cache-Speicher geschaltet ist; und eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen.
Auch enthält in einer Ausführungsform jede der ersten Leitsteuereinrichtungen eine Datenpipeline, die zwischen einem Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; einen Mikroprozessor; und eine Steuereinrichtung, die mit dem Mikroprozessor und der Datenpipeline gekoppelt ist, um die Übertragung von Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen zu steuern und um die Daten zwischen dem Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und dem Cache-Speicher zu leiten.
Kurze Beschreibungen der Zeichnungen
Diese und weitere Merkmale der Erfindung ergeben sich noch deutlicher aus der folgenden detaillierten Beschreibung unter Bezugnahme auf die begleitenden Zeichnungen. In diesen stellen dar:
Fig. 1 ein Blockschaltbild eines Datenspeichersystems nach dem Stande der Technik;
Fig. 2 ein Blockschaltbild eines Datenspeichersystems gemäß der vorliegenden Erfindung;
Fig. 2A die Felder eines instruktionsbeschreibenden Teiles in der Systemschnittstelle des Datenspeichersystems nach Fig. 2;
Fig. 2B die Felder eines MAC-Paketes, wie es in der Systemschnittstelle des Datenspeichersystems nach Fig. 2 verwendet wird;
Fig. 3 eine schaubildliche Darstellung eines elektrischen Gehäuseteils mit einer Systemschnittstelle, wie sie in dem Datenspeichersystem nach Fig. 2 verwendet wird;
Fig. 4 eine schematische perspektivische Darstellung der Printplatten, welche die Systemschnittstelle des Datenspeichersystems nach Fig. 2 bilden;
Fig. 5 ein Blockschaltbild der Systemschnittstelle für das Datenspeichersystem nach Fig. 2;
Fig. 6 ein Blockschaltbild, das die Verbindungen zwischen den frontseitigen und rückseitigen Leitsteuereinrichtungen zu einem eines Paares von Nachrichtenübertragungsnetzwerk- Schaltungsplatten zeigt, die in der Systemschnittstelle des Datenspeichersystems nach Fig. 2 verwendet werden;
Fig. 7 ein Blockschaltbild einer beispielsweise herausgegriffenen Leitsteuereinrichtungs-Printplatte in der Systemschnittstelle des Datenspeichtersystems nach Fig. 2;
Fig. 8 ein Blockschaltbild der Systemschnittstelle, die in dem Datenspeichersystem nach Fig. 2 verwendet wird;
Fig. 8A ein Diagramm eines Beispiels der Printplatte des globalen Cache- Speichers zur Verwendung in der Systemschnittstelle von Fig. 8;
Fig. 8B ein Diagramm eines Paares von Leitsteuereinrichtungs- Printplatten, die zwischen ein Paar von Host-Prozessoren und Printplatten für den globalen Cache-Speicher gekoppelt sind, für die Systemschnittstelle von Fig. 8;
Fig. 8C ein Blockschaltbild eines Beispiels eines Querschienenschalters zur Verwendung in den frontseitigen und rüchseitigen Leitsteuereinrichtungen für die Systemschnittstelle von Fig. 8;
Fig. 9 ein Blockschaltbild einer Sendeeinrichtung für direkten Speicherzugriff(DMA) für die Systemschnittstelle von Fig. 8;
Fig. 10 ein Blockschaltbild einer Empfangseinrichtung für direkten Speicherzugriff(DMA) für die Systemschnittstelle von Fig. 8;
Fig. 11 eine Darstellung für die gegenseitige Lagebeziehung der Fig. 11A und 11B;
Fig. 11A und Fig. 11B in Zusammenschau eine Darstellung eines Flußdiagramms für die Sendeoperation eines Nachrichtenübertragungsnetzwerks, welches in der Systemschnittstelle von Fig. 8 verwendet wird;
Fig. 11C bis Fig. 11E Beispiele von Digitalwörtern die in dem Nachrichtenübertragungsnetzwerk der Systemschnittstelle von Fig. 8 verwendet werden;
Fig. 11F die Darstellung von Bits in einer Maske, die in dem Nachrichtenübertragungsnetzwerk verwendet wird;
Fig. 11G das Ergebnis der Maske von Fig. 11F in Anwendung auf die Digitalwörter, die in Fig. 11E dargestellt sind;
Fig. 12 eine Darstellung zur Erläuterung der Lagebeziehung zwischen den Fig. 12A und 12B;
Fig. 12A und Fig. 12B ein Verfahrens-Flußdiagramm der Empfangsoperation eines Nachrichtenübertragungsnetzwerkes in der Systemschnittstelle von Fig. 8;
Fig. 13 ein Flußdiagramm einer Bestätigungsoperation eines Nachrichtenübertragungsnetzwerkes in der Systemschnittstelle von Fig. 8;
Fig. 14A und Fig. 14B Verfahrens-Flußdiagramme einer Sendeoperation für direkten Speicherzugriff für die Sendeeinrichtungen des DMA von Fig. 9; und
Fig. 15A und Fig. 15B Verfahrens-Flußdiagramme einer Empfangsoperation für direkten Speicherzugriff für die Empfangseinrichtung für direkten Speicherzugriff DMA von Fig. 10.
Detaillierte Beschreibung
Es sei nun auf Fig. 2 Bezug genommen. Hier ist ein Datenspeichersystem 100 zur Übertragung von Daten zwischen einen Host-Computer/Server 120 und einer Reihe von Plattenlaufwerken 150 über eine Systemschnittstelle 160 gezeigt. Die Systemschnittstelle 160 enthält folgendes:
eine Anzahl von vorliegend 32 frontseitigen Steuereinrichtungen 180 1-180 32, welche mit dem Host-Computer/Server 120 über Anschlüsse 123 1-123 32 gekoppelt sind;
eine Anzahl von rückseitigen Leitsteuereinrichtungen 200 1-200 32, welche mit der Reihe von Plattenlaufwerken 140 über Anschlüsse 123 33-123 64 gekoppelt sind;
einen Datenübertragungsabschnitt 140, welcher einen globalen Cache- Speicher 220 aufweist, der mit der Anzahl von frontseitigen Leitsteuereinrichtungen 180 1-180 32 und mit der Anzahl von rückseitigen Leitsteuereinrichtungen 200 1-200 32 gekoppelt ist; und
ein Nachrichtenübertragungsnetzwerk 216, das unabhängig von dem Datenübertragungsabschnitt 240 arbeitet und mit der Anzahl von frontseitigen Leitsteuereinrichtungen 180 1-180 32 und der Anzahl von rückseitigen Leitsteuereinrichtungen 200 1-200 32 in der dargestellten Weise gekoppelt ist.
Die frontseitigen und rückseitigen Leitsteuereinrichtungen 180 1-180 32 bzw. 200 1 -200 32 sind funktionell gleich und enthalten einen Mikroprozessor (µP) 299 (d. h., eine zentrale Prozessoreinheit CPU und einen RAM-Speicher), eine Nachrichtenmaschine/CPU-Steuereinheit 314 und eine Datenpipeline 316, welche weiter unten im einzelnen mit den Fig. 5, 6 und 7 beschrieben werden. Es genügt hier im einzelnen jedoch die Feststellung, daß die frontseitigen und rückseitigen Leitsteuereinrichtungen 180 1-180 32 bzw. 200 1-200 32 die Datenübertragung zwischen dem Host-Computer/Server 120 und der Reihe von Plattenlaufwerken 140 in Abhängigkeit von Nachrichten steuern, die zwischen den Leitsteuereinrichtungen 180 1-180 32 und 200 1-200 32 über das Nachrichtenübertragungsnetzwerk 260 geführt werden. Die Nachrichten erleichtern den Nachrichtentransfer zwischen dem Host- Computer/Server 120 und der Reihe von Plattenlaufwerken 140, wobei diese Daten über den Datenübertragungsabschnitt 240 durch den globalen Cache-Speicher 220 geführt werden. Im einzelnen ist bezüglich der frontseitigen Leitsteuereinrichtungen 180 1-180 32 zu sagen, daß die Daten zwischen dem Host-Computer/Server und dem globalen Cache-Speicher 220 über die Datenpipeline 316 in den frontseitigen Leitsteuereinrichtungen 180 1-180 32 laufen und daß die Nachrichten über die Nachrichtenmaschine/CPU-Steuereinheit 314 in diesen frontseitigen Leitsteuereinrichtungen 180 1-180 32 laufen. Im Falle der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 fließen die Daten zwischen den rückwärtigen Leitsteuereinrichtungen 200 1-200 32 und der Reihe von Plattenlaufwerken 140 sowie dem globalen Cache-Speicher 220 über die Datenpipeline 316 in den rückwärtigen Leitsteuereinrichtungen 200 1-200 32 und wieder laufen die Nachrichten über die Nachrichtenmaschine/CPU-Steuereinheit 314 in diesen rückwärtigen Leitsteuereinrichtungen 200 1-200 32.
Bei einer solchen Anordnung ist der Cache-Speicher 220 in dem Datenübertragungsabschnitt 240 nicht mit der Aufgabe der Übertragung der Leitsteuernachrichten belastet. Vielmehr arbeitet das Nachrichtenübertragungsnetzwerk 260 unabhängig von den Datenübertragungsabschnitt 240, wodurch die Betriebsbandbreite der Systemschnittstelle 160 vergrößert wird.
Es sei nun die Betriebsweise und zuerst eine Leseanforderung durch den Host- Computer/Server 120 betrachtet (d. h., der Host-Computer/Server 120 fordert Daten von der Reihe von Plattenlaufwerken 140 an). Die Anforderung wird von einer der Mehrzahl von vorliegenden 32 Host-Computer-Prozessoren 121 1-121 32 in dem Host- Computer/Server 120 zu einem oder mehreren der Anzahl von frontseitigen Leitsteuereinrichtungen 180 1-180 32 geleitet, die mit den Host-Computer- Prozessoren 121 1-121 32 verbunden sind. (Es sei hier bemerkt, daß in dem Host- Computer/Server 120 jeder der Host-Computer-Prozessoren 121 1-121 32 hier mit einem Paar (wobei keine Beschränkung auf ein Paar vorliegt) von frontseitigen Leitsteuereinrichtungen 180 1-180 32 gekoppelt ist, um eine Redundanz für den Fall eines Fehlers in einer der angeschlossenen frontseitigen Leitsteuereinrichtungen 181 1-181 32 vorzusehen. In gleicher Weise weist die Reihe von Plattenlaufwerken 140 eine Mehrzahl von vorliegend 32 Plattenlaufwerken 141 1-141 32 auf, wobei jedes Plattenlaufwerk 141 1-141 32 vorliegend mit einem Paar (es ist jedoch keine Beschränkung auf ein Paar vorgesehen) von rückwärtigen Leitsteuereinrichtung 200 1-200 32 gekoppelt ist, um eine Redundanz im Falle eines Fehlers in einer der rückwärtigen Leitsteuereinrichtungen 200 1-200 32, welche damit gekoppelt sind, vorzusehen. Jede der frontseitigen Leitsteuereinrichtungen 180 1-180 32 enthält, wie bereits angedeutet, einen Mikroprozessor (µP) 299 (d. h., eine zentrale Prozessoreinheit CPU und einen RAM- Speicher), und wird im einzelnen in Verbindung mit den Fig. 5 und 7 nachfolgend beschrieben. Es genügt hier jedoch die Feststellung, das der Mikroprozessor 299 eine Anforderung von Daten von dem globalen Cache-Speicher 220 macht. Der globale Cache-Speicher 220 enthält eine eingebaute, nicht dargestellte Cache- Handhabungstabelle. Jede Leitsteuereinrichtung 180 1-180 32 und 200 1-200 32 hat Zugriff zu der eingebauten Cache-Handhabungstabelle und jedesmal dann, wenn eine frontseitige Leitsteuereinrichtung 180 1-180 32 einen Datentransfer anfordert, muß die frontseitige Leitsteuereinrichtung 180 1-180 32 im globalen Cache-Speicher 220 anfragen, um festzustellen, ob die angeforderten Daten in dem globalen Cache- Speicher 220 vorhanden sind. Wenn die angeforderten Daten sich in dem globalen Cache-Speicher 220 befinden (d. h., es liegt ein Ableseerfolg vor), dann vermittelt die frontseitige Steuereinrichtung 180 1-180 32, genauer gesagt, der darin befindliche Mikroprozessor 299, eine Operation des direkten Speicherzugriffs (DMA) für den globalen Cache-Speicher 220, und die angeforderten Daten werden zu dem anfordernden Host-Computer-Prozessor 121 1-121 32 übertragen.
Wenn andererseits die jeweilige frontseitige Leitsteuereinrichtung 180 1-180 32, die eine Datenanforderung empfängt, feststellt, daß die angeforderten Daten sich nicht in dem globalen Cache-Speicher 220 befinden (d. h., es handelt sich um eine Fehlanfrage), was das Ergebnis einer Nachsuchung der Cache-Handhabungstabelle in dem globalen Cache-Speicher 220 ist, so zieht die betreffende frontseitige Leitsteuereinrichtung 180 1-180 32 den Schluß, sich die angeforderten Daten in der Reihe von Plattenlaufwerken 140 befinden. Somit muß die frontseitige Leitsteuereinrichtung 180 1-180 32, welche die Anfrage nach Daten empfangen hat, eine Anforderung von Daten von einer der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 machen, damit die betreffende rückwärtige Leitsteuereinrichtung 200 1-200 32 die Daten von der Reihe von Plattenlaufwerken 140 anfordert. Die Zuordnung, welche rückwärtigen Leitsteuereinrichtungen 200 1-200 32 jeweils welche Plattenlaufwerke 141 1-141 32 in der Reihe von Plattenlaufwerken 140 ansteuern, wird während einer Einschalt- Initialisierungsphase bestimmt. Die Zuordnungsaufzeichnung ist in dem globalen Cache-Speicher 220 gespeichert. Wenn also eine jeweilige frontseitige Leitsteuereinrichtung 180 1-180 32 eine Datenanforderung von dem globalen Cache- Speicher 220 macht und feststellt, daß die angeforderten Daten sich nicht in dem globalen Cache-Speicher 220 befinden (d. h., eine Fehlanfrage), dann wird die frontseitige Leitsteuereinrichtung 180 1-180 32 von dem globalen Cache-Speicher 220 auch über die rückwärtige Leitsteuereinrichtung 200 1-200 32 informiert, welche für die angeforderten Daten in der Reihe von Plattenlaufwerken 140 verantwortlich ist. Die anfragende frontseitige Leitsteuereinrichtung 180 1-180 32 muß dann eine Datenanforderung in der Reihe von Plattenlaufwerken 140 von der betreffenden, durch die Zuordnung bezeichneten rückwärtigen Leitsteuereinrichtung 200 1-200 32 machen. Diese Anfrage zwischen der betreffenden frontseitigen Leitsteuereinrichtung 180 1-180 32 und der entsprechenden der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 (entsprechend der Bestimmung der Zuordnungsaufzeichnung, welche in dem globalen Cache-Speicher 200 gespeichert ist) geschieht durch eine Nachricht, welche durch eine frontseitige Leitsteuereinrichtung 180 1-180 32 über das Nachrichtenübertragungsnetzwerk 260 zu der entsprechenden rückwärtigen Leitsteuereinrichtung 200 1-200 32 läuft. Man stellt dann fest, daß die Nachricht nicht über den globalen Cache-Speicher 220 (d. h. nicht über den Datenübertragungsabschnitt 142), sondern vielmehr durch das gesonderte, unabhängige Nachrichtenübertragungsnetzwerk 192 läuft. Demgemäß geschieht die Kommunikation zwischen den Leitsteuereinrichtungen 180 1-180 32 und 200 1-200 32 durch das Nachrichtenübertragungsnetzwerk 260 und nicht über den globalen Cache- Speicher 220. Demzufolge wird wertvolle Bandbreite für den globalen Cache- Speicher 220 nicht für die Nachrichtenübertragung zwischen den Leitsteuereinrichtungen 180 1-180 32 und 200 1-200 32 eingesetzt.
Auf eine Lese-Fehlanfrage im globalen Cache-Speicher 220 hin sendet somit die betreffende frontseitige Leitsteuereinrichtung 180 1-180 32 eine Nachricht an die entsprechende der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 über das Nachrichtenübertragungsnetzwerk 260, um diese rückwärtige Leitsteuereinrichtung 200 1-200 32 dahingehend zu instruieren, die angeforderten Daten von der Reihe von Plattenlaufwerken 140 zu dem globalen Cache. Speicher 220 zu tragen. Ist das geschehen, dann informiert die rückwärtige Leitsteuereinrichtung 200 1-200 32 die anfragende der frontseitigen Leitsteuereinrichtungen 180 1-180 32 dahingehend, daß die Übertragung stattgefunden hat, was durch eine Nachricht geschieht, die von der rückwärtigen Leitsteuereinrichtung 200 1-200 32 zu der frontseitigen Leitsteuereinrichtung 180 1-180 32 über das Nachrichtenübertragungsnetzwerk 260 fließt. In Entsprechung mit dem Bestätigungssignal ist die frontseitige Leitsteuereinrichtung 180 1-180 32 somit darüber informiert, das diese frontseitige Leitsteuereinrichtung 180 1-180 32 die Daten von dem globalen Cache-Speicher 220 zu dem anfragenden Host-Computer-Prozessor 121 1-121 32 übertragen kann, wie oben für den Fall beschrieben wurde, in welchem in dem Cache-Speicher ein Ablesungstreffer erzielt wurde.
Es sei bemerkt, daß eine oder mehrere rückwärtige Leitsteuereinrichtungen 200 1-200 32 für die angeforderten Daten verantwortlich sein können. Ist nur eine rückwärtige Leitsteuereinrichtung 200 1-200 32 für die angeforderten Daten verantwortlich, dann sendet die anfragende frontseitige Leitsteuereinrichtung 180 1-180 32 über das Nachrichtenübertragungsnetzwerk 260 nur eine einschichtige Nachricht an die betreffende spezifische der rückwärtigen Leitsteuereinrichtungen 200 1-200 32. Wenn andererseits mehr als eine rückwärtige Leitsteuereinrichtung 200 1-200 32 für die angeforderten Daten verantwortlich ist, dann wird von der anfordernden der frontseitigen Leitsteuereinrichtungen 180 1-180 32 eine gleichsam mehrschichtige Nachricht (hier durch eine Reihe von einschichtigen Nachrichten verwirklicht) an alle solche der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 ausgesandt, welche für die angeforderten Daten eine Verantwortlichkeit haben. In jedem Falle, d. h. sowohl bei einschichtiger als auch bei mehrschichtigen Nachricht, laufen diese Nachrichten über das Nachrichtenübertragungsnetzwerk 260 und nicht über den Datenübertragungsabschnitt 240 (d. h., nicht über den globalen Cache-Speicher 220).
In gleicher Weise ist festzustellen, daß zwar einer der Host-Computer- Prozessoren 121 1-121 32 Daten anfordern kann, daß aber das Bestätigungssignal zu dem anfragenden Host-Computer-Prozessor 121 1 oder zu einem oder mehreren anderen Host-Computer-Prozessoren 121 1-121 32 mittels einer vielschichtigen Nachricht (d. h., einer Serie von einschichtigen Nachrichten) über das Nachrichtenübertragungsnetzwerk 260 gesendet werden kann, um den Datenlesevorgang zu vollenden.
Es sei nun eine Einschreiboperation betrachtet. Der Host-Computer/Server 120 wünscht beispielsweise Daten in einem Speicher (d. h. in die Reihe von Plattenlaufwerken 140) einzuschreiben. Eine der frontseitige Steuereinrichtungen 180 1-180 32 empfängt die Daten von dem Host-Computer/Server 120 und schreibt sie in den globalen Cache-Speicher ein. Die jeweilige frontseitigen Leitsteuereinrichtung 180 1-180 32 fordert dann die Übertragung dieser Daten nach einer bestimmten Zeitdauer, wenn die rückwärtige Leitsteuereinrichtung 200 1-200 32 festgestellt hat, daß die Daten aus dem Cache-Speicher 220 entfernt werden können und in die Reihe von Plattenlaufwerken 140 eingespeichert werden können. Bevor die Übertragung zu der Reihe von Plattenlaufwerken 140 erfolgt, werden die Daten in dem Cache-Speicher 220 durch ein Bit als "frische Daten" (d. h., Daten, welche nicht zu der Reihe von Plattenlaufwerken 140 übertragen worden waren, d. h. Daten, welche auf die Einschreibung warten) gekennzeichnet. Wenn somit mehrfache Schreibanfragen für denselben Speicherplatz in dem globalen Cache-Speicher 220 (beispielsweise ein bestimmtes Bankkonto) existieren, bevor eine Übertragung zu der Reihe von Plattenlaufwerken 140 stattfinden, so werden die Daten in dem Cache-Speicher 220 mit den jüngsten Daten überschrieben. Jedesmal dann, wenn Daten zu den globalen Cache- Speicher 220 übertragen werden, informiert die betreffende frontseitige Leitsteuereinrichtung 180 1-180 32, welche die Übertragung steuert, auch den Host- Computer/Server 120, daß die Übertragung abgeschlossen ist, um dadurch den Host- Computer/Server 120 für weitere Datenübertragungen freizumachen.
Wenn es an der Zeit ist, die Daten im globalen Cache-Speicher 220 an die Reihe von Plattenlaufwerken 140 zu übertragen, wie dies durch die betreffende rückwärtige Leitsteuereinrichtung 200 1-200 32 bestimmt wird, dann überträgt die rückwärtige Leitsteuereinrichtung 200 1-200 32 die Daten von dem globalen Cache-Speicher 220 an die Reihe von Plattenlaufwerken 140 und bewirkt eine Rückstellung der Kennzeichnung, welche den Daten in dem lokalen Cache-Speicher 220 gegeben war (d. h., befreit die Daten von der Kennzeichnung), um anzuzeigen, daß die Daten im globalen Cache-Speicher 220 zu der Reihe von Plattenlaufwerken 140 übertragen worden sind. Es sei bemerkt, daß die von der Kennzeichnung befreiten Daten in dem globalen Cache-Speicher 220 bleiben, bis sie von neuen Daten überschrieben werden.
Es seien nun die Fig. 3 und 4 betrachtet. Die Systemschnittstelle 160 enthält, wie dargestellt, ein elektrisches Gehäuse 300, in dem folgendes untergebracht ist:
eine Mehrzahl von vorliegend 8 frontseitigen Leitsteuereinrichtungs- Schaltungsplatten 190 1-190 8, von denen jede im vorliegenden Beispiel 4 der frontseitigen Leitsteuereinrichtungen 180 1-180 32 aufweist;
eine Anzahl von vorliegend 8 rückwärtigen Leitsteuer-Schaltungsplatten 210 1-210 8, von denen jede im vorliegenden Beispiel 4 der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 aufweist; und
eine Anzahl von vorliegend 8 Speicher-Schaltungsplatten 220', die zusammen den globalen Cache-Speicher 220 bilden. Diese Schaltungsplatten sind in die Frontseite einer Hintergrund-Schaltungsplatte 302 eingesteckt. (Es sei bemerkt, daß die Hintergrund-Schaltungsplatte 302 eine gedruckte Mittelebenen- Schaltungsträgerplatte ist.) In die Rückseite der Hintergrund- Schaltungsträgerplatte 302 sind Nachrichtenübertragungsnetzwerk- Schaltungsplatten 304 1, 304 2 eingesteckt. Die Rückseite der Hintergrundebenen- Schaltungsplatte 302 ist mit in den Fig. 2-4 nicht dargestellten, eingesteckten Adapter-Schaltungsplatten versehen, welche die Schaltungsplatten, die in die Rückseite der Hintergrund-Schaltungsträgerplatte 302 gesteckt sind, mit dem Host-Computer/Server 120 und der Reihe von Plattenlaufwerken 140 entsprechend Fig. 2 koppeln. Das bedeutet, und hier sei wieder kurz auf Fig. 2 Bezug genommen, daß ein Eingangs-/Ausgangs-Adapter (nicht dargestellt) zwischen jede der frontseitigen Leitsteuereinrichtungen 180 1-180 32 und den Host-Computer/Server 120 geschaltet ist und daß ein Eingangs-/Ausgangs- Adapter (ebenfalls nicht dargestellt) zwischen jede der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 und die Reihe von Plattenlaufwerke 140 gekoppelt ist.
Es sei nun auf Fig. 5 Bezug genommen. Hier ist die Systemschnittstelle 160 gezeigt, welche die Leitsteuereinrichtungs-Schaltungsplatten 190 1 bis 190 8, 210 1-210 8 und den globalen Cache-Speicher 220 enthält, welche in die Hintergrundebenenplatte 302 eingesteckt sind, sowie die Plattenlaufwerke 141 1-141 32 in der Reihe von Plattenlaufwerken zusammen mit dem Host-Computer/Server 120, welche ebenfalls in die Hintergrundebenenplatte 302 über nicht dargestellte Eingangs-/Ausgangs- Adapterplatten eingesteckt sind, welche nicht dargestellt sind. Das Nachrichtenübertragungsnetzwerk 260 (Fig. 2) enthält die Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1 und 304 2. Jede der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1 und 304 2 hat jeweils identischen Aufbau wie die jeweils andere Platte. Ein Paar von Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1 und 304 2 dient zur Schaffung einer Redundanz und zum Ausgleichen der Nachrichtenbelastung. Jede Nachrichtenübertragungsnetzwerk-Schaltungsplatte 304 1 und 304 2 enthält somit eine Steuereinrichtung 306 (d. h., einen Initialisierungs- und Diagnoseprozessor mit einer CPU, einer Systemsteuerschnittstelle und einem Speicher, wie in Fig. 6 für eine der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2, vorliegend für die Platte 304 1 gezeigt ist), und einen Querschienen-Schaltabschnitt 308 (beispielsweise ein Schaltnetz, das aus vorliegend 4 Schaltern 308 1-308 4 besteht, auf.
Es sei wiederum auf Fig. 5 Bezug genommen. Jede der Leitsteuereinrichtungs- Schaltungsplatten 190 1-190 8, 210 1-210 8 enthält, wie oben angemerkt, 4 der Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 (Fig. 2). Es ist festzustellen, daß die Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8 vier frontseitige Leitsteuereinrichtungen je Schaltungsplatte umfassen, wobei die Leitsteuereinrichtungen 180 1-180 32 die frontseitigen Steuereinrichtungen sind, und daß die Leitsteuereinrichtungs-Schaltungsplatten 210 1-210 8 vier rückwärtige Leitsteuereinrichtungen je Schaltungsplatte umfassen, wobei die Leitsteuereinrichtungs- Schaltungsplatten 210 1-210 32 die rückwärtigen Leitsteuereinrichtungen sind. Jede der Leitsteuereinrichtungen 180 1-180 32, 210 1-210 32, enthält eine CPU 310, einen RAM- Speicher 312 (welche den oben erwähnten Mikroprozessor 290 bilden können), die Nachrichtenmaschine/CPU, Steuereinrichtung 310 und die Datenpipeline 316.
Jede der Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8, 210 1-210 8 enthält einen Querschienenschalter 318. Der Querschienenschalter 318 hat vier Eingangs- /Ausgangsanschlüsse 319, von denen jeder mit der Datenpipeline 316 einer entsprechenden der vier Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 auf der betreffenden Leitsteuereinrichtungs-Schaltungsplatte 190 1-190 8, 210 1-210 8 gekoppelt ist. Der Querschienenschalter 318 hat acht Ausgangs-/Eingangs-Anschlüsse, welche in Fig. 5 kollektiv durch die Bezugszahl 321 bezeichnet sind (und welche in die Rückebenenplatte 302 eingesteckt sind). Der Querschienenschalter 318 auf den frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 191 1-191 8 dient zur Kopplung der Datenpipeline 316 mit einer ausgewählten der vier frontseitigen Leitsteuereinrichtungen 180 1-180 32 auf der frontseitigen Leitsteuereinrichtungs- Schaltungsplatte 190 1-190 8, mit dem globalen Cache-Speicher 220 über die Rückebenenplatte 302 und den nicht dargestellten Eingangs-/Ausgangs-Adapter. Der Querschienenschalter 318 auf den rückwärtigen Leitsteuereinrichtungs- Schaltungsplatten 210 1-210 8 dient zur Kopplung der Datenpipeline 316 auf einer ausgewählten der vier rückwärtigen Leitsteuereinrichtungen 200 1-200 32 auf der betreffenden rückwärtigen Leitsteuereinrichtungs-Schaltungsplatte 210 1-210 8, mit dem globalen Cache-Speicher 220 über die Rückebenenplatte 302 und den nicht dargestellten Eingangs-/Ausgangs-Adapter. Wie man somit aus Fig. 2 ersieht, koppelt die Datenpipeline 316 in den frontseitigen Leitsteuereinrichtungen 180 1-180 32 Daten zwischen dem Host-Computer/Server 120 und dem globalen Cache-Speicher 220, während die Datenpipeline 316 in den rückwärtigen Leitsteuereinrichtungen 200 1-200 32 Daten zwischen der Reihe von Plattenlaufwerken 140 und dem globalen Cache-Speicher 220 koppelt. Es sei darauf hingewiesen, daß gesonderte Punkt-zu-Punkt-Datenwege P1 bis P64 (Fig. 2) zwischen jeder der Leitsteuereinrichtungen 180 1-180 32; 200 1-200 32 und dem globalen Cache-Speicher 220 existieren. Es ist ferner darauf hinzuweisen, daß die Hintergrundebenenplatte 302 eine passive Hintergrundebene ist, da sie nur aus geätzten Leiterwegen auf einer Schicht oder mehreren Schichten einer gedruckten Schaltungsplatte aufgebaut ist. Das bedeutet, die Hintergrund-Schaltungsplatte 302 weist keinerlei aktive Komponenten auf.
Es sei wieder Fig. 5 betrachtet. Jede der Leitsteuereinrichtungs-Schaltungsplatten 90 1-90 8, 210 1-210 8 enthält einen Querschienenschalter 320. Jeder Querschienenschalter 320 hat vier Eingangs-/Ausgangsanschlüsse 323, wobei jeder der vier Eingangs-/Ausgangs-Anschlüsse 323 mit der Nachrichtenmaschine/CPU-Steuereinrichtung 314 einer entsprechenden der vier Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 auf der betreffenden Leitsteuereinrichtungs-Schaltungsplatte 190 1-190 8, 210 1-210 8 gekoppelt ist. Der Querschienenschalter 320 weist ein Paar von Ausgangs-/Eingangsanschlüssen 325 1, 325 2 auf, welche in die Hintergrundebenen-Schaltungsplatte 302 eingesteckt sind. Jeder Anschluß 325 1, 325 2 ist mit einer entsprechenden der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1 bzw. 304 2 über die Hintergrund-Schaltungsplatte 302 verbunden. Der Querschienenschalter 320 auf den frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8 dient zur Kopplung von Nachrichten zwischen der Nachrichtenmaschine/CPU-Steuereinrichtung 314 einer ausgewählten der vier frontseitigen Leitsteuereinrichtungen 180 1-180 32 auf den frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8 und dem Nachrichtenübertragungsnetzwerk 260 von Fig. 2. In gleicher Weise dienen die rückwärtigen Leitsteuereinrichtungs-Schaltungsplatten 210 1-210 8 zur Kopplung der Nachrichten, die von einer ausgewählten der vier rückwärtigen Leitsteuereinrichtungen 200 1-200 32 auf der betreffenden rückwärtigen Leitsteuereinrichtungs-Schaltungsplatte 210 1-210 8 erzeugt worden sind, zwischen der Nachrichtenmaschine/CPU-Steuereinrichtung 314 einer ausgewählten dieser vier rückwärtigen Leitsteuereinrichtungen und dem Nachrichtenübertragungsnetzwerk 260 (Fig. 2). Es sei also nochmals Fig. 2 betrachtet. Anstatt einen gesonderten zugeteilten Nachrichtenübertragungsweg zwischen jeder der Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 und dem Nachrichtenübertragungsnetzwerk 260 vorzusehen (was M einzelne Verbindungen zu der Hintergrundebenen-Schaltungsplatte 302 für jede Leitsteuereinrichtung erfordern würde, worin M eine ganze Zahl ist), werden vorliegend nur M/4 einzelne Verbindungen benötigt. Die Gesamtzahl von Verbindungen zwischen den Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 und der Hintergrundebenen- Schaltungsplatte 302 wird somit auf ein Viertel vermindert. Es sei daher unter Bezugnahme auf die Fig. 2 und 5 angemerkt, daß das Nachrichtenübertragungsnetzwerk 260 (Fig. 2) den Querschienenschalter 320 und die Nachrichtenübertragungsnetzwerk- Schaltungsplatten 304 1 und 304 2 enthält.
Jede Nachricht ist (wie in Fig. 2A dargestellt) ein 64-Byte-Beschreibungssatz oder Deskriptor, welcher durch die CPU 310 (Fig. 5) unter Softwaresteuerung erzeugt und in einer Sendezeile im RAM 312 gespeichert wird. Wenn eine Nachricht aus der Sendezeile im RAM-Speicher 312 herausgelesen und über das Nachrichtenübertragungsnetzwerk 260 (Fig. 2) zu einer oder mehreren anderen Leitsteuereinrichtungen mit einer zu schreibenden DMA-Operation übertragen werden soll, so wird sie im Paketierungsabschnitt einer Paketierungs-/Depaketierungseinheit 428 (Fig. 7) paketiert und zu einem MAC-Paket (siehe Fig. 2B) geformt, wobei hier die NGIO-Protokollspezifikation verwendet wird. Es gibt drei Arten von Datenpaketen:
ein Nachrichtenpaketabschnitt;
ein Bestätigungspaket; und
ein Nachrichtenübertragungs-Netzwerkhandhabungspaket;
wobei letzeres dazu dient, die Nachrichtenübertragungsnetzwerk-Programmierung während der Initialisierung (d. h., während des Einschaltens und des Hochfahrens) aufzubauen. Jedes der MAC-Pakete weist folgendes auf:
ein 8-Byte Kopfteil, welches die Adresse von der Quelle (d. h., einer sendenden Leitsteuereinrichtung) und eines Bestimmungsorts (d. h., einer empfangenden Leitsteuereinrichtung) angibt;
einen Nutzabschnitt; und als Abschluß 4 Bytes eines zyklischen Redundanzprüfungsvorgangs (Cyclic Redundancy Check CRC).
Wie dies in Fig. 2B gezeigt ist. Das Bestätigungspaket (d. h., das Signal) besitzt einen 4-Byte-Abschnitt einer Bestätigung des Nutzabschnittes. Das Nachrichtenpaket weist einen 32-Byte-Nutzabschnitt auf. Das Netzwerkmanagementpaket (FMP) besitzt einen Nutzabschnitt von 256 Bytes. Das MAC-Paket wird zu dem Querschienenschalter 320 geschickt. Der Bestimmungsortabschnitt des Paketes dient zur Anzeige des Bestimmungsortes für die Nachricht und wird durch den Querschienenschalter 320 decodiert, um zu bestimmen, zu welchem Anschluß die Nachricht geleitet werden soll. Der Decodierungsvorgang verwendetet eine Decodierungstabelle 327 in dem Schalter 318, wobei diese Tabelle durch die Steuereinrichtung während des Hochfahrens mittels des Initialisierungs- und Diagnose-Prozessors 306 (siehe Fig. 5) initialisiert wird. Die Tabelle 327 (siehe Fig. 7) liefert die Beziehung zwischen dem die Bestimmungsadresse enthaltenden Teil des MAC-Paketes, wobei dieser Teil die Laufroute für die Nachricht identifiziert, und derjenigen der vier Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 auf der betreffenden Leitsteuereinrichtungs-Schaltungsplatte 190 1-190 8, 210 1-210 8, oder einer der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2, zu welcher die Nachricht hingeleitet werden soll.
Bezugnehmend auf Fig. 5 ist im einzelnen festzustellen, daß ein Paar von Ausgangs-/Eingangs-Anschlüssen 325 1, 325 2 für jeden der Querschienenschalter 320 vorgesehen ist, von denen jeweils einer mit einer entsprechenden des Paares von Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 gekoppelt ist. Jede der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 hat somit sechzehn Eingangs-/Ausgangs-Anschlüsse 322 1-322 16, die jeweils mit einem entsprechenden der Ausgangs-/Eingangs-Anschlüsse 325 1, 325 2 einer entsprechenden der Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8, 210 1-210 8 über die Rückebenen- Schaltungsplatte 302 gekoppelt sind, wie dies dargestellt ist. Es sei also beispielsweise die Nachrichtenübertragungsnetzwerk-Schaltungsplatte 304 1 von Fig. 6 betrachtet. Jeder Schalter 308 1-308 4 enthält auch drei Koppelanschlüsse 324 1-324 3. Die Koppelanschlüsse 324 1-324 3 dienen zur gegenseitigen Verbindung der Schalter 322 1-322 4, wie in Fig. 6 gezeigt ist. Betrachtet man somit die Nachrichtenübertragungsnetzwerk-Schaltungsplatte 304 1, so erkennt man, daß die Eingangs-/Ausgangs-Anschlüsse 322 1-322 8 mit den Ausgangs-/Eingangs-Anschlüssen 325 1 der frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8 gekoppelt sind und das die Eingangs-/Ausgangs-Anschlüsse 321 9-322 16 mit den Ausgangs- /Eingangs-Anschlüsssen 325 1 der rückwärtigen Leitsteuereinrichtungs- Schaltungsplatten 210 1-210 8 in der dargestellten Weise gekoppelt sind. In entsprechender Weise sind, bei Betrachtung der Nachrichtennetzwerkübertragungs- Schaltungsplatte 304, deren Eingangs-/Ausgangs-Anschlüsse 321 1-322 8 über die Rückebenen-Schaltungsplatte 302 mit den Ausgangs-/Eingangs-Anschlüssen 325 2 der frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8 eingekoppelt, und die Eingangs-/Ausgangs-Anschlüsse 322 9-322 16 sind über die Hintergrundebenen- Schaltungsplatte 302 mit den Ausgangs-/Eingangs-Anschlüssen 325 2 der rückwärtigen Leitsteuereinrichtungs-Schaltungsplatten 210 1-210 18 gekoppelt. Wie oben bemerkt, enthält jede der Nachrichtennetzwerkübertragungs-Schaltungsplatten 304 1, 304 2 einen Prozessor 306 (siehe Fig. 5) und einen Querschienenschalterabschnitt 308 mit vier Schaltern 308 1-308 4, wie in Fig. 5 und 6 gezeigt ist. Die Schalter 308 1-308 4 sind in der dargestellten Weise so miteinander verbunden, daß Nachrichten zwischen einem beliebigen Paar der Eingangs-/Ausgangs-Anschlüsse 322 1-322 16 laufen können. Es folgt somit, daß eine Nachricht von irgendeiner frontseitigen Leitsteuereinrichtung 180 1-180 32 zu einer anderen der frontseitigen Leitsteuereinrichtungen 180 1-180 32 und/oder zu irgendeiner der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 überkoppelt werden können. In gleicher Weise kann einen Nachricht von irgendeiner der rückwärtigen Leitsteuereinrichtungen 180 1-180 32 zu einer anderen der rückwärtigen Leitsteuereinrichtungen 180 1-180 32 und /oder zu irgendeiner der frontseitigen Leitsteuereinrichtungen 200 1-200 32 überkoppelt werden.
Wie ebenfalls oben schon bemerkt enthält jedes der MAC-Pakete (Fig. 2B) einen Bestimmungsadressenabschnitt und einen Datennutzabschnitt. Das MAC-Kopfteil dient zur Anzeige des Zieles für das MAC-Paket, und dieses MAC-Kopfteil wird von dem Schalter dekodiert, um zu bestimmen, welcher Anschluß das MAC-Paket erhalten soll. Der Dekodierungsprozess verwendet eine Tabelle in dem jeweiligen Schalter 308 1-308 4, wobei diese Tabelle durch einen Prozessor 306 während des Hochfahrens initialisiert wird. Die Tabelle liefert die Beziehung zwischen dem MAC-Kopfteil, welches den Bestimmungsort für das MAC-Paket identifiziert, und der durch das Nachrichtenübertragungsnetzwerk hindurch zu nehmenden Route. Nach der Initialisierung liefern also die Schalter 320 und die Schalter 308 1-308 8 in dem Schalterabschnitt 308 den Weg des Datenpaketes, was jede der Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 in die Lage setzt, eine Nachricht zwischen ihr selbst und irgendeiner anderen der Leitsteuereinrichtungen zu übertragen, unabhängig davon, ob diese andere Leitsteuereinrichtung sich auf derselben Leitsteuereinrichtungsplatte 190 1-190 8, 210 1-210 8, oder auf einer anderen Leitsteuereinrichtungsplatte befindet. Weiter hat das MAC-Paket in seinem Kopfteil ein zusätzliches Bit B, wie in Fig. 2B gezeigt ist, welches ermöglicht, daß die Nachricht durch die Nachrichtenübertragungsnetzwerk- Schaltungsplatte 304 1 oder die Netzwerk-Schaltungsplatte 304 2 läuft. Während des normalen Betriebes schaltet dieses zusätzliche Bit B zwischen einer logischen 1 und einer logischen 0 hin und her, so daß eine Nachricht durch eine der redundanten Nachrichtennetzwerk-Schaltungsplatte 304 1, 304 2 läuft und die nächste Nachricht durch die jeweils andere der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 läuft, um die Belastungsanforderungen des Systems auszugleichen. Wenn jedoch ein Fehler in einer der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 auftritt, dann wird die nicht fehlerhafte der Nachrichtenübertragungsnetzwerk- Schaltungsplatten 304 1, 304 2 ausschließlich benutzt, bis die fehlerhafte Nachrichtenübertragungsnetzwerk-Schaltungsplatte ersetzt ist.
Es sei nun auf Fig. 7 Bezug genommen. Hier ist ein Beispiel einer der Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8, 210 1-210 8, vorliegend die Leitsteuereinrichtungs-Schaltungsplatte 190 1 gezeigt. Sie enthält die Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7. Ein Beispiel einer der Leitsteuereinrichtungen 180 1-180 4, vorliegend die Leitsteuereinrichtung 180 1, ist in Einzelheiten gezeichnet, und enthält die Datenpipeline 316, die Nachrichtenmaschine/CPU-Steuereinrichtung 314, den RAM-Speicher 312 und die CPU 310, welche sämtlich, wie dargestellt, mit dem CPU-Schnittstellenbus 317 gekoppelt sind. Die beispielsweise betrachtete Leitsteuereinrichtung 180 1 enthält außerdem folgendes:
einen lokalen Cache-Speicher 319 (der mit der CPU 310 gekoppelt ist);
den Querschienenschalter 318; und
den Querschienenschalter 320, der oben kurz im Zusammenhang mit den Fig. 5 und 6 erwähnt wurde. Die Datenpipeline 316 enthält einen Protokollübersetzer 400, einen Vierpol-RAM-Speicher 402 und eine Vierpol- RAM-Steuereinrichtung 404, die in der dargestellten Weise angeordnet sind. Kurz gesagt bewirkt der Protokollübersetzer 400 eine Umwandlung zwischen dem Protokoll des Host-Computer/Server 120 im Falle einer frontseitigen Leitsteuereinrichtung 180 1-180 32 (und zwischen den Protokoll, das von der Reihe von Plattenlaufwerken 140 verwendet wird, im Falle einer rückwärtigen Leitsteuereinrichtung 200 1-200 32) einerseits und dem Protokoll zwischen dem Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 und dem globalen Cache- Speicher 220 (Fig. 2) andererseits. Genauer gesagt, das von dem Host- Computer/Server 120 verwendete Protokoll kann beispielsweise ein Faserkanal- SCSE-, ESCON-, oder FIEON-Protokoll sein, wie durch den Hersteller des Host- Computer/Servers 120 festgelegt, während das Protokoll, das intern in der Systemschnittstelle 160 (Fig. 2) verwendet wird, durch den Hersteller der Schnittstelle 160 gewählt wird. Der Vierpol-RAM-Speicher 402 ist ein FIFO (First In/First Out), welches durch die Steuereinrichtung 404 gesteuert wird, da die Rate der in den RAM-Speicher 402 eintretenden Daten unterschiedlich von der Rate der Daten sein kann, welche den RAM-Speicher 402 verlassen. Der RAM- Speicher 402 hat vier Anschlüsse, die jeweils so ausgebildet sind, daß sie ein 18- Bit-Digitalwort handhaben können. Vorliegend erzeugt der Protokollübersetzer 400 36-Bit-Digitalwörter für das Protokoll der Systemschnittstelle 100 (Fig. 2), wobei ein Abschnitt von 18 Bit dieses Wortes an einen des Paares von Anschlüssen des vierpoligen RAM 402 angekoppelt wird und der andere 18-Bit-Abschnitt des Wortes an den anderen des Paares der Anschlüsse des Vierpol-RAM-Speichers 402 angekoppelt wird. Der Vierpol- RAM hat also ein Paar von Anschlüssen 402A und 402B, wobei jeder der Anschlüsse 402A, 402B so ausgebildet ist, das er ein 18-Bit-Digitalwort handhabt. Jeder der Anschlüsse 402A, 402B ist unabhängig steuerbar und hat unabhängigen, jedoch willkürlich bestimmbaren Zugang zu der Speicherreihe innerhalb des RAM-Speichers 402. Die Daten werden in der dargestellten Weise zwischen den Anschlüssen 402A, 402B und deren Cache-Speicher 240 (Fig. 2) über den Querschienenschalter 318 übertragen.
Der Querschienenschalter 318 enthält ein Paar von Schaltern 406A, 406B. Jeder der Schalter 406A, 406B enthält vier Eingangs-/Ausgangs-Anschlüsse D1-D4 auf der Seite der Leitsteuereinrichtungen (oben in Verbindung mit Fig. 5 kollektiv als Anschluß 419 bezeichnet) sowie vier Eingangs-/Ausgangs-Anschlüsse M1-M4 bzw. M5-M8 auf der Speicherseite, wie dies dargestellt ist. Die speicherseitigen Eingangs-/Ausgangs- Anschlüsse M1-M4, M5-M8 wurden oben in Verbindung mit den Erläuterungen zu Fig. 5 kollektiv als Anschluß 317 bezeichnet. Die leitsteuereinrichtungsseitigen Anschlüsse D1-D4 des Schalters 406A sind mit den Anschlüssen 402A der Vierpol- RAM-Speicher 402 in jeder der Leitsteuereinrichtungen 180 1, 180 2, 180 5 und 180 7 in der gezeigten Weise verbunden. In gleicher Weise sind die leitsteuereinrichtungsseitigen Anschlüsse des Schalters 406 in der dargestellten Weise mit den Anschlüssen 402B der Vierpol-RAM-Speicher 402 in jeder der Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 verbunden. Die Anschlüsse D1-D4 sind selektiv mit den Anschlüssen M1-M4 in Entsprechung mit Steuerwörtern gekoppelt, welche an den Schalter 406A durch die Steuereinrichtungen in den Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 auf jeweiligen Bussen RA1-RA4 erzeugt werden, und die Einschlüsse D1-D4 werden mit den Anschlüssen M5-M8 in Entsprechung mit den Steuerwörtern gekoppelt, die an die Schalter 406B durch die Steuereinrichtungen in den Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 auf jeweiligen Bussen RB1-RB4 geliefert werden, wie dies dargestellt ist.
Die Signale auf den Bussen RA1-RA4 sind Anforderungssignale. Der Anschluß 402A irgendeiner der Leitsteuereinrichtungen 180 1, 180 3,180 5, 180 7 kann also mit irgendeinem der Anschlüsse M1-M4 des Schalters 406A selektiv in Entsprechung mit den Anforderungssignalen auf den Bussen RA1-RA4 gekoppelt werden. In gleicher Weise kann der Anschluß 402B irgendeiner der Leitsteuereinrichtungen 180 1-180 4 mit irgendeinem der Anschlüsse M5-M8 des Schalters 405B selektiv in Entsprechung mit den Anforderungssignal auf den Bussen RB1-RB4 gekoppelt werden. Die Kopplung zwischen den Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8, 210 1-210 8 und dem globalen Cache-Speicher 220 ist in Fig. 8 dargestellt.
Es sei auch auf Fig. 2 Bezug genommen. Genauer gesagt und wie oben erwähnt ist jeder der Host-Computer-Prozessoren 121 1-121 32 in dem Host-Computer/Server 120 mit einem Paar von frontseitigen Leitsteuereinrichtungen 180 1-180 32 zum Vorsehen einer Redundanz im Falle eines Fehlers in einer der damit gekoppelten frontseitigen Leitsteuereinrichtungen 180 1-180 32 gekoppelt. In gleicher Weise hat die Reihe von Plattenlaufwerken 140 eine Anzahl von vorliegend 32 Plattenlaufwerken 141 1-141 32, wobei jedes Plattenlaufwerk 141 1-141 32 mit einem Paar von rückwärtigen Leitsteuereinrichtungen 200 1-200 32 gekoppelt ist, um eine Redundanz im Falle eines Fehlers in einer der damit verbundenen rückwärtigen Leitsteuereinrichtungen 200 1-200 32 vorzusehen. Betrachtet man beispielsweise den Host-Computer-Prozessor 121 1, so sieht man, daß dieser Prozessor 121 1 mit einem Paar frontseitiger Leitsteuereinrichtungen 180 1, 180 2 gekoppelt ist. Wenn daher die Leitsteuereinrichtung 180 1 ausfällt, dann kann der Host-Computer-Prozessor 121 1 immer noch Zugriff zu der Systemschnittstelle 160, wenn auch nur über die frontseitige Leitsteuereinrichtung 180 2 nehmen. Die Leitsteuereinrichtungen 180 1 und 180 2 sind also als Redundanzpaar von Leitsteuereinrichtungen anzusehen. In entsprechender Weise sind weitere Redundanzpaare von frontseitigen Leitsteuereinrichtungen folgende: die frontseitigen Leitsteuereinrichtungen 180 3 und 180 4; 180 5 und 180 6; 180 7 und 180 8; 180 9 und 180 10; 180 11 und 180 12; 180 13 und 180 14; 180 15 und 180 16; 180 17 und 180 18; 180 19 und 180 20; 180 21 und 180 22; 180 23 und 180 24; 180 25 und 180 26; 180 27 und 180 28; 180 29 und 180 30; und 180 31 und 180 32 (nur die Leitsteuereinrichtungen 180 31 und 180 32 sind in Fig. 2 gezeigt).
In ganz entsprechender Weise ist das Plattenlaufwerk 140 1 mit einem Paar von rückwärtigen Leitsteuereinrichtungen 200 1, 200 2 gekoppelt. Wenn also die Leitsteuereinrichtung 200 1 ausfällt, dann kann das Plattenlaufwerk 141 1 immer noch Zugriff auf die Systemschnittstelle 160 nehmen, wenn auch nur über die andere rückwärtige Leitsteuereinrichtung 180 2. Die Leitsteuereinrichtungen 200 1 und 200 2 sind also als Redundanzpaar von Leitsteuereinrichtungen anzusehen. Entsprechend sind weitere Redundanzpaare von weiteren rückwärtigen Leitsteuereinrichtungen folgende: die rückwärtigen Leitsteuereinrichtungen 200 3 und 200 4; 200 5 und 200 6; 200 7 und 200 8; 200 9 und 200 10; 200 11 und 200 12; 200 13 und 200 14; 200 15 und 200 16; 200 17 und 200 18, 200 19 und 200 20; 200 21 und 200 22; 200 23 und 200 24; 200 25 und 200 26; 200 27 und 200 28; 200 29 und 200 30; sowie 200 31 und 200 32 (in Fig. 2 sind nur die Leitsteuereinrichtungen 200 31 und 200 32 herausgezeichnet). Weiter erkennt man auch aus Fig. 8, daß der globale Cache- Speicher 220 eine Mehrzahl von vorliegend 8 Cache-Speicher-Schaltungsplatten 220 1-220 8 enthält, wie aus der Zeichnung hervorgeht. Weiterhin ist in Fig. 8A beispielsweise eine der Cache-Speicher-Schaltungsplatten, hier die Schaltungsplatte 220 1, im einzelnen dargestellt und im übrigen im Detail in der US-Patentschrift 5,943,287 mit dem Titel "Fault Tolerant Memory System" beschrieben. Erfinder der Patentschrift ist John K. Walton. Erteilungsdatum 24. August 1999. Übertragung auf den Zessionar der vorliegenden Erfindung. Auf den gesamten Inhalt der Patentschrift sei hier Bezug genommen. Wie also in Fig. 8A dargestellt enthält die Schaltungsplatte 220 1 eine Anzahl von vorliegend 4 RAM-Speicherreihen, wobei jede der Speicherreihen ein Paar von redundanten Anschlüssen aufweist, d. h., einen Anschluß A und einen Anschluß B. Die Schaltungsplatte selbst hat 16 Anschlüsse, nämlich eine Gruppe von acht A- Anschlüssen MA1-MA8, sowie eine Gruppe von acht B-Anschlüssen MB1-MB8. Vier der acht A-Anschlüsse, nämlich die A-Anschlüsse MA1-MA4 sind mit dem M1-Anschluß je einer der frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1, 190 3, 190 5 und 190 7 in der aus Fig. 8 ersichtlichen Weise verbunden. Vier der acht B-Anschlüsse, vorliegend die B-Anschlüsse MB1-MB4 sind mit dem M1-Anschluß jeweils einer der frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 2, 190 4, 190 6 und 190 8 verbunden, wie in Fig. 8B gezeigt ist. Die anderen vier der acht A-Anschlüsse, nämlich die A-Anschlüsse MA5-MA8 sind mit dem M1-Anschluß je einer der rückwärtigen Leitsteuereinrichtungs-Schaltungsplatten 210 1, 210 3, 210 5 und 210 7 gekoppelt, wie in Fig. 8 dargestellt ist. Die anderen vier der acht B-Anschlüsse, hier die B-Anschlüsse MB5-MB8, sind mit dem M1-Anschluß je einer der rückwärtigen Leitsteuereinrichtungs- Schaltungsplatten 210 2, 210 4, 210 6 und 210 8 gekoppelt, siehe Fig. 8.
Es seien als Beispiel die vier A-Anschlüsse MA1-MA4 betrachtet. Jeder der vier A- Anschlüsse MA1-MA4 kann mit dem A-Anschluß irgendeiner der Speicherreihen über das logische Netzwerk 221 A1 gekoppelt werden. Betrachtet man den Anschluß MA1, so kann dieser Anschluß mit dem A-Anschluß der vier Speicherreihen gekoppelt werden. In gleicher Weise gilt dies für die vier A-Anschlüsse MA5-MA8. Jeder der vier A- Anschlüsse MA5-MA8 kann über das logische Netzwerk 221 1B mit dem A-Anschluß irgendeiner der Speicherreihen gekoppelt werden. Betrachtet man die vier B-Anschlüsse MB1-MB4, so kann in gleicher Weise jeder der vier B-Anschlüsse MB1-MB4 mit dem B- Anschluß irgendeiner der Speicherreihen über die das logische Netzwerk 221 1B gekoppelt werden. Betrachtet man die vier B-Anschlüsse MB5-MB8, so kann in entsprechender Weise jeder der vier B-Anschlüsse MB5-MB8 mit dem B-Anschluß irgendeiner der Speicherreihen über das logische Netzwerk 221 2B gekoppelt werden. Betrachtet man den Anschluß MB1, so kann dieser Anschluß mit dem B-Anschluß der vier Speicherreihen gekoppelt werden. Es gibt also zwei Wege, über die Daten und Steuerungen von irgendeiner der frontseitigen Leitsteuereinrichtungen 180 1-180 32 oder einer der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 jeweils eine der vier Speicherreihen auf der Speicher-Schaltungsplatte erreichen können. Es gibt somit acht Gruppen von redundanten Anschlüssen auf einer Speicher-Schaltungsplatte, d. h. die Anschlüsse MA1, MB1; MA2, MB2; MA3, MB3, MA4, MB4; MA5, MB5; MA6, MB6; MA7, MB7; und MA8, MB8. Weiter hat, wie oben bemerkt jede der Leitsteuereinrichtungen ein Paar von redundanten Anschlüssen, nämlich einen Anschluß 402A und einen Anschluß 402B (siehe Fig. 7). Für jedes Paar von redundanten Leitsteuereinrichtungen ist also ein A- Anschluß (d. h., der Anschluß 402A) einer der Leitsteuereinrichtungen in dem Paar mit einem des Paars redundanter Speicheranschlüsse verbunden und der B-Anschluß (d. h., der Anschluß 402B) der jeweils anderen der Leitsteuereinrichtungen in diesem Paar ist mit dem jeweils anderen des Paares redundanter Speicheranschlüsse verbunden.
In Fig. 8B ist mehr ins einzelne gehend ein beispielsweises Paar von redundanten Leitsteuereinrichtungen gezeigt, vorliegend beispielsweise die frontseitigen Leitsteuereinrichtungen 180 1 und 180 2. Es sei zunächst bemerkt, daß die Leitsteuereinrichtungen 180 1, 180 2 in jedem redundandten Paar von Leitsteuereinrichtungen sich auf verschiedenen Leitsteuereinrichtungs- Schaltungsplatten, hier den Schaltungsplatten 190 1 bzw. 190 2, befinden müssen. Vorliegend also befinden sich folgende Teile auf den frontseitigen Leitsteuereinrichtungs-Schaltungsplatten 190 1-190 8: die frontseitigen Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7; die frontseitigen Leitsteuereinrichtungen 180 2, 180 4, 180 6 und 180 8; die frontseitigen Leitsteuereinrichtungen 180 9, 180 11, 180 13 und 180 15; die frontseitigen Leitsteuereinrichtungen 180 10, 180 12, 180 14 und 180 16; die frontseitigen Leitsteuereinrichtungen 180 17, 180 19, 180 21 und 180 23; die frontseitigen Leitsteuereinrichtungen 180 18, 180 20, 180 22 und 180 24; die frontseitigen Leitsteuereinrichtungen 180 25, 180 27, 180 29 und 180 31; die frontseitigen Leitsteuereinrichtungen 180 26, 180 28, 180 30 und 180 32. Die rückwärtigen Leitsteuereinrichtungs-Schaltungsplatten 210 1-210 8 tragen jeweils folgendes: die rückwärtigen Leitsteuereinrichtungen 200 1, 200 3, 200 5 und 200 7; die rückwärtigen Leitsteuereinrichtungen 200 2, 200 4, 200 6 und 200 8; die rückwärtigen Leitsteuereinrichtungen 200 9, 200 11, 200 13 und 200 15; die rückwärtigen Leitsteuereinrichtungen 200 10, 200 12, 200 14 und 200 16; die rückwärtigen Leitsteuereinrichtungen 200 17, 200 19, 200 21 und 200 23; die rückwärtigen Leitsteuereinrichtungen 200 18, 200 20, 200 22 und 200 24; die rückwärtigen Leitsteuereinrichtungen 200 25, 200 27, 200 29 und 200 31; die rückwärtigen Leitsteuereinrichtungen 200 26, 200 28, 200 30 und 200 32.
Die frontseitige Leitsteuereinrichtung 180 1, die im Fig. 8A dargestellt ist, befindet sich also auf der frontseitigen Leitsteuereinrichtungs-Schaltungsplatte 190 1 und die mit ihr redundante frontseitige Leitsteuerungseinrichtung 180 2, die in Fig. 8B dargestellt ist, befindet sich auf einer anderen frontseitigen Leitsteuereinrichtungs-Schaltungsplatte, hier beispielsweise auf der frontseitigen Leitsteuerungs-Schaltungsplatte 190 2. Wie oben beschrieben ist der Anschluß 402A des Vierpol-RAM-Speichers 402 (d. h., der A- Anschluß, welcher oben genannt wurde) mit dem Schalter 406A des Querschienenschalters 318 verbunden und der Anschluß 402B des Vierpol-RAM- Speichers 402 (d. h., der oben erwähnte B-Anschluß) ist mit dem Schalter 406B des Kreuzschienenschalters 318 verbunden. Entsprechendes gilt für die redundante Leitsteuereinrichtung 180 2. Die Anschlüsse M1-M4 des Schalters 406A der Leitsteuereinrichtung 180 1 sind jedoch mit den M1-Anschlüssen der globalen Cache- Speicher-Schaltungsplatten 220 1-220 4 in der dargestellten Weise verbunden, während für ihre Redundanz-Leitsteuereinrichtung 180 2 gilt, daß die Anschlüsse M1-M4 des Schalters 406A mit den redundanten MB1-Anschlüssen der globalen Cache-Speicher- Schaltungsplatten 220 1-220 4 in der dargestellten Weise verbunden sind.
Es sei nun mehr ins einzelne gehend der Querschienenschalter 318 (Fig. 7) betrachtet. Wie oben erwähnt hat jede der Leitsteuereinrichtungs-Schaltungsplatten 90 1-90 8, 210 1-210 8 einen solchen Schalter 318. Dieser Schalter 318 enthält wieder ein Schalterpaar 406A, 406B. Jeder dieser Schalter 406A und 406B hat gleichen Aufbau und ein Beispiel davon, vorliegend der Schalter 406A, ist im einzelnen in Fig. 8C gezeigt. Der Schalter 406A enthält also vier leitsteuereinrichtungsseitige Eingangs- /Ausgangs-Anschlüsse D1-D4, wie in Verbindung mit der beispielsweise beschriebenen Leitsteuereinrichtungs-Schaltungsplatte 190 1 angegeben wird. Für die in Fig. 7 gezeigte Leitsteuereinrichtungs-Schaltungsplatte 190 1 sind also die vier leitsteuereinrichtungsseitigen Eingangs-/Ausgangs-Anschlüsse D1-D4 des Schalters 406A jeweils mit dem Anschluß 402A einer entsprechenden der Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 auf der Leitsteuereinrichtungs-Schaltungsplatte 190 1 gekoppelt.
Es sei wieder auf Fig. 8C Bezug genommen. Der als Beispiel gewählte Schalter 406A enthält eine Anzahl von vorliegend vier Schalterabschnitten 430 1-430 4. Jeder dieser Schalterabschnitte 430 1-430 4 hat gleichen Aufbau und ist zwischen einen entsprechenden der leitsteuereinrichtungsseitigen Eingangs-/Ausgangs-Anschlüsse D1-­ D4 und einen entsprechenden der speicherseitigen Ausgangs-/Eingangs-Anschlüsse M1-­ M4 jeweils in der dargestellten Weise geschaltet. (Es sei bemerkt, daß die speicherseitigen Ausgangs-/Eingangs-Anschlüsse des Schalters 406B (Fig. 7) als Anschlüsse M5-M8 bezeichnet sind, wie aus der Zeichnung ersichtlich ist. Es versteht sich fernerhin, daß, während der Schalter 406A auf Anforderungssignale auf den Bussen RA1-RA4 von der Vierpol-Steuereinrichtung 404 in den Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 (Fig. 7) anspricht, der Schalter 406B in entsprechender Weise auf Anforderungssignale auf den Bussen RB1-RB4 von der Steuereinrichtung 404 in den Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 anspricht.) Genauer gesagt, die Steuereinrichtung 404 der Leitsteuereinrichtung 180 1 erzeugt Anforderungssignale auf den Bussen RA1 oder RB1. In entsprechender Weise erzeugt die Steuereinrichtung 404 der Leitsteuereinrichtung 180 3 Anforderungssignale auf den Bussen RA2 oder RB2. Die Steuereinrichtung 404 der Leitsteuereinrichtung 180 5 erzeugt Anforderungssignale auf den Bussen RA3 oder RB3. Schließlich erzeugt die Steuereinrichtung 404 der Leitsteuereinrichtung 180 7 ein Anforderungssignal auf den Bussen RA4 oder RB4.
Es sei 66928 00070 552 001000280000000200012000285916681700040 0002010116343 00004 66809das Beispiel des Schaltabschnittes 430 1 betrachtet. Dieser Schaltabschnitt 430 1 ist in Fig. 8C gezeigt und enthält ein FIFO-Bauteil 432, das durch das Anforderungssignal auf dem Bus RA1 beaufschlagt wird. (Es versteht sich, daß nicht dargestellte FIFOs in den Schaltabschnitten 430 2-430 4 durch die Anforderungssignale auf den Bussen RA2-RA4 jeweils beaufschlagt werden.) Der Schaltabschnitt 406 1 enthält außerdem eine Anforderungssignal-Erzeugungseinrichtung 434, eine Entscheidungseinrichtung und Wähler 442 und 446, welche sämtlich in der dargestellten Weise angeordnet sind. Die Daten an den speicherseitigen Anschlüssen M1-M4 treten an den Bussen DM1-DM4 auf und werden als Eingänge an den Wähler 446 gegeben. Außerdem gelangt zu dem Wähler 446 ein Steuersignal, welches durch den Anforderungssignalgenerator auf dem Bus 449 in Abhängigkeit von dem Anforderungssignal RA1, das in dem FIFO 432 gespeichert ist, erzeugt wird. Das Steuersignal auf dem Bus 449 zeigt dem Wähler 446 denjenigen der speicherseitigen Anschlüsse M1-M4 an, welcher mit dem leitsteuereinrichtungsseitigen Anschluß D1 zu koppeln ist. Die anderen Schaltabschnitte 430 2-430 4 arbeiten in entsprechender Weise mit Bezug auf die jeweiligen leitsteuereinrichtungsseitigen Anschlüsse D1-D4 und die speicherseitigen Anschlüsse M1-M4.
Es sei bemerkt, daß der Datenabschnitt des Wortes an dem Anschluß D1 (d. h. des Wortes an dem Bus DD1) auch an die anderen Schaltabschnitte 430 2-430 4 angekoppelt wird. Weiter ist festzustellen, daß der Datenabschnitt der Wörter an den Anschlüssen D2-­ D4 (d. h., der Wörter auf den jeweiligen Bussen DD2-DD4) zu den Schaltabschnitten 430 1-430 4 in der dargestellten Weise geführt werden. Das bedeutet, jeder der Schalterabschnitte 430 1-430 4 erhält, wie dargestellt, den Datenabschnitt der Wörter an den Anschlüssen D1-D4 (d. h., auf den Bussen DD1-DD4). Es ist weiter anzumerken, daß der Datenabschnitt des Wortes an dem Anschluß M1 (d. h., des Wortes auf dem Bus DM1) auch an die anderen Schalterabschnitte 430 2-430 4 angekoppelt wird. Weiter ist anzumerken, daß, wie dargestellt, die Datenabschnitte der Wörter an den Anschlüssen M2-M4 (d. h., der Wörter auf den jeweiligen Bussen DM2-DM4) den Schalterabschnitten 430 2-430 4 zugeführt werden. Das bedeutet, jeder der Schalterabschnitte 430 1-430 4 erhält, wie dargestellt, die Datenabschnitte der Wörter an den Anschlüssen M1-M4 (d. h., der Busse DM1-DM4).
Wie weiter unten beschrieben wird, ist eine Anforderung auf dem Bus RA1 an den Schalterabschnitt 430 1 eine Anforderung von der Leitsteuereinrichtung 180 1, welche denjenigen der vier Anschlüsse M1-M4 in dem Schalterabschnitt 430 1 bestimmt, der mit dem Anschluß 402A der Leitsteuereinrichtung 180 1 (leitsteuereinrichtungsseitiger Anschluß D1) gekoppelt werden soll. Demgemäß kann der Anschluß 402A der Leitsteuereinrichtung 180 1 mit einem der speicherseitigen Anschlüsse M1-M4 selektiv in Entsprechung mit den Daten auf dem Bus RA1 gekoppelt werden. In gleicher Weise sind Anforderungen auf den Bussen RA2, RA3, RA4 an die Schalterabschnitte 430 2-430 4 jeweils Anforderungen von den Leitsteuereinrichtungen 180 3, 180 5 und 180 7, welche denjenigen der Anschlüsse M1-M4 in den Schalterabschnitten 430 1-430 4 bestimmen, der mit dem Anschluß 402A der jeweiligen Leitsteuereinrichtungen 180 3, 180 5 und 180 7 gekoppelt werden soll.
Im Einzelnen werden die Anforderungen RA1 in dem Empfangs-FIFO 432, wenn sie durch die Vierpol-RAM-Steuereinrichtung 440 (Fig. 7) erzeugt werden, gespeichert. Der Anforderungsgenerator 434 empfängt von dem FIFO 432 die Anforderungen und bestimmt, welcher der vier speicherseitigen Anschlüsse M1-M4 mit dem Anschluß 402A der Leitsteuereinrichtung 180 1 gekoppelt werden soll. Diese Anforderungen für die speicherseitigen Anschlüsse M1-M4 werden jeweils auf den Leitungen RA1,1-­ RA1,4 erzeugt. Somit wird das Signal auf der Leitung RA1,1 (d. h., die Anforderungen für den speicherseitigen Anschluß M1) zu der Entscheidungseinrichtung 436 geführt, und die Anforderungen von den Schalterabschnitten 430 2-430 4 (welche an den Anschluß 402A der Leitsteuereinrichtungen 180 3, 180 5 und 180 7 angekoppelt werden) auf der Leitung RA2,1, RA3,1 und RA4,1 werden außerdem, wie dargestellt, zu der Entscheidungseinrichtung 436 geführt. Die Entscheidungseinrichtung 436 löst Mehrfachanforderungen für den speicherseitigen Anschluß M1 auf der Basis der Entscheidung "zuerst gekommen, zuerst bedient". Die Entscheidungseinrichtung 436 erzeugt dann ein Steuersignal auf dem Bus 435, welches diejenige der Leitsteuereinrichtungen 180 1, 180 3, 180 5 oder 180 7 bezeichnet, welche mit dem speicherseitigen Anschluß M1 zu koppeln ist.
Das Steuersignal auf dem Bus 435 wird der Wähleinrichtung 442 zugeführt. Außerdem gelangt zu der Wähleinrichtung 442 der Datenabschnitt der Daten am Anschluß D1, d. h. die Daten auf dem Datenbus DD1, zusammen mit dem Datenabschnitt der Daten an den Anschlüssen D2-D4, d. h., der Daten auf den Datenbussen DD2 bzw. DD4, wie dies gezeigt ist. Das Steuersignal auf dem Bus 435 veranlaßt somit den Wähler 442 dazu, mit seinem Ausgang die Datenbusse DD1-DD4 von derjenigen der Leitsteuereinrichtungen 180 1, 180 3, 180 5 und 180 7 zu koppeln, die Zugriff zu dem speicherseitigen Anschluß M1 durch die Entscheidungseinrichtung 436 erhalten hat. Der ausgewählte Ausgang der Wähleinrichtung 442 wird mit dem speicherseitigen Anschluß M1 gekoppelt. Es sei bemerkt, daß dann, wenn die Entscheidungseinrichtung 436 eine Anforderung über entsprechende Signale auf den Leitungen RA1,1, RA2,1, RA3,1 und RA4,1 erhält, Bestätigungen durch die Entscheidungseinrichtungen 436 mittels Bestätigungssignalen auf Leitungen AK1,1, AK1,2, AK1,3 und AK1,4 zurückgegeben werden, wobei diese Signale zu den Anforderungsgeneratoren 434 in den Schalterabschnitten 430 1, 430 2, 430 3 und 430 4 jeweils hingeführt werden.
Die Daten an irgendeinem Anschluß D1-D4 können somit zu irgendeinem der Anschlüsse M1-M4 überkoppelt werden, um die Punkt-zu-Punkt-Datenwege P1-P64 zu verwirklichen, die oben in Verbindung mit Fig. 2 erwähnt wurden.
Es sei nun wieder Fig. 7 betrachtet. Daten vom dem Host-Computen/Server 120 (Fig. 2) werden der Systemschnittstelle 160 (Fig. 2) in Schüben oder Stapeln von vielen Host-Computer-Prozessoren 121 1-121 32 präsentiert. Daten von den Host-Computer- Prozessoren 121 1-121 32 sind somit ineinander verschachtelt, wenn sie einer Leitsteuereinrichtung 180 1-180 32 dargeboten werden. Der Schub oder Stapel von jedem Host-Computer-Prozessor 121 1-121 32 (d. h., der Quelle) wird durch die Protokoll-Übersetzungseinrichtung 400 gekennzeichnet. Genauer gesagt geschieht dies durch ein Tacheon ASIC im Falle einer Faserkanalverbindung. Die Steuereinrichtung 404 weist eine Suchtabelle auf, die während der Initialisierung gebildet wurde. Wenn die Daten in die Protokoll-Übersetzungseinrichtung 400 gelangen und unter der Steuerung durch die Steuereinrichtung 404 in den Vierpol-RAM 420 gegeben werden, dann informiert die Protokoll-Übersetzungseinheit 400 die Steuereinrichtung davon, daß sich die Daten in dem Vierpol-RAM 420 befinden. Die Steuereinrichtung 404 sieht auf die Konfiguration ihrer Suchtabelle, um den Platz in dem globalen Cache-Speicher 220 (beispielsweise die Cache-Speicher-Schaltungsplatten 220 1-220 8) zu bestimmen, in denen die Daten gespeichert werden sollen. Die Steuereinrichtung 404 erzeugt somit die Anforderungssignale auf dem entsprechenden Bus RA1, RB1, und teilt dann dem Vierpol- RAM 420 mit, daß ein Datenblock an einer bestimmten Stelle in dem Vierpol-RAM 420 an einen bestimmten Ort in dem globalen Cache-Speicher 220 übertragen werden soll. Der Querschienenschalter 318 untersucht auch, welche anderen Steuereinrichtungen 404 in den Leitsteuereinrichtungen 180 3, 180 5 und 180 7 auf der betreffenden Leitsteuereinrichtungs-Schaltungsplatte 190 1 Anfragen tätigen, indem sie jeweils Anforderungssignale auf den Bussen RA2, RB2, RA3, RB3, RA4 und RB4 erzeugen. Die Entscheidung zwischen Mehrfachanfragen wird durch die Entscheidungseinrichtung 436 getroffen, wie oben in Verbindung mit Fig. 8C beschrieben wurde.
Es sei wieder Fig. 7 betrachtet. Die beispielsweise gezeigte Leitsteuereinrichtung 180 1 enthält, wie dargestellt, die Nachrichtenmaschine/CPU-Steuereinrichtung 314. Die Nachrichtenmaschine/CPU-Steuereinrichtung 314 ist in einer feldprogrammierbaren Gatter-Gruppenanordnung (FPGA) enthalten. Die Nachrichtenmaschine ME 315 ist, wie dargestellt, mit dem CPU-Bus 314 und dem DMA-Abschnitt 408 gekoppelt. Die Nachrichtenmaschine ME 315 enthält einen Abschnitt 408 zum unmittelbaren Speicherzugriff (DMA), eine Nachrichtenmaschinen-Zustandsmaschine 410, einen Sendepuffer 424, einen Empfangspuffer 424, einen MAC-Paketierer/Depaketierer 428, Sende- und Empfangszeigerregister 420 und einen Paritätsgenerator 321. Der DMA- Abschnitt 408 enthält einen DMA-Sender 418, der weiter unten im einzelnen in Verbindung mit Fig. 9 gezeigt und beschrieben wird, und einen DMA-Empfänger 424, der weiter unten im einzelnen in Verbindung mit Fig. 10 beschrieben und gezeigt wird, wobei beide mit der CPU-Bus-Schnittstelle 317 gekoppelt sind, wie in Fig. 7 dargestellt ist. Die Nachrichtenmaschine ME 315 enthält, wie bereits gesagt, den Sendedatenpuffer 422, der mit dem DMA-Sender 418 gekoppelt ist, den Empfangsdatenpuffer 424, der mit dem DMA-Empfänger 421 gekoppelt ist, Register 420, die mit dem CPU-Bus 317 über einen Adressendekoder 401 gekoppelt sind, den Paketierer/Depaketierer 428, der oben erwähnt wurde und mit dem Sendedatenpuffer 422, dem Empfangsdatenpuffer 424 und dem Querschienenschalter 320 in der gezeigten Weise gekoppelt ist, sowie einen Paritätsgenerator 321, der zwischen den Sendedatenpuffer 422 und dem Querschienenschalter 320 gelegt ist. Genauer gesagt dient der Paketiererabschnitt 428P des Paketierers/Depaketierers 428 zum Paketieren der Nachrichtennutzdaten in ein MAC-Paket (Fig. 2B), das von dem Sendedatenpuffer 422 zu dem Querschienenschalter 320 läuft, und der Depaketierungsabschnitt 428D dient zum Depaketieren des MAC- Paketes in Nachrichtennutzdaten, welche von dem Querschienenschalter 422 zu dem Empfangsdatenpuffer 424 laufen. Die Paketierung geschieht hier durch einen MAC- Kern, welcher ein MAC-Paket aufbaut und an jede Nachricht Dinge anhängt wie eine Herkunftsadressenangabe und Bestimmungsadressenangabe, welche die Leitsteuereinrichtungen bezeichnen, die die Nachricht aussendet und empfängt, sowie einen zyklischen Redundanz-Check (CRC), wie oben beschrieben wurde. Die Nachrichtenmaschine ME 315 enthält außerdem folgendes: einen Empfangs- Schreibzeiger 450, einen Empfangs-Lesezeiger 450; einen Sende-Schreibzeiger 454 und einen Sende-Lesezeiger 456.
Es sei nun auf die Fig. 11 und 12 Bezug genommen und das Senden einer Nachricht von einer Leitsteuereinrichtung 180 1-180 32, 200 1-200 32, sowie der Empfang einer Nachricht durch eine Leitsteuereinrichtung 200 1-200 32, vorliegend beispielsweise durch die Leitsteuereinrichtung 180 1 von Fig. 7, beschrieben. Zuerst sei die Aussendung einer Nachricht betrachtet und auf die Fig. 7 und 11 Bezug genommen. Wie oben bemerkt initialisieren zuerst beim Hochfahren die Steuereinrichtungen 306 (Fig. 5) der beiden Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 die Nachrichtenaufzeichnungen, welche oben beschrieben wurden, für die Schalter 308 1-308 4 in dem Schalterabschnitt 308 und für die Querschienenschalter 320. Wie oben ausgeführt wird eine Anforderung durch den Host-Computer/Server 120 getätigt. Die Anforderung wird zu der Protokoll-Übersetzungseinrichtung 400 gesandt. Die Protokoll-Übersetzungseinrichtung 400 sendet die Anforderungen über den CPU-Bus 317 und den Puffer 301 zu dem Mikroprozessor 299. Wenn die CPU 310 (Fig. 7) in dem Mikroprozessor 299 der als Beispiel gewählten Leitsteuereinrichtung 180 1 feststellt, daß eine Nachricht zu einer anderen der Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 gesendet werden soll (beispielsweise bestimmt die CPU 310, daß eine Fehlanfrage in dem globalen Cache-Speicher 220 (Fig. 2) gemacht wurde und wünscht eine Nachricht an eine entsprechende der rückwärtigen Leitsteuereinrichtungen 200 1-200 32 zu senden, wie oben in Verbindung mit Fig. 2 beschrieben wurde), dann baut die CPU 310 eine 64-Byte-Beschreibungsdatenfolge (Fig. 2A) auf, welche eine 32-Byte- Nachrichten-Nutzdatenfolge enthält und die Adresse des Datenschubes anzeigt, der aus der Reihe von Plattenlaufwerken 140 (Fig. 2) (Schritt 500) heraus gelesen werden soll, und ein 32-Byte-Befehlsfeld (Schritt 510) enthält, welches mittels eines 8-Byte- Bitvektors den Nachrichtenbestimmungsort anzeigt, d. h., die Leitsteuereinrichtung oder die Leitsteuereinrichtungen, welche die Nachrichten empfangen soll bzw. sollen. Ein 8- Byte-Abschnitt des Befehlsfeldes zeigt die Leitsteuereinrichtung oder die Leitsteuereinrichtungen an, welche die Nachricht empfangen soll bzw. sollen. Das bedeutet, jedes der 64 Bit in dem 8-Byte-Abschnitt entspricht einer der 64 Leitsteuereinrichtungen. Vorliegend zeigt eine logische 1 in einem Bit an, daß die entsprechende Leitsteuereinrichtung eine Nachricht empfangen soll und eine logische 0 zeigt an, daß diese entsprechende Leitsteuereinrichtung keine Nachricht empfangen soll. Wenn also das 8-Byte-Wort mehr als eine logische 1 als Bit hat, dann empfängt mehr als eine Leitsteuereinrichtung dieselbe Nachricht. Wie noch zu erläutern ist, wird dieselbe Nachricht nicht parallel an sämtliche solche Leitsteuereinrichtungen gesandt, sondern vielmehr wird dieselbe Nachricht der Reihe nach zu allen diesen Leitsteuereinrichtungen geschickt. In jedem Falle wird die resultierende 64-Byte- Beschreibungsdatenfolge durch die CPU 310 (Fig. 7) erzeugt (Schritt 512) und wird in den RAM 312 eingeschrieben (Schritt 514), wie in Fig. 11 dargestellt ist.
Im einzelnen enthält der RAM-Speicher 512 ein Paar von Reihen, nämlich eine Sendereihe und eine Empfangsreihe, wie dies in Fig. 7 dargestellt ist. Der RAM- Speicher 312 ist mit dem CPU-Bus 317 in der dargestellten Weise über einen Fehlererkennungs- und -Korrektur-(EDAC)/Speicher-Steuerabschnitt 303 gekoppelt. Die CPU 310 zeigt dann der Nachrichtenmaschinen-(ME) 315-Zustandsmaschine 410 (Fig. 7) an, daß eine Beschreibungsdatenfolge in den RAM-Speicher 312 eingeschrieben worden ist. Es sei bemerkt, daß die Nachrichtenmaschine (ME) 315 außerdem folgendes enthält:
einen Empfangs-Schreibzeiger oder -Zähler 450, den Empfangs-Lesezeiger oder -Zähler 452, den Sende-Schreibzeiger oder -Zähler 454 und den Sende-Lesezeiger oder -Zähler 454, die in Fig. 7 eingezeichnet sind. Sämtliche vier Zeiger oder Zähler 450, 452, 454 und 456 werden beim Hochfahren auf 0 zurückgestellt. Es wurde ebenfalls oben angemerkt, daß die Nachrichtenmaschine/CPU- Steuereinrichtung 314 außerdem folgendes enthält:
den Depaktierungsabschnitt 428D des Paketierers/Depaketierers 428, der mit dem Empfangsdatenpuffer 424 (Fig. 7) gekoppelt ist; und
einen Paketierungsabschnitt 428P des Paketierers/Depaketierers 428, der mit dem Sendedatenpuffer 422 (Fig. 7) gekoppelt ist.
Es sei wieder Fig. 11 betrachtet. Wenn also die CPU 310 anzeigt, daß eine Beschreibungsdatenfolge in den RAM-Speicher 312 eingeschrieben worden ist und nun bereitsteht, um ausgesendet zu werden, dann inkrementiert die CPU 310 den Sende- Schreibzeiger und sendet ihn zu dem Schreibzeigerregister 454 über den Registerdekoder 401. Der Inhalt des Sende-Schreibzeigerregisters 454 zeigt also die Anzahl von Nachrichten in der Sendereihe oder Sendezeile 312S des RAM-Speichers 312 an, welche nicht ausgesendet worden sind. Die Zustandsmaschine 410 prüft das Sende-Schreibzeigerregister 454 und das Sende-Lesezeigerregister 456 (Schritt 518). Wie oben bemerkt werden sowohl das Sende-Schreibzeigeregister 454 als auch das Sende-Lesezeigerregister 456 beim Hochfahren anfänglich auf 0 zurückgestellt. Wenn also das Sende-Lesezeigerregister 456 und das Sende-Schreibzeigeregister 454 unterschiedlichen Inhalt haben, dann weiß die Zustandsmaschine, daß sich eine Nachricht in dem RAM-Speicher 312 befindet und daß diese Nachricht für die Übertragung bereitsteht. Wenn eine Nachricht ausgesendet werden soll, dann initiiert die Zustandsmaschine 410 eine Übertragung der gespeicherten 64-Byte- Beschreibungsdatenfolge zu der Nachrichtenmaschine (ME) 315 über den DMA-Sender 418 (Fig. 7) (Schritte 520, 522). Die Beschreibungsdatenfolge wird von der Sendezeile 312S in dem RAM-Speicher 312 ausgesendet, bis der Sende-Lesezeiger 456 gleich dem Sende-Schreibzeiger 454 ist.
Wie oben in Verbindung mit dem Schritt 510 angegeben wurde, erzeugt die CPU 310 einen Bestimmungsortvektor, welcher die Leitsteuereinrichtung oder die Leitsteuereinrichtungen anzeigt, welche die Nachricht empfangen soll bzw. empfangen sollen. Wie auch schon oben gesagt, umfaßt das Befehlsfeld 32 Bytes, von denen 8 Bytes ein Bit aufweisen, das eine entsprechende der 64 Leitsteuereinrichtungen bezeichnet, welche eine Nachricht empfangen soll. Es sei Fig. 11C betrachtet. Beispielsweise repräsentiert jede der Bitpositionen 1-64 eine jeweilige der Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32. Da im vorliegenden Beispiel sich eine logische 1 nur in der Bitposition 1 befindet, zeigt der 8-Byte-Vektor an, daß die als Bestimmungsort geltende Leitsteuereinrichtung nur die frontseitige Leitsteuereinrichtung 180 1 ist. Da in dem Beispiel von Fig. 11D eine logische 1 nur in der Bitposition 2 auftritt, zeigt der 8-Byte-Vektor an, daß die als Bestimmungsort geltende Leitsteuereinrichtung nur die frontseitige Leitsteuereinrichtung 180 2 ist. Da in dem Beispiel von Fig. 11E eine logische 1 in mehr als einer Bitposition auftritt, ist der Bestimmungsort für die Nachricht mehr als eine Leitsteuereinrichtung, d. h. es handelt sich um eine mehrfach verteilte Nachricht. In dem Beispiel von Fig. 11E tritt eine logische 1 nur in den Bitpositionen 2, 3, 63 und 64 auf. Der 8-Byte-Vektor zeigt also an, daß die Bestimmungsort-Leitsteuereinrichtungen nur die frontseitigen Leitsteuereinrichtungen 180 2 und 180 3 und die rückseitigen Leitsteuereinrichtungen 200 31 und 200 32 sind. In einem Register des Registerabschnittes 420 (Fig. 7) in der Nachrichtenmaschine (ME) 315 ist ein Maskenvektor gespeichert, der eine Leitsteuereinrichtung oder Leitsteuereinrichtungen identifiziert, welche für die Verwendung nicht zur Verfügung steht bzw. stehen (beispielsweise eine defekte Leitsteuereinrichtung oder eine zu dieser Zeit nicht im System befindliche Leitsteuereinrichtung), (Schritte 524, 525, für eine einfach ausgegebene Sendung). Wenn die Nachrichtenmaschine (ME) 315-Zustandsmaschine 410 anzeigt, daß die Leitsteuereinrichtung verfügbar ist, indem der Sendemaskenvektor (Fig. 11F), der in dem Register 420 gespeichert ist, untersucht wird, dann umschließt die Nachrichtenmaschine (ME) 315 die Nachrichtennutzdaten mit einem MAC-Kopfteil und einem Fehlererkennungs- und Korrekturteil CRC innerhalb des Paketierungsabschnittes 428P, wie oben erläutert wurde (Schritt 526). Ein Beispiel für die Maske ist in Fig. 11F gezeigt. Die Maske hat 64 Bitpositionen, nämlich jeweils eine für jede Leitsteuereinrichtung. Genau so wie bei den Bestimmungsortvektoren, welche oben in Verbindung mit den Fig. 11C bis 11E erläutert wurden, repräsentieren also die Bitpositionen 1-64 die jeweiligen Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32. Im vorliegenden Beispiel zeigt eine logische 1 in einer Bitposition innerhalb der Maske an, daß die betreffende Leitsteuereinrichtung verfügbar ist, und eine logische 0 in dieser Bitposition zeigt an, daß die betreffende Leitsteuereinrichtung nicht verfügbar ist. In dem in Fig. 11F gezeigten Beispiel ist nur die Leitsteuereinrichtung 200 32 nicht verfügbar. Wenn also eine Nachricht einen Bestimmungsortvektor wie in Fig. 11E gezeigt aufweist, dann wird nach Durchlauf durch die Maske von Fig. 11F der Bestimmungsvektor so modifiziert, daß er die in Fig. 11G gezeigte Form hat. Die Leitsteuereinrichtung 200 32 empfängt also die Nachricht nicht. Diese Maskenmodifikation an dem Bestimmungsortvektor ist wichtig, da, wie noch beschrieben wird, die Nachrichten bei einer Mehrfachverteilung der Reihe nach ausgesendet werden und nicht parallel. Das Ausschalten einer Nachrichtensendung an eine nicht verfügbare Leitsteuereinrichtung oder an nicht verfügbare Leitsteuereinrichtungen erhöht also die Nachrichtenübertragungsleistung des Systems.
Nach Paketierung der Nachricht in ein MAC-Paket durch den Paketierungsabschnitt des Paketierers/Depaketierers 428 (Fig. 7) überträgt die Nachrichtenmaschine (ME) 315 das MAC-Paket an den Querschienenschalter 320 (Schritt 528) und das MAC-Paket wird zum Bestimmungsort durch das Nachrichtenübertragungsnetzwerk 260 (Schritt 530) vermittels der Nachrichtenübertragungsnetzwerk-Schaltungsplatten 304 1, 304 2 geleitet, oder auf der selben Leitsteuereinrichtungs-Schaltungsplatte über den Querschienenschalter 320 auf dieser Platte geführt.
Unter Bezugnahme auf Fig. 12 sei die Nachrichtenleseoperation beschrieben. In dem Schritt 600 wartet also die Leitsteuereinrichtung auf eine Nachricht. Wenn eine Nachricht empfangen wird, so empfängt die Nachrichtenmaschine (ME) 315- Zustandsmaschine 410 das Paket (Schritt 602). Die Zustandsmaschine 410 prüft die Empfangsbit-Vektormaske (Fig. 11, im Register 426 gespeichert) gegenüber der Herkunftsadresse des Paketes (Schritt 604). Wenn die Zustandsmaschine 410 feststellt, daß die Nachricht von einem unrichtigen Herkunftsort kommt (d. h., einer fehlerhaften Leitsteuereinrichtung, wie in der Maske angezeigt wird, siehe beispielsweise Fig. 11F), dann wird das Paket herausgenommen (Schritt 606). Wenn andererseits die Zustandsmaschine 410 feststellt, daß das Pakt von einer richtigen oder ordnungsgemäßen Leitsteuereinrichtung (d. h. Herkunftsort) stammt, dann befreit die Nachrichtenmaschine (ME) 315 die Nachricht aus dem Paket (Schritt 608) im Depaketierungsabschnitt 428D. Die Zustandsmaschine 410 in der Nachrichtenmaschine (ME) 315 initiiert eine 32-Byte-Nutzdatenübertragung vermittels der DMA- Empfangsoperation (Schritt 610). Durch die DMA-Empfangsoperation wird die 32- Byte-Nachricht in die Speicherempfangszeile 312R in dem RAM-Speicher 312 eingeschrieben (Schritt 612). Die Nachrichtenmaschine (ME) 315- Zustandsmaschine 410 inkrementiert dann das Empfangsschreib-Zeigerregister 450 (Schritt 614). Die CPU 310 prüft nun, ob der Empfangs-Schreibzeiger 450 gleich dem Empfangs-Lesezeiger 452 ist (Schritt 616). Sind sie gleich, so zeigt diese Bedingung für die CPA 310 an, daß keine Nachricht empfangen worden ist (Schritt 618). Wenn andererseits der Empfangs-Schreibzeiger 450 und der Empfangs-Lesezeiger 452 nicht gleich sind, so sagt diese Bedingung der CPU 310, daß eine Nachricht empfangen worden ist, und die CPU 310 verarbeitet die Nachricht in der Empfangszeile 312R des RAM-Speichers 312 und hierauf inkrementiert die CPU 310 den Empfangs-Lesezeiger und schreibt ihn in das Empfangs-Lesezeigerregister 452 ein. Die Nachrichten werden also in der Empfangszeile 312R des RAM-Speichers 312 gespeichert, bis die Inhalte des Empfangs-Lesezeigers 452 und des Empfangs-Schreibzeigers 450, welche beim Hochfahren anfänglich auf Null zurückgestellt worden sind, gleich sind.
Es sei nun Fig. 13 betrachtet. Die Bestätigung einer Nachrichtenoperation wird nun beschrieben. In dem Schritt 700 vervollständigt die Empfangs-DMA-Maschine 420 erfolgreich einen Nachrichtentransfer zu der Empfangs-Zeile im RAM-Speicher 312 (Fig. 7). Die Zustandsmaschine 410 in der Nachrichtenmaschine (ME) 315 erzeugt ein Bestätigungs-MAC-Paket und überträgt das MAC-Paket an die sendende Leitsteuereinrichtung über das Nachrichtenübertragungsnetzwerk 260 (Fig. 2) (Schritt 702, 704). Die Nachrichtenmaschine (ME) 315 in der sendenden Leitsteuereinrichtung befreit eine 16-Byte-Statusnutzdatenfolge in dem Bestätigungs-MAC-Paket und überträgt diese Statusnutzdatenfolge vermittels einer Empfangs-DMA-Operation (Schritt 706). Die DMA-Operation der sendenden Leitsteuereinrichtung (d. h., der Quelle) schreibt in ein Statusfeld der Beschreibungsdatenfolge in der Sendezeile 312S des RAM-Speichers (Schritt 708). Die Zustandsmaschine 410 der Nachrichtenmaschine (MAC) 315 der sendenden Leitsteuereinrichtung (welche die Bestätigungsnachricht empfangen hat) inkrementiert ihren Sende-Lesezeiger 454 (Schritt 712). Die CPU 310 der sendenden Leitsteuereinrichtung (welche die Bestätigungsnachricht empfangen hat), verarbeitet den Beschreibungsdatenstatus und beseitigt die Beschreibungsdatenfolge aus der Sendezeile 312S des RAM-Speichers 312 (Schritt 714). Es sei bemerkt, daß die Sendezeile und die Empfangszeile 312S und 312R jeweils Ringzeilen sind.
Wie oben bemerkt werden die MAC-Pakete alternativ durch einen Hardware- Wähler S in dem Querschienenschalter 320 alternativ zu einer des Paares von Nachrichtennetzwerk-Schaltungsplatten 304 1-304 2 gesandt. Der Wähler S spricht auf das Bit B im Kopfteil des MAC-Paketes (Fig. 2) an, und wenn dieses Bit B den einen logischen Zustand hat, werden die Daten zu einer der Nachrichten- Übertragungsnetzwerkschaltungsplatten 304 1 hin gekoppelt und in Abhängigkeit von den entgegengesetzten logischen Stand werden die Daten zu der anderen der Nachrichten-Übertragungsnetzwerkschaltungsplatten 304 2 hin gekoppelt. Das bedeutet, wenn eine Nachricht zu der Schaltungsplatte 304 1 übertragen wird, dann wird die nächste Nachricht zu der Schaltungsplatte 304 2 übertragen.
Es sei wieder Fig. 9 betrachtet. Es sind Einzelheiten eines Beispieles einer DMA- Sendeoperation 418 gezeigt. Wie oben erwähnt wurde eine Beschreibungsdatenfolge durch die CPU 310 (Fig. 7) erzeugt und dann in dem RAM-Speicher 312 gespeichert. Wenn der Sende-Schreibzeiger 450 (Fig. 7) und der Sende-Lesezeiger 452, welche oben erwähnt wurden, unterschiedliche Zählerstände aufweisen, dann wird durch die Zustandsmaschine 410 in der Nachrichtenmaschine (ME) 315 (Fig. 7) eine Anzeige erzeugt, daß die erzeugte Beschreibungsdatenfolge für die DMA-Übertragung zu der Nachrichtenmaschine (ME) 315 verfügbar ist und die Nutzdaten aus der Beschreibungsdatenfolge werden zu einem MAC-Paket paketiert und durch das Nachrichten-Übertragungsnetzwerk 360 (Fig. 2) zu einer oder mehreren Leitsteuereinrichtungen 180 1-180 32, 200 1-200 32 gesandt. Im einzelnen wird die Beschreibungsdatenfolge, welche durch die CPU 310 erzeugt worden ist, zuerst in dem örtlichen Cache 319 gespeichert und wird später zu der Sendezeile 312S in dem RAM- Speicher 312 übertragen. Wenn der Sende-Schreibzeiger 450 und der Sende- Lesezeiger 452 unterschiedliche Zählerstände haben, dann initiiert die Nachrichtenmaschine (ME) 315-Zustandsmaschine 410 eine DMA-Übertragung wie oben in Verbindung mit dem Schritt 520 (Fig. 11) erläutert wurde. Ferner verweilt, wie oben angegeben wurde, die Beschreibungsdatenfolge in den Sendezeilen 312S innerhalb des RAM-Speichers 312. Wie weiter oben gesagt ist, enthält jede Beschreibungsdatenfolge die Nachricht in einem festen Umfang, vorliegend 64 Bytes. Wenn jeweils eine neue, noch nicht gesendete Beschreibungsdatenfolge durch die CPU 310 erzeugt wird, wird sie jeweils in der Folge an einen sequentiellen Speicherplatz oder einer sequentiellen Adresse in der Sendezeile 312S gespeichert. Vorliegend ist die Adresse eine 32-Bit-Adresse.
Wenn die DMA-Übertragung eingeleitet wird, dann sendet die Zustandsmaschine 410 in der Nachrichtenmaschine (ME) 315 (Fig. 7) eine Zeilenadresse auf dem Bus 411 an ein Adressenregister 413 in dem DMA-Sender 418 (Fig. 9) zusammen mit einem Sende-Schreibsteuersignal Tx_WE. Der DMA- Sender 418 fordert den CPU-Bus 317 an, indem ein Signal auf der Leitung Xmit_Br festgestellt wird. Die CPU-Bus-Entscheidungseinrichtung 414 (Fig. 7) führt eine Busauswahl durch und wenn die Entscheidung zutreffend ausfällt, gewährt die Entscheidungseinrichtung 414 dem DMA-Sender 418 Zugriff zu dem CPU-Bus 317. Die Sender-CPU-Zustandsmaschine oder Xmit_CPU-Zustandsmaschine 419 liefert dann die Adresse, welche gegenwärtig im Adressenregister 413 verfügbar ist, an den Adressenbusabschnitt 317A des CPU-Busses 317 durch Laden des Ausgangsadressenregisters 403. Eine ungeradzahlige Parität wird durch einen Paritätsgenerator 405 erzeugt, bevor das Ausgangsadressenregister 403 geladen wird. Die Adresse in dem Register 403 wird für die Sendezeile 312S des RAM-Speichers 312 an den CPU-Bus 317 (Fig. 7) gegeben, was zusammen mit geeigneten Lese- Steuersignalen über den Abschnitt 317C des CPU-Busses 317 geschieht. Die Daten an der Adresse des RAM-Speichers 312 laufen über den Datenbusabschnitt 317D des CPU-Busses 317 durch eine Paritätsprüfeinrichtung 415 zu einem Dateneingangsregister 417. Die Steuersignale von der CPU 310 werden zu der Xmit_CPU-Zustandsmaschine 419 über den Abschnitt 317C des CPU-Busses 317 gegeben. Eines der Steuersignale zeigt an, ob die jüngste Kopie der angeforderten Beschreibungsdatenfolge sich in der Sendezeile 3125 des RAM-Speichers 312 befindet oder immer noch in dem lokalen Cache-Speicher 319 verweilt. Das bedeutet, die jüngste Beschreibungsdatenfolge an irgendeiner gegebenen Adresse wird zuerst von der CPU 310 in dem örtlichen Cache-Speicher 319 gebildet und wird später von der CPU 310 zu der Speicherzeile in dem RAM-Speicher 312 übertragen. Es kann somit zwei Beschreibungsfolgen mit derselben Adresse geben, nämlich eine in dem RAM- Speicher 312 und eine weitere in dem örtlichen Cache-Speicher 319 (Fig. 7), wobei sich die jüngste in dem lokalen Cache-Speicher 319 befindet. In beiden Fällen muß die Sende-DMA-Operation 418 die Beschreibungsdatenfolge für die DMA-Übertragung von dem RAM-Speicher 312 erhalten und diese Beschreibungsdatenfolge wird in dem Sendepufferregister 421 gespeichert, wobei zum Laden dieses Registers 421 das von der Zustandsmaschine 419 erzeugte Signal 402 dient. Das Steuersignal, das von der CPU 310 zu der Xmit-CPU-Zustandsmaschine 419 gegeben wird, zeigt an, ob sich die jüngste Beschreibungsdatenfolge in dem lokalen Cache-Speicher 319 befindet. Wenn die jüngste Beschreibungsdatenfolge sich im lokalen Cache-Speicher 319 befindet, dann verhindert die Xmit-CPU-Zustandsmaschine 419, daß die Daten, die gerade von der Sendezeile 312S im RAM-Speicher 312 herausgelesen wurden und welche in das Register 421 gespeichert wurden, zu der Wähleinrichtung 423 gelangen. In diesem Falle muß die Zustandsmaschine 419 einen weiteren Datentransfer zu demselben Adressenplatz durchführen. Die jüngste Nachricht wird dann durch die CPU 310 von dem lokalen Cache-Speicher 319 zu der Sendezeile 312S in den RAM-Speicher 312 übertragen. Die Sende-Nachrichtenzustandsmaschine 419 entscheidet dann neuerlich für den CPU-Bus 317 und nachdem der CPU-Bus 317 gewählt ist, liest dann die Xmit- CPU-Zustandsmaschine 419 die Beschreibungsdatenfolge von dem RAM-Speicher 312. Dieses Mal ist jedoch die jüngste Beschreibungsdatenfolge in der Sendezeile 312S des RAM-Speichers 312 verfügbar. Die Beschreibungsdatenfolge in dem RAM-Speicher 312 wird nun in das Sendepufferregister 412 in Abhängigkeit von der Feststellung des Signales 402 durch die Xmit-CPU-Zustandsmaschine 419 geladen. Die Beschreibungsdatenfolge in dem Register 421 wird dann durch die Wähleinrichtung 423 zu der Nachrichtenbus-Schnittstelle 409 übertragen, was unter der Steuerung einer Xmit-Nachrichtenzustandsmaschine 427 geschieht. Das bedeutet, die Beschreibungsdatenfolge in dem Sendepufferregister 421 wird durch die Xmit- Nachrichtenzustandsmaschine 427 über die 32-Bit-Sende-Nachrichtenbusschnittstelle 409 zu dem Sendedatenpuffer 422 (Fig. 7) übertragen. Die Daten in dem Sendedatenpuffer 422 (Fig. 7) werden von dem Paketierungsabschnitt des Paketierers/­ Depaketierers 428 paketiert, wie in Fig. 11 in dem Schritt 530 angegeben ist.
Unter Bezugnahme auf Fig. 14A sei genauer das Verfahren zur Durchführung der DMA-Sendeoperation 418 (Fig. 9) dargestellt. Wie oben erwähnt hat jede Beschreibungsdatenfolge einen Umfang von 64 Byte. Vorliegend findet der Transfer der Beschreibungsdatenfolge über zwei Schnittstellen statt, nämlich den CPU-Bus 317 und den Nachrichtensende-Schnittstellenbus 409 (Fig. 7). Der CPU-Bus 317 ist 64 Bit breit und acht 64-Bit-Doppelwörter bilden eine 64-Byte-Beschreibungsdatenfolge. Die Xmit- CPU-Zustandsmaschine 419 erzeugt die Steuersignale, welche in der Übertragung der Beschreibungsdatenfolge von dem RAM-Speicher 312 in das Sendepufferregister 421 (Fig. 7) resultieren. Die 64-Byte-Beschreibungsdatenfolge wird in 32-Byte- Schubzugriffen auf dem CPU-Bus 317 übertragen. Jedes der acht Doppelwörter wird sequentiell in dem Sendepufferregister 421 (Fig. 9) gespeichert. In dem Schritt 800 lädt somit die Zustandsmaschine 410 der Nachrichtenmaschine 315 das Sende-DMA- Adressenregister 413 mit der Adresse der Beschreibungsdatenfolge, welche in die Sendezeile 312S im RAM-Speicher 312 übertragen werden soll. Dies geschieht durch Feststellen des Tx_WE-Signals und dies bringt die Xmit-CPU-Zustandsmaschine 419 in den Schritt 800, lädt das Adressenregister 413 und schreitet zu dem Verfahrensschritt 802 fort. In diesem Schritt lädt die Xmit-CPU-Zustandsmaschine 419 den CPU-Übertragungszähler 431 (Fig. 9) mit einer 32-Byte-Zählung welche 2 ist. Dies ist die Zahl der Übertragungen von jeweils 32 Byte, welche erforderlich wären, um die Beschreibungsdatenfolge von 64 Bytes zu übertragen (siehe Schritt 802). Die Xmit- CPU-Zustandsmaschine 419 schreitet nun zu dem Schritt 804 fort. In dem Schritt 804 prüft die Zustandsmaschine 419 die Gültigkeit der Adresse, welche in ihr Adressenregister 413 geladen wird. Die in das Adressenregister 413 geladene Adresse wird gegenüber Werten überprüft, welche in die Speicheradressenregister 435 eingegeben worden sind. Die Speicheradressenregister 435 enthalten die Basisadresse und den Versatz der Sendezeile 312S in dem RAM-Speicher 312. Die Summe der Basisadresse und des Versatzes ist der Bereich von Adressen für die Sendezeile 3125 im Speicher 312. Die Adressenprüfschaltung 437 prüft fortwährend, ob die Adresse in dem Adressenregister 413 in dem Bereich der Sendezeile 312S in dem RAM-Speicher 312 liegt. Stellt sich heraus, daß die Adresse außerhalb des Bereiches der Sendezeile 312S liegt, dann wird der Transfer abgebrochen und dieser Zustand wird in dem Statusregister 404 gespeichert und dann zu der Zustandsmaschine 410 der Nachrichtenmaschine 315 in dem Schritt 416 zurückgegeben. Die Überprüfung bezüglich gültiger Adressen geschieht in dem Schritt 805. Liegt die Adresse innerhalb des Bereiches und ist also gültig, dann fährt die Zustandsmaschine 419 mit der Übertragung fort und schreitet zu dem Schritt 806 weiter. In dem Schritt 806 fordert die Sende-DMA-Zustandsmaschine 419 den CPU-Bus 317 durch Feststellen des Xmit_BR- Signales zu der Entscheidungseinrichtung 414 an und schreitet dann zu dem Schritt 807 fort. In dem Schritt 807 prüft die Sende-DMA-Zustandsmaschine oder Xmit_CPU- Zustandsmaschine 419 fortwährend, ob ihr von der Entscheidungseinrichtung der Bus zugeteilt worden ist. Wenn der CPU-Bus 317 zugeteilt ist, dann schreitet die Xmit_CPU-Zustandsmaschine zu dem Schritt 808 fort. In dem Schritt 808 erzeugt die Xmit_CPU-Zustandsmaschine 419 eine Adresse und einen Datenzyklus, der im wesentlichen 32 Bytes der Beschreibungsdatenfolge von der Sendezeile 312S in dem RAM-Speicher 312 in sein Sende-Pufferregister 421 einliest. Die Xmit_CPU- Zustandsmaschine 419 geht nun zu dem Schritt 810 weiter. In dem Schritt 810 lädt die Xmit_CPU Zustandsmaschine 419 die Beschreibungsdatenfolge, die in das Pufferregister 421 eingelesen worden war und geht dann zu dem Schritt 811 weiter. Im Schritt 811 wird eine Prüfung bezüglich irgendwelcher Kohärenzfehler des örtlichen Cache-Speichers 319 an diesen 32 Bits der Daten gemacht (d. h., Prüfungen, ob die jüngsten Daten sich in dem Cache-Speicher 319 und nicht in dem RAM-Speicher 312 befinden). Wenn festgestellt wird, daß diese Daten sich in dem örtlichen Cache- Speicher 319 befinden, dann verwirft die Xmit_CPU-Zustandsmaschine 419 diese Daten und geht zu dem Schritt 806 über. Die Xmit_CPU-Zustandsmaschine 419 fordert nun den CPU-Bus 317 wiederum an und überträgt, wenn die Zuteilung erfolgt ist, weitere 32 Bytes von Daten in das Sende-Pufferregister 421, wobei zu dieser Zeit die CPU-Einheit bereits die letzte Kopie der Beschreibungsdatenfolge in dem RAM- Speicher 312 übertragen hat. In Fällen, in denen die 32 Bytes der Beschreibungsdatenfolge, welche anfänglich von dem RAM-Speicher 312 herausgegriffen wurden, sich nicht in dem örtlichen Cache-Speicher 319 befanden (d. h., wenn kein Cache-Speicher-Kohärenzfehler entdeckt wurde), dann schreitet die Xmit_CPU-Zustandsmaschine 419 zu dem Schritt 812 fort. In dem Schritt 812 dekrementiert die Zustandsmaschine 419 die Zähler 431 und inkrementiert das Adressenregister 413, so daß dieses Adressenregister 413 auf die nächste Adresse weist. Die Xmit_CPU-Zustandsmaschine geht dann zu dem Schritt 814 über. Im Schritt 814 prüft die Xmit_CPU-Zustandsmaschine 419, ob der Übertragungszähler 431 abgelaufen ist, d. h., auf Null zurückgezählt hat. Hat sich gezeigt, daß der Zählerstand nicht Null ist, dann schreitet die Zustandsmaschine 419 zu dem Schritt 804 fort, um die Übertragung der nächsten 32 Bytes der Beschreibungsdatenfolge zu starten. In dem Falle, in welchem der Zählerstand des Zählers 431 Null ist, geht das Verfahren zu dem Schritt 816 weiter, um die Übertragung zu vollenden. Eine erfolgreiche Übertragung der zweiten 32 Bytes der Beschreibungsdatenfolge von dem RAM-Speicher 312 in das Sende-DMA- Pufferregister 421 vervollständigt die Übertragung über den CPU-Bus 317.
Die Nachrichtenschnittstelle 409 hat eine Breite von 32 Bit und sechzehn 32-Bit- Wörter bilden eine 64-Bytes-Beschreibunsgdatenfolge. Die 64-Byte- Beschreibungsdatenfolge wird in Schüben von jeweils 32 Bytes übertragen. Die Sende- Nachrichtenübertragung-Zustandsmaschine 427 steuert und handhabt die Schnittstelle 409. Die Xmit_CPU-Zustandsmaschine stellt das Signal 433 fest, um anzuzeigen, daß die ersten 32 Bytes erfolgreich über den CPU-Bus 317 übertragen worden sind (Fig. 14B, Schritt 818), was die Sende-Nachrichtenübertragungs- Zustandsmaschine in den Schritt 818 bringt und die Übertragung an der Nachrichtenschnittstelle in Gang setzt. Im Schritt 820 stellt die Sende- Nachrichtenübertragungs-Zustandsmaschine 427 die Schub-/Übertragungszähler 439 zurück und initiiert die Übertragung über die Nachrichtenschnittstelle 409. In dem Schritt 820 wird die Übertragung über die Nachrichtenschnittstelle 409 durch Feststellung des "Übertragung gültig"-Signales (TX_DATA_Valid) eingeleitet, das der Zustandsmaschine 410 der Nachrichtenmaschine 315 anzeigt, daß gültige Daten auf dem Bus 409 vorhanden sind. Die Sende-Nachrichtenübertragungsmaschine 427 überträgt 32 Bit von Daten bei jedem aufeinanderfolgendem Takt, bis ihr Schubzähler in der Schub-/Übertragungs-Zähleinrichtung 439 einen Wert von acht erreicht, wozu auf Schritt 822 verwiesen sei. Der Schubzähler in der Schub- /Übertragungszählereinrichtung 439 wird für jedes Wort von 32 Bit, das auf den Nachrichtenbus 409 gegeben wird, durch ein Signal auf der Leitung 433 inkrementiert. Wenn der Schubzähler einen Stand von acht hat, dann wird durch die Zustandsmaschine 427 eine Prüfung durchgeführt, ob der Übertragungszähler 431 abgelaufen ist, d. h., einen Zählerstand Null erreicht hat (siehe Schritt 824). Der Ablauf des Übertragungszählers in der Schub-/Übertragungs-Zählereinrichtung 439 zeigt an, daß die 64 Bytes Beschreibungsdatenfolge zu dem Sendepuffer 422 in der Nachrichtenmaschine 415 übertragen worden sind. Ist der Zähler abgelaufen, dann schreitet die Nachrichtenübertragungs-Zustandsmaschine 427 zu dem Schritt 836 weiter. In dem Schritt 826 stellt die Nachrichtenübertragungs-Zustandsmaschine das Ausgangssignal "Ende der Übertragung" (Tx_EOT) fest, das das Ende der Übertragung über den Nachrichtenbus 409 anzeigt. In diesem Zustand wird nach Feststellung des Tx_EOT-Signales der Zustand des Übertragungsvorgangs, der in dem Statusregister 404 festgehalten ist, zu der Zustandsmaschine 410 der Nachrichtenmaschine 315 gesandt. Die DMA-Operation ist damit abgeschlossen und die Beschreibungsabfolge ist in dem Übertragungspuffer 422 (Fig. 7) gespeichert.
Wenn andererseits der Übertragungszähler in der Schub-/Übertragungs- Zähleinrichtung 439 nicht abgelaufen ist, dann geht der Ablauf zu dem Schritt 800 und wiederholt die oben beschriebene Prozedur zur Ubertragung der zweiten 32 Bytes von Beschreibungsdaten, wobei zu dieser Zeit der Übertragungsvorgang abgeschlossen ist.
Es sei nun Fig. 10 betrachtet. Hier ist der Empfangs-DMA-Ablauf 420 dargestellt. Es wird eine von einer anderen Leitsteuereinrichtung empfangene Nachricht in den RAM-Speicher 312 (Fig. 12) eingeschrieben. Der Empfangs-DMA-Ablauf 420 ist so ausgebildet, daß er drei Arten von Informationen handhaben kann:
eine Fehlerinformation, welche einen Umfang von 8 Bytes hat;
eine Bestätigungsinformation, welche einen Umfang von 16 Bytes hat; und
eine empfangene Nachrichten-Nutzinformation/oder eine Netzmanagement­ information, welche einen Umfang von 32 Bytes hat.
Es sei nun auch noch Fig. 7 in Betracht gezogen. Die Zustandsmaschine 410 der Nachrichtenmaschine 315 stellt das Rx_WE-Signal fest, welches dem Empfangs- DMA-System 420 anzeigt, daß es für die Übertragung der Daten in seinen Empfangspuffer 426 (Fig. 7) bereit ist. Die Daten in dem Empfangspuffer können die Fehlerinformation von 8 Bytes, die Bestätigungsinformation von 16 Bytes oder die Netzmanagement- bzw. Empfangsnachrichten-Nutzinformation von 32 Bytes sein. Es wird eine codierte Empfangs-Übertragungszählung von 2 Bit an dem Empfangs- Übertragungs-Zählsignal angebracht, welche die Art der Information und eine Adresse anzeigt, welche diejenige Adresse ist, an der diese Information in der Empfangszeile des RAM-Speichers 312 gespeichert werden soll. In Abhängigkeit von dem Empfangs- Schreibsteuersignal Rx_WE lädt die Empfangsnachrichtenmaschine 450 (Fig. 10) die Adresse in das Adressenregister 452 und den Übertragungszählerstand, welcher die Art der Information anzeigt, in den Empfangs-Übertragungszähler 454. Die in das Adressenregister 452 geladene Adresse wird von der Adressenprüfschaltung 456 geprüft, um festzustellen, ob sie sich in dem Bereich von Empfangs- Speicherzeilenadressen im RAM-Speicher 312 befindet. Dies geschieht durch Überprüfung der Adresse gegenüber Werten, welche in die Speicherregister 457 eingegeben sind (d. h., ein darin vorgesehenes Basisadressenregister und ein Versatzregister). Das Basisadressenregister enthält die Startadresse der Empfangs- Speicherzeile 312R im RAM-Speicher 312 und das Versatzregister enthält die Größe dieser Empfangs-Speicherzeile 312R in dem RAM-Speicher 312. Die Summe der gespeicherten Werte in dem Basisadressenregister und in dem Versatzregister beschreibt daher den Bereich von Adressen der Empfangs-Speicherzeile in dem RAM- Speicher 312. Die Speicherregister 457 werden während der Initialisierung geladen. Bei dem folgenden Takt nach der Feststellung des Rx_WE-Signales schreitet die Zustandsmaschine 410 der Nachrichtenmaschine 315 weiter, um die Daten auf einen 32- Bit-Datenbus 407 der Nachrichtenmaschine 315 zu setzen (Fig. 10). Ein Rx_DATA_Valid-Signal begleitet jeweils 32 Datenbits und zeigt an, daß die Daten auf dem Datenbus 407 der Nachrichtenmaschine gültig sind. In Abhängigkeit von diesem Rx_DATA_Valid-Signal lädt die Empfangs-Nachrichten-Zustandsmaschine 450 die Daten auf dem Datenbus in das Empfangs-Pufferregister 460. Das Ende der Übertragung über den Datenbus 407 der Nachrichtenmaschine wird durch Feststellung des Rx_EOT-Signales angezeigt. Zu dieser Zeit lädt die Empfangs- Nachrichtenübertragungs-Zustandsmaschine 450 die letzten 32 Bit von Daten auf dem Nachrichten-Datenbus 407D der Busanordnung 407 in die Empfangspufferregister 460. Dies signalisiert das Ende der Übertragung über den Datenbus-Anteil D des Busses 407. Das Ende dieser Ubertragung wird der Empfangs-CPU-Zustandsmaschine 462 durch Feststellung des Signales 464 vermittelt. Die Empfangs-CPU-Zustandsmaschine 462 fordert nun Zugang zu dem CPU-Bus 317 durch Feststellung des Signales REC_Br. Nach einer Entscheidung durch die CPU-Bus-Entscheidungseinrichtung 414 (Fig. 7) erhält das Empfangs-DMA-System 420 (Fig. 10) Zugriff zu dem CPU-Bus 317. Die Empfangs-CPU-Zustandsmaschine 462 schreitet fort, um die Daten in ihrem Pufferregister 424 über den CPU-Bus 317 zu der Empfangsspeicherzeile 312R in dem RAM-Speicher 312 zu übertragen. Gleichzeitig werden diese Daten auch in ein Duplikat-Pufferregister 466 übertragen. Die Daten am Ausgang des Empfang- Pufferregister 460 laufen zu einem Eingang eines Wählers 470 und laufen auch zu dem Duplikat-Empfangspufferregister 466. Der Ausgang des Duplikat- Empfangspufferregisters 466 wird in einen zweiten Eingang der Wähleinrichtung 470 eingegeben. Während die Daten durch die Empfangs-CPU-Zustandsmaschine 462 übertragen werden, werden sie auch auf Cache-Speicher-Kohärenzfehler überprüft. Wenn die Daten entsprechend der Adresse, mit welcher die Einschreibung in den RAM- Speicher 312 erfolgt, in dem lokalen Cache-Speicher 319 (Fig. 7) gelegen sind, dann wartet die Empfangs-DMA-Maschine 420 darauf, daß die CPU-Einheit 310 die alten Daten in ihrem lokalen Cache-Speicher 319 in die Empfangs-Speicherzeile 312R des RAM-Speichers 312 zurückkopiert und dann diese alten Daten mit einer Kopie der neuen Daten von dem Duplikat-Pufferregister 466 überschreibt.
Wenn genauer gesagt die CPU 310 dem Empfangs-DMA-System 420 anzeigt, daß die Daten entsprechend dem Empfangspufferregistex 460 in dem lokalen Cache- Speicher 319 verfügbar sind, dann erzeugt die Empfangs-CPU-Zustandmaschine 462 ein Auswahlsignal auf Leitung 463, durch welche, die Daten in dem Duplikat- Pufferregister 466 zu dem Ausgang des Wählers 470 und dann zu dem Bus 317 überkoppelt werden, um in den RAM-Speicher 312 eingespeichert zu werden. Das erfolgreiche Einschreiben in den RAM-Speicher 312 vervollständigt den DMA- Übertragungsvorgang. Das Empfangs-DMA-System 420 signalisiert dann der Zustandsmaschine 410 der Nachrichtenmaschine 315 den Status der Übertragung. Der Status der Übertragung wird in dem Statusregister 459 festgehalten.
Sowohl bei dem Empfangs-DMA-Vorgang als auch bei dem Sende-DMA- Vorgang findet eine Prüfung des lokalen Cache-Speichers 319 statt, um festzustellen, ob er im Falle des Empfangs-DMA-Vorgangs "alte" Daten enthält oder ob er im Falle des Sende-DMA-Vorganges "neue" Daten enthält.
Unter Bezugnahme auf Fig. 15A sei nun der Betrieb des Empfangs-DMA- Systems 420 dargestellt. In dem Schritt 830 prüft also die Empfangs- Nachrichtenmaschine 450, ob das Schreibsteuerbefehlsignal Rx_WE festgestellt worden ist. Geschah dies, so schreitet der Empfangs-DMA-Ablauf 420 zum Laden des Adressenregisters 452 und des Übertragungszählers 454 fort. Der in den Übertragungszähler 454 geladene Wert bestimmt die Art der DMA-Übertragung, welche von der Nachrichtenübertragungs-Zustandsmaschine 310 (Fig. 7) gefordert wird. Die Feststellung des Rx_WE Signals startet die Empfangs-DMA- Übertragungsoperation. Dies bringt die Empfangs-Nachrichtenzustandsmaschine 450 in den Ablaufschritt 832. In dem Schritt 832 lädt die Zustandsmaschine 450 das Adressenregister 452 und den Übertragungszähler 454 und schreitet dann zu dem Schritt 834 fort. In dem Schritt 834 führt sie eine Prüfung durch, um festzustellen, ob das Rx_DATA_Valid-Signal festgestellt worden ist. Ist dies der Fall, so schreitet sie zu dem Schritt 836 fort. In diesem Schritt lädt die Empfangs-Nachrichtenübertragungs- Zustandsmaschine 450 das Pufferregister 460 (Fig. 10) mit den Daten auf dem Nachrichtenübertragungs-Datenbusteil 407D des Busses 407 von Fig. 10. Das Rx_DATA_Valid-Signal begleitet jedes Datenstück, das auf den Bus 407 gebracht wird. Die Daten werden nachfolgend in die Pufferregister 450 (Fig. 10) geladen. Das Ende der Übertragung auf dem Nachrichtenmaschinen-Datenbus 407D der Busanordnung 407 wird durch Feststellung des Rx_EOT-Signales signalisiert. Wenn sich die Empfangs- Nachrichtenübertragungs-Zustandsmaschine 450 in dem das Ende des Übertragungsvorganges bildenden Schritt 840 befindet, dann signalisiert sie dies der Empfangs-CPU-Zustandsmaschine 462 und diese startet die Übertragung auf der Seite des CPU-Busses 317.
Der Ablauf für die Empfangs-CPU-Zustandsmaschine sei nachfolgend erklärt. Es sei also auf Fig. 15B Bezug genommen. Das Übertragungsende auf dem Datenbusteil 407D des Busses 407 der Nachrichtenübertragungsmaschine startet die Empfangs-CPU- Zustandsmaschine 462 und bringt sie zu dem Schritt 842. Die Empfangs-CPU- Zustandsmaschine 462 prüft bezüglich der Gültigkeit der Adresse in diesem Schritt (Schritt 844). Dies geschieht durch die Adressenprüfschaltung 456. Wenn die Adresse, die in das Adressenregister 452 geladen ist, außerhalb des Bereiches der Empfangsspeicherzeile 312R im RAM-Speicher 312 ist, so wird die Übertragung abgebrochen und der Zustand wird in dem Empfangs-Zustandsregister 459 festgehalten und die Empfangs-CPU-Zustandsmaschine 462 schreitet zu dem Schritt 845 weiter. Bei Vorliegen einer gültigen Adresse geht die Empfangs-CPU-Zustandsmaschine 462 zu dem Schritt 846 über. In dem Schritt 846 fordert die Empfangs-CPU-Zustandsmaschine 462 Zugang zu dem CPU-Bus 317. Sie geht dann auf den Schritt 848 über. Im Schritt 848 prüft sie die Zuteilung des Busses 317. Auf eine qualifizierte Zuteilung hin schreitet sie zu dem Schritt 850 fort. Im Schnitt 850 führt die Empfangs-CPU-Zustandsmaschine 462 einen Adressen- und Datenzyklus durch, welcher im wesentlichen die Daten in den Pufferregistern 460 in die Empfangs-Speicherzeile 312R im RAM-Speicher 312 einschreibt. Gleichzeitig mit der Einschreibung in den RAM-Speicher 312 werden die auf den CPU-Bus 317 gelegten Daten auch in das Duplikat-Pufferregister 466 geladen. Zur selben Zeit zeigt die CPU 310 auf einer Steuerleitung auch an, ob die Daten, die der in den RAM-Speicher 312 eingeschriebenen Adresse entsprechen, in ihrem lokalen Cache-Speicher verfügbar sind. Am Ende des Adressen- und Datenzyklus schreitet die Empfangs-CPU-Zustandsmaschine 462 zu dem Schritt 850 fort. In diesem Schritt führt sie eine Prüfung bezüglich Cache-Speicher-Kohärenz-Fehlern derart durch, wie sie oben in Verbindung mit dem Sende-DMA-System 418 (Fig. 9) beschrieben wurde. Wenn ein Cache-Speicher-Kohärenz-Fehler entdeckt wird und die Empfangs-CPU- Zustandsmaschine 462 zum Schritt 486 fortschreitet und die Übertragung im einzelnen von neuem versucht, so erzeugt die Empfangs-CPU-Zustandsmaschine 462 nun einen anderen Adressen- und Datenzyklus zu der vorhergehenden Adresse, und dieses Mal werden die Daten von dem Duplikat-Pufferregister 456 auf den CPU-Datenbus 317 gegeben. Wenn keine Cache-Speicher-Kohärenz-Fehler vorhanden sind, dann schreitet die Empfangs-CPU-Zustandsmaschine 462 zu dem Schritt 852 fort, in welchem sie den Übertragungszähler 454 dekrementiert und die Adresse in dem Adreßregister 452 inkrementiert. Dann geht die Empfangs-CPU-Zustandsmaschine 462 auf den Schritt 854 über. Im Schritt 854 prüft die Zustandsmaschine 462, ob der Übertragungszähler abgelaufen ist, d. h. den Zählerstand Null aufweist. Bei einem Zählerstand des Transferzählers ungleich Null schreitet die Empfangs-CPU-Zustandsmaschine 462 zu dem Schritt 844 fort und wiederholt die oben beschriebene Prozedur, bis der Übertragungszähler den Zählerstand Null erreicht. Wird in dem Schritt 854 ein Übertragungs-Zählerstand Null festgestellt, so beendet dies die Einschreibung in die Empfangs-Speicherzeile 312R im RAM-Speicher 312 und die Empfangs-CPU- Zustandsmaschine schreitet zum Schritt 845 fort. Im Schritt 845 führt sie den in dem Statusregister gespeicherten Status zurück zu der Zustandsmaschine 410 der Nachrichtenübertragungsmaschine 315.
Es sei wieder auf Fig. 7 Bezug genommen. Das Unterbrechungssteuerungs- Statusregister 412 sei mehr ins einzelne gehend beschrieben. Wie oben angegeben wird ein Paket von dem Paketierungsabschnitt des Paketieres/Depaketierers 428 zu dem Querschienenschalter 420 zur Übertragung zu einer Leitsteuereinrichtung oder zu mehreren der Leitsteuereinrichtungen gesandt. Es sei bemerkt, daß das von dem Paketierungsabschnitt des Paketieres/Depaketieres 428 abgesandte Paket durch einen Paritätsgenerator PG in der Nachrichtenübertragungsmaschine 315 läuft, bevor es zu dem Querschienenschalter 320 geführt wird. Wenn dieses Paket durch die Nachrichtenübertragungsmaschine 315 beispielsweise in der Leitsteuereinrichtung 180 1 zu dem Querschienenschalter 320 gesandt wird, so wird ein Paritätsbit zu dem Datenpaket durch den Paritätsbitgenerator PG hinzugefügt, bevor es zu dem Querschienenschalter 320 läuft. Die Parität des Paketes wird in dem Paritätsprüfabschnitt des Paritätsprüfers/Paritätsgenerators (PG-C) im Querschienenschalter 320 geprüft. Das Ergebnis der Prüfung wird von dem Paritätsgenerator/Paritätsprüfer im Querschienenschalter 320 zu dem Unterbrechungssteuerungs-Statusregister 412 in der Leitsteuereinrichtung 180 1 zurückgesandt.
In gleicher Weise läuft, wenn ein Paket von dem Querschienenschalter 320 zu der Nachrichtenübertragungsmaschine 315, beispielsweise der Leitsteuereinrichtung 180 1, ausgesandt wird, das Paket durch einen Paritätsgeneratorabschnitt des Paritätsprüfers/Paritätsgenerators (PG-C) in dem Querschienenschalter 320, bevor es zu der Nachrichtenübertragungsmaschine 315 in der Leitsteuereinrichtung 1801 übertragen wird. Die Parität des Paketes wird dann in dem Paritätsprüfungsabschnitt des Paritätsprüfers (PC) in der Leitsteuereinrichtung 180 1 geprüft und das Ergebnis (d. h., der Zustand) wird zu dem Statusregister 412 übertragen.
Es ist eine Anzahl von Ausführungsformen der Erfindung beschrieben worden. Es versteht sich jedoch für den Fachmann, daß eine Vielzahl und Vielfältigkeit von Abwandlungen im Rahmen der offenbarten prinzipiellen Gedanken möglich ist. Demgemäß fallen auch andere Ausführungsformen unter die durch die anliegenden Ansprüche definierte Erfindung.

Claims (14)

1. Systemschnittstelle, welche folgendes enthält:
  • a) eine Anzahl erster Leitsteuereinrichtungs-Schaltungsplatten, von denen jede folgendes aufweist:
    • a) eine Mehrzahl erster Leitsteuereinrichtungen; und
    • b) einen Querschienenschalter mit Eingangs-/Ausgangsanschlüssen, welche mit den ersten Leitsteuereinrichtungen auf der betreffenden einen der ersten Leitsteuereinrichtungs- Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs- /Eingangsanschlüssen;
  • b) eine Mehrzahl von zweiten Leitsteuereinrichtungs-Schaltungsplatten, von denen jede folgendes aufweist:
    • a) eine Mehrzahl von zweiten Leitsteuereinrichtungen; und
    • b) einen Querschienenschalter mit Eingangs-/Ausgangsanschlüssen, welche mit den zweiten Leitsteuereinrichtungen auf der betreffenden einen der zweiten Leitsteuereinrichtungs- Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs- /Eingangsanschlüssen;
  • c) einen Datenübertragungsabschnitt mit einem Cache-Speicher, wobei dieser Cache-Speicher mit der Mehrzahl von ersten und zweiten Leitsteuereinrichtungen gekoppelt ist;
  • d) ein Nachrichtenübertragungsnetzwerk, welches unabhängig von dem Datenübertragungsabschnitt arbeitet; und
  • e) wobei die ersten und zweiten Leitsteuereinrichtungen die Datenübertragung zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen in Abhängigkeit von Nachrichten steuern, die zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen über das Nachrichtenübertragungsnetzwerk laufen, um die Datenübertragung zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen zu erleichtern, wobei diese Daten durch den Cache-Speicher in dem Datenübertragungsabschnitt fließen.
2. Systemschnittstelle nach Anspruch 1, bei welcher jede der ersten Leitsteuereinrichtungen folgendes aufweist:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen.
3. Systemschnittstelle nach Anspruch 1, bei welcher jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen.
4. Systemschnittstelle nach Anspruch 2, bei welcher jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen.
5. Systemschnittstelle nach Anspruch 1, bei welcher jede der ersten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und mit der Datenpipeline gekoppelt ist, um die Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen zu steuern und die Daten zwischen dem Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und dem Cache-Speicher zu leiten.
6. Systemschnittstelle nach Anspruch 1, bei welcher jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und mit der Datenpipeline gekoppelt ist, um die Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen zu steuern und die Daten zwischen dem Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher zu leiten.
7. Systemschnittstelle nach Anspruch 5, bei welcher jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und mit der Datenpipeline gekoppelt ist, um die Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen zu steuern und um die Daten zwischen dem Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher zu leiten.
8. Datenspeichersystem zur Übertragung von Daten zwischen einem Host- Computer/Server und einer Reihe von Plattenlaufwerken über eine Systemschnittstelle, wobei die Systemschnittstelle folgendes enthält:
  • a) eine Mehrzahl von ersten Leitsteuereinrichtungs-Schaltungsplatten, die mit dem Host-Computer/Server gekoppelt sind, wobei jede der ersten Leitsteuereinrichtungs-Schaltungsplatten folgendes aufweist:
    • a) eine Mehrzahl von ersten Leitsteuereinrichtungen; und
    • b) einen Querschienenschalter mit Eingangs-/Ausgangsanschlüssen, die mit den ersten Leitsteuereinrichtungen auf der betreffenden einen der ersten Leitsteuereinrichtungs-Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs-/Eingangsanschlüssen;
  • b) eine Mehrzahl von zweiten Leitsteuereinrichtungs-Schaltungsplatten, die mit dem Host-Computer/Server gekoppelt sind, wobei jede der zweiten Leitsteuereinrichtungs-Schaltungsplatten folgendes aufweist:
    • a) eine Mehrzahl von zweiten Leitsteuereinrichtungen; und
    • b) einen Querschienenschalter mit Eingangs-/Ausgangsanschlüssen, die mit den zweiten Leitsteuereinrichtungen auf der betreffenden einen der zweiten Leitsteuereinrichtungs-Schaltungsplatten gekoppelt sind, und ein Paar von Ausgangs-/Eingangsanschlüssen;
  • c) einen Datenübertragungsabschnitt mit einem Cache-Speicher, wobei dieser Cache-Speicher mit der Mehrzahl von ersten und zweiten Leitsteuereinrichtungen gekoppelt ist;
  • d) ein Nachrichtenübertragungsnetzwerk, welches unabhängig von den Datenübertragungsabschnitt arbeitet; und
  • e) wobei die ersten und zweiten Leitsteuereinrichtungen die Datenübertragung zwischen dem Host-Computer/Server und der Reihe von Plattenlaufwerken in Abhängigkeit von Nachrichten steuern, die zwischen den ersten Leitsteuereinrichtungen und den zweiten Leitsteuereinrichtungen über das Nachrichtenübertragungsnetzwerk laufen, um die Datenübertragung zwischen dem Host-Computer/Server und der Reihe von Plattenlaufwerken zu erleichtern, wobei diese Daten durch den Cache-Speicher in dem Datenübertragungsabschnitt fließen.
9. Speichersystem nach Anspruch 8, bei welchem jede der ersten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen.
10. Datenspeichersystem nach Anspruch 8, bei welchem jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen.
11. Datenspeichersystem nach Anspruch 9, bei welchem jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist; und
eine Steuereinrichtung zur Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen.
12. Speichersystem nach Anspruch 8, bei welchem jede der ersten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und mit der Datenpipeline gekoppelt ist, um die Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der ersten Leitsteuereinrichtungen zu steuern und um die Daten zwischen dem Eingang der betreffenden einen der ersten Leitsteuereinrichtungen und den Cache-Speicher zu leiten.
13. Datenspeichersystem nach Anspruch 8, bei welchem jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und der Datenpipeline gekoppelt ist, um die Übertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen zu steuern und um die Daten zwischen dem Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher zu leiten.
14. Datenspeichersystem nach Anspruch 12, bei welchem jede der zweiten Leitsteuereinrichtungen folgendes enthält:
eine Datenpipeline, die zwischen einen Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher geschaltet ist;
einen Mikroprozessor; und
eine Steuereinrichtung, die mit dem Mikroprozessor und der Datenpipeline gekoppelt ist, um die Ubertragung der Nachrichten zwischen dem Nachrichtenübertragungsnetzwerk und der betreffenden einen der zweiten Leitsteuereinrichtungen zu steuern und um die Daten zwischen dem Eingang der betreffenden einen der zweiten Leitsteuereinrichtungen und den Cache-Speicher zu leiten.
DE10116343A 2000-03-31 2001-04-02 Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk, mit einer Mehrzahl von Leitsteuereinrichtungen auf einer gemeinsamen gedruckten Schaltungsplatte Ceased DE10116343A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/539,966 US7003601B1 (en) 2000-03-31 2000-03-31 Data storage system having separate data transfer section and message network with plural directions on a common printed circuit board

Publications (1)

Publication Number Publication Date
DE10116343A1 true DE10116343A1 (de) 2001-10-25

Family

ID=24153397

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10116343A Ceased DE10116343A1 (de) 2000-03-31 2001-04-02 Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk, mit einer Mehrzahl von Leitsteuereinrichtungen auf einer gemeinsamen gedruckten Schaltungsplatte

Country Status (4)

Country Link
US (1) US7003601B1 (de)
JP (2) JP4350319B2 (de)
DE (1) DE10116343A1 (de)
GB (1) GB2366049B (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7467238B2 (en) 2004-02-10 2008-12-16 Hitachi, Ltd. Disk controller and storage system
JP4405277B2 (ja) 2004-02-16 2010-01-27 株式会社日立製作所 ディスク制御装置
US10698844B1 (en) 2019-04-19 2020-06-30 EMC IP Holding Company LLC Intelligent external storage system interface
US11151063B2 (en) 2019-04-19 2021-10-19 EMC IP Holding Company LLC Host system directly connected to internal switching fabric of storage system
US11500549B2 (en) 2019-04-19 2022-11-15 EMC IP Holding Company LLC Secure host access to storage system resources via storage system interface and internal switching fabric
US10698613B1 (en) * 2019-04-19 2020-06-30 EMC IP Holding Company LLC Host processing of I/O operations
US10740259B1 (en) 2019-04-19 2020-08-11 EMC IP Holding Company LLC Host mapping logical storage devices to physical storage devices

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4484262A (en) 1979-01-09 1984-11-20 Sullivan Herbert W Shared memory computer method and apparatus
US4438494A (en) 1981-08-25 1984-03-20 Intel Corporation Apparatus of fault-handling in a multiprocessing system
US4780808A (en) 1981-11-27 1988-10-25 Storage Technology Corporation Control of cache buffer for memory subsystem
US4476526A (en) 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4480307A (en) 1982-01-04 1984-10-30 Intel Corporation Interface for use between a memory and components of a module switching apparatus
US4636946A (en) 1982-02-24 1987-01-13 International Business Machines Corporation Method and apparatus for grouping asynchronous recording operations
US4456987A (en) 1982-03-22 1984-06-26 International Telephone And Telegraph Corporation Digital switching network
JPS59100964A (ja) 1982-12-01 1984-06-11 Hitachi Ltd ディスク制御システム及びその並列データ転送方法
US4633387A (en) 1983-02-25 1986-12-30 International Business Machines Corporation Load balancing in a multiunit system
US4688168A (en) 1984-08-23 1987-08-18 Picker International Inc. High speed data transfer method and apparatus
US4636948A (en) 1985-01-30 1987-01-13 International Business Machines Corporation Method for controlling execution of application programs written in high level program language
CA1336204C (en) 1988-07-11 1995-07-04 Akira Noguchi Packet switching system for a distributed processing isdn switch
JP2567922B2 (ja) 1988-08-30 1996-12-25 株式会社日立製作所 パス制御方式
JP2872251B2 (ja) 1988-10-12 1999-03-17 株式会社日立製作所 情報処理システム
US6038641A (en) 1988-12-30 2000-03-14 Packard Bell Nec Two stage cache memory system and method
US5119485A (en) 1989-05-15 1992-06-02 Motorola, Inc. Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation
JPH0338725A (ja) * 1989-07-05 1991-02-19 Mitsubishi Electric Corp データ処理装置及びマイクロプロセッサ
US5115433A (en) 1989-07-18 1992-05-19 Metricom, Inc. Method and system for routing packets in a packet communication network
US5214768A (en) * 1989-11-01 1993-05-25 E-Systems, Inc. Mass data storage library
US5140592A (en) 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5263145A (en) 1990-05-24 1993-11-16 International Business Machines Corporation Method and means for accessing DASD arrays with tuned data transfer rate and concurrency
US5269011A (en) 1990-09-24 1993-12-07 Emc Corporation Dynamically reconfigurable data storage system with storage system controllers selectively operable as channel adapters on storage device adapters
US5206939A (en) 1990-09-24 1993-04-27 Emc Corporation System and method for disk mapping and data retrieval
JPH0776942B2 (ja) 1991-04-22 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチプロセッサ・システムおよびそのデータ伝送装置
US5440752A (en) 1991-07-08 1995-08-08 Seiko Epson Corporation Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU
JP3451099B2 (ja) 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
JP2770901B2 (ja) 1992-09-29 1998-07-02 富士ゼロックス株式会社 ディスク制御方法
US5579474A (en) * 1992-12-28 1996-11-26 Hitachi, Ltd. Disk array system and its control method
JP3200500B2 (ja) 1993-05-27 2001-08-20 株式会社日立製作所 ディスク装置及びディスク制御方法
JP2630198B2 (ja) 1993-05-31 1997-07-16 日本電気株式会社 周辺装置用同報型バスインタフェース
US5903911A (en) * 1993-06-22 1999-05-11 Dell Usa, L.P. Cache-based computer system employing memory control circuit and method for write allocation and data prefetch
JP3264465B2 (ja) 1993-06-30 2002-03-11 株式会社日立製作所 記憶システム
JPH07134635A (ja) 1993-11-10 1995-05-23 Nec Eng Ltd ディスクアレイ装置
US5442628A (en) 1993-11-15 1995-08-15 Motorola, Inc. Local area network data processing system containing a quad elastic buffer and layer management (ELM) integrated circuit and method of switching
JP2723022B2 (ja) 1993-12-27 1998-03-09 日本電気株式会社 ディスク装置のインタフェース及びその制御方法
US5448564A (en) 1994-01-31 1995-09-05 Advanced Micro Devices, Inc. Modular architecture for fast-packet network
US5406607A (en) 1994-02-24 1995-04-11 Convex Computer Corporation Apparatus, systems and methods for addressing electronic memories
JP3195489B2 (ja) 1994-03-03 2001-08-06 株式会社日立製作所 外部記憶制御装置およびバス切り替え制御方法
JPH07302171A (ja) 1994-05-10 1995-11-14 Hitachi Ltd ディスク制御装置
US5551048A (en) 1994-06-03 1996-08-27 Digital Equipment Corporation Ring based distributed communication bus for a multiprocessor network
US5603058A (en) 1994-09-08 1997-02-11 International Business Machines Corporation Video optimized media streamer having communication nodes received digital data from storage node and transmitted said data to adapters for generating isochronous digital data streams
CA2153445C (en) 1994-09-08 2002-05-21 Ashok Raj Saxena Video optimized media streamer user interface
US5586264A (en) 1994-09-08 1996-12-17 Ibm Corporation Video optimized media streamer with cache management
JP3581727B2 (ja) 1994-11-11 2004-10-27 株式会社日立製作所 ディスクアレイコントローラ及びディスクアレイ装置
US5574865A (en) 1994-12-01 1996-11-12 Unisys Corporation System for data transfer protection during module connection/disconnection onto live bus
JPH08172446A (ja) 1994-12-19 1996-07-02 Nippon Telegr & Teleph Corp <Ntt> ネットワーク間メッセージ中継方法
EP0752664A3 (de) 1995-07-07 2006-04-05 Sun Microsystems, Inc. Verfahren und Vorrichtung zur Meldung der Datenübertragung zwischen Hardware und Software
US5839906A (en) 1995-09-28 1998-11-24 Emc Corporation Data storage system
US5787265A (en) 1995-09-28 1998-07-28 Emc Corporation Bus arbitration system having a pair of logic networks to control data transfer between a memory and a pair of buses
US5948062A (en) 1995-10-27 1999-09-07 Emc Corporation Network file server using a cached disk array storing a network file directory including file locking information and data mover computers each having file system software for shared read-write file access
US5742789A (en) 1995-12-28 1998-04-21 Emc Corporation Dynamically adaptive data retrieval for a disk drive storage system
US5703875A (en) 1996-04-10 1997-12-30 Hughes Electronics Integrated control and data message network
JP3781212B2 (ja) 1996-06-04 2006-05-31 株式会社日立製作所 サブシステム
US5819104A (en) 1996-06-24 1998-10-06 Emc Corporation Disk array memory system having bus repeater at disk backplane
US6009481A (en) 1996-09-30 1999-12-28 Emc Corporation Mass storage system using internal system-level mirroring
US6438586B1 (en) 1996-09-30 2002-08-20 Emc Corporation File transfer utility which employs an intermediate data storage system
US5890207A (en) 1996-11-27 1999-03-30 Emc Corporation High performance integrated cached storage device
US6470389B1 (en) 1997-03-14 2002-10-22 Lucent Technologies Inc. Hosting a network service on a cluster of servers using a single-address image
US6061762A (en) 1997-04-14 2000-05-09 International Business Machines Corporation Apparatus and method for separately layering cache and architectural specific functions in different operational controllers
US5949982A (en) 1997-06-09 1999-09-07 International Business Machines Corporation Data processing system and method for implementing a switch protocol in a communication system
US6304903B1 (en) 1997-08-01 2001-10-16 Agilent Technologies, Inc. State machine for collecting information on use of a packet network
US6055603A (en) 1997-09-18 2000-04-25 Emc Corporation Method and apparatus for performing pre-request operations in a cached disk array storage system
US6275953B1 (en) 1997-09-26 2001-08-14 Emc Corporation Recovery from failure of a data processor in a network server
US6038638A (en) 1997-10-17 2000-03-14 International Business Machines Corporation Pausing and resuming applications running in a data processing system using tape location parameters and pipes
JP3601955B2 (ja) 1997-10-23 2004-12-15 株式会社日立製作所 データ転送方法およびそれに適した計算機システム
AU9689898A (en) 1997-11-14 1999-06-07 3Ware, Inc. High-performance architecture for disk array controller
US6081860A (en) 1997-11-20 2000-06-27 International Business Machines Corporation Address pipelining for data transfers
US6418496B2 (en) 1997-12-10 2002-07-09 Intel Corporation System and apparatus including lowest priority logic to select a processor to receive an interrupt message
US6230229B1 (en) 1997-12-19 2001-05-08 Storage Technology Corporation Method and system for arbitrating path contention in a crossbar interconnect network
US6397281B1 (en) 1997-12-23 2002-05-28 Emc Corporation Bus arbitration system
US6125429A (en) 1998-03-12 2000-09-26 Compaq Computer Corporation Cache memory exchange optimized memory organization for a computer system
US6134624A (en) 1998-06-08 2000-10-17 Storage Technology Corporation High bandwidth cache system
US6178466B1 (en) 1998-06-12 2001-01-23 Unisys Corporation System for maximizing bandpass on an interface directly coupling two units where the interface has independently operative data and address interconnections, and computer sysem employing same.
US6275877B1 (en) 1998-10-27 2001-08-14 James Duda Memory access controller
US6563793B1 (en) 1998-11-25 2003-05-13 Enron Warpspeed Services, Inc. Method and apparatus for providing guaranteed quality/class of service within and across networks using existing reservation protocols and frame formats
US6240335B1 (en) 1998-12-14 2001-05-29 Palo Alto Technologies, Inc. Distributed control system architecture and method for a material transport system
US6317805B1 (en) 1998-12-18 2001-11-13 Emc Corporation Data transfer interface having protocol conversion device and upper, lower, middle machines: with middle machine arbitrating among lower machine side requesters including selective assembly/disassembly requests
US6389494B1 (en) 1998-12-30 2002-05-14 Emc Corporation System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data
US6061274A (en) 1999-01-04 2000-05-09 Emc Corporation Methods and apparatus for message transfer in computer storage system
US6378029B1 (en) 1999-04-21 2002-04-23 Hewlett-Packard Company Scalable system control unit for distributed shared memory multi-processor systems
US6581137B1 (en) 1999-09-29 2003-06-17 Emc Corporation Data storage system
US6529521B1 (en) 1999-12-27 2003-03-04 Emc Corporation Data storage system
US7010575B1 (en) 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US6651130B1 (en) 2000-04-28 2003-11-18 Emc Corporation Data storage system having separate data transfer section and message network with bus arbitration

Also Published As

Publication number Publication date
JP4350319B2 (ja) 2009-10-21
US7003601B1 (en) 2006-02-21
GB2366049A (en) 2002-02-27
GB0108075D0 (en) 2001-05-23
GB2366049B (en) 2004-10-27
JP2001331385A (ja) 2001-11-30
JP2006190327A (ja) 2006-07-20

Similar Documents

Publication Publication Date Title
DE10116337A1 (de) Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk
DE10118789A1 (de) Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk sowie mit Bus-Zuteilung
DE69636663T2 (de) System und Verfahren zur Zugriffsverteilung von Mehrfachspeichermatrixen zwischen Mehrfachwirtrechnersystemen
DE60212626T2 (de) Endknotenunterteilung mittels lokaler identifikatoren
DE102012209016B4 (de) System und Verfahren zur Weiterleitung von Fibre-Channel-Eingangs- und Ausgangsdaten
DE602004010303T2 (de) Mehrere schnittstellen in einem speichergehäuse
DE60303026T2 (de) System, verfahren und produkt zur verwaltung des datenverkehrs in einem netzwerk
DE102012208803B4 (de) System und Verfahren zur Weiterleitung von Fibre-Channel-Eingangs- und Ausgangsdaten
DE10116360A1 (de) Datenspeichersystem mit gesondertem Datenübertragungsabschnitt und Nachrichtenübertragungsnetzwerk, mit einer Mehrzahl von Leitsteuereinrichtungen auf einer gemeinsamen gedruckten Schaltungsplatte und redundanten Schaltnetzwerken
DE60316776T2 (de) Auf netzwerkdatenspeicherung bezogene operationen
DE602004009410T2 (de) Bandspeicheremulation für offensystem-umgebungen
DE112011102415B4 (de) Registerzugriff in einer verteilten virtuellen Brückenumgebung
DE69907776T2 (de) Verfahren und Vorrichtung zur Identifizierung gefährdeter Bauteile in einem System mit redundanten Bauteilen
DE112004002797B4 (de) Ausfallsicherung und Lastausgleich
DE60032357T2 (de) Verbindungsarchitektur um minderbandbreitige verbindungen über eine hoch-bandbreitige verkettung zu verwalten
DE69632424T2 (de) Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe
DE69928202T2 (de) Extern ansteuerbare Umgehungsschaltung
DE69826930T2 (de) System und Verfahren zur wirksamen Fernplatte Ein-/Ausgabe
DE112012001753B4 (de) 3 -Anmeldesequenz für eine Fibre-Channel-Weiterleiterstruktur
DE102012209009B4 (de) System und Verfahren zur Weiterleitung von Fibre-Channel-Eingangs- und Ausgangsdaten
DE4121446A1 (de) Terminal-server-architektur
DE112008001957B4 (de) Systeme und Verfahren zum Verbessern der Leistungsfähigkeit eines routfähigen Netzwerks
DE102011014588A1 (de) Multicasting-Schreibanforderungen an Mehrfachspeicher-Controller
DE19900345A9 (de) Vorrichtung und Verfahren für die Bereitstellung einer Schnittstelle für eine Verbundsteuereinheit eines Universellen Seriellen Buses
DE112013006549T5 (de) Computersystem und Datensteuerverfahren

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection