WO2007017396A2 - Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems - Google Patents

Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems Download PDF

Info

Publication number
WO2007017396A2
WO2007017396A2 PCT/EP2006/064742 EP2006064742W WO2007017396A2 WO 2007017396 A2 WO2007017396 A2 WO 2007017396A2 EP 2006064742 W EP2006064742 W EP 2006064742W WO 2007017396 A2 WO2007017396 A2 WO 2007017396A2
Authority
WO
WIPO (PCT)
Prior art keywords
function
functions
execution units
comparison
mode
Prior art date
Application number
PCT/EP2006/064742
Other languages
English (en)
French (fr)
Other versions
WO2007017396A3 (de
Inventor
Juergen Sauler
Reinhard Weiberle
Bernd Mueller
Eberhard Boehl
Yorck Collani
Rainer Gmehlich
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 EP06778027A priority Critical patent/EP1915690A2/de
Priority to US11/990,097 priority patent/US8108716B2/en
Priority to JP2008525528A priority patent/JP2009505186A/ja
Publication of WO2007017396A2 publication Critical patent/WO2007017396A2/de
Publication of WO2007017396A3 publication Critical patent/WO2007017396A3/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • 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

Definitions

  • a check routine that checks if a specific component is still functional.
  • This can be z.
  • a part of the real function algorithm is calculated with default input values and then the result, which is known, is compared with a stored reference value.
  • This stored reference value can be calculated beforehand because the default input values and the algorithm are already known at the time the software was created.
  • Another type of monitoring function is realized by specifically loading output cells. This may be combined with a readback sensor values, which should then be within a certain range. There are a lot of other variations.
  • safety functions In automation technology, it is common in some places to speak of so-called safety functions. These are to be individually identified and documented in the overall application and must generally comply with the requirements of a standard (for example, IEC 61508). Even if no standard is valid, particularly high requirements for error detection are placed on these safety functions and it is not always possible to operate a monitoring function on the object to be monitored.
  • a standard for example, IEC 61508
  • Advantages of the invention are therefore that in the execution of monitoring functions whose correct and error-free (with respect to HW errors) functioning is checked with. So you can detect errors in the monitoring function. As a result, a substantially simplified safety concept is possible.
  • a monitoring in software here receives a degree of coverage of 100% with respect to errors of execution units that manifest themselves in the function at all.
  • a contextual validation of functionality is enabled. The development effort for a security concept is reduced. The overall system complexity is reduced. The concept can easily be expanded to include other security-related functions in the
  • a method for monitoring functions of a computer system having at least two execution units wherein at least two operating modes are switched and a first operating mode corresponds to a comparison mode and a second operating mode corresponds to a performance mode and a first function is monitored by a second function, characterized the second function is processed in the comparison mode on at least two execution units and each of these second functions, which are executed on at least two execution units, monitors the same first function.
  • a method is described, characterized in that the second function monitors the first function periodically.
  • a method is described, characterized in that the first function is executed in the performance mode.
  • a method is described, characterized in that results arising during the execution of the second function on the at least two execution units are compared with each other and so the second function is monitored.
  • a method is described, characterized in that the second functions on the at least two execution units are processed on the basis of context-dependent values, and resulting results are compared.
  • a method is described, characterized in that in addition to the second function, further functions are provided, which monitor other functions, wherein only a part of the other functions in the comparison mode executed on the at least two execution units and thus checked itself.
  • a device for monitoring functions of a computer system is included with at least two execution units, switching means are included and is switched between at least two operating modes and comparison means are included, wherein a first mode of operation a comparison mode and a second mode of operation corresponds to a performance mode and a first function of a second function is monitored, characterized in that the device is configured such that the second function is executed in the comparison mode on at least two execution units and each of these second functions, which are executed on at least two execution units monitors the same first function.
  • a device is advantageously included, characterized in that it is designed in such a way that results arising during the processing of the second function on the at least two execution units are compared with each other by the comparison means and thus the second function is monitored.
  • a device is advantageously included, characterized in that it is designed in such a way that the second functions on the at least two execution units are processed on the basis of context-dependent values and the resulting results are compared.
  • a device is included, characterized in that it is designed in such a way that, in addition to the second function, further functions are provided which monitor other functions, only a part of the further functions being in the comparison mode executed on the at least two execution units and thus checked itself.
  • a device is included, characterized in that the switching means and the comparison means are combined in a switching and comparison unit.
  • a device is included, characterized in that the switching and comparison unit performs the monitoring of the second function.
  • FIG. 1 describes a generalized representation of a switching and comparison unit
  • FIG. 3 shows a subdivision of the set of functions.
  • FIG. 4 shows an alternative subdivision of the set of functions.
  • FIG. 5 shows the sequence of the decision process.
  • FIG. 6 shows a multiprocessor system with two execution units.
  • An execution unit can in the following designate both a processor / core / CPU, as well as an FPU (Floating Point Unit), DSP (Digital Signal Processor), coprocessor or ALU (Arithmetic Logical Unit).
  • the invention relates to a multiprocessor system W100 shown in FIG. 6 having at least two execution units WI 10A, WI 10B, a comparison unit W120 and a switching unit WI 50.
  • FIG. 1 describes the general case of a switching and comparison unit for more than 2 execution units.
  • the presented invention always refers to the general case with 2 or more execution units.
  • the switching unit W150 has at least two outputs to two system interfaces W130a, Wl 30b. Registers, memories or peripherals such as digital outputs, D / A converters and communication controllers can be controlled via these interfaces.
  • This multiprocessor system can be operated in at least two operating modes, a comparison mode VM and a performance mode PM. In a performance mode PM, different commands, program segments or programs are executed in parallel in the different execution units. In this operating mode, the comparison unit is deactivated.
  • the switching unit Wl 50 is configured in this operating mode such that each execution unit is connected to one of the system interfaces W130a, W130b via the optional buffer.
  • the switching unit After a comparison, the switching unit is informed via a status signal W 125 whether it is allowed to output one of the matching results to one of the system interfaces or whether it has to block the signal due to a recognized discrepancy of the results.
  • an optional error signal Wl 55 can be output by the comparison unit.
  • This error signal can also be output by the switching unit instead of by the switching unit Wl 56.
  • the switching can be either via the execution of special switching instructions, special intervention sequences, explicitly marked instructions or by accessing a specific memory address by at least one of the execution units of the Multi-processor system are triggered.
  • n signals N140, ..., N14n go to the switching and comparison component N100. This can generate up to n output signals N160, ..., N16n from these input signals.
  • the "pure performance mode” all signals N14i are directed to the corresponding output signals N16i
  • the "pure comparison mode” all signals N140, ..., N14n only affect exactly one of the output signals N16i headed.
  • a second possibility is to make a k out of m selection (k> m / 2). This can be realized by using comparators.
  • an error signal can be generated if one of the signals is detected as deviating.
  • a possibly different error signal can be generated if all three signals are different.
  • a third option is to apply these values to an algorithm. This may be, for example, the formation of an average, a median, or the use of a Fault Tolerant Algorithm (FTA).
  • FTA Fault Tolerant Algorithm
  • This averaging can be done over the entire set of residual values, or preferably over a subset that is easy to form in HW. In this case, it is not always necessary to actually compare the values. For example, averaging only adds and divides, FTM, FTA, or median require partial sorting. If necessary, an error signal can optionally also be output at sufficiently large extreme values
  • the task of the processing logic is thus to determine the exact shape of the comparison operation for each output signal - and thus also for the associated input signals.
  • the combination of the information of the switching logic NI 10 (ie the so-called g. tion) and the processing logic (ie the determination of the comparison operation per output signal, ie per function value) is the mode information and this sets the mode.
  • this information is multivalued, ie not representable only via a logical bit. Not all theoretically conceivable modes are meaningful in a given implementation, it is preferable to limit the number of allowed modes. It should be emphasized that in the case of only two execution units, where there is only one compare mode, all the information can be condensed to only one logical bit.
  • Switching from a performance mode to a comparison mode is generally
  • Output signals N16i are switched, while they are all mapped to an output in comparison mode.
  • switching can also be realized by changing pairings. It is represented by the fact that in the general case one can not speak of the performance mode and the comparison mode, although in a given form of the invention one can restrict the set of allowed modes such that this is the case. However, one can always speak of switching from the performance to the comparison mode (and vice versa).
  • These modes can be switched over dynamically during operation, controlled by software.
  • the switching is triggered, for example, by the execution of special switching instructions, special instruction sequences, explicitly marked instructions or by the access to specific addresses by at least one of the execution units of the multiprocessor system.
  • a monitoring function is a function that checks the function or the functional capability of a component, a subsystem or an object.
  • FIG. 3 shows a subdivision of the functions O230.
  • the total O300 of the functions corresponds to O230.
  • These can be subdivided into the monitoring functions O320 and other functions 0310.
  • the monitoring functions are calculated or performed in a comparison mode, while the other functions are performed in a performance mode.
  • the main advantage of this is that when executing monitoring functions, their correct and error-free (with regard to HW errors) functioning is also checked. It is also possible to detect errors in the monitoring function itself. This allows a considerably simplified safety concept. A monitoring in software is given a degree of coverage of 100% with regard to errors of execution units that manifest themselves in the function at all.
  • a further significant improvement in security is also possible by using this invention in many applications in that one calculates this monitoring function with the current context.
  • a comparison with a reference value which is known outside the components considered here, is usually necessary to determine the correctness of the monitoring function. In many cases, this can only be achieved by calculating a default value that is stored in a non-volatile memory component. This value is calculated at the time of devolution, i. not in use, and is therefore valid only for the specific context that has been accepted here.
  • an error only manifests itself in a specific context. For example, an error in a multiplication component can not always be recognized by multiplying two distinct numbers together and comparing the result to the known and stored value.
  • a monitoring function that is limited to such a default value thus has a reduced error detection.
  • Errors in the execution units is made by the switching and comparison unit.
  • FIG. 3 A variation of this idea is shown in FIG.
  • the subsets O301, 0311, 0321 correspond to O300, 0310, O320 from FIG. 3.
  • the subsets 0311 and 0321 are again divided into the quantities O350, O360 or O330, O340.
  • the underlying idea is that not all monitoring functions must run in comparison mode, but only those for which the monitoring of the execution unit is essential. These are designated O330, while the other (preferably very small) subset of monitoring functions O340, for which monitoring of the execution unit is insignificant, runs in a performance mode.
  • the subdivision of 0311 is to be understood: 0350 can be, for example, functions that directly drive a critical actuator. That is, it is also possible that some of the functions that are not monitoring functions are in a compare mode. These are summarized in O350. The remaining functions O360 run in a perfomance mode.
  • step O400 the "sleep" state of the scheduler is taken in. As soon as the scheduler brings a process to scheduling in step 0410, the decision is made in step O420 whether it is a P-process or a V-process. If it is a V-process, it is processed in compare mode (in step O460), the scheduler then returns to its idle state (after step O400), if it is a P-process, it is next in step If this is the case, the process is processed (in step O460) in comparison mode, the scheduler then returns to its idle state
  • step O400 If not, the process is processed in performance mode (in step O440). In this case, an allocation to an execution unit must still be made in step O450. Then the scheduler returns to its idle state (O400).

Abstract

Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems mit wenigstens zwei Ausführungseinheiten, wobei Umschaltmittel enthalten sind und zwischen wenigstens zwei Betriebsmodi umgeschaltet wird und Vergleichsmittel enthalten sind, wobei ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht und eine erste Funktion von einer zweiten Funktion überwacht wird, wobei die zweite Funktion im Vergleichsmodus auf wenigstens zwei Ausführungseinheiten abgearbeitet wird und jede dieser zweiten Funktionen, die auf wenigstens zwei Ausführungseinheiten abgearbeitet werden, die selbe erste Funktion überwacht.

Description

Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems
Stand der Technik
Im Bereich eingebetteter Systeme, z.B. Automobiltechnik oder Automatisierungstedinik, gibt es Anwendungen, bei denen ein Fehler in der μC-Hardware potenziell sicherheitsrelevante Konsequenzen haben kann. Um diese Konsequenzen zu vermeiden oder die Auswirkungsschwere zu verringern, werden Überwachungsmaßnahmen verwendet, die Fdi- ler detektieren sollen. Es gibt Anwendungen, in denen eine solche Überwachung nahezu permanent notwendig ist, in anderen Anwendungen gibt es Überwachungsfunktionen, die regelmäßig (z. B. periodisch) oder auf bestimmte Anforderungen hin, überprüfen, ob der Rechner oder auch andere Komponenten noch korrekt funktionieren. Auf solche Anwendungen bezieht sich diese Erfindung.
In diesen Anwendungen wird als Teil dieser Überwachungsfunktionen z.B. eine Checkroutine ausgeführt, die überprüft, ob eine spezielle Komponente noch funktionsfähig ist. Dies kann z. B. darin bestehen, dass ein Teil des echten Funktionsalgorithmus mit De- fault-Input-Werten berechnet wird und dann das Ergebnis, das ja bekannt ist, mit einem abgespeicherten Referenzwert verglichen wird. Dieser abgespeicherte Referenzwert kann zuvor berechnet werden, da die Default-Input Werte und der Algorithmus schon zum Zeitpunkt der Erstellung der Software bekannt sind.
Ein anderer Typ von Überwachungsfunktion wird dadurch realisiert, dass Ausgangskam- Ie gezielt belastet werden. Dies wird möglicherweise kombiniert mit einem Rücklesen von Sensorwerten, die dann in einem bestimmten Bereich liegen sollten. Es gibt noch eine Vielzahl weiterer Variationen.
All diesen Überwachungsmethoden ist gemein, dass sie in Software ablaufen und gesteu- ert werden (möglicherweise unter Zuhilfenahme eines μC-externen HW-Bausteins) und die Funktionslahigkeit des Systems prüfen.
Bei den betrachteten Prüfmaßnahmen ist immer mit großer Sorgfalt darauf zu achten, dass ein Fehler im μC Core, der ja die gesamte Software beeinflusst, nicht dazu führt, dass die Überwachungsroutine selbst nicht funktioniert. Gerade bezüglich der Nachweisbarkeit muss man bei der Beurteilung einer Maßnahme sicherstellen, dass der Core selbst und die darauf laufende Prüf-Software korrekt ablaufen. Unter dieser Voraussetzung kann man nachweisbar sicherstellen, dass auch die Prüfroutinen selbst korrekt ablaufen. Dies führt in Summe dazu, dass sehr viel Aufwand in die Prüfung des Cores selbst und die Lh- abhängigkeit der anderen Prüfroutinen von Corefehlern gesteckt werden muss.
In der Automatisierungstechnik ist es an einigen Stellen üblich, von so genannten Sicherheitsfunktionen zu sprechen. Diese sind in der Gesamtanwendung einzeln zu identifizieren und zu dokumentieren und müssen in der Regel den Anforderungen einer Norm (z.B. IEC 61508) entsprechen. Selbst wenn keine Norm gültig ist, werden besonders hohe Anforderungen an Fehlererkennung an diese Sicherheitsfunktionen gestellt und es ist nicht immer möglich, eine Überwachungsfunktion auf dem zu überwachenden Objekt zu betreiben.
Bei den bekannten Prüfmaßnahmen ist es darüber hinaus noch oft der Fall, dass bei einer
Prüfung der Funktionslahigkeit diese Prüfung sich nur auf die Funktionslahigkeit in einem bestimmten Kontext bezieht. D.h. es wird oft nicht die Funktionsfähigkeit in jedem oder im aktuell gültigen Kontext überwacht, sondern es wird die Funktionslahigkeit nur in einem Default-Kontext abgeprüft.
Vorteile der Erfindung
Es ist Aufgabe der Erfindung, die Sicherheit eingebetteter Systeme zu verbessern, indem eine kontextabhängige Prüfung der Funktionsfähigkeit ermöglicht wird und damit die Qualität von Überwachungsfunktionen verbessert wird. Weiter sollen Möglichkeiten geschaffen werden Sicherheitsfunktionen auf einem Steuerrechner zu betreiben und es sollen bevorzugte Implementierungsmöglichkeiten für Sicherheitsfunktionen angegeben werden. Eine weitere Aufgabe ist es, den Aufwand sowohl bei der Entwicklung als auch im Betrieb von in SW ablaufenden Überwachungsfunktionen zu reduzieren.
Vorteile der Erfindung sind daher, dass bei der Ausführung von Überwachungsfunktionen deren korrektes und fehlerfreies (bzgl. HW-Fehlern) Funktionieren mit überprüft wird. Man kann also Fehler in der Überwachungsfunktion detektieren. Dadurch ist ein wesent- lieh vereinfachtes Sicherheitskonzept möglich. Eine Überwachung in Software erhält hier einen Abdeckungsgrad von 100% bezüglich Fehlern von Ausführungseinheiten, die sich in der Funktion überhaupt manifestieren. Eine den Kontext mit einbeziehende Überprüfung der Funktionslahigkeit wird ermöglicht. Der Entwicklungsaufwand für ein Sicherheitskonzept wird reduziert. Die gesamte Systemkomplexität wird verringert. Das Kon- zept ist leicht daraufhin erweiterbar, dass auch andere sicherheitsrelevante Funktionen im
Vergleichsmodus laufen können. Dieses Konzept erlaubt es, Sicherheitsfunktionen einlä- cher zu implementieren und sie in einem besonderen Modus auf einem Steuerungsrechner mitlaufen zu lassen.
Vorteilhaft ist ein Verfahren zur Überwachung von Funktionen eines Rechnersystems mit wenigstens zwei Ausführungseinheiten beschrieben, wobei zwischen wenigstens zwei Betriebsmodi umgeschaltet wird und ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht und eine erste Funktion von einer zweiten Funktion überwacht wird, dadurch gekennzeichnet, dass die zweite Funktion im Ver- gleichsmodus auf wenigstens zwei Ausführungseinheiten abgearbeitet wird und jede dieser zweiten Funktionen, die auf wenigstens zwei Ausführungseinheiten abgearbeitet werden die selbe erste Funktion überwacht.
Vorteilhaft ist ein Verfahren beschrieben, dadurch gekennzeichnet, dass die zweite Funktion die erste Funktion periodisch überwacht.
Vorteilhaft ist ein Verfahren beschrieben, dadurch gekennzeichnet, dass die erste Funktion im Performanzmodus abgearbeitet wird. Vorteilhaft ist ein Verfahren beschrieben, dadurch gekennzeichnet, dass Ergebnisse die bei der Abarbeitung der zweiten Funktion auf den wenigstens zwei Ausführungseinheiten entstehen jeweils miteinander verglichen werden und so die zweite Funktion überwacht wird.
Vorteilhaft ist ein Verfahren beschrieben, dadurch gekennzeichnet, dass die zweiten Funktionen auf den wenigstens zwei Ausführungseinheiten anhand kontextabhängiger Werte abgearbeitet und dabei entstehende Ergebnisse verglichen werden.
Vorteilhaft ist ein Verfahren beschrieben, dadurch gekennzeichnet, dass neben der zweiten Funktion, weitere Funktionen vorgesehen sind, welche andere Funktionen überwachen, wobei nur ein Teil der weiteren Funktionen im Vergleichsmodus auf den wenigstens zwei Ausführungseinheiten ausgeführt und damit selbst überprüft wird.
Vorteilhaft ist eine Vorrichtung zur Überwachung von Funktionen eines Rechnersystems mit wenigstens zwei Ausführungseinheiten enthalten, wobei Umschaltmittel enthalten sind und zwischen wenigstens zwei Betriebsmodi umgeschaltet wird und Vergleichsmittel enthalten sind, wobei ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht und eine erste Funktion von einer zweiten Funktion ü- berwacht wird, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass die zweite Funktion im Vergleichsmodus auf wenigstens zwei Ausführungseinheiten abgearbeitet wird und jede dieser zweiten Funktionen, die auf wenigstens zwei Ausführungseinheiten abgearbeitet werden die selbe erste Funktion überwacht.
Vorteilhaft ist eine Vorrichtung enthalten, dadurch gekennzeichnet, dass diese derart ausges- taltet ist, dass Ergebnisse die bei der Abarbeitung der zweiten Funktion auf den wenigstens zwei Ausführungseinheiten entstehen durch die Vergleichsmittel jeweils miteinander verglichen werden und so die zweite Funktion überwacht wird.
Vorteilhaft ist eine Vorrichtung enthalten, dadurch gekennzeichnet, dass diese derart ausges- taltet ist, dass die zweiten Funktionen auf den wenigstens zwei Ausführungseinheiten anhand kontextabhängiger Werte abgearbeitet und dabei entstehende Ergebnisse verglichen werden.
Vorteilhaft ist eine Vorrichtung enthalten, dadurch gekennzeichnet, dass diese derart ausgestaltet ist, dass neben der zweiten Funktion, weitere Funktionen vorgesehen sind, welche ande- re Funktionen überwachen, wobei nur ein Teil der weiteren Funktionen im Vergleichsmodus auf den wenigstens zwei Ausführungseinheiten ausgeführt und damit selbst überprüft wird.
Vorteilhaft ist eine Vorrichtung enthalten, dadurch gekennzeichnet, dass die Umschaltmittel und die Vergleichsmittel in einer Umschalt- und Vergleichseinheit zusammengefasst sind.
Vorteilhaft ist eine Vorrichtung enthalten, dadurch gekennzeichnet, das die Umschalt- und Vergleichseinheit die Überwachung der zweiten Funktion durchführt.
Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus den Merkmalen der Ansprüche sowie der Beschreibung.
Figuren
Figur 1 beschreibt eine verallgemeinerte Darstellung einer Umschalt- und Vergleichseinheit
Figur 2 beschreibt, welche Komponenten in der Recheneinheit des erfindungsgemäßen Systems vorhanden sind
In Figur 3 ist eine Unterteilung der Menge der Funktionen dargestellt.
In Figur 4 ist eine alternative Unterteilung der Menge der Funktionen dargestellt.
In Figur 5 ist der Ablauf des Entscheidungsprozesses dargestellt.
In Figur 6 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten dargestellt.
Beschreibung der Ausführungsbeispiele
Eine Ausführungseinheit kann im Folgenden sowohl einen Prozessor/Core/CPU, als auch eine FPU (Floating Point Unit), DSP (Digitaler Signalprozessor), Coprozessor oder ALU (Arithmetic logical Unit) bezeichnen. Die Erfindung bezieht sich auf ein in Figur 6 dargestelltes Multiprozessorsystem WlOO mit wenigstens zwei Ausfiihrungseinheiten WI lOa, WI lOb, einer Vergleichseinheit W120 und einer Umschalteinheit Wl 50. In dieser Figur ist anhand eines Zweiprozessor- System das Prinzip eines umschaltbaren Multiprozessorsystems beschrieben. In Figur 1 wird danach der allgemeine Fall einer Umschalt- und Vergleichseinheit für mehr als 2 Ausführungseinheiten beschrieben. Die vorgestellte Erfindung bezieht sich dabei immer auf den allgemeinen Fall mit 2 oder mehr Ausführungseinheiten. Die Ausführungseinheiten in Figur 6 sind jeweils über einen optionalen Zwischenspeicher Wl I Ia, Wl I Ib mit einer Vergleichseinheit W 120 und einer Umschalteinheit Wl 50 verbunden. Die Umschalteinheit W150 hat wenigstens zwei Ausgänge zu zwei Systemschnittstellen W130a, Wl 30b. Ü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 Ver- gleichsmodus VM und einem Performanzmodus PM. In einem Performanzmodus PM werden in den unterschiedlichen Ausführungseinheiten unterschiedliche Befehle, Programmsegmente oder Programme parallel ausgeführt. In diesem Betriebsmodus ist die Vergleichseinheit deaktiviert. Die Umschalteinheit Wl 50 ist in diesem Betriebsmodus so konfiguriert, dass jede Ausführungseinheit über den optionalen Zwischenspeicher mit ei- ner der Systemschnittstellen W130a, W130b verbunden ist. Über die Systemschnittstellen kann ein Resultat einer Ausführungseinheit in einen Speicher W 170 geschrieben werden oder auf einen Peripheriebaustein Wl 80, Wl 90 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, 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 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. In ei- nem Vergleichsmodus VM werden in beiden Ausfiihrungseinheiten Wl 10a, Wl 10b gleiche oder gleichartige Befehle, Programmsegmente oder Programme abgearbeitet. Über die optionalen Zwischenspeicher Wl I Ia, Wl I Ib werden die Ausgangssignale der Ausfiihrungseinheiten an die Vergleichseinheit W120 und an die Umschalteinheit Wl 50 ge- fiihrt. In der Vergleichseinheit werden die beiden Daten auf Übereinstimmung geprüft.
Nach erfolgtem Vergleich wird der Umschalteinheit über ein Statussignal W 125 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 Wl 55 ausgegeben werden. Dieses Fehlersignal kann anstatt von der Vergleichseinheit auch von der Umschalteinheit ausgegeben werden Wl 56. Die Umschaltung kann dabei entweder über die Ausführung von speziellen Umschaltinstruktionen, speziellen Instrik- tionssequenzen, explizit gekennzeichneten Instruktionen oder durch den Zugriff auf eine bestimmte Speicheradresse durch wenigstens einen der Ausführungseinheiten des Multi- prozessorsystems ausgelöst werden.
Weiter wird in Figur 1 eine verallgemeinerte Darstellung einer Umschalt- und Vergleichseinheit dargestellt, wie sie vorzugsweise verwendet werden soll. Von den n zu berücksichtigenden Ausfiihrungseinheiten gehen n Signale N 140,..., N14n an die Umschalt- und Vergleichskomponente N100. Diese kann bis zu n Ausgangssignale N160,..., N16n aus diesen Eingangssignalen erzeugen. Im einfachsten Fall, dem „reinen Performanzmo- dus", werden alle Signale N14i auf die entsprechenden Ausgangssignale N16i geleitet. Im entgegen gesetzten Grenzfall, dem „reinen Vergleichsmodus" werden alle Signale N 140,..., N14n nur auf genau eines der Ausgangssignale N16i geleitet.
An dieser Figur lässt sich darlegen, wie die verschiedenen denkbaren Modi entstehen können. Dazu ist in dieser Figur die logische Komponente einer Schaltlogik Nl 10 enthalten. Diese legt zunächst fest, wie viele Ausgangssignale es überhaupt gibt. Weiter legt die Schaltlogik Nl 10 fest, welche der Eingangssignale zu welchem der Ausgangssignale bei- tragen. 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 N 120 legt dann zu jedem der Ausgänge N16i fest, in welcher Form die Eingänge zu diesem Ausgangsignal beitragen. Um beispielhaft die verschiedenen Variationsmöglichkeiten zu beschreiben, sei ohne Beschränkung der Allgemeinheit angenommen, dass der Ausgang N 160 durch die Signale N141, ..., N 14m erzeugt wird. Falls m = 1 entspricht dies einlach einer Durchschaltung des Signals, falls m = 2 dann werden die Signale N141, N 142 verglichen. Dieser Vergleich kann synchron oder asjn- chron durchgeführt werden, er kann bitweise oder nur auf signifikante Bits oder auch mit einem Toleranzband durchgeführt werden.
Falls m >= 3 gibt es mehrere Möglichkeiten. Eine erste Möglichkeit besteht darin, alle
Signale zu vergleichen und bei Vorhandensein mindestens zweier verschiedener Werte einen Fehler zu detektieren, den man optional signalisieren kann. Eine zweite Möglichkeit besteht darin, dass man eine k aus m -Auswahl vornimmt (k >m/2). Diese kann durch Verwendung von Vergleichern realisiert werden. Optional kann ein Fehlersignal generiert werden, wenn eines der Signale als abweichend erkannt wird. Ein möglicherweise verschiedenes Fehlersignal kann generiert werden, wenn alle drei Signale verschieden sind. Eine dritte Möglichkeit besteht darin, diese Werte einem Algorithmus zuzuführen. Dies kann beispielsweise die Bildung eines Mittelwerts, eines Medianwert, oder die Verwendung eines fehlertoleranten Algorithmus (FTA) darstellen. Ein solcher FTA be- ruht darauf, Extremwerte der Eingangswerte weg zu streichen und eine Art der Mittelung über die restlichen Werte vorzunehmen. Diese Mittelung kann über die gesamte Menge der restlichen Werte, oder vorzugsweise über eine in HW leicht zu bildenden Teilmenge vorgenommen werden. In diesem Fall ist es nicht immer notwendig, die Werte tatsächlich zu vergleichen. Bei der Mittelwertbildung muss beispielsweise nur addiert und dividiert werden, FTM, FTA oder Median erfordern eine teilweise Sortierung. Gegebenenfalls kann auch hier bei hinreichend großen Extremwerten optional ein Fehlersignal ausgegeben werden
Diese verschiedenen genannten Möglichkeiten der Verarbeitung mehrerer Signale zu ei- nem Signal werden der Kürze wegen als Vergleichsoperationen bezeichnet.
Die Aufgabe der Verarbeitungslogik ist es also, die genaue Gestalt der Vergleichsoperation für jedes Ausgangssignal - und damit auch für die zugehörigen Eingangssignale - festzulegen. Die Kombination der Information der Schaltlogik NI lO (d.h. dieo. g. Funk- tion) und der Verarbeitungslogik (d.h. die Festlegung der Vergleichsoperation pro Ausgangssignal, d.h. pro Funktionswert) ist die Modusinformation und diese legt den Modus fest. 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 gegebe- nen Implementierung sinnvoll, man wird vorzugsweise die Zahl der erlaubten Modi einschränken. Zu betonen ist, dass im Fall von nur zwei Ausführungseinheiten, wo es nur einen Vergleichsmodus gibt, die gesamte Information auf nur ein logisches Bit kondensiert werden kann.
Eine Umschaltung von einem Performanz- in einen Vergleichsmodus ist im allgemeinen
Fall dadurch charakterisiert, dass Ausführungseinheiten, die im Performanzmodus auf verschiedene Ausgänge hin abgebildet werden, im Vergleichsmodus auf den gleichen Ausgang hin abgebildet werden. Vorzugsweise ist dies dadurch realisiert, dass es ein Teilsystem von Ausführungseinheiten gibt, bei dem im Performanzmodus alle Eingangs- Signale N14i, die im Teilsystem zu berücksichtigen sind, direkt auf korrespondierende
Ausgangssignale N16i geschalten werden, während sie im Vergleichsmodus alle auf einen Ausgang hin abgebildet sind. Alternativ kann eine solche Umschaltung auch dadurch realisiert werden, dass Paarungen geändert werden. Es ist dadurch dargestellt, dass man im allgemeinen Fall nicht von dem Performanzmodus und dem Vergleichsmodus spre- chen kann, obwohl man in einer gegebenen Ausprägung der Erfindung die Menge der erlaubten Modi so einschränken kann, dass dies der Fall ist. Man kann aber immer von einer Umschaltung vom Performanz- in den Vergleichsmodus (und umgekehrt) sprechen.
Zwischen diesen Modi kann, über Software gesteuert, dynamisch im Betrieb umgeschal- tet werden. Ausgelöst wird die Umschaltung dabei beispielsweise über die Ausführung von speziellen Umschaltinstruktionen, speziellen Instruktionssequenzen, explizit gekennzeichneten Instruktionen oder durch den Zugriff auf bestimmte Adressen durch wenigstens eine der Ausführungseinheiten des Multiprozessorsystems.
Es wird vorgeschlagen, dass die Überwachungsfunktionen in einem Vergleichsmodus ablaufen. Eine Überwachungsfiαnktion ist dabei eine Funktion, die die Funktion oder die Funktionslahigkeit einer Komponente, eines Teilsystems oder eines Objekts überprüft.
Diese Idee wird im Folgenden detaillierter dargestellt. In Figur 2 wird beschrieben, welche Komponenten in der Recheneinheit des erfindungsgemäßen Systems vorhanden sind. Die Recheneinheit O200 selbst enthält mehrere Aus- fiihrungseinheiten 0210, ... , 02 In. Zusätzlich ist eine Umschalt- und Vergleichseinheit O220 enthalten. Diese ist vorzugsweise als Komponente in der Recheneinheit vorhanden, sie kann jedoch auch auf verschiedene Komponenten verteilt sein, die sogar außerhalb der Recheneinheit selbst liegen können. Entscheidend ist es, dass die Recheinheit die von der Umschalt- und Vergleichseinheit benötigten Funktionen liefern kann, wie sie beispielsweise in der Beschreibung zu Figur 1 dargestellt wurden. Darüber hinaus laufen auf die- ser Recheneinheit Funktionen ab, die vorzugsweise in Software realisiert sind. Diese
Funktionen sind als Block O230 in der Figur neben die Recheneinheit O200 eingezeichnet, da sie begrifflich auf einer anderen Betrachtungsebene liegen.
In Figur 3 ist eine Unterteilung der Funktionen O230 dargestellt. Die Gesamtmenge O300 der Funktionen entspricht dabei O230. Diese kann man unterteilen in die Überwachungsfunktionen O320 und andere Funktionen 0310. In der einfachsten Form der Grundidee werden die Überwachungsfunktionen in einem Vergleichsmodus berechnet oder durchgeführt, während die anderen Funktionen in einem Performanzmodus durchgeführt werden.
Der wesentliche Vorteil hierbei ist, dass bei der Ausführung von Überwachungsfunktio- nen deren korrektes und fehlerfreies (bzgl. HW-Fehlern) Funktionieren mit überprüft wird. Man kann zusätzlich Fehler in der Überwachungsfunktion selbst detektieren Dadurch ist ein wesentlich vereinfachtes Sicherheitskonzept möglich. Eine Überwachung in Software erhält hier einen Abdeckungsgrad von 100% bezüglich Fehlern von Ausfüh- rungseinheiten, die sich in der Funktion überhaupt manifestieren. Da die hier beschriώe- nen Überwachungsfunktionen in Software ablaufen, ist eine Prämisse dafür, dass sie ihre Funktion korrekt erfüllen, dass das „Gehirn" (die Ausführungseinheit), auf dem sie laufen, korrekt arbeitet. Neben der Mitüberwachung dieser Ausführungseinheit wird dadurch auch die Qualität der der Überwachungsfunktion selbst verbessert. Da man bei der Eit- wicklung eines Sicherheitskonzepts dieses Problem (dass die Ausführungseinheit mit ü- berwacht werden muss) immer lösen muss, ist in der Regel ein recht großer Aufwand in die Detektion von Fehlern der Ausführungseinheit und den damit korrelierten Fehlern in der Überwachungsfunktion zu stecken. Dieser Aufwand ist in der Entwicklung zu leisten. Er schlägt sich aber auch im System selbst nieder in dem er zusätzliche oder aufwändige- re Komponenten benötigt und die Systemkomplexität erhöht. Sowohl Zuverlässigkeit als auch Sicherheit des Systems werden dadurch tendenziell eher negativ beeinflusst. Durch die Verwendung der hier beschriebenen Erfindung wird der Entwicklungsaufwand für das Sicherheits- oder Überwachungskonzept reduziert und die gesamte Systemkomplexität verringert. Mittelbar wird damit also neben einer Kostenreduktion dadurch noch Zuverlässigkeit und Sicherheit des Systems verbessert.
Eine weitere signifikante Verbesserung der Sicherheit ist durch den Einsatz dieser Erfindung in vielen Anwendungen darüber hinaus noch möglich, dass man diese Überwa- chungsfunktion mit dem aktuellen Kontext berechnet. Bei einer Ausführung der Überwachungsfunktion auf nur einer Ausführungseinheit ist zur Feststellung der Korrektheit der Überwachungsfunktion in der Regel ein Vergleich mit einem Referenzwert notwendig, der außerhalb der hier betrachteten Komponenten bekannt ist. In vielen Anwendungsfällen ist dies nur dadurch realisierbar, dass ein Defaultwert gerechnet wird, der in einer nichtflüchtigen Speicherkomponente abgespeichert ist. Dieser Wert wird zur Entwidc- lungszeit, d.h. nicht im Betrieb, berechnet und ist damit nur für den speziellen Kontext gültig, der hier angenommen wurde. Oft ist es aber auch der Fall, dass sich ein Fehler nur in einem bestimmten Kontext äußert. Beispielsweise ist ein Fehler in einer Multiplikationskomponente nicht immer dadurch zu erkennen, dass man zwei ganz bestimmte Zahlen miteinander multipliziert und das Ergebnis mit dem bekannten und abgespeicherten Wert vergleicht. Oft wirkt er sich nur dadurch aus, dass er bei speziellen Kombinationen von Eingangswerten ein falsches Ergebnis produziert. Eine Überwachungsfunktion, die sich auf einen solchen Defaultwert beschränkt, hat also eine reduzierte Fehlererkennung. Durch die Anwendung der Erfindung ist es möglich, die Überwachungsfunktion auch mit kontextabhängigen Werten zu versehen, da der notwendige Vergleich zur Detektion von
Fehlern in den Ausführungseinheiten durch die Umschalt- und Vergleichseinheit vorgenommen wird.
Es ist in den meisten Anwendungen vorteilhaft, die anderen Funktionen 0310 in einem Performanzmodus zu berechnen, da dann die Systemleistung optimiert wird.
Eine Variation dieser Idee ist in Figur 4 gezeigt. Die Teilmengen O301, 0311, 0321 entsprechen O300, 0310, O320 aus Figur 3. Die Teilmengen 0311 und 0321 sind nochmals zweigeteilt in die Mengen O350, O360 bzw. O330, O340. Die dahinter liegende Idee ist es, dass nicht alle Überwachungsfunktionen im Vergleichsmodus laufen müssen, sondern eventuell nur solche, fiir die die Überwachung der Ausfiihrungseinheit wesentlich ist. Diese sind mit O330 bezeichnet, während die andere (vorzugsweise sehr kleine) Teilmenge von Überwachungsfunktionen O340, für die die Überwachung der Ausführungs- einheit unwesentlich ist in einem Performanzmodus läuft. Entsprechend ist die Unterteilung von 0311 zu verstehen: 0350 können beispielsweise Funktionen sein, die direkt einen kritischen Aktor ansteuern. D.h., es ist auch möglich, dass ein Teil der Funktionen, die keine Überwachungsfunktionen sind, in einem Vergleichsmodus laufen. Diese werden in O350 zusammengefasst. Die verbleibenden Funktionen O360 laufen in einem Perftr- manzmodus.
Figur 5 beschreibt den grundsätzlichen Entscheidungsvorgang für den bevorzugten Fall, dass O340 leer ist und dass es nur einen Performanz- und einen Vergleichsmodus gibt.
Prämisse ist, dass die Menge der Überwachungsfunktionen bekannt 0311 ist. Dies führt dazu, dass man auf Task/Prozess/Thread-Ebene (im Folgenden nur Prozesse genannt) die Prozesse unterscheiden kann in V-Prozesse, die eine Überwachungsfunktion abarbeiten, und andere, im Folgenden P-Prozesse genannt. Unter den P-Prozessen gibt es noch solche, die, obwohl sie sich nicht auf eine Überwachungsfunktion beziehen, dennoch im Vergleichsmodus gerechnet werden sollen (sie entsprechen den Funktionen der Teilmenge O350). Diese werden im Folgenden als PV-Prozesse bezeichnet.
Im Schritt O400 ist der „Ruhezustand" des Schedulers eingenommen. Sobald der Schedu- ler im Schritt 0410 einen Prozess zum Scheduling bringt, ist die Entscheidung im Schritt O420 zu treffen, ob es sich um einen P-Prozess oder einen V-Prozess handelt. Falls es sich um einen V-Prozess handelt, wird dieser (im Schritt O460) im Vergleichsmodus bearbeitet, der Scheduler geht dann in seinen Ruhezustand zurück (nach Schritt O400). Falls es sich um einen P-Prozess handelt, ist als nächstes im Schritt O430 zu prüfen, ob es sich um einen PV-Prozess handelt. Falls dies der Fall ist, wird der Prozess (im Schritt O460) im Vergleichsmodus bearbeitet, der Scheduler geht dann in seinen Ruhezustand zurück
(nach Schritt O400). Falls dies nicht der Fall ist, wird der Prozess (im Schritt O440) im Performanzmodus bearbeitet. In diesem Fall muss im Schritt O450 noch eine Zuteilung zu einer Ausführungseinheit vorgenommen werden. Danach geht der Scheduler wieder in seinen Ruhezustand zurück (O400).

Claims

Ansprüche
1. Verfahren zur Überwachung von Funktionen eines Rechnersystems mit wenigstens zwei Ausfiihrungseinheiten, wobei zwischen wenigstens zwei Betriebsmodi umgeschaltet wird und ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht und eine erste Funktion von einer zweiten Funktion überwacht wird, dadurch gekennzeichnet, dass die zweite Funktion im Vergleichsmodus auf wenigstens zwei Ausführungseinheiten abgearbeitet wird und jede dieser zweiten Funktionen, die auf wenigstens zwei Ausführungseinheiten abgearbeitet werden die selbe erste Funktion überwacht.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die zweite Funktion die erste Funktion periodisch überwacht.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die erste Funktion im Per- formanzmodus abgearbeitet wird.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass Ergebnisse die bei der Abarbeitung der zweiten Funktion auf den wenigstens zwei Ausführungseinheiten entstehen jeweils miteinander verglichen werden und so die zweite Funktion über- wacht wird.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die zweiten Funktionen auf den wenigstens zwei Ausführungseinheiten anhand kontextabhängiger Werte abgearbeitet und dabei entstehende Ergebnisse verglichen werden.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass neben der zweiten Furkti- on, weitere Funktionen vorgesehen sind, welche andere Funktionen überwachen, wobei nur ein Teil der weiteren Funktionen im Vergleichsmodus auf den wenigstens zwei Ausführungseinheiten ausgeführt und damit selbst überprüft wird.
7. Vorrichtung zur Überwachung von Funktionen eines Rechnersystems mit wenigstens zwei Ausfiihrungseinheiten, wobei Umschaltmittel enthalten sind und zwischen wenigstens zwei Betriebsmodi umgeschaltet wird und Vergleichsmittel enthalten sind, wobei ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmo- dus einem Performanzmodus entspricht und eine erste Funktion von einer zweiten
Funktion überwacht wird, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass die zweite Funktion im Vergleichsmodus auf wenigstens zwei Ausfiihrungseinheiten abgearbeitet wird und jede dieser zweiten Funktionen, die auf wenigstens zwei Ausfiihrungseinheiten abgearbeitet werden die selbe erste Funktion ü- berwacht.
8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, dass diese derart ausgestaltet ist, dass Ergebnisse die bei der Abarbeitung der zweiten Funktion auf den wenigstens zwei Ausführungseinheiten entstehen durch die Vergleichsmittel jeweils miteinander verglichen werden und so die zweite Funktion überwacht wird.
9. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, dass diese derart ausgestaltet ist, dass die zweiten Funktionen auf den wenigstens zwei Ausführungseinheiten anhand kontextabhängiger Werte abgearbeitet und dabei entstehende Ergebnisse vergli- chen werden.
10. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, dass diese derart ausgestaltet ist, dass neben der zweiten Funktion, weitere Funktionen vorgesehen sind, welche andere Funktionen überwachen, wobei nur ein Teil der weiteren Funktionen im Ver- gleichsmodus auf den wenigstens zwei Ausführungseinheiten ausgeführt und damit selbst überprüft wird.
11. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, dass die Umschaltmittel und die Vergleichsmittel in einer Umschalt- und Vergleichseinheit zusammengefasst sind.
12. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, das die Umschalt- und Vergleichseinheit die Überwachung der zweiten Funktion durchführt.
PCT/EP2006/064742 2005-08-08 2006-07-27 Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems WO2007017396A2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP06778027A EP1915690A2 (de) 2005-08-08 2006-07-27 Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems
US11/990,097 US8108716B2 (en) 2005-08-08 2006-07-27 Method and device for monitoring functions of a computer system
JP2008525528A JP2009505186A (ja) 2005-08-08 2006-07-27 コンピュータシステムの機能監視方法および機能監視装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005037230A DE102005037230A1 (de) 2005-08-08 2005-08-08 Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems
DE102005037230.9 2005-08-08

Publications (2)

Publication Number Publication Date
WO2007017396A2 true WO2007017396A2 (de) 2007-02-15
WO2007017396A3 WO2007017396A3 (de) 2007-10-25

Family

ID=37680924

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/064742 WO2007017396A2 (de) 2005-08-08 2006-07-27 Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems

Country Status (9)

Country Link
US (1) US8108716B2 (de)
EP (1) EP1915690A2 (de)
JP (1) JP2009505186A (de)
KR (1) KR101031181B1 (de)
CN (1) CN101243403A (de)
DE (1) DE102005037230A1 (de)
RU (1) RU2008108475A (de)
TW (1) TW200736901A (de)
WO (1) WO2007017396A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8108716B2 (en) 2005-08-08 2012-01-31 Robert Bosch Gmbh Method and device for monitoring functions of a computer system

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011086530A1 (de) * 2010-11-19 2012-05-24 Continental Teves Ag & Co. Ohg Mikroprozessorsystem mit fehlertoleranter Architektur
EP2689375B1 (de) * 2011-03-21 2021-09-15 Irdeto B.V. System und verfahren zur sicheren bindung und knotenblockierung einer programmausführung an eine vertrauenswürdige signaturautorität
JP5541246B2 (ja) * 2011-07-21 2014-07-09 株式会社デンソー 電子制御ユニット
DE102012207215A1 (de) 2012-04-30 2013-10-31 Robert Bosch Gmbh Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems, vorzugsweise eines Motorsteuersystems eines Kraftfahrzeuges
KR101558280B1 (ko) 2013-09-02 2015-10-12 주식회사 팀스톤 계측 윈도우 제어 방법 및 이를 수행하는 사용자 단말
DE102013224702A1 (de) * 2013-12-03 2015-06-03 Robert Bosch Gmbh Steuergerät für ein Kraftfahrzeug
DE102013227165A1 (de) * 2013-12-27 2015-07-16 Siemens Aktiengesellschaft Überwachungsvorrichtung zur Überwachung eines Schaltkreises
DE102016125240A1 (de) * 2016-12-21 2018-06-21 Endress+Hauser SE+Co. KG Elektronische Schaltung für ein Feldgerät der Automatisierungstechnik
DE102018120344A1 (de) * 2018-08-21 2020-02-27 Pilz Gmbh & Co. Kg Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses
DE102020001561A1 (de) 2020-03-10 2021-09-16 Drägerwerk AG & Co. KGaA Medizingeräteanordnung mit einem Prüfmodul
DE102020119297A1 (de) 2020-07-22 2022-01-27 Endress+Hauser SE+Co. KG Verfahren zum Überwachen eines ersten Prozessors eines Sensormoduls durch einen zweiten Prozessor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10349581A1 (de) 2003-10-24 2005-05-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233615A (en) 1991-06-06 1993-08-03 Honeywell Inc. Interrupt driven, separately clocked, fault tolerant processor synchronization
US5751932A (en) 1992-12-17 1998-05-12 Tandem Computers Incorporated Fail-fast, fail-functional, fault-tolerant multiprocessor system
JPH08297588A (ja) * 1995-04-25 1996-11-12 Fujitsu Ltd 二重照合装置
US5875195A (en) * 1997-03-31 1999-02-23 International Business Machines Corporation Method and apparatus for error injection techniques
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
US6625749B1 (en) * 1999-12-21 2003-09-23 Intel Corporation Firmware mechanism for correcting soft errors
US6772368B2 (en) 2000-12-11 2004-08-03 International Business Machines Corporation Multiprocessor with pair-wise high reliability mode, and method therefore
DE10136335B4 (de) * 2001-07-26 2007-03-22 Infineon Technologies Ag Prozessor mit mehreren Rechenwerken
US7085959B2 (en) * 2002-07-03 2006-08-01 Hewlett-Packard Development Company, L.P. Method and apparatus for recovery from loss of lock step
JP2004259137A (ja) 2003-02-27 2004-09-16 Denso Corp 電子制御装置
US20070277023A1 (en) * 2003-06-24 2007-11-29 Reinhard Weiberle Method For Switching Over Between At Least Two Operating Modes Of A Processor Unit, As Well Corresponding Processor Unit
GB0325553D0 (en) * 2003-11-01 2003-12-03 Ibm Method and apparatus for activating/deactivating run-time determined software routines in Java compiled bytecode applications
CN101120320A (zh) * 2004-10-25 2008-02-06 罗伯特·博世有限公司 在具有至少两个执行单元的计算机系统中进行模式转换的设备和方法
KR20070083760A (ko) * 2004-10-25 2007-08-24 로베르트 보쉬 게엠베하 적어도 2개의 실행 유닛을 구비한 컴퓨터 시스템에서전환을 위한 방법 및 장치
KR100663864B1 (ko) * 2005-06-16 2007-01-03 엘지전자 주식회사 멀티-코어 프로세서의 프로세서 모드 제어장치 및 방법
DE102005037230A1 (de) 2005-08-08 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Überwachung von Funktionen eines Rechnersystems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10349581A1 (de) 2003-10-24 2005-05-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8108716B2 (en) 2005-08-08 2012-01-31 Robert Bosch Gmbh Method and device for monitoring functions of a computer system

Also Published As

Publication number Publication date
KR101031181B1 (ko) 2011-04-26
DE102005037230A1 (de) 2007-02-15
KR20080032168A (ko) 2008-04-14
EP1915690A2 (de) 2008-04-30
WO2007017396A3 (de) 2007-10-25
RU2008108475A (ru) 2009-09-20
US8108716B2 (en) 2012-01-31
JP2009505186A (ja) 2009-02-05
TW200736901A (en) 2007-10-01
CN101243403A (zh) 2008-08-13
US20100192021A1 (en) 2010-07-29

Similar Documents

Publication Publication Date Title
WO2007017396A2 (de) Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems
EP1917581B1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems
EP2079917B1 (de) Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors
EP2513796B1 (de) Verfahren zum betreiben einer recheneinheit
EP1794680A1 (de) Verfahren zur abarbeitung eines computerprogramms auf einem computersystem
EP1805617A1 (de) Verfahren zur abarbeitung eines computerprogramms auf einem computersystem
EP1817662B1 (de) Verfahren und vorrichtung zur umschaltung zwischen betriebsmodi eines multiprozessorsystems durch wenigstens ein externes signal
EP1955164A1 (de) Programmgesteuerte einheit und verfahren zum betreiben derselbigen
DE102007056218A1 (de) Verfahren zur Behandlung von transienten Fehlern in Echtzeitsystemen, insbesondere in Steuergeräten von Kraftfahrzeugen
EP3291094A1 (de) Prozessorsystem und verfahren zur überwachung von prozessoren
DE102006050715A1 (de) Verfahren und System zum Erzeugen eines gültigen Signals
DE102011007467A1 (de) Mehrkernige integrierte Mikroprozessorschaltung mit Prüfeinrichtung, Prüfverfahren und Verwendung
EP1917587B1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems
WO2007017372A1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten
WO2017153411A1 (de) Verfahren zum betreiben eines steuergeräts für ein kraftfahrzeug
EP2662773B1 (de) Redundantes Mehrprozessorsystem und zugehöriges Verfahren
EP1917596A1 (de) Verfahren und vorrichtung zur analyse von abläufen in einem rechnersystem mit mehreren 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
EP4281890A1 (de) Verfahren zur bestimmung der integrität einer datenverarbeitung, vorrichtung, datenverarbeitungsanlage und anlage
DE102010031017A1 (de) Verfahren zur Überwachung des Programmablaufs eines Prozessors
DE102005037259A1 (de) Verfahren und Vorrichtung zur Festlegung eines Startzustandes bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten durch Umschalten von Registersätzen
AT15180U1 (de) RAM Bitfehler Detektion
WO2007017393A2 (de) Verfahren und vorrichtung zur abarbeitung von datenwörtern und/oder instruktionen
DE102006048170A1 (de) Verfahren zur Erhöhung der Zuverlässigkeit eines Betriebssystems

Legal Events

Date Code Title Description
REEP Request for entry into the european phase

Ref document number: 2006778027

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2006778027

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 06778027

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 1020087003210

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2008525528

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 200680029402.8

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2050/DELNP/2008

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2008108475

Country of ref document: RU

WWP Wipo information: published in national office

Ref document number: 2006778027

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11990097

Country of ref document: US