measurement of inherent noise in eda tools
Download
Skip this Video
Download Presentation
Measurement of Inherent Noise in EDA Tools

Loading in 2 Seconds...

play fullscreen
1 / 28

Measurement of Inherent Noise in EDA Tools - PowerPoint PPT Presentation


  • 102 Views
  • Uploaded on

Measurement of Inherent Noise in EDA Tools. Andrew B. Kahng* and Stefanus Mantik * UCSD CSE and ECE Departments, La Jolla, CA UCLA CS Department, Los Angeles, CA. Introduction. Complexity , design cycle time  Tool predictability predict final solution before running the tool

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Measurement of Inherent Noise in EDA Tools' - neka


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
measurement of inherent noise in eda tools

Measurement of Inherent Noise in EDA Tools

Andrew B. Kahng*

and

Stefanus Mantik

*UCSD CSE and ECE Departments, La Jolla, CA

UCLA CS Department, Los Angeles, CA

introduction
Introduction
  • Complexity , design cycle time 
  • Tool predictability
    • predict final solution before running the tool
    • requires understanding of tool behavior
  • Heuristic nature of tool
    • leads to noise: variability in solution quality
  • Understand how tool behaves in the presence of noise
previous works
Previous Works
  • Hartoog (DAC’86)
    • reorder cells/nets  isomorphic circuits
    • algorithm comparison
  • Harlow/Brglez (ICCAD’98)
    • randomize name and node order
  • Ghosh (Dissertation’00)
    • circuit mutation  isomorphic class
  • Bodapati/Najm (SLIP’00)
    • noise effect on pre-layout estimation
outline
Outline
  • Tool behavior criteria
  • Taxonomy of potential perturbation
  • Examples on noise effects
  • Exploitation of tool noise
  • Conclusions and ongoing works
tool behavior criteria

Quality

Quality

Parameter

Parameter

Tool Behavior Criteria
  • Monotonicity
    • monotone solutions w.r.t. inputs
tool behavior criteria1
Tool Behavior Criteria
  • Monotonicity
  • Smoothness
    • “similar” solutions after  perturbation

Solution space

tool behavior criteria2
Tool Behavior Criteria
  • Monotonicity
  • Smoothness
  • Scaling
    • preserve quality with scaled input

0.18

0.25

outline1
Outline
  • Tool behavior criteria
  • Taxonomy of potential perturbation
  • Examples on noise effects
  • Exploitation of tool noise
  • Conclusions and ongoing works
perturbation taxonomy
Perturbation Taxonomy
  • Randomness
  • Ordering and naming
  • Coarseness and richness of library
  • Constraints
  • Geometric properties
randomness
Randomness
  • Random number generator (RNG)
    • initial solution for heuristic
    • tie breaker
ordering and naming
Ordering and Naming
  • Instance ordering
    • C1,C2,C3,…  C17,C224,C5,…
  • Instance naming
    • AFDX|CTRL|AX239  CELL00134
    • AFDX|CTRL|AX239  ID012|ID119|ID416
library coarseness richness

Input Slew

Load

1x7

Load

7x7

Library Coarseness & Richness
  • Cell library
    • number of variations for cell types (e.g., INV1x, INV2x, INV4x, INV8x, etc.)
  • Timing library
    • timing model (look-up tables, linear interpolation, etc.)
constraints
Constraints
  • Design rules
    • spacing, width, size, etc.
  • Design constraints
    • timing constraints
    • grouping constraints
    • area constraints
  • Perturbation
    • tightening or relaxing the constraints
geometric properties
Geometric Properties
  • Offsets
    • cell sites, cell rows, routing tracks, power stripes, global cell grids, etc.
  • Orientations
    • pin orientations, site orientations, routing directions, etc.
  • Instance scaling
    • cell sizes, routing pitches, layout size, etc.
  • Artificial blockages
outline2
Outline
  • Tool behavior criteria
  • Taxonomy of potential perturbation
  • Examples on noise effects
  • Exploitation of tool noise
  • Conclusions and ongoing works
examples of noise effects
Examples of Noise Effects
  • Monotonicity test
  • Random seeds
  • Random ordering and naming
  • Random hierarchy
  • Cadence Place & Route
  • 13 industry designs
monotonicity test
Monotonicity Test
  • OptimizationLevel: 1(fast/worst) … 10(slow/best)
random seeds
Random Seeds
  • 200 runs with different random seeds
    • 0.05% improvement

-0.05%

random ordering naming
Random Ordering & Naming
  • Data sorting  no effect on reordering
  • Five naming perturbation
    • random cell names without hierarchy (CR)
      • E.g., AFDX|CTRL|AX239  CELL00134
    • random net names without hierarchy (NR)
    • random cell names with hierarchy (CH)
      • E.g., AFDX|CTRL|AX129  ID012|ID79|ID216
    • random net names with hierarchy (NH)
    • random master cell names (MC)
      • E.g., NAND3X4  MCELL0123
random naming contd
Random Naming (contd.)
  • Wide range of variations (±3%)
  • Hierarchy matters

Number of Runs

% Quality Difference

random hierarchy
Random Hierarchy
  • Swap hierarchy
    • AA|BB|C03  XX|YY|C03
    • XX|YY|Z12  AA|BB|Z12

Number of Runs

% Quality Difference

outline3
Outline
  • Tool behavior criteria
  • Taxonomy of potential perturbation
  • Examples on noise effects
  • Exploitation of tool noise
  • Conclusions and ongoing works
noise additive property

Cr

Nr

-1.59

-0.29

0.52

3.56

-0.72

0.83

0.84

1.81

1.03

2.40

2.90

-0.57

-1.14

0.34

1.22

-0.20

0.42

-0.85

0.57

-0.18

-0.46

-0.81

0.83

-1.92

0.16

-0.69

1.07

1.38

0.86

-0.37

-1.33

-1.00

1.06

0.98

1.26

Noise Additive Property

?

  • Noise1 + Noise2 = (Noise1 & Noise2)
noise exploitation
Noise Exploitation
  • CPU Budget = 1 run
    • noise with best mean
  • CPU Budget = 5 runs
    • noise with min average soln. over 5 runs
  • For each noise
    • randomly select k solutions
    • record the best-k
    • repeat 1000 times and get average
noise exploitation contd
Noise Exploitation (Contd.)
  • Noise that preserves hierarchy almost always yields superior results
  • CPU budget = 1 run  use MC
outline4
Outline
  • Tool behavior criteria
  • Taxonomy of potential perturbation
  • Examples on noise effects
  • Exploitation of tool noise
  • Conclusions and ongoing works
conclusions
Conclusions
  • EDA tools behavior criteria w.r.t. noise
  • Initial taxonomy of noise sources
  • Effects of noises on P&R solutions
  • Non-additive noise property
ongoing works
Ongoing Works
  • Prediction model that includes noises
  • Relationships between different noises
  • Noise impact on timing-driven solution
  • Relationship between perturbation size and changes in solution quality
  • Composition of noises between consecutive tools in the design flow
ad