scispace - formally typeset
Search or ask a question
Proceedings Article

Modeling Heterogeneous Real-time Components in BIP

TL;DR: The BIP language for the description and composition of layered components as well as associated tools for executing and analyzing components on a dedicated platform and provides a powerful mechanism for structuring interactions involving rendezvous and broadcast are presented.
Abstract: We present a methodology for modeling heterogeneous real-time components. Components are obtained as the superposition of three layers : Behavior, specified as a set of transitions; Interactions between transitions of the behavior; Priorities, used to choose amongst possible interactions. A parameterized binary composition operator is used to compose components layer by layer. We present the BIP language for the description and composition of layered components as well as associated tools for executing and analyzing components on a dedicated platform. The language provides a powerful mechanism for structuring interactions involving rendezvous and broadcast. We show that synchronous and timed systems are particular classes of components. Finally, we provide examples showing the utility of the BIP framework in heterogeneous component modeling.
Citations
More filters
01 Sep 1996
TL;DR: Model checking tools, created by both academic and industrial teams, have resulted in an entirely novel approach to verification and test case generation that often enables engineers in the electronics industry to design complex systems with considerable assurance regarding the correctness of their initial designs.
Abstract: Turing Lecture from the winners of the 2007 ACM A.M. Turing Award. In 1981, Edmund M. Clarke and E. Allen Emerson, working in the USA, and Joseph Sifakis working independently in France, authored seminal papers that founded what has become the highly successful field of model checking. This verification technology provides an algorithmic means of determining whether an abstract model---representing, for example, a hardware or software design---satisfies a formal specification expressed as a temporal logic (TL) formula. Moreover, if the property does not hold, the method identifies a counterexample execution that shows the source of the problem. The progression of model checking to the point where it can be successfully used for complex systems has required the development of sophisticated means of coping with what is known as the state explosion problem. Great strides have been made on this problem over the past 28 years by what is now a very large international research community. As a result many major hardware and software companies are beginning to use model checking in practice. Examples of its use include the verification of VLSI circuits, communication protocols, software device drivers, real-time embedded systems, and security algorithms. The work of Clarke, Emerson, and Sifakis continues to be central to the success of this research area. Their work over the years has led to the creation of new logics for specification, new verification algorithms, and surprising theoretical results. Model checking tools, created by both academic and industrial teams, have resulted in an entirely novel approach to verification and test case generation. This approach, for example, often enables engineers in the electronics industry to design complex systems with considerable assurance regarding the correctness of their initial designs. Model checking promises to have an even greater impact on the hardware and software industries in the future. ---Moshe Y. Vardi, Editor-in-Chief

7,392 citations


Cites methods from "Modeling Heterogeneous Real-time Co..."

  • ...We need theory, methods, and tools for modeling complex heterogeneous systems [2]....

    [...]

Journal ArticleDOI
TL;DR: This paper identifies, discusses, and characterizes fundamental principles of component models and provides a Component Model Classification Framework based on these principles, and classifies a large number of components using this framework.
Abstract: In the last decade, a large number of different software component models have been developed, with different aims and using different principles and technologies. This has resulted in a number of models which have many similarities, but also principal differences, and in many cases unclear concepts. Component-based development has not succeeded in providing standard principles, as has, for example, object-oriented development. In order to increase the understanding of the concepts and to differentiate component models more easily, this paper identifies, discusses, and characterizes fundamental principles of component models and provides a Component Model Classification Framework based on these principles. Further, the paper classifies a large number of component models using this framework.

278 citations


Cites background from "Modeling Heterogeneous Real-time Co..."

  • ...Interactions, which comprise the following characteristics: a. Interaction style, which describes the main underlying architectural style used. b. Communication type, which details if the communication used is synchronous and/or asynchronous....

    [...]

Book ChapterDOI
09 Mar 2005
TL;DR: This dissertation discusses an interpretation of hybrid systems as executable programs written in a programming language with a hybrid system semantics, such as the interpretation of discontinuities in CT signals and simultaneous discrete events in DE signals, liveness property, and the consequences of numerical ODE solver techniques.
Abstract: Hybrid systems are heterogeneous systems that include continuous-time (CT) subsystems interacting with discrete-event (DE) subsystems. They are effective models for physical systems interacting with software or experiencing discrete mode changes. This dissertation discusses an interpretation of hybrid systems as executable programs written in a programming language with a hybrid system semantics. The semantic properties of such a programming language affect our ability to understand, execute, and analyze a hybrid system model. This dissertation focuses on a few semantic issues that come in defining such a programming language, such as the interpretation of discontinuities in CT signals and simultaneous discrete events in DE signals, liveness property, and the consequences of numerical ODE solver techniques. The interactions between CT and DE subsystems and between DE subsystems themselves are captured by discontinuities in continuous-time signals and simultaneous discrete events in discrete-event signals. In order to precisely represent them in compute execution results, a two-dimension domain, called "super-dense time," is used as the domain for defining signals. This domain allows a signal to have multiple values at the same time point while keeping the values ordered. CT and DE subsystems are modeled as actors, which are functions that map a set of signals to another set of signals. In this way, a hybrid system model is just a network of actors interacting via signals. We can always transform a network of actors into a composite actor with feedback, where the function of the composition actor is the composition of functions of the component actors. The least fixed point solution to the function of the composite actor, which is a set of signals, gives the denotational semantics of the hybrid system model. The operational semantics takes the denotational semantics as a mathematical foundation and defines a set of rules for evaluating actors such that the least fixed point solution can be constructed. Rather than constructing the whole signals, the operational semantics only computes a discrete subset of the signals called a discrete representation of the signals. The constructive procedure is formalized with the Abstract State Machine semantics, where a hybrid system is treated as a state transition system and the rules specify how state transformations are performed. This operational semantics supports heterogeneous and hierarchical composition of different models of computation, such as CT, DE, finite state machines, and synchronous languages, and modular execution of the composition as a whole. This ability makes it easy to jointly model and design software controlled systems. The operational semantics proposed in this dissertation has been implemented in HyVisual, which is a software tool for modeling and simulating hybrid systems. HyVisual is part of the Ptolemy II software framework, which is available in open-source form at http://ptolemy.org.

200 citations


Cites background from "Modeling Heterogeneous Real-time Co..."

  • ...Several authors advocate unified MoCs as a binding agent for heterogeneous models [13, 44, 20]....

    [...]

Book ChapterDOI
14 Oct 2008
TL;DR: A two-layer component model is proposed for design and development of embedded systems with the aim of using component-based development for decreasing the complexity in design and providing a ground for analyzing them and predicting their properties, such as resource consumption and timing behavior.
Abstract: In this paper we focus on design of a class of distributed embedded systems that primarily perform real-time controlling tasks. We propose a two-layer component model for design and development of such embedded systems with the aim of using component-based development for decreasing the complexity in design and providing a ground for analyzing them and predict their properties, such as resource consumption and timing behavior. The two-layer model is used to efficiently cope with different design paradigms on different abstraction levels. The model is illustrated by an example from the vehicular domain.

163 citations


Cites methods from "Modeling Heterogeneous Real-time Co..."

  • ...Some of them are the Rubus component model [2], Prediction-Enabled Component Technology (PECT) [10], AUTOSAR [3], Koala [9], the Robocop project [8], and BIP [4]....

    [...]

Journal ArticleDOI
TL;DR: A number of properties of AC(P) used to symbolically simplify and handle connectors are provided, including a general component model encompassing methods for incremental model decomposition and efficient implementation by using symbolic techniques.
Abstract: We provide an algebraic formalization of connectors in the BIP component framework. A connector relates a set of typed ports. Types are used to describe different modes of synchronization, in particular, rendezvous and broadcast. Connectors on a set of ports P are modeled as terms of the algebra AC(P), generated from P by using a binary fusion operator and a unary typing operator. Typing associates with terms (ports or connectors) synchronization types - trigger or synchron - that determine modes of synchronization. Broadcast interactions are initiated by triggers. Rendezvous is a maximal interaction of a connector that includes only synchrons. The semantics of AC(P) associates with a connector the set of its interactions. It induces on connectors an equivalence relation which is not a congruence as it is not stable for fusion. We provide a number of properties of AC(P) used to symbolically simplify and handle connectors. We provide examples illustrating applications of AC(P), including a general component model encompassing methods for incremental model decomposition and efficient implementation by using symbolic techniques.

162 citations


Cites methods from "Modeling Heterogeneous Real-time Co..."

  • ...The BIP toolset includes an editor and a compiler for generating, from BIP programs, C+ code executable on a dedicated platform [ 6 ], [10]....

    [...]

  • ...4T HE ALGEBRA OF CONNECTORS We provide an algebraic formalization of the concept of connector, supported by the BIP language [ 6 ]....

    [...]

  • ...It formalizes mechanismsandconceptsthathavebeenimplementedinthe Behavior-Interaction-Priority (BIP) component framework developed at VERIMAG [ 6 ], [7]....

    [...]

References
More filters
Journal ArticleDOI
TL;DR: A general framework for the formal specification and algorithmic analysis of hybrid systems is presented, which considers symbolic model-checking and minimization procedures that are based on the reachability analysis of an infinite state space.

2,091 citations


"Modeling Heterogeneous Real-time Co..." refers background in this paper

  • ...The application code running on a given platform, however, is a dynamic system that can be modeled as a timed or hybrid automaton [3]....

    [...]

Journal ArticleDOI
29 Jan 2003
TL;DR: It is argued that modeling systems in this manner leads to unexpected and hard-to-analyze interactions between the communication mechanisms and proposes a more structured approach to heterogeneity, called hierarchical heterogeneity, to solve this problem.
Abstract: Modern embedded computing systems tend to be heterogeneous in the sense of being composed of subsystems with very different characteristics, which communicate and interact in a variety of ways-synchronous or asynchronous, buffered or unbuffered, etc. Obviously, when designing such systems, a modeling language needs to reflect this heterogeneity. Today's modeling environments usually offer a variant of what we call amorphous heterogeneity to address this problem. This paper argues that modeling systems in this manner leads to unexpected and hard-to-analyze interactions between the communication mechanisms and proposes a more structured approach to heterogeneity, called hierarchical heterogeneity, to solve this problem. It proposes a model structure and semantic framework that support this form of heterogeneity, and discusses the issues arising from heterogeneous component interaction and the desire for component reuse. It introduces the notion of domain polymorphism as a way to address these issues.

1,146 citations


"Modeling Heterogeneous Real-time Co..." refers background in this paper

  • ...The BIP framework shares features with existing ones for heterogeneous components, such as [5, 8, 6, 4]....

    [...]

  • ..., in Ptolemy [8], for a given model of computation, only particular types of channels can be used....

    [...]

  • ...Ptolemy was the first tool to support this by distinguishing between behavior, channels, and directors....

    [...]

  • ...Unified frameworks encompassing heterogeneity in systems design have been proposed in [5, 8, 6, 4]....

    [...]

  • ...This is not the case for other formalisms e.g., in Ptolemy [8], for a given model of computation, only particular types of channels can be used....

    [...]

Journal ArticleDOI
TL;DR: Based on a metamodel with formal semantics that developers can use to capture designs, Metropolis provides an environment for complex electronic-system design that supports simulation, formal analysis, and synthesis.
Abstract: Today, the design chain lacks adequate support, with most system-level designers using a collection of unlinked tools. The implementation then proceeds with informal techniques involving numerous human-language interactions that create unnecessary and unwanted iterations among groups of designers in different companies or different divisions. The move toward programmable platforms shifts the design implementation task toward embedded software design. When embedded software reaches the complexity typical of today's designs, the risk that the software will not function correctly increases exponentially. The Metropolis project seeks to develop a unified framework that can cope with this challenge. Based on a metamodel with formal semantics that developers can use to capture designs, Metropolis provides an environment for complex electronic-system design that supports simulation, formal analysis, and synthesis.

549 citations


"Modeling Heterogeneous Real-time Co..." refers background in this paper

  • ...The BIP framework shares features with existing ones for heterogeneous components, such as [5, 8, 6, 4]....

    [...]

  • ...Unified frameworks encompassing heterogeneity in systems design have been proposed in [5, 8, 6, 4]....

    [...]

Book ChapterDOI
21 Aug 2006
TL;DR: In this article, the authors summarize some current trends in embedded systems design and point out some of their characteristics, such as the chasm between analytical and computational models, and the gap between safety-critical and best-effort engineering practices.
Abstract: We summarize some current trends in embedded systems design and point out some of their characteristics, such as the chasm between analytical and computational models, and the gap between safety-critical and best-effort engineering practices. We call for a coherent scientific foundation for embedded systems design, and we discuss a few key demands on such a foundation: the need for encompassing several manifestations of heterogeneity, and the need for constructivity in design. We believe that the development of a satisfactory Embedded Systems Design Science provides a timely challenge and opportunity for reinvigorating computer science.

358 citations

Journal ArticleDOI
01 Mar 2005
TL;DR: The proposed framework for component-based modeling using an abstract layered model for components considers components where behavior models are transition systems and interaction models are described by priority relations on interactions, leading to a concept of "flexible" composition different from usual composition in that it preserves deadlock-freedom and is appropriate for correctness by construction.
Abstract: We propose a framework for component-based modeling using an abstract layered model for components. A component is the superposition of two models: a behavior model and an interaction model. Interaction models describe architectural constraints induced by connectors between components.We propose and analyze general requirements for component composition that motivated and guided the development of the framework. We define an associative and commutative composition operator on components encompassing heterogeneous interaction. As a particular instance of the proposed framework, we consider components where behavior models are transition systems and interaction models are described by priority relations on interactions. This leads to a concept of "flexible" composition different from usual composition in that it preserves deadlock-freedom and is appropriate for correctness by construction. Nevertheless, flexible composition is a partial operation. Product systems should be interaction safe in the sense that they do not violate constraints of the interaction model.We propose results ensuring correctness by construction of a system from properties of its interaction model and of its components. The properties considered include global deadlock-freedom, individual deadlock-freedom of components, and interaction safety.

246 citations


"Modeling Heterogeneous Real-time Co..." refers background or methods in this paper

  • ...Following results in [11], we introduce a typing mechanism to specify the feasible interactions of a connector γ, in particular to express the following two basic modes of synchronization:...

    [...]

  • ...The characterization of such transformations can provide (sufficient) conditions for correctness by constructions such as compositionality and composability results for deadlock-freedom [11]....

    [...]

  • ...Parameters are used to define new interactions as well as new priority rules between the composed components [11, 13]....

    [...]