• 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 SKILL
  3. How to get the net-figure which is connected to a specific...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 143
  • Views 16516
  • 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

How to get the net-figure which is connected to a specific instance terminal

MLindig
MLindig over 13 years ago

Hi,

I want to hilight only a part of a net (mainly the part from instance terminal to next branch of net). Here is an example:

I want to hilight the net part from transistor "M0" drain terminal which is connected on net "knt". I picket up the right terminal from

term = dbFindSigByName(cvId "knt")~>memInstTerms

term->net->figs contaions now all figures of the connected net. Which is the right figure (connected to term) which I could pass to geAddHilightFig(hlSetId fig) function?

 Thanks Michael

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

    Michael,

    Assuming you have an instTerm object for the M0/D terminal (arrived at via sig~>instTerms or sig~>memInstTerms - depends on if you need to handle iterated instances and busses, say):

    instTerm~>term~>pins

    will give you list of the pin objects for that terminal. For a transistor there will typically only be a single pin - you could potentially have more than one pin - so it's up to you whether you need to loop around the pins or just deal with the first one. 

    pinObj=car(instTerm~>term~>pins)
    pinFig=pinObj~>fig 

    This will give you the shape for the pin. Strictly in OA you should look at pinObj~>figs which is a list of all the strongly connected pin shapes, but this is not used in symbols at the moment - maybe one day - but ~>fig will always give you one of the figures if there are more than one (in CDB versions there was only a single figure on a pin anyway).

    If you looked at pinFig~>bBox it will give you the bounding box of the pin figure, but that will be in the coordinate system of the transistor symbol. So you'd need to transform it:

    pinBBox=dbTransformBBox(pinFig~>bBox instTerm~>inst~>transform)

    Hopefully that helps!

    Regards,

    Andrew

     

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

    Michael,

    Assuming you have an instTerm object for the M0/D terminal (arrived at via sig~>instTerms or sig~>memInstTerms - depends on if you need to handle iterated instances and busses, say):

    instTerm~>term~>pins

    will give you list of the pin objects for that terminal. For a transistor there will typically only be a single pin - you could potentially have more than one pin - so it's up to you whether you need to loop around the pins or just deal with the first one. 

    pinObj=car(instTerm~>term~>pins)
    pinFig=pinObj~>fig 

    This will give you the shape for the pin. Strictly in OA you should look at pinObj~>figs which is a list of all the strongly connected pin shapes, but this is not used in symbols at the moment - maybe one day - but ~>fig will always give you one of the figures if there are more than one (in CDB versions there was only a single figure on a pin anyway).

    If you looked at pinFig~>bBox it will give you the bounding box of the pin figure, but that will be in the coordinate system of the transistor symbol. So you'd need to transform it:

    pinBBox=dbTransformBBox(pinFig~>bBox instTerm~>inst~>transform)

    Hopefully that helps!

    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