WO2008043650A1 - Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors - Google Patents

Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors Download PDF

Info

Publication number
WO2008043650A1
WO2008043650A1 PCT/EP2007/059904 EP2007059904W WO2008043650A1 WO 2008043650 A1 WO2008043650 A1 WO 2008043650A1 EP 2007059904 W EP2007059904 W EP 2007059904W WO 2008043650 A1 WO2008043650 A1 WO 2008043650A1
Authority
WO
WIPO (PCT)
Prior art keywords
execution units
monitoring program
monitoring
execution
controller
Prior art date
Application number
PCT/EP2007/059904
Other languages
English (en)
French (fr)
Inventor
Bernd Mueller
Volker Pitzal
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 KR1020097007279A priority Critical patent/KR101326316B1/ko
Priority to CN2007800377608A priority patent/CN101523038B/zh
Priority to US12/308,184 priority patent/US8296043B2/en
Priority to JP2009515899A priority patent/JP2009541636A/ja
Priority to EP07820348A priority patent/EP2079917B1/de
Publication of WO2008043650A1 publication Critical patent/WO2008043650A1/de

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D45/00Electrical control not provided for in groups F02D41/00 - F02D43/00
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Definitions

  • the invention relates to a method for monitoring a functionality of a controller that runs on a system having a plurality of execution units.
  • monitoring measures are therefore used to detect such errors.
  • applications in which such monitoring is almost permanently necessary.
  • monitoring functions are used which periodically, for example periodically or on a specific request, check whether the data processing system or other hardware components are still functioning correctly.
  • FIG. 1 shows the structuring of a conventional monitoring method in the engine control area.
  • fuel is injected into a combustion chamber by the injection system.
  • this exemplary application is structured in the engine control area in three levels El, E2, E3.
  • the application programs of the injection control form a base or a ground plane El, which includes the functions actually to be performed.
  • the injection control indicates how much fuel is to be injected into the combustion chamber at exactly which point in time. In the event of a failure of the injection control, it could happen that the injection control injects too much or constantly fuel into the combustion chamber, so that the motor vehicle can accelerate very rapidly and an accident can occur.
  • a monitoring level E2 which monitors whether the injection control operates on level El error-free.
  • the monitoring level E2 is formed by additional programs or an additional software code, which optionally accesses additional sensors.
  • the monitoring level E2 is usually formed by a continuous torque monitoring, in which it is monitored whether the moment of force currently generated by the engine does not exceed a certain threshold.
  • the programs of the injection control plane El and the monitoring plane E2 run on the same hardware or on the same execution units. Since the application programs of injection control in level El and the application programs of force monitoring in level E2 run on the same execution unit or CPU, a hardware error in the execution unit can cause both injection control and force torque monitoring to fail simultaneously.
  • a further safety level E3 is provided in conventional engine control systems, which in turn checks whether the monitoring level E2 functions properly.
  • the security level E3 carries out a question-answer communication of the execution unit with an external hardware component, for example an ASIC, wherein in principle the functionality of the execution unit or the microcontroller, in particular the functioning of the application programs within the surveillance level E2 is checked.
  • the application programs of the monitoring level E2 carry out a plausibility check. For example, the monitoring programs of the monitoring plane E2 read in an angular position ⁇ of the accelerator pedal.
  • the monitoring program running on plane E2 detects that an error has occurred in the injection control and usually triggers the engine to be switched off security reasons.
  • the monitoring level E2 additionally contains a torque monitoring program which monitors the force torque generated on the engine and deactivates the engine when a threshold value is exceeded.
  • the code of the monitoring programs is duplicated as E2 '.
  • the algorithm or the program of E2 ' is calculated with default data or test data.
  • the safety program compares the response bit pattern with a reference bit pattern to determine if the monitor within the CPU is still functioning properly.
  • the safety program within the user-specific integrated circuit runs on a different hardware, namely the ASIC, than the monitoring program, which runs on an execution unit or CPU. Therefore, this forms
  • the conventional approach provides some security against hardware faults within the CPU.
  • a disadvantage of the conventional security concept is that the monitoring programs for the command test must be present in copy with default or test values. Therefore, the memory space is required for storing the copied program instructions on the monitoring level E2 '.
  • the invention provides a method for monitoring the operability of a controller running on a system with a plurality of execution units, wherein a monitoring program is executed in a comparison operating mode VM on a plurality of execution units of the system and wherein the execution of the monitoring program Execution units emitted signals to detect a fault are compared.
  • An advantage of the method according to the invention is that no storage space for copied program instructions of a monitoring program is wasted.
  • the monitoring program is formed by a torque monitoring program which monitors a torque generated by a motor.
  • control is formed by a motor control.
  • the monitoring program is executed synchronously on the execution units. In an alternative embodiment of the method according to the invention, the monitoring program is executed asynchronously on the execution units.
  • the system is switched to a performance operating mode in which the execution units execute different programs.
  • the programs executed in the performance operating mode carry out the control.
  • the monitoring program is executed periodically.
  • an error in the execution of the monitoring program is detected if the signals emitted by the execution units during execution of the monitoring program deviate from one another.
  • a unit controlled by the controller is switched off.
  • the invention further provides a control with a plurality of execution units, wherein a monitoring program in a comparison operating mode VM is executed on a plurality of execution units and the signals emitted during execution of the monitoring program by the execution units are compared with each other for the detection of an error.
  • the monitoring program is a torque monitoring program which monitors a torque generated by a motor.
  • the controller is a motor controller.
  • the execution units are implemented by a microprocessor, a co-processor, a digital signal processor DSP, a floating point calculation unit FPU or formed by an arithmetic logic unit ALU.
  • Figure 1 is a diagram illustrating a conventional security concept with three levels
  • FIG. 2 shows a block diagram of a method used in the method according to the invention
  • FIG. 3 is a block diagram showing a possible embodiment of the controller according to the invention.
  • FIG. 4 shows a flowchart for explaining the method according to the invention
  • Figure 5 is a timing diagram for explaining a possible embodiment of the method according to the invention.
  • a switching and comparison circuit 1 is connected on the input side to N + 1 execution units 2 and receives logic input signals E 0 , Ei, E 2 , E 3 ... E N from the execution units 2-i ,
  • the switching and comparison unit 1 contains a comparison logic IA and a switching logic IB.
  • the system shown in FIG. 2 can be operated in at least two operating modes.
  • a first operating mode to increase performance also known as performance
  • Operating mode PM is called, the execution units 1-i and cores process different programs or tasks in parallel.
  • the execution units 2-i can be any execution units 2-i for executing a calculation instruction, for example a processor, a floating point calculation unit FPU, a digital signal processor DSP, a co-processor or an arithmetic logic calculation unit ALU.
  • the execution of the programs by the various execution units 2-i in the performance mode PM can be carried out synchronously or asynchronously become. In the power mode, no redundant processing takes place, but the execution units 2-i carry out different calculations or programs in parallel. In pure performance mode PM, all input signals E, are switched to respective output signals A 1 and passed.
  • the second reason for a multi-core architecture is to increase the security of the signal processing by having multiple execution units 2-i redundantly execute the same program.
  • this second operating mode which is also referred to as safety mode or comparative mode VM
  • the results or logic output signals of the execution units are compared by the switching and comparison circuit 1, so that an error or a signal deviation by a Comparison can be detected on agreement. Therefore, in the pure comparison operating mode VM all input signals E 1 will be directed to only just a single output signal A 1 or imaged. Mixed forms are possible.
  • the configurable switching logic IB indicates how many output connections or output signals A 1 are provided. Furthermore, the switching logic IB stores which input signals E contribute to which of the output signals A 1 . In the switching logic IB thus a mapping function is stored, the input signals E, different output signals A, assign.
  • the processing logic IA determines at each output signal A 1 how the input signals contribute to the respective output signal.
  • the output signal A 0 is generated by the input signals Ei, ..., E N.
  • a first possibility is that all signals are compared with each other and an error is detected in the presence of at least two different values, which is optionally signaled by the switching and comparison circuit 1.
  • Another possibility is to make a K m selection, where K> M / 2.
  • a first error signal is generated when one of the input signals is detected as being different from the other input signals.
  • a second error signal different from the first error signal all three input signals may differ from one another.
  • the input signal values are fed to a further calculation unit which, for example, has a mean value or calculates a median value or performs a fault-tolerant algorithm FTA.
  • FTA fault-tolerant algorithm
  • the extreme values of the input signal values are canceled or ignored and averaging over the remaining signal values.
  • averaging occurs over the entire set of the remaining signal values.
  • an averaging is carried out via a subset of the remaining signal values that is easy to form in the hardware.
  • the various mentioned possibilities for signal processing to a signal represent comparison operations.
  • the processing logic IA determines the exact design of the comparison operation to be performed for each output signal A, and thus also for the input signals E.
  • the combination of the information within the switching logic IB, ie the assignment function of the comparison operation per output signal or per function value specified in the processing logic IA, represents operating mode information and defines the operating mode. This information is usually multivalued and represented by more than one logical bit. In the event that only two execution units 2-i are provided, and thus only one comparison mode exists, all the information in the operating mode can be compensated for a single logical bit.
  • a changeover of the system from the performance operating mode PM into a comparison operating mode VM is generally carried out in that the execution units 2-i, which are displayed in the performance operating mode PM on different signal outputs, in the comparison operating mode VM be mapped or switched to the same signal output.
  • This is preferably achieved by providing a subset of execution units 2-i in which all input signals E "to be taken into account in the subset are switched directly to corresponding output signals A 1 in the performance operating mode PM, while the input signals In the comparison mode VM all are mapped to a single signal output or switched to this.
  • a switch can be realized by changing pairings.
  • the software can be used to switch dynamically during operation.
  • the switching is triggered by the execution of special switching instructions, special instruction sequences, explicitly identified instructions, or by access to specific addresses by at least one of the execution units 2-i of the system.
  • the switching device 1 carried for switching an identification the programs, application programs, program parts or even the program commands by an identifier which can be used to determine whether these program instructions are security-relevant, d. H. in the safety mode or comparative
  • Operating mode VM have to be processed, or the power or performance mode PM can be made accessible.
  • the identification can be done by a bit in the program instruction. Alternatively, the following sequence can be identified by a special program command.
  • the calculation of the results or output signals of the execution units 2-i takes the same amount for synchronous execution on the different execution units 2-i.
  • the results are then simultaneously available in the safety mode VM with synchronous processing of the switching device 1. If the results match, the corresponding data will be released. If there is a signal deviation, a predetermined error reaction occurs.
  • the inventive method for monitoring the functionality of a controller running on a system with a plurality of execution units 2 at least one monitoring program is executed in a comparison operating mode VM on several or even all execution units of the system.
  • the signals emitted during the execution of the monitoring program by these execution units 2 are compared with each other to detect an error.
  • this has at least three execution units 2.
  • the signal which has the largest signal deviation of the remaining signals is recognized as being defective, for example, by means of a majority decision.
  • the signals in one embodiment are digital logic signals, in particular binary signals.
  • the controller 4 according to the invention is a preferred zugten embodiment to a motor controller for controlling an internal combustion engine. In alternative embodiments, the controller 4 is a controller for driving an electric motor.
  • the monitoring program is formed, for example, by a torque monitoring program which monitors a torque generated by the combustion or electric motor. In this case, the monitoring program can be executed synchronously or asynchronously on the execution units 2.
  • the normal motor control application programs are executed in the performance mode PM, i. H.
  • Each execution unit 2 of the system executes a program for the purpose of improving performance, while the other execution units 2, in turn, execute a different application program.
  • the monitoring program running on level E2 is periodically called in a possible embodiment of the method according to the invention.
  • the monitoring program is executed in a comparison operating mode VM on a plurality of execution units 2 of the system.
  • the comparison operating mode VM several or all execution units 2 of the system execute the same monitoring program, whereby the output signals generated in this case are compared with one another to detect an error.
  • a plurality of monitoring programs are executed at the level E2, which are called, for example, all periodically.
  • All called monitoring programs are executed in the comparison operating mode VM.
  • the monitoring programs are called in response to a particular request or request command, and subsequently executed in the comparison mode of operation VM by a plurality or at least two execution units 2 of the system.
  • a request command for executing the monitoring program can be triggered, for example, by an interrupt.
  • the system is switched back into a performance operating mode PM, in which the execution units 2 preferably execute different programs of the first level El, for example control programs.
  • an error in the execution of the monitoring program in the plane E2 is detected if the signals emitted by the execution units 2 during the execution of the monitoring program in the comparison operating mode VM differ from one another. It is preferred after detecting an error in the execution of the monitoring program, a controlled by the controller 4 unit 5, such as a motor switched off.
  • FIG. 3 shows a block diagram of a possible embodiment of the control system according to the invention.
  • the control 4 according to the invention has two execution units 2A, 2B.
  • the execution units 2A, 2B can be complete microprocessors or CPUs, co-processors, digital signal processors DSP, floating-point calculation units FPU or an arithmetic logic unit ALU.
  • more than two execution units 2 are provided.
  • the signals generated by the execution units 2A, 2B are respectively buffered in a buffer 3A, 3B.
  • Each execution unit 2 preferably has its own intermediate memory 3 on the output side.
  • the buffered results or output signals of the execution units 2A, 2B are supplied to a comparison unit 1.
  • the comparison unit 4 can be formed, for example, by the switching and comparison circuit 1, as shown in FIG.
  • the comparison of the cached output signals can be performed by running a corresponding comparison program and software or hardwired in hardware.
  • FIG. 4 shows a flow chart of a possible embodiment of the method according to the invention for monitoring the functionality of a controller.
  • the system After calling the monitoring program in the second level E2, the system is switched from the performance mode of operation PM to the comparison mode of operation VM in step S1. Subsequently, the two execution units 2A, 2B, as shown in FIG. 3, are activated to execute the same monitoring program in steps S2, S3 and execute the same monitoring program, for example a force-torque monitoring program.
  • the two execution units 2A, 2B calculate asynchronously in steps S2, S3 a corresponding result signal, which is temporarily stored in steps S4, S5 in the respective latches 3A, 3B.
  • the two execution units 2A, 2B in steps S2, S3 calculate the respective output signal or the result value in synchronism with one another.
  • a comparison between the two output signals is preferably carried out by the switching and comparison circuit 1 in step S6. If the two signals deviate from one another, an error is detected and subsequent touchedd a corresponding error treatment.
  • a unit 5 controlled by the controller 4 for example a motor, is switched off.
  • the comparison in step S6 can either be performed by a corresponding comparison operation by software after subsequent readout of the buffer 3A, 3B, or in an alternative embodiment the comparison is made by a hard-wired circuit.
  • FIG. 5 shows a timing diagram for explaining a possible embodiment of the method according to the invention.
  • the monitoring program in period E2 is called periodically and executed in the comparison operating mode VM by several execution units 2 simultaneously. After execution of the monitoring program, the system returns in the performance mode PM and performs in the level El the actual control programs.
  • the controller 4 always operates in the performance mode PM, wherein monitoring programs with at least two execution units 2 are calculated asynchronously.
  • the output of the execution units results or output signals are compared with each other for error detection.
  • the results must each be buffered and the results are then compared twice, namely once on the first execution unit 2A and on the second execution unit 2 B, to take into account any hardware errors of the two execution units 2. Therefore, this embodiment is more expensive than an embodiment in which the monitor program is executed in the comparative operation mode VM.
  • the method according to the invention also allows the detection of operand-dependent errors.
  • the inventive method leads to a significant saving of storage space compared to the conventional safety concept shown in Figure 1.
  • the latter has at least three execution units 2, it being possible to ascertain by means of a majority decision in the event of a signal deviation which execution unit 2 presumably operates erroneously.
  • This execution unit 2 then preferably performs a
  • the execution unit 2 is deactivated when the self-test shows that the execution unit 2 has actually failed. In this embodiment, the system thus works even fault-tolerant.
  • the execution of monitoring programs in the plane E2 in the comparison operating mode VM wherein in addition to further protection a security level E3 is provided, which also performs a command test to monitor the functioning of the monitoring programs.
  • a security level E3 is provided, which also performs a command test to monitor the functioning of the monitoring programs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Hardware Redundancy (AREA)
  • Safety Devices In Control Systems (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

Die vorliegende Erfindung schafft ein Verfahren zur Überwachung der Funktionsfähigkeit einer Motorsteuerung eines Verbrennungsmotors, die mehrere Ausführungseinheiten (2A, 2B) aufweist. Dabei wird ein Momentüberwachungsprogramm in einem Vergleichs-Betriebsmodus (VM) auf mehreren Ausführungseinheiten (2) des Systems ausgeführt und es werden die bei der Ausführung des Überwachungsprogramms von den Ausführungseinheiten (2) abgegebenen Signale zur Erkennung eines Fehlers miteinander verglichen.

Description

Beschreibung
VERFAHREN UND VORRICHTUNG ZUR ÜBERWACHUNG EINER FUNKTIONSFAHIGKEIT EINER MOTORSTEUERUNG EINES VERBRENNUNGSMOTORS
Die Erfindung betrifft ein Verfahren zur Überwachung einer Funktionsfähigkeit einer Steuerung, die auf einem System mit mehreren Ausführungseinheiten läuft.
Im Bereich eingebetteter Systeme, insbesondere in der Automobiltechnik oder in der Automatisierungstechnik, gibt es viele Anwendungen bzw. Anwendungsprogramme, bei denen ein Fehler in der Hardware potenziell sicherheitsrelevante Konsequenzen hat. Um diese Konsequenz zu vermeiden oder deren Auswirkungen zu verringern, werden daher Überwachungsmaßnahmen zur Detektion derartiger Fehler eingesetzt. Es gibt Anwendungen, in denen eine solche Überwachung nahezu permanent notwendig ist. In anderen Anwendungen werden Überwachungsfunktionen eingesetzt, die regelmäßig, beispielsweise periodisch, oder auf eine bestimmte Anforderung hin überprüfen, ob das Datenverarbeitungssystem o- der sonstige Hardware- Komponenten noch korrekt funktionieren.
Figur 1 zeigt die Strukturierung eines herkömmlichen Überwachungsverfahrens im Motorsteuerungsbereich. Bei einer Motorsteuerung wird durch Einspritzsystem Kraftstoff in ei- nen Verbrennungsraum eingespritzt. Aus Sicherheitssicht wird diese beispielhafte Anwendung im Motorsteuerungsbereich in drei Ebenen El, E2, E3 strukturiert. Die Anwendungsprogramme der Einspritzsteuerung bilden eine Basis bzw. eine Grundebene El, welche die eigentlich vorzunehmenden Funktionen beinhaltet. Die Einspritzsteuerung gibt an, wie viel Kraftstoff genau zu welchem Zeitpunkt in den Verbrennungsraum einzuspritzen ist. Bei ei- nem Versagen der Einspritzsteuerung könnte der Fall auftreten, dass die Einspritzsteuerung zuviel bzw. ständig Kraftstoff in den Verbrennungsraum einspritzt, sodass das Kraftfahrzeug sehr stark beschleunigt und es zu einem Unfall kommen kann. Es wird daher bei einem herkömmlichen System eine Überwachungsebene E2 vorgesehen, die überwacht, ob die Einspritzsteuerung auf Ebene El fehlerfrei arbeitet. Die Überwachungsebene E2 wird durch zusätzliche Programme bzw. einen zusätzlichen Software-Code gebildet, der gegebenenfalls auf zusätzliche Sensoren zugreift. Bei einer herkömmlichen Motorsteuerung wird die Überwachungsebene E2 in der Regel durch eine kontinuierliche Momentenüberwachung gebildet, in der überwacht wird, ob das aktuell durch den Motor erzeugte Kraftmoment nicht einen bestimmten Schwellenwert überschreitet. Bei einer herkömmlichen Motorsteuerung laufen die Programme der Einspritzsteuerungsebene El und der Überwachungsebene E2 auf der gleichen Hardware bzw. auf den gleichen Ausführungseinheiten ab. Da die Anwendungspro- gramme der Einspritzsteuerung in Ebene El und die Anwendungsprogramme der Kraftmo- mentenüberwachung in Ebene E2 auf der gleichen Ausführungseinheit bzw. CPU laufen, kann ein Hardwarefehler in der Ausführungseinheit dazu führen, dass sowohl die Einspritzsteuerung als auch die Kraftmomentenüberwachung gleichzeitig ausfallen. Es wird daher aus Sicherheitsgründen bei herkömmlichen Motorsteuerungen eine weitere Sicherheitsebe- ne E3 vorgesehen, welche ihrerseits überprüft, ob die Überwachungsebene E2 einwandfrei funktioniert. Die Sicherheitsebene E3 führt eine Frage-Antwort- Kommunikation der Ausführungseinheit mit einer externen Hardware- Komponente, beispielsweise einem ASIC durch, wobei grundsätzlich die Funktionsfähigkeit der Ausführungseinheit bzw. des MikroControllers, insbesondere das Funktionieren der Anwendungsprogramme innerhalb der Ü- berwachungsebene E2 überprüft wird. Die Anwendungsprogramme der Überwachungsebene E2 führen eine Plausibilitätsprüfung durch. Beispielsweise lesen die Überwachungsprogramme der Überwachungsebene E2 eine Winkelstellung α des Gaspedals ein. Überschreitet die von den Anwendungsprogrammen der Einspritzsteuerungsebene El angegebene Menge von Kraftstoff einen bestimmten Schwellenwert, der von der sensorisch überwachten Gaspedalstellung abhängt, erkennt das auf Ebene E2 laufende Überwachungsprogramm, dass ein Fehler in der Einspritzsteuerung aufgetreten ist und veranlasst in der Regel das Abschalten des Motors aus Sicherheitsgründen. Die Überwachungsebene E2 enthält beispielsweise zusätzlich ein Momentenüberwachungsprogramm, welches das auf dem Motor erzeugte Kraftmoment überwacht und bei Überschreiten eines Schwellenwertes den Motor deaktiviert. Zur Implementierung der Überwachungsfunktion wird der Code der Überwachungsprogramme dupliziert als E2' abgelegt. Dabei wird der Algorithmus bzw. das Programm von E2' mit Default- Daten bzw. Testdaten durchgerechnet. Das Programm der Sicherheitsebene E3, das beispielsweise auf einem ASIC, d. h. auf einer anwenderspezifisch integrierten Schaltung abläuft, legt ein bestimmtes Bit-Muster als Frage an die Ausführungs- einheit bzw. CPU an, welche das in Kopie vorliegende Überwachungsprogramm gemäß E- bene E2' mit diesem Default-Wert durchrechnet und ein Antwort- Bit- Muster an das Sicherheitsprogramm der Ebene E3 in der anwenderspezifischen integrierten Schaltung ASIC abgibt. Das Sicherheitsprogramm vergleicht das Antwort- Bit- Muster mit einem Referenz- Bit- Muster, um festzustellen, ob das Überwachungsprogramm innerhalb der CPU noch fehlerfrei funktioniert. Das Sicherheitsprogramm innerhalb der anwenderspezifisch integrierten Schaltung läuft auf einer anderen Hardware, nämlich dem ASIC, ab als das Überwachungsprogramm, welches auf einer Ausführungseinheit bzw. CPU abläuft. Daher bildet diese her- kömmliche Vorgehensweise eine gewisse Sicherheit gegenüber Hardware- Fehlern innerhalb der CPU.
Ein Nachteil des herkömmlichen Sicherheitskonzepts, wie es in Figur 1 dargestellt ist, be- steht allerdings darin, dass die Überwachungsprogramme für den Befehlstest zum Durchrechnen mit Default- bzw. Testwerten in Kopie vorliegen müssen. Daher wird der Speicherplatz zum Ablegen der kopierten Programmbefehle auf der Überwachungsebene E2' benötigt.
Ein weiterer Nachteil des herkömmlichen Befehlstest, bei dem Default- bzw. Testdaten als Eingabedaten für die kopierten Überwachungsprogramme E2' dienen, besteht darin, dass Operanden-abhängige Fehler nicht detektiert werden.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Verfahren zur Überwachung der Funktionsfähigkeit einer Steuerung zu schaffen, das auch Operanden-abhängige Fehler detektiert.
Die Erfindung schafft ein Verfahren zur Überwachung der Funktionsfähigkeit einer Steuerung, die auf einem System mit mehreren Ausführungseinheiten läuft, wobei ein Überwa- chungsprogramm in einem Vergleichs-Betriebsmodus VM auf mehreren Ausführungseinheiten des Systems ausgeführt wird und wobei die bei der Ausführung des Überwachungsprogramms die von diesen Ausführungseinheiten abgegebenen Signale zur Erkennung eines Fehlers miteinander verglichen werden.
Ein Vorteil des erfindungsgemäßen Verfahrens besteht darin, dass kein Speicherplatz für kopierte Programmbefehle eines Überwachungsprogramms verschwendet wird.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird das Überwachungsprogramm durch ein Momentenüberwachungsprogramm gebildet, das ein durch einen Motor erzeugtes Moment überwacht.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird die Steuerung durch eine Motorsteuerung gebildet.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird das Überwachungsprogramm synchron auf den Ausführungseinheiten ausgeführt. Bei einer alternativen Ausführungsform des erfindungsgemäßen Verfahrens wird das Überwachungsprogramm asynchron auf den Ausführungseinheiten ausgeführt.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird das System nach er- folgter Ausführung des Überwachungsprogramms in einen Performanz-Betriebsmodus umgeschaltet, in dem die Ausführungseinheiten unterschiedliche Programme ausführen.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens führen die in dem Performanz-Betriebsmodus ausgeführten Programme die Steuerung durch.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird das Überwachungsprogramm periodisch ausgeführt.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird ein Fehler bei der Aus- führung des Überwachungsprogramms erkannt, wenn die von den Ausführungseinheiten bei der Ausführung des Überwachungsprogramms abgegebenen Signale voneinander abweichen.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird nach Erkennung eines Fehlers bei der Ausführung des Überwachungsprogramms eine durch die Steuerung gesteuerte Einheit abgeschaltet.
Die Erfindung schafft ferner eine Steuerung mit mehreren Ausführungseinheiten, wobei ein Überwachungsprogramm in einem Vergleichs- Betriebsmodus VM auf mehreren Ausfüh- rungseinheiten ausgeführt wird und die bei der Ausführung des Überwachungsprogramms von den Ausführungseinheiten abgegebenen Signale zur Erkennung eines Fehlers miteinander verglichen werden.
Bei einer Ausführungsform der erfindungsgemäßen Steuerung ist das Überwachungspro- gramm ein Momentenüberwachungsprogramm, das ein durch einen Motor erzeugtes Moment überwacht.
Bei einer Ausführungsform der erfindungsgemäßen Steuerung ist die Steuerung eine Motorsteuerung.
Bei einer Ausführungsform der erfindungsgemäßen Steuerung werden die Ausführungseinheiten durch einen Mikroprozessor, einen Co-Prozessor, einen digitalen Signal-Prozessor DSP, eine Gleitpunktberechnungseinheit FPU oder durch eine arithmetisch logische Einheit ALU gebildet.
Im Weiteren werden bevorzugte Ausführungsformen des erfindungsgemäßen Verfahrens und der erfindungsgemäßen Steuerung unter Bezugnahme auf die beigefügten Figuren zur Erläuterung erfindungswesentlicher Merkmale beschrieben.
Es zeigen:
Figur 1 ein Diagramm zur Darstellung eines herkömmlichen Sicherheitskonzepts mit drei Ebenen;
Figur 2 ein Blockschaltbild einer bei dem erfindungsgemäßen Verfahren eingesetzten
Umschalt- und Vergleichseinheit;
Figur 3 ein Blockdiagramm zur Darstellung einer möglichen Ausführungsform der erfindungsgemäßen Steuerung;
Figur 4 ein Ablaufdiagramm zur Erläuterung des erfindungsgemäßen Verfahrens;
Figur 5 ein Zeitablaufdiagramm zur Erläuterung einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens.
Wie man aus Figur 2 erkennen kann, ist eine Umschalt- und Vergleichsschaltung 1 ein- gangsseitig an N+l Ausführungseinheiten 2 angeschlossen und erhält logische Eingangssignale E0, Ei, E2, E3 ... EN von den Ausführungseinheiten 2-i. Die Umschalt- und Vergleichseinheit 1 enthält eine Vergleichslogik IA und eine Schaltlogik IB.
Das in Figur 2 dargestellte System kann in mindestens zwei Betriebmodi betrieben werden. In einem ersten Betriebsmodus zur Leistungssteigerung, der auch als Performanz-
Betriebsmodus PM bezeichnet wird, verarbeiten die Ausführungseinheiten 1-i bzw. Cores parallel unterschiedliche Programme bzw. Tasks. Bei den Ausführungseinheiten 2-i kann es sich um beliebige Ausführungseinheiten 2-i zur Ausführung einer Berechnungsanweisung, beispielsweise um einen Prozessor, eine Gleitpunktberechnungseinheit FPU, einen digitalen Signalprozessor DSP, einen Co-Prozessor oder um eine arithmetisch logische Berechnungseinheit ALU handeln. Die Abarbeitung der Programme durch die verschiedenen Ausführungseinheiten 2-i im Performanz-Modus PM kann synchron oder asynchron durchgeführt werden. Im Leistungsmodus erfolgt keine redundante Bearbeitung, sondern die Ausführungseinheiten 2-i führen verschiedene Berechnung bzw. Programme parallel durch. Im reinen Performanz- Betriebsmodus PM werden alle Eingangssignale E, auf entsprechende Ausgangssignale A1 geschaltet bzw. geleitet.
Neben dem Einsatz eines superskalaren Berechnungssystems besteht der zweite Grund für eine Multi-Core- Architektur darin, die Sicherheit der Signalverarbeitung zu steigern, indem mehrere Ausführungseinheiten 2-i redundant das gleiche Programm abarbeiten. In diesem zweiten Betriebsmodus, der auch als Sicherheitsmodus bzw. Safety Mode oder Vergleichs- Betriebsmodus VM bezeichnet wird, werden die Ergebnisse bzw. logischen Ausgangssignale der Ausführungseinheiten durch die Umschalt- und Vergleichsschaltung 1 miteinander verglichen, sodass ein aufgetretener Fehler bzw. eine Signalabweichung durch einen Vergleich auf Übereinstimmung erkannt werden kann. Im reinen Vergleichs- Betriebsmodus VM werden daher alle Eingangssignale E1 auf nur genau ein einziges Ausgangssignal A1 geleitet bzw. abgebildet. Mischformen sind möglich. In der konfigurierbaren Schaltlogik IB wird angegeben, wie viele Ausgangsanschlüsse bzw. Ausgangssignale A1 vorgesehen sind. Weiterhin wird in der Schaltlogik IB abgelegt, welche Eingangssignale E, zu welchem der Ausgangssignale A1 beitragen. In der Schaltlogik IB ist somit eine Abbildungsfunktion abgelegt, die Eingangssignale E, verschiedenen Ausgangssignalen A, zuordnen.
Die Verarbeitungslogik IA legt bei jedem Ausgangssignal A1 fest, in welcher Form die Eingangssignale zu dem jeweiligen Ausgangssignal beitragen. Beispielsweise wird das Ausgangssignal A0 durch die Eingangssignale Ei, ..., EN erzeugt. Für m=l entspricht dies einfach einer Durchschaltung eines Eingangssignals. Für M=2 werden zwei Eingangssignale Ei, E2 miteinander verglichen. Dieser Vergleich kann synchron oder asynchron durch die Schaltung 1 durchgeführt werden. Dabei kann der Vergleich bitweise erfolgen oder alternativ werden nur signifikante Bits miteinander verglichen. Bei M>3 bestehen verschiedene Möglichkeiten. Eine erste Möglichkeit besteht darin, dass alle Signale miteinander verglichen werden und bei Vorhandensein mindestens zweier verschiedener Werte ein Fehler detektiert wird, der optional durch die Umschalt- und Vergleichsschaltung 1 signalisiert wird. Eine weitere Möglichkeit besteht darin, dass eine K aus m-Auswahl vorgenommen wird, wobei K>M/2 ist. Dies wird bei einer Ausführungsform durch das Vorsehen von Vergleichern bzw. Komparatoren realisiert. Dabei wird optional ein erstes Fehlersignal generiert, wenn eines der Eingangssignale als abweichend von den anderen Eingangssignalen erkannt wird. Bei einem von dem ersten Fehlersignal verschiedenen zweiten Fehlersignal können alle drei Eingangssignale voneinander abweichen. Bei einer weiteren Ausführungsform werden die Eingangssignalwerte einer weiteren Berechnungseinheit zugeführt, die beispielsweise einen Mittelwert oder einen Medianwert berechnet bzw. einen fehlertoleranten Algorithmus FTA durchführt. Bei einem fehlertoleranten Algorithmus werden die Extremwerte der Eingangssignalwerte gestrichen bzw. ignoriert und eine Mittlung über die restlichen Signalwerte vorgenommen. Bei einer Ausführungsform erfolgt die Mittlung über die gesamte Menge der restlichen Signalwerte. Bei einer alternativen Ausführungsform erfolgt eine Mittelung über eine in der Hardware leicht zu bildende Teilmenge der verbleibenden Signalwerte. Während bei der Mittelwertbildung lediglich eine Addition und eine Division vorgenommen werden müssen, erfordern FTM, FTA oder die Medianwertbildung teilweise eine Sortierung der Eingangssignalwerte. Bei einer Ausführungsform wird bei hinreichend großen Signalabweichungen bzw. Extrem- werten optional ein Fehlersignal ausgegeben bzw. angezeigt. Die verschiedenen genannten Möglichkeiten zur Signalverarbeitung zu einem Signal stellen Vergleichsoperationen dar. Die Verarbeitungslogik IA legt die genaue Gestaltung der vorzunehmenden Vergleichsoperation für jedes Ausgangssignal A, und somit auch für die Eingangssignale E, fest. Die Kombination der Informationen innerhalb der Schaltlogik IB, d. h. die Zuordnungsfunktion der in der Ver- arbeitungslogik IA angegebenen Vergleichsoperation pro Ausgangssignal bzw. pro Funktionswert stellt eine Betriebsmodusinformation dar und legt den Betriebsmodus fest. Diese Information ist in der Regel mehrwertig und wird durch mehr als ein logisches Bit dargestellt. Für den Fall, dass nur zwei Ausführungseinheiten 2-i vorgesehen ist und somit nur ein Vergleichsmodus existiert, kann die gesamte Information in dem Betriebsmodus auf ein einziges logisches Bit kompensiert werden.
Eine Umschaltung des Systems von dem Performanz-Betriebsmodus PM in einen Ver- gleichs-Betriebsmodus VM erfolgt im Allgemeinen dadurch, dass die Ausführungseinheiten 2-i, die in dem Performanz-Betriebsmodus PM auf verschiedene Signalausgänge abgebildet bzw. durchgeschaltet sind, in dem Vergleichsbetriebsmodus VM auf den gleichen Signalausgang abgebildet bzw. durchgeschaltet werden. Vorzugsweise wird dies dadurch realisiert, dass eine Teilmenge von Ausführungseinheiten 2-i vorgesehen werden, bei denen im Performanz-Betriebsmodus PM alle Eingangssignale E„ die in der Teilmenge zu berücksichtigen sind, direkt auf korrespondierende Ausgangssignale A1 geschaltet werden, während die Ein- gangssignale in dem Vergleichsmodus VM alle auf einen einzigen Signalausgang abgebildet bzw. an diesen durchgeschaltet werden. Alternativ kann eine Umschaltung dadurch realisiert werden, dass Paarungen geändert werden.
Zwischen den verschiedenen Betriebsmodi kann, über die Software gesteuert, dynamisch im laufenden Betrieb umgeschaltet werden. Ausgelöst wird die Umschaltung bei einer Ausführungsform über die Ausführung von speziellen Umschaltbefehlen bzw. Umschaltinstruktionen, speziellen Instruktionssequenzen, explizit gekennzeichneten Instruktionen oder durch den Zugriff auf bestimmte Adressen durch mindestens eine der Ausführungseinheiten 2-i des Systems.
Die Umschaltung zwischen dem Sicherheitsmodus VM, in dem eine redundante Abarbeitung und Prüfung erfolgt und den Leistungs- bzw. Performanz- Betriebsmodus PM, bei dem eine Leistungssteigerung durch separate Programmabarbeitung erreicht wird, erfolgt durch die Umschalteinrichtung 1. Bei einer Ausführungsform erfolgen zur Umschaltung eine Kennzeichnung der Programme, Anwendungsprogramme, Programmteile oder auch der Programmbefehle durch eine Kennung, durch welche erkennbar ist, ob diese Programmbefehle sicherheitsrelevant sind, d. h. in dem Sicherheitsbetriebsmodus bzw. Vergleichs-
Betriebsmodus VM abgearbeitet werden müssen, oder dem Leistungs- bzw. Performanz- Betriebsmodus PM zugänglich gemacht werden können. Die Kennzeichnung kann durch ein Bit in dem Programmbefehl erfolgen. Alternativ kann durch einen speziellen Programmbefehl die darauf folgende Sequenz gekennzeichnet werden.
Im Sicherheitsbetriebsmodus bzw. Safety Mode VM dauert die Berechnung der Ergebnisse bzw. Ausgangssignale der Ausführungseinheiten 2-i bei synchroner Abarbeitung auf den verschiedenen Ausführungseinheiten 2-i gleich lang. Die Ergebnisse stehen dann im Sicherheitsbetriebsmodus VM bei synchroner Abarbeitung der Umschalteinrichtung 1 gleichzeitig zur Verfügung. Stimmen die Ergebnisse überein, so werden die entsprechenden Daten freigegeben. Bei einer Signalabweichung erfolgt eine vorgegebene Fehlerreaktion.
Befindet sich das System im Performanz-Betriebsmodus PM, werden die Programme parallel abgearbeitet und Komparatoren bzw. Vergleiche innerhalb der Umschalt- und Vergleichs- Schaltung 1 werden nicht angesteuert.
Bei dem erfindungsgemäßen Verfahren zur Überwachung der Funktionsfähigkeit einer Steuerung, die auf einem System mit mehreren Ausführungseinheiten 2 läuft, wird mindestens ein Überwachungsprogramm in einem Vergleichs-Betriebsmodus VM auf mehreren oder sogar auf allen Ausführungseinheiten des Systems ausgeführt. Die bei der Ausführung des Überwachungsprogramms von diesen Ausführungseinheiten 2 abgegebenen Signale werden zur Erkennung eines Fehlers miteinander verglichen. Bei einer bevorzugten Ausführungsform der erfindungsgemäßen Steuerung weist diese mindestens drei Ausführungseinheiten 2 auf. Dasjenige Signal, das von den übrigen Signalen die größte Signalabweichung aufweist, wird beispielsweise anhand einer Mehrheitsentscheidung als fehlerhaft erkannt. Bei den Signalen handelt es sich bei einer Ausführungsform um digitale logische Signale, insbesondere um binäre Signale. Bei der erfindungsgemäßen Steuerung 4 handelt es sich bei einer bevor- zugten Ausführungsform um eine Motorsteuerung zur Steuerung eines Verbrennungsmotors. Bei alternativen Ausführungsformen handelt es sich bei der Steuerung 4 um eine Steuerung zur Ansteuerung eines Elektromotors. Das Überwachungsprogramm wird beispielsweise durch ein Momentenüberwachungsprogramm gebildet, welches ein durch den Verbren- nungs- oder Elektromotor erzeugtes Kraftmoment überwacht. Dabei kann das Überwachungsprogramm synchron oder asynchron auf den Ausführungseinheiten 2 ausgeführt werden.
Bei dem erfindungsgemäßen Verfahren werden die normalen Anwendungsprogramme zur Motorsteuerung in dem Performanz- Betriebsmodus PM ausgeführt, d. h. jede Ausführungseinheit 2 des Systems führt zur Leistungssteigerung ein Programm zur Steuerung durch, während die anderen Ausführungseinheiten 2 ihrerseits ein davon unterschiedliches Anwendungsprogramm ausführen. Das auf Ebene E2 laufende Überwachungsprogramm wird bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens periodisch aufgeru- fen. Bei dem erfindungsgemäßen Verfahren wird das Überwachungsprogramm in einem Vergleichs-Betriebsmodus VM auf mehreren Ausführungseinheiten 2 des Systems ausgeführt. Im Vergleichs-Betriebsmodus VM führen mehrere bzw. alle Ausführungseinheiten 2 des Systems das gleiche Überwachungsprogramm aus, wobei die dabei erzeugten Ausgangssignale zur Erkennung eines Fehlers miteinander verglichen werden. Bei einer mögli- chen Ausführungsform werden mehrere Überwachungsprogramme auf der Ebene E2 ausgeführt, die beispielsweise alle periodisch aufgerufen werden. Alle aufgerufenen Überwachungsprogramme werden im Vergleichs-Betriebsmodus VM ausgeführt. Bei einer alternativen Ausführungsform werden die Überwachungsprogramme auf eine bestimmte Anforderung bzw. einen Anforderungsbefehl hin aufgerufen und anschließend im Vergleichs- Betriebsmodus VM von mehreren bzw. mindestens zwei Ausführungseinheiten 2 des Systems ausgeführt. Ein derartiger Anforderungsbefehl zur Ausführung des Überwachungsprogramms kann beispielsweise durch einen Interrupt ausgelöst werden.
Nach erfolgter Ausführung des Überwachungsprogramms wird das System zurück in einen Performanz-Betriebsmodus PM umgeschaltet, in dem die Ausführungseinheiten 2 vorzugsweise unterschiedliche Programme der ersten Ebene El, beispielsweise Steuerungsprogramme, ausführen.
Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird ein Fehler bei der Aus- führung des Überwachungsprogramms in der Ebene E2 erkannt, wenn die von den Ausführungseinheiten 2 bei der Ausführung des Überwachungsprogramms im Vergleichs- Betriebsmodus VM abgegebenen Signale voneinander abweichen. Dabei wird vorzugsweise nach Erkennen eines Fehlers bei der Ausführung des Überwachungsprogramms eine durch die Steuerung 4 gesteuerte Einheit 5, beispielsweise ein Motor, abgeschaltet.
Figur 3 zeigt ein Blockschaltbild einer möglichen Ausführungsform des erfindungsgemäßen Steuerungssystems. Bei der in Figur 3 dargestellten Ausführungsform weist die erfindungsgemäße Steuerung 4 zwei Ausführungseinheiten 2A, 2 B auf. Bei den Ausführungseinheiten 2A, 2B kann es sich um vollständige Mikroprozessoren bzw. CPU, um Co- Prozessoren, digitale Signalprozessoren DSP, Gleitpunktberechnungseinheiten FPU oder um eine arithmetisch logische Einheit ALU handeln. Bei weiteren Ausführungsformen der erfindungsgemä- ßen Steuerung 4 sind mehr als zwei Ausführungseinheiten 2 vorgesehen. Bei der in Figur 3 dargestellten einfachen Ausführungsform werden die von den Ausführungseinheiten 2A, 2B erzeugten Signale jeweils in einem Zwischenspeicher 3A, 3B zwischengespeichert. Jede Ausführungseinheit 2 weist vorzugsweise ausgangsseitig einen eignen Zwischenspeicher 3 auf. Die zwischengespeicherten Ergebnisse bzw. Ausgangssignale der Ausführungseinhei- ten 2A, 2B werden einer Vergleichseinheit 1 zugeführt. Die Vergleichseinheit 4 kann beispielsweise durch die Umschalt- und Vergleichsschaltung 1, wie sie in Figur 2 dargestellt ist, gebildet werden. Der Vergleich der zwischengespeicherten Ausgangssignale können durch Ablauf eines entsprechenden Vergleichsprogramms und -Software oder fest verdrahtet in Hardware durchgeführt werden.
Figur 4 zeigt ein Ablaufdiagramm einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens zur Überwachung der Funktionsfähigkeit einer Steuerung.
Nach Aufruf des Überwachungsprogramms in der zweiten Ebene E2 erfolgt im Schritt Sl eine Umschaltung des Systems von dem Performanz-Betriebsmodus PM in den Vergleichs- Betriebsmodus VM. Anschließend werden die beiden Ausführungseinheiten 2A, 2B, wie sie in Figur 3 dargestellt sind, zur Ausführung des gleichen Überwachungsprogramms in den Schritten S2, S3 aktiviert und führen das gleiche Überwachungsprogramm, beispielsweise ein Kraftmomentenüberwachungsprogramm, aus. Bei der in Figur 4 dargestellten Ausfüh- rungsform berechnen die beiden Ausführungseinheiten 2A, 2B asynchron in den Schritten S2, S3 ein entsprechendes Ergebnissignal, welches in den Schritten S4, S5 in den jeweiligen Zwischenspeichern 3A, 3B zwischengespeichert wird. Bei einer alternativen Ausführungsform berechnen die beiden Ausführungseinheiten 2A, 2B in den Schritten S2, S3 das jeweilige Ausgangssignal bzw. den Ergebniswert synchron zueinander. Nach Vorliegen der beiden Ergebniswerte bzw. Ausgangssignale wird im Schritt S6 vorzugsweise durch die Umschalt- und Vergleichsschaltung 1 ein Vergleich zwischen beiden Ausgangssignalen durchgeführt. Weichen die beiden Signale voneinander ab, wird ein Fehler erkannt und es erfolgt anschlie- ßend eine entsprechende Fehlerbehandlung. Bei einer sicherheitsrelevanten Anwendung wird eine durch die Steuerung 4 angesteuerte Einheit 5, beispielsweise ein Motor, abgeschaltet. Der Vergleich in Schritt S6 kann entweder durch eine entsprechende Vergleichsoperation per Software nach anschließendem Auslesen des Zwischenspeichers 3A, 3B durchgeführt werden oder bei einer alternativen Ausführungsform erfolgt der Vergleich durch eine fest verdrahtete Schaltung.
Figur 5 zeigt ein Zeitablaufdiagramm zur Erläuterung einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens. Bei dieser Ausführungsform wird das Überwachungspro- gramm in Ebene E2 periodisch aufgerufen und im Vergleichs-Betriebsmodus VM durch mehrere Ausführungseinheiten 2 gleichzeitig ausgeführt. Nach Ausführung des Überwachungsprogramms kehrt das System in dem Performanz- Betriebsmodus PM zurück und führt in der Ebene El die eigentlichen Steuerungsprogramme durch.
Bei einer alternativen Ausführungsform der erfindungsgemäßen Steuerung 4 arbeitet die Steuerung 4 stets im Performanz- Betriebsmodus PM, wobei Überwachungsprogramme mit mindestens zwei Ausführungseinheiten 2 asynchron berechnet werden. Die von den Ausführungseinheiten dabei ausgegebenen Ergebnisse bzw. Ausgangssignale werden dabei zur Fehlererkennung miteinander verglichen. Bei dieser Ausführungsform müssen allerdings die Ergebnisse jeweils zwischengespeichert werden und die Ergebnisse werden anschließend zweimal miteinander verglichen, nämlich einmal auf der ersten Ausführungseinheit 2A und auf der zweiten Ausführungseinheit 2 B, um etwaige Hardware- Fehler der beiden Ausführungseinheiten 2 zu berücksichtigen. Daher ist diese Ausführungsform aufwändiger, als eine Ausführungsform, bei der das Überwachungsprogramm im Vergleichs-Betriebsmodus VM ausgeführt wird.
Das erfindungsgemäß Verfahren erlaubt auch die Detektion von Operanden-abhängigen Fehlern. Darüber hinaus führt das erfindungsgemäße Verfahren zu einer deutlichen Einsparung des Speicherplatzes im Vergleich zu dem herkömmlichen in Figur 1 dargestellten Si- cherheitskonzept.
Bei einer möglichen Ausführungsform der erfindungsgemäßen Steuerung 4 weist diese mindestens drei Ausführungseinheiten 2 auf, wobei mittels einer Mehrheitsentscheidung bei einer Signalabweichung festgestellt werden kann, welche Ausführungseinheit 2 vermutlich fehlerhaft arbeitet. Diese Ausführungseinheit 2 führt anschließend vorzugsweise einen
Selbsttest aus, um festzustellen, ob diese Ausführungseinheit 2 tatsächlich ausgefallen ist. Bei einer Ausführungsform wird die Ausführungseinheit 2 deaktiviert, wenn der Selbsttest ergibt, dass die Ausführungseinheit 2 tatsächlich ausgefallen ist. Bei dieser Ausführungsform arbeitet das System somit sogar fehlertolerant.
Zur Absicherung gegen permanente Fehler in beiden Cores bzw. Ausführungseinheiten 2, wie sie beispielsweise durch einen Fertigungsfehler entstehen, erfolgt bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens jeweils ein Selbsttest der Ausführungseinheiten 2.
Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens erfolgt die Aus- führung von Überwachungsprogrammen in der Ebene E2 im Vergleichs-Betriebsmodus VM, wobei zusätzlich zur weiteren Absicherung eine Sicherheitsebene E3 vorgesehen ist, die weiterhin einen Befehlstest zur Überwachung der Funktionsfähigkeit der Überwachungsprogramme ausführt. Eine derartige Ausführungsform ist bei besonders sicherheitskritischen Anwendungen möglich.

Claims

Ansprüche
1. Verfahren zur Überwachung der Funktionsfähigkeit einer Steuerung, die auf einem System mit mehreren Ausführungseinheiten (2) läuft, wobei ein Überwachungsprogramm in einem Vergleichs- Betriebsmodus (VM) auf mehre- ren Ausführungseinheiten (2) des Systems ausgeführt wird und wobei die bei der Ausführung des Überwachungsprogramms von diesen Ausführungseinheiten (2) abgegebenen Signale zur Erkennung eines Fehlers miteinander verglichen werden.
2. Verfahren nach Anspruch 1 wobei das Überwachungsprogramm durch ein Momenten-Überwachungsprogramm gebildet wird, das ein durch einen Motor erzeugtes Moment überwacht.
3. Verfahren nach Anspruch 1, wobei die Steuerung durch eine Motorsteuerung gebildet wird.
4. Verfahren nach Anspruch 1, wobei das Überwachungsprogramm synchron auf den Ausführungseinheiten (2) ausgeführt wird.
5. Verfahren nach Anspruch 1, wobei das Überwachungsprogramm asynchron auf den Ausführungseinheiten (2) ausgeführt wird.
6. Verfahren nach Anspruch 1, wobei das System nach erfolgter Ausführung des Überwachungsprogramms in einem
Performanz-Betriebsmodus (PM) umgeschaltet wird, in dem die Ausführungseinheiten (2) unterschiedliche Programme ausführen.
7. Verfahren nach Anspruch 6, wobei die in dem Performanz-Betriebsmodus (PM) ausgeführten Programme die Steuerung durchführen.
8. Verfahren nach Anspruch 1, wobei das Überwachungsprogramm periodisch ausgeführt wird.
9. Verfahren nach Anspruch 1, wobei ein Fehler bei der Ausführung des Überwachungsprogramms erkannt wird, wenn die von den Ausführungseinheiten (2) bei der Ausführung des Überwachungsprogramms abgegebenen Signale voneinander abweichen.
10. Verfahren nach Anspruch 9, wobei nach Erkennen eines Fehlers bei der Ausführung des Überwachungsprogramms eine durch die Steuerung (4) gesteuerte Einheit (5) abgeschaltet wird.
11. Steuerung (4) mit mehreren Ausführungseinheiten, wobei ein Überwachungsprogramm in einem Vergleichs-Betriebsmodus (VM) auf mehre- ren Ausführungseinheiten (2) ausgeführt wird und die bei der Ausführung des Überwachungsprogramms von den Ausführungseinheiten (2) abgegebenen Signale zur Erkennung eines Fehlers miteinander verglichen werden.
12. Steuerung nach Anspruch 11, wobei das Überwachungsprogramm ein Momenten-Überwachungsprogramm ist, das ein durch einen Motor erzeugtes Moment überwacht.
13. Steuerung nach Anspruch 11, wobei die Steuerung (4) eine Motorsteuerung ist.
14. Steuerung nach Anspruch 11, wobei die Ausführungseinheiten (2) durch eine CPU, einen Co-Prozessor, einen digitalen Signalprozessor DSP, eine Gleitpunktberechnungseinheit FPU oder durch eine arithmetisch logische Einheit ALU gebildet werden.
PCT/EP2007/059904 2006-10-10 2007-09-19 Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors WO2008043650A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020097007279A KR101326316B1 (ko) 2006-10-10 2007-09-19 내연 기관의 엔진 제어 장치의 기능을 모니터링하기 위한 방법 및 장치
CN2007800377608A CN101523038B (zh) 2006-10-10 2007-09-19 用于对内燃机的发动机控制系统的功能能力进行监控的方法和装置
US12/308,184 US8296043B2 (en) 2006-10-10 2007-09-19 Method and device for monitoring a functional capacity of an engine controller of an internal combustion engine
JP2009515899A JP2009541636A (ja) 2006-10-10 2007-09-19 内燃機関のエンジン制御部の機能を監視するための方法および装置
EP07820348A EP2079917B1 (de) 2006-10-10 2007-09-19 Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006048169.0 2006-10-10
DE102006048169A DE102006048169A1 (de) 2006-10-10 2006-10-10 Verfahren zur Überwachung einer Funktionsfähigkeit einer Steuerung

Publications (1)

Publication Number Publication Date
WO2008043650A1 true WO2008043650A1 (de) 2008-04-17

Family

ID=38921796

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/059904 WO2008043650A1 (de) 2006-10-10 2007-09-19 Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors

Country Status (8)

Country Link
US (1) US8296043B2 (de)
EP (1) EP2079917B1 (de)
JP (1) JP2009541636A (de)
KR (1) KR101326316B1 (de)
CN (1) CN101523038B (de)
DE (1) DE102006048169A1 (de)
RU (1) RU2453903C2 (de)
WO (1) WO2008043650A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7941698B1 (en) * 2008-04-30 2011-05-10 Hewlett-Packard Development Company, L.P. Selective availability in processor systems
DE102008046512B4 (de) * 2008-09-10 2017-01-26 Continental Automotive Gmbh Verfahren für eine elektronische Motorsteuerung zur Ansteuerung von Aktoren von Einspritzventilen mit einer Fehlererkennung und Motorsteuerung
FI3920471T3 (fi) * 2009-09-08 2024-02-07 Abbott Diabetes Care Inc Menetelmiä ja tuotteita turvallisuuskriittisen sovelluksen isännöintiin valvomattomassa tietojenkäsittelylaitteessa
EP2513456B1 (de) * 2009-12-18 2015-02-25 Conti Temic microelectronic GmbH Überwachungsrechner in einem steuergerät
JP5341957B2 (ja) 2011-07-20 2013-11-13 トヨタ自動車株式会社 内燃機関の制御装置
WO2013038472A1 (ja) 2011-09-12 2013-03-21 トヨタ自動車株式会社 内燃機関の制御装置
US9488115B2 (en) 2011-10-04 2016-11-08 Toyota Jidosha Kabushiki Kaisha Control device of internal combustion engine
JP5614395B2 (ja) * 2011-10-26 2014-10-29 トヨタ自動車株式会社 内燃機関の制御装置
AU2012362593B2 (en) * 2011-12-29 2016-02-04 Ge Global Sourcing Llc Apparatus and method for controlling an internal combustion engine
US9058419B2 (en) * 2012-03-14 2015-06-16 GM Global Technology Operations LLC System and method for verifying the integrity of a safety-critical vehicle control system
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
DE102013202253A1 (de) * 2013-02-12 2014-08-14 Paravan Gmbh Schaltung zur Steuerung eines Beschleunigungs-, Brems- und Lenksystems eines Fahrzeugs
DE102014213206B4 (de) 2014-07-08 2022-03-17 Vitesco Technologies GmbH Steueranordnung für sicherheitsrelevante Aktoren

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5601063A (en) * 1995-02-02 1997-02-11 Nippondenso Co., Ltd. Fail-safe engine accelerator-throttle control
DE19900740A1 (de) * 1999-01-12 2000-07-13 Bosch Gmbh Robert Verfahren und Vorrichtung zum Betreiben einer Brennkraftmaschine
DE19928477A1 (de) * 1999-06-22 2000-12-28 Bosch Gmbh Robert Verfahren und Vorrichtung zur Steuerung einer Antriebseinheit eines Fahrzeugs
US6305347B1 (en) * 2000-03-06 2001-10-23 Ford Global Technologies, Inc. Monitor for lean capable engine
US6705286B1 (en) * 2002-09-20 2004-03-16 Ford Global Technologies, Llc Method and system for minimizing torque intervention of an electronic throttle controlled engine
DE102006003425A1 (de) * 2005-01-25 2006-08-31 Denso Corp., Kariya Verfahren und Vorrichtung zum Berechnen/Steuern eines Energieerzeugungsdrehmoments

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0711435B2 (ja) * 1985-07-23 1995-02-08 トヨタ自動車株式会社 内燃機関のセンサ異常判定方法
RU2015542C1 (ru) * 1991-06-24 1994-06-30 Институт проблем управления РАН Устройство для контроля и реконфигурации дублированной вычислительной системы
DE19537075B4 (de) 1995-10-05 2005-10-13 Robert Bosch Gmbh Verfahren und Vorrichtung zur Meßwerterfassung bei einer elektronischen Leistungssteuerung eines Fahrzeugs
KR100206887B1 (ko) * 1995-12-31 1999-07-01 구본준 프로그램 오동작 방지를 위한 씨피유
DE59813927D1 (de) * 1997-12-06 2007-04-12 Elan Schaltelemente Gmbh & Co Verfahren zur Überwachung einer technischen Anlage mit erhöhten Sicherheitsanforderungen insbesondere eines Handhabungsgerätes, sowie Überwachungs- und Steuergerät
US6678640B2 (en) * 1998-06-10 2004-01-13 Matsushita Electric Industrial Co., Ltd. Method and apparatus for parameter estimation, parameter estimation control and learning control
DE19841151A1 (de) * 1998-09-09 2000-03-16 Bosch Gmbh Robert Verfahren und Vorrichtung zum Betreiben und zur Überwachung einer Brennkraftmaschine
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
JP4121318B2 (ja) * 2002-06-26 2008-07-23 三菱電機株式会社 車両用のエンジン制御装置
JP4100108B2 (ja) * 2002-09-12 2008-06-11 株式会社デンソー 制御システム
DE10258426B4 (de) * 2002-12-13 2008-08-21 Siemens Ag Verfahren und Vorrichtung zum Überwachen einer Steuereinrichtung einer Brennkraftmaschine
DE10349581A1 (de) * 2003-10-24 2005-05-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit
JP2006042446A (ja) * 2004-07-23 2006-02-09 Yamaha Motor Co Ltd モータ制御システムの異常監視装置
KR20070062576A (ko) * 2004-10-25 2007-06-15 로베르트 보쉬 게엠베하 적어도 2개의 실행 유닛을 포함하는 컴퓨터 시스템에서프로그램 코드로부터 처리를 분리하기 위한 방법 및 장치
WO2006045776A1 (de) * 2004-10-25 2006-05-04 Robert Bosch Gmbh Verfahren und vorrichtung zur erzeugung eines modussignals bei einem rechnersystem mit mehreren komponenten
WO2006045785A1 (de) * 2004-10-25 2006-05-04 Robert Bosch Gmbh VERFAHREN UND VORRICHTUNG ZUR MODUSUMSCHALTtMG UND ZUM SIGNALVERGLEICH BEI EINEM RECHNERSYSTEM MIT WENIGSTENS ZWEI VERARBEITUNGSEINHEITEN
DE102005037222A1 (de) * 2004-10-25 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Auswertung eines Signals eines Rechnersystems mit wenigstens zwei Ausführungseinheiten
KR20070062568A (ko) * 2004-10-25 2007-06-15 로베르트 보쉬 게엠베하 적어도 2개의 처리 유닛들을 갖는 컴퓨터 시스템에서 모드전환 및 신호 비교를 위한 방법 및 장치
WO2006045775A1 (de) * 2004-10-25 2006-05-04 Robert Bosch Gmbh Verfahren und vorrichtung zur umschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
DE102005037223A1 (de) * 2004-10-25 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung bei einem Rechnersystem mit wenigstens zwei Ausführungseinheiten
KR20070085278A (ko) * 2004-10-25 2007-08-27 로베르트 보쉬 게엠베하 적어도 2개의 실행 유닛을 구비한 컴퓨터 시스템의 전환방법 및 그 전환 장치
DE502005005286D1 (de) * 2004-10-25 2008-10-16 Bosch Gmbh Robert Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
DE102005037213A1 (de) * 2004-10-25 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen Betriebsmodi eines Multiprozessorsystems durch wenigstens ein externes Signal
DE102005037242A1 (de) * 2004-10-25 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung und zum Signalvergleich bei einem Rechnersystem mit wenigstens zwei Verarbeitungseinheiten
JP2008518306A (ja) * 2004-10-25 2008-05-29 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つの処理ユニットを有する計算機システムにおける切り替えおよび信号比較の方法および装置
JP2008518297A (ja) * 2004-10-25 2008-05-29 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つの実行ユニットを有する計算機システムで切替を行うための装置および方法
EP1812860B1 (de) * 2004-10-25 2009-01-14 Robert Bosch Gmbh Verfahren und vorrichtung zur modusumschaltung und zum signalvergleich bei einem rechnersystem mit wenigstens zwei verarbeitungseinheiten
WO2006045773A2 (de) * 2004-10-25 2006-05-04 Robert Bosch Gmbh Vorrichtung und verfahren zur modusumschaltung bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
JP4294012B2 (ja) * 2005-07-28 2009-07-08 三菱電機株式会社 電子スロットル制御装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5601063A (en) * 1995-02-02 1997-02-11 Nippondenso Co., Ltd. Fail-safe engine accelerator-throttle control
DE19900740A1 (de) * 1999-01-12 2000-07-13 Bosch Gmbh Robert Verfahren und Vorrichtung zum Betreiben einer Brennkraftmaschine
DE19928477A1 (de) * 1999-06-22 2000-12-28 Bosch Gmbh Robert Verfahren und Vorrichtung zur Steuerung einer Antriebseinheit eines Fahrzeugs
US6305347B1 (en) * 2000-03-06 2001-10-23 Ford Global Technologies, Inc. Monitor for lean capable engine
US6705286B1 (en) * 2002-09-20 2004-03-16 Ford Global Technologies, Llc Method and system for minimizing torque intervention of an electronic throttle controlled engine
DE102006003425A1 (de) * 2005-01-25 2006-08-31 Denso Corp., Kariya Verfahren und Vorrichtung zum Berechnen/Steuern eines Energieerzeugungsdrehmoments

Also Published As

Publication number Publication date
RU2453903C2 (ru) 2012-06-20
CN101523038A (zh) 2009-09-02
CN101523038B (zh) 2012-11-07
EP2079917A1 (de) 2009-07-22
EP2079917B1 (de) 2012-11-21
US20100004841A1 (en) 2010-01-07
RU2009117704A (ru) 2010-11-20
US8296043B2 (en) 2012-10-23
JP2009541636A (ja) 2009-11-26
KR101326316B1 (ko) 2013-11-11
DE102006048169A1 (de) 2008-04-17
KR20090077773A (ko) 2009-07-15

Similar Documents

Publication Publication Date Title
EP2079917B1 (de) Verfahren und vorrichtung zur überwachung einer funktionsfähigkeit einer motorsteuerung eines verbrennungsmotors
EP1917592B1 (de) Rechnersystems mit wenigstens zwei ausführungseinheiten und einer vergleichseinheit sowie verfahren zu dessen steuerung
DE102014222860B4 (de) Elektronische Fahrzeugregelungseinheit
EP1639454A2 (de) Verfahren zur umschaltung zwischen wenigstens zwei betriebsmodi einer prozessoreinheit sowie entsprechende prozessoreinheit
EP1915690A2 (de) Verfahren und vorrichtung zur überwachung von funktionen eines rechnersystems
EP2907072B1 (de) Verfahren zur steuerung eines getrennten ablaufs von verknüpften programmblöcken und steuergerät
DE10332700A1 (de) Verfahren zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit sowie entsprechende Prozessoreinheit
EP1817662B1 (de) Verfahren und vorrichtung zur umschaltung zwischen betriebsmodi eines multiprozessorsystems durch wenigstens ein externes signal
WO2006032585A1 (de) Verfahren zur abarbeitung eines computerprogramms auf einem computersystem
EP1680737B1 (de) Verfahren und vorrichtung zur operandenverarbeitung in einer prozessoreinheit
EP1615087B1 (de) Steuer- und Regeleinheit
DE102008024193A1 (de) System mit konfigurierbaren Funktionseinheiten und Verfahren
DE102013221098B4 (de) Fahrzeugsteuereinheit
DE102011053580A1 (de) Verfahren zum betrieb einer elektrischen hilfskraftlenkung
DE102012221277A1 (de) Fahrzeugsteuervorrichtung
DE102004051991A1 (de) Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms
DE102017208484A1 (de) Verfahren und Vorrichtung zur Erkennung von Hardwarefehlern in Mikroprozessoren
WO2007017372A1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten
WO2004043737A2 (de) Steuereinheit zur auslösung eines insassenschutzmittels in einem kraftfahrzeug und verfahren zur überwachung der ordnungsgemässen funktion einer vorzugsweise solchen steuereinheit
EP0760132B1 (de) Schaltung zum betreiben von rechenbausteinen, insbesondere mikroprozessoren
EP1248965B1 (de) Verfahren zur verhinderung von fehlfunktionen in einem signalverarbeitenden system und prozessorsystem
DE102021212595A1 (de) Verfahren zum Überwachen eines Rechensystems
EP1915691A1 (de) Vorrichtung und verfahren zur steuerung eines rechnersystems
DE10151012A1 (de) Rechnersystem
DE102008021313A1 (de) Hydraulikkomponenten-Steuergerät und Verfahren zum Ansteuern von hydraulischen Komponenten mittels eines Steuergeräts

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780037760.8

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2007820348

Country of ref document: EP

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

Ref document number: 07820348

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2009515899

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1020097007279

Country of ref document: KR

ENP Entry into the national phase

Ref document number: 2009117704

Country of ref document: RU

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12308184

Country of ref document: US