DE69919137T2 - Datenspeichersystem - Google Patents

Datenspeichersystem Download PDF

Info

Publication number
DE69919137T2
DE69919137T2 DE69919137T DE69919137T DE69919137T2 DE 69919137 T2 DE69919137 T2 DE 69919137T2 DE 69919137 T DE69919137 T DE 69919137T DE 69919137 T DE69919137 T DE 69919137T DE 69919137 T2 DE69919137 T2 DE 69919137T2
Authority
DE
Germany
Prior art keywords
memory
user data
buses
interface state
controllers
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 - Lifetime
Application number
DE69919137T
Other languages
English (en)
Other versions
DE69919137D1 (de
Inventor
K. John WALTON
Daniel Castel
Alan Kendell CHILTON
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EMC Corp filed Critical EMC Corp
Application granted granted Critical
Publication of DE69919137D1 publication Critical patent/DE69919137D1/de
Publication of DE69919137T2 publication Critical patent/DE69919137T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Bus Control (AREA)

Description

  • Hintergrund der Erfindung
  • Die Erfindung bezieht sich allgemein auf Datenspeicher-Systeme, insbesondere auf Datenspeicher-Systeme mit Redundanz-Anordnungen zum Schutz gegen totalen System-Ausfall beim Versagen einer Komponente oder Untergruppe des Speichersystems.
  • Große Host-Computersysteme benötigen bekanntermaßen Datenspeicher-Systeme hoher Kapazität. Diese großen Computersysteme enthalten im Allgemeinen Datenprozessoren, die viele Operationen an Daten ausführen, die dem Computersystem durch Peripheriegeräte einschließlich Datenspeicher-Systeme zugeführt werden. Die Ergebnisse dieser Operationen werden den Peripheriegeräten einschließlich dem Speichersystem zugeführt.
  • Eine Art des Datenspeicher-Systems ist ein Magnetplatten-Speichersystem. Hier sind eine ganze Reihe von Plattenlaufwerken und das Computersystem über ein Interface miteinander verbunden. Das Interface enthält CPU- oder „vordere" und „hintere" Platten-Steuereinrichtungen (oder Controller). Das Interface steuert die Steuereinrichtungen so, dass sie für den Computer transparent sind, d.h., die Daten werden in der Reihe von Plattenlaufwerken so gespeichert und aus diesen wiedergewonnen, dass das Computersystem lediglich annimmt, es arbeite mit einem großen Speicher. Ein solches System ist im US-Patent 5 206 939 mit der Bezeichnung „System and Method for Disk Mapping and Data Retrieval", Erfinder Moshe Janai, Nathan Vischlitzky, Brono Alterescu und Daniel Castell, ausgegeben am 27. April 1993, mit dem gleichen Inhaber wie die vorliegende Erfindung, beschrieben.
  • Wie in diesem US-Patent beschrieben, kann das Interface zusätzlich zu den CPU- und Platten-Steuereinrichtungen adressierbare Cache-Speicher aufweisen. Der Cache-Speicher ist ein Halbleiterspeicher und dient zur schnellen Speicherung von Daten vom Computersystem vor der Speicherung in den Plattenlaufwerken und, andererseits, zur Speicherung von Daten von den Plattenlaufwerken bevor sie zum Computer gesendet werden. Der Cache-Speicher ist ein Halbleiterspeicher im Gegensatz zum Magnetspeicher wie im Falle der Plattenlaufwerke und ist beim Lesen und Schreiben von Daten wesentlich schneller als die Plattenlaufwerke.
  • Die CPU- und die Platten-Steuereinrichtungen und der Cache-Speicher sind über eine Rückwandplatine miteinander verbunden. Genauer, die Platten-Steuereinrichtungen sind auf Platten-Steuereinrichtung-Platinen, die CPU-Steuereinrichtungen auf CPU-Steuereinrichtungs-Platinen und die Cache-Speicher auf Cache-Speicher-Patinen angebracht. Die Platten-Steuereinrichtungs-, die CPU-Steuereinrichtungs- und die Cache-Speicher-Platine sind in die Rückwandplatine eingesteckt. Um Datenintegrität bei einem Ausfall in einem Steuergerät zu wahren, hat die Rückwandplatine zwei Busse. Eine Gruppe von Platten-Steuergeräten ist mit einem Bus und eine andere Gruppe von Platten-Steuergeräten ist mit dem anderen Bus verbunden. Ebenso ist eine Gruppe von CPU-Steuergeräten mit dem einen und eine andere Gruppe von CPU-Steuergeräten mit dem anderen Bus verbunden. Die Cache-Speicher sind mit beiden Bussen verbunden. Jeder dieser Busse liefert Daten-, Adressen- und Steuer-Information. Die Benutzung von zwei Bussen ermöglicht ein Maß an Redundanz zum Schutz gegen einen Totalausfall des Systems beim Versagen der Steuergeräte oder beim Versagen der an einen Bus angeschlossenen Plattenlaufwerke; durch die Verwendung zweier Busse wird auch die Bandbreite des Systems verglichen mit einem System erhöht, bei dem ein einziger Bus verwendet wird. Ein solches Doppelbussystem ist in 1 gezeigt.
  • Wenn im Betrieb der Host-Computer Endbenutzer-(d.h. Host-Computer-)-Daten auf einer Adresse speichern will, gibt der Host-Computer eine Schreibanforderung auf eines der vorderen Steuergeräte zur Ausführung eines Schreibbefehls. Eines der vorderen Steuergeräte antwortet auf die Anforderung und verlangt Daten vom Host-Computer. Nachdem die Anforderung zum anfragenden vorderen Steuergerät durchgelaufen ist, bestimmt das Steuergerät die Größe der Endbenutzerdaten und reserviert im Cache-Speicher Platz zur Speicherung der Anforderung. Das vordere Steuergerät erzeugt dann Steuersignale auf einem der Busse, der an dieses vordere Steuergerät angeschlossen ist. Der Host-Computer überträgt dann die Daten zum vordere Steuergerät. Das vordere Steuergerät teilt dann dem Host-Computer mit, dass die Übertragung vollständig ist. Das vordere Steuergerät schaut dann in eine nicht gezeigte, im Cache-Speicher gespeicherte Tabelle und bestimmt, welches der hinteren Steuergeräte diese Anforderung verarbeiten soll. Die Tabelle ordnet dann die Host-Computer-Adresse einer Adresse in der Reihe der Plattenlaufwerke zu. Das vordere Steuergerät legt dann eine Nachricht in einer (nicht gezeigten und im Cache-Speicher gespeicherten) „Mailbox" für das hintere Steuergerät ab, das die Anforderung verarbeiten soll, sowie die Größe der Daten und die Plattenadresse für die Daten. Andere hintere Steuergeräte fragen den Cache-Speicher ab, wenn sie frei sind, ihre „Mailbox" zu prüfen. Zeigt die abgefragte „Mailbox" an, dass eine Übertragung auszuführen ist, verarbeitet das hintere Steuergerät die Anforderung, adressiert das Plattenlaufwerk in der Reihe von Plattenlaufwerken, liest die Daten aus dem Cache-Speicher und schreibt sie in die Adressen eines Plattenlaufwerks der Reihe. Wenn die zuvor in der Reihe von Plattenlaufwerken gespeicherten Endbenutzerdaten aus dem Plattenlaufwerk ausgelesen und zum Host-Computer rückgeführt werden sollen, arbeitet das Interfacesystem in umgekehrter Weise. Der interne Betrieb des Interface (z.B. „Mailbox-Abfrage", Ereignis-Flags, Datenstrukturen, Gerätetabellen, Warteschlangen usw.) wird durch die Interface-Zustandsdaten gesteuert, die zwischen den Steuergeräten durch den Cache-Speicher laufen. Ferner werden Endbenutzerdaten durch das Interface als Reihe von Mehrfachwort-Übertragungen oder Bündel übertragen. Jede Wortübertragung in einer Mehrfachwort-Übertragung umfasst hier, zum Beispiel, 64 Bits. Eine Endbenutzer-Datenübertragung umfasst hier, zum Beispiel, 32 Bündel. Jedes Interface-Zustandswort ist ein einzelnes Wort mit, zum Beispiel, 64 Bits.
  • Es wird zuerst festgestellt, dass die Endbenutzerdaten und die Interface-Zustandsdaten unter den Steuergeräten und dem Cache-Speicher auf den Bussen übertragen werden. Die Übertragung jedes Wortes, ob ein Bündel von Endbenutzerdaten oder Interface-Zustandsdaten, laufen in der gleichen Weise durch das Interface. D.h., sie erfordert eine feste Größe Overhead, d.h. Busverteilung. Jeder der beiden Busse muss seine Bandbreite mit den Endbenutzerdaten und den Interface-Zustandsdaten teilen. Daher kann die Bandbreite des Systems nicht vollständig der Endbenutzer-Datenübertragung zwischen Host-Computer und der Reihe der Plattenlaufwerke zugeordnet werden.
  • Zusammenfassung der Erfindung
  • Nach der vorliegenden Erfindung wird ein Datenspeichersystem geschaffen, bei dem die Endbenutzerdaten zwischen einem Host-Computer und einer Reihe von Plattenlaufwerken durch ein Interface übertragen werden. Das Interface umfasst einen Speicher und mehrere Steuergeräte, die durch einen Interface-Zustandsdatenbus und mehrere Endbenutzer-Datenbusse miteinander verbunden sind. Wenigstens ein vorderes Steuergerät ist in Verbindung mit dem Host-Computer und wenigstens ein hinteres Steuergerät ist in Verbindung mit der Reihe von Plattenlaufwerken. Der Interface-Zustandsdatenbusabschnitt ist in Verbindung mit: dem wenigstens einen vorderen und dem wenigstens einen hinteren Steuergerät und dem Speicher. Jeder der mehreren Endbenutzer-Datenbusse hat ein erstes, an ein entsprechendes der mehreren Steuergeräte und ein zweites, an den Speicher angeschlossenes Ende. Die mehreren Steuergeräte steuern die Endbenutzerdatenübertragung zwischen dem Host-Computer und der Reihe von Plattenlaufwerken über den Speicher entsprechend den durch die Steuergeräte erzeugten Interface-Zustandsdaten, wenn die Endbenutzerdaten durch die Endbenutzer-Datenbusse laufen. Die erzeugten Interface-Zustandsdaten werden unter den Steuergeräten über den Speicher übertragen, wenn die Endbenutzerdaten durch den Endbenutzerbus laufen.
  • Bei einem derartigen Aufbau wird die System-Bandbreite erhöht, weil die Endbenutzer- und die Interface-Zustandsdaten auf getrennten Bussystemen innerhalb des Interface geführt werden.
  • Kurzbeschreibung der Zeichnung
  • Für ein umfassenderes Verständnis der Erfindung wird nun Bezug genommen auf die folgende Beschreibung im Zusammenhang mit der beiliegenden Zeichnung. Es zeigen:
  • 1 ein Blockschaltbild eines bekannten Speichersystems,
  • 2 ein Blockschaltbild eines erfindungsgemäßen Speichersystems,
  • 3 ein Blockschaltbild eines Beispiels von mehreren Cache-Speicherplatinen der im System der 2 verwendeten Art,
  • 4 ein Blockschaltbild eines Beispiels der mehreren vorderen Steuergeräten, wie sie im System der 2 verwendet werden,
  • 5 ein Blockschaltbild eines Beispiels der mehreren hinteren Steuergeräte, wie sie im System der 2 verwendet werden,
  • 6 ein Blockschaltbild eines Beispiels von mehreren ASIC-Steuerlogiken, wie sie in den Cache-Speichern in 3 verwendet werden,
  • 7 ein Blockschaltbild einer weiteren Ausführungsform des erfindungsgemäßen Interface und
  • 8 ein Blockschaltbild einer weiteren Ausführungsform eines erfindungsgemäßen Interface.
  • Detaillierte Beschreibung
  • Das in 2 gezeigte Computersystem 100 enthält einen Host-Computer-Abschnitt 112 (z.B. einen Hauptrechner- oder Computer-Abschnitt eines offenen Systems) mit mehreren nicht gezeigten Prozessoren zur Verarbeitung von Endbenutzer-Daten. Teile der verarbeiteten Endbenutzer-Daten werden über ein Interface 118 in einer Reihe 116 von Plattenlaufwerken gespeichert und von diesen abgerufen. Das Interface enthält einen Cache-Speicher-Abschnitt 120, der hier aus zwei identischen Cache-Speicher-Platinen 1200 und 1201 besteht. Ein Beispiel dieser Platinen, nämlich die Platine 1200 , wird anhand 3 erläutert. Die Speicherplatine 1200 enthält eine Reihe von DRAMs, die hier in vier Speicherbereichen angeordnet sind, nämlich Speicherbereich A, Speicherbereich B, Speicherbereich C und Speicherbereich D, wie in 3 gezeigt und im Einzelnen in US 5 943 287 A beschrieben.
  • Wie in 2 weiter gezeigt, enthält das Interface 118 ferner mehrere, hier acht, Steuergeräte 1220 bis 1227 . Hier sind vier der Steuergeräte, nämlich die Steuergeräte 1220 bis 1223 vordere Steuergeräte und an den Host-Computer 112 angeschlossen. Vier Steuergeräte, d.h. die Steuergeräte 1224 bis 1227 sind hintere Steuergeräte und an die Reihe von Plattenlaufwerken 116 angeschlossen. Die vorderen Steuergeräte 1220 bis 1223 sind identisch aufgebaut; als Beispiel ist das Steuergerät 1220 in 4 gezeigt. Ein Kreuzschienenschalter 123 eines jeden von mehreren, hier vier, nicht gezeigten Prozessoren im Host-Computer 112 über einen Serienbus 1260,0 oder den Port P0 des Cache-Speichers 1201 über den Serienbus 1260,1 , wie dargestellt. Jeder der Serienbusse ist ein Vierdraht-Bus mit jeweils zwei unterschiedlichen Empfangs- und Übertragungsdrähten. Ebenso ist jedes der hinteren Steuergeräte 1224 bis 122 identisch aufgebaut; ein Beispiel, nämlich das hintere Steuergerät 1224 ist in 5 gezeigt. Der Kreuzschienenschalter 123 ist dem in 4 äquivalent und dient zur Verbindung eines jeden von mehreren, hier vier, Reihen von Plattenlaufwerken (nicht gezeigt) in der Reihe 116 mit jedem Port P4 des Cache-Speichers 1200 über einen Serienbus 1264,0 oder den Port P4 des Cache-Speichers 1201 über den Serienbus 1264,1 , wie dargestellt.
  • Zurück zu 2: Das Interface 118 enthält ferner einen Interface-Zustandsdaten-Busabschnitt 124, der hier aus vier Interface-Zustandsdaten-Bussen, nämlich Bus A, Bus B, Bus C und Bus D mit 72 parallelen Drähten besteht. Mit den vier Bussen werden die Interface-Zustandsdaten durch das Interface 118 geleitet. Der Interface-Zustandsdaten-Busabschnitt 124 ist angeschlossen an: die vorderen Steuergeräte 1220 bis 1223 , die hinteren Steuergeräte 1224 bis 1227 und sämtlich an die Cache-Speicher-Platinen 1200 , 1201 . Das Interface 118 enthält ferner mehrere, hier 16, serielle Endbenutzer-Datenbusse 1260,0 bis 1267,1 die die Endbenutzerdaten führen, wie dargestellt. Ein erstes Ende der mehreren Endbenutzer-Datenbusse 1260,0 bis 1267,1 ist an ein entsprechendes der mehreren Steuergeräte 1220 bis 1227 angeschlossen, ein zweites Ende ist mit dem Speicherabschnitt 120 verbunden. Genauer, und mit Bezug auf das Steuergerät 1220 , ist ein solches Steuergerät über den Endbenutzer-Datenbus 126 mit der Speicherplatine 122 und über den Endbenutzer-Datenbus 1260,1 an die Speicherplatine 1221 angeschlossen. Das Steuergerät 1221 ist über den Endbenutzer-Datenbus 1261,0 an die Speicherplatine 1220 und über den Endbenutzer-Datenbus 1261,1 an die Speicherplatine 1221 angeschlossen. Die anderen Steuergeräte sind in gleicher Weise verbunden. So ist zum Beispiel, wie gezeigt, das Steuergerät 1227 über den Endbenutzer-Datenbus 1267,0 an die Speicherplatine 1220 und über den Endbenutzer-Datenbus 126 7,1 an die Speicherplatine 1221 angeschlossen. Die Steuergeräte 1220 bis 1227 steuern den Endbenutzer-Daten-Transfer zwischen dem Host-Computer 112 und der Reihe von Plattenlaufwerken 116 durch den Spei cher 120 über die Endbenutzer-Datenbusse 1260,0 bis 1267,1 entsprechend den von den Steuergeräten 1220 bis 1227 erzeugten Interface-Zustandsdaten. Die Interface-Zustandsdaten werden von den Steuergeräten 1220 bis 1227 erzeugt und durch den Speicherabschnitt 120 über den Interface-Zustandsdatenabschnitt 124 unter den Steuergeräten 1220 bis 122 übertragen.
  • Als Beispiel für die Cache-Speicher 1200 , 1201 ist in 3 der Speicher 1200 gezeigt. Der Speicherabschnitt 1200 enthält mehrere, hier vier, Speicherabschnitte mit willkürlichem Zugriff (RAM) (nämlich RAM-Bereich A, RAM-Bereich B, RAM-Bereich C und RAM-Bereich D, wie gezeigt) und eine Matrix aus Zeilen und Spalten von Steuerlogikabschnitten, hier anwendungsspezifische integrierte Schaltungen (ASICS), nämlich Steuerlogik-ASIC-Abschnitte A,A... Steuerlogikabschnitt ASIC D,D. Jede der vier Spalten von Steuerlogik-ASIC-Abschnitten ist, wie gezeigt, an einen entsprechenden Interface-Zustandsdaten-Bus A, B, C bzw. D angeschlossen. Im Einzelnen ist eine erste Spalte von Steuerlogik-Abschnitten (nämlich die ASICS A,A; B,A; C,A und D,A) an den Bus A angeschlossen. Eine zweite Spalte von Steuerlogik-Abschnitten (nämlich die ASICS A,B; B,B; C,B und D,B) ist an den Bus B angeschlossen. Eine dritte Spalte von Steuerlogik-Abschnitten (nämlich die ASICS A,C; B,C; C,C und D,C) ist an den Bus C angeschlossen. Die Steuerlogik-Abschnitte einer vierten Spalte (nämlich die ASICS A,D; B,D; C,D und D,D) sind an den Bus D angeschlossen.
  • Jede der Zeilen der Steuerlogik-Abschnitte ASIC A,A... ASIC D,D ist, wie gezeigt, über einen Daten/Chip-Wähler an einen entsprechenden der vier RAM-Bereiche, RAM-Bereich A... RAM-Bereich D angeschlossen. Die erste Zeile der ASICS A,A; A,B; A,C und A,D ist an den Daten/Chip-Wählbus des RAM-Bereichs A angeschlossen. Die zweite Zeile der ASICS ist über den Daten/Chip-Wählbus an die ASICS B,A; B,B; B,C und B,D angeschlossen. Die dritte Reihe der ASICS C,A; C,B; C,C und C,D ist an den Daten/Chip-Wählbus des RAM-Bereichs C angeschlossen. Die vierte Zeile der ASICS D,A; D,B; D,C und D,D ist an den Daten/Chip-Wählbus des RAM-Bereichs D angeschlossen. Es sei erwähnt, dass die Steuerlogik-Abschnitte ASIC A,A... ASIC D,D in jeder der vier Zeilen in der in US 6 397 281 A im Einzelnen beschriebenen Weise über einen nicht gezeigten Arbitration-Bus miteinander verbunden sind.
  • Wie gezeigt, ist jede der Zeilen der Steuerlogik-Abschnitte ASIC A,A... ASIC D,D über einen SPEICHERADRESSEN/STEUERBUS an einen entsprechenden der vier RAM-Bereiche, RAM-Bereich A... RAM-Bereich D angeschlossen. Die erste Zeile der ASICS A,A; A,B; A,C und A,D ist an den SPEICHERADRESSEN/STEUERBUS des RAM-Bereichs A angeschlossen. Die zweite Zeile der ASICS B,A; B,B; B,C und B,D ist an den SPEICHERADRESSEN/STEUERBUS des RAM-Bereichs B angeschlossen. Die dritte Zeile der ASICS C,A; C,B; C,C und C,D ist an den SPEICHERADRESSEN/STEUERBUS des RAM-Bereichs C angeschlossen. Die vierte Zeile der ASICS D,A; D,B; D,C und D,D ist an den SPEICHERADRESSEN/STEUERBUS des RAM-Bereichs D angeschlossen.
  • Der Cache-Speicher 1200 enthält ferner einen Schaltknoten 130 zur Verbindung eines jeden der Ports P0 bis P7 mit jedem der vier Ports PA, PB, PC und PD. Der Schaltknoten kann so jeden der Ports P0 bis P7 mit jeder der Zeilen der Daten/Chip-Wählbusse verbinden, d.h. jeden der Ports P0 bis P7 mit jedem der vier Speicherbereiche A, B, C oder D, und zwar selektiv entsprechend den von den ASICS A,A bis D,D auf einem Schaltknoten-Steuerbus erzeugten Steuersignale. Die Endbenutzer-Daten werden selektiv über den Schaltknoten 130 geführt, und zwar entsprechend der Routing-Information, die in noch zu beschreibender Weise durch die ASICS A,A bis D,D zugeführt werden.
  • Der Schaltknoten 130 enthält einen Kreuzschienenschalter-Abschnitt 132 mit mehreren, hier zwei, Kreuzschienenschaltern 132a, 132b. Der Schaltknoten 130 enthält ferner mehrere, hier vier, Datenwähler 134a bis 134d. Die beiden Kreuzschienenschalter 132a und 132b sind 4x4-Kreuzschienenschalter, die durch von den ASICS A,A bis D,D zugeführte Steuersignale gesteuert werden. Die Kreuzschienenschalter 132a und 132b haben, wie gezeigt, vier Eingänge/Ausgänge (die hier an die Ports P0 bis P3 bzw. P4 bis P7 angeschlossen sind) und vier Ausgänge/Eingänge, die an einen entsprechenden eines Paars von Eingängen/Ausgängen der vier Datenwähler 134a bis 134d angeschlossen sind. Jeder der Steuerlogik-Abschnitte ASIC A,A bis D,D ist identisch aufgebaut; als Beispiel ist der Steuerlogik-Abschnitt ASIC A,A in 6 im Einzelnen gezeigt; er enthält eine Steuerlogik 150 mit einer Steuerlogik und einen Pufferspeicher 152, wie sie in US 6 145 042 A beschrieben sind. Der ASIC (A,A) steuert die Datenübertragung zwischen dem Pufferspeicher 152 und einem der Busse (Bus A, Bus B, Bus C und Bus D), die an den Steuerlogik-Abschnitt ASIC A,A, angeschlossen sind, hier Bus A. Der Steuerlogik-Abschnitt ASIC A,A erzeugt eine Steuer/Daten-Busanforderung für den an ihn angeschlossenen Steuer/Daten-Bus (hier RAM-Bereich A) und bewirkt die Übertragung auf eine Steuer/Datenbus-Erlaubnis, die entsprechend dem in US 6 145 042 A beschriebenen Protokoll dem Steuerlogik-Abschnitt (hier ASIC A,A) zugeführt wird. Der Steuerlogik-Abschnitt ASIC A,A enthält ferner einen Bus-Arbitrationsabschnitt 153, wie er in US 6 397 281 A beschrieben ist. Hier arbitriert jedoch der Arbitrationsabschnitt auch den Speicherinhalt mit einem zusätzlichen Bus, zusätzlich zu den Bussen A, B, C und D, wobei der eine Endbenutzerdaten-Serienbus über den Kreuzschienenschalter-Abschnitt 132 an jeden Port PA, PB, PC oder PD angeschlossen ist. Die Steuerlogik 150 enthält einen Decoder 157 zum Decodieren der acht Chip-Wählsignale und eines der Lese/Schreibsignale auf dem Bus A, wie in US 5 943 287 A im Einzelnen beschrieben. Der Decoder 157 erzeugt, wie gezeigt, Adresse, Steuerung und Takt für den Speicherbereich A auf dem Speicheradressen/Steuerbus.
  • Die Routing-Information wird über die Interface-Zustandsdaten-Busse A, B, C und D den ASIC A,A bis D,D zugeführt. Wenn beispielsweise Endbenutzerdaten vom Steuergerät 1223 zum Speicherbereich A des Cache-Speichers 1200 übertragen werden sollen, wird zuerst festgestellt, dass das Steuergerät 1223 mit dem Interface-Zustandsdaten-Bus A verbunden ist. Daher wird die Kopplungsknoten-Routing-Information für diese Endbenutzer-Datenübertragung vom Steuergerät 1223 auf den Interface-Zustandsdaten-Bus A gesetzt. Mit Bezug auch auf die 3 und 6 gibt die Steuerlogik ASIC A,A auf die Kopplungsknoten-Routing-Information auf Bus A Steuerinformation auf den daran angeschlossenen Kopplungsknoten-Steuerbus, so dass der Port P3 des Cache-Speichers 1200 (der mit dem Steuergerät 1223 über den Endbenutzerbus 1263,0 angeschlossen ist) über den Kreuzschienenschalter 132a und den Wähler 134a mit dem Port PA verbunden wird.
  • In 7 ist eine weitere Ausführungsform eines Interface, hier das Interface 118', gezeigt. Das Interface 118' enthält 16 Steuergeräte 122'0 bis 122'15 und vier Cache-Speicher-Platinen 120'0 bis 120'3 , die, wie gezeigt, über parallele Mehrpunkt-Busse A, B, C und D zur Übertragung von Interface-Zustandsdaten und 64 Gruppen von seriellen Punkt-zu-Punkt-Busse 126'0,0 bis 126'0,3 bis 126'15,0 bis 126'15,3 zur Übertragung der Endbenutzerdaten verbunden sind. Es sei erwähnt, dass vier Kreuzschienenschalter 132 für jede Speicherplatine 120'0 bis 120'3 vorgesehen sind. Ferner enthält jedes der Steuergeräte 122'0 bis 122'15 vier Kreuzschienenschalter 132', die je ein 4x4-Kreuzschienenschalter sind.
  • 8 zeigt eine weitere Ausführungsform eines Interface, hier das Interface 118". Das Interface 118'' enthält 16 Steuergeräte 122''0 bis 122''15 und vier Cache-Speicher-Platinen 120''0 bis 120''3 , die über vier parallele Mehrpunkt-Busse TH, TL, BH und BL verbunden sind. Ihr Aufbau ist in US 6 289 401 A gezeigt und beschrieben. Demgemäß ist der Cache-Speicher in zwei Gruppen aufgebaut. Die eine Gruppe hat niedrige und die andere hohe Adressen. So sind hier die Cache-Speicher-Platinen 120''0 und 120''1 in der hohen Adressenspeichergruppe und die Cache-Speicher-Platinen 120''2 und 120''3 in der niedrigen Adressenspeichergruppe vorgesehen. Hier aber werden die parallelen Mehrpunktbusse TH (nämlich der oberste), TL (nämlich der unterste), BH (der untere hohe) und BL (der untere niedrige) zur Übertragung von Interface-Zustandswörtern und, wie in 8 gezeigt, die Endbenutzerdaten über die seriellen Punkt-zu-Punkt-Busse 126''0,0 bis 126''15,3 übertragen.
  • Es wird beansprucht:

Claims (10)

  1. Datenspeichersystem (100), bei dem Endbenutzer-Daten zwischen einem Host-Computer (112) und einer Reihe von Plattenlaufwerken (116) über ein Interface (118) übertragen werden, wobei das Interface enthält: einen Speicher (120), mehrere Steuereinrichtungen (1220 bis 1227), wobei wenigstens ein vorderes Steuergerät in Verbindung mit dem Host-Computer und wenigstens ein hinteres Steuergerät in Verbindung mit der Reihe von Plattenlaufwerken steht, einen Interface-Zustandsdaten-Busabschnitt (124) zur Übertragung von Interface-Zustandsdaten, wobei der Interface-Zustandsdaten-Busabschnitt in Verbindung steht mit der wenigstens einen vorderen und der wenigstens einen hinteren Steuereinrichtung und mit dem Speicher, mehrere Endbenutzer-Datenbusse (1260,0 bis 1267,1) zum Übertragen von Endbenutzerdaten, wobei jeder der Endbenutzer-Datenbusse mit einem ersten Ende an ein entsprechendes der mehreren Steuereinrichtungen und mit einem zweiten Ende mit dem Speicher verbunden ist, wobei die Steuereinrichtungen (1220 bis 1227) die Endbenutzer-Datenübertragung zwischen dem Host-Computer und der Reihe von Plattenlaufwerken durch den Speicher über die Endbenutzer-Datenbusse auf von den Steuereinrichtungen erzeugte Interface-Zustandsdaten steuern, wobei die erzeugten Interface-Zustandsdaten unter den Steuereinrichtungen durch den Speicher über den Interface-Zustandsdaten-Bus übertragen werden.
  2. System nach Anspruch 1, wobei die Endbenutzer-Datenbusse serielle Busse sind.
  3. System nach Anspruch 1, wobei der Interface-Zustandsdaten-Busabschnitt parallele Busse enthält.
  4. System nach Anspruch 3, wobei die parallelen Busse in einer Mehrpunkt-Konfiguration mit den Steuereinrichtungen verbunden sind.
  5. System nach Anspruch 3, wobei die Endbenutzer-Datenbusse serielle Busse sind.
  6. System nach Anspruch 5, wobei die parallelen Busse in einer Mehrpunkt-Konfiguration mit den Steuereinrichtungen verbunden sind.
  7. System nach Anspruch 1, mit einem Kopplungsknoten, wobei jeder Speicher mehrere Bereiche aufweist und jeder der Endbenutzer-Datenbusse selektiv über den Kopplungsknoten mit den mehreren Bereichen verbunden ist.
  8. System nach Anspruch 7, wobei der Kopplungsknoten einen Kreuzschienenwähler umfasst.
  9. System nach Anspruch 3, wobei der Interface-Zustandsdaten-Busabschnitt mehrere parallele Busse enthält, von denen jeder an eine der mehreren Steuereinrichtungen und den Speicher angeschlossen ist.
  10. Verfahren zum Betreiben eines Datenspeichersystems (100), bei dem Endbenutzer-Daten zwischen einem Host-Computer (112) und einer Reihe von Plattenlaufwerken (116) über ein Interface (118) übertragen werden, wobei das Verfahren umfasst: Vorsehen eines Speichers (120), Vorsehen mehrerer Steuereinrichtungen (1220 bis 1227), wobei wenigstens ein vorderes Steuergerät in Verbindung mit dem Host-Computer und wenigstens ein hinteres Steuergerät in Verbindung mit der Reihe von Plattenlaufwerken steht, Vorsehen mehrerer Interface-Zustandsdaten-Busabschnitte (124) zur Übertragung von Interface-Zustandsdaten, wobei der Interface-Zustandsdaten-Busabschnitt in Verbindung steht mit der wenigstens einen vorderen und der wenigstens einen hinteren Steuereinrichtung und mit dem Speicher, Vorsehen mehrerer Endbenutzer-Datenbusse (1260,0 bis 1267,1) zum Übertragen von Endbenutzerdaten, wobei jeder der Endbenutzer-Datenbusse mit einem ersten Ende an ein entsprechendes der mehreren Steuereinrichtungen und mit einem zweiten Ende mit dem Speicher verbunden ist, wobei die Steuereinrichtungen (1220 bis 1227) die Endbenutzer-Datenübertragung zwischen dem Host-Computer und der Reihe von Plattenlaufwerken durch den Speicher über die Endbenutzer-Datenbusse auf von den Steuereinrichtungen erzeugte Interface-Zustandsdaten steuern, wobei die erzeugten Interface-Zustandsdaten unter den Steuereinrichtungen durch den Speicher über den Interface-Zustandsdaten-Bus übertragen werden.
DE69919137T 1998-12-30 1999-12-29 Datenspeichersystem Expired - Lifetime DE69919137T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US223519 1994-04-05
US09/223,519 US6389494B1 (en) 1998-12-30 1998-12-30 System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data
PCT/US1999/031213 WO2000039691A1 (en) 1998-12-30 1999-12-29 Data storage system

Publications (2)

Publication Number Publication Date
DE69919137D1 DE69919137D1 (de) 2004-09-09
DE69919137T2 true DE69919137T2 (de) 2005-09-01

Family

ID=22836859

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69919137T Expired - Lifetime DE69919137T2 (de) 1998-12-30 1999-12-29 Datenspeichersystem

Country Status (6)

Country Link
US (3) US6389494B1 (de)
EP (1) EP1058889B1 (de)
JP (2) JP4315600B2 (de)
KR (1) KR100585414B1 (de)
DE (1) DE69919137T2 (de)
WO (1) WO2000039691A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10048402B4 (de) * 1999-09-29 2012-03-29 Emc Corporation Datenspeichersystem

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3657428B2 (ja) * 1998-04-27 2005-06-08 株式会社日立製作所 記憶制御装置
US6389494B1 (en) * 1998-12-30 2002-05-14 Emc Corporation System for interfacing a data storage system to a host utilizing a plurality of busses for carrying end-user data and a separate bus for carrying interface state data
US7117275B1 (en) 1999-01-04 2006-10-03 Emc Corporation Data storage system having separate data transfer section and message network
US7073020B1 (en) * 1999-01-04 2006-07-04 Emc Corporation Method for message transfer in computer storage system
JP3419334B2 (ja) * 1999-01-14 2003-06-23 日本電気株式会社 データ処理装置および方法
US6629216B1 (en) 1999-06-30 2003-09-30 Emc Corporation Fibre channel by-pass
US6567890B1 (en) 1999-06-30 2003-05-20 Emc Corporation Fibre channel port by-pass selector section for dual ported disk drives
US6581136B1 (en) 1999-06-30 2003-06-17 Emc Corporation Fibre channel data storage system having expansion/contraction
US6636934B1 (en) 1999-06-30 2003-10-21 Emc Corporation Fiber channel port by-pass selector section for dual ported disk drives
US6836818B1 (en) * 1999-09-29 2004-12-28 Emc Corporation Central processing unit
US6915394B1 (en) 1999-09-29 2005-07-05 Emc Corporation Microprocessor interface
US6543029B1 (en) 1999-09-29 2003-04-01 Emc Corporation Error corrector
US6519739B1 (en) 1999-09-29 2003-02-11 Emc Corporation Fault detector
US6735655B1 (en) 1999-09-29 2004-05-11 Emc Corporation Interrupt request controller
US6604155B1 (en) * 1999-11-09 2003-08-05 Sun Microsystems, Inc. Storage architecture employing a transfer node to achieve scalable performance
US6516370B1 (en) * 1999-12-29 2003-02-04 Emc Corporation Data storage system
US6615315B1 (en) 1999-12-29 2003-09-02 Emc Corporation Fibre channel data storage system having improved fro-end I/O adapted hub
US6560683B1 (en) 1999-12-29 2003-05-06 Emc Corporation Fibre channel data storage system having improved rear-end I/O adapted hub
US6574687B1 (en) * 1999-12-29 2003-06-03 Emc Corporation Fibre channel data storage system
US6571355B1 (en) 1999-12-29 2003-05-27 Emc Corporation Fibre channel data storage system fail-over mechanism
US6993621B1 (en) * 2000-03-31 2006-01-31 Emc Corporation Data storage system having separate data transfer section and message network with plural directors on a common printed circuit board and redundant switching networks
US7010575B1 (en) 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US7007194B1 (en) 2000-06-29 2006-02-28 Emc Corporation Data storage system having point-to-point configuration
US6584513B1 (en) 2000-03-31 2003-06-24 Emc Corporation Direct memory access (DMA) transmitter
US7003601B1 (en) 2000-03-31 2006-02-21 Emc Corporation Data storage system having separate data transfer section and message network with plural directions on a common printed circuit board
US6651130B1 (en) * 2000-04-28 2003-11-18 Emc Corporation Data storage system having separate data transfer section and message network with bus arbitration
US6779071B1 (en) 2000-04-28 2004-08-17 Emc Corporation Data storage system having separate data transfer section and message network with status register
US6611879B1 (en) * 2000-04-28 2003-08-26 Emc Corporation Data storage system having separate data transfer section and message network with trace buffer
US6820171B1 (en) * 2000-06-30 2004-11-16 Lsi Logic Corporation Methods and structures for an extensible RAID storage architecture
JP3578075B2 (ja) 2000-10-13 2004-10-20 日本電気株式会社 ディスクアレイ制御装置及びディスクアレイ制御方法
US6948031B2 (en) * 2000-12-19 2005-09-20 Emc Corporation Methods and apparatus for transferring a data element within a data storage system
US6636933B1 (en) * 2000-12-21 2003-10-21 Emc Corporation Data storage system having crossbar switch with multi-staged routing
US6757753B1 (en) 2001-06-06 2004-06-29 Lsi Logic Corporation Uniform routing of storage access requests through redundant array controllers
US6918001B2 (en) * 2002-01-02 2005-07-12 Intel Corporation Point-to-point busing and arrangement
US6959310B2 (en) * 2002-02-15 2005-10-25 International Business Machines Corporation Generating data set of the first file system by determining a set of changes between data stored in first snapshot of the first file system, and data stored in second snapshot of the first file system
JP4220724B2 (ja) * 2002-05-21 2009-02-04 株式会社日立製作所 ストレージ装置
JP4189171B2 (ja) * 2002-05-24 2008-12-03 株式会社日立製作所 ディスク制御装置
US6944702B1 (en) * 2002-06-26 2005-09-13 Emc Corporation Data storage system
US6914784B1 (en) 2002-06-26 2005-07-05 Emc Corporation Data storage system cabinet
US7689724B1 (en) 2002-08-16 2010-03-30 Cypress Semiconductor Corporation Apparatus, system and method for sharing data from a device between multiple computers
US7395366B1 (en) 2002-09-27 2008-07-01 Cypress Semiconductor Corp. System, method, and apparatus for connecting USB peripherals at extended distances from a host computer
US7293118B1 (en) 2002-09-27 2007-11-06 Cypress Semiconductor Corporation Apparatus and method for dynamically providing hub or host operations
US7072989B1 (en) 2002-09-27 2006-07-04 Cypress Semiconductor, Inc. USB peripheral device storing an indication of an operating power mode when a host went into hibernate and restarting at the power mode accordingly
US7194638B1 (en) 2002-09-27 2007-03-20 Cypress Semiconductor Corporation Device and method for managing power consumed by a USB device
US7362697B2 (en) * 2003-01-09 2008-04-22 International Business Machines Corporation Self-healing chip-to-chip interface
US7143306B2 (en) * 2003-03-31 2006-11-28 Emc Corporation Data storage system
US7386768B2 (en) * 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
US7712004B1 (en) 2003-09-30 2010-05-04 Emc Corporation Method of and system for error checking in a data storage system
US7437425B2 (en) * 2003-09-30 2008-10-14 Emc Corporation Data storage system having shared resource
US7529291B2 (en) * 2004-04-13 2009-05-05 Raytheon Company Methods and structures for rapid code acquisition in spread spectrum communications
US7447922B1 (en) 2004-06-23 2008-11-04 Cypress Semiconductor Corp. Supplying power from peripheral to host via USB
US7432749B1 (en) 2004-06-23 2008-10-07 Cypress Semiconductor Corp. Circuit and method for improving frequency range in a phase locked loop
US7653123B1 (en) 2004-09-24 2010-01-26 Cypress Semiconductor Corporation Dynamic data rate using multiplicative PN-codes
US7238030B2 (en) * 2004-12-20 2007-07-03 Emc Corporation Multi-function expansion slots for a storage system
US8135880B2 (en) 2006-03-31 2012-03-13 Cypress Semiconductor Corporation USB mass storage locking
US9361973B2 (en) * 2013-10-28 2016-06-07 Cypress Semiconductor Corporation Multi-channel, multi-bank memory with wide data input/output

Family Cites Families (85)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10048402B4 (de) * 1999-09-29 2012-03-29 Emc Corporation Datenspeichersystem

Also Published As

Publication number Publication date
WO2000039691A1 (en) 2000-07-06
JP2006190338A (ja) 2006-07-20
US6988152B2 (en) 2006-01-17
US6957285B2 (en) 2005-10-18
DE69919137D1 (de) 2004-09-09
US6389494B1 (en) 2002-05-14
US20020087789A1 (en) 2002-07-04
JP2002533835A (ja) 2002-10-08
EP1058889B1 (de) 2004-08-04
KR20010041453A (ko) 2001-05-25
US20020156976A1 (en) 2002-10-24
EP1058889A1 (de) 2000-12-13
KR100585414B1 (ko) 2006-06-02
JP4315600B2 (ja) 2009-08-19

Similar Documents

Publication Publication Date Title
DE69919137T2 (de) Datenspeichersystem
DE69534758T2 (de) Verfahren und System für Mehrfachübertragung
DE69031967T2 (de) Informationsverarbeitungsanordnung
DE69132652T2 (de) Rechnerdatenleitweglenkungssystem
DE60203057T2 (de) Effizienter Optimierungsalgorithmus für Speichergebrauch in Netzwerkanwendungen
DE69323861T2 (de) Multiprozessorsystem mit gemeinsamem Speicher
DE3938018C2 (de)
DE69930307T2 (de) Datenspeichersystem
DE69218941T2 (de) Neuronale netzwerk architektur
DE3851554T2 (de) Steuerungsanordnung für gemeinschaftlichen Speicher.
WO1996033499A1 (de) Inhalts-adressierbarer speicher
DE69114961T2 (de) Vorrichtung für Zusammenschaltungskanäle.
DE3650249T2 (de) Hochkapazitätsspeicher für Multiprozessorsystem.
DE69102431T2 (de) Multiprozessor-system mit anteiliger nutzung eines speichers.
DE69123987T2 (de) Stossbetrieb für Mikroprozessor mit externem Systemspeicher
DE69122520T2 (de) Vielfachbus-Systemspeicherarchitektur
EP0882267B1 (de) Mehrprozessor-zentraleinheit
DE69029815T2 (de) Zentralisierte referenz- und änderungstabelle für eine virtuelle speicheranordnung
DE68927202T2 (de) Paralleler Prozessor
WO2000013185A2 (de) Speichersystem
DE69709226T2 (de) Einzelzyklus mehrfachzugreifbarer verschachtelter Cache-Speicher
DE112004000694T5 (de) Ein Verfahren und eine Vorrichtung zur Verbesserung der Multi-CPU-Systemleistung für Speicherzugriffe
DE69828890T2 (de) Konfigurierbare speichersteuerungsvorrichtung und verfahren hierfür
EP0477595A2 (de) Cachespeichereinrichtung mit m Busanschlüssen
EP0009625B1 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher

Legal Events

Date Code Title Description
8364 No opposition during term of opposition