DE102005037244A1 - Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen - Google Patents

Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen Download PDF

Info

Publication number
DE102005037244A1
DE102005037244A1 DE102005037244A DE102005037244A DE102005037244A1 DE 102005037244 A1 DE102005037244 A1 DE 102005037244A1 DE 102005037244 A DE102005037244 A DE 102005037244A DE 102005037244 A DE102005037244 A DE 102005037244A DE 102005037244 A1 DE102005037244 A1 DE 102005037244A1
Authority
DE
Germany
Prior art keywords
states
state
mode
computer system
switching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102005037244A
Other languages
English (en)
Inventor
Reinhard Weiberle
Bernd Mueller
Eberhard Boehl
Yorck Collani
Rainer Gmehlich
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102005037244A priority Critical patent/DE102005037244A1/de
Priority to AT06777939T priority patent/ATE480819T1/de
Priority to US12/063,192 priority patent/US20100268923A1/en
Priority to DE502006007858T priority patent/DE502006007858D1/de
Priority to PCT/EP2006/064598 priority patent/WO2007017370A1/de
Priority to EP06777939A priority patent/EP1915674B1/de
Publication of DE102005037244A1 publication Critical patent/DE102005037244A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3888Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple threads [SIMT] in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/845Systems in which the redundancy can be transformed in increased performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Hardware Redundancy (AREA)
  • Control By Computers (AREA)
  • Feedback Control In General (AREA)

Abstract

Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen, insbesondere Prozessorzuständen, in wenigstens einer der Ausführungseinheiten, und mit Umschaltmitteln, durch welche zwischen wenigstens zwei unterschiedlichen Betriebsmodi, insbesondere einem Performanzmodus und einem Vergleichsmodus, des Rechnersystems umgeschaltet werden kann, dadurch gekennzeichnet, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit ihren internen Zustand wechselt.

Description

  • Die Erfindung betrifft eine Vorrichtung und ein Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi eines Multiprozessorsystems mit wenigstens zwei Ausführungseinheiten bzw. CPUs sowie ein entsprechendes Prozessorsystem gemäß den Oberbegriffen der unabhängigen Ansprüche.
  • Transiente Fehler, ausgelöst durch Alpha-Teilchen oder kosmische Strahlung, werden zunehmend ein Problem für integrierte Halbleiterschaltungen. Durch abnehmende Strukturbreiten, sinkende Spannungen und höhere Taktfrequenzen nimmt die Wahrscheinlichkeit zu, dass eine Spannungsspitze, hervorgerufen durch ein Alpha-Teilchen oder kosmische Strahlung, einen logischen Wert in einer integrierten Schaltung verfälscht. Ein falsches Berechnungsresultat kann die Folge sein. In sicherheitsrelevanten Systemen, insbesondere im Kraftfahrzeug, müssen solche Fehler daher zuverlässig detektiert werden.
  • Bei sicherheitsrelevanten Systemen, wie z.B. einem ABS-Regelsystem in einem Kraftfahrzeug, in denen Fehlfunktionen der Elektronik sicher detektiert werden müssen, werden bei den entsprechenden Steuereinrichtungen solcher Systeme üblicherweise Redundanzen zur Fehlererkennung eingesetzt. So ist beispielsweise in bekannten ABS-Systemen jeweils der komplette Mikrocontroller dupliziert, wobei die gesamten ABS-Funktionen redundant berechnet und auf Übereinstimmung geprüft werden. Tritt eine Diskrepanz der Ergebnisse auf, so wird das ABS-System abgeschaltet.
  • Ein Mikrocontroller besteht einerseits aus Speichermodulen (z.B. RAM, ROM, Cache), aus einem Core (CPU) und aus Ein-/Ausgangs-Schnittstellen, so genannten Peripherals (z.B. A/D-Wandler, CAN-Schittstelle). Da Speicherelemente mit Prüfcodes (Parity oder ECC) effektiv überwacht werden können, und Peripherals oft anwendungsspezifisch als Teil eines Sensor- oder Aktor-Signalpfades überwacht werden, besteht ein weiterer Redundanzansatz in der alleinigen Verdopplung der Cores eines Mikrocontrollers.
  • Solche Mikrocontroller mit wenigstens zwei integrierten Cores sind auch als Dual-Core oder Multi-Core Architekturen bekannt. Beide Cores führen redundant und taktsynchron das gleiche Programmsegment aus, die Ergebnisse der beiden Cores werden verglichen, und ein Fehler wird dann bei dem Vergleich auf Übereinstimmung erkannt werden. Im Folgenden wird diese Konfiguration eines Dual-Core Systems als Vergleichsmodus bezeichnet.
  • Dual-Core Architekturen werden in anderen Anwendungen auch zur Performanz-Steigerung eingesetzt. Beide Cores führen unterschiedliche Programme, Programmsegmente oder Befehle aus, wodurch sich eine Leistungssteigerung erzielen lässt, weshalb diese Konfiguration eines Dual-Core Systems als Performanzmodus bezeichnet wird.
  • Eine Erweiterung dieser Systeme kann mittels einer Umschaltung erreicht werden, d.h. je nach Anwendungszweck des Multiprozessorsystem kann dieses in einem Vergleichsmodus oder in einem Performanzmodus betreiben werden. Im Vergleichsmodus werden die Ausgangsignale der Cores miteinander verglichen. Bei einer Differenz wird ein Fehlersignal ausgegeben. Im Performanzmodus arbeiten die beiden Cores als ein symmetrisches Mehrprozessorsystem (SMP) und führen unterschiedliche Programme, Programmsegmente oder Befehle aus. Die Vergleichseinheit ist im diesem Modus nicht aktiv.
  • In vielen Anwendungen werden sogenannte Prozessorzustände verwendet, wie beispielsweise ein User-Modus oder Supervisor Modus. Besonders gut kann man Anforderungen der Anwendung dann in einer art erfüllen, die über den bekannten Stand der Technik hinausgeht, wenn man darüber hinaus die möglichen Betriebsmodi des Prozessorsystems berücksichtigt. Es ist deshalb Aufgabe der Erfindung, Mittel und Verfahren zur Verfügung zu stellen, die eine gemeinsame Optimierung der Prozessorzustände und der Betriebsmodi ermöglichen.
  • Vorteile der Erfindung
  • Vorteilhafterweise verwendet man ein Verfahren zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen, insbesondere Prozessorzuständen, in wenigstens einer der Ausführungseinheiten, und mit Umschaltmitteln, durch welche zwischen wenigstens zwei unterschiedlichen Betriebsmodi, insbesondere einem Performanzmodus und einem Vergleichsmodus, des Rechnersystems umgeschaltet werden kann, dadurch gekennzeichnet, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit ihren internen Zustand wechselt.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem beim Wechsel des internen Zustands von einem alten zu einem neuen Zustand in wenigstens einer der Ausführungseinheiten der neue Zustand einer anderen Gruppe von Zuständen angehört als der alte Zustand.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem die Ausführungseinheit, die durch einen Wechsel ihres Zustands eine Umschaltung initiiert, ein Signal erzeugt, welches die Umschaltung der wenigstens einen weiteren Ausführungseinheit triggert.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem die Zustände mit abgespeicherten Referenzwerten verglichen werden und abhängig vom Vergleich Umschaltsignale erzeugt werden.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem der Vergleich zyklisch erfolgt Vorteilhafterweise verwendet man ein Verfahren, bei dem der Vergleich immer bei Änderung eines Zustands erfolgt
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem in einem Zustand der Ausführungseinheiten, in dem Anwenderprogramme abgearbeitet werden, das Rechnersystem in einem Performanzmodus betrieben wird und dass die Umschaltung in den Vergleichsmodus durch einen Wechsel des Zustandes in wenigstens einer Ausführungseinheit getriggert wird.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem im User Mode der Prozessoreinheiten (d.h. in dem Prozessorzustand, in dem Anwenderprogramme abgearbeitet werden) das Multiprozessorsystem in einem Vergleichsmodus betrieben wird und dass die Umschaltung in den Performanzmodus durch einen Wechsel des Prozessorzustandes in wenigstens einer Ausführungseinheit getriggert wird.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem jeder Zustand einer Ausführungseinheit wenigstens einer Gruppe von Zuständen zugeordnet ist und von den wenigstens zwei Gruppen von Zuständen wenigstens einer dieser Gruppen ein dedizierter Multiprozessor-Betriebsmodus, insbesondere ein Performanzmodus oder ein Vergleichsmodus, fest zugeordnet ist.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch ein externes Signal erlaubt ist.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch einen Zugriff auf eine bestimmte Speicheradresse erlaubt ist.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch die Ausführung einer speziellen Instruktion erlaubt ist.
  • Vorteilhafterweise verwendet man ein Verfahren, bei dem der interne Zustand einer Ausführungseinheit durch wenigstens ein Bit in einem Register dieser Ausführungseinheit angezeigt wird.
  • Vorteilhafterweise verwendet man eine Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen, insbesondere Prozessorzuständen, in wenigstens einer der Ausführungseinheiten, und mit Umschaltmitteln, durch welche zwischen wenigstens zwei unterschiedlichen Betriebsmodi, insbesondere einem Performanzmodus und einem Vergleichsmodus, des Rechnersystems umgeschaltet werden kann, dadurch gekennzeichnet, dass die Umschaltmittel derart ausgestaltet sind, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit ihren internen Zustand wechselt.
  • Vorteilhafterweise verwendet man eine Vorrichtung, bei der die Umschaltmittel so gestaltet sind, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit in eine andere Gruppe der Zustände wechselt.
  • Vorteilhafterweise verwendet man eine Vorrichtung, bei der ein Speicher oder Speicherbereich, insbesondere ein Register, enthalten ist und der Zustand durch wenigstens ein Bit in einem Register dieser Ausführungseinheit angezeigt wird.
  • Vorteilhafterweise verwendet man eine Vorrichtung, bei der Mittel vorhanden sind, die die Zustände der wenigstens zwei Ausführungseinheiten mit abgespeicherten Kombinationen vergleichen und abhängig vom Vergleichsergebnis ein Umschaltsignal zur Umschaltung der Betriebsmodi des Rechnersystems erzeugen.
  • Vorteilhafterweise verwendet man eine Vorrichtung, bei der Mittel zur Speicherung von Daten vorhanden sind und dort Referenzwerte für die Kombination der Zustände abgespeichert sind, bei denen eine Umschaltung der Betriebsmodi erfolgen soll.
  • Vorteilhafterweise verwendet man ein Rechnersystem mit einer oben beschriebenen Vorrichtung.
  • Vorteilhafterweise verwendet man ein Rechnersystem bei dem die Ausführungseinheit, die durch einen Wechsel ihres Zustandes eine Umschaltung initiiert, ein Signal erzeugt, welches die Umschaltung der wenigstens einen weiteren Ausführungseinheit triggert.
  • Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus den Merkmalen der Ansprüche sowie der Beschreibung.
  • Figuren
  • In 1 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten und einer Umschalt- und Vergleichseinheit gezeigt
  • In 2 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten und einer zusätzlichen Signalverbindung zwischen diesen Ausführungseinheiten gezeigt
  • In 3 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten und einer weiteren Vergleichseinheit zum Vergleich der Prozessorzustandsinformationen gezeigt
  • In 4 ist eine Vergleichseinheit zum Vergleich der Prozessorzustandsinformationen gezeigt
  • 5 zeigt ein Zustandsdiagramm eines Multiprozessorsystems mit zwei Zuständen und vier Übergangsbedingungen
  • In 6 ist ein Multiprozessorsystem mit externem Umschaltwunschsignal gezeigt.
  • 7 zeigt eine allgemeine Umschalt- und Vergleichseinheit für ein Multiprozessorsystem
  • Beschreibung der Ausführungsbeispiele
  • Als Ausführungseinheit kann im Folgenden sowohl ein Prozessor, ein Core, eine CPU, als auch eine FPU (Floating Point Unit), ein DSP (Digitaler Signalprozessor), ein Coprozessor oder eine ALU (Arithmetic logical Unit) bezeichnet werden.
  • Gegenstand der Erfindung ist ein in 1 dargestelltes Multiprozessorsystem (W100) mit wenigstens zwei Ausführungseinheiten (W110a, W110b), einer Vergleichseinheit (W120) und einer Umschalteinheit (W150). Die Ausführungseinheiten sind jeweils über einen optionalen Zwischenspeicher (W111a, W111b) mit einer Vergleichseinheit (W120) und der Umschalteinheit (W150) verbunden. Die Umschalteinheit (W150) hat wenigstens zwei Ausgänge zu zwei Systemschnittstellen (W130a, W130b). Über diese Schnittstellen können Register, Speicher oder Peripherals wie Digitale Ausgänge, D/A-Wandler, Kommunikationscontroller angesteuert werden.
  • Dieses Multiprozessorsystem kann in wenigstens zwei Betriebsmodi betrieben werden, einem Vergleichsmodus VM und einem Performanzmodus PM.
  • Im Performanzmodus werden in den unterschiedlichen Ausführungseinheiten unterschiedliche Befehle, Programmsegmente oder Programme parallel ausgeführt. In diesem Betriebsmodus ist die Vergleichseinheit deaktiviert. Die Umschalteinheit (W150) ist in diesem Betriebsmodus so konfiguriert, dass jede Ausführungseinheit über den optionalen Zwischenspeicher mit einer der Systemschnittstellen (W130a, W130b) verbunden ist. Über die Systemschnittstellen kann ein Resultat einer Ausführungseinheit in einen Speicher (W170) geschrieben werden oder auf einen Peripheriebaustein (W180, W190) ausgegeben werden. Ein Peripheriebaustein kann z.B. ein Analog-Digital-Wandler oder ein Kommunikationscontroller eines Kommunikationssystems (z.B. SPI, LIN, CAN, FlexRay) sein.
  • Zur Deaktivierung der Vergleichseinheit gibt es mehrere Möglichkeiten. Zum einen kann man an den Vergleicher ein Signal führen (z.B. über die Verbindung W125), mit dem dieser aktiviert oder deaktiviert wird. Dazu ist im Vergleicher eine zusätzliche Logik einzufügen, die dies durchführen kann. Eine weitere Möglichkeit ist es, dem Vergleicher keine zu vergleichenden Daten zuzuführen. Eine dritte Möglichkeit ist es, auf Systemebene das Fehlersignal (W155) des Vergleichers zu ignorieren. Weiter kann man auch das Fehlersignal selbst unterbrechen. Allen Möglichkeiten ist gemeinsam, dass sie im System einen Zustand erzeugen, bei dem es keine Rolle spielt, wenn zwei oder mehr Daten, die potenziell verglichen werden, verschieden sind. Wird dieser Zustand durch eine Maßnahme im Vergleicher oder dessen Ein- oder Ausgangssignalen erreicht, dann wird der Vergleicher als passiv oder deaktiviert bezeichnet.
  • Im Vergleichsmodus werden in beiden Ausführungseinheiten (W110a, W110b) gleiche oder gleichartige Befehle, Programmsegmente oder Programme abgearbeitet. Über die optionalen Zwischenspeicher (W111a, W111b) werden die Ausgangssignale der Ausführungseinheiten an die Vergleichseinheit (W120) und an die Umschalteinheit (W150) geführt. In der Vergleichseinheit werden die beiden Daten auf Übereinstimmung geprüft. Nach erfolgtem Vergleich wird der Umschalteinheit über ein Statussignal (W125) mitgeteilt, ob diese eines der übereinstimmenden Ergebnisse an eine der Systemschnittstellen ausgeben darf oder ob sie aufgrund einer erkannten Diskrepanz der Ergebnisse das Signal sperren muss. In diesem Fall kann von der Vergleichseinheit ein optionales Fehlersignal (W155) ausgegeben werden. Dieses Fehlersignal kann anstatt von der Vergleichseinheit auch von der Umschalteinheit ausgegeben werden (W156). Die Vergleichseinheit (W120) und die Umschalteinheit (W150) können auch zu einer kombinierten Umschalt- und Vergleichseinheit (N100a) zusammengefasst werden.
  • Ein allgemeiner Fall der Umschalt- und Vergleichskomponente, auch für die Verwendung für mehr als zwei Ausführungseinheiten, ist in 7 gezeigt. Von den n zu berücksichtigenden Ausführungseinheiten gehen n Signale N140, ..., N14n an die Umschalt- und Vergleichskomponente N100 (entspricht 100a). Diese kann bis zu n Ausgangssignale N160, ..., N16n aus diesen Eingangssignalen erzeugen. Im einfachsten Fall, dem "reinen Performanzmodus", werden alle Signale N14i auf die entsprechenden Ausgangssignale N16i geleitet. Im entgegen gesetzten Grenzfall, dem "reinen Vergleichsmodus" werden alle Signale N140, ..., N14n nur auf genau eines der Ausgangssignale N16i geleitet.
  • In einem System mit n Ausführungseinheiten und n > 2 sind mehr als nur zwei Betriebsmodi denkbar. Anhand 7 lässt sich darlegen, wie die verschiedenen denkbaren Modi entstehen können. Dazu ist in dieser Figur die logische Komponente einer Schaltlogik N110 enthalten. Diese Komponente muss nicht als eigene Komponente vorhanden sein. Entscheidend ist, dass die beschriebenen Funktionen im System realisiert sind. Die Schaltlogik N110 legt zunächst fest, wie viele Ausgangssignale es überhaupt gibt. Weiter legt sie fest, welche der Eingangssignale zu welchem der Ausgangssignale beitragen. Dabei kann ein Eingangssignal zu genau einem Ausgangssignal beitragen. In mathematischer Form anders formuliert ist also durch die Schaltlogik eine Funktion definiert, die jedem Element der Menge {N140, ..., N14n} ein Element der Menge {N160, ..., N16n} zuordnet.
  • Die Verarbeitungslogik N120 legt dann zu jedem der Ausgänge N16i fest, in welcher Form die Eingänge zu diesem Ausgangsignal beitragen. Auch diese Komponente muss nicht als eigene Komponente vorhanden sein. Entscheidend ist wieder, dass die beschriebenen Funktionen im System realisiert sind. Um beispielhaft die verschiedenen Variationsmöglichkeiten zu beschreiben, sei ohne Beschränkung der Allgemeinheit angenommen, dass der Ausgang N160 durch die Signale N141, ..., N14m erzeugt wird. Falls m = 1 entspricht dies einfach einer Durchschaltung des Signals, falls m = 2 dann werden die Signale N141, N142 verglichen. Dieser Vergleich kann synchron oder asynchron durchgeführt werden, er kann bitweise oder nur auf signifikante Bits oder auch mit einem Toleranzband durchgeführt werden.
  • Die Konfiguration der Umschalt- und Vergleichseinheit (N100) ist je nach Priorität der Systemkomponenten abhängig vom Betriebsmodus des Multiprozessorsystems oder definiert diesen. Um innerhalb des Systems eine konsistente Information über den Betriebsmodus sicherzustellen und diesen gegebenenfalls externen Einheiten mitzuteilen, ist es vorteilhaft, die Information über den Betriebsmodus in einer der Systemkomponenten zu identifizieren und in einem oder mehreren Signalen zur Verfügung zu stellen.
  • In einer bevorzugten Implementierung kann dieses Signal in der Umschalt- und Vergleichseinheit erzeugt werden und als Modussignal N150 anderen Teilen des Systems zur Verfügung gestellt werden. Darüber hinaus ist ein Fehlersignal N170 in dieser Figur eingezeichnet. Das optionale Fehlersignal wird von der Fehlerschaltungslogik N130, die die Fehlersignale sammelt, generiert und ist entweder eine direkte Weiterleitung der Einzelfehlersignale oder eine Bündelung der darin enthaltenen Fehlerinformation. Das Modussignal N150 ist optional, seine Verwendung außerhalb dieser Komponente kann aber an vielen Stellen vorteilhaft verwendet werden. Die Kombination der Information der Schaltlogik N110 (d.h. die o.g. Funktion) und der Verarbeitungslogik (d.h. die Festlegung der Vergleichsoperation pro Ausgangssignal, d.h. pro Funktionswert) ist die Modusinformation und diese legt den Betriebsmodus des Multiprozessorsystems fest bzw. spiegelt diesen wider. Diese Information ist im allgemeinen Fall natürlich mehrwertig, d.h. nicht nur über ein logisches Bit darstellbar. Nicht alle theoretisch denkbaren Modi sind in einer gegebenen Implementierung sinnvoll, man wird vorzugsweise die Zahl der erlaubten Modi einschränken. Das Modussignal bringt dann die relevante Modusinformation nach außen. Eine HW-Implementierung ist vorzugsweise so dargestellt, dass das extern sichtbare Modussignal konfiguriert werden kann. Vorzugsweise sind ebenfalls die Verarbeitungslogik und die Schaltlogik konfigurierbar gestaltet. Vorzugsweise sind diese Konfigurationen aufeinander abgestimmt. Alternativ kann man auch nur oder ergänzend Änderungen des Modussignals nach außen geben. Dies hat insbesondere in einer Zweierkonfiguration Vorteile.
  • Die Grundidee dieser Erfindung ist es, dass die Betriebsmodi des Multiprozessorsystems in irgendeiner Art gekoppelt werden mit den Prozessorzuständen. Dies kann auch präziser formuliert werden:
    Gemäß den kennzeichnenden Merkmalen des Anspruchs 1 hängt in der vorliegenden Erfindung die Umschaltung selbst oder die Freigabe für eine Umschaltung zwischen den wenigstens zwei Betriebsmodi des Multiprozessorsystems ab von dem internen Prozessorzustand wenigstens einer Ausführungseinheit (z.B. User-Mode, Interrupt-Mode) oder von dem Wechsel des internen Prozessorzustands wenigstens einer Ausführungseinheit.
  • Die Art und Anzahl möglicher Prozessorzustände ist abhängig vom Prozessortyp. Gängige Prozessorzustände sind z.B. Init-Mode (Initialisierung), User-Mode (Prozessorzustand, in dem die meisten Anwendungs-Tasks abgearbeitet werden), Supervisor-Mode (z.B. bei Reset und SW-Interrupt), Interrupt-Mode (bei Interrupt request), Abort-Mode (z.B. zur Behandlung von Speicherzugriffsverletzungen) und System-Mode (privilegierter Modus, in dem Betriebssystembefehle abgearbeitet werden). Der aktuelle Prozessorzustand wird durch wenigstens ein Bit im Prozessorstatusregister oder durch ein prozessorinternes Signal angezeigt.
  • Die Umschaltung zwischen den verschiedenen Prozessorzuständen der Ausführungseinheiten erfolgt dabei auf bekannte Weise durch Setzen eines Bits im Prozessorstatusregister, durch einen expliziten Befehl oder implizit durch Ausführung bestimmter Instruktionen oder durch externe bzw. interne Ereignisse (wie z.B. Fehler, Speicherzugriffsverletzungen, Reset, Interrupt, SW-Interrupt, Auslösung von Betriebssystemroutinen).
  • Die einzelnen Ausführungseinheiten eines Multiprozessorsystems können sich im Performanzmodus zu einem Zeitpunkt T1 in unterschiedlichen Prozessorzuständen befinden. Die Umschaltung zwischen den Betriebsmodi des Multiprozessorsystem kann in einem solchen System in Abhängigkeit von einem internen Prozessorzustand genau einer dedizierten Ausführungseinheit, einem internen Prozessorzustand einer beliebigen Ausführungseinheit des Systems, einer bestimmten Kombination der internen Prozessorzustände von wenigstens zwei Ausführungseinheiten erfolgen.
  • Ist die Umschaltung zwischen zwei Betriebsmodi oder die Freigabe für eine Umschaltung zwischen den wenigstens zwei Betriebsmodi des Multiprozessorsystems abhängig von dem internen Prozessorzustand oder von dem Wechsel des internen Prozessorzustands genau einer Ausführungseinheit, so muss diese Ausführungseinheit ein Umschaltsignal erzeugen, mittels dessen die Umschaltung der wenigstens einen weiteren Ausführungseinheit getriggert wird.
  • In 2 ist ein Multiprozessorsystem W200 gezeigt, das auf dem bereits bekannten, in 1 gezeigten Multiprozessorsystem W100 basiert. Das Multiprozessorsystem enthält in der in 2 gezeigten Ausführungsform zwei Ausführungseinheiten (W210a, W210b), die jeweils über einen optionalen Zwischenspeicher (W111a, W111b) mit einer Vergleichseinheit (W220) und einer Umschalteinheit (W250) verbunden sind. Neu gegenüber dem System W100 ist im System W200 der Signalpfad W215, über den jeweils die Ausführungseinheit, deren interner Prozessorzustand einen Wechsel zwischen den zwei Betriebsmodi initiiert, ein Umschaltsignal an die andere Ausführungseinheit, an die Vergleichseinheit (W220) und an die Umschalteinheit (W250) liefert. Wie bereits in 1 gezeigt, können auch hier die Vergleichseinheit (W220) und die Umschalteinheit (W250) zu einer Umschalt- und Vergleichseinheit kombiniert werden.
  • In 3 ist ein Multiprozessorsystem W300 mit zwei Ausführungseinheiten (W310a, W310b) und einer zusätzlichen Einheit W312 gezeigt. 3 basiert wieder auf 1, es werden jetzt die Änderungen beschrieben. Ein solches System ist notwendig, wenn die Umschaltung zwischen zwei Betriebsmodi in Abhängigkeit einer bestimmten Kombination der internen Prozessorzustände von wenigstens zwei Ausführungseinheiten erfolgt. Die Einheit W312 liest dabei die relevanten internen Prozessorzustände der Ausführungseinheiten oder erhält sie von diesen und vergleicht die aktuelle Kombination der Prozessorzustände mit einer oder mehreren abgespeicherten Kombinationen. Bei Übereinstimmung initiiert die Einheit W312 eine Umschaltung des Betriebsmodus und sendet dazu ein entsprechendes Signal an die Ausführungseinheiten und über den Signalpfad W315 an die Vergleichseinheit (W320) und an die Umschalteinheit (W350).
  • In 4 ist ein Ausführungsbeispiel des internen Aufbaus der Einheit W312 dargestellt. In einem Speicher W313, der z.B. als Register, RAM, Flash, ROM oder EEPROM realisiert sein kann, sind bestimmte Kombinationen von internen Prozessorzuständen der Ausführungseinheiten gespeichert, bei denen eine Umschaltung der Betriebsmodi vorgenommen werden soll bzw. die mit einem bestimmten Betriebsmodus gekoppelt sind. In einem Vergleicher W314 werden zyklisch oder auf Anforderung durch ein Signal W315 die aktuellen Prozessorzustände der Ausführungseinheiten mit den gespeicherten Mustern verglichen. Ist das Ergebnis des Vergleichs eine Anforderung zur Umschaltung, so generiert die Einheit W314 ein Umschaltsignal, das an die Ausführungseinheiten gesendet und über den Signalpfad W315 an die Vergleichseinheit und an die Umschalteinheit gesendet wird.
  • Im erfindungsgemäßen System werden die internen Prozessorzustände wenigstens einer Ausführungseinheit in wenigstens zwei Gruppen P1 und P2 eingeteilt und/oder die Kombinationen der Prozessorzustände in wenigstens zwei Gruppen PZ1 und PZ2 eingeteilt. In einem bevorzugten Ausführungsbeispiel kann wenigstens einer dieser Gruppen von Prozessorzuständen oder Prozessorzustandskombinationen ein dedizierter Betriebsmodus (d.h. ein bestimmter Performanzmodus oder Vergleichsmodus) zugeordnet sein.
  • In 5 ist ein Zustandsdiagramm eines beispielhaften Systems mit den zwei Betriebsmodi W510 und W520 dargestellt. In diesem System gibt es vier Übergangsbedingungen W511, W512, W521 und W522. Dabei bewirken die Übergangsbedingungen W512 und W521 einen Wechsel des Betriebsmodus, die Übergangsbedingungen W511 und W522 bewirken einen Verbleib des Systems im aktuellen Betriebsmodus.
  • In einem ersten Ausführungsbeispiel sind die Übergangsbedingungen W511, W512, W521, W522 ausschließlich von dem Prozessorzustand einer ersten Ausführungseinheit und den Betriebsmodi des Prozessorsystems abhängig. In der Tabelle 1 ist eine Übergangsmatrix dargestellt für den beispielhaften Fall, dass die Prozessorzustände der Gruppe P1 mit dem Betriebsmodus W510 gekoppelt sind und die Prozessorzustände der Gruppe P2 mit dem Betriebsmodus W520 gekoppelt sind. In diesem Ausführungsbeispiel ist jeder Prozessorzustand einer ersten Ausführungseinheit einer Gruppe P1 oder P2 zugeordnet. Die Prozessorzustände der zweiten und gegebenenfalls weiterer Ausführungseinheiten werden dabei nicht als Umschaltbedingungen herangezogen. Dieses Ausführungsbeispiel kann auch so modifiziert werden, dass anstelle des Prozessorzustandes einer dedizierten Ausführungseinheit der Prozessorzustand einer beliebigen Ausführungseinheit als Umschaltbedingung herangezogen wird.
  • In einem zweiten Ausführungsbeispiel sind die Übergangsbedingungen W511–W522 ausschließlich von den Kombinationen der internen Prozessorzustände und den Betriebsmodi des Prozessorsystems abhängig. In der Tabelle 2 ist eine Übergangsmatrix dargestellt für den beispielhaften Fall, dass die Prozessorzustandskombinationen der Gruppe PZ1 mit dem Betriebsmodus W510 gekoppelt sind und die Prozessorzustandskombinationen der Gruppe PZ2 mit dem Betriebsmodus W520 gekoppelt sind. In diesem Ausführungsbeispiel ist jede Kombination der Zustände der wenigstens zwei Ausführungseinheiten einer Gruppe PZ1 oder PZ2 zugeordnet.
  • In einem dritten Ausführungsbeispiel ist die Umschaltung zwischen den Betriebsmodi von dem Prozessorzustand einer ersten Ausführungseinheit abhängig. Die möglichen Prozessorzustände dieser Ausführungseinheit sind in drei Gruppen P1, P2 und P3 eingeteilt. Den Prozessorzuständen der Gruppe P1 ist fest ein erster Betriebsmodus zugeordnet, den Prozessorzuständen der Gruppe P2 ist ein zweiter Betriebsmodus zugeordnet und in einer optionalen Gruppe P3 von Prozessorzuständen ist eine Umschaltung zwischen den Betriebsmodi (z.B. getriggert durch ein externes Signal) erlaubt. So gehört jeder Prozessorzustand einer ersten Ausführungseinheit genau zu einer Gruppe P1, P2 oder P3. Die Prozessorzustände der zweiten und gegebenenfalls weiterer Ausführungseinheiten werden dabei nicht als Umschaltbedingungen herangezogen. Dieses Ausführungsbeispiel kann auch so modifiziert werden, dass anstelle des Prozessorzustandes einer dedizierten Ausführungseinheit der Prozessorzustand einer beliebigen Ausführungseinheit als Umschaltbedingung herangezogen wird.
  • In einem vierten Ausführungsbeispiel ist den Prozessorzustandskombinationen der Gruppe PZ1 fest ein erster Betriebsmodus zugeordnet, den Prozessorzustandskombinationen der Gruppe PZ2 ist ein zweiter Betriebsmodus zugeordnet und in einer optionalen Gruppe PZ3 von Prozessorzustandskombinationen ist eine Umschaltung zwischen den Betriebsmodi (z.B. getriggert durch ein externes Signal) erlaubt. So gehört jede Prozessorzustandskombination genau zu einer Gruppe PZ1, PZ2 oder PZ3: es gibt im System keine Prozessorzustandskombination, die nicht zu einer dieser Gruppen gehört.
  • Die vier beschriebenen Ausführungsbeispiele können auch dahingehend erweitert werden, dass die jeweiligen Prozessorzustände bzw. Prozessorzustandskombinationen keine direkte Umschaltung, sondern nur eine Freigabe einer Umschaltung bewirken. Die Umschaltung selbst wird dann entweder durch ein externes Signal vorgenommen, per Software gesteuert oder – wie aus dem Stand der Technik bekannt – durch den Zugriff auf spezielle Speicherbereiche initiiert. Kennzeichnend dabei ist, dass diese Umschaltwünsche nur dann umgesetzt werden, wenn zuvor eine Freigabe der Umschaltung in Abhängigkeit der Prozessorzustände bzw. Prozessorzustandskombinationen erfolgt ist.
  • 6 beschreibt die Umschaltung durch ein externes Signal und basiert wieder auf 1. Es werden nur die Änderungen beschrieben. Zum gesamtsystem, hier mit W101 bezeichnet, kommt ein externes Signal W160 hinzu, das von einer externen Signalquelle W140 stammt.
  • In einem beispielhaften Ausführungsbeispiel ist der User-Mode wenigstens einer Ausführungseinheit mit dem Performanzmodus gekoppelt. Im Vergleichsmodus wird das Multiprozessorsystem ausschließlich in Verbindung mit dem Init-Mode (beim Start-Up) und/oder dem Supervisor-Mode (bei SW-Interrupts und Reset) und/oder dem Abort-Mode betrieben. Im Vergleichsmodus ist es allerdings erforderlich, dass alle Ausführungseinheiten den gleichen Prozessorzustand einnehmen. Die Synchronisation der Prozessorzustände erfolgt dabei bei der Umschaltung des Betriebsmodus des Multiprozessorsystems. Diese Umschaltung erfolgt dabei in Abhängigkeit wenigstens eines Bits oder eines Bitmusters des Prozessorstatusworts wenigstens einer Ausführungseinheit, welches einen Prozessorzustand dieser Ausführungseinheit anzeigt.
  • In einem weiteren beispielhaften Ausführungsbeispiel ist der User-Mode mit dem Vergleichsmodus gekoppelt. Nur in Verbindung mit wenigstens einem dedizierten Prozessorzustand (z.B. Init-Mode und/oder Supervisor-Mode und/oder Abort-Mode) wird das Multiprozessorsystem in den Performanzmodus umgeschaltet, um eine spezielle Aufgabe schneller abarbeiten zu können.
  • In einem weiteren Ausführungsbeispiel wird eine Umschaltung zwischen den Betriebsmodi generell nur dann zugelassen, wenn sich wenigstens eine Ausführungseinheit in einem privilegierten Prozessorzustand (z.B. Supervisor Mode) befindet. Aus Sicherheitsgründen kann eine Umschaltung auch nur dann zugelassen werden, wenn sich alle Ausführungseinheiten in einem privilegierten Mode befinden. Die Umschaltung selbst kann dann nach erfolgter Freigabe durch ein in den oben beschriebenen Ausführungsbeispielen dargestelltes Verfahren, durch ein in 6 gezeigtes externes Umschaltsignal W160, durch Software gesteuert oder durch Zugriff einer Ausführungseinheit auf spezielle Speicherbereiche erfolgen.
  • Figure 00150001
    Tabelle 1: Übergangsmatrix für ein erstes Ausführungsbeispiel
  • Figure 00160001
    Tabelle 2: Übergangsmatrix für ein zweites Ausführungsbeispiel

Claims (20)

  1. Verfahren zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen, insbesondere Prozessorzuständen, in wenigstens einer der Ausführungseinheiten, und mit Umschaltmitteln, durch welche zwischen wenigstens zwei unterschiedlichen Betriebsmodi, insbesondere einem Performanzmodus und einem Vergleichsmodus, des Rechnersystems umgeschaltet werden kann, dadurch gekennzeichnet, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit ihren internen Zustand wechselt.
  2. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 1, dadurch gekennzeichnet, dass beim Wechsel des internen Zustands von einem alten zu einem neuen Zustand in wenigstens einer der Ausführungseinheiten der neue Zustand einer anderen Gruppe von Zuständen angehört als der alte Zustand.
  3. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 1, dadurch gekennzeichnet, dass die Ausführungseinheit, die durch einen Wechsel ihres Zustands eine Umschaltung initiiert, ein Signal erzeugt, welches die Umschaltung der wenigstens einen weiteren Ausführungseinheit triggert.
  4. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 1, dadurch gekennzeichnet, dass die Zustände mit abgespeicherten Referenzwerten verglichen werden und abhängig vom Vergleich Umschaltsignale erzeugt werden.
  5. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 4, dadurch gekennzeichnet, dass der Vergleich zyklisch erfolgt
  6. Verfahren zu Steuerung eines Rechnersystems nach Anspruch 4, dadurch gekennzeichnet, dass der Vergleich immer bei Änderung eines Zustands erfolgt
  7. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 1, dadurch gekennzeichnet, dass in einem Zustand der Ausführungseinheiten, in dem Anwenderprogramme abgearbeitet werden, das Rechnersystem in einem Performanzmodus betrieben wird und dass die Umschaltung in den Vergleichsmodus durch einen Wechsel des Zustandes in wenigstens einer Ausführungseinheit getriggert wird.
  8. Verfahren zur Steuerung eines Multiprozessorsystems nach Anspruch 1, dadurch gekennzeichnet, dass im User Mode der Prozessoreinheiten (d.h. in dem Prozessorzustand, in dem Anwenderprogramme abgearbeitet werden) das Multiprozessorsystem in einem Vergleichsmodus betrieben wird und dass die Umschaltung in den Performanzmodus durch einen Wechsel des Prozessorzustandes in wenigstens einer Ausführungseinheit getriggert wird.
  9. Verfahren zur Steuerung eines Rechnersystems nach Anspruch 1, dadurch gekennzeichnet, dass jeder Zustand einer Ausführungseinheit wenigstens einer Gruppe von Zuständen zugeordnet ist und von den wenigstens zwei Gruppen von Zuständen wenigstens einer dieser Gruppen ein dedizierter Multiprozessor-Betriebsmodus, insbesondere ein Performanzmodus oder ein Vergleichsmodus, fest zugeordnet ist.
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch ein externes Signal erlaubt ist.
  11. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch einen Zugriff auf eine bestimmte Speicheradresse erlaubt ist.
  12. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass es drei Gruppen von Zuständen gibt, jeder Zustand wenigstens einer dieser Gruppen zugeordnet ist und einer ersten Gruppe der Performanzmodus zugeordnet ist, einer zweiten Gruppe der Vergleichsmodus zugeordnet ist, und für eine dritte Gruppe von Prozessorzuständen eine Umschaltung der Betriebsmodi durch die Ausführung einer speziellen Instruktion erlaubt ist.
  13. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der interne Zustand einer Ausführungseinheit durch wenigstens ein Bit in einem Register dieser Ausführungseinheit angezeigt wird.
  14. Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen, insbesondere Prozessorzuständen, in wenigstens einer der Ausführungseinheiten, und mit Umschaltmitteln, durch welche zwischen wenigstens zwei unterschiedlichen Betriebsmodi, insbesondere einem Performanzmodus und einem Vergleichsmodus, des Rechnersystems umgeschaltet werden kann, dadurch gekennzeichnet, dass die Umschaltmittel derart ausgestaltet sind, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit ihren internen Zustand wechselt.
  15. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, dass die Umschaltmittel so gestaltet sind, dass eine Umschaltung dadurch ausgelöst wird, dass wenigstens eine Ausführungseinheit in eine andere Gruppe der Zustände wechselt.
  16. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, dass ein Speicher oder Speicherbereich, insbesondere ein Register, enthalten ist und der Zustand durch wenigstens ein Bit in einem Register dieser Ausführungseinheit angezeigt wird.
  17. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, dass Mittel vorhanden sind, die die Zustände der wenigstens zwei Ausführungseinheiten mit abgespeicherten Kombinationen vergleichen und abhängig vom Vergleichsergebnis ein Umschaltsignal zur Umschaltung der Betriebsmodi des Rechnersystems erzeugen.
  18. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, dass Mittel zur Speicherung von Daten vorhanden sind und dort Referenzwerte für die Kombination der Zustände abgespeichert sind, bei denen eine Umschaltung der Betriebsmodi erfolgen soll.
  19. Rechnersystem mit einer Vorrichtung nach Anspruch 14.
  20. Rechnersystem nach Anspruch 19, dadurch gekennzeichnet, dass die Ausführungseinheit, die durch einen Wechsel ihres Zustandes eine Umschaltung initiiert, ein Signal erzeugt, welches die Umschaltung der wenigstens einen weiteren Ausführungseinheit triggert.
DE102005037244A 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen Withdrawn DE102005037244A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE102005037244A DE102005037244A1 (de) 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen
AT06777939T ATE480819T1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen
US12/063,192 US20100268923A1 (en) 2005-08-08 2006-07-24 Method and device for controlling a computer system having at least two groups of internal states
DE502006007858T DE502006007858D1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen
PCT/EP2006/064598 WO2007017370A1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen
EP06777939A EP1915674B1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102005037244A DE102005037244A1 (de) 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen

Publications (1)

Publication Number Publication Date
DE102005037244A1 true DE102005037244A1 (de) 2007-02-15

Family

ID=37412601

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102005037244A Withdrawn DE102005037244A1 (de) 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Steuerung eines Rechnersystems mit wenigstens zwei Ausführungseinheiten und mit wenigstens zwei Gruppen von internen Zuständen
DE502006007858T Active DE502006007858D1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE502006007858T Active DE502006007858D1 (de) 2005-08-08 2006-07-24 Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen

Country Status (5)

Country Link
US (1) US20100268923A1 (de)
EP (1) EP1915674B1 (de)
AT (1) ATE480819T1 (de)
DE (2) DE102005037244A1 (de)
WO (1) WO2007017370A1 (de)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823256A (en) * 1984-06-22 1989-04-18 American Telephone And Telegraph Company, At&T Bell Laboratories Reconfigurable dual processor system
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
US6640313B1 (en) * 1999-12-21 2003-10-28 Intel Corporation Microprocessor with high-reliability operating mode
WO2005003962A2 (de) * 2003-06-24 2005-01-13 Robert Bosch Gmbh Verfahren zur umschaltung zwischen wenigstens zwei betriebsmodi einer prozessoreinheit sowie entsprechende prozessoreinheit
DE10332700A1 (de) * 2003-06-24 2005-01-13 Robert Bosch Gmbh Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit sowie entsprechende Prozessoreinheit
DE10349581A1 (de) * 2003-10-24 2005-05-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit

Also Published As

Publication number Publication date
WO2007017370A1 (de) 2007-02-15
EP1915674B1 (de) 2010-09-08
ATE480819T1 (de) 2010-09-15
US20100268923A1 (en) 2010-10-21
DE502006007858D1 (de) 2010-10-21
EP1915674A1 (de) 2008-04-30

Similar Documents

Publication Publication Date Title
EP1812857B1 (de) Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
EP1917592B1 (de) Rechnersystems mit wenigstens zwei ausführungseinheiten und einer vergleichseinheit sowie verfahren zu dessen steuerung
EP1820093B1 (de) Verfahren und einrichtung zum umschalten in einem computersystem mit mindestens zwei ausführungseinheiten
EP1812858B1 (de) Verfahren und vorrichtung zur erzeugung eines modussignals bei einem rechnersystem mit mehreren komponenten
EP1812856B1 (de) Verfahren und vorrichtung zur auswertung eines signals eines rechnersystems mit wenigstens zwei ausführungseinheiten
EP1807764A2 (de) Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
WO2006045774A1 (de) Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
EP1817662B1 (de) Verfahren und vorrichtung zur umschaltung zwischen betriebsmodi eines multiprozessorsystems durch wenigstens ein externes signal
EP1810146B1 (de) Verfahren und vorrichtung zur trennung der abarbeitung von programmcode bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
WO2006045781A2 (de) Verfahren und vorrichtung zur umschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
EP1915674B1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten und mit wenigstens zwei gruppen von internen zuständen
WO2006045779A1 (de) Verfahren und vorrichtung zur umschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
WO2007017372A1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten
DE102005037232A1 (de) Verfahren und Vorrichtung zur Analyse von Abläufen in einem Rechnersystem mit mehreren Ausführungseinheiten
DE102005037261A1 (de) Verfahren und Vorrichtung zur Erzeugung eines Signals bei einem Rechnersystem mit mehreren Komponenten
DE102005037212A1 (de) Verfahren und Vorrichtung zur Trennung der Abarbeitung von Programmcode bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten
DE102005037259A1 (de) Verfahren und Vorrichtung zur Festlegung eines Startzustandes bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten durch Umschalten von Registersätzen
DE102005037260A1 (de) Verfahren und Vorrichtung zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten mittels Bitinformationen in einem Register
DE102005037224A1 (de) Vorrichtung und Verfahren zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten
DE102005037220A1 (de) Verfahren und Vorrichtung zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten
DE102005037229A1 (de) Verfahren und Vorrichtung zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten
DE102005037225A1 (de) Verfahren und Vorrichtung zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten

Legal Events

Date Code Title Description
R005 Application deemed withdrawn due to failure to request examination

Effective date: 20120809