[go: up one dir, main page]

0% found this document useful (0 votes)
70 views14 pages

Early Research Experience With Development Environment For Physical Design

lkjokj

Uploaded by

Jimson Echave
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
70 views14 pages

Early Research Experience With Development Environment For Physical Design

lkjokj

Uploaded by

Jimson Echave
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 14

Early Research Experience With

OpenAccess Gear: An Open Source


Development Environment For Physical Design
Zhong Xiu*, David A. Papa†, Philip Chong, Christoph Albrecht,
Andreas Kuehlmann , Rob A. Rutenbar*, Igor L. Markov†

*Carnegie Mellon University, †University of Michigan, Cadence Berkeley Labs

© R.A. Rutenbar 2005


Outline

 Background / motivation
 What OpenAccess is
 What the OA Gear project is

 OA Gear Components
 OA Gear Timer
 OA Gear GUI -- Bazaar
 OA Gear Placement Wrapper – U Michigan Capo placer
 OA Gear Benchmarks

 Example OA Gear development application


 Extending and natively integrating the CMU WARP2 Placer

© Rob A. Rutenbar 2005 Slide 2


About OpenAccess
OpenAccess is an open source design database for EDA
 OA has been adopted by many companies
 Standardization helps tool interoperability

OA should also be beneficial for academic users


 Ensures benchmarks, experimental results can be easily exchanged
 Technology transfer of algorithms developed at universities into industry tools

Despite potential benefits, academic researchers slow to adopt


 Problem: still easier to use existing ad hoc databases than std infrastructure
 Problem: not enough “critical mass” of other researchers using OA
 Problem: essential utilities/components still lacking in existing OA

© Rob A. Rutenbar 2005 Slide 3


The Problem…. And A Solution
Our position: A standard EDA infrastructure is vital for universities

Our solution: OpenAccess Gear


 OA Gear: a library of essential utilities / components built on top of OA
 Gives more incentive for academics to standardize on OA
 Improves – we hope – quality of academic research

© Rob A. Rutenbar 2005 Slide 4


OA Gear Overview
Open source licensing model  OA Gear: 4 components chosen for
 Critical for academic use relative importance to research
 True community development model  OA Gear Timer: Full static timer
 OA Gear Bazaar: User Interface
Freely distributed, no cost  Capo Wrapper: Placer Interface
 Available even on tightest budget  Benchmarks: Netlists & PDKs
 Also free for industry users
 Plan to add new components to
Written in portable C++
OA Gear on a continuing basis
 Runs on any platform running OA

GUI Timer

Placer Capo
Benchmarks OpenAccess API

© Rob A. Rutenbar 2005 Slide 5


OA Gear Timer
Academics often ignore timing
 Difficult/expensive to integrate
commercial timing engines
 Significant task to write own timer
 Significant calibration/fidelity issues

Solution: OA Gear Timer


 Common timing infrastructure
 Validated, integrated, rich feature set

Upside
 Helps ensure results from different
researchers can be directly compared

© Rob A. Rutenbar 2005 Slide 6


OA Gear Timer Features:
 Supports Cadence .TLF and  Three wire load models (so far…)
Synopsys Liberty (.LIB) formats  Idealized: ignores wire loads
 Not a complete implementation…  Linear: half-perimeter bbox using
 … enough to satisfy common needs unit C, R info from tech lib
 Custom: allows users to specify
their own models for wiring
 Supports .SDC constraint subset
 Clock period value
 External delay information  Standard APIs & reporting formats
 The critical path
 Paths –from –to –through a node
 Timer has two modes
 Batch: Full flat timing analysis  CDN-style timing report compatible

 Incremental: Fast local D analysis


 Results validate to ~1% against
Cadence’s RTL Compiler tool

© Rob A. Rutenbar 2005 Slide 7


OA Gear Timer: Example Results
Experiment: simple, iterative “where to put best buffer” optimization
Result: incremental timing 45X faster on average than batch mode

Full Timing Incremental


Analysis Timing
Benchmarks (sec) (sec) Speedup
S10 0.27 0.16 1.69
S13207 59.50 1.31 45.42
S15850 121.76 3.72 32.73
S35932 2033.80 208.02 9.78
S38417 458.44 5.64 81.28
S38584 437.14 3.42 127.82
Faraday/DMA 698.85 13.14 53.18
Faraday/RISC 22189.07 2664.22 8.33

© Rob A. Rutenbar 2005 Slide 8


OA Gear Bazaar: Graphical User Interface
 Because you cannot debug/develop what you cannot see
 Layout & netlist viewers, with a command-line scripting window
 Extensible by OA users, developed using OpenGL & QT toolkits

Capo
placement
example
Netlist
viewer

Command line
scripting

© Rob A. Rutenbar 2005 Slide 9


Capo Wrapper (Placement)
Motivations
 First: An OA Gear placer let users work on apps requiring some real layout
 Second: Excellent example of how to integrate a large, already mature CAD tool

OA Gear includes a wrapper for the open-source Capo placer


 Tool developed at UCLA/Michigan for several years
 Existing codebase does not use OA; “wrapper” API allows Capo to use OA

Wrapper
1. Read OA
2. Gen. Capo Capo
OpenAccess 3. Place
Capo DB

4. Read Capo
5. Write OA

© Rob A. Rutenbar 2005 Slide 10


OA Gear Benchmarks
2 sets of benchmarks available Type Name PIs POs Instances Registers

s13207 32 121 2680 466


Open, freely distributable designs
 ISCAS89 designs mapped to s15850 15 87 4565 540
hypothetical 250nm cell library
Free s35932 36 320 11587 1728
 Included as part of OA Gear package
s38417 29 106 14762 1463

Restricted designs s38584 13 278 12221 1292


 Faraday benchmark suite mapped to
DMA 661 262 24942 2073
Cadence GSC cell library
 License prohibits bundling with OA Gear Restricted DSP 575 269 24306 3550
 Download available from
http://crete.cadence.com/ RISC 276 351 45455 7590

© Rob A. Rutenbar 2005 Slide 11


Larger Development Ex: CMU WARP2 Placer
Our starting point: WARP1 [Xiu et al DAC04]
WARP2 with uniform
 Wirelength-only placer with ad hoc academic db net weight

Our result: WARP2 [Xiu et al DAC05] Static timing analysis


 Timing-driven -- complete native OA integration
Compute new weights
 OA Gear Timer critical to flow
 OA Gear Benchmarks, PDKs exploited heavily
Timing-driven WARP2
with new weights
How fast: ~1 month to integrate, prototype
 Out best guess: 3X – 4X faster than proprietary Legalize (Domino)

Wirelength-only WARP2 / Domino Timing-driven WARP2 / Domino


SWirelen Worst Neg Slack SCPU SWirelen Worst Neg Slack SCPU
1.00 1.000 1.00 1.01 0.635 1.47

© Rob A. Rutenbar 2005 Slide 12


OA Gear: Status & Future Plan
 Initially released Nov 2004
 ~300 downloads so far OA Gear
 New projects for this summer

Open source model working well


True community effort
Fixes/improvements already from user feedback
Users have even provided complete bug patches

© Rob A. Rutenbar 2005 Slide 13


Credits/Website

Zhong Xiu Carnegie Mellon Timer, Warp


David Papa Univ of Michigan Bazaar, Capo Wrapper
Philip Chong Cadence Berkeley Labs OA
Christoph Albrecht Cadence Berkeley Labs OA
Andreas Kuehlmann Cadence Berkeley Labs OA
Rob A. Rutenbar Carnegie Mellon Warp
Igor I. Markov Univ of Michigan Capo

http://openedatools.si2.org/oagear/

© Rob A. Rutenbar 2005 Slide 14

You might also like