A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

21
A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    2

Transcript of A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

Page 1: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

A New Type of Behaviour-

Preserving Transition Insertions

in Unfolding Prefixes

Victor Khomenko

Page 2: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

2

Motivation

• Some design methods based on PNs repeatedly execute the following steps: Analyze the PN Modify the PN by inserting a new

transition in a behaviour-preserving way:

– bisimilar

– safe

• E.g: synthesis of asynchronous circuits: Resolution of encoding conflicts Logic decomposition of complex gates

Page 3: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

3

Unfolding prefixes• Using unfolding prefixes for analysing the PN

alleviate state space explosion efficient analysis and synthesis algorithms good for visualisation

• It is desirable to avoid re-unfolding after each transformation, i.e. to mirror the PN transformation by local transformations in the unfolding prefix re-unfolding is time-consuming good for visualisation (re-unfolding can

dramatically change the look of the prefix) can transfer information (e.g. encoding conflicts)

between the iterations of the algorithm

the difficult bit and the main point of the paper

Page 4: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

4

Example: VME Bus Controller

lds-d- ldtack- ldtack+

dsr- dtack+ d+

dtack- dsr+ lds+

DeviceVME Bus

Controller

lds

ldtack

d

Data Transceiver

Bus

dsrdtack

Page 5: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

5

Example: Encoding Conflict

dtack- dsr+

dtack- dsr+

dtack- dsr+

00100

ldtack- ldtack- ldtack-

0000010000

lds- lds- lds-

01100 01000 11000

lds+

ldtack+

d+

dtack+dsr-d-

01110 01010 11010

01111 11111 11011

11010

10010

M’’ M’

Page 6: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

6

Example: Resolving the conflict

lds-d- ldtack- ldtack+

dsr- dtack+ d+

dtack- dsr+ lds+csc+

csc-

Page 7: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

7

Example: Resolving the conflict

dtack- dsr+

dtack- dsr+

dtack- dsr+

001000

ldtack- ldtack- ldtack-

000000 100000

lds- lds- lds-

011000 010000 110000

lds+

ldtack+

d+

dtack+dsr-

d-

011100 010100 110100

011111 111111 110111

110101

100101

011110

csc+

csc-

100001

M’’ M’

Page 8: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

8

Complex-gate implementation

Device

d

Data TransceiverBus

dsr

dtacklds

ldtack

csc

May be not in the gate library and has to be decomposed

Page 9: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

9

Naïve decomposition is hazardous

d

dsr

dtacklds

ldtack

csc

x

lds-d- ldtack- ldtack+

dsr- dtack+ d+

dtack- dsr+ lds+csc+

csc-

Unexpected!

Unexpected!

Page 10: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

10

Decompose at the PN level!

d

dsr

dtacklds

ldtack

csc

dec

lds-d- ldtack- ldtack+

dsr- dtack+ d+

dtack- dsr+ lds+csc+

csc-

dec+

dec-

Insert a new signal dec whose implementation is [dec] = ldtack + csc

Page 11: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

11

Previous work: Transformations

Sequential pre-insertion Sequential post-insertion

Concurrent insertion

Page 12: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

12

Previous work: main results• Validity criteria

safeness bisimilarity

• The validity can be checked before the transformation is performed, i.e. on the original prefix (to avoid backtracking)

• Avoiding re-unfolding

• The suite of transformations is good in practice for resolution of encoding conflicts

Page 13: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

13

Motivation for more transformations• The suite of transformations is not sufficient

for logic decomposition; intuitively: only linear (in the PN size) number of

sequential pre- and post-insertions (assuming that the pre- and postset sizes are bounded)

only quadratic (in the PN size) number of concurrent insertions

exponential number of ‘cuts’ in the PN where a Boolean expression can change its value

Page 14: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

14

Example: imec-sbuf-ram-writedec+

dec-

dec

Implementation of prbar:(csc2 req) csc1 wsldin

imec-sbuf-ram-writereq

prechargeddone

wsldinwenin

prbarwenwsenackwsld

Page 15: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

15

Lock relation• Transitions t and t’ are in the lock relation,

denoted t t’, if in every execution of the PN: their occurrences alternate the first occurrence of t precedes that of t’

• A conservative approximation of can be efficiently computed from the prefix

• The approximation is exact in the live case

Page 16: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

16

Generalised transition insertion (GTI)

s1

s2

s3

d1

d2

For each si:

• either si dj for each dj

• or dj si for each dj

• GTIs preserve safeness and yield bisimilar PNs

• It is possible to mirror a GTI by local transformations in the unfolding prefix

sources destinations

Page 17: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

17

Computing useful GTIs• There can be exponentially many GTIs (in the

size of the PN): more likely that an appropriate

transformation exists no longer practical to enumerate them all

• How to enumerate only the ‘potentially useful’ (for a particular application) GTIs?

• Can be done in two steps: computing sources (application-dependent,

but the main idea is quite general) computing the destinations for given

sources (relatively independent on the application)

Page 18: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

18

Computing sources (logic deco)• Given a Boolean expression E, find a position

where E changes its value, i.e. a configuration C whose causally maximal events e correspond to the support of E and are such that E(C\{e}) E(C)

• Reducible to SAT• When a solution is found:

add a clause removing all the solutions yielding the same sources

run the solver again repeat until all possible sets of sources are

computed• Incremental SAT

Page 19: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

19

Computing destinations

• Given a set of sources S, compute all possible sets of destinations yielding a valid GTI

W.l.o.g: no two transitions in S are locked

• Compute the set LS= {d | sS : sd ds} of transitions locked with each source

• Build the graph on LS: d1 and d2 are connected by an edge iff they are not locked with each other and are consistently locked with each source (i.e. sd1 iff sd2)

• Enumerate the non-empty cliques of this graph

Page 20: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

20

Summary of contributions• A method for computing the approximated

lock relation using an unfolding prefix; it is conservative, and exact in the live case

• A new kind of transition insertion preserving safeness and yielding a bisimilar PN

• An algorithm for applying a GTI on the existing prefix, avoiding thus (expensive) re-unfolding

• A method for computing ‘potentially useful’ GTIs in the context of logic decomposition; some parts of this method are relatively independent on the application

• These contributions form a complete framework for efficient use of GTIs together with the transformations developed earlier

Page 21: A New Type of Behaviour- Preserving Transition Insertions in Unfolding Prefixes Victor Khomenko.

21

Thank you!Any questions?