The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
May 21st, 2024, 9:30pm
Pages: 1
Send Topic Print
Running transient simulation for oscillators (Read 2853 times)
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Running transient simulation for oscillators
Jul 31st, 2019, 11:10am
 
Hi,

I am trying to simulating pulling (not locking) between two LC tanks on cadence so not sure if it's possible to run pss to simulate pulling effects and had to revert to transient sims. I run into a lot of trouble, when I do a transient sim especially when w1-w2 = 2e-4*w1. The ppm difference is so small that when I try to plot the dft (even with sufficient resolution), i see the weird spurs closeby (like 3MHz) that are caused due to instantaneous frequency difference which scales linearly with reltol but this blows up simulation time. Is this expected in general or there is a way to avoid this?

Back to top
 
 
View Profile   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #1 - Aug 4th, 2019, 3:45pm
 
Is it possible to run pss for simulating coupling between two VCOs with a ppm offset (say like 200 ppm)? I see that pss doesn't converge when I attempt to do this (even tried tstab> beat period). Is there anything specific that I should do for simulating pulling behavior if I try to run pss?
Back to top
 
 
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Online



Posts: 2384
Silicon Valley
Re: Running transient simulation for oscillators
Reply #2 - Aug 5th, 2019, 2:06am
 
PSS will not converge unless there is a purely periodic solution. Generally when simulating coupled oscillators the solution is not periodic and so PSS is not suitable. The only exception is when the coupling between the oscillators is so strong that the oscillators are fully entrained.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #3 - Aug 5th, 2019, 2:59pm
 
Hi Ken Kundert,

Thanks for the reply. Then if I am interested in plotting the beat frequencies due to "pulling" (not injection locking), then I can only do transient simulation, right? & then plot dft?

One problem with transient is that it seems to have a beat tone by default (attached the envelope of transient signal). Meaning, I see a spur of 3.8MHz for a 9GHz oscillation tone even in the absence of any injection. This seems to be due to numerical inaccuracy as it drops with increase in reltol. Is this expected in general?

Back to top
 

beat.PNG
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Online



Posts: 2384
Silicon Valley
Re: Running transient simulation for oscillators
Reply #4 - Aug 5th, 2019, 3:50pm
 
Quote:
Thanks for the reply. Then if I am interested in plotting the beat frequencies due to "pulling" (not injection locking), then I can only do transient simulation, right? & then plot dft?
Correct

Quote:
One problem with transient is that it seems to have a beat tone by default (attached the envelope of transient signal). Meaning, I see a spur of 3.8MHz for a 9GHz oscillation tone even in the absence of any injection. This seems to be due to numerical inaccuracy as it drops with increase in reltol. Is this expected in general?
Yes. The issue is that the simulation algorithms are reacting to the large signals, meaning that the errors that are created are not independent of the signals, but are being modulated by the signals.

Behzad Razavi published a rather famous rant about this in "A Study of Phase  Noise in CMOS Oscillators" (JSSC 3/96). It is a particular frustration of mine as I came up with a solution to the problem and presented to all of the companies that are producing simulators for analog/RF ICs and they were all uninterested, saying that their customers seemed happy with the accuracy of their DFT results.

As a user it is quite difficult to eliminate this error. I think your best option is to leave reltol to something reasonable and instead shrink maxstep. This should reduce the largest source of this error.

I hesitate to make this recommendation as I find designers can overuse such advice. Normally controlling accuracy using maxstep is a very poor approach, but in this very specific case, it may be your best option.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #5 - Aug 5th, 2019, 4:13pm
 
Hi Ken Kundert,

Thank you very much for the reply, I really appreciate it.

I also observe that enabling transient noise option gets rid off this spur (do you expect this?), but I don't observe pulling spurs too & the spectrum looks clean without spurs even in the presence of pulling, which is weird.
Back to top
 
 
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Online



Posts: 2384
Silicon Valley
Re: Running transient simulation for oscillators
Reply #6 - Aug 5th, 2019, 6:44pm
 
A well-designed transient noise should should shrink the time step in order to render white noise sources properly.  This is one of several reasons I would typically avoid transient noise as a well designed transient noise should be slow. However, as a side effect, if they do shrink the step, it should help with your problem. Even if they are not shrinking the time step, injecting randomness into the system would act to obscure the modulation effects, and so would likely reduce and obscure the beat tone you are seeing.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #7 - Aug 6th, 2019, 11:56am
 
Hi Ken Kundert,

Thanks for the reply.

For some reason, I see that I don't observe pulling effects when I use "mind" in analog lib to model mutual inductance.
On the other hand, if I do see pulling effects when I use the equivalent transformer circuit (shown on the right side). (L1=L2)

I ran some independent sims (like ac sims) for the transformer to verify the equivalent model, and they are the same.


Back to top
 

k_ind.PNG
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Online



Posts: 2384
Silicon Valley
Re: Running transient simulation for oscillators
Reply #8 - Aug 6th, 2019, 12:21pm
 
It is just a coincidence. Because you are being plagued by small simulation errors, small seeming inconsequential changes to the circuit or the simulator settings can effect the results in unexpected ways, but I believe you will find them very fragile.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #9 - Aug 6th, 2019, 3:22pm
 
Hi Ken Kundert,

Thanks for the reply. So it's possible that the pulling spurs results that I am seeing aren't right at all?
Back to top
 
 
View Profile   IP Logged
Ken Kundert
Global Moderator
*****
Online



Posts: 2384
Silicon Valley
Re: Running transient simulation for oscillators
Reply #10 - Aug 6th, 2019, 9:12pm
 
It is possible, but I don't know how likely the chances are either way. For me to be able to say with any certainty one way or another I would need to be running simulations myself so that I could do detailed experiments.

The question you are asking is, is it possible that there are patterns in the error made in the simulation that mimic a plausible signal. Yes, that is possible. Is it happening in this case, I have no idea.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
iVenky
Senior Member
****
Offline



Posts: 101
Silicon Valley
Re: Running transient simulation for oscillators
Reply #11 - Aug 9th, 2019, 2:27pm
 
Hi Ken,

Thanks for the reply. I am wondering about another question. I am not sure if this is the right thread. We can have pulling due to parasitic current coupling that can be modeled using a vccs source or we could have due to magnetic coupling 'k' between inductors. Is the injection strength defined as Iinj/Iosc in the vccs case the same as 'k' defined as M/sqrt(L1L2) between the inductors?
Back to top
 
 
View Profile   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.