• 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. Virtuoso: Comment Out

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 126
  • Views 19393
  • 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

Virtuoso: Comment Out

itos
itos over 9 years ago

I have no hope this is possible but after years of struggle I still try it: Is it somehow possible to comment out parts of the schematic (such that marked parts still exist in the schematic and can later be uncommented but are not transfered to the netlist).


This would be THE SINGLE MOST USEFUL Virtuoso could implement.

It's such a pain to delete whole parts of schematics just to try something out and afterwards manually reinserting stuff again. If I'm the first person asking for this I am wondering how IC design people work. Even the first Fortran on punch cards had comments.

The same used to be true for Simulink - the latest releases are a huge relief when they FINALLY introduced "Comment out" and "Comment through".

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    This has been possible in Virtuoso for ever, although the way to do it was not terribly visible (until recently). There are numerous ways you can do it.

    1. Add a string user property on the instance, called nlAction with value "ignore" (this has been available for ever)
    2. Add a string user property on the instance, called nlIgnore with value "spectre" (or a space separated list of netlisters you want to ignore for). I can't remember when this was introduced, but it's been around for probably at least 10 years
    3. If using a config, set the instance in the config to "bind to open". This has been there since the 4.4 release in 1996, although not sure all netlisters supported it fully until maybe 10 years ago.
    4. You could use the code in my solution 11523164 which gives a visual representation of the ignore (and allows you to easily turn them on or off). It shows a cross through the "commented out" instances.
    5. IC617 has this feature built-in. It's now under Edit->Ignore Instances and then you don't need the custom code in (4) above.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Frank Wiedmann
    Frank Wiedmann over 9 years ago

    You can find the details for Andrew's point 5. at http://support.cadence.com/wps/mypoc/cos?uri=deeplinkmin:TechPubDocs;src=pubs;releaseName=;DocumentType=manuals;q=/comphelp/comphelpIC6.1.7/chap7.html#980728.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • itos
    itos over 9 years ago
    Wow, how cool! I really did not expect a solution (and indeed, it's pretty invisible). I'll try to get 6.17 installed first (using 6.16 right now) and if this doesn't work will try your #2, Andrew.
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • itos
    itos over 8 years ago

    Hi Andrew,

    Thanks again for this reply. Unfortunately I have to go back to IC6.1.6-64b0500.11 now and hence use solution 11523164. Unfortunately it does not work; I do not see any visual representation, SHIFT+F7 does not work and I do get warnings.

    What I did: I downloaded .ils file and added the following to the end of my .cdsinit:

    load("CCSignoreInstance.ils")
    hiSetBindKey("Schematics" "<Key>F7" "CCSignoreInstance->ignoreSelected()")
    hiSetBindKey("Schematics" "Shift<Key>F7" "CCSignoreInstance->unignoreSelected()")

    1.) When I mark an element in Schematic Editor L and hit F7, indeed the item gets nlAction=ignore property. However, visually nothing changes.

    2.) If I hit SHIFT+F7, nothing happens (i.e., the nlAction=ignore) does not get removed. If I change the key binding for CCSignoreInstance->unignoreSelected() with hiSetBindKey to F6 it works. So it seems either I am hitting SHIFT+F7 the wrong way or it just does not work?

    3.) When I manually enter CCSignoreInstance->updateAllWindows() in the CIW I get:

    CCSignoreInstance->updateAllWindows()
    *WARNING* (GE-2067): geGetEditCellView: There is no graphical edit environment assigned to window(1) because the window is not a graphic editor window.
    Make sure that your current window is a valid graphic editor window.
    If it is a valid graph editor window, contact customer service to investigate this issue.
    t

    Not sure it this has anything to do with it. But in my understanding (and hope), all commented elements should have a big red cross above them.


    Am I doing anything wrong?


    Thank you!

    EDIT: Ok, I also need to add CCSignoreInstance->setOption('autoHilight t) to .cdsinit; this fixes (1). However would be happy for a fix on (2) still ...

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    I finally got to replying to this - and was about to suggest the autoHilight switch, which you've found.

    For the bindkey, the only thing I can imagine is that the F7 bindkey has been superseded by something else - can you check the bindkey is still valid? I'm not sure otherwise why it wouldn't be possible to set a bindkey on F7 unless maybe there's something in your window manager which is using F7 and preventing it getting through to the application itself. Try replacing the F7 bindkey with something simple (like println(1234)) and see if that works. Try using "xev" in UNIX to see if the F7 bindkey presses are making it through to X windows.

    Regards,

    Andrew.

    • 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