-
Technischer Bereich
-
Die
Erfindung betrifft im Allgemeinen informationsverarbeitende Systeme
und insbesondere ein System zur SCSI- und SAS-Hardwarevalidierung.
-
Der Stand der Technik
-
In
dem Maße, wie der Wert und die Verwendung von Informationen
weiter zunimmt, suchen Einzelpersonen und Unternehmen nach zusätzlichen Wegen,
um Information zu verarbeiten und zu speichern. Eine zur Verfügung
stehende Option für Anwender sind informationsverarbeitende
Systeme. Ein informationsverarbeitendes System verarbeitet, kompiliert,
speichert und/oder kommuniziert im Allgemeinen Information oder
Daten für Unternehmenszwecke, persönliche Zwecke
oder andere Zwecke und ermöglicht damit Anwendern, aus
dem Wert der Information einen Vorteil zu ziehen. Da die Anforderungen
an die Technologie und die Informationsverarbeitung unter Anwendern
und Anwendungen variieren, können auch informationsverarbeitende
Systeme variieren im Hinblick darauf, welche Information verarbeitet
wird, wie die Information verarbeitet wird, wie viel Information
verarbeitet, gespeichert oder kommuniziert wird und wie schnell
und effizient die Information verarbeitet, gespeichert oder kommuniziert werden
kann. Die Unterschiede in informationsverarbeitenden Systemen ermöglichen,
dass informationsverarbeitende Systeme allgemein konfiguriert sind
oder für einen speziellen Anwender oder eine spezielle
Anwendung konfiguriert werden, z. B. die Verarbeitung von Finanztransaktionen,
Reservierungen einer Fluggesellschaft, die Speicherung von Unternehmensdaten
oder globale Kommunikationen. Darüber hinaus können
informationsverarbeitende Systeme eine Vielzahl von Hardware- und
Softwarekomponenten aufweisen, die konfiguriert werden können,
um Information zu verarbeiten, zu speichern und zu kommunizieren
und sie können ein oder mehrere Computersysteme umfassen,
Datenspeichersysteme und Netzwerksysteme.
-
Ein
Beispiel für ein informationsverarbeitendes System ist
ein Speichersystem, wie z. B. ein Speichersystem mit einer kleinen
Computersystem-Schnittstelle (small computer system interface, SCSI)
oder ein Speichersystem mit einem seriell angeschlossenen SCSI (serial
attached SCSI, SAS). Im Allgemeinen umfasst ein SCSI-Speichersystem
einen Controller, Festplattenlaufwerke und eine SCSI-zugängliche
fehlertolerante Umgebung (SAF-TE). Im Gegensatz dazu kann ein SAS-Speichersystem einen
Controller, Festplattenlaufwerke und Expander umfassen, die SCSI-Signale
wiederholen oder erneut erzeugen und kann eine elektrische Isolierung
bereitstellen.
-
Das
SAS-System verwendet typischerweise eine Punkt-zu-Punkt-Verbindung
anstelle eines Busses für den SCSI-Verbinder. Die SCSI-Verbindungen arbeiten
im Allgemeinen zusammen unter Verwendung eines Expanderchips, der
für die Software transparent sein kann, aber der für
die Hardware nicht notwendigerweise transparent ist. Die SCSI- und
SAS-Speichersysteme folgen typischerweise einem Standardprotokoll
zur Bildung von elektronischen Schnittstellen. Das Protokoll ermöglicht
dem Speichersystem mit peripheren Hardwaregeräten zu kommunizieren,
wie z. B. Festplattenlaufwerken, Bandlaufwerken, CD-ROM-Laufwerken,
die mit dem System verbunden sind.
-
Obwohl
einer Spezifizierung gefolgt wird, kann jedoch die verbundene Hardware
trotzdem Kompatibiltätsprobleme mit dem System entwickeln basierend
auf der physikalischen Konfiguration des Systems. Beispielsweise
kann ein Kompatibilitätsproblem auftreten, wenn ein Festplattenlaufwerk
von seiner Verbindung zu einer internen Backplane eines SCSI-Servers
verschoben wird zu einer angeschlossenen Umgebung.
-
Da
die interne Backplane und die Umgebung denselben Laufwerksträger
(drive carrier) verwenden, wird das Festplattenlaufwerk leicht zwischen den
unterschiedlichen Orten versetzt. Indem jedoch das Festplattenlaufwerk
zwischen den Orten verschoben wird, wird die physikalische Konfiguration des
Laufwerks geändert. Aufgrund der neuen Konfiguration könnte
es sein, dass das Festplattenlaufwerk nicht richtig funktioniert,
indem es beispielsweise Daten verliert, wodurch der Kunde unzufrieden wird.
-
Zusammenfassung
-
Es
ist daher eine Notwendigkeit entstanden für ein System
zur SCSI-Bus-Hardwarevalidierung. Gemäß den Lehren
der vorliegenden Offenbarung lehrt die vorliegende Offenbarung in
einigen Ausführungsbeispielen ein System zur Hardwarevalidierung in
einem informationsverarbeitenden System, einschließlich
des Scannens einer Verbindung für Hardwaregeräte,
die an der Verbindung angeschlossen sind, in einem informationsverarbeitenden
System. Das System umfasst ferner das Feststellen der Verbindungskompatibilität
von jedem Hardwaregerät, das auf der Verbindung angeordnet
ist, basierend auf einer Informationsmatrix über unterstützte
Geräte und einem Ort des Hardwaregeräts in dem
informationsverarbeitenden Gerät. Das System umfasst ferner
das Anzeigen einer Validierungsbenachrichtigung an einen Anwender über
mögliche Kompatibilitätsprobleme basierend auf
dem Feststellen.
-
In
anderen Ausführungsbeispielen umfasst ein informationsverarbeitendes
System ein System für die Hardwarevalidierung einer Kleincomputersystemschnittstelle
(SCSI) und einer SAS in einem informationsverarbeitenden System
enthaltend einen Eingabe/Ausgabe-(I/O)-Expander, der in der Lage
ist, eines oder mehrere Hardwaregeräte aufzunehmen, so dass
das eine oder die mehreren Hardwaregeräte kommunikativ
mit einer SCSI-Verbindung in dem informationsverarbeitenden System
verbunden werden. Das System umfasst ferner eine Informationsmatrix
für unterstützte Geräte, die in jedem
des einen oder der mehreren Hardwaregeräte gespeichert
wird. Die Informationsmatrix über unterstützte
Geräte ist in der Lage, die Kompatibilität des
entsprechenden Hardwaregerätes, das innerhalb des informationsverarbeitenden
Systems angeordnet ist, anzuzeigen. Das System umfasst ferner einen
Controller, der kommunikativ mit der SCSI-Verbindung verbunden ist.
Der Controller ist in der Lage, die SCSI-Verbindung für
eines oder mehrere Hardwaregeräte zu scannen und die Kompatibilität
des einen oder der mehreren Hardwaregeräte zu bestimmen,
so wie sie in dem informationsverarbeitenden System konfiguriert
sind, basierend auf der Informationsmatrix über unterstützte
Geräte.
-
In
weiteren Ausführungsbeispielen umfasst das informationsverarbeitende
System einen Prozessor und einen Speicher, der kommunikativ mit
dem Prozessor verbunden sind. Der Speicher und der Prozessor sind
operativ mit einem Bus verbunden. Das informationsverarbeitende
System umfasst ferner einen Eingabe/Ausgabe-(I/O)-Expander, der
eines oder mehrere Hardwaregeräte aufnimmt, so dass das
eine oder die mehreren Hardwaregeräte kommunikativ mit
dem Bus über den I/O-Expander verbunden sind. Das informationsverarbeitende
System umfasst ferner eine Informationsmatrix über unterstützte
Geräte, die in jedem des einen oder der mehreren Hardwaregeräte
gespeichert sind. Die Informationsmatrix über unterstützte
Geräte zeigt die Kompatibilität zwischen einem
Ort des entsprechenden Hardwaregeräts und einer Konfiguration
des informationsverarbeitenden Systems an. Das informationsverarbeitende
System umfasst ferner einen Controller, der kommunikativ mit dem
Bus verbunden ist. Der Controller ist in der Lage, den Bus zu scannen
auf der Suche nach einem oder mehreren Hardwaregeräten
und die Kompatibilität des einen oder der mehreren Hardwaregeräte,
so wie sie in dem informationsverarbeitenden System konfiguriert
sind, festzustellen, basierend auf der Informationsmatrix über
unterstützte Geräte.
-
Wichtige
technische Vorteile von bestimmten Ausführungsbeispielen
der vorliegenden Erfindung umfassen eine Benachrichtigung von möglichen Kompatibilitätsproblemen
für SCSI- und Nicht-SCSI-Komponenten, die dem informationsverarbeitenden
System zugeordnet sind. Da Hardwaregeräte austauschbar
in unterschiedliche Konfigurationen verschoben werden können,
wird angenommen, dass das Gerät in jeder Konfiguration
ohne Kompatibilitätsproblem funktionieren wird. Indem eine
Kompatibilitätsdatenbank in jedes Hardwaregerät
aufgenommen wird, kann ein Controller in dem informationsverarbeitenden
System feststellen, ob jedes Hardwaregerät in einer kompatiblen
Konfiguration angeordnet ist. Basierend auf dieser Feststellung kann
ein Anwender über mögliche Kompatibilitätsprobleme
benachrichtigt werden, wie z. B. Konfigurationsprobleme, die zu
einem Verlust an Information führen.
-
Alle,
einige oder keine dieser technischen Vorteile können in
verschiedenen Ausführungsbeispielen der vorliegenden Erfindung
verwirklicht werden. Andere technische Vorteile erkennt der Fachmann
aus den folgenden Figuren, Beschreibungen und Ansprüchen.
-
Kurze Beschreibung der Zeichnungen
-
Ein
genaueres Verständnis der vorliegenden Ausführungsbeispiele
und ihrer Vorteile erhält man durch Bezugnahme auf die
vorliegende Beschreibug in Verbindung mit den begleitenden Zeichnungen,
in denen gleiche Bezugszeichen gleiche Merkmale bezeichnen und wobei:
-
1 ist
ein Blockdiagramm, das ein informationsverarbeitendes System gemäß der
Lehren der vorliegenden Offenbarung zeigt;
-
2a ist
ein Blockdiagramm, das ein beispielhaftes Ausführungsbeispiel
eines Speichersystems zeigt, umfassend einen Controller auf einer
internen Backplane mit Festplattenlaufwerken (HDD) und eine Stand-Alone-Umgebung,
die mit dem Controller verbunden ist und das zusätzliche
Festplattenlaufwerke aufweist, das über einen SCSI-Bus
verbunden ist, gemäß den Lehren der vorliegenden
Offenbarung;
-
2b ist
ein Blockdiagramm, das ein beispielhaftes Ausführungsbeispiel
eines Speichersystems zeigt, einschließlich eines Controllers,
der auf einer internen Backplane befestigt ist, mit Hardwaregeräten,
wie z. B. einer Festplatte, die über eine Punkt-zu-Punkt-Verbindung
verbunden ist gemäß den Lehren der vorliegenden
Offenbarung;
-
3 ist
ein Flussdiagramm zum Bestimmen der Kompatibilität von
unterstützen Geräten auf dem SCSI-Bus gemäß der
Lehren der vorliegenden Erfindung; und
-
4 erläutert
ein beispielhaftes Ausführungsbeispiel einer Informationsmatrix über
unterstützte Geräte mit einem Datenfeld von Toggle-Bits (Wechselbits),
die eine Kompatibilität eines Festplattenlaufwerks mit
Umgebungen, Backplanes und Controllern gemäß den
Lehren der vorliegenden Offenbarung anzeigt.
-
Detaillierte Beschreibung
-
Bevorzugte
Ausführungsbeispiele und ihre Vorteile versteht man am
Besten mit Bezugnahme auf die 1 bis 4,
wobei gleiche Bezugszeichen verwendet werden, um gleiche und entsprechende
Teile zu bezeichnen.
-
Für
die Zwecke dieser Offenbarung kann ein informationsverarbeitendes
System jedes Instrument oder jede Ansammlung von Instrumenten umfassen, die
in der Lage sind, zu berechnen, zu klassifizieren, zu verarbeiten,
zu übertragen, zu empfangen, abzurufen, zu erzeugen, zu
schalten, zu speichern, anzuzeigen, darzustellen, zu detektieren,
aufzunehmen, zu reproduzieren, zu bearbeiten oder jegliche Form von
Intelligenz oder Daten für Unternehmenszwecke, wissenschaftliche
Zwecke, Steuerzwecke oder andere Zwecke zu verwenden. Ein informationsverarbeitendes
System kann beispielsweise ein Personalcomputer sein, ein Netzwerkspeichergerät
oder jedes andere geeignete Gerät und kann in Größe, Form,
Leistungsfähigkeit, Funktionalität und Preis variieren.
Das informationsverarbeitende System kann ferner Direktzugriffsspeicher
umfassen (RAM), eine oder mehrere Verarbeitungsressourcen wie z.
B. eine Zentralverarbeitungseinheit (CPU) oder Hardware- oder Softwaresteuerlogik
(ROM) und/oder andere Arten von nichtflüchtigem Speicher.
Zusätzliche Komponenten des informationsverarbeitenden
Systems können ein oder mehrere Festplattenlaufwerke umfassen,
einen oder mehrere Netzwerkports zur Kommunikation mit externen
Geräten sowie zahlreiche Eingabe- und Ausgabe-(I/O)-Geräte,
wie z. B. eine Tastatur, eine Maus und eine Graphikanzeige. Das informationsverarbeitende
System kann ferner einen oder mehrere Busse umfassen, die in der
Lage sind, Kommunikation zwischen den verschiedenen Hardwarekomponenten
zu übertragen.
-
Unter
Bezugnahme auf 1 wird zunächst ein
Blockdiagramm eines informationsverarbeitenden Systems 10 gemäß den
Lehren der vorliegenden Offenbarung gezeigt. Das informationsverarbeitende System 10 oder
das Computersystem umfasst vorzugsweise mindestens einen Mikroprozessor
oder eine zentrale Verarbeitungseinheit (CPU) 12. Die CPU 12 kann
einen Prozessor 14 zum Verarbeiten von Integer-Operationen
umfassen und einen Koprozessor 16 zum Bearbeiten von Fließkommaoperationen.
-
Die
CPU 12 ist vorzugsweise mit einem Cache 18 und
einem Speichercontroller 20 über einen CPU-Bus 22 verbunden.
Die Systemcontroller-I/O-Falle (bzw. Trap) 24 verbindet
vorzugsweise den CPU-Bus 22 mit einem lokalen Bus 26 und
kann im Allgemeinen als ein Teil eines Systemcontrollers bezeichnet
werden.
-
Der
Hauptspeicher 28 aus Modulen von Direktzugriffsspeicher
(Direct Random Access Memory, DRAM) ist vorzugsweise mit dem CPU-Bus 22 über einen
Speichercontroller 20 verbunden. Der Hauptspeicher 28 kann
in einen oder mehrere Bereiche aufgeteilt werden, wie z. B. einen
Speicherbereich für einen Systemverwaltungsmode (SMM) (nicht
explizit dargestellt).
-
Ein
Speicher 30 für ein grundlegendes Eingabe/Ausgabe-(Basic-I/O)-System
(BIOS) 30 ist ferner vorzugsweise mit einem lokalen Bus 26 verbunden.
Flash-Memory oder anderer nichtflüchtiger Speicher kann
als ein BIOS-Speicher 30 verwendet werden. Ein BIOS-Programm
(nicht explizit dargestellt) wird typischerweise im BIOS-Speicher 30 gespeichert.
Das BIOS-Programm umfasst vorzugsweise Software, die die Zusammenarbeit
mit und unter den Geräten des informationsverarbeitenden
Systems 10 erleichtert, wie z. B. eine Tastatur (nicht
explizit dargestellt), einer Maus (nicht explizit dargestellt),
einem oder mehreren Eingabe/Ausgabe-(I/O)-Geräten. Der
BIOS-Speicher 30 kann ferner Systemcode speichern (nicht
explizit dargestellt), der in der Lage ist, eine Mehrzahl von grundlegenden Operationen
des informationsverarbeitenden Systems 10 zu steuern.
-
Der
Graphikcontroller 32 ist vorzugsweise mit dem lokalen Bus 26 verbunden
und mit einem Videospeicher 34. Der Videospeicher 34 ist
vorzugsweise in der Lage, Information zu speichern, die auf einem
oder mehreren Anzeigepanels 36 dargestellt werden soll.
Das Anzeigepanel 36 kann eine Flüssigkristallanzeige
(LCD) mit einer aktiven Matrix oder einer passiven Matrix sein,
eine Kathodenstrahlröhre (Cathode Ray Tube, CRT) oder eine
andere Anzeigetechnologie. In ausgewählten Anwendungen
kann der Graphikcontroller 32 auch mit einer integrierten Anzeige
verbunden sein, beispielsweise in einer Implementierung in einem
tragbaren informationsverarbeitenden System.
-
Ein
Bus-Interface-Controller oder ein Expansionsbuscontroller 38 verbindet
vorzugsweise den lokalen Bus 26 mit einem Expansionsbus 40.
In einem Ausführungsbeispiel kann der Expansionsbus 40 als ein
Bus gemäß einer Industriestandardarchitektur (Industry
Standard Architecture, ISA) konfiguriert sein. Andere Busse,
beispielsweise ein Peripheral Component Interconnect (PCI)-Bus kann
ebenfalls verwendet werden. In bestimmten Ausführungsbeispielen
des informationsverarbeitenden Systems kann ferner ein Expansion-Card-Controller 42 vorhanden
sein, der vorzugsweise mit dem Expansionsbus 40 in der
dargestellten Weise verbunden ist. Der Expansionscardcontroller 42 ist
vorzugsweise mit einer Mehrzahl von Expansionsslots (bzw. Erweiterungsslots) 44 des informationsverarbeitenden
Systems verbunden. Die Expansionsslots 44 können konfiguriert
werden, um eine oder mehrere Computerkomponenten aufzunehmen (nicht
explizit dargestellt), wie z. B. eine Erweiterungskarte (beispielsweise
Modemkarten, Faxkarten, Kommunikationskarten und andere Eingabe/Ausgabe-(I/O)-Geräte).
-
Ferner
ist vorzugsweise ein Interrupt-Anfragegenerator 46 mit
dem Expansionsbus 40 verbunden. Der Interrupt-Anfragegenerator 46 ist
vorzugsweise in der Lage, eine Interrupt-Dienstanfrage (bzw. Interrupt
Service Request) über eine vorbestimmte Interrupt-Anfrageleitung
in Antwort auf den Empfang einer Anfrage zur Ausgabe einer Interrupt-Anweisung
von der CPU 12 auszugeben.
-
Der
I/O-Controller 48, auf den häufig auch als Super-I/O-Controller
Bezug genommen wird, ist ebenfalls vorzugsweise mit dem Expansionsbus 40 verbunden.
Der I/O-Controller 48 weist vorzugsweise eine Schnittstelle
mit einer Integrated-Drive-Electronics (IDE)-Festplatte (HDD) 50 auf,
einem CD-ROM (Compact-Disk-Read-Only-Memory)-Laufwerk 52 und/oder
einem Diskettenlaufwerk (FDD) 54. Andere Laufwerksgeräte
(nicht explizit dargstellt), die eine Schnittstelle zu dem I/O-Controller
aufweisen können, umfassen eine entfernbare Festplatte,
ein Zip-Laufwerk, ein CD-RW-Laufwerk (Compact-Disk-Read/Write) und
ein CD-DVD-Laufwerk (Compact-Disk-Digital-Versatile-Disk).
-
Der
Kommunikationscontroller 56 wird vorzugsweise bereitgestellt
und ermöglicht, dass das informationsverarbeitende System 10 mit
einem Kommunikationsnetzwerk 58 kommuniziert, beispielsweise
einem Ethernet-Netzwerk. Das Kommunikationsnetzwerk 58 kann
ein lokales Netzwerk (LAN) umfassen, ein Netzwerk über
einen großen Bereich (WAN) das Internet, ein Internet,
ein drahtloses Breitbandnetz o. ä. Der Kommunikationscontroller 56 kann
verwendet werden, um eine Netzwerkschnittstelle zur Kommunikation
mit anderen informationsverarbeitenden Systemen zu bilden (nicht
explizit dargestellt), die mit dem Kommunikationsnetzwerk 58 verbunden sind.
-
Wie
erläutert umfasst das informationsverarbeitende System
vorzugsweise eine Stromversorgung 60, die den Strom für
die zahlreichen Komponenten und/oder Geräte bereitstellt,
die das informationsverarbeitende System 10 bilden. Die
Stromversorgung 6o kann eine aufladbare Batterie sein,
wie z. B. eine Nickel-Metall-Hydridbatterie („NiMH”)
oder eine Lithiumionenbatterie, wenn das informationsverarbeitende
System 10 als ein tragbarer Computer oder ein Notebookcomputer
ausgebildet ist oder eine AC-Wechselstromquelle, eine ununterbrechbare Stromversorgung
(UPS) oder eine andere Stromquelle.
-
Die
Stromquelle 60 ist vorzugsweise mit einem Mikrocontroller 62 zur
Leistungsverwaltung verbunden. Der Mikrocontroller 62 zur
Leistungsverwaltung steuert vorzugsweise die Verteilung von Strom von
der Stromversorgung 60. Genauer ausgedrückt umfasst
der Mikrocontroller 62 für die Stromversorgung
vorzugsweise einen Stromausgang 64, der mit der Hauptstromebene 66 verbunden
ist, die Strom zur CPU 12 liefern kann, sowie weitere Komponenten des
informationsverarbeitenden Systems. Der Mikrocontroller 62 für
die Leistungsverwaltung kann ferner mit einer Stromebene verbunden
sein (nicht explizit dargestellt), die in der Lage ist, Strom an
eine integrierte Panel-Anzeige zu liefern (nicht explizit dargestellt),
sowie mit zusätzlichen Ebenen zur Stromversorgung, die
vorzugsweise in dem informationsverarbeitenden System 10 vorhanden
sind.
-
Der
Mikrocontroller 62 zur Leistungsverwaltung überwacht
vorzugsweise einen Ladezustand einer angeschlossenen Batterie oder
eines UPS, um festzustellen, wenn die Batterie oder das UPS geladen
werden soll. Der Mikrocontroller 62 für die Leistungsverwaltung
ist vorzugsweise ferner mit einem Hauptstromschalter 68 verbunden,
den der Anwender betätigen kann, um das informationsverarbeitende
System 10 an- oder auszuschalten. Während der Mikrocontroller 62 für
die Leistungsverwaltung einen oder mehrere Bereiche oder Komponenten
des informationsverarbeitenden Systems 10 herunterfährt, beispielsweise
die CPU 12, die Anzeige 36 oder die Festplatte 50 etc.,
wenn sie nicht verwendet werden, um Strom zu sparen, ist der Mikrocontroller 62 zur Leistungsverwaltung
selbst vorzugsweise immer mit einer Stromquelle, vorzugsweise der
Stromversorgung 60 verbunden.
-
Ein
Computersystem, eine Art von informationsverarbeitenden System 10,
kann ferner einen Chipsatz 72 zur Stromverwaltung umfassen.
Der Chipsatz 72 zur Stromverwaltung ist vorzugsweise mit
der CPU 12 über den lokalen Bus 26 verbunden, so
dass der Chipsatz 72 zur Stromverwaltung Befehle zur Stromverwaltung
und zur Steuerung von der CPU 12 empfangen kann. Der Chipsatz 72 zur Stromverwaltung
ist vorzugsweise mit einer Mehrzahl von individuellen Stromebenen
verbunden, die in der Lage sind, Strom an geeignete Komponenten des
informationsverarbeitenden Systems 10 zu liefern, beispielsweise
an die Festplatte 50, das Diskettenlaufwerk 54 etc.
Auf diese Weise handelt der Chipsatz 72 zur Stromverwaltung
vorzugsweise unter der Steuerung der CPU 12, um den Strom
zu steuern, der an die verschiedenen Stromebenen und Komponenten
des Systems geliefert wird.
-
Die
Realzeituhr (Real-Time-Clock, RTC) 74
kann ebenfalls mit
dem I/O-Controller 48 verbunden sein und mit dem Chipsatz 72 zur
Leistungsverwaltung. Die Aufnahme der RTC 74 ermöglicht,
dass zeitlich festgelegte Ereignisse oder Alarme an den Chipsatz 72 für
die Leistungsverwaltung übertragen werden. Die Realzeituhr 74 kann
programmiert werden, um zu einer vorbestimmten Zeit ein Alarmsignal zu
erzeugen, sowie um andere Vorgänge durchzuführen.
-
Das
informationsverarbeitende System 10 ist typischerweise
einem Gehäuse 70 zugeordnet. Im Allgemeinen wird
auf das Gehäuse 70 als Computergehäuse
Bezug genommen oder als ein Gehäuse, das einige der Komponenten
innerhalb des informationsverarbeitenden Systems 10 aufnimmt.
Andere Komponenten, wie z. B. das CD-ROM-Laufwerk 52, das
Diskettenlaufwerk 54 und die Festplatte 50 können
innerhalb des Gehäuses 70 und/oder separat von
Gehäuse 70 in einem eigenen Gehäuse angeordnet
sein (das unten im Detail gezeigt wird) oder in einer Reihe angeschlossen
sein.
-
Die
Computerkomponenten können kommunikativ mit dem informationsverarbeitenden
System 10 über einen Bus 104 verbunden
sein, so wie er unten im Detail gezeigt wird, oder über
eine Punkt-zu-Punkt-Verbindung. In einigen Ausführungsbeispielen
kann das informationsverarbeitende System 10 ein Speichersystem
umfassen (das weiter unten im Detail beschrieben wird), das einen
SCSI, einen Fiberchannel oder einen anderen Standard zur Kommunikation
zwischen Komponenten oder Geräten und dem System verwendet.
Ein Beispiel einer Punkt-zu-Punkt-Verbindung in einem SAS-Speichersubsystem
kann eine Gruppe von Verbindungen umfassen, die auch als „Gerüst” bzw. „Fabric” bekannt sind,
das den Fiberchannel-Standard zum Bilden von Schnittstellen zwischen
den Controllern und den Laufwerken verwendet.
-
Die 2a und 2b sind
Blockdiagramme, die beispielhafte Ausführungsformen des
Speichersystems 100 einschließlich des entsprechenden SCSI-Speichersubsystems 111 und
des SAS-Speichersubsystems 116 zeigen. Jedes Speichersubsystem 100 umfasst
einen Controller 102, der auf einer internen Backplane 101 befestigt
ist, mit Festplattenlaufwerken (HDD) 106. Das SCSI-Speichersubsystem 111 umfasst
ferner ein eigenständiges Gehäuse 112,
welches typischerweise I/O-Expander umfasst, die mit dem Controller 120 verbunden
sind, und das zusätzliche SCSI-Geräte aufweist,
wie z. B. die Festplatte 110, die über einen SCSI-Bus 104 verbunden ist.
Das SAS-Speichersystem 116 umfasst ferner zusätzliche
SCSI-Geräte, wie z. B. eine Festplatte 110, die über
eine Punkt-zu-Punkt-Verbindung 114 verbunden ist. In einigen
Ausführungsbeispielen kann das SAS-Speichersubsystem 116 ferner
Expander 115 umfassen, die in der Lage sind, ein SCSI-Signal zu
regenerieren, umzuformen und erneut an weitere SCSI-Geräte
zu übertragen, wie z. B. die Festplatte 110, die über
eine Punkt-zu-Punkt-Verbindung 114 angeschlossen ist.
-
Ein
typisches SCSI-SAS-Speichersystem, wie z. B. das Speichersystem 100,
kann eine Mehrzahl von Hardware- oder SCSI-Geräten umfassen, wie
z. B. interne Festplatten 106 und externe Festplatten 110,
die über I/O-Expander verbunden sind. Andere Beispiele
von SCSI-Geräten umfassen Bandlaufwerke (nicht explizit
dargestellt) und CD-Laufwerke (nicht explizit dargestellt).
-
Im
Allgemeinen ermöglichen I/O-Expander SCSI-Geräten
eine Verbindung zu einem Speichersystem 100. I/O-Expander
können SCSI-Expander 115 umfassen, einschließlich
Expander-Chips (nicht explizit dargestellt), eine interne Backplane 11 und ein
Gehäuse 112, die Verbindungen aufweisen, damit
die SCSI-Geräte mit dem Speichersystem 100 über
einen SCSI-Bus kommunizieren, wie z. B. den internen Bus 105 und
den externen Bus 104. Beispiele von Gehäusen 112 umfassen
ein Power-Vault-System 220 und ein PowerVault-System 210,
sowie es von Dell, Inc. hergestellt wird. Da sich die SCSI-Geräte
an unterschiedlichen Orten oder Konfigurationen innerhalb des Speichersystems 100 befinden
können, kann der Controller 102 zur direkten Kommunikation
mit Adressen, die jedem SCSI-Gerät zugeordnet sind, verwendet
werden.
-
Das
SAS-Speichersubsystem 116 kann ferner einen oder mehrere
SCSI-Expander 115 umfassen, die verwendet werden, um eine
Verbindung mit einem oder mehreren Hardwaregeräten, wie
z. B. der Festplatte 110 herzustellen. Es gibt jedoch nicht
notwendigerweise einen SCSI-Expander pro Hardwaregerät,
wie z. B. die Festplatte 110.
-
Jede
Hardware oder jedes SCSI-Gerät innerhalb des Speichersystems 100 kann
als ein SCSI-Ziel dargestellt werden. Jedes SCSI-Gerät
kann eine Adresse für Kommunikationen zwischen einem Prozessor
und einem Speicher (nicht explizit dargestellt) im Speichersystem 100 umfassen, über
eine I/O-Controller, wie z. B. den Controller 102, der
auf der internen Backplane 101 dargestellt ist. Der Controller 102 kann
Information zwischen den SCSI-Geräten über den
internen Bus 105 oder den externen Bus 105 übertragen.
-
Im
Allgemeinen sind die Verbindungen auf SCSI-Geräten austauschbar,
so dass ein internes SCSI-Gerät, wie z. B. eine interne
Festplatte 106 in dem Gehäuse 112 angeordnet
werden kann, das einen I/O-Expander aufweist. In ähnlicher
Weise kann die externe Festplatte 110 mit der internen
Backplane 101 anstelle der internen Festplatte 106 verbunden werden.
-
Obwohl
die SCSI-Geräte physikalisch an verschiedenen Orten verbunden
werden können, können Kompatibilitätsprobleme
auftreten, wenn z. B. das Gerät nicht unterstützt
wird. Der Controller 102 kann daher einen Scan nach Geräten
durchführen, die auf Verbindungen wie z. B. dem Bus 104 und
der Punkt-zu-Punkt-Verbindung 114 angeordnet sind, nach
Geräten, die dem Speichergerät 100 zugeordnet
sind, zur Identifizierung von möglichen Kompatibilitätsproblemen.
Beispielsweise kann ein Kompatibilitätsproblem zwischen
einer Kombination des SCSI-Controllers und einem SCSI-Hardwaregerät
auftreten, zwischen einem SCSI-Controller und einem angeschlossenen
Gehäuse, dem Gehäuse und einem SCSI-Gerät
und denn SCSI-Gerät und einem anderen SCSI-Gerät.
-
3 ist
ein Flussdiagramm zum Bestimmen der Kompatibilität von
unterstützten Geräten auf den SCSI-Bussen 104 und 105.
Obwohl im Folgenden nicht speziell erläutert, kann die Punkt-zu-Punkt-Verbindung 114 alternativ
anstelle des SCSI-Busses 104 verwendet werden. Im Block 120 scannt
der Controller 102 eine SCSI-Verbindung, wie z. B. den
SCSI-Bus 104 und 105, um zu bestimmen, wie viele
SCSI-Geräte an dem Speichersystem 100 angeschlossen
sind. Typischerweise wird der Scan beim Hochfahren gestartet, üblicherweise
während Selbsttest-Vorgangs beim Anschalten (Power-On-Self-Test,
POST) des Speichersystems 100.
-
Systemscans
können auch gestartet werden bei einer Veränderung
oder Abwandlung der Konfiguration des Speichersystems 100.
In ähnlicher Weise kann ein Scan auch gestartet werden,
wenn eines oder mehrere der SCSI-Hardwaregeräte innerhalb des
Systems an einem anderen Ort angeordnet wird. Beispielsweise kann
die interne Festplatte 106 ersetzt werden mit der externen
Festplatte 110. Bei solch einem Austausch detektiert das
Speichersystem 100 die Veränderung in der Konfiguration
und verursacht, dass der Scan gestartet wird.
-
Nach
dem Scan des Systems sendet der Controller 102 einen Untersuchungsbefehl
an jedes SCSI-Hardwaregerät in dem System, so wie im Block 122 gezeigt.
In anderen Ausführungsbeispielen wird Kompatibilitätsinformation über
einen Mode-Select-Befehl erhalten. Da die Bestimmung für
jedes Gerät auf dem System durchgeführt wird,
wiederholt das System typischerweise den Vorgang für jedes SCSI-Gerät.
In einigen Fällen kann der Untersuchungsbefehl jedoch gleichzeitig
bei allen Geräten stattfinden, die an der SCSI-Verbindung
angeordnet sind.
-
Basierend
auf dem Untersuchungsbefehl antwortet jedes SCSI-Gerät
typischerweise mit einer Informationsmatrix über unterstützte
Geräte (so wie sie im folgenden detaillierter gezeigt wird).
Die Informationsmatrix für unterstützte Geräte
umfasst im Allgemeinen eine Datenbank von kompatiblen Konfigurationen
für das Gerät. Im Block 124 hat der Controller 102 gegebenenfalls
die Informationsmatrix für unterstützte Geräte
empfangen oder auch nicht. Wenn das SCSI-Gerät mit einer
Informationsmatrix geantwortet hat, ist das SCSI-Gerät
typischerweise ein geprüftes Gerät. Wenn das Gerät
jedoch nicht mit einer Informationsmatrix über unterstützte
Geräte antwortet, schreitet das System fort, um im Block 132 eine Warnung über
eine mögliche Inkompatibilität auszugeben, wodurch
ein Anwender auf das Problem einer möglichen Inkompatibilität
hingewiesen werden kann. Im Allgemeinen werden die Geräte
auf die Kompatibilität hin validiert, basierend auf der
Zuordnung mit dem Controller 102, der Controller-Firmware
(nicht explizit gezeigt), einem Ziel, wie z. B. einem Hardwaregerät
einschließlich den Festplattenlaufwerken 110,
der Firmware eines Ziels (nicht explizit gezeigt) oder der Anordnung
des Ziels innerhalb des Speichersystems 110 wie z. B. denn
Gehäuse 112.
-
Basierend
auf der Antwort auf den SCSI-Busscan mit der Informationsmatrix über
unterstützte Geräte, wird das Gerät als
geprüft betrachtet, so dass der Controller 102 mit
der Kompatibilitätsbestimmung des SCSI-Geräts
basierend auf der Konfiguration fortfährt. Im Block 126 bestimmt
der Controller 102, ob das SCSI-Hardwaregerät
kompatibel ist oder mit dem Controller 102 oder irgendeinem
anderen Controller validiert worden ist, der innerhalb des Speichersystems 100 angeordnet
ist. Wenn ein Kompatibilitätsproblem auftritt, kann in ähnlicher
Weise angenommen werden, dass das SCSI-Gerät nicht valide
ist oder nicht unterstützt wird, so dass im Block 132 eine
Warnung für ein mögliches Kompatibilitätsproblem
ausgegeben wird.
-
Wenn
der Controller 102 für das SCSI-Gerät validiert
worden ist, wird das Gehäuse 112 oder andere I/O-Expander
gegen das SCSI-Gerät validiert. Wenn das SCSI-Gerät
nicht unterstützt oder validiert wird, wird in ähnlicher
Weise davon ausgegangen, dass das SCSI-Gerät nicht valide
ist oder nicht kompatibel ist, so dass im Block 132 eine
Warnung über ein mögliches Kompatibilitätsproblem
ausgegeben wird. Wenn das SCSI-Gerät geprüft worden
ist und für den Controller 102 und für
das Gehäuse 112 validiert worden ist, bestimmt
das System, dass das SCSI-Gerät mit der gegenwärtigen
Konfiguration des Speichersystems 100 kompatibel ist, so
wie im Block 130 gezeigt. Als nächstes prüft
das System im Block 134, ob dieses das letzte SCSI-Gerät
ist, das im Speichersystem 100 zu untersuchen ist. Wenn
es nicht das letzte SCSI-Gerät ist, wird das nächste
SCSI-Gerät in dem System ausgewählt, so wie im
Block 136 gezeigt, wobei „Device(N)” zum
nächsten Wert erhöht wird, so wie gezeigt durch „N
= N + 1”. Dadurch wird das System zur Überprüfung
der Kompatibilität fortgesetzt, bis alle SCSI-Geräte,
die an dem System angeschlossen sind, nach Kompatibilitätsproblemen
untersucht worden sind.
-
4 erläutert
eine beispielhaftes Ausführungsform einer Informationsmatrix über
unterstützte Geräte 150, mit einem Datenfeld
von Toggle-Bits, die die Kompatibilität einer Festplatte
mit Gehäuse, Backplanes und Controllern des Systems anzeigt. Die
Informationsmatrix 150 über unterstützte
Geräte kann eine Art von Informationsmatrix repräsentieren, die
innerhalb jedes SCSI-Geräts gespeichert wird. Die Informationsmatrix 150 kann
eine Vielzahl von vorbestimmten Toggle-Bits umfassen, die in einer standardisierten
Gruppe angeordnet sind, die einem Controller 102 ermöglicht,
die Kompatibilität von jedem Gerät zu bestimmen,
das an die SCSI-Verbindung oder den Bus angeschlossen ist.
-
In
dem beispielhaften Ausführungsbeispiel der Informationsmatrix 150 umfasst
das Datenfeld vier Offsets 140, wobei jeder Offset 140 acht
Bits 142 aufweist. Indem jedem Offset 140 eine
unterschiedliche Kompatibilitätsanzeige zugeordnet wird,
kann das entsprechende Toggle-Bit in jedem Bit 142 eine verschiedene
Komponente in dem System repräsentieren zum Bestimmen der
Kompatibilität.
-
Beispielsweise
kann der OFFSET 0×00 144 reserviert werden zum
Bestimmen, ob ein spezielles Gehäuse oder eine Backplane
durch das SCSI-Gerät unterstützt wird, so wie
es in der Box 144 dargestellt ist. Dazu kann jedes Bit 142 entlang
des OFFSET 0×00 eine spezielle Art von Gehäuse
oder Backplane repräsentieren, für das die Kompatibilität
bestimmt worden ist. Als solches ist der im Bit 142 enthaltene Wert
entweder eine „0” oder eine „1”.
Im Allgemeinen kann das Bit 142 auf den Wert „0” gesetzt
werden, wodurch angezeigt wird, dass das Gerät für
das spezielle Gehäuse oder die Backplane nicht unterstützt wird,
so wie es für das Gehäuse 146 des PowerVault-Systems 220 dargestellt
ist. Dieses spezielle Festplattenlaufwerk wird jedoch sowohl durch
ein Gehäuse 147 des PowerVault-Systems 210 als
auch durch eine interne Backplane 148 unterstützt.
Die als „reserviert” markierten Stellen, d. h.
die Bits 3 bis 7, die als Bits 142 bezeichnet werden, dienen
für zusätzliche Gehäuse oder Backplanes,
für die die Kompatibilität bestimmt worden ist.
-
In ähnlicher
Weise umfasst die Informationsmatrix 150 für unterstützte
Geräte für den OFFSET 0×01 146 und
für den OFFSET 0×02 148 die unterstützten
Controller für das Festplattenlaufwerk. Beispielsweise
unterstützt ein PERDC 3Di-Controller das Festplattenlaufwerk,
so wie es in der Box 155 gezeigt ist. Aber PERC 152,
PERC 3 DC 153 und PERC 3 QC 154 unterstützen
das Festplattenlaufwerk nicht, so wie es durch die Bits 0 bis 3
bis OFFSET 0×01 146 gezeigt ist. In ähnlicher
Weise unterstützen PERC 4 DC 155 und PERC 4 DI 157 das
Festplattenlaufwerk nicht, so wie es durch die Bits 0 bis 1 des
OFFSET 0×02 gezeigt ist. Im Hinblick auf die als „reserviert” markierten
Stellen zeigen die Bits 142 zusätzliche Controller
an, deren Kompatibilität bestimmt worden ist. Abschließend
wird der OFFSET 0×03 151 für „zukünftige” Komponenten
aufgespart, die mit dem SCSI-Bus verbunden werden können.
In ähnlicher Weise werden die „Bits 0 bis 7” 142 als „reserviert” bezeichnet,
so dass zusätzliche Komponenten zu der Informationsmatrix 150 über
unterstützte Geräte hinzugefügt werden
können, wenn die Kompatibilität für das
Gerät im Hinblick auf die Festplatte bestimmt worden ist.
-
Obwohl
die offenbarten Ausführungsbeispiele im Detail beschrieben
worden sind, versteht es sich, dass zahlreiche Veränderungen,
Abwandlungen und Abweichungen an den Ausführungsbeispielen
durchgeführt werden können, ohne ihren Geist und
ihren Bereich zu verlassen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste
der vom Anmelder aufgeführten Dokumente wurde automatisiert
erzeugt und ist ausschließlich zur besseren Information
des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen
Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt
keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- - Industry Standard
Architecture, ISA [0025]