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

  • From: Mike LaBonte <mlabonte@xxxxxxxxxx>
  • To: "Bob Ross" <bob@xxxxxxxxxxxxxxxxx>
  • Date: Fri, 1 Apr 2016 16:38:23 -0400 (EDT)

Hi Bob,

 

For ECL IBIS states in several places that [Pulldown] is connected to the
node associated with the [POWER Clamp Reference] source, but I find
nothing in IBIS about what the [GND Clamp] is referenced to. Of course it
has to be connected to a lower voltage to do anything useful, but IBIS
doesn't clarify that. Is this correct for ECL?

 



 

Mike

 

From: Bob Ross [mailto:bob@xxxxxxxxxxxxxxxxx] ;
Sent: Friday, April 01, 2016 4:11 PM
To: mlabonte@xxxxxxxxxx; michael.mirmak@xxxxxxxxx;
ibis-editorial@xxxxxxxxxxxxx
Cc: bob@xxxxxxxxxxxxxxxxx
Subject: RE: [ibis-editorial] Re: A suggestion regarding the [* Reference]
keywords

 

Mike,

 

I like your picture as a start.  It does imply a "ground" reference.   Of
course, the other I/O technology diagram is ECL.

Many EDA vendors already have diagrams in their documentation.  Later, we
can add Split C_comps.

 

IBIS works as is.  We do not have to create new keywords for references or
for shifting or to even

rename the existing syntax.  But voltages can be shifted in the [Model] -
as already done.

 

My DesignCon presentation (slide 9) and page 41 of the Spec illustrates
PECL [Model Spec]

Vinh/Vinl shifts for typ/min/max columns based on revised voltage entries
relative to a "local"

ground.  (It was not stated that [Voltage Range] was 5.0V, 4.5V, 5.5V in
the Spec.)

 

Much of IBIS centers around some "ground" reference (whether it is ideal
external DUT rail

reference or a local ideal reference or node 0, and IBIS defines many
voltages relative to that

reference whether or not it exists in that [Model].  We can explain this.

 

Bob

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Mike LaBonte
Sent: Friday, April 01, 2016 12:15 PM
To: michael.mirmak@xxxxxxxxx; ibis-editorial@xxxxxxxxxxxxx
Subject: [ibis-editorial] Re: A suggestion regarding the [* Reference]
keywords

 

Sigh, [* Rail Voltage] keywords would have been much better. I'm not sure
we need "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", however it may help to have figures
depicting at least two of those cases. Here is a simple figure that IBIS
6.1 does not have, illustrating the independent reference node case:

 



 

I'd like to suggest that one as a new figure between the current figures
10 and 11.

 

Having written software to netlist these circuits, I'm agreeing that
[Pulldown Reference] and [GND Clamp Reference] are meaningless in the
defined pin/rail case (unless node zero is used both inside and outside
the model, tsk tsk). You almost could argue that if you pulled all of
those DC sources to the right and ran their "wires" through a package
model, you would have define pin/rail yet still have an independent
reference node on the test fixture side, and all four voltage sources
could be connected to that reference node. But then you can't connect
C_comp to that reference node because it no longer exists on the left
side. I don't have a figure for that yet, but I'll post one soon and then
it may be easier to discuss.

 

One more thought: IBIS 6.1 makes no mention of the IBIS Modeling Cookbook
<mailto:http://ibis.org/cookbook/cookbook-v4.pdf> , which really is quite
a good document although it was written for IBIS 4.0. I don't think such a
reference should be added until the cookbook is up to date. But the
cookbook could use some similar reference/node/voltage cleanup and IBIS
section 9 "NOTES ON DATA DERIVATION METHOD" should be checked against the
cookbook for consistency. That may or may not be out of scope for this
effort.

 

I'll save a rev 2 of the resolutions document and capture these comments.
All other comments are welcome.

 

Mike

 

From: ibis-editorial-bounce@xxxxxxxxxxxxx
[mailto:ibis-editorial-bounce@xxxxxxxxxxxxx] On Behalf Of Mirmak, Michael
Sent: Friday, April 01, 2016 1: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

 

 

PNG image

PNG image

Other related posts: