• 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. Allegro X Scripting - Skill
  3. Inconsistent behavior of axlDBCloak?

Stats

  • Replies 8
  • Subscribers 17
  • Views 11924
  • Members are here 0
More Content

Inconsistent behavior of axlDBCloak?

migrg
migrg over 7 years ago

Hi everyone,

I'm creating an array of vias using axlDBCloak. I realized that a number of my vias (seems like they are located in the same X coordinate) don't have a net associated. My code works as follows:

via_id=mrCreateViaPadstack() -> this function creates the padstack, this works fine all the time
axlDBCloak( 'mrCreateAllViasCloak(via_id))

procedure( mrCreateAllViasCloak(via_id)
...
...
axlDBCreateVia(via_id, -1497.7:10647.9, "VSS")
...

When I don't run axlDBCloak and just use the axlDBCreateVia command separately in the skill terminal everything works well. I am creating several hundreds of vias with axlDBCloak. Is there any limitation in this function? is it possible that it will 'misbehave' if it has to execute too many database accesses?

Help appreciated! Thanks!

  • Cancel
  • Sign in to reply
Parents
  • migrg
    migrg over 7 years ago

    Hi, thanks for the response. A Cadence AE helped me sort this out so I'll post here the solution in case it can help someone else eventually:

    By default, a via in an allegro database will only pick up the net of things it connects to. It doesn’t “own” a net for itself. So, if you place the via down somewhere with axlDBCreateVia and a specified net, but it cannot find a connectable object ON that net that it can hook up to, it will look for, and take on the net assignment of, anything else that it comes in contact with at that location. That could be a pin, another via, a cline, a shape, etc. In my case when the via was placed there was probably no element available there for it to connect to on that NET, but there was probably a shape on a different net, and that is what the via picked up to connect to and will change its net as a result.

    Solution to this can be to set the RETAIN_NET_ON_VIAS property on the nets in the design. This will preserve the net assigned to the via no matter what.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • migrg
    migrg over 7 years ago

    Hi, thanks for the response. A Cadence AE helped me sort this out so I'll post here the solution in case it can help someone else eventually:

    By default, a via in an allegro database will only pick up the net of things it connects to. It doesn’t “own” a net for itself. So, if you place the via down somewhere with axlDBCreateVia and a specified net, but it cannot find a connectable object ON that net that it can hook up to, it will look for, and take on the net assignment of, anything else that it comes in contact with at that location. That could be a pin, another via, a cline, a shape, etc. In my case when the via was placed there was probably no element available there for it to connect to on that NET, but there was probably a shape on a different net, and that is what the via picked up to connect to and will change its net as a result.

    Solution to this can be to set the RETAIN_NET_ON_VIAS property on the nets in the design. This will preserve the net assigned to the via no matter what.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
No Data
Cadence Guidelines

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