Subject: RE: [IBIS] Open Source IBIS Parser (Long)
From: Lynne Green (lgreen@cadence.com)
Date: Mon Jun 17 2002 - 09:34:00 PDT
Hi, Kim,
SPICE provides an ideal poster child, if only because it is so well known.
And yes, you are right that Cadence and other companies have benefited
greatly from the "open source" approach at UCB.
At the same time, SPICE also provides an example of how "flavors" can
become incompatible. "Public" foundries usually generate six models:
BSIM3 and EKV parameters, for Spectre, HSPICE, and Eldo.
One of the older SPICE 2G6 bugs was that one of the derivatives in the diode
model was (hard-coded) incorrectly. Some users actually rejected vendors'
"fixed" models because the simulation results did not match SPICE 2G6.
Three significant "features" of BSIM3 models (there are others, of course):
* One of the capacitances has only one parameter to fit a two-variable
physical characteristic (see Dan Foty's book on MOSFET modeling); so
can fit low-bias capacitance OR high-bias capacitance, but not both.
* BSIM3 transitions between low and strong inversion using curve smoothing,
so does not model moderate inversion accurately. Problem for simulating
low-voltage logic circuits.
* Swapping the source and drain causes FET currents to change. This
is because BSIM3 model does not treat source and drain symmetrically.
Problem for any logic gate more complex than an inverter.
Note that the EKV model avoids the non-physical problems associated
with BSIM3. EKV models can be run in many "SPICE" simulators, such
as PSpice.
Best regards,
Lynne
-----Original Message-----
From: Kim Helliwell [mailto:kimgh@apple.com]
Sent: Tuesday, June 11, 2002 2:10 PM
To: Lynne Green
Cc: Ross, Bob; ibis@eda.org
Subject: Re: [IBIS] Open Source IBIS Parser (Long)
Lynne, while you might have a point, I'm not sure
that SPICE is exactly the right poster child for your
point. I'll grant that there are long-standing bugs
in SPICE (although I've heard that many times, but
rarely do people who say that provide any specifics
about what the bugs are. Are you willing to share your
list?).
But consider that, since the inception of the SPICE project
at Berkeley in the mid-70's (or was it the early 70's?) until
the present day, numerous graduate students received
their Ph.D.'s based on work on SPICE. I'm sure my list
is not exhaustive, but off the top of my head, I come up
with the following: Larry Nagel, Ellis Cohen, Andrei
Vladimirescu, Sally Liu, Dick Dowell, Ming-Chie Jeng,
Tom Quarles, and (possibly) Wayne Christopher. And
although the SPICE project is basically over at Berkeley, work
continues on modeling in the BSIMx projects.
While you are probably right that students that succeeded
Nagel and Quarles on their respective projects were
more focused on their own new work than on fixing
bugs in the existing code, are you prepared to claim
that *NO* bug fixing went on? If so, how do you
explain (for example) the fact that after Quarles
left Berkeley at about SPICE3D2, several releases
of SPICE3 came out, culminating in SPICE3f5? Some
of those post-Quarles releases were bug fix releases
done by grad students who were surely working on
other projects for their main work.
And that's not the whole story. SPICE spawned an
entire industry (in fact, several). The "Alphabet-SPICE"
phenomenon is proverbial. Many non-Berkeley
grads (including yours truly) built entire careers
on SPICE development. The ability to do this was
aided by the open exchange of information between
industry and Berkeley. I personally participated in
this type of exchange in the early days of SPICE3
by submitting several bug reports and bug fixes
to Tom Quarles, and I know that others did
that as well. The benefits of that sort of free exchange
went both ways. Berkeley got the bug fixes, and I and
others like me got early peeks at new releases of the
code and permission from Berkeley to use the code
in commercial products.
Your own company has benefitted greatly from this ferment, Lynne.
By my count, Cadence has 5 SPICE-like simulators that
it markets in various guises: Cadence SPICE, Spectre,
PSPICE, SpicePlus (AWB), and KSPICE/TLSIM (aka SigNoise).
While some of these are or soon will be End-of-Life products,
that's a pretty impressive line-up for one company.
The point is: SPICE outlasted any single Ph.D. candidate's
tenure at Berkeley by several times over, and the open
communication between industry and the University fostered
by Berkeley's ILP office and the attitudes of grad students
like Quarles did in fact result in bug fixes being fed back
into the "free" code. Undoubtedly, bugs were fixed in
the commercialized versions as well (I know I fixed a few
in SPICE3), but except for those who worked on those
fixes, we mostly won't know what was done to fix them, while
the bugfixes fed back to Berkeley will be knowable by
everybody. That's exactly the beauty of Open Source.
By the way, here's the list of bugs I know about in SPICE3 (I may
be forgetting some that I once knew about):
1. The ever-famous nonconservation of charge in the MOS2 cap models.
2. ...and discontinuities in said models.
3. The transmission lines are slow; more than about 2 or 3 of them
in one circuit tend to bog the simulator down horribly.
4. The switch models are too simple; there is no timestep control,
so the switching time varies depending on the current timestep.
I know that there have been numerous commercial fixes to (1);
several people have tried to fix (2) and found it to be nearly
impossible (has anyone succeeded?). I personally have
attempted fixes to both (3) and (4), but Cadence now owns
that code, and I doubt that these fixes will ever see the light
of day, unless I re-engineer them.
Anybody willing to share others? Better yet, is anyone willing
to share fixes?
Disclaimer: some of my historical facts may be wrong. I'd
appreciate (polite) corrections, if so.
On Monday, June 10, 2002, at 10:29 AM, Lynne Green wrote:
> Hello, Bob,
>
> The big problem with University software is that there is usually
> no interest in maintenance. Students get degrees for new things,
> not for fixing someone else's bugs.
>
> Berkeley SPICE is a classic example. The UCB/SPICE web site
> no longer maintains documentation on SPICE format. Bugs that
> have been known about for years are still around. (Interesting to
> see where this goes, now that there is an open-source version.)
>
> Having open-source with a gatekeeper might work, if there are
> enough open-source programmers interested in IBIS. The same
> gatekeeper could coordinate s2ibis.
>
> Best regards,
> Lynne
>
Kim Helliwell
Apple Computer
kimgh@apple.com
408 974 9936
-----------------------------------------------------------------
|For help or to subscribe/unsubscribe, email majordomo@eda.org
|with the appropriate command message(s) in the body:
|
| help
| subscribe ibis <optional e-mail address, if different>
| subscribe ibis-users <optional e-mail address, if different>
| unsubscribe ibis <optional e-mail address, if different>
| unsubscribe ibis-users <optional e-mail address, if different>
|
|or email a request to ibis-request@eda.org.
|
|IBIS reflector archives exist under:
|
| http://www.eda.org/pub/ibis/email_archive/ Recent
| http://www.eda.org/pub/ibis/users_archive/ Recent
| http://www.eda.org/pub/ibis/email/ E-mail since 1993
This archive was generated by hypermail 2b28 : Mon Jun 17 2002 - 09:48:29 PDT