RF (microwave) Capable SPICE Simulators

SpectreRF is a time-domain simulator so it is hard to reach convergence when it comes to large circuit with high non-linearality. A successful simulation should give a high enough accuracy in a reasonable amount of simulation time.
Specifically for SpectreRF, the success different noise simulations all depend on the success of PSS (periodic steady-state simulation). So to make sure PSS being accurate is the key of RF other noise simulations.

I have been using SpectreRF to simulate non-linear oscillator for my project for over 2 years. Here are some hints for PSS and phase noise simulation based on my experience. And I assume users have the basic understanding of oscillator design and experience using Cadence SpectreRF.



Hints for using SpectreRF in phase noise simulation

1) PSS convergence

If the PSS fails to converge at a required accuracy, there are a few things we can do:

  • Warning for the PSS simulation should be fixed
  • Provide a "tstab" value at the rise/fall time edge instead of the oscillating flat top of the waveform. This conclusion is from the experience of simulating RTWO.
  • A larger "tstab" value can only make the convergence easier. Even though the transient waveforms of a few nodes indicate the system steady-state, there could be some nodes that still haven't reached steady state within the given "tstab" time. So giving a larger "tstab" value may help the simulator start at the real steady state to reach convergence. While the simulation time will increase with a larger "tstab" value.
  • A slightly increase or decrease of the "tstab" value will sometimes help convergence. This trick is based on experience. The exact reason is not clear yet. It probably relates to the simulator's algorithm.
  • The value "period" does not have to be very accurate to reach convergence, according to documentation of SpectreRF. But if this value is set too small, the simulation may never reach convergence. Thus the user may increase the estimated "period" value slightly to help reach convergence.

  • 2) Accuracy of Pnoise result

    As mentioned earlier, a phase noise result with low simulation accuracy is meaningless. Here we explain when the accuracy is enough.
    First of all, if the pnoise simulation gives warning message regarding the accuracy being low for computation, the result is not accurate enough and should be discarded.

    Secondly, if the "errpreset" in PSS is not set to "conservative", the pnoise simulation is generally not accurate enough.

    If both of the above requirements are satisfied, we still may not reach a high enough accuracy. The recommended way to check is to repeat PSS & pnoise simulations with increasing more accuracy parameters and then compare the phase noise result. If the higher accuracy setup results in the same result as a lower accuracy setup, it means the result of the lower accuracy setup is accurate enough.