Subject: BIRD42 Modeling Current Waveforms

From: [email-masked] ( Bob Ross)
Date: Fri, 16 May 97 18:07 PDT

To IBIS Committee:

Based on the discussions at the May 9, 1997 IBIS Meeting I am
issuing BIRD42.  Kumar and I may not agree yet entirely on the
format, but I feel it is important to get the proposal on the
table to raise any questions and comments.

The data in the examples is taken from a Spice extraction of a
real device.  However, I am suspicious of the initial (0.000nS)
current values which may be wrong before the first time step.

How this data is to be used needs to be discussed.

Bob Ross
Interconnectix

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

BIRD ID#:      42
ISSUE TITLE:   Modeling Current Waveforms
REQUESTER:     C. Kumar, Cadence,  Bob Ross, Interconnectix
DATE SUBMITTED:   May 16, 1997
DATE ACCEPTED BY IBIS OPEN FORUM:     Pending

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

STATEMENT OF THE ISSUE:

Current into the power and ground rails are needed to give a more accurate
analysis for ground and power bounce analysis associated with simutaneous
switching.
 
******************************************************************************

STATEMENT OF THE RESOLVED SPECIFICATIONS:

Four current Waveform tables in sync. with [Rising Waveform] and
[Falling Waveform] are added.

Also some of the data associated with [Rising Waveform] and [Falling Waveform]
is modified to reflect a real situation.  The existing data in the 
specification was not realistic and gave incorrect guidance.

The waveform tables in the examples were generated from a real sample.
(I am suspicious of the 0.000nS current values.  I think something is
lost in the initial Spice time step.)

Replace this section:

|==============================================================================
|     Keywords:     [Rising Waveform], [Falling Waveform]
|     Required:     No
|     Description:  Describes the shape of the rising and falling edge
|                   waveforms of a driver.
|     Sub-Params:   R_fixture, V_fixture, V_fixture_min, V_fixture_max,
|                   C_fixture, L_fixture, R_dut, L_dut, C_dut
|     Usage Rules:  Each [Rising Waveform] and [Falling Waveform] keyword
|                   introduces a table of time vs. voltage points that
|                   describe the shape of an output waveform.  These
|                   time/voltage points are taken under the conditions
|                   specified in the R/L/C/V_fixture and R/L/C_dut
|                   subparameters.  The table itself consists of
|                   one column of time points, then three columns of
|                   voltage points in the standard typ, min, and max format.
|                   The four entries must be placed on a single line and
|                   must be separated by at least one white space or tab
|                   character.  All four columns are required.  However, data
|                   is only required in the typical column.  If minimum
|                   or maximum data is not available, use the reserved word
|                   "NA".  The first value in the time column need not be '0'.
|                   Time values must increase as one parses down the table.
|                   The waveform table can contain a maximum of 100 data
|                   points.  A maximum of 100 waveform tables are allowed per
|                   model.  Note that for backwards compatibility, the existing
|                   [Ramp] keyword is still required.  The data in the waveform
|                   table is taken with the effects of the C_comp parameter 
|                   included.
|
|                   A waveform table must include the entire waveform;
|                   i.e., the first entry (or entries) in a voltage column
|                   must be the DC voltage of the output before switching
|                   and the last entry (or entries) of the column must be
|                   the final DC value of the output after switching.  Each 
|                   table must contain at least two entries.  Thus, numerical 
|                   values are required for the first and last entries of any 
|                   column containing numerical data.
|
|                   A [Model] specification can contain more than one rising
|                   edge or falling edge waveform table.  However, each new
|                   table must begin with the appropriate keyword and sub-
|                   parameter list as shown below.  If more than one rising or
|                   falling edge waveform table is present, then the data in
|                   each of the respective tables must be time correlated.
|                   In other words, the rising (falling) edge data in each
|                   of the rising (falling) edge waveform tables must be
|                   entered with respect to a common reference point on the
|                   input stimulus waveform.
|
|                   The 'fixture' subparameters specify the loading
|                   conditions under which the waveform is taken.  The R_dut,
|                   C_dut, and L_dut subparameters are analogous to the
|                   package parameters R_pkg, C_pkg, and L_pkg and are used
|                   if the waveform includes the effects of pin
|                   inductance/capacitance.  The diagram below shows the
|                   interconnection of these elements.
|
|                      PACKAGE            |   TEST FIXTURE
|       _________                         |
|      |  DUT    |   L_dut   R_dut        | L_fixture  R_fixture
|      |  die    |---@@@@@--/\/\/\--o-----|--@@@@---o---/\/\/\----- V_fixture
|      |_________|                  |     |         |
|                                   |     |         |
|                                   |     |         |
|                            C_dut ===    |        === C_fixture
|                                   |     |         |
|                                   |     |         |
|                                  GND    |        GND
|
|                   Only the R_fixture and V_fixture subparameters are
|                   required, the rest of the subparameters are optional.
|                   If a subparameter is not used, its value defaults to
|                   zero.  The subparameters must appear in the text after
|                   the keyword and before the first row of the waveform
|                   table.
|
|                   V_fixture defines the voltage for typ, min, and max
|                   supply conditions.  However, when the fixture voltage
|                   is related to the power supply voltages, then the
|                   subparameters V_fixture_min and V_fixture_max can
|                   be used to further specify the fixture voltage for
|                   min and max supply voltages.
|------------------------------------------------------------------------------
[Rising Waveform]
R_fixture = 500
V_fixture = 5.0
V_fixture_min = 4.5           |Note, R_fixture is connected to Vcc
V_fixture_max = 5.5           |Specified, but not used in this example
C_fixture = 50p
L_fixture = 2n
C_dut = 7p
R_dut = 1m
L_dut = 1n
|Time     V(typ)     V(min)     V(max)
 0.0ns     0.3        0.5         NA
 0.5ns     0.3        0.5         NA
 1.0ns     0.6        0.7         NA
 1.5ns     0.9        0.9         NA
 2.0ns     1.5        1.3         NA
 2.5ns     2.1        1.7         NA
 3.0ns     3.0        2.7         NA
 3.5ns     3.2        3.0         NA
|
[Falling Waveform]
R_fixture = 50
V_fixture = 0
|Time     V(typ)     V(min)     V(max)
 10.0ns     3.2        3.0         NA
 10.5ns     3.0        2.7         NA
 11.0ns     2.1        1.7         NA
 11.5ns     1.5        1.3         NA
 12.0ns     0.9        0.9         NA
 12.5ns     0.6        0.7         NA
 13.0ns     0.3        0.5         NA
 13.5ns     0.3        0.5         NA
|

Insert this new [Rising Waveform] and [Fallling Waveform] section and new
examples and text changes noted by "|*" lines.  Add the new keyword
section and examples.

|==============================================================================
|     Keywords:     [Rising Waveform], [Falling Waveform]
|     Required:     No
|     Description:  Describes the shape of the rising and falling edge
|                   waveforms of a driver.
|     Sub-Params:   R_fixture, V_fixture, V_fixture_min, V_fixture_max,
|                   C_fixture, L_fixture, R_dut, L_dut, C_dut
|     Usage Rules:  Each [Rising Waveform] and [Falling Waveform] keyword
|                   introduces a table of time vs. voltage points that
|                   describe the shape of an output waveform.  These
|                   time/voltage points are taken under the conditions
|                   specified in the R/L/C/V_fixture and R/L/C_dut
|                   subparameters.  The table itself consists of
|                   one column of time points, then three columns of
|                   voltage points in the standard typ, min, and max format.
|                   The four entries must be placed on a single line and
|                   must be separated by at least one white space or tab
|                   character.  All four columns are required.  However, data
|                   is only required in the typical column.  If minimum
|                   or maximum data is not available, use the reserved word
|                   "NA".  The first value in the time column need not be '0'.
|                   Time values must increase as one parses down the table.
|                   The waveform table can contain a maximum of 100 data
|                   points.  A maximum of 100 waveform tables are allowed per
|                   model.  Note that for backwards compatibility, the existing
|                   [Ramp] keyword is still required.  The data in the waveform
|                   table is taken with the effects of the C_comp parameter 
|                   included.
|
|                   A waveform table must include the entire waveform;
|                   i.e., the first entry (or entries) in a voltage column
|                   must be the DC voltage of the output before switching
|                   and the last entry (or entries) of the column must be
|                   the final DC value of the output after switching.  Each 
|                   table must contain at least two entries.  Thus, numerical 
|                   values are required for the first and last entries of any 
|                   column containing numerical data.
|
|                   A [Model] specification can contain more than one rising
|                   edge or falling edge waveform table.  However, each new
|                   table must begin with the appropriate keyword and sub-
|                   parameter list as shown below.  If more than one rising or
|                   falling edge waveform table is present, then the data in
|                   each of the respective tables must be time correlated.
|                   In other words, the rising (falling) edge data in each
|                   of the rising (falling) edge waveform tables must be
|                   entered with respect to a common reference point on the
|                   input stimulus waveform.
|
|                   The 'fixture' subparameters specify the loading
|                   conditions under which the waveform is taken.  The R_dut,
|                   C_dut, and L_dut subparameters are analogous to the
|                   package parameters R_pkg, C_pkg, and L_pkg and are used
|                   if the waveform includes the effects of pin
|                   inductance/capacitance.  The diagram below shows the
|                   interconnection of these elements.
|
|                      PACKAGE            |   TEST FIXTURE
|       _________                         |
|      |  DUT    |   L_dut   R_dut        | L_fixture  R_fixture
|      |  die    |---@@@@@--/\/\/\--o-----|--@@@@---o---/\/\/\----- V_fixture
|      |_________|                  |     |         |
|                                   |     |         |
|                                   |     |         |
|                            C_dut ===    |        === C_fixture
|                                   |     |         |
|                                   |     |         |
|                                  GND    |        GND
|
|*                  NOTE:  The use of L_dut, R_dut, and C_dut is strongly
|*                  discouraged in developing Waveform data from Simulation
|*                  models.  Some simulators may ignore these parameters
|*                  because they may introduce numerical time constant
|*                  artifacts.
|*                  
|                   Only the R_fixture and V_fixture subparameters are
|                   required, the rest of the subparameters are optional.
|                   If a subparameter is not used, its value defaults to
|                   zero.  The subparameters must appear in the text after
|                   the keyword and before the first row of the waveform
|                   table.
|
|                   V_fixture defines the voltage for typ, min, and max
|                   supply conditions.  However, when the fixture voltage
|                   is related to the power supply voltages, then the
|                   subparameters V_fixture_min and V_fixture_max can
|                   be used to further specify the fixture voltage for
|                   min and max supply voltages.
|*
|*                  NOTE:  Test fixtures with R_fixture and V_fixture, 
|*                  V_fixture_min, and V_fixture_max only are strongly 
|*                  encouraged because they provide the BEST set of data
|*                  needed to produce the best model for simulation.  C_fixture
|*                  and L_fixture can be used to produce waveforms which 
|*                  describe the 
|------------------------------------------------------------------------------
[Rising Waveform]
R_fixture = 50
V_fixture = 0.0
| C_fixture = 50p        | These are shown, but are generally not recommended
| L_fixture = 2n
| C_dut = 7p
| R_dut = 1m
| L_dut = 1n
| Time            V(typ)              V(min)              V(max)
   0.0000S       25.2100mV           15.2200mV           43.5700mV
   0.2000nS       2.3325mV           -8.5090mV           23.4150mV
   0.4000nS       0.1484V            15.9375mV            0.3944V
   0.6000nS       0.7799V             0.2673V             1.3400V
   0.8000nS       1.2960V             0.6042V             1.9490V
   1.0000nS       1.6603V             0.9256V             2.4233V
   1.2000nS       1.9460V             1.2050V             2.8130V
   1.4000nS       2.1285V             1.3725V             3.0095V
   1.6000nS       2.3415V             1.5560V             3.1265V
   1.8000nS       2.5135V             1.7015V             3.1600V
   2.0000nS       2.6460V             1.8085V             3.1695V
| ...
  10.0000nS       2.7780V             2.3600V             3.1670V
|
[Falling Waveform]
R_fixture = 50
V_fixture = 5.5
V_fixture_min = 4.5           
V_fixture_max = 5.5 
| Time            V(typ)              V(min)              V(max)
   0.0000S        5.0000V             4.5000V             5.5000V
   0.2000nS       4.7470V             4.4695V             4.8815V
   0.4000nS       3.9030V             4.0955V             3.5355V
   0.6000nS       2.7313V             3.4533V             1.7770V
   0.8000nS       1.8150V             2.8570V             0.8629V
   1.0000nS       1.1697V             2.3270V             0.5364V
   1.2000nS       0.7539V             1.8470V             0.4524V
   1.4000nS       0.5905V             1.5430V             0.4368V
   1.6000nS       0.4923V             1.2290V             0.4266V
   1.8000nS       0.4639V             0.9906V             0.4207V
   2.0000nS       0.4489V             0.8349V             0.4169V
| ...
  10.0000nS       0.3950V             0.4935V             0.3841V
|
|==============================================================================
|     Keywords:     [GND Rising Waveform], [GND Falling Waveform], 
|                   [POWER Rising Waveform], [GND Falling Waveform]
|     Required:     No
|     Description:  Describes the shape of the rising and falling edge
|                   current waveforms of a GND and POWER nodes, respectively.
|     Sub-Params:   R_fixture, V_fixture, V_fixture_min, V_fixture_max,
|                   C_fixture, L_fixture
|     Usage Rules:  Each [GND Rising Waveform] and [GND Falling Waveform],
|                   [POWER Rising Waveform] and [POWER Falling Waveform]
|                   keyword
|                   introduces a table of time vs. current points that
|                   describe the shape of a current waveform.  These
|                   time/current points are taken under the conditions
|                   specified in the R/L/C/V_fixture
|                   subparameters.  The table itself consists of
|                   one column of time points, then three columns of
|                   current points in the standard typ, min, and max format.
|                   The four entries must be placed on a single line and
|                   must be separated by at least one white space or tab
|                   character.  All four columns are required.  However, data
|                   is only required in the typical column.  If minimum
|                   or maximum data is not available, use the reserved word
|                   "NA".  The first value in the time column need not be '0'.
|                   Time values must increase as one parses down the table.
|                   The waveform table can contain a maximum of 100 data
|                   points.  A maximum of 100 waveform tables are allowed per
|                   model.
|
|                   A waveform table must include the entire waveform;
|                   i.e., the first entry (or entries) in a current column
|                   must be the DC current before switching
|                   and the last entry (or entries) of the column must be
|                   the final DC value after switching.  Each 
|                   table must contain at least two entries.  Thus, numerical 
|                   values are required for the first and last entries of any 
|                   column containing numerical data.
|
|                   A [Model] specification can contain more than one rising
|                   edge or falling edge waveform table.  However, each new
|                   table must begin with the appropriate keyword and sub-
|                   parameter list as shown below.  If more than one rising or
|                   falling edge waveform table is present, then the data in
|                   each of the respective tables must be time correlated.
|                   In other words, the rising (falling) edge data in each
|                   of the rising (falling) edge waveform tables must be
|                   entered with respect to a common reference point on the
|                   input stimulus waveform.
|
|                   The 'fixture' subparameters specify the loading
|                   conditions under which the waveform is taken.  The R_dut,
|                   C_dut, and L_dut subparameters are analogous to the
|                   package parameters R_pkg, C_pkg, and L_pkg and are used
|                   if the waveform includes the effects of pin
|                   inductance/capacitance.  The diagram below shows the
|                   interconnection of these elements.
|
|                   NOTE: For computation purposes, the effect of the 
|                   L_dut, R_dut, and C_dut subparameters will be ignored.
|                   It is strongly recommmended that they not be used, if
|                   possible.  Furthermore, it is strongly recommended that
|                   the 'fixture' not use any L_fixture or C_fixture 
|                   component.  L_dut, R_dut, and C_dut are not permitted
|                   for the [GND Rising Waveform], [POWER Rising Waveform],
|                   [GND Falling Waveform], and [POWER Falling Waveform]
|                   keywords.    
|                 
|                   The current into the ground is shown as I_GND, and the
|                   current into the POWER node is shown as I_POWER.
|
|                   Each [GND Rising Waveform] and [POWER Rising Waveform]
|                   tables must correlate with an existing [Rising Waveform]
|                   table.  The correlation is done by specifying identical
|                   fixture subparameter values: R_fixture, V_fixture, 
|                   V_fixture_min, V_fixture_max, L_fixture, and C_fixture.
|                   Similarly [GND Falling Waveform] and [POWER Falling
|                   Waveform] must correlate with an existing [Falling
|                   Waveform] table.
|
|                   Because of the assumption that the currents into the 
|                   GND, POWER, and output nodes must sum to zero, only GND
|                   Waveform or POWER waveform tables are needed.  The output
|                   node current is available from the test fixture and 
|                   output waveform data.  However, both GND and POWER 
|                   waveform tables are permitted.  Similarly, an Open model
|                   device such as Open_drain or and ECL device such as 
|                   Output_ECL may not need any GND or POWER waveform tables.
|                   However, each or both are still permitted.  It is 
|                   simulator dependent which set of data takes precedence
|                   in case of redundant information.
|
|
|         POWER
|           |
|         | |
| I_POWER | |
|         v |          PACKAGE            |   TEST FIXTURE
|       ____|____                         |
|      |  DUT    |   L_dut   R_dut        | L_fixture  R_fixture
|      |  die    |---@@@@@--/\/\/\--o-----|--@@@@---o---/\/\/\----- V_fixture
|      |_________|                  |     |         |
|           |                       |     |         |
|         ^ |                       |     |         |
|   I_GND | |                C_dut ===    |        === C_fixture
|         | |                       |     |         |
|           |                       |     |         |
|          GND                     GND    |        GND
|
|                   Only the R_fixture and V_fixture subparameters are
|                   required, the rest of the subparameters are optional.
|                   If a subparameter is not used, its value defaults to
|                   zero.  The subparameters must appear in the text after
|                   the keyword and before the first row of the waveform
|                   table.
|
|                   V_fixture defines the voltage for typ, min, and max
|                   supply conditions.  However, when the fixture voltage
|                   is related to the power supply voltages, then the
|                   subparameters V_fixture_min and V_fixture_max can
|                   be used to further specify the fixture voltage for
|                   min and max supply voltages.
|------------------------------------------------------------------------------
[GND Rising Waveform]
R_fixture = 50
V_fixture = 0.0
| Time            I(typ)              I(min)              I(max)
   0.0000S     -338.4000uA         -188.6000uA         -635.9000uA
   0.2000nS      -2.0160mA         -123.4000uA           -6.2360mA
   0.4000nS      -2.3650mA           -3.5670mA          -11.0600mA
   0.6000nS      -7.2070mA           -5.1150mA          -12.0600mA
   0.8000nS      -7.4570mA           -4.9160mA          -17.1600mA
   1.0000nS      -8.2950mA           -3.9180mA          -19.7900mA
   1.2000nS      -9.5720mA           -3.5720mA           -8.2330mA
   1.4000nS     -10.5400mA           -3.5850mA           -2.9600mA
   1.6000nS      -7.8290mA           -3.8150mA           -1.4140mA
   1.8000nS      -4.6260mA           -3.9860mA           -1.1420mA
   2.0000nS      -2.3870mA           -4.1520mA           -1.1250mA
| ...
  10.0000nS    -388.4000uA         -135.3000uA         -964.2000uA
|
[POWER Rising Waveform]
R_fixture = 50
V_fixture = 0.0
| Time            I(typ)              I(min)              I(max)
   0.0000S      842.5000uA          493.0000uA            1.5070mA
   0.2000nS       6.6700mA            3.2490mA            9.7430mA
   0.4000nS      12.9000mA            4.6150mA           26.3100mA
   0.6000nS      25.9800mA           11.3000mA           42.5700mA
   0.8000nS      35.3200mA           19.0900mA           58.4600mA
   1.0000nS      43.2400mA           24.2100mA           70.4200mA
   1.2000nS      49.7700mA           28.9700mA           64.7800mA
   1.4000nS      55.3400mA           32.9800mA           64.7600mA
   1.6000nS      56.4000mA           36.3800mA           64.3900mA
   1.8000nS      56.3100mA           39.1500mA           64.4500mA
   2.0000nS      56.2000mA           41.3300mA           64.5700mA
| ...
  10.0000nS      55.9500mA           47.3500mA           64.3200mA
|
[GND Falling Waveform]
R_fixture = 50
V_fixture = 5.5
V_fixture_min = 4.5           
V_fixture_max = 5.5 
| Time            I(typ)              I(min)              I(max)
   0.0000S     -157.4000uA          -86.9600uA         -291.0000uA
   0.2000nS     -34.6000mA          -17.1000mA          -48.6100mA
   0.4000nS     -41.5400mA          -20.8600mA          -70.7200mA
   0.6000nS     -60.5500mA          -30.4800mA          -96.8400mA
   0.8000nS     -77.7500mA          -41.5500mA         -107.4000mA
   1.0000nS     -88.1500mA          -52.0000mA         -115.5000mA
   1.2000nS     -92.9400mA          -60.9400mA         -110.6000mA
   1.4000nS     -96.9700mA          -68.0800mA         -107.1000mA
   1.6000nS     -98.1100mA          -72.7800mA         -106.4000mA
   1.8000nS     -96.5100mA          -75.9600mA         -106.0000mA
   2.0000nS     -95.1600mA          -77.7100mA         -105.9000mA
| ...
  10.0000nS     -94.3700mA          -81.4700mA         -106.3000mA
[POWER Falling Waveform]
R_fixture = 50
V_fixture = 5.5
V_fixture_min = 4.5           
V_fixture_max = 5.5 
| Time            I(typ)              I(min)              I(max)
   0.0000S      157.4000uA           86.8500uA          291.0000uA
   0.2000nS      17.4600mA           10.0440mA           22.5200mA
   0.4000nS      11.7300mA            8.2320mA           18.0200mA
   0.6000nS      11.0800mA            6.8680mA           15.2900mA
   0.8000nS      10.1700mA            6.2700mA           11.1900mA
   1.0000nS       8.3370mA            6.2160mA           14.7000mA
   1.2000nS       6.2100mA            5.7840mA            9.4580mA
   1.4000nS       6.9920mA            5.3040mA            5.7280mA
   1.6000nS       8.2280mA            4.6130mA            4.8490mA
   1.8000nS       5.5850mA            3.8730mA            4.3310mA
   2.0000nS       4.0180mA            3.2190mA            4.1990mA
| ...
  10.0000nS       2.2710mA            1.3390mA            3.9900mA
|
******************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION:

Some additonal clarification information is needed in the original [Rising
Waveform] and [Falling Waveform] keyword.  A better example needs to 
be supplied because the existing example illustrates some bad practices.

The current waveform specification is needed to better define the
currents in the GND and POWER nodes during switching.  Currently the
allocation of currents into these nodes is simulator-algorithm dependent.
There is no information regarding paths directly from POWER to GND as
might occur in a make-before-break transition implementation that exists
in some CMOS devices.

The L_dut, R_dut, and C_dut fixture parameters are deleted from the 
new keywords.  While actual package electrical characteristic may exist,
there effects are negligible for current waveforms.  Moreover, this 
level of detail has proven in many case to actually reduce accuracy in
simulation because of numerical time constant considerations.  

Suggestions encouraging resistive-only fixture loads are embedded in this
proposal to encourage generating data that is most suitable for developing
models that may be used by most simulators.  The new examples reflect this
practice.

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

ANY OTHER BACKGROUND INFORMATION:

This proposal is based on discussion initiated by C. Kumar at the IBIS 
Open Forum Meeting on May 9, 1997

---

From: [email-masked] (Scott McMorrow)
Date: Fri, 16 May 97 19:16 PDT

To IBIS Committee:

It is not sufficient to model only the effects of output switching
on package currents.  In addition, the effects of input switching
on package currents must be modeled (e.g. - the internal clock
switching effects within a modern processor, or the asynchronous
turn-on characteristics of a memory device.)  These additional
effects are oftentimes orders of magnitude larger than those of 
the output buffers, and are often only loosely correlated in time
with the switching of device outputs.  To correctly model the total
current switching behavior of a modern device it is necessary to couple
a high level behavorial model of the switching characteristics of the
device, with the current attack and decay profiles of the I/O buffers and
associated logic, input buffers and clamp logic, along with the 
substantial core logic of most devices.  Then, the device must be
simulated simulatneously in a board environment with all other devices 
modeled in the same manner.

Anything less ain't even close, leading to gross underpredictions
of the power transient currents on boards and devices.

Scott McMorrow
Stramond Corporation

---

From: Kellee Crisafulli <[email-masked]>
Date: Sun, 18 May 1997 09:32:46 -0700

Hi Scott, IBIS

At 07:16 PM 5/16/97 PDT, you wrote:
>on package currents.
>....

  You make a valid point that IBIS can be improved to include internal
effects of devices
during switching intervals to better predict power transients.   However to
say "that anything
else is not close"  or that these effects "must be modeled" is at the very
least quite ridiculous.
There are numerous types of simulations using IBIS models e.g. analysis of
transmission line
effects in propagating signals which was the original goal of IBIS.  To say
that IBIS is not
acceptable in general because it is not perfect for some devices at doing
power transient
analysis is simply not true.   Additionally there are numerous classes of
components for which
modeling the output buffers does give a very good indication of the power
transients.
Obviously as the internal complexity increase relative to the current
switching magnitude of
the outputs the accuracy decreases as you correctly pointed out.

Perhaps I am taking your statement out of context.  If so would you
consider being more
specific about the context you had in mind for your comments.  For example
if you intended
your comments to reflect only modeling power transients I would prefer that
you preface
your opening with such.

Kellee

-------------------------------------------------------------------------
Have a great day...
Kellee Crisafulli at HyperLynx Inc.
[email-masked]	http://www.hyperlynx.com
-------------------------------------------------------------------------

---

From: Joe Cahill <[email-masked]>
Date: Sun, 18 May 1997 21:16:14 -0400

I think that if you intend to model the effect of power supply disturbances on
the switching waveforms at other chip receivers you would like a way to specify
the ground and power supply disturbances themselves. Probably a companion
proposal to bird42.

The proposal in question provides a way to determine part of the disturbance,
along with the appropriate simulator modelling for the package inductance and
capacitance. Determining the rest of the disturbance isn't addressed by this
proposal, but knowing a little bit more about a devices' characteristics never
hurt anyone. As they say, it's a start.

Although the two purposes are inter-related, they are distinctly different, and
should not be confused when judging the merits of any proposal to address
either problem.

Joe