The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl Simulators >> Circuit Simulators >> spectre pss analysis convergence failure https://designers-guide.org/forum/YaBB.pl?num=1477365234 Message started by simsim on Oct 24th, 2016, 8:13pm |
Title: spectre pss analysis convergence failure Post by simsim on Oct 24th, 2016, 8:13pm Hi all, I have a two stage amplifier chain, and I am trying to run pac analysis on it. However, the pss analysis is failing to converge. Here is some messages from spectre. What could be done to make this pss analysis converge? ------------- Important parameter values in pss iteration: start = 103.3 us outputstart = 83.3 us stop = 106.633 us period = 3.33333 us maxperiods = 60 steadyratio = 1e-03 step = 23.3333 ns maxstep = 50 ns ic = node useprevic = no skipdc = yes reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = liberal method = gear2only lteratio = 3.5 relref = sigglobal cmin = 5 fF gmin = 0 S rabsshort = 1 mOhm Warning from spectre at time = 103.317 us during periodic steady state analysis `pss'. WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Warning from spectre at time = 103.304 us during periodic steady state analysis `pss'. WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Warning from spectre at time = 103.301 us during periodic steady state analysis `pss'. WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Warning from spectre at time = 103.3 us during periodic steady state analysis `pss'. WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Warning from spectre at time = 103.3 us during periodic steady state analysis `pss'. WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Further occurrences of this warning will be suppressed. Error found by spectre at time = 103.333 us during periodic steady state analysis `pss'. ERROR (SPECTRE-16192): No convergence achieved with the minimum time step specified. Warning from spectre at time = 103.333 us during periodic steady state analysis `pss'. WARNING (SPECTRE-223): Detected NaN at node AGND. WARNING (SPECTRE-223): Detected NaN at node OUTM_INT. WARNING (SPECTRE-223): Detected NaN at node OUTP_INT. WARNING (SPECTRE-223): Detected NaN at node VREF_OCM_INT. WARNING (SPECTRE-223): Detected NaN at node I0.I1.net065. Further occurrences of this warning will be suppressed. The values for those nodes that did not converge on the last Newton iteration are given below. The manner in which the convergence criteria were not satisfied is also given. Failed test: | Value | > RelTol*Ref + AbsTol Top 10 Residue too large Convergence failure: V(I0.I0.M74:int_g) = 381.725 mV, previously 381.725 mV. residue too large: | 9.50548e+18 A | > 9.50548e+15 A + 1 pA V(I0.I0.M79:int_g) = 381.725 mV, previously 381.725 mV. residue too large: | 10.1416e+18 A | > 10.1416e+15 A + 1 pA V(I0.I0.M77:int_g) = 381.725 mV, previously 381.725 mV. residue too large: | 2.5354e+18 A | > 2.5354e+15 A + 1 pA V(I0.I1.I83.M1:int_g) = 1.1875 mV, previously 1.1875 mV. residue too large: | 2.28539e+18 A | > 2.28539e+15 A + 1 pA V(I0.I1.I78.M1:int_g) = 996.209 mV, previously 996.209 mV. residue too large: | 265.561 GA | > 265.561 MA + 1 pA V(I0.I1.I79.M1:int_g) = 1.00899 V, previously 1.00899 V. residue too large: | 254.54e+18 A | > 254.54e+15 A + 1 pA V(I0.I1.I84.M1:int_g) = -6.5685 mV, previously -6.5685 mV. residue too large: | -784.669e+15 A | > 784.669 TA + 1 pA V(I0.MPCSC_INT_IDAC2:int_g) = 530.756 mV, previously 530.756 mV. residue too large: | 4.80519e+15 A | > 4.80519 TA + 1 pA V(I0.I5.M2:int_g) = 254.18 pV, previously 254.179 pV. residue too large: | 845.724 TA | > 845.724 GA + 1 pA V(I0.I4.M2:int_g) = 199.721 pV, previously 199.721 pV. residue too large: | 911.165 TA | > 911.165 GA + 1 pA ------------- Thanks, Mohit |
Title: Re: spectre pss analysis convergence failure Post by Ken Kundert on Oct 25th, 2016, 2:56am Did you read the warning messages? -Ken |
Title: Re: spectre pss analysis convergence failure Post by Geoffrey_Coram on Oct 26th, 2016, 8:07am Is there anything a user can do to diagnose this warning? WARNING (SPECTRE-16941): Floating point exception encountered in device loading. This might result in convergence problems during simulation. Check the device model equations for any illegal operations, such as divide by 0 or data overflow. Is the user supposed to dig out the device model equations? I am curious what device models are used in this simulation. simsim, can you tell us the circuit inventory? |
Title: Re: spectre pss analysis convergence failure Post by Ken Kundert on Oct 26th, 2016, 3:59pm He has given us very little to go on, so it is hard to give any useful advice. However, when I saw the warning messages I though 'there is a poorly written Verilog-A model that is throwing a floating point exception. I wondered if that possibility had been explored. -Ken |
The Designer's Guide Community Forum » Powered by YaBB 2.2.2! YaBB © 2000-2008. All Rights Reserved. |