[ibis-editorial] Re: A suggestion regarding the [* Reference] keywords

  • From: "Muranyi, Arpad" <Arpad_Muranyi@xxxxxxxxxx>
  • To: "ibis-editorial@xxxxxxxxxxxxx" <ibis-editorial@xxxxxxxxxxxxx>
  • Date: Mon, 4 Apr 2016 16:37:51 +0000

Mike,

You are making a good observation and I agree that as written
the spec is confusing about those keywords.  But here is the
way I see it:

The [*** Reference] keywords do not define the terminal or node
or connection, or physical rail for the buffer.  They define what
the voltage connected to them should be.  In this interpretation
these keywords are consistent with the [Voltage Range] keyword.
The question for all five keywords is "with respect to what"?

The [Voltage Range] keyword refers to the voltage between the
pullup/power clamp and pulldown/gnd clamp terminals of the buffer.
In this scenario, the pulldown/gnd clamp reference was assumed
to be connected to a ground plane on the PCB (through the package
parasitics of the GND pin).

The other four keywords attempted to define what the voltages are
on the implementations of each of the four I-V table PWL sources.
What is missing in this definition is again "with respect to what"?
I would be tempted to say that this is with respect to the PCB
ground plane (through the package parasitics).

So I would not see the need for new keywords, we would just need
to describe these keywords with better words.  I didn't look at
Mike L.'s drawings very carefully yet, but at a glance, it seems
that they capture this concept correctly.

Thanks,

Arpad
==================================================================


From: ibis-editorial-bounce@xxxxxxxxxxxxx 
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Mirmak, Michael
Sent: Friday, April 01, 2016 12:49 PM
To: ibis-editorial@xxxxxxxxxxxxx
Subject: [ibis-editorial] A suggestion regarding the [* Reference] keywords

Thanks to Mike LaBonte for his very complete listing of referencing issues in 
IBIS today.  I'd like to state a few facts related to slide 9 of that 
presentation.

In contrast to the keyword [Voltage Range], I suggest that the keywords [Pullup 
Reference], [Pulldown Reference], [POWER Clamp Reference], and [GND Clamp 
Reference] are incorrectly named.  The names themselves cause confusion and are 
likely the source of many of the problems with referencing we are trying to 
resolve.

These keywords define (and the specification mentions) the physical supply 
"rails" or nodes to which the buffers are connected.

Unfortunately, the arguments to these keywords are voltage *values* or 
measurements, with respect to an unnamed physical reference point.  The 
arguments are not themselves "references".

It is true that the [* Reference] keyword arguments - the voltages - are used 
for calculations involving the I-V tables.  However, these calculations are 
used to *translate* voltage values in raw I-V data generated using the common 
(unnamed) reference to voltage values for the I-V tables with respect to the 
individual supply rails.  It is utterly incorrect to state, as [Pulldown 
Reference] does, that I-V table data points "are referenced to 0 V."

[Pin Mapping] gets the concept nearly correct, in that rails are defined to 
which buffers are connected, but the term used there is "reference" and not 
"rail" (though "bus" is used correctly).  The C_comp_* text is also fairly 
clear that these keywords define rails and that the individual C_comp_* 
elements are connected between these rails and the I/O node.

I believe that Walter's "DUT" proposal would address this, at least in part, 
but only if the specification is very carefully re-written to describe a single 
reference node that is used for all voltage measurements, including the values 
in the [* Reference] keywords.

Ideally, the [Pin Mapping] keyword would replace "reference" with "rail", and 
"_ref" with "_rail" (as in, "pulldown_rail").  In addition, [Pullup Reference], 
etc. would be called [Pullup Rail Voltage], etc., and would use a description 
resembling the following:

Defines a voltage rail other than that defined by the [Voltage Range] keyword 
as the reference rail for the [Pullup] I-V data.  The voltage value provided is 
with respect to the IBIS measurement reference node.

[Pulldown Rail Voltage] would use a description like:

Defines a voltage rail other than the IBIS measurement reference node as the 
reference rail for the [Pulldown] I-V data. If this keyword is not present, the 
voltage data points in the [Pulldown] I-V table are referenced to the IBIS 
measurement reference node.

We could optionally add a keyword which would define whether the "IBIS 
measurement reference node" is synonymous with a defined pin, a defined rail, 
or is a completely independent node.  If a defined rail were used (e.g., 
[Pulldown Rail Voltage]) as the "IBIS measurement reference node", any non-zero 
voltage argument used for that rail definition keyword would be ignored, as it 
would be meaningless if not contradictory.  This could be strictly checked by 
the parser.  While complex, this would be a complete and unambiguous approach.

If it helps, think about the "IBIS measurement reference node" as "the point 
where the reference wire on my probe is connected when I make voltage 
measurements."

I believe this is consistent with Walter's earlier C_comp analysis.

Thoughts?


-          MM


Other related posts: