Article Preview
TopIntroduction
In recent years, reliability becomes the major design requirement of embedded systems because of their increasing complexity which increases dramatically the risk of their dysfunction. Thus, failures that could lead to unacceptable and dramatic consequences for the system and loss of users life must be detected an analyzed in the earliest stages of the system development life cycle. Indeed, a reliability study is required during the design phase of embedded systems. Moreover, reliability analysis tools must be developed for automatically assess the reliability status and envisage optimal reconfigurations in order to guarantee the suitable level of reliability required by the criticality of embedded systems. Classical reliability approaches are not sufficient to deal with complex and hybrid systems because they have clear limitations: On one hand, event-based approaches are static representations of embedded systems through combination of events leading to a function failure (Fault Trees, Failure Mode and Effect Analysis). They analyze the failure behavior of the system. However, time information and sequence dependencies are not taken into account. On the other hand, state-based approaches analyze a state-based model of the system and its changes with respect to time and order between events (e.g., Petri nets) but are limited by the eternal problem of combinative explosion of the state graph. Khalfaoui (2003) has suggested an alternative solution overcoming these problems. He resorted to deriving critical scenarios from a Petri net model without enumerating all the states of the system. Indeed, the proposed feared scenarios approach, improved and implemented by Medjoudj (2006) and Sadou (2007) allows identifying, at the early design stage of the system, a partial order of transitions firings leading from one partial state corresponding to the normal behavior to another one that represents a dangerous situation of the system. Focusing on the states implicated in the occurrence of the feared state, this approach avoids the exploration of the global system and generation of the associated reachability graph. Moreover, the description and analysis of feared behaviors help designers selecting safe architectures.
In this paper, we propose an extension of the feared scenarios approach in order to analyze the reliability of embedded systems with interruptible tasks which can be suspended and retrieved again from where they were suspended. This behavior cannot be modeled with the ordinary time Petri nets where all of the enabled clocks progress with a unified rate. It is possible to reinitialize a clock but it cannot be stopped and retrieved again. The interruptible aspect of embedded systems leads us to extract the feared scenarios which are unknown during the design phase of embedded systems, from a stopwatch Petri net model, an extension of time Petri nets to facilitate modeling of interruption and resumption of a job. Emphasis is placed on the calculation of the occurring probability of feared scenarios including in the unique modeling the processing of continuous and discrete phenomenon, with special attention to the representation of suspension and resumption of task execution. To this end, our reliability approach is based on a hybrid simulation in the same Petri net formalism and has the advantage that simulation is not performed on the entire system. The key idea of our method is the covering of “discrete” and “continuous” events in a single calculation. Indeed, we propose to couple a code modeling the physical aspects to a generation scenarios algorithm from a Petri net without exploring the whole associated graph. The continuous dynamics is represented by a Java code, coupled by the stopwatch Petri net that represents the discrete dynamics of the system.
The rest of this paper is organized as follows: in section 2, we explain the principle of our hybrid simulation based approach and discuss its advantages. In section 3, we present a case study to illustrate our approach. In section 4, we describe the application of the method and present the obtained results. In section 5, we present a comparison with existing approaches. Finally, we conclude the paper in section 6.