Professional Documents
Culture Documents
Timing Optimization
2
Timing Optimization
4
Current Design Process
Behavioral description
Behavior
Optimization
(scheduling)
Logic and latches
Partitioning
(retiming)
Logic equations
Logic synthesis
•Technology independent
•Gate library •Technology mapping
•Perf. Constraints Gate netlist
•Delay models
Timing driven
place and route
Layout 5
Technology Mapping for Delay
Function
tree
Buffer
tree
6
Overview of Solutions for Delay
• Circuit re-structuring
– Rescheduling operations to reduce time of computation
• Implementation of function trees (technology mapping)
– Selection of gates from library
• Minimum delay (load independent model - Kukimoto)
• Minimize delay and area (Jongeneel, DAC’00)
(combines Lehman-Watanabe and Kukimoto)
• Implementation of buffer trees
– Touati (LT-trees)
– Singh
• Resizing
Approaches:
Local:
• Mimic optimization techniques in adders
– Carry lookahead (THR tree height reduction)
– Conditional sum (GST transformation)
– Carry bypass (GBX transformation)
Global:
• Reduce depth of entire circuit
– Partial collapsing
– Boolean simplification
8
Restructuring Methods
Performance measured by
• levels,
• sensitizable paths,
• technology dependent delays
• Level based optimizations:
– Tree height reduction (Singh ‘88)
– Partial collapsing and simplification (Touati ‘91)
– Generalized select transform (Berman ‘90)
• Sensitizable paths
– Generalized bypass transform (McGeer ‘91)
9
Tree-Height Reduction (THR)
Singh’88:
6 Collapsed 5
n Critical Critical region
5 5 Duplicated
region n’ logic
l m 1 m
1 1 1
4 k 1 2 4 k
i j 0 0
3 i j
3
h h
0 0 0 0 2 0 0 0 0
0 0 0 2 0
a b c d e f g a b c d e f g
10
Tree-Height Reduction
4 New delay = 5
n’
3
Collapsed 5 5
Critical region 2
Duplicated
n’ logic 1
m m
1 1 1 1
1 2 4 k 1 2 4
0 0 0 k
i j i j
3 3
0
h h
0 0 0 0 2 0 0 0 0 0 0 2 0 0
a b c d e f g a b c d e f g
11
Generalized bypass transform (GBX)
McGeer’91: • Make critical path false
– Speed up the circuit
• Bypass logic of critical path(s)
fm =f fm+1 … fn=g 0
g’
1
Delay is not
f’m+1 f’m+2 … f’m+k increased
a=0
b 0
out
c d e f g
a=1
1
b
c d e f g a 15
a c
g
h
GST vs GBX
… 0
g’
b 1
a GBX
dh a c
GBX g
__
da … 0 h
g’
b 1
Note: a
Boolean a=0
difference = b
c d e f g
h a=1
ha h a b
a
c d e f g
a=0
b 0 out
GST
a=1 c d e f g 1
b
16
c d e f g a
GST vs GBX
• Select transform appears to be more area efficient
• But Boolean difference generally more efficiently formed in
practice
• No delay/speedup advantage for either transform
• Can reuse parts of the critical paths for multiple fanouts on GST
0 out2
GST
1
a=0 0 out1
b c d e f g 1
a=1
b c d e f g a
17
Technology Independent Delay Reductions
Generally THR, GBX, GST (critical path based methods) work OK,
– but very greedy and computationally expensive
18
Conclusions
• Variety of methods for delay optimization
– No single technique dominates
– When applied to ripple-carry adder get
– Carry-lookahead adder (THR)
– Carry-bypass adder (GBX)
– Carry-select adder (GST)
– Clustering/Partial collapse
• All techniques ignore false paths when assessing the delay and
critical regions
– Can use KMS transform to eliminate false paths without
increasing delay (Caveat: potentially large increase in area)
19