DE10332700A1 - Method for switching between at least two operating modes of a processor unit and corresponding processor unit - Google Patents

Method for switching between at least two operating modes of a processor unit and corresponding processor unit Download PDF

Info

Publication number
DE10332700A1
DE10332700A1 DE10332700A DE10332700A DE10332700A1 DE 10332700 A1 DE10332700 A1 DE 10332700A1 DE 10332700 A DE10332700 A DE 10332700A DE 10332700 A DE10332700 A DE 10332700A DE 10332700 A1 DE10332700 A1 DE 10332700A1
Authority
DE
Germany
Prior art keywords
mode
processor unit
execution units
memory area
operating mode
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
DE10332700A
Other languages
German (de)
Inventor
Reinhard Weiberle
Bernd Mueller
Ralf Angerbauer
Rainer Gmehlich
Stefan Benz
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 DE10332700A priority Critical patent/DE10332700A1/en
Priority to PCT/DE2004/001299 priority patent/WO2005003962A2/en
Priority to US10/560,962 priority patent/US20070277023A1/en
Priority to JP2006515276A priority patent/JP4232987B2/en
Priority to EP04738748A priority patent/EP1639454A2/en
Priority to RU2006101719/09A priority patent/RU2006101719A/en
Priority to KR1020057024653A priority patent/KR20060026884A/en
Priority to BRPI0411824-3A priority patent/BRPI0411824A/en
Publication of DE10332700A1 publication Critical patent/DE10332700A1/en
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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • 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
    • 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, 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
    • 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

Abstract

Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit mit wenigstens zwei Ausführungseinheiten, dadurch gekennzeichnet, dass ein Wechsel von einem ersten Betriebsmodus in einen zweiten Betriebsmodus dadurch ausgelöst wird, dass durch die Prozessoreinheit auf eine vorgegebene Speicheradresse zugegriffen wird.Method for switching between at least two operating modes of a processor unit having at least two execution units, characterized in that a change from a first operating mode to a second operating mode is triggered by the fact that the processor unit accesses a predetermined memory address.

Description

Stand der TechnikState of technology

Die Erfindung geht aus von einem Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit sowie einer entsprechenden Prozessoreinheit mit wenigstens zwei integrierten Ausführungseinheiten gemäß den Oberbegriffen der unabhängigen Ansprüche.The The invention is based on a method for switching between at least two operating modes of a processor unit and a corresponding processor unit with at least two integrated execution units according to the preambles the independent one Claims.

Solche Prozessoreinheiten mit wenigstens zwei integrierten Ausführungseinheiten sind auch als Dual-Core- oder Multi-Core-Architekturen bekannt. Solche Dual-Core- oder Multi-Core-Architekturen werden nach heutigem Stand der Technik hauptsächlich aus zwei Gründen vorgeschlagen:
Zum Einen kann damit eine Leistungssteigerung, also eine Performance-Steigerung erreicht werden, indem die beiden Ausführungseinheiten oder Cores als zwei Recheneinheiten auf einem Halbleiterbaustein betrachtet und behandelt werden. In dieser Konfiguration bearbeiten die zwei Ausführungseinheiten oder Cores unterschiedliche Programme respektive Tasks. Dadurch lässt sich eine Leistungssteigerung erzielen, weshalb diese Konfiguration als Leistungsmodus oder Performance-Mode bezeichnet wird.
Such processor units with at least two integrated execution units are also known as dual-core or multi-core architectures. Such dual-core or multi-core architectures are proposed in the current state of the art mainly for two reasons:
On the one hand, an increase in performance, ie a performance increase, can be achieved by considering and treating the two execution units or cores as two arithmetic units on a semiconductor component. In this configuration, the two execution units or cores process different programs or tasks. As a result, an increase in performance can be achieved, which is why this configuration is referred to as a power mode or performance mode.

Der zweite Grund, eine Dual-Core- oder Multi-Core-Architektur zu realisieren, ist eine Sicherheitssteigerung, indem die beiden Ausführungseinheiten redundant das gleiche Programm abarbeiten. Die Ergebnisse der beiden Ausführungseinheiten oder CPUs, also Cores werden verglichen und ein Fehler kann bei dem Vergleich auf Übereinstimmung erkannt werden. Im Folgenden wird diese Konfiguration als Sicherheitsmodus oder Safety-Mode bezeichnet.Of the second reason to realize a dual-core or multi-core architecture, is an increase in security by the two execution units redundantly execute the same program. The results of the two Execution units or CPUs, so cores are compared and an error can be compared recognized for agreement become. In the following, this configuration becomes a security mode or safety mode.

Im Allgemeinen sind die beiden genannten Konfigurationen exklusiv auf der Dual- oder Multi-Core-Architektur enthalten, d. h. der Rechner mit den wenigstens zwei Ausführungseinheiten, wird prinzipiell nur in einem Modus betrieben, dem Performance-Modus oder dem Safety-Modus.in the Generally, the two configurations mentioned are exclusive to the dual or multi-core architecture, d. H. the computer with the at least two execution units, is basically only operated in one mode, the performance mode or the safety mode.

Aufgabe der Erfindung ist es, einen kombinierten Betrieb einer solchen Dual- oder Multi-Core-Prozessoreinheit bezüglich wenigstens zweier Betriebsarten zu ermöglichen und dabei eine optimierte Umschaltstrategie, insbesondere zwischen einem Sicherheitsmodus zur Sicherheitssteigerung und einem Leistungsmodus zur Leistungssteigerung zu erzielen.task The invention is to provide a combined operation of such a dual or multi-core processor unit in terms of at least two modes of operation and thereby an optimized switching strategy, especially between a security mode to increase security and to achieve a performance mode for enhancing performance.

Vorteile der ErfindungAdvantages of invention

Es ist zum Einen aus Sicherheitsgründen eine redundante Ausführung der Programme respektive Tasks erwünscht, andererseits ist aus Kostengründen das Bereithalten von redundanter Hardware bei der Ausführung der nicht sicherheitskritischen Funktionen nicht erstrebenswert. Dieser Zielkonflikt wird erfindungsgemäß durch eine optimierte Umschaltung zwischen wenigstens zwei Betriebsmodi und einer Prozessoreinheit gelöst. So geht die Erfindung von einem Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit mit wenigstens zwei Ausführungseinheiten sowie entsprechender Prozessoreinheit aus.It is for safety reasons one redundant design the programs respectively tasks desired, on the other hand is off cost reasons the provision of redundant hardware in the execution of the not safety-critical functions not desirable. This Target conflict is inventively an optimized switching between at least two operating modes and a processor unit solved. Thus, the invention of a method for switching between at least two operating modes of a processor unit with at least two execution units as well corresponding processor unit.

Vorteilhafter Weise wird die Umschaltung von einem ersten in einen zweiten Betriebsmodus dadurch realisiert, dass auf eine vorgegebene, als Umschalttrigger wirkende Speicheradresse zugegriffen wird. D. h. es werden Hardwarekomponenten wie Umschaltmittel (Mode Selektor) oder Vergleichsmittel und ein entsprechendes Verfahren vorgestellt, wie im Betrieb zwischen sicherheitskritischen Programmen, welche also im Sicherheitsmodus redundant ausgeführt werden und nicht sicherheitskritischen Programmen, welche im Leistungsmodus unabhängig voneinander auf beiden Ausführungseinheiten ausgeführt werden, optimal umgeschaltet werden kann.Favorable Way, the switching from a first to a second mode of operation is characterized realized that on a given, acting as a changeover trigger Memory address is accessed. Ie. it will be hardware components as switching means (mode selector) or comparison means and a corresponding method presented as in operation between safety-critical Programs, which are therefore redundant in safety mode and non safety-critical programs that are in performance mode independently of each other on both execution units accomplished can be optimally switched.

Dabei werden die gleichen Programme im ersten Betriebsmodus durch die wenigstens zwei Ausführungseinheiten synchron abgearbeitet und durch vorgesehene Vergleichsmittel dahingehend überprüft, dass die bei der Abarbeitung der gleichen Programme entstehenden Zustände der Ausführungseinheiten übereinstimmen. Bei Abweichungen diesbezüglich sind dann verschiedene Fehlerreaktionen von einer Fehleranzeige über einen Notbetrieb bis hin zur Abschaltung der fehlerhaften Einheit denkbar.there the same programs are in the first operating mode by the at least two execution units processed synchronously and verified by provided comparison means to the effect that the conditions of the processing of the same programs Match execution units. In case of deviations in this regard are then different error responses from an error display via a Emergency operation up to the shutdown of the faulty unit conceivable.

In einer speziellen Ausführungsform entspricht dem ersten Betriebsmodus der Sicherheitsmodus und dem zweiten Betriebsmodus der Leistungsmodus. Eine Umschaltung vom zweiten Betriebsmodus in den ersten Betriebsmodus erfolgt dabei zweckmäßiger Weise durch eine Unterbrechungsanforderung, insbesondere ausgelöst durch ein Unterbrechungsmittel, wobei die Unterbrechungsanforderung einerseits durch eine Zeitbedingung auslösbar ist oder auch durch eine Zustandsbedingung, also einem bestimmten Zustand wenigstens einer der beiden Ausführungseinheiten oder auch dem Auftreten eines bestimmten Ereignisses entspricht.In a special embodiment corresponds to the first mode of operation of the safety mode and the second mode of operation of the power mode. A switch from the second Operating mode in the first operating mode is carried out expedient manner by an interrupt request, in particular triggered by a Interrupt means, the interrupt request on the one hand triggered by a time condition is or by a conditional condition, ie a certain State of at least one of the two execution units or the Occurrence of a particular event.

Vorteilhafter Weise erfolgt eine spezielle Aufteilung in wenigstens drei getrennte Speicherbereiche, wobei die Ausführungseinheiten abhängig vom jeweiligen Betriebsmodus auf einen ersten Speicherbereich oder einen zweiten Speicherbereich Zugriff haben, respektive mit diesem in Verbindung stehen. Dabei ist zweckmäßiger Weise in einer speziellen Ausführungsform jeder der wenigstens zwei Ausführungseinheiten jeweils ein erster Speicherbereich auf der Prozessoreinheit zugeordnet, mit welchen diese im ersten Betriebsmodus, also insbesondere dem Sicherheitsmodus, in Verbindung stehen bzw. darauf zugreifen. Im zweiten Betriebsmodus haben beide Ausführungseinheiten nur auf einen, beiden Ausführungseinheiten zugeordneten zweiten Speicherbereich Zugriff bzw. stehen mit diesem in Verbindung.Advantageously, a special division takes place into at least three separate memory areas, wherein the execution units have access to a first memory area or a second memory area depending on the respective operating mode, or are in contact therewith. It is expedient manner in a special Embodiment of each of the at least two execution units each associated with a first memory area on the processor unit, with which these in the first operating mode, ie in particular the security mode, in connection or access it. In the second operating mode, both execution units have access to or communicate with only one second memory area assigned to both execution units.

Zweckmäßiger Weise sind nun Überwachungsmittel, insbesondere die Umschaltmittel selber derart vorgesehen, dass überwacht wird, dass im jeweiligen Betriebsmodus nur auf die entsprechenden Speicherbereiche zugegriffen wird bzw. die entsprechende Verbindung zu den Speicherbereichen besteht. D. h. im zweiten Betriebsmodus greifen die Auswertemittel nur auf den zweiten Speicherbereich zu und nicht auf die ersten Speicherbereiche, und im ersten Betriebsmodus erfolgt der Zugriff nur auf die jeweiligen ersten Speicherbereiche, und nicht auf den zweiten Speicherbereich, was durch vorgenannte Überwachungsmittel überprüft und in eventuell entsprechende Fehlerreaktionen wie Fehlermeldung, Notbetrieb oder Abschaltung sanktioniert wird.Appropriate way are now monitoring devices, in particular the switching means itself provided in such a way that monitors is that in the respective operating mode only to the appropriate Memory areas is accessed or the corresponding connection to the storage areas exists. Ie. in the second operating mode access the evaluation only to the second memory area and not to the first memory areas, and in the first mode of operation access is only to the respective first storage areas, and not on the second memory area, which is checked by the aforementioned monitoring means and in possibly corresponding error reactions such as error message, emergency operation or shutdown is sanctioned.

Dabei ist jeder der genannten drei Speicherbereiche, also die wenigstens zwei ersten Speicherbereiche sowie der zweite Speicherbereich in einem getrennten Speicherbaustein vorgesehen, so dass wenigstens drei Speicherbausteine auf der Prozessoreinheit zur Verfügung stehen. Dabei sind zweckmäßiger Weise die sicherheitskritischen Programme jeweils in einem ersten Speicherbereich, und die nicht sicherheitskritischen Programme im zweiten Speicherbereich abgelegt, wobei zweckmäßiger Weise die vorgegebene Speicheradresse, welche die genannte Triggerfunktion bezüglich der Umschaltung aufweist, in dem zweiten Speicherbereich enthalten ist.there is any of the three memory areas mentioned, so at least two first memory areas and the second memory area in a separate memory module provided so that at least three memory modules are available on the processor unit. These are expedient way the safety-critical programs each in a first storage area, and the non-safety-critical programs in the second memory area filed, where appropriate manner the default memory address, which is the named trigger function in terms of the switching comprises, is included in the second memory area.

Ein weiterer Vorteil ergibt sich, wenn für den Vergleich der Zustände der Ausführungseinheiten im ersten Betriebsmodus explizite Vergleichsmittel auf der Prozessoreinheit vorgesehen sind und diese Vergleichsmittel nur im ersten Betriebsmodus in Funktion sind und beim Übergang in den zweiten Betriebsmodus außer Funktion gesetzt werden, so dass im nichtredundanten, nicht sicherheitskritischen Betrieb kein Vergleich und damit keine unter Umständen provozierte Fehlerreaktion erfolgt.One Another advantage arises when comparing the states of execution units in the first operating mode, explicit comparison means on the processor unit are provided and these comparison means only in the first mode of operation are in function and in transition in the second operating mode except Function are set so that in nonredundant, not safety critical Operation no comparison and thus under no circumstances provoked Error reaction occurs.

Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus den Merkmalen der Ansprüche sowie den Inhalten von Beschreibung und Zeichnung.Further Advantages and advantageous embodiments will be apparent from the features the claims as well as the contents of description and drawing.

Zeichnungdrawing

Die Erfindung wird nachfolgend anhand der in der Zeichnung dargestellten Figuren näher erläutert. Dabei zeigtThe Invention will now be described with reference to the drawing Figures closer explained. It shows

1 eine erfindungsgemäße Prozessoreinheit mit wenigstens zwei Ausführungseinheiten und den erfindungsgemäßen Hardwarekomponenten. 1 a processor unit according to the invention with at least two execution units and the hardware components according to the invention.

2 offenbart eine Umschaltung vom Sicherheitsmodus in den Leistungsmodus, wohingegen 2 discloses a switch from the safety mode to the power mode, whereas

3 eine Umschaltung vom Leistungsmodus in den Sicherheitsmodus darstellt. 3 represents a changeover from power mode to safety mode.

Beschreibung der Ausführungsbeispieledescription the embodiments

In Steuerungsanwendungen, insbesondere auf dem Gebiet der Kraftfahrzeugsteuerung, wie Motorsteuerung, Bremsensteuerung oder auch Lenkung und Getriebe usw., aber ebenso in Industrieanwendungen wie der Automatisierung oder im Werkzeugmaschinenbereich gibt es im Allgemeinen Softwaretasks oder Programme, die eine redundante Ausführung aus Sicherheitsgründen erfordern, um das Auftreten von Fehlern zu erkennen. Solche sicherheitskritischen Anwendungen weisen aber neben diesen sicherheitskritischen Programmen auch Softwarebestandteile oder Programme auf, die auch fehlerhaft sein dürfen, da sie nicht für das Erbringen der sicherheitskritischen Funktion selbst nötig sind bzw. damit befasst sind, sondern nur eine zusätzliche Funktion, insbesondere eine Komfortfunktion erbringen. Aus Sicherheitsgründen ist eine redundante Ausführung erwünscht, aus Kostengründen das Bereithalten von redundanter Hardware nicht erstrebenswert. Erfindungsgemäß wird diese Problemstellung durch das optimierte Umschalten zwischen wenigstens zwei Betriebsmodi, der Prozessoreinheit, wie bereits in den Vorteilen beschrieben und nachfolgend näher erläutert, gelöst.In Control applications, in particular in the field of vehicle control, such as engine control, brake control or steering and transmission etc., but also in industrial applications such as automation or in the machine tool area, there are generally software tasks or programs that require redundant execution for security reasons, to detect the occurrence of errors. Such safety-critical Applications have but in addition to these safety-critical programs also software components or programs that are also buggy allowed to, since she is not for the provision of the safety-critical function itself are necessary or are concerned, but only an additional function, in particular to provide a comfort function. For security reasons a redundant design is desired, off cost reasons not willing to keep redundant hardware available. According to the invention this Problem by the optimized switching between at least two operating modes, the processor unit, as already in the advantages described and below explains solved.

Somit wird im Folgenden der Einsatz der Erfindung in einem sicherheitskritischen System, beispielsweise einem fahrzeugimmanenten System wie Bremse, Lenkung, Getriebe oder Motor dargestellt. Die erfindungsgemäße Prozessoreinheit des Systems besteht dabei aus einer Dual-Core-Architektur entsprechend 1, also einer Prozessoreinheit 100 mit wenigstens zwei Ausführungseinheiten 101 und 102 (CPU1 und CPU2). Den beiden Ausführungseinheiten 101, 102, also CPU1 und CPU2 sind in diesem Beispiel jeweils ein Arbeitsspeicher 110 bzw. 111 zugeordnet, auch als RAM1 und RAM2 bezeichnet. Beide Ausführungseinheiten 101 und 102 sind mit einem Vergleichsmittel, einem Vergleicher 170 verbunden. Jede Ausführungseinheit hat weiterhin eine Verbindung zu einem Umschaltmittel, einem Mode-Selektor 130 bzw. 131, mit welchem auch der Vergleichsbaustein, das Vergleichsmittel 170 Verbindungen aufweist. Über jeweils einen Bus 140 bzw. 141 ist der jeweils flüchtige Arbeitsspeicher 110 bzw. 111 sowie die Umschaltmittel 130 und 131 mit jeweils einem ersten Speichermittel 150 bzw. 151 sowie einem zweiten Speichermittel 180 verbunden.Thus, the use of the invention in a safety-critical system, such as a vehicle-intrusive system such as brake, steering, transmission or engine is shown below. The processor unit according to the invention of the system consists of a dual-core architecture accordingly 1 So a processor unit 100 with at least two execution units 101 and 102 (CPU1 and CPU2). The two execution units 101 . 102 So CPU1 and CPU2 are each a memory in this example 110 respectively. 111 also referred to as RAM1 and RAM2. Both execution units 101 and 102 are with a comparison means, a comparator 170 connected. Each execution unit also has a connection to a switching means, a mode selector 130 respectively. 131 , with which also the comparison block, the comparison means 170 Compounds has. About one bus each 140 respectively. 141 is ever because volatile memory 110 respectively. 111 as well as the switching means 130 and 131 each with a first storage means 150 respectively. 151 and a second storage means 180 connected.

In diesem Ausführungsbeispiel werden zwei Betriebssysteme verwendet, eines für die sicherheitskritischen Programme oder Tasks und eines für die nicht sicherheitskritischen Programme oder Tasks. Als Betriebssystem für die sicherheitskritischen Programme wird beispielsweise OSEKtime OS, und als Betriebssystem für die nicht sicherheitskritischen Tasks beispielsweise OSEK OS verwendet.In this embodiment Two operating systems are used, one for the safety critical Programs or tasks and one for the non-safety-critical programs or tasks. As operating system for the safety-critical programs, for example, OSEKtime OS, and as the operating system for the non-safety-critical tasks used for example OSEK OS.

Die Anwendungssoftware ist, wie bereits erwähnt, aufgeteilt in sicherheitskritische Programme und nicht sicherheitskritische Programme. Alle Programme oder Tasks, die als nicht sicherheitskritisch eingestuft sind, dürfen versagen, fehlerhaft ausgeführt oder überhaupt nicht ausgeführt werden. Eine Gefährdung des Gesamtsystems bzw. der Umgebung ist dadurch nicht möglich. Der sichere Betrieb des Gesamtsystems wird alleine durch die als sicherheitskritisch eingestuften Programme respektive Tasks möglich. Allerdings besteht die Möglichkeit, dass der Betrieb, sofern er alleine durch die sicherheitskritischen Tasks bzw. Programme durchgeführt wird, zu einem Qualitätsverlust der Gesamtfunktion führt, die allerdings innerhalb vorgebbarer Toleranzen als tolerierbar eingestuft wurde.The Application software is, as already mentioned, divided into safety-critical Programs and non-safety-critical programs. All programs or tasks classified as non-safety critical may fail to incorrectly executed or at all not executed become. A danger of the entire system or the environment is not possible. Of the safe operation of the entire system is alone by the safety as critical classified programs or tasks possible. However, there is the Possibility that the operation, provided he alone by the safety-critical tasks or programs is carried out, to a loss of quality the overall function leads, however within tolerable tolerances as tolerable was classified.

Die sicherheitsrelevanten, also die sicherheitskritischen Tasks oder Programme werden redundant auf beiden Ausführungseinheiten 101 und 102, also beiden CPUs, CPU1 und CPU2 ausgeführt. Dabei werden diese Programme unter der Kontrolle des ersten Betriebssystems, hier OSEKtime OS abgearbeitet. Dazu ist der in 1 dargestellte nicht flüchtige Speicherbereich 150 bzw. 151 in zwei Teile verdoppelt, so dass entsprechend zweier Ausführungseinheiten zwei erste Speicherbereiche 150 und 151 vorliegen. In diesen ersten Speicherbereichen liegen die sicherheitskritischen Programme respektive Tasks verdoppelt, also redundant. D. h. jede der sicherheitskritischen Tasks ist zum Einen im Speicherbereich 150 und zum Anderen im Speicherbereich 151 lokalisiert. Dabei kann insbesondere das erste Betriebssystem selbst als sicherheitskritisch eingestuft werden und wird somit ebenfalls in beiden Speicherbereichen abgelegt. D. h. in unserem Beispiel, dass das Betriebssystem OSEKtime OS zum Einen im Speicherbereich 150 und zum Anderen im Speicherbereich 151 jeweils abgelegt ist. Dabei sind die beiden ersten Speicherbereiche in einer besonderen Ausführung jeweils als eigener nicht flüchtiger Speicherbaustein ROM1 bzw. ROM2 ausgeführt, welche als ROM, PROM, EPROM, EEPROM, Flash-EPROM usw. ausgeführt werden können.The safety-relevant, ie the safety-critical tasks or programs become redundant on both execution units 101 and 102 , so both CPUs, CPU1 and CPU2 running. These programs are processed under the control of the first operating system, here OSEKtime OS. This is the in 1 illustrated non-volatile memory area 150 respectively. 151 doubled in two parts, so that corresponding to two execution units two first memory areas 150 and 151 available. In these first memory areas, the safety-critical programs or tasks are duplicated, ie redundant. Ie. Each of the safety-critical tasks is on the one hand in the memory area 150 and on the other hand in the memory area 151 localized. In this case, in particular the first operating system itself can be classified as safety-critical and is therefore likewise stored in both memory areas. Ie. in our example, that the operating system OSEKtime OS on the one hand in the memory area 150 and on the other hand in the memory area 151 is stored in each case. In this case, the two first memory areas are each designed as a separate nonvolatile memory module ROM1 or ROM2 in a particular embodiment, which can be implemented as ROM, PROM, EPROM, EEPROM, flash EPROM, etc.

Dabei ist nicht zwingend eine Doppelablage der sicherheitskritrischen Programme oder Tasks erforderlich. Diese können auch durch Einsatz eines ECC-Codes (Error Code and Correction) abgesichert sein. Solche Methoden zur Fehlererkennung bei einem Speicher sind vielfältig, wobei die Grundvoraussetzung die Absicherung mit einem Fehlererkennungs- bzw. Fehlerkorrekturcode, also einer Signatur darstellt. Im einfachsten Fall kann diese Signatur nur aus einem Signaturbit, beispielsweise einem Paritybit bestehen. Andererseits kann die Absicherung auch durch komplexere ED-Codes (Error Detection) wie einen Berger-Code oder einen Bose-Lin-Code usw., oder auch durch einen komplexeren ECC-Code wie beispielsweise einen Hamming-Code, usw. realisiert werden, um durch entsprechende Bitzahl eine sicherere Fehlererkennung zu ermöglichen. Es kann aber auch als Codegenerator, beispielsweise eine Generatortabelle (fest verdrahtet oder in Software) verwendet werden, um bestimmten Eingangsmustern der Bits im Rahmen der Adresse ein gewünschtes Codemuster beliebiger Länge zuzuordnen. Damit kann, insbesondere durch die Korrekturfunktion die Datensicherheit im Speicher gewährleistet werden und eine Doppelablage vermieden werden. Dennoch erfolgt eine redundante Abarbeitung der sicherheitskritischen Programme in den beiden Ausführungseinheiten, wodurch Fehler in den Cores, also den Ausführungseinheiten durch Vergleich auf Übereinstimmung erfindungsgemäß aufgedeckt werden, wobei für diesen Fall der Erfindung entgegen 1 nur ein erster Speicherbereich notwendig ist.It is not necessarily a double storage of safety-critical programs or tasks required. These can also be protected by using an ECC code (Error Code and Correction). Such methods for error detection in a memory are diverse, the basic requirement is the protection with an error detection or error correction code, ie a signature. In the simplest case, this signature can only consist of a signature bit, for example a parity bit. On the other hand, the protection can also be realized by more complex ED codes (Error Detection) such as a Berger code or a Bose-Lin code, etc., or even by a more complex ECC code such as a Hamming code, etc. to allow a safer error detection by appropriate number of bits. However, it can also be used as a code generator, for example a generator table (hardwired or in software), to assign a desired code pattern of any length to certain input patterns of the bits in the context of the address. This can be ensured in particular by the correction function, the data security in memory and a double storage can be avoided. Nevertheless, there is a redundant processing of the safety-critical programs in the two execution units, which errors in the cores, so the execution units are revealed by comparison according to the invention, in which case contrary to the invention 1 only a first storage area is necessary.

Die nicht sicherheitsrelevanten bzw. sicherheitskritischen Programme oder Tasks werden zur Leistungserhöhung auf beiden Ausführungseinheiten, also CPUs verteilt berechnet und unter der Kontrolle des jeweiligen Subbetriebsystems, also hier des OSEK-Subsystems ausgeführt. Insbesondere läuft somit auf jede der beiden Ausführungseinheiten ein unabhängiges Betriebssystem, hier ein unabhängiges OSEK-System. Der zweite Speicherbereich 180, in dem sich die nicht sicherheitskritischen Programme bzw. Tasks befinden, ist einfach vorhanden. Er wird von beiden Ausführungseinheiten 101 bzw. 102 benützt bzw. es wird von beiden auf ihn zugegriffen. Auch dieser zweite Speicherbereich kann in einer besonderen Ausführungsform als eigener nicht flüchtiger Speicherbaustein ROM3 ausgebildet sein und als ROM, PROM, EPROM, EEPROM, Flash-EPROM usw. ausgestaltet werden.The non-safety-relevant or safety-critical programs or tasks are calculated to increase performance on both execution units, so CPUs distributed and executed under the control of the respective sub-operating system, so here the OSEK subsystem. In particular, an independent operating system, here an independent OSEK system, thus runs on each of the two execution units. The second memory area 180 , in which the non-safety-critical programs or tasks are located, is simply present. He is from both execution units 101 respectively. 102 used or accessed by both. In a particular embodiment, this second memory area can also be embodied as a separate non-volatile memory module ROM3 and configured as ROM, PROM, EPROM, EEPROM, flash EPROM, etc.

Dabei können die Speicherbereiche, also die ersten und zweiten Speicherbereiche so ausgebildet sein, dass die ersten Speicherbereiche bzw. der erste Speicherbereich (bei ECC Absicherung) beispielsweise zwischen 0 und X bezogen auf die Adressen und der zweite Speicherbereich von X + 1 bis Y ebenfalls bezogen auf die Adressen ausgebildet sind. Im weiteren wird von einem verdoppelten ersten Speicherbereich ausgegangen, wobei wie vorher erläutert auch nur ein einzelner erster abgesicherter Speicherbereich Einsatz finden kann. Dann ist, wie schon gesagt, der erste Speicherbereich von 0 bis X doppelt eben jeweils in einem ersten Speicherbereich vorhanden. Dabei ist jeder erste Speicherbereich einer Ausführungseinheit konkret zugeordnet.In this case, the memory areas, that is, the first and second memory areas may be designed so that the first memory areas or the first memory area (for ECC protection), for example, between 0 and X based on the addresses and the second memory area of X + 1 to Y also related are formed on the addresses. In the further will of a doubled first Memory area assumed, and as previously explained, only a single first secured memory area can be used. Then, as already stated, the first memory area from 0 to X is present twice in each case in a first memory area. Each first memory area is assigned to an execution unit concretely.

Im ersten Betriebsmodus, hier im Beispiel dem Sicherheitsmodus, laufen auf beiden Ausführungseinheiten, also beiden CPUs 101 und 102 redundant und insbesondere synchron die sicherheitskritischen Programme bzw. Tasks ab. Im Vergleichsmittel, dem Vergleicher 170, werden die jeweiligen CPU-Zustände miteinander verglichen. Dabei können bestimmten Programmphasen bestimmte Zustände zugeordnet sein, die dann zeitunkritisch, also zu einem beliebigen Zeitpunkt verglichen werden können, sofern diese zwischengespeichert und beispielsweise durch eine Kennung eindeutig zuordenbar sind, verglichen werden können. Im bevorzugten Fall aber werden die sicherheitskritischen Programme respektive Tasks nicht nur redundant, sondern synchron abgearbeitet, so dass im Betrieb direkt ein Vergleich der jeweiligen Zustände der Ausführungseinheiten durchgeführt werden kann. Die neuen Befehle und/oder Daten werden dann entsprechend aus dem jeweilig zugeordneten ersten Speicherbereich 150 respektive 151 geladen und abgearbeitet. Im Vergleicher 170 werden die CPU-Zustände auf Übereinstimmung geprüft, wobei bei einer Abweichung der Zustände, die sich entsprechen sollten, auf Fehler erkannt wird. Als Fehlerreaktion ist zum Einen eine Fehleranzeige bezüglich des jeweiligen Systems, in dem die Prozessoreinheit verbaut ist, möglich und zum Anderen Fehlerreaktionen wie ein Notbetrieb, also das Betreiben des Systems, dem die Prozessoreinheit innewohnt, in einem abgesicherten Notbetrieb, beispielsweise mit extra dafür vorgesehenen Programmen und/oder Daten. Dabei kann auch bei einer weitergehenden Fehlerauswertung, z. B. einem n- aus m-Test, wobei n und m natürliche Zahlen sind und n > 2 sowie m > n > m/2 oder auch einem 1 aus k-Code, wobei k einer natürlichen Zahl > 1 entspricht. Wird beispielsweise durch solch einen Test eindeutig eine Ausführungseinheit als fehlerhaft erkannt, kann als weitere Fehlerreaktion auch ein Abschalten dieser Ausführungseinheit und Notbetrieb der verbliebenen Einheit oder ein Umschalten der fehlerhaften Ausführungseinheit in den Notbetrieb erfolgen.In the first operating mode, in this example the safety mode, run on both execution units, so both CPUs 101 and 102 redundant and in particular synchronously the safety-critical programs or tasks. In the comparison means, the comparator 170 , the respective CPU states are compared with each other. In this case, certain states of the program can be assigned specific states which can then be compared in a non-time-critical manner, that is to say at any time, provided that they are buffered and can be unambiguously assigned, for example, by an identifier. In the preferred case, however, the safety-critical programs or tasks are processed not only redundantly, but synchronously, so that a comparison of the respective states of the execution units can be performed directly during operation. The new commands and / or data are then correspondingly from the respectively associated first memory area 150 respectively 151 loaded and processed. In the comparator 170 the CPU states are checked for coincidence, and if there is a deviation of the states that should correspond, errors are detected. As a fault reaction on the one hand, an error message regarding the respective system in which the processor unit is installed, possible and on the other error responses such as an emergency operation, ie operating the system, the processor unit inherent in a safe emergency operation, for example, with extra dedicated programs and / or data. It can also be used in a further error analysis, z. An n-out m-test, where n and m are natural numbers and n> 2 and m>n> m / 2 or else a 1 from k-code, where k corresponds to a natural number> 1. If, for example, such an test unambiguously identifies an execution unit as faulty, a shutdown of this execution unit and emergency operation of the remaining unit or a switchover of the faulty execution unit into emergency operation can also take place as a further error reaction.

Im Safety-Mode, also dem Sicherheitsmodus oder allgemeiner dem ersten Betriebsmodus, ist ein Zugriff der Ausführungseinheiten nur auf Adressen bzw. Daten in den ersten Speicherbereichen zulässig. D. h. die jeweilige Ausführungseinheit darf im ersten Betriebsmodus nur auf den, insbesondere ihr zugeordneten, ersten Speicherbereich zugreifen. Dies wird durch Überwachungsmittel, insbesondere die Umschaltmittel oder Mode-Selektoren 130 respektive 131 bzw. Überwachungsmittel in den Mode-Selektoren 130 und 131 überprüft. Treten hierbei Fehler auf, ist eine vergleichbare Fehlerreaktion, wie oben beschrieben, bezüglich eines Vergleichfehlers bei Übereinstimmung der CPU-Zustände denkbar und vorsehbar. D. h. aber auch, dass die Umschaltmittel, also hier die Mode-Selektoren 130 respektive 131 für diesen Fall des ersten Betriebsmodus eine Verbindung in den jeweils zugehörigen ersten Speicherbereich 150 respektive 151 via Bus 140 respektive 141 herstellen bzw. eine entsprechende Zugriffsverletzung überwachen.In safety mode, that is to say the safety mode or, more generally, the first operating mode, access of the execution units is permitted only to addresses or data in the first memory areas. Ie. In the first operating mode, the respective execution unit may only access the first memory area, in particular assigned to it. This is done by monitoring means, in particular the switching means or mode selectors 130 respectively 131 or monitoring means in the mode selectors 130 and 131 checked. If errors occur in this case, a comparable error reaction, as described above, with respect to a comparison error in accordance with the CPU states is conceivable and predictable. Ie. but also that the switching means, so here the mode selectors 130 respectively 131 for this case of the first operating mode, a connection into the respectively associated first memory area 150 respectively 151 via bus 140 respectively 141 or monitor a corresponding access violation.

Im zweiten Betriebsmodus dieses Ausführungsbeispiels werden die nicht sicherheitskritischen Programme respektive Tasks abgearbeitet. Auf beiden Ausführungseinheiten, also den CPUs 1 und 2 (101, 102) laufen verschiedene nicht sicherheitskritische Programme. Dazu gehört beispielsweise auch das Betriebssystem selbst für den zweiten Betriebsmodus, also das OSEK-Subsystem. Die beiden Ausführungseinheiten oder CPUs teilen sich damit einen nicht flüchtigen zweiten Speicherbereich, der, wie vorher beschrieben, ausgebildet sein kann. Allerdings ist jedem CPU ein eigener flüchtiger Arbeitsspeicherbereich RAM1 und RAM2, 110 respektive 111 zugeordnet. Da entsprechende solche nicht sicherheitskritische Programme nicht oder nicht alle doppelt ausgeführt sind, besteht zumindest theoretisch die Möglichkeit, dass sich beide Ausführungseinheiten gegenseitig durch Warten auf Freigabe einer Ressource blockieren. Dem ist durch geeignete Verteilung der Tasks bzw. Programme, beispielsweise nach einem Schedule auf die Ausführungseinheiten 101 und 102 entgegenzuwirken. Dabei sind auch weitere Maßnahmen wie beispielsweise ein abwechselnder Zugriff oder ein abhängig vom jeweiligen Programm priorisierter Zugriff usw. möglich. In diesem zweiten Betriebsmodus, dem Leistungsmodus gemäß unserem Ausführungsbeispiel ist kein Zugriff auf eine Adresse im ersten Speicherbereich zulässig. Auch hier erfolgt die Überprüfung durch Überprüfungsmittel, insbesondere durch die Umschaltmittel, die Mode-Selektoren, oder aber die Überprüfungsmittel sind in den Mode-Selektoren separat ausgeführt. Bei einem erkannten fehlerhaften Zugriff im zweiten Betriebsmodus kann auch hier eine entsprechende Fehlerreaktion eingeleitet werden. Dabei ist zum Einen eine Fehlerreaktion entsprechend des ersten Betriebsmodus denkbar und vorgebbar. Dies ist insbesondere dadurch sinnvoll, da bei einem fehlerhaften Zugriff unter Umständen ja auf sicherheitskritische Speicherbereiche zugegriffen wird. Zum Einen ist dies dadurch realisierbar, dass eine Verbindung zum zweiten Speicherbereich nur im zweiten Betriebsmodus aufgebaut wird und die Verbindung zu den ersten Speicherbereichen in diesen Betriebsmodus gekappt wird oder der Zugriff auf den ersten Speicherbereich anderweitig verhindert und nur in den zweiten Speicherbereich erlaubt wird.In the second operating mode of this embodiment, the non-safety-critical programs or tasks are processed. On both execution units, so the CPUs 1 and 2 ( 101 . 102 ) run various non-safety-critical programs. This includes, for example, the operating system itself for the second operating mode, ie the OSEK subsystem. The two execution units or CPUs thus share a non-volatile second memory area, which, as previously described, can be designed. However, each CPU has its own volatile memory area RAM1 and RAM2, 110 respectively 111 assigned. Since such non-safety-critical programs are not or not all executed twice, there is at least the theoretical possibility that both execution units block each other by waiting for release of a resource. This is done by appropriate distribution of the tasks or programs, for example after a schedule on the execution units 101 and 102 counteract. In this case, other measures such as an alternate access or depending on the particular program prioritized access, etc. are possible. In this second operating mode, the power mode according to our embodiment, no access to an address in the first memory area is permitted. Again, the check is carried out by checking means, in particular by the switching means, the mode selectors, or the checking means are executed separately in the mode selectors. If a faulty access is detected in the second operating mode, a corresponding error reaction can also be initiated here. On the one hand, an error response corresponding to the first operating mode is conceivable and predeterminable. This makes sense, in particular, since in the event of erroneous access, safety-critical memory areas may indeed be accessed. On the one hand, this can be realized in that a connection to the second memory area is established only in the second operating mode and the connection to the first memory areas is clipped into this operating mode or the access to the first memory area is otherwise prevented and only in the second memory area is allowed.

Das Umschalten zwischen den Betriebsmodi ist nun ausführlich in den 2 und 3 nochmals beschrieben.The switching between the operating modes is now detailed in the 2 and 3 described again.

Um von dem ersten Betriebsmodus, also hier dem Sicherheitsmodus oder Safety-Mode in den zweiten Betriebsmodus, also hier Leistungsmodus oder Performance-Mode zu gelangen, ist ein Zugriff auf eine vorgegebene bzw. ausgezeichnete Adresse erforderlich, wodurch ein Wechsel in den zweiten Betriebsmodus erfolgt. Diese ausgezeichnete Adresse kann dabei im ersten Speicherbereich bei der Programmabarbeitung auftreten bzw. entsprechend von Außen zugeführt werden. D. h. im ersten Betriebsmodus oder Sicherheitsmodus darf lediglich auf Adressen bzw. auf ein Programm im ersten Speicherbereich zugegriffen werden; falls in diesem Sicherheitsmodus auf eine andere Adresse z.B. im zweiten Speicherbereich zugegriffen wird, liegt ein Fehler mit möglicher entsprechender Fehlerreaktion, wie oben beschrieben, vor. In 2 ist dies noch einmal verdeutlicht. Im Block 200 sind beide Ausführungseinheiten 101 und 102 im ersten Betriebsmodus, also dem Sicherheitsmodus. In Abfrage 210 wird überprüft, ob die Adresse des nächsten Befehls gleich der Triggeradresse der entsprechenden ausgezeichneten Umschaltadresse ist. Ist dies nicht der Fall, sind beide Verarbeitungseinheiten weiterhin im ersten Betriebsmodus und greifen somit jeweils auf die ersten Speicherbereiche 150, 151 zu. Entspricht allerdings die Adresse des nächsten Befehls und/oder Datums der Triggeradresse, so erfolgt im Block 220 die Umschaltung bzw. der Wechsel in den zweiten Betriebsmodus, den Leistungs- oder Performance-Mode. Jede Ausführungseinheit erhält dabei außerdem eine Adresse im zweiten Speicherbereich, bei welcher die Abarbeitung im zweiten Betriebsmodus fortzusetzen ist. Dabei wird die Vergleichseinheit bzw. das Vergleichsmittel 170 abgeschalten, also außer Funktion gesetzt (disabled). Im Block 230 ist somit die erste Verarbeitungseinheit 101 im zweiten Betriebsmodus und im Block 231 die zweite Ausführungseinheit 102 ebenfalls im zweiten Betriebsmodus, dem Performance-Mode. D. h. die einzige Möglichkeit, um vom Sicherheitsmodus, dem Safety-Mode in den Performance-Mode zu gelangen, ist im konkreten Beispiel beispielsweise ein Aufruf einer speziellen OSEKtime-Task TTrigger wie z.B. der ttidle Task des OSEKtime Betriebssystems, respektive einer darin enthaltenen, als Trigger-Adresse ausgezeichneten Adresse, insbesondere der Anfangsadresse dieses Programmteils bzw. dieser Task. Insbesondere wenn die beiden Ausführungseinheiten synchron arbeiten, geschieht dieser Aufruf in beiden CPUs notwendigerweise gleichzeitig. Die TTrigger-Task wie eben ttidle ist dabei z.B. ein Aufruf des OSEK-Schedulers, welcher im zweiten Speicherbereich 180 liegt. Beispielsweise in den Umschalteinrichtungen, also den Mode-Selektoren 130, 131 ist diese entsprechende Adresse als Triggeradresse eingestellt, um in den Leistungsmodus zu wechseln. Dies wird wie gesagt im Block 210, also eben den Mode-Selektoren, den Umschaltmitteln geprüft. Damit dürfen zukünftige Adresszugriffe eben bis zu einem erneuten Wechsel in den Sicherheitsmodus nur noch in den ROM-Bereich 180, also den nicht flüchtigen zweiten Speicherbereich erfolgen.In order to move from the first operating mode, that is to say here the safety mode or safety mode into the second operating mode, that is to say power mode or performance mode, access to a predetermined or excellent address is required, whereby a change to the second operating mode takes place. This excellent address can occur in the first memory area during program execution or be supplied accordingly from the outside. Ie. in the first operating mode or security mode, only addresses or a program in the first memory area may be accessed; if in this security mode to another address, for example in the second memory area is accessed, there is an error with a possible corresponding error response, as described above. In 2 this is once again clarified. In the block 200 are both execution units 101 and 102 in the first operating mode, ie the safety mode. In query 210 it is checked whether the address of the next instruction is equal to the trigger address of the corresponding excellent switching address. If this is not the case, then both processing units continue to be in the first operating mode and thus each access the first memory areas 150 . 151 to. However, if the address of the next command and / or date corresponds to the trigger address, then the block takes place 220 the changeover or the change to the second operating mode, the power or performance mode. Each execution unit also receives an address in the second memory area, in which the processing in the second operating mode is to continue. In this case, the comparison unit or the comparison means 170 switched off, so disabled (disabled). In the block 230 is thus the first processing unit 101 in the second operating mode and in the block 231 the second execution unit 102 also in the second operating mode, the performance mode. Ie. The only way to get from the safety mode, the safety mode in the performance mode is in the concrete example, for example, a call a specific OSEKtime T trigger task such as the ttidle task of the OSEKtime operating system, respectively one contained therein, as a trigger Address excellent address, in particular the start address of this program part or this task. In particular, if the two execution units are working synchronously, this call necessarily occurs simultaneously in both CPUs. The T Trigger task just like ttidle is eg a call of the OSEK scheduler which is in the second memory area 180 lies. For example, in the switching devices, so the mode selectors 130 . 131 this corresponding address is set as the trigger address to switch to the power mode. This is as I said in the block 210 So just the mode selectors, the switching means tested. Thus, future address access may just until a new change to security mode only in the ROM area 180 , So the non-volatile second memory area done.

In 3 ist nun die Umschaltung bzw. der Wechsel vom Leistungsmodus, also dem Performance-Mode insbesondere zurück in den ersten Betriebsmodus, den Sicherheitsmodus oder Safety-Mode dargestellt. In Block 300 ist Ausführungseinheit 101, also CPU 1 im zweiten Betriebsmodus, dem Performance-Mode. Ebenso ist in Block 310 die zweite Ausführungseinheit 102 in eben diesem Leistungsmodus, diesem zweiten Betriebsmodus dieses Ausführungsbeispiels. In Block 320 bzw. Block 321 wird nun für jede Ausführungseinheit eine Unterbrechungsanforderung, ein Interrupt ausgelöst, durch welchen eine Umschaltung in Block 330 von beiden Ausführungseinheiten 101 und 102 in den ersten Betriebsmodus, den Sicherheitsmodus, erfolgt. Dabei wird das Vergleichsmittel der Vergleicher 170 wieder eingeschalten, und in Block 340 laufen dann beide Ausführungseinheiten wieder im Sicherheitsmodus, dem ersten Betriebsmodus. Die Unterbrechungsanforderung kann dabei zum Einen durch eine Zeitbedingung, also einen Timerinterrupt ausgelöst werden oder durch eine Zustands- respektive Ereignisbedingung ausgelöst sein. Das bedeutet, um vom Leistungsmodus in den Sicherheitsmodus zu wechseln, wird eine Unterbrechungsanforderung des ersten Betriebssystem OSEKtime generiert. Dieser Timerinterrupt des gegenüber dem OSEK-Betriebssystem höherprioren OSEKtime-Betriebssystems ist in beiden CPUs gleich programmiert, da auf beiden CPUs das gleiche OSEKtime-System läuft. Insbesondere bei synchron laufenden OSEKtime-Systemen geht der Interrupt, also die Unterbrechungsanforderung bei beiden CPUs gleichzeitig ein. Wie gesagt, hat damit definitionsgemäß der OSEKtime-Scheduler-Intenupt eine sehr hohe, insbesondere die höchste Priorität. Beide Unterbrechungsanforderungen werden bei Synchronität dementsprechend gleichzeitig ausgeführt. Wie bereits erwähnt, wird mit Ausführungen dieser Unterbrechungsanforderungen auch das Vergleichsmittel 170 ebenfalls wieder in Funktion gesetzt, also in den ersten Betriebszustand, den Sicherheitsmodus, umgeschaltet und die Ausführungseinheiten laufen insbesondere erneut redundant.In 3 now the switching or the change from the power mode, so the performance mode in particular back to the first operating mode, the safety mode or safety mode is shown. In block 300 is execution unit 101 , so CPU 1 in the second operating mode, the performance mode. Likewise is in block 310 the second execution unit 102 in just this power mode, this second mode of operation of this embodiment. In block 320 or block 321 Now an interrupt request, an interrupt is triggered for each execution unit, by which a switch to block 330 from both execution units 101 and 102 into the first operating mode, the safety mode. In this case, the comparison means of the comparator 170 turned back on, and in block 340 Then both execution units run again in the security mode, the first operating mode. The interrupt request can be triggered on the one hand by a time condition, ie a timer interrupt or triggered by a state or event condition. That is, to switch from the power mode to the secure mode, an interrupt request of the first OSEKtime operating system is generated. This timer interrupt of the OSEKtime operating system, which has a higher priority than the OSEK operating system, is programmed the same in both CPUs because the same OSEKtime system is running on both CPUs. Especially for synchronously running OSEKtime systems, the interrupt, ie the interrupt request, arrives at both CPUs at the same time. By definition, the OSEKtime Scheduler Intenupt has by definition a very high priority, especially the highest priority. Both interrupt requests are executed concurrently at synchronicity accordingly. As already mentioned, with embodiments of these interruption requirements, the comparison means as well 170 also set in function again, ie in the first operating state, the security mode, switched and the execution units run in particular redundant again.

Neben dem bereits genannten Timer-Interrupt kann auch ein Zustands- oder Ereignisinterrupt eingesetzt werden, um den genannten Betriebsmoduswechsel vom zweiten in den ersten Betriebsmodus zu bewerkstelligen. Dabei kann ein bestimmter Zustand der Ausführungseinheiten beispielsweise einen hochprioren Interrupt auslösen, der dann für beide Ausführungseinheiten Gültigkeit hat. Dies kann beispielsweise ein durch die Abarbeitung der Programme im ROM 180 generierter Zustand in einer CPU sein, die eine solch hochpriore Unterbrechungsanforderung, die auch für die zweite CPU gilt, auslöst. Ebenso kann ein Ereignis, insbesondere auch ein von extern der Prozessoreinheit zugeführtes Ereignis einen solchen Interrupt und damit den Betriebsmoduswechsel auslösen. Bevorzugt ist die erste Variante mit dem Timerinterrupt, aber der Zustands- oder Ereignisinterrupt, wie beschrieben, ist ebenfalls denkbar und hiermit offenbart.In addition to the already mentioned timer interrupt, a state or event interrupt can also be used in order to bring about the aforementioned operating mode change from the second to the first operating mode. In this case, a certain state of the execution units, for example ei trigger a high-priority interrupt, which then has validity for both execution units. This can be done, for example, by processing the programs in the ROM 180 be generated state in a CPU, which triggers such a high-priority interrupt request, which also applies to the second CPU. Likewise, an event, in particular also an externally supplied to the processor unit event trigger such an interrupt and thus the operating mode change. Preferably, the first variant is the timer interrupt, but the state or event interrupt, as described, is also conceivable and hereby disclosed.

Damit ist entsprechend der Aufgabe eine optimierte Umschaltung zwischen zwei Betriebsmodi einer Prozessoreinheit mit zwei integrierten Ausführungseinheiten erfindungsgemäß dargestellt, wobei das konkrete Ausführungsbeispiel nicht begrenzend im Hinblick auf die Grundideen des erfindungsgemäßen Gegenstandes wirken kann.In order to is according to the task an optimized switching between two modes of operation of a processor unit with two integrated execution units shown according to the invention, the concrete embodiment not limiting with regard to the basic ideas of the subject invention can work.

Claims (28)

Prozessoreinheit mit wenigstens zwei Ausführungseinheiten, wobei Umschaltmittel enthalten sind durch welche zwischen wenigstens zwei Betriebsmodi der Prozessoreinheit umgeschalten werden kann, dadurch gekennzeichnet, dass die Umschaltmittel derart ausgestaltet sind, dass ein Wechsel von einem ersten Betriebsmodus in einen zweiten Betriebsmodus dadurch ausgelöst wird, dass durch die Prozessoreinheit auf eine vorgegebene Speicheradresse zugegriffen wird.Processor unit with at least two execution units, wherein switching means are contained by which can be switched between at least two operating modes of the processor unit, characterized in that the switching means are configured such that a change from a first operating mode to a second operating mode is triggered by the fact that Processor unit is accessed to a predetermined memory address. Prozessoreinheit nach Anspruch 1, dadurch gekennzeichnet, dass der erste Betriebsmodus einem Sicherheitsmodus entspricht, bei dem die zwei Ausführungseinheiten gleiche Programme abarbeiten und Vergleichsmittel vorgesehen sind, welche die bei der Abarbeitung der gleichen Programme entstehenden Zustände der Ausführungseinheiten auf Übereinstimmung vergleichen.Processor unit according to Claim 1, characterized that the first operating mode corresponds to a safety mode, where the two execution units execute the same programs and comparison means are provided, which results from the processing of the same programs conditions the execution units on agreement to compare. Prozessoreinheit nach Anspruch 2, dadurch gekennzeichnet, dass die Ausführungseinheiten derart ausgebildet sind, dass diese im ersten Betriebsmodus die gleichen Programme synchron abarbeiten.Processor unit according to Claim 2, characterized that the execution units are formed such that they in the first operating mode the execute the same programs synchronously. Prozessoreinheit nach Anspruch 1, mit wenigstens drei getrennten Speicherbereichen, wobei in dem ersten Betriebsmodus jede Ausführungseinheit jeweils mit einem jeder Ausführungseinheit zugeordneten ersten Speicherbereich in Verbindung steht.Processor unit according to claim 1, comprising at least three separate memory areas, wherein in the first mode of operation each execution unit respectively with each execution unit associated first memory area is in communication. Prozessoreinheit nach Anspruch 1, mit wenigstens zwei getrennten Speicherbereichen, wobei in dem zweiten Betriebsmodus beide Ausführungseinheiten nur mit einem, beiden Ausführungseinheiten zugeordneten zweiten Speicherbereich in Verbindung stehen.Processor unit according to claim 1, comprising at least two separate memory areas, wherein in the second mode of operation both execution units only with one, two execution units associated second memory area in connection. Prozessoreinheit nach Anspruch 1 und 5, dadurch gekennzeichnet, dass die vorgegebene Speicheradresse auf die zugegriffen werden soll in dem zweiten Speicherbereich lokalisiert ist.Processor unit according to Claims 1 and 5, characterized that the given memory address is accessed should be located in the second memory area. Prozessoreinheit nach Anspruch 1, mit wenigstens zwei getrennten Speicherbereichen, wobei in dem ersten Betriebsmodus beide Ausführungseinheiten nur mit einem, beiden Ausführungseinheiten zugeordneten ersten Speicherbereich in Verbindung stehen.Processor unit according to claim 1, comprising at least two separate memory areas, wherein in the first mode of operation both execution units associated with only one, both execution units first storage area in connection. Prozessoreinheit nach Anspruch 1 und 7, dadurch gekennzeichnet, dass die vorgegebene Speicheradresse als Triggeradresse im ersten Speicherbereich enthalten ist und die folgende Adresse auf die zugegriffen werden soll in dem zweiten Speicherbereich enthalten ist.Processor unit according to Claims 1 and 7, characterized that the given memory address as a trigger address in the first Memory area is included and the following address is accessed should be included in the second memory area. Prozessoreinheit nach Anspruch 1 und 5, dadurch gekennzeichnet, dass Überwachungsmittel, insbesondere die Umschaltmittel, vorgesehen sind, welche derart zur Überwachung ausgebildet sind, dass die Auswertemittel im zweiten Betriebsmodus nur mit dem zweiten Speicherbereich in Verbindung stehen.Processor unit according to Claims 1 and 5, characterized that monitoring means, in particular the switching means are provided which are so for monitoring are formed, that the evaluation means in the second operating mode only communicate with the second memory area. Prozessoreinheit nach Anspruch 1 und 4, dadurch gekennzeichnet, dass Überwachungsmittel, insbesondere die Umschaltmittel, vorgesehen sind, welche derart zur Überwachung ausgebildet sind, dass die Auswertemittel im ersten Betriebsmodus nur jeweils mit dem ersten Speicherbereich in Verbindung stehen.Processor unit according to claim 1 and 4, characterized characterized in that monitoring means, in particular the switching means are provided which are so for monitoring are formed, that the evaluation means in the first operating mode only in each case with the first memory area in connection. Prozessoreinheit nach Anspruch 4 oder 5, dadurch gekennzeichnet, dass jeder der Speicherbereiche in einem getrennten Speicherbaustein vorgesehen ist.Processor unit according to claim 4 or 5, characterized characterized in that each of the memory areas in a separate Memory module is provided. Prozessoreinheit nach Anspruch 2, dadurch gekennzeichnet, dass die Vergleichsmittel bei Übergang in den zweiten Betriebsmodus, der einem Leistungsmodus entspricht außer Funktion gesetzt werden und ein Vergleich der Zustände nur im ersten Betriebsmodus erfolgt.Processor unit according to Claim 2, characterized that the comparison means at transition in the second operating mode, which corresponds to a power mode except Function are set and a comparison of states only takes place in the first operating mode. Prozessoreinheit nach Anspruch 1, dadurch gekennzeichnet, dass Unterbrechungsmittel enthalten sind, welche derart ausgebildet sind, dass diese eine Rückkehr in den ersten Betriebsmodus durch eine Unterbrechungsanforderung ermöglichen.Processor unit according to Claim 1, characterized that interrupt means are included, which are designed such are that this one return in the first mode of operation by an interrupt request enable. Prozessoreinheit nach Anspruch 13, dadurch gekennzeichnet, dass die Unterbrechungsanforderung durch eine Zeitbedingung ausgelöst wird.Processor unit according to Claim 13, characterized that the interrupt request is triggered by a time condition. Prozessoreinheit nach Anspruch 13, dadurch gekennzeichnet, dass die Unterbrechungsanforderung durch eine Zustandsbedingung ausgelöst wird.Processor unit according to Claim 13, characterized that the interrupt request by a condition condition triggered becomes. Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit mit wenigstens zwei Ausführungseinheiten dadurch gekennzeichnet, dass ein Wechsel von einem ersten Betriebsmodus in einen zweiten Betriebsmodus dadurch ausgelöst wird, dass durch die Prozessoreinheit auf eine vorgegebene Speicheradresse zugegriffen wird.Method for switching between at least two Operating modes of a processor unit with at least two execution units characterized in that a change from a first mode of operation in a second operating mode is triggered by the fact that the processor unit a given memory address is accessed. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass die Ausführungseinheiten im ersten Betriebsmodus die gleichen Programme synchron abarbeiten.Method according to claim 16, characterized in that that the execution units in the first operating mode, execute the same programs synchronously. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass in beiden Betriebsmodi verschiedene Programme abgearbeitet werden, wobei im ersten Betriebsmodus sicherheitskritische Programme redundant von beiden Ausführungseinheiten und im zweiten Betriebsmodus nicht sicherheitskritische Programme abgearbeitet werden.Method according to claim 16, characterized in that that in both modes of operation various programs are processed In the first operating mode, safety-critical programs are redundant from both execution units and in the second mode of operation non-safety critical programs be processed. Verfahren nach Anspruch 18, dadurch gekennzeichnet, dass die sicherheitskritischen Programme redundant in den Ausführungseinheiten jeweils zugeordneten ersten Speicherbereichen abgelegt sind.Method according to claim 18, characterized that the safety-critical programs are redundant in the execution units respectively assigned first memory areas are stored. Verfahren nach Anspruch 18, dadurch gekennzeichnet, dass die nicht sicherheitskritischen Programme in einem einzigen zweiten Speicherbereich abgelegt sind und beide Ausführungseinheiten im zweiten Betriebsmodus nur auf den zweiten Speicherbereich zugreifen.Method according to claim 18, characterized that the non-safety-critical programs in a single second memory area are stored and both execution units in second operating mode access only the second memory area. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass im ersten Betriebsmodus sicherheitskritische Programme redundant abgearbeitet werden und die dabei entstehenden Zustände auf Übereinstimmung verglichen werden.Method according to claim 16, characterized in that that safety-critical programs are redundant in the first operating mode be processed and the resulting states to match be compared. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass in dem ersten Betriebsmodus von den Ausführungseinheiten jeweils nur auf einen jeder Ausführungseinheit zugeordneten ersten Speicherbereich zugegriffen wird.Method according to claim 16, characterized in that that in the first mode of operation of the execution units only on each execution unit associated first memory area is accessed. Verfahren nach Anspruch 16, mit wenigstens zwei getrennten Speicherbereichen, wobei in dem ersten Betriebsmodus beide Ausführungseinheiten nur auf einen beiden Ausführungseinheiten zugeordneten ersten Speicherbereich zugreifen.The method of claim 16, comprising at least two separate memory areas, wherein in the first mode of operation both execution units only to a two execution units associated first memory area access. Verfahren nach Anspruch 16 und 23, dadurch gekennzeichnet, dass die vorgegebene Speicheradresse als Triggeradresse im ersten Speicherbereich enthalten ist und die folgende Adresse auf die zugegriffen werden soll in dem zweiten Speicherbereich enthalten ist.Method according to claims 16 and 23, characterized that the given memory address as a trigger address in the first Memory area is included and the following address is accessed should be included in the second memory area. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass in dem zweiten Betriebsmodus von beiden Ausführungseinheiten nur auf einen, beiden Ausführungseinheiten zugeordneten zweiten Speicherbereich zugegriffen wird.Method according to claim 16, characterized in that that in the second mode of operation of both execution units only one, two execution units associated second memory area is accessed. Verfahren nach Anspruch 16 und 25, dadurch gekennzeichnet, dass überwacht wird, dass die Auswertemittel im zweiten Betriebsmodus nur auf den zweiten Speicherbereich zugreifen.Method according to claims 16 and 25, characterized that monitors is that the evaluation means in the second operating mode only to the second Memory area access. Verfahren nach Anspruch 16 und 22 oder 23, dadurch gekennzeichnet, dass überwacht wird, dass die Auswertemittel im ersten Betriebsmodus nur auf den ersten Speicherbereich zugreifen.The method of claim 16 and 22 or 23, characterized characterized in that monitors is that the evaluation in the first mode only on the access the first memory area. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass eine Umschaltung von dem zweiten Betriebsmodus in den ersten Betriebsmodus durch eine Unterbrechungsanforderung erfolgt, wobei die Unterbrechungsanforderung durch eine Zeitbedingung oder eine Zustandsbedingung ausgelöst wird.Method according to claim 16, characterized in that that a switch from the second mode of operation to the first Operation mode is performed by an interrupt request, wherein the interrupt request by a time condition or a Condition condition is triggered.
DE10332700A 2003-06-24 2003-07-18 Method for switching between at least two operating modes of a processor unit and corresponding processor unit Withdrawn DE10332700A1 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
DE10332700A DE10332700A1 (en) 2003-06-24 2003-07-18 Method for switching between at least two operating modes of a processor unit and corresponding processor unit
PCT/DE2004/001299 WO2005003962A2 (en) 2003-06-24 2004-06-22 Method for switching between at least two operating modes of a processor unit and corresponding processor unit
US10/560,962 US20070277023A1 (en) 2003-06-24 2004-06-22 Method For Switching Over Between At Least Two Operating Modes Of A Processor Unit, As Well Corresponding Processor Unit
JP2006515276A JP4232987B2 (en) 2003-06-24 2004-06-22 Method for switching between at least two operating modes of a processor unit and corresponding processor unit
EP04738748A EP1639454A2 (en) 2003-06-24 2004-06-22 Method for switching between at least two operating modes of a processor unit and corresponding processor unit
RU2006101719/09A RU2006101719A (en) 2003-06-24 2004-06-22 METHOD OF SWITCHING BETWEEN AT LEAST TWO MODES OF OPERATION OF THE PROCESSOR, AND ALSO THE RELATED PROCESSOR
KR1020057024653A KR20060026884A (en) 2003-06-24 2004-06-22 Method for switching between at least two operating modes of a processor unit and corresponding processor unit
BRPI0411824-3A BRPI0411824A (en) 2003-06-24 2004-06-22 process for switching between at least two modes of operation of a processing unit as well as a corresponding processing unit

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10328208.4 2003-06-24
DE10328208 2003-06-24
DE10332700A DE10332700A1 (en) 2003-06-24 2003-07-18 Method for switching between at least two operating modes of a processor unit and corresponding processor unit

Publications (1)

Publication Number Publication Date
DE10332700A1 true DE10332700A1 (en) 2005-01-13

Family

ID=33520840

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10332700A Withdrawn DE10332700A1 (en) 2003-06-24 2003-07-18 Method for switching between at least two operating modes of a processor unit and corresponding processor unit

Country Status (2)

Country Link
CN (1) CN1842763A (en)
DE (1) DE10332700A1 (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007017381A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for data processing
WO2007017370A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for controlling a computer system comprising at least two execution units and at least two groups of internal states
WO2007017376A1 (en) 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for storing data and/or commands in a computer system having at least two processing units and at least one first memory or memory area for data and/or commands
WO2007017373A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Apparatus and method for storing data and/or instructions in a computer system having at least two processing units and at least one first memory or memory area for data and/or instructions
EP1785845A2 (en) * 2005-11-10 2007-05-16 Robert Bosch Gmbh Method for using a memory in a multiprocessor apparatus
DE102006012042A1 (en) * 2006-03-16 2007-09-20 Kuka Roboter Gmbh Control device e.g. personal computer, for e.g. joint robot, has two channels for processing independent codes with mutual safety monitoring, and main storage provided for accessing two processor cores of multi-processor core
WO2008043649A1 (en) 2006-10-10 2008-04-17 Robert Bosch Gmbh Method for changing over a system having a plurality of execution units
EP1973017A3 (en) * 2007-03-22 2009-06-10 Abb Ag Safety-oriented programmable logic controller
DE102008041833A1 (en) 2008-09-05 2010-03-11 Robert Bosch Gmbh Device for processing interrupt request of program in processing unit of computer system, has interruption control unit, which is connected with external command units of computer system releasing interrupt requests
DE102008043530A1 (en) * 2008-11-06 2010-05-20 Kuka Roboter Gmbh Machine control system for use in electrical machine, particularly industrial robot, is based on personal computer system, and has two random access memories and multi-core processor with two processor cores
WO2010072297A1 (en) * 2008-12-16 2010-07-01 Diehl Aerospace Gmbh Multichannel controller module
DE102009001048A1 (en) 2009-02-20 2010-08-26 Robert Bosch Gmbh Device for testing functioning of dual-core computer system for e.g. security-relevant control system of motor vehicle, has switching and comparison unit triggered-off by signal, where signal is led back to test unit
DE102013209152A1 (en) 2013-05-16 2014-11-20 Robert Bosch Gmbh Device and method for state switching
DE102013218814A1 (en) * 2013-09-19 2015-03-19 Siemens Aktiengesellschaft Method for operating a safety-critical system
DE102015218898A1 (en) 2015-09-30 2017-03-30 Robert Bosch Gmbh Method for the redundant processing of data
DE102015218890A1 (en) 2015-09-30 2017-03-30 Robert Bosch Gmbh Method and apparatus for generating an output data stream

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2034668B1 (en) * 2007-09-05 2010-12-29 Siemens Aktiengesellschaft High availability communications system
US8943251B2 (en) * 2012-05-14 2015-01-27 Infineon Technologies Austria Ag System and method for processing device with differentiated execution mode
CN107944298A (en) * 2012-08-21 2018-04-20 联想(北京)有限公司 A kind of electronic equipment and the mode switching method applied to electronic equipment
CN112667450B (en) * 2021-01-07 2022-05-06 浙江大学 Dynamically configurable fault-tolerant system with multi-core processor

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007017381A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for data processing
WO2007017370A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for controlling a computer system comprising at least two execution units and at least two groups of internal states
WO2007017376A1 (en) 2005-08-08 2007-02-15 Robert Bosch Gmbh Method and device for storing data and/or commands in a computer system having at least two processing units and at least one first memory or memory area for data and/or commands
WO2007017373A1 (en) * 2005-08-08 2007-02-15 Robert Bosch Gmbh Apparatus and method for storing data and/or instructions in a computer system having at least two processing units and at least one first memory or memory area for data and/or instructions
EP1785845A2 (en) * 2005-11-10 2007-05-16 Robert Bosch Gmbh Method for using a memory in a multiprocessor apparatus
EP1785845A3 (en) * 2005-11-10 2008-06-04 Robert Bosch Gmbh Method for using a memory in a multiprocessor apparatus
DE102006012042A1 (en) * 2006-03-16 2007-09-20 Kuka Roboter Gmbh Control device e.g. personal computer, for e.g. joint robot, has two channels for processing independent codes with mutual safety monitoring, and main storage provided for accessing two processor cores of multi-processor core
WO2008043649A1 (en) 2006-10-10 2008-04-17 Robert Bosch Gmbh Method for changing over a system having a plurality of execution units
EP1973017A3 (en) * 2007-03-22 2009-06-10 Abb Ag Safety-oriented programmable logic controller
DE102008041833A1 (en) 2008-09-05 2010-03-11 Robert Bosch Gmbh Device for processing interrupt request of program in processing unit of computer system, has interruption control unit, which is connected with external command units of computer system releasing interrupt requests
DE102008043530A1 (en) * 2008-11-06 2010-05-20 Kuka Roboter Gmbh Machine control system for use in electrical machine, particularly industrial robot, is based on personal computer system, and has two random access memories and multi-core processor with two processor cores
DE102008043530B4 (en) * 2008-11-06 2016-03-10 Kuka Roboter Gmbh Machine control and electric machine, in particular industrial robots
WO2010072297A1 (en) * 2008-12-16 2010-07-01 Diehl Aerospace Gmbh Multichannel controller module
DE102009001048A1 (en) 2009-02-20 2010-08-26 Robert Bosch Gmbh Device for testing functioning of dual-core computer system for e.g. security-relevant control system of motor vehicle, has switching and comparison unit triggered-off by signal, where signal is led back to test unit
DE102013209152A1 (en) 2013-05-16 2014-11-20 Robert Bosch Gmbh Device and method for state switching
DE102013218814A1 (en) * 2013-09-19 2015-03-19 Siemens Aktiengesellschaft Method for operating a safety-critical system
US10229036B2 (en) 2013-09-19 2019-03-12 Siemens Mobility GmbH Software update of non-critical components in dual safety-critical distributed systems
EP3027483B1 (en) * 2013-09-19 2020-05-13 Siemens Mobility GmbH Software updates of non-critical components in dual safety-critical distributed systems
DE102015218898A1 (en) 2015-09-30 2017-03-30 Robert Bosch Gmbh Method for the redundant processing of data
DE102015218890A1 (en) 2015-09-30 2017-03-30 Robert Bosch Gmbh Method and apparatus for generating an output data stream
US10089195B2 (en) 2015-09-30 2018-10-02 Robert Bosch Gmbh Method for redundant processing of data
US10409666B2 (en) 2015-09-30 2019-09-10 Robert Bosch Gmbh Method and device for generating an output data stream

Also Published As

Publication number Publication date
CN1842763A (en) 2006-10-04

Similar Documents

Publication Publication Date Title
WO2005003962A2 (en) Method for switching between at least two operating modes of a processor unit and corresponding processor unit
DE10332700A1 (en) Method for switching between at least two operating modes of a processor unit and corresponding processor unit
EP2550599B1 (en) Control computer system, method for controlling a control computer system, and use of a control computer system
DE60019038T2 (en) Intelligent error management
EP2193408B1 (en) Integrated microprocessor system for safety-critical control systems
EP2079917B1 (en) Method and device for monitoring a functionality of an engine controller of an internal combustion engine
DE102005037246A1 (en) Method and device for controlling a computer system having at least two execution units and a comparison unit
DE10349581A1 (en) Method and device for switching between at least two operating modes of a processor unit
EP2466466B1 (en) Method for detecting errors when executing a real-time operating system
EP1046088A1 (en) Electronic digital device
EP3841438B1 (en) Automation system for monitoring a safety-critical process
EP3709166B1 (en) Method and system for secure signal manipulation for testing integrated security functionalities
DE19509150C2 (en) Method for controlling and regulating vehicle brake systems and vehicle brake system
EP3473512A1 (en) Functional module, control unit for an operating assisting system and working device
EP2085883A1 (en) Method of treating transient errors in real time systems, especially the control units of motor vehicles
DE102006012042A1 (en) Control device e.g. personal computer, for e.g. joint robot, has two channels for processing independent codes with mutual safety monitoring, and main storage provided for accessing two processor cores of multi-processor core
WO2005045665A1 (en) Method and device for operand processing in a processor unit
DE102014011665A1 (en) System and method for DMA operation with high integrity
EP2228723B1 (en) Method for error treatment of a computer system
DE102011007467A1 (en) Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components
EP3245591B1 (en) Failsafe computersystem
EP1894101A1 (en) Method and apparatus for monitoring unauthorized access to the memory of an arithmetic unit, especially in a motor vehicle
DE102004051966A1 (en) Method, operating system and computing device for executing a computer program
WO2020038627A1 (en) Automation system for monitoring a safety-critical process
EP1248965B1 (en) Method for preventing malfunctions in a signal processing system, and a processor system

Legal Events

Date Code Title Description
8141 Disposal/no request for examination