DE3932474A1 - Platten-steuervorrichtung und plattenzugriff-steuerverfahren - Google Patents

Platten-steuervorrichtung und plattenzugriff-steuerverfahren

Info

Publication number
DE3932474A1
DE3932474A1 DE3932474A DE3932474A DE3932474A1 DE 3932474 A1 DE3932474 A1 DE 3932474A1 DE 3932474 A DE3932474 A DE 3932474A DE 3932474 A DE3932474 A DE 3932474A DE 3932474 A1 DE3932474 A1 DE 3932474A1
Authority
DE
Germany
Prior art keywords
access
disk
level
storage
memory
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.)
Granted
Application number
DE3932474A
Other languages
English (en)
Other versions
DE3932474C2 (de
Inventor
Tomohiro Murata
Masaharu Akatsu
Kenzo Kurihara
Yoshiaki Kuwahara
Shigeo Honma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3932474A1 publication Critical patent/DE3932474A1/de
Application granted granted Critical
Publication of DE3932474C2 publication Critical patent/DE3932474C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/312In storage controller

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Description

Die Erfindung betrifft Steuervorrichtungen und Steuer­ verfahren für den Plattenzugriff, insbesondere derartige Ver­ fahren und Vorrichtungen mit einem Cache-Speicher, die geeig­ net sind, die Verschlechterung oder Entartung der Plattenzu­ griffsfunktion aufgrund von darin auftretenden Störungen oder Problemen zu steuern und die Funktion wiederzugewinnen.
Bei einer herkömmlichen Plattensteuervorrichtung mit einem Cache-Speicher werden Daten, auf die häufig Zugriff ge­ nommen wird, in dem Cache-Speicher gespeichert und bei Zugriff aus diesem Speicher gelesen, ohne Zugriff auf eine Platte zu nehmen, um den Wirkungsgrad beim Datenzugriff zu verbessern.
Wie in der offengelegten japanischen Patentmeldung JP-A-60- 79 447 dargestellt, wird bei Erfassung einer Störung in dem Cache-Speicher durch einen von mehreren Speicherpfaden (stor­ age paths) der gesamte Cache-Speicher abgeschaltet oder abge­ trennt und das Lesen/Schreiben von Daten aus bzw. in diesen Speicher durch andere Speicherpfade überhaupt gestoppt. Durch das Abschalten des gesamten Cache-Speichers aktualisiert der Speicherpfad, der jetzt kein Lesen/Schreiben in dem Cache- Speicher durchführen kann, direkt Aufzeichnungen (Datensätze) auf der Platte, während ein anderer Zugriffspfad, der in dem Cache-Speicher normal Lesen/Schreiben kann, alte Daten in den Aufzeichnungen in dem Cache-Speicher liest, um dadurch die Übertragung der alten Daten, die sich von den neuesten Daten auf der Platte unterscheiden, auf einen Kanal zu verhindern (im folgenden als "Daten-Änderung"/data change bezeichnet).
Wenn bei dieser herkömmlichen Technik einer der Speicher­ pfade eine Störung bezüglich des Cache-Speichers erfaßt, wird diese Störung als eine Störung in dem gesamten Speicher be­ trachtet, und der Cache-Speicher wird von der Plattensteuer­ vorrichtung abgeschaltet. Es ist jedoch möglich, daß eine Stö­ rung auf Seite des Speicherpfades als eine Cache-Störung er­ scheint. Auch in diesem Fall wird dann der Cache-Speicher ab­ geschaltet, obwohl noch viele Speicherpfade übrig sind, die ein korrektes Lesen und Schreiben in dem Cache-Speicher durch­ führen können. Dadurch tritt eine starke unerwünschte Verrin­ gerung der Nutzbarkeit des Cache-Speichers auf. Unter dem Ge­ sichtspunkt der Erhöhung der Nutzbarkeit des Cache-Speichers und der Verhinderung einer Daten-Änderung ist auch ein Ver­ fahren denkbar, bei dem ein Speicherpfad geschlossen wird, der eine Cache-Störung erfaßt hat, und bei dem die Anwendung des Cache-Speichers durch einen anderen Speicherpfad fortgesetzt wird, der ein korrektes Lesen/Schreiben in dem Cache-Speicher durchführen kann. Nach diesem Verfahren wird jedoch gleich­ zeitig der direkte Zugriff auf eine Platte durch den Speicher­ pfad unterbunden, der die Cache-Störung erfaßt hat. Wenn eine Platte nur mit dem Zugriffspfad verbunden ist, der die Cache- Störung erfaßt hat, kann daher auf diese Platte überhaupt nicht zugegriffen werden.
Wenn jedoch tatsächlich ein Plattenzugriff erfolgt, wird in Abhängigkeit davon, ob Daten, auf die zugegriffen werden soll, in dem Cache-Speicher vorhanden sind, ein anderer Daten­ übertragungspfad verwendet, so daß selbst diejenigen Speicher­ pfade, die Probleme beim Zugriff auf den Cache-Speicher haben, auf eine Platte zugreifen können. Es besteht daher das Pro­ blem, daß die Speicherpfade nicht effektiv genutzt werden.
Die generelle Aufgabe der vorliegenden Erfindung besteht darin, die dem Stand der Technik anhaftenden Nachteile zumin­ dest teilweise zu überwinden. Insbesondere besteht eine Auf­ gabe darin, die Nutzbarkeit einer Plattensteuervorrichtung zu erhöhen und eine Daten-Änderung zu verhindern. Eine weitere Aufgabe der Erfindung besteht darin, die Wartung zu vereinfa­ chen, die während des Betriebs einer Plattensteuervorrichtung durchgeführt wird.
Eine erfindungsgemäße Plattensteuervorrichtung mit einem Cache-Speicher enthält Kanäle, Platten, mehrere Speicherpfade SP, die Daten zwischen den Kanälen und den Platten parallel verarbeiten, einen Cache-Speicher zum Speichern einer Kopie eines Teils der Plattendaten und einen Steuerspeicher ECM zum Steuern des Zugriffs auf die mehreren Speicherpfade. Zur Lö­ sung der obengenannten Aufgabenstellungen speichert die Plat­ tensteuervorrichtung eine Bezugsgröße für die Auswahl eines brauchbaren Speicherpfades in dem Steuerspeicher ECM.
Im folgenden wird im einzelnen ein Verfahren zur Steue­ rung der Plattensteuervorrichtung mit einem Cache-Speicher entsprechend der Erfindung beschrieben. Eine Funktionsebene, die für den Grad einer den Cache-Speicher verwendenden Funk­ tion kennzeichnend ist, die ein Speicherpfad hat, der einen Kanal und eine Platte verbindet, wird als die Bezugsgröße in diesem Speicherpfad vorgesehen. Eine Zugriffsebene, die eine Funktionsebene definiert, die ein Speicherpfad, der auf eine Platte zugreifen kann, als die niedrigste haben sollte, ist in dieser Platte vorgesehen, die durch die Plattensteuervorrich­ tung gesteuert wird. Nur ein Speicherpfad, der eine Funktions­ ebene höher als die hat, die als die Zugriffsebene einer Plat­ te bestimmt ist, auf die Zugriff genommen werden soll, greift auf die Platte mit einer Funktionsebene zu, die gleich der ist, die als die Zugriffsebene in der Platte bestimmt ist. Ein Kriterium für die Wahl eines Speicherpfades, der bei Empfang eines Anfangs-Inbetriebnahmesignals von einem Kanal verwendet wird, und ein Kriterium für die Wahl eines Speicherpfads, der für die Verbindung zu einer Platte verwendet wird, wenn ein Bericht über den Abschluß der Such-Operation SEEK (einschließ­ lich der Positionierung eines Magnetkopfes) von der Platte empfangen wird, werden verändert, um als einen verfügbaren Speicherpfad einen Speicherpfad zu wählen, der eine Funktions­ ebene hat, die jedesmal notwendig ist, wenn jeweils das An­ fangs-Inbetriebnahmesignal und der Bericht empfangen werden.
Wie oben ausgeführt, wird auf die Platte, auf die zuge­ griffen werden soll, in Übereinstimmung mit der Funktionsebene Zugriff genommen, die als ein Zugriffsebene in der Platte be­ stimmt ist, wobei nur ein Speicherpfad Anwendung findet, der eine Funktionsebene höher als die hat, die als die Zugriffs­ ebene in der Platte bestimmt ist. Das verhindert, daß die Vielzahl der Speicherpfade auf die Platte auf ihren unter­ schiedlichen Funktionsebenen Zugriff nimmt, um dadurch die Da­ ten-Änderung zu verhindern, die sonst auftreten würde. Indem die in der Platte gesetzte Zugriffsebene auf eine höchstmögli­ che Ebene in einem Bereich von Bedingungen gesetzt wird, in dem Speicherpfade, die auf die Platte zugreifen können, exis­ tieren können, wird ein für diese Platte optimaler Grad der den Cache-Speicher verwendenden Funktion gewählt, die bei Zu­ griff eines Speicherpfades auf die Platte Anwendung findet. Dadurch ist das Problem der Verringerung der Nutzbarkeit des Cache-Speichers gelöst.
Wenn eine Störung auftritt, ändern sich die Speicherpfad- Funktionen von Speicherpfad zu Speicherpfad. In einem solchen Fall werden ein Kriterium für die Wahl eines Speicherpfades, der bei Empfang eines Anfangs-Inbetriebnahmesignals von einem Kanal verwendet wird, und ein Kriterium für die Wahl eines Speicherpfads, der verwendet wird, wenn ein Bericht über den Abschluß der Such-Operation SEEK von der Platte empfangen wird, verändert, um die Anwendung eines Speicherpfads zu er­ möglichen, der nur in einem der beiden Fälle Anwendung finden kann, d. h. bei Empfang des Anfangs-Inbetriebnahmesignals oder bei Empfang des Berichts, um dadurch die Anzahl der verfügba­ ren Speicherpfade zu erhöhen. Das Vorhandensein eines Spei­ cherpfades, der ein Anfangs-Inbetriebnahmesignal von einem Ka­ nal empfangen kann, und eines Speicherpfades, der einen Be­ richt über den Abschluß der Such-Operation von einer Platte empfangen kann, dient dazu, zu bestimmen, daß es einen norma­ len Speicherpfad gibt, um dadurch die Nutzbarkeit der Spei­ cherpfade zu erhöhen. Damit kann der Grad der Funktion optimal für jede Platte gewählt werden, um eine Verringerung in der Nutzbarkeit der Platte zu verhindern.
Bevorzugte Ausführungsbeispiele der Erfindung werden im folgenden unter Bezugnahme auf die Zeichnungen be­ schrieben. In den Zeichnungen zeigt
Fig. 1 ein Blockdiagramm eines Platten-Subsystems und einer Plattensteuervorrichtung als ein Ausführungsbeispiel der Erfindung;
Fig. 2 den Inhalt eines gemeinsamen Steuerspeichers in der Plattensteuervorrichtung;
Fig. 3 ein Flußdiagramm, in dem die Operationsabläufe der jeweiligen Speicherpfade in der Plattensteuervorrichtung dargestellt sind;
Fig. 4 ein Flußdiagramm zur Erläuterung der Einzel­ heiten einer Prozedur zur Bestimmung der Zulassung/Zurückwei­ sung des Zugriffs beim Betrieb jedes Speicherpfades in Fig. 3;
Fig. 5 ein Flußdiagramm zur Erläuterung der Einzelhei­ ten einer Prozedur (1) zur Änderung der Zugriffsebene in einer Platte beim Betrieb eines Speicherpfades;
Fig. 6 ein Flußdiagramm zur Erläuterung der Einzelhei­ ten einer Prozedur (2) zur Änderung der Zugriffsebene einer Platte beim Betrieb eines Speicherpfades;
Fig. 7 ein Flußdiagramm zur Erläuterung der Einzelhei­ ten einer Prozedur zum Setzen eines Faktors der SP-Störung beim Betrieb eines Speicherpfades;
Fig. 8 ein Flußdiagramm für die SP-Funktionsebenen beim Betrieb eines Speicherpfades;
Fig. 9 ein Ausführungsbeispiel eines logischen SP mit zwei Moduln;
Fig. 10 den Aufbau einer Tabelle, die den Status von zwei einen logischen SP aufbauenden Moduln verwaltet;
Fig. 11 eine Entscheidungstabelle, die die Korrespon­ denzbeziehung zwischen dem Status eines logischen SP und dem Status von zwei den SP aufbauenden Moduln angibt;
Fig. 12 eine SP-Struktur, in der zwei einen logischen SP aufbauende Moduln und zwei einen anderen logischen SP auf­ bauende Moduln eine Kreuzverbindung haben;
Fig. 13 ein Flußdiagramm, das die Prozeduren zeigt, die von einer Plattensteuervorrichtung mit einem Cache-Speicher ausgeführt werden, auf die die Erfindung Anwendung findet;
Fig. 14 ein Blockdiagramm eines Platten-Subsystems mit einer erfindungsgemäßen Plattensteuervorrichtung mit einem Cache-Speicher;
Fig. 15 Daten im Tabellenformat, die bei Anwendung der Erfindung für die Steuerung notwendig sind;
Fig. 16 eine Liste von Routen oder Leitwegen, die für die Übertragung von Daten Anwendung finden;
Fig. 17 ein Flußdiagramm, das eine Prozedur für die Be­ stimmung einer Zugriffsebene zeigt; und
Fig. 18 die Beziehung zwischen SP-LEVEL und SP-STATUS, wie sie für die Änderung der Funktionsebene des SP Anwendung findet.
Im folgenden wird ein Ausführungsbeispiel beschrieben, das das Setzen einer Funktionsebene als Bezugsgröße betrifft.
Fig. 1 zeigt ein Blockdiagramm eines Platten-Subsystems (Untersystems) mit einem Cache-Speicher, worauf die vorliegen­ de Erfindung Anwendung findet. Das Subsystem enthält eine Ka­ nalsteuereinheit 111, eine Plattensteuervorrichtung 110, Plat­ ten 90 bis 93, Verbindungsleitungen 113 bis 120, die die Ka­ nalsteuereinheit 111 und die Plattensteuervorrichtung 110 verbinden, und Verbindungsleitungen 137 bis 152, die die Plat­ tensteuervorrichtung und die Platten verbinden. Die verwende­ ten Platten können magnetische Platten, optische Platten oder Halbleiter-Platten sein.
Die Kanalsteuereinheit 111 enthält acht Kanäle a bis h, über die gleichzeitig Anforderungen für den Zugriff auf die Platten 90 bis 93 vorgenommen werden können. Die Plattensteu­ ervorrichtung 110 enthält Datenübertragungs-Steuereinheiten 100 bis 103 (als "Steuerpfad" oder kurz "SP" bezeichnet), die Anforderungen für den Zugriff auf Daten von Kanälen empfangen und Daten zwischen den Kanälen und Platten parallel übertragen (Lesen/Schreiben). Im einzelnen ist jeder SP aus einem spe­ ziell dafür ausgelegten Prozessor oder einem universellen Mi­ kroprozessor aufgebaut. Die Verbindung zwischen den acht Ka­ nälen a bis h und den vier SPs 100 bis 103 wird in einem dyna­ mischen Schaltvorgang durch eine MPSD (multi-path switching device/Mehrweg-Schaltvorrichtung) 109 so gesteuert, daß An­ forderungen für den Zugriff von den Kanälen über die Verbin­ dungsleitungen 121 bis 124 nicht gemeinsam von einem bestimm­ ten SP empfangen werden. Die Plattensteuervorrichtung 110 ent­ hält weiter einen Cache-Speicher 105, der mit SPs (1) bis (4) über Verbindungsleitungen 126, 128, 130 und 132 verbunden ist, und einen Speicher NVS 106, der mit den SPs (1) bis (4) über Verbindungsleitungen 133 bis 136 verbunden ist. Der Cache- Speicher 105 ist ein "flüchtiger", d. h. energieabhängiger Speicher, der nach Bedarf die Kopie eines Teils von auf den Platten 90 bis 93 gespeicherten Daten speichert. Wenn ein SP von einem Kanal eine Anforderung für den Zugriff (Lesen) auf Daten empfängt, die vorher in dem Cache-Speicher 105 gespei­ chert wurden (eine derartige Zugriffsanforderung wird als "cache hitting access request"/den Cache-Speicher treffende Zugriffsanforderung bezeichnet), liest der SP die Daten in dem Cache-Speicher 105, anstatt die Daten auf den Platten 90 bis 93 zu lesen, um die Ansprechfähigkeit des Zugriffs auf die Da­ ten zu erhöhen. Ist diese den Cache-Speicher treffende Zu­ griffsanforderung eine Schreib-Anforderung, aktualisiert der SP die vorher im Cache-Speicher 105 gespeicherten Daten und schreibt gleichzeitig dieselben Aktualisierungsdaten in den NVS 106, der ein (nicht-flüchtiger) Speicher für die Sicherung der Aktualisierungsdaten auf dem Cache-Speicher ist, um die Verarbeitung für die Schreib-Anforderung von dem Kanal nur durch die Aktualisierung der Daten auf dem Cache-Speicher zu beenden, ohne die Daten auf den Platten 90 bis 93 zu aktuali­ sieren. Später werden die neuen, nur im Cache-Speicher aktu­ alisierten Daten in einer Leerzeit nach der Datenübertragung zwischen der Plattensteuervorrichtung 110 und dem Kanal auf die Platte geschrieben, um dadurch die Zugriff-Ansprechfähig­ keit auf die Schreib-Anforderung zu verbessern (als "Hochge­ schwindigkeits-Plattenschreiben" bezeichnet).
Ein ECM 104, der mit den SPs (1) bis (4) über Verbin­ dungsleitungen 125, 129, 131 und 127 verbunden ist, ist ein Steuerspeicher, auf den Bezug genommen wird, wenn die vier SPs (1) bis (4) in der Plattensteuervorrichtung 110 eine Zugriffs­ anforderung verarbeiten, und speichert Daten, die in Fig. 2 in Form einer Tabelle gezeigt sind. Zuerst setzt eine Tabelle SP-LEVEL 200 eine der folgenden drei Funktionsebenen, die ent­ sprechend dem verfügbaren Cache-Status sortiert sind, als Funktionsebene, kennzeichnend für den Grad der den Cache- Speicher benutzenden Funktion durch die jeweiligen SPs in Ab­ hängigkeit vom jeweiligen Störungsgrad in den SPs (1) bis (4):
  • 1. Funktionsebene 3, auf der ein Kanal über einen Speicher­ pfad eine Platte direkt lesen und Daten auf die Platte schrei­ ben kann und über den Speicherpfad zwischen dem Kanal und dem Cache-Speicher den Cache-Speicher lesen und Daten in den Cache-Speicher schreiben kann;
  • 2. Funktionsebene 2, auf der ein Kanal über einen Speicher­ pfad eine Platte direkt lesen und Daten auf die Platte schrei­ ben kann und über den Speicherpfad zwischen Kanal und Cache- Speicher den Cache-Speicher nur lesen kann; und
  • 3. Funktionsebene 1, auf der ein Kanal über einen Speicher­ pfad eine Platte direkt lesen und Daten auf die Platte schrei­ ben kann und über den Speicherpfad zwischen Kanal und Cache- Speicher den Cache-Speicher weder lesen noch Daten in den Cache-Speicher schreiben kann.
In Fig. 2 ist der Zahlenwert 3 als Anfangswert gesetzt, der die Funktionsebenen aller SPs angibt. Wenn ein eine Funk­ tionsebene bezeichnender Zahlenwert größer ist, ist die Funk­ tionsebene höher.
Ein Flag (Kennzeichen), das angibt, ob jeder der vier SPs (1) bis (4) in der Plattensteuervorrichtung 110 logisch ver­ fügbar ist oder nicht ("1" gibt an, daß ein SP verfügbar ist, und "0" gibt an, daß ein SP nicht verfügbar ist), wird in ei­ ner Tabelle SP-AVAILABLE 210 gesetzt. In Fig. 2 sind alle SPs so gesetzt, daß sie logisch verfügbar sind. Ein Flag, das an­ gibt, ob jeder SP (1) bis (4) funktionsmäßig verfügbar ist ("1" gibt an, daß ein SP verfügbar ist, und "0" gibt an, daß ein SP nicht verfügbar ist), wird in einer Tabelle SP-OPERAT­ ABLE 220 gesetzt. In Fig. 2 sind alle SPs als funktionsmäßig verfügbar dargestellt. Die in der Tabelle SP-LEVEL 200 gesetz­ ten Funktionsebenen der SPs ergeben nur Sinn, wenn die SPs funktionsmäßig verfügbar sind.
Eine Pfad-Funktionsebene (Zugriffsebene), die ein Spei­ cherpfad, der auf eine Platte zugreift, als die niedrigste ha­ ben muß, ist als eine Variable (LEVEL) in die Spalten von je­ der der DEVs (1) bis (4) der Tabelle DEV 230 in Entsprechung zu dieser Platte gesetzt. Die folgenden vier Zugriffsebenen sind vorgesehen:
  • (a) Zugriffsebene 3, auf die nur von einem Speicherpfad auf der Funktionsebene 3 zugegriffen werden kann;
  • (b) Zugriffsebene 2, auf die nur von einem Speicherpfad auf der Funktionsebene 2 oder 3 zugegriffen werden kann;
  • (c) Zugriffsebene 1, auf die von einem Speicherpfad auf der Funktionsebene 1, 2 oder 3 zugegriffen werden kann; und
  • (d) Zugriffsebene 0, die den Zugriff auf jede Platte unterbin­ det.
In Fig. 2 sind die Variablen (LEVEL) von DEV (1) bis (4), die die Zugriffsebenen der Platten 90 bis 93 angeben, alle auf 3 gesetzt. Die Inhalte der Variablen (FLAG) und (LOCK) in DEV 230 werden später beschrieben.
Die Struktur eines Zugriffspfades zwischen einer Platte und einem Kanal, der durch die Plattensteuervorrichtung 110 gesteuert wird, ist in der Tabelle DCB 240 in Entsprechung zu dieser Platte vorgegeben. Im einzelnen wird die Struktur eines Zugriffspfades zwischen einer Platte und einem Kanal in Form von drei Daten PAM, POM und CPAS in jeder der Platten 90 bis 93 in den Einheiten DCB (1) bis (4) gesetzt. Ein Flag, das angibt, mit welchem der SPs (1) bis (4) in der Plattensteuer­ vorrichtung jede Platte logisch verbunden ist, wird in den Spalten (b 1) bis (b 4) von PAM gesetzt ("1" gibt an, daß eine Verbindung vorliegt, und "0" gibt an, daß keine Verbindung vorliegt). Da die Platten 90 und 91 über Pfade 137 bis 140 mit allen SPs (1) bis (4) verbunden sind, sind in Fig. 2 die PAM- Spalten (b 1) bis (b 4) der DCBs (1) und (2) alle auf "1" ge­ setzt. Da die Platten 92 und 93 über den Pfad 138 bzw. 139 nur mit den SPs (2) und (3) verbunden sind, werden die PAM-Spalten (b 1) und (b 4) der DCBs (3) und (4) auf "0" und die übrigen auf "1" gesetzt. Ein Flag, das angibt, welcher der SPs (1) bis (4) in der Plattensteuervorrichtung funktionsmäßig auf irgendeine bestimmte Platte zugreifen kann ("1" gibt an, daß ein SP auf die Platte zugreifen kann, und "0" gibt an, daß ein SP nicht auf die Platte zugreifen kann), wird in jeder der POM-Spalten (b 1) bis (b 4) gesetzt. In Fig. 2 sind die POM-Spalten (b 1) bis (b 4) der DCBs (1) bis (4) alle auf "1" gesetzt. Die Ergeb­ nisse der AND (UND)-Verknüpfung der entsprechenden Bits in den jeweiligen PAM- und POM-Spalten (b 1 bis (b 4) sind in den jewei­ ligen CPAS-Spalten (b 1) bis (b 4) der DCB gesetzt. Im einzelnen zeigen die jeweiligen CPAS-Werte (b 1) bis (b 4) in Entsprechung zu einer Platte ein FLAG, das denjenigen der SPs (1) bis (4) in der Plattensteuervorrichtung angibt, mit dem die jeweiligen Platten logisch verbunden sind und der im Moment tatsächlich auf diese Platte zugreifen kann ("1" gibt an, daß ein SP auf diese Platte zugreifen kann, und "0" gibt an, daß ein SP nicht auf diese Platte zugreifen kann).
Der jeweilige Zustand (Status) der SPs (1) bis (4) in der Plattensteuervorrichtung in bezug auf Störungen ist in einer Tabelle SP-STATUS 260 in SP-STATUS-Zeilen (1) bis (4) in Ent­ sprechung zu den SPs angegeben. Der Wert "1" wird in der Spal­ te (b 1) von SP-STATUS gesetzt, wenn der SP auf den Cache- Speicher zugreifen kann, und der Wert "0" wird gesetzt, wenn der SP nicht zugreifen kann. Der Wert "1" wird in der Spalte (b 2) gesetzt, wenn der SP auf den NVS zugreifen kann, und der Wert "0" wird gesetzt, wenn der SP nicht zugreifen kann.
Flags (C) und (N), die angeben, ob der Cache-Speicher bzw. der NVS verfügbar sind oder nicht, werden in einer Tabel­ le CACHE/NVS-AVAILABLE 250 gesetzt, in der "1" angibt, daß der jeweilige Speicher verfügbar ist, und "0", daß er nicht ver­ fügbar ist. Im Beispiel nach Fig. 2 wird "1" als Anfangswert für beide Flags (C) und (N) gesetzt.
Eine Anforderung zum Schließen irgendeines SP wird in ei­ ner Tabelle SP-CLOSE 270 gesetzt. Wenn in dieser Tabelle S (4) "1" gesetzt ist, wird vorgegeben, daß das Schließen von SP (4) angefordert wird.
Anforderungen für die "Wiedergewinnung" (recovery) des Cache-Speichers, des Speichers NVS und eines der SPs werden in einer Tabelle RECOV 280 gesetzt. Ist "1" in (C), (N), S(n) gesetzt, wird angegeben, daß eine Anforderung für die Wieder­ gewinnung oder Regenerierung des Cache-Speichers, des Spei­ chers NVS und des Speicherpfads SP (n) erfolgt.
Die Tabellen SP-CLOSE 270 und RECOV 280 werden durch eine Bedienperson über einen Service-Prozessor 150 von einem War­ tungsterminal 151 aus gesetzt, das in Fig. 1 dargestellt ist.
Im folgenden wird unter Verwendung der obengenannten Steuerdaten in dem Steuerspeicher ECM unter Bezugnahme auf das Flußdiagramm in Fig. 3 beschrieben, wie ein erfindungsgemäßes Plattenzugriff-Steuersystem ausgelegt ist. In dem Flußdiagramm nach Fig. 3 ist der Operationsablauf der jeweiligen SPs nach vorliegender Erfindung dargestellt. Diese Operationen werden insbesondere durch ein Mikroprogramm ausgeführt, das in den jeweiligen SPs arbeitet. Zuerst bestimmt jeder SP unveränder­ lich, ob ein Zugriffsbefehl von einem Kanal an diesem SP über die Mehrweg-Schaltvorrichtung MPSD angekommen ist (Block 299).
Wird festgestellt, daß kein Zugriffsbefehl angekommen ist, wird ein Schließ-Anforderung-Flag geprüft (Block 323). Ist das Flag gesetzt, wird der SP geschlossen (Block 324). Weiterhin wird ein Wiedergewinn-Anforderung-Flag geprüft (Block 325). Ist dieses Flag gesetzt, wird die Wiedergewinnung einer Kompo­ nente durchgeführt (Block 326) und die Steuerung kehrt zu dem Block 299 zurück, in dem festgestellt wird, ob ein Zugriffsbe­ fehl von einem Kanal angekommen ist. Der Inhalt der SP-Schlie­ ßung und der Komponenten-Wiedergewinnung wird später beschrie­ ben.
Wird festgestellt, daß ein Zugriffsbefehl vorliegt, schreitet die Steuerung zur Ausführung des Zugriffsbefehls fort, wie im folgenden beschrieben. Zuerst wird die Nummer einer Platte, auf die Zugriff genommen werden soll, von dem Kanal empfangen (Block 300 in Fig. 3). Der Wert einer Variab­ len (LOCK) in einer der Platte (Nr. = n) entsprechenden Unter­ einheit DEV (n) in der Tabelle DEV 230 wird geprüft (Block 301). Ist der Wert der Variablen 1, wird bestimmt, daß eine Plattensperre nicht sichergestellt werden kann, die Empfangs­ bestätigung für den Zugriffsbefehl wird annulliert, eine BE- LEGT WIEDERHOLEN-Mitteilung wird an den Kanal zurückgegeben, und die Steuerung kehrt zum Block 299 zurück, in dem festge­ stellt wird, ob ein Zugriffsbefehl vorliegt. Ist der Wert der Variablen 0, wird festgestellt, daß eine Platten-Sperre gesi­ chert ist, der Wert der Variablen wid auf 1 gesetzt, und ein Prozeß (1) zur Überprüfung der Zugriffsebene der Platte (Nr. = n) wird durchgeführt (Block 298). Weiter wird der Wert einer Variablen (FLAG) in der DEV (n) entsprechend der Platte (Nr. = n) geprüft (Block 303). Ist der Wert der Variablen 0, wird sofort bestimmt, ob der Zugriff auf die Platte ausführbar ist (Block 305). Ist der Wert der Variablen 1, wird ein Prozeß (2) zur Überprüfung der Zugriffsebene der Platte (Nr. = n), auf die Zugriff genommen werden soll, durchgeführt (Block 315). Danach wird bestimmt, ob der Zugriff ausführbar ist oder nicht (Block 305). Die Einzelheiten der Prozesse (1) und (2) zur Überprüfung der Zugriffsebene und zur Bestimmung der Ausführ­ barkeit des Zugriffs werden später beschrieben. Wenn sich als Ergebnis der Bestimmung der Ausführbarkeit ergibt, daß der Zugriff nicht ausführbar ist, wird die Ausführung des Befehls gestoppt, und die Mitteilung FEHLER WIEDERHOLEN (ERROR RETRY) wird an den Kanal zurückgegeben (Block 317). Der Wert der Va­ riablen (FLAG) in der DEV (n) entsprechend der Platte (Nr. = n) wird auf 0 gesetzt, und die Steuerung kehrt zum Block 299 zurück, wo bestimmt wird, ob ein Zugriffsbefehl von einem Ka­ nal angekommen ist. Wird im Block 305 festgestellt, daß ein Zugriff ausführbar ist, wird eine Aufzeichnungs- oder Daten­ satz-Adresse, auf die Zugriff genommen werden soll, empfangen (Block 304), und Daten in dem Cache-Speicher werden wiederge­ wonnen. Ist der Datensatz, auf den zugegriffen werden soll, in dem Cache-Speicher gespeichert, wird er als ein "Treffer" ge­ lesen oder geschrieben. Wenn zu diesem Zeitpunkt die Aufzeich­ nung bzw. der Datensatz gelesen werden soll, wird der Inhalt des Datensatzes in dem Cache-Speicher auf den Kanal übertra­ gen, während der Inhalt des Datensatzes in dem Cache-Speicher aktualisiert wird und der aktualisierte Inhalt des Datensatzes gleichzeitig in dem NVS 106 gespeichert wird, wenn der Daten­ satz geschrieben werden soll (Block 309). Wenn der Datensatz, auf den Zugriff genommen werden soll, nicht in dem Cache- Speicher gespeichert ist, wird der Datensatz auf der Platte (Nr. = n) direkt als ein "Fehler" gelesen oder geschrieben und der Inhalt des Datensatzes, auf den Zugriff genommen werden soll, wird von der Platte auf den Cache-Speicher übertragen.
Dann wird bestimmt, ob diese Prozesse normal abgeschlos­ sen wurden (Block 311). Wenn das so ist, wird der Wert der Va­ riablen (FLAG) in der der Platte (Nr. = n) entsprechenden DEV (n) auf 0 gesetzt, und die Steuerung kehrt zum Block 299 zu­ rück, wo bestimmt wird, ob ein Zugriffsbefehl von einem Kanal angekommen ist. Wenn in dem entsprechenden SP während der Aus­ führung eines Befehls eine Störung auftritt und ein Fehler en­ dete, tritt die Steuerung in eine Störung-Bearbeitungsfolge mit folgenden Schritten ein: Setzen eines Störungsfaktors (Block 319), Ändern der Funktionsebene des SP (Block 321) und Schließen des Cache/NVS (Block 322). Der Inhalt dieser Prozes­ se wird später beschrieben.
Im folgenden wird der Inhalt der Bestimmung der Ausführ­ barkeit des Zugriffs (Block 305), der Prozesse (1) und (2) zur Überprüfung der Zugriffsebene der Platte, auf die Zugriff ge­ nommen werden soll (Blöcke 298 und 315), der Verarbeitung zum Setzen des Störungsfaktors in dem SP (Block 319), der Änderung der Funktionsebene des SP (Block 321), der Schließung des Cache/NVS (Block 322), der Schließung des SP (Block 324) und der Komponenten-Rückgewinnung (Block 326) beschrieben.
Unter Bezugnahme auf das Flußdiagramm nach Fig. 4 wird die Bestimmung der Ausführbarkeit des Zugriffs (Block 305) be­ schrieben. Zuerst wird die momentane Funktionsebene des SP aus SP LEVEL 200 nach Fig. 2 gelesen (Block 501), dann wird die momentane Zugriffsebene der Platte, auf die Zugriff genommen werden soll (Nr. = n), gelesen (Block 502), und der gelesene Wert der Funktionsebene des SP sowie der Wert der Zugriffsebe­ ne der Platte, auf die Zugriff genommen werden soll, werden verglichen (Block 503). Wenn der gelesene Wert der Funktions­ ebene des SP größer als der der Zugriffsebene der Platte ist, wird bestimmt, daß durch den SP auf die Platte zugegriffen werden kann (Block 504). Bei einem entgegengesetzten Ver­ gleichsergebnis wird bestimmt, daß der Zugriff nicht möglich ist (Block 505).
Der Prozeß (1) für die Überprüfung der Zugriffsebene der Platte, auf die Zugriff genommen werden soll (Block 298 in Fig. 3), wird unter Bezugnahme auf das Flußdiagramm nach Fig. 5 beschrieben. Zuerst wird bestimmt, ob der Cache-Speicher entsprechend dem Flag (C) der CACHE/NVS-AVAILABLE-Tabelle 250 in Fig. 2 geschlossen ist (Block 650 in Fig. 5). Ist das der Fall, wird die Zugriffsebene der Platte, auf die Zugriff ge­ nommen werden soll, nur dann auf 1 gesetzt, wenn sie gleich oder größer als 1 ist (Blöcke 651, 652). Ergibt die Abfrage in Block 650 das Ergebnis NEIN, wird bestimmt, ob der NVS entsprechend dem Flag (N) geschlossen ist (Block 653). Ist der NVS geschlossen, wird die Zugriffsebene der Platte, auf die Zugriff genommen werden soll, nur dann auf 2 gesetzt, wenn sie gleich oder größer als 2 ist (Blöcke 654, 655).
Im folgenden wird unter Bezugnahme auf das Flußdiagramm in Fig. 6 der Prozeß (2) zur Überprüfung der Zugriffsebene der Platte, auf die Zugriff genommen werden soll, beschrieben (Block 315 in Fig. 3). Zuerst werden die vier Daten in den jeweiligen Datenflags (b 1) bis (b 4) der Tabellen SP-AVAILABLE 210, SP-OPERATABLE 220 und der Zeilen PAM, POM der DCB (n) entsprechend der Platte (Nr. = n), auf die Zugriff genommen werden soll, einer AND-Verknüpfung (UND-Verknüpfung) unterzo­ gen. Die Ergebnisse werden in den entsprechenden Flags (b 1) bis (b 4) der Zeile CPAS der DCB (n) entsprechend der Platte, auf die Zugriff genommen werden soll, gesetzt (Block 801 in Fig. 6). Anschließend werdendie Flags (b 1) bis (b 4) der CPAS von der DCB (n) gelesen (Block 802), und die Zugriffsebene SPLEVEL (n) des SP (n) entsprechend dem Flag (bn), in dem "1" gesetzt ist, wird von SP-AVAILABLE 210 gelesen (Blöcke 802, 803). Da im allgemeinen eine Vielzahl von solchen SP LEVELs (n) erhalten wird, wird der SP LEVEL (n) mit dem höchsten Funktionsebenenwert unter den SP LEVELs, die der Bedingung ge­ nügen, nach der es SPs gibt, jeweils mit einem verschiedenen SP LEVEL größer als eine bestimmte Funktionsebene und größer als ein Schwellenwert entsprechend der Kombination der Werte der SP LEVELs, als die Funktionsebene der Platte verwendet und als die Zugriffsebene-Variable gesetzt (Blöcke 804, 805, 806, 807). Der schließlich erhaltene Wert der Zugriffsebene-Variab­ len wird in (LEVEL) der DEV (n) der Platte gesetzt, der Wert von (FLAG) wird auf "0" gesetzt.
Entsprechend dem Flußdiagramm nach Fig. 7, das die Pro­ zedur zum Setzen des SP-Störungsfaktors zeigt, wird der Stö­ rungsfaktor in SP identifiziert (Block 600 in Fig. 7), und das Ergebnis wird in Form eines Bit-Musters in den Flags (b 1) und (b 2) in SP STATUS (n) entsprechend dem SP (n) in der Ta­ belle SP STATUS 260 in Fig. 2 gesetzt.
Entsprechend dem Flußdiagramm nach Fig. 8, in dem die Prozedur zur Änderung der SP-Funktionsebene dargestellt ist, werden die Werte der (b 1)- und (b 2)-Flags von SP STATUS (n) entsprechend dem SP (n) in der Tabelle SP STATUS 260 in Fig. 2 geprüft, und der Wert von SP LEVEL (n) entsprechend SP (n) in SP LEVEL 200 wird entsprechend dem Bit-Muster gesetzt, wie in den Blöcken 701 bis 703 in Fig. 8 dargestellt.
Wenn in der Cache/NVS-Schließprozedur (Block 322 in Fig. 3) die Zahl von SPs (n), in denen (b 1) von SP STATUS 260 0 ist, und die den (bn) in SP-OPERATABLE 220 in Fig. 2 entspricht, in denen 1 gesetzt ist, größer als der Wert der Schwelle ist, wird in dem Flag (C) in CACHE/NVS-AVAILABLE 250 1 gesetzt und der Cache-Speicher geschlossen. Wenn die Zahl von SPs, in de­ nen der Wert von (b 2) 0 ist, gleich dem oder größer als der Wert der Schwelle ist, wird in dem Flag (N) von CACHE/NVS- AVAILABLE 250 1 gesetzt und der NVS geschlossen.
In der SP-Schließprozedur (Block 324 in Fig. 3) werden die S (n)-Flags, in denen 1 gesetzt ist, in der SP CLOSE- Tabelle 270 in Fig. 2 geprüft, in dem entsprechenden Flag von SP-AVAILABLE 210 wird 0 gesetzt, und in der Spalte (FLAG) von DEV (1) bis (4) der DEV 230 wird 1 gesetzt.
In der Komponenten-Wiedergewinnungsprozedur (Block 326 in Fig. 3) werden Flags, in denen 1 gesetzt ist, in der RECOV- Tabelle 280 geprüft. Wenn in den Flags (C) und (N) 1 gesetzt ist, wird in den Flags (C) und (N) in CACHE/NVS-AVAILABLE 250 1 gesetzt, die Werte von SPLEVEL (1) bis (4) von SPLEVEL 200 werden auf 3 gesetzt und in der Spalte (FLAG) von DEV (1) bis (4) von DEV 230 auf 1 gesetzt. Wenn in dem Flag S(n) 1 ge­ setzt ist, wird in den (bn)-Flags von SP-AVAILABLE 210 und SP- OPERATABLE 220 1 gesetzt und wird in der Spalte (FLAG) von DEV (1) bis (4) von DEV 230 1 gesetzt.
Wenn einer der zu den Platten 90 bis 93 gehörigen Pfade 141 bis 152 entsprechend Fig. 1 für Wartungszwecke oder ähn­ liches geschlossen (rück-verbunden) ist, wird in dem entspre­ chenden Flag (b 1) bis (b 4) von PAM von DCB (n) in jeder Platte (Nr. = n) 0 (1) gesetzt und in der Spalte (FLAG) von DEV (n) wird 1 gesetzt.
Wenn entsprechend dem oben beschriebenen Ausführungsbei­ spiel eine Störung in irgendeinem der SPs (1) bis (4) auftritt und wenn der Cache-Speicher, der NVS und/oder irgendein zu ir­ gendeiner Platte gehöriger Pfad geschlossen sind, kann der Cache-Speicher unter Verwendung der vorhandenen SP-Funktion bis zum äußersten verwendet werden, und auf die Platte kann zugegriffen werden, während eine Daten-Änderung verhindert wird, wenn der SP in der Plattensteuervorrichtung auf eine mit der Vorrichtung verbundene Platte Zugriff nimmt, um die Ver­ fügbarkeit der Plattensteuervorrichtung zu erhöhen. Da das Schließen eines SP zu Wartungszwecken und das Schließen ir­ gendeines zu einer Platte gehörigen Pfades usw. durchgeführt werden, ohne die Operation des Platten-Subsystems in größerem Umfang zu beeinflussen, kann eine Wartung ohne weiteres durch­ geführt werden, während das Platten-Subsystem in Betrieb ist.
Während in dem obigen Ausführungsbeispiel von der Ver­ wendung eines einzelnen Prozessors als SP in der Plattensteu­ ervorrichtung ausgegangen wurde, kann ein einzelner logischer Speicherprozessor (SP 1) 1000, der zwei in Serie geschaltete getrennte Prozessoren (MP 1) 1001 und (MP 2) 1002 enthält, ver­ wendet werden, um hauptsächlich Daten auf der Kanal-Seite bzw. auf der Platten-Seite zu übertragen, wie in Fig. 9 darge­ stellt. In diesem Fall werden in einer in Fig. 10 gezeigten Tabelle Daten über Kombinationen von verfügbaren und nicht­ verfügbaren Zuständen von zugehörigen Pfaden 1261, 1262, 1331, 1332 gespeichert, die die den SP aufbauenden MP 1 und MP 2 ha­ ben. Wenn in den zugehörigen Pfaden bzw. Eigenleitungen von MP 1 und MP 2 eine Störung oder ein Fehler auftritt, wird der SPSTATUS eines logischen SP mit einem MP, in dessen zugehöri­ gem Pfad eine Störung aufgetreten ist, oder der Wert von SP- OPERATABLE in einer in Fig. 11 gezeigten Entscheidungstabelle gesetzt, um dadurch den Zugriff zu einer Platte durch den lo­ gischen SP auf ganz dieselbe Weise wie im vorhergehenden Aus­ führungsbeispiel zu steuern. Wenn, wie in Fig. 12 gezeigt, eine Struktur verwendet wird, in der Querpfade 1204 und 1205 Prozessoren MP 1 (MP 10, MP 11) und MP 2 (MP 20, MP 21) verbinden, die zwei logische SPs 1200, 1201 bilden, wird davon ausgegan­ gen, daß vier SPs existieren, die zwei neue logische SPs ent­ halten, die durch die Blöcke 1202, 1203 dargestellt sind. Die Funktionsebenen der jeweiligen SPs erhält man durch Kombina­ tionen der entsprechenden Zustände (Status) der MPs, die die jeweiligen SPs aufbauen, wie obenerwähnt, um dadurch die Funktionsebenen der entsprechenden SPs auf dem ECM zu reflek­ tieren, um den Plattenzugriff durch die logischen SPs auf die­ selbe Weise wie im vorherigen Ausführungsbeispiel zu steuern.
Im folgenden wird ein Ausführungsbeispiel im einzelnen beschrieben, in dem die vorhergenannte Bezugsgröße geändert wird, wenn ein Befehl von einem Kanal empfangen wird und ein SP mit einer Platte verbunden ist. Fig. 13 zeigt ein Fluß­ diagramm eines Ausführungsbeispiels eines Prozesses, der unter Anwendung der vorliegenden Erfindung durch eine Plattensteuer­ vorrichtung mit einem Cache-Speicher durchgeführt wird.
In Fig. 14 ist die Struktur eines Platten-Subsystems mit einer erfindungsgemäßen Plattensteuervorrichtung mit einem Cache-Speicher dargestellt. Nach Fig. 14 enthält das Platten- Subsystem eine Kanalsteuereinheit 21, eine Plattensteuervor­ richtung 22, Platten 60, 61 und Verbindungsleitungen 23 bis 30, die die Kanalsteuereinheit und die Plattensteuervorrich­ tung verbinden, sowie Verbindungsleitungen 56 bis 59, die die Plattensteuervorrichtung und die Platten verbinden.
Die Kanalsteuereinheit 21 hat acht Kanäle a bis h, über die acht Zugriffsanforderungen auf Platten 60 und 61 erfolgen. Die Plattensteuervorrichtung 22 hat vier Speicherpfade (SPs) 37 bis 40, die parallel Anforderungen für einen Datenzugriff von den entsprechenden Kanälen verarbeiten können. Im einzel­ nen ist jeder SP aus einem speziell dafür ausgelegten Prozes­ sor oder einem universellen Mikroprozessor aufgebaut. Die Ver­ bindung zwischen den acht Kanälen a bis h und den vier SPs 37 bis 40 wird in einem dynamischen Schaltvorgang durch MPSDs 31, 32 (multi-path switching devices/Mehrweg-Schaltvorrichtungen) so gesteuert, daß Anforderungen für den Zugriff von den Kanä­ len nicht gemeinsam von einem bestimmten SP empfangen werden. Die Plattensteuervorrichtung 22 enthält weiterhin einen Cache-Speicher 42 und einen NVS 43. Der Cache-Speicher ist ein flüchtiger Speicher, der nach Bedarf die Kopie eines Teils von auf den Platten gespeicherten Daten speichert. Der NVS ist beispielsweise ein nicht-flüchtiger Speicher, der verwendet wird, um Daten auf dem Aktualisierungs-Cache-Speicher sicher­ zustellen. Es gibt drei Verfahrensarten, um auf eine Platte zuzugreifen, abhängig von einem Prozeß zur Verwendung des Cache-Speichers und/oder des NVS:
  • 1. Zugriff unter Verwendung des Cache/NVS
  • Wenn eine Anforderung zum Lesen der zuvor in dem Cache- Speicher gespeicherten Daten (eine derartige Zugriffsanforde­ rung wird als "cache-hitting access request"/den Cache-Spei­ cher treffende Zugriffsanforderung bezeichnet) als eine Zu­ griffsanforderung von einem Kanal empfangen wird (das wird als "read hit"/Lese-Treffer bezeichnet), werden die vorher in dem Cache-Speicher gespeicherten Daten anstatt der Daten auf der Platte gelesen, um dadurch die Ansprechfähigkeit des Zugriffs auf die Daten zu verbessern. Ist die den Cache-Speicher tref­ fende Zugriffsanforderung eine Schreib-Anforderung (als "write hit"/Schreib-Treffer bezeichnet), werden die vorher in dem Cache-Speicher gespeicherten Daten durch neue Daten aktuali­ siert und die neuen Daten werden gleichzeitig in den NVS ge­ schrieben, um dadurch die Verarbeitung für eine Anforderung von dem Kanal zu beenden, ohne die Daten auf der Platte zu ak­ tualisieren. Die allein in dem Cache-Speicher aktualisierten neuen Daten werden später in einer Leerzeit für die Platten­ steuervorrichtung kollektiv auf die Platte geschrieben, um dadurch die Zugriff-Ansprechfähigkeit auf die Schreib-Anforde­ rung zu verbessern. Wird von einem Kanal eine Anforderung zum Zugriff auf Daten empfangen, die nicht im voraus in dem Cache- Speicher gespeichert wurden (eine derartige Zugriffsanforde­ rung wird als "cache missing access request"/ eine den Cache- Speicher nicht treffende Zugriffsanforderung bezeichnet), wird auf die Platte unabhängig von einer Lese-Anforderung/Schreib- Anforderung sofort Zugriff genommen und Daten werden zwischen der Platte und dem Kanal übertragen und gleichzeitig in Vorbe­ reitung für den nächsten Zugriff auf die Daten in dem Cache- Speicher gespeichert oder geladen.
  • 2. Zugriff unter Verwendung des Cache-Speichers
  • Der Prozeß für eine Anforderung zum Lesen entspricht dem unter (1). Im Falle eines Schreib-Treffers (write hit) werden die Daten auf der Platte und die Daten in dem Cache-Speicher gleichzeitig aktualisiert. Im Falle eines Schreib-Fehlers (write miss) werden die Daten auf der Platte nur aktualisiert und nicht geladen.
  • 3. Zugriff ohne Verwendung des Cache-Speichers
  • Der Cache-Speicher wird nicht verwendet und auf die Plat­ te wird direkt Zugriff genommen.
Der Block ECM 41 ist ein Steuerspeicher, auf den Bezug genommen wird, wenn die vier SPs (1) bis (4) in der Platten­ steuervorrichtung 22 Zugriffsanforderungen verarbeiten und Da­ ten speichern, wie in Fig. 15 in Form einer Tabelle darge­ stellt.
Zuerst werden die Zustände (Status) der SPs in der Tabel­ leneinheit SPSTATUS 5100 gehalten. Wie obenerwähnt, gibt es vier Daten-Übertragungspfade:
(P 1) zwischen den Kanälen und den Platten;
(P 2) zwischen den Kanälen und dem Cache-Speicher;
(P 3) zwischen den Kanälen und dem NVS; und
(P 4) zwischen den Platten und dem Cache-Speicher.
Der Zahlenwert "1" wird in jeder der Zeilen (P 1) bis (P 4) in der Tabelle SPSTATUS gesetzt, wenn der Pfad in dem jeweili­ gen SP verfügbar ist, während "0" gesetzt wird, wenn der Pfad nicht verfügbar ist. In Fig. 15 ist "1" gesetzt, weil alle Pfade zu allen SPs verfügbar sind.
Die Tabelle SPLEVEL 5110 enthält die Funktionsebenen, die jeweils für den Grad einer SP-Funktion zur Verwendung des Cache/NVS entsprechend dem Status dieses SP kennzeichnend sind.
Fünf Arten von Funktionsebenen sind vorgesehen:
  • 1. Funktionsebene 5, auf der ein direkter Zugriff möglich ist zwischen den jeweiligen Kanälen und der Platte über die ent­ sprechenden Speicherpfade, zwischen den jeweiligen Kanälen und dem Cache-Speicher über die entsprechenden Speicherpfade und zwischen den jeweiligen Kanälen und dem NVS über die entspre­ chenden Speicherpfade;
  • 2. Funktionsebene 4, auf der ein direkter Zugriff möglich ist zwischen den jeweiligen Kanälen und den Platten über die ent­ sprechenden Speicherpfade, zwischen den jeweiligen Kanälen und dem Cache-Speicher über die entsprechenden Speicherpfade und zwischen den jeweiligen Platten und dem Cache-Speicher über die entsprechenden Speicherpfade;
  • 3. Funktionsebene 3, auf der ein direkter Zugriff möglich ist zwischen den jeweiligen Kanälen und den Platten über die ent­ sprechenden Speicherpfade und zwischen den jeweiligen Kanälen und dem Cache-Speicher über die entsprechenden Speicherpfade;
  • 4. Funktionsebene 2, auf der ein direkter Zugriff möglich ist zwischen den jeweiligen Kanälen und den jeweiligen Platten über die entsprechenden Speicherpfade und zwischen den jewei­ ligen Platten und dem Cache-Speicher über die entsprechenden Speicherpfade; und
  • 5. Funktionsebene 1, auf der ein direkter Zugriff möglich ist zwischen den jeweiligen Kanälen und den jeweiligen Platten über die entsprechenden Speicherpfade.
In den Zeilen (LEVEL 5) bis (LEVEL 1) in der Tabelle SP- LEVEL wird der numerische Wert "1" für jeden SP gesetzt, wenn dieser SP diese Funktionsebene hat, und "0" wird gesetzt, wenn das nicht der Fall ist. Dies wird durch den Status der SP- STATUS-Tabelle bestimmt. Das Verfahren zur Bestimmung wird später beschrieben. Aufgrund der Annahme, daß sich alle SPs auf einer Funktionsebene befinden, ist in der Tabelle in Fig. 15 "1" gesetzt.
Ein Flag, das anzeigt, ob die jeweiligen SPs in der Plat­ tensteuervorrichtung logisch verfügbar sind, ist in der Tabel­ le SP-AVAILABLE 5120 gesetzt ("1" gibt an, daß ein SP verfüg­ bar ist, während "0" angibt, daß ein SP nicht verfügbar ist). Entsprechend der Setzung der Flags in Fig. 15 sind alle SPs logisch verfügbar.
Die jeweiligen Strukturen von Zugriffspfaden zwischen den Kanälen und den Platten, die durch die Plattensteuervorrich­ tung 22 gesteuert werden, sind in der Tabelle DCB 5130 in Ent­ sprechung zu diesen Platten gesetzt. Im einzelnen werden die jeweiligen Strukturen der Zugriffspfade zwischen den Platten 60, 61 und den Kanälen als Daten in den Zeilen PAM und POM in DCB (1) und DCB (2) gesetzt.
Ein Flag, das angibt, mit welchem der SPs (1) bis (4) in der Plattensteuervorrichtung jede Platte logisch verbunden ist, ist in der Zeile PAM gesetzt ("1" gibt an, daß eine Ver­ bindung vorliegt, während "0" angibt, daß keine Verbindung vorliegt).
In Fig. 14 ist die Platte 60 mit allen SPs (1) bis (4) über Pfade 56 bis 59 verbunden, so daß in Fig. 15 alle PAM- Werte in DCB (1) auf "1" gesetzt sind. Die Platte 61 ist nur mit SP (2) und SP (3) über Pfade 57 und 58 verbunden, so daß in (SP 1) und (SP 4) von PAM in DCB (2) "0" gesetzt ist, während in (SP 2) und (SP 3) "1" gesetzt ist.
Ein Flag, das angibt, welcher der SPs (1) bis (4) in der Plattensteuervorrichtung funktionsmäßig auf die entsprechende Platte zugreifen kann, ist in POM gesetzt ("1" gibt an, daß ein SP zugreifen kann, während "0" angibt, daß ein SP nicht zugreifen kann). Entsprechend Fig. 15 sind alle Flags so ge­ setzt, daß sowohl DCB (1) als auch DCB (2) von allen SPs zu­ gänglich sind.
Die Tabelleneinheit SP-CURRENT (SP-AKTUELL) 5140 enthält Daten über jeden verfügbaren SP, der mit Erfolg auf eine Plat­ te zugegriffen hat. Wenn der jeweilige SP verfügbar ist, wenn er auf die Platte zugreift, wird "1" gesetzt, während sonst "0" gesetzt wird. Verfahren zur Erstellung und Verwendung die­ ser Tabelle werden später beschrieben.
Eine "Zugriffsebene", die ein Verfahren des Zugreifens auf die jeweiligen Platten definiert, wird für diese Platten in Variablen (LEVEL) in DEV 5150 gesetzt. Die folgenden vier Zugriffsebenen werden gesetzt
  • (a) Zugriffsebene 3, auf der der Plattenzugriff unter Verwen­ dung des Cache/NVS erfolgt;
  • (b) Zugriffsebene 2, auf der der Plattenzugriff unter Verwen­ dung des Cache-Speichers erfolgt;
  • (c) Zugriffsebene 1, auf der der Plattenzugriff ohne Verwen­ dung des Cache-Speichers erfolgt;
  • (d) Zugriffsebene 0, auf der der Plattenzugriff unterbunden ist.
In Fig. 15 sind die beiden variablen Werte (LEVEL) in DEV (1), DEV (2), die die Zugriffsebenen der Platten 60 bzw. 61 angeben, auf 3 gesetzt. Diese Zugriffsebenen werden durch den Status des SP-LEVEL bestimmt. Dieses Verfahren der Be­ stimmung wird später beschrieben. Auch der Inhalt der Variab­ len-Spalte (LOCK) in DEV 5150 wird später beschrieben.
Unter Bezugnahme auf das Flußdiagramm nach Fig. 13 wird beschrieben, wie das Plattenzugriff-Steuersystem nach vorlie­ gender Erfindung unter Verwendung der Steuerdaten in dem ECM realisiert wird. Im einzelnen enthält diese Operation die Im­ plementierung und Umsetzung eines Mikroprogramms, das auf ei­ nem SP arbeitet.
Jeder SP prüft unveränderlich, ob ein Anfangs-Inbetrieb­ nahmesignal von einem Kanal an diesem SP über die Mehrweg- Schaltvorrichtung MPSD angekommen ist (Block 1). Ist das der Fall, schreitet die Steuerung zur Ausführung eines Zugriffsbe­ fehls von dem Kanal fort. Zuerst wird die Nummer einer Platte, auf die Zugriff genommen werden soll, von dem Kanal empfangen (Block 2). Der Wert der Variablen (LOCK) in der der Platte (Nr. = n) entsprechenden Untereinheit DEV (n) in DEV 5150 wird geprüft (Block 3). Ist der Wert der Variablen 1, wird be­ stimmt, daß eine Plattensperre nicht sichergestellt werden kann, die Bestätigung des Zugriffsbefehls wird annulliert, ei­ ne BELEGT WIEDERHOLEN-Mitteilung wird an den Kanal zurückgege­ ben (Block 4), und die Steuerung kehrt zu dem Verarbeitungs­ schritt zurück, in dem die Ankunft eines Anfangs-Inbetrieb­ nahmesignals von einem Kanal bestimmt wird (Block 1). Ist der Wert der Variablen 0, wird festgestellt, daß eine Plattensper­ re gesichert ist, der Wert der Variablen wird auf 1 gesetzt (Block 5) und ein Prozeß (I) zur Wahl eines SP, der auf eine Platte zugreifen kann, wird durchgeführt (Block 6). Die Ein­ zelheiten des Prozesses (I) werden später beschrieben. Als Er­ gebnis der Durchführung des Prozesses (I) werden die folgenden Prozesse durchgeführt, wenn bestimmt wird, daß der SP, der ein Inbetriebnahmesignal von einem Kanal empfangen hat, auf eine Platte zugreifen kann. Wird festgestellt, daß der SP, der ein Inbetriebnahmesignal von einem Kanal empfangen hat, nicht auf die Platte zugreifen kann und daß es einen anderen SP gibt, der auf die Platte zugreifen kann, wird die Steuerung zu die­ sem SP übertragen, der dann die anschließenden Prozesse durch­ führt. Wird festgestellt, daß es keine verfügbaren SPs gibt, wird die Ausführung des entsprechenden Befehls angehalten, die Mitteilung FEHLER WIEDERHOLEN (ERROR RETRY) wird an den Kanal zurückgegeben (Block 7), und die Steuerung kehrt zu dem Prozeß zur Bestimmung der Ankunft eines Anfangs-Inbetriebnahmesignals von einem Kanal zurück (Block 1).
Wenn ein SP, der einen Zugriff durchführt, in seinem Zu­ griffsprozeß den Cache-Speicher benutzt, wird eine Treffer/ Fehler-Bestimmung (hit/miss) durchgeführt (Block 9). Diese enthält eine Abfrage, ob aufgezeichnete Information oder ein Datensatz, worauf zugegriffen werden soll, in dem Cache- Speicher gespeichert ist. Wenn diese Information nicht in dem Cache-Speicher abgelegt ist oder wenn der Zugriffsprozeß den Cache-Speicher nicht verwendet, ist es notwendig, auf eine Platte direkt zuzugreifen. Bei Zugriff auf die Platte muß zu­ erst der Magnetkopf positioniert werden, so daß ein Befehl für die SUCH-Operation (SEEK) an die Platte ausgegeben wird (Block 10). Da bis zum Abschluß der SUCH-Operation in dem Zugriffs­ prozeß nichts zu tun ist, wird nach der Abgabe des SUCH-Be­ fehls die Verbindung zwischen dem SP und dem Kanal zeitweise unterbrochen, und die Steuerung kehrt zu dem Prozeß zur Fest­ stellung der Ankunft eines Anfangs-Inbetriebnahmesignals von einem Kanal zurück (Block 1). Ist die aufgezeichnete Informa­ tion, auf die Zugriff genommen werden soll, in dem Cache- Speicher gespeichert, werden die Cache-Trefferdaten übertragen (Block 11). Ist der Zugriff für eine Leseanforderung, werden die Daten von dem Cache-Speicher zu dem Kanal übertragen. Ist der den Cache/NVS benutzende Zugriff ein Schreib-Treffer, wer­ den die Daten von dem Kanal zu dem Cache/NVS übertragen. Wenn der den Cache-Speicher verwendende Zugriff ein Schreib-Treffer ist, d. h. wenn der Cache-Speicher zu schreibende Daten ent­ hält, ist es notwendig, auf eine Platte zuzugreifen, so daß dieselbe Verarbeitung wie bei einem Fehler (miss) durchge­ führt wird.
Wenn festgestellt wird, daß kein Anfangs-Inbetriebnahme­ signal von einem Kanal angekommen ist, wird bestimmt, ob es einen Bericht über einen Abschluß der SUCH-Operation von einer Platte gibt (Block 12).
Wenn festgestellt wird, daß kein Bericht vorliegt, kehrt die Steuerung zu dem Verarbeitungsschritt zur Bestimmung des Vorliegens eines Anfangs-Inbetriebnahmesignals von einem Kanal (Block 1) zurück. Wird festgestellt, daß ein Bericht vorliegt, wird eine Verarbeitung (II) zur Wahl eines verfügbaren SP durchgeführt (Block 13). Die Einzelheiten der Verarbeitung (II) werden später beschrieben. Als Ergebnis der Durchführung der Verarbeitung (II) wird ein SP bestimmt, der die nachfol­ genden Prozesse durchführt. Dieser SP stellt zuerst eine Rück­ verbindung mit einem Kanal her (Block 14) und überträgt dann Fehlerdaten (miss-data), d. h. Daten, die der Cache-Speicher nicht enthält (Block 15). Die Einzelheiten dieses Schrittes werden unten beschrieben. Im Falle eines Lese-Fehlers, d. h. daß der Cache-Speicher nicht die zu lesenden Daten enthält, werden Daten von der Platte zu dem Kanal übertragen und der Inhalt von Aufzeichnungen, auf die Zugriff genommen werden soll, wird von der Platte zu dem Cache-Speicher übertragen. Im Falle eines Schreib-Fehlers, d. h. daß der Cache/NVS nicht die zu schreibenden Daten enthält, werden bei dem den Cache/NVS benutzenden Zugriff Daten von dem Kanal zu dem Cache/der Platte übertragen und der Inhalt der Aufzeichnungen, auf die Zugriff genommen werden soll, wird von der Platte zu dem Cache-Speicher übertragen. Im Falle eines Schreib-Treffers bei dem den Cache-Speicher benutzenden Zugriff werden Daten von dem Kanal zu dem Cache/ der Platte übertragen. Im Falle eines Schreib-Fehlers, werden Daten von dem Kanal zu der Platte übertragen. Bei dem Zugriff ohne Verwendung des Cache-Spei­ chers werden Daten nur zwischen dem Kanal und der Platte übertragen.
Wenn die Datenübertragung abgeschlossen ist, wird der Wert der Variablen (LOCK) in DEV (n) entsprechend der Platte (Nr. = n) in DEV 5150 auf "0" gesetzt (Block 16), und die Steuerung kehrt zu dem Verarbeitungsschritt zur Bestimmung des Vorliegens eines Anfangs-Inbetriebnahmesignals von einem Kanal zurück (Block 1).
Fig. 16 zeigt eine Liste von Pfaden, die bei der Daten­ übertragung verwendet werden (das Symbol ○ gibt an, daß es ei­ nen Übertragungspfad entsprechend dem Zugriffsprozeß gibt).
Im folgenden werden die Inhalte der Prozesse (I) und (II) zur Wahl des zugreifbaren SP beschrieben. In den beiden Pro­ zessen (I) und (II) wird die SP-CURRENT-Tabelle 5140 in Fig. 15 aktualisiert und es wird bestimmt, daß ein SP, in dem "1" gesetzt ist, einen Zugriff ausführen kann. Die Ergebnisse der AND-Verknüpfung (UND) der entsprechenden Bits in SP-AVAILABLE 5120, PAM und POM in der Platte in DCB 5130 und einer ent­ sprechenden Ebene in SPLEVEL 5110 werden in der Tabelle SP- CURRENT gesetzt. Welche der Ebenen in SP-LEVEL 5110 verwendet wird, wird in Anhängigkeit von der Zugriffsebene der Platte und in Abhängigkeit davon bestimmt, ob die Verarbeitung zur Wahl eines SP, der einen Zugriff ausführen kann, (I) oder (II) ist. Die Einzelheiten der Bestimmung werden unten beschrieben.
Wie oben erwähnt, wird im Falle eines Fehlers die Verbindung zwischen dem SP und dem Kanal zeitweise unterbrochen und ein neuer SP gewählt, so daß ein SP, der einen Zugriff ausführen kann, im Falle eines Treffers in der Auswahlverarbeitung (I) gewählt werden muß. Daher wird bei dem Zugriff unter Verwen­ dung des Cache/NVS die Ebene 5 von SP-LEVEL verwendet. Bei dem Zugriff unter Verwendung des Cache-Speichers wird die Ebene 3 verwendet. Bei der Verarbeitung (II) zur Wahl eines SP, der einen Zugriff ausführen kann, ist ein Treffer oder Fehler schon unterschieden, so daß der SP-LEVEL entsprechend gewählt werden kann. Bei dem Zugriff unter Verwendung des Cache/NVS gibt es nur den Fall eines Fehlers, so daß Ebene 4 verwendet wird. Ist der den Cache-Speicher anwendende Zugriff ein Schreib-Treffer, wird Ebene 3 verwendet, ist er ein Fehler, wird Ebene 2 verwendet. Bei dem Zugriff, in dem der Cache- Speicher nicht benutzt wird, wird Ebene 1 verwendet.
Im folgenden wird der Prozeß beschrieben, der durchge­ führt wird, wenn in der Verarbeitung (II) zur Wahl des SP, der einen Zugriff ausführen kann, festgestellt wird, daß es keine SPs gibt, die einen Zugriff ausführen können. Ein solches Feh­ len von SPs ergibt sich aus der Tatsache, daß es keine SPs gibt, die direkt auf die Platte zugreifen können und verfügba­ re Pfade zwischen der Platte und dem Cache-Speicher haben. Das Laden unter Verwendung der Pfade zwischen den Platten und dem Cache-Speicher wird in Vorbereitung für das Eintreffen eines neuen möglichen Zugriffs auf denselben Datensatz bzw. diesel­ ben Aufzeichnungen durchgeführt. Diese Verarbeitung verur­ sacht keine Mißstände, selbst wenn sie nicht ausgeführt wer­ den kann. Wenn festgestellt wird, daß es keine SPs gibt, die einen Zugriff durchführen können, wird daher ein SP, der einen Zugriff ausführen kann, als solcher mit Ausnahme des Ladens gewählt. Im einzelnen wird im Falle des Zugriffs unter Verwen­ dung des Cache/NVS Ebene 3 erneut als der SP-LEVEL verwendet, um die Tabelle SP-CURRENT umzubauen. Beim Zugriff unter Ver­ wendung des Cache-Speichers wird erneut Ebene 1 verwendet.
Unter Bezugnahme auf Fig. 17 wird nun die Verarbeitung zur Bestimmung der Zugriffsebene beschrieben. Diese Verarbei­ tung wird durchgeführt, wenn ein Fehler oder eine Störung in einer Komponente der Plattensteuervorrichtung auftritt oder wenn zu Wartungszwecken die Verbindung einer Komponente zeit­ weise unterbrochen oder auf andere Weise angeordnet ist, um eine Änderung in den in dem ECM gespeicherten Daten zu verursachen (Fig. 15). Zuerst werden die entsprechenden Bits in SP-AVAIL­ ABLE 5120 und den Zeilen PAM und POM von einer der Platte (Nr. = n) entsprechenden DCB (n) AND-verknüpft, die entsprechenden Ergebnisse und entsprechenden Bits in jeder der Zeilen LEVEL 1 bis LEVEL 5 in der Tabelle SP-LEVEL 5110 werden AND-ver­ knüpft und die resultierenden Daten werden in WORK (1) bis WORK (5) gespeichert (Block 7200). Wie in der Verarbeitung zur Wahl eines SP, der einen Zugriff durchführen kann, beschrie­ ben, gibt WORK (i) einen SP an, der einen Zugriff jeweils in den folgenden Fällen durchführen kann:
WORK (5): bei einem Zugriff unter Verwendung des Cache/NVS, wenn ein Treffer auftritt;
WORK (4): bei einem Zugriff unter Verwendung des Cache/NVS, wenn ein Fehler auftritt;
WORK (3): bei einem Zugriff unter Verwendung des Cache-Spei­ chers, wenn ein Treffer auftritt;
WORK (2): bei einem Zugriff unter Verwendung des Cache-Spei­ chers, wenn ein Fehler auftritt; und
WORK (1): bei einem Zugriff, bei dem der Cache-Speicher nicht verwendet wird.
Die kleinere der Zahlen von Bits in WORK (5) und WORK (4), wo "1" gesetzt ist, wird als OK-SP (3) verwendet (Block 7210). Das gibt die Zahl von SPs an, die einen logischen Zu­ griff auf der Zugriffsebene 3 durchführen können. Ähnlich wird die kleinere der Zahlen von Bits in WORK (3) und WORK (2), wo "1" gesetzt ist, als OK-SP (2) verwendet (Block 7220), und die Zahl von Bits in WORK (1), wo "1" gesetzt ist, wird als OK-SP (1) verwendet (Block 7230). Die höchste der Zugriffsebenen, die die Bedingung erfüllen, nach der es SPs gibt, die einen Zugriff durchführen können, und die der Zahl nach größer als die Schwelle sind, wird als die Zugriffsebene der Platte ver­ wendet (Blöcke 7240, 7250, 7260, 7270). Schließlich wird der Wert der bestimmten Zugriffsebene in (LEVEL) in DEV (n) der Platte gesetzt (Block 7280).
Unter Bezugnahme auf Fig. 18 wird nun der Prozeß zur Än­ derung der Funktionsebene des SP beschrieben. Dieser Prozeß wird durchgeführt, wenn eine Störung oder ein Fehler in einer Komponente der Plattensteuervorrichtung auftritt oder wenn die Verbindung einer Komponente zeitweise unterbrochen oder für Wartungszwecke auf andere Weise angeordnet ist, um dadurch ei­ ne Änderung in SP-STATUS zu verursachen. Zuerst werden die Werte von Flags (p 1) bis (p 4) eines SP-STATUS (k), entspre­ chend SP (k) in der Tabelle SP-STATUS 5100, geprüft, und der Wert von SP-LEVEL (k), entsprechend dem passenden SP (k) in der Tabelle SP-LEVEL 5110, wird entsprechend einem Bit-Muster der Flag-Werte gesetzt. Fig. 18 zeigt die Beziehung zwischen SP-LEVEL und dem Bit-Muster von SP-STATUS (wenn alle Bits von SP-STATUS mit dem Symbol ○ in einer Ebene "1" sind, wird in dieser Ebene "1" gesetzt).
Wenn einer der zu den jeweiligen Platten (60, 61 in Fig. 14) gehörigen Pfade (62 bis 67 in Fig. 14) für Wartungs­ zwecke oder ähnliches geschlossen (wieder-verbunden) ist, wird in dem entsprechenden Flag in PAM von DCB (n) dieser Platte (Nr. = n) "0" ("1") gesetzt.
Die vorliegende Erfindung wurde unter Anwendung auf vier oder zwei Platten, acht Kanäle und vier Speicherpfade be­ schrieben. Sie ist jedoch auch auf eine Plattensteuervorrich­ tung bzw. ein entsprechendes Verfahren mit einer unterschied­ lichen Anzahl von Platten, Kanälen und Speicherpfaden anwend­ bar.
Wenn ein Fehler oder eine Störung in irgendeinem der Pfa­ de zur Übertragung der Daten in der Plattensteuervorrichtung auftritt oder wenn irgendeiner der zu den jeweiligen Platten gehörigen Pfade geschlossen ist, sind nach dem bevorzugten Ausführungsbeispiel die meisten der SPs in der Plattensteuer­ vorrichtung verfügbar, um Zugriff auf die mit der Platten­ steuervorrichtung verbundenen Platten zu nehmen, um dadurch die Anwendbarkeit und Nutzbarkeit der Plattensteuervorrichtung zu verbessern. Da ein Schließen eines SP zu Wartungszwecken und ein Schließen irgendeines der zu den jeweiligen Platten gehörigen Pfade durchgeführt werden kann, ohne in größerem Um­ fang den Betrieb des Platten-Subsystems zu beeinflussen, wird die Wartung erleichtert, während das Platten-Subsystem in Be­ trieb ist.
Wenn eine Störung beim Zugriff des Cache/NVS in einem der in der Plattensteuervorrichtung vorhandenen Speicherpfade auf­ tritt oder wenn eine Störung oder ein Schließen in einem der zu den jeweiligen Platten gehörenden Pfade auftritt, wird nach vorliegender Erfindung der Cache-Speicher bis zu seinem maxi­ malen Grad innerhalb des Umfangs der in den Speicherpfaden in der Plattensteuervorrichtung vorhandenen Funktionen ausge­ nutzt, um dadurch die Nutzbarkeit der Steuervorrichtung zu verbessern. Da das Schließen eines Speicherpfades zu Wartungs­ zwecken und das Schließen irgendeines zu den jeweiligen Plat­ ten gehörigen Pfades durchgeführt werden kann, ohne in großem Umfang die Operation des Platten-Subsystems zu beeinflussen, wird die Wartung erleichtert, während das Platten-Subsystem in Betrieb ist.

Claims (28)

1. Plattensteuervorrichtung, gekennzeichnet durch
mehrere Anschlüsse (137 bis 140), die mit Platten (90 bis 93) zum Speichern von Daten verbunden sind;
mehrere Anschlüsse (113 bis 120), die mit einer Kanal­ steuervorrichtung (111) mit mehreren Kanälen (a, b, c, . . ., h) verbunden sind, über die Zugriffsanforderungen auf die Platten (90 bis 93) erfolgen;
mehrere Speicherpfade (100 bis 103) zum Verarbeiten einer Vielzahl von Daten, die parallel zwischen den Kanälen und den Platten (90 bis 93) übertragen werden;
einen Cache-Speicher (105), der durch die Speicherpfade (100 bis 103) gelesen/beschrieben wird, um Daten von den Plat­ ten zeitweilig zu speichern; und
einen Steuerspeicher (104) für die Auswahl zwischen den Speicherpfaden (100 bis 103) und für deren Steuerung entspre­ chend einer Zugriffsanforderung.
2. Plattensteuervorrichtung nach Anspruch 1, gekennzeichnet durch einen Speicher (NVS; 106) zum zeitweiligen Speichern von Aktualisierungdaten auf dem Cache-Speicher (105), um den Cache- Speicher zu sichern.
3. Plattensteuervorrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß ein Speicherpfad (1200, 1201) zwei oder mehr Prozessoren (MP 10, MP 20; MP 11, MP 21) und Querpfade (1204, 1205) enthält, die die Prozessoren untereinander verbinden, um die Anzahl der Pfade, mit denen die Speicherpfade verbun­ den sind, und damit wirkungsmäßig die Anzahl der Speicherpfade zu erhöhen.
4. Plattenzugriff-Steuerverfahren für eine Plattensteuervor­ richtung (110) nach einem der Ansprüche 1 bis 3, gekennzeichnet durch
einen ersten Schritt, in dem die mit der Kanalsteuervor­ richtung (111) verbundenen Anschlüsse (113 bis 120) ein In­ betriebnahmesignal von einem Kanal oder einen Bericht über den Abschluß einer Suchoperation von einer Platte (90 bis 93) emp­ fangen;
einen zweiten Schritt, in dem der Steuerspeicher (104) unter den Speicherpfaden (100 bis 103) auswählt, um Zugriffs­ anforderungen von Speicherpfaden (100 bis 103) auszuführen; und
einen dritten Schritt, in dem der Zugriff auf Platten (90 bis 93) oder den Cache-Speicher (105) über die ausgewählten Speicherpfade erfolgt.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß der zweite Schritt die folgenden Unterschritte aufweist:
Bestimmen einer Funktionsebene (200), die den Grad einer den Cache-Speicher benutzenden Funktion angibt, die jeder der Speicherpfade (100 bis 103) hat;
Bestimmen einer Zugriffsebene (230) für jede Platte (90 bis 93), die eine Funktionsebene definiert, die ein Speicher­ pfad (100 bis 103) als die niedrigste haben sollte, der, ge­ steuert durch die Plattensteuervorrichtung (110), auf die Plat­ ten (90 bis 93) zugreift; und
Auswählen eines Speicherpfades (100 bis 103), der eine Funktionsebene (200) hat, die höher als die ist, die durch die Zugriffsebene (230) einer Platte (90 bis 93) bestimmt ist, auf die Zugriff genommen werden soll.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Funktionsebene aufweist:
  • (a) eine Ebene, auf der eine Platte (90 bis 93) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) direkt ge­ lesen/beschrieben werden kann und auf der der Cache-Speicher (105) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) gelesen/beschrieben werden kann;
  • (b) eine Ebene, auf der eine Platte (90 bis 93) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) direkt ge­ lesen/beschrieben werden kann und auf der der Cache-Speicher (105) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) nur gelesen werden kann; und
  • (c) eine Ebene, auf der eine Platte (90 bis 93) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) direkt ge­ lesen/beschrieben werden kann und auf der auf den Cache-Spei­ cher (105) über einen Speicherpfad (100 bis 103) durch einen Kanal (111) kein Zugriff genommen werden kann.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die Zugriffsebene aufweist:
  • 1. Eine Ebene, auf der auf die Funktionsebene nur von den Speicherpfaden (100 bis 103) mit der Funktionsebene (a) zuge­ griffen werden kann;
  • 2. Eine Ebene, auf der auf die Funktionsebene nur von den Speicherpfaden (100 bis 103) mit der Funktionsebene (a) oder (b) zugegriffen werden kann;
  • 3. Eine Ebene, auf der auf die Funktionsebene von den Speicherpfaden (100 bis 103) mit der Funktionsebene (a), (b) oder (c) zugegriffen werden kann; und
  • 4. Eine Ebene, auf der der Plattenzugriff unterbunden ist.
8. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeichnet, daß der Schritt zum Bestimmen der Zugriffsebene einen Auswahl­ schritt enthält, in dem als eine Zugriffsebene auf die Platte (90 bis 93) die höchste von verschiedenen Funktionsebenen ge­ wählt wird, auf der die Zahl von Speicherpfaden (100 bis 103) einen Schwellenwert übersteigt.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß der Auswahlschritt folgende Schritte enthält:
Regenerieren der Funktionsebene eines Speicherpfads (100 bis 103), in dem eine Störung aufgetreten ist, zu einer der Funktionsebenen (a), (b) und (c) nach Anspruch 6; oder
Schließen des Speicherpfades entsprechend dem Grad der Störung in dem Speicherpfad und Auswählen eines Speicherpfads entsprechend einer Kombination der Funktionsebenen von nicht­ geschlossenen Speicherpfaden, die mit den Platten unter Steue­ rung der Plattensteuervorrichtung (110) verbunden sind.
10. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß der Schritt zum Bestimmen einer Zugriffsebene enthält:
Für jede Platte Speichern einer entsprechenden Anforde­ rung zum Überprüfen der Zugriffsebenen der mit der Platten­ steuervorrichtung (110) verbundenen Platten (90 bis 93), wenn es eine Änderung der Funktionsebene in einem der Speicherpfade (100 bis 103) in der Plattensteuervorrichtung gibt; und
Bestimmen der Zugriffsebene von nur einer Platte (90 bis 93), auf die Zugriff genommen werden soll, wenn ein Zugriffs­ befehl von einem Kanal zu der Platte empfangen wird.
11. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß der Auswahlschritt aufweist:
Regenerieren der Funktionsebene eines regenerierten Spei­ cherpfads (100 bis 103) in der Plattensteuervorrichtung (110) auf eine der Funktionsebenen (a), (b), (c) entsprechend dem Regenerationsgrad des Speicherpfads; und
Auswählen eines Speicherpfads entsprechend einer Kombi­ nation von Funktionsebenen von zumindest einem Speicherpfad, einschließlich des entsprechenden Speicherpfads der mit der Platte unter Steuerung der Plattensteuervorrichtung (110) ver­ bunden ist.
12. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß der Auswahlschritt aufweist:
Durchführen einer strukturändernden Operation, die das Unterbrechen der Verbindung zwischen einer Platte (90 bis 93) und den Speicherpfaden (100 bis 103) umfaßt, indem die mit der Platte verbundenen Speicherpfade mit Ausnahme des ent­ sprechenden Speicherpfades zeitweilig geschlossen werden; und
Aufheben der Schließung der Speicherpfade, indem die Funktionsebene des entsprechenden Speicherpfads auf eine der Funktionsebenen (a) bis (c) gesetzt wird.
13. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß der die Zugriffsebene bestimmende Schritt aufweist:
Setzen der Zugriffsebenen von allen mit der Plattensteu­ ervorrichtung verbundenen Platten (90 bis 93) auf die Ebene (3), wenn der Cache-Speicher (105) in der Plattensteuervor­ richtung (110) bei der Wartung abgeschaltet werden soll, bei der der Cache-Speicher zeitweilig geschlossen wird; und
Setzen der Zugriffsebenen der mit der Plattensteuervor­ richtung verbundenen Platten auf die Ebene (1), wenn der Cache-Speicher wieder angeschlossen wird.
14. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß der die Zugriffsebene bestimmende Schritt aufweist:
Setzen der Zugriffsebenen von allen Platten (90 bis 93), die mit der Plattensteuervorrichtung (110) verbunden sind, auf die Ebene (2), wenn ein nicht flüchtiger Speicher (106) in der Plattensteuervorrichtung zur Sicherung des Cache-Speichers (105) abgeschaltet werden soll; und
Setzen der Zugriffsebenen der Platten, die mit der Plat­ tensteuervorrichtung verbunden sind, auf die Ebene (1), wenn der nicht-flüchtige Speicher (106) wieder angeschlossen wird, was bei der Wartung erfolgt, bei der der flüchtige Speicher zeitweilig geschlossen wird.
15. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß der den Speicherpfad auswählende Schritt aufweist:
Erniedrigung einer Funktionsebene, die ein Speicherpfad (100 bis 103) haben muß, auf eine Ebene, auf der eine nicht ausführbare kompatible Funktion eliminiert wird, wenn es keine zugänglichen Speicherpfade gibt oder wenn zugängliche Spei­ cherpfade zum Zugriff auf andere Platten (90 bis 93) verwendet werden; und
Auswählen eines neuen zugänglichen Speicherpfades.
16. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß in dem die Funktionsebene bestimmenden Schritt fünf Ebenen vorge­ sehen werden:
  • (a) eine Ebene, auf der ein direkter Zugriff über einen Spei­ cherpfad (100 bis 103) zwischen einem Kanal (111) und einer Platte (90 bis 93) möglich ist, auf der ein Zugriff über einen Speicherpfad zwischen einem Kanal und dem Cache-Speicher (105) möglich ist und auf der ein Zugriff über einen Speicherpfad zwischen einem Kanal und einem Unterstützungs-Speicher möglich ist;
  • (b) eine Ebene, auf der ein direkter Zugriff über einen Spei­ cherpfad zwischen einem Kanal und einer Platte möglich ist, auf der ein Zugriff über einen Speicherpfad zwischen einem Ka­ nal und dem Cache-Speicher möglich ist und auf der ein Zugriff über einen Speicherpfad zwischen einer Platte und dem Cache- Speicher möglich ist;
  • (c) eine Ebene, auf der ein direkter Zugriff über einen Spei­ cherpfad zwischen einem Kanal und einer Platte möglich ist und auf der ein Zugriff über einen Speicherpfad zwischen einem Kanal und dem Cache-Speicher möglich ist;
  • (d) eine Ebene, auf der ein direkter Zugriff über einen Spei­ cherpfad zwischen einem Kanal und einer Platte möglich ist und auf der ein Zugriff über einen Speicherpfad zwischen einer Platte und dem Cache-Speicher möglich ist; und
  • (e) eine Ebene, auf der ein direkter Zugriff über einen Spei­ cherpfad zwischen einem Kanal und einer Platte möglich ist.
17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß der die Zugriffsebene bestimmende Schritt aufweist:
Bestimmen, daß es einen Speicherpfad (100 bis 103) gibt, der einen Zugriff auf einer Zugriffsebene ausführen kann, wenn es auf dieser Zugriffsebene einen Speicherpfad gibt, der ein Anfangs-Inbetriebnahmesignal von einem Kanal (111) empfangen kann und einen Speicherpfad, der einen Bericht über den Ab­ schluß einer Suchoperation von einer Platte (90 bis 93) emp­ fangen kann, unabhängig davon, ob diese Speicherpfade überein­ stimmen oder nicht;
Zählen der Speicherpfade, die einen Zugriff auf jeder Zu­ griffsebene ausführen können; und
Auswählen als Zugriffsebene der Platte die höchste Ebene der Speicherpfade, deren Zahl einen Schwellenwert übersteigt.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß der Auswahlschritt aufweist:
Regenerieren der Funktionsebene eines Speicherpfads (100 bis 103) in der Plattensteuervorrichtung (110), in dem eine Störung auftritt, auf eine der Funktionsebenen (a), (b), (c), (d) und (e) oder
Schließen des Speicherpfads entsprechend dem Grad der Störung und Auswählen eines Speicherpfads entsprechend einer Kombination von Funktionsebenen von nicht-geschlossenen Spei­ cherpfaden, die unter Steuerung durch die Plattensteuervor­ richtung mit den Platten (90 bis 93) verbunden sind.
19. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß der Auswahlschritt aufweist:
Regenerieren der Funktionsebene eines regenerierten Spei­ cherpfads in der Plattensteuervorrichtung (110) auf eine der Funktionsebenen (e), (d), (c), (b) und (a) entsprechend dem Regenerationsgrad des Speicherpfads (100 bis 103); und
Durchführen eines Zugriffs entsprechend der Kombination von Funktionsebenen von einem oder mehreren Speicherpfaden, einschließlich des entsprechenden Speicherpfades, die unter Steuerung durch die Plattensteuervorrichtung mit den Platten (90 bis 93) verbunden sind.
20. Verfahren nach einem der Ansprüche 4 bis 19, dadurch ge­ kennzeichnet, daß ein Kriterium für die Auswahl eines Spei­ cherpfads (100 bis 103), der Anwendung findet, wenn ein An­ fangs-Inbetriebnahmesignal von einem Kanal (111) empfangen wird, sich von einem Kriterium für die Auswahl eines Speicher­ pfads unterscheidet, der Anwendung findet, wenn ein Bericht über den Abschluß einer Suchoperation von einer Platte (90 bis 93) empfangen wird.
21. Plattenzugriff-Steuerverfahren, gekennzeichnet durch die folgenden Schritte:
  • 1. Feststellen des Vorhandenseins eines Zugriffsbefehls auf eine Platte (90 bis 93) (Schritt 299);
  • 2. Empfangen einer Bestimmung einer Platte, auf die Zugriff genommen werden soll, wenn im Schritt (1) der Zugriffsbefehl festgestellt wird (Schritt 300);
  • 3. Bestimmen einer Funktionsebene (200), die den Grad einer einen Cache-Speicher anwendenden Funktion angibt, die jeder der Speicherpfade (100 bis 103) hat, die Daten auf die Platten übertragen;
  • 4. Bestimmen einer Zugriffsebene (230), die eine Funktions­ ebene definiert, die der Speicherpfad, der auf jede der Plat­ ten zugreift, als die niedrigste haben soll (Schritt 298);
  • 5. Vergleichen der Funktionsebene (200) und der Zugriffsebene (230), um zu bestimmen, ob der Zugriff auf die Platte ausführ­ bar ist oder nicht (Schritt 305);
  • 6. Auswählen eines Speicherpfads und Empfangen der Adresse einer Aufzeichnung, auf die Zugriff genommen werden soll, wenn in Schritt (5) festgestellt wird, daß der Zugriff ausführbar ist (Schritt 304);
  • 7. Verwenden des ausgewählten Speicherpfads, um Daten in dem Cache-Speicher (105) wiederzugewinnen, der zeitweilig Daten von einer Platte speichert, Bestimmen, ob eine entsprechende Aufzeichnung in dem Cache-Speicher (105) vorliegt, Zugreifen auf den Cache-Speicher, wenn das Vorliegen der Aufzeichnung in dem Cache-Speicher festgestellt wird, und direktes Zugreifen auf Platten, wenn festgestellt wird, daß sich keine Daten in dem Cache-Speicher befinden (Schritte 307-309); und
  • 8. Zurückkehren zu Schritt (1) nach Abschluß des Schritts (7) (Schritt 311).
22. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß in Schritt (4) ein Überprüfen der Zugriffsebenen erfolgt, wenn der Cache-Speicher (105) oder ein Speicher (106) zum zeitwei­ ligen Speichern von Aktualisierungsdaten geschlossen ist.
23. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß in Schritt (4) die höchste von verschiedenen Funktionsebenen, in der die Zahl von Speicherpfaden (100 bis 103) einen Schwel­ lenwert übersteigt, als eine Zugriffsebene auf die Platten (90 bis 93) ausgewählt wird.
24. Verfahren nach Anspruch 21, dadurch gekennzeichnet, daß in Schritt (7) eine Platte (90 bis 93) angewiesen wird, eine mechanische Suchoperation durchzuführen, wenn ein direkter Zu­ griff auf die Platte erfolgt, und dann eine Rückkehr zu Schritt (1) erfolgt.
25. Verfahren nach Anspruch 24, gekennzeichnet durch folgen­ de Schritte:
Feststellen, ob es einen Bericht über die Suchoperation von der Platte (90 bis 93) gibt, wenn kein Zugriffsbefehl in Schritt (1) vorliegt;
Auswählen eines Speicherpfads (100 bis 103), der auf die Platte zugreifen kann, wenn der Bericht vorliegt; und
Übertragen von Daten über den ausgewählten Speicherpfad zu der Platte.
26. Verfahren nach Anspruch 21, gekennzeichnet durch folgen­ de Schritte:
Erfassen einer Störung in einem Speicherpfad (100 bis 103), die in Schritt (7) auftritt;
Erfassen eines Störungsfaktors in dem Speicherpfad und Setzen eines Flags, das den Status der Störung in dem Spei­ cherpfad angibt (Schritt 319);
Ändern der Funktionsebene des Speicherpfads, in dem eine Störung aufgetreten ist (Schritt 321); und
Bestimmen des Status der Störung in dem Speicherpfad und Schließen des Cache-Speichers (105)/Speichers (106) entspre­ chend einer vorgegebenen Bedingung (Schritt 322).
27. Plattengerät, gekennzeichnet durch
mehrere Platten (90 bis 93) zum Speichern von Daten;
eine Kanalsteuervorrichtung (110) mit mehreren Kanälen, über die Zugriffsanforderungen auf die Platten (90 bis 93) erfolgen;
mehrere Speicherpfade (100 bis 103) zum Verarbeiten einer Vielzahl von Daten, die zwischen den Kanälen und den Platten (90 bis 93) parallel übertragen werden;
einen Cache-Speicher (105), der durch die Speicherpfade (100 bis 103) gelesen/beschrieben wird, zum zeitweiligen Spei­ chern von Daten von den Platten; und
einen Steuerspeicher (104) zum Bestimmen einer Funktions­ ebene für jeden Speicherpfad (100 bis 103), die den Grad einer den Cache-Speicher verwendenden Funktion angibt, die dieser Speicherpfad (100 bis 103) hat, sowie einer Zugriffsebene für jede Ebene, die eine Funktionsebene definiert, die ein Spei­ cherpfad (100 bis 103) als die niedrigste haben sollte, der auf die Platten zugreift, und zum Auswählen eines Speicher­ pfads entsprechend der Funktionsebene und der Zugriffsebene.
28. Plattenzugriff-Steuerverfahren für ein Plattengerät nach Anspruch 27, gekennzeichnet durch
einen Schritt, in dem der Steuerspeicher (105) ein Inbe­ triebnahmesignal von einem Kanal (113 bis 120) oder einen Be­ richt über den Abschluß einer Suchoperation von einer Platte (90 bis 93) empfängt, um eine Funktionsebene (200) zu bestim­ men, die den Grad der den Cache-Speicher verwendenden Funk­ tion angibt, die jeder der Speicherpfade (100 bis 103) hat;
einen Schritt, in dem der Steuerspeicher (105) eine Zu­ griffsebene bestimmt, die eine Funktionsebene definiert, die ein Speicherpfad, der auf jede der Platten (90 bis 93) zu­ greift, als die niedrigste haben sollte;
einen Schritt, in dem der Steuerspeicher (105) einen Speicherpfad mit einer Funktionsebene auswählt, die höher als die ist, die durch die Zugriffsebene einer Platte bestimmt wird, auf die Zugriff genommen werden soll; und
einen Schritt, in dem der ausgewählte Speicherpfad ver­ wendet wird, um auf eine Platte (90 bis 93) oder den Cache- Speicher (105) zuzugreifen.
DE3932474A 1988-09-28 1989-09-28 Plattenzugriff-Steuerverfahren Expired - Lifetime DE3932474C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63240977A JP2776841B2 (ja) 1988-09-28 1988-09-28 ディスク制御装置におけるディスクアクセス制御方法

Publications (2)

Publication Number Publication Date
DE3932474A1 true DE3932474A1 (de) 1990-04-05
DE3932474C2 DE3932474C2 (de) 1996-07-18

Family

ID=17067477

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3932474A Expired - Lifetime DE3932474C2 (de) 1988-09-28 1989-09-28 Plattenzugriff-Steuerverfahren

Country Status (3)

Country Link
US (1) US5404487A (de)
JP (1) JP2776841B2 (de)
DE (1) DE3932474C2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4026135A1 (de) * 1989-08-18 1991-02-28 Hitachi Ltd Eingabe- und ausgabe-steuerungssystem

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
FR2656441B1 (fr) * 1989-12-22 1993-12-10 Bull Sa Procede securise d'ecriture rapide d'informations pour dispositif de memoire de masse.
JP3058743B2 (ja) * 1992-01-21 2000-07-04 株式会社日立製作所 ディスクアレイ制御装置
US5734926A (en) * 1992-07-15 1998-03-31 Advanced Hardware Architectures Direct memory access controller in an integrated circuit
US5452421A (en) * 1992-09-23 1995-09-19 International Business Machines Corporation System for using register sets and state machines sets to communicate between storage controller and devices by using failure condition activity defined in a request
US5666511A (en) * 1992-10-08 1997-09-09 Fujitsu Limited Deadlock suppressing schemes in a raid system
US5771367A (en) * 1992-12-17 1998-06-23 International Business Machines Corporation Storage controller and method for improved failure recovery using cross-coupled cache memories and nonvolatile stores
JP3600257B2 (ja) * 1993-05-31 2004-12-15 富士通株式会社 情報処理装置及びキャッシュ制御装置
US5584007A (en) * 1994-02-09 1996-12-10 Ballard Synergy Corporation Apparatus and method for discriminating among data to be stored in cache
US5588129A (en) * 1994-02-09 1996-12-24 Ballard; Clinton L. Cache for optical storage device and method for implementing same
US5867736A (en) * 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US5787466A (en) * 1996-05-01 1998-07-28 Sun Microsystems, Inc. Multi-tier cache and method for implementing such a system
US6167486A (en) 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
US6145028A (en) * 1997-12-11 2000-11-07 Ncr Corporation Enhanced multi-pathing to an array of storage devices
JP3726484B2 (ja) 1998-04-10 2005-12-14 株式会社日立製作所 記憶サブシステム
AU5774200A (en) * 1999-06-28 2001-01-31 Sangate Systems Inc. Intelligent splitter, system, and methods of use
US6735636B1 (en) 1999-06-28 2004-05-11 Sepaton, Inc. Device, system, and method of intelligently splitting information in an I/O system
US6708254B2 (en) 1999-11-10 2004-03-16 Nec Electronics America, Inc. Parallel access virtual channel memory system
US6782401B2 (en) 2001-07-02 2004-08-24 Sepaton, Inc. Method and apparatus for implementing a reliable open file system
JP4462852B2 (ja) * 2003-06-23 2010-05-12 株式会社日立製作所 ストレージシステム及びストレージシステムの接続方法
JP4012498B2 (ja) 2003-11-18 2007-11-21 株式会社日立製作所 情報処理システム、情報処理装置、情報処理装置の制御方法及びプログラム
JP2005301419A (ja) * 2004-04-07 2005-10-27 Hitachi Ltd ディスクアレイ装置およびそのデータ処理方法
US7904644B1 (en) * 2006-11-01 2011-03-08 Marvell International Ltd. Disk channel system with sector request queue
US9280477B2 (en) * 2010-12-13 2016-03-08 Seagate Technology Llc Data storage management in a memory device
US8627124B2 (en) * 2011-02-10 2014-01-07 International Business Machines Corporation Techniques for performing storage power management
US10229221B1 (en) * 2012-03-01 2019-03-12 EMC IP Holding Company LLC Techniques for cache updates based on quality of service
KR101864831B1 (ko) * 2013-06-28 2018-06-05 세종대학교산학협력단 가상 캐시를 포함하는 메모리 및 그 관리 방법
US11036509B2 (en) * 2015-11-03 2021-06-15 Intel Corporation Enabling removal and reconstruction of flag operations in a processor
CN112988036A (zh) * 2019-12-16 2021-06-18 瑞昱半导体股份有限公司 存储器数据存取装置及其方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4437155A (en) * 1980-11-14 1984-03-13 Sperry Corporation Cache/disk subsystem with dual aging of cache entries
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4636946A (en) * 1982-02-24 1987-01-13 International Business Machines Corporation Method and apparatus for grouping asynchronous recording operations
US4686621A (en) * 1983-06-30 1987-08-11 Honeywell Information Systems Inc. Test apparatus for testing a multilevel cache system with graceful degradation capability

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5362945A (en) * 1976-11-17 1978-06-05 Toshiba Corp Disc address system
JPS5955558A (ja) * 1982-09-22 1984-03-30 Fujitsu Ltd キヤツシユメモリ制御方式
JPS59100964A (ja) * 1982-12-01 1984-06-11 Hitachi Ltd ディスク制御システム及びその並列データ転送方法
JPS6079447A (ja) * 1983-10-07 1985-05-07 Hitachi Ltd キヤツシユ付デイスクサブシステム
US4958351A (en) * 1986-02-03 1990-09-18 Unisys Corp. High capacity multiple-disk storage method and apparatus having unusually high fault tolerance level and high bandpass
KR910007027B1 (en) * 1987-03-28 1991-09-16 Toshiba Corp Memory access control apparatus
US4858117A (en) * 1987-08-07 1989-08-15 Bull Hn Information Systems Inc. Apparatus and method for preventing computer access by unauthorized personnel
US5025366A (en) * 1988-01-20 1991-06-18 Advanced Micro Devices, Inc. Organization of an integrated cache unit for flexible usage in cache system design
US5142627A (en) * 1988-11-17 1992-08-25 Unisys Corporation FIP-compliant block multiplexor channel interface operational method for cache/disk subsystem
US5070502A (en) * 1989-06-23 1991-12-03 Digital Equipment Corporation Defect tolerant set associative cache

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4437155A (en) * 1980-11-14 1984-03-13 Sperry Corporation Cache/disk subsystem with dual aging of cache entries
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4636946A (en) * 1982-02-24 1987-01-13 International Business Machines Corporation Method and apparatus for grouping asynchronous recording operations
US4686621A (en) * 1983-06-30 1987-08-11 Honeywell Information Systems Inc. Test apparatus for testing a multilevel cache system with graceful degradation capability

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM, TDB, Vol. 30, No. 12, May 1988, S. 135,136 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4026135A1 (de) * 1989-08-18 1991-02-28 Hitachi Ltd Eingabe- und ausgabe-steuerungssystem

Also Published As

Publication number Publication date
JPH0290313A (ja) 1990-03-29
US5404487A (en) 1995-04-04
DE3932474C2 (de) 1996-07-18
JP2776841B2 (ja) 1998-07-16

Similar Documents

Publication Publication Date Title
DE3932474A1 (de) Platten-steuervorrichtung und plattenzugriff-steuerverfahren
DE3508291C2 (de) Datenverarbeitungssystem
DE69735400T2 (de) Speicherplattenanordnung
DE2550339C2 (de) Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE2617408C3 (de) Speichermodul fur ein Datenverarbeitungsgerät mit Speicherhierarchie
DE2829550C2 (de)
DE2523414B2 (de) Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen
DE2230987C2 (de)
DE2241257A1 (de) Datenverarbeitende anlage
DE2163342A1 (de) Hierarchische binäre Speichervorrichtung
EP0046976A2 (de) Halbleiterspeicher aus Speicherbausteinen mit redundanten Speicherbereichen
DE1524788C3 (de) Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE2703559C2 (de)
DE3046912C2 (de) Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage
DE2055522A1 (de) Informations Tasteneingabesystem
DE3928213C2 (de) Subsystem mit einer externen Speichervorrichtung und Datenverarbeitungsverfahren
DE19922786B4 (de) Halbleiterspeicher mit Testeinrichtung
EP1118999A1 (de) Verfahren und Vorrichtung zum wechselweisen Betreiben eines Schreib-Lese-Speichers im Ein-Speicher-Betriebsmodus und im verschränkten Mehr-Speicher-Betriebsmodus
DE1524856A1 (de) Wortadressierbare Datenspeicher mit mehreren defekten Speicherelementen
EP0009625B1 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher
DE2355814C2 (de) Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung
DE19837473A1 (de) Speichervorrichtung mit einem Datenpuffer
DE3016269C2 (de)
DE1449816C3 (de) Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher
DE2854286A1 (de) Schaltungsanordnung mit einem befehlspuffer fuer eine cachespeichereinheit eines datenverarbeitungssystems

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 13/12

D2 Grant after examination
8364 No opposition during term of opposition