[ibis-interconn] Re: Question about references in BIRD189

  • From: Walter Katz <wkatz@xxxxxxxxxx>
  • To: "Matvienko, Andrey" <andrey_matvienko@xxxxxxxxxx>, "IBIS-ATM" <ibis-macro@xxxxxxxxxxxxx>, "IBIS-Interconnect" <ibis-interconn@xxxxxxxxxxxxx>
  • Date: Wed, 19 Jul 2017 17:01:08 -0400 (EDT)

Andrey,

 

IBIS as a rule describes model data, and generally does not tell the user
or EDA tool how to use the data. More explicitly is describes how to
measure the physical device, and the conditions on how the measurements
are made. "Measurement" can be a physical measurement (e.g. TDR, TDT, .),
or can be done using simulation techniques. The user/EDA tool is
responsible on how to hook up the model of the physical device to the rest
of a channel or system.

 

Any time we have in the standard rules on how to use models, we get into
conflicts between EDA tool vendors. One rule does not fit all cases. It is
the responsibility of the user/EDA tool to understand how the model was
"Measured" and how to use it.  There are well defined rules on test
conditions for generating S-Parameters for interconnect. EDA vendors (at
least some of us), understand the correct way to use models based on
understanding how the physical device was measured.

 

So you need to understand that all IBIS package modeling is simply an
ASCII format of how a device was measure, how it is used requires
engineering thought (neural processing).

 

I suggest you check out the Dorothy parker quote "You can lead a
horticulture ."

 

Walter

 

Walter Katz

 <mailto:wkatz@xxxxxxxxxx> wkatz@xxxxxxxxxx

Phone 303.449-2308

Mobile 303.335-6156

From: Matvienko, Andrey [mailto:andrey_matvienko@xxxxxxxxxx] ;
Sent: Wednesday, July 19, 2017 4:42 PM
To: Walter Katz <wkatz@xxxxxxxxxx>; IBIS-ATM <ibis-macro@xxxxxxxxxxxxx>;
IBIS-Interconnect <ibis-interconn@xxxxxxxxxxxxx>
Subject: RE: [ibis-interconn] Re: Question about references in BIRD189

 

Walter,

 

As Arpad answered about what spec says - it enforces to use open-circuit
approximation by default, which may sometimes happen, but is far from a
typical condition in analysis considerations (and should not be used as
default then).

 

*       What would you suggest adding to the standard do deal with this?

 

First I would suggest removing this "open-circuit approximation" from
BIRD.

I also suggest adding explicit rule on termination of unused ports of
Touchstone models with resistance of reference value(s) specified in
touchstone model.

 

Thanks,

Andrey

 

From: Walter Katz [mailto:wkatz@xxxxxxxxxx] ;
Sent: Wednesday, July 19, 2017 3:43 PM
To: Matvienko, Andrey; IBIS-ATM; IBIS-Interconnect
Subject: RE: [ibis-interconn] Re: Question about references in BIRD189

 

Andrey,

 

I said what the spec says. The SiSoft EDA tools terminate everything with
the Reference resistance of the S parameter port. There is a subtlety that
the EDA tool knows that cannot be captured in the package model itself.
Suppose one had a subcircuit of a section or all of the pins of a package.
On the board that the package is mounted, a there may or may not be a
connection, or it may in fact be unused on the board. If unused we would
at a 1Meg termination, if used then a 50 Ohm termination. We can be
directed to do other things, but all signal connections tend to be ~ 50
Ohm. 

 

We discussed this often and decided specific rules cannot cover all cases,
so we allow the EDA tool to make situational decisions.

 

What would you suggest adding to the standard do deal with this?

 

Walter

 

Walter Katz

 <mailto:wkatz@xxxxxxxxxx> wkatz@xxxxxxxxxx

Phone 303.449-2308

Mobile 303.335-6156

From: Matvienko, Andrey [mailto:andrey_matvienko@xxxxxxxxxx] ;
Sent: Wednesday, July 19, 2017 3:31 PM
To: Walter Katz <wkatz@xxxxxxxxxx <mailto:wkatz@xxxxxxxxxx> >; IBIS-ATM
<ibis-macro@xxxxxxxxxxxxx <mailto:ibis-macro@xxxxxxxxxxxxx> >;
IBIS-Interconnect <ibis-interconn@xxxxxxxxxxxxx
<mailto:ibis-interconn@xxxxxxxxxxxxx> >
Subject: RE: [ibis-interconn] Re: Question about references in BIRD189

 

Hi Walter, 

 

*       If Unused_port_termination is not specified for S-Parameters, then
the EDA tool would (could, should?) terminate the unused Touchstone ports
(terminals) with a resistor to GND with the resistance specified by the
Touchstone port reference resistance which can be per port (terminal).

 

Unfortunately this is not what BIRD currently says. It currently
prescribes to use open-circuit conditions (thus it will be reflections,
which can be very strong):

 

"If this parameter is not defined, the EDA tool may connect terminals to
terminations as needed to prevent numerical instability in simulation (EDA
tools are recommended to alert users when this occurs and document the
termination value used).  Note that the terminals remain technically open,
and terminations connected by the EDA tool are intended to approximate
open-circuit conditions."

 

*       One can always wrap a Touchstone file or subckt in a subckt and do
any terminations you desire for that specific use of the model.

 

We also should cover cases where EDA tool need automatically terminate
ports of large package models, say for the cases where package uses a big
s176p S-parameter, but only one net is selected for simulation on the
board.

 

Thanks,

Andrey

 

From: ibis-interconn-bounce@xxxxxxxxxxxxx
<mailto:ibis-interconn-bounce@xxxxxxxxxxxxx>
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Wednesday, July 19, 2017 3:13 PM
To: IBIS-ATM; IBIS-Interconnect
Subject: [ibis-interconn] Re: Question about references in BIRD189

 

Andrey,

 

If Unused_port_termination is not specified for S-Parameters, then the EDA
tool would (could, should?) terminate the unused Touchstone ports
(terminals) with a resistor to GND with the resistance specified by the
Touchstone port reference resistance which can be per port (terminal).

 

One can always wrap a Touchstone file or subckt in a subckt and do any
terminations you desire for that specific use of the model.

 

Walter

 

Walter Katz

 <mailto:wkatz@xxxxxxxxxx> wkatz@xxxxxxxxxx

Phone 303.449-2308

Mobile 303.335-6156

From: ibis-interconn-bounce@xxxxxxxxxxxxx
<mailto:ibis-interconn-bounce@xxxxxxxxxxxxx>
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad
Sent: Wednesday, July 19, 2017 2:49 PM
To: 'IBIS-ATM' <ibis-macro@xxxxxxxxxxxxx <mailto:ibis-macro@xxxxxxxxxxxxx>

; IBIS-Interconnect <ibis-interconn@xxxxxxxxxxxxx
<mailto:ibis-interconn@xxxxxxxxxxxxx> >
Subject: [ibis-interconn] Re: Question about references in BIRD189

 

Andrey,

 

You are making a good point.  However, the complication here is that
interconnect models

can be IBIS-ISS subcircuits, OR Touchstone models.  In case of the latter
it might be relatively

easy to find the per port values from the Touchstone file, but what would
you do if the

model is an IBIS-ISS subcircuit?

 

We could probably come up with something to address this, but being this
late in the game

I wonder whether we should go ahead with the BIRD and add this capability
with a new BIRD?

Or do you think this is important enough to basically delay the next IBIS
release?

 

Thanks,

 

Arpad

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

 

From: Matvienko, Andrey 
Sent: Wednesday, July 19, 2017 1:08 PM
To: Muranyi, Arpad <Arpad_Muranyi@xxxxxxxxxx
<mailto:Arpad_Muranyi@xxxxxxxxxx> >; 'IBIS-ATM' <ibis-macro@xxxxxxxxxxxxx
<mailto:ibis-macro@xxxxxxxxxxxxx> >; IBIS-Interconnect
<ibis-interconn@xxxxxxxxxxxxx <mailto:ibis-interconn@xxxxxxxxxxxxx> >
Subject: RE: Question about references in BIRD189

 

Hi Arpad, Everyone,

 

Unused_port_termination seems to define one termination value for entire
model. 

 

However the standard practice of handling of unused ports of S-parameters
is to use reference value of the port (which is typically 50 ohm for
signals and lower values, like 0.1 - 0.01 ohm for supply ports). The
per-port values can be found in Touchstone file of 2.0 format. 

 

It looks like BIRD 189 does not support this well established practice: 

*       If Unused_port_termination is specified, then (per text in BIRD)
the same value is to be applied to all unused ports, whether it is signal
or supply ports
*       If Unused_port_termination is not specified, then BIRD prescribes
to keep port open-circuit (with may be a formally-used large termination
value)

 

Thanks,

Andrey

 

From: ibis-interconn-bounce@xxxxxxxxxxxxx
<mailto:ibis-interconn-bounce@xxxxxxxxxxxxx>
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad
Sent: Wednesday, July 19, 2017 1:45 PM
To: 'IBIS-ATM'; IBIS-Interconnect
Subject: [ibis-interconn] Question about references in BIRD189

 

Hello Everyone,

 

We had a productive IBIS-Interconnect meeting this morning, and the result
is a

new draft for BIRD189.  I believe Mike L. will distribute it soon.  We
have only one

question remaining which needs discussion, that's the reason for this
email.

 

This is about how to terminate unused ports and referencing.  Currently
this is

what we have in the BIRD:

 

"If this subparameter is present, the EDA tool should connect the unused
terminals to GND through a resistor with the value of resistance in ohms
provided in the argument."

 

What raised my attention was the "GND" word, because I wondered what that 

really means (after all the discussions we had when we were cleaning up
the spec

regarding the usage of the word ground).

 

What is "GND" in this sentence?  I think we should use a better wording
for that

here.  The next question is whether the unused terminals should be
terminated

to the Touchstone model's (N+1) reference terminal, or just any "GND",
such as

node 0  somewhere in the simulation netlist?  But then what do we do with
the

unused terminals of IBIS-ISS subcircuit interconnect models?

 

"This optional subparameter defines the termination that is to be applied
by the EDA tool during simulation to the terminals of any IBIS-ISS
subcircuit or Touchstone network that is not being used in the
[Interconnect Model]/[End Interconnect Model] group."

 

An IBIS-ISS subcircuit may not have an "N+1" reference terminal like
Touchstone

files do, it could have nothing but signal terminals, which raises another
question.

Since we don't know what the subcircuit terminals are, how would we know

whether one of the unused terminals is a reference or signal terminal?

 

This is also related to the question I raised about example 4 before.
Example 4

shows two models, one between the pin and pad, and another one between the

pad and the buffer.  Both models have a reference connection, one to the
VSS pin

and the other to the Pulldown_Ref of the buffer.  How do we know that
these two

reference connections do not carry current between the VSS pin and the
Pulldown_ref

for the buffer, i.e. how do we know when the use the connections defined
by the

[Pin Mapping] keyword, or wen to ignore it?  In the case of example 4 we
might say

that the reason we know there is no current going between the VSS pin and
the

Pulldown_ref of the buffer is because these are two different models
(files).

But this seems to be a rather weak reason, and I am afraid that it might
fail in some

situations.

 

Bottom line:  It seems that it would be desirable to have a more explicit
way to

define which terminal (port) is a reference, so that we would have a more
robust

way to know that.

 

Comments/corrections welcome.

 

Thanks,

 

Arpad

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

Other related posts: