• 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. Harmonic Index of PSS data is not found?

Stats

  • Locked Locked
  • Replies 18
  • Subscribers 63
  • Views 22639
  • 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

Harmonic Index of PSS data is not found?

SharjeelRiaz
SharjeelRiaz over 5 years ago

Hi,

I am simulating a 32.768 kHz Pierce oscillator for phase noise. I have attached the details of my PSS+PNOISE setups in screenshots. Post completion of the analysis, I am unable to get the Direct PLot Main Form to plit the phase noise and get the message in the subject.

One more query query that I would like to be addressed is which of the two analysis, PSS or HB is suited to my design. Now I know that HB gives good results for linear and weakly non-linear oscillators (LC, Colpitts, pierce, etc) and PSS (shooting) for strongly non-linear like ring. The thing is although my osc is a Pierce Oscillator which generates sinusoidal or nearly sinusoidal outputs , I am driving a comparator with these sinusoidal outputs to get a square wave output. Does this imply that I need to use PSS (shooting) if want to see the phase noise/jitter at comparator output and HB if looking for phase noise at osc outputs (with sinusoidal waveforms). 

By the way, what is the penalty to be paid if PSS shooting is used for linear and weakly non-linear oscillators?

Thanks,

Sharjeel

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

    A quick search didn't reveal anything obvious as to why this would happen. A few things to ask:

    1. Which IC subversion are you using? (Help->About will reveal this)
    2. Which spectre subversion are you using (this will be in the spectre.out file when you're running simulation)
    3. Can you post a screenshot of the results browser (the resuls database names)?
    4. Can you post the analysis statements from the bottom of the input.scs file?

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • SharjeelRiaz
    SharjeelRiaz over 5 years ago in reply to Andrew Beckett

    Hi Andrew,

    1. It's version IC 6.1.8-64b.500.8

    2. Spectre is Version 18.1.0.464.isr11 64bit -- 21 Sep 2019

    3. Database names are in the snapshot below (hoping this is what you wanted?)

    4. Analysis Statements from netlist posted below:

    simulatorOptions options psfversion="1.1.0" reltol=1e-3 vabstol=1e-6 \
    iabstol=1e-12 temp=temp_cor tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 \
    gmindc=1e-15 rforce=1 maxnotes=5 maxwarns=5 digits=5 cols=80 \
    pivrel=1e-3 sensfile="../psf/sens.output" checklimitdest=both
    pss ( comp_out gnda ) pss fund=32768 harms=40
    + errpreset=conservative autotstab=yes saveinit=yes oscic=lin
    + method=trap annotate=status
    pnoise ( comp_out gnda ) pnoise sweeptype=relative
    + relharmnum=1 start=100 stop=16384 dec=20 maxsideband=40
    + noiseout=[pm] annotate=status

    Digging further on this, I did notice this to be working fine if under "Output Harmonics" in pss form I choose "Select from Range" (which i set to 0 Hz to 4*32768 Hz) rather than choosing "Number of Harmonics"  (setting the field to 40) option which is what i originally got the error for.  In that case (i.e. when choosing Select from range in pss form) , the analysis statements at the bottom of netlist are:

    simulatorOptions options psfversion="1.1.0" reltol=1e-3 vabstol=1e-6 \
    iabstol=1e-12 temp=temp_cor tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 \
    gmindc=1e-15 rforce=1 maxnotes=5 maxwarns=5 digits=5 cols=80 \
    pivrel=1e-3 sensfile="../psf/sens.output" checklimitdest=both
    pss ( comp_out gnda ) pss fund=32768 harmsvec=[1]
    + errpreset=conservative autotstab=yes saveinit=yes oscic=lin
    + method=trap annotate=status
    pnoise ( comp_out gnda ) pnoise sweeptype=relative
    + relharmnum=1 start=100 stop=16384 dec=20 maxsideband=40
    + noiseout=[pm] annotate=status

    Thanks,

    Sharjeel

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

    Dear SharjeelRiaz,

    Just to add to Andrew's observations, I have a  few comments and things to check if I may...

    1. I noticed you are setting spectre to both automatically determine the time required to achieve steady-state oscillation and ignoring any initial conditions you may have in your simulation setup. Have you examined the waveforms under the pss_tran results to verify they are what you expect at the end of the stab phase?

    2. What was the value of tstab that spectre used?

    3. Have you examined the resulting estimated time domain steady-state solution following the pss analysis under the  pss_td analysis results. Is the frequency close to 32.768 KHz and do the results appear close to what you expect?

    Perhaps these may provide some additional clues into your problem. I've had a lot of experience with simulating quartz based XO and VCXO and thought I might at least pose some thoughts....

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • ShawnLogan
    ShawnLogan over 5 years ago in reply to SharjeelRiaz

    Dear SharjeelRiaz,

    Just to add to Andrew's observations, I have a  few comments and things to check if I may...

    1. I noticed you are setting spectre to both automatically determine the time required to achieve steady-state oscillation and ignoring any initial conditions you may have in your simulation setup. Have you examined the waveforms under the pss_tran results to verify they are what you expect at the end of the stab phase?

    2. What was the value of tstab that spectre used?

    3. Have you examined the resulting estimated time domain steady-state solution following the pss analysis under the  pss_td analysis results. Is the frequency close to 32.768 KHz and do the results appear close to what you expect?

    Perhaps these may provide some additional clues into your problem. I've had a lot of experience with simulating quartz based XO and VCXO and thought I might at least pose some thoughts....

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • SharjeelRiaz
    SharjeelRiaz over 5 years ago in reply to ShawnLogan

    Hi Shawn,

    Thanks for your input

    1. I haven't used IC parameter to set initial conditions of my oscillator at least for PSS sims and using calculate IC seems to work well

    2. For the particular load in my design (~17 pF), spectre seems to converge to steady state within 300 ms and does indeed settle very nicely to expected oscillation frequency (to within about ~ 20 ppm) : The Estimated oscillating frequency from Tstab Tran is = 32.7685 kHz .

    3. Yes, I have plotted the pss outputs and yes they look as expected.

    By the way, I am trying to replicate the issue again as i deleted the database last night, so can dump more data later if needed.

    Regards,

    Sharjeel

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

    Dear Sharjeel,

    Thank you for your responses! Two other thoughts...for your consideration only.

    1. Have you looked at the spectrum in the pss-fd data and sidebands? I am wondering if the high-Q nature of your circuit is leading to issues given the narrow sidebands. 

    2. What is the Q of your resonator model?  I am assuming you are using a variant of the Butterworth model. I am also wondering if it might be worth reducing the resonator  Q a bit and re-submiting your simulation with a few values of lesser Q.

    Shawn

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

    Thanks for staying with this, Shawn.

    1. I will try to de-Q my resonator and then step up to a very tight Q and see if that works. By the way, two of the sims I fired last night have  failed to converge (I am digging further). There is quite a bit of data to process, so i will get back later with consolidated findings. Btw,  My tstab method was unset which I believe defaults to traponly. I have specifically set it to trap now and see if that leads me anywhere (spectreRF manual suggestion if trapezoidal ringing causes convergence to fail)

    2. The Q of my model is around 11000. It's a an RLC tank with a shunt cap (generalized model of quartz crystals). Sorry, could you please elaborate on what you mean by a variant of butterworth model? 

    Regards,

    Sharjeel

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to SharjeelRiaz

    Hi Sharjeel,

    Looking further at the original issue, the only way I can replicate the problem is if i specify the number of harmonics for pss to save to be 0 (zero). With 40 I get no problem.

    Something strange is happening here - because it's clearly converged (otherwise the results wouldn't be there at all) - the fact that you say the output signal appears in the pss_fd results with harmonics also suggests that it ought to work.

    You should contact customer support - it's going to be pretty hard to diagnose this further here.

    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