Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department...
-
date post
21-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department...
![Page 1: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/1.jpg)
Fuzzy Evolutionary Algorithm for VLSI Placement
Sadiq M. Sait Habib Youssef Junaid A. Khan
Department of Computer EngineeringKing Fahd University of Petroleum and Minerals
Dhahran, Saudi Arabia
![Page 2: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/2.jpg)
2
Presentation Overview Introduction Problem statement and cost functions Proposed scheme Results Conclusion
![Page 3: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/3.jpg)
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. The proposed algorithm is compared with Genetic Algorithm.
![Page 4: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/4.jpg)
Problem Statement & Cost Functions
![Page 5: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/5.jpg)
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)
![Page 6: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/6.jpg)
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
![Page 7: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/7.jpg)
7
Cost Functions Power Estimation
(contd.) Also
Where
Cir is the interconnect capacitance at
the output node of cell i.
Cjg is the 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
![Page 8: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/8.jpg)
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
![Page 9: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/9.jpg)
9
Cost Functions
Width Constraint
WhereWidthmax is the maximum
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
![Page 10: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/10.jpg)
10
Cost Functions Fuzzy logic for
multiobjective optimization Unlike crisp set theory, members of a
fuzzy set have degree of membership in the range [0,1]
Each objective cost is mapped to the membership value in the corresponding fuzzy set of “good in that objective”
Some linguistic fuzzy rule is used to combine objectives (AND or OR logic)
Linguistic rule is mapped to some fuzzy operator, where membership values are combined into membership in fuzzy set of good overall solution
Fuzzy Operators Used And-like operators
Min operator = min(1, 2) And-like OWA
= * min(1, 2) +
½ (1-)(1+2) Or-like operators
Max operator = max(1, 2) Or-like OWA
= * max(1, 2) +
½ (1- )(1+ 2)
![Page 11: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/11.jpg)
11
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
![Page 12: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/12.jpg)
12
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
![Page 13: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/13.jpg)
13
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
![Page 14: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/14.jpg)
14
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
![Page 15: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/15.jpg)
15
Goodness (amin_i and amax_i )
amin_i = average(Xei) – 2xSD(Xe
i)
amax_i = average(Xei) + 2xSD(Xe
i)
SelectionA cell i will be selected if
Random 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
![Page 16: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/16.jpg)
16
Allocation Selected cells are sorted w.r.t. their
connectivity to non-selected cells. Top of the list cell is picked and its
location is swapped 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
![Page 17: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/17.jpg)
17
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
![Page 18: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/18.jpg)
18
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)(_
![Page 19: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/19.jpg)
19
Fuzzy Cost Measure Set of solutions is generated by
SimE 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 solutions
![Page 20: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/20.jpg)
20
Fuzzy Cost Measure (contd.) 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
ldpi
icc
lc
dc
pcc
pdlc
x
xxxx
,,
)(3
1)1(
))(),(),(min()(
))(),(min()( xxx widthc
pdlcc
![Page 21: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/21.jpg)
21
Fuzzy Cost Measure (contd.)where X … is the solutionc
pdl … is membership in fuzzy set, acceptable power and delay and wire-length
cp … is membership in fuzzy set, acceptable power
cd … is membership in fuzzy set, acceptable delay
cl … is membership in fuzzy set, acceptable wire-length
cwidth … is membership in fuzzy set, acceptable width
c … is membership in fuzzy set, acceptable solution
cwidth
1.0
gwidthCwidth/Owidth
Oi …… optimal costsCi …… actual costs
Membership functions
![Page 22: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/22.jpg)
22
Genetic Algorithm• Membership value c(x) is
used as the fitness value.• Roulette wheel selection
scheme is used for parent selection.
• Partially Mapped Crossover.• 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.
![Page 23: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/23.jpg)
Experiments and Results
![Page 24: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/24.jpg)
24
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
![Page 25: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/25.jpg)
25
Circuits and Layout Details
![Page 26: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/26.jpg)
26
Comparison b/w GA and FSE
![Page 27: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/27.jpg)
27
Comparison b/w GA and FSE
(a) (b)
(c) (d)
(a) And (c) represents current and best fitness of solution by FSE. (b) and (d) represent average and best membership by GA for S1196
![Page 28: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/28.jpg)
28
Comparison b/w GA and FSE
(a) (b)
(c)(d)
(a) and (b) show number of solution visited in a particular membership range. (c) and (d) show cumulative number of solutions in specific membership ranges vs. execution
time for FSE and GA respectively for S1196.
![Page 29: Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.](https://reader035.fdocuments.in/reader035/viewer/2022062714/56649d6b5503460f94a49a8f/html5/thumbnails/29.jpg)
29
Conclusion An evolutionary algorithm (FSE) for low power high
performance VLSI standard cell placement is presented Fuzzy logic is used to overcome the multiobjective nature
of the problem FSE performs better than GA with less execution time and
better quality of final solution FSE has better evolutionary rate as compared to GA