• 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. How to apply the instance name used in the schematic to...

Stats

  • Replies 10
  • Subscribers 127
  • Views 1588
  • Members are here 0

How to apply the instance name used in the schematic to the same mosfet in layout?

MB202506119828
MB202506119828 2 months ago

Virtuoso Schematic XL and Layout XL.

I'm an experienced IC designer, getting acquainted with this new tool set.

How can I assign and make visible the instance name for each of the mosfets in my layout? I don't see the Names displayed in the layout, even though they are assigned and visible in the schematic.

Here's what I have done ...

For a simple mosfet, I open the Q window, and assign the Instance Name identical to the name from the schematic. No problem.

But I cannot see that Name in the Layout.

In the Layout window, I have asserted the Options->Display --> Show Name of Instance radio button activated.

Still don't see it.

It does seem to me that each device name should be associated with the Poly Gate sitting between the S/D diffusions.

My sincere Thanks to the community members, who reply.

  • Sign in to reply
  • Cancel
  • Kevin T Buck
    Kevin T Buck 2 months ago

    This annotation only appears when the stop level is 0, ctrl+F will change the stop level to 0 and you will see the expected behavior.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • MB202506119828
    MB202506119828 2 months ago in reply to Kevin T Buck

    Thank you, AnalogPNW. THat answers the "how to see it" part. 

    But the first part of my original question still begs for an answer: How can I **assign** ....  the instance name.

    I am getting clean LVS reports on my verification ... except for the *Instance Name* being wrong. I don't even know how to assign an Instance Name to a layout transistor.

    How could something so basic be so elusive?

    Kind regards,

    Michael A. Banak

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Kevin T Buck
    Kevin T Buck 2 months ago in reply to MB202506119828

    This is available in the Edit Instance Properties menu (hotkey 'q' when a device is selected). The attribute name is editable there. If you aren't using layoutXL connectivity with schematic to generate your devices I'd recommend you do so. It will automatically generate the devices with corresponding names from schematics in addition to many other useful features. Also note that the device names cannot necessarily be identical to schematic, if for example you have a multiplier property on a device the automatic generation will add a suffix to each instance (because two instances cannot have the same name).

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • MB202506119828
    MB202506119828 2 months ago in reply to Kevin T Buck

    Thank you for this generous reply!

    The precise steps you described are what brought me to this forum. Yes, I tried that. I selected the MOSFET instantiated in the layout, hit "q", and assigned an Instance name to match the schematic. Note this is only a simple inverter, with just one poly stripe for each FET. Simple! Failure to match Layout Instance Name to Schematic Instance name continues. This is true for both the NMOS and PMOS. 

    LVS says the Instance names do not match, and I'm looking right at them.

    Seeing that I have already done what you described, as the steps to take, I must find out what I am doing wrong within those steps.

    The multiplier consideration you described has already haunted me. I am further concerned about mosfets, which share a diffusion, such as the stacked NMOSs in a NAND gate.

    I feel a little better, at least, knowing that I anticipated many of your points. I don't feel right pestering you for more at this point. If you have any other ideas, I will take them. I will look closer at your tips, now.

    Gratefully,

    Michael A. Banak

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Kevin T Buck
    Kevin T Buck 2 months ago in reply to MB202506119828

    When you are doing an LVS comparison the instance names do not need to match (there might be an option to enforce that, I haven't looked but if it exists I assume there would be an option to disable it). What you are probably experiencing is that the netlist generated during the comparison alters the names in one or both netlists, it is common in my experience that the layout netlist adds an X in front of each instance name. When you are running the LVS tool there is a field that will specify output netlists from both the schematic and the layout (usually .cdl and .sp files respectively), you can take a look at what you're getting there.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • MB202506119828
    MB202506119828 2 months ago in reply to Kevin T Buck

    Why, THANK YOU!

    Of course, these facts lower my expectations from CADENCE, but I must use what I have. 

    I can't wait to check the listings you describe.

    Cheers!

    MABanak

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 2 months ago in reply to MB202506119828
    MB202506119828 said:
    Of course, these facts lower my expectations from CADENCE, but I must use what I have

    A slightly odd statement. I think all that's happening here is that you're not understanding how the flow works - it's nothing to do with limitations of Virtuoso Schematic Editor or Virtuoso Layout Suite.

    First of all, if you are using Virtuoso Layout Suite XL and use the Generate All From Source mechanism to generate the instances, the names will match the schematic (with the proviso that m-factor devices etc may have a different suffix to cope with the one-to-many mapping from schematic to layout, as mentioned earlier).

    Secondly, you can change the instance name (as was also mentioned previously) with the edit properties command.

    However, the issue you are facing here that the name in LVS (you didn't mention which LVS tool you are using) may be undefined on the layout side. That's usually because most LVS tools use Stream format (a.k.a. GDSII) which has no concept of an instance name. You get instances, but there's no name stored in the format. As a result, LVS won't see the name of the instance from the layout. Even if the instance name had been there for the transistors, LVS tools (usually, unless using some kind of black-boxing) recognize the devices by the interaction of the polygons in the layout - i.e. they will recognize the MOS device by the poly crossing diffusion and then construct and measure a device from that - the fact that it was an instance in the first place generally won't affect things - so it's identifying devices from the shapes. A multi-finger device would be recognised as multiple parallel transistors and the comparison stage will compare these devices with equivalent from the schematic.

    Regards,

    Andrew

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • MB202506119828
    MB202506119828 2 months ago in reply to Andrew Beckett

    Thank you so very much for that generous reply. I wish there was some way to repay all these courtesies I am receiving.

    Looks like I owe someone an apology. In my board layout world, comparing layout to the schematic is tight and unambiguous.

    I have designed many IC's, but the CADENCE system is new to me. I must keep in mind the nuances you described.

    I didn't know there were multiple versions of LVS. But, it's good to know that I anticipated the association of a particular MOSFET with the Poly Crossing. 

    I'll keep trying, and thanks, again.

    Michael B

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Kevin T Buck
    Kevin T Buck 2 months ago in reply to MB202506119828

    I don't think GDS -> netlist is unique to Cadence. I've used a couple of other design tools that have a similar flow. Cadence has their own in house LVS tool (Pegasus) but there are many third party vendors that also provide additional options that work within the Cadence environment. The most common third party LVS tool is Calibre which is from Siemens EDA (formerly Mentor Graphics).

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • MB202506119828
    MB202506119828 1 month ago

    Again, my sincerest thanks to the correspondents, here.

    It appears that my LVS, and a few other downstream problems, are caused by the CADENCE installation, which I am using at this institution, not being properly licensed. It appears to be server-specific. 

    But this means that future inquiries are on hold until we fix this.

    Most gratefully,

    Michael B

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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