Institute for Software Integrated Systems Vanderbilt University Semantics in Model-Based Design Janos Sztipanovits ISIS, Vanderbilt University Content � Application Drivers � Composition on the Abstract Syntax Layer � Composition on the Semantic Layer � Road Ahead 1
An Embedded System Design Flow Requirement Specification Functional Design Component HW Config. Design Design Software System Architecture Config. SW Deployment Related Tools and Analyses Requirement Specification RA Control Design FD HwA Software Architecture HW Arch. Design Functional HW Pwr/ Mod/ Sim Perf Est SwA Component Design System Arch. Design Arch Mod/ Sim CD SY Code Gen. Verif. Latency/ RT Analysis DPL Alloc./ Sched. Analysis SW Deployment 2
Tool Chain Outputs Functional Code OS/ Firmware Glue Files DBC File (CAN-Bus) OI L File Content � Application Drivers � Composition on the Abstract Syntax Layer � Composition on the Semantic Layer � Road Ahead 3
Layers in Model-I ntegrated Computing Modeling Domain Specific Design Flows: Examples in MI C: • ECSL - Automotive • ESML - Avionics Domain-Specific • SPML - Signal Processing Environments • CAPE/ eLMS – Learning Technology • AADL…. Metamodeling and Metaprogrammable Tools: (mature or in maturation program) • GME (Generic Model Editor) • GReAT (Model Transformation) Metaprogrammable • OTI F (Tool I ntegration Framework) Tools, Environments • UDM (Universal Data Model) • DESERT (Design Space Exploration) Modeling Semantics (work in progress): • Semantic “Units” doTr ansi t i on ( f sm as as FSM , s as as St at e, t as as Tr ansi t i on) = Semantic Foundation r equi r e r equi r e s. act i ve • Semantic Anchoring st ep st ep exi t St at e ( s) st ep i f st ep i f t . out put Event <> nul l nul l t hen t hen Libraries em i t Event ( f sm , t . out put Event ) st ep st ep act i vat eSt at e ( f sm , t . dst ) Syntactic Layer Domain models Interchange Formats � Modeling & Metamodeling M C � Model Data Management Abstract Syntax Meta-models � Model Transformation M S Υ = ∈ ( , ) { | D C r R Υ r � Tool Integration Structural Semantics i nt er f ace i nt er f ace Event Semantic Domain: st r uct ur e st r uct ur e M odel Event � Design-Space Exploration i m i m pl em pl em ent s Event ent s Set-Valued case case M odel Event 1 4
Core Components of the Syntactic Layer � Methods and tools for modeling DSML i DSML Transformation S C C i S i DSML DSMLi T M S M C M Ci M Si A A i M A MOF A DSMLi MTL T DSML,DSMLi MOF A DSMLi MOF UMT MOF � Methods and tools for metamodeling � Industrial standard metamodeling language: MOF (or some others) � Methods and tools for model transformations � Formal metamodel transformation language: Unified Model Transformation Language. “Front-End View” of a Typical MI C Tool Chain Common Semantic Domain: Hybrid Automata Abstract Syntax and Transformations: Meta-Models Domain Models and Tool Interchange Formats: Tool Chains AIRES Vehicle Control Platform (VCP) ECSL-DP Component Schedulability Behavior � AIF Structure Analysis Model Simulink ECSL-DP SL/SF � ECSL-DP � CANOE ECSL-DP Stateflow GME Behavior � DSE SL/SF � C EDP Component Simulation Interaction OSEK/ DESERT Code (Experimental tool chain) 5
“Back-plane View” of a Typical MI C Tool Chain Common Semantic Domain: Hybrid Automata Abstract Syntax and Transformations: Meta-Models Domain Models and Tool Interchange Formats: Tool Chains AIRES AIRES Vehicle Control Platform (VCP) Meta-Model ECSL-DP ECSL-DP � AIF � AIF Simulink ECSL-DP SL/SF � ECSL-DP SL/SF � SL/SF ECSL-DP ECSL-DP CANOE � MOML ECSL-DP Stateflow � MOML Meta-Model ECSL-DP Meta-Model GME � DSE SL/SF � C EDP SL/SF � ECSL-DP � SFC DESERT OSEK/ DESERT SFC DESERT Meta-Model Meta-Model Code Need for DSML Composition Objective: Optimize the SW architecture by selecting a component model and by Simulink/StateFlow Component Model (DSML SL/SF ) allocating functions to components. Platform: Heterogeneous Dataflow SW Architecture Model Component Model (DSML SL/SF,CM ) Tools: GME, GReAT, C Compiler, WCET Analyzer SL/SF CM Functional blocks – SW Component Mapping 6
Compositional Metamodeling � Goal: Composing modeling languages (not models) � Metamodel composition methods in the Generic Modeling Environment (GME): � Class Merge � Metamodel Interfacing � Class Refinement � Template Instantiation � Metamodel Transformations Example: Metamodel I nterfacing 7
Content � Application Drivers � Composition on the Abstract Syntax Layer � Composition on the Semantic Layer � Road Ahead Semantics of DSMLs: Current Status • Usually, specification stops at the level of abstract Domain models syntax metamodels (“static semantics”) Interchange Formats • Specification of behavioral semantics (if done) M C – involve major effort due to overly complex modeling languages, Abstract Syntax Meta-models – use a wide range of formalisms and M S • Impact is far-reaching – tool chains are closed and built around Behavioral Semantics doTr ansi t i on ( f sm as as Semantic Domain loosely defined “conventions” and proprietary FSM , s as St at e, t as as as Meta-models Tr ansi t i on) = interpretations of semantics instead of standards – potential semantic mismatches create unacceptable risk for safety critical applications Major roadblock that slows down acceptance of model-based design technology. 8
Transformational Specification of Semantics � Specify mapping to another language with well- defined semantics. Well-defined DSML i M S = M Si ○ M A DSML Transformation S C C i C i S i S i DSML DSMLi DSMLi T M Si : A i → S i M Si : A i → S i M S M C M Ci M Ci M Si M Si A A i A i Where are these coming from? M A MOF A DSMLi MTL T DSML,DSMLi MOF A DSMLi MOF A DSMLi MOF UMT MOF MOF M i : MOF A DSML → MOF A DSMLi � Use a formal metamodeling framework � Industrial standard metamodeling language: MOF � Formal metamodel transformation language: Unified Model Transformation Language. System Composition Dimension: Core Modeling Aspects Modeled on different levels of abstraction: • State-based modeling (FSM, Time Automata, Cont. Dynamics, Hybrid), fundamental role of time models Component Behavior • Precise relationship among abstraction levels • Research: dynamic/ adaptive behavior Expressed as a system topology : • Module I nterconnection (Nodes, Ports, Connections) Structure • Hierarchy • Research: dynamic topology Describes interaction patterns among components: • Set of well-defined Models of Computations (MoC) (SR, SDF, DE,…) I nteraction • Heterogeneous, but precisely defined interactions • Research: interface theory (time, resources,..) Mapping/ deploying components on platforms: • Dynamic Priority Scheduling / Resource Allocation • Behavior guarantees • Research: composition of schedulers 9
Semantic Units DSML Semantic Unit i M S = M Si ○ M A S C Transformation C i S i DSML SUi T M Si : A i → S i M Ci M S M C M Si A A i M A MOF A DSMLi MTL T DSML,SUi MOF A SUi MOF UMT MOF M i : MOF A DSML → MOF A SUi � Semantic Units � Capture the semantics of a finite set of basic dynamic behavioral categories, such as FSM, DES, TA. � Capture the semantics of basic interaction categories (Model of Computation, MoCs), such as SDF, PN, … � Specified in a formal semantics framework. � Develop a set of simple modeling languages for the semantic units. Search for a Formal Framework � Specification style: Operational semantics � Solid mathematical foundation � Tool support for core use cases: � Readability (clear syntax and understandable semantics) � Validation/exploration of semantics (executable specification) � Verification of semantic equivalence (generation of “reference traces”, integratability) After evaluating several frameworks (Z, TLA+ ,..) we selected ASM and the AsmL tool suite (MSR). 10
Recommend
More recommend