• 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. spectre save statements

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 125
  • Views 17474
  • 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

spectre save statements

MarkSummers
MarkSummers over 15 years ago

Is there any comprehensive documentation spectre save statements.  I may be missing something, but I do not find all the info in spectre -h save.  

Specifically some explanation on wildcards and also all the different thigs that can be saved.

 I also found that the subckt paramater did not work as I expected.  If I have block C instantiated in block B which is instantiated in Block A.   Block C has pins VDD, GND, INPUT, and OUTPUT.  VDD and GND are signals that exist at the top-level Block A.  They follow the heiarchy down to connect to block C.  If I use the following statement it does not seem to work

save VDD subckt=C

 I assume this is because VDD is a net on a higher level.  I would hope this save statement would work, since it would make it easy to save all VDD nodes connected to instantiations of C without having to know what they are called.  This would be consistent with assertion syntax.

Finally, if I use asserts do I have to explicitly save the nodes I use for assertions(In tran analysis).  It looked to me like it worked without this.  Do nodes/currents called by assertions get automatically saved. This would be a nice feature.

FYI I am using spectre 7.1.1.221

  • Cancel
  • MarkSummers
    MarkSummers over 15 years ago

     I did some experiments and it seems that nodes( I actually checked currents) are saved for assert calculations.  I used assertions to check for max and average currents when I had nothing saved in the schematic.  I saved no voltages and no currents.  The calculations reported back values that was consistent when currents were saved and when they were not.  If this is a built in feature, it is a good one and something that should be advertised.

    Confirmation of this and any info on my other questions would be appreciated.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • archive
    archive over 15 years ago

    Hi,

    You should be able to get more information on Wildcarding in Save statements in the following link.

    http://sourcelink.cadence.com/docs/files/Release_Info/Docs/spectreuser/spectreuser7.1.1/chap8.html#838518

    Regarding "save VDD subckt=c", since the same signal is passed from A to C, Spectre will save VDD in top level A and not inside C. If you want the value of VDD saved in subckt C, you can use,

     save I1.I2.VDD //I1.I2 is the hierarchical name to subckt C.

    Regarding assert statements, yes, spectre will save node voltages, currents required to solve assert statements even if nothing is saved. However, these signals won't be seen in PSF.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MarkSummers
    MarkSummers over 15 years ago

     Thanks for the info.

    It is good to know you do not need to save nodes or currents to get the assertions to work.  This should probably be documented/advertised.

    I understand what you are saying about saving the node inside subcircuit C.  However I think it would be nice if there was a way to save nodes based on subcircuit values and then have the simulator figure which nodes to save in the current design. Although since I don't need to save nodes for assert to work, this is not as critical.

     

     

     

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

    Hi Mark,

    The subckt parameter only has an effect if there's a wildcard. So if you do:

    save VDD* subckt=C

    it will work - but it would also save VDDA, VDD2 etc as well, if they exist inside C.

    I think it's worth you logging a service request to ask that an enhancement is filed to get it to work even if there is no wildcard. I'm asking you to log a service request, because that way the enhancement can be associated with a specific customer - we can't do that if it's just on the forum here.

    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