Slide 1

Slide 1 text

Séminaire Supélec/SCEE Models driven co-design methodology for SDR systems Directeur de thèse PALICOT Jacques Co-directeur LERAY Pierre Encadrant industriel GUILLOUARD Samuel LECOMTE Stéphane

Slide 2

Slide 2 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA co-design methodology : MOPCOM MDA tools Experiments 2 09/24/2009 Experiments Conclusion

Slide 3

Slide 3 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM MDA tools Experiments 3 09/24/2009 Experiments Conclusion

Slide 4

Slide 4 text

Challenge Design of real time embedded systems More and more complex systems Heterogeneous systems Technology of digital chip improving quickly Integrating a system into one chip SoC : System on Chip => ASIC* SoPC : System on Programmable Component => FPGA** Shorter and shorter Time-to-Market 4 09/24/2009 * ASIC : Application-Specific Integrated Circuit **FPGA : Field Programmable Gate Array

Slide 5

Slide 5 text

State of the art Today the co-design methodologies do not progress as quickly as the technology Rupture of design process Different process For hardware For embedded software Specific tools Requirements Analysis Specification of system Software/hardware partitioning Nb gates (millions) 100 Specific tools For hardware design (EDA tools) For embedded software Integration and Validation Too long Too many difficulties 5 09/24/2009 Software/hardware partitioning Embedded Software development process Hardware development process Co-simulation Co-verification time 95 2001 2007 GAP (around x3) 1 10 100

Slide 6

Slide 6 text

Solutions Problems Solutions Increasing complexity, Decreasing Time-to-Market High level approach to increase productivity Portability, functionality/architecture independence Component-based approach Reuse Common formalism for system/ Communications between teams Common formalism for system/ software and hardware engineer Obsolescence Capitalize knowledge and experience Quality of process Process formalization Traceability and test improvement 6 09/24/2009 Use the same design process and tools for hardware and embedded software development

Slide 7

Slide 7 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM MDA tools Experiments 7 09/24/2009 Experiments Conclusion

Slide 8

Slide 8 text

Objectives of thesis Formalization of a new development process based on high level models for Co-design for SoC/SoPC Covers Electronic System Level (ESL) domain Use UML models Use MARTE profile from OMG*, extension of UML Use Model Driven Architecture (MDA) approach Automatic code generation Generation of documentation Integration of technology of partial dynamic reconfiguration of FPGA (reconfigurable hardware for SoPC) 8 09/24/2009 OMG : Object Management Group : www.omg.org

Slide 9

Slide 9 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM MDA tools Experiments 9 09/24/2009 Experiments Conclusion

Slide 10

Slide 10 text

Model Driven Architecture (MDA) Based on model transformations to formalize and to automate the design process MDA Process based on several model types Platform Independent Model (PIM) Platform Model (PM) Platform Specific Model (PSM) Use the modeling language : Unified Modeling Language Standardized language by the OMG Graphical & annoted language for modeling high level design approach UML describes structural and behaviour aspects of the systems 10 09/24/2009

Slide 11

Slide 11 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM MDA tools Experiments 11 09/24/2009 Experiments Conclusion

Slide 12

Slide 12 text

MOPCOM co-design Methodology Modélisation et spécialisatiOn de Plates-formes et COmposants MDA 12 09/24/2009

Slide 13

Slide 13 text

A Design Process based on UML Profiles UML is a unified language but not a methodology How to design hardware with UML ? Integration with system and software processes UML extension to RTE systems MARTE (Modeling and Analysis of Real Time and Embedded systems) Profile Modeling time constraints Modeling Hardware Modeling Allocation Performances analysis Huge set of concepts No methodology to support activity based on MARTE 13 09/24/2009

Slide 14

Slide 14 text

MOPCOM Abstraction levels (1/3) Abstract Modeling Level (AML) Modeling of high level of abstraction Validation of 14 09/24/2009 Validation of functional architecture and behavior

Slide 15

Slide 15 text

MOPCOM Abstraction levels (2/3) Execution Modeling Level (EML) Modeling the topology of hardware platform Add information of 15 09/24/2009 Add information of time constraints Dedicated to architecture exploration

Slide 16

Slide 16 text

MOPCOM Abstraction levels (3/3) Detailed Modeling Level (DML) Detailed modeling hardware platform Enable to HLS tools 16 09/24/2009 Enable to HLS tools (C/C++ code generation) Enable to VHDL code generation

Slide 17

Slide 17 text

MOPCOM flow Three levels of modeling Each level use MDA approach Modeling with UML and MARTE Formalization of process A meta-model describes the process Associated modeling constraints for each level Associated modeling constraints for each level MOPCOM Profile Add concepts that do not exist in UML and MARTE Iterative design process 17 09/24/2009

Slide 18

Slide 18 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM Tools environment in MOPCOM Experiments 18 09/24/2009 Experiments Conclusion

Slide 19

Slide 19 text

MDA tools Kermeta (metamodeling) Process (methodology) Methodological Rules (architecture, functional, allocation) UML/MARTE Metamodel Open Source Capitalization 19 09/24/2009 Tools instanciation Scripts Java/EMF (transformation & generation) Papyrus (modeling) User entry : system specification Generated code

Slide 20

Slide 20 text

MOPCOM tools Kermeta (metamodeling) Process (methodology) Methodological Rules (architecture, functional, allocation) UML/MARTE Metamodel Open Source Capitalization 20 09/24/2009 Rhapsody (modeling) MDWorkbench (transformation & generation) MOPCOM Tools instanciation MDWorkbench scripts Generated code (RTL, C, C++) User entry : system specification

Slide 21

Slide 21 text

Code generator integrated in Rhapsody Seamless integration in Rhapsody-in-C++ 7.5 Generation from Statecharts Definition of VHDL OMD for Application & Platform VHDL Configuration DML, Application & Platform Packages 21 09/24/2009 VHDL properties Logs & Build Links with EDA tools Edition of VHDL code External Generator based on RulesComposer & RulesPlayer MARTE & MOPCOM Profiles Hardware Libraries & Types

Slide 22

Slide 22 text

Outline Context Objectives of thesis Definitions/Vocabulary MDA Co-design Methodology : MOPCOM Tools environment in MOPCOM Experiments 22 09/24/2009 Experiments Conclusion

Slide 23

Slide 23 text

Test applications Goal Validation of MOPCOM co-design methodology Validation the MDA tools instance in MOPCOM Evaluation Comparison with traditional co-design flow Profits (time and cost) Portability of MOPCOM methodology in others context Reusability of process with others MDA tools 23 09/24/2009

Slide 24

Slide 24 text

Supelec experiment for MOPCOM Limited SDR system Constellation Constellation Constellation Constellation Constellation Constellation Constellation Constellation 24 09/24/2009 Constellation Constellation Constellation Constellation QPSK 16-QAM roll-off=0.22 roll-off=0.015 Constellation Constellation Constellation Constellation QPSK 16-QAM roll-off=0.22 roll-off=0.015

Slide 25

Slide 25 text

AML model PIM PM 25 09/24/2009 PSM

Slide 26

Slide 26 text

Platform Model DML Model Used to manage the partial reconfiguration 26 09/24/2009 Identify this PLD resource to a reconfigurable resource with a specific tag

Slide 27

Slide 27 text

DML Model Allocation 27 09/24/2009

Slide 28

Slide 28 text

SystemC model Modeling level SystemC OSCI Untimed Functional Transaction Level Modeling Programmer's View Timed Functional PV + Timing Cycle Accurate Bus Accurate Cycle Callable Register Transfer Level RTL SystemC RTL Programmer’s View (untimed) Equivalence with AML 28 09/24/2009

Slide 29

Slide 29 text

Outline Context Objectives of thesis Definitions MDA Co-design Methodology : MOPCOM Tools environment in MOPCOM Experiments 29 09/24/2009 Experiments Conclusion

Slide 30

Slide 30 text

Conclusion Feedback Portability of methodology is difficult UML tools makes specific/proprietary model interpretation Reuse of models is difficult Existing code generators are not complete First co-design methodology using MARTE profile for modeling RTE system RTE system Same process for design hardware and software Future works Code generator fully integrated inside the modeling tool Updating the code generators Use the methodology in others domains 30 09/24/2009

Slide 31

Slide 31 text

Acknowledgement Partners of MoPCoM SoC/SoPC project* Thalès (Airborne Systems) Thomson (Corporate Research) Sodius ENSIETA Lab-STICC (UBS) INIRIA (Triskell team) Supelec (SCEE team) 31 09/24/2009 MOPCOM web site : www.mopcom.fr

Slide 32

Slide 32 text

Thanks ! Thanks ! Questions and Discussions