communicating transaction processes

42
21.10.02 ES Seminar 1 Communicating Transaction Processes P.S. Thiagarajan National University of Singapore Joint Work with: Abhik Roychoudhury; ……

Upload: kim

Post on 12-Feb-2016

22 views

Category:

Documents


0 download

DESCRIPTION

Communicating Transaction Processes. P.S. Thiagarajan National University of Singapore Joint Work with: Abhik Roychoudhury; ……. The Main Features. To support System Level Design One Level of Abstraction higher than C, C++, VHDL .. UML-compatible MSCS + Asynchronous control flow - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Communicating Transaction Processes

21.10.02 ES Seminar 1

Communicating Transaction Processes

P.S. ThiagarajanNational University of Singapore

Joint Work with: Abhik Roychoudhury; ……

Page 2: Communicating Transaction Processes

21.10.02 ES Seminar 2

The Main Features

• To support System Level Design– One Level of Abstraction higher than C, C++,

VHDL ..• UML-compatible

– MSCS + Asynchronous control flow– Based on MSCs (Message Sequence Charts)– Sequence Diagrams

Page 3: Communicating Transaction Processes

21.10.02 ES Seminar 3

Why System Level Design?

• Closer to end-use(r) .• Less detailed and more architecture-neutral.• Easier reuse/adaptaton.• Easier to verify.

– Safety-critical applications need to be correct.– Catch design errors early.– Coupling with a correct-by-construction

synthesis method is an attractive option.

Page 4: Communicating Transaction Processes

21.10.02 ES Seminar 4

What is Available?

• Data flow graphs.• Automata of various kinds.• Petri nets.• State charts.• Esterel, Lustre.• SDL, UML.

Page 5: Communicating Transaction Processes

21.10.02 ES Seminar 5

Why UML-compatible?

• UML is getting rapidly established as a standard.– Mainly in software engineering projects– Increasingly so in embedded systems domain.

• Offers a suite of graphical notations:– Multiple views– Behavioral and structural diagrams.– Object orientation.

Reuse, adaptation

Page 6: Communicating Transaction Processes

21.10.02 ES Seminar 6

An Idealized Design FlowRequirements

Exec. Specifications.

Intermediate representation

SW/HW Implementation.

High Level Description

Page 7: Communicating Transaction Processes

21.10.02 ES Seminar 7

Requirements and Exec. Specifications

• Requirements : Message Sequence Charts (MSCs)

• Exec. Specifications :– State charts.

• UML supports both but no clear distinction made.• Other Exec. Spec. :

– Petri nets, – MPAs (Message Passing Automata), ….

Page 8: Communicating Transaction Processes

21.10.02 ES Seminar 8

MSCs

• Message Sequence Charts:– Describe scenarios.– A finite pattern of interaction between agents

(object instances,..).– A story

Page 9: Communicating Transaction Processes

21.10.02 ES Seminar 9

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 10: Communicating Transaction Processes

21.10.02 ES Seminar 10

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 11: Communicating Transaction Processes

21.10.02 ES Seminar 11

Message Sequence Charts

rq

U1 R

rq

yn

U2

internal action

Page 12: Communicating Transaction Processes

21.10.02 ES Seminar 12

Message Sequence Charts

rq

U1 R

rq

yn

U2

internal actions

Page 13: Communicating Transaction Processes

21.10.02 ES Seminar 13

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 14: Communicating Transaction Processes

21.10.02 ES Seminar 14

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 15: Communicating Transaction Processes

21.10.02 ES Seminar 15

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 16: Communicating Transaction Processes

21.10.02 ES Seminar 16

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 17: Communicating Transaction Processes

21.10.02 ES Seminar 17

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 18: Communicating Transaction Processes

21.10.02 ES Seminar 18

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 19: Communicating Transaction Processes

21.10.02 ES Seminar 19

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 20: Communicating Transaction Processes

21.10.02 ES Seminar 20

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 21: Communicating Transaction Processes

21.10.02 ES Seminar 21

Message Sequence Charts

rq

U1 R

rq

yn

U2

Page 22: Communicating Transaction Processes

21.10.02 ES Seminar 22

CTPs

• Communicating Transaction Processes.• An executable spec. mechanism.

– Based on MSCs.• A network of interacting agents.

– Agent’s interaction pattern behavior: Standard distributed system model

– Interaction: Guarded choice of MSCs. Transaction schemes.

Page 23: Communicating Transaction Processes

21.10.02 ES Seminar 23

Distributed System Models

• Petri nets• Data flow graphs• Statecharts• Distributed transition systems (many

kinds!)• Process algebras (CCS, CSP, …)

Page 24: Communicating Transaction Processes

21.10.02 ES Seminar 24

PI1 IB1 IB2 PI2

I1

B

I2

P2

Page 25: Communicating Transaction Processes

21.10.02 ES Seminar 25

PI1 IB1 IB2 PI2

I1

B

I2

P2

Page 26: Communicating Transaction Processes

21.10.02 ES Seminar 26

PI1 IB1 IB2 PI2

I1

B

I2

P2

Page 27: Communicating Transaction Processes

21.10.02 ES Seminar 27

PI1 IB1 IB2 PI2

I1

B

I2

P2

Page 28: Communicating Transaction Processes

21.10.02 ES Seminar 28

PI1 IB1 IB2 PI2

I1

B

I2

P2

Page 29: Communicating Transaction Processes

21.10.02 ES Seminar 29

PI1 IB1 IB2 PI2

I1

B

I2

P2

But the boxes will have internal structure.

A complex Transaction Scheme.

Page 30: Communicating Transaction Processes

21.10.02 ES Seminar 30

Transaction Scheme

waitcount2:= waitcount2 + 1

2data.present & B.free 2data.present & B.free

I2 B

reqy

adddata

I2 B

reqn

I2 B

2data.present

Page 31: Communicating Transaction Processes

21.10.02 ES Seminar 31

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 32: Communicating Transaction Processes

21.10.02 ES Seminar 32

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 33: Communicating Transaction Processes

21.10.02 ES Seminar 33

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 34: Communicating Transaction Processes

21.10.02 ES Seminar 34

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 35: Communicating Transaction Processes

21.10.02 ES Seminar 35

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 36: Communicating Transaction Processes

21.10.02 ES Seminar 36

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 37: Communicating Transaction Processes

21.10.02 ES Seminar 37

PI1 IB1 IB2 PI2

I1

B

I2

reqy

adddata

2data.present & B.free

Page 38: Communicating Transaction Processes

21.10.02 ES Seminar 38

P11

I1

1data.present

no-op

1data.present

1data.present

no-data

1data.present

1data.present

data

1data.present

P11 Transaction SchemeI1

Page 39: Communicating Transaction Processes

21.10.02 ES Seminar 39

Analysis Issues

• Determine whether a CTP is bounded.• Determine if a CTP can deadlock.• Determine if a CTP is well-formed.

Page 40: Communicating Transaction Processes

Current Status

The CTP Model

SMV ES Representation

Verilog

AnalysisVerification

Simulation;

Synthesis

Case Studies

Modeling

Page 41: Communicating Transaction Processes

Current Status

The CTP Model

SMV ES Representation

Verilog

AnalysisVerification

Simulation;

Synthesis

Case Studies

Modeling

Pankaj Jain

Nikhil Jain

Kamrul Hasan Talukdar

Tran Tuan Anh

Ge Zhiguo

Page 42: Communicating Transaction Processes

21.10.02 ES Seminar 42

Future Work

• Add multiple instances of a process.– Object features

• Add timing constraints.• Develop the computational model.

– Interactions with environment (sense, actuate)– Computational steps (control law)– Schedulability is a key issue.

• HW/SW Partitioning; Architectural mapping; Synthesis?