Question about ngspice compared to hspice and spectre


To ng-spice@ieee.ing.uniroma1.it
From "Mathew sienko x7439" <msienko@galaxy.nsc.com>
Date Fri, 08 Sep 2000 15:02:42 -0700
Delivered-To mailing list ng-spice@ieee.ing.uniroma1.it
Mailing-List contact ng-spice-help@ieee.ing.uniroma1.it; run by ezmlm
References <F49AbvR3eDwK7nhiNcL00004e58@hotmail.com >
Reply-To ng-spice@ieee.ing.uniroma1.it
Sender msienko@galaxy.nsc.com

Hello,

I've been following this list for a while and I have a question that I
would like to ask.  I hope this is not inappropriate, but this is an
honest question of mine.

I am not familiar with the internals of circuit simulators, but I am
wondering how the performance of ngspice does, or will, compare to that
of hspice and spectre.  I have read before that spectre uses different
algorithms than spice.  Does anyone out there with experience in this
care to explain this?  I have found spectre to be a top-notch simulator,
outperforming hspice.  Is it possible for ngspice to attain that level
of performance and what will it take?

Perhaps a litle background may help explain where I am coming from.  At
work, I've used Pspice, Hspice and spectre.  Pspice was almost
completely useless, I'll leave it at that.  Hspice, however, was what we
used in my group for a while.  We recently switched to spectre and have
found it to be much better for our uses.  The convergence is MUCH
better.  (And I mean _MUCH_ better.)  The speed is faster.  With Hspice
we would often have to set the maximum step size to a very small value
to get sensible results, whereas spectre does a much better job of using
small steps for critical areas and using larger steps when things are
relatively stable.  We have also found spectre to be more accurate with
large circuits.  We have done simulations with spectre on a complete,
15-stage ADC and the results matched what we saw on the bench with more
than 14 bits of signal accuracy.  These simulations take about a day
with our hardware in spectre and closer to a week with hspice.  That is
IF it would even converge, and the results were not very accurate.  If
we didn't set the tmax to a very small value, we wold get obviously
incorrect resulst, but if we did set tmax to a small value, the large
simulations would never finish.

Thanks,
  Matt
  msienko@pacbell.net


Partial thread listing: