WO2006092182A1 - Verfahren und vorrichtung zur überwachung einer prozessausführung - Google Patents

Verfahren und vorrichtung zur überwachung einer prozessausführung Download PDF

Info

Publication number
WO2006092182A1
WO2006092182A1 PCT/EP2005/057233 EP2005057233W WO2006092182A1 WO 2006092182 A1 WO2006092182 A1 WO 2006092182A1 EP 2005057233 W EP2005057233 W EP 2005057233W WO 2006092182 A1 WO2006092182 A1 WO 2006092182A1
Authority
WO
WIPO (PCT)
Prior art keywords
processes
time
sub
time period
started
Prior art date
Application number
PCT/EP2005/057233
Other languages
English (en)
French (fr)
Inventor
Rüdiger KARNER
Alexander Jansen
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 EP05823489A priority Critical patent/EP1866714B1/de
Priority to US11/885,294 priority patent/US7895478B2/en
Priority to DE502005009340T priority patent/DE502005009340D1/de
Priority to JP2007556504A priority patent/JP4638916B2/ja
Publication of WO2006092182A1 publication Critical patent/WO2006092182A1/de

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24125Watchdog, check at timed intervals

Definitions

  • the present invention relates to a method for monitoring a process execution and an apparatus for carrying out the method according to the invention.
  • the present invention will be described in terms of monitoring process control by a real-time system, the present invention is not so limited, but generally relates to methods for monitoring processes.
  • control methods and their corresponding devices provide for regularly detecting signals from sensors, evaluating the detected signals and generating corresponding control signals in response to the evaluation.
  • One example is a control system for deploying airbags which regularly performs a process comprising the following substeps: sensing the signals from sensors and processing the signals and generating a control signal for the airbag.
  • a malfunction of the real-time system or of the processes performed may result in deployment of the airbag. This is avoided by the fact that the execution of the processes are monitored by the real-time system and an output of a control signal to the airbag is blocked when a malfunction is detected.
  • FIG. 7 A method for explaining an underlying problem of the invention is shown in Fig. 7.
  • Processes P 6 o, P ⁇ i,? 62 are started by a real time system S 'according to the time grid at the times t 6 i, t 62 with the time interval dT.
  • Two processes P 6 o, P ⁇ i are combined in pairs, and when starting the first process P 6 o of the two processes, a counter Z 'is started, and when stopping the second process P 6 i, the counter Z' is stopped.
  • the counter reading C 6O is thus a measure of the total execution time of the two processes P 6 o, P ⁇ i- If the count C 62 exceeds a value specified by a maximum time voltage T Max , an overflow error message F'i is output. If a misconduct occurs during a first process P 62 of a pair, the maximum time T 'Max passes from the start time t 6 2 of this process P 6 2 until the error signal F'i is output. This is undesirably long, especially since the maximum time T ' Max must be longer than two time intervals dT of the execution grid.
  • both the process P 66 and the process P 69 are untypically short. If the process that is too short is the second process of a pair P 68 , P 69 , the counter Z 'detects a counter reading C 68 which is shorter than the minimum time voltage T' nm i and, as a result, an underflow error signal F ' 2 spent.
  • the invention provides a method with the features of the claim, which is feasible by the apparatus having the features of claim 9.
  • the inventive method detects each underflow and overflow, wherein a reaction time measured from a start of a faulty process to the output of an error signal is short.
  • the inventive method for monitoring a process execution of a plurality of sequentially executed processes cyclically starts one of a plurality of timers when one of the processes is started, and outputs a first error signal when a time period detected by one of the timers exceeds a predetermined maximum time.
  • An advantage of the present invention is that failure of a process, i. an untypically long execution time, overflows a first timer that was started by a previous process before the process. Therefore, the reaction time measured from the start of a process to the detection of the malfunction of the process is shorter than the maximum time.
  • a detected time span of the timer is read out, which is restarted by the next process to be carried out, and a second error signal is output if the time interval falls below a predetermined minimum time span.
  • a test process is transmitted to a started process for processing and outputs a third error signal from a desired value upon termination of the process in response to a deviation of the processed test date.
  • Process composed of sub-processes and at least one sub-process carries out an operation on the inspection date that verifies the execution of this sub-process in a traceable manner by the processed inspection date. In this way, it can be seen whether all relevant sub-processes have been executed, in which the processed check date is compared with the setpoint.
  • Another embodiment provides that at least two sub-processes execute non-commutative operations on the datum for each other, which results in the execution of these sub-processes being confirmed in the correct order by the processed check datum.
  • Mutually non-commutative operations are characterized by the fact that an operation in different order on the check date results in different processed check data for most check data.
  • the start of two immediately consecutive processes takes place with a minimum time interval. This allows the regular execution of processes.
  • the maximum period of time is greater than a first product of the minimum time interval and the number of timers and smaller than the sum of the first product and the minimum time interval.
  • the minimum time period is greater than or equal to a second product of the minimum time interval and the number of timers reduced by one.
  • an apparatus for carrying out the method has a monitoring device which is connected to a processor device which executes the processes to receive a start signal from the control device when a process is started, and is adapted to compare a transmitted time period with the maximum time period and output an error signal via an interface when exceeded; and at least two timers, which are connected to a multiplexer of the monitoring device to be cyclically restarted by a reset signal, and are connected to an input of the monitoring device to transmit a detected time period to the Ü monitoring device.
  • the timers have regressive clocked counters, which are set at restart to a value which corresponds to the predetermined maximum period of time. According to a further development of the timer is set up such that the detected period of time can be read by the monitoring device and the timer established by a control signal persistent.
  • the monitoring device has a comparison device which compares the setpoint value with a test datum processed by the process and outputs a third error signal in the event of deviation.
  • Fig. 1 is a schematic representation of an embodiment as a flowchart
  • Fig. 2 is a schematic representation of the embodiment as a flowchart
  • Fig. 3 is a schematic representation of the embodiment for explaining an overflow
  • Fig. 4 is a schematic representation of the embodiment in an underflow
  • Fig. 6 is a schematic block diagram of an embodiment of the invention
  • Fig. 7 is a flow chart for explaining a problem of an embodiment of the present invention.
  • FIG. 1 shows the execution of a plurality of individual processes Pi, P 2 ,... By a processor system S in a sequential order.
  • the processor system S tries to start each of the processes as far as possible at predetermined times ti, t 2 ,..., Unless a preceding process P 3 , P 4 is active at the predetermined times U, U.
  • the processor system S starts the process P 4 , P 5 immediately at the time T 3 , T 4 , to which the process P 3 , P 4 is terminated.
  • the processor system described and the execution of the processes is typical of a real-time operating system and associated apparatus which are commonly used in control systems.
  • the time interval dTi, dT 2 is equidistant between two successive times ti, t 2 ,...
  • the time intervals dTi, dT 2 may be different and form pairs or longer sequences that repeat periodically. For the following descriptions it is assumed that the time intervals dTi, dT 2 are equidistant, unless otherwise stated.
  • FIG. 1 for an embodiment of the present invention is shown, which uses two timepieces Z A , Z B for monitoring.
  • the two timepieces Z A , Z B are alternately restarted when a new process Pi, P 2 , ... is started almost simultaneously by the processor system S.
  • each timer Z A , Z B is restarted only by every other process. Restarting is understood to mean that the timer is reset to a starting value and begins to measure again.
  • the first timer Z A is started together with the first process Pi at the predetermined time ti.
  • a restart of the first timer Z A occurs when the third process P 3 is started at the predetermined time t 3 .
  • the second timer Z B will not is restarted by the start of the first process Pi and the third process P 3 , but restarted together with the second process P 2 started between the aforementioned processes.
  • the time interval between two restarts of one of the timers Z A , Z B is read out before a restart of the corresponding timer Z A.
  • a timer Z A is stopped when the second process P 2 is terminated at the time T 2.
  • the time period Ai detected by the timer Z A in this way thus corresponds to the time span between the start of the first process Pi and the end of the second process P 2 .
  • the second process P 2 is ended before the third time t 3 , at which the third process P 3 is started, so that the reading of the first timer Z A at the time T 2 does not coincide with the restarting of the first timer Z A coincides at the predetermined time t 3 .
  • a further embodiment provides to stop the timer Z A at the end of a process and to carry out the reading of this timer before it is restarted.
  • the timing of reading out or stopping the first timer Z A necessarily coincides with restarting the first timer Z A , since the fifth process P 5 is started immediately upon completion of the fourth process P 4 .
  • the behavior of the second timer Z B corresponds to that of the first timer Z A , with the exception that the reading and restarting of the second timer Z B is offset by the execution time of a process.
  • This scheme can be generalized to N timer Z A, Z B, ... Z N, where these timers are then started in cyclically permutierender order in succession, after the N-th time knife P N is again started, the first timer Pi new.
  • the first timer Z A is connected to the processes P i, P N + i, P 2N + i, ...;
  • the second timer Z B with the processes P 2 , P N + 2 , P 2N + 2 , ...;
  • the k-th timer Z N is restarted with the processes P k , P N + k , P 2 N + k .
  • the reading or stopping of a k-th timer Z k is carried out according to the embodiment of Fig. 1 with termination of the process Pk-i, P N + ki, P 2 N + ki, which the process Pk, P N + k, P 2 N + k were previously started, with which the k-th timer Z k is restarted
  • FIG. 1 shows processes P 3 whose execution time is longer than the time interval dTi which is made available for the processes.
  • Exceeding the time interval dTi, dT 2 occurs sporadically when a process P 3 has to carry out a larger number of calculations or single steps than usual. This can occur, for example, in an airbag control system, which as a rule interrogates all sensors and can detect on the basis of a few calculations that there is no situation which would require a triggering of the airbag.
  • the sensors report increased acceleration values indicative of an accident, and accordingly, the processor system S must perform a greater number of calculations to verify these signals and / or trigger the airbag.
  • time intervals dTi, dT 2 are chosen so that within these time intervals dTi, dT 2 processes Pi, P 2 , ... can be executed with a normal execution time and at the same time individual outliers over a longer period of time or more processes are compensated, so that subsequent processes are executed again according to schedule, as in the example of the third process P 3 with excess length and the subsequent sixth process P 6 , which is carried out in accordance with the time t 6 , is shown.
  • a time buffer .DELTA.T is introduced which corresponds to the expected excess length of the outliers. Since it is to be assumed that a typical outlier is very rare and thus only occurs once in 2 or N successive processes Pi, P 2 ,..., A maximum time period T Max is defined which is longer than the time buffer ⁇ T 2 times or N times the time interval dT. Generally, the maximum time T Max around the time buffer is longer than the sum over all time intervals dTi, dT 2 between two timed starts of a timer.
  • FIG. 2 it will be explained by way of example how a malfunction in the execution of processes is detected by means of a predefined maximum time period T Max and periods of time detected by the timers Z A , Z B.
  • the eighth and ninth processes P 8 , P 9 are executed without error by the processor device S.
  • the second timer Z B is started and the time period B 9 is detected by the second timer Z B.
  • the tenth process Pi 0 is started, during which a malfunction occurs, for example an endless loop within the tenth process Pi 0 or a hardware defect of the processor system S, resulting in an atypically long execution time of the tenth processor Pi 0 leads.
  • the first timer Z A was started.
  • Both the first and the second timepieces Z A , Z B monitor the time periods Ai 0 or B 9 detected by them. The monitoring of the timepieces Z A , Z B can also be taken over by an external unit. If one of the detected time periods Ai 0 , B 9 exceeds the predetermined maximum time period T Ma ⁇ , an error signal is generated.
  • the generation of the signal is carried out timely to the time Fi of the beginning of the timeout of the maximum time period T M ⁇ - If the maximum time periods T Max for the two timepieces Z A , Z B are not chosen very different, they are usually the same the detected time period B 9 of the second timer Z B first the maximum time period T Max , since this second timer Z B was already started before the tenth process Pi 0 .
  • reaction time Ri measured from the start of the start of the tenth process Pi 0 at which malfunction occurs until for detecting the malfunction at the time Fi by the simple or NI times the time interval dT is shorter than the maximum time T Max -
  • the resulting reaction time Ri is thus the sum of a time interval dT and the time buffer .DELTA.T.
  • the method according to the invention responds to a malfunction of a process just as quickly as when a monitoring system with a single timer Z "is used, which with each process P 50 , P 51 .
  • a malfunction in the processor system S " which is determined by exceeding a maximum time period T" Ma ⁇ at the time F "i, wherein the maximum time T P" Ma ⁇ the sum of the time interval dT and the time buffer ⁇ T
  • the reaction time Ri of the previously described embodiment and this system are thus the same.
  • FIG. 3 Another hallmark of a malfunction in a processor system S is when processes are terminated much faster than usual.
  • Fig. 3 it will be described how such a malfunction is detected by means of a minimum period of time T 101n .
  • the thirteenth and fourteenth process Pi 3 , Pi 4 are executed on schedule and finished.
  • the second timer Z B is started together with the fourteenth process P M.
  • the fifteenth process Pi 5 is started together with the first timer Z A.
  • the fifteenth process Pi 5 there is a malfunction which, for example, prematurely terminates the execution of the fifteenth process Pi 5 .
  • the second timer Z B is stopped and the period Bi 4 detected by it is read out.
  • This time period B M is compared with the minimum time period T 101n .
  • a second error signal is output.
  • the output of the error signal is preferably carried out at the time F 2 promptly to the reading of the second timer Z B.
  • the minimum time interval T mm is shorter than twice the time interval dT by a time difference ⁇ T. All the considerations which have been explained above with respect to the time buffer ⁇ T for the maximum time period T Max can also be applied to the minimum time period T 00n , with the difference that the minimum time period T 00n is shorter than twice the time difference ⁇ T N times the time interval dT.
  • a first process Pi is started 200 in a processor system S
  • the processor controller S transmits a start signal 100 to a monitoring device 2.
  • the monitoring device 2 then starts a first timer Z A , 250, as described in the previous exemplary embodiments.
  • a check data Xi is selected 251 and transmitted with a signal 101 to the processor system S.
  • at least one operation f is applied to the check data Xi 201 and thus a processed check date Yi is obtained.
  • a stop signal 102 is transmitted from the processor system S to the monitoring device 2.
  • the second timer Z B is then stopped 252, checks whether the time B detected by the second timer Z B , the minimum time T r a m below 254, and if so, an error message 259, as in previous Embodiments described.
  • the processed check date Yi which was transmitted with the stop signal 102, compared with a target value Y So m. In the event of a deviation, an error message is also output.
  • test data Xi, X 2 , ... it can be ensured that the operations on the test data Xi, X 2 , ... are performed and the process is not a single previously processed test date Yi, Y 2 , ... only read from a memory cell of the processor system S.
  • the test data Xi, X 2 , ... can be reused cyclically. For each check data Xi, X 2 ,..., The corresponding setpoint values Ys o in, Ys o in, are to be stored in the monitoring device 2.
  • a single process can usually be subdivided into several sub-processes.
  • these would be reading-out sensors Ii, evaluating the sensor values I 2 and generating a control signal for the airbag system I 3 .
  • it is indispensable for the correct execution of the process Pi that all sub-processes Ii, I 2 , 1 3 are executed.
  • each sub-process Ii, I 2 , 1 3 subsequently performs an operation F on the test data Xi.
  • Three very simple operations Fi, F 2 , F 3 would be to negate the first, second, and third bits of the check data Xi, respectively.
  • test date Xi is five and the operation Fi the multiplication by two and the operation F 2 the addition by three, the result is thirteen, which in this case is the setpoint, and if the sequence is reversed sixteen, which does not correspond to the setpoint.
  • a monitoring device 2 which comprises an interface and a processing module 1 which is connected to a processor system S via a data and control line 20 and to an output stage 3 of an airbag system 4 for transmission of a suppression signal 201 is connected.
  • the suppression signal 201 is generated by the processing means 1 when a failure of the process execution by the processor system S is detected by one of the methods described above.
  • the processing device 1 can run a plurality of timers Z A, Z B, Z N newly directly or via a multiplexer 10, and possibly also to stop.
  • the timepieces Z A , Z B , Z N are regressive counters counting backwards in time with a timer.
  • the counter reading device 11 can read out the counter reading of the counter or timer Z A , Z B , Z N and transmit this value to the processing device 1 on request.
  • the read-out device 11 can also be connected to a multiplexer, which is set up so that only the timer which runs the longest is read out. This can be realized by a simple cyclic multiplexer.
  • the control device S outputs a control signal to the output stage 3 when the airbag system 4 is to be triggered.
  • the power amplifier 3 Upon detection of a failure of the process execution by the processing device 1, the power amplifier 3 is disabled and thus prevents triggering of the airbag system 4.
  • the outliers require the introduction of the time buffer ⁇ T as described.
  • the time buffer .DELTA.T is effectively distributed to N processes Pi, P 2 in a system with N timers Zi, Z 2 ,...
  • the average execution time is set more precisely for each individual process than for a single timer Z "and nevertheless, isolated outliers do not lead to the output of an error signal.

Abstract

Das erfindungsgemäße Verfahren zur Überwachung einer Prozessausführung von mehreren sequen- ziell ausgeführten Prozessen (P<SUB>1</SUB>, P<SUB>2</SUB>, ...) startet zyklisch abwechselnd einen von mehreren Zeitmessern, wenn einer der Prozesse (P<SUB>1</SUB>, P<SUB>2</SUB>, ...) gestartet wird, und gibt ein erstes Fehlersignal aus, wenn eine durch einen der Zeitmesser erfasste Zeitspanne eine vorbestimmte maximale Zeitspanne überschreitet.

Description

Verfahren und Vorrichtung zur Überwachung einer Prozessausführung
STAND DER TECHNIK
Die vorliegende Erfindung betrifft ein Verfahren zur Überwachung einer Prozessausführung und eine Vorrichtung zur Durchführung des erfindungsgemäßen Verfahrens.
Obwohl die vorliegende Erfindung anhand einer Überwachung einer Prozesssteuerung durch ein Echtzeitsystem beschrieben wird, ist die vorliegende Erfindung nicht darauf beschränkt, sondern betrifft allgemein Verfahren zur Überwachung von Prozessen.
Vielfältige Steuerungsverfahren und deren entsprechende Vorrichtungen sehen vor, regelmäßig Signale von Sensoren zu erfassen, die erfassten Signale auszuwerten und ansprechend auf die Auswertung entsprechende Steuersignale zu generieren. Ein Beispiel ist ein Steuerungssystem zur Auslösung von Airbags, welches regelmäßig einen Prozess mit den folgenden Teilschritten ausführt: Erfassen der Signale von Sensoren und Verarbeiten der Signale und Generieren eines Steuersignals für den Airbag.
Eine Fehlfunktion des Echtzeitsystems oder der ausgeführten Prozesse können zu einem Auslösen des Airbags führen. Dies wird dadurch vermieden, dass die Ausführung der Prozesse durch das Echtzeitsystem überwacht werden und bei Erfassung einer Fehlfunktion eine Ausgabe eines Steuersignals an den Airbag gesperrt wird.
Ein Verfahren zur Erläuterung einer der Erfindung zugrunde liegenden Problematik ist in Fig. 7 dargestellt. Prozesse P6o, Pόi, ?62 werden durch ein Echtzeitsystem S' entsprechend dem Zeitraster zu den Zeitpunkten t6i, t62 mit dem Zeitintervall dT gestartet. Zwei Prozesse P6o, Pόi werden jeweils paarweise zusammengefasst, und beim Starten des ersten Prozesses P6o der beiden Prozesse wird ein Zähler Z' gestartet, und beim Beenden des zweiten Prozesses P6i wird der Zähler Z' angehalten. Der Zählerstand C6O ist somit ein Maß für die gesamte Ausführungsdauer der beiden Prozesse P6o, Pόi- Überschreitet der Zählerstand C62 einen durch eine maximale Zeitspannung TMax vorgegebenen Wert, wird eine Ü- berlauffehlermeldung F'i ausgegeben. Tritt ein Fehlverhalten während eines ersten Prozesses P62 eines Paars auf, so vergeht ab dem Startzeitpunkt t62 dieses Prozesses P62 die maximale Zeitspanne T 'Max, bis das Fehlersignal F'i ausgegeben wird. Dies ist unerwünscht lange, insbesondere da die maximale Zeitspanne T 'Max länger als zwei Zeitintervalle dT des Ausführungsrasters sein muss. Zudem lassen sich nicht in allen Fällen zu kurze Ausführungszeiten eines Prozesses erfassen, welche ebenfalls auf ein Fehlverhalten des Echtzeitsystems oder der Prozesse hinweisen. In Fig. 9 sind sowohl der Prozess P66 als auch der Prozess P69 untypisch kurz. Ist der zu kurze Prozess der zweite Prozess eines Paars P68, P69, so erfasst der Zähler Z' einen Zählerstand C68, welcher kürzer ist als durch die minimale Zeitspannung T'nmi vorgegeben, und in Folge wird ein Unterlauf-Fehlersignal F'2 ausgegeben. Ist jedoch der zu kurze Prozess P66 der erste eines Paars P66, Pό7, wird aufgrund des Starts des zweiten Prozesses entsprechend dem Zeitraster zu dem Zeitpunkt Ui kein Zählerstand C66 erfasst, welcher kürzer ist als die entsprechende minimale Zeitspanne T101n.
VORTEILE DER ERFINDUNG
Die Erfindung schafft ein Verfahren mit den Merkmalen des Anspruchs , welches durch die Vorrichtung mit den Merkmalen des Patentanspruchs 9 durchführbar ist. Das erfindungsgemäße Verfahren erfasst jeden Unter- und Überlauf, wobei eine Reaktionszeit gemessen ab einem Start eines fehlerhaften Prozesses bis zur Ausgabe eines Fehlersignals kurz ist.
Das erfindungsgemäße Verfahren zur Überwachung einer Prozessausführung von mehreren sequen- ziell ausgeführten Prozessen startet zyklisch permutierend einen von mehreren Zeitmessern, wenn einer der Prozesse gestartet wird, und gibt ein erstes Fehlersignal aus, wenn eine durch einen der Zeitmesser erfasste Zeitspanne eine vorbestimmte maximale Zeitspanne überschreitet.
Ein Vorteil der vorliegenden Erfindung liegt darin, dass ein Fehlverhalten eines Prozesses, d.h. eine untypisch lange Ausführungsdauer, einen ersten Zeitmesser zum Überlaufen bringt, welcher vor dem Prozess durch einen vorhergehenden Prozess gestartet wurde. Daher ist die Reaktionszeit gemessen von dem Start eines Prozesses bis zum Erkennen des Fehlverhaltens des Prozesses kürzer als die ma- ximale Zeitspanne.
Gegenüber der Möglichkeit, einen Zeitmesser durch einen Prozess zu starten und durch denselben Prozess zu stoppen, erfordert dass die mittlere maximale Zeitspanne länger gewählt werden muss als in dem erfindungsgemäßen Verfahren.
Der Grund liegt in typischen Ausreißern der Ausführungsdauer, welche vereinzelt auftreten und nicht zu einem Ausgeben der Fehlermeldung führen soll. Daher muss die maximale Zeitspanne in dem Fall, dass der Zeitmesser durch denselben Prozess gestartet und gestoppt wird bzw. von dem unmittelbar nachfolgenden Prozess neu gestartet wird, größer als die Ausführungsdauer der typischen Ausreißer sein. In dem erfindungsgemäßen Verfahren wird angenommen, dass N-I Prozesse standardmäßig ausgeführt werden und höchstens ein einzelner Prozess ein Ausreißer ist, wobei N die Zahl der Zeitgeber bezeichnet. Die Überlänge des Ausreißers verteilt sich somit auf N Prozesse, und die mittlere maxima- Ie Zeitspanne bezogen auf einen einzelnen Prozess ist kürzer als in dem vorgenannten nicht erfindungsgemäßen Verfahren.
In den Unteransprüchen finden sich vorteilhafte Weiterbildungen und Verbesserungen des im Patent- anspruch 1 angegebenen Verfahrens.
Gemäß einer bevorzugten Weiterbildung wird beim Beenden eines Prozesses eine erfasste Zeitspanne des Zeitmessers ausgelesen, welcher durch den nächsten auszuführenden Prozess neu gestartet wird, und ein zweites Fehlersignal ausgegeben, wenn die Zeitspanne eine vorbestimmte minimale Zeitspan- ne unterschreitet. Dieses Verfahren ermöglicht es vorteilhafterweise, ein Fehlverhalten der Prozessausführung mit untypisch kurzer Ausführungsdauer eines Prozesse zu erkennen
Gemäß einer weiteren Weiterbildung wird einem gestarteten Prozess ein Prüfdatum zur Verarbeitung übermittelt und bei Beendigung des Prozesses ansprechend auf eine Abweichung des verarbeiteten Prüfdatums von einem Sollwert ein drittes Fehlersignal ausgegeben. In einer Weiterbildung ist ein
Prozess aus Teilprozessen zusammengesetzt, und mindestens ein Teilprozess führt eine Operation auf dem Prüfdatum aus, welche die Ausführung dieses Teilprozesses nachvollziehbar durch das verarbeitete Prüfdatum bestätigt. Auf diese Weise lässt sich erkennen, ob alle relevanten Teilprozesse ausgeführt wurden, in denen das verarbeitete Prüfdatum mit dem Sollwert verglichen wird. Eine weitere Ausgestaltung sieht vor, dass mindestens zwei Teilprozesse zueinander nicht-kommutative Operationen auf dem Datum ausführen, was darin resultiert, dass die Ausführung dieser Teilprozesse in der richtigen Reihenfolge durch das verarbeitete Prüfdatum bestätigbar ist. Zueinander nicht kommutative Operationen zeichnen sich dadurch aus, dass eine Operation in verschiedener Reihenfolge auf dem Prüfdatum für die meisten Prüfdaten zu verschiedenen verarbeiteten Prüfdaten führt.
Gemäß einer bevorzugten Weiterbildung erfolgt der Start zweier unmittelbar aufeinander folgender Prozesse mit einem minimalen Zeitintervall. Dies ermöglicht die regelmäßige Ausführung von Prozessen.
Gemäß einer Weiterbildung ist die maximale Zeitspanne größer als ein erstes Produkt des minimalen Zeitintervalls und der Anzahl der Zeitmesser und kleiner als die Summe des ersten Produkts und des minimalen Zeitintervalls. Gemäß einer weiteren Weiterbildung ist die minimale Zeitspanne größer oder gleich einem zweiten Produkt des minimalen Zeitintervalls und der um eins verringerten Anzahl der Zeitmesser.
Gemäß einer Ausführungsform der vorliegenden Erfindung weist eine Vorrichtung zur Durchführung des Verfahrens eine Überwachungseinrichtung auf, welche mit einer Prozessorvorrichtung verbunden ist, welche die Prozesse ausführt, um ein Startsignal von der Steuerungsvorrichtung zu empfangen, wenn ein Prozess gestartet wird, und eingerichtet ist eine übermittelte Zeitspanne mit der maximalen Zeitspanne zu vergleichen und bei Überschreitung ein Fehlersignal über eine Schnittstelle auszugeben; und mindestens zwei Zeitmesser aufweist, welche mit einem Multiplexer der Überwachungseinrich- tung verbunden sind, um zyklisch durch ein Rücksetzsignal neu gestartet werden zu können, und mit einem Eingang der Überwachungseinrichtung verbunden sind, um eine erfasste Zeitspanne an die Ü- berwachungseinrichtung zu übermitteln.
Gemäß einer Weiterbildung weisen die Zeitmesser regressive getaktete Zähler auf, welche beim Neu- starten auf einen Wert gesetzt werden, welcher der vorbestimmten maximalen Zeitspanne entspricht. Gemäß einer weiteren Weiterbildung ist der Zeitmesser derart eingerichtet, dass die erfasste Zeitspanne durch die Überwachungseinrichtung auslesbar ist und der Zeitmesser durch ein Steuersignal anhaltbar eingerichtet.
Gemäß einer weiteren Weiterbildung weist die Überwachungseinrichtung eine Vergleichseinrichtung auf, welche den Sollwert mit einem durch den Prozess verarbeiteten Prüfdatum vergleicht und bei Abweichung ein drittes Fehlersignal ausgibt.
Ausführungsbeispiele der Erfindung sowie vorteilhafte Weiterbildungen sind in den Figuren der Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert.
ZEICHNUNGEN
In den Figuren zeigen:
Fig. 1 eine schematische Darstellung einer Ausführungsform als Ablaufdiagramm;
Fig. 2 eine schematische Darstellung der Ausführungsform als Flussdiagramm;
Fig. 3 eine schematische Darstellung der Ausführungsform zur Erläuterung eines Überlaufs;
Fig. 4 eine schematische Darstellung der Ausführungsform bei einem Unterlauf;
Fig. 5 ein Flussdiagramm einer Ausführungsform mit einem mehrschrittigen Prozess;
Fig. 6 ein schematisches Blockdiagramm einer Ausführungsform der erfindungsgemäßen
Vorrichtung; Fig. 7 ein Ablaufdiagramm zur Erläuterung einer Problematik einer Ausführungsform der vorliegenden Erfindung;
Fig. 8 und 9 Ablaufdiagramme zur Erläuterung der zugrunde liegenden Problematik des erfindungsgemäßen Verfahrens:
BESCHREIBUNG DER AUSFÜHRUNGSBEISPIELE
In den Figuren bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Komponenten, soweit nichts Gegenteiliges angegeben ist.
In Fig. 1 ist die Ausführung von mehreren einzelnen Prozessen Pi, P2, ... durch ein Prozessorsystem S in sequenzieller Reihenfolge dargestellt. Das Prozessorsystem S versucht jeden der Prozesse möglichst zu vorgegebenen Zeitpunkten ti, t2, ... zu starten, sofern nicht noch ein vorhergehender Prozess P3, P4 zu den vorgegebenen Zeitpunkten U, U aktiv ist. In diesem Fall startet das Prozessorsystem S den Prozess P4, P5 unmittelbar zu dem Zeitpunkt T3, T4, zu welchem der Prozess P3, P4 beendet wird. Das beschriebene Prozessorsystem und die Ausführung der Prozesse ist typisch für ein Echtzeitbetriebssystem und einer zugehörigen Vorrichtung, welche häufig in Steuerungssystemen eingesetzt werden. Meistens ist das Zeitintervall dTi, dT2 zwischen zwei aufeinander folgenden Zeitpunkt ti, t2, ... äqui- distant. In einer anderen Ausführungsform können die Zeitintervalle dTi, dT2, wie in Fig. 1 dargestellt, verschieden sein und Paare oder längere Sequenzen bilden, welche sich periodisch wiederholen. Für nachfolgende Beschreibungen wird davon ausgegangen, dass die Zeitintervalle dTi, dT2 äquidistant sind, sofern es nicht anders angegeben ist.
Bei der Prozessausführung durch das Prozessorsystem S kann es zu vielfältigen Fehlfunktionen kommen. Daher ist erwünscht, Indikatoren für ein Fehlverhalten des Prozessorsystems S zu erhalten. Ein sehr einfaches und dennoch wirksames Verfahren ist die Ausführungsdauer der Prozesse Pi, P2, ... zu überwachen. In Fig. 1 ist dazu eine Ausführungsform der vorliegenden Erfindung dargestellt, welche zur Überwachung zwei Zeitmesser ZA, ZB verwendet. Die beiden Zeitmesser ZA, ZB werden abwechselnd neu gestartet, wenn nahezu zeitgleich durch das Prozessorsystem S ein neuer Prozess Pi, P2, ... gestartet wird. Somit wird jeder Zeitmesser ZA, ZB nur durch jeden zweiten Prozess neu gestartet. Unter Neustarten wird herbei verstanden, dass der Zeitmesser auf einen Startwert zurückgesetzt wird und neu zu messen beginnt. Der erste Zeitmesser ZA wird zusammen mit dem ersten Prozess Pi zu dem vorgegebenen Zeitpunkt ti gestartet. Ein Neustart des ersten Zeitmessers ZA erfolgt, wenn der dritte Prozess P3 zu dem vorgegebenen Zeitpunkt t3 gestartet wird. Der zweite Zeitmesser ZB wird nicht durch den Start des ersten Prozesses Pi und des dritten Prozesses P3 beeinflusst, sondern zusammen mit dem zwischen den vorgenannten Prozessen gestarteten zweiten Prozess P2 neu gestartet.
Die Zeitspanne zwischen zwei Neustarts eines der Zeitmesser ZA, ZB wird vor einem Neustart des entsprechenden Zeitmessers ZA ausgelesen. In der in Fig. 1 dargestellten Ausfuhrungsform wird ein Zeitmesser ZA angehalten, wenn der zweite Prozess P2 zu dem Zeitpunkt T2 beendet wird. Die von dem Zeitmesser ZA auf diese Weise erfasste Zeitspanne Ai entspricht somit der Zeitspanne zwischen dem Start des ersten Prozesses Pi und dem Ende des zweiten Prozesses P2. In dem dargestellten Beispiel wird der zweite Prozess P2 vor dem dritten Zeitpunkt t3 beendet, an welchem der dritte Prozess P3 gestartet wird, so dass das Auslesen des ersten Zeitmessers ZA zu dem Zeitpunkt T2 nicht mit dem Neustarten des ersten Zeitmessers ZA zu dem vorgegebenen Zeitpunkt t3 zusammenfällt.
Eine weitere Ausführungsform sieht vor, den Zeitmesser ZA bei Beendigung eines Prozesses nur anzuhalten und das Auslesen dieses Zeitmessers vorzunehmen, bevor er neu gestartet wird. Im Fall des vierten Prozesses P4 fallen der Zeitpunkt des Auslesen bzw. Anhaltens des ersten Zeitmessers ZA mit dem Neustarten des ersten Zeitmessers ZA gezwungenermaßen zusammen, da der fünfte Prozess P5 unmittelbar bei Beendigung des vierten Prozesses P4 gestartet wird. Das Verhalten des zweiten Zeitgebers ZB entspricht dem des ersten Zeitmessers ZA, mit der Ausnahme, dass das Auslesen und Neustarten des zweiten Zeitmessers ZB um die Ausführungszeit eines Prozess versetzt ist.
Dieses Schema lässt sich auf N Zeitmesser ZA, ZB, ... ZN verallgemeinern, wobei diese Zeitmesser dann in zyklisch permutierender Reihenfolge nacheinander gestartet werden, also nach dem N-ten Zeitmesser PN wird wieder der erste Zeitmesser Pi neu gestartet. Also der erste Zeitmesser ZA wird mit den Prozessen Pi, PN+i, P2N+i, ...; der zweite Zeitmesser ZB mit den Prozessen P2, PN+2, P2N+2, ...; und der k-te Zeitmesser ZN wird mit den Prozessen Pk, PN+k, P2N+k neu gestartet. Das Auslesen bzw. Anhalten eines k-ten Zeitmessers Zk erfolgt entsprechend der Ausführungsform von Fig. 1 mit Beendigung des Prozesses Pk-i, PN+k-i, P2N+k-i, welche dem Prozess Pk, PN+k, P2N+k vorausgehend gestartet wurden, mit welchem der k-te Zeitgeber Zk neu gestartet wird.
In Fig. 1 sind Prozesse P3 dargestellt, deren Ausführungsdauer länger ist als das Zeitintervall dTi, welches für die Prozesse zur Verfügung gestellt wird. Eine Überschreitung des Zeitintervalls dTi, dT2 tritt vereinzelt auf, wenn ein Prozess P3 eine größere Anzahl an Berechnungen oder Einzelschritten auszuführen hat als sonst üblich. Dies kann z.B. in einem Airbag-Steuersystem auftreten, welches im Regelfall alle Sensoren abfragt und auf der Basis weniger Berechnungen erfassen kann, dass keine Situation vorliegt, welche eine Auslösung des Airbags erfordern würde. Vereinzelt melden jedoch die Sensoren erhöhte Beschleunigungswerte, welche auf einen Unfall hindeuten, und entsprechend muss das Prozessorsystem S eine größere Anzahl an Berechnungen durchführen, um diese Signale zu verifizieren und/oder den Airbag auszulösen. Da diese Situationen und damit die langen Ausfuhrungsdauern der Prozesse sehr selten sind, werden die Zeitintervalle dTi, dT2 so gewählt, dass innerhalb dieser Zeitintervalle dTi, dT2 Prozesse Pi, P2, ... mit einer normalen Ausfuhrungsdauer ausgeführt werden können und zugleich einzelne Ausreißer über eine längere Zeitspanne oder mehrere Prozesse ausgeglichen werden, so dass nachfolgende Prozesse wieder zeitplangemäß ausgeführt werden, wie in dem Beispiel des dritten Prozesses P3 mit Überlänge und dem nachfolgenden sechsten Prozess P6, welcher zeitplangemäß zu dem Zeitpunkt t6 ausgeführt wird, dargestellt ist.
Aus der vorhergehenden Beschreibung ergibt sich, dass nicht jede Überschreitung eines Zeitintervalls dTi, dT2 durch die Ausführung eines Prozesses auf einem Fehlverhalten des Prozessorsystems S bzw. des ausgeführten Prozesses P3 basiert, sondern auch selten auftretenden Ausreißern der Ausführungsdauer entsprechen kann. Dazu wird ein Zeitpuffer ΔT eingeführt, welcher der zu erwartenden Überlänge der Ausreißer entspricht. Da anzunehmen ist, dass ein typischer Ausreißer sehr selten ist und somit bei 2 bzw. N aufeinander folgenden Prozessen Pi, P2, ... nur einmal auftritt, wird eine maximale Zeitspanne TMax definiert, welche um den Zeitpuffer ΔT länger ist, als das 2-fache bzw. N-fache des Zeitintervalls dT. Allgemein ist die maximale Zeitspanne TMax um den Zeitpuffer länger als die Summe über alle Zeitintervalle dTi, dT2 zwischen zwei zeitplangemäßen Starts eines Zeitmessers.
Mit Bezug auf Fig. 2 wird beispielhaft erläutert, wie mit einer vorgegebenen maximalen Zeitspanne TMax und durch die Zeitmesser ZA, ZB erfassten Zeitspannen ein Fehlverhalten in der Ausführung von Prozessen erkannt wird. Der achte und neunte Prozesse P8, P9 werden ohne Fehlverhalten durch die Prozessoreinrichtung S ausgeführt. Analog zu den Erläuterungen von Fig. 1 wird mit dem Start des neunten Prozesses P9 der zweite Zeitmesser ZB gestartet und die Zeitspanne B9 durch den zweiten Zeitmesser ZB erfasst. Zeitplangemäß zu dem Zeitpunkt tio wird der zehnte Prozess Pi0 gestartet, wo- bei während der Ausführung ein Fehlverhalten auftritt, z.B. eine Endlosschleife innerhalb des zehnten Prozesses Pi0 oder ein Hardware-Defekt des Prozessorsystems S, was zu einer untypisch langen Ausführungszeit des zehnten Prozessors Pi0 führt. Mit dem zehnten Prozess Pi0 wurde auch der erste Zeitmesser ZA gestartet. Sowohl der erste wie auch der zweite Zeitmesser ZA, ZB überwachen die von ihnen erfassten Zeitspannen Ai0 bzw. B9. Die Überwachung der Zeitmesser ZA, ZB kann auch von einer externen Einheit übernommen werden. Überschreitet eine der erfassten Zeitspannen Ai0, B9 die vorgegebene maximale Zeitspanne TMaχ, wird ein Fehlersignal generiert. Vorzugsweise erfolgt die Generierung des Signals zeitnah zu dem Zeitpunkt Fi des Beginns der Zeitüberschreitung der maximalen Zeitspanne TM^- Sofern die maximalen Zeitspannen TMax für die beiden Zeitmesser ZA, ZB nicht sehr unterschiedlich gewählt sind, im Regelfall sind sie gleich, überschreitet die erfasste Zeitspanne B9 des zweiten Zeitmessers ZB zuerst die maximale Zeitspanne TMax, da dieser zweite Zeitmesser ZB bereits vor dem zehnten Prozess Pi0 gestartet wurde. Daraus ergibt sich, dass die Reaktionszeit Ri gemessen von Beginn des Starts des zehnten Prozesses Pi0, bei welchem ein Fehlverhalten auftritt, bis zum Erkennen des Fehlverhaltens zum Zeitpunkt Fi um das einfache bzw. N-I -fache des Zeitintervalls dT kürzer ist als die maximale Zeitspanne TMax- Die sich ergebende Reaktionszeit Ri ist somit die Summe eines Zeitintervalls dT und des Zeitpuffers ΔT. Somit kann schnell auf ein Fehlverhalten des Prozessorsystems S bzw. des ausgeführten Prozesses reagiert werden. Eine Ausführungsform der vor- liegenden Erfindung sieht vor, in diesem Fall bei einem Airbag-Steuersystem eine Endstufe zu sperren, so dass ein möglicherweise fehlerhaft generiertes Steuersignal der Airbag-Steuereinrichtung einen Airbag nicht auslösen kann.
Durch einen Vergleich mit Fig. 7 wird offensichtlich, dass das erfϊndungsgemäße Verfahren genauso schnell auf ein Fehlverhalten eines Prozesses reagiert, wie wenn ein Überwachungssystem mit einem einzigen Zeitmesser Z" verwendet wird, welcher mit jedem Prozess P50, P51, ... neu gestartet wird. Während des Prozesses P52 kommt es zu einem Fehlverhalten in dem Prozessorsystem S", was durch Überschreiten einer maximalen Zeitspanne T"Maχ zu dem Zeitpunkt F"i festgestellt wird, wobei die maximale Zeitspane T"Maχ der Summe des Zeitintervalls dT und dem Zeitpuffer ΔT entspricht. Die Reaktionszeit Ri der vorhergehend beschriebenen Ausführungsform und dieses Systems sind somit gleich.
Ein weiteres Kennzeichen für eine Fehlfunktion in einem Prozessorsystem S ist, wenn Prozesse viel schneller als üblich beendet werden. Mit Bezug auf Fig. 3 wird beschrieben, wie eine solche Fehlfunk- tion mit Hilfe einer minimalen Zeitspanne T101n festgestellt wird. Der dreizehnte und vierzehnte Prozess Pi3, Pi4 werden zeitplanmäßig ausgeführt und beendet. Der zweite Zeitgeber ZB wird zusammen mit dem vierzehnten Prozess PM gestartet. Der fünfzehnte Prozess Pi5 wird zusammen mit dem ersten Zeitmesser ZA gestartet. Während des fünfzehnten Prozesses Pi5 ergibt sich eine Fehlfunktion, welche z.B. die Ausführung des fünfzehnten Prozesses Pi5 vorzeitig beendet. Bei Ende dieses fünfzehnten Prozesses wird standardmäßig der zweite Zeitmesser ZB angehalten und die durch ihn erfasste Zeitspanne Bi4 ausgelesen. Diese Zeitspanne BM wird mit der minimalen Zeitspanne T101n verglichen. Unterschreitet die erfasste Zeitspanne BM die minimale Zeitspanne Tmm, wird ein zweites Fehlersignal ausgegeben. Die Ausgabe des Fehlersignals erfolgt vorzugsweise zu dem Zeitpunkt F2 zeitnah zu dem Auslesen des zweiten Zeitmessers ZB. Die minimale Zeitspanne Tmm ist um eine Zeitdifferenz δT kür- zer als das Zweifache des Zeitintervalls dT. Sämtliche Überlegungen, welche zuvor in Bezug auf den Zeitpuffer ΔT für die maximale Zeitspanne TMax erläutert wurden, lassen sich auch auf die minimale Zeitspanne T00n anwenden mit dem Unterschied, dass die minimale Zeitspanne T00n um die Zeitdifferenz δT kürzer ist als das Zweifache bzw. das N-fache des Zeitintervalls dT.
Neben der Überwachung der Ausführung der Prozesse mittels derer Ausführungszeit wird eine zusätzliche Diagnosemöglichkeit durch die mit Bezug auf Fig. 4 dargestellte Ausführungsform erreicht. Wird in einem Prozessorsystem S ein erster Prozess Pi gestartet 200, übermittelt die Prozessorsteuerung S ein Startsignal 100 an eine Überwachungseinrichtung 2. Daraufhin startet die Überwachungseinrichtung 2 einen ersten Zeitmesser ZA, 250, wie in den vorherigen Ausfuhrungsbeispielen beschrieben. Zusätzlich wird ein Prüfdatum Xi ausgewählt 251 und mit einem Signal 101 an das Prozessorsys- tem S übermittelt. In dem ersten Prozess Pi wird mindestens eine Operation f auf das Prüfdatum Xi angewandt 201 und somit ein verarbeitetes Prüfdatum Yi erhalten. Bei Beendigung 202 des ersten Prozesses Pi wird ein Stoppsignal 102 von dem Prozessorsystem S an die Überwachungseinrichtung 2 übermittelt. In der Überwachungseinrichtung 2 wird daraufhin der zweite Zeitmesser ZB angehalten 252, überprüft, ob die von dem zweiten Zeitmesser ZB erfasste Zeitspanne B die minimale Zeitspanne Tram unterschreitet 254, und falls ja, eine Fehlermeldung ausgegeben 259, wie bereits in vorhergehenden Ausführungsformen beschrieben. Zudem wird das verarbeitete Prüfdatum Yi, welches mit dem Stoppsignal 102 übermittelt wurde, mit einem Sollwert YSom verglichen. Bei einer Abweichung wird ebenfalls eine Fehlermeldung ausgegeben. Zudem wird überprüft, ob eine erfasste Zeitspanne nicht bereits die maximale Zeitspanne
Figure imgf000011_0001
überschritten hat 258, was ebenfalls, wie bereits erläutert, zur Ausgabe einer Fehlermeldung führt.
Bei Start eines weiteren Prozesses werden die zuvor beschriebenen Schritte wiederholt, wie aus Fig. 4 zu entnehmen ist, wobei entsprechend der andere Zeitmesser gestartet bzw. angehalten wird. Durch Verwendung verschiedener Prüfdaten Xi, X2, ... kann sichergestellt werden, dass die Operationen auf den Prüfdaten Xi, X2, ... ausgeführt werden und der Prozess nicht ein einzelnes vormals bearbeitetes Prüfdatum Yi, Y2, ... nur aus einer Speicherzelle des Prozessorsystems S ausliest. Die Prüfdaten Xi, X2, ... können zyklisch wieder verwendet werden. Zu jedem Prüfdatum Xi, X2, ... sind die entsprechenden Sollwerte Ysoin, Ysoin, — in der Überwachungseinrichtung 2 vorzuhalten.
Mit Bezug auf Fig. 5 werden zwei Anwendungen eines Prüfdatums beschrieben. Ein einzelner Prozess lässt sich in der Regel in mehrere Teilprozesse untergliedern. Z.B. bei einer Airbag-Steuerung wären dies auslesende Sensoren Ii, Auswerten der Sensorwerte I2 und Generieren eines Steuerungssignals für das Airbag-System I3. Hierbei ist es unabdingbar für die korrekte Ausführung des Prozesses Pi, dass alle Teilprozesse Ii, I2, 13 ausgeführt werden. Hierzu führt jeder Teilprozess Ii, I2, 13 nachfolgend eine Operation F auf dem Prüfdatum Xi aus. Drei sehr einfache Operationen Fi, F2, F3 wären, das erste, das zweite bzw. das dritte Bit des Prüfdatums Xi zu negieren. Durch Vergleich mit dem Sollwert kann somit unmittelbar festgestellt werden, ob alle drei Operationen ausgeführt wurden oder eine und in diesem Fall sogar welche der Operationen nicht ausgeführt wurde. Wichtig für die korrekte Ausführung des Prozesses Pi ist auch die Reihenfolge der Ausführungen der Teilprozesse Ii, I2, 13. Dies kann dadurch erreicht werden, dass die Operationen Fi, F2, F3 zueinander oder zumindestens teilweise nicht kommutativ sind. Dadurch ergibt sich, dass bei nicht korrekter Reihenfolge der Ausführung sich ein von dem Sollwert unterscheidendes verarbeitetes Prüfdatum Y ergibt. Es sei beispielsweise das Prüf- datum Xi fünf und die Operation Fi die Multiplikation mit zwei und die Operation F2 die Addition mit drei, ergibt sich bei korrekter Reihenfolge als Ergebnis dreizehn, was in diesem Fall der Sollwert ist, und bei vertauschter Reihenfolge sechzehn, was nicht dem Sollwert entspricht.
Mit Bezug auf Fig. 6 wird eine Überwachungseinrichtung 2 beschrieben, welche eine Schnittstelle und ein Verarbeitungsmodul 1 aufweist, welches mit einem Prozessorsystem S über eine Daten- und Steuerungsleitung 20 verbunden ist und mit einer Endstufe 3 eines Airbag-Systems 4 zur Übermittlung von einem Unterdrückungssignal 201 verbunden ist. Das Unterdrückungssignal 201 wird durch die Verarbeitungseinrichtung 1 generiert, wenn ein Fehlverhalten der Prozessausführung durch das Prozessor- System S mit einem der zuvor beschriebenen Verfahren festgestellt wird. Die Verarbeitungseinrichtung 1 kann direkt oder über eine Multiplexereinrichtung 10 eine Vielzahl von Zeitmessern ZA, ZB, ZN neu starten und gegebenenfalls auch anhalten. In einer bevorzugten Ausführungsform sind die Zeitmesser ZA, ZB, ZN regressive Zähler, welche im Takt mit einem Zeitgeber rückwärts zählen. Erreicht ein Zählerstand einer der Zähler den Wert 0, so löst dies einen Interrupt in einer Zelleausleseeinrich- tung 11 aus. Beim Neustarten der Zähler ZA, ZB, ZN werden diese auf einen Wert gesetzt, welcher der maximalen Zeitspanne entspricht. Daher wird das Auslösen des zuvor genannten Interrupts als Fehler in dem Prozessorsystem S bei der Prozessausführung interpretiert. In einer weiteren Variante kann die Zählerausleseeinrichtung 11 den Zählerstand der Zähler bzw. Zeitmessers ZA, ZB, ZN auslesen und diesen Wert an die Verarbeitungseinrichtung 1 auf Anforderung übergeben. Die Ausleseeinrichtung 11 kann ebenso mit einem Multiplexer verbunden sein, welcher so eingerichtet ist, dass nur der Zeitmesser ausgelesen wird, welcher am längsten läuft. Dies lässt sich durch einen einfachen zyklischen Multiplexer realisieren.
Die Steuerungseinrichtung S gibt an die Endstufe 3 ein Steuersignal aus, wenn das Airbag-System 4 ausgelöst werden soll. Bei einem Erkennen eines Fehlers der Prozessausführung durch die Verarbeitungseinrichtung 1 wird die Endstufe 3 gesperrt und somit ein Auslösen des Airbag-Systems 4 verhindert.
Ein weiterer Vorteil der beschriebenen Ausführungsformen wird nachfolgend ausgeführt. Die Ausrei- ßer erfordern wie beschrieben die Einführung des Zeitpuffers ΔT. Der Zeitpuffer ΔT verteilt sich bei einem System mit N Zeitmessern Zi, Z2, ... effektiv auf N Prozesse Pi, P2 ... Somit ist die mittlere Ausführungsdauer für jeden einzelnen Prozess genauer festgelegt als bei nur einem einzigen Zeitmesser Z" und trotzdem führen vereinzelte Ausreißer nicht zur Ausgabe eines Fehlersignal.

Claims

PATENTANSPRÜCHE
1. Verfahren zur Überwachung eines Prozessorsystems (S), welches mehrere Prozesse (Pi, P2, ...) ausgeführt, wobei ein Prozess (Pi, P2, ...) gestartet wird nachdem ein vorhergehender Prozess (Pi, P2, ...) beendet ist, dadurch gekennzeichnet, dass
zyklisch permutierend einer von mindestens zwei Zeitmessern (Z A, ZB, ZN) neu gestartet wird, wenn einer der Prozesse (Pi, P2, ...) gestartet wird; und
ein erstes Fehlersignal ausgegeben wird, wenn eine durch einen der Zeitmesser (ZA, ZB, ZN) erfasste Zeitspanne (Al, A3, ..., BO, B2, ...), eine vorbestimmte maximale Zeitspanne (TMax) überschreitet.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass beim Beenden eines Prozesses (Pi, P2, ...) eine erfasste Zeitspanne (Al, A3, ..., BO, B2, ...) des Zeitmessers (ZA, ZB, ZN) ausgelesen wird, welcher durch den nächsten auszuführenden Prozess (Pi, P2, ...) neu gestartet wird; und
ein zweites Fehlersignal ausgegeben wird, wenn die erfasste Zeitspanne (Al, A3, A5, ..., BO, B2, B4, ...) eine vorbestimmte minimale Zeitspanne (T1nIn) unterschreitet.
3. Verfahren nach mindestens einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass einem gestarteten Prozess (Pi, P2, ...) ein Prüfdatum (Xi, X2) zur Verarbeitung übermittelt wird;
bei Beendigung des Prozesses (Pi, P2, ...) ansprechend auf eine Abweichung des verarbeiteten
Prüfdatums (Yi, Y2) von einem Soll- Wert (Ysoin, Ysom) ein drittes Fehlersignal ausgegeben wird.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass ein Prozess (Pi, P2, ...) aus Teilpro- zessen (Ii, I2, 13) zusammengesetzt ist und mindestens ein Teilprozess (Ii, I2, 13) eine Operation auf dem Prüfdatum (Xi, X2) ausführt, welche die Ausführung dieses Teilprozesses (Ii, I2, 13) nachvollziehbar durch das verarbeitete Prüfdatum (Yi, Y2) bestätigt.
5. Verfahren nach mindestens einem der Ansprüche 4 oder 5, wobei mindestens zwei Teilprozesse (Ii, I2, 13) zueinander nicht-kommutative Operationen (Fi, F2, F3) auf dem Prüfdatum (Xi, X2) ausführen, so dass die Ausführung dieser Teilprozesse in der richtigen Reihenfolge durch das verarbeitete Datum bestätigbar ist.
6. Verfahren nach mindestens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Start von einem der Prozesse (Pi, P2, ...) frühestens nach einem vorbestimmten Zeitintervall (dT; dTi, dT2) zum Start eines unmittelbar zuvor gestarteten Prozesses (Pi, P2, ...) er- folgt.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die maximale Zeitspanne (TMax) größer ist als ein erstes Produkt des vorbestimmten Zeitabstandes (dT) und der Anzahl (N) der Zeitmesser und kleiner als die Summe des ersten Produkts und des vorbestimmten Zeitabstan- des (dT):
N dT < TMax < (N+l) dT.
8. Verfahren nach mindestens einem der Ansprüche 6 oder 7, dadurch gekennzeichnet, dass die minimale Zeitspanne (Tmm) größer oder gleich einem zweiten Produkt des vorbestimmten Zeitabstandes (dT) und der um eins verringerten Anzahl (N) der Zeitmesser (ZA, ZB, ZN) ist:
Tmin <= (N-I) dT.
9. Vorrichtung zur Durchführung des Verfahrens nach Anspruch 1 mit:
einer Überwachungseinrichtung, welche mit dem Prozessorsystem (S) zum Empfangen eines
Startsignals von dem Prozessorsystem (S) verbunden ist, wenn ein Prozess (Pi, P2, ...) gestartet wird;
mindestens zwei Zeitmessern (ZA, ZB, ZN), welche mit einem Multiplexer (10) der Überwa- chungseinrichtung zum zyklischen Neustarten der Zeitmesser (ZA, ZB, ZN) durch ein Rücksetzsignal verbunden sind,
und mit einem Eingang der Überwachungseinrichtung zum Übermitteln einer erfassten Zeitspanne (Al, A3, A5, ..., BO, B2, B4, ...) an die Überwachungseinrichtung verbunden sind.
10. Vorrichtung nach Anspruch 9, dadurch gekennzeichnet, dass die Zeitmesser (Z A, ZB, ZN) regressive getaktete Zähler sind, welche zum Setzen der Zähler beim Neustarten auf einen Wert, welcher der vorbestimmten maximalen Zeitspanne (TMaχ) entspricht, eingerichtet sind.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, dass der Eingang zum Auslösen der Ausgabe einer ersten Fehlermeldung eingerichtet ist, wenn eine Null eines der Zähler (ZA, ZB, ZN) an dem Eingang anliegt.
12. Vorrichtung nach Anspruch 9 oder 10, dadurch gekennzeichnet, dass der Zählerstand der Zäh- ler (ZA, ZB, ZN) durch die Überwachungseinrichtung auslesbar ist und der Zähler durch ein
Steuersignal anhaltbar ist.
13. Vorrichtung nach mindestens einem der vorhergehenden Ansprüche 9 bis 12, dadurch gekennzeichnet, dass die Überwachungseinrichtung eine Vergleichseinrichtung aufweist, welche zum Vergleichen des Soll- Wertes mit einem durch den Prozess (Pi, P2, ...) verarbeiteten Prüfdatum und zum Ausgeben eines dritten Fehlersignals bei einer Abweichung eingerichtet ist.
PCT/EP2005/057233 2005-02-28 2005-12-30 Verfahren und vorrichtung zur überwachung einer prozessausführung WO2006092182A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP05823489A EP1866714B1 (de) 2005-02-28 2005-12-30 Verfahren und vorrichtung zur überwachung einer prozessausführung
US11/885,294 US7895478B2 (en) 2005-02-28 2005-12-30 Method and device for monitoring a process execution
DE502005009340T DE502005009340D1 (de) 2005-02-28 2005-12-30 Verfahren und vorrichtung zur überwachung einer prozessausführung
JP2007556504A JP4638916B2 (ja) 2005-02-28 2005-12-30 プロセス実行を監視するための方法および装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005008975A DE102005008975A1 (de) 2005-02-28 2005-02-28 Verfahren und Vorrichtung zur Überwachung einer Prozessausführung
DE102005008975.5 2005-02-28

Publications (1)

Publication Number Publication Date
WO2006092182A1 true WO2006092182A1 (de) 2006-09-08

Family

ID=36130158

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2005/057233 WO2006092182A1 (de) 2005-02-28 2005-12-30 Verfahren und vorrichtung zur überwachung einer prozessausführung

Country Status (6)

Country Link
US (1) US7895478B2 (de)
EP (1) EP1866714B1 (de)
JP (1) JP4638916B2 (de)
DE (2) DE102005008975A1 (de)
ES (1) ES2342550T3 (de)
WO (1) WO2006092182A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116306A (zh) * 2013-02-05 2013-05-22 浙江大学 一种自动的步进式有序时段划分方法
CN103777627A (zh) * 2014-01-24 2014-05-07 浙江大学 一种基于少量批次的批次过程在线监测方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5024095B2 (ja) * 2008-02-08 2012-09-12 沖電気工業株式会社 無線送信装置、プログラム及び方法
CN102413286B (zh) * 2011-12-07 2013-08-14 大道计算机技术(上海)有限公司 基于时间片轮转的不稳定信号自适应处理方法
US10365683B2 (en) * 2013-05-10 2019-07-30 Texas Instruments Incorporated Frequency execution monitoring in a real-time embedded system
US10394897B2 (en) 2015-09-11 2019-08-27 International Business Machines Corporation Visualization of serial processes
US9928625B2 (en) 2015-11-19 2018-03-27 International Business Machines Corporation Visualizing temporal aspects of serial processes
JP2017117217A (ja) * 2015-12-24 2017-06-29 アイシン精機株式会社 制御装置
DE102021124387A1 (de) 2021-09-21 2023-03-23 Infineon Technologies Ag Watchdog-Schaltkreis und Verfahren zum Betreiben eines Watchdog-Schaltkreises
DE102022203252A1 (de) 2022-04-01 2023-10-05 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Absichern des autonomen Fahrens eines Kraftfahrzeugs

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359515A (en) * 1989-06-29 1994-10-25 Robert Bosch Gmbh Vehicle occupant safety system and method for operating the same
EP0663324A1 (de) * 1993-12-27 1995-07-19 Airbag Systems Company Ltd. Mit Micro-Computer ausgestattetes Kraftfahrzeugsicherheitssystem
US5677838A (en) * 1994-04-28 1997-10-14 Nippondenso Co., Ltd. Faulty operation prevention circuit of a computer

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3723975A (en) * 1971-06-28 1973-03-27 Ibm Overdue event detector
JPS6032217B2 (ja) * 1979-04-02 1985-07-26 日産自動車株式会社 制御用コンピュ−タのフェィルセ−フ装置
DE3481872D1 (de) * 1984-12-31 1990-05-10 Ibm Geraet zur erkennung von ausserbetriebzustaenden bei einem nichtbedienten unterbrechungsgesteuerten prozessor.
JPS633120A (ja) * 1986-06-20 1988-01-08 Matsushita Electric Ind Co Ltd 燃焼検出装置
EP0369489A3 (de) * 1988-11-18 1991-11-27 Omron Corporation Steuerungssystem für Sensoren
JPH02304636A (ja) * 1989-05-19 1990-12-18 Mitsubishi Electric Corp ウォッチドッグタイマ回路
JPH05238348A (ja) * 1991-03-13 1993-09-17 Zexel Corp 車両安全装置の制御システム
JPH0566812A (ja) * 1991-09-05 1993-03-19 Yaskawa Electric Corp プログラマブルコントローラの二重化ウオツチドツグタイマ
JP2710200B2 (ja) * 1993-12-28 1998-02-10 日本電気株式会社 多重タイマ
JP3702906B2 (ja) * 1995-05-30 2005-10-05 ジヤトコ株式会社 マイコン搭載車両の負荷駆動制御装置
DE19647407C2 (de) * 1996-11-15 1998-09-03 Siemens Ag Steuergerät, insbesondere für den Einsatz in einem Kraftfahrzeug
US5908470A (en) * 1997-01-03 1999-06-01 Ncr Corporation Method for contention-free access and management of timers in multiprocessing environments
JPH10222402A (ja) * 1997-02-12 1998-08-21 Nissan Motor Co Ltd 車両用制御装置
DE19712375A1 (de) * 1997-03-25 1998-10-01 Bosch Gmbh Robert Watchdog-Schaltung
US5938708A (en) * 1997-07-03 1999-08-17 Trw Inc. Vehicle computer system having a non-interrupt cooperative multi-tasking kernel and a method of controlling a plurality of vehicle processes
US6427161B1 (en) * 1998-06-12 2002-07-30 International Business Machines Corporation Thread scheduling techniques for multithreaded servers
WO2000070530A1 (en) * 1999-05-19 2000-11-23 I.D. Systems, Inc. Fully automated vehicle rental system
US6543003B1 (en) * 1999-11-08 2003-04-01 International Business Machines Corporation Method and apparatus for multi-stage hang recovery in an out-of-order microprocessor
DE10049441B4 (de) * 2000-10-06 2008-07-10 Conti Temic Microelectronic Gmbh Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems
US7207043B2 (en) * 2002-12-31 2007-04-17 International Business Machines Corporation Programmatic response-time based workload distribution techniques
US7310751B2 (en) * 2004-02-20 2007-12-18 Hewlett-Packard Development Company, L.P. Timeout event trigger generation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359515A (en) * 1989-06-29 1994-10-25 Robert Bosch Gmbh Vehicle occupant safety system and method for operating the same
EP0663324A1 (de) * 1993-12-27 1995-07-19 Airbag Systems Company Ltd. Mit Micro-Computer ausgestattetes Kraftfahrzeugsicherheitssystem
US5677838A (en) * 1994-04-28 1997-10-14 Nippondenso Co., Ltd. Faulty operation prevention circuit of a computer

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116306A (zh) * 2013-02-05 2013-05-22 浙江大学 一种自动的步进式有序时段划分方法
CN103777627A (zh) * 2014-01-24 2014-05-07 浙江大学 一种基于少量批次的批次过程在线监测方法
CN103777627B (zh) * 2014-01-24 2016-03-30 浙江大学 一种基于少量批次的批次过程在线监测方法

Also Published As

Publication number Publication date
JP4638916B2 (ja) 2011-02-23
US20090300435A1 (en) 2009-12-03
EP1866714B1 (de) 2010-03-31
US7895478B2 (en) 2011-02-22
DE102005008975A1 (de) 2006-08-31
EP1866714A1 (de) 2007-12-19
ES2342550T3 (es) 2010-07-08
DE502005009340D1 (de) 2010-05-12
JP2008532125A (ja) 2008-08-14

Similar Documents

Publication Publication Date Title
EP1866714B1 (de) Verfahren und vorrichtung zur überwachung einer prozessausführung
DE10056408C1 (de) Vorrichtung zur Überwachung eines Prozessors
DE4111072C2 (de)
EP2526431B1 (de) Verfahren und vorrichtung zur überwachung eines frequenzsignals
EP3201894B1 (de) Vorrichtung zum senden und empfangen eines sensorsignals
EP1950639B1 (de) Verfahren zum Betreiben einer Prozessanlage, Prozessanlage und Computerprogrammprodukt
DE19847986C2 (de) Einzelprozessorsystem
WO2013020529A1 (de) Messwert-übertragungsvorrichtung
EP3493000B1 (de) Verfahren zum fehlersicheren erfassen eines messwertes und automatisierungssystem
EP1807760B1 (de) Datenverarbeitungssystem mit variabler taktrate
DE102013213087A1 (de) Überwachungsschaltung mit einem fenster-watchdog
WO1988005570A1 (en) Process and device for monitoring computer-controlled final control elements
DE102017011685A1 (de) Verfahren und Vorrichtung zur Verarbeitung von Alarmsignalen
EP1025501B1 (de) Verfahren und vorrichtung zur überprüfung einer fehlerüberwachung einer schaltung
WO2011131752A1 (de) Aufzeichnung von history-informationen in einem feldgerät
DE102017219195B4 (de) Verfahren zum gewährleisten eines betriebs eines rechners
DE102017200280B4 (de) Verfahren und Vorrichtung zum Qualifizieren eines Fehlers eines Sensors mittels einer Statusinformation
DE10063449B4 (de) Steuergerät mit einer Konsistenzüberwachung von Interrupts und ein Verfahren zur Durchführung einer Konsistenzüberwachung von Interrupts bei einem Steuergerät
EP3433682B1 (de) Sicherheitssteuerung und verfahren zum betreiben einer sicherheitssteuerung
EP3529673B1 (de) Steuerung redundanter verarbeitungseinheiten
DE102017005944B4 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Verletzungen von zyklischen Echtzeitbedingungen in Datenverarbeitungseinheiten und -systemen
DE102022203252A1 (de) Verfahren und Vorrichtung zum Absichern des autonomen Fahrens eines Kraftfahrzeugs
WO2024074331A1 (de) Verfahren und unterstützungseinrichtung zum unterstützen einer robustheitsoptimierung für ein datenverarbeitungssystem und korrespondierendes ci-system
DE102022207309A1 (de) Verfahren zum Prüfen eines Eingangskanals für PWM-Signale einer elektronischen Schaltung
DE102012221055A1 (de) Verfahren zum Prüfen eines Botschaftsempfangs in einem Endgerät

Legal Events

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

Ref document number: 2005823489

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007556504

Country of ref document: JP

WWP Wipo information: published in national office

Ref document number: 2005823489

Country of ref document: EP