• 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. RF Design
  3. Plotting gm Vs. time from PSS simulation (6.1.5-64b.500...

Stats

  • Locked Locked
  • Replies 13
  • Subscribers 63
  • Views 19083
  • 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

Plotting gm Vs. time from PSS simulation (6.1.5-64b.500.11)

MicheleA
MicheleA over 11 years ago

Hi all,

yes...there is this support answer #11003524 which should address the topic.

I also learnt from Andrew some time ago about saving oppoints and/or specific info through a file and attaching it to the model libraries.

What I am experiencing now is that the method:

a) gives me the info out of a *tran*

b) gives me the info out of a *envlp_td* 

c) for a *pss*, I get

1. a _constant_ value in the *pss_td* folder, if I use the shooting method (seems like a DCOP value)

2. nothing if I use the HB method

Just wondering whether that is the behavior to be expected, or shouldn't I get a (nice) plot of my wanted gm over a period, exactly like I get it for any other V/I in the circuit after a pss?

I seem to remember having done the same thing some 6 months ago and it worked fine..

Thanks for any help.

Michele 

  • Cancel
  • MicheleA
    MicheleA over 11 years ago

    So...I must be growing older since I do not remember replying to myself in the past ;-)

    Anyhow, I found out yesterday what the issue is. I was simulating using the 'High Performance Simulator -- APS'.

    For some reason - I am in contact with the Support for this - it looks like the stored gm is just a DC value.

    I had a glimpse yesterday and tried the same simulation with good ole Spectre and bam! My gm Vs. time was there!

    Happiness!

    Maybe this helps someone,

    Michele 

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

    Michele,

    That sounds like a bug to me. This ought to work, so support should ensure that a CCR is filed to get this fixed.

    That said, I tried to reproduce it with MMSIM12.1 ISR14, and for me I get the gm value saved during shooting in the pss_td database (as a waveform) even when using APS. This isn't true with harmonic balance, but then again that doesn't surprise me - with harmonic balance it would need to solve the gm as a harmonic series and then convert it back into the time domain - and it only computes the voltages and currents as a harmonic series.

    Here's the netlist I used:

    // test of saving gm during a pss analysis

    model nch bsim4 type=n
    model pch bsim4 type=p

    MP1 (z a vdd vdd) pch w=2u l=0.5u
    MN1 (z a 0 0) nch w=1u l=0.5u

    Vz (a 0) vsource type=pulse period=40n width=20n rise=1n fall=1n val0=0 val1=1.5
    Vvdd (vdd 0) vsource type=dc dc=1.5

    save *:gm sigtype=dev devtype=bsim4
    tran tran stop=200n
    pss pss period=40n outputtype=all // harmonicbalance=yes

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MicheleA
    MicheleA over 11 years ago

    Andrew,

    yes I just sent my netlist to the Support via our internal channel. Will keep you posted here anyways.

    I do not know which MMSIM version I am under (what's the command to see this?), just the Cadence version.

    I could source from 500.4 to 500.15 but all gave me this (with APS).

    By the way, I was under the impression that HB would not work for time rep of gm. Then why do you say 'harmonicbalance=yes' in your netlist?

    Regards,

    Michele 

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

    Michele,

    Type "spectre -W" or look at the top of your spectre output log - it will tell you the subversion you're using.

    The harmonicbalance=yes in my netlist is commented out (it's preceded by // which is a comment).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MicheleA
    MicheleA over 11 years ago
    sub-version 12.1.0.272 it says.. M
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    Surprised you're using the base MMSIM12.1 version - been quite a few hotfixes since then. However, with my netlist, that version works too - I get a waveform in the pss_td database for the gm.

    Perhaps you can check? Run "spectre invpss.scs" and open the results in ViVA. Maybe there's some subtle difference in your testcase.

    Regards,

    Andrew.

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

    Of course I meant "spectre +aps invpss.scs".

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MicheleA
    MicheleA over 11 years ago
    Andrew, maybe I should add that I am doing all this from ADEXL I will later try the following: 1 - save the netlist you provided above under invpss.scs 2 - run the command 'spectre +aps invpss.scs' 3 - open the results in ViVa (that's going to be a journey..never used the sim from cmd line ;-P) Will keep you posted, M
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 11 years ago

    I like to encourage people to live on the edge now and again ;-)

    In general I'd expect you to be running from ADE; obviously the benefit of a small command line example is that it's a bit easier to share in a forum like this (and I can throw it together in a few seconds). 

    I look forward to hearing your findings!

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MicheleA
    MicheleA over 11 years ago

    Thank you for fostering my growth Andrew ;-)

    ...And indeed, your netlist works like a charm! But what a crappy gm :-D

    I then tried to use ADE instead of ADEXL for my circuit, however the result is the same: I get a curve with Spectre only. APS gives a sort of DC value out.

    Same thing if I sim my circuit from the command line (now I'm a master :-)) 

    I also noted that the whole sim setup is waaay faster when using cmd line. Ok, the circuit is two transitors but I got the impression that the processes *before* actual simulation took a fraction of the time.

    Can you please point me to the help entries containing - possibly an overview - of topics like 'running Spectre from the command line' and directory structure...things like that.  Maybe the time has come for me to understand all this a little better.

    Thanks,

    Michele 

    • 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