1 / 24

Generating Supply Voltage Islands In Core-based System-on-Chip Designs

Generating Supply Voltage Islands In Core-based System-on-Chip Designs. Final Presentation Steven Beigelmacher Gall Gotfried www.ece.cmu.edu/~ggall 04/26/2005. Overview. Review What are we doing? How are we doing it? How We Did It Methodology Experimental setup Results

chibale
Download Presentation

Generating Supply Voltage Islands In Core-based System-on-Chip Designs

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. Generating Supply Voltage Islands In Core-based System-on-Chip Designs Final Presentation Steven Beigelmacher Gall Gotfried www.ece.cmu.edu/~ggall 04/26/2005

  2. Overview • Review • What are we doing? • How are we doing it? • How We Did It • Methodology • Experimental setup • Results • Future directions

  3. Review • Voltage islands are regions where nearby IP blocks use a supply voltage different from the full-chip supply • We propose reducing energy consumed in a core-based SoC design by generating these voltage islands • A coarse-grained placement problem

  4. Review • Different classes of placement algorithms exist • Integer Linear Programming, Recursive, Iterative • We went with an iterative solver • Want to avoid greedy algorithms • Simulated annealing – locally bad choices can be globally good • Parquet – S. Adya, H. Chan, I. Markov • Pronunciation: pär-'kA • to make of parquetry • Parquetry -- work in the form of usually geometrically patterned wood laid or inlaid especially for floors • http://vlsicad.eecs.umich.edu/BK/parquet

  5. Review • Simulated annealing loops are made up of two phases • What are the set of perturbations I can make to the current solution? (move function) • What is the relative “goodness” of that change? (cost function) • Move Function • Move block to spot (x,y), swap two blocks, block rotation, block scaling, etc

  6. Review • Cost Function • Calculate a number quantifying the “goodness” of the solution • How good a solution is will depend on the area, aspect ration, wire length, etc • What are we doing? • Analyzing the most effective way of detecting possible voltage islands • Modifying the cost function to take into account these voltage islands • Quantifying energy savings

  7. Sequence Pairs • Used to speed up and simplify move functions • Simple graphical approximation • Rectangular coordinate system • Approximates relative location of blocks in graph • Blocks represented by sequential numbering in X and Y directions

  8. Simulated Annealing (Parquet) • The initial locations of blocks in S.P. • Arbitrary • Only used to simplify the simulated annealing move function • Upon completion of a random move • Sequence pairs • Get matched up with (x,y) coordinates • Checked and adjusted to not overlap and meet aspect ratio requirements

  9. Sequence Pair Example X < 3 2 5 4 1 > Y < 1 2 3 4 5 >

  10. Selecting a Move Randomly picking which move to make Making the move

  11. Checking the Cost • Parquet uses different linear cost functions depending on emphasis of aspect ratio, wire length, or area AR and minWL AR minWL None Calculation of these delta components changes as t  0

  12. Cost Function Measures • How do we assess the “goodness” of current solution with respect voltage islands? • Number of islands • Number of nodes in islands • Size of the largest island • Reduction in power • The above are all important to our modified cost function

  13. Tread Lightly • Need solutions that increase the quantity of any of the previous parameters to have reduced cost • …but without breaking up the entire placer • Voltage islands with blocks laid on top of each other don’t do us much good • Make voltage island friendly solutions good, without making them too good

  14. Calculating the Modified Cost • Calculate the cost (delta) as before • If a perturbation improves one of the voltage island parameters, scale delta • Scaling is cumulative • Scaling is weighted towards certain measures • Stop doing this as t0 • Why do we do this?

  15. Accepting a Move Accept good moves Else, accept bad moves with some probability that decreases as t  0 Once t equals 0, run a few more greedy iterations

  16. What Did Our Changes Do? • A delta < 0 is always accepted • A voltage island friendly solution that was already good will still be accepted • A delta > 0 is accepted with some probability (declines over time) • Scaling increases the probability of being accepted, without forcing it • Only effective on solutions that weren’t that bad to begin with

  17. Methodology • Benchmarks are tested with set vdd’s and checked for “power” saved after placement • We define “power saved” as • (Num-nodes in an island)*(voltage of the island) • Quantified by the amount of power saved by reduction in voltage converting FIFO’s • Less islands means more voltage conversion hence more power consumed

  18. Methodology Purpose • Our experiments were designed to show • Function of 4 cost functions • Voltage islands • Nodes in islands • Power saved!!! (emphasis here)

  19. Experimental Setup • Before applying any cost functions we calculate the total initial “power saved” by the pre-placed islands • These are islands created by luck in the initialization phase • The total initial “power saved” is used • Compare and determine worth of solution • Initial power saved – Current power saved -> more negative numbers mean better solution • Determine the percent saved in final solution

  20. Benchmarks used

  21. Results AMI • AMI33 has room to increase nodes in islands to save power • AMI49 has even vdd node distribution • Cost function becomes more sensitive • increasing distinct voltage islands to save power

  22. Results HP • HP6 has majority of blocks with high vdd • Less room for optimization • HP11 shows an increase in nodes in islands used to save power • Attributed to the fact more nodes have higher vdd

  23. Future Work • We have created an open source vdd/vt island creation tool • Move function must be modified to account for multiple voltages in selecting moves • Cost functions can be easily extended • To create various placements based on multiple VDD islands • To create placements based on multiple Vt islands

  24. You Got Questions We Got Answers Thank You

More Related