[comp.lsi] Explaination of SPICE3C1 Messages Needed

ratazzie@lonex.radc.af.mil (Edward P. Ratazzi) (03/12/91)

I came across the following messages while attempting a simulation using
SPICE3C1 on our Sun 3/470.  Note that the same simulation runs fine using
SPICE2G6.  My question is:  does anybody have any idea why this is happening,
and what would be a typical fix for this type of problem (i.e. do I tweak
certain analysis options?)?

SPICE3 3 -> run
Warning: resuming run in progress.
Warning: Gmin step failed
Warning: Gmin stepping failed
Warning: source stepping failed
doAnalyses: Improperly formed matrix - shouldn't happen!(preOrd)

simulation interrupted
SPICE3 4 ->

Many thanks.
-- 
E. Paul Ratazzi                                |      ratazzie@lonex.radc.af.mil
Microelectronics Reliability Division          |            COMPMAIL:  e.ratazzi
Rome Laboratory                                |                  (315) 330-2946
"Exploring the Invisible Frontier"             |                    DSN 587-2946

ins_atge@jhunix.HCF.JHU.EDU (Thomas G Edwards) (03/14/91)

In article <1991Mar11.215449.8066@lonex.radc.af.mil> ratazzie@lonex.radc.af.mil (Edward P. Ratazzi) writes:
>SPICE3 3 -> run
>Warning: resuming run in progress.
>Warning: Gmin step failed
>Warning: Gmin stepping failed
>Warning: source stepping failed
>doAnalyses: Improperly formed matrix - shouldn't happen!(preOrd)

The first thing I would do is check your circuit to make sure
you aren't doing anything silly.  Since the circuit worked on the
other SPICE version, I guess it passes this test.

GMIN is the minimum conductance of any branch.  This conductance is in
parallel with every branch (thus also parallel with transistor junctions).
I believe if there is a problem with convergence, the effective GMIN is
stepped up to the max value set in the .OPTION statement.

I encounter this area typically when the Vgs of my transistors is very
close to zero (less than 0.1V).  Here's a list of ways to avoid
the GMIN stepping syndrome:

1) use .IC to set initial conditions on gate voltages so the Vgs of
   every transistor is at least 0.2V when the simulation begins
   ...or...
   If you are doing a .DC analysis, ensure that your voltage
   source doesn't bring the Vgs of any transistor below 0.2V
   ...if this doesn't work...
2) increase RELTOL (the relative accuracy of V's and I's) up to 
   0.005 using a .OPTION statement.  Then try 0.01, 0.02, etc.
   Try combinations of ABSTOL larger than 1pA, and CHGTOL larger than
   .01pC.  You will find, however, that if you adjust RELTOL much
   larger than 0.01 that transient analyses will begin to behave 
   a little on the chaotic side.
   ...if you are at the end of your rope...
3) Increase the GMIN in the .OTION statement up from 1E-12 Ohm^-1.
   Notice that when you significantly increase your GMIN, a lot of
   current can leak to places you never expected it (gee...why is
   my oscillator going that fast!).

Good luck! 
-Thomas Edwards