bip summary (english)

11
BIP framework Development and analysis of critical real-time embedded systems

Upload: simon-bliudze

Post on 07-Jul-2015

722 views

Category:

Technology


0 download

DESCRIPTION

These slides present the summary of the BIP offer. BIP is a framework for the development and analysis of critical real-time embedded systems.

TRANSCRIPT

Page 1: Bip Summary (English)

BIP framework

Development and analysis of

critical real-time embedded

systems

Page 2: Bip Summary (English)

Target applications

Software control of critical systems…

Transport (automotive, avionics, etc.)

Robotics

Healthcare

…must satisfy safety requirements

Deadlock-freedom

BIP is your solution

For the analysis of existing applications

For the development of correct by construction applications

Page 3: Bip Summary (English)

Harness the concurrency

Concurrent systems are hard to design and verify Cause : state space explosion

Solution: compositional approach…

Sequential atomic components

Glue – coordination without additional behavior

…with BIP

Synthesis of the coordination layer

Correctness by construction

Independent analysis of components and glue

Page 4: Bip Summary (English)

Formal language for component-based modeling

Coordination language for C

Tools for analysis and transformation

Safety properties analysis (e.g. deadlock-freedom with DFinder)

Performance optimization with respect to architectural constraints

Functional and non-functional analysis

Compilation chain

Parser, code generation

Simulation engine

Execution on multi-core and

distributed architectures

What is BIP?

Page 5: Bip Summary (English)

Expressivity Direct expression of any type of coordination without additional behavior

Construction by integration of elementary functions

Generality Compatible with many programming models

Synchronous dataflow

Shared memory

Message passing

Correctness by construction

Glue synthesis

Source-to-source transformations Performance optimization with respect to architectural constraints

Automatic generation of distributed models

Why use BIP?

Page 6: Bip Summary (English)

How to use BIP?

Component-based design Harness the system complexity

Component re-use

Correct-by-construction implementation centralized, multi-core, distributed

Modeling and analysis Simulation and/or verification

SW/HW co-design

Componentization of existing code base Code refactoring

Outsourcing possibilities

Page 7: Bip Summary (English)

Component-based design

•Component design in any supported formalism

Translation into BIP

•Application model in BIP

•HW architecture

•Mapping

Model transformation •System model in

BIP

•Communication protocol

Model transformation

•Distributed system model in BIP

Code generation •Generated C++

code

Simulation and execution

Models & information at different design stages

In light blue – provided by the designer

In black – generated by automatic transformation tools

Translation into BIP realized by the “language factory” – a set of

tools for translation from different formalisms to BIP

Lustre, MATLAB/Simulink, AADL, DOL, GeNoM

Deadlock

analysis

Performance

optimization

Page 8: Bip Summary (English)

Modeling and analysis

D-Finder – a BIP tool for the analysis of safety properties satisfaction

Compositional and incremental deadlock detection

High performance even on models that other tools fail to analyze

Red curve in the graph shows D-Finder analysis time for the Dining philosophers

problem

Page 9: Bip Summary (English)

Componentization

Autonomous robot Dala developed at LAAS (Toulouse) http://homepages.laas.fr/matthieu/robots/dala.shtml

Control layer: ~300 000 lines of initial source code

Componentization

Verification of safety properties

Code generation

The MARAE project awarded by FNRAE

Fondation de Recherche pour l’Aéronautique et l’Espace Foundation for Research in Aeronautics and Space

EADS, Safran, Thalès, …

http://www.ujf-grenoble.fr/1274965794187/0/fiche___actualite/

Page 10: Bip Summary (English)

Benefits

Analysis V&V cost reduction

Qualification and certification assistance

Development Development methodology supported by theoretical results

Shorter time-to-market

Development effort focused on business specific challenges

Componentization Simplification and quality improvement of the existing code base

Component re-use throughout the company

Simplified coordination with outside partners