( BSNUG 00 Item 15 ) ------------------------------------------ [ 10/13/00 ]

Subject: Physical Compiler (PhysOpt), Chip Architect, FlexRoute, FlexPlace

11 MONTHS & COUNTING:  No real "big" news on the overall Physical Synthesis
came out during the Boston SNUG.  Physical Compiler has 10 known, publically
user-confirmed tape-outs (although Aart claims he has 23); Cadence PKS has
one failed tape-out in April from EmpowerTel (PKS was used on a 50 Kgate
MIPS core inside a 3 Mgate chip) with no other confirmed tape-outs; Magma
and Monterey have no tape-outs.  This means that Synopsys now has an 11
month lead in this market (the first 2 PhysOpt tape-outs were Matrox and
nVidea back in November'99) and has oddly become the Leader To Beat in this
niche.  (Why I say this is odd is that given the backend nature of physical
synthesis, if you'd have asked me 4 years ago who I'd have predicted would
be taking the initial lead in this tool space, I would have said Cadence or
Avanti.  After all, the backend *is* their home turf, right?  Odd.)


    "Synopsys Synthesis is near "End_of_Life":

     More and more designs are being done in <= 0.18u, so the usefulness of
     static timing convergence using the traditional "wire_load_models" in
     synthesis is becoming obsolete.  The reason is that when you go <.25u
     in feature size, more of the delay is taken up in the routing which is
     almost impossible to estimate without placement.  What this is saying
     is synthesis will be used for RTL->Netlist generation but will not be
     able to perform the proper static timing checks based on routing
     estimates.  This requires the back-end or "routing" tool to do most of
     the work to insure the design meets timing.  This also means more
     (Synthesis->P&R->Primetime) database iterations.

     Synopsys is attempting to sell everyone "Physical Synthesis" to help
     bridge the gap between front-end Synthesis and back-end PR to cut down
     the number of front-end -> backend iterations.  The tool allows a
     preliminary placement of the design that can be handed off to the
     back-end people. 

     Personal Thoughts: 

     Although this sounds like a nice solution, depending on the cost of the
     tool, it might be worth the investment in the backend tools.  If you're
     going to spend the time in placing, you might as well do it in the real
     back-end tool and iterate in house (we can target any vendor's library
     and be more flexible in fab selection).  It seems like Synopsys is
     attempting to scare customers into believing that the back-end is too
     complicated by offering what appears to be the easier solution."

         - an anon engineer


    "We expect to ramp up on Physical Compiler in the next few months for
     our next project.  Magma and PKS are too unstable to be viable for us.
     Mike Montana gave a good tutorial."

         - an anon engineer


    "Physical synthesis, physical synthesis, physical synthesis.  Get the
     picture?  That was a hot topic this year as it will continue to be.
     Most of the design community represented at SNUG is well below 0.5u
     technology and they are becoming more sensitive to the issues of
     deep-submicron design.  Physical synthesis is starting to take hold
     with more of the designers as more of them experiment with it.  Mostly
     positive reports.  Our current designs however don't come anywhere near
     needing this type of tool, at least for now.  Note: At 0.5u, we are in
     the bottom 5% of design flows.  About 40% are using 0.35, 40% are at
     0.25u, 15% are at 0.18u and below."

         - Brian Fall of Microchip Technology, Inc.


    "Physical Compiler Workshop Trip Report, 9/19/00 - 9/22/00
     (took this immediately prior to the Boston SNUG)

     I found the single day workshop on Physical Compiler very worthwhile.
     With a strong knowledge of DC and COT flows, one day is plenty to get
     the basic concepts down and also get to play with the tools in the
     labs.  The labs were pretty straightforward, going through the
     following steps:

       o Converting LEF to plib using the lef2plib utility
       o Writing pdb using the write_lib command
       o Converting a floorplan DEF to PDEF 3.0 using the def2pdef utility
       o Reading in wireload compiled gates, PDEF file, and running PhysOpt
       o Analyzing physical views in the GUI
       o Dealing with floorplan obstructions from macros and power straps
         and creating obstructions manually
       o Running PhysOpt with various switches and comparing results.

     PhysOpt gets it's floorplan information such as RAM & macro placement,
     power straps, pad cells, etc. from the PDEF file.  Placement and layer
     blockages are supported using routing obstructions.  Soft and hard
     keepouts are also supported.  Global routing is done within the tool,
     but that information is lost in the transfer to layout tools.  The
     output of PC is a legally placed design that can be written out as db
     file, or a gate-level netlist and a PDEF 3.0 file.  There is a utility
     to convert the db to DEF, making the interface to Cadence tools pretty
     straightforward.  The Avanti conversion uses the netlist and PDEF and
     involves the use of Scheme scripts.

     The major advantage of this tool is the elimination of wireload models
     by using Steiner routes and Elmore delays.  The placement engine,
     FlexPlace, is not a quadratic placer and is therefore free to place any
     cell anywhere to meet timing and reduce wire length.  The claims are a
     10-15% Manhattan wire length reduction over traditional placers.  This
     makes the layout more routable and able to run with faster clocks and
     less power.  Wire length reduction is critical as designs move into
     smaller geometries, especially below .25u, since wire delay is by far
     the dominating factor.  Since wireload models are at best a poor
     estimate of the most dominate delay factors in the design, eliminating
     the inaccuracy they introduce is key.  Traditional methods of margining
     the timing in synthesis leads to overbuilding the design, which means
     increased area, die size, wire length, & power consumption.  Combining
     synthesis and placement allows the design to be implemented with much
     greater accuracy, while reducing the wire length, area, and power.

     Since PhysOpt is built on top of Design Compiler, a lot of the DC
     functionality is there.  PhysOpt adds physical switches to existing
     DC commands.  A DC Ultra license triggers additional optimization
     features in Physical Compiler.  I heard it said that Module Compiler in
     DC works with Physical Compiler as well as the -scan switch for
     compile.  Stitching is still done with insert_scan, and is not yet
     location based, but will be in the 2000.11 release.  Full integration
     with Power Compiler is also in development.  Unlike DC, the command
     interface is TCL only.

     The modes of operation of the tool are gates to placed gates (G2PG)
     with the PhysOpt command, and RTL to placed gates (RTL2PG) using the
     compile_physical command.  Presently, the G2PG method can handle up to
     ~2M gates.  The RTL2PG mode can handle up to ~300K gates since only a
     top down methodology is supported.  A bottom up RTL flow is in
     development, and I later heard it said in the SNUG PhysOpt tutorial
     that simple compile mode is supported.

     The tool has various switches such as -congestion and -area_recovery.
     There is a GUI for viewing the floorplan, placement, and congestion
     maps.  It can run gates in place-only mode for congestion analysis
     with multiple floorplans.  Since clock tree synthesis (CTS) is done
     outside this tool, the -incremental switch is used after CTS.  I
     heard there will be CTS by the end of the year, in both Physical
     Compiler and Chip Architect.  There is an ECO mode to merge in
     new/changed leaf cells, as well as an incremental post_layout mode.
     This can be used after layout extraction like Floorplan Manager on
     steroids producing legalized placements instead of suggested
     placements from incremental PDEF.  This would be great for combining
     PhysOpt with Min/Max compile for post-layout hold fixing.

     One interesting aside is the wireload model problem has been pushed
     back into the LEF.  Having bad R and C parameters can be just as
     damaging as having bad wireload models.  Therefore, the R and C
     parameters must be correlated.


     SNUG Boston 2000 Tutorials: Physical Synthesis / Timing Closure

     I caught the very end of this tutorial since I already attended the
     PhysOpt class.  I was just in time to see the live demo in progress
     and here some very impressive evaluation statistics including:

       o Performance improvements up to 24%
       o Gate count reduction up to 4.5%
       o Power reduction up to 12.6%
       o Elimination of post layout iterations for timing closure
       o Back end timing closure achieved in days instead of months
       o RC correlation to detail route 0.4% pessimistic to 2.7% optimistic

     In the Physical Synthesis tutorial, I found out that RTL to GDSII was
     accomplished using a detail router Synopsys acquired from Gambit last
     year.  Interestingly enough, when I searched for Gambit on the Synopsys
     web site, I found a mention in the key installation guide for SCL (the
     new Synopsys Common Licensing).  The tool listed as being compatible
     with SCL1.1 was Encore, with Gambit in ()'s.  The individual Gambit
     tool entries are no longer shipped, and Encore is not listed among
     their regular product offerings.  Hmmmm.  With CTS in beta, it sounds
     like they are really close."

         - Bob Wiegand of NxtWave


    "Finally, on the subject of PhysOpt.  I attended the tutorial on Friday
     and have to say the AE from Texas, Mike Montana, was one of the most
     dynamic and interesting speakers of the whole week.  Not sure what that
     says about PhysOpt, but if you are going to try and sell something for
     those prices you better have a good spokesman and he was the right man
     for the job."

         - Martin Gravenstein of TDK Semiconductor Corp.


    "Darell Whitaker of IBM did a presentation on Physical Compiler in the
     IBM ASICs design flow for customers.  Basically, PhysOpt fits in as a
     mechanism to work with early floorplanning to synthesize a design and
     generate a detailed layout for use in the IBM backend tools.  Further
     work will still need to be done to insert clocks & scan & do further
     optimization.

     The room was packed.  He got lots of questions, including:

     o What is the estimated time/effort for someone to incorporate Physical
       Compiler into their flow?  How much time did we spend?

     We spent about 8 months.  It should take much less than that to get the
     tools up and running.  A good portion of the 8 months was spent working
     through issues of data conversion to go between Physical Compiler
     formats & data formats used by IBM Physical Design tools.  One problem
     being worked around is support for differing levels of PDEF 2.0.
     PhysOpt uses PDEF 3.0, but IBM is still migrating to that.  Other time
     has been spent on analysis & correlation between the physical modeling
     of the placements between the Synopsys & IBM tools.

     o What is the flow for post-routing ECO?  Incremental mode?

     We haven't investigated this yet.

     o Did we do gates-to-gates or RTL-to-gates? What kind of runtime issues
       are there in going from RTL-to-Gates?  What about benchmarking
       Physical Compiler to the traditional DC flow?

     Most of our work has been on gates-to-gates.  We're looking at
     RTL-to-gates now.  You can do a RTL-to-gates run in PhysOpt but you
     still need to do a rough synthesis run first so that you can create a
     floorplan.  It's for a rough estimate to drive the RTL PhysOpt run,
     otherwise you'd have something Chip Architect (which we don't use.)
     Our flow is more back and forth between Synopsys and IBM's ChipBench
     tools, so that means we use IBM's floorplanner instead of Chip Arch.
     We're still benchmarking, but all the legal crap says I can't tell
     anyone about it.  Talk to the Synopsys and IBM lawyers if you want
     this data.

     o Design teams - do they need to change to think about floorplanning?

     Darell's answer was that logic designers should always be thinking
     about floorplanning.  That might be an unwelcome change for some
     people, but it's something we have to deal with all the time.  We look
     at a lot of designs where some redefinition of logic can have a major
     impact on creating a design that will meet timing & wire, like large
     multiplexers, where data & selects can be grouped based on the
     floorplanning needs.


     Physical Compiler (PhysOpt) Tutorial -

     Good presentation and demos, with examples, by Mike Montana.  What I
     liked seeing most was the was the new PhysOpt GUI with the capability
     to display a cone of logic in the logic viewer and then toggle to a
     display of the same cone in the physical layout.

     Mike said PhysOpt is using DesignTime and Chip Architect is using the
     PrimeTime timing engine.  Why doesn't PhysOpt use PrimeTime, too?  Why
     get more accurate, detailed info from physical floorplanning and then
     back off when you go to run PhysOpt?

     The coarse route in PhysOpt shoots for under 5% inaccuracy.

     They are talking about merging all the db files into one in the future
     to combine the logical & physical...  so combine .db & .pdb."

         - Chris Kiegle of IBM


 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)