• 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. ADE/Virtuoso Question: .scs File Related

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 125
  • Views 3194
  • 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

ADE/Virtuoso Question: .scs File Related

VMac
VMac over 6 years ago

Hello,

I'm new to this forum, so I'm putting this post in the area I think it should be in. The questions area. If there is a better place for this post, please direct me there.

I'm trying to design a Rail-to-rail OTA, shown here.

And I've created a test-bench to test the functionality of the OTA, shown here.

My question is this. How do I get ADE to plot the gm of a given transistor in the OTA when the simulation is running on a test bench schematic and not the schematic of the OTA directly? I know that if you open a simulation on a schematic, you can plot the gm of any transistors in THAT schematic by simply creating a *.scs file and putting in "save [component name]:all" and then you plot any model parameter you want. But how do you do this for a transistor that lies within a symbol that is within a schematic? I thought that "save [symbol name].[component name within symbol]:all" would work, but all I can get is the DC operating point of the target component's model parameters. What I want is to see how the model parameters, say gm, change with some input, say the input common mode.

For reference, and in case it is difficult to see, the name of the OTA within the testbench is just "OTA". The name of the transistor I'm interested in that is within the OTA is "N_DPair_Pos".

The commands I've tried using in the .scs for ADE for the testbench are as follows:

save N_DPair_Pos:all

save OTA/N_DPair_Pos:all

save OTA.N_DPair_Pos:all

save OTA:all

I've tried looking through Help->Contents but I'm fairly new to cadence and there is a lot to read. If someone can answer my question then point me to what part of the documentation would help with understanding more about .scs files, I'd be most grateful.

Thank you.

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

    First of all, posting this in an individual forum rather than the Feedback, Suggestions and Questions forum (which it says is for "Provide feedback on the forums or any other part of the site. Questions and suggestions welcome"; it's not for technical questions as there are other technical forums for that). So I moved it to Custom IC Design, since that's what this is about.

    For a while, ADE has supported the ability to do Outputs->To Be Saved->Select OP Parameters. You can then easily select the component on the schematic and pick which operating point parameters you wish to save. Assuming that the instance name is "OTA", this would end up putting something like this in the netlist:

    save OTA.N_DPair_Pos:all

    You can find out more by typing "spectre -h save" on the UNIX terminal. Spectre's hierarchy separator is "." (so that's why / wouldn't work).

    It's also possible in current versions to retrieve the value in a transient using the OPT function in the calculator - but in earlier version you'd have to look for N_DPair_Pos:gm within the OTA folder in the tran results. I'm assuming you were looking in the dcOp results rather than the tran results? You didn't make it clear where you'd looked for the gm signal.

    Put another way, the dc operating point info is saved for all devices during a DC, but is not normally saved in a swept analysis as this would produce a lot of data that wouldn't be needed most of the time. So you have to choose to save it. Historically there was no easy way of doing this in ADE, but in an IC616 hotfix (I think that's when it was added if my memory is correct), the ability to save operating point data through the user interface was added.

    Regards,

    Andrew.

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

    First of all, posting this in an individual forum rather than the Feedback, Suggestions and Questions forum (which it says is for "Provide feedback on the forums or any other part of the site. Questions and suggestions welcome"; it's not for technical questions as there are other technical forums for that). So I moved it to Custom IC Design, since that's what this is about.

    For a while, ADE has supported the ability to do Outputs->To Be Saved->Select OP Parameters. You can then easily select the component on the schematic and pick which operating point parameters you wish to save. Assuming that the instance name is "OTA", this would end up putting something like this in the netlist:

    save OTA.N_DPair_Pos:all

    You can find out more by typing "spectre -h save" on the UNIX terminal. Spectre's hierarchy separator is "." (so that's why / wouldn't work).

    It's also possible in current versions to retrieve the value in a transient using the OPT function in the calculator - but in earlier version you'd have to look for N_DPair_Pos:gm within the OTA folder in the tran results. I'm assuming you were looking in the dcOp results rather than the tran results? You didn't make it clear where you'd looked for the gm signal.

    Put another way, the dc operating point info is saved for all devices during a DC, but is not normally saved in a swept analysis as this would produce a lot of data that wouldn't be needed most of the time. So you have to choose to save it. Historically there was no easy way of doing this in ADE, but in an IC616 hotfix (I think that's when it was added if my memory is correct), the ability to save operating point data through the user interface was added.

    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