1 / 31

Fuzzy Simulated Evolution for Power and Performance of VLSI Placement

Fuzzy Simulated Evolution for Power and Performance of VLSI Placement. Sadiq M. Sait Habib Youssef Junaid A. Khan Aimane El-Maleh Department of Computer Engineering King Fahd University of Petroleum and Minerals Dhahran, Saudi Arabia. Presentation Overview. Introduction

borna
Download Presentation

Fuzzy Simulated Evolution for Power and Performance of VLSI Placement

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fuzzy Simulated Evolution for Power and Performance of VLSI Placement Sadiq M. Sait Habib Youssef Junaid A. Khan Aimane El-Maleh Department of Computer Engineering King Fahd University of Petroleum and Minerals Dhahran, 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.

  4. 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 Problem Statement (Objective) • 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 Where li …… 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 Voltage f …… Operating frequency  …… Technology dependent constant

  7. 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 Cjgare constant and power dissipation depends only on Siand Cirwhich is proportional to wire-length of the net vi. Therefore the cost due to power can be written as:

  8. 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. • Ti is the delay of path i computed as: Where CDi …… is the delay due to the cell driving signal net vi. IDi …… is the interconnect delay of signal net vi. Now

  9. Width Constraint Where Widthmax… is the max. allowable width of layout Widthopt … is the optimal width of layout a …… denotes how wide layout we can have as compared to its optimal value.

  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 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 + 22)/(1 + 2)

  12. 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 THENit is an acceptable solution

  13. Fuzzy Cost Measure (contd.) where X … is the solution cpdl … 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

  14. cwidth 1.0 Cwidth/Owidth gwidth Fuzzy Cost Measure (contd.) Oi …… optimal costs Ci …… actual costs Membership functions

  15. Proposed Scheme

  16. SimE Algorithm ALGORITHM 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 Each SELECTION: For Each m  M If Selection(m,B) Then Ps = 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 met Return (Best Solution) End SimE

  17. Proposed Fuzzy goodness evaluation IF cell i is near its optimal wire-length AND near its optimal power AND near its optimal net delay OR Tmax(i) is much smaller thanTmaxTHENit 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

  18. Goodness evaluation (contd.) and we…… membership in fuzzy set, near optimal wire length pe…… membership in fuzzy set, near optimal power nete…… membership in fuzzy set, near optimal net delay pathe…… membership in fuzzy set, Tmax(i) much smaller than Tmax ie(x)…… is the goodness gi of cell i x …… is the location of cell i Superscript e denotes that these memberships are for evaluation

  19. Goodness (Membership Functions)

  20. Goodness (base values) Where l*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 Where IDi* …… 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

  21. Selection A cell i will be selected if Rndom  gi + bias Range of the random number will be fixed [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 Goodness (amin_i and amax_i) amin_i = average(Xei) – 2 x SD(Xei) amax_i = average(Xei) + 2 x SD(Xei)

  22. 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 THENit gives good location

  23. Allocation (contd.) Where l …… represents a location iwa…… 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

  24. Allocation (membership functions) These values are computed when cell i swap its location with cell j, in nth iteration

  25. 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.

  26. Experiments and Results

  27. 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

  28. Circuits and layout details

  29. Results

  30. (d) (a) (b) (e) (c) (f) Results (contd.) (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

  31. Conclusions • 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.

More Related