[go: up one dir, main page]

DE69224800T2 - Gerät und Verfahren zur Datenprüfung in einem Datenspeichersystem - Google Patents

Gerät und Verfahren zur Datenprüfung in einem Datenspeichersystem

Info

Publication number
DE69224800T2
DE69224800T2 DE69224800T DE69224800T DE69224800T2 DE 69224800 T2 DE69224800 T2 DE 69224800T2 DE 69224800 T DE69224800 T DE 69224800T DE 69224800 T DE69224800 T DE 69224800T DE 69224800 T2 DE69224800 T2 DE 69224800T2
Authority
DE
Germany
Prior art keywords
data
write
error detection
crc
storage devices
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.)
Expired - Fee Related
Application number
DE69224800T
Other languages
English (en)
Other versions
DE69224800D1 (de
Inventor
Shinji Nishiyama
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE69224800D1 publication Critical patent/DE69224800D1/de
Publication of DE69224800T2 publication Critical patent/DE69224800T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Description

  • Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zur Datenprüfung für ein Speichersystem, z. B. ein Platten-Array-System, das mit einer Vielzahl von Magnetplattenlaufwerken versehen ist und das diese Magnetplattenlaufwerke parallel betreibt und es gestattet, diesen Magnetplattenlaufwerken Daten gleichzeitig einzugeben und von ihnen auszugeben.
  • In letzter Zeit ist eine Tendenz zu verzeichnen, in einem Computersystem große Mengen von Daten mit hoher Geschwindigkeit übertragen zu wollen, und deshalb ist auch ein Hilfsspeichersystem erforderlich, um große Mengen von Daten mit hoher Geschwindigkeit zu übertragen, um Daten mit einer Hostvorrichtung auszutauschen.
  • Um dieser Forderung gerecht zu werden, ist das Hilfsspeichersystem, z. B. ein Magnetplatten-Array-System, entwickelt worden, welches hauptsächlich aus einer Vielzahl von Speichervorrichtungen gebildet ist, wie aus inehreren Einheiten von Magnetplattenlaufwerken, und welches es ermöglicht, viele Bytes von Daten zwischen der Hostvorrichtung und den Speichervorrichtungen parallel zu übertragen.
  • Hier wird das herkömmliche Magnetplatten-Array-System genauer erläutert, welches für das Speichersystem repräsentativ ist.
  • Im allgemeinen ist in einer einzelnen Einheit eines Magnetplattenlaufwerkes die Datenübertragungsgeschwindigkeit durch eine Rotationsgeschwindigkeit eines Motors begrenzt, der eine Magnetplatte als Aufzeichnungsmedium rotiert. Falls beabsichtigt wird, eine Operation mit hoher Geschwindigkeit durch Erhöhen einer Datenübertragungsgeschwindigkeit zu erreichen, ist es daher erforderlich, Schreib-/Leseoperationen parallel auszuführen, indem eine Vielzahl von Plattenlaufwerken gleichzeitig betrieben wird. Dabei werden gemäß einem Befehl von einer Hostvorrichtung die Spindelmotoren der Magnetplattenlaufwerke, die mit der Hostvorrichtung parallel verbunden sind, synchron rotiert, so daß es möglich wird, eine Parallelübertragung von Daten auszuführen. Solch eine Konstruktion wird als Platten-Array-System oder Platten-Array-Vorrichtung bezeichnet.
  • Ferner ist zusätzlich zu der Datenübertragung mit hoher Geschwindigkeit eine Fehlertoleranz des gesamten Systems für solch ein Platten-Array-System erforderlich, so daß eine ausreichende Zuverlässigkeit für die großen Mengen von Daten gewährleistet werden kann, ohne die Datenübertragungsgeschwindigkeit zu verringern.
  • Um solch ein fehlertolerantes System zu erhalten, selbst wenn ein Ausfall aufgetreten ist, wie z. B. das Unvermögen, Daten von einem Plattenlaufwerk von einer Vielzahl von Plattenlaufwerken zu lesen, ist es notwendig, daß das Platten-Array-System so konstruiert ist, daß die Daten des ausgefallenen Plattenlaufwerkes sofort rekonstruiert werden können, ohne die Operation des gesamten Platten- Array-Systems zu stoppen.
  • Einige Arten von Platten-Array-Systemen in praktischem Gebrauch, bei denen der oben erwähnten Datenübertragung mit hoher Geschwindigkeit und gleichzeitig der Fehlertoleranz entsprochen werden kann, sind durch verschiedene Computerhersteller als Produkte eines Platten-Array-Systems mit dem Namen RAID (Redundant Arrays of Inexpensive Disks) 1 bis RAID 5 angekündigt worden.
  • Von diesen RAIDS 1 - 5 wird RAID 3 eingehender beschrieben, welches für den Fall besonders geeignet ist, wenn große Mengen von Daten kontinuierlich mit hoher Geschwindigkeit zu verarbeiten sind, wie z. B. bei wissenschaftlichen Berechnungen.
  • In dem RAID 3 enthält das Platten-Array-System typischerweise eine Vielzahl von Plattenlaufwerken zur Datenübertragung (zum Beispiel acht (8) Plattenlaufwerke) und ein Plattenlaufwerk zur Paritätsprüfung, wobei all diese Plattenlaufwerke gleichzeitig parallel arbeiten. In diesem Fall werden einige gegebene Paritätsdaten, die den parallelen Daten der jeweiligen Plattenlaufwerke zur Datenübertragung entsprechen, in dem Plattenlaufwerk zur Paritätsprüfung (Paritätsplattenlaufwerk) vorher gespeichert. Selbst wenn ein Plattenlaufwerk von einer Vielzahl von Plattenlaufwerken ausfällt, so daß die Daten nicht ausgelesen werden können, können bei solch einer Konstruktion die Daten rekonstruiert werden, indem die Paritätsdaten von dem Paritätsplattenlaufwerk gelesen werden.
  • Ferner ist in dem RAID 3 auch ein Ersatzspeicherplattenlaufwerk vorgesehen. All die Daten in dem ausgefallenen Plattenlaufwerk werden automatisch rekonstruiert und zu dem Ersatzspeicherplattenlaufwerk übertragen. Falls der Rekonstruktionsprozeß vollendet wird, kann die Ersatzspeichervorrichtung als normales Plattenlaufwerk in Kooperation mit den anderen Plattenlaufwerken zur Datenübertragung genutzt werden.
  • Auf diese Weise kann das Platten-Array-System hergestellt werden, wie es durch das RAID 3 verkörpert wird, welches es ermöglicht, große Mengen von Daten mit relativ hoher Geschwindigkeit (zum Beispiel 36 MBytes/s) zu übertragen, und im wesentlichen fehlertolerante Charakteristiken hat.
  • Wenn solche große Mengen von Daten tatsächlich zu einer Vielzahl von Plattenlaufwerken parallel übertragen werden und gleichzeitig in sie geschrieben werden, ist es ferner erforderlich zu prüfen, ob alle geschriebenen Daten korrekt sind oder nicht, so daß die Zuverlässigkeit der oben erwähnten großen Mengen von geschriebenen Daten möglichst so wie jene von kleinen Mengen von Daten gewährleistet werden kann.
  • In diesem Fall ist es wünschenswert, einige Maßnahmen zu ergreifen, um die Schreibdaten auf einfache Weise und in relativ kurzer Zeit zu bestätigen, um die Datenzuverlässigkeit ohne beträchtliche Verringerung der Datenübertragungsgeschwindigkeit beizubehalten.
  • Als eine typische von diesen Maßnahmen ist ein Verfahren zum Hinzufügen eines Fehlerdetektionscodes, wie von CRC- (zyklischen Redundanzprüf-)-Daten, für jeden Datenblock mit einer gewissen Bytelänge in praktischem Gebrauch.
  • Im folgenden werden unter Bezugnahme auf Fig. 1 bis 3 eine herkömmliche Vorrichtung und ein Verfahren zur Datenprüfung beschrieben, die durch das Hinzufügen von CRC-Daten ausgeführt wird, so daß ein Prozeß der Datenprüfung für ein Platten-Array-System besser verstanden wird.
  • Fig. 1 bis 3 sind Blockdiagramme zum Erläutern eines Prozesses der Datenprüfung gemäß einem Stand der Technik. Genauer gesagt, Fig. 1 ist ein Blockdiagramm eines Platten- Array-Systems, Fig. 2 ist ein Blockdiagramm zum Erläutern eines CRC-Hinzufügungsprozesses, und Fig. 3 ist ein Blockdiagramm einer Datenwegsteuerschaltung.
  • In diesen Figuren bezeichnet 31 einen Hostcomputer (HOST), 32 ein Platten-Array-System, 33 einen Plattencontroller, 34 Speichervorrichtungen (z. B. Magnetplattenlaufwerke) und 35 eine Datenwegsteuerschaltung. Speziell bezeichnen 36, 37, 44 und 45 in Fig. 3 jeweilig Registereinheiten, und 38 bezeichnet einen Host-CRC-Prüfer, 39 einen Host-CRC-Generator, 40 einen Schreibdatenkonverter, 41 einen Vorrichtungs-CRC-Generator, 42 einen Lesedatenkonverter und 43 einen Vorrichtungs-CRC-Prüfer.
  • Ein zur Zeit verwendetes Platten-Array-System ist zum Beispiel wie in Fig. 1 konstruiert. Das Platten-Array-System 32 ist, wie in Fig. 1 gezeigt, mit einem Plattencontroller 33 und einer Vielzahl von Speichervorrichtungen 34, wie z. B. einer Vielzahl von Magnetplattenlaufwerken versehen.
  • Dieses Platten-Array-System 32 ist mit einer Hostvorrichtung verbunden, z. B. mit einem Hostcomputer (HOST) 31, und wird als Subsystem (ein sogenanntes DIA: Disk In Array) für den Hostcomputer 31 verwendet.
  • Von der Vielzahl von Speichervorrichtungen 34 werden typischerweise acht Speichervorrichtungen (DV0 bis DV7) zum Speichern von normalen Daten verwendet, wird eine Speichervorrichtung (DVP) zum Speichern von Paritätsdaten verwendet und wird eine Speichervorrichtung (DVS) als Ersatzspeichervorrichtung verwendet
  • Das Platten-Array-System 32 realisiert die Datenübertragung mit hoher Geschwindigkeit, indem die Vielzahl von Speichervorrichtungen 34 parallel betrieben wird und indem diesen Speichervorrichtungen 34 Daten gleichzeitig eingegeben und Daten von ihnen gleichzeitig ausgegeben werden.
  • Das Platten-Array-System 32 betreibt auch die Paritätsspeichervorrichtung (DVP) parallel, unabhängig von den Speichervorrichtungen (z. B. DV0 bis DV7) zuinspeichern der Daten, wodurch Paritätsdaten in dieser Speichervorrichtung (DVP) gespeichert werden.
  • Selbst wenn eine der acht Speichervorrichtungen (DV0 bis DV7) zum Speichern der Daten keine Daten mehr lesen kann, können mit dieser Anordnung die Daten von der Paritätsspeichervorrichtung (DVP) rekonstruiert werden.
  • Wenn ein Ausfall in einer der acht Speichervorrichtungen (DV0 bis DV7) aufgetreten ist, werden ferner die Daten, die in der ausgefallenen Speichervorrichtung gespeichert sind, zu der Ersatzspeichervorrichtung (DVS) übertragen, und danach kann die Ersatzspeichervorrichtung für den Normalbetrieb verwendet werden.
  • In dem Platten-Array-System 32 werden Datenblöcke von dem Hostcomputer 31 geteilt und in die Vielzahl von Speichervorrichtungen 34 geschrieben. Dabei werden typischerweise CRC-Daten als Fehlerdetektionscode zu jedem der geteilten Datenblöcke (normalerweise Daten, die in einem Sektor zu speichern sind), die eine spezifizierte Anzahl von Bytes von Daten enthalten, von dem Plattencontroller 33 hinzugefügt und zusammen mit den Daten in jede der Speichervorrichtungen 34 geschrieben, wodurch die Daten gesichert werden.
  • Der CRC-Datenhinzufügungsprozeß ist in Fig. 2 gezeigt. In diesem Fall wird angenommen, daß die Daten, die von dem Hostcomputer 31 über vier Wege übertragen werden (im folgenden als Vierwegedaten bezeichnet) durch die Datenwegsteuerschaltung 35 konvertiert werden, die in dem Plattencontroller 33 vorgesehen ist, um über acht Wege zu den Speichervorrichtungen übertragen zu werden (im folgenden als Achtwegedaten bezeichnet).
  • Auf diese Weise werden die Vierwegedaten in die Achtwegedaten konvertiert, die in die Vielzahl von Speichervorrichtungen (DV0 bis DV7) geschrieben werden. Dabei werden die CRC-Daten aus jedem Datum erzeugt, das über die Wege von dem Hostcomputer 31 übertragen wird.
  • Zum Beispiel werden sie in dem Fall von Host-CRCH0 (CRC-Daten, die in dem Hostcomputer 31 hinzugefügt wurden) aus den Daten DT0, DT4, DT8, DT12, DT16, DT20, etc. erzeugt.
  • Ferner wird Host-CRCH1 aus DT1, DT5, DT9, DT13, DT17, DT21, etc. erzeugt, und Host-CRCH2 wird aus DT2, DT6, DT10, DT14, DT18, DT22, etc. erzeugt.
  • Vorrichtungs-CRCs (CRC-Daten, die in der Datenwegsteuerschaltung zu den Daten hinzugefügt werden, die aus den Speichervorrichtungen zu lesen sind) werden für jeden der acht geteilten Wege erzeugt. Zum Beispiel wird CRCD0 aus DT0, DT8, DT16, etc. erzeugt. Ferner wird CRCD1 aus DT1, DT9, DT17, etc. erzeugt, und CRCD2 wird aus DT2, DT10, DT18, etc. erzeugt.
  • Eine typische Datenwegsteuerschaltung 35 wird unter Bezugnahme auf Fig. 3 beschrieben.
  • Die Datenwegsteuerschaltung 35 ist, wie in Fig. 3 gezeigt, mit Registereinheiten (REG) 36, 37, 44 und 45, einem Host-CRC-Prüfer (HOST CRC CHK) 38, einem Host-CRC- Generator (HOST CRC GEN) 39, einem Schreibdatenkonverter 40, einem Lesedatenkonverter 42 und dergleichen versehen.
  • Ferner enthält der Schreibdatenkonverter 40 einen Vorrichtungs-CRC-Generator (DV CRC GEN) 41, und der Lesedatenkonverter 42 enthält einen Vorrichtungs-CRC-Prüfer (DV CRC CHK) 43.
  • Die Registereinheit 36 wird verwendet, wenn die Schreibdaten der Datenwegsteuerschaltung 35 eingegeben werden, und die Registereinheit 36 enthält die Register WI0 bis WI3, die den vier Wegen entsprechen. Die Registereinheit 37 wird verwendet, wenn die Lesedaten von der Datenwegsteuerschaltung 35 ausgegeben werden, und die Registereinheit 37 enthält die Register RO0 bis RO3, die den vier Wegen entsprechen.
  • Die Registereinheit 44 wird verwendet, wenn die Schreibdaten von dem Schreibdatenkonverter 40 ausgegeben werden, und die Registereinheit 44 enthält die Register WO0 bis WO7 zum Speichern normaler Daten, ein Paritätsregister WOP zum Speichern von Paritätsdaten und ein Ersatzregister WOS.
  • Die Registereinheit 45 wird verwendet, wenn die Lesedaten dem Lesedatenkonverter 45 eingegeben werden, und die Registereinheit 45 enthält die Register RI0 bis RI7 zum Speichern der normalen Daten, ein Paritätsregister RIP zum Speichern von Paritätsdaten und ein Ersatzregister RIS.
  • Während der Übertragung der Schreibdaten werden die Daten, die von dem Hostcomputer 31 zu den vier Wegen übertragen werden, in der Registereinheit 36 temporär gespeichert. Danach werden die Daten durch den Schreibdatenkonverter 40 von Vierwegedaten in Achtwegedaten konvertiert, nachdem die CRC-Daten durch den Host-CRC-Prüfer 38 geprüft sind.
  • Dabei werden die CRC-Daten zu den Daten für die jeweiligen Wege durch den Vorrichtungs-CRC-Generator 41 hinzugefügt, und die Achtwegedaten und die Paritätsdaten werden in der Registereinheit 44 temporär gespeichert. Danach werden die Daten zu den jeweiligen Datenvorrichtungen 34 übertragen und auf den Aufzeichnungsmedien (Magnetplatten) gespeichert.
  • Ferner werden während der Übertragung der Lesedaten die Achtwegedaten und die Paritätsdaten, die von den jeweiligen Speichervorrichtungen gelesen werden, in der Registereinheit temporär gespeichert. Danach werden diese Daten in den Lesedatenkonverter 42 gelesen, indem jedes CRC-Datum für jeden Weg durch den Vorrichtungs-CRC-Prüfer 43 geprüft wird, und die Achtwegedaten werden in die Vierwegedaten konvertiert.
  • Danach wird jedes CRC-Datum zu jedem der Vierwegedaten hinzugefügt, die zu dem Hostcomputer übertragen werden, nachdem sie in der Registereinheit 37 temporär gespeichert wurden.
  • Hinsichtlich des Prozesses der Datenprüfung gemäß einem oben beschriebenen Stand der Technik existieren folgende Probleme.
  • (1) Die Datenwegsteuerschaltung 35 ist mit einer großen Anzahl von Multiplexern versehen, und deshalb ist es erforderlich, daß eine komplizierte Schaltsteuerung der Multiplexer auszuführen ist, um Wege für die Datenkonvertierung zu schalten. Dabei können die Daten auf Grund eines Ausfalls von Schaltoperationen von einigen Multiplexern falsch übertragen werden.
  • (2) Zum Beispiel enthalten der Schreibdatenkonverter und der Lesedatenkonverter 42 tatsächlich eine große Anzahl von Multiplexern zum Ausführen solch einer Schaltsteuerung mit hoher Geschwindigkeit. Falls diese Vorrichtungen während Schaltoperationen ausfallen, kann demzufolge ein Datenfehler auftreten.
  • Selbst wenn in diesem Fall zum Beispiel die Wege #0 und #1 auf der Vorrichtungsseite auf Grund eines Ausfalls der Schaltoperationen irrtümlicherweise miteinander verwechselt werden, kann solch ein Datenfehler auch dann nicht detektiert werden, wenn die CRC-Prüfung angewendet wird. Selbst wenn ferner auf Grund von unerwünschten Schaltoperationen dieselben Daten wie bei dem Weg #0 an den Weg #1 ausgegeben werden, kann der Fehler durch die CRC-Prüfung nicht detektiert werden.
  • (3) Bei solch einem Prozeß der CRC-Prüfung kann der oben erwähnte Datenfehler nicht detektiert werden, der auftreten kann, wenn die Wege irrtümlicherweise miteinander verwechselt werden, da die CRC-Daten für die Daten von jedem Weg hinzugefügt und separat geprüft werden.
  • Wenn diese Situationen aufgetreten sind, werden falsche Daten zu den jeweiligen Vorrichtungen 34 übertragen. Ferner kann ein Nutzer erst bemerken, daß die Daten fehlerhaft sind, wenn die Daten später aus den Vorrichtungen 34 gelesen werden und die CRC-Datenprüfung für die gelesenen Daten ausgeführt wird. Demzufolge wird die Zuverlässigkeit der Daten verschlechtert.
  • EP-A-0 503 417 von dem jetzigen Anmelder stellt den Stand der Technik nach Artikel 54(3) und (4) EPÜ dar. Sie offenbart (Figur 1) eine Vorrichtung zur Datenprüfung, in der Blöcke von Schreibdaten von einem HostcoMputer zuerst durch einen Host-CRC-Generator geleitet werden, um ihnen Host-CRC-Daten zu verleihen. Die Schreibdaten werden dann einem Datenfolgesteuerelement zugeführt, um auf vier Datenports aufgeteilt zu werden, ihnen werden jeweilige Port-CRC- Daten verliehen, und sie werden in jeweilige Speichervorrichtungen geschrieben. Die aufgeteilten Schreibdaten werden auch zu einem Lesedatenweg zurückgeführt, wodurch es ermöglicht wird, die Host-CRCs zu extrahieren und zu prüfen. Falls erforderlich, können die Port-CRCs durch eine separate Schaltungsanordnung geprüft werden.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung ist eine Vorrichtung zur Datenprüfung in einem Speichersystem vorgesehen, das eine Vielzahl von Speichervorrichtungen enthält, die parallel betrieben werden, welche Vorrichtung Schreibdaten als Datenblöcke empfängt, die jeweils Daten eines Fehlerdetektionscodes enthalten, die in einer Hostvorrichtung erzeugt wurden, welche Vorrichtung umfaßt:
  • ein Mittel zum gleichzeitigen Übertragen der Schreibdaten zu jeweiligen Speichervorrichtungen bei einer Schreiboperation;
  • ein Mittel zum Prüfen von Daten in dem Speichersystem, welches Mittel zum Prüfen von Daten betriebsfähig ist, um einen Schreibdatenprüfprozeß auszuführen, wenn die Schreibdaten bei der Schreiboperation zu den jeweiligen Speichervorrichtungen übertragen werden;
  • erste Datenübertragungswege zum Übertragen der Schreibdaten;
  • zweite Datenübertragungswege zum Übertragen von Lesedaten;
  • ein Mittel zum Verteilen der Datenblöcke von Schreibdaten, um in die Vielzahl von Speichervorrichtungen geschrieben zu werden und zur gleichen Zeit zu den zweiten Datenübertragungswegen übertragen zu werden;
  • ein Kombinationsmittel zum Kombinieren der Schreibdaten, die zu den zweiten Datenübertragungswegen übertragen wurden, zu Blöcken von kombinierten Daten, die zurück zu der Hostvorrichtung übertragen werden;
  • ein Mittel, das mit einem Ausgang des Kombinationsmittels verbunden ist, zum erneuten Erzeugen von Daten eines Fehlerdetektionscodes für die Hostvorrichtung für jeden der Blöcke von kombinierten Daten;
  • ein Speichermittel zum Speichern der Daten von Fehlerdetektionscodes von der Hostvorrichtung; und
  • ein Vergleichsmittel zum Vergleichen jedes der Daten von Fehlerdetektionscodes, die für die Hostvorrichtung erneut erzeugt wurden, mit jedem der Daten von Fehlerdetektionscodes, die in dem Speichermittel gespeichert sind, um zu prüfen, ob die zwei Arten der Daten von Fehlerdetektionscodes einander entsprechen oder nicht, und um zu prüfen, ob die Schreibdaten in die jeweiligen Speichervorrichtungen korrekt geschrieben worden sind oder nicht.
  • Vorzugsweise enthält das Speichermittel zum Speichern der Daten der Fehlerdetektionscodes eine Registereinheit für eine zyklische Redundanzprüfung der Hostvorrichtung, und das Vergleichsmittel zum Miteinandervergleichen der zwei Arten von Daten enthält einen Komparator.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung ist ein Verfahren zur Datenprüfung in einem Speichersystem vorgesehen, das eine Vielzahl von Speichervorrichtungen enthält, die parallel betrieben werden, welche Vorrichtung Schreibdaten als Datenblöcke empfängt, die jeweils Daten eines Fehlerdetektionscodes enthalten, die in einer Hostvorrichtung erzeugt wurden, welches Verfahren die Schritte umfaßt:
  • Ausführen eines Schreibdatenprüfprozesses, wenn die Schreibdaten bei der Schreiboperation zu den jeweiligen Speichervorrichtungen zu übertragen sind;
  • Speichern der Daten von Fehlerdetektionscodes von der Hostvorrichtung;
  • Übertragen und Verteilen der Datenblöcke von Schreibdaten längs eines Schreibdatenübertragungsweges, um sie gleichzeitig in jeweilige Speichervorrichtungen zu schreiben, und auch längs eines Lesedatenübertragungsweges, der normalerweise während einer Schreiboperation ungenutzt ist;
  • Kombinieren der Schreibdaten, die zu dem Lesedatenübertragungsweg übertragen wurden, zu Blöcken von kombinierten Daten, die zurück zu der Hostvorrichtung übertragen werden;
  • erneutes Erzeugen von Daten eines Fehlerdetektionscodes für die Hostvorrichtung für jeden der Blöcke von kombinierten Daten; und
  • Vergleichen jedes der Daten von Fehlerdetektionscodes, die für die Hostvorrichtung erneut erzeugt wurden, mit jedem der Daten von Fehlerdetektionscodes, die vorher gespeichert wurden, um zu prüfen, ob die zwei Arten der Daten von Fehlerdetektionscodes einander entsprechen oder nicht, und um zu prüfen, ob die Schreibdaten in die jeweiligen Speichervorrichtungen korrekt geschrieben worden sind oder nicht.
  • In einer Ausführungsform der Erfindung werden die obige Vorrichtung und das Verfahren auf ein Platten-Array-System angewendet.
  • Ausführungsformen der vorliegenden Erfindung können deshalb eine Vorrichtung und ein Verfahren zur Datenprüfung in einem Speichersystem vorsehen, durch die es ermöglicht wird, eine hohe Zuverlässigkeit von Daten bei der Schreib- /Leseoperation zu gewährleisten, ohne die Datenübertragung mit hoher Geschwindigkeit zu stören.
  • Ausführungsformen der vorliegenden Erfindung können eine Vorrichtung und ein Verfahren zur Datenprüfung in einem Speichersystem vorsehen, z. B. in einem Platten-Array-System, durch die es ermöglicht wird, daß ein Datenfehler detektiert wird, der auf Grund eines Ausfalls von Schaltoperationen von Datenwegen auftreten kann, wenn große Mengen von Schreibdaten oder Lesedaten zu oder von einer Vielzahl von Speichervorrichtungen übertragen werden.
  • Ausführungsformen der vorliegenden Erfindung können eine Vorrichtung zur Datenprüfung in einem Speichersystem vorsehen, durch die es ermöglicht wird, daß solch ein Datenfehler durch ledigliches Hinzufügen einer einfachen Schaltung detektiert wird, wodurch verhindert wird, daß die Zuverlässigkeit von Daten verschlechtert wird.
  • Ausführungsformen der vorliegenden Erfindung können auch ein Verfahren zur Datenprüfung in einem Speichersystem vorsehen, wodurch es ermöglicht wird, daß der Datenfehler durch einen einfachen Prozeß detektiert wird, ohne die Zeit zu verlängern, die für die Datenprüfung erforderlich ist.
  • Ausführungsformen der vorliegenden Erfindung können auch eine Vorrichtung und ein Verfahren zur Datenprüfung vorsehen, die auf ein Platten-Array-System anwendbar ist, das große Mengen von Daten mit hoher Geschwindigkeit verarbeiten kann.
  • Gemäß der oben beschriebenen Vorrichtung und dem Verfahren zur Datenprüfung kann der Schreibdatenprüfprozeß so genau wie der Lesedatenprüfprozeß ausgeführt werden. Selbst wenn ein Datenfehler auf Grund der unerwünschten Schaltoperationen der Datenwege während der Übertragung der Schreibdaten auftritt, kann deshalb solch ein Datenfehler sofort detektiert werden.
  • Des weiteren können die Schreibdaten und Lesedaten nicht gleichzeitig übertragen werden. Angesichts dessen können die Schreibdaten geprüft werden, indem die Wege für die Lesedaten effektiv genutzt werden, wogegen die Lesedaten geprüft werden können, indem die Wege für die Schreibdaten effektiv genutzt werden. So können die Übertragungsdaten lediglich durch Hinzufügen einer einfachen Konstruktion wie der Registereinheit und des Komparators geprüft werden.
  • Zum besseren Verstehen der Erfindung und um zu zeigen, wie dieselbe verwirklicht werden kann, wird nun als Beispiel Bezug auf die beiliegenden Zeichnungen genommen, in denen:
  • Fig. 1 ein Blockdiagramm eines herkömmlichen Platten- Array-Systems ist;
  • Fig. 2 ein Blockdiagramm zum Erläutern eines CRC-Hinzufügungsprozesses gemäß einem Stand der Technik ist;
  • Fig. 3 ein Blockdiagramm der Datenwegsteuerschaltung gemäß einem Stand der Technik ist;
  • Fig. 4 ein Blockdiagramm einer Datenwegsteuerschaltung ist, das eine Ausführungsform der vorliegenden Erfindung darstellt;
  • Fig. 5(A) und 5(B) Zeitlagendiagramme zum Erläutern des Schreibdatenprüfprozesses in der Datenwegsteuerschaltung von Fig. 4 sind;
  • Fig. 6 eine perspektivische Ansicht ist, die teilweise weggeschnitten ist und einen Mechanismus eines Magnetplattenlaufwerkes zeigt;
  • Fig. 7 eine perspektivische Ansicht ist, die das gesamte Magnetplatten-Array-System zeigt;
  • Fig. 8 eine perspektivische Ansicht ist, die ein Äußeres von einer Vielzahl von Platten-Array-Vorrichtungen gemäß einer Ausführungsform der vorliegenden Erfindung zeigt; und
  • Fig. 9(A) und 9(B) Blockdiagramme einer Magnetplatten- Array-Steuereinheit bzw. der gesamten Platten-Array-Vorrichtungen sind.
  • Fig. 4 ist ein Blockdiagramm einer Datenwegsteuerschaltung, das eine Ausführungsform der vorliegenden Erfindung zeigt, in der dieselben Elemente wie in Fig. 1 bis 3 mit denselben Bezugszeichen versehen sind. In diesem Fall versteht sich, daß die in Fig. 4 gezeigte Schaltung eine Schaltung ist, die in dem Plattencontroller 33 in Fig. 1 vorgesehen ist.
  • Die Datenwegsteuerschaltung in dieser Ausführungsform ist versehen mit einer Registereinheit 46 für eine Host-CRC- Prüfung (im folgenden als Host-CRC-Registereinheit 46 bezeichnet), einer Registereinheit 47 für eine Vorrichtungs- CRC-Prüfung (im folgenden als Vorrichtungs-CRC-Registereinheit 47 bezeichnet), einem CRC-Prüfer (Komparator) 48 und Multiplexern 49, 50, zusätzlich zu der Konstruktion der Datenwegsteuerschaltung nach dem in Fig. 3 gezeigten Stand der Technik.
  • Die Host-CRC-Registereinheit 46 enthält vier Register CRC0, CRC1, CRC2 und CRC3, die vier Wegen entsprechen, wobei jedes Register dafür ausgelegt ist, die CRC-Daten für den entsprechenden Weg zu speichern, d. h., für den ersten Datenübertragungsweg für die Schreibdaten.
  • Die Vorrichtungs-CRC-Registereinheit 47 enthält die Register CRC0, CRC1, CRC2, ..., CRC7, CRCP und CRCH für jeweilige Wege, die der Speichervorrichtung 34 (DV0 bis DV7, DVP und DVHS) entsprechen, wobei jedes Register dafür ausgelegt ist, die CRC-Daten für den entsprechenden Weg zu speichern, d. h., für den zweiten Datenübertragungsweg für die Lesedaten.
  • Der CRC-Prüfer 48 ist dafür ausgelegt, zwei CRC-Daten zu empfangen und zu vergleichen, und er enthält zum Beispiel einen Komparator. Die Multiplexer 49, 45 sind Schaltungen zum Schalten der zwei Eingänge.
  • Obwohl ein Prozessor und dergleichen vorgesehen sind, um die in Fig. 4 gezeigten jeweiligen Komponenten zu steuern, sind diese Vorrichtungen in Fig. 4 nicht gezeigt. Ferner wird eine detaillierte Beschreibung für die Komponenten weggelassen, die mit derselben Konstruktion wie nach Stand der Technik enthalten sind.
  • Im folgenden wird ein Datenprüfprozeß dieser Ausführungsform beschrieben. Es wird angenommen, daß die Anzahl von Datenwegen dieselbe wie nach Stand der Technik ist, und daß Host-CRCs und Vorrichtungs-CRCs CRC-Daten verkörpern.
  • Zuerst wird eine Schreibdatenprüfverarbeitung eingehend erläutert, die ausgeführt wird, wenn die Schreibdaten zu den jeweiligen Vorrichtungen 34 übertragen werden.
  • In der Datenwegsteuerschaltung 35, die in dem Plattencontroller 33 (Fig. 1) vorgesehen ist und die Schreibdaten von dem Hostcomputer 31 (Fig. 1) empfangen hat, wird die CRC-Prüfung in der folgenden Reihenfolge ausgeführt.
  • Die Host-CRCs, die zu den Schreibdaten von dem Hostcomputer hinzugefügt wurden, werden durch den Host-CRC-Prüfer 38 geprüft und in der Host-CRC-Registereinheit 46 zur gleichen Zeit gespeichert.
  • Die Schreibdaten von dem Hostcomputer 31 werden über die vier Wege übertragen und in den Registern WI0 bis WI3 der Registereinheit 36 temporär gespeichert. Dann werden die CRC-Daten für jeden Datenweg durch den Host-CRC-Prüfer 38 geprüft
  • Danach werden die geprüften CRC-Daten für die jeweiligen Datenwege in den Registern CRC0 bis CRC3 der Host-CRC- Registereinheit 46 gespeichert.
  • Die Schreibdaten, die in der Registereinheit 36 gespeichert sind, werden durch den Schreibdatenkonverter 40 in Achtwegedaten und Paritätsdaten konvertiert, zu denen die CRC-Daten für jeden Weg durch den Vorrichtungs-CRC-Generator 41 hinzugefügt werden, und in der Registereinheit 44 gespeichert.
  • Anschließend werden die Daten, die in der Registereinheit 44 gespeichert sind, zu den jeweiligen Speichervorrichtungen übertragen, um in ihnen gespeichert zu werden. Zur selben Zeit werden die Achtwegedaten und die Paritätsdaten über die zweiten Datenübertragungswege, die zum Lesen der Daten verwendet werden, zu der Registereinheit 45 übertragen und in ihr gespeichert.
  • Von den Daten, die in der Registereinheit 45 gespeichert sind, werden die CRC-Daten durch den Vorrichtungs-CRC- Prüfer 43 in dem Lesedatenkonverter 42 geprüft und dann in Vierwegedaten konvertiert.
  • Die konvertierten Vierwegedaten haben die CRC-Daten, die ihnen für jeden Weg durch den Host-CRC-Generator 39 hinzugefügt wurden. Dabei werden die CRC-Daten, die durch den Host-CRC-Generator 39 hinzugefügt wurden, dem CRC-Prüfer 48 durch den Multiplexer 50 eingegeben, während CRC-Daten, die in dem Host-CRC-Register 46 gespeichert sind, dem CRC- Prüfer 48 durch den Multiplexer 49 eingegeben werden. Die zwei Arten von CRC-Daten, die dem CRC-Prüfer 48 eingegeben werden, werden in dem CRC-Prüfer 48 miteinander verglichen.
  • Falls das Vergleichsresultat ergibt, daß diese zwei Arten von CRC-Daten einander entsprechen, wird bestimmt, daß kein Fehler vorhanden ist, und daher ist während der Übertragung von Schreibdaten kein Datenfehler aufgetreten. Falls jedoch ein Datenfehler auf Grund eines Ausfalls in dem Schreibdatenkonverter 40 oder in dem Lesedatenkonverter 42 aufgetreten ist, unterscheiden sich die obigen zwei Arten von Daten voneinander. Demzufolge wird der Datenfehler durch Ausführen solch eines Vergleiches leicht und genau detektiert.
  • Zweitens wird ein Datenleseprozeß eingehend erläutert, der ausgeführt wird, wenn die Lesedaten zu dem Hostcomputer 31 übertragen werden.
  • In der Datenwegsteuerschaltung 35, die die Lesedaten von den jeweiligen Speichervorrichtungen 34 empfangen hat, wird die CRC-Prüfung in der folgenden Reihenfolge ausgeführt.
  • Die Vorrichtungs-CRC-Daten, die zu den Lesedaten von den jeweiligen Speichervorrichtungen hinzugefügt wurden, werden in dem Vorrichtungs-CRC-Prüfer 43 geprüft und gleichzeitig in der Host-CRC-Registereinheit 47 gespeichert. Die Lesedaten von den Speichervorrichtungen 34 werden über die acht Wege für die normalen Daten und den einen Weg für die Paritätsdaten übertragen und in den Registern RI0 bis RIS der Registereinheit 45 temporär gespeichert. Danach werden die CRC-Daten für die jeweiligen Wege von Lesedaten durch den Vorrichtungs-CRC-Prüfer 43 geprüft und in den Registern CRC0 bis CRC5 der Vorrichtungs-CRC-Registereinheit 47 gespeichert (für jeden Weg gespeichert).
  • Anschließend werden die Daten für die jeweiligen Wege nach der CRC-Prüfung kombiniert und durch den Lesedatenkonverter 42 in Vierwegedaten konvertiert, zu denen die CRC- Daten durch den Host-CRC-Generator 39 hinzugefügt werden, und in der Registereinheit 47 speichert.
  • Die kombinierten Daten, die in der Registereinheit 37 gespeichert sind, werden für jeden Datenweg zu dem Hostcomputer übertragen, aber gleichzeitig zu der Registereinheit 36 übertragen. Nachdem die jeweiligen CRC-Daten, die in der Registereinheit 36 gespeichert sind, durch den Host-CRC- Prüfer 38 geprüft sind, werden die Vierwegedaten über die ersten Datenübertragungswege zu dem Schreibdatenkonverter 40 übertragen. Ferner werden die Vierwegedaten geteilt und durch den Schreibdatenkonverter 40 in Achtwegedaten und Paritätsdaten konvertiert, zu denen die CRC-Daten durch den Vorrichtungs-CRC-Generator 41 hinzugefügt werden.
  • Die jeweiligen CRC-Daten, die zu den Achtwegedaten und den Paritätsdaten in dem Vorrichtungs-CRC-Generator 41 hinzugefügt werden, werden durch den Multiplexer 50 dem CRC- Prüfer 48 eingegeben, während die CRC-Daten für die jeweiligen Wege, die in dem Vorrichtungs-CRC-Register 47 gespeichert sind, durch den Multiplexer 49 dem CRC-Prüfer 48 eingegeben werden. Die zwei Arten von CRC-Daten, die dem CRC-Prüfer 48 separat eingegeben werden, werden in dem CRC- Prüfer 48 miteinander verglichen (Vergleich der CRC-Daten für jeden Weg).
  • Falls das Vergleichsresultat ergibt, daß diese Daten einander entsprechen, wird bestimmt, daß kein Fehler vorhanden ist, und daher ist während der Übertragung von Lesedaten kein Datenfehler aufgetreten. Falls jedoch auf Grund eines Ausfalls in dem Lesedatenkonverter 42 ein Datenfehler aufgetreten ist, unterscheiden sich die obigen zwei Datenarten voneinander. Demzufolge wird der Datenfehler durch Ausführen solch eines Vergleiches leicht und genau detektiert.
  • Neben den CRC-Daten, die in der obigen Ausführungsform beschrieben wurden, sind Ausführungsformen der vorliegenden Erfindung auf verschiedene andere Fehlerdetektionscodes anwendbar.
  • Des weiteren wird der Datenfluß der Schreibdaten in Fig. 5(A) und 5(B) unter Verwendung von Zeitlagendiagrammen erläutert, um den Datenprüfprozeß zu erklären.
  • Fig. 5(A) und 5(B) sind Zeitdiagramme zum Erläutern des Schreibdatenprüfprozesses in der Datenwegsteuerschaltung, die in Fig. 4 gezeigt ist.
  • In Fig. 5(A) bezeichnet CLK ein Taktsignal, welches eine Referenz zum synchronen Rotieren einer Vielzahl von Speichervorrichtungen, z. B. von einer Vielzahl von Plattenlaufwerken, in einem Platten-Array-System ist.
  • In dem Zustand, wenn das System mit dem Taktsignal CLK synchron ist, werden zuerst die Schreibdaten von vier Datenkanälen (BUS0 bis BUS3), zu denen die jeweiligen Host-CRC- Daten von acht Bytes hinzugefügt werden, von dem Hostcomputer 31 über die ersten Datenübertragungswege übertragen und in der Registereinheit 36 temporär gespeichert (WI0 bis WI3).
  • Als nächstes werden die Schreibdaten geteilt und durch den Schreibdatenkonverter 40 in Achtwegedaten und Paritätsdaten konvertiert und in der Registereinheit 44 gespeichert (WO0 bis WOP). Dabei werden die Vorrichtungs-CRC-Daten zu diesen Achtwegedaten und den Paritätsdaten hinzugefügt.
  • Ferner werden, wie in Fig. 5(B) gezeigt, die Achtwegedaten zu den jeweiligen Speichervorrichtungen 34 übertragen und gleichzeitig über den zweiten Datenübertragungsweg zu der Registereinheit 45 übertragen, um in ihr gespeichert zu werden (RI0 bis RIP).
  • Weiterhin werden die jeweiligen CRC-Daten von den Daten, die in der Registereinheit 45 gespeichert sind, durch den Vorrichtungs-CRC-Prüfer 43 in dem Lesedatenkonverter 42 geprüft. Danach werden die Achtwegedaten kombiniert und wieder in Vierwegedaten konvertiert.
  • Des weiteren werden durch den Host-CRC-Generator 39 die CRC-Daten wieder für jedes Vierwegedatum erzeugt (RI - CRC).
  • Schließlich werden die CRC-Daten, die durch den Host- CRC-Generator zu jedem der Vierwegedaten hinzugefügt wurden, in dem CRC-Prüfer 48 mit den CRC-Daten verglichen, die vorher in der Host-CRC-Registereinheit 46 gespeichert wurden.
  • In diesem Fall ist die Zeit, wie aus Fig. 5(A) und 5(B) hervorgeht, die zum Vollenden des Datenprüfprozesses erforderlich ist, relativ kurz, und sie hat nur die Länge der Zeit, die init einigen Taktzyklen äquivalent ist. Deshalb kann verhindert werden, daß der Datenprüfprozeß gemäß der vorliegenden Erfindung die Datenübertragung mit hoher Geschwindigkeit stört.
  • Die vorliegende Erfindung hat, wie oben beschrieben, die folgenden Vorteile.
  • (1) Selbst wenn ein Datenfehler auf Grund eines Datenwegausfalls oder dergleichen auftritt, kann solch ein Fehler während einer Datenübertragung detektiert werden. Daher kann die Zuverlässigkeit der Daten verbessert werden.
  • (2) Der Datenfehler kann zuverlässig detektiert werden, indem lediglich eine einfache Schaltung hinzugefügt wird. Daher kann auch die Zuverlässigkeit eines Platten- Array-Systems verbessert werden, während ein Kostenanstieg auf Grund des Datenprüfprozesses minimiert wird.
  • Um hierbei das Verstehen der Ausführungsform gemäß der vorliegenden Erfindung zu erleichtern, ist in Fig. 6 eine perspektivische Ansicht gezeigt, die teilweise weggeschnitten ist und einen Mechanismus von einem Magnetplattenlaufwerk darstellt. Wie aus dieser Figur hervorgeht, wird eine Vielzahl von Platten (z. B. elf Platten) 15 durch einen Spindelmotor 17 gleichzeitig rotiert. Die Spuren auf einer Aufzeichnungsoberfläche von jeder Platte 15 werden mit einem vorbestimmten Datenmuster beschrieben. Jedoch sind die Spuren an beiden Enden der inneren Zone und der äußeren Zone der Platte 15 als Schutzbänder 150 gebildet, in die, anstelle eines Datenmusters, ein besonderes Muster geschrieben ist, welches besondere Muster zum Stoppen einer Suchoperation von zwei Arten von Köpfen 130 und 131 verwendet wird. Ferner ist auf den inneren und äußeren Seiten des Schutzbandes 150 eine Löschzone 155 zum mechanischen Stoppen der Köpfe 130 und 131 gebildet.
  • Vorzugsweise sind Ausführungsformen der vorliegenden Erfindung für ein Platten-Array-System 140 ausgelegt, wie es in Fig. 7 gezeigt ist, wobei Bezugszeichen 14 ein Magnetplattenlaufwerk bezeichnet, das die Platten 15 enthält, und 141 ein Gehäuse bezeichnet, das eine Vielzahl von Magnetplattenlaufwerken aufnehmen kann. In diesem Fall umfaßt das Platten-Array-System 140, d. h., die Platten-Array-Vorrichtung, acht Plattenlaufwerke zur Datenübertragung, ein Paritätsplattenlaufwerk und ein Ersatzspeicherplattenlaufwerk.
  • Die Magnetplattenlaufwerke 14, die jede Einheit von Platten-Array-Vorrichtungen bilden, umfassen ein Plattengehäuse 18. Das Plattengehäuse 18 dient dazu, die Platten 15 und den peripheren Schaltungsmodul 17 innerhalb des Plattengehäuses 18 per se aufzunehmen.
  • Jedes Magnetplattenlaufwerk 14 ist konstruiert, damit es in das Gehäuse 141 leicht einsetzbar und aus ihm auch leicht entfernbar ist, so daß eine Wartungsoperation schnell ausgeführt werden kann, wenn ein Ausfall, etc. aufgetreten ist.
  • Um ferner die Gesamtkonstruktion eines Platten-Array- Systems zu erläutern, auf das die vorliegende Erfindung angewendet ist, ist das Äußere von einer Vielzahl von Platten-Array-Vorrichtungen einschließlich des Bedienfeldes 226 in Fig. 8 gezeigt.
  • In Fig. 8 ist ein Platten-Array-System 140 aus einer Vielzahl von Platten-Array-Vorrichtungen, z. B. aus zwei Platten-Array-Vorrichtungen 140', und einer Platten-Array- Steuereinheit 120 zum Steuern dieser Platten-Array-Vorrichtungen 140' gebildet. Die zwei Platten-Array-Vorrichtungen 140 und der Plattencontroller sind angeordnet, um in einem Gehäuse 141 enthalten zu sein. In diesem Fall ist die Vorderseite des Gehäuses 141 an jeder Platten-Array-Vorrichtung 140' mit dem Bedienfeld 226 zusätzlich zu einer Vielzahl von Lüftungsfenstern 143 zum Abstrahlen von Wärme versehen, die von einer Vielzahl von Plattenlaufwerken (in Fig. 8 nicht gezeigt) erzeugt wird. Des weiteren ist die Vorderseite des Gehäuses 141 an der Platten-Array-Steuereinheit 120 auch mit dem Bedienfeld 226 versehen.
  • Schließlich sind in Fig. 9(A) und 9(B) Blockdiagramme einer Platten-Array-Steuereinheit 120 bzw. einer Vielzahl von Platten-Array-Vorrichtungen 140 gezeigt, die durch die Platten-Array-Steuereinheit 120 gesteuert werden. In diesem Fall können maximal acht Plattenlaufwerke durch die Platten- Array-Steuereinheit 120 gesteuert werden, die eine Vielzahl von Steuersätzen hat.
  • In Fig. 9(A) sind optische Hochgeschwindigkeitskanäle A, B, C und D und ein optischer Hochgeschwindigkeitssteuermodul vorgesehen, der als optisch/elektrische Schnittstelle (O/E-Schnittstelle) fungiert, um Daten mit hoher Geschwindigkeit zwischen dem Kanal und den Platten-Array-Vorrichtungen 140' übertragen zu können. Die Platten-Array-Steuereinheit 120 umfaßt zwei Steuersätze. Jeder Steuersatz ist aus zwei Modulen gebildet: dem optischen Steuermodul, wie oben beschrieben; und einem Array-Steuermodul, um die Platten- Array-Vorrichtungen 140' zu steuern.
  • Der letztere Modul ist in zehn Vorrichtungscontroller unterteilt, um die jeweilig entsprechenden Plattenlaufwerke (Plattenlaufwerk 0 - 7, Plattenlaufwerk P und Plattenlaufwerk S, wie in Fig. 9(B) gezeigt) und einen Array-Datencontroller zu steuern, um die Daten zu jedem oder von jedem der Vorrichtungscontroller zu übertragen.
  • Die zwei Steuersätze in der Platten-Array-Steuereinheit sind voneinander unabhängig. Diese Steuersätze können zwei Gruppen von Platten-Array-Vorrichtungen gleichzeitig steuern.
  • In diesem Fall kann das Bedienfeld 226 (Fig. 8) die Statusinformationen von jeder der zwei Platten-Array-Vorrichtungen anzeigen.

Claims (4)

1. Vorrichtung zur Datenprüfung in einem Speichersystem, das eine Vielzahl von Speichervorrichtungen (15) enthält, die parallel betrieben werden, welche Vorrichtung Schreibdaten als Datenblöcke empfängt, die jeweils Daten eines Fehlerdetektionscodes enthalten, die in einer Hostvorrichtung erzeugt wurden, welche Vorrichtung umfaßt:
ein Mittel (36, 44) zum gleichzeitigen Übertragen der Schreibdaten zu jeweiligen Speichervorrichtungen bei einer Schreiboperation;
ein Mittel (38) zum Prüfen von Daten in dem Speichersystem, welches Mittel zum Prüfen von Daten betriebsfähig ist, um einen Schreibdatenprüfprozeß auszuführen, wenn die Schreibdaten bei der Schreiboperation zu den jeweiligen Speichervorrichtungen übertragen werden;
erste Datenübertragungswege zum Übertragen der Schreibdaten;
zweite Datenübertragungswege zum Übertragen von Lesedaten;
ein Mittel (40) zum Verteilen der Datenblöcke von Schreibdaten, um in die Vielzahl von Speichervorrichtungen geschrieben zu werden und zur gleichen Zeit zu den zweiten Datenübertragungswegen übertragen zu werden;
ein Kombinationsmittel (42) zum Kombinieren der Schreibdaten, die zu den zweiten Datenübertragungswegen übertragen wurden, zu Blöcken von kombinierten Daten, die zurück zu der Hostvorrichtung übertragen werden;
ein Mittel (39), das mit einem Ausgang des Kombinationsmittels (42) verbunden ist, zum erneuten Erzeugen von Daten eines Fehlerdetektionscodes für die Hostvorrichtung für jeden der Blöcke von kombinierten Daten;
ein Speichermittel (46) zum Speichern der Daten von Fehlerdetektionscodes von der Hostvorrichtung; und
ein Vergleichsmittel (48) zum Vergleichen jedes der Daten von Fehlerdetektionscodes, die für die Hostvorrichtung erneut erzeugt wurden, mit jedem der Daten von Fehlerdetektionscodes, die in dem Speichermittel (46) gespeichert sind, um zu prüfen, ob die zwei Arten der Daten von Fehlerdetektionscodes einander entsprechen oder nicht, und um zu prüfen, ob die Schreibdaten in die jeweiligen Speichervorrichtungen korrekt geschrieben worden sind oder nicht.
2. Vorrichtung zur Datenprüfung nach Anspruch 1, bei der das Speichermittel (46) zum Speichern der Daten der Fehlerdetektionscodes eine Registereinheit (46) für eine zyklische Redundanzprüfung der Hostvorrichtung enthält, und bei der das Vergleichsmittel (48) zum Miteinandervergleichen der zwei Arten von Daten einen Komparator enthält.
3. Verfahren zur Datenprüfung in einem Speichersystem, das eine Vielzahl von Speichervorrichtungen (15) enthält, die parallel betrieben werden, welche Vorrichtung Schreibdaten als Datenblöcke empfängt, die jeweils Daten eines Fehlerdetektionscodes enthalten, die in einer Hostvorrichtung erzeugt wurden, welches Verfahren die Schritte umfaßt:
Ausführen eines Schreibdatenprüfprozesses, wenn die Schreibdaten bei der Schreiboperation zu den jeweiligen Speichervorrichtungen zu übertragen sind;
Speichern der Daten von Fehlerdetektionscodes von der Hostvorrichtung;
Übertragen und Verteilen der Datenblöcke von Schreibdaten längs eines Schreibdatenübertragungsweges, um sie gleichzeitig in jeweilige Speichervorrichtungen zu schreiben, und auch längs eines Lesedatenübertragungsweges, der normalerweise während einer Schreiboperation ungenutzt ist;
Kombinieren der Schreibdaten, die zu dem Lesedatenübertragungsweg übertragen wurden, zu Blöcken von kombinierten Daten, die zurück zu der Hostvorrichtung übertragen werden;
erneutes Erzeugen von Daten eines Fehlerdetektionscodes für die Hostvorrichtung für jeden der Blöcke von kombinierten Daten; und
Vergleichen jedes der Daten von Fehlerdetektionscodes, die für die Hostvorrichtung erneut erzeugt wurden, mit jedem der Daten von Fehlerdetektionscodes, die vorher gespeichert wurden, um zu prüfen, ob die zwei Arten der Daten von Fehlerdetektionscodes einander entsprechen oder nicht, und um zu prüfen, ob die Schreibdaten in die jeweiligen Speichervorrichtungen korrekt geschrieben worden sind oder nicht.
4. Vorrichtung nach Anspruch 1 oder 2 oder Verfahren nach Anspruch 3, wobei das Speichersystem ein Platten-Array- System ist.
DE69224800T 1991-12-13 1992-12-10 Gerät und Verfahren zur Datenprüfung in einem Datenspeichersystem Expired - Fee Related DE69224800T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3330340A JP2672916B2 (ja) 1991-12-13 1991-12-13 アレイディスク装置のデータチェック方法

Publications (2)

Publication Number Publication Date
DE69224800D1 DE69224800D1 (de) 1998-04-23
DE69224800T2 true DE69224800T2 (de) 1998-07-09

Family

ID=18231529

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69224800T Expired - Fee Related DE69224800T2 (de) 1991-12-13 1992-12-10 Gerät und Verfahren zur Datenprüfung in einem Datenspeichersystem

Country Status (4)

Country Link
US (1) US5477552A (de)
EP (1) EP0546839B1 (de)
JP (1) JP2672916B2 (de)
DE (1) DE69224800T2 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566316A (en) * 1994-02-10 1996-10-15 Storage Technology Corporation Method and apparatus for hierarchical management of data storage elements in an array storage device
JP2981711B2 (ja) * 1994-06-16 1999-11-22 日本アイ・ビー・エム株式会社 ディスク記憶装置
US6018778A (en) * 1996-05-03 2000-01-25 Netcell Corporation Disk array controller for reading/writing striped data using a single address counter for synchronously transferring data between data ports and buffer memory
US5802547A (en) * 1996-10-15 1998-09-01 International Business Machines Corporation Data storage system with streamlined data exchange path to cached data
US6763398B2 (en) * 2001-08-29 2004-07-13 International Business Machines Corporation Modular RAID controller
US7278053B2 (en) * 2003-05-06 2007-10-02 International Business Machines Corporation Self healing storage system
JP4426261B2 (ja) * 2003-11-25 2010-03-03 株式会社日立製作所 チャネルアダプタ及びディスクアレイ装置
JP2006072435A (ja) * 2004-08-31 2006-03-16 Hitachi Ltd ストレージシステムおよびデータ記録方法
JP2006268524A (ja) 2005-03-24 2006-10-05 Fujitsu Ltd 記憶装置、その制御方法及びプログラム
US7552357B2 (en) * 2005-04-29 2009-06-23 Network Appliance, Inc. Lost writes detection in a redundancy group based on RAID with multiple parity
JP2007122476A (ja) 2005-10-28 2007-05-17 Fujitsu Ltd データストレージシステム、データストレージ制御装置及びそのディスクのライト抜け診断方法
US7562264B2 (en) * 2006-09-06 2009-07-14 Intel Corporation Fault tolerant soft error detection for storage subsystems
US20120260034A1 (en) * 2011-04-06 2012-10-11 Hitachi, Ltd. Disk array apparatus and control method thereof

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50152606A (de) * 1974-05-27 1975-12-08
US4092732A (en) * 1977-05-31 1978-05-30 International Business Machines Corporation System for recovering data stored in failed memory unit
JPS5750307A (en) * 1980-09-05 1982-03-24 Sony Corp Time base correcting device
FR2561428B1 (fr) * 1984-03-16 1986-09-12 Bull Sa Procede d'enregistrement dans une memoire a disques et systeme de memoire a disques
JPS61278083A (ja) * 1985-06-03 1986-12-08 Toshiba Corp 情報記録装置
JPS62212577A (ja) * 1986-03-14 1987-09-18 Fujitsu Ltd シリンダアクセスのチエツク方式
JPS6374162A (ja) * 1986-09-18 1988-04-04 Fujitsu Ltd 二次記憶装置の転送内容表示システム
JPS6381660A (ja) * 1986-09-26 1988-04-12 Hitachi Ltd 磁気メモリ制御装置
JPS63149873A (ja) * 1986-12-12 1988-06-22 Nec Corp 磁気デイスク装置用読出し回路
US4775978A (en) * 1987-01-12 1988-10-04 Magnetic Peripherals Inc. Data error correction system
JPS63195878A (ja) * 1987-02-09 1988-08-12 Hitachi Ltd 磁気デイスク装置の書込みデ−タチエツク方式
US4949342A (en) * 1987-04-14 1990-08-14 Matsushita Electric Industrial Co., Ltd. Code error detecting method
GB2205667B (en) * 1987-06-12 1991-11-06 Ncr Co Method of controlling the operation of security modules
US5043874A (en) * 1989-02-03 1991-08-27 Digital Equipment Corporation Memory configuration for use with means for interfacing a system control unit for a multi-processor system with the system main memory
US5185746A (en) * 1989-04-14 1993-02-09 Mitsubishi Denki Kabushiki Kaisha Optical recording system with error correction and data recording distributed across multiple disk drives
US5289478A (en) * 1991-03-11 1994-02-22 Fujitsu Limited Method and means for verification of write data

Also Published As

Publication number Publication date
JP2672916B2 (ja) 1997-11-05
US5477552A (en) 1995-12-19
EP0546839A3 (de) 1994-02-16
EP0546839A2 (de) 1993-06-16
JPH05166304A (ja) 1993-07-02
DE69224800D1 (de) 1998-04-23
EP0546839B1 (de) 1998-03-18

Similar Documents

Publication Publication Date Title
DE2921387C2 (de) Verfahren zum Austauschen von Informationen zwischen einer Datenverarbeitungsanlage und einem Magnetplattenspeicher
DE3751578T2 (de) Datenspeichersystem.
DE69225296T2 (de) Datenrekonstruktion in einem Speichergerätanordnungssystem
DE3855251T2 (de) Speichersystem mit Parallelplattenlaufwerkanordnung
DE69224800T2 (de) Gerät und Verfahren zur Datenprüfung in einem Datenspeichersystem
DE69123093T2 (de) Kanal zur Datenregenerierung in einer fehlertoleranten Plattenlaufwerkanordnung und Verfahren zur Fehlerkorrektur darin
DE2759128C2 (de)
DE69131551T2 (de) Logische Aufteilung eines Speichersystems mit redundanter Matrix
DE68926436T2 (de) Plattenlaufwerkanordnungssystem und Verfahren
DE69529728T2 (de) Speicherplattenanordnungsgerät
DE69319181T2 (de) Entschachtelungsschaltung zum Regenerieren von digitalen Daten
DE69503578T2 (de) Redundante Plattenspeicheranordnung, die auswechselbare Kassetten aufweist
DE2326942C2 (de)
DE3881786T2 (de) Identifizierung von Datenspeicherungseinrichtungen.
DE68919219T2 (de) Speicher für platteneinheit.
DE69330577T2 (de) Plattensteuersystem
DE69224885T2 (de) Prozessteuersystem zum Betreiben einer Speichereinrichtung
DE69330924T2 (de) Plattennetzwerk programmierbares Steuerungsgerät
DE1295246B (de) Schaltungsanordnung zur fehlergesicherten Wiedergabe von parallel dargestellten digitalen Signalen
DE69112445T2 (de) Netzwerkplattenanordnung.
DE69635713T2 (de) Diskarray-Teilsystem
DE4423949A1 (de) E/A-Hilfssystem und Exklusiv-Steuerverfahren, Datenspeicherverfahren und Speicherinitialisierungsverfahren in einem E/A-Hilfssystem
DE69532703T2 (de) Speicherplattenanordnungsuntersystem und Datenerzeugungsverfahren dazu
DE2941477C2 (de)
DE69704880T2 (de) Fehlererkennungsgerät und verfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee