( ESNUG 350 Item 4 ) --------------------------------------------- [4/27/00]

From: [ A Synopsys PhysOpt CAE ]
Subject: Arranging Intentional PDEF/TCL Placement Obstructions in PhysOpt

Hi, John,

Here's another tip that would be useful to us if you published it in ESNUG.

There are two basic ways one can place intentional obstructions in the
PhysOpt design flow to block the tool for placing within specific zones or
blocks inside of your design:

    1) Input through Floorplan PDEF
    2) Created with the create_obstruction command.

Here is an example of a placement blockage in PDEF for PhysOpt.   Note the
coordinates for this obstruction are in 0.01 micron units.

    ( CLUSTER PLACEBLOCKAGE_1
      ( OBSTRUCTION 221 )
      ( RECT 80320.0 1896600.0 128020.0 1898600.0 )
      ( X_BOUNDS 80320.0 128020.0 )
      ( Y_BOUNDS 1896600.0 1898600.0 )
    )

To check the units for your PDEF, look for the following line near the top
of the PDEF file to verify the units:

    ( DISTANCE_UNIT  0.01 )

When you read the PDEF into PhysOpt, you will see the following warnings:

  Warning: Line 2371, This obstruction becomes placement obstruction.
  Obstruction size will be ignored for placment obstruction, use CLUSTER
  RECT and CLUSTER X_BOUNDS/Y_BOUNDS attribute to represent the
  obstruction size. (PDEFP-33)

This warning refers to the RECT statement in the PDEF example above.  The
X_bounds and Y_bounds parameters actually specify the placement blockage.


To do the same thing via a TCL script, the command syntax is the same as
a wiring obstruction except for the layer number (99).   See syntax below:

  create_obstruction -name obstr_1 -layer 99 -coordinate {X1 Y1 X2 Y2}

  where:

        name: is a unique name for the obstruction

       layer: needs to be a non-routing layer to be treated as a placement
              obstruction.

  coordinate: The coordinates for the bounding box of the obstruction.

              X1: lower left x-coordinate
              Y1: lower left y-coordinate
              X2: upper right x-coordinate
              Y2: upper right y-coordinate

     NOTE: PhysOpt reports coordinates in 0.01 microns but you must input
           coordinates in full microns.

To verify the layer numbers for routing so you can pick a non_routing layer,
check the PDEF.  You should see something like the following in your PDEF:

  ( LAYER_DEF
    ( LAYER MET1 10 )
    ( LAYER MET2 12 )
    ( LAYER MET3 14 )
    ( LAYER MET4 16 )
    ( LAYER MET5 18 )
  )

So, with the case above, we refer to layer 99 which is not a routing layer,
therefore, it becomes a placement blockage.

    - [ A Synopsys PhysOpt CAE ]


 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)