Logic Synthesis and Optimization Guide
Logic Synthesis and Optimization Guide
․Course contents
Synthesis overview
RTL synthesis
Logic optimization
Technology mapping
Timing optimization
Synthesis for low power
․Readings
Chapter 11
Giovanni De Micheli, “Synthesis and Optimization of
Digital Circuits”, McGraw-Hill, Inc., 1994.
Related papers
Unit 3
1
Chang, Huang, Li, Lin, Liu
HDL Synthesis
․Logic synthesis programs transform Boolean
expressions or register-transfer level (RTL) description
(in Verilog/VHDL/C) into logic gate networks (netlist)
in a particular library.
․Advantages
Reduce time to generate netlists
Easier to retarget designs from one technology to
another
Reduce debugging effort
․Requirement
Robust HDL synthesizers
Unit 3
2
Chang, Huang, Li, Lin, Liu
Synthesis Procedure
Domain Optimization
translation (area, timing, power...)
+
--VHDL //Verilog
if(A=‘1’) then if(A==1)
Y<=C + D; Y=C + D;
elseif (B=‘1’) then else if(B==1)
Y<=C or D; Y=C | D;
else Y<=C; else Y=C;
endif
RTL
Behavioral domain synthesis
Structural domain
Unit 3
3
Chang, Huang, Li, Lin, Liu
Domain Translation
x = y op z Combinational
Circuit
Generation Initial
Input HDL 3-address optimization
Structural
Description Code (area, timing …)
Netlist
Special Element
Inferences
Unit 3
4
Chang, Huang, Li, Lin, Liu
Optimization
․Technology-independent optimization: logic
optimization
Work on Boolean expression equivalent
Estimate size based on # of literals
Use simple delay models
․Technology-dependent optimization: technology
mapping/library binding
Map Boolean expressions into a particular cell library
May perform some optimizations in addition to simple mapping
Use more accurate delay models based on cell structures
Unit 3
5
Chang, Huang, Li, Lin, Liu
Unit 3
8
Chang, Huang, Li, Lin, Liu
Timing Optimization
․There is always a trade-off between area and delay
․Optimize timing to meet delay spec. with minimum area
output meets
delay spec
Area start with
area-optimized
delay spec
Delay
Unit 3
9
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
10
Chang, Huang, Li, Lin, Liu
Typical Domain Translation Flow
Combinational Initial
3-address Special Element
Circuit Structure
Code Inferences
Generation Netlist
Unit 3
11
Chang, Huang, Li, Lin, Liu
Unit 3
12
Chang, Huang, Li, Lin, Liu
Functional Unit Allocation
․3-address code
x = y op z in general form
Function unit op with inputs y and z and output x
c s
x=c+d+e; t=c+d; + t
d
if(a==b) x= e-f; x=t+e; t
y=x; s = (a==b); + x x 0 M
e
if(s) x= e-f; U x
a
== s x 1 X
3-address code y=x; b
e
- x
f
Implicit multiplexer
x y
Unit 3
13
Chang, Huang, Li, Lin, Liu
Interconnection Binding
Unit 3
14
Chang, Huang, Li, Lin, Liu
Control/Data Flow Analysis
․Terminology
A definition of a variable x
An assignment assigns a value to the variable x
Unit 3
17
Chang, Huang, Li, Lin, Liu
Unit 3
18
Chang, Huang, Li, Lin, Liu
Preliminaries
․Sequential section
Edge triggered always statement
․Combinational section
All signals whose values are used in the always statement are
included in the sensitivity list
reg Q; reg Q;
always@(posedge clk) always@(in or en)
Q = D; if(en) Q=in;
Sequential section Combinational section
Conduct flip-flop inference Conduct latch inference
Unit 3
19
Chang, Huang, Li, Lin, Liu
always@(D or S) always@(S or A or B)
if(S) Q = D; begin
Infer latch Q = A; Do not infer
for Q if(S) Q = B; latch for Q
end
Unit 3
20
Chang, Huang, Li, Lin, Liu
Terminology (1/2)
․Conditional assignment
․Selector: S
․Input: D
․Output: Q
Selector
if (S)
Conditional
Q = D; assignment
Output
Input
Unit 3
21
Chang, Huang, Li, Lin, Liu
Terminology (2/2)
Q=b
Q=a
if(s) Q=a; Q=a
Q has no branch for the Q has a branch for the
false value of the selector s false value of the selector s
Unit 3
22
Chang, Huang, Li, Lin, Liu
Rules of Latch Inference (1/2)
Unit 3
23
Chang, Huang, Li, Lin, Liu
always@(s or z or y or a)
begin z=y; y depends on its
z = y; if(s) previous value
if(s) y=a; at this branch via
else y=z; y=a; y=z; the assignment z=y;
end
Unit 3
24
Chang, Huang, Li, Lin, Liu
Terminology
Unit 3
25
Chang, Huang, Li, Lin, Liu
y
/* d1 */ x = a; y
b z 0
/* d2 */ if ( s ) y = x;
/* d3 */ else y = z;
/* d4 */ z = b; s
/* d5 */ w = 1'b1; 1 w
w
end used before defined
connected to output of z
Unit 3
26
Chang, Huang, Li, Lin, Liu
Infer FF for Simple Clocked Statements (2/2)
․Two post-processes
Propagating constants
Removing the flip-flops without fanouts
a a
X
1 1
MUX
MUX
y y
y y
b z 0 b z 0
s s
1 w 1 w
w
Unit 3
27
Chang, Huang, Li, Lin, Liu
reg Q; En reg Q; En
always @ (En or D) always @ (posedge clk)
if(En) Q = D; D Q
if(En) Q = D; D Q
else Q = 1'bz; else Q = 1'bz;
Unit 3
29
Chang, Huang, Li, Lin, Liu
Unit 3
30
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
31
Chang, Huang, Li, Lin, Liu
F = XY + YZ
Unit 3
33
Chang, Huang, Li, Lin, Liu
Unit 3
34
Chang, Huang, Li, Lin, Liu
Implicant and Cover
․An implicant is a cube whose points are either in the
on-set or the dc-set.
․A prime implicant is an implicant that is not included in
any other implicant.
․A set of prime implicants that together cover all points
in the on-set (and some or all points of the dc-set) is
called a prime cover.
․A prime cover is irredundant when none of its prime
implicants can be removed from the cover.
․An irredundant prime cover is minimal when the cover
has the minimal number of prime implicants.
Unit 3
35
Chang, Huang, Li, Lin, Liu
Cover Examples
․f = x1 x3 + x2 x3 + x1 x2
․f = x1 x2 + x2 x3 + x1 x3
Unit 3
36
Chang, Huang, Li, Lin, Liu
The Quine-McCluskey Algorithm
․Theorem:[Quine,McCluskey] There exists a minimum
cover for F that is prime
Need to look just at primes (reduces the search space)
․Classical methods: two-step process
1. Generation of all prime implicants (of the union of the on-set
and dc-set)
2. Extraction of a minimum cover (covering problem)
․Exponential-time exact algorithm, huge amounts of
memory!
․Other methods do not first enumerate all prime
implicants; they use an implicit representation by
means of ROBDDs.
Unit 3
37
Chang, Huang, Li, Lin, Liu
ab a
cd 00 01 11 10
00 X 1 0 1
01 0 1 1 1
d
11 0 X X 0
c
10 0 1 0 1
Unit 3
38
Chang, Huang, Li, Lin, Liu
Primary Implicant Generation (2/5)
Implication Table
Column I
0100
one “1”
1000
0101
0110
two “1”
1001
1010
0111
three “1”
1101
Unit 3
39
Chang, Huang, Li, Lin, Liu
1111 | -111
11-1
Unit 3
40
Chang, Huang, Li, Lin, Liu
Primary Implicant Generation (4/5)
Implication Table
Column I Column II Column III
0000 | 0-00 * 01-- *
-000 *
0100 | -1-1 *
1000 | 010- |
01-0 |
0101 | 100- *
0110 | 10-0 *
1001 |
1010 | 01-1 |
-101 |
0111 | 011- |
1101 | 1-01 *
1111 | -111 |
11-1 |
Unit 3
41
Chang, Huang, Li, Lin, Liu
ab a
cd 00 01 11 10
00 X 1 0 1 Prime Implicants:
0-00 = a'c'd'
100- = ab'c'
01 0 1 1 1 1-01 = ac'd
d -1-1 = bd
11 0 X X 0 -000 = b'c'd'
c 10-0 = ab'd'
01-- = a'b
10 0 1 0 1
Unit 3
42
Chang, Huang, Li, Lin, Liu
Column Covering (1/4)
4 5 6 8 9 10 13
0,4 (0-00)
0,8 (-000)
8,9 (100-)
8,10 (10-0)
9,13 (1-01)
4,5,6,7 (01- -)
5,7,13,15 (-1-1)
0,4 (0-00)
0,8 (-000)
8,9 (100-)
8,10 (10-0)
9,13 (1-01)
4,5,6,7 (01- -)
5,7,13,15 (-1-1)
0,4 (0-00)
0,8 (-000)
8,9 (100-)
8,10 (10-0)
9,13 (1-01)
4,5,6,7 (01- -)
5,7,13,15 (-1-1)
Unit 3
45
Chang, Huang, Li, Lin, Liu
0,4 (0-00)
0,8 (-000)
8,9 (100-)
8,10 (10-0)
9,13 (1-01)
4,5,6,7 (01- -)
5,7,13,15 (-1-1)
P1 0,4 (0-00)
P2 0,8 (-000)
P3 8,9 (100-)
P4 8,10 (10-0)
P5 9,13 (1-01)
P6 4,5,6,7 (01- -)
P7 5,7,13,15 (-1-1)
Unit 3
48
Chang, Huang, Li, Lin, Liu
Brute Force Technique
․Brute force technique: Consider all possible elements
P1
in out
P2 P2
in out in out
P3 P3 P3 P3
in out in out
r r
Bound = 4
a b a b
x y w z x y w z Killed subtree
5 4 9 8
(a) (b)
Unit 3
50
Chang, Huang, Li, Lin, Liu
Heuristic Optimization
․Generation of all prime implicants is impractical
The number of prime implicants for functions with n variables is in
n
the order of 3 /n
․Finding an exact minimum cover is NP-hard
Cannot be finished in polynomial time
․Heuristic method: avoid generation of all prime implicants
․Procedure
A minterm of ON(f) is selected, and expanded until it becomes a
prime implicant
The prime implicant is put in the final cover, and all minterms
covered by this prime implicant are removed
Iterated until all minterms of the ON(f) are covered
․“ESPRESSO” developed by UC Berkeley
The kernel of synthesis tools
Unit 3
51
Chang, Huang, Li, Lin, Liu
ESPRESSO - Illustrated
REDUCE
EXPAND
IRREDUNDANT
Unit 3
52
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
53
Chang, Huang, Li, Lin, Liu
Unit 3
54
Chang, Huang, Li, Lin, Liu
Multi-Level Logic
․Multi-level logic:
A set of logic equations with no cyclic dependencies
․Example: Z = (AB + C)(D + E + FG) + H
4-level, 6 gates, 13 gate inputs
Z=(AB + C) (D + E + FG) + H A B F G
2 2
Level 4
C D E
3
2 Level 3
2
Level 2
H
2 Level 1
Z
Unit 3
55
Chang, Huang, Li, Lin, Liu
Boolean Network
․Directed acyclic graph (DAG)
․Each source node is a primary input
․Each sink node is a primary output
․Each internal node represents an equation
․Arcs represent variable dependencies
F x y G
Y X
fanin of y : a, b
fanout of x : F a b d c
Unit 3
56
Chang, Huang, Li, Lin, Liu
Boolean Network : An Example
x1
x2 y1 y4 z1
x3
y3
x4
y2 y5 z2
x5
x6
y1 = f1(x2, x3) = x2’ + x3’
y2 = f2(x4, x5) = x4’ + x5’
y3 = f3(x4, y1) = x4’y1’
y4 = f4(x1, y3) = x1 + y3’
y5 = f5(x6, y2, y3) = x6y2 + x6’y3’
Unit 3
57
Chang, Huang, Li, Lin, Liu
Unit 3
58
Chang, Huang, Li, Lin, Liu
Multi-Level Logic Optimization
․Technology independent
․Decomposition/Restructuring
Algebraic
Functional
․Node optimization
Two-level logic optimization techniques are used
Unit 3
59
Chang, Huang, Li, Lin, Liu
Decomposition / Restructuring
․Goal : given initial network, find best network
․Two problems:
Find good common subfunctions
․Example:
f1 = abcd + abce + ab’cd’ + ab’c’d’ + a’c + cdf + abc’d’e’ + ab’c’df’
f2 = bdg + b’dfg + b’d’g + bd’eg
minimize (in sum-of-products form):
f1 = bcd + bce + b’d’ + b’f + a’c + abc’d’e’ + ab’c’df’
f2 = bdg + dfg + b’d’g + d’eg
decompose:
f1 = c(a’ + x) + ac’x’ x = d(b + d) + d’(b’ + e)
f2 = gx
Unit 3
60
Chang, Huang, Li, Lin, Liu
Basic Operations (1/2)
1. decomposition 2. extraction
(single function) (multiple functions)
f = abc + abd + (ac)’d’ + f = (az + bz’)cd + e
b’c’d’ g = (az + bz’)e’
h = cde
f = xy + (xy)’ f = xy + e
x = ab g = xe’
y=c+d h = ye
x = az + bz’
y = cd
Unit 3
61
Chang, Huang, Li, Lin, Liu
f = (a + b)(c + d) + e f = ac + ad + bc’d’
g=c+d
4. substitution
(with complement)
g=a+b
f = a + bc + b’c’ “Division” plays
a key role !!
f = g(a + c) + g’c’
Unit 3
62
Chang, Huang, Li, Lin, Liu
Division
Unit 3
63
Chang, Huang, Li, Lin, Liu
Weak_div(f, p):
U = Set {uj} of cubes in f with literals not in p deleted
V = Set {vj} of cubes in f with literals in p deleted
/* note that ujvj is the j-th cube of f */
V i = {vj V : uj = pi}
q = V i
r = f - pq
return(q, r)
Unit 3
64
Chang, Huang, Li, Lin, Liu
Weak Division Algorithm (2/2)
․Example
common f = acg + adg + ae + bc + bd + be + a’b
expressions p = ag + b
U = ag + ag + a + b + b + b + b
V = c + d + e + c + d + e + a’
Vag = c + d
Vb = c + d + e + a’
q = c + d = f/p
Unit 3
65
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
66
Chang, Huang, Li, Lin, Liu
Technology Mapping
․General approach:
Choose base function set for canonical representation
Ex: 2-input NAND and Inverter
Represent optimized network using base functions
Subject graph
Represent library cells using base functions
Pattern graph
Each pattern associated with a cost which is dependent on the
optimization criteria
․Goal:
Finding a minimal cost covering of a subject graph using
pattern graphs
Unit 3
67
Chang, Huang, Li, Lin, Liu
Unit 3
68
Chang, Huang, Li, Lin, Liu
Example Pattern Graph (2/3)
oai22 (4)
aoi22 (4)
Unit 3
69
Chang, Huang, Li, Lin, Liu
Unit 3
70
Chang, Huang, Li, Lin, Liu
Example Subject Graph
t1 = d + e;
t2 = b + h;
t3 = a t2 + c;
t4 = t1 t3 + f g h;
F = t4’;
f
g
d
e F
h
b
a
c
Unit 3
71
Chang, Huang, Li, Lin, Liu
AND2
f
g
AOI22
OR2
d
e F
OR2
h
b NAND2
a
c Area = 18
NAND2
INV
Unit 3
72
Chang, Huang, Li, Lin, Liu
Sample Covers (2/2)
NAND3
f
g
AND2
d
e F
h
OAI21
b
OAI21
a
c Area = 15
NAND2
INV
Unit 3
73
Chang, Huang, Li, Lin, Liu
DAGON Approach
․Partition a subject graph into trees
Cut the graph at all multiple fanout points
I1 Match: area = m
I2
I3
I4
root
A Library Example
INV 2 a’
NAND2 3 (ab)’
NAND3 4 (abc)’
NAND4 5 (abcd)’
AOI21 4 (ab+c)’
AOI22 5 (ab+cd)’
NAND2(3)
NAND2(8)
NAND2(21)
INV(2) INV(15) NAND2(16) NAND3(17)
NAND2(13) AOI21(9) NAND3(18) NAND4(19)
INV(2)
AOI21(22)
NAND2(3) INV(5) NAND2(8) INV(18)
NAND3(4)
Unit 3
77
Chang, Huang, Li, Lin, Liu
Features of DAGON
․Pros. of DAGON:
Strong algorithmic foundation
Linear time complexity
Efficient approximation to graph-covering problem
Given locally optimal matches in terms of both area and delay
cost functions
Easily “portable” to new technologies
․Cons. Of DAGON:
With only a local (to the tree) notion of timing
Taking load values into account can improve the results
Can destroy structures of optimized networks
Not desirable for well-structured circuits
Inability to handle non-tree library elements (XOR/XNOR)
Poor inverter allocation
Unit 3
78
Chang, Huang, Li, Lin, Liu
Inverter Allocation
2 INV
2 NOR2
1 AIO21
Unit 3
79
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
80
Chang, Huang, Li, Lin, Liu
Delay Model at Logic Level
Unit 3
81
Chang, Huang, Li, Lin, Liu
B D
A
C
Transition (ns)
Input
0.2 0.3 0.4 0.5
0 3 4.5 6 7
0.4fF
6.0 0.1 5 8 10.7 13
Unit 3
84
Chang, Huang, Li, Lin, Liu
Delay Graph
․Replace logic gates with delay blocks
․Add start (S) and end (E) blocks
․Indicate signal flow with directed arcs
B
C 1
S E
D 2
E
Unit 3
85
Chang, Huang, Li, Lin, Liu
Update Successors[u]
7 SP[v] u fi
Unit 3
86
Chang, Huang, Li, Lin, Liu
Delay Graph and Topological Sort
1 2 3 4
S 5 6 7 8
E
9 10
S 1 5 9 2 6 3 7 10 4 8 E
Unit 3
87
Chang, Huang, Li, Lin, Liu
Delay Calculation
A=0 A=3 A=7 A=8
1 2 3 4
2 4 1 3
a=0 a=2 a=6 a=7
A=2 A=4
9 10
1 4
a=0 a=1
A=3 longest path delay
2 node number
4 gate delay P.S: The longest delay and shortest delay
of each gate are assumed to be the same.
a=2 shortest path delay
Unit 3
88
Chang, Huang, Li, Lin, Liu
Restructuring Algorithm
Unit 3
89
Chang, Huang, Li, Lin, Liu
Restructuring Regions
․All nodes with slack within of the most critical signal
belong to the -network
․To improve circuit delay, necessary and sufficient to
improve delay at nodes on cut-set of -network
1 6 5
n
5
l m
4 1
i j k
3
0 0 0 0 2 0 0
a b c d e f g
Unit 3
90
Chang, Huang, Li, Lin, Liu
Find the Cutset
․The weight of each node is W = Wxt + * Wxa
Wxt is potential for speedup
Wxa is area penalty for duplication of logic
is decided by various area/delay tradeoff
․Apply the maxflow-mincut algorithm to generate the
cutset of the -network
․: Specify the size of the -network
Large might waste area without much reduction in critical
delay
Small might slow down the algorithm
․: Control the tradeoff between area and speed
Large avoids the duplication of logic
= 0 implies a speedup irrespective of the increase in area
Unit 3
91
Chang, Huang, Li, Lin, Liu
Unit 3
92
Chang, Huang, Li, Lin, Liu
Timing Optimization Techniques (2/8)
․Buffer insertion: divide the fanouts of a gate into
critical and non-critical parts and drive the non-critical
fanouts with a buffer
timing is improved
due to less loading
more
critical less
critical
Unit 3
93
Chang, Huang, Li, Lin, Liu
Unit 3
94
Chang, Huang, Li, Lin, Liu
Timing Optimization Techniques (4/8)
․Critical path collapsing: reduce the depth of logic
networks
AB
A
B
A
Unit 3
95
Chang, Huang, Li, Lin, Liu
D=3 3.0 g d
e c d
D = 4.5 1.5 1.5 e c D = 1.5
a d
b c
a b a b
0.0 0.0 1.0 2.0
0.0 0.01.0 2.0 0.0 0.0 1.0 2.0
e = ab
e = ab g = ce
f = abcd f = ecd f = dg
Unit 3
96
Chang, Huang, Li, Lin, Liu
Timing Optimization Techniques (6/8)
․De Morgan: replace a gate with its dual, and reverse
the polarity of inputs and output
NAND gate is typically faster than NOR gate
Unit 3
97
Chang, Huang, Li, Lin, Liu
Unit 3
98
Chang, Huang, Li, Lin, Liu
Timing Optimization Techniques (8/8)
․Down power: reducing gate size of a non-critical fanout
in the critical path
not
critical
H
critical
Unit 3
99
Chang, Huang, Li, Lin, Liu
Outline
․Synthesis overview
․RTL synthesis
Combinational circuit generation
Special element inferences
․Logic optimization
Two-level logic optimization
Multi-level logic optimization
․Technology mapping
․Timing optimization
․Synthesis for low power
Unit 3
100
Chang, Huang, Li, Lin, Liu
Power Dissipation
․Leakage power
Static dissipation due to leakage current
Typically a smaller value compared to other power dissipation
Getting larger and larger in deep-submicron process
․Short-circuit power
Due to the short-circuit current when both PMOS and NMOS
are open during transition
Typically a smaller value compared to dynamic power
․Dynamic power VDD
Charge and discharge of a load capacitor
Usually the major part of total
power consumption Vin Vout
GND
Unit 3
101
Chang, Huang, Li, Lin, Liu
1
P C Vdd2 D
2
․Typically, dynamic power is used to represent total
power dissipation
P: the power dissipation for a gate
C: the load capacitance
Vdd: the supply voltage
D: the transition density
․To obtain the power dissipation of the circuit, we need
The node capacitance of each node (obtained from layout)
The transition density of each node (obtained by computation)
Unit 3
102
Chang, Huang, Li, Lin, Liu
The Signal Probability
Unit 3
103
Chang, Huang, Li, Lin, Liu
Transition Density
Unit 3
104
Chang, Huang, Li, Lin, Liu
Signal Probability and Transition Density
Clock
Signal a Pa = 0.5 Da = 1
Pb = 0.5 Db = 0.5
Signal b
Unit 3
105
Chang, Huang, Li, Lin, Liu
:1 1 0
Unit 3
106
Chang, Huang, Li, Lin, Liu
The Calculation of Transition Density
․Transition density of cube
f = ab
Df = Da Pb + Db Pa - 1/2 Da Db
DaPb means that output will change when b=1 and a has changes
1/2 DaDb is the duplicate part when both a and b changes
․n-input AND :
a network of 2 -input AND gate in zero delay model
3-input AND gate
a
Dg = Df Pc + Dc Pf - 1/2 Df Dc
b f
․Inaccuracy of this simple model :
Temporal relations g
Spatial relations
c
Unit 3
107
Chang, Huang, Li, Lin, Liu
2,
0,1
P = 1-0.5 = 0.5
(a) Without considering Spatial Correlation
P = 0.5 P=0
P = 1-0.5 = 0.5
(b) Practical condition
Unit 3
109
Chang, Huang, Li, Lin, Liu
․Consider an example:
a c
f f
b b
c a
ab 00 01 11 10 ab 00 01 11 10
c c
0 1 1 1 0 1 1 1
1 1 1 1 1 1 1 1
timing
tradeoff !!
area power
Unit 3
111
Chang, Huang, Li, Lin, Liu
AOI33
a INV
b
c G1
out
G3
d
e G2
f
Unit 3
113
Chang, Huang, Li, Lin, Liu
NAND3
a
b NAND2 WIRE
c G1
out
G3
d
e G2
f
NAND3
Area Cost: 5104
Power Cost: 0.0803
(b) Minimun-Power Mapping
Unit 3
114
Chang, Huang, Li, Lin, Liu