PatentDe  


Dokumentenidentifikation DE69535409T2 08.11.2007
EP-Veröffentlichungsnummer 0000803130
Titel PROZESSOR, DAS DAS SYSTEMBUSRECHT IN EINEM ERWEITERBAREN MULTIPROZESSOR-RECHNERSYSTEM ANZEIGT
Anmelder Intel Corp., Santa Clara, Calif., US
Erfinder KRICK, Robert F., Beaverton, OR 97007, US;
FERNANDO, Roshan J., Portland, OR 97229, US
Vertreter Zenz, Helber, Hosbach & Partner GbR, 45128 Essen
DE-Aktenzeichen 69535409
Vertragsstaaten DE, FR, GB
Sprache des Dokument EN
EP-Anmeldetag 08.06.1995
EP-Aktenzeichen 959237728
WO-Anmeldetag 08.06.1995
PCT-Aktenzeichen PCT/US95/07308
WO-Veröffentlichungsnummer 1996000976
WO-Veröffentlichungsdatum 11.01.1996
EP-Offenlegungsdatum 29.10.1997
EP date of grant 28.02.2007
Veröffentlichungstag im Patentblatt 08.11.2007
IPC-Hauptklasse H01J 13/00(2006.01)A, F, I, 20051017, B, H, EP
IPC-Nebenklasse G06F 9/46(2006.01)A, L, I, 20051017, B, H, EP   G06F 13/24(2006.01)A, L, I, 20051017, B, H, EP   

Beschreibung[de]
HINTERGRUND DER ERFINDUNG 1. Gebiet der Erfindung

Die vorliegende Erfindung betrifft den Bereich Computersysteme. Genauer gesagt, bezieht sich diese Erfindung auf einen Prozessor für ein erweiterbares (upgradable) Multiprozessor-Computersystem, das eine externe Anzeige des Systembus-Besitzes zur Verfügung stellt.

2. HINTERGRUND:

Früher hatten herkömmliche Computersysteme typischerweise einen einzigen Hauptprozessor. Üblicherweise ist so ein Hauptprozessor mit einem Systembus gekoppelt, der die Kommunikation mit einer Vielzahl von Eingabe-/Ausgabegeräten ermöglicht. In so einem Computersystem ruft der Hauptprozessor üblicherweise über den Systembus einen Befehlsstrom von einem Speichersubsystem ab und führt jeden Befehl in dem Befehlsstrom aus. So ein Hauptprozessor unterhält typischerweise einen Satz von Datenstrukturen im Speichersubsystem und führt über den Systembus Eingabe-/Ausgabezugriffe auf die Eingabe-/Ausgabegeräte aus.

So ein bekanntes Einzelprozessorsystem implementiert normalerweise einen Interrupt-Mechanismus für die Behandlung von externen Hardwareausnahmen im System. Zum Beispiel verursacht eine Eingabe-/Ausgabegeräte-Steuereinrichtung in so einem System typischerweise einen Systeminterrupt beim Hauptprozessor, wenn versucht wird, auf ein Eingabe-/Ausgabegerät zuzugreifen, das sich im abgeschalteten oder angehaltenen Zustand befindet. Der Systeminterrupt zeigt dem Hauptprozessor an, dass das Eingabe-/Ausgabegerät eine Ausnahmebehandlung erfordert. Üblicherweise übergibt der Systeminterrupt die Steuerung des Hauptprozessors an eine Interrupt-Routine, die die Energieversorgung des abgeschalteten oder angehaltenen Eingabe-/Ausgabegerätes wiederherstellt. Danach gibt der Hauptprozessor noch einmal den Eingabe-/Ausgabezugriff auf das Eingabe-/Ausgabegerät aus und fährt mit der normalen Ausführung fort.

Andere bekannte Computersysteme konnten mehrere Hauptprozessoren haben, um die Leistung der Befehlsausführung zu verbessern. Typischerweise ist jeder Hauptprozessor in einem solchen System mit einem Systembus verbunden, der die Kommunikation mit einem Speichersubsystem und einem Satz von Eingabe-/Ausgabegeräten sicherstellt. Im Vergleich zu einem System mit einem einzigen Hauptprozessor haben solche Multiprozessorsysteme normalerweise eine bessere Leistung bei der Befehlsausführung, weil die Befehlsausführungsfunktionen von mehreren Hauptprozessoren geteilt verwendet werden.

Ein solches Multiprozessor-Computersystem stellt typischerweise Mechanismen zur gemeinsamen Verwendung des externen Speicher-Subsystems und der mit dem Systembus gekoppelten Eingabe-/Ausgabegeräte durch die mehreren Hauptprozessoren zur Verfügung. Zum Beispiel implementieren solche bekannten Multiprozessorsystem normalerweise einen Buszuteilungsmechanismus, der es jedem Hauptprozessor ermöglicht, Zugriff auf den Systembus zu verlangen und zu erhalten.

So ein bekanntes Multiprozessorsystem implementiert normalerweise auch einen Interrupt-Mechanismus für die Behandlung von Hardwareausnahmen im System. In einem solchen Multiprozessorsystem kann ein eine Ausnahme verursachender Zugriff über den Systembus von jedem der mehreren Hauptprozessoren, die mit dem Systembus gekoppelt sind, ausgehen. Eine Eingabe-/Ausgabegeräte-Steuereinrichtung in so einem System richtet typischerweise einen Systeminterrupt an den Hauptprozessor, der den die Ausnahme verursachenden Zugriff erzeugt hat.

Typischerweise überwacht die Eingabe-/Ausgabegeräte-Steuereinrichtung in so einem System den Systembus und zeichnet Wechsel des Systembusbesitzes zwischen den mehreren Hauptprozessoren auf. So eine Eingabe-/Ausgabegeräte-Steuereinrichtung richtet den Systeminterrupt dementsprechend an den Hauptprozessor, der den Besitz des Systembusses während des die Ausnahme verursachenden Zugriffes innehatte. Leider benötigt so ein bekanntes System die Implementierung relativ komplexer externer Hardware in der Eingabe-/Ausgabegeräte-Steuereinrichtung, um den Besitz des Systembusses zu überwachen. Normalerweise treiben solche komplexen Hardwaremechanismen die Kosten solcher bekannten Computersysteme in die Höhe.

Außerdem sind solche Mechanismen unpraktisch für ein Computersystem, das von einem Einprozessorsystem auf ein Mehrprozessorsystem erweitert werden kann. In so einem erweiterbaren System würde ein Hardwaremechanismus für die Überwachung des Busbesitzes und die Zuweisung von Systeminterrupts nicht verwendet, wenn nur ein Hauptprozessor im System installiert ist.

Außerdem würden während eines Upgrades beim Hinzufügen solcher Hardware in das System intensive Hardwaremodifikationen des Systems nötig sein.

Ein Beispiel einer Anordnung aus dem Stand der Technik ist in der europäischen Patentanmeldung EP 0 426 413 A (Compaq) mit dem Titel „Multiprocessor arbitration in single processor arbitration schemes" [Multiprozessorarbitrierung in für Einzelprozessor bestimmten Arbitrierungsschemas] offenbart.

ZUSAMMENFASSUNG UND ZIELE DER ERFINDUNG

Ein Ziel der vorliegenden Erfindung ist es, eine Anzeige des Systembusbesitzes in einem erweiterbaren Multiprozessor-Computersystem zur Verfügung zu stellen.

Ein weiteres Ziel der vorliegenden Erfindung ist es, den Busbesitz zwischen einem OEM-Prozessor und einem Upgrade-Prozessor in einem erweiterbaren Computersystem anzuzeigen.

Ein weiteres Ziel der vorliegenden Erfindung ist es, einem Prozessor einen Upgrade/OEM-Ausgangspin zur Verfügung zu stellen, der den Busbesitz zwischen einem OEM-Prozessor und einem Upgrade-Prozessor in einem erweiterbaren Computersystem anzeigt.

Ein weiteres Ziel der vorliegenden Erfindung ist es, ein System zur Verfügung zu stellen, wobei der OEM-Prozessor durch einen Typ-Eingangspin des Prozessors bestimmt wird und wobei der OEM-Prozessor das Upgrade/OEM-Signal über den Systembus überträgt.

Diese und andere Ziele der Erfindung werden von einem Computersystem erreicht, das einen Prozessor mit einem Typ-Eingangspin enthält, der anzeigt, ob der Prozessor als OEM-Prozessor in einem Einzel- oder Zwei-Prozessor-Computersystem oder als Upgrade-Prozessor im Zwei-Prozessor-Computersystem eingekoppelt ist. Der Prozessor umfasst einen Upgrade/OEM-Ausgangspin, der zur Übertragung eines Upgrade/OEM-Signals über einen Systembus eingekoppelt ist, wenn der Typ-Eingangspin den OEM-Prozessor anzeigt. Das Upgrade/OEM-Signal zeigt an, ob der OEM-Prozessor oder der Upgrade-Prozessor den Systembus besitzt.

Das Computersystem umfasst weiterhin eine Gerätesteuereinrichtung, die zur Prüfung des Upgrade/OEM-Signals eingekoppelt ist, um zu bestimmen, ob der OEM-Prozessor oder der Upgrade-Prozessor den Systembus besitzt. Die Gerätesteuereinrichtung ist zur Übertragung eines Interrupts an den OEM-Prozessor eingekoppelt, wenn das Upgrade/OEM-Signal anzeigt, dass der OEM-Prozessor während eines eine Ausnahme hervorrufenden Zugriffs über den Systembus den Systembus besitzt. Die Gerätesteuereinrichtung ist zur Übertragung eines Interrupts an den Upgrade-Prozessor eingekoppelt, wenn das Upgrade/OEM-Signal anzeigt, dass der Upgrade-Prozessor während des die Ausnahme hervorrufenden Zugriffs über den Systembus den Systembus besitzt.

Andere Ziele, Merkmale und Vorteile der vorliegenden Erfindung sind aus den beigefügten Zeichnungen und der unten folgenden detaillierten Beschreibung ersichtlich.

KURZBESCHREIBUNG DER ZEICHNUNGEN

Die vorliegende Erfindung wird beispielhaft – und nicht im einschränkenden Sinne – anhand der Figuren der beigefügten Zeichnungen veranschaulicht; in den Zeichnungen kennzeichnen gleiche Bezugszeichen ähnliche Elemente.

1 veranschaulicht ein Computersystem bei einer Ausführungsform, die ein Paar Prozessoren, ein Speichersubsystem, eine Anzeigevorrichtung, ein Disk-Subsystem und eine Geräteenergieversorgungs-Steuerschaltung enthält;

2 veranschaulicht einen Prozessor bei einer Ausführungsform, die einen Prozessorkern, eine Interrupt-Steuerschaltung, eine Zwei-Prozessor-Steuerschaltung, eine Bus-Schnittstellenschaltung und einen Cache enthält;

3 zeigt bei einer Ausführungsform ein Zeitdiagramm, das ein Paar pipeline-verschachtelter Kommunikationstransaktionen durch OEM- und Upgradeprozessor über den Systembus veranschaulicht;

4 zeigt bei einer Ausführungsform ein Flussdiagramm, das die Verarbeitung eines Eingabe-/Ausgabezugriffs über den Systembus durch die Geräteenergieversorgungs-Steuerschaltung veranschaulicht.

DETAILLIERTE BESCHREIBUNG

1 veranschaulicht ein Computersystem 100 bei einer Ausführungsform. Das Computersystem 100 enthält ein Paar Prozessoren 10 und 12, ein Speichersubsystem 14, eine Anzeigevorrichtung 18, ein Disk-Subsystem 19 und eine Geräteenergieversorgungs-Steuerschaltung 20. Die Eingabe-/Ausgabegeräte des Computersystems 100 umfassen das Speichersubsystem 14, die Anzeigevorrichtung 18 und das Disk-Subsystem 19. Die Prozessoren 10 und 12 kommunizieren mit den Eingabe-/Ausgabegeräten des Computersystems 100 über einen Systembus 16.

Die Geräteenergieversorgungs-Steuerschaltung 20 stellt einen Satz von Energieversorgungs-Modusfunktionen für das Ausgabegerät 18 und das Disk-Subsystem 19 zur Verfügung. Die Geräteenergieversorgungs-Steuerschaltung 20 wählt mittels eines Satzes von Energiesteuersignalen 25 einen „Energie-An"-Zustand, einen „Energie-Aus"-Zustand und einen Satz von Schlafmoduszuständen für die Anzeigevorrichtung 18 und das Disk-Subsystem 19 aus.

Die Geräteenergieversorgungs-Steuerschaltung 20 überwacht Zugriffe auf die Anzeigevorrichtung 18 und das Disk-Subsystem 19 über den Systembus 16. Die Zugriffe auf die Anzeigevorrichtung 18 und das Disk-Subsystem 19 können entweder vom Prozessor 10 oder dem Prozessor 12 herrühren. Die Geräteenergieversorgungs-Steuerschaltung 20 versetzt das Disk-Subsystem 19 in einen „Energie-Aus"- oder einen Schlafmoduszustand, wenn für eine bestimmte Zeitdauer kein Eingabe-/Ausgabezugriff auf das Disk-Subsystem 19 erfasst wurde. Die Geräteenergieversorgungs-Steuerschaltung 20 schaltet das Disk-Subsystem 19 ab, um den Stromverbrauch einer Batterie (nicht gezeigt) für das Computersystem 100 zu verringern. Die Geräteenergieversorgungs-Steuerschaltung 20 erfüllt eine ähnliche Funktion für die Anzeigevorrichtung 18.

Im Wesentlichen gleicht der Prozessor 10 dem Prozessor 12. Jeder der Prozessoren 10 und 12 funktioniert entweder im Original-Equipment-Manufacture-Prozessor-Modus (OEM-Prozessor-Modus) oder in einem Upgrade-Prozessor-Modus. Der OEM- oder Upgrade-Prozessor-Modus für jeden der Prozessoren 10 und 12 wird durch eine Spannungs-Eingabe an einem entsprechenden CPU_TYPE-Pin bestimmt. Eine niedrige Spannung an einem CPU_TYPE-Pin 22 des Prozessors 10 veranlasst den Prozessor 10, im OEM-Prozessor-Modus zu arbeiten. Ein hohes Spannungsniveau an einem CPU_TYPE-Pin 24 des Prozessors 12 veranlasst den Prozessor 12, im Upgrade-Prozessor-Modus zu arbeiten.

Jeder der Prozessoren 10 und 12 enthält eine interne Interrupt-Steuereinrichtung. Die internen Interrupt-Steuereinrichtungen in den Prozessoren 10 und 12 empfangen externe Interrupt-Anforderungen über einen Interrupt-Teil des Systembusses 16. Die externen Interrupt-Anforderungen an die Prozessoren 10 und 12 schließen System-Management-Interrupts (SMIs) ein. Die Geräteenergieversorgungs-Steuerschaltung 20 gibt einen System-Management-Interrupt über den Interrupt-Teil des Systembusses 16 aus, um anzuzeigen, dass eine Gerätezeitüberschreitung während eines Zugriffes durch den Prozessor 10 oder 12 auf ein Eingabe-/Ausgabegerät in einem „Energie-Aus"- oder Schlafmoduszustand stattgefunden hat.

Jeder der Prozessoren 10 und 12 enthält eine interne Busschnittstellenschaltung, die Kommunikation über den Systembus 16 ermöglicht. Die internen Busschnittstellenschaltungen in den Prozessoren 10 und 12 implementieren einen Buszuteilungsmechanismus, um den Besitz des Systembusses 16 zu koordinieren. Der Zuteilungsmechanismus ermöglicht es jedem der Prozessoren 10 und 12, den Besitz des Systembusses anzufordern, um den Besitz des Systembusses zu erhalten und hinterher die Kontrolle über den Systembus 16 abzugeben.

Der OEM-Prozessor 10 steuert ein Upgrade/OEM-Signal über den Systembus 16 an. Das Upgrade/OEM-Signal zeigt an, ob der OEM-Prozessor 10 oder der Upgrade-Prozessor 12 momentan der Bus-Master des Systembusses 16 ist. Bei einer Ausführungsform wird das Upgrade/OEM-Signal auf dem Systembus 16 immer durch den OEM-Prozessor 10 – wie durch den CPU_TYPE-Pin 22 bestimmt – angesteuert.

Die Geräteenergieversorgungs-Steuerschaltung 20 überwacht den Systembus 16 und erfasst Eingabe-/Ausgabezyklen auf dem Systembus 16, die an die Anzeigevorrichtung 18 oder das Disk-Subsystem 19 gerichtet sind. Die Geräteenergieversorgungs-Steuerschaltung 20 erfasst eine Bus-Zeitüberschreitungsbedingung auf dem Systembus 16 für einen Zugriff auf ein im abgeschalteten oder Schlafmoduszustand befindliches Gerät. Die Bus-Zeitüberschreitungsbedingung wird angezeigt, wenn das adressierte Eingabe-/Ausgabegerät innerhalb eines bestimmten Zeitintervals für einen Zugriff kein „Bereit"-Signal über den Systembus 16 zurückgibt.

Wenn eine Bus-Zeitüberschreitung an die Anzeigevorrichtung 18 oder das Disk-Subsystem 19 erfasst wird, dann liest die Geräteenergieversorgungs-Steuerschaltung 20 den Zustand des Upgrade/OEM-Signals auf dem Systembus 16, um zu bestimmen, ob der OEM-Prozessor 10 oder der Upgrade-Prozessor 12 den die Bus-Zeitüberschreitung verursachenden Eingabe-/Ausgabezugriff initiiert hat. Die Geräteenergieversorgungs-Steuerschaltung 20 richtet den System-Management-Interrupt entsprechend an die interne Interrupt-Steuereinrichtung des OEM-Prozessors 10 oder an die interne Interrupt-Steuereinrichtung des Upgrade-Prozessors 12. Der OEM-Prozessor 10 oder der Upgrade-Prozessor 12 führt dann eine System-Management-Modus-Interrupt-Routine aus, um das adressierte Eingabe-/Ausgabegerät auf einen für einen Folgezugriff geeigneten Zustand zurückzusetzen.

2 veranschaulicht den Prozessor 10 bei einer Ausführungsform. Der Prozessor 10 enthält einen Prozessorkern 40, eine Interrupt-Steuerschaltung 42, eine Zwei-Prozessor-Steuerschaltung 44, eine Bus-Schnittstellenschaltung 46 und ein Cache 50. Im Wesentlichen gleicht der Prozessor 12 dem Prozessor 10.

Der Prozessorkern 40 umfasst einen Satz von Befehlsabruf-Schaltungen und Befehlsdekodier-Schaltungen, um Befehle über den Systembus 16 abzurufen und die abgerufenen Befehle zu dekodieren. Außerdem enthält der Prozessorkern 40 einen Satz von Ausführeinheiten zur Ausführung der abgerufenen Befehle. Entsprechend der Intel-Mikroprozessorarchitektur ruft der Prozessorkern 40 bei einer Ausführungsform Befehle über den Systembus 16 ab und führt sie aus.

Der Prozessor 10 arbeitet entweder im OEM-Prozessor-Modus oder im Upgrade-Prozessor-Modus gemäß des Zustands des CPU_TYPE-Pins 22. Die Zwei-Prozessor-Steuerungsschaltung 44 tastet den Zustand des CPU_TYPE-Pins 22 nach Anlegen eines Zurücksetzungssignals (RESET-Signal) auf dem Systembus 16 ab. Die Zwei-Prozessor-Steuerschaltung 44 setzt dann den Prozessor 10 in den OEM-Prozessor-Modus, weil der CPU_TYPE-Pin 22 sich auf einem niedrigen Spannungsniveau befindet.

Auf eine ähnliche Art, tastet eine Zwei-Prozessor-Steuerschaltung im Prozessor 12 einen hohen Spannungszustand am CPU_TYPE-Pin 24 ab und versetzt den Prozessor 12 entsprechend in den Upgrade-Prozessor-Modus.

Die Interrupt-Steuerschaltung 42 ist mit einem Satz von Interrupt-Steuerleitungen des Systembusses 16 gekoppelt. Die Interrupt-Steuerleitungen des Systembusses 16 umfassen ein programmierbares Interrupt-Steuer-Takt-Signal (PIC_CLK-Signal), ein Paar programmierbarer Interrupt-Steuerdaten-Signale (PIC_DATA_0- und PIC_DATA_1-Signale) und ein System-Management-Interrupt-Aktiv-Signal (SMI_ACTIVE-Signal).

Die Interrupt-Steuerschaltung 42 empfängt Interrupt-Nachrichten über den Systembus 16, die externe Hardware-Interrupts im Computersystem 100 anzeigen. Entsprechend einem programmierbaren Interrupt-Steuer-Idenfizierer, der durch die PIC_DATA_0- und PIC_DATA_1-Signale übertragen wird, sind die externen Interrupts auf dem Systembus 16 entweder an den Prozessor 10 oder den Prozessor 12 gerichtet. Jeder der Prozessoren 10 und 12 verfügt über einen eindeutigen internen programmierbaren Interrupt-Identifizierer, der es externer Hardware ermöglicht, eine Interrupt-Nachricht entweder an den Prozessor 10 oder den Prozessor 12 zu richten. System-Management-Interrupts werden über entsprechende System-Management-Interrupt-Pins (SMI-Pins) an die Prozessoren 10 und 12 gerichtet.

Die Busschnittstellen-Schaltung 46 ermöglicht dem Prozessor 10 Kommunikationstransaktionen über den Systembus 16. Zwischen den Prozessoren 10 und 12 wird die Kontrolle über den Systembus 16 über einen Satz von Anforderungs- und Zuteilungssignalleitungen (REQUEST- und GRANT-Signalleitungen) auf dem Systembus 16 zugeteilt. Die Bus-Schnittstellenschaltung 46 benutzt die Anforderungs- und Zuteilungssignalleitungen auf dem Systembus 16, um die Kontrolle über den Systembus 16 als Bus-Master zu erhalten und die Kontrolle über den Systembus 16 wieder an den Prozessor 12 abzugeben.

Die Bus-Schnittstellenschaltung 46 ist mit einem Satz von Adress-Signalleitungen (ADDRESS-Signalleitungen) und einem Satz von Daten-Signalleitungen (DATA-Signalleitungen) auf dem Systembus 16 gekoppelt. Die Adress- und Datensignalleitungen des Systembusses 16 ermöglichen dem Prozessor 10 die Ausführung von Speicherzugriffen und Eingabe-/Ausgabezugriffen über den Systembus 16 ebenso wie Befehlsabrufzyklen über den Systembus 16.

Die Bus-Schnittstellenschaltung 46 ist außerdem mit einem Satz von Byte-Enable-Signalleitungen (BE[0:3]-Signalleitungen) auf dem Systembus 16 gekoppelt. Die Byte-Enable-Leitungen zeigen die gültigen Daten-Bytes an, die über die Datensignalleitungen des Systembusses 16 übertragen werden.

Zusätzlich stellen während des Zurücksetzens des Computersystems 100 die Byte-Enable-Signalleitungen des Systembusses 16 einen programmierbaren Interrupt-Steuer-Identifizierer (PIC_ID) für die Prozessoren 10 und 12 zur Verfügung. Wenn das Zurücksetzungssignal auf dem Systembus 16 angelegt ist, latchspeichert die Bus-Schnittstellenschaltung 46 den PIC_ID von den Byte-Enable-Signalleitungen. Das PIC_ID wird beim Zurücksetzen durch die Geräteenergieversorgungs-Steuerschaltung 20 auf den Byte-Enable-Signalleitungen des Systembusses 16 angesteuert.

Der Prozessor 10 im OEM-Prozessor-Modus benutzt den PIC_ID, der auf den Byte-Enable-Signalleitungen beim Zurücksetzen als der eindeutige interne programmierbare Interrupt-Identifizierer für die Interrupt-Steuerschaltung 42 abgetastet wurde.

Mittels Abtasten der Byte-Enable-Signale des Systembusses 16 beim Zurücksetzen und mittels Invertierung des niedrigstwertigen Bits des abgetasteten PIC_ID von den Byte-Enable-Signalleitungen bestimmt eine Bus-Schnittstellenschaltung im Prozessor 12 im Upgrade-Prozessor-Modus einen programmierbaren Interrupt-Identifizierer für die interne Interrupt-Steuereinrichtung des Systembusses 16. Der Upgrade-Prozessor 12 invertiert das niedrigstwertige Bit des PIC_IDs, um sicherzustellen, dass der OEM-Prozessor 10 und der Upgrade-Prozessor 12 verschiedene programmierbare Interrupt-Steuer-Identifizierer zur Bestimmung des richtigen Ziels für über den Systembus 16 durch die PIC_DATA_0,1-Signale übermittelte Interrupt-Nachrichten verwenden.

Die Geräteenergieversorgungs-Steuerschaltung 20 speichert den programmierbaren Interrupt-Identifizierer für den OEM-Prozessor 10 und den Upgrade-Prozessor 12, die sich nur im niedrigstwertigen Bit unterscheiden. Die sich unterscheidenden programmierbaren Interrupt-Identifizierer PIC_ID ermöglichen es der Geräteenergieversorgungs-Steuerschaltung 20, einen System-Management-Interrupt über den Systembus 16 ordnungsgemäß entweder an den OEM-Prozessor 10 oder den Upgrade-Prozessor 12 zu richten. Alternativ richtet die Geräteenergieversorgungs-Steuerschaltung 20 System-Management-Interrupts über eigenständige SMI-Eingangssignale an die SMI-Pins der Prozessoren 10 und 12.

Die Bus-Schnittstellenschaltung 46 ist mit einer Taktsignalleitung (CLOCK-Signalleitung) für den Systembus 16 gekoppelt, außerdem mit einer Adress-Strobe-Signalleitung (ADDRESS_STROBE-Signalleitung), einer Nächste-Adresse-Signalleitung (NEXT_ADDRESS-Signalleitung) und einer Cache-Enable-Signalleitung (CACHE_ENABLE-Signalleitung) des Systembusses 16. Das Adress-Strobe-Signal zeigt an, dass eine gültige Adresse über die Adressleitungen des Systembusses 16 angesteuert wird. Das Nächste-Adresse-Signal zeigt an, ob ein neuer Adresszyklus auf dem Systembus 16 gestattet wird, und die Cache-Enable-Signalleitung zeigt an, ob der gegenwärtige Datentransferzyklus auf dem Systembus 16 im Cache 50 cache-gespeichert werden kann.

Die Bus-Schnittstellenschaltung 46 ist außerdem mit einer Schreibe/Lesesignalleitung (WRITE/READ-Signalleitung), einer Schreibe-zurück/Schreibe-durch-Signalleitung (WRITEBACK/WRITETHRU-Signalleitung) und einer BURST_READY-Signalleitung des Systembusses 16 gekoppelt. Das WRITE/READ-Signal des Systembusses 16 zeigt an, ob der aktuelle Zyklus auf dem Systembus 16 ein Schreibe- oder Lesezyklus ist. Die WRITEBACK/WRITETHRU-Signalleitung auf dem Systembus 16 zeigt an, ob die aktuelle Cache-Leitung, die über den Systembus 16 übermittelt wird, einen Cache-Leitungs-Zustandsübergang zu einem exklusiven oder geteilten Zustand verursacht.

Die Bus-Schnittstellenschaltung 46 steuert die Upgrade/OEM-Signalleitung des Systembusses 16 an. Die Bus-Schnittstellenschaltung 46 steuert die UPGRADE/OEM-Signalleitung an, um anzuzeigen, ob gemäß der durch die REQUEST- und GRANT-Signalleitungen des Systembusses 16 durchgeführte Buszuteilung der OEM-Prozessor 10 oder der Upgrade-Prozessor 12 der aktuelle Besitzer des Systembusses 16 ist.

Zusammen mit dem SMI_ACTIVE-Signal zeigt das UPGRADE/OEM-Signal an, ob sich der Prozessor 10 oder der Prozessor 12 in einem System-Management-Modus (SMM) für Energieversorgungs-Management-Funktionen im Computersystem 100 befindet. Die von den UPGRADE/OEM- und SMI_ACTIVE-Signalen zur Verfügung gestellte SMM-Anzeige ist nützlich beim Debuggen der Hard- und Software im Computersystem 100.

3 ist ein Zeitdiagramm, das bei einer Ausführungsform ein Paar pipeline-verschachtelter Kommunikationstransaktionen durch die Prozessoren 10 und 12 über den Systembus 16 veranschaulicht.

Gemäß dem aktuellen Besitz des Systembusses 16 wird die ADDRESS_STROBE-Signalleitung des Systembusses 16 entweder vom Prozessor 10 oder vom Prozessor 12 angesteuert. Gemäß dem aktuellen Besitz des Systembusses 16 wird die WRITE/READ-Signalleitung des Systembusses 16 ebenso wie die Address-, Daten- und Byte-Enable-Signalleitungen des Systembusses 16 entweder vom OEM-Prozessor 10 oder vom Upgrade-Prozessor 12 angesteuert.

Die CLOCK-Signalleitung des Systembusses 16 wird durch externe Hardware im Computersystem 100 angesteuert. Gemäß der Art der laufenden Kommunikationstransaktion werden die NEXT_ADDRESS-, die CACHE_ENABLE-, die WRITEBACK/WRITETHRU- und die BURST_READY-Signalleitungen von mit dem Systembus 16 gekoppelten Geräten angesteuert.

Die UPGRADE/OEM-Signalleitung auf dem Systembus 16 wird immer vom OEM-Prozessor angesteuert. Die UPGRADE/OEM-Signalleitung wechselt nicht in Übereinstimmung mit den Besitzwechseln des Systembusses 16 zwischen den Prozessoren 10 und 12 den Besitzer.

Zum Zeitpunkt t2 legt der OEM-Prozessor 10 das ADDRESS_STROBE-Signal an, um eine gültige Adresse auf den Adressleitungen des Systembusses 16 für einen durch den OEM-Prozessor 10 initiierten Datentransferzyklus anzuzeigen. Zum Zeitpunkt t5 legt der Upgrade-Prozessor 12 das ADDRESS_STROBE-Signal auf dem Systembus 16 an, um eine gültige Adresse auf den Adressleitungen des Systembusses 16 für einen durch den Upgrade-Prozessor 12 initiierten Datentransferzyklus anzuzeigen.

Zwischen den Zeitpunkten t3 und t4 geht das UPGRADE OEM-Signal von einem hohen zu einem niedrigen Zustand über, um anzuzeigen, dass der OEM-Prozessor 10 der Bus-Master während der Daten-Transfer-Sequenz ist, die zwischen den Zeitpunkten t6 und t10 wie von der BURST_READY-Signalleitung angezeigt, stattfindet.

Die Geräteenergieversorgungs-Steuerschaltung 20 liest den Zustand der UPGRADE_OEM-Signalleitung auf dem Systembus 16, um zu bestimmen, ob der Prozessor 10 oder der Prozessor 12 den Datentransferzyklus zwischen den Zeitpunkten t6 und t10 an das adressierte und von den Adress-Signalleitungen des Systembusses 16 während des Zeitpunkts t2 angezeigte Eingabe-/Ausgabegerät erzeugt hat.

Wenn das adressierte Eingabe-/Ausgabegerät – entweder die Anzeigevorrichtung 18 oder das Disk-Subsystem 19 – sich in einem abgeschalteten oder Schlafmoduszustand befindet, dann tastet die Geräteenergieversorgungs-Steuerschaltung 20 die UPGRADE/OEM-Signalleitung ab, um zu bestimmen, ob ein System-Management-Interrupt an den OEM-Prozessor 10 oder an den Upgrade-Prozessor 12 zu richten ist. Die Geräteenergieversorgungs-Steuerschaltung 20 wählt dementsprechend den geeigneten PIC_ID für den Prozessor 10 oder 12 aus und überträgt mit dem ausgewählten PIC_ID eine System-Management-Interrupt-Nachricht über die PIC_DATA-Signalleitungen des Systembusses 16. Alternativ wählt die Geräteenergieversorgungs-Steuerschaltung 20 entsprechend entweder den SMI-Eingang des Prozessors 10 oder den SMI-Eingang des Prozessors 12, um den System-Management-Interrupt zu senden.

4 ist ein Flussdiagramm, das die Verarbeitung eines Eingabe-/Ausgabezugriffs über den Systembus 16 durch die Geräteenergieversorgungs-Steuerschaltung 20 bei einer Ausführungsform veranschaulicht. Bei Block 70 erfasst die Geräteenergieversorgungs-Steuerschaltung 20 einer Zugriff über den Systembus 16 auf eins der Eingabe-/Ausgabegeräte, einschließlich der Anzeigevorrichtung 18 und des Disk-Subsystems 19.

Wenn danach bei Entscheidungsblock 72 keine Gerätezeitüberschreitung an das adressierte Eingabe-/Ausgabegerät stattfindet, wird die Transaktion über den Systembus wie normal fortgesetzt. Wenn am Entscheidungsblock 72 eine Gerätezeitüberschreitung an das adressierte Eingabe-/Ausgabegerät stattfindet, dann wird die Steuerung an Entscheidungsblock 74 übergeben.

Am Entscheidungsblock 74 bestimmt die Geräteenergieversorgungs-Steuerschaltung 20, ob das UPGRADE/OEM-Signal auf dem Systembus 16 angelegt ist. Wenn das UPGRADE/OEM-Signal am Entscheidungsblock 74 angelegt ist, geht die Steuerung an Block 78 über.

An Block 78 gibt die Geräteenergieversorgungs-Steuerschaltung 20 ein System-Management-Interrupt an den Upgrade-Prozessor 12 aus. Durch Übertragung des dem Upgrade-Prozessor 12 entsprechenden PIC_IDs über die PIC_DATA-Leitungen während der System-Management-Interrupt-Nachricht identifiziert die Geräteenergieversorgungs-Steuerschaltung 20 den Upgrade-Prozessor 12 als Ziel für den System-Management-Interrupt.

Wenn das UPGRADE/OEM-Signal am Entscheidungsblock 74 nicht angelegt ist, geht die Steuerung an Block 76 über. An Block 76 gibt die Geräteenergieversorgungs-Steuerschaltung 20 ein System-Management-Interrupt an den OEM-Prozessor 10 aus. Durch Übertragung des dem OEM-Prozessor 10 entsprechenden PIC_IDs über die PIC_DATA-Leitungen während der Interrupt-Nachricht identifiziert die Geräteenergieversorgungs-Steuerschaltung 20 den OEM-Prozessor 10 als ein Ziel für den System-Management-Interrupt.

Das UPGRADE/OEM-Signal kann das BURST_READY-Signal auch an den Prozessor 10 oder den Prozessor 12 richten, wie es in einem System angemessen ist, das über getrennte BURST_READY-Eingänge zu den Prozessoren 10 und 12 verfügt.


Anspruch[de]
Ein Computersystem (100), aufweisend:

einen Bus (16),

eine Mehrzahl von mit dem Bus (16) gekoppelten Prozessoren (10, 12), wobei jeder Prozessor gekennzeichnet ist durch:

einen ersten Pin (22, 24) zum Bestimmen, ob der Prozessor ein OEM-Prozessor in einem Einzelprozessor- oder einem Zwei-Computer-System oder ein Upgrade-Prozessor in dem Zwei-Computer-System ist,

einen Ausgangspin zum Übertragen eines Ausgangssignals über den Bus (16), wobei das Ausgangssignal von dem OEM-Prozessor angesteuert ist, und wobei das Ausgangssignal anzeigt, ob der OEM-Prozessor den Systembus besitzt, und wobei der Ausgangspin derart angesteuert wird, dass ein letzter an dem Bus befindlicher Prozessor fortfährt, den Bus (16) zu besitzen.
Das Computersystem nach Anspruch 1, wobei der Prozessor (10, 12) ferner aufweist:

eine Bus-Schnittstellenschaltung (46), die mit dem Systembus (16) gekoppelt ist und so konfiguriert ist, dass sie einen Interrupt-Identifizierer aus dem Systembus auf einen Satz von Signalleitungen abtastet, wobei die Bus-Schnittstellenschaltung ferner konfiguriert ist, ein niedrigstwertiges Bit des Interrupt-Identifizierers zu invertieren, wenn der Typ-Eingangspin anzeigt, dass der Prozessor ein Upgrade-Prozessor ist.
Das Computersystem nach Anspruch 2, wobei der Satz von Signalleitungen einen Satz von Byte-Enabled-Signalleitungen eines Systembusses aufweist, die konfiguriert sind, auf einen LOW-HIGH-Übergang eines Reset-Pins des Prozessors zu prüfen. Das Computersystem nach Anspruch 2, ferner aufweisend eine Gerätesteuereinrichtung (20), die zum Übertragen des Interrupt-Identifizierer über die Signalleitungen in Reaktion auf das Ausgangssignal konfiguriert ist. Das Computersystem nach Anspruch 4, wobei die Gerätesteuereinrichtung (20) konfiguriert ist, das Ausgangssignal zu prüfen, um zu bestimmen, ob der OEM-Prozessor oder der Upgrade-Prozessor den Systembus (20) besitzt. Das Computersystem nach Anspruch 5, wobei die Gerätesteuereinrichtung (20) konfiguriert ist, ein Interrupt-Signal an den OEM-Prozessor zu übertragen, wenn das Ausgangssignal anzeigt, dass der OEM-Prozessor den Systembus (16) während eines Zugriffes über den Systembus, der den Interrupt erfordert, besitzt. Das Computersystem nach Anspruch 5, wobei die Gerätesteuereinrichtung (20) konfiguriert ist, ein Interrupt-Signal an den Upgrade-Prozessor zu übertragen, wenn das Ausgangssignal anzeigt, dass der Upgrade-Prozessor den Systembus (16) während eines Zugriffes über den Systembus, der den Interrupt erfordert, besitzt. Ein Verfahren zum Anzeigen eines Bus-Besitzes bei einem upgradebaren Multiprozessor-Computersystem (100), aufweisend:

Abtasten eines CPU-Typ-Pins eines Prozessors, der anzeigt, ob der Prozessor als ein OEM-Prozessor (10) oder ein Upgrade-Prozessor (12) gekoppelt ist,

Übertragen eines von dem OEM-Prozessor angesteuerten Ausgangssignals von einem Ausgangspin an dem Prozessor über den Systembus (16),

Bestimmen, ob der OEM-Prozessor oder der Upgrade-Prozessor den Systembus (16) besitzt, auf der Grundlage des Ausgangssignals, und

Ansteuern des Ausgangspins derart, dass ein letzter Prozessor an dem Systembus (16) fortfährt, den Bus zu besitzen.
Das Verfahren nach Anspruch 8, ferner aufweisend die Schritte des:

Abtasten eines Interrupt-Identifier-Signals auf dem Systembus auf einem Satz von Signalleitungen, und

Modifizierens des Interrupt-Identifier-Signals, wenn der CPU-Typ-Pin anzeigt, dass der Upgrade-Prozessor den Bus besitzt.
Das Verfahren nach Anspruch 9, wobei die Signalleitungen einen Satz von Byte-Enabled Signalleitungen eines Systembusses umfassen, die auf einen LOW-HIGH-Übergang eines Reset-Pins geprüft werden. Das Verfahren nach Anspruch 9, wobei das Interrupt-Identifier-Signal von einer Gerätesteuereinrichtung in dem Computersystem über die Signalleitungen übertragen wird. Das Verfahren nach Anspruch 11, ferner aufweisend den Schritt des Prüfens des Ausgangssignals, um zu bestimmen, ob der OEM-Prozessor oder der Upgrade-Prozessor gegenwärtig den Systembus besitzt. Das Verfahren nach Anspruch 12, ferner aufweisend den Schritt des Übertragens eines Interrupt-Signals an den OEM-Prozessor, sofern das Ausgangssignal anzeigt, dass der OEM-Prozessor den Systembus während eines Zugriffs über den Systembus, der das Interrupt-Signal erfordert, besitzt. Das Verfahren nach Anspruch 12, ferner aufweisend den Schritt des Übertragens eines Interrupt-Signals an den Upgrade-Prozessor, wenn das Ausgangssignal anzeigt, dass der Upgrade-Prozessor den Systembus während eines Zugriffs über den Systembus, der das Interrupt-Signal erfordert, besitzt. Das Computersystem nach Anspruch 1, wobei der Prozessor (10, 12) ferner aufweist:

einen Prozessorkern (40), der Befehle ausführen kann,

eine Zwei-Prozessor-Steuereinheit (44), die mit dem Prozessorkern (40) gekoppelt ist,

den Prozessor (10, 12) mit einem CPU-Typ-Pin (2224), der mit der Zwei-Prozessor-Steuereinheit (44) gekoppelt ist, wobei die Zwei-Prozessor-Steuereinheit ein einen Prozessor-Modus anzeigendes CPU-Typ-Signal prüft, und

die Zwei-Prozessor-Steuereinheit (44), die den Prozessor basierend auf den CPU-Typ-Signal in einen ersten Prozessor-Modus oder einen zweiten Prozessor-Modus setzt.
Ein Computersystem nach Anspruch 15, ferner aufweisend:

eine Interrupt-Steuerschaltung (42), die mit dem Prozessorkern (40) gekoppelt ist und extern mit einem Systembus (16) gekoppelt ist, und in der Lage ist, Interrupts gemäß dem von dem Prozessor erzeugten Prozessor-Modus-Signal zu steuern.
Ein Computersystem nach Anspruch 15, wobei das CPU-Typ-Signal zum Anzeigen eines ersten Prozessor-Modus ein Signal mit niedriger Spannung und zum Anzeigen eines zweiten Prozessor-Modus ein Signal mit hoher Spannung ist. Ein Computersystem nach Anspruch 16, wobei die Interrupt-Steuerschaltung (42) in der Lage ist, an dem Prozessor (10, 12) gemäß den Prozessor-Modus gerichtete Interrupts von dem Systembus (16) zu empfangen. Der Prozessor nach Anspruch 1, wobei der Prozessor in einem ersten Prozessor-Modus ist, wenn es in dem System lediglich einen Prozessor gibt.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com