-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung betrifft im Allgemeinen Busarchitekturen und
insbesondere Backplane-Konfigurationen.
-
Hintergrund
der Erfindung
-
Ein
konventionelles Computersystem verwendet für eine Datenübermittlung
zwischen den Komponenten des Systems einen Bus. Eine populäre Busarchitektur
ist die PCI-Busarchitektur ("PCI
= Peripheral Component Interconnect"/Periphere Komponentenverbindung), die
zahlreiche wünschenswerte
Merkmale aufweist, die im Stand der Technik gut bekannt sind. Die
PCI-Busarchitektur wird beispielsweise in "PCI Local Bus Specification" von der PCI Special
Interest Group, 5300 N. E. Elam Young Parkway, Hillsborough, Oregon,
beschrieben. Die kürzlich entwickelte
CompactPCI®-Busarchitektur
ist eine Implementation der PCI-Technologie, die für industrielle und/oder
eingebettete Anwendungen ausgelegt ist.
-
Die
CompactPCI-Busarchitektur wird in "CompactPCI Specification" von PCI Industrial
Computer Manufacturers Group (PCIMG®),
301 Edgewater Place Suite 220, Wakefield, Massachusetts, beschrieben.
CompactPCI und PCIMG sind eingetragene Marken der PCI Industrial
Computer Manufacturers Group.
-
Der
CompactPCI-Standard stellt Beschränkungen hinsichtlich bestimmter
Designaspekte auf, wie etwa der Anzahl an Slots auf dem Bus. Entsprechend
ist es vorteilhaft, eine CompactPCI-Busarchitektur zu haben, die
auf mehrfachen Bussen basiert. Eine derartige Mehrfachbusarchitektur
kann verschiedene Konfigurationen aufweisen. Das Bereitstellen verschiedener
Backplanes für
jede dieser Konfigurationen ist für den Hersteller und den Verkäufer der
Backplanes nicht effizient und für
den Benutzer, der ein Computersystem für eine unterschiedliche Konfiguration
aktualisieren möchte,
teuer.
-
Die
EP 0726528 beschreibt ein
Verbindungsnetzwerk, das ein Paar an Backplanes aufweist, um steckbare
Modus-Karten aufzunehmen.
-
Die
EP 0288648 beschreibt einen
Adapterbusschalter zum Verbinden eines gegebenen Satzes von Adaptern
mit einem Primärbus
und zum Verbinden eines weiteren Satzes von Adaptern mit einer Sekundärbasis.
-
Dementsprechend
wäre es
wünschenswert, eine
Backplane für
eine Mehrfach-CompactPCI-Busarchitektur zu haben, die Mehrfachkonfigurationen
beherrschen kann.
-
Eine
Backplane gemäß der Erfindung
ist in Anspruch 1 ausgeführt.
-
Kurze Beschreibung
der Zeichnungen
-
1 ist
ein Schaltungsdiagramm der Multikonfigurations-Backplane der bevorzugten
Ausführungsform
der Erfindung;
-
2 ist
ein Schaltungsdiagramm einer Dualkonfiguration der Multikonfigurations-Backplane;
-
3 ist
ein Schaltungsdiagramm einer erweiterten Konfiguration der Multikonfigurations-Backplane;
-
4 ist
ein Schaltungsdiagramm einer Aktiv-/Standby-Konfiguration der Multikonfigurations-Backplane
in einem aktiven Modus;
-
5 ist
ein Schaltungsdiagramm einer Aktiv-/Standby-Konfiguration der Multikonfigurations-Backplane
in einem Standby-Modus;
-
6 ist
ein Flussdiagramm des Prozesses des Swappens des Hostboards in einer
Aktiv-/Standby-Konfiguration;
-
7 ist
ein Flussdiagramm des Prozesses des Swappens des Hostboards in einer
Aktiv-/Aktiv-Konfiguration;
-
8 ist
ein Schaltungsdiagramm des Systemhosts;
-
9 ist
ein Flussdiagramm des Prozesses des Umschaltens des Systemhosts;
? und
-
10 ist
ein Flussdiagramm des Prozesses des Umschaltens des Systemprozessors.
-
Detaillierte
Beschreibung der Zeichnungen
-
In
einer bevorzugten Ausführungsform
der Erfindung wird eine Multikonfigurations-Backplane zur Verfügung gestellt,
die in vier unterschiedlichen Konfigurationen konfiguriert werden
kann: Dual, erweitert, Aktiv/Standby und Aktiv/Aktiv. Die Multikonfigurations-Backplane
weist einen ersten CompactPCI-Bus mit einem ersten Systemprozessorslot,
einem ersten Brückenslot
und einem ersten Satz von einem oder mehreren Eingangs-/Ausgangsslots
auf. Die Multikonfigurations-Backplane weist einen zweiten CompactPCI-Bus
mit einem zweiten Systemprozessorslot, einem zweiten Brückenslot
und einem zweiten Satz von einem oder mehreren Eingans-/Ausgangsslots
auf. Eine erste Querverbindung wird zwischen dem ersten Systemprozessorslot
und dem zweiten Brückenslot
zur Verfügung
gestellt und eine zweite Querverbindung wird zwischen dem zweiten Systemprozessorslot
und dem ersten Brückenslot zur
Verfügung
gestellt. Vorzugsweise ist die erste Querverbindung ein erster lokaler
PCI-Bus und die zweite Querverbindung ist ein zweiter lokaler PCI-Bus.
-
In
der Dualkonfiguration weist die Multikonfigurations-Backplane ein
erstes Systemprozessorboard, das in den ersten Systemprozessorslot
eingefügt
ist und ein zweites Systemprozessorboard auf, das in den zweiten
Systemprozessorslot eingefügt ist.
Jeder aus dem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsslots
eingefügt,
und jeder aus einem zweiten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem zweiten Satz aus einem oder der mehreren Eingangs-/Ausgangsslots
eingefügt.
Das erste Systemprozessorboard weist einen ersten Systemprozessor auf,
der den ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
steuert und das zweite Systemprozessorboard weist einen zweiten
Systemprozessor auf, der den zweiten Satz aus einem oder mehreren
Eingangs-/Ausgangsboards steuert.
-
In
der erweiterten Konfiguration weist die Multikonfigurations-Backplane
ein Systemprozessorboard auf, das in den ersten Systemprozessorslot eingefügt ist und
ein Brückenboard,
das in den zweiten Brückenslot
eingefügt
ist. Jeder aus einem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsslots
eingefügt und
jeder aus einem zweiten Satz von einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem zweiten Satz aus einem oder mehreren Eingangs-/Ausgangsslots
eingefügt.
Das Systemprozessorboard ist an das Brückenboard über die erste Querverbindung
gekoppelt. Das Systemprozessorboard weist einen Systemprozessor
auf, der den ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
auf dem ersten CompactPCI-Bus steuert und der den zweiten Satz aus
einem oder mehreren Eingangs-/Ausgangsboards auf dem zweiten Compact-PCI-Bus steuert.
-
In
der Aktiv/Standby-Konfiguration weist die Multikonfigurations-Backplane
ein erstes Systemprozessorboard auf, das in den ersten Systemprozessorslot
eingefügt
ist und ein zweites Systemprozessorboard, das in den zweiten Systemprozessorslot eingefügt ist.
Jeder aus dem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem ersten Satz aus einem oder von mehreren Eingangs-/Ausgangsslots
eingefügt
und jeder aus einem zweiten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem Satz aus einem oder von mehreren Eingangs-/Ausgangsslots
eingefügt.
Ein erstes Brückenboard
ist in den ersten Brückenslot
eingefügt
und ein zweites Brückenboard
ist in den zweiten Brückenslot
eingefügt.
In einem aktiven Modus der Aktiv/Standby-Konfiguration ist das erste Systemprozessorboard
an das zweite Brückenboard über die
erste Querverbindung gekoppelt und weist einen ersten Systemprozessor auf,
der den ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
auf dem ersten CompactPCI-Bus steuert und der den zweiten Satz aus
einem oder mehreren Eingangs-/Ausgangsboards auf dem zweiten CompactPCI-Bus
steuert. In einem Standby-Modus der Aktiv/Standby-Konfiguration ist das
zweite Systemprozessorboard an das erste Brückenboard über die zweite Querverbindung
gekoppelt und weist einen zweiten Systemprozessor auf, der den zweiten
Satz aus einem oder mehreren Eingangs-/Ausgangsboards auf dem zweiten
CompactPCI-Bus steuert und der den ersten Satz aus einem oder mehreren
Eingangs-/Ausgangsboards auf dem ersten CompactPCI-Bus steuert.
-
In
der Aktiv/Aktiv-Konfiguration weist die Multikonfigurations-Backplane
ein erstes Systemprozessorboard auf, das in den ersten Systemprozessorslot
eingefügt
ist und ein zweites Systemprozessorboard, das in den zweiten Systemprozessorslot eingefügt ist.
Jeder aus einem ersten Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem ersten Satz aus einem oder mehreren Eingangs-/Ausgangslots
eingefügt
und jeder aus einem Satz aus einem oder mehreren Eingangs-/Ausgangsboards
ist in einen aus dem zweiten Satz aus einem oder mehreren Eingangs-/Ausgangsslots
eingefügt.
Ein erstes Brückenboard
ist in den ersten Brückenslot
eingefügt
und ein zweites Brückenboard
ist in den zweiten Brückenslot
eingefügt.
-
In
einem Dualmodus in der Aktiv/Aktiv-Konfiguration weist das erste
Systemprozessorboard einen ersten Systemprozessor auf, der den ersten
Satz aus einem oder mehren Eingangs-/Ausgangsboards steuert und
wobei das zweite Systemprozessorboard einen zweiten Systemprozessor
aufweist, der den zweiten Satz aus einem oder aus mehreren Eingangs-/Ausgangsboards
steuert. In einem ersten Mitbenutzungsmodus der Aktiv/Aktiv-Konfiguration
ist das erste Systemprozessorboard an das zweite Brückenboard über die
erste Querverbindung gekoppelt und weist einen ersten Systemprozessor
auf, der den ersten Satz aus mehreren Eingangs-/Ausgangsboards auf
dem ersten CompactPCI-Bus steuert und der einen zweiten Satz aus
einem oder aus mehreren Eingangs-/Ausgangsboards auf dem zweiten
CompactPCI-Bus steuert. In einem zweiten Mitbenutzungsmodus der
Aktiv/Aktiv-Konfiguration
ist das zweite Systemprozessorboard an das erste Brückenboard über die
zweite Querverbindung gekoppelt und weist einen zweiten Systemprozessor
auf, der den zweiten Satz aus einem oder aus mehreren Eingangs-/Ausgangsboards
auf dem zweiten CompactPCI-Bus steuert und der den ersten Satz aus
einem oder aus mehreren Eingangs-/Ausgangsboards auf dem ersten
CompactPCI-Bus steuert.
-
Multikonfigurations-Backplane
-
1 ist
ein Schaltungsdiagramm der Multikonfigurations-Backplane der bevorzugten
Ausführungsform
der Erfindung. In 1 weist eine Backplane 100 einen
CompactPCI-Bus[1] 110 und
einen CompactPCI-Bus[2] 120 auf. Verbunden mit dem CompactPCI-Bus[1] 110 ist
ein Systemprozessorslot[1] 112, ein Brückenslot[1] 114 und
Eingangs-/Ausgangsslots[1] 116. Die Eingangs-/Ausgangsslots[1] 116 stellen
das Einfügen
der Eingangs-/Ausgangsboards[1] 118 zur Verfügung, um entsprechende
Geräte
zu implementieren. Verbunden mit dem CompactPCI-Bus[2] 120 ist
ein Systemprozessorslot[2] 122, ein Brückenslot[2] 124 und
Eingangs-/Ausgangsslots[2] 126. Die Eingangs-/Ausgangsslots[2]
stellen das Einfügen
von Eingangs-/Ausgangsboards[2] 128 zur Verfügung, um entsprechende
Geräte
zu implementieren. Eine Querverbindung[1] 130 koppelt den
Systemprozessorslot[1] 112 an den Brückenslot[2] 124. Eine
Querverbindung[2] 140 koppelt den Systemprozessorslot[2] 122 an
den Brückenslot[1] 118.
Vorzugsweise ist die Querverbindung[1] 130 ein
erster lokaler PCI-Bus ("PCI
= Peripheral Component Interconnect"/Periphere Komponentenverbindung) und
die Querverbindung[2] 140 ist ein zweiter lokaler PCI-Bus.
-
Ebenfalls
in 1 gezeigt sind Systemprozessorboards und Brückenboards,
die die Backplane 100 verbinden, um das gesamte Computersystem
zu definieren. Wie oben erwähnt
stellt die Backplane 100 mehrfache mögliche Konfigurationen des
Computersystems zur Verfügung.
In Abhängigkeit
von der gewählten
Konfiguration der Backplane 100 ist eine Kombination der
Systemprozessorboards und der Brückenboards
wie in 1 gezeigt, vorhanden und/oder aktiv. Ein Systemprozessorboard[1] 150, das
einen Systemprozessor[1] 152 und einen Systemhost[1S] 154 aufweist,
ist in einen Systemprozessorslot[1] 112 eingefügt. Ein
Brückenboard[1] 160, das
einen Systemhost[1B] 164 und einen Hot-Swap-Controller[1] 166 aufweist,
ist optional in den Brückenslot[1] 114 eingefügt. Ein
Systemprozessorboard[2] 170, das einen Systemprozessor[2] 172 und
einen Systemhost[2S] 174 aufweist, ist in einen Systemprozessorslot[2] 122 eingefügt. Ein
Brückenboard[2] 180,
das einen Systemhost[2B] 184 und einen Hot-Swap-Controller[2] 186 aufweist,
ist optional in den Brückenslot[2] 124 eingefügt. Der
Systemprozessor ist beispielsweise das Motorola MPC750-Prozessorsystem.
-
2 ist
ein Schaltungsdiagramm für
eine Dualkonfiguration der Multikonfigurations-Backplane. In der
Dualkonfiguration funktionieren ein erstes und ein zweites Subsystem
unabhängig
voneinander. In 2 ist das Systemprozessorboard[1] 150 in den
Systemprozessorslot[1] 112 eingefügt und das Systemprozessorboard[2] 170 ist
in den Systemprozessorslot[2] 122 eingefügt. Der
Systemprozessor[1] 152 steuert die Eingangs-/Ausgangsboards[1] 118 auf
dem CompactPCI-Bus[1] 110, um die Geräte zu steuern, die damit in
einem ersten Subsystem implementiert sind. Der Systemhost[1S] 154 steuert
die Busfunktionen des CompactPCI-Bus[1] 110.
Der Systemprozessor[2] 172 steuert die Eingangs-/Ausgangsboards[2] 128 auf
dem CompactPCI-Bus[2] 120, um die Geräte zu steuern, die damit in
einem zweiten Subsystem implementiert sind. Der Systemhost[2S] 174 steuert
die Busfunktionen des CompactPCI-Bus[2] 120. Weder die
Querverbindung[1] 130 noch die Querverbindung[2] 140 werden
verwendet.
-
3 ist
ein Schaltungsdiagramm einer erweiterten Konfiguration der Multikonfigurations-Backplane.
In der erweiterten Konfiguration steuert ein einzelner Systemprozessor
die Geräte,
die auf beiden Bussen implementiert sind. In 3 ist das
Systemprozessorboard[1] 150 in den Systemprozessorslot[1] 112 eingefügt und das
Brückenboard[2] 180 ist
in den Brückenslot[2] 124 eingefügt. Der
Systemprozessor[1] 152 steuert die Eingangs-/Ausgangsboards[1] 118 auf
den CompactPCI-Bus[1] 110, um die damit implementierten
Geräte
zu steuern. Der Systemhost[1S] 154 steuert die Busfunktionen
des CompactPCI-Bus[1] 110. Der Systemprozes sor[1] 152 steuert
ebenfalls die Eingangs-/Ausgangsboards[2] 128 auf dem CompactPCI-Bus[2] 120 über die
Querverbindungen[1] 130, um die damit implementierten Geräte zu steuern.
Der Systemhost[2B] 184 steuert die Busfunktionen des CompactPCI-Bus[2] 120.
Die Querverbindung[2] 140 wird nicht verwendet.
-
4 ist
ein Schaltungsdiagramm einer Aktiv/Standby-Konfiguration der Multikonfigurations-Backplane
in einem aktiven Modus. In dem Aktiv/Standby-System steuert ein
einzelner aktiver Systemprozessor die Geräte, die auf beiden Bussen in einem
aktiven Modus implementiert sind. Wenn es eine Fehlfunktion in dem
aktiven Systemprozessor gibt, übernimmt
ein Standby-Prozessor die Steuerung über die Geräte in einem Standbymodus. In 4 ist
das Systemprozessorboard[1] 150 in einen Systemprozessorslot[1] 112 eingefügt und das
Systemprozessorboard[2] 170 ist in den Systemprozessorslot[2] 122 eingefügt. Das
Brückenboard[1] 160 ist in
den Brückenslot[1] 114 eingefügt und das
Brückenboard[2] 180 ist
in den Brückenslot[2] 124 eingefügt. In einem
aktiven Modus werden das Systemprozessorboard[1] und das Brückenboard[2] 180 als
Companion-Boards verwendet. Der Systemprozessor[19 152 steuert
die Eingangs-/Ausgangsboards[1] 118 auf dem CompactPCI-Bus[1] 110 und
steuert ebenfalls die Eingangs-/Ausgangsboards[2] 128 auf
dem CompactPCI-Bus[2] 120 über die Querverbindung[1] 130.
Der Systemhost[1S] 154 steuert die Busfunktionen des CompactPCI-Bus[1] 110 und
der Systemhost[2B] 184 steuert die Busfunktionen des CompactPCI-Bus[2] 120.
Die Querverbindung[2] 140 wird nicht verwendet.
-
5 ist
ein Schaltungsdiagramm der Aktiv/Standby-Konfiguration der Multikonfigurations-Backplane
in einem Standbymodus. In dem Standbymodus werden das Systemprozessorboard[2] 170 und
das Brückenboard[1] 160 als
Companion-Boards
verwendet. Der Systemprozessor[2] 172 steuert die Eingangs-/Ausgangsboards[2] 128 auf
dem CompactPCI-Bus[1] 110 und steuert ebenfalls die Eingangs-/Ausgangsboards[1] 118 auf
dem CompactPCI-Bus[2] 120 über die Querverbindung[2] 140.
Der Systemhost[1B] 164 steuert die Busfunktionen des CompactPCI-Bus[1] 110 und
der Systemhost [2S] 174 steuert die Busfunktionen des CompactPCI-Bus[2] 120.
Die Querverbindung[1] 130 wird nicht verwendet.
-
In
einer Aktiv/Aktiv-Konfiguration werden beide Systemprozessorboards
und beide Brückenboards
eingefügt,
wie in 1 gezeigt. Das Systemprozessorboard[1] 150 ist
in den Systemprozessorslot[1] 112 eingefügt und das
Systemprozessorboard[2] 170 ist in den Systemprozessorslot[2] 122 eingefügt. Das
Brückenboard[1] 160 ist
in den Brückenslot[1] 114 eingefügt und das
Brückenboard[2] 180 ist
in den Brückenslot[2] 124 eingefügt. In einem Dualmodus
funktionieren wie in der oben beschriebenen Dualkonfiguration ein
erstes und ein zweites System unabhängig voneinander. Der Systemprozessor[1] 152 steuert
die Eingangs-/Ausgangsboards[1] 118 auf dem CompactPCI-Bus[1] 110,
um die Geräte
zu steuern, die damit in einem ersten System implementiert sind.
Der Systemprozessor[2] 172 steuert die Eingangs-/Ausgangsboards[2] 128 auf dem
CompactPCI-Bus[2] 120, um die Geräte zu steuern, die damit in
einem zweiten System implementiert sind. Der Systemhost[1S] 154 steuert
die Busfunktionen des CompactPCI-Bus[1] 110 und der Systemhost[2S] 174 steuert
die Busfunktionen des CompactPCI-Bus[2] 120. Weder die
Querverbindung[1] 130 noch die Querverbindung[2] 140 werden
verwendet.
-
In
der Aktiv/Aktiv-Konfiguration wird, wenn es eine Fehlfunktion in
dem Systemprozessor auf dem CompactPCI-Bus[2] 120 gibt, die Verarbeitungslast
auf dem Systemprozessor[1] 152 in einem ersten Mitbenutzungsmodus
verschoben. Der erste Mitbenutzungsmodus arbeitet identisch mit
dem aktiven Modus der Aktiv/Standby-Konfiguration, wie oben stehend
erläutert
und in 4 gezeigt. Wenn es eine Fehlfunktion in dem Systemprozessor
auf dem CompactPCI-Bus[1] 110 gibt,
wird die Prozessorlast auf den Systemprozessor[2] 172 in
einem zweiten Mitbenutzungsmodus geschoben. Der zweite Mitbenutzungsmodus
arbeitet identisch mit dem Standbymodus der Aktiv/Standby-Konfiguration,
wie oben stehend erläutert
und in 5 gezeigt.
-
Hostboard-Swap
-
Wie
oben stehend gezeigt sind auf jedem Bus mehrfache Systemhosts zur
Verfügung
gestellt. Das Systemprozessorboard[1] 150, das Brückenboard[1] 160,
das Systemprozessorboard[2] 170 und das Brückenboard[2] 180 sind
jeweils ein "Hostboard", auf dem sich ein
Systemhost befindet. Im Ergebnis kann die Steuerung der Busfunktionen
auf dem jeweiligen Bus von einem aktiven Systemhost zu einem Standbysystemhost
umgeschaltet werden, für
den Fall, dass eine Fehlfunktion auf dem aktiven Hostboard stattfindet.
Konventionelle CompactPCI-Busarchitekturen erlauben es einem Nicht-Host-Board
auf einem CompactPCI-Bus, wie etwa einem der Eingangs-/Ausgangsboards 118 oder einem
der Eingangs-/Ausgangsboards 128,
im Betrieb getauscht zu werden ("hot
swapped"). Dies
bedeutet, dass das Board ohne ein Unterbre chen des Betriebs des
Computersystems durch ein Zurücksetzen
der Geräte
entfernt und ausgetauscht werden kann. Dies ist beispielsweise in "CompactPCI Hot Swap
Specification",
von PCI Industrial Computer Manufacturers Group, 301 Edgewater
Place Suite 220, Wakefield, Massachusetts, beschrieben.
Dementsprechend stellt die bevorzugte Ausführungsform der Erfindung durch
das Bereitstellen mehrfacher Systemhosts auf jedem PCI-Bus die Fähigkeit
des Hot-Swappings des Hostboards zur Verfügung, was es ermöglicht,
dass ein fehlerhaftes Hostboard ausgetauscht werden kann, während der
Betrieb weiterläuft.
Im Ergebnis können
die Vorteile der CompactPCI-Busarchitektur für eine Anwendung mit hoher
Verfügbarkeit
oder für
eine fehlertolerante Anwendung zur Verfügung gestellt werden.
-
6 ist
ein Flussdiagramm des Prozesses, der von dem Computersystem der
bevorzugten Ausführungsform
bei dem Austauschen des Hoastboards in eine Aktiv/Standby-Konfiguration
durchgeführt
wird. Die in 6 beschriebenen Grundfunktionen
werden von einer Kombination des Systemprozessors 152 oder 172,
dem Systemhost 154, 164, 174 oder 184 und
dem Hot-Swap-Controller 166 oder 186 durchgeführt und
später
in der Beschreibung weiter ausgeführt. Ein Durchschnittsfachmann
erkennt, wie diese Funktionen auf eine Weise zu implementieren sind,
die für
die in Frage stehende Anwendung am Besten geeignet ist, jedoch basierend
auf der hier gegebenen Beschreibung. In Schritt 605 fährt, wenn
ein Fehler in dem Hostboard detektiert wird, die Steuerung mit Schritt 610 fort.
In Schritt 610 wird die Querverbindung[2] 140 anstatt
der Querverbindung[1] 130 verwendet. In Schritt 615 wird
die Systemverarbeitung von dem Systemprozessor[1] 152 zu
dem Systemprozessor[2] 272 übertragen. Der Schritt 615 wird
später
detaillierter erläutert
werden. In Schritt 620 wird die Steuerung der Busfunktionen des
CompactPCI-Busses[1] 110 von
dem Systemhost[1S] 154 zu dem Systemhost[1B] 154 übertragen.
In Schritt 625 wird die Steuerung der Busfunktionen des
CompactPCI-Busses[2] 120 von dem Systemhost[2B] 184 zu
dem Systemhost[2S] 174 übertragen.
Die Systemhostübertragung
wird später
detaillierter unter Bezugnahme auf 8 und 9 beschrieben.
In Schritt 630 wird das fehlerhafte Hostboard im Betrieb
ausgetauscht (hot swapped) und der Hostbordfehler wird ohne ein
Unterbrechen des Betriebs des Systems korrigiert.
-
7 ist
ein Flussdiagramm des Prozesses des Austauschens des Hostboards
in einer Aktiv/Aktiv-Konfiguration. In 6 werden
die Grundfunktionen, die in 7 beschrieben
sind, aus einer Kombination des Systemprozessors 152 oder 172,
des Systemhost 154, 164, 174 oder 184 und
des Hot-Swap-Controllers 166 oder 186 durchgeführt und später in der
Beschreibung weiter ausgeführt.
Der Durchschnittsfachmann erkennt, wie er diese Funktionen auf eine
Weise implementieren kann, die für
die in Frage stehende Anwendung am Besten geeignet sind, jedoch
basierend auf der hier gegebenen Beschreibung. In Schritt 705 fährt, wenn
ein Fehler in dem Hostboard detektiert wird, die Steuerung mit dem
Schritt 710 fort. In Schritt 710 wird die Querverbindung[2] 140 verwendet.
Der Systemprozessor[2] 172 fährt damit fort, die Verarbeitung
auf dem CompactPCI-Bus[2] 120 zu steuern, wie in Schritt 715 festgehalten.
In Schritt 720 wird die Verarbeitungssteuerung der Geräte auf dem
CompactPCI-Bus[1] 110 auf den Systemprozessor[2] 172 übertragen.
Die Systemprozessorübertragung
wird später
detaillierter unter Bezugnahme auf 10 erläutert. Der
System host[2S] 144 fährt
damit fort, die Busfunktionen des CompactPCI-Bus[2] 120 zu
steuern, wie in Schritt 725 festgehalten. Die Steuerung
der Busfunktionen des CompactPCI-Bus[1] 110 wird
von dem Systemhost[1S] 154 zu dem Systemhost[1B] 164 in
Schritt 730 übertragen.
In Schritt 735 wird das fehlerhafte Hostboard im Betrieb
ausgetauscht und der Hostboardfehler wird ohne eine Unterbrechung
des Betriebs des Systems korrigiert.
-
Wie
oben stehend festgehalten, stellt der konventionelle CompactPCI-Standard
die Hot-Swap-Fähigkeit
zur Verfügung.
Demnach basieren der Hot-Swap-Controller[1] 166 auf den
Brückenboard[1] 160 und
der Hot-Swap-Controller[2] 186 auf den Brückenboard[2] 180 auf
konventionellem CompactPCI-Hot-Swap,
wie es in den oben stehend zitierten "Compact PCI Hot Swap Specification" beschrieben ist.
Ein Durchschnittsfachmann kann die Hot-Swap-Controller, die auf
der hier gegebenen Beschreibung, auf den Compakt PCI Hot Swap Specifications
und auf Designvorgaben und Geeignetheit für die in Frage stehende Anwendung
basieren, leicht implementieren. Das Hot-Swappen des Hostboards benötigt jedoch
einige Modifikationen des konventionellen CompactPCI-Systemhost,
um sicherzustellen, dass die Bussteuerfunktionen nicht durch das
Vorhandensein zweier Systemhosts auf einem Bus beschädigt wird.
-
8 ist
ein Schaltungsdiagramm eines Systemhosts mit derartigen Modifikationen.
Der Systemhost 800 in 8 entspricht
dem Systemhost[1S] 154, dem Systemhost[1B] 164,
dem Systemhost[2S] 174 oder dem Systemhost[2B] 184.
Der Systemhost 800 umfasst eine konventionelle PCI-zu-PCI-Brücke 810,
die den CompactPCI-Bus mit einem lokalen PCI-Bus auf dem Hostboard verbindet. Die
Brücke 810 ist
bei spielsweise ein DEC 21154 PCI-Bridge-Arbiter. Der Systemhost 800 umfasst
weiterhin einen speziellen Arbiter 820 ("Arbiter = Zuteiler"). Der spezielle
Arbiter 820 ersetzt die Funktion des konventionellen Busarbiter,
der in der Brücke 810 enthalten
ist, die deaktiviert ist. Der spezielle Arbiter 820 ist
der gleiche wie der konventionelle PCI-Bus-Arbiter, mit der Ausnahme, dass
verschiedene zusätzliche
Merkmale zur Verfügung
gestellt werden, die ein Systemhostumschalten ermöglichen.
Diese Merkmale werden unter Bezugnahme auf 9 unten
stehend erläutert.
-
9 ist
ein Flussdiagramm des Prozesses des Umschaltens des Systemhosts.
Der Prozess wird durch den Hot-Swap-Controller 166 und
den speziellen Arbiter 820 im Systemhost[1S] 154 oder dem
Systemhost[B] 164 durchgeführt, um zwischen dem Systemhost[1S] 154 und
dem Systemhost[1B] 164 auf dem CompactPCI-Bus[1] 110 umzuschalten oder
wird von dem Hot-Swap-Controller 186 und dem speziellen
Arbiter 820 in dem Systemhost[2S] 174 oder dem
Systemhost[2B] 184 durchgeführt, um zwischen dem Systemhost[2S] 174 und
dem Systemhost[2B] 184 auf dem CompactPCI-Bus[2] 120 umzuschalten,
wie in den verschiedenen oben beschriebenen Szenarien. Bei Schritt 905 legt
der den Bus still. Genauer gesagt stellt der Hot-Swap-Controller
dem speziellen Arbiter 820 ein Anfragesignal mit hoher Priorität zur Verfügung, das
der spezielle Arbiter 820 lediglich zulässt, wenn der Bus sich in einem
Wartezustand befindet. Ein spezielles Paar von Anfrage-/Zulassungsleitungen
sind in dem speziellen Arbiter 820 für den Hot-Swap-Controller zur
Verfügung gestellt,
die er für
diesen Zweck nützen
kann.
-
In
Schritt 910 deaktiviert das Computersystem Systemhostsignale,
die von dem aktiven Systemhost zur Verfügung gestellt werden. Insbesondere
stellt der Hot-Swap-Controller dem speziellen Arbiter 820 ein
Floatsignal zur Verfügung,
das bewirkt, dass der spezielle Arbiter 820 die Systemhostsignale deaktiviert,
die er zur Verfügung
stellt, wenn er aktiv ist. Eine spezielle Floatleitung wird dem
speziellen Arbiter 820 für den Hot-Swap-Controller hinzugefügt, die
dieser für
diesen Zweck nützen
kann. Die Systemhostsignale, die durch das Floatsignal deaktiviert sind,
umfassen Zulassungssignale zum Zulassen eines Buszugriffs auf Geräte auf dem
Bus, Zurücksetzungssignal
zum Zurücksetzen
von Geräten
auf dem Bus und Taktsignal und Interrupts, die den Vorrichtungen
auf dem Bus zur Verfügung
gestellt werden. Der spezielle Arbiter 820 definiert seine
Zulassungssignale, Zurücksetzungssignale
und Taktsignale als Signale mit drei Zuständen, wobei ein Zustand mit hoher
Impedanz als dritter Zustand hinzugefügt wird. Das Floatsignal bewirkt,
dass der spezielle Arbiter 820 die Drei-Zustands-Zulassungssignale, die -Zurücksetzungssignale
und die -Taktsignale in den dritten Zustand überführt und die Interrupts deaktiviert. In
Schritt 915 überträgt der Hot-Swap-Controller die Steuerung
von dem fehlerhaften aktiven Systemhost zu dem Standby-Systemhost.
Obwohl die bevorzugte Ausführungsform
der Erfindung in der gezeigten Reihenfolge aus Gründen der
Einfachheit der Beschreibung beschrieben wurde, überträgt sie die Zurücksetzungssignale
und Taktsignale auf den Standby-Systemhost, bevor sie durch den
aktiven Systemhost deaktiviert werden, so dass verhindert wird, dass
die Zurücksetzungs-
und Taktsignale in einen nicht definierten Zustand geraten, in dem
ein unerwünschtes
Signal an ein beliebiges der Geräte
gesendet wird. Auch werden die Taktsignale vorzugsweise in den dritten
Zustand an dem beendenden Ende überführt, um
kurze Zyklen zu verhindern.
-
Systemprozessorboard-Swap
-
Das
Swappen des Systemprozessorboards benötigt das Umschalten der Steuerung
des Systemprozessors. Beispielsweise wird die Steuerung von dem
Systemprozessor[1] 152 zu dem Systemprozessor[2] 172 für den Fall
umgeschaltet, dass ein Fehler das Systemprozessorboard[1] 150 betrifft,
oder von dem Systemprozessor[2] 172 zu dem Systemprozessor[1] 152 für den Fall
umgeschaltet, dass ein Fehler das Systemprozessorboard[2] 170 betrifft.
Anwendungen mit hoher Verfügbarkeit
oder fehlertolerante Anwendungen bedingen, dass die Systemprozessorumschaltung
ohne ein Zurücksetzen
der Geräte
auf dem System oder ein anderweitiges Unterbrechen des Betriebs
des Systems durchgeführt
wird. Da der Systemprozessor[1] 152 und der Systemprozessor[2] 172 jedoch
unabhängig
voneinander arbeiten, gefährdet
ein derartiges Umschalten das System. Beispielsweise kann ein Gerät auf dem
Compact-PCI-Bus
einen Direktspeicherzugriff auf den Speicher des aktiven Systemprozessors
während des
Umschaltens durchführen.
Der Standby-Systemprozessor kann möglicherweise nicht das gleiche Adressierschema
verwenden, so dass kritische Daten beschädigt werden würden, wenn
das Gerät
an die ursprünglich
intendierte Adresse schreibt. Die bevorzugte Ausführungsform
der Erfindung stellt ein nahtloses Umschalten der Systemprozessorsteuerung
durch den Standby-Systemprozessor
zur Verfügung,
um eine derartige Beschädigung
zu vermeiden.
-
10 ist
ein Flussdiagramm des nahtlosen Umschaltens des Systemprozessors.
Die Funktion der 10 wird von dem Standby-Systemprozessor durchgeführt, um
von dem aktiven Systemprozessor auf den Standby-Systemprozessor
umzuschalten. In Schritt 1005 bestimmt der Standby-Systemprozessor,
ob ein Fehler den aktiven Systemprozessor betrifft, wie etwa ein
Fehler in dem aktiven Systemprozessorboard oder auf einem Companion-Brückenboard,
der ein Umschalten des aktiven Systemprozessors auf den Standby-Systemprozessor
bedingt, wie oben stehend beschrieben. In Schritt 1010 bringt der
Standby-Systemprozessor den speziellen Arbiter 800 in einen
Mastermodus, so dass er einem Bus keine Zulassung zu einem beliebigen
Gerät außer dem Standby-Systemprozessor
zur Verfügung
stellt. In Schritt 1015 untersucht der Standby-Systemprozessor
ein Gerät
auf dem Bus und bestimmt in Schritt 120, ob das Gerät hinsichtlich
des Durchführens
einer zerstörerischen
Aktion ein Risiko darstellt. Beispielsweise greift der Standby-Systemprozessor
auf Informationen auf dem Gerät
zu und bestimmt, ob Interrupts zu dem Gerät aktiviert sind, bestimmt,
ob das Gerät
die Fähigkeit
zum Durchführen
eines Direktspeicherzugriffs auf den aktiven Systemprozessor hat
und/oder bestimmt, ob sich das Gerät auf einem fehlerhaften Board
befindet, wie etwa ein Fehler auf dem aktiven Systemprozessorboard
oder einem Companion-Board.
-
In
Schritt 1025 setzt, wenn der Standby-Systemprozessor in
Schritt 1020 bestimmt, dass die Vorrichtung hinsichtlich
des Durchführens
einer zerstörerischen
Aktion ein Risiko darstellt, der Standby-Systemprozessor das Gerät zur Ruhe.
Beispielsweise programmiert der Standby-Systemprozessor das Gerät, den Betrieb
zu beenden oder eine Adresse zu wechseln, an die das Gerät schreibt.
Solange es weitere Geräte
zum Untersuchen in Schritt 1030 gibt, wiederholt der Standby-Systemprozessor
die Schritte 1015 bis 1030. In Schritt 1035 schließlich wurden
alle Geräte,
die ein Risiko hinsichtlich des Durchführens einer zerstörerischen
Aktion aufweisen, zur Ruhe gesetzt und der Standby-Systemprozessor
bringt den speziellen Arbiter 800 in einen Mehrfachmastermodus,
der es ihm erlaubt, Buszulassungen für andere Geräte als den
Standby-Systemprozessor zur Verfügung
zu stellen.
-
Es
sollte klar sein, dass die hier beschriebene Erfindung die Vorteile
einer einzelnen Backplane mit mehrfachen Konfigurationen zur Verfügung stellt. Die
vorliegende Erfindung wurde oben stehend unter Bezugnahme auf bevorzugte
Ausführungsformen
beschrieben. Der Fachmann jedoch wird erkennen, dass Veränderungen
und Modifikationen an diesen bevorzugten Ausführungsformen durchgeführt werden
können,
ohne von dem Geltungsbereich der vorliegenden Erfindung abzuweichen.