Presentation is loading. Please wait.

Presentation is loading. Please wait.

© R.A. Rutenbar 2005 Early Research Experience With OpenAccess Gear : An Open Source Development Environment For Physical Design Zhong Xiu*, David A. Papa.

Similar presentations


Presentation on theme: "© R.A. Rutenbar 2005 Early Research Experience With OpenAccess Gear : An Open Source Development Environment For Physical Design Zhong Xiu*, David A. Papa."— Presentation transcript:

1 © R.A. Rutenbar 2005 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

2 © Rob A. Rutenbar 2005Slide 2 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

3 © Rob A. Rutenbar 2005Slide 3 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

4 © Rob A. Rutenbar 2005Slide 4 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 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

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

6 © Rob A. Rutenbar 2005Slide 6 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

7 © Rob A. Rutenbar 2005Slide 7 OA Gear Timer Features: Supports Cadence.TLF and Synopsys Liberty (.LIB) formats  Not a complete implementation…  … enough to satisfy common needs Supports.SDC constraint subset  Clock period value  External delay information Timer has two modes  Batch: Full flat timing analysis  Incremental: Fast local  analysis Three wire load models (so far…)  Idealized: ignores wire loads  Linear: half-perimeter bbox using unit C, R info from tech lib  Custom: allows users to specify their own models for wiring Standard APIs & reporting formats  The critical path  Paths – from – to – through a node  CDN-style timing report compatible Results validate to ~1% against Cadence’s RTL Compiler tool

8 © Rob A. Rutenbar 2005Slide 8 OA Gear Timer: Example Results Experiment: simple, iterative “ where to put best buffer ” optimization Result: incremental timing 45X faster on average than batch mode Benchmarks Full Timing Analysis (sec) Incremental Timing (sec)Speedup S100.270.161.69 S1320759.501.3145.42 S15850121.763.7232.73 S359322033.80208.029.78 S38417458.445.6481.28 S38584437.143.42127.82 Faraday/DMA698.8513.1453.18 Faraday/RISC22189.072664.228.33

9 © Rob A. Rutenbar 2005Slide 9 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 Command line scripting Capo placement example Netlist viewer

10 © Rob A. Rutenbar 2005Slide 10 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 Capo 3. Place OpenAccess Wrapper 1. Read OA 2. Gen. Capo 4. Read Capo 5. Write OA Capo DB

11 © Rob A. Rutenbar 2005Slide 11 OA Gear Benchmarks 2 sets of benchmarks available Open, freely distributable designs  ISCAS89 designs mapped to hypothetical 250nm cell library  Included as part of OA Gear package Restricted designs  Faraday benchmark suite mapped to Cadence GSC cell library  License prohibits bundling with OA Gear  Download available from http://crete.cadence.com/ TypeNamePIsPOsInstancesRegisters Free s13207321212680466 s1585015874565540 s3593236320115871728 s3841729106147621463 s3858413278122211292 Restricted DMA661262249422073 DSP575269243063550 RISC276351454557590

12 © Rob A. Rutenbar 2005Slide 12 Larger Development Ex: CMU WARP2 Placer Our starting point: WARP1 [Xiu et al DAC04]  Wirelength-only placer with ad hoc academic db Our result: WARP2 [Xiu et al DAC05]  Timing-driven -- complete native OA integration  OA Gear Timer critical to flow  OA Gear Benchmarks, PDKs exploited heavily How fast: ~1 month to integrate, prototype  Out best guess: 3X – 4X faster than proprietary Compute new weights WARP2 with uniform net weight Legalize (Domino) Static timing analysis Timing-driven WARP2 with new weights Wirelength-only WARP2 / DominoTiming-driven WARP2 / Domino  Wirelen Worst Neg Slack  CPU  Wirelen Worst Neg Slack  CPU 1.001.0001.001.010.6351.47

13 © Rob A. Rutenbar 2005Slide 13 OA Gear: Status & Future Plan Initially released Nov 2004 ~300 downloads so far New projects for this summer Initially released Nov 2004 ~300 downloads so far 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 Open source model working well True community effort Fixes/improvements already from user feedback Users have even provided complete bug patches OA Gear

14 © Rob A. Rutenbar 2005Slide 14 Credits/Website Zhong Xiu Carnegie Mellon Timer, Warp David Papa Univ of Michigan Bazaar, Capo Wrapper Philip Chong Cadence Berkeley LabsOA Christoph Albrecht Cadence Berkeley LabsOA Andreas Kuehlmann Cadence Berkeley LabsOA Rob A. Rutenbar Carnegie Mellon Warp Igor I. Markov Univ of Michigan Capo http://openedatools.si2.org/oagear/


Download ppt "© R.A. Rutenbar 2005 Early Research Experience With OpenAccess Gear : An Open Source Development Environment For Physical Design Zhong Xiu*, David A. Papa."

Similar presentations


Ads by Google