• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Digital Implementation
  3. Can dbShape handle negative coordinates?

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 92
  • Views 14140
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Can dbShape handle negative coordinates?

pdgeek
pdgeek over 13 years ago

Hello,

I have been using dbGet and dbShape to identify and generate complicated rectilinear shapes in our chip floorplan. Everything was working great until this morning we realized we needed to have our chip 0,0 origin at die center and not at the lower left corner of the padring. I thought no problem I can easily shift or define the origin to be die center using the  -fplanOrigin center switch to the floorPlan and this did define the origin as desired. But my floorplan tcl code died while executing dbShape which had previously worked with a lower left chip origin.

It looks like the problem is that dbShape can not handle negative coordinates. For example this works:

encounter 60> dbshape [list 0 0 10 10] SIZE 10
{-10 -10 20 20}

but this does not

encounter 65> dbshape [list -1 -1 9 9] SIZE 10  
**ERROR: (ENCDBTCL-203):        '-1 -1 9 9' is not a valid option.
The correct command usage is:

Usage: dbShape [-help] [-d] [-step <step>] [-output <polygon|rect|hrect>]
             <shapeList> [AND <shapeList> | ANDNOT <shapeList> | OR <shapeList> | XOR <shapeList>
             | SIZE <value>| BBOX | MOVE {<dx> <dy>}] ...

 

Anybody see what I am missing? Maybe there is some trick for passing in the negative values into dbShape although interesting that the first command properly gave the SIZE 10 output box with correct coords, some being negative.

 

Thanks for any help anyone might be able provide.

Tom

  • Cancel
  • jgentry
    jgentry over 13 years ago
    I've ht this before too. Easy to fix. Keep I mind that dbShape want to work on a list of lists. It is interpreting the first neg number as an option. Add another list level and it should work. dbShape [list [list -1 -1 9 9]] SIZE 10
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • pdgeek
    pdgeek over 13 years ago

    jgentry,

    Thanks for your response. I also got the same tip/hint from Cadence support late yesterday. Using the extra enclosing list level solved the problem.

    The question I posed to cadence support is whether dbShape can be enhanced to not allow this to happen, ie. TCL code that works with single list with positive first coordinate but then needs an extra enclosing list when first coord is negative?

    Now that I know the issue I am fine. Thinking of the user community at large is this something I should have known somehow and therefore there is no real issue with dbShape and how it works for future users who might stumble upon this same thing?

    Thanks again,

    Tom

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • jgentry
    jgentry over 13 years ago
    Yeah, I think that the original, non-negative 1-level list should have also thrown an error immediately. My guess is they were trying to be flexible with the way people specified shape lists but didn't properly handle the case when a negative number was specified. I still think it probably has to do with the way theoptions (-option) are specified, probably got caught up in their argument parser and died in a 'default' clause.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information