• 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. Custom IC Design
  3. checkHalfWidthPathSeg always enforce

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 125
  • Views 14307
  • 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

checkHalfWidthPathSeg always enforce

linbo
linbo over 14 years ago

 Anybody got a fix for this dumb bug?

 

env variable in Virtuoso, checkHalfWidthPathSeg is always set to "enforce" regardless of actual environment setting either thru UI or by setting in CIW or .cdsenv file.

 

How can I turn this off?

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    Hi Lin,

    What version are you using? The variable is for paths, not pathSegs (as I mentioned in my previous post, I think). If I draw a path in IC614 latest hotfix (6.1.4.500.10), I get a popup if the last segment is less than half the path width. So if I draw a path with width 1um, and then bend and have the last segment as 0.5um (so the end is coincident with the edge of the path), I get no popup. If it's less than half, I get a popup, but it still lets me do it.

    If I set it to enforce, it doesn't let me have the last point less than half the path width - it rejects the last point. Again, using 0.5um as the last segment on a 1um path, it also allows this. I can turn enforce off, and it works as in my first paragraph.

    I can also do the fat stubby hunk of metal 1 that you describe (provided I don't have enforce mode on).

    The default is "off" by the way (which means off for intermediate segments, and notify for end segments, to reflect the old behaviour in previous releases). The "never" is being added to be completely off.

    If this behaviour is not happening in the subversion you're using, maybe there's a bug - which is why it would be useful to know the subversion, so I can see if I can track it down.

    There's always a trade off with preventing mistakes. If there is a good reason to allow something, then we should make it configurable. Some of the "dumbing down" may be where we try to automate things to make things easier, particularly in a world of complex design rules in 28nm/40nm processes, but I do understand what  you're saying. It's very hard to make everyone happy all the time - we need to retain flexibility without making the tool hideously complex to use.

    Not quite sure what you mean by "iconization and missing textual menu items" though.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    Hi Lin,

    What version are you using? The variable is for paths, not pathSegs (as I mentioned in my previous post, I think). If I draw a path in IC614 latest hotfix (6.1.4.500.10), I get a popup if the last segment is less than half the path width. So if I draw a path with width 1um, and then bend and have the last segment as 0.5um (so the end is coincident with the edge of the path), I get no popup. If it's less than half, I get a popup, but it still lets me do it.

    If I set it to enforce, it doesn't let me have the last point less than half the path width - it rejects the last point. Again, using 0.5um as the last segment on a 1um path, it also allows this. I can turn enforce off, and it works as in my first paragraph.

    I can also do the fat stubby hunk of metal 1 that you describe (provided I don't have enforce mode on).

    The default is "off" by the way (which means off for intermediate segments, and notify for end segments, to reflect the old behaviour in previous releases). The "never" is being added to be completely off.

    If this behaviour is not happening in the subversion you're using, maybe there's a bug - which is why it would be useful to know the subversion, so I can see if I can track it down.

    There's always a trade off with preventing mistakes. If there is a good reason to allow something, then we should make it configurable. Some of the "dumbing down" may be where we try to automate things to make things easier, particularly in a world of complex design rules in 28nm/40nm processes, but I do understand what  you're saying. It's very hard to make everyone happy all the time - we need to retain flexibility without making the tool hideously complex to use.

    Not quite sure what you mean by "iconization and missing textual menu items" though.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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