DIPLODOCUS: An Environment for. the Hardware/Software Partitioning of. Institut Mines-Telecom. Complex Embedded Systems



Similar documents
Multi-objective Design Space Exploration based on UML

A Hardware and Software Monitor for High-Level System-on-Chip Verification

Intel CoFluent Methodology for SysML *

Codesign: The World Of Practice

Model-Driven Software Development for Robotics: an overview

R&D and Topcased (led by Silvia Mazzini)

ELEC 5260/6260/6266 Embedded Computing Systems

7a. System-on-chip design and prototyping platforms

SysML Modelling Language explained

Model-driven development solutions To support your business objectives. IBM Rational Rhapsody edition comparison matrix

BY STEVE BROWN, CADENCE DESIGN SYSTEMS AND MICHEL GENARD, VIRTUTECH

What methods are used to conduct testing?

Real Time Developer Studio. Emmanuel Gaudin

Development Process Automation Experiences in Japan

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins

Architectures and Platforms

Agile Model-Based Systems Engineering (ambse)

Optimizing Configuration and Application Mapping for MPSoC Architectures

Software Engineering for Real- Time Systems.

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

ESE566 REPORT3. Design Methodologies for Core-based System-on-Chip HUA TANG OVIDIU CARNU

Multiprocessor System-on-Chip

Virtual Platforms Addressing challenges in telecom product development

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

High Performance or Cycle Accuracy?

What is Modeling language? What is UML? A brief history of UML Understanding the basics of UML UML diagrams for NES UML Profiles UML Modeling tools

Mastering increasing product complexity with Collaborative Systems Engineering and PLM

Computer System Design. System-on-Chip

Scenario-based Requirements Engineering and User-Interface Design

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association

2015 IBM Continuous Engineering Open Labs Target to better LEARNING

F-16 Modular Mission Computer Application Software

Component-Oriented Engineering

METHOD & TOOLS TO SECURE AND SUPPORT COLLABORATIVE ARCHITECTING OF CONSTRAINED SYSTEMS

TASTE: An open-source tool-chain for embedded system and software development

How To Develop A Telelogic Harmony/Esw Project

PowerPC Microprocessor Clock Modes

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

Manage Software Development in LabVIEW with Professional Tools

Increasing Development Knowledge with EPFC

Design a medical application for Android platform using model-driven development approach

Testing Intelligent Device Communications in a Distributed System

Simplify rich applications & hard real-time

Intoduction to SysML

Testing of Digital System-on- Chip (SoC)

The Software Development Process

A new approach to automotive electric/electronic engineering life-cycle management

Revel8or: Model Driven Capacity Planning Tool Suite

BENEFITS OF MODELING WITH A FORMAL LANGUAGE. Emmanuel Gaudin emmanuel.gaudin@pramadev.com

Data Centric Systems (DCS)

AADL et la conception des logiciels

Introducing Simulation and Model Animation in the MDE Topcased 1 Toolkit

To introduce software process models To describe three generic process models and when they may be used

Model-based Quality Assurance of Automotive Software

Clarifying a vision on certification of MDA tools

Embedded/Real-Time Software Development with PathMATE and IBM Rational Systems Developer

Introduction to System-on-Chip

RF System Design and Analysis Software Enhances RF Architectural Planning

International Workshop on Field Programmable Logic and Applications, FPL '99

Leittechnik für Bahnsysteme mit Eclipse

Industry Challenges in Embedded Software Development

Six ways to accelerate Android mobile application development

Evolution of OpenCache: an OpenSource Virtual Content Distribution Network (vcdn) Platform

How Product Development Organizations can Achieve Long- Term Cost Savings Using Model-Based Systems Engineering (MBSE)

Contents. System Development Models and Methods. Design Abstraction and Views. Synthesis. Control/Data-Flow Models. System Synthesis Models

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

Hardware Virtualization for Pre-Silicon Software Development in Automotive Electronics

Dr. Jana Koehler IBM Zurich Research Laboratory

Presentation of the AADL: Architecture Analysis and Design Language

Introduction to Digital System Design

Integration, testing and debugging of C code together with UML-generated sources

A case study of mobile SoC architecture design based on transaction-level modeling

A Framework of Model-Driven Web Application Testing

This is an author-deposited version published in : Eprints ID : 15447

In the case of the online marketing of Jaro Development Corporation, it

Applying 4+1 View Architecture with UML 2. White Paper

News and trends in Data Warehouse Automation, Big Data and BI. Johan Hendrickx & Dirk Vermeiren

Customer Experience. Silicon. Support & Professional Eng. Services. Freescale Provided SW & Solutions

From Lifecycle Modelling to Lifecycle Analysis A Framework for Interactive Visualisation of Lifecycle Information

Continuous System Integration of Distributed Real-time and Embedded Systems

Eingebettete Systeme. 4: Entwurfsmethodik, HW/SW Co-Design. Technische Informatik T T T

Integrated Development of Distributed Real-Time Applications with Asynchronous Communication

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

Kirsten Sinclair SyntheSys Systems Engineers

Systems on Chip Design

Transcription:

DIPLODOCUS: An Environment for Institut Mines-Telecom the Hardware/Software Partitioning of Complex Embedded Systems Ludovic Apvrille, ludovic.apvrille@telecom-paristech.fr ETR 2013, Toulouse, France

Goals Introduction To share an experience of real-time systems modeling To propose a language, a tool, and a method dedicated to the partitioning of complex and real-time embedded systems DIPLODOCUS, a modeling language based on SysML TTool for model simulation and user-friendly formal verification A method that applies to a broad variety of real-time systems To answer your questions 2/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Outline Introduction Introduction Context: Model-Driven Engineering Our contribution Design Space Exploration Methodology 3/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Outline Introduction Context: Model-Driven Engineering Our contribution Design Space Exploration Introduction Context: Model-Driven Engineering Our contribution Design Space Exploration 4/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration Designing Embedded Systems How to Handle Complexity? Modeling and verification! (But there are other options) 5/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Introduction Context: Model-Driven Engineering Our contribution Design Space Exploration Modeling is not Really a New Technique...... and it is not limited to Software! 6/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Abstraction Level Context: Model-Driven Engineering Our contribution Design Space Exploration (source: peek and Poke, July, 2013) 7/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration Software Development Techniques for E. S. Code-based approaches Extreme Programming Strongly tested step-by-step code increments Agile Software Development Focus on change in specification Model-based approaches V-Cycle KAOS, AADL, MDE,... makingmessage m.data = secretdata m1 = sencrypt(m, sk) sendingmessage chout(m1) Formal models B, LOTOS, Petri nets,... 8/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration Model Driven Engineering Definition Process based on abstract graphical representations for a given domain Intends to improve software engineering quality criteria Reliability, extensibility, maintainability,... Should enhance team communication and documentation Abstraction levels Platform Independent Model, Platform Specific Model Model transformations 9/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

UML Profiles Context: Model-Driven Engineering Our contribution Design Space Exploration Definition UML defines extension mechanisms to e.g., Define new operators Provide a semantics Give a methodology Example of profiles Profiles defined by OMG (e.g., SPT, MARTE, SysML) Profiles defined by tool vendors (e.g. in Rhapsody, Artisan) User-defined and company-defined models 10/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration UML Profiles and MDE UML profiles are a way to define domain-specific languages for MDE Our contribution in MDE Definition of UML profiles for modeling and verifying complex embedded systems Definition of methodologies based on the V-cycle Definition of model transformations for simulation, formal verification and code generation purpose Implementation in a toolkit (TTool) 11/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Overview of Contributions Context: Model-Driven Engineering Our contribution Design Space Exploration 12/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration TTool: A Multi Profile Platform TTool Open-source toolkit mainly developed by Telecom ParisTech / COMELEC Multi-profile toolkit DIPLODOCUS, AVATAR,... Support from academic (e.g. INRIA, ISAE) and industrial partners (e.g., Freescale) Main ideas Lightweight, easy-to-use toolkit Simulation with model animation Formal proof at the push of a button 13/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Systems-on-Chip Context: Model-Driven Engineering Our contribution Design Space Exploration A System-On-Chip = set of SW and HW components intended to perform a predefined set of functions for a given market Constraints Right market window Performance and costs 14/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration Design Challenges Complexity Very high software complexity Very high hardware complexity Problem How to decide whether a function should be implemented in SW or in HW, or both? Solution Design Space Exploration! 15/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Context: Model-Driven Engineering Our contribution Design Space Exploration Design Space Exploration Design Space Exploration Analyzing various functionally equivalent implementation alternatives Find an optimal solution Important key design parameters Speed Power Consumption Silicon area Generation of heat Development effort 16/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Level of Abstraction Context: Model-Driven Engineering Our contribution Design Space Exploration Problematic Designers struggle with the complexity of today s circuits Cost of late re-engineering Right decisions should be taken as soon as possible... And quickly (time to market issue), and so, simulations must be fast System Level Design Space Exploration Reusable models, fast simulations / formal analysis, prototyping can start without all functions to be implemented But: high-level models must be closely defined so as to take the right decisions 17/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Outline Introduction Methodology Introduction Methodology 18/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology DIPLODOCUS = UML Profile System-level Design Space Exploration Y-Methodology MARTE compliant Main features Data are abstracted Formal semantics Very fast simulation support Fully supported by an open-source toolkit TTool 19/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology Partitioning with the Y-Methododology 20/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Application Modeling Methodology 21/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Architecture Modeling Methodology 22/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Mapping Introduction Methodology 23/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology Browsing the DIPLODOCUS Methododology Application structure Application behavior Formal verification Architecture model Mapping model Simulation Formal verification 24/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology Application Structure (Smart Card system) 25/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Application Behavior Methodology Activity Diagram of the SmartCard component 26/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Methodology Formal Verification at Application Level No assumption on the underlying architecture All possible interleavings between actions are considered Formal verification is based on LOTOS/CADP or UPPAAL Press-button approach 27/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Methodology Architecture Given in terms of parameterized nodes CPU, HWA, Bus, Memory, Bridge, etc. CPU parameters: scheduling policy, cache miss ratio, miss-branching prediction, pipeline size, etc. 28/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Mapping Introduction Methodology Task are mapped on execution nodes (e.g., CPUs, HWAs) Channels are mapped on communication and storage nodes 29/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

After-Mapping Simulation Methodology TTool Built-in simulator Extremly fast Diagram animation Step-by-step execution, breakpoints, etc. 30/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology After-Mapping Simulation (Cont.) AppC::TCPIP <<CPU>> CPU0 AppC::SmartCard 50% 195 pw AppC::Application <<CPURR>> HW1 AppC::InterfaceDevice 66% 230 pw <<BUS>> Bus0 0% <<CPURR>> HW2 AppC::Timer 0% 90 pw <<MEMORY>> Memory0 31/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Methodology After-Mapping Formal Verification TTool built-in simulator can compute all possible execution paths Graph analysis and visualization 32/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Methodology After-Mapping Coverage-Enhanced Simulation Possibility to select a given part of the model to be explored Minimum percentage of operators coverage Minimum percentage of branch coverage Implementation: TTool built-in model-checking techniques 33/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS Back to methodology

Outline Introduction Introduction 34/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

Results Fully integrated environment for the partitioning of Systems-on-Chip and complex embedded systems Based on UML Open-source toolkit Partners: Texas Instruments, Freescale, European project EVITA, European project SACRA, LIP6,... 2 Ph.D. completed (Chafic Jaber, Daniel Knorreck, Jair Gonzalez-Pina), 2 on-going Ph.D. (Fériel Ben Abdallah, Andrea Enrici) 35/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

A Few Case Studies... MPEG coders and decoders (Texas Instruments) LTE SoC (Freescale) Partitioning in vehicle embedded systems (EVITA project) Partitioning and code generation for Software-Defined Radio systems (SACRA project) 36/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS

To Go Further... TTool and DIPLODOCUS ttool.telecom-paristech.fr 37/37 Aug., 2013 Institut Mines-Telecom DIPLODOCUS