-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft
eine Informationsspeicher-Steuervorrichtung zur Hochgeschwindigkeits-Informationsübertragung
in einer magnetischen Speichervorrichtung oder dergleichen.
-
Beschreibung
des Standes der Technik
-
Neueste Entwicklungen der digitalen
Kompressionstechnologie von Video- und Audiosignalen ermöglichen
es, Video- und Audiosignale mittels eines Computers zu verarbeiten
und die Signale in einer Magnetspeichervorrichtung zu speichern,
auf die von einem Computer zugegriffen wird.
-
Bei Video- und Audiosignalen ist
es problematisch, ein Bild oder einen Klang anzuhalten, wenn die
Verarbeitung einer vorgeschriebenen Menge an Informationen in einer
vorgeschriebenen Zeit nicht abgeschlossen ist. Um dieses Problem
zu vermeiden, wird eine Hochgeschwindigkeits-Magnetspeichervorrichtung
zur Hochgeschwindigkeits-Informationsverarbeitung nachgefragt.
-
Ferner wird auch verlangt, die Speicherkapazität zu vergrößern und
eine große
Menge an Informationen zu speichern. Eine Technik, die Redundanzarray
preiswerter Disks genannt wird (nachfolgend als RAID bezeichnet),
wird in der Praxis verwendet, um diesen Bedarf zu decken.
-
Ein RAID ist eine Informationsspeicher-Steuervorrichtung,
die eine Vielzahl von Magnetdisks bzw. Magnetplatten derart steuert,
dass redundante Informationen sowie zu speichernde Informationen
in den Magnetdisks auf eine verteilte Weise gespeichert werden.
Wenn eine der Magnetdisks ausfällt,
kann es die Informationen in der ausgefallenen Magnetdisk mit Hilfe
der Redundanzinformationen wiedererlangen. Dann kann eine normale
Operation wieder durchgeführt
werden.
-
RAID-5 (oder RAID Level 5) speichert
als eine der Techniken von RAID Redundanzinformationen in einer
Vielzahl von Magnetdisks auf zyklische Weise. Es sei angenommen,
dass die Informationsspeicher-Steuervorrichtung (RAID-5) fünf Magnetdisks
HD1–HD5
aufweist. Zu schreibende Informationen werden auf vier Informationsblocks
D1–D4
aufgeteilt. Zuerst werden die Informationsblocks D1–D4 in vier
Magnetdisks HD1–HD4
jeweils geschrieben und ein Redundanzinformationsblock P1 wird für die Informationsblocks
D1–D4
erzeugt, um in die fünfte Magnetdisk
HD5 geschrieben zu werden. Wenn daraufhin die Informationsblocks
D5–D8
geschrieben werden, wird der Informationsblock in HD2–HD5 geschrieben,
während
der Redundanzinformationsblock P2 für die Informationsblöcke D5–D8 in die
erste Magnetdisk HD1 geschrieben wird. Auf diese Weise werden Redundanzinformationsblocks
P1, P2, ... auf eine andere Magnetdisk als die Magnetdisk zyklisch
gespeichert, die die vorhergehende Redundanzinformation speichert.
-
Wenn Informationen in eine Vielzahl
von Magnetdisks geschrieben werden, müssen jedoch Redundanzinformationen
in der Informationsspeicher-Steuervorrichtung
erzeugt werden. Dann kann eine Schreiboperation langsamer werden
als in dem Fall der Verwendung einer einzelnen Magnetdisk. Wenn
eine der Magnetdisks einen Fehler hat, wird ferner eine Verarbeitungsgeschwindigkeit
sehr langsam, um die Informationen in der fehlerhaften Magnetdisk
wiederherzustellen. Wenn die fehlerhafte Magnetdisk durch eine neue,
normale Disk ersetzt wird, müssen
ferner die Informationen in der fehlerhaften Disk auf der normalen
Disk automatisch wieder gespeichert werden. Die Betriebsgeschwindigkeit
wird jedoch bei dieser Operation relativ langsam. Dies wird darauf
zurückgeführt, dass
Redundanzinformationen erzeugt werden müssen und in einen vorgeschriebenen
Speicher geschrieben werden müssen, nachdem
die Zentralverarbeitungseinheit (CPU) Daten mehrmals liest (sequenzielles
Lesen). Diese Tätigkeit
wird für
alle Daten durchgeführt,
so dass eine lange Verarbeitungszeit benötigt wird.
-
Ferner wird bei der vorbekannten
Informationsspeicher-Steuervorrichtung eine Tätigkeit auf jeder Magnetdisk
und eine Eingabe/Ausgabeoperation mit der Peripherie im Zeitteilverfahren
durchgeführt. Das
heißt
nur eine Tätigkeit
wird zu einem Zeitpunkt durchgeführt.
-
Das US-Patent 5,128,810 betrifft
eine Multidisk-Laufwerkarray-Speichervorrichtung.
Diese Speichervorrichtung simuliert den Betrieb eines einzelnen Disklaufwerks
derart, dass der Handshake und das Protokoll zwischen der Arrayspeichervorrichtung
in dem Hostcomputer dem Hostcomputer als von einem einzelnen Disklaufwerk
stammend erscheint. Die Steuervorrichtung teilt von der Arrayspeichervorrichtung
empfangene digitale Datenworte in Teile und schreibt jeden Teil
auf ein anderes Disklaufwerk innerhalb der Speichervorrichtung.
-
Zusammenfassung
der Erfindung
-
Es ist Aufgabe der Erfindung, eine
Informationsspeicher-Steuervorrichtung mit einer höheren Geschwindigkeit
der Informationsübertragung
mit magnetischen Speichervorrichtungen bereitzustellen.
-
Diese Aufgabe wird durch die vorliegende Erfindung,
die in dem beigefügten
unabhängigen
Anspruch 1 detailliert definiert ist, gelöst durch eine Informationsspeicher-Steuervorrichtung
zum Steuern des Schreibens von Informationen auf Magnetdisks und
Lesen von Informationen von Magnetdisks, die Steuervorrichtung umfasst:
ein externes Kommunikationsmittel zum Austauschen von Informationen mit
externem Equipment, eine Vielzahl von Magnetdisk-Kommunikationsmitteln
zum Austauschen von Informationen mit einer Vielzahl von Magnetdisks, erste
und zweite Gruppen, die jeweils aus einer Vielzahl von Speichervorrichtungen
bestehen, wobei eine Anzahl von Speichervorrichtungen in jeder der Gruppen
gleich der Anzahl von Magnetdisk-Kommunikationsmitteln
ist, und ein Schaltersteuermittel zum Ändern einer Bus-Verbindung,
die zwischen den externen Kommunikationsmitteln, der Vielzahl von
Magnetdisk-Kommunikationsmitteln und den Speichervorrichtungen in
den ersten und zweiten Gruppen bereitgestellt sind, wobei in einem
ersten Zustand eine Kommunikation zwischen den Speichervorrichtungen
in der zweiten Gruppe und den Magnetdisk-Kommunikationsmitteln individuell
für jedes
Paar aus einer Speichervorrichtung und einem Magnetdisk-Kommunikationsmittel
ermöglicht
wird, während eine
Kommunikation zwischen der ersten Gruppe und den externen Kommunikationsmitteln
individuell für
jede der Speichervorrichtungen in der ersten Gruppe ermöglicht wird,
und in einem zweiten Zustand eine Kommunikation zwischen Speichervorrichtun gen
der zweiten Gruppe und den externen Kommunikationsmitteln individuell
für jede
Speichervorrichtung in der zweiten Gruppe ermöglich wird, während eine
Kommunikation zwischen Speichervorrichtungen in der zweiten Gruppe
und den externen Kommunikationsmitteln individuell für jede Speichervorrichtung
und ein Magnetdisk-Kommunikationsmittel ermöglicht wird.
-
In der vorstehend erwähnten Informationsspeicher-Steuervorrichtung
führen
die ersten und zweiten Speichergruppen eine Arbeit mit den externen
Kommunikationsmitteln oder mit dem Magnetdisk-Kommunikationsmittel
mittels des Schaltermittels alternierend durch und jede Gruppe arbeitet
parallel. Dann wird eine Informationsübertragungsgeschwindigkeit
erhöht.
-
Ein Vorteil der Erfindung ist, dass
eine Schreibgeschwindigkeit auf die Magnetdisks und eine Lesegeschwindigkeit
von den Magnetdisks erhöht
werden kann, indem die erste Speichergruppe, die zweite Speichergruppe
und das Schaltermittel zum Ändern
des Arbeitszustands verwendet werden.
-
Ein weiterer Vorteil der Erfindung
ist, dass durch Bereitstellen einer ausschließlich redundante Informationen
erzeugenden Schaltung die Erzeugung von redundanten Informationen
oder Verifikation und Wiederherstellung von Daten mit einer hohen Geschwindigkeit
durchgeführt
werden kann und eine parallele Arbeit von dem Schaltermittel in
der Informationsspeicher-Steuervorrichtung
effizienter wird.
-
Kurzbeschreibung
der Figuren
-
Diese und weitere Aufgaben und Merkmale der
vorliegenden Erfindung werden anhand der nachfolgenden Beschreibung
im Zusammenhang mit deren bevorzugten Ausführungsbeispielen unter Bezugnahme
auf die beigefügten
Figuren klar werden. Es zeigen:
-
1 ein
Blockschaltbild einer Struktur einer Informationsspeicher-Steuervorrichtung
eines Ausführungsbeispiels
der Erfindung,
-
2 ein
Blockschaltbild einer Redundanzinformations-Erzeugungseinheit,
-
3 ein
Zeitdiagramm der Erzeugung von Redundanzinformationen,
-
4 ein
Beispiel eines Paritätsgenerators, der
in der Redundanzinformations-Erzeugungseinheit verwendet wird,
-
5A ein
Blockschaltbild eines Schalters in dem Schaltermittel, und 5B ein Blockschaltbild eines
Beispiels des Schalters,
-
6 ein
Zeitdiagramm des Schreibens von Daten auf eine Magnetdisk in dem
Ausführungsbeispiel,
und
-
7 ein
Zeitdiagramm des Ausgebens von Daten an ein externes Kommunikationsmittel
in dem Ausführungsbeispiel.
-
Ausführliche
Beschreibung der bevorzugten Ausführungsbeispiele
-
Es wird nunmehr auf die Figuren Bezug
genommen, in denen dieselben Bezugszeichen gleiche oder entsprechende
Teile in allen Ansichten kennzeichnen. 1 zeigt eine Informationsspeicher-Steuervorrichtung
eines Ausführungsbeispiels der
Erfindung. Zwei Speichergruppen, eine erste Speichergruppe 10 und
eine zweite Speichergruppe 11, sind in Übereinstimmung mit den sechs
Magnetdisks bereitgestellt. Die erste Speichergruppe 10 und die
zweite Speichergruppe 11 umfassen jeweils sechs Speicher 21, 22, 23, 24, 25, 26 und 31, 32, 33, 34, 35, 36.
Eine Zentralverarbeitungseinheit (nachfolgend als CPU bezeichnet) 1 ist über einen
CPU-Bus 13 mit sechs Schaltern 41, 42, 43, 44, 45, 46 in
der Schaltereinrichtung 12 verbunden und sendet ein Steuersignal
darüber.
Jeder Schalter 41–46 ist
mit einem Speicher in der ersten Speichergruppe 10 und einem
entsprechenden Speicher in der zweiten Speichergruppe 11 verbunden.
Das heißt,
die Schalter 41–46 wählen eines
der Paare der Speicher gemäß dem von
der CPU 1 empfangenen Steuersignal aus, um in einem der
Speicher gespeicherte Informationen durch ein externes Kommunikationsmittel 2,
welches aus einer Komponente wie einem NCR 53C720 besteht, an externes
Equipment zu senden oder an eine der Magnetdisks HD1–HD6 durch
eine Redundanzinformations-Erzeugungseinheit 3 und
eines der Magnetdisk-Kommunikationsmittel 4, 5, 6, 7, 8, 9 (nachfolgend
als HD-Kommunikationsmittel bezeichnet) zu senden, welches aus einer
Komponente wie einem NCR 53C720 besteht. Die Informationsspeicher-Steuervorrichtung
steuert sechs damit verbundene Magnetdisks HD1, HD2, HD3, HD4, HD5
und HD6. In diesem Beispiel wird das mit der HD-Kommunikationsleitung 4 verbundene
Festplattenlaufwerk als HD1 bezeichnet, das mit der HD-Kommunikationsleitung 5 verbundene
Festplattenlaufwerk wird mit HD2 bezeichnet, das mit der HD-Kommunikationsleitung 6 verbundene
Festplatten-Laufwerk als HD3 bezeichnet, das mit der HD-Kommunikationsleitung 7 verbundene
Festplattenlaufwerk als HD4 bezeichnet, das mit der HD-Kommunikationsleitung 8 verbundene
Festplattenlaufwerk als HD5 bezeichnet und das mit der HD-Kommunikationsleitung 9 verbundene
Festplattenlaufwerk als HD6 bezeichnet.
-
Die CPU 1 ist über einen
Kontaktpunkt 15 zum Öffnen
oder Schließen
einer Verbindung des CPU-Busses 13 mit dem Bus 14 verbunden
und mit sechs Kontaktpunkten 16 verbunden, die beim Datenaustausch
zwischen der CPU 1, der Redundanzinformations-Erzeugungseinheit 3 und
jedem HD-Kommunikationsmittel 4–9 zu öffnen oder
zu schließen
sind. Der Kontaktpunkt 15 wird von der CPU 1 geschlossen,
um die CPU 1 mit dem externen Kommunikationsmittel 2 zu
verbinden, so dass ein Befehl von der CPU 1 an das externe
Kommunikationsmittel 2 übertragen
wird. Wenn die Übertragung abgeschlossen
ist, informiert das externe Kommunikationsmittel 2 die
CPU von dem Abschluss und die CPU 1 öffnet den Punkt 15,
um einen Datenaustausch zwischen dem externen Kommunikationsmittel 2 und
dem Schaltermittel 12 zu ermöglichen, während der Bus 14 in
einen offenen Zustand (oder einen Hochimpendanzzustand) gebracht
wird. Wenn die CPU 1 einen Befehl an den Kontaktpunkt 15 sendet, ist
der Bus in einem offenen Zustand, so dass keine Kollision von Informationen
auftritt. Deshalb wird der Kontaktpunkt 16 nur geschlossen,
wenn ein Befehl von der CPU 1 an jedes HD-Kommunikationsmittel 4–9 und
an die Redundanzinformations-Erzeugungsschaltung 3 gesendet
wird, und er wird geöffnet, wenn
die Übertragung
beendet ist. In diesem Fall tritt keine Informationskollision auf.
-
2 zeigt
die Redundanzinformations-Erzeugungseinheit 3, welche Komponenten 31–36 und eine
Verbindung aus sechs Bussen an den Kontaktpunkten 16 aufweist,
die mit den sechs Bussen M1A–M6A
zu verbinden sind, welche von der CPU 1 ausgehen und mit
den sechs Bussen M1B–M6B
zu verbinden sind, welche sich zu den Schaltern 41–46 und
zu den HD-Kommunikationsmitteln 4–9 erstrecken.
Offene Kreise in 2 zeigen
die Kontaktpunkte 16.
-
Wenn Informationen von dem externen
Kommunikationsmittel 2 empfangen werden, um in einer Festplatte
gespeichert zu werden, teilt die CPU 1 die von dem externen
Kommunikationsmittel 2 empfangenen Informationen in eine
vorgeschriebene Menge von Daten auf, die in demselben Gebiet in
den Speichern der Speichergruppen 10, 11 zu speichern
sind. Als nächstes
befiehlt die CPU 1 der Redundanzinformations-Erzeugungseinheit 3,
Redundanzinformationen zu erzeugen, indem eine Startadresse in dem Speicherbereich,
eine Speicherregion (Wortzahl) und ein Speicher für die zu
speichernden Redundanzinformationen bestimmt wird.
-
In der Redundanzinformations-Erzeugungseinheit 3 überwacht
ein Befehlsdetektor 33 Signale an dem Bus M1A, um einen
Befehl zu erfassen, der von der CPU 1 an die Redundanzinformations-Erzeugungseinheit 3 gesendet
wurde. Ein Befehl umfasst drei Arten von Informationen: Adressdaten
für einen
Adressgenerator 35 wie eine Speicherstartadresse, Kanaldaten
für ein
Kanalregister 33 zum Bestimmen eines Speichers (Bus) zum
Erzeugen von Redundanzinformationen und eine Wortzahl für einen
Wortzähler 32.
Der Befehlsdetektor 31 erfasst den Befehl und sendet Daten
in das Register und an 32, 33 und 35.
Wenn Daten in dem Wortzähler 32 vorliegen,
wird der Steuerpulsgenerator 34 davon informiert. Der Steuerpulsgenerator 34 führt die
nachfolgenden Schritte, wie es in 3 gezeigt
ist, im Anschluss an die Erzeugung von Redundanzinformationen durch.
Das heißt,
(a) ein r/w-Signal (Schreiblese-Signal),
welches von dem Steuerpulsgenerator 34 erzeugt wird, wird
mit einer Schreibleitung (w) in dem Bus verbunden, die von dem Kanalregister 33 aus den
Bussen M1A–M6A
bestimmt worden ist, und mit Leseleitungen (r) für die anderen Busse verbunden. (b)
Ein von dem Adressregister 33 erzeugtes Adresssignal wird
mit derselben Adresse für
die Busse M1A–M6A
verbunden. (c) Dann wird ein Ausgang eines Paritätsgenerators 36, der
Paritätsdaten
für sechs
Lesedaten erzeugt, mit dem von dem Kanalregister 33 bestimmten
Bus verbunden.
-
4 zeigt
ein Beispiel des Paritätsgenerators 36,
der in der Redundanzinformations-Erzeugungseinheit 3 verwendet
wird. Daten aus 8 Bits von jedem der sechs Speicher, die an sechs
Gattern 51–56 empfangen
werden, werden an acht XOR-Gatter 61–68 gesendet, um 8
Bit-Paritätsdaten für zu speichernde
Redundanzinformationen zu erzeugen. Das Gatter, das dem Speicher
entspricht, der von dem Kanalregister 33 bestimmt wird,
sendet keine Signale an die XORs.
-
5A zeigt
ein Beispiel für
die Schalter 41–46 in
der Schaltereinrichtung 12 mit einem Paar Schaltereinheiten 121 und 122.
Busse von dem Speicher 21– 26 in der ersten
Speichergruppe 10 sind jeweils mit einem Eingang der Schaltereinheiten 121 und 122 verbunden,
während
die korrespondierenden Speicher 31–36 in der zweiten
Gruppe 11 mit den anderen Eingängen verbunden sind. Ferner
werden ein Steuersignal und ein dazu invertiertes Signal den Schaltereinheiten 121 und 122 zugeführt. 5B zeigt ein Beispiel der
Schaltereinheiten 121, 122, die jeweils CMOS-integrierte
Schaltungen 123–128 aufweisen,
die mit einem Adressbus, einem Steuerbus und einem Datenbus verbunden
sind, aber die Schaltereinheiten 121, 122 können aus
einem Gatterarray bestehen.
-
Unter der Adresse gespeicherte Daten
werden dem Paritätsgenerator 36 von
den Speichern zugeführt,
die nicht von dem Speicherregister 33 bestimmt sind, und
Redundanzinformationen werden in Übereinstimmung mit den Daten
von dem Paritätsgenerator 36 erzeugt.
Die Redundanzinformationen werden in den Speicher geschrieben, der
von dem Speicherregister 33 bestimmt worden ist. Ein Puls von
dem Steuerpulsgenerator 34 wird an das Adressregister 35 gesendet,
um die Adresse um 1 zu erhöhen,
und die Adresse wird an den Wortzähler 32 gesendet,
um die Zählung
um 1 zu verringern. Wie vorstehend erklärt ist, wenn der Steuerpulsgenerator 34 ein
r/w-Signal erzeugt, werden Redundanzinformationen an aufeinanderfolgende
Adressen erzeugt und in den relevanten Speicher geschrieben.
-
Diese Verarbeitung wird wiederholt
bis der Wortzähler 32 Null
wird. Dann beendet der Steuerpulsgenerator 34 die Erzeugung
von Redundanzinformationen und das Ende wird der CPU 1 mittels
eines Interrupt-Signals mitgeteilt.
-
Dann verbindet die CPU 1 die
Busse M1A–M6A
mit Bussen M1B–M6B
an den Kontaktpunkten 16.
-
Wie vorstehend erläutert ist,
wird die Steuerung über
die HD-Kommunikationsmittel 4–9 mit
den sechs Festplattenlaufwerken HD1–HD6 verbunden und es muss
bestimmt werden, ob eine HD-Verbindung existiert oder nicht und
welche Leitungen als Hauptleitungen und Ersatzleitungen bestimmt
sind. Eine Hauptleitung ist eine Leitung, die mit einem tatsächlich verwendetem
Festplattenlaufwerk verbunden ist, während einee Ersatzleitung eine
Leitung ist, die mit einem Festplattenlaufwerk verbunden ist, welches
nicht wirklich verwendet wird, sondern verwendet wird, wenn ein
Fehler in einer der Festplatten auftritt, die mit den Hauptleitungen
verbunden sind. Das heißt,
wenn ein Fehler in einem der Festplattenlaufwerke auftritt, die
mit den Hauptleitungen verbunden sind, werden die Informationen
in dem fehlerhaften Festplattenlaufwerk in der Festplatte, die mit
der Ersatzleitung verbunden ist, in Übereinstimmung mit den darin
gespeicherten Redundanzinformationen erzeugt und die fehlerhafte
Festplatte wird nicht verwendet.
-
In diesem Ausführungsbeispiel sind die Hauptleitungsfestplattenlaufwerke
mit den HD-Kommunikationsmittel 4, 5, 6, 7 und 8 verbunden,
während
die Ersatzleitungsfestplatten mit dem HD-Kommunikationsmittel 9 verbunden
sind.
-
Das externe Kommunikationsmittel 2 kommuniziert
mit den HD-Kommunikationsmittel 4, 5, 6, 7, 8 und 9 über direkten
Speicherzugriff (DMA genannt) unabhängig von der CPU 1.
Ferner verwenden das externe Kommunikationsmittel 2 und
die HD-Kommunikationsmittel 4, 5, 6, 7, 8 und 9 einen Computersystemschnittstellenstandard
(SCSI) und ein Schreib- oder Lesebefehl von der CPU 1 bestimmt
eine logische Blockadresse und eine Übrtragungsblockzahl. Ein logischer
Block besteht normalerweise aus 512 Bytes.
-
Jeder Schalter 41–46 in
der Schaltereinrichtung 12 wird in Übereinstimmung mit einem Steuersignal
betrieben, welches von der CPU 1 erzeugt wird. Wenn Speicher
in der ersten Speichergruppe 10 mit dem Bus 14 verbunden
werden, werden Speicher in der zweiten Speichergruppe 11 mit
der Redundanzinformations-Erzeugungseinheit 3 verbunden
(nachfolgend als Zustand A bezeichnet), während Speicher in der zweiten
Speichergruppe 11 mit dem Bus 14 verbunden werden
(nachfolgend als Zustand B bezeichnet), wenn Speicher in der ersten
Speichergruppe 10 mit der Redundanzinformations-Erzeugungseinheit 3 verbunden
sind.
-
Ferner werden die Kontaktpunkte 15 und 16 gegebenenfalls
geöffnet
oder geschlossen, wenn eine Anfrage oder ein Befehl von der CPU 1 über die Busse
M1A–M6A,
das externe Kommunikationsmittel 2, die HD-Kommunikationsmittel 4–9 und
dergleichen übertragen
werden.
-
Wenn Informationen in den Speichern über das
externe Kommunikationsmittel 2 ausgegeben werden, befiehlt
die CPU 1 den Festplattenlaufwerken über die HD-Kommunikationsmittel 4–9 Informationen
in demselben designierten Bereich von derselben designierten Adresse
auszulesen. Die von jedem Festplattenlaufwerk ausgelesenen Informationen werden
in einem relevanten Speicher gespeichert. Wenn erkannt wird, dass
ein Festplattenlaufwerk einen Fehler hat, bestimmt die CPU 1 einen
dem fehlerhaften Festplattenlaufwerk entsprechenden Speicher und
befiehlt das Erzeugen von Redundanzinformationen, die denjenigen
entsprechen, die in dem fehlerhaften Festplattenlaufwerk gespeichert
sind. Das Erzeugen der Redundanzinformationen ähnelt dem vorstehend erläuterten
Speichern von Informationen. Wenn kein Festplattenlaufwerk einen
Fehler hat, ist es nicht notwendig, die den Informationen entsprechend
den Redundanzinformationen zu speichern.
-
Ein Betrieb der Informationsspeichersteuerung
des Ausführungsbeispiels
wird nachfolgend erläutert.
In dem vorstehend erläuterten
Fall ist die Informationsspeichersteuerung mit fünft Festplatten HD1–HD5 verbunden.
Zuerst wird ein Betrieb erläutert,
wenn Informationen von dem externen Equipment in eine oder mehrere
Magnetspeicherplatten bzw. Magnetdisks geschrieben werden. 6 zeigt ein Zeitdiagramm
dieser Operation. Das externe Kommunikationsmittel 2 analysiert
zuerst einen Befehl von dem externen Equipment, um einen Schreibbefehl
zu erfassen. Als Reaktion auf den Befehl versetzt die CPU 1 das
Schaltermittel 12 (Schalter 41–46) in den Zustand
A. Danach befiehlt die CPU 1 die Übertragung von Informationen
D1 eines Blocks (512 Byte) an den Speicher 21 in der ersten
Speichergruppe 10. Das externe Kommunikationsmittel 2 überträgt die gelesenen
Informationen D1 aufeinander folgend und das externe Kommunikationsmittel 2 informiert
die CPU 1 von der Beendigung durch ein Interrupt-Signal,
nachdem die Übertragung
eines Blocks beendet worden ist. Genauso werden die Informationen
D2, D3 und D4 durch das externe Kommunikationsmittel 2 an
die Speicher 22, 23 und 24 nacheinander übertragen.
-
Nach der Übertragung versetzt die CPU 1 das
Schaltermittel 12 in den Zustand B. Somit wird eine Arbeit
zwischen jedem HD-Kommunikationsmittel 4– 9 und
der ersten Speichergruppe 10 möglich und eine Arbeit zwischen
dem externen Kommunikationsmittel 2 und der zweiten Speichergruppe 11 wird auch
möglich.
-
Die Informationen D5, D6, D7 und
D8 werden genauso wie in dem Zustand A an die Speicher 32, 33, 34 und 35 in
der zweiten Speichergruppe 11 übertragen. Gleichzeitig befiehlt
die CPU 1 der Redundanzinformations-Erzeugungsschaltung 3 Redundanzinformationen
P1 zu erzeugen, indem die in den Speichern 21, 22, 23 und 24 gespeicherten
Informationen D1, D2, D3 und D4 gelesen werden und in den Speicher 25 geschrieben
werden. Die Redundanzinformations-Erzeugungsschaltung 3 liest
gleichzeitig für
jedes Byte Daten in die Speicher 21, 22, 23 und 24,
erzeugt die Redundanzinformationen P1 mittels des Paritätsgenerators 36 und
schreibt sie in den Speicher 25 über das Kanalregister 33.
Die Redundanzinformations-Erzeugungseinheit 3 führt diese Operation
in einem Block aus und sendet ein Interrupt-Signal an die CPU 1,
um sie von der Beendigung der Operation zu informieren. Die CPU 1 befiehlt dann,
die Informationen D1, D2, D3 und D4 und die Redundanzinformationen
P1 in die Festplattenlaufwerke zu schreiben. In diesem Stadium leitet
die Redundanzinformations-Erzeugungseinheit 3 jede Information
nur weiter.
-
Die HD-Kommunikationsmittel 4, 5, 6, 7 und 8 schreiben
die Informationen jeweils in die Speicher der Festplattenlaufwerke
HD1, HD2, HD3, HD4 und HD5 und jedes HD-Kommunikationsmittel 4–8 informiert
die CPU 1 mit einem Interrupt-Signal von der Beendigung
des Schreibens. Die CPU 1 versetzt dann das Schaltermittel 12 in
den Zustand A.
-
Die vorstehend erwähnte Operation
wird fortgeführt,
indem das Festplattenlaufwerk getaktet wird, in das die Redundanzinformationen
geschrieben wer den, bis eine Arbeit auf allen Informationen vollständig geschrieben
worden ist.
-
Als nächstes wird erläutert, dass
Informationen in den Festplatten ausgelesen werden, um an das externe
Kommunikationsmittel 2 ausgegeben zu werden. 7 ist ein Zeitdiagramm dieser
Operation. Das externe Kommunikationsmittel 2 analysiert zuerst
einen Befehl von dem externen Equipment, um einen Lesebefehl zu
erfassen. Die CPU 1 versetzt das Schaltermittel 12 in
den Zustand B in Übereinstimmung
mit dem Befehl, um einen Datenaustausch zwischen jedem HD-Kommunikationsmittel 4–8 und den
Speichern in der ersten Speichergruppe 10 zu ermöglichen.
Als nächstes
befiehlt die CPU 1 dem HD-Kommunikationsmittel 4, Daten
eines Block von dem Festplattenlaufwerk HD1 in den Speicher 21 zu lesen.
Genauso befiehlt sie, Daten von den HD-Kommunikationsmitteln 5, 6, 7 und 8 in
die Speicher 22, 23, 24 und 25 zu
lesen. Diese Leseoperation in jedem Speicher der ersten Speichergruppe 10 wird
parallel durchgeführt.
In diesem Fall leitet die Redundanzinformations-Erzeugungsschaltung 3 jede
Information nur weiter. Jedes HD-Kommunikationsmittel 4–8 informiert
die CPU 1 von der Beendigung der Leseoperation mit einem
Interrupt-Signal. Wenn die Leseoperation innerhalb einer vorbestimmten
Zeit beendigt worden ist, wird entschieden, dass das Festplattenlaufwerk
einen Fehler hat. Eine fehlerhafte Festplatte wird auch erkannt,
wenn erkannt wird, dass ein Festplattenlaufwerk einen Fehler in
einer Statusbestätigung
hat. Ein fehlerhaftes Festplattenlaufwerk wird nicht für eine Leseoperation
verwendet.
-
Wenn es ein fehlerhaftes Festplattenlaufwerk
gibt, ermöglich
die CPU 1, das Schreiben in den Speicher, der dem fehlerhaften
Festplattenlaufwerk entspricht, und befiehlt der Redundanzinformations-Erzeugungsschaltung 3 die
Daten wiederherzustellen. Wenn es kein fehlerhaftes Festplattenlaufwerk
gibt, wird diese Wiederherstellung nicht benötigt. Eine Verifikation von
Informationen wird jedoch durchgeführt. Das heißt, wenn
Informationen von den Magnetdisks gelesen werden, werden Informationen gleichzeitig
von einer vorbestimmten Adresse der Speicher gelesen, die nicht
mit den fehlerhaften Festplattenlaufwerk übereinstimmen. Redundanzinformationen
werden aus den Leseinformationen erzeugt und die Redundanzinformationen
werden anhand der Informationen an der Adresse des Speichers, der
dem fehlerhaften Festplattenlaufwerk entspricht, verifiziert.
-
Nach Beendigung des Lesens oder Wiederherstellens
von Daten, wenn ein fehlerhaftes Festplattenlaufwerk erkannt worden
ist, versetzt die CPU 1 das Schaltermittel 12 in
den Zustand A. Genauso wie in dem Zustand B befiehlt die CPU 1 jedem HD-Kommunikationsmittel 4–8,
einen Datenblock von einer bestimmten Adresse in den Speichern in der
zweiten Speichergruppe 11 zu lesen. Jedes HD-Kommunikationsmittel 4–8 informiert
die CPU 1 mit einem Interrupt-Signal von der Beendigung
des Lesens. Gleichzeitig befiehlt die CPU dem externen Kommunikationsmittel 2 die
Informationen D1 eines Blocks in dem Speicher 21 an das
externe Equipment auszugeben. Die Beendigung der Ausgabe eines Blocks
wird der CPU 1 von dem externen Kommunikationsmittel 2 mit
einem Interrupt-Signal mitgeteilt. Die CPU 1 befiehlt dem
externen Kommunikationsmittel 2, die Informationen D2 eines
Blocks in dem Speicher 22 auszugeben. Genauso befiehlt
die CPU 1 dem externen Kommunikationsmittel 2,
die Informationen D3 und D4 eines Blocks in den Speichern 23 und 24 jeweils
auszugeben. Nach Beendigung der Ausgabe der Informationen wird das
Schaltermittel 12 in den Zustand B versetzt. Die vorstehend
erwähnte
Operation wird durchgeführt,
bis die Verarbeitung aller zu lesenden Informationen beendigt worden
ist.
-
Wie vorstehend erläutert wurde,
wird eine Kombination des externen Kommunikationsmittels 2 und
jedes HD-Kommunikationsmittels mit der ersten und zweiten Speichergruppe
alternierend von dem Schaltermittel 12 zur parallelen Verarbeitung
geändert.
Somit kann die Geschwindigkeit des Lesens von den Festplattenlaufwerken
und die Geschwindigkeit des Schreibens in die Festplattenlaufwerke
erhöht werden.
Weil in diesem Ausführungsbeispiel
ein Bus für
jedes Festplattenlaufwerk bereitgestellt ist, kann eine Verarbeitung
vollständig
parallel durchgeführt werden.
Daher wird eine Verarbeitungsgeschwindigkeit schneller als in dem
Fall, in dem ein einzelner Bus im Zeitteilverfahren verwendet wird.
-
Das externe Kommunikationsmittel 2 verwendet
SCSI-Standards, aber andere Arten von Kommunikationstechniken können auch
verwendet werden.
-
In diesem Ausführungsbeispiel beträgt die Anzahl
der Magnetdisks sechs (fünf
Hauptleitungen und eine Ersatzleitung). Die vorliegende Erfindung
ist jedoch nicht auf dieses Beispiel beschränkt.
-
Die Redundanzinformations-Erzeugungseinheit 3 wird
zwischen jedem Speicher und jedem Magnetdisk-Kommunikationsmittel
in diesem Ausführungsbeispiel
bereitgestellt. Die Redundanzinformations-Erzeugungseinheit 3 kann
jedoch mit jedem Speicher in der Speichergruppe 10, 11 verbunden werden,
die für
einen Datenaustausch mit dem Magnetdisk-Kommunikationsmittel 4– 9 verwendet
werden, während
jeder Speicher in der Speichergruppe 10, 11, die
für einen
Datenaustausch mit den Magnetdisk-Kommunikationsmittel 4–9 verwendet
werden, nicht über
die Redundanzinformations-Erzeugungseinheit 3 mit den Magnetdisk-Kommunikationsmitteln verbunden
werden. Obwohl die Redundanzinformationseinheit 3 in der
Steuerung bzw. dem Controller dieses Ausführungsbeispiels bereitgestellt
ist, wenn die Steuerung in einem Zustand wie RAID-0 betrieben wird,
der keine Redundanzinformationen braucht, muss die Redundanzinformations-Erzeugungseinheit 3 nicht
bereitgestellt werden, so dass die Magnetdisk-Kommunikationsmittel
direkt mit jedem Speicher verbunden sind.
-
Obwohl die vorliegende Erfindung
vollständig
in Verbindung anhand ihrer bevorzugten Ausführungsbeispiele unter Bezugnahme
auf die beigefügten
Figuren beschrieben worden ist, sei bemerkt, dass vielfältige Änderungen
und Modifikationen dem Fachmann offensichtlich sind.