WO2009000602A2 - Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit - Google Patents

Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit Download PDF

Info

Publication number
WO2009000602A2
WO2009000602A2 PCT/EP2008/056162 EP2008056162W WO2009000602A2 WO 2009000602 A2 WO2009000602 A2 WO 2009000602A2 EP 2008056162 W EP2008056162 W EP 2008056162W WO 2009000602 A2 WO2009000602 A2 WO 2009000602A2
Authority
WO
WIPO (PCT)
Prior art keywords
microcontroller
program
message
msg
execution
Prior art date
Application number
PCT/EP2008/056162
Other languages
English (en)
French (fr)
Other versions
WO2009000602A3 (de
Inventor
Zheng-Yu Jiang
Horst Geib
Dietmar Schmid
Original Assignee
Continental Automotive 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 Continental Automotive Gmbh filed Critical Continental Automotive Gmbh
Priority to EP08759778.7A priority Critical patent/EP2171585B1/de
Priority to KR1020157016700A priority patent/KR101722517B1/ko
Priority to US12/666,695 priority patent/US8392815B2/en
Publication of WO2009000602A2 publication Critical patent/WO2009000602A2/de
Publication of WO2009000602A3 publication Critical patent/WO2009000602A3/de

Links

Classifications

    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T8/00Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2270/00Further aspects of brake control systems not otherwise provided for
    • B60T2270/40Failsafe aspects of brake control systems
    • B60T2270/406Test-mode; Self-diagnosis

Definitions

  • the invention relates to a method for operating a microcontroller and an execution unit, which can be coupled to one another, and a correspondingly designed microcontroller and an execution unit for carrying out the method.
  • a monitoring of the program run in a microcomputer is known.
  • a copy of the Pro ⁇ program is run with the provided for the program input data or test data and comparing the output data of the copy with which the program and generates an error message if no match in addition to the running of the program in the microcomputer.
  • the document discloses that after the program has run and after the program parts have been run, a flag is set or changed and an error message is generated if not all flags are set or changed.
  • This moni ⁇ monitoring can be viewed as a program flow-monitoring.
  • the document discloses the monitoring of the program run in at least two interconnected microcomputers of an electronic device, in particular ei ⁇ ner sensor circuit for motor vehicles, wherein in a microcomputer, a request is generated, which is sent to the other microcomputer and there with predetermined input data the course of a Program causes a dependent of the output data response is sent back to the one Mikrocompu ⁇ ter and that in a microcomputer, the request and the response are compared.
  • This monitoring can be considered as a request-response monitoring.
  • the task underlying the invention is an Ver ⁇ drive for operating a microcontroller and an execution unit, which is simple and inexpensive, and to provide a correspondingly designed microcontroller and an execution unit for carrying out the method
  • the invention is characterized by a method for operating a microcontroller which is coupled to a Ausbowungs ⁇ unit, of input data by means of a program in the microcontroller generates a message for the execution unit in which dependent and transmitted and next to the message a check code in response to is the Abarbei ⁇ processing of the program is generated and transmitted by the microcontroller to the off ⁇ chtungsaku.
  • the test code Through the test code, the hangig generated by the execution of the program in the microcontroller, the execution of the program of a unit independent of the microcontroller, in particular the execution unit can be displayed in a simple manner.
  • the execution unit is particularly suitable for receiving the test code, because the execution unit is present, for example, in the motor vehicle in the form of a control unit.
  • the message comprises the check code.
  • the check code in addition to the data processed in the microcontroller sensor data to the execution unit via advicete ⁇ message also includes the check code, whereby the transmission of the check codes particularly inexpensively implement initiated.
  • a further advantageous embodiment is characterized by a method in which the microcontroller comprises a monitoring unit, which monitors the execution of the program and generates the check code.
  • the microcontroller comprises a monitoring unit, which monitors the execution of the program and generates the check code.
  • the roller microcontrollers associated monitoring unit monitors the correct From ⁇ processing of the program in the microcontroller and si ⁇ cheruci so that data generated are identified as defective by the Prufcodes by a faulty execution of the program.
  • the monitoring unit can be integrated as an additional program part in the program of the microcontroller or integrated as a hardware function module in the microcontroller.
  • a further advantageous embodiment is characterized by a method in which the processing of the monitoring unit is monitored and only in the case of a positive result. result in an error-free check code.
  • the processing of the monitoring unit is monitored additionally, the monitoring unit via ⁇ , so that, from a faulty execution of the program, or from a overlooked erroneous execution of the program due to a faulty Abarbei ⁇ processing of the monitoring unit generated sensor data as ungül ⁇ tig means Check code.
  • a logically predefined check code is generated, for example, by determining future values of the check code, depending on previously transmitted values of the check code.
  • test code is generated by means of a forward and / or scrubwartsiereers logically predefined.
  • This refinement enables a particularly simple prediction of the test code to be received in the case of error-free execution of the program and a particularly simple program-technical and hardware-technical implementation.
  • forward and / or backward payment it is possible, for example, for a faulty test code, the value of the check code of the previously transmitted message can be specified, so that in this case there is no change in the value of the check code by means of the forward and / or reverse payment.
  • a fixed value can also be specified, for example a value of 0.
  • the test code is transmitted in a predetermined time interval. This can be recognized and in a faulty execution of the program, for example a so-called slopes of the program and an associated missing or time-shifted over Mitt ⁇ development of the message.
  • the microcontroller includes a hardware monitoring unit, which is controlled by the monitoring unit ⁇ at predetermined times, being reset by the hardware monitoring unit at an undershooting or overshooting of the predetermined time of the microcontroller.
  • the invention is characterized by a method for operating an execution unit, which is provided with a
  • Microcontroller can be coupled, in which it is checked whether the test code is logically predefined and / or the test code within the slaughter certain time interval in which the message is valid features ge ⁇ at a po ⁇ sitiven result of the check and the post ⁇ report is marked as invalid at a negative result has been received.
  • the execution unit is particularly suitable to receive the check code because it is usually present, such as in Automotive ⁇ testify where sensor circuits with control Advised that can be considered as a type of execution unit are ge ⁇ coupled and independent of the microcontroller in the sensor circuit is working. In the execution unit is berpruft u- whether the received check code by the microcontroller lo ⁇ cally is predefined and / or has been received within the predetermined time interval.
  • the message associated with the check code is marked valid or invalid according to the result of the check. Invalidly marked messages can be ignored in the execution unit, for example, and / or by means of another message, the execution unit can inform the microcontroller that erroneous messages have been received.
  • a further advantageous embodiment is characterized by a microcontroller, which is coupled to an execution unit and is adapted dependent on a ⁇ input data by a program in the microcontroller to generate a message for the execution unit and to transmit ⁇ . Further, the microcontroller is configured to generate a check code of the message depending on the Abar ⁇ processing of the program and to transmit from the microcontroller to the execution unit. Due to the design of the microcontroller to generate the Prufcodes this be ⁇ Sonder can be produced beneficial and very quickly to have oh ⁇ ne time-critical impact on the execution of the pro ⁇ program. Furthermore, the generation of the check code is in MicroController especially easy to implement if, for example, the test code is predefined by means of a forward and / or backward payers logically.
  • the microcontroller includes a monitoring unit that is to removablebil ⁇ det to monitor the execution of the program and to generate the check code.
  • the monitoring unit enables particularly rapid monitoring of the execution of the program and particularly rapid generation of the check code, without having time-critical effects on the execution of the program.
  • the microcontroller comprises a further monitoring unit, which is designed to monitor the monitoring unit and to generate a fault-free check code only if the result of the monitoring is positive.
  • the additional monitoring unit for monitoring the monitoring unit which monitors the execution of the program, especially increased the capability ⁇ ness, an erroneous execution of the program and to recognize a faulty processing of Uberwachungs ⁇ unit to ⁇ satzlich and display means Prufcodes the Ausbowungsein ⁇ ness , As a result, the processed erroneous processed sensor data processing is avoided and avoided, for example in the case of a brake system in the motor vehicle, an unwanted brake intervention particularly secure.
  • a further advantageous embodiment is characterized by an execution unit that can be coupled to a microcontroller according to the illustrated embodiments and includes an evaluation unit which is designed to check whether the test code is logically predefined and / or the check code was collected emp ⁇ within the predetermined time interval, wherein the evaluation unit identifies at a positive result of checking the message as valid characterizing ⁇ net and at a negative result, the message as ungul- tig.
  • the evaluation unit allows this particular ⁇ DERS simple and fast, the check code to überprü ⁇ fen to determine whether it is logically predefined and / or has been received within the predetermined time interval.
  • the evaluation min ⁇ least featuring a Interruptauslosung as valid and / or invalid an error-free and / or faulty check code, for example, by means of flags, and / or means.
  • the messages using flags as faulty labeled in ⁇ recorded can be ignored, for example.
  • the invention is characterized by a system that comprises a microcontroller according to the illustrated embodiments and an execution unit coupled to the microcontroller in accordance with the illustrated embodiment.
  • a particularly ge ⁇ One suitable system for monitoring the execution of the program results in the microcontroller, which is simple and inexpensive reali ⁇ sierbar.
  • Figure 1 is a schematic representation of a system with
  • FIG. 2 shows a further schematic representation of the system with microcontroller and execution unit
  • FIG. 3 shows a further schematic representation of the system with microcontroller and execution unit
  • FIG. 4 is a flowchart of monitoring a program execution
  • FIG. 5 shows a time profile of a check code
  • FIG. 6 is a flow chart of generation of a check code.
  • a sensor circuit SC (FIG. 1) comprises a microcontroller MC, the sensor data S_1 and S_2, which, for example, the
  • Data of a lateral acceleration sensor and a yaw rate sors ⁇ correspond in a motor vehicle, receives and processed by a program PR.
  • the processed sensor data DATA means of a message MSG to rocontroller of the micro- MC independent execution unit EU übermit ⁇ telt.
  • the execution unit EU can be formed for example as an ESP control unit, which further processes the received sensor data and ⁇ dependent driving of these brakes of the motor vehicle by means of braking actuators ACT.
  • the execution unit EU additionally comprises an evaluation unit AU.
  • a check code CV is dependent generated by the processing of the PR program by the program PR itself and transmitted to the execution unit EU Assigned From ⁇ evaluation unit AU.
  • the check code CV denotes DA in the in the in parallel transmitted message MSG ent ⁇ preserved data DATA as valid or invalid depending on the execution of the PR program in the microcontroller MC.
  • An error-free processing and the generation of error-free data DATA is indicated by means of an error-free CV Prufcodes the off ⁇ bowungsstatt EU, whereas faulty data DATA are displayed in the message MSG by means of a faulty Prufcodes CV of the execution unit EU.
  • the microcontroller MC comprises not only the program PR but also a monitoring unit WD and a hardware monitoring unit HW_WD.
  • the monitoring unit WD can be integrated within the microcontroller MC in the program PR as an additional program part or as a hardware function module.
  • the Uberwachungsein ⁇ integrated WD monitors the PR program in the microcontroller MC, for example, in terms of a request-response monitoring CR, wherein the monitoring unit WD generates a request and transmitted to the program PR.
  • the PR program is based zugeord ⁇ Neten from the request input data processed and associated with the results from the execution of the program PR output data of a response that is transmitted back to the Uberwa ⁇ monitoring unit WD and compared there with a vorgege- surrounded response. In case of mismatch of the
  • the message MSG in this exemplary embodiment includes not only the processed sensor data DATA but also the check code CV.
  • the message MSG may correspond to a controller area network message (CAN).
  • the message MSG additionally comprises an error code ERR, which interprets ne faults and errors of the sensor circuit SC, such as voltage fluctuations, the execution unit EU indicates.
  • the execution unit EU can mark the message as valid and / or invalid based on the errors and errors indicated by the error code ERR.
  • microcontroller MC hardware monitoring unit HW_WD is driven by the monitoring unit WD toSTI ⁇ certain time points, that can be triggered in the absence of augmentation or undershooting or overshooting of the predetermined points in time, the microcontroller MC by means of the monitoring unit hardware HW WD is reset and the execution of the program PR is restarted.
  • the microcontroller MC in addition to the monitoring unit WD included in the sensor circuit SC another Uberwa ⁇ monitoring unit WD WD, which monitors the processing of the monitoring unit WD.
  • the further monitoring unit WD WD can be integrated in the program PR as an additional program part of the microcontroller MC or as a further functional module in the microcontroller.
  • the further monitoring unit WD_WD can be designed, for example, in the sense of a program sequence monitoring PF, so that flags are set or changed during the processing of the monitoring unit WD.
  • the monitoring unit further detects a WD_WD remedial ⁇ adhered processing of the monitoring unit by means of the flags, for example, WD thereby are that not all of the flags set or changed.
  • a program is started in a step S20 on the basis of a flowchart.
  • the monitoring unit WD transmits a request index i_rq to the program PR in the sense of a request-response monitoring CR.
  • the program PR is processed and output data generated.
  • a response index in step S22 i_rsp ⁇ it testifies that is transmitted back to the monitoring unit and WD is compared with a predetermined response index.
  • the check code CV is generated, which is logically predefined in an error-free execution of the program and at a faulted Processing of the program is not logically predefined.
  • the check code CV is assigned to the message MSG in a step S24 and transmitted to the execution unit EU in addition to the processed sensor data DATA and the error code ERR.
  • the received check code CV is checked to see, in a step S25 whether it is logically predefined and / or has been transmitted within the réelle ⁇ certain time interval T INT and / or received. If the check code CV has been logically predefined and / or transmitted within the predetermined time interval, the processed sensor data DATA is identified as valid sensor data V_DATA in a step S26. These Kings ⁇ nen be further processed in the execution unit EU. If the check code CV has not been logically predefined and / or the check code CV has been transmitted and / or received outside of the predetermined time interval, the processed sensor data DATA will be invalid sensor data in a step S27 INV DATA and can be ignored, for example.
  • FIG. 5 shows the time profile of the message MSG, the message MSG comprising the check code CV, the error code ERR and the processed sensor data DATA.
  • the clock signal S CLK represents a reference signal which is to be used to simplify the description of the message history MSG and can be viewed as representing a bit time.
  • the error code ERR and the processed sensor data DATA of the messages MSG_1, MSG_2, MSG_3 and MSG 4 are shown by way of example in FIG.
  • the first message MSG 1 to Ausbowungs ⁇ unit EU is t ⁇ transmitted at a time. It contains the check code CV, the error code ERR and the processed sensor data DATA.
  • the check code CV comprises a first time duration T_l, which corresponds to 8 bit times.
  • the first message MSG 1 comprises the check code CV with the value 1, which is represented binar within the time period T 1.
  • the second message MSG_2 is transmitted at a time t 1. Includes the second message MSG_2 ne ⁇ ben error code exemplified ERR and the processed sensor data DATA exemplified the check code CV with a value of 2, which is shown binar within the time period T_2.
  • the third and fourth messages MSG_3 and MSG_4 are transmitted corresponding to the times t3 and t4 and each contain the check code CV with the value 3 and 4, which are shown in both messages MSG_3 and MSG_4 binary in the time period T 3 and T 4.
  • the values of the check codes CV in the illustrated messages MSG_1, MSG_2, MSG 3 and MSG 4 are in terms of a Aufwartsiereer übermit ⁇ telt, wherein can be incremented for an 8 bit times comprehensive check code CV to a maximum value of 255 and after a payer overflow again starts at 1.
  • a value 0 for the check code CV can be reserved, for example, for the identification of a faulty execution of the program PR from the microcontroller MC to the execution unit EU.
  • the predetermined time interval T_INT is shown in FIG. 5, for example, as a time duration of a transmission time of a message MSG within which a message MSG should be transmitted.
  • step S60 shows the generation of the fault, in a step S60 lerelle and / or faulty Prufcodes CV as it is worked, for example, in the further monitoring unit WD WD from ⁇ started.
  • step S61 the check code CV is given a one.
  • step S62 it is checked whether an error-free or faulty check code CV is to be generated.
  • the check may on the basis of dargestell ⁇ th in Figure 4 comparing the response index i_rsp with a predetermined response index and made on the basis of the result of monitoring the monitoring unit WD by the further monitoring unit WD_WD. If it is decided on the basis of the check that a faulty check code CV is to be generated, it is first checked in a step S63 which value the current check code CV has. If the value of Prufcodes CV un ⁇ equal to one, the current value of Prufcodes CV is decremented by one in a step S65. If the value of ⁇ Prufco the CV in step S63 is equal to one, a value 255 is set in a step S66, the check code CV.
  • an unchanged value of the Prufcodes CV may be specified to the faulty check code CV that matches, for example, with the value of a CV Prufcodes herein are subject ⁇ membered delivery of the message MSG. through the generation of the unchanged value of the check code CV can be displayed in the case of the so-called hang of the execution of the program PR of the execution unit EU that the Abar ⁇ processing of the program PR stops and the processed sensor data DATA could be faulty.
  • step S62 If the check in step S62 results in the generation of an error-free check code CV, it is first checked in step S64 whether the value of the check code CV is not equal to 255. If this is the case, the value of Prufco ⁇ of CV is incremented by one in a step S67. If the value of the check code CV is 255 in step S64, the value of the check code CV is set to one in step S68.
  • the transmission of the test code CV generated here could be effected, for example, by means of the transmission shown in FIG. 5.
  • step S69 it is checked whether further messages MSG are to be transmitted and thus further check codes CV are to be generated depending on the already transmitted check codes CV. If no further messages MSG are to be transmitted, the generation of the check code CV is ended in a step S70.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Ein Mikrocontroller (MC) ist mit einer Ausfuhrungseinheit (EU) koppelbar. Zum Betreiben des Mikrocontrollers (MC) wird abhangig von Eingangsdaten (S_1, S_2 ) mittels eines Programms (PR) im Mikrocontroller (MC) eine Nachricht (MSG) für die Ausfuhrungseinheit (EU) erzeugt und übermittelt. Neben der Nachricht (MSG) wird zum Betreiben des Mikrocontrollers (MC) ein Prufcode (CV) in Abhängigkeit von der Abarbeitung des Programms (PR) erzeugt und an die Ausfuhrungseinheit (EU) übermittelt. Zum Betreiben der Ausfuhrungseinheit (EU) wird überprüft, ob der Prufcode (CV) logisch vordefiniert ist und/oder innerhalb eines vorbestimmten Zeitintervalls (T _INT) empfangen wurde, wobei bei einem positiven Ergebnis der Überprüfung die Nachricht (MSG) als gültig gekennzeichnet wird und bei einem negativen Ergebnis die Nachricht (MSG) als ungültig gekennzeichnet wird.

Description

Beschreibung
Verfahren zum Betreiben eines MikroControllers und einer Aus¬ fuhrungseinheit sowie ein MikroController und eine Ausfuh- rungseinheit
Die Erfindung betrifft ein Verfahren zum Betreiben eines Mik- rocontrollers und einer Ausfuhrungseinheit, die miteinander koppelbar sind, sowie ein entsprechend ausgestalteter Mikro- Controller und eine Ausfuhrungseinheit zur Durchfuhrung des Verfahrens .
Bei sicherheitsrelevanten Sensorschaltungen für Kraftfahrzeuge, die mit einem Mikrocontroller ausgestattet sind, kann es durch eine fehlerhafte Abarbeitung des Programms im Mikro¬ Controller zu einer fehlerhaften Verarbeitung von Sensordaten und somit zur Übermittlung von fehlerhaften verarbeiteten Sensordaten kommen. Diese übermittelten fehlerhaften Sensordaten können beispielsweise in einem Bremssystem, wie ESP- oder ABS-Steuergerat, weiterverarbeitet werden und somit zu ungewollten Bremseingriffen fuhren, die mit großer Sicherheit vermieden werden müssen.
Aus der WO 2005/001690 A2 ist eine Überwachung des Programm- laufs in einem Mikrocomputer bekannt. Dabei wird zusatzlich zum Lauf des Programms im Mikrocomputer eine Kopie des Pro¬ gramms mit den für das Programm vorgesehenen Eingangsdaten oder Testdaten abgelaufen und die Ausgangsdaten der Kopie mit denen des Programms verglichen und bei Nichtübereinstimmung eine Fehlermeldung erzeugt. In diesem Zusammenhang offenbart das Dokument, dass nach dem Lauf des Programms und nach dem Lauf von Programmteilen jeweils ein Flag gesetzt oder geändert wird und dass eine Fehlermeldung erzeugt wird, wenn nicht alle Flags gesetzt oder geändert werden. Diese Überwa¬ chung kann als eine Programm-Ablauf-Uberwachung angesehen werden. Desweiteren offenbart das Dokument die Überwachung des Programmlaufs in mindestens zwei miteinander verbundenen Mikrocomputern eines elektronischen Gerätes, insbesondere ei¬ ner Sensorschaltung für Kraftfahrzeuge, wobei in einem Mikrocomputer eine Anfrage erzeugt wird, welche an den anderen Mikrocomputer gesendet wird und dort mit vorgegebenen Eingangsdaten den Lauf eines Programms bewirkt, dass eine von den Ausgangsdaten abhangige Antwort an den einen Mikrocompu¬ ter zurückgesendet wird und dass in einem Mikrocomputer die Anforderung und die Antwort miteinander verglichen werden. Diese Überwachung kann als eine Anfrage-Antwort-Uberwachung angesehen werden.
Die Aufgabe, die der Erfindung zugrunde liegt, ist ein Ver¬ fahren zum Betreiben eines MikroControllers und einer Ausfuhrungseinheit, das einfach und kostengünstig ist, sowie einen entsprechend ausgestalteten MikroController und eine Ausfuh- rungseinheit zur Durchfuhrung des Verfahrens zu schaffen
Die Aufgabe wird gelost durch die Merkmale der unabhängigen Patentansprüche. Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteranspruchen gekennzeichnet.
Die Erfindung zeichnet sich aus durch ein Verfahren zum Betreiben eines MikroControllers, der mit einer Ausfuhrungs¬ einheit koppelbar ist, bei dem abhangig von Eingangsdaten mittels eines Programms im MikroController eine Nachricht für die Ausfuhrungseinheit erzeugt und übermittelt wird und neben der Nachricht ein Prufcode in Abhängigkeit von der Abarbei¬ tung des Programms erzeugt und vom MikroController zur Aus¬ fuhrungseinheit übermittelt wird. Durch den Prufcode, der ab- hangig von der Abarbeitung des Programms im MikroController erzeugt wird, kann in einfacher Weise die Abarbeitung des Programms einer vom MikroController unabhängigen Einheit, insbesondere der Ausfuhrungseinheit, angezeigt werden. Die Ausfuhrungseinheit ist besonders geeignet den Prufcode zu empfangen, weil die Ausfuhrungseinheit beispielsweise im Kraftfahrzeug in Form eines Steuergerätes vorhanden ist. Durch einen nichtnotwendigen zweiten MikroController zur U- berwachung des MikroControllers kann das Verfahren besonders kostengünstig implementiert werden.
Gemäß einer vorteilhaften Ausgestaltung umfasst die Nachricht den Prufcode. Somit umfasst die zur Ausfuhrungseinheit über¬ mittelte Nachricht neben den im MikroController verarbeiteten Sensordaten auch den Prufcode, wodurch sich die Übermittlung des Prüfcodes besonders kostengünstig implementieren lasst.
Eine weitere vorteilhafte Ausgestaltung zeichnet sich aus durch ein Verfahren, bei dem der MikroController eine Uberwa- chungseinheit umfasst, die die Abarbeitung des Programms u- berwacht und den Prufcode erzeugt. Mittels der dem Mikrocont- roller zugeordneten Uberwachungseinheit wird die korrekte Ab¬ arbeitung des Programms im MikroController überwacht und si¬ chergestellt, so dass durch eine fehlerhafte Abarbeitung des Programms erzeugte Daten mittels des Prufcodes als fehlerhaft gekennzeichnet werden. Dabei kann die Uberwachungseinheit als zusatzliches Programmteil im Programm des MikroControllers integriert sein oder als ein Hardware-Funktionsmodul im Mik- rocontroller integriert sein.
Eine weitere vorteilhafte Ausgestaltung zeichnet sich aus durch ein Verfahren, bei dem die Abarbeitung der Uberwachungseinheit überwacht wird und nur bei einem positiven Er- gebnis der Überwachung ein fehlerfreier Prufcode erzeugt. Zur Überwachung der Abarbeitung des Programms durch die Uberwa- chungseinheit wird zusatzlich die Uberwachungseinheit über¬ wacht, so dass aus einer fehlerbehafteten Abarbeitung des Programms oder aus einer übersehen fehlerbehafteten Abarbeitung des Programms aufgrund einer fehlerbehafteten Abarbei¬ tung der Uberwachungseinheit erzeugte Sensordaten als ungül¬ tig mittels Prufcode gekennzeichnet werden.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der
Prufcode bei einer fehlerfreien Abarbeitung des Programms logisch vordefiniert erzeugt und bei einer fehlerbehafteten Ab¬ arbeitung nicht logisch vordefiniert erzeugt. Ein logisch vordefinierter Prufcode wird beispielsweise dadurch erzeugt, dass abhangig von zuvor übermittelten Werten des Prufcodes zukunftige Werte des Prufcodes bestimmt werden. Dadurch er¬ möglicht der logisch vordefinierte Prufcode besonders geeig¬ net eine Vorhersage des zu empfangenen Prufcodes in der Aus¬ fuhrungseinheit und somit die Kennzeichnung einer fehlerfrei- en Abarbeitung des Programms, wahrend ein nicht logisch vor¬ definierter Prufcode nicht mit der Vorhersage in der Ausfuh¬ rungseinheit übereinstimmt und somit eine fehlerbehaftete Ab¬ arbeitung des Programms kennzeichnet und die übermittelte Nachricht als ungültig kennzeichnet.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der Prufcode mittels eines Vorwärts- und/oder Ruckwartszahlers logisch vordefiniert erzeugt. Diese Ausgestaltung ermöglicht eine besonders einfache Vorhersage des zu empfangenen Prufco- des bei einer fehlerfreien Abarbeitung des Programms und eine besonders einfache programmtechnische und hardwaretechnische Implementierung. Alternativ zum Vorwärts- und/oder Ruckwarts- zahlen, kann beispielsweise bei einem fehlerbehafteten Prüf- code der Wert des Prufcodes der zuvor übermittelten Nachricht vorgegeben werden, so dass es in diesem Fall zu keiner Änderung des Werts des Prufcode mittels dem Vorwärts und/oder Ruckwartszahlens kommt. Ferner kann bei einem fehlerbehafte- ten Prufcode auch ein fester Wert vorgegeben werden, so z.B. ein Wert von 0.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der Prufcode in einem vorbestimmten Zeitintervall übermittelt. Dadurch kann eine fehlerbehaftete Abarbeitung des Programms, beispielsweise ein sogenanntes Hangen des Programms und eine damit verbundene fehlende oder zeitlich verschobene Übermitt¬ lung der Nachricht erkannt und gekennzeichnet werden.
Gemäß einer weiteren vorteilhaften Ausgestaltung umfasst der MikroController eine Hardware-Uberwachungseinheit, die durch die Uberwachungseinheit zu vorbestimmten Zeitpunkten ange¬ steuert wird, wobei bei einem Unter- oder Überschreiten des vorbestimmten Zeitpunktes der MikroController durch die Hard- ware-Uberwachungseinheit zurücksetzt wird. Dadurch kann eine fehlerbehaftete Abarbeitung des Programms und/oder der Uber¬ wachungseinheit, beispielsweise das sogenannte Hangen des Programms und/oder der Uberwachungseinheit durch die fehlende Ansteuerung der Hardware-Uberwachungseinheit besonders sicher erkannt werden und durch das dadurch resultierende Zurückset¬ zen des MikroControllers die Abarbeitung des Programms neu gestartet werden.
Desweiteren zeichnet sich die Erfindung aus durch ein Verfah- ren zum Betreiben einer Ausfuhrungseinheit, die mit einem
MikroController gemäß den dargestellten Ausgestaltungen koppelbar ist, bei dem überprüft wird, ob der Prufcode logisch vordefiniert ist und/oder der Prufcode innerhalb des vorbe- stimmten Zeitintervalls empfangen wurde, wobei bei einem po¬ sitiven Ergebnis der Überprüfung die Nachricht als gültig ge¬ kennzeichnet wird und bei einem negativen Ergebnis die Nach¬ richt als ungültig gekennzeichnet wird. Die Ausfuhrungsein- heit ist besonders geeignet den Prufcode zu empfangen, weil diese meistens vorhanden ist, so beispielsweise in Kraftfahr¬ zeugen in denen Sensorschaltungen mit Steuergeraten, die als eine Art von Ausfuhrungseinheit betrachtet werden kann, ge¬ koppelt sind und unabhängig von dem MikroController in der Sensorschaltung arbeitet. In der Ausfuhrungseinheit wird u- berpruft, ob der empfangene Prufcode vom MikroController lo¬ gisch vordefiniert ist und/oder innerhalb des vorbestimmten Zeitintervalls empfangen wurde. Die dem Prufcode zugeordnete Nachricht wird entsprechend dem Ergebnis der Überprüfung als gültig oder ungültig gekennzeichnet. Ungültig gekennzeichnete Nachrichten können in der Ausfuhrungseinheit beispielsweise ignoriert werden und/oder mittels einer weiteren Nachricht kann die Ausfuhrungseinheit dem MikroController mitteilen, dass fehlerbehaftete Nachrichten empfangen wurden.
Eine weitere vorteilhafte Ausgestaltung zeichnet sich aus durch einen MikroController, der mit einer Ausfuhrungseinheit koppelbar ist und dazu ausgebildet ist, abhangig von Ein¬ gangsdaten mittels eines Programms im MikroController eine Nachricht für die Ausfuhrungseinheit zu erzeugen und zu über¬ mitteln. Ferner ist der MikroController dazu ausgebildet, neben der Nachricht ein Prufcode in Abhängigkeit von der Abar¬ beitung des Programms zu erzeugen und vom MikroController zur Ausfuhrungseinheit zu übermitteln. Durch die Ausbildung des MikroControllers zur Erzeugung des Prufcodes kann dieser be¬ sonders vorteilhaft und besonders schnell erzeugt werden, oh¬ ne zeitkritische Auswirkungen auf die Abarbeitung des Pro¬ gramms zu haben. Ferner ist die Erzeugung des Prufcodes im MikroController besonders einfach umzusetzen, wenn beispielsweise der Prufcode mittels eines Vorwärts- und/oder Ruck- wartszahlers logisch vordefiniert wird.
Gemäß einer weiteren vorteilhaften Ausgestaltung umfasst der MikroController eine Uberwachungseinheit, die dazu ausgebil¬ det ist, die Abarbeitung des Programms zu überwachen und den Prufcode zu erzeugen. Die Uberwachungseinheit ermöglicht eine besonders schnelle Überwachung der Abarbeitung des Programms und eine besonders schnelle Erzeugung des Prufcode, ohne zeitkritische Auswirkungen auf die Abarbeitung des Programms zu haben.
Gemäß einer weiteren vorteilhaften Ausgestaltung umfasst der MikroController eine weitere Uberwachungseinheit, die dazu ausgebildet ist, die Uberwachungseinheit zu überwachen und nur bei einem positiven Ergebnis der Überwachung einen fehlerfreien Prufcode zu erzeugen. Die weitere Uberwachungseinheit zur Überwachung der Uberwachungseinheit, die die Abar- beitung des Programms überwacht, erhöht besonders die Fähig¬ keit, eine fehlerbehaftete Abarbeitung des Programms und zu¬ satzlich eine fehlerbehaftete Abarbeitung der Uberwachungs¬ einheit zu erkennen und mittels Prufcodes der Ausfuhrungsein¬ heit anzuzeigen. Dadurch wird die Verarbeitung fehlerbehafte- te verarbeitete Sensordaten vermieden und beispielsweise im Falle eines Bremssystems im Kraftfahrzeug ein ungewollter Bremseingriff besonders sicher vermieden.
Eine weitere vorteilhafte Ausgestaltung zeichnet sich aus durch eine Ausfuhrungseinheit, die mit einem MikroController gemäß der dargestellten Ausgestaltungen koppelbar ist und eine Auswerteeinheit umfasst, die dazu ausgebildet ist, zu u- berprufen, ob der Prufcode logisch vordefiniert ist und/oder der Prufcode innerhalb des vorbestimmten Zeitintervalls emp¬ fangen wurde, wobei die Auswerteeinheit bei einem positiven Ergebnis der Überprüfung die Nachricht als gültig kennzeich¬ net und bei einem negativen Ergebnis die Nachricht als ungul- tig kennzeichnet. Die Auswerteeinheit ermöglicht dabei beson¬ ders einfach und schnell, den Prufcode daraufhin zu überprü¬ fen, ob er logisch vordefiniert ist und/oder innerhalb des vorbestimmten Zeitintervalls empfangen wurde. Dabei kann die Auswerteeinheit einen fehlerfreien und/oder fehlerbehafteten Prufcode beispielsweise mittels Flags und/oder mittels min¬ destens einer Interruptauslosung als gültig und/oder ungültig kennzeichnen. Die mittels Flags als fehlerbehaftet gekenn¬ zeichneten Nachrichten können beispielsweise ignoriert werden.
In einer weiteren Ausgestaltung zeichnet sich die Erfindung aus durch ein System, dass einen MikroController gemäß der dargestellten Ausgestaltungen und einer mit dem Mikrocontrol- ler gekoppelten Ausfuhrungseinheit gemäß der dargestellten Ausgestaltung umfasst. Dadurch ergibt sich ein besonders ge¬ eignetes System zur Überwachung der Abarbeitung des Programms im MikroController, welches einfach und kostengünstig reali¬ sierbar ist.
Ausfuhrungsbeispiele der Erfindung sind im Folgenden anhand der schematischen Zeichnungen naher erläutert. Es zeigen:
Figur 1 eine schematische Darstellung eines Systems mit
MikroController und Ausfuhrungseinheit,
Figur 2 eine weitere schematische Darstellung des Systems mit MikroController und Ausfuhrungseinheit, Figur 3 eine weitere schematische Darstellung des Systems mit MikroController und Ausfuhrungseinheit,
Figur 4 ein Ablaufdiagramm einer Überwachung einer Abarbeitung eines Programms,
Figur 5 einen zeitlichen Verlauf eines Prufcodes,
Figur 6 ein Ablaufdiagramm einer Erzeugung eines Prufcodes.
Elemente gleicher Konstruktion oder Funktion sind figuren- ubergreifend mit den gleichen Bezugszeichen gekennzeichnet.
Eine Sensorschaltung SC (Figur 1) umfasst einen Mikrocontrol- ler MC, der Sensordaten S_l und S_2, die beispielsweise den
Daten eines Querbeschleunigungssensors und eines Drehratesen¬ sors in einem Kraftfahrzeug entsprechen, empfangt und mittels eines Programms PR verarbeitet. Die verarbeiteten Sensordaten DATA werden mittels einer Nachricht MSG zu einer von dem Mik- rocontroller MC unabhängigen Ausfuhrungseinheit EU übermit¬ telt. Die Ausfuhrungseinheit EU kann beispielsweise als ein ESP-Steuergerat ausgebildet sein, das die empfangenen Sensor¬ daten weiterverarbeitet und abhangig von diesen Bremsen des Kraftfahrzeugs mittels Bremsaktuatoren ACT ansteuert. Die Ausfuhrungseinheit EU umfasst zusatzlich eine Auswerteeinheit AU. Neben der Nachricht MSG wird ein Prufcode CV abhangig von der Abarbeitung des Programms PR durch das Programm PR selbst erzeugt und an die der Ausfuhrungseinheit EU zugeordnete Aus¬ werteeinheit AU übermittelt. Der Prufcode CV kennzeichnet da- bei die in der dazu parallel übermittelte Nachricht MSG ent¬ haltenen Daten DATA als gültig oder ungültig abhangig von der Abarbeitung des Programms PR im MikroController MC. Eine fehlerfreie Abarbeitung und die Erzeugung fehlerfreier Daten DATA, wird mittels eines fehlerfreien Prufcodes CV der Aus¬ fuhrungseinheit EU angezeigt, wahrend fehlerbehaftete Daten DATA in der Nachricht MSG mittels eines fehlerbehafteten Prufcodes CV der Ausfuhrungseinheit EU angezeigt werden.
In einem weiteren Ausfuhrungsbeispiel (Figur 2) umfasst der MikroController MC neben dem Programm PR auch eine Uberwa- chungseinheit WD und eine Hardware-Uberwachungseinheit HW_WD. Die Uberwachungseinheit WD kann innerhalb des Mikrocontrol- lers MC im Programm PR als zusatzliches Programmteil oder als Hardware-Funktionsmodul integriert sein. Die Uberwachungsein¬ heit WD überwacht das Programm PR im MikroController MC beispielsweise im Sinne einer Anfrage-Antwort-Uberwachung CR, wobei die Uberwachungseinheit WD eine Anfrage erzeugt und an das Programm PR übermittelt. Anhand von der Anfrage zugeord¬ neten Eingangsdaten wird das Programm PR abgearbeitet und die aus der Abarbeitung des Programms PR resultierenden Ausgangsdaten einer Antwort zugeordnet, die zurück an die Uberwa¬ chungseinheit WD übermittelt wird und dort mit einer vorgege- benen Antwort verglichen wird. Bei Nichtübereinstimmung der
Antworten kann beispielsweise der Prufcode CV durch die Uberwachungseinheit WD so erzeugt werden, dass der der Ausfuh¬ rungseinheit EU zugeordneten Auswerteeinheit AU eine fehler¬ behaftete Abarbeitung des Programms PR angezeigt wird und die Auswerteeinheit AU die mittels der Nachricht MSG empfangenen verarbeiteten Sensordaten DATA ignoriert. Die Nachricht MSG in diesem Ausfuhrungsbeispiel umfasst neben den verarbeiteten Sensordaten DATA auch den Prufcode CV. Die Nachricht MSG kann im Fall eines Kraftfahrzeugs beispielsweise einer Controller- Area-Network-Nachricht (CAN) entsprechen.
In diesem Zusammenhang sei darauf hingewiesen, dass die Nachricht MSG zusatzlich einen Fehlercode ERR umfasst, der inter- ne Störungen und Fehler der Sensorschaltung SC, wie beispielsweise Spannungsschwankungen, der Ausfuhrungseinheit EU anzeigt. Die Ausfuhrungseinheit EU kann anhand der mittels Fehlercode ERR angezeigten Störungen und Fehler die Nachricht als gültig und/oder ungültig kennzeichnen.
Die dem MikroController MC zugeordnete Hardware-Uberwachungs- einheit HW_WD wird durch die Uberwachungseinheit WD zu vorbe¬ stimmten Zeitpunkten angesteuert, wobei bei fehlender Ansteu- erung oder Unter- oder Überschreiten der vorbestimmten Zeitpunkte, der MikroController MC mittels der Hardware-Uberwach- ungseinheit HW WD zurückgesetzt wird und die Abarbeitung des Programms PR neu gestartet wird.
In Figur 3 umfasst der MikroController MC in der Sensorschaltung SC neben der Uberwachungseinheit WD eine weitere Uberwa¬ chungseinheit WD WD, die die Abarbeitung der Uberwachungseinheit WD überwacht. Die weitere Uberwachungseinheit WD WD kann im Programm PR als zusatzlicher Programmteil des Mikrocont- rollers MC oder als weiteres Funktionsmodul im Mikrocontrol- ler integriert sein. Die weitere Uberwachungseinheit WD_WD kann beispielsweise im Sinne einer Programm-Ablauf-Uberwach- ung PF ausgebildet sein, so dass wahrend der Abarbeitung der Uberwachungseinheit WD Flags gesetzt oder geändert werden. Die weitere Uberwachungseinheit WD_WD erkennt eine fehlerbe¬ haftete Abarbeitung der Uberwachungseinheit WD mittels der Flags beispielsweise dadurch, dass nicht alle Flags gesetzt oder geändert werden. Mittels des der Nachricht MSG zugeord¬ neten Prufcodes CV kann die fehlerhafte Abarbeitung der Uber- wachungseinheit WD der der Ausfuhrungseinheit EU zugeordneten Auswerteeinheit AU mitgeteilt und die mittels Nachricht MSG empfangenen verarbeiteten Sensordaten DATA ignoriert werden. In Figur 4 wird anhand eines Ablaufdiagramms ein Programm in einem Schritt S20 gestartet. In einem Schritt S21 übermittelt beispielsweise die Uberwachungseinheit WD im Sinne einer An- frage-Antwort-Uberwachung CR ein Anforderungsindex i_rq an das Programm PR. Anhand von dem Anforderungsindex i_rq zuge¬ ordneten Eingangsdaten wird das Programm PR abgearbeitet und Ausgangsdaten erzeugt. In Abhängigkeit von den erzeugten Ausgangsdaten wird im Schritt S22 ein Antwortindex i_rsp er¬ zeugt, das zurück zur Uberwachungseinheit WD übermittelt wird und mit einem vorgegebenen Antwortindex verglichen wird. In Abhängigkeit von dem Vergleich und dem Ergebnis der Überwa¬ chung der Abarbeitung der Uberwachungseinheit WD durch die weitere Uberwachungseinheit WD WD, wird in einem Schritt S23 der Prufcode CV erzeugt, der bei einer fehlerfreien Abarbei- tung des Programms logisch vordefiniert ist und bei einer fehlerbehafteten Abarbeitung des Programms nicht logisch vordefiniert ist. Der Prufcode CV wird in einem Schritt S24 der Nachricht MSG zugeordnet und neben den verarbeiteten Sensordaten DATA und dem Fehlercode ERR an die Ausfuhrungseinheit EU übermittelt. In der Ausfuhrungseinheit EU wird in einem Schritt S25 der empfangene Prufcode CV daraufhin überprüft, ob er logisch vordefiniert ist und/oder innerhalb des vorbe¬ stimmten Zeitintervalls T INT übermittelt und/oder empfangen wurde. Ist der Prufcode CV logisch vordefiniert und/oder in- nerhalb des vorbestimmten Zeitintervalls übermittelt worden, werden die verarbeiteten Sensordaten DATA in einem Schritt S26 als gültige Sensordaten V_DATA gekennzeichnet. Diese kön¬ nen in der Ausfuhrungseinheit EU weiterverarbeitet werden. Ist der Prufcode CV nicht logisch vordefiniert und/oder wurde der Prufcode CV außerhalb des vorbestimmten Zeitintervalls übermittelt und/oder empfangen, werden die verarbeiteten Sensordaten DATA in einem Schritt S27 als ungültige Sensordaten INV DATA gekennzeichnet und können beispielsweise ignoriert werden .
Figur 5 zeigt den zeitlichen Verlauf der Nachricht MSG, wobei die Nachricht MSG den Prufcode CV, den Fehlercode ERR und die verarbeiteten Sensordaten DATA umfasst. In Figur 5 wird mit dem Taktsignal S CLK ein Referenzsignal dargestellt, welches zur Vereinfachung der Beschreibung des Nachrichtenverlaufs MSG heranzuziehen ist und als Darstellung einer Bitzeit ange- sehen werden kann. Der Fehlercode ERR und die verarbeiteten Sensordaten DATA der Nachrichten MSG_1, MSG_2, MSG_3 und MSG 4 sind in Figur 5 beispielhaft dargestellt. Zu einem Zeitpunkt tθ wird die erste Nachricht MSG 1 zur Ausfuhrungs¬ einheit EU übermittelt. Sie enthalt den Prufcode CV, den Feh- lercode ERR und die verarbeiteten Sensordaten DATA. Der Prufcode CV umfasst eine erste Zeitdauer T_l, welche 8 Bitzeiten entspricht. Die erste Nachricht MSG 1 umfasst den Prufcode CV mit dem Wert 1, der binar innerhalb der Zeitdauer T 1 dargestellt ist. Die zweite Nachricht MSG_2 wird zu einem Zeit- punkt tl übermittelt. Die zweite Nachricht MSG_2 umfasst ne¬ ben dem beispielhaft dargestellten Fehlercode ERR und den beispielhaft dargestellten verarbeiteten Sensordaten DATA den Prufcode CV mit dem Wert 2, der binar innerhalb der Zeitdauer T_2 dargestellt ist. Die dritte und vierte Nachricht MSG_3 und MSG_4 werden entsprechend zu den Zeitpunkten t3 und t4 übermittelt und enthalten jeweils den Prufcode CV mit dem Wert 3 und 4, die in beiden Nachrichten MSG_3 und MSG_4 binar in der Zeitdauer T 3 und T 4 dargestellt sind. Die Werte des Prüfcodes CV in den dargestellten Nachrichten MSG_1, MSG_2, MSG 3 und MSG 4 werden im Sinne eines Aufwartszahler übermit¬ telt, wobei bei einem 8 Bitzeiten umfassenden Prufcode CV bis zu einem maximalen Wert von 255 inkrementiert werden kann und nach einem Zahleruberlauf wieder bei 1 beginnt. Ein Wert 0 für den Prufcode CV kann beispielsweise für die Kennzeichnung einer fehlerbehafteten Abarbeitung des Programms PR vom Mik- rocontroller MC zur Ausfuhrungseinheit EU reserviert werden. Das vorbestimmte Zeitintervall T_INT ist in Figur 5 bei- spielsweise als eine Zeitdauer einer Ubermittlungszeit einer Nachricht MSG dargestellt, innerhalb dessen eine Nachricht MSG übermittelt werden sollte.
In Figur 6 wird in einem Schritt S60 die Erzeugung des feh- lerfreien und/oder fehlerbehafteten Prufcodes CV, wie sie beispielsweise in der weiteren Uberwachungseinheit WD WD ab¬ gearbeitet wird, gestartet. Der Beschreibung der Figur 6 wird beispielsweise ein 8-Bit Wert des Prufcodes CV zu Grunde ge¬ legt, der maximal bis zu einem Wert von 255 inkrementiert werden kann. In einem Schritt S61 wird dem Prufcode CV eine eins vorgegeben. In einem Schritt S62 wird überprüft, ob ein fehlerfreier oder fehlerbehafteter Prufcode CV erzeugt werden soll. Die Überprüfung kann anhand des in Figur 4 dargestell¬ ten Vergleichs des Anwortindex i_rsp mit einem vorgegebenen Antwortindex und anhand des Ergebnisses der Überwachung der Uberwachungseinheit WD durch die weitere Uberwachungseinheit WD_WD erfolgen. Wird anhand der Überprüfung entschieden, dass ein fehlerbehafteter Prufcode CV erzeugt werden soll, wird zunächst in einem Schritt S63 überprüft, welchen Wert der ak- tuelle Prufcode CV hat. Ist der Wert des Prufcodes CV un¬ gleich eins, wird in einem Schritt S65 der aktuelle Wert des Prufcodes CV um eins dekrementiert . Ist der Wert des Prufco¬ des CV in Schritt S63 gleich eins, wird in einem Schritt S66 dem Prufcode CV ein Wert 255 vorgegeben. Alternativ zu den Schritten S63, S65 und S66 kann dem fehlerbehafteten Prufcode CV ein unveränderter Wert des Prufcodes CV vorgegeben werden, der beispielsweise mit dem Wert des Prufcodes CV einer vorhe¬ rigen Übermittlung der Nachricht MSG übereinstimmt. Mittels der Erzeugung des unveränderten Werts des Prufcodes CV kann im Fall des sogenannten Hangens der Abarbeitung des Programms PR der Ausfuhrungseinheit EU angezeigt werden, dass die Abar¬ beitung des Programms PR stoppt und die verarbeiteten Sensor- daten DATA fehlerbehaftet sein konnten.
Ergibt die Überprüfung in Schritt S62 eine Erzeugung eines fehlerfreien Prufcodes CV, wird in einem Schritt S64 zunächst überprüft, ob der Wert des Prufcodes CV ungleich 255 ist. Ist dies der Fall wird in einem Schritt S67 der Wert des Prufco¬ des CV um eins inkrementiert . Ist im Schritt S64 der Wert des Prufcodes CV gleich 255 wird in einem Schritt S68 der Wert des Prufcodes CV mit eins vorgegeben. Die Übermittlung des hier erzeugten Prufcodes CV konnte beispielsweise mittels der dargestellten Übermittlung in Figur 5 erfolgen.
In einem Schritt S69 wird überprüft, ob weitere Nachrichten MSG übermittelt werden sollen und somit weitere Prufcodes CV abhangig von den bereits übermittelten Prufcodes CV erzeugt werden sollen. Sollen keine weiteren Nachrichten MSG übermittelt werden, wird die Erzeugung des Prufcodes CV in einem Schritt S70 beendet.

Claims

Patentansprüche
1. Verfahren zum Betreiben eines MikroControllers (MC), der mit einer Ausfuhrungseinheit (EU) koppelbar ist, bei dem - abhangig von Eingangsdaten (S_l, S_2 ) mittels eines Programms (PR) im MikroController (MC) eine Nachricht (MSG) für die Ausfuhrungseinheit (EU) erzeugt und übermittelt wird, - neben der Nachricht (MSG) ein Prufcode (CV) in Abhängigkeit von der Abarbeitung des Programms (PR) erzeugt und vom Mikro- Controller (MC) zur Ausfuhrungseinheit (EU) übermittelt wird.
2. Verfahren nach Anspruch 1, bei dem die Nachricht (MSG) den Prufcode (CV) umfasst.
3. Verfahren nach Anspruch 1, bei dem der MikroController
(MC) eine Uberwachungseinheit (WD) umfasst und die Abarbei¬ tung des Programms (PR) durch die Uberwachungseinheit (WD) überwacht wird und durch diese der Prufcode (CV) erzeugt wird.
4. Verfahren nach Anspruch 3, bei dem eine Abarbeitung der Uberwachungseinheit (WD) überwacht wird und nur bei einem po¬ sitiven Ergebnis der Überwachung ein fehlerfreier Prufcode (CV) erzeugt wird.
5. Verfahren nach einem der vorstehenden Ansprüche, bei dem der Prufcode (CV) bei einer fehlerfreien Abarbeitung des Programms (PR) logisch vordefiniert erzeugt wird und bei einer fehlerbehafteten Abarbeitung nicht logisch vordefiniert er- zeugt wird.
6. Verfahren nach Anspruch 5, bei dem der Prufcode (CV) mittels eines Vorwärts- und/oder Ruckwartszahlers logisch vorde¬ finiert erzeugt wird.
7. Verfahren nach einem der vorstehenden Ansprüche, bei dem der Prufcode (CV) in einem vorbestimmten Zeitintervall (T_INT) übermittelt wird.
8. Verfahren nach Anspruch 3, bei dem der MikroController (MC) eine Hardware-Uberwachungseinheit (HW_WD) umfasst und diese durch die Uberwachungseinheit (WD) zu vorbestimmten Zeitpunkten angesteuert wird, wobei bei einem Unter- oder U- berschreiten des vorbestimmten Zeitpunktes der Mikrocontrol- ler (MC) durch die Hardware-Uberwachungseinheit (HW_WD) zu- rucksetzt wird.
9. Verfahren zum Betreiben einer Ausfuhrungseinheit (EU), die mit einem MikroController (MC) gemäß den Ansprüchen 1 bis 8 koppelbar ist, bei dem überprüft wird, ob der Prufcode (CV) logisch vordefiniert ist und/oder der Prufcode (CV) innerhalb des vorbestimmten Zeitintervalls (T_INT) empfangen wurde, wobei bei einem positiven Ergebnis der Überprüfung die Nachricht (MSG) als gültig gekennzeichnet wird und bei einem ne¬ gativen Ergebnis die Nachricht (MSG) als ungültig gekenn- zeichnet wird.
10. MikroController (MC), der mit einer Ausfuhrungseinheit (EU) koppelbar ist und dazu ausgebildet ist,
- abhangig von Eingangsdaten (S 1, S 2) mittels eines Pro- gramms (PR) im MikroController (MC) eine Nachricht (MSG) für die Ausfuhrungseinheit (EU) zu erzeugen und zu übermitteln,
- neben der Nachricht (MSG) ein Prufcode (CV) in Abhängigkeit von der Abarbeitung des Programms (PR) zu erzeugen und vom MikroController (MC) zur Ausfuhrungseinheit (EU) zu übermit¬ teln.
11. MikroController (MC) nach Anspruch 10 mit einer Uberwa- chungseinheit (WD) , die dazu ausgebildet ist, die Abarbeitung des Programms (PR) zu überwachen und den Prufcode (CV) zu er¬ zeugen .
12. MikroController (MC) nach Anspruch 11 mit einer weiteren Uberwachungseinheit (WD_WD) , die dazu ausgebildet ist, die
Uberwachungseinheit (WD) zu überwachen und nur bei einem po¬ sitiven Ergebnis der Überwachung einen fehlerfreien Prufcode (CV) zu erzeugen.
13. Ausfuhrungseinheit (EU), die mit einem MikroController (MC) gemäß den Ansprüchen 1 bis 8 oder 10 koppelbar ist und eine Auswerteeinheit (AU) aufweist, die dazu ausgebildet ist, zu überprüfen, ob der Prufcode (CV) logisch vordefiniert ist und/oder der Prufcode (CV) innerhalb des vorbestimmten Zeit- intervalls (T_INT) empfangen wurde, wobei die Auswerteeinheit (AU) bei einem positiven Ergebnis der Überprüfung die Nachricht (MSG) als gültig kennzeichnet und bei einem negativen Ergebnis die Nachricht (MSG) als ungültig kennzeichnet.
14. System umfassend einen MikroController (MC) gemäß Anspruch 10 und einer mit dem MikroController (MC) verkoppelten Ausfuhrungseinheit (EU) gemäß Anspruch 11.
PCT/EP2008/056162 2007-06-25 2008-05-20 Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit WO2009000602A2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP08759778.7A EP2171585B1 (de) 2007-06-25 2008-05-20 Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit
KR1020157016700A KR101722517B1 (ko) 2007-06-25 2008-05-20 마이크로컨트롤러 및 실행 유닛의 작동 방법과 마이크로컨트롤러 및 실행 유닛
US12/666,695 US8392815B2 (en) 2007-06-25 2008-05-20 Method for the operation of a microcontroller and an execution unit and microcontroller and an execution unit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102007029116A DE102007029116A1 (de) 2007-06-25 2007-06-25 Verfahren zum Betreiben eines Mikrocontrollers und einer Ausführungseinheit sowie ein Mikrocontroller und eine Ausführungseinheit
DE102007029116.9 2007-06-25

Publications (2)

Publication Number Publication Date
WO2009000602A2 true WO2009000602A2 (de) 2008-12-31
WO2009000602A3 WO2009000602A3 (de) 2009-02-19

Family

ID=39930540

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2008/056162 WO2009000602A2 (de) 2007-06-25 2008-05-20 Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit

Country Status (5)

Country Link
US (1) US8392815B2 (de)
EP (1) EP2171585B1 (de)
KR (2) KR101722517B1 (de)
DE (1) DE102007029116A1 (de)
WO (1) WO2009000602A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150016245A (ko) * 2012-04-30 2015-02-11 스피로즌 살 피롤로벤조디아제핀

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010029839B4 (de) * 2009-06-11 2014-08-28 Mitsubishi Electric Corporation Steuersystem
US9118409B2 (en) * 2013-01-17 2015-08-25 Strata Products Worldwide, Llc Method, controller, and system for tunnel communication
US10536168B2 (en) * 2016-11-07 2020-01-14 Infineon Technologies Ag Program flow monitoring for deterministic firmware functions
FR3099920B1 (fr) * 2019-08-12 2021-07-23 Safran Aircraft Engines Procede de transmission de donnees associees a l’etat de fonctionnement d’equipements d’un aeronef
FR3113149A1 (fr) * 2020-07-30 2022-02-04 Psa Automobiles Sa Formatage d’informations de défaut par ajout d’identifiant
FR3113150A1 (fr) * 2020-07-30 2022-02-04 Psa Automobiles Sa Formatage d’informations de défaut par filtrage
US11640332B1 (en) * 2021-10-15 2023-05-02 Infineon Technologies Ag Execute in place architecture with integrity check

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0322141A2 (de) * 1987-12-22 1989-06-28 LUCAS INDUSTRIES public limited company System zur Doppelrechner-Übereinstimmungsüberprüfung
US5029071A (en) * 1982-06-17 1991-07-02 Tokyo Shibaura Denki Kabushiki Kaisha Multiple data processing system with a diagnostic function
EP0461792A2 (de) * 1990-06-12 1991-12-18 Advanced Micro Devices, Inc. Master-/Slave-Prüfsystem
EP0496509A1 (de) * 1991-01-19 1992-07-29 Lucas Industries Public Limited Company Regelsystem
DE4220247A1 (de) * 1992-06-20 1993-12-23 Bosch Gmbh Robert Steuereinrichtung für Fahrzeuge
US5548601A (en) * 1992-12-02 1996-08-20 Mazda Motor Corporation Apparatus and method for diagnosing failures in control system
US5594646A (en) * 1993-12-21 1997-01-14 Aisin Aw Co., Ltd. Method and apparatus for self-diagnosis for an electronic control system for vehicles
WO2002074596A1 (de) * 2001-03-15 2002-09-26 Robert Bosch Gmbh Verfahren zur ansteuerung einer komponente eines verteilten sicherheitsrelevanten systems
WO2005001690A2 (de) * 2003-06-30 2005-01-06 Siemens Aktiengesellschaft Verfahren zur überwachung des programmlaufs in einem mikro-computer
EP1672505A2 (de) * 2004-12-20 2006-06-21 Delphi Technologies, Inc. Fail-Silent-Knotenarchitektur
DE102005059021A1 (de) * 2005-12-08 2007-06-14 Volkswagen Ag Eingebettetes System und Verfahren zum Betreiben eines eingebetteten Systems mit verbesserter Kennzeichnung von fehlerhaften ausgetauschten Signalen
DE102005061403A1 (de) * 2005-12-22 2007-06-28 Robert Bosch Gmbh Überwachungseinheit zur Überwachung und Steuerung des Zugriffs eines Teilnehmers auf einen Datenbus und Teilnehmer mit einer solchen Überwachungseinheit

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3753227A (en) * 1971-12-07 1973-08-14 Ncr Parity check logic for a code reading system
US5917840A (en) * 1992-03-13 1999-06-29 Foxboro Company Protection against communications crosstalk in a factory process control system
DE4218418A1 (de) * 1992-06-04 1993-12-09 Philips Patentverwaltung Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens
US5654888A (en) * 1992-06-20 1997-08-05 Robert Bosch Gmbh Control arrangement for vehicles
GB9213272D0 (en) * 1992-06-23 1992-08-05 Digital Equipment Int Check sequence preservation
EP0625751A1 (de) * 1993-05-14 1994-11-23 Siemens Aktiengesellschaft Sicheres Informationsübertragungsverfahren für einen Bus
JP3210833B2 (ja) * 1995-05-09 2001-09-25 株式会社日立製作所 エラーチェック方法および装置
JPH10133962A (ja) * 1996-11-01 1998-05-22 Fujitsu Ltd 外部記録装置を備えたデータ処理装置における転送データ検証方法および装置
US5740189A (en) * 1996-10-03 1998-04-14 Ford Motor Company Integrity check method and system for serial-based communication
EP1421501B1 (de) * 2001-08-24 2006-08-02 Intel Corporation Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung
KR100410557B1 (ko) * 2001-11-19 2003-12-18 주식회사 하이닉스반도체 프로그램 수정 가능한 마이크로컨트롤러 및 구동방법
US7245961B2 (en) * 2004-07-19 2007-07-17 Hewlett-Packard Development Company, L.P. ECG electrode characterization and compensation
DE102005021546B4 (de) * 2005-05-10 2018-01-11 Infineon Technologies Ag Mikrocontroller- bzw. Mikroprozessor-System, insbesondere Mikrocontroller- bzw. Mikroprozessor-System mit Fehler-Erkennung bzw. -Korrektur
DE102007037232A1 (de) * 2007-08-07 2009-02-12 Eto Magnetic Gmbh Vorrichtung zur Nockenwellenverstellung einer Brennkraftmaschine

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029071A (en) * 1982-06-17 1991-07-02 Tokyo Shibaura Denki Kabushiki Kaisha Multiple data processing system with a diagnostic function
EP0322141A2 (de) * 1987-12-22 1989-06-28 LUCAS INDUSTRIES public limited company System zur Doppelrechner-Übereinstimmungsüberprüfung
EP0461792A2 (de) * 1990-06-12 1991-12-18 Advanced Micro Devices, Inc. Master-/Slave-Prüfsystem
EP0496509A1 (de) * 1991-01-19 1992-07-29 Lucas Industries Public Limited Company Regelsystem
DE4220247A1 (de) * 1992-06-20 1993-12-23 Bosch Gmbh Robert Steuereinrichtung für Fahrzeuge
US5548601A (en) * 1992-12-02 1996-08-20 Mazda Motor Corporation Apparatus and method for diagnosing failures in control system
US5594646A (en) * 1993-12-21 1997-01-14 Aisin Aw Co., Ltd. Method and apparatus for self-diagnosis for an electronic control system for vehicles
WO2002074596A1 (de) * 2001-03-15 2002-09-26 Robert Bosch Gmbh Verfahren zur ansteuerung einer komponente eines verteilten sicherheitsrelevanten systems
WO2005001690A2 (de) * 2003-06-30 2005-01-06 Siemens Aktiengesellschaft Verfahren zur überwachung des programmlaufs in einem mikro-computer
EP1672505A2 (de) * 2004-12-20 2006-06-21 Delphi Technologies, Inc. Fail-Silent-Knotenarchitektur
DE102005059021A1 (de) * 2005-12-08 2007-06-14 Volkswagen Ag Eingebettetes System und Verfahren zum Betreiben eines eingebetteten Systems mit verbesserter Kennzeichnung von fehlerhaften ausgetauschten Signalen
DE102005061403A1 (de) * 2005-12-22 2007-06-28 Robert Bosch Gmbh Überwachungseinheit zur Überwachung und Steuerung des Zugriffs eines Teilnehmers auf einen Datenbus und Teilnehmer mit einer solchen Überwachungseinheit

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FARSI M ET AL: "An overview of controller area network" COMPUTING & CONTROL ENGINEERING JOURNAL IEE UK, Bd. 10, Nr. 3, Juni 1999 (1999-06), Seiten 113-120, XP002506028 ISSN: 0956-3385 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150016245A (ko) * 2012-04-30 2015-02-11 스피로즌 살 피롤로벤조디아제핀
KR101960129B1 (ko) 2012-04-30 2019-03-19 메디뮨 리미티드 피롤로벤조디아제핀

Also Published As

Publication number Publication date
KR101722517B1 (ko) 2017-04-03
KR20100024946A (ko) 2010-03-08
US8392815B2 (en) 2013-03-05
EP2171585B1 (de) 2016-07-13
EP2171585A2 (de) 2010-04-07
DE102007029116A1 (de) 2009-01-02
WO2009000602A3 (de) 2009-02-19
KR20150082650A (ko) 2015-07-15
US20100192052A1 (en) 2010-07-29

Similar Documents

Publication Publication Date Title
EP2171585A2 (de) Verfahren zum betreiben eines mikrocontrollers und einer ausführungseinheit sowie ein mikrocontroller und eine ausführungseinheit
DE10152235B4 (de) Verfahren zum Erkennen von Fehlern bei der Datenübertragung innerhalb eines CAN-Controllers und ein CAN-Controller zur Durchführung dieses Verfahrens
DE102006017302B4 (de) Verfahren und System zur Kontrolle einer Signalübertragung eines elektrischen Pedals
EP1639465B1 (de) Verfahren zur überwachung des programmlaufs in einem mikro-computer
EP2726352B1 (de) Verfahren, system und computerprogrammprodukt zur funktionsüberwachung einer sicherheitsüberwachung einer kfz - steuereinheit
WO2017080942A1 (de) Verfahren zum betreiben eines steuergeräts eines kraftfahrzeugs
EP2102723A1 (de) Verfahren und vorrichtung zum diagnostizieren von funktionen und fahrzeugsystemen
WO2005003972A2 (de) Verfahren zu überprüfung der sicherheit und zuverlässigkeit softwarebasierter elektronischer systeme
DE102019203783B4 (de) Verfahren, Programm und System zur Verwendung von Signalqualitätsanforderungen im Rahmen von Sicherheitskonzepten
DE10252990B3 (de) Steuereinheit zur Auslösung eines Insassenschutzmittels in einem Kraftfahrzeug und Verfahren zur Überwachung der ordnungsgemäßen Funktion einer vorzugsweise solchen Steuereinheit
DE102020211541A1 (de) Verfahren zum Erkennen eines Stillstands eines Fahrzeugs
EP4048574A1 (de) Auswertevorrichtung zur fehlertoleranten auswertung von sensorsignalen für ein motorsteuergerät einer kraftfahrzeuglenkung und kraftfahrzeuglenkung
EP2338248B1 (de) Verfahren zum betreiben eines kommunikationssystems mit mehreren knoten und kommunikationssystem dafür
DE10123588B4 (de) Verfahren und Vorrichtung zur Erzeugung und Darstellung einer Sammelfehlermeldung elektrischer Steuergeräte in einem Kraftfahrzeug
EP2013731A1 (de) Schaltungsanordnung und verfahren zum betrieb einer schaltungsanordnung
DE102019113206A1 (de) Verfahren und Steuergerät zur Diagnose einer Komponente eines Fahrzeugs
DE10131135B4 (de) Verfahren zum Betreiben eines Netzwerkknotens
DE10312557B4 (de) Verfahren zur Überprüfung der funktionalen Sicherheit von elektronischen Systemen eines Fahrzeugs
WO2024074331A1 (de) Verfahren und unterstützungseinrichtung zum unterstützen einer robustheitsoptimierung für ein datenverarbeitungssystem und korrespondierendes ci-system
DE102022212107A1 (de) Sensorsystem und Fahrerassistenzsystem
WO2023041214A1 (de) Verfahren zum erkennen einer unterbrechung einer datenübertragung von einem fahrzeug an eine sicherheitsrelevante funktion eines fahrzeugexternen servers, computerlesbares medium, system, und fahrzeug
DE102021206145A1 (de) Verfahren zum Bremsen eines autonom fahrenden Kraftfahrzeugs
DE102018217729A1 (de) Verfahren und Vorrichtung zum Schätzen von mindestens einer Leistungskennzahl eines Systems
DE10356860A1 (de) Verfahren und System zur zuverlässigkeitsabhängigen Aktivierung-Deaktivierung von Funktionen
DE102022106664A1 (de) Verfahren zum Betätigen eines Sensorsystems, Sensorsystem, Fahrzeug, Computerprogrammprodukt und Speichermedium

Legal Events

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

Ref document number: 08759778

Country of ref document: EP

Kind code of ref document: A2

REEP Request for entry into the european phase

Ref document number: 2008759778

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2008759778

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20097026679

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 12666695

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE