Title: Introduction to asynchronous circuit design: specification and synthesis
1Introduction toasynchronous circuit design
specification and synthesis
- Part II
- Synthesis of control circuitsfrom STGs
2Outline
- Overview of the synthesis flow
- Specification
- State graph and next-state functions
- State encoding
- Implementability conditions
- Speed-independent circuit
- Complex gates
- C-element architecture
3Design flow
4x
x
y
y
z
z
x-
z
x
y
z-
y-
Signal Transition Graph (STG)
5(No Transcript)
6(No Transcript)
7Next-state functions
8x
y
z
9Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
10VME bus
11STG for the READ cycle
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
D
LDS
DSr
VME Bus Controller
LDTACK
DTACK
12Choice Read and Write cycles
13Choice Read and Write cycles
14Choice Read and Write cycles
15Choice Read and Write cycles
16Circuit synthesis
- Goal
- Derive a hazard-free circuitunder a given delay
model andmode of operation
17Speed independence
- Delay model
- Unbounded gate / environment delays
- Certain wire delays shorter than certain paths in
the circuit - Conditions for implementability
- Consistency
- Complete State Coding
- Persistency
18Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
19STG for the READ cycle
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
D
LDS
DSr
VME Bus Controller
LDTACK
DTACK
20Binary encoding of signals
DSr
DTACK-
LDS
LDTACK-
LDTACK-
LDTACK-
DSr
DTACK-
LDS-
LDS-
LDS-
LDTACK
DSr
DTACK-
D
D-
DSr-
DTACK
21Binary 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)
22Excitation / Quiescent Regions
23Next-state function
0 ? 1
0 ? 0
1 ? 1
1 ? 0
24Karnaugh map for LDS
LDS 1
LDS 0
-
-
-
0
1
-
0
1
-
-
-
-
-
-
-
-
1
1
1
-
-
-
-
-
0
0
0
0
0
0/1?
-
-
25Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
26Concurrency reduction
LDS
LDS-
LDS-
LDS-
10110
10110
27Concurrency reduction
DTACK-
DSr
LDS
LDTACK
D
DTACK
DSr-
D-
LDS-
LDTACK-
28State encoding conflicts
LDS
LDTACK-
LDS-
LDTACK
10110
10110
29Signal Insertion
LDTACK-
LDS
LDS-
LDTACK
101101
101100
D-
DSr-
30Specification(STG)
Reachability analysis
State Graph
State encoding
SG withCSC
Design flow
Boolean minimization
Next-state functions
Logic decomposition
Decomposed functions
Technology mapping
Gate netlist
31Complex-gate implementation
32Implementability conditions
- Consistency
- Rising and falling transitions of each signal
alternate in any trace - Complete state coding (CSC)
- Next-state functions correctly defined
- Persistency
- No event can be disabled by another event (unless
they are both inputs)
33Implementability conditions
- Consistency CSC persistency
- There exists a speed-independent circuit that
implements the behavior of the STG(under the
assumption that ay Boolean function can be
implemented with one complex gate)
34Persistency
a
c
b
is this a pulse ?
Speed independence ? glitch-free output behavior
under any delay
35(No Transcript)
36ER(d)
ER(d-)
37ab
cd
00
01
11
10
0
0
0
0
00
1
0
01
1
1
1
1
11
1
10
Complex gate
38Implementation with C elements
? S ? z ? S- ? R ? z- ? R- ?
- S (set) and R (reset) must be mutually exclusive
- S must cover ER(z) and must not intersect
ER(z-) ? QR(z-) - R must cover ER(z-) and must not intersect
ER(z) ? QR(z)
39ab
cd
00
01
11
10
0
0
0
0
00
1
0
01
1
1
1
1
11
1
10
S
d
C
R
40but ...
S
d
C
R
41Starting from state 0000 (R1 and S0)
a R- b a- c S d
S
d
C
R
42ab
cd
00
01
11
10
0
0
0
0
00
1
0
01
1
1
1
1
11
1
10
Monotonic covers
43C-based implementations
c
d
C
b
a
c
weak
c
d
weak
d
a
a
b
generalized C elements (gC)
44Speed-independent implementations
- Implementability conditions
- Consistency
- Complete state coding
- Persistency
- Circuit architectures
- Complex (hazard-free) gates
- C elements with monotonic covers
- ...
45Synthesis exercise
1011
0011
0111
Derive circuits for signals x and z (complex
gates and monotonic covers)
46Synthesis exercise
1011
wx
yz
00
01
11
10
-
1
1
0
00
0011
-
1
1
0
01
-
0
0
0
11
-
1
1
0
10
0111
Signal x
47Synthesis exercise
1011
wx
yz
00
01
11
10
-
0
0
0
00
0011
-
0
0
0
01
-
1
1
1
11
-
1
0
0
10
0111
Signal z