RESYN'09 March 2009 Newcastle upon Tyne 1 Workcraft – a Framework for Interpreted Graph...

Preview:

Citation preview

RESYN'09

March 2009Newcastle upon Tyne1

Workcraft – a Framework for Interpreted Graph Models

Ivan Poliakov, Arseniy Alekseyev,Victor Khomenko, Alex Yakovlev

RESYN'09

March 2009Newcastle upon Tyne2

Interpreted Graph Models

• Static graph structure – Nodes– Arcs

• Additional entities– Tokens– Node states– Arc states– Etc

• Examples:– Petri Nets– Static Data Flow Structures– Gate-level circuits

RESYN'09

March 2009Newcastle upon Tyne3

Petri Nets as a low-level 'language'

• Many high-level models do not have sufficiently developed theory and associated tools

• Petri Nets have exensive theory and many efficient tools

• Approach: convert high-level models into PNs for analysis/verification

RESYN'09

March 2009Newcastle upon Tyne4

Verification workflow

RESYN'09

March 2009Newcastle upon Tyne5

Workcraft

• A tool for working with IGMs– Visual editing– Interactive simulation– Automated verification• For researchers:

– define new Interpreted Graph Models– inherit visual editing and simulation features of the

framework• For system designers

– a consistent framework for different formalisms– convenient analysis and verification functions

RESYN'09

March 2009Newcastle upon Tyne6

Workcraft GUI overview

RESYN'09

March 2009Newcastle upon Tyne7

Working with models

• Creating new model

RESYN'09

March 2009Newcastle upon Tyne8

Working with models

• Simulation

• Modes:– Automatic– Interactive– Trace-replay

• Step-by-step

RESYN'09

March 2009Newcastle upon Tyne9

Model interoperability

RESYN'09

March 2009Newcastle upon Tyne10

More complex interoperability

RESYN'09

March 2009Newcastle upon Tyne11

Use case — Static Data Flow Verification

Original state

Deadlock state

29 steps

RESYN'09

March 2009Newcastle upon Tyne12

Use case — Asynchronous circuit verification

Hazard caused by wiredelay

RESYN'09

March 2009Newcastle upon Tyne13

Summary

• Workcraft is a framework for Interpreted Graph Models– Provides visual editing and simulation features– Provides automated verification features

• Workcraft has been used in several real-life cases– SDFS verification– Circuit verification (e.g. the design of a multiresource

arbiter by Golubcovs et al.)– CPOG-based synthesis

• Available free for academic use at– async.org.uk/workcraft

RESYN'09

March 2009Newcastle upon Tyne

Workcraft 2

Almost complete rewrite of Workcraft 1:

• No longer OpenGL dependent– visualisation engine switched from custom-written to

Java2D– much better portability

• Customisable multi-window interface– Persistent docking layout– Hideable utility windows

RESYN'09

March 2009Newcastle upon Tyne

Workcraft 2 (cont.)

• Logical model data and visual data are separate– Logical models can exist without visual data– Import from files without visual data is allowed (such

as .g)– Visual data can be attached on-the-fly

• Console mode– JavaScript-based command line– Scriptable batch processing

RESYN'09

March 2009Newcastle upon Tyne16

Use case – Balsa circuit re-synthesys

– Visualisation of Balsa net-lists– Generation of STGs for individual HS components– STG composition of the entire HS circuit

RESYN'09

March 2009Newcastle upon Tyne17

Individual component STGs

• "SequenceOptimised" component STG

"Concur" component STG

RESYN'09

March 2009Newcastle upon Tyne18

Resulting STG composition

activate

out0

out1

out2

out3

RESYN'09

March 2009Newcastle upon Tyne

(tool demo)

Recommended