constraint-based embedded program composition

25
Institute for Software Integrated Systems Vanderbilt University Constraint-Based Embedded Program Composition PI: Ted Bapty Sandeep Neema, Jeff Gray Institute for Software Integrated Systems Vanderbilt University http://www.isis.vanderbilt.edu/projects/ pces Contract #: F33615-00-C-1695

Upload: laird

Post on 13-Jan-2016

20 views

Category:

Documents


0 download

DESCRIPTION

Constraint-Based Embedded Program Composition. PI: Ted Bapty Sandeep Neema, Jeff Gray Institute for Software Integrated Systems Vanderbilt University http://www.isis.vanderbilt.edu/projects/pces Contract #: F33615-00-C-1695. Problem Description. Composition of Embedded Systems - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Constraint-Based Embedded Program Composition

Institute for Software Integrated SystemsVanderbilt University

Constraint-Based Embedded Program

CompositionPI: Ted Bapty

Sandeep Neema, Jeff GrayInstitute for Software Integrated Systems

Vanderbilt Universityhttp://www.isis.vanderbilt.edu/projects/pces

Contract #: F33615-00-C-1695

Page 2: Constraint-Based Embedded Program Composition

Problem Description• Composition of Embedded Systems

– Close Coupling of Environment, Architecture & Requirements– All Requirements (Functional, Temporal, Interface, Resources) MUST be

satisfied.– How do we represent & maintain these requirements?

• Requirements Map to Constraints on System Implementation– Many Constraints Crosscutting the Design– Complex mapping from high-level requirements to constraints– How do we perform the mapping, distributing requirements?

• Need for flexibility to rapidly deploy designs to families of applications– How can we use constraints to adapt a core design to specific

application instances?– How can we provide better scalability?– OMG MDA

Page 3: Constraint-Based Embedded Program Composition

Project Objectives

• Create domain-specific, graphical languages that capture the functional design of real-time embedded systems– Bold Stroke/CCM– BBN UAV

• A weaving process that maps high-level invariant properties and system requirements to design constraints affecting specific model regions,

• A generation process that:– design space nav. -> customized component

composition– generate CDL; simulate effects of contracts

Page 4: Constraint-Based Embedded Program Composition

Project Objectives

• Apply AO Weaving concepts to Model-based systems– Weavers ‘Decorate’ Models with attributes &

constraints– Weavers compose new model constructs

…select(p | p.name() == “Model*” && p.kind() == “StateFlow”)->Strategy3();…

Strategy1

Strategy2

Strategy3

StrategyN

Page 5: Constraint-Based Embedded Program Composition

Technical Approach• Metaweaver Framework

– Synthesize weavers from a Strategy Language

• Strategized Weavers + Models Interpret Requirements– Weavers map High-level

Specifications to Low-level Constraints using Strategies

– Constraints customize core design

• System Synthesis– Design-Space Navigation, uses

constraints to select efficient design from design space.

– Generate customized components

– Generate CDL– Simulations of system

performance

MetaWeaverFramework

Domain-SpecifcWeaver

Domain SpecificStrategies

SpecificationAspects

Design SpaceNavigation/

Code Generation

R

R

R

R

• CDL• Customized Component Composition

A

B

c d e1 2

3

B

c d e1'' 2'' 4

F

B

c d e1' 2'

3'

4

A

B

c d eB

c d e

F

B

c d e

Page 6: Constraint-Based Embedded Program Composition

Example: QoS Spec Generation

DistDispA

UAVDispB

BBN WeaverSpecification

Aspects

DistDispA

UAVDispB

Strategies

Page 7: Constraint-Based Embedded Program Composition

Example: QoS Spec Generation

Interpretation/Code Generation

DistDispA

UAVDispB

DistDispA

UAVDispB

CDL CDL

CDLCDL

Page 8: Constraint-Based Embedded Program Composition

Example: Boeing OEP

Proc

DispA

Sensor

DispB

Bold Stroke Weaver Specification Aspects

Proc

DispA

Sensor

DispBLatency < 2ms

Latency < 6ms

Latency < 68ms

Strategies

Page 9: Constraint-Based Embedded Program Composition

Example: Boeing OEP

Design SpaceNavigation

DispASensor

DispB

Proc

DispA

Sensor

DispBLatency < 2ms

Latency < 6ms

Latency < 68ms

Proc

Proc#2

Proc#1

Eager Lazy

Page 10: Constraint-Based Embedded Program Composition

Contribution To PCES• “analysis and transformation tools that achieve and preserve

required properties”– The mapping of requirements to constraints will contribute to the

achievement of system properties in the implementation.– OBDD-based constraint management

• “composition techniques that can be used cooperatively to support real-time programming”– Modeling component composition from requirements

• “programming reusable and portable aspect code”– Reusable libraries of aspects composing advice based on system and

application requirements to customize product family design

• “engineering approaches that can greatly reduce effort to program embedded systems”– Strategies for creating contracts & CDL generation

Page 11: Constraint-Based Embedded Program Composition

Contribution to Relevant Military Applications

• Bold Stroke:– Domain-specific application composition

• Rapid customization of military systems– Tuning implementations to system requirements, constraints

• Re-use of components one component fits all via customization (through aspects)

• BBN UAV– Generation and management of complex behaviors (e.g., contracts)

• Systems are more adaptive to changing conditions• Systems make better use of resources to accomplish mission

– Evaluation/simulation of system behavior• System behavior known before deployment• More reliable systems, less chance of failure in ‘odd’ circumstances

• Others (original project plan)– Software Radio

• Single platform design multiple waveform support• Efficient generation of HW/SW

– AMCOM Missile ATR• Rapid design-space tradeoff for architecture studies, • Coupled with SW/HW generation

Page 12: Constraint-Based Embedded Program Composition

Project Tasks/Schedule

• Definition Implementation of Constraint & Strategy Language– Constraint/Strategy Language Jan 01, Jan 02

(v2)

• Meta Weaver Framework Aug 01, Spring 02

• Design Space Exploration & Synthesis– CDL Generation (rev 1) Oct 01– OBDD Representation Apr 02– Aspect Selection/Customization Aug 02

• Demonstrations– Bold Stroke Apr 02– BBN UAV Apr 02– SWR Aug 03

• Personal challenge problem: Graduate! May 02

Page 13: Constraint-Based Embedded Program Composition

Technical Progress/Accomplishment

• Definition Implementation of Constraint & Strategy Language– Constraint/Strategy Language (v1) – Models-to-XML Translation – Constraint Weaver Synthesis 90%

• Definition of Domain Modeling Languages – Component Modeling 80%– State/Contract (New) 70%

• Synthesis– CDL 50%– Bold Stroke Component Composition 5%

• Demonstrations– BBN 30%– Boeing 10%

Page 14: Constraint-Based Embedded Program Composition

Next Milestones

• Complete remaining portion of weaver framework

• BBN UAV– Complete CDL generator– Think about new strategy polices for state adaptation– Generate Contract Simulation– Demonstration

• Boeing Bold Stroke– Complete Bold Stroke Modeling– Generate Bold Stroke Component Composition– Demonstration

Page 15: Constraint-Based Embedded Program Composition

Collaborations

• OEP Interaction:– Boeing

• Bold Stroke Applications Modeling/Implementation

– BBN• Contract Modeling and Simulation/CDL Generation

• Other PCES participants:– UVA/Boeing

• Modeling Collaboration, Tool Integration

– PARC/UBC (planned)• Component Behavior Composition

– Cornell (planned)• Mapping our BBN models to XML for analysis

• Other DARPA projects: MoBIES– Extending Bold Stroke Modeling to support component composition with aspects

Page 16: Constraint-Based Embedded Program Composition

Tech Transfer

• AFRL/IFGC (Rome AFB), Wayne Bonser (IFGC), Rodger Dziegel (IFTD)– Tools for Waveform Definition Language-to-Software Radio

Implementation• USARMY/AMCOM; Richard Sims (AMSAM-RD-MG-IP)

– Missile Embedded Systems, HW/SW Codesign

• Workshop organization:– OOPSLA 2001 Workshop on Domain-Specific Visual Languages– AOSD Workshop on “Early Aspects” (in submission)

• Publications/Interactions– ICSE 01– OOPSLA 01: Poster, GME Demo– CACM (October 2001)– IEEE Computer (November 2001) -> GME

Page 17: Constraint-Based Embedded Program Composition

Program Issues

• Tool Integration– For those working in the modeling space, tool

integration and model exchange can be a hurdle– Not an OEP-specific challenge problem – exists for

both OEPs– déjà vu: “Boeing Annual Product Data Exchange

Workshop”

Page 18: Constraint-Based Embedded Program Composition

Workshop Announcement

Workshop on New Visions for Software Design and Productivity: Research and Applications

– December 13-14, 2001– In Nashville, TN– Position Paper deadline: October 31, 2001– http://www.isis.vanderbilt.edu/sdp

– Special appearance by Garth Brooks (just kidding…)

Page 19: Constraint-Based Embedded Program Composition

Institute for Software Integrated SystemsVanderbilt University

Backup Slides

Page 20: Constraint-Based Embedded Program Composition

System

MetaWeaverFramework

StraegiezedWeaver

Strategies

SpecsM’wareM’ware

M’wareAspects

M’wareM’wareApplication

Models

M’wareM’wareM’wareAspects

M’wareM’wareApplication

Models +Constraints

C

Design SpaceNavigation

M’ware

ApplicationWeavers/Compilers

AO Source Code

Tool Architecture

Page 21: Constraint-Based Embedded Program Composition

System SW/HW Description

WaveformDescr. #1

AOConstraint

Specs

ConstraintWeaver

SystemSynthesis

WaveformDescr. #N

ConstraintWeaver

SystemSynthesis

GenericEmbedded Object

System Design

CustomizedSW-Based

Radios

Page 22: Constraint-Based Embedded Program Composition

Meaningful Specifications

• Power• Precision• Time• Resource & Mapping

• Strategies for making constraints depend on application, system requirements.– Different constraints, same strategy different systems– Different strategies, same constraints different

performance and optimizations of systems

• Constraints meaningful in specific domain• Extension to other domains

Page 23: Constraint-Based Embedded Program Composition

Specification Application via

Strategy Language• Specify how to apply constraints across

object hierarchy.• Determines how constraints are

divided/responsibility shared among components.

• Flexible to permit different goals– Latency optimization– Throughput optimization– Power– Future/User-Defined, etc….

Page 24: Constraint-Based Embedded Program Composition

Behavioral Structural

Constraints

Resources

Design Analysis

Vendor/COTS ToolsSystem Synthesis

System Simulation

Reconfigurable ComputingRuntime Env.

Model-Integrated Design Environment for Adaptive Computing

SpecificationLanguage

StrategyLanguage

Page 25: Constraint-Based Embedded Program Composition

DemonstrationSoftware Radio

• Model Hardware Resources– Support multiple target platforms

• Model Computational Components– HW/SW DSP Cores

• Develop a “Waveform Description Language”– Define Frequency Range/Spacing/Accuracy– Define Modulation Type/Index/Rate– Define Channel Coding

• Synthesize SW Radio for Target Hardware