[ibis-editorial] Re: [ibis-interconn] Re: What does a Voltage mean in IBIS

  • From: "Bob Ross" <bob@xxxxxxxxxxxxxxxxx>
  • To: <ibis-editorial@xxxxxxxxxxxxx>, <ibis-interconn@xxxxxxxxxxxxx>
  • Date: Fri, 4 Mar 2016 16:17:20 -0800

All,

 

IBIS allows  a model to function using only the build-in, fixed rails.  It
is not useful for SSO, but it is legal. That is supported by the POWER
ON/OFF choices available in most EDA tools including SPICE element-based
buffer models.   I think we can describe the [Model] content from the fixed
rails point of view, but add later that they can be overridden externally.

 

Originally, we may have used Vcc pin with respect to [Voltage Range], but
did not fix it when we added more rails.

 

We can spell out the simpler cases 1 and 2 as the likely cases for most
models - in terms of the correct complex case terminology - not the other
way around.

 

So, this is part of our "charter" to make the terminology precise and clear.

 

Bob

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Friday, March 04, 2016 3:55 PM
To: ibis-editorial@xxxxxxxxxxxxx; ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-editorial] Re: [ibis-interconn] Re: What does a Voltage mean
in IBIS

 

Bob, and Arpad,

 

I am not saying we should not get the wording for the complex case correct,
but we should get the wording for the simple cases understood first. What
was the original intent of "VCC pin"? I think the intent was to describe the
voltage delivered to the pullup_ref terminal, whether from a pin or from a
power distribution network in the chip/package. 

 

I think we all agree that the existing language is not precise enough.

 

Walter

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Bob Ross
Sent: Friday, March 4, 2016 6:48 PM
To: ibis-editorial@xxxxxxxxxxxxx; ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-editorial] Re: [ibis-interconn] Re: What does a Voltage mean
in IBIS

 

Walter and All,

 

(Agreeing with Arpad.)

 

IBIS supports the general case, and we must continue to include it.

 

The [Pin Mapping] bus label terminology could be used to describe each of
the references.

However, we already support and must continue to support the most complex
case 3 below.

So we must be precise and differential between pullup_ref and power_clamp
ref.  Otherwise,

we are changing the specification.

 

Note, while we can use the terminology, [Pin Mapping] is not required.
There are components

where the power rails for the Output buffer are NOT exposed externally. We
can still map the

the [* Reference] voltages with corresponding *_ref names.  However, the
internal [* Reference]

voltages are ideal voltages referenced to a local ideal ground.  With
external pin connections,

most EDA tools support overriding the stored values.

 

However, there are a few components where even the pullup_ref and
pulldown_ref terminals

are not attached to any pin.  An example are devices with completely
internal charge pump

voltage doubling circuitry to create the +10 V and - 10 V supplies for the
Output buffer.

The component has only a GND and a +5 V terminal, and the +10 V and -10 V
terminals

are not exposed through any pin.  Our terminology must CONTINUE to include
these components.

Otherwise, we are changing the Specification.

 

That is why I want to remove "pin" as part of our cleanup.  It is not
precise.

 

(Also note that the in the [Model] context, the [* Reference] entries are
idea values, referenced

to an ideal local solid ground.  Tools can modulate the references through
external connections.

 

Also the extraction conditions for I-V tables and V-t V_fixture values for a
[Model] assume

perfect voltage connections referenced to an external ground and without any
package

elements. However, all of this relates to a big discussion on what
terminology to use for

all situations - extraction of values, insertion of values and populating
the I-V tables, and

separately simulation without external voltages and with external voltage
connections.)

 

Bob

 

 

 

From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad
Sent: Friday, March 04, 2016 3:46 PM
To: ibis-editorial@xxxxxxxxxxxxx; ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-interconn] Re: What does a Voltage mean in IBIS

 

Walter,

 

The problem with your rephrased intent text is that it assumes the

existence of bus_labels and consequently the [Pin Mapping] keyword,

which may not always be true.  We need to wordsmith this in a way that

works even if the .ibs file does NOT contain the [Pin Mapping] keyword.

 

Regarding the complex case, I have seen devices in my life which had

a ground clamp pushed down from the GND pin to reduce clamping related

issues.  I don't know if they still make them, but there was a reason

for them, and they did exist, so I wouldn't rule this case out that

easily.

 

Thanks,

 

Arpad

=========================================================================

 

From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Friday, March 04, 2016 4:25 PM
To: ibis-editorial@xxxxxxxxxxxxx; ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-interconn] Re: [ibis-editorial] Re: FW: Re: What does a
Voltage mean in IBIS

 

Arpad, Bob,

 

There are three cases that we need to deal with:

 

1.       Legacy

a.        [Voltage Range]

b.      [Pulldown Reference] = [GND Clamp Ref] = 0.

2.       Simple

a.       [Pullup Reference] = [Power Clamp Reference]

b.      [Pulldown Reference] = [GND Clamp Ref] !=0

3.       Complex

a.       [Pullup Reference] != [Power Clamp Reference]

b.      [Pulldown Reference] != [GND Clamp Ref] !=0

 

[Pin Mapping] associates Bus_Labels with pulldown_ref, pullup_ref,
gnd_clamp_ref, power_clamp_ref and ext_ref. And since a Bus_label is
associated with a list of pins, then the terminals of a buffer pulldown_ref,
pullup_ref, gnd_clamp_ref, power_clamp_ref must be associated with a Pin.

 

Therefore, the intent of the following on page 53:

Other Notes: The I-V table of the [Pullup] and the [POWER Clamp] structures
are "Vcc relative", meaning that the voltage values are referenced to the
Vcc pin. (Note that, under these keywords, all references to "Vcc" refer to
the voltage rail defined by the [Voltage Range], [Pullup Reference], or
[POWER Clamp Reference] keywords, as appropriate.) The voltages in the data
tables are derived from the equation:

Vtable = Vcc - Voutput

Is:

Other Notes: The I-V table of the [Pullup] are "pullup_ref relative",
meaning that the voltage values are referenced to a POWER or GND pin
(pullup_ref pin) that has a bus_label that is the pullup_ref for the buffer
I/O pin. The voltages in the data tables are derived from the equation:

Vtable = <voltage at pullup_ref pin> - Voutput

 

We should make sure the language works for the Legacy and Simple cases
above. I am not sure if the Complex case exists in nature.

 

Walter

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad
Sent: Friday, March 4, 2016 3:36 PM
To: ibis-editorial@xxxxxxxxxxxxx; ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-editorial] Re: FW: [ibis-interconn] Re: What does a Voltage
mean in IBIS

 

Hello Everyone,

 

I find it a happy coincidence that we are talking about the referencing

of S-parameter models and the GND verbiage cleanup at the same time,

because there is a very strong relationship between these two topics.

This through struck me in the editorial meeting today when Walter

showed the equations that Bob also repeated below.

 

[Pullup]:      Vtable = [Pullup Reference] - Voutput

[Power Clamp]: Vtable = [Power Clamp Reference] - Voutput

 

[Pulldown]:    Vtable = Voutput - [Pulldown Reference]

[Gnd Clamp]:   Vtable = Voutput - [Gnd Clamp Reference]

 

ECL:

[Pulldown]:    Vtable = [Pulldown Reference] - Voutput

               where [Pulldown Reference] = [Pullup Reference]

 

Since the right side of these equations involve voltages, they

can all be treated as if they were ports, i.e. two terminals.

For example, the [Pullup Reference] voltage needs a reference

with respect to which it is measured.  Similarly, the Voutput

voltage also needs a reference with respect to which it is

measured.  IBIS does not spell out what these references are,

but I think we can safely say that it assumes that they are the

same for all of the voltages shown in the equations above.  I

think it is also safe to say that this reference is the terminal

of the power supply box which serves as the reference for the other

terminals of the same power supply box, usually the +5V, +12V and

-12V in the power supplies of age, and more recently the lower

voltages, such as +3.3V, +1.5V, etc.  In simulations this

"universal reference terminal" might be node 0, but doesn't

have to be.

 

Walter is correct in pointing out that we should define the same

equations for the [Pulldown Reference] and [GND Clamp Reference]

that we have for the "Vcc relative" [Pullup Reference] and [Power

Clamp Reference] keywords.  I used to say in my IBIS classes that

the pulldown and GND clamp I-V curves are "GND relative" the same

way as the other two are "Vcc relative".

 

I agree with Bob, that these definitions should NOT refer to pins,

and especially not GND pins.  As the recent discussion pointed out,

there are devices out there which have a negative and a positive

supply and no "GND pin".  Although this subject is highly debatable,

because there is nothing wrong with connecting a +/-15 volt Op-Amp

to +30 volt and GND.  So is the -15V "negative supply" pin of this

device ground, or a negative supply?  It all depends on how the

designer connects it to his/her power supply "terminology"...  J

 

The same thought process also applies to ECL vs. PECL.  The question

of which terminal on the power supply is given the name GND is an

arbitrary thing.  Even with normal 5V TTL/CMOS technology, I could

call the positive terminal of the power supply the GND terminal and

the negative terminal of the power supply the -5V supply.  The GND

question becomes only an issue when we start making connections to

the chassis and/or Earth Ground, "where carrots and potatoes are grown"

for safety and/or EMI reasons, and when we have coax, and/or other

(non-isolated) wiring/signaling going between different boxes/buildings,

etc.  Fun subject.

 

Radek is also correct that the only other thing that is missing in

IBIS the definition of the reference for the signal voltages.  This

also includes the question of what Vinh and Vinl is referenced to.

This is a more complicated question, though, than just picking a

suitable arbitrary reference, such as the "GND terminal" of the

power supply box.  The reason is because Vinh and Vinl are used

to "evaluate" the signal that the input sees on the die.  For that

reason the reference of Vinh or Vinl would most likely have to be

something on the die.  But what this is on the die may be circuit

design dependent, so I am leaning towards inventing keywords or

subparameters which allow the model maker to define the reference

of these voltages, since they are the ones who know what it is.

In addition, we may also need to consider to define these reference

as an expression, such as:

 

([Pullup Reference] + [Pulldown Reference]) / 2

 

not just as a fixed pin/pad, or other "location" or "voltage".  The

"Ext_ref" feature in IBIS is a (lame) example for this need.

 

These were some of the thoughts that came to me in the editorial

meeting today, we were just running short on time and I didn't get

a chance to bring them up.

 

Thanks,

 

Arpad

=====================================================================

 

 

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Bob Ross
Sent: Friday, March 04, 2016 1:32 PM
To: ibis-editorial@xxxxxxxxxxxxx
Subject: [ibis-editorial] FW: [ibis-interconn] Re: What does a Voltage mean
in IBIS

 

Also to the Editorial Committee.

 

Bob

 

From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Bob Ross
Sent: Friday, March 04, 2016 11:28 AM
To: ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-interconn] Re: What does a Voltage mean in IBIS

 

Walter,

 

My confusion was that the "Other Notes" in Slides 2 appear under the
[Pullup]/.. keywords.

 

However, in refining the terminology, we should clarify that Vcc is just a
generic name for a reference.  It does not need to be a "pin", and I can
show some data sheets that use internal charge pump voltage rails where the
Vcc "pin" is not exposed externally.  (We cannot use [Pin Mapping] for those
devices.)  We are sloppy here and need to understand that "Vcc" for [Pullup
Reference] can have a different value than a "Vcc" for the [Power Clamp
Reference].  Separate terms may be needed.

 

For slide 3, we may be overloading the word "GND" when we really might mean
the [Pulldown Reference] Vee voltage.  The [Gnd Clamp Reference] can be
different from the [Pulldown Reference]. 

 

We might also state that Vcc/Vee is generic in this document - they could
mean Vdd/Vss or other reference names used by a component.

 

Regarding Slide 4, we may not spell this out.  But the real rules for
entering values in table based on DUT extraction is:

 

[Pullup]:      Vtable = [Pullup Reference] - Voutput

[Power Clamp]: Vtable = [Power Clamp Reference] - Voutput

 

[Pulldown]:    Vtable = Voutput - [Pulldown Reference]

[Gnd Clamp]:   Vtable = Voutput - [Gnd Clamp Reference]

 

ECL:

[Pulldown]:    Vtable = [Pulldown Reference] - Voutput

               where [Pulldown Reference] = [Pullup Reference]

 

All Reference voltages entries are values with respect to an assumed
internal 0 V local reference, whether or not such a local reference is
exposed externally for the [Model].

 

Slide 5:

 

The notion is mostly correct for Vinl and VInh. They are adjusted for the
voltages of the clamp references for most cases

 

However, while not common, it would be legal to change the references
differently - Vdd+9 V, Vee + 10 V, or they could be compressed.

Then the Vinh and Vinh rules should follow the technology and data sheet
intent.  Here are 3 common  rules for Vinl and Vinh:

 

TTL:  Always an offset from Vee (0.8, 2.0 V)

CMOS: 30% and 70% of Vdd (with Vss = gnd) meaning that threshold difference
could get rescaled

PECL: Always an offset from Vcc.

 

----

 

So, part of fixing all references in IBIS is to be precise about our
terminology and application.

 

Bob

Other related posts: