Date post: | 19-Dec-2015 |
Category: |
Documents |
View: | 218 times |
Download: | 0 times |
Fuzzy Simulated Evolution for Power and Performance of VLSI Placement
Sadiq M. Sait Habib YoussefJunaid A. Khan Aimane El-Maleh
Department of Computer EngineeringKing Fahd University of Petroleum and
MineralsDhahran, Saudi Arabia
2
Presentation Overview Introduction Problem statement and cost functions Proposed scheme Experiments and Results Conclusion
3
Introduction
A Fuzzy Evolutionary Algorithm for VLSI placement is presented. Standard Cell Placement is:
A hard multi-objective combinatorial optimization problem. With no known exact and efficient algorithm that can guarantee a
solution of specific or desirable quality. Simulated Evolution is used to perform intelligent search towards better
solution. Due to imprecise nature of design. information, objectives and constraints are
expressed in fuzzy domain. New Fuzzy Operators are proposed. The proposed algorithm is compared with Genetic Algorithm.
Problem Statement & Cost Functions
5
Problem Statement Given
A set of modules M = {m1,m2,m3,… mn}
A set of signals V = {v1, v2, v3,… vk}
A set of Signals Vi V, associated with each module mi M
A set of modules Mj = {mi|vj Vi}, associated with each signal vj V
A set of locations L = {L1, L2, L3…Lp}, where p n
Objectives The objective of the problem is
to assign each mi M a unique location Lj, such that
Power is optimized Delay is optimized Wire length is optimized Within accepted layout
Width (Constraint)
6
Cost Functions Wire length Estimation
Whereli …… is the estimate of
actual length of signal net vi,computed using median Steiner tree technique
Power Estimation
Where:Si …… Switching probability of
module mi
Ci …… Load Capacitance of module mi
VDD … Supply Voltagef …… Operating frequency …… Technology dependent
constant
Mi
iwire lCost
iDD
Mii SfVCP 2
t 2
1
7
Cost Functions Power Estimation
(contd.) Also
Where
Cir …… Interconnect capacitance at
the output node of cell i.
Cjg …… Input capacitance of cell j.
In standard cell placement VDD, f, , and Cj
g are constant and power dissipation depends only on Si and Ci
r which is proportional to wire-length of the net vi. Therefore the cost due to power can be written as:
iMj
gj
rii CCC
Mi
iipower lSCost
8
Cost Functions
Delay Estimation We have a set of
critical paths {1, 2, 3……k}
{vi1, vi2, vi3…… viq} is the set of signal nets traversing path i.
Ti is the delay of path i computed as:
WhereCDi …… is the delay due to the cell driving signal net vi.
IDi …… is the interconnect delay of signal net vi.
Now
q
iiii IDCDT
1
)(
}......4,3,2,1{).....max( kiTCost idelay
9
Cost Functions Width Constraint
WhereWidthmax … is the max.
allowable width of layoutWidthopt … is the optimal width
of layout
a …… denotes how wide layout we can have as compared to its optimal value.optWidthaWidth )1(max
10
Fuzzy Cost Measure Set of solutions is generated by
SE. Best solution is one, which
performs better in terms of all objectives and satisfies the constraint.
Due to multi-objective nature of this NP hard problem fuzzy logic (fuzzy goal based computation) is employed in modeling the single aggregating function.
Range of acceptable solution set
11
Fuzzy Cost Measure Fuzzy Operators
used And-like operators
Min operator
= min(1, 2) And-like OWA
= x min(1, 2)
+ ½ (1-)(1+ 2) Fuzzy Controlled And
Operator (FCAO)
= 1- (1/ 2 + 2
/2)/(1/ + 2
/ )
Or-like operators Max operator
= max(1, 2) Or-like OWA
= x max(1, 2)
+ ½ (1- )(1+ 2) Fuzzy Controlled OR
Operator (FCOO)
= (1 2 + 2
2)/(1 + 2)
12
Fuzzy Cost Measure Following fuzzy rule is
suggested in order to combine all objectives and constraint
IF a solution is within acceptable wire-length AND acceptable power AND acceptable delay AND within acceptable layout width
THEN it is an acceptable solution
cl
cd
cp
cl
cd
cp
pdlc x
222
1)(
))(),(min()( xxx widthc
pdlcc
13
Fuzzy Cost Measure
cwidth
1.0
gwidthCwidth/Owidth
Oi …… optimal costsCi …… actual costs
Shape of membership functions
Proposed Scheme
15
SE AlgorithmALGORITHM SimE(M,L)/* M: Set of moveable elements *//* L: Set of locations *//* B: Selection bias */INITIALIZAION:Repeat
EVALUATION: For Each m M
compute(gm) End For EachSELECTION: For Each m M
If Selection(m,B) ThenPs = Ps U {m}
Else Pr = Pr U {m}End If
End For Each
Sort the elements of Ps;
ALLOCATION:
For Each m Ps
Allocation(m) End For Each
Until Stopping criteria are metReturn (Best Solution)End SimE
16
Proposed Fuzzy goodness evaluation
IF cell i isnear its optimal wire-length AND near its optimal power AND near its optimal net delay OR Tmax(i) is much smaller than TmaxTHEN it has high goodness.
Where
Tmax is the delay of the most critical path in the current iteration and Tmax(i) is the delay of the longest path traversing cell i in the current iteration
Where
dpwj
eij
e
ed
eip
eiw
eei
x
xixxx
,,
)(3
1)1(
))(),(),(min()(
))()((2
1)1(
))(),(max()(
xx
xxx
ipathe
inetee
d
ipathe
inetee
de
id
17
Goodness (Membership Functions)
X nete
enet
amin_net amax_net
1.0near optimal net delay
X pathe
epath
1.0 2.0
1.0 T max (i) is much smallerthan T max
X we
ew
amin_w amax_w
1.0near optimal wire-length
X pe
ep
amin_p amax_p
1.0near optimal power
18
Goodness (base values)
Wherel*
j …… lower bound on wire length of signal net vj
lj …… actual wire length of signal net vj
Sj …… is the switching probability of vi
WhereIDi
* …… is the lower bound on interconnect delay of vi
IDp* …… is the lower bound on
interconnect delay of the input net of cell i that is on max(i)
Tmax(i) …… Delay of longest path traversing cell i Tmax …… Delay of most critical path in current iteration
k
jj
k
j
j
eiw
l
l
xX
1
1
*
)(
Ki
jjj
k
j
jje
ip
lS
lS
xX
1
1
*
.
.
)(pi
piinet
e
IDID
IDIDxX
**
)(
)()(
max
max
iT
TxX ipath
e
19
Goodness (amin_i and amax_i )
amin_i = average(Xei) –
2xSD(Xei)
amax_i = average(Xei) +
2xSD(Xei)
SelectionA cell i will be selected if
Rndom gi + bias
Range of the random number will be fixed , i.e., [0,M]
M = average(gi) + 2 x SD(gi)
M is computed in first few iteration, and updated only once when size of selection set is 90% of its initial size
20
Allocation Selected cells are sorted w.r.t. their
connectivity to non-selected cells.
Top of the list cell is picked and swapped its location with other cells in the selection set or with dummy cells, the best swap is accepted and cell is removed from the selection set.
Following Fuzzy Rule is used to find good swap
IF a swap results in
reduced overall wire length AND reduced overall power AND reduced overall delay AND within acceptable layout width
THEN it gives good location
21
Allocation (contd.)Wherel …… represents a locationiw
a …… membership in fuzzy set, reduced wire length
ipa …… membership in fuzzy set, reduced power
ida …… membership in fuzzy set, reduced delay
ai_width …… membership in fuzzy set, smaller layout width
ia(l) …… is the membership in fuzzy set of good location for cell i
dwpj
ijaa
ida
ipa
iwaa
pwdia
l
llll
,,
_
)(3
1)1(
))(),(),(min()(
))(),(min()( __ lll pwdia
widthiaa
i
22
Allocation (Membership functions)
These values are computed when cell i swap its location with cell j, in nth iteration
X da
ad
ad1.0
1.0reduced delay
X awidth
aw
1.0within acceptable width
1+a width
X wa
aw
aw1.0
1.0reduced wire-length
X pa
ap
ap1.0
1.0reduced power
kj
mnjm
ki
mim
kj
mnjm
ki
mim
iwa
ll
lllX
11
1
11
)(
)()(
kj
mnjmjm
ki
mimim
kj
mnjmjm
ki
mimim
ipa
lSlS
lSlSlX
11
1
11
)(
)()(
1)(
)()(
njpjipi
njpjipiid
a
IDIDIDID
IDIDIDIDlX
opt
Widthlwidthi
a
Width
CostX n)(_
23
Genetic Algorithm• Membership value c(x) is
used as the fitness value.• Roulette wheel selection
scheme is used for parent selection.
• Partially Mapped Crossover is used.
• Extended Elitism Random Selection is used for the creation of next generation.
• Variable mutation rate in the range [0.03-0.05] is used depending upon the standard deviation of the fitness value in a population.
Experiments and Results
25
Technology Details .25 MOSIS TSMC CMOS technology library is
used Metal1 is used for the routing in horizontal tracks Metal2 is used for the routing in vertical tracks
0.25 technology parameters
26
Circuits and Layout Details
27
Results
28
Results
(a) (d)
(b) (e)
(c) (f)
(a), (b), and (c) show membership value vs. execution time for FSE with CFO, FSE with OWA and GA. (d), (e), and (f) show
cumulative number of solutions visited in specific membership ranges vs. execution time for FSE with CFO, FSE with OWA and
GA respectively
29
Conclusion Fuzzy Simulated Evolution Algorithm for VLSI standard cell
placement is presented. Fuzzy logic is used in Evaluation, and allocation stages of the SE
algorithm and in the selection of best solution. New Controlled Fuzzy Operators are presented. The proposed scheme is compared with GA and with OWA operators. FSE performs better than GA with less execution time and better
quality of final solution. FSE has better evolutionary rate as compared to GA. CFO gives solution with same or better quality without the need of
any parameter like . CFO exhibits better evolutionary rate than OWA.