Slide 10 is key, but it bears some correction. Slide 12 explains it
better. The basic idea is that everything is measured relative to one
specified terminal that must be one of the four rail terminals, but if the
voltage keyword for that terminal gives a non-zero voltage, that voltage
has been added to all reported measurement values. This proposal gives a
way to specify at the model level which terminal is that reference, which
I find much more comfortable than specifying a pin.
Note that if a DIA simulation has each of the four buffer supply terminals
connected to a non-zero voltage supply to node 0, this is really a simple
"cheat" to get the desired measurements. The net voltage from pullup to
pulldown is correct, and the measurements are all shifted correctly, by
the prescribed amount.
We probably will debate the role of threshold scaling, which I think slide
14 only partially addresses. I think the point is that if the voltage used
as a factor for the scaling of thresholds is not measured between two of
the existing buffer terminals, we probably need a new terminal.
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Friday, June 03, 2016 9:56 AM
Subject: [ibis-macro] I would like to un-table the [Pin Reference] BIRD,
give the enclosed presentation and discuss my alternative BIRD for
I would like to un-table the [Pin Reference] BIRD, give the enclosed
presentation and discuss my alternative BIRD for referencing.
The first part of the presentation is basic physics, and requires that the
measurement of any voltage at an I/O buffer terminal be physically close
to the I/O buffer terminal. "physically close" is defined as 1/10
wavelength. The only nodes in any I/O buffer simulation that we are
assured to be close to the I/O buffer are the terminals of the buffer.
Mythical Node 0 and any global node that we call "Ground" cannot be used
as the reference voltage of an I/O buffer.
(Note that at today's speeds, wavelengths for DDR ~1", and SerDes are
~.1", so 1/10 of a wavelength is now approaching .01". Twenty years ago
wavelengths were 100", so we got away with being sloppy with GND.)
For a buffer with one Power rail terminal and one "GND" rail terminal and
one I/O terminal that gives us only two choices for the terminal to use as
a reference for the other two terminals. The obvious default should be the
terminal that is connected to the reference node of the test fixture when
the buffer is used to derive the IV, VT and model thresholds. This by
definition, is the rail terminal that has a [*** Reference]=0.0V.
In this presentation I propose using a new [Model] keyword [DUT Reference
Terminal] to specify which ***_Ref terminal should be used to override the
terminal that has [*** Reference]=0.0V, or the case when there is no [***
Note that if one uses the GND rail terminal as the reference node for all
I/O buffer terminal, we can arithmetically determine the voltage between
all of the terminals of the I/O buffer, particularly the voltage between
the I/O terminal and the Power rail terminal.
Determining these three voltage difference for the simple buffer with one
Power, GND and I/O terminal, is a totally separate issue on how to
interpret this voltage at the I/O with respect to the voltage thresholds
in the model when the voltage between the Power rail terminal and the GND
rail terminal during DIA is not the same as the voltages between these
terminal during DUT. [Receiver Thresholds] is one attempt to do this for
DDR interfaces. This issue has recently been referred to as scaling.
Scaling is a totally independent issue that does rely on a consistent way
of measuring the voltages at all of the terminals of the buffer.