Title: MODEL-BASED SYNTHESIS OF GENERATORS FOR EMBEDDED SYSTEMS
1MODEL-BASED SYNTHESIS OF GENERATORS FOR EMBEDDED
SYSTEMS
- PI Gabor Karsai, Co-PI Akos Ledeczi
- (615) 343-7471 gabor_at_vuse.vanderbilt.edu
- Institute for Software-Integrated Systems
- Vanderbilt University
- F30602-00-1-0580,AO K218
- End date 5/04
- Agent R. Dziegiel, AFRL, Rome, NY
22. Subcontractors and Collaborators
- Collaborators
- CMU
- Analysis Interchange Format for embedded systems
- Kestrel
- Matlab input translator, HSIF definition
- Southwest Research
- Modeling language for avionics applications
- Teknowledge
- Rational Rose import facility
- U Kansas
- Metamodel verification
- U Michigan
- Modeling environment for embedded systems
- U Penn SRI
- Hybrid System Interchange Format
- Planned
- Tool integration support for OEP experiments
33. Project objectives
- Problem
- Model-based development of embedded systems
requires tools for transforming models for
analysis and synthesis - How to build reusable technology for generators
(a.k.a. model interpreters) for embedded systems? - Contribution to MoBIES
- Meta-programmable generator technology
- Tools
- Meta-programmable modeling environment (GME)
- Reusable translator framework (UDM)
- Design tool integration framework (OTIF)
- Success criteria
- Affordable and usable tools for building model
translators - Functional OTIF
44. MoBIES Milestone Support
55. Tool Description
- GME Meta-programmable modeling environment
- Generic modeling framework for constructing
domain-specific modeling environments - Inputs user input, models from other tools
- Outputs models
- Metamodel see GME meta-model in doc
- Interface now
- U Michigan AIRES (Meta API)
- SWRI ASC (Meta API)
- Tek Rose Export (XML)
- KU MetaV (Manual via UML class diagrams)
- Interface in 6 mos
- CMU TimeWiz (XML)
- UCB Ptolemy (XML)
- UPenn Charon (Model text)
- HTC (XML)
- SRI SAL (XML)
- NonMoBIES
- Matlab SL/SF (Translator XML)
- R Rose (XMI Translator)
65. Tool Description
- UDM Universal Data Model facility
- Meta-programmable package for building
generators/translators - Inputs Data model in UML class diagrams
- Outputs C implementation of data model, usable
with various backends - Metamodel see UDM meta-model in doc
- Interface now/in 6 mos, MoBIES non-MoBIES
- Any tool that
- uses XML as data representation, or
- for which a back-end is/can be developed
75. Tool Description
- XLT(?) Translator/generator
- Meta-programmable tool for building the rewriting
engine generators/translators - Inputs Translation models UDM Data models
- Outputs C code that implements the engine
- Metamodel Possible (bootstrap!)
- Interface now/in 6 mos, MoBIES non-MoBIES
- Same as UDM, as the rewriting engine relies on
UDM
85. Tool Description
- (M)OTIF (MoBIES) Open Tool Integration Framework
- Reusable framework components and
meta-programmable generators for building tool
integration solutions - Inputs
- Translation models UDM Data models
- Hand-coded components (e.g. physical tool
adaptors) - Outputs
- Tool chain instance support framework that
connects the tools - Metamodel Yes UDM XLT models and model of
tool chain - Interface now/in 6 mos, MoBIES non-MoBIES
- (Hopefully) all tools will be integratable via
the framework
96. OEP Support Automotive OEP
- Role
- MATLAB import translator prototype code
generator provider - HSIF contributor
- Tool integration solution provider
- Midterm experiment
- Import translator for Matlab SL/SF into ECSL
- Prototype code generator for ECSL
- Contributions to experiment planning tech
assessment - Tool chain definition, HSIF definition,
integration technology - Tech POC
- P. Varaiya, A. Girard, P. Griffiths
106. OEP Support Avionics OEP
- Role
- Provider of ESML modeling environment,
translators, and generators - AIF contributor
- Tool integration solution provider
- Midterm experiment
- Import translator from R Rose into ESML
- ESML modeling environment
- Generators for XMLConfig and AIF
- Analysis tool/report generator for ESML
- Contributions to experiment planning tech
assessment - Tool chain definition, AIF definition,
integration technology - Tech POC
- D. Sharp, M. Schulte, W. Roll
117. Project StatusTechnical approach
Key concept
Capture the semantic mapping between the two type
systems/semantics in a mapping model. This
mapping describes a generation process. Synthesize
generators from the model of the
input/target/generation process
127. Project StatusNew developments
UDM
Focus How do we model build the rewriting
engine?
- Approach
- Translators transform graphs of objects
- Transformations are easy to describe using graph
rewriting rules, of the form - guard Graph Pattern
- gt
- New Graph
- For efficiency search in graph matching has to
be minimized. Solution - Explicit specification of traversal
- Anchoring the rule application
137. Project StatusExample
- Problem
- Input Hierarchical dataflow network, consisting
of Primitive and Compound Blocks, with Input,
Output, and Local signals, connected through
Dataflow edges.
147. Project StatusExample
- Problem
- Output Flat network of Actor nodes with
Transmit and Receive ports, connected through
Queues. - Translators task
- Transform (flatten) input graph
- into output graph.
157. Project StatusExample
- Rewriting rules
- R1 Map a compounds input and output signals
into queues. - R2 Map the local signal of a compound into a
queue. - R3 Insert an extra local signal for direct
connections between of input and output signals
of child blocks, and map it into a queue.
167. Project StatusExample
- Rewriting rules
- R4 If a signal is part of a compound, and it is
connected to a signal of a child of the compound,
then the map of the childs signal is the same as
the map of the parents signal. - R5 Map a primitive to an actor, map its input
and output signals into the receive and transmit
ports of the actor, and wire them.
177. Project StatusExample
- Traversal spec
- Start with a toplevel compound c. Apply R1 to c,
then call P1 with c. - In P1, apply R2,R3, and R4 in sequence, to c,
then call P1 or P2 with each child c.b of c,
recursively. Selection depends on type of c.b,
for Compounds use P1, for Primitives use P2. - In P2, apply R5 to p.
187. Project StatusCore research
- Status
- Core concepts/principles/techniques developed,
prototype implementation is in progress.
Implementation is based on UDM (for data
structures), and uses an interpretative
approach data structures represent patterns,
rules, and traversal specifications. Rule
interpreter executes traversal, graph matching,
and actions (graph modification/construction). - Milestone
- Base technology for mathematical modeling of
translators. - Publication
- Model reuse with metamodel based-transformations
, accepted for publication at ICSR-7.
197. Project StatusUpdates and OEP support
- Core technology
- New GME release libraries
- New capabilities for UDM volatile attributes,
association classes, copy and pattern tools - OCL constraint interpreter prototype
- Avionics OEP
- ESML revision and extensions
- Upgrades to generators, translators, and
analysis tool - AIF definition
- AIF exporter for GME/ESML
- Automotive OEP
- Bug fixes and upgrades to Matlab SL/SF
translators - Prototype code generator for ECSL
- Simulink discrete time blocks and Stateflow
blocks into C - HSIF definition
208. Project Plans
- Next 6 months
- Support OEP experiments
- Finish GRR engine (interpreter) prototype, show
composition of generator, build examples, and
test - Start work on translator generator
- Build prototype tool integration framework and
instantiate it for OEP-specific scenarios - Performance goals
- Functional GRR engine, with 3 simple translators
working - Core components of the OTIF functional
- OTIF instance created, and functional for
end-to-end scenarios with 3 types of tools
modeling, analysis, and generator. - Success metrics
- Functioning translators
- Development of translators is at least 50 faster
than by hand coding - OTIF core components functional
- Tool integration solution is created at least 50
faster than by hand - OEP success criteria satisfied
219. Project Schedule
- Tasks
- Development of model-based technology for
generators modeling and synthesis - Develop techniques for composable and embeddable
generators - Develop a solution for Open Tool Integration
Frameworks - Integration with IDEs, analysis
- Milestones in next 6 months
- Demo ability to integrate design tools
- Composition of multiple view models
- Customize frameworks with gens
- Compose generators
- Generate embedded SW for OEPs
Baseline
Math modeling, synthesis
Integration with IDEs Analytical capabilities
Embedded generators
2000
2001
2002
2003
2004
OTIF Framework, Instances
2210. Technology Transfer
- Vehicles
- DoD contractors
- Boeing, LM, Raytheon
- Software and non-software business entities using
the technology - Daimler-Chrysler, Ford, Mathworks,
- Graduating students
- Status
- Discussions with Boeing, LM, and Raytheon
- Communication with various interested aerospace
and other industrial entities