I'm trying to run transient analysis on my LC osci...
# analog-design
l
I'm trying to run transient analysis on my LC oscillator, but I'm running into various brick walls during the way. Do anyone have some experience in this kind of simulation to give a little help?
βœ… 1
b
What kind of problem do you have? One basic thing you need to do is apply a small perturbation somewhere to get the oscillation started.
l
The problem is indeed with startup... I have the necessary loss compensation, as seen by S parameter analysis, but I see no oscillation in the transient answer. I know about the initial condition parameter (.IC or the .tran uic option), but I don't know how to use it.
b
Apply a small transient step to kick the circuit. Almost doesn't matter how you do this, but it must excite the differential mode if the circuit is differential. There is no way to help you more without seeing the circuit. UIC can also work, but is more tricky and simulator dependent.
πŸ‘ 1
a
If you're just looking for the syntax, and you're using ngspice, you can drop an .ic v(node)=1.2 This works well to get my ring oscillator started:)
πŸ‘ 1
h
My go-to method to kickstart an oscillator is to use a transient current pulse source (can easily be added where needed). Remember, you don't have thermal noise modeled in a .TRAN, so no natural mechanism to start the oscillation. In real life, the noise would act as a seed to cause the signal to rise where the oscillation condition is met.
πŸ‘ 3
βœ… 1
j
Same here, .ic works quite well for ring oscillators
πŸ‘ 1
l
The current pulse worked perfectly! Thanks @Harald Pretl!
πŸ‘ 2
βœ… 1