( ESNUG 247 Item 1 ) -------------------------------------------- [8/16/96]

From: carl@compass-da.com (Carl Newhouse)
Subject: Comparing Two Synopsys/Compass Floorplanning Design Flows

John, in using COMPASS ChipPlanner with Synopsys synthesis for floorplanning
there are two basic approaches:

  1) Traditional SDF Low level timing constraints - Timing constraints
     that can be passed from Synopsys to ChipPlanner or vice versa via SDF
     or a Synopsys constraints file.  These Synopsys constraints are
     typically in the form of a single constraint per path, or paths which
     get constrained via -max_paths -nworst, -cover_design options.  The
     cover_design in Synopsys generates a constraint for the worst path
     through every single input  pin of each cell in the design.  This
     provides essentially complete coverage of the design.  There are 2
     flows using traditional low level constraints:

       a.) Forward Annotation Flow  (Synopsys-> ChipPlanner) -- Feed SDF or 
           Synopsys constraints into the floorplanner to perform timing
           driven placement.

       b.) Back-Annotation Flow (ChipPlanner->Synopsys) -- Feed SDF and
           Synopsys Parasitic Command FIle (containing set_load,
           set_resistance, etc.) information for IPO (Inplace Optimization).
           PDEF is also generated so Floorplan Manager can take into account
           the physical hierarchy during IPO.  COMPASS can also generate
           selective timing path (SDF out).

  2) High level Timing Constraints -- These are constraints independent of
     the exact timing path. The constraints apply to a block or the entire
     design.  Typical high level constraints are: frequency, external delays,
     path clusters, multi-cycle constraints etc.  The Compass ChipPlanner
     Floorplanner (MakeTime Option) can take these Synopsys constraints and
     perform placement of the standard cells and eliminate the need to
     generate SDF to feed back to the synthesis enviroment.  Some specific
     examples of Synopsys constraints that can be read into ChipPlanner:

                create_clock -name clk -period 20       
                set_input_delay 3 -clock clk input1         
                set_output_delay 3 -clock clk output1       
                report_timing

     This approach avoids useless speeding up non-critical paths and lets
     the designer use the same Synopsys constraints for synthesis and
     floorplaning.


In a nutshell, the two basic flows are:

  Using Low Level Constraints           Using High Level Constraints
  =====================                 ======================
  1 Synthesize Synopsys                 Synthesize Synopsys
  2 Floorplan                       1   Floorplan with High level constraints
  3 Generate SDF                    2   Analyze Timing in Floorplan
  4 Load SDF                        3   Perform IPO in Floorplan
  5 Analyze Timing in Synopsys            <Repeat Steps 1-3 if necessary>
  6 Synopsys In-Place Optimization
  7 Floorplan with ECO changes
      <Repeat Steps 3-7 if necessary>

Benchmarking the two basic flows, using a 300K gate cell-based design, I
found the high level approach only took 10 minutes to read into ChipPlanner
(because it was digesting only a 1K constraints file) and 3-4 iterations
were typical.  I don't know details for the traditional flow but I suspect
it'll be longer because the traditional SDF low level constraints took ~5
hours just to read into Synopsys (because it's reading a 60MB SDF file.) 

I don't have any numbers on how long the entire steps 3-7 would take.  It
would be nice to know.

  - Carl Newhouse
    Compass Design Automation



 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)