Top Banner
Page 1, CBSE graduate course Lecture 4 Lecture 4 Component Behavioral Modeling Component Behavioral Modeling with REMES with REMES
41

Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Dec 31, 2015

Download

Documents

Sherilyn Weaver
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Page 1, CBSE graduate course

Lecture 4 Lecture 4

Component Behavioral ModelingComponent Behavioral Modeling

with REMES with REMES

Page 2: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

AgendaAgenda

Background and Motivation

REMES

Connecting REMES and ProCom

REMES Editor

Lab2

CBSE graduate coursePage 2,

Page 3: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

3

Embedded systems

“Computer that does not look like computer”

Part of a larger system or machine

Typical requirements Low cost Constantly react to changes in the environment Dependability Compute certain results in real-time without delay Limited available resources Manage the growing complexity of software

Need for solutions that Alleviate software complexity Ensure predictable system behavior

Background and Motivation

CBSE graduate course

Page 4: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

C2

{RC2}

Cn

{RCn}

{RB} > {RC1}

C1

{RC1}B{RB

RepositoryRepository

Page 4, CBSE graduate course

Background and Motivation

Page 5: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Challenge

construct component model for ES design enriched with behavioral information

support predictable system development and as such guarantee absence or presence of certain properties

prediction methods should be available already at early design stage

bottom-up resource analysis can guide the selection of components

top-down resource analysis could help in correct decomposition of system’s specification

Background and Motivation

Page 5, CBSE graduate course

Page 6: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES behavioural languageREMES behavioural language

CBSE graduate coursePage 6,

Page 7: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Resource Class Characteristics

A(memory)

discrete c´=0 or c’=inf referable

B(CPU, bandwidth)

discrete c’=0 or c´=inf non-referable

C(CPU, energy)

continuous c´=n, n in Z - {-inf,+inf} non-referable

Resource consumption- annotated with c;

accumulated resource usage up to some time point

c’ - rate of consumption over time

Classification of resources: discrete or continuous nature

referable or non-referable

Classification of resources

Page 7, CBSE graduate course

Page 8: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES – REsource Model for Embedded SystemsREMES – REsource Model for Embedded Systems

CBSE graduate course

Behavioral model intended to describe the resource-wise behavior of interacting embedded components

Behavior of a component is a mode

Modes atomic

composite

Page 8,

Page 9: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES - modesREMES - modes

Page 9,

Mode M (SM, V, In, Out, E, RC, Inv, CC) Control points In: (Init point, Entry point), Out: (Write point, Exit point)

Variables (V) (boolean, natural, integer, array, clock, history variables)

Actions over edges (E) discrete A (guard, body)

delay/timed

Constraints set of invariants (Inv)

set of res. diff equations (RC)

Conditional connectors (CC)

Nested submodes (SM)

Entry Point

Init Point

C

M

submode1 submode2

submode3

Exit Point

Write Point

(guard, body)

Inv1RC1

Page 10: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

C

Control

Init

Entry

Exit

login=userdata

cpu’=2

t<=30,

Credentials

Air_conditioning

Example1Example1- - internal behaviour of Control component in REMESinternal behaviour of Control component in REMES

logged==true

logged==false

cpu’=10eng’=2

mem+=30, t:=0

Initializationresource mem:TA; resource cpu:TC; resource eng:TC; t:clock

turnoff==tru

e

Page 10, CBSE graduate course

Page 11: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Analysing REMES based ESAnalysing REMES based ES

REMES modes have access to R1,…, Rn

Goal

analyze various scenarios of system’s resource usage

Analysis model for REMES

rtot total accumulated resource consumption for R1,…, Rn

r1,…, rn accumulated consumption of R1,…, Rn

w1,…, wn relative importance of r1,…, rn

nndeftot rwrwrwr 2211

Page 11, CBSE graduate course

Page 12: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

23-04-19

12

Analysing REMES based ESAnalysing REMES based ES

Translating REMES into Priced timed automata or Multi PTA

TA + costs on locations and edges REMES atomic submode PTA location(s)

REMES discrete edge PTA edge

REMES discrete step PTA transition

REMES conditional connectors are removed

Automated translation

Types of analysis

Feasibility

Optimal/ worst-case resource consumption

Trade-off analysis

Page 12,

Page 13: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

• PTA waits in location Start for system startup

• Init, Entry, Write and Exit locations created

• Transformation of Submode2

• Internal execution rounds - PTA edge connecting locations Write and Submode1

• Synchronization with other components

Analysing REMES based ESAnalysing REMES based ES

Page 13,

Page 14: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Model Checker(Uppaal Cora)

PTA / MPTA

resource-aware property

error trace

yes

Assumptions from hardware abstraction:

Memory budget, Bandwidth, Cost model

vEF ntcos

Analysing REMES based ESAnalysing REMES based ES

Page 14, CBSE graduate course

Page 15: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

ProCom component REMES model of component behavior

Attribute Framework Managing and integrating properties

Each ProCom component has an attribute with a complex value: Reference to a REMES model file

Reference to a mapping file between ProCom and REMES interfaces

Analysing REMES based ESAnalysing REMES based ES

CBSE graduate coursePage 15,

Page 16: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

ProSave level trigger port REMES interface boolean variable

data port REMES interface data variable

ProSys level input message port REMES read boolean variable

and REMES read data variable of the

same type as the port type

output message port REMES write boolean variable and REMES write data variable

Connecting ProCom and REMESConnecting ProCom and REMES

Page 16, CBSE graduate course

Page 17: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Example2Example2- - Temperature control systemTemperature control system

core is heated at some given rate

core temperature should be maintained between a minimum and a maximum

when max temp. is reached, designed to be cooled down by inserting one of two existing rods , which cool at different rates R1 or R2

a rod is available again after T time units

Page 17, CBSE graduate course

Page 18: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Model of the architecture and behaviour System modeled with 3 ProSave components

Each component has a behavior depicted by a REMES mode

Assume memory and cpu usage

Formal analysis

ProCom + REMES PTA

Example2Example2- - Temperature control systemTemperature control system

Page 18, CBSE graduate course

Page 19: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Example2Example2- - Temperature control systemTemperature control system

Page 19, CBSE graduate course

Page 20: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Example2Example2- - Temperature control systemTemperature control system

Page 20, CBSE graduate course

Page 21: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Example2Example2- - Temperature control system – Temperature control system – Analysis in UppaalAnalysis in Uppaal

Just for illustration!

Page 21,

Page 22: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Page 22, CBSE graduate course

Page 23: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES tool-chainREMES tool-chain

CBSE graduate coursePage 23,

Page 24: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

The REMES tool-chain consists of

REMES model editor

REMES simulator to test timing and resource behavior prior to formal analysis

Automated transformation from REMES to PTA for formal analysis and UppaalLite editor

Page 24, CBSE graduate course

REMES tool-chainREMES tool-chain

CBSE graduate course

Page 25: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Page 25, CBSE graduate course

Page 26: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES editorREMES editor

CBSE graduate coursePage 26,

Page 27: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Page 27, CBSE graduate course

Page 28: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES language elementsREMES language elements

CBSE graduate course

Composite mode Compartments for declaration variables, resources, constants

Page 28,

Page 29: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES language elementsREMES language elements

CBSE graduate course

Submodes Invariant – time is allowed to pass until invariant is violated Non-lazy – does not contain any.invariant, Time is allowed to pass in a non-lazy mode until at

least one of the guards of the outgoing discrete actions evaluates to true Urgent – time is not allowed to pass (invariant is false) .

Page 29,

Page 30: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

REMES language elementsREMES language elements

CBSE graduate course

Input and output Init-, entry-, exit-, write – points (local exit points not presented here)

Page 30,

Page 31: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

CBSE graduate course

REMES language elementsREMES language elements

Control flow

Edges with guards and actions Conditional connectors

Page 31,

Page 32: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Introduction to Lab2Introduction to Lab2

CBSE graduate coursePage 32,

Page 33: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Page 33, CBSE graduate course

ObjectivesObjectives Learn how to model behaviors of component-based

embedded systems

Model internal behavior of components

Think about modes, actions, resources, invariants etc.

Get familiar with the REMES editor

Page 34: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Expected OutputExpected Output

Same system as for Lab1

Archive files only (no folder) named ”Lab2_X_Y.zip” where X_Y=first student name_second student name1 report explaining your design choices

The Project folder for your system

Individual work/ group of two students

And nothing else!

Do not copy solutions from others !

CBSE graduate coursePage 34,

Page 35: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

DeadlineDeadline

Thursday 21 February 2013 23:59 (FIRM Deadline!)

If you submit your work late, you fail one submission opportunity

Remember

Lab2 needs to be aproved for passing the course

CBSE graduate coursePage 35,

Page 36: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

The assignmentThe assignment

In 2 exercices

Modelling behavior of simple Touch-Lamp system

Modeling behavior of an abstracted version of a Baking Conveyor System

CBSE graduate coursePage 36,

Page 37: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Exercise 1- Touch Lamp System Exercise 1- Touch Lamp System

CBSE graduate course

Lamp has two modes of light operation

• Dim – 1 touch

• Bright – 2 successive touches within 15 sec

Page 37,

Page 38: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Exercise 2- Industrial Baking Conveyor System Exercise 2- Industrial Baking Conveyor System

CBSE graduate coursePage 38,

Main parts•Oven•Conveyor Belt•Orchestrator

Page 39: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Usage ScenarioUsage Scenario

CBSE graduate course

Orchestrator

OvenConveyor Belt

Oven monitors the temperature and humidity and Oven monitors the temperature and humidity and determines 1. if the heat should be increased or determines 1. if the heat should be increased or decreased and 2. displays the status of the cookiesdecreased and 2. displays the status of the cookies

Carries the cookies Carries the cookies from point A to point B from point A to point B in passing by the ovenin passing by the oven

Ensure that the conveyor belt Ensure that the conveyor belt and the oven are working and the oven are working togethertogether

Page 39,

Page 40: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

Exercise 1 and 2- What do you need to do? Exercise 1 and 2- What do you need to do?

To model the behaviour of the system components

Lamp component for Exercise 1

Orchestrator, Oven and Conveyor Belt component for Exercise 2

Tips

Start by understanding REMES think about different types of modes that exist in REMES

Use pen and paper before using REMES editor

Once you are sure of your solution. Model it in the REMES editor

CBSE graduate coursePage 40,

Page 41: Page 1, CBSE graduate course Lecture 4 Component Behavioral Modeling with REMES.

CBSE graduate coursePage 41,