Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ucbvax!XEROX.COM!Marshall.wbst From: Marshall.wbst@XEROX.COM.UUCP Newsgroups: comp.lsi Subject: Re: Internal time step error in SPICE2G6 ? Message-ID: <870410-135237-1055@Xerox> Date: Fri, 10-Apr-87 15:52:00 EST Article-I.D.: Xerox.870410-135237-1055 Posted: Fri Apr 10 15:52:00 1987 Date-Received: Sat, 11-Apr-87 18:23:33 EST Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 27 Spice does not choose pivots when it is solving the circuit equations but rather blithely assumes that the prechosen pivots will be good. That is why all of spice is assembled with implicit double precision. This can cause it to choose a set of very bad pivots because the resistance of a MOSFET can vary several orders of magnitude. The error "INTERNAL TIME STEP TO SMALL" means that the integration step was reduced to 10^-20 and the integration procedure still did not converge and probably won't no matter how small a step it tries to take. This error has nothing to do with the integration but is a symptom of problems with solving the circuit equations. The solution is to try to make the circuit better behaved by: 1) Changing the circuit in any way so that the order of rows in the circuit matrix is different. This can be done by changing the order in which circuit elements and nodes are defined or by adding elements for other purposes. 2) Adding a low conductance (high resistance) or low capacitance between nodes of a FET that can change in resistance by a wide margin such as the source and drain. If spice ever pivots on the source-drain resistance then the small additional conductance will change a zero pivot to a finite pivot and you may get answers that are accurate enough. Hope some of the above helps. --Sidney Marshall