• 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. PSS analysis - oscillator

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 63
  • Views 6201
  • 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

PSS analysis - oscillator

JuliaP
JuliaP over 13 years ago

 

Dear all,

I am simulating an oscillator (RLC lumped element connected to a sustaining amplifier) in SpectreRF 5.10.41.121508. The oscillation frequency is about 0.85 MHz. There is some initial current condition (50nA) for the inductance L.

The transient analysis runs well and shows the oscillations building up (100mVpp range).

However, when I run a PSS analysis with either traponly or gear2only integration method, I encounter start-up problems or wrong estimation of the frequency (for instance 6MHz instead of 0.85 MHz). I choose for the simulation parameters the HARD-I case suggested in the Oscillator Noise Analysis in SpectreRF.

I know that the tstab, method and the steadyratio are very important to get the right convergence of PSS but so far it is not working out.

Below is the output log of the simulations.

Could you please give me some suggestions for the proper start-up of the oscillations in PSS analysis?

Kind regards

Julia

***********************************************

Transient Analysis `tran': time = (0 s -> 5 us)

***********************************************

Notice from spectre during IC analysis, during transient analysis `tran'.

L0: Initial condition computed for node L0:1 is in error by 50 nA (100 %).

To reduce error in computed initial conditions, decrease `rforce'.

However, setting rforce too small may result in convergence

difficulties or in the matrix becoming singular.

Important parameter values:

start = 0 s

outputstart = 0 s

stop = 5 us

step = 5 ns

maxstep = 100 ns

ic = all

skipdc = no

reltol = 10e-06

abstol(I) = 1 pA

abstol(V) = 30 nV

temp = 27 C

tnom = 27 C

tempeffects = all

errpreset = moderate

method = traponly

lteratio = 3.5

relref = sigglobal

cmin = 0 F

gmin = 1 pS

maxrsd = 0 Ohm

mos_method = s

mos_vres = 50 mV

tran: time = 126.6 ns (2.53 %), step = 13.16 ns (263 m%)

tran: time = 376.7 ns (7.53 %), step = 10.06 ns (201 m%)

tran: time = 642.4 ns (12.8 %), step = 28.11 ns (562 m%)

tran: time = 879.9 ns (17.6 %), step = 9.945 ns (199 m%)

tran: time = 1.127 us (22.5 %), step = 13.19 ns (264 m%)

tran: time = 1.377 us (27.5 %), step = 10.69 ns (214 m%)

tran: time = 1.631 us (32.6 %), step = 10.87 ns (217 m%)

tran: time = 1.885 us (37.7 %), step = 13.1 ns (262 m%)

tran: time = 2.126 us (42.5 %), step = 9.989 ns (200 m%)

tran: time = 2.392 us (47.8 %), step = 24.88 ns (498 m%)

tran: time = 2.635 us (52.7 %), step = 9.975 ns (199 m%)

tran: time = 2.878 us (57.6 %), step = 12.63 ns (253 m%)

tran: time = 3.131 us (62.6 %), step = 10.87 ns (217 m%)

tran: time = 3.385 us (67.7 %), step = 10.7 ns (214 m%)

tran: time = 3.637 us (72.7 %), step = 14.54 ns (291 m%)

tran: time = 3.881 us (77.6 %), step = 9.952 ns (199 m%)

tran: time = 4.131 us (82.6 %), step = 18.58 ns (372 m%)

tran: time = 4.38 us (87.6 %), step = 10.07 ns (201 m%)

tran: time = 4.63 us (92.6 %), step = 12.18 ns (244 m%)

tran: time = 4.884 us (97.7 %), step = 11.09 ns (222 m%)

Number of accepted tran steps = 421.

Initial condition solution time = 10 ms.

Intrinsic tran analysis time = 80 ms.

Total time required for tran analysis `tran' was 90 ms.

finalTimeOP: writing operating point information to rawfile.

******************

DC Analysis `dcOp'

******************

Important parameter values:

reltol = 10e-06

abstol(I) = 1 pA

abstol(V) = 30 nV

temp = 27 C

tnom = 27 C

tempeffects = all

gmin = 1 pS

maxrsd = 0 Ohm

mos_method = s

mos_vres = 50 mV

Convergence achieved in 4 iterations.

Total time required for dc analysis `dcOp' was 0 s.

dcOpInfo: writing operating point information to rawfile.

************************************************************

Periodic Steady-State Analysis `pss': guessed fund = 850 kHz

************************************************************

=================================

`pss': time = (0 s -> 10.8824 us)

=================================

Important parameter values in tstab integration:

start = 0 s

outputstart = 0 s

stop = 10.8824 us

period = 1.17647 us

step = 6.17647 ns

maxstep = 10 ns

ic = dc

skipdc = no

reltol = 10e-06

abstol(I) = 1 pA

abstol(V) = 30 nV

temp = 27 C

tnom = 27 C

tempeffects = all

method = traponly

lteratio = 3.5

relref = sigglobal

cmin = 0 F

gmin = 1 pS

maxrsd = 0 Ohm

mos_method = s

mos_vres = 50 mV

pss: time = 276.2 ns (2.54 %), step = 10 ns (91.9 m%)

pss: time = 816.2 ns (7.5 %), step = 10 ns (91.9 m%)

pss: time = 1.366 us (12.6 %), step = 10 ns (91.9 m%)

pss: time = 1.906 us (17.5 %), step = 10 ns (91.9 m%)

pss: time = 2.456 us (22.6 %), step = 10 ns (91.9 m%)

pss: time = 2.996 us (27.5 %), step = 10 ns (91.9 m%)

pss: time = 3.546 us (32.6 %), step = 10 ns (91.9 m%)

pss: time = 4.086 us (37.5 %), step = 10 ns (91.9 m%)

pss: time = 4.626 us (42.5 %), step = 10 ns (91.9 m%)

pss: time = 5.176 us (47.6 %), step = 10 ns (91.9 m%)

pss: time = 5.716 us (52.5 %), step = 10 ns (91.9 m%)

pss: time = 6.261 us (57.5 %), step = 4.706 ns (43.2 m%)

pss: time = 6.802 us (62.5 %), step = 4.706 ns (43.2 m%)

pss: time = 7.348 us (67.5 %), step = 4.706 ns (43.2 m%)

pss: time = 7.894 us (72.5 %), step = 4.706 ns (43.2 m%)

pss: time = 8.435 us (77.5 %), step = 4.706 ns (43.2 m%)

pss: time = 8.981 us (82.5 %), step = 4.706 ns (43.2 m%)

pss: time = 9.522 us (87.5 %), step = 4.706 ns (43.2 m%)

pss: time = 10.07 us (92.5 %), step = 4.706 ns (43.2 m%)

pss: time = 10.61 us (97.5 %), step = 4.706 ns (43.2 m%)

Error found by spectre at time = 10.8824 us during periodic steady state

analysis `pss'.

V(VOUT) is too small to reliably detect the period of the oscillator. This

may be because nodes with insignificant signal levels were chosen, or

it may be because the oscillator was never properly started.

Analysis `pss' terminated prematurely due to error.

modelParameter: writing model parameter values to rawfile.

element: writing instance parameter values to rawfile.

outputParameter: writing output parameter values to rawfile.

designParamVals: writing netlist parameters to rawfile.

primitives: writing primitives to rawfile.

subckts: writing subcircuits to rawfile.

 

  • Cancel
Parents
  • Tawna
    Tawna over 13 years ago
    Hi Julia,
     
    You are quite welcome!  Have fun simulating!
     
    best regards,
     
    Tawna
     
    P.S.  Note that if you are simulating a ring oscillator, you would want to use shooting pss, not hb (harmonic balance).
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Tawna
    Tawna over 13 years ago
    Hi Julia,
     
    You are quite welcome!  Have fun simulating!
     
    best regards,
     
    Tawna
     
    P.S.  Note that if you are simulating a ring oscillator, you would want to use shooting pss, not hb (harmonic balance).
    • 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