• 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. Why the tstab and PSS simulations differ in terms of frequency...

Stats

  • Locked Locked
  • Replies 14
  • Subscribers 125
  • Views 20819
  • 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

Why the tstab and PSS simulations differ in terms of frequency and vrms voltage?

Yasir Shafi
Yasir Shafi over 5 years ago

Hi,

I have been simulating the VCO, the frequency and voltage calculated from the tsab simulation varies from the PSS simulation? Why is that so?

  • Cancel
  • ShawnLogan
    ShawnLogan over 5 years ago

    Dear Yasir,

    Please read my earlier note concerning the use of the pss-fd information from the pss analysis. Please also provide more detail on how you are determining the frequency and voltage from your "tstab" and pss analysis.

    1. How long is your tstab interval or is it set automatically?

    2. What is the appropriate settling time of your VCO?

    3. What accuracy settings are you using in your simulation?

    4. What constitutes the "difference" in voltages and frequencies between your tstab and pss results (i.e. what are the magnitude of the differences)

    5. What version of the tools are you using?

    6. Does the spectre.out file indicate that the pss solution converged? If so, how does the converged frequency compare to the two you are reporting?

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Yasir Shafi
    Yasir Shafi over 5 years ago in reply to ShawnLogan

    Hi Shawn,

    The tstab interval is around 120ns,  The settling time is 100-300 ps. I am using gear2only engine to avoid the trapezoidal ringing that is caused using the traponly settings. The max periods is 50.

     

    The virtuoso version is ICADV12.3-64b.500.12. The difference in voltages (Vrms) is around 50 to 100mV and the frequency difference is around 3-4 GHz between tstab and PSS simulation. I am using freq command in the calculator to find the frequency from the tstab. The solution does converge due to which I am able to measure the respective phase noise. Due to the difference of Vrms and frequency between the tstab and PSS it gets difficult on which approach to find the frequency to trust.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 5 years ago in reply to Yasir Shafi

    Dear Yasir,

    Thank you, very much, for your added information! It is very helpful to me!

    The spectre.out  data and your descriptive information does help tremendously. 

    You mention that:

    bur did not include the nominal frequency do it is difficult to assess how much of a frequency difference occurs (i.e. does 3 - 4 GHz represent a 100 ppm error or 10% error in frequency).

    Nevertheless, I believe a possible reason for  the difference in frequency you are observing is your use of the  frequency() function. This function determines the average frequency using the time period of the waveform in its argument and the number of transitions it finds over that time period. Hence, since your tstab period is dominated by the time over which the VCO output frequency is settling, its output does not represent the long term steady-state output frequency provided by the pss analysis. What I might suggest to you is you either clip the waveform over the last portion of the tstab interval, or alternatively, use the freq() function in lieu of the frequency() function. The freq() function provides the instantaneous frequency for each period of the waveform defined by the zero-crossings you define as its arguments. Since the freq() function provides an output waveform, you may plot the results of the freq() function versus time whereas the frequency() function provides only a scalar result. I expect the values of the freq() function at the end of your tstab period will more closely align with that reported in the pss analysis.

    From this result, if my hypothesis is true, we can further investigate the manner in which your rms voltages are compared.

    Let me know if my thoughts or comments need to be further clarified!

    Shawn

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to ShawnLogan

    It's also important to understand that even if you measure the final frequency at the end of the tstab, it may still not match the frequency found by the PSS analysis. The PSS analysis solves for the settled periodic steady state (either using the Shooting Newton method or harmonic balance; both are aiming to find the settled steady state), and it's quite possible that this has not been reached by the end of the tstab period. There's no requirement to have the tstab very close to the final settled steady state - normally you want it heading in the right direction and have somewhat "linear" settling to reach the settled state. 

    This is particularly noticeable in high Q circuits (and high Q oscillators), where the final voltages and frequency found by the PSS may be a fair way from the end of the tstab. If you were to run the tstab long enough, then it should match what the PSS finds, but the whole point of PSS is to avoid the need to run a very long transient to find the settled steady state; the PSS methods find it more directly.

    It's not normally a good idea to use gear2only in the tstab for an oscillator, because this will tend to damp the oscillation - which is another reason why you may have a discrepancy. If there's significant trapezoidal ringing (I'm a bit surprised for an oscillator), then you can reduce that by tightening reltol (or perhaps just picking conservative).

    Regards,

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 5 years ago in reply to Andrew Beckett

    Dear Andrew,

    Thank you for your added insights - as usual!

    Andrew Beckett said:
    It's also important to understand that even if you measure the final frequency at the end of the tstab, it may still not match the frequency found by the PSS analysis.

    I fully understand this, but my comment was aimed at the fact that Yasir indicated his settling time was between 100 ps (sic) and 300 ps (sic) - which I assumed was intended to be "ns" and his tstab was 120 ns. Hence, I would expect the frequency value at the end of his tstab simulation might be "somewhat" close to that provided by the steady-state estimate. In any case, your comment is absolutely correct.

    With regard to the high Q comment in your response, in a different post, Yasir notes his VCO is an LC based resonant VCO. Hence, it is not what I would classify as a high Q VCO.

    Andrew Beckett said:
    It's not normally a good idea to use gear2only in the tstab for an oscillator, because this will tend to damp the oscillation - which is another reason why you may have a discrepancy.

    Just to add a bit of personal experience, I have found it necessary over the years to utilize the gear2only algorithm in pnoise/pss simulations. Without specifying this, I have run into pss convergence and spectre crashes  when simulating phase noise for LC based VCO in multiple technologies and spectre/MMSIM versions.

    In Yasir's case, in a different post, he shows significant trapezoidal ringing in his "moderate" errpreset simulation results. Hence, I suggested he either switch to "conservative" or maintain the "moderate" setting and choose the "gear2only" integration option. I realize the "conservative" option enforces the gear2only algorithm.

    Shawn

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to ShawnLogan

    Unknown said:

    Just to add a bit of personal experience, I have found it necessary over the years to utilize the gear2only algorithm in pnoise/pss simulations. Without specifying this, I have run into pss convergence and spectre crashes  when simulating phase noise for LC based VCO in multiple technologies and spectre/MMSIM versions.

    I'm rather surprised that Spectre crashes (this absolutely should be reported to us if it does), and note I'm only suggesting that traponly should be used in the tstab part (i.e. via tstabmethod, and it's the default for tstabmethod in all errpreset levels). The default for the shooting interval is gear2only anyway (for moderate and conservative), and I'd recommend sticking with that. I can't really see why setting tstabmethod to traponly (and keeping method=gear2only for the shooting interval) would lead to convergence problems. So it isn't a matter of moderate having a default of traponly (moderate in tran analysis has a default of traponly); probably worth looking at the narrative at the end of "spectre -h pss" and seeing the tables of settings for errpreset, an 

    The reason for suggesting tstabmethod=traponly is that it means that the oscillation is more likely to build up rather than be damped out by the small amount of numerical damping in the gear methods, but you have the benefit of method=gear2only during the shooting phase as it is trying to converge. 

    Sorry I'd not seen the other posts - I've been only partly available the last week so I must admit I'd not really been following all the threads that you've been answering very well!

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 5 years ago in reply to Andrew Beckett

    Dear Andrew,

    I am sorry to have bothered you - I know you have been extremely busy (as if that is not always the case!!!).

    Andrew Beckett said:
    'm rather surprised that Spectre crashes (this absolutely should be reported to us if it does), and note I'm only suggesting that traponly should be used in the tstab part (i.e. via tstabmethod, and it's the default for tstabmethod in all errpreset levels). The default for the shooting interval is gear2only anyway (for moderate and conservative), and I'd recommend sticking with that. I can't really see why setting tstabmethod to traponly (and keeping method=gear2only for the shooting interval) would lead to convergence problems.

    I am reasonably "religious" about filing Cadence SR's when I experience unexpected crashes or non-converging cases and have, over the years, reported them. As I am sure you are also aware, it takes some time to have the Applications Engineer duplicate the results due to the need to get access to the PDK, duplicate the exact conditions, and often find he or she cannot. Hence, in spite of my attempts to file and determine the root cause, I run my own experiments in parallel so as to complete my work. In many cases, forcing the integration algorithm to "gear2only" in the tstab phase has addressed the issue. However, you are absolutely correct, the use of gear2only can damp out the small numerical noise as the oscillation amplitude builds, but I have not experienced that on the LC/XO/VCXO designs for which I have been involved. Hence, my comment is really just based on personal experience - and I don't intend to suggest it as a general rule - 'nuff said as I've wasted more of your time!

    Andrew Beckett said:
    Sorry I'd not seen the other posts - I've been only partly available the last week

    Don't even attempt to apologize! This is fully understood. Yasir started two posts that likely could have been combined.

    Thank you, again!

    Shawn

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • Yasir Shafi
    Yasir Shafi over 5 years ago in reply to Andrew Beckett

    Hi Andrew, 

    Thanks for the feedback, I tried to use trap only during my early simulations but I had convergence issues associated to it, I simulated with conservative settings but due to continuous convergence issues I had to switch to gear2only method, fortunately, the oscillation didn't dampen and proved to helpful in simulating the VCO. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Yasir Shafi
    Yasir Shafi over 5 years ago in reply to ShawnLogan

    sorry for confusing you guys,  I should have combined them. It would have been easier to understand. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Yasir Shafi
    Yasir Shafi over 5 years ago in reply to ShawnLogan

    Hi,

    Below is the tsab waveform simulation (I tried to calculate the frequency at the end of the tstab period, it varies from the PSS simulation)

    below the PSS waveform, there is a visible difference of 64mV Vp-p between the tstab and the PSS. Now if I calculate the power levels manually by equations from these Vp-p values obtained. the output power in dBm will vary. I am using PSS (Harmonic balance). I believe PSS is the way to go and the trusted one.. feel free to comment. Thanks!

    • 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