Subject: Subtracting clamp curves from pull-up/down curves

From: Stephen Nolan <[email-masked]>
Date: Wed, 05 Jul 2000 11:15:44 -0500

Hello IBIS gurus,

When creating a model for a three-state device, it is necessary to subtract the
clamp curves from the pull-up/down curves to avoid double counting, as the EDA
tool adds the clamp-curves back in to the pull-up/down curves to obtain the
devices output charactersitics in the enabled state. Right so far?

The question is this, do you only subtract the corresponding clamp curve from
the related pull-up/down curve, or do you subtract BOTH clamp curves from each
pull-up/down curve? 

For example, if I am creating the pull-down curve, do I subtract only the
ground-clamp curve, or do I subtract both the power-clamp and ground-clamp
curves? Does the EDA tool add only the ground-clamp data back in, or does it add
both curves back in?

-- 
Regards,
Stephen M. Nolan

---

From: Mike LaBonte <[email-masked]>
Date: Fri, 07 Jul 2000 08:27:50 -0400

Stephen,

Arpad's reply indicates that both clamp curves are indeed subtracted
to produce pullup and pulldown curves. I can verify the other side of
your question; that simulators (at least Cadence SPECCTRAQuest)
re-combine the curves as follows:

   low state:  pulldown + powerclamp + groundclamp
  high state:  pullup   + powerclamp + groundclamp

So the clamps are never disabled (unless Submodel is used).

Mike LaBonte
Cadence

---

From: Al Davis <[email-masked]>
Date: Sun, 9 Jul 2000 00:15:09 -0700

As everyone else said, subtract them both.

But there is more to it than that.  I have a comment and a question.

The comment .....

When you subtract, remember to consider the accuracy of the
measurements.  In the usual case, in the region where the clamp is
strong, the things you are subtracting are nearly equal and large,
producing a result near zero.  In most models, the
resulting pullup/pulldown in this region is ALL NOISE.  Those models
that look like they have a negative resistance region there are
WRONG.  The literature says that it doesn't matter because they are
added back by the simulator, but that is not the whole story.  You are
better off leaving these points out, even if it means not going the
full -Vcc to +2*Vcc.

So ...
Look at the curve!  Does it make sense?  At the ends, where the curve
looks like nonsense, throw those points away.  Those warnings from
the parser about "non-monotonic" are real.

The simulator will probably clean this up anyway, but your goal as a
model maker should be to make a model that doesn't need further
clean-up.

Now, the question ....

What should a simulator do with the clamps in the region where the
other clamp applies? 

Extend flat? (constant current) -- sure, if it is 0.  What if it
isn't?  The current at the splice is double counted.

Make it 0? -- what if they don't match?  The currents might not
match.  There might be a gap or overlap.  (Consider min or max with a
different reference voltage.)

Extend last slope? -- this makes sense totally outside, but not here.