1 / 21

Fast Force-Directed/Simulated Evolution Hybrid for Multiobjective VLSI Cell Placement

Fast Force-Directed/Simulated Evolution Hybrid for Multiobjective VLSI Cell Placement. Dr. Sadiq M. Sait Dept. of Comp. Engineering, King Fahd University of Petroleum & Minerals, Dhahran, Saudi Arabia. sadiq@ccse.kfupm.edu.sa. Junaid Asim Khan Dept. of Elect. & Comp. Engineering,

takoda
Download Presentation

Fast Force-Directed/Simulated Evolution Hybrid for Multiobjective VLSI Cell 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. Fast Force-Directed/Simulated Evolution Hybrid for Multiobjective VLSI Cell Placement Dr. Sadiq M. Sait Dept. of Comp. Engineering, King Fahd University of Petroleum & Minerals, Dhahran, Saudi Arabia. sadiq@ccse.kfupm.edu.sa Junaid Asim Khan Dept. of Elect. & Comp. Engineering, The University of British Columbia, Vancouver, BC, Canada. junaidk@ece.ubc.ca

  2. Introduction • Standard Cell Placement • Assigning modules to locations on the silicon surface • An Intractable problem • Numerous Design Objectives, wire-length, power dissipation, delay etc. • One Solution • To use Iterative Heuristics e.g., Simulated Annealing, Genetic Algorithm, Tabu Search, Simulated Evolution etc.

  3. Simulated Evolution • An excellent heuristic for placement • Both, solution quality, and run time, are better than other approaches • If used with fuzzy logic, can optimize multiple objectives • Problem: For large VLSI circuits, needs to be accelerated • Solution • Parallelization • Hybridize with Force Directed Algorithm

  4. Simulated Evolution, Basic Steps • Comprises three step • Selection • Evaluation • Allocation

  5. Algorithm Simulated_Evolution(B, Solinitial, Stopping Criteria) B = Bias Value Sol = Complete Solution mi = Module I gi = Godness of mi ALLOCATE( mi, Soli) = Function to allocate mi in partial solution Soli Begin Repeat S = {} EVALUATION: ForEachmi in Sol evaluate gi SELECTION: ForEachmi in Sol DO begin IF Random > min (gi,1) THEN begin S = SUmi Remove mi from Sol end end Sort the element of S ALLOCATION: ForEach mi in SDO begin ALLOCATE ( mi, Soli) end Until Sopping Condition is satisfied Return Best Solution End (Simulated Evolution) Simulated Evolution: Algorithm

  6. Evaluation

  7. Selection

  8. Allocation • Previous Approaches (e.g. BLFSE) • Sort selected cells in descending order of their goodness • Pick the top of the list cell • Swap its location with other cells in the list • Accept the best swap • Remove the cell from sorted list • Go to 2 • Problem • O(n2) time complexity for Allocation • n is the number of selected cells • In VLSI n is too large and hence a O(n2) is not practical

  9. Force-directed Allocation • Solution • Use Force-directed heuristic to find best x and y locations for a cell • y position indicates the best row, the row nearest to y position is selected, which satisfies the width constraint • x position indicates the exact location of the cell in the selected row • The selected x position may replace some already well placed cell and hence introduce hill climbing • Benefit • Needs only O(n) time • Because x and y locations can be found in O(1)

  10. Force-directed ALLOCATION • Method • Problem • To find wij that satisfies multiple objectives • Solution • Use Fuzzy Logic

  11. Fuzzy weights • Following fuzzy rule is used to find weights • IFa net is good in wire-length AND good in power AND good in delay THENit has a low weight • A goodness gijfor the net ij in the range [0,1] is found and then wijis calculated as wij= 1 – gij • Higher the goodness lower is the weight

  12. aw ap Near optimal wirelength Near optimal power 1.0 1.0 amin_w amax_w amin_p amax_p Xijw Xijp anet Near optimal net-delay 1.0 apath Tmax(ij) is much smaller than Tmax 1.0 amin_net amax_net Xijnet 1.0 2.0 Xijpath Fuzzy weights (Membership functions)

  13. Fuzzy weights • Using AND and OR like Fuzzy aggregation functions and the fuzzy rule we calculate gijas follows • And hence wij= 1 - gij

  14. Experiments and Results • Fast Fuzzy Force Directed Simulated Evolution (FFSE) is compared with Biasless Fuzzy Simulated Evolution (BLFSE) • 12 ISCAS benchmark circuits are used • FFSE is same as BFSE except Allocation • For BLFSE execution is aborted when there is no improvement in last 500 iterations • FFSE is run for fixed 5000 iterations • 0.25 micron technology is used

  15. Experiments and Results UH: Unreasonably high run time

  16. 0.8 0.7 0.6 0.5 Overall membership of the solution 0.4 0.3 0.2 0.1 0 0 200 400 600 800 1000 1200 Execution time in seconds Experiments and Results

  17. 6 x 10 7 m) m 6 5 Wire Length Cost ( 4 3 2 0 200 400 600 800 1000 1200 Execution time in seconds Experiments and Results

  18. 8000 7000 6000 Delay Cost (ps) 5000 4000 3000 2000 0 200 400 600 800 1000 1200 Execution time in seconds Experiments and Results

  19. 5 x 10 6.5 m) 6 m 5.5 5 4.5 4 Power Dissipation Cost ( 3.5 3 2.5 2 1.5 0 200 400 600 800 1000 1200 Execution time in seconds Experiments and Results

  20. Conclusion • A Fast Fuzzy Force Directed Simulated Evolution Algorithm for VLSI standard cell placement was proposed • FFSE is capable of optimizing multiple objectives • Allocation was speedup from O(n2) to O(n) • FFSE performs much better than BLFSE in terms of execution time • There is not much performance degradation in terms of solution quality • In contrast to BLFSE, FFSE can be used for large circuits

  21. Thank You Questions ?

More Related