DaffyDuck
New Member
Offline
Posts: 6
|
Hi,
I was trying to model in Verilog-A a differential OTA by the equations
ΔId = K.ΔVin.√( 4*Iss/(2.K) - sq(ΔVin) ) for |ΔVin| <= √2.(Veff) -- (1)
ΔId = Iss for |ΔVin| > √2.(Veff) -- (2)
ΔId = -Iss for |ΔVin| < √2.(Veff) -- (3)
Simulating in transient mode with the OTA in a negative feedback configuration, I got convergence problems. I had to change (1) such that ΔId = K.ΔVin.√abs( 4*Iss/(2.K) - sq(ΔVin) ) to get around the convergence problems.
But this method failed when I used the OTA in a switch-cap circuit at the top-level. There were no error messages, but the output was wrong and it started to occur when |ΔVin| <= √2.(Veff) .
Anyone knows the way to get around such problems of "piece-wise" functions? Apologize if I got the term "piece-wise" wrong, but I hope u get the idea. Thanks!!
|