Asynchronous%20Circuit%20Verification%20and%20Synthesis%20with%20Petri%20Nets - PowerPoint PPT Presentation

About This Presentation
Title:

Asynchronous%20Circuit%20Verification%20and%20Synthesis%20with%20Petri%20Nets

Description:

Asynchronous Circuit Verification and Synthesis with Petri Nets J. Cortadella Universitat Polit cnica de Catalunya, Barcelona Thanks to: Michael Kishinevsky (Intel ... – PowerPoint PPT presentation

Number of Views:168
Avg rating:3.0/5.0
Slides: 70
Provided by: Jordi59
Learn more at: https://www.cs.upc.edu
Category:

less

Transcript and Presenter's Notes

Title: Asynchronous%20Circuit%20Verification%20and%20Synthesis%20with%20Petri%20Nets


1
Asynchronous Circuit Verification and Synthesis
with Petri Nets
J. Cortadella Universitat Politècnica de
Catalunya, Barcelona
Thanks to Michael Kishinevsky (Intel
Corporation) Alex Kondratyev
(The University of Aizu)
Luciano Lavagno (Politecnico di Torino)
Enric Pastor (Universitat Politècnica de
Catalunya) Alex Taubin (The
University of Aizu) Alex
Yakovlev (University of Newcastle upon Tyne)
2
Motivation
  • Interfaces are often asynchronous
  • Subsystems with different clocks often want to
    talk to each other
  • Self timing provides functional and temporal
    modularity
  • and no clock skew, low power,low EMI, average
    performance, ...

3
Why Petri nets ?
  • Formal model to specify causality, concurrency
    and choice between events
  • Simple enough to easily derive state-level
    information (logic synthesis)
  • Powerful enough to implicitly represent a large
    state space

4
Outline
  • Design flow
  • Synthesis
  • Specification
  • State encoding
  • Logic decomposition
  • Synthesis of Petri nets
  • Formal verification

5
Design flow
6
x
x
y
y
z
z
x-
z
x
y
z-
y-
Signal Transition Graph (STG)
7
(No Transcript)
8
(No Transcript)
9
Synchronous
Asynchronous
10
Next-state functions
11
(No Transcript)
12
Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
13
VME bus
14
STG for the READ cycle
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
D
LDS
DSr
VME Bus Controller
LDTACK
DTACK
15
Choice Read and Write cycles
16
Choice Read and Write cycles
17
Circuit synthesis
  • Goal
  • Derive a hazard-free circuitunder a given delay
    model andmode of operation

18
Modes of operation
  • Fundamental mode
  • Single-input changes
  • Multiple-input changes
  • Input / Output mode
  • Concurrencycircuit / environment

Currentstate
Nextstate
19
STG for the READ cycle
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
D
LDS
DSr
VME Bus Controller
LDTACK
DTACK
20
Speed independence
  • Delay model
  • Unbounded gate / environment delays
  • Certain wire delays shorter than certain paths in
    the circuit
  • Conditions for implementability
  • Consistency
  • Complete State Coding
  • Output persistency

21
Other synthesis approaches
  • Burst-mode machines
  • Mealy-like FSMs
  • Fundamental mode (slow environment)
  • VLSI programming
  • Syntax-directed translation from
    CSP(Communicating Sequential Processes)
  • No logic synthesis
  • Circuit size Size of the specification

22
Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
23
State Graph (Read cycle)
DSr
DTACK-
LDS
LDTACK-
LDTACK-
LDTACK-
DSr
DTACK-
LDS-
LDS-
LDS-
LDTACK
DSr
DTACK-
D
D-
DSr-
DTACK
24
Binary encoding of signals
DSr
DTACK-
LDS
LDTACK-
LDTACK-
LDTACK-
DSr
DTACK-
LDS-
LDS-
LDS-
LDTACK
DSr
DTACK-
D
D-
DSr-
DTACK
25
Binary encoding of signals
DSr
DTACK-
10000
LDS
LDTACK-
LDTACK-
LDTACK-
DSr
DTACK-
10010
LDS-
LDS-
LDS-
LDTACK
DSr
DTACK-
10110
01110
10110
D
D-
DSr-
DTACK
(DSr , DTACK , LDTACK , LDS , D)
26
Excitation / Quiescent Regions
27
Next-state function
0 ? 1
0 ? 0
1 ? 1
1 ? 0
28
Karnaugh map for LDS
LDS 1
LDS 0
-
-
-
0
1
-
0
1
-
-
-
-
-
-
-
-
1
1
1
-
-
-
-
-
0
0
0
0
0
0/1?
-
-
29
Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
30
Concurrency reduction
LDS
LDS-
LDS-
LDS-
10110
10110
31
Concurrency reduction
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
(See todays presentation in this workshop for
more details)
32
State encoding conflicts
LDS
LDTACK-
LDS-
LDTACK
10110
10110
33
Signal Insertion
LDTACK-
LDS
LDS-
LDTACK
101101
101100
D-
DSr-
34
Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
35
Complex-gate implementation
36
Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
37
Hazards
38
Hazards
1000
1100
1100
0100
0110
39
Decomposition
  • Global acknowledgement
  • Generating candidates
  • Hazard-free signal insertion
  • Event insertion
  • Signal insertion

40
Global acknowledgement
41
How about 2-input gates ?
42
How about 2-input gates ?
c
z
b
a
a
y
b
d
43
How about 2-input gates ?
0
c
0
z
b
a
a
y
b
d
44
How about 2-input gates ?
c
z
b
a
a
y
b
d
45
How about 2-input gates ?
c
z
y
d
46
Strategy for correct logic decomposition
  • Each decomposition defines a new internal signal
    of the circuit
  • Method Insert new internal signals such that
  • After resynthesis,some large gates are
    decomposed
  • The new specification is hazard-free under
    unbounded gate delays

47
Decomposition example
48
(No Transcript)
49
y-
s
50
s1
y-
s-
s-
s-
s
s0
51
(No Transcript)
52
s1
y-
y-
1001
1011
s-
w
1001
z-
0011
1000
z-
w-
w
y
x-
1010
y
x
x-
0111
s
s0
z
z
0111
z- is delayed by the new transition s- !
53
(No Transcript)
54
Signal insertion for function F
Insertion by input borders
State Graph
55
Event insertion
56
Properties to preserve
a is persistent
57
Interactive design flow
Reachability analysis
Transformations Synthesis
58
Theory of regions(Ehrenfeucht 90, Nielsen 92)
59
Synthesis of Petri Nets
60
Excitation closure
a
61
Label splitting
a
d
b
a
d
b
b
d
c
c
d
b
c
d
b
b
62
Formal verification
  • Implementability properties
  • Consistency, persistency, state coding
  • Behavioral properties (safeness, liveness)
  • Mutual exclusion, ack after req,
  • Equivalence checking
  • Circuit ? Specification
  • Circuit lt Specification

63
Property verification consistency
Specification
64
Correctness environment ? circuit
Circuit
Failure circuit produces an event unexpected
(not enabled)by the environment
Environment
65
Fighting the state explosion
  • Symbolic methods (BDDs)
  • Partial order reductions
  • Petri net unfoldings
  • Structural theory (invariants)

66
Fighting with state explosion
67
Representing Markings
p2 p3 p5 1
p0 p1 p4 p5 1
68
Summary
  • Asynchronous design is applicable to
  • asynchronous interfaces
  • high-performance computing
  • low-power design
  • low-emission design
  • There is an increased interest of few, but large
    scale companies Intel, Philips, Sun, Sharp, ARM,
    HP, Cogency

69
Summary (continued)
  • Asynchronous circuits are more difficult to
    design than synchronous
  • Formal models and CAD support are essential
  • Petri nets have been one of the most successful
    formalisms for modeling asynchronous circuits
  • Most steps of the design process covered by this
    tutorial are supported by the tool Petrify
Write a Comment
User Comments (0)
About PowerShow.com