****************************************************************************** ****************************************************************************** BIRD ID#: BIRD98.1 ISSUE TITLE: Gate Modulation Effect (table format) REQUESTER: Arpad Muranyi, Intel Corp.; Antonio Girardi, Giacomo Bernardi, Roberto Izzi, STMicroelectronics; DATE SUBMITTED: May 20,2005 DATE REVISED: March 9, 2007 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: Two new keywords, [ISSO_PD] and [ISSO_PU], will be added to the specification to provide two tables of the effective saturation currents, for the pulldown and pullup stage respectively, measured with respect to the voltage value variation on the related reference supply node (the ground reference node for the pulldown stage and the power reference node for the pullup stage). The information contained in the tables enables the simulators to calculate modulation coefficients which may be used to modulate the original pullup and pulldown currents when the instanteneous voltage on the power and ground nodes changes from the nominal values at which the I-V tables of the [Model]s were obtained. It has to be noted that the instantaneous voltage values are referred to an ideal ground as done for the nominal values. |============================================================================= | Keyword: [ISSO_PD], [ISSO_PU] | Required: No | Description: The data points under the keyword [ISSO_PD] define the | effective current of the pulldown structure of a buffer as a | function of the voltage on the pulldown reference node (the | ground node), whereas the points under the keyword [ISSO_PU] | define the effective current of the pullup structure as a | function of the voltage on the pullup reference node (the power | node). | Currents are considered positive when their direction is into | the component. | | Simulators can use such tables to calculate modulation | coefficients to modulate the original pulldown and pullup | currents when a voltage variation on the pullup and pulldown | reference nodes is revealed during power and/or ground bounce, | and/or SSO simulation events. | | The voltage axis of each table contains the voltage values of | the reference node at which the effective currents, provided | in the second, third and fourth columns of the table, are | measured. | | The voltage axis may span over the range [-VCC, VCC], centered | around the nominal voltage value of the reference node at which | the pulldown and pullup currents are extracted. | Therefore, the [ISSO_PD] voltage axis range is [-VCC, VCC] and | the [ISSO_PU] one is [0, 2*VCC]. | | The effective current, at an arbitrary instantaneous voltage | (Vinst) on the reference node can be calculated from a [Model]'s | I-V table obtained at a nominal supply voltage Vnom as: | | I_effective(Vinst) = k_ssn(Vinst) * I_model(Vnom) | | where k_ssn(Vinst) is the modulation coefficient (used internally | by the simulator's algorithms) which modulates the I-V table at | each iteration of the simulation, Vinst is the actual, | instantaneous voltage value on the reference node, and Vnom is | the corresponding nominal value of the voltage on the reference | node at which the I-V tables were generated for the [Model] | ([Voltage Range], or [Pullup Reference] for the pullup I-V tables | and [Pulldown Reference] for the pulldown I-V tables). | Therefore, two coefficents are globally needed for including the | "gate modulation effect" in IBIS model: one for modulating the | pulldown nominal current (Kssn_PD) and another for modulating | the pullup nominal current (Kssn_PU). | Starting from the above relationship between the effective and | the nominal current, the two coefficients are calculated as: | | k_ssn_PD (Vinst_PD)= I_PD_effective(Vinst_PD)/I_PD_model(Vnom_PD) | | k_ssn_PU(Vinst_PU)= I_PU_effective(Vinst_PU)/I_PU_model(Vnom_PU) | | For example, if the typical pullup table of a 5 volt device has | a 100 mA data point at Vnom=5V on the pullup reference node, | and the associated [ISSO_PU] keyword has 100 mA at Vinst=5V and | 90 mA at Vinst=4.5V, then the nominal pullup current will be | scaled down by 10% at an instance during a simulation when the | instantenous voltage value on the pullup reference node of the | model happens to be 4.5V. | As already mentioned above, the Vinst values must be referred to | an ideal ground or, more precisely, to the same reference node | used for [Pulldown Reference] and [Pullup Reference]. | | Other Notes: The assumption is that the pulldown/pullup current, obtained | at nominal supply voltages, can be modulated by a coefficient | to generate the effective current when a change occurs on the | related reference supply node. | Although the effective pullup and pulldown currents, and so | the K_ssn coefficients, depend on Vgs and Vds, which require a | lot of tables to describe the different I(Vgs, Vds) MOS-like | characteristics of both stages, this assumption is based on the | usage of only two tables. In fact, several analysis have showed | that a good accuracy can be obtained by drawing the effective | current I(Vgs, Vds) for different values of Vgs and only one | fixed value of Vds, chosen in the saturation zone. A good | choice may be Vds=VCC. Nevertheless, considering that the current | in the saturation zone has a minor dependence from Vds, due to | channel modulation effect. In critical cases, such effect may be | averaged by changing the Vds voltage (for instance linearly) | within the saturation zone. | | This assumption may provide reasonably accurate results while | the operating points variations remain within the saturation | region of the I-V tables, condition that is always verified | when a bouncing occurs on the reference node of the stage under | transition. | Nevertheless, during the bouncing noise evolution the operating | points tend to fall in the linear zore, where this assumption | may be less accurate, but it does not impact drammatically the | accuracy of output transition. | In fact, it has been verified that the lower is the bouncing | magnitude, the lower is the error, which helps considering that | in the linear zone the current to be modulated and the bouncing | noise decrease. | | Usage Rules: If used, the [ISSO_PD] and [ISSO_PU] keywords must immediately | follow the data tables after the [Pulldown] and [Pullup], [GND | Clamp], and/or [Power Clamp] keywords. This is to guarantee | that the content of the [ISSO_PD] and [ISSO_PU] keywords and | the preceeding I-V tables can be associated with each other. | | The first column contains the voltage value at which the | currents of the remaining three columns are obtained. The three | remaining columns contain the typical, minimum, and maximum | effective current values of pullup/pulldown stage. | The effective current table of each stage is obtained by | activating the stage ("logic zero" for pulldown and "logic one" | for pullup) and applying a dc sweep [-VCC, VCC] centered around | the nominal voltage value on the related reference node. | Therefore, the [ISSO_PD] voltage range is [-VCC, VCC], whereas | the [ISSO_PU] voltage range is [0, 2*VCC]. Since the tables | are obtained by keeping Vds=VCC, a simultaneous dc sweep has to | be applied on the output pad to guarantee such a condition. | In order to avoid that this sweep may alter the effective | current to be drawn, it is adviced to disconnect from the | output pad the stage not under investigation. | | For example, the pulldown effective current can be drawn by a | dc voltage sweep Vsweep=[-VCC, VCC] on the pulldown reference | node and, simultaneously, a dc sweep VCC+Vsweep ([0, 2*VCC]) | has to be applied on the output pad, disconnecting the pullup | and power clamp structures from the pad. | An alternative way for removing the pullup and power clamp | contribution may also be to short the output pad with both | pullup and power clamp reference nodes, but taking care to | let the circuitry of the buffer's control logic supplied. In | other terms, if the pullup reference node supplies also the | buffer's control logic, ONLY the node of the pullup final | structure has to be shorted with both output pad and power | clamp reference node. It is intuitive the reason of such | approach: the control logic drive the gate of the pulldown | stage whose effective current has to be drawn. | | All four columns are required under this keyword. 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 in any table. Each table must | have at least 2, but not more than 100, rows. | | The voltage values of these tables must be centered around | the typical supply voltage value of the [Model]'s reference | node, and the effective currents at the values of the typ., | min., and max. supply voltage values must be the same as the | current obtained from the corresponding I-V tables at the same | voltage. | | If the [ISSO_PD] and [ISSO_PU] keywords are not present, the | effect of power supply variations on the I-V tables is not | explicitly defined by the model. Individual tools may estimate | variation effects in different ways in such a case. | | The 1st (typical) column of the [ISSO_XX] keyword | is associated with the 1st (typical) column of the | corresponding I-V table, the 2nd (minimum) column is | associated with the 2nd (minimum) column of the | corresponding I-V table, and the 3rd (maximum) column is | associated with the 3rd (maximum) column of the | corresponding I-V table. | |----------------------------------------------------------------------------- [ISSO_PD] | |The [voltage range] is 1.8V (typ), 1.7V (min) and 1.95V (max) | | Voltage I(typ) I(min) I(max) | -1.8V 10.0m 7.0m 13.0m | . | . 0.0V 25.0m 19.0m 34.0m 0.2V 18.0m 13.0m 26.0m | ISSO_PD_min must match I(1.70V) min 0.5V 10.0m 7.0m 16.0m | ISSO_PD_typ must match I(1.80V) typ 0.7V 5.0m 3.0m 9.0m | ISSO_PD_max must match I(1.95V) max 1.0V 1.0m 0.7m 3.0m | in the corresponding I-V table 6.0V 44.0m 33.0m 53.0m | | . | . 1.8V 0.0m 0.0m 0.0m | | [ISSO_PU] | | Voltage I(typ) I(min) I(max) | 0.0V 0.0m 0.0m 0.0m | . | . 0.8V 2.0m 1.0m 4.0m 1.0V 5.0m 3.0m 10.0m | ISSO_PU_min must match I(1.70V) min 1.2V 9.0m 6.0m 15.0m | ISSO_PU_typ must match I(1.80V) typ 1.4V 14.0m 9.0m 22.0m | ISSO_PU_max must match I(1.95V) max 1.6V 21.0m 14.0m 31.0m | in the corresponding I-V table 1.8V 27.0m 19.0m 38.0m | | . | . 3.6V 16.0m 13.0m 20.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 BIRDxx is a variant of the BIRD98 to match the STMicroelectronics proposal to the "gate modulation effect". The algorithm behind this proposal has been implemented and validated by the VHDL-AMS IBIS architecture, extending the original code proposed by Arpad Muranyi. Several benchmarking analysis between the actual IBIS model, the related SPICE model and the extended VHDL-AMS IBIS implementation have revealed a very good performance of such proposal. Additional documentation: IBIS Summit, January 16, 2007: ------------------------------ http://www.eda-stds.org/ibis/docs/BIRD98&ST_Proposal_Convergence.ppt http://www.eda-stds.org/ibis/docs/IBIS_Gate_Modulation_ST_Proposal.pdf IBIS Futures Subcommitte, July 8, 2005: --------------------------------------- http://www.vhdl.org/pub/ibis/futures/ST_Vgs_Presentation.pdf http://www.vhdl.org/pub/ibis/futures/ST_IBIS_Gate_Modulation_Effect.pdf The BIRD98 was a variant of BIRD 97. It was based on feedback received from Donald Telian, who suggested that the "Gate Modulation Effect" should be implemented using a table format instead of the equation proposed in BIRD 97. The advantages and disadvantages of the table and equation format are too numerous to list here. Since the table format seems to be much easier from the perspective of the model maker, the BIRD98.0 was written to replace BIRD 97 by a "NO" vote. Additional credits are due to Katja Koller and Bob Ross who were instrumental in writing and commenting on BIRD 97. ******************************************************************************