The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Simulators >> Circuit Simulators >> Is it safe to ignore the checklimit warnings?
https://designers-guide.org/forum/YaBB.pl?num=1430495582

Message started by dogrush on May 1st, 2015, 8:53am

Title: Is it safe to ignore the checklimit warnings?
Post by dogrush on May 1st, 2015, 8:53am

Using IBM PDK cmrf8sf, to perform tran simulation of an simple inverter with one nfet and one pfet. It reports some check limits listed below.

Notice from spectre during transient analysis `tran'.
No checklimit analysis defined for asserts. A default checklimit analysis 'SpectreChecklimitAnal' has been created with all asserts enabled.

The following asserts will be enabled for all subsequent analyses until the next checklimit analysis statement is found:
I2.T1.vbd_chkfwd : ON
I2.T1.vbd_check : ON
I2.T1.vbs_chkfwd : ON
I2.T1.vbs_check : ON
I2.T1.vgb_check : ON
I2.T1.vgd_check : ON
I2.T1.vgs_check : ON
I2.T1.vds_check : ON
I2.T0.vbd_chkfwd : ON
I2.T0.vbd_check : ON
I2.T0.vbs_chkfwd : ON
I2.T0.vbs_check : ON
I2.T0.vgb_check : ON
I2.T0.vgd_check : ON
I2.T0.vgs_check : ON
I2.T0.vds_check : ON

************************************************
Transient Analysis `tran': time = (0 s -> 20 ns)
************************************************
Important parameter values:
start = 0 s
outputstart = 0 s
stop = 20 ns
step = 20 ps
maxstep = 400 ps
ic = all
skipdc = no
reltol = 1e-03
abstol(I) = 1 pA
abstol(V) = 1 uV
temp = 27 C
tnom = 25 C
tempeffects = all
errpreset = moderate
method = traponly
lteratio = 3.5
relref = sigglobal
cmin = 0 F
gmin = 1 pS

tran: time = 620 ps (3.1 %), step = 320 ps (1.6 %)
tran: time = 1.71 ns (8.55 %), step = 290 ps (1.45 %)

Warning from spectre at time = 2 ns during transient analysis `tran'.
WARNING (SPECTRE-4048): I2.T1.vbd_chkfwd, instance I2.T1: Vbd drain-body diode is being forward-biased. Expression `vbs-vds' having value -1.20949e-06 has exceeded its lower bound `-0'.
Warning from spectre at time = 2.00004 ns during transient analysis `tran'.
WARNING (SPECTRE-4052): I2.T1.vbd_chkfwd, instance I2.T1: Expression `vbs-vds' having value 0 has returned to within bounds [-0, 340.282e+36]. Peak value was -38.4912e-06 at time 2.00003e-09 s. Total duration of overshoot was 40.1481e-15 s.

Warning from spectre at time = 11.5611 ns during transient analysis `tran'.
WARNING (SPECTRE-4043): I2.T0.vbd_chkfwd, instance I2.T0: Vbd drain-body diode is being forward-biased. Expression `vbs-vds' having value 435.62e-09 has exceeded its upper bound `0'.

Warning from spectre at time = 11.8306 ns during transient analysis `tran'.
WARNING (SPECTRE-4052): I2.T0.vbd_chkfwd, instance I2.T0: Expression `vbs-vds' having value 0 has returned to within bounds [-340.282e+36, 0]. Peak value was 435.62e-09 at time 11.5611e-09 s. Total duration of overshoot was 269.447e-12 s.
Warning from spectre at time = 12.1 ns during transient analysis `tran'.
WARNING (SPECTRE-4043): I2.T0.vbd_chkfwd, instance I2.T0: Vbd drain-body diode is being forward-biased. Expression `vbs-vds' having value 816.273e-09 has exceeded its upper bound `0'.
Warning from spectre at time = 12.1125 ns during transient analysis `tran'.
WARNING (SPECTRE-4052): I2.T0.vbd_chkfwd, instance I2.T0: Expression `vbs-vds' having value 0 has returned to within bounds [-340.282e+36, 0]. Peak value was 816.273e-09 at time 12.1e-09 s. Total duration of overshoot was 12.5e-12 s.

I googled it and found it was resulted by the description of the nfet and pfet models in nfet.scs and pfet.scs. Someone said he commented these lines in these two model files:

* Node voltage warning checks
+ pvlim = 1.6
+ pblim = 2.6
*
if (gbv==2) {
vds_check assert dev=pfet param=vds min=-pvlim max=0 message="Vds exceeds limit" level=warning
vgs_check assert dev=pfet param=vgs min=-pvlim max=pvlim message="Vgs exceeds limit" level=warning
vgd_check assert dev=pfet expr=(vgs-vds) min=-pvlim max=pvlim message="Vgd exceeds limit" level=warning
vgb_check assert dev=pfet expr=(vgs-vbs) min=-pblim max=pblim message="Vgb exceeds limit" level=warning
vbs_check assert dev=pfet param=vbs max=pblim message="Vbs exceeds limit" level=warning
vbs_chkfwd assert dev=pfet param=vbs min=-fwdlim message="Vbs source-body diode is being forward-biased" level=warning
vbd_check assert dev=pfet expr=(vbs-vds) max=pblim message="Vbd exceeds limit" level=warning
vbd_chkfwd assert dev=pfet expr=(vbs-vds) min=-fwdlim message="Vbd drain-body diode is being forward-biased" level=warning
}

This will not do the limit check for the fets. But I am not sure whether it is safe to ignore these warnings or no limit check? Any one knows about these issues? Thanks.

Title: Re: Is it safe to ignore the checklimit warnings?
Post by Geoffrey_Coram on May 4th, 2015, 7:01am

I sure wouldn't get too worried about 435nV forward-bias on a diode:

WARNING (SPECTRE-4043): I2.T0.vbd_chkfwd, instance I2.T0: Vbd drain-body diode is being forward-biased. Expression `vbs-vds' having value 435.62e-09 has exceeded its upper bound `0'.

The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.