******************************************************************************
******************************************************************************

BIRD ID#:        97
ISSUE TITLE:     Gate Modulation Effect
REQUESTER:       Arpad Muranyi, Intel Corp.
DATE SUBMITTED:  March 4, 2005
DATE ACCEPTED BY IBIS OPEN FORUM:  PENDING

******************************************************************************
******************************************************************************

STATEMENT OF THE ISSUE:

The I-V and V-T tables of IBIS models are extracted at fixed, ideal supply
voltage conditions.  However, due to SSO, the actual drive strength (and
consequently the edge rate) may vary during transients depending on the
instantaneous value of the supply voltage.  This phenomena is usually called
the "gate modulation effect", which is not described by IBIS models.  To
achieve more accurate switching waveforms, and power and ground supply
currents it would be desirable to include these effects in IBIS models.

******************************************************************************

STATEMENT OF THE RESOLVED SPECIFICATIONS:

Add a subparameter named "Power_coeff" for the I-V tables to describe how
much the instantaneous power supply variations should scale the I-V tables. 
The scaling coefficient is calculated based on the following formula.

                     k = Power_coeff * (Vinst/Vnom)

where k is the scaling coefficient that scales the I-V table at each 
iteration of the simulation, Power_coeff is the subparameter provided with 
the I-V tables to relate how much the the I-V tables should be affected by 
the power supply variations, Vinst is the instantaneous power supply voltage 
across the buffer at each iteration of the simulation, and Vnom is the value
of the power supply voltage at which the I-V tables were generated for the
[Model].

If Power_coeff is zero, the I-V tables will not change, regardless of what
the supply voltage variations are.  If Power_coeff = 1, the I-V curve will
be scaled by the same percentage as the change in the actual power supply
voltage.  For example, if a 5 volt nominal supply drops to 4.5 volts during
the transients of a simulation (which is a -10% change), an I-V curve having
a 100 mA saturation current will be scaled down to 90 mA, given a Power_coeff
of 1.


Original I-V table section:

|=============================================================================
|    Keywords:  [Pulldown], [Pullup], [GND Clamp], [POWER Clamp]
|    Required:  Yes, if they exist in the model
| Description:  The data points under these keywords define the I-V tables of
|               the pulldown and pullup structures of an output buffer and the
|               I-V tables of the clamping diodes connected to the GND and the
|               POWER pins, respectively.  Currents are considered positive
|               when their direction is into the component.
| Usage Rules:  In each of these sections, the first column contains the
|               voltage value, and the three remaining columns hold the
|               typical, minimum, and maximum current values.  The four
|               entries, Voltage, I(typ), I(min), and I(max) must be placed on
|               a single line and must be separated by at least one white
|               space.
|
|               All four columns are required under these keywords.  However,
|               data is only required in the typical column.  If minimum
|               and/or maximum current values are not available, the reserved
|               word "NA" must be used.  "NA" can be used for currents in the
|               typical column, but numeric values MUST be specified for the
|               first and last voltage points on any I-V table.  Each I-V
|               table must have at least 2, but not more than 100, rows.
|
| 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: Under these keywords, all
...
...
...
|-----------------------------------------------------------------------------
[Pulldown]
|  Voltage   I(typ)    I(min)    I(max)
|
   -5.0V    -40.0m    -34.0m    -45.0m
   -4.0V    -39.0m    -33.0m    -43.0m
|    .
|    .
    0.0V      0.0m      0.0m      0.0m
|    .
|    .
    5.0V     40.0m     34.0m     45.0m
   10.0V     45.0m     40.0m     49.0m
|
...
...
...
|=============================================================================


Modified I-V table section:


|=============================================================================
|    Keywords:  [Pulldown], [Pullup], [GND Clamp], [POWER Clamp]
|    Required:  Yes, if they exist in the model
|* Sub-Params:  Power_coeff_typ, Power_coeff_min, Power_coeff_max
| Description:  The data points under these keywords define the I-V tables of
|               the pulldown and pullup structures of an output buffer and the
|               I-V tables of the clamping diodes connected to the GND and the
|               POWER pins, respectively.  Currents are considered positive
|               when their direction is into the component.
|*              The Power_coeff_*, subparameters describe how much the
|*              instantaneous power supply variations should scale the I-V
|*              tables.  The scaling coefficient is calculated based on the
|*              following formula.
|*
|*                        k = Power_coeff * (Vinst/Vnom)
|*
|*              where k is the scaling coefficient that scales the I-V table
|*              at each iteration of the simulation, Power_coeff is the
|*              subparameter provided with the I-V tables to relate how much
|*              the the I-V tables should be effected by the power supply
|*              variations, Vinst is the instantaneous power supply voltage
|*              across the buffer at each iteration of the simulation, and
|*              Vnom is the value of the ideal power supply voltage at which
|*              the I-V tables were generated for the [Model].
|*
|*              If Power_coeff is zero, the I-V tables will not change,
|*              regardless of what the supply voltage variations are.  If
|*              Power_coeff = 1, the I-V curve will be scaled by the same
|*              percentage as the change in the actual power supply voltage.
|*
|*
|*              Subparameter Usage Rules:
|*
|*              The Power_coeff_* subparameters are optional.  If they
|*              are not present, the power supply variations will not have 
|*              an effect on the I-V tables.  This is equivalent to a zero 
|*              entry for the subparameter value.
|*
|*              The Power_coeff_typ subparameter is applied to the 1st 
|*              (typical) column of the I-V table, the Power_coeff_min
|*              subparameter is applied to the 2nd (minimum) column, and the
|*              Power_coeff_max subparameter is applied to the 3rd column
|*              (maximum) of the I-V table.
|*
|*              Numerical arguments are separated from their associated
|*              subparameter by an equals sign (=); white space around the
|*              equals sign is optional.  The numerical entries may be a 
|*              positive, zero, or negative number.  "NA" is not allowed.
|*
|*
| 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: Under these keywords, all
...
...
...
|-----------------------------------------------------------------------------
[Pulldown]
*Power_coeff_typ = 0.5
*Power_coeff_min = 0.8
*Power_coeff_max = 0.3
|
|  Voltage   I(typ)    I(min)    I(max)
|
   -5.0V    -40.0m    -34.0m    -45.0m
   -4.0V    -39.0m    -33.0m    -43.0m
|    .
|    .
    0.0V      0.0m      0.0m      0.0m
|    .
|    .
    5.0V     40.0m     34.0m     45.0m
   10.0V     45.0m     40.0m     49.0m
|
...
...
...
|=============================================================================

******************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION

This proposal is based on I-V curve data obtained from actual lab and
simulation measurements.  In the context of BIRD95, which attempts to refine
the power and ground bounce simulation capabilities of IBIS simulators, this
feature becomes very important, because the non-ideal ground and power 
supplies introduce significant deviations in the buffer's I-V curves, i.e.
drive strength.  Omitting these I-V curve variations reduces the accuracy
of the SSO and power delivery simulations when the buffers are surrounded by
non ideal power networks.

*****************************************************************************

ANY OTHER BACKGROUND INFORMATION:

The model maker can obtain the value for Power_coeff by generating a series
of I-V tables at different supply voltages and finding a ratio between the
power supply voltage and saturation current variations.  In the real world
this relationship is not linear across a wide range of supply voltages, but
for the purpose of a relatively small variation around the nominal supply
voltage (approximately a few tens of percent variation), a linear
approximation seems to be sufficiently accurate.

In case this linear approximation becomes insufficient in the future, a
higher order relationship description may be added to this subparameter.

******************************************************************************