[IBIS-Users] BIRD97.1 - Gate Modulation Effect

From: Syed Huq <shuq_at_.....>
Date: Fri Apr 22 2005 - 15:54:03 PDT
The enclosed revised BIRD97.1, Gate Modulation Effect, is
submitted on behalf of Arpad Muranyi of Intel Corp.  

It will be discussed at the IBIS Futures Meeting(May5th'05) and the IBIS
teleconference (May13th'05). 

- Syed
-- 
Cisco Systems, Inc
Acting Chair - EIA IBIS Forum

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

BIRD ID#:        97.1
ISSUE TITLE:     Gate Modulation Effect
REQUESTER:       Arpad Muranyi, Intel Corp.
DATE SUBMITTED:  March 4, 2005
DATE REVISED:    April 22, 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 noise, 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 = 1 + ( Power_coeff * (Vinst-Vnom)/Vnom )

where k is a scaling coefficient (used internally by the simulator's
algorithms) that scales the I-V table at each iteration of the simulation,
Power_coeff is the subparameter defined with the I-V tables providing a ratio
between the percent change in the supply voltage across the buffer model and
its I-V curve, Vinst is the actual, instantaneous power supply voltage
between the pullup and pulldown reference nodes or between the power clamp
and pulldown reference nodes, or between the pullup reference and ground
clamp reference nodes of the buffer model at each iteration of the
simulation, and Vnom is the corresponding nominal value of the power supply
voltage at which the I-V tables were generated for the [Model] ([Voltage
Range], or [Pullup Reference]-[Pulldown Reference] for the pullup and
pulldown I-V tables, [POWER Clamp Reference]-[Pulldown Reference] for
the power clamp I-V tables, and [Pullup Reference]-[GND Clamp Reference] 
for the ground clamp tables).

If Power_coeff is zero, the I-V tables will remain unchanged, 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-Param:  Power_coeff
| 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 subparameter describes how much a given
|**             instantaneous power supply variation at the nodes of the 
|**             buffer model's supply terminals will effect the I-V tables.
|**             The scaling coefficient is calculated based on the following
|**             formula.
|**
|**                    k = 1 + ( Power_coeff * (Vinst-Vnom)/Vnom )
|**
|**             where k is a scaling coefficient (used internally by the
|**             simulator's algorithms) that scales the I-V table at each
|**             iteration of the simulation, Power_coeff is the subparameter
|**             defined with the I-V tables providing a ratio between the
|**             percent change in the supply voltage across the buffer model
|**             and its I-V curve, Vinst is the actual, instantaneous power
|**             supply voltage between the pullup and pulldown reference
|**             nodes or between the power clamp and pulldown reference
|**             nodes, or between the pullup reference and ground clamp
|**             reference nodes of the buffer model at each iteration of the
|**             simulation, and Vnom is the corresponding nominal value of
|**             the power supply voltage at which the I-V tables were
|**             generated for the [Model] ([Voltage Range], or [Pullup
|**             Reference]-[Pulldown Reference] for the pullup and pulldown
|**             I-V tables, [POWER Clamp Reference]-[Pulldown Reference] for
|**             the power clamp I-V tables, and [Pullup Reference]-[GND
|**             Clamp Reference] for the ground clamp tables).
|**
|**             If Power_coeff is zero, the I-V tables will remain unchanged
|**             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 percent 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.
|**
| 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.
|
|**
|**             Subparameter Usage Rules:
|**
|**             The Power_coeff subparameter is optional.  If it is not
|**             present, the power supply variations will not have an effect
|**             on the I-V tables.  This also equivalent to having zero
|**             entries in the subparameter arguments.  If the Power_coeff
|**             subparameter is present, it must be placed immediately after 
|**             the I-V curve keyword(s) and the three arguments must follow
|**             the subparameter on the same line separated by at least one
|**             white space.  An "NA" value may be entered in the min and
|**             max places only.  A numerical entry may be a positive, zero,
|**             or negative number.
|**
|**             The Power_coeff subparameter's 1st (typical) argument is
|**             associated with the 1st (typical) column of the I-V table,
|**             the 2nd (minimum) argument is associated with the 2nd
|**             (minimum) column of the I-V table, and the 3rd (maximum)
|**             argument is associated with the 3rd (maximum) column of the
|**             I-V table.
|**
|**
| 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]
|**                  typ       min       max
**Power_coeff        0.5       0.8       0.3       | Optional parameter
|
|  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:

This version of the BIRD incorporates the feedback received in the 4/1/2005
IBIS Open Forum teleconference and the feedback received from Bob Ross in a 
private teleconference held on 4/22/2005.

The equation was corrected to reflect the original intent of the BIRD, and
additional editorial changes were made regarding the syntax, and the usage
rules the of typ., min., max entries.  For clarity, the previous version of
the BIRD is included at the end of this section, and a completely new
section is written in the text above.

The model maker can obtain the value for Power_coeff by generating a series
of I-V tables at different supply voltages while keeping the remaining
simulation or lab measurement conditions unchanged.  The ratio between the
power supply voltage and saturation current variations can be determined
with simple algebraic calculations and entered as the argument for the
Power_coeff subparameter under the I-V table keywords.  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 (about 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.

Modified I-V table section from the previous version (BIRD97) of this BIRD:

|=============================================================================
|    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
|
...
...
...
|=============================================================================

******************************************************************************
|------------------------------------------------------------------
|For help or to subscribe/unsubscribe, email majordomo@eda.org
|with just the appropriate command message(s) in the body:
|
|  help
|  subscribe   ibis       <optional e-mail address, if different>
|  subscribe   ibis-users <optional e-mail address, if different>
|  unsubscribe ibis       <optional e-mail address, if different>
|  unsubscribe ibis-users <optional e-mail address, if different>
|
|or email a written request to ibis-request@eda.org.
|
|IBIS reflector archives exist under:
|
|  http://www.eda.org/pub/ibis/email_archive/  Recent
|  http://www.eda.org/pub/ibis/users_archive/  Recent
|  http://www.eda.org/pub/ibis/email/          E-mail since 1993
Received on Fri Apr 22 15:54:17 2005

This archive was generated by hypermail 2.1.8 : Fri Apr 22 2005 - 15:59:54 PDT