****************************************************************************** ****************************************************************************** BIRD ID#: 39 ISSUE TITLE: Specification Enhancement REQUESTER: John Fitzpatrick, Alcatel CIT Ahmed Omer, Motorola, Inc. Jon Powell, Quad Design Bob Ross, Interconnectix, Inc. DATE SUBMITTED: 10/11/96 DATE ACCEPTED BY IBIS OPEN FORUM: November 8, 1996 ****************************************************************************** ****************************************************************************** STATEMENT OF THE ISSUE: Additional optional specification parameters are needed for completeness and useful extensions. ****************************************************************************** STATEMENT OF THE RESOLVED SPECIFICATIONS: The optional [Model Spec] keyword is proposed to be associated with a model. Its purpose is to provide an extendable format to deal with new specification. Several parameters are contained in the proposal. |============================================================================== | Keywords: [Model Spec] | Required: No | Sub-params: Vinh, Vinl, Vinh+, Vinh-, Vinl+, Vinl-, Overshoot_high, | Overshoot_low, D_overshoot_high, D_overshoot_low, | D_overshoot_time, Pulse_high, Pulse_low, Pulse_time | |Description: The [Model Spec] keyword defines four columns under which | specification subparameters are defined. | | The following subparamters are defined: | Vinh Input voltage threshold high | Vinl Input voltage threshold low | Vinh+ Hysteresis threshold high max Vt+ | Vinh- Hysteresis threshold high min Vt+ | Vinl+ Hysteresis threshold low max Vt- | Vinl- Hysteresis threshold low min Vt- | Overshoot_high Static overshoot high voltage | Overshoot_low Static overshoot low voltage | D_overshoot_high Dynamic overshoot high voltage | D_overshoot_low Dynamic overshoot low voltage | D_overshoot_time Dynamic overshoot time | Pulse_high Pulse immunity high voltage | Pulse_low Pulse immunity low voltage | Pulse_time Pulse immunity time | | Usage Rules: [Model Spec] must follow all other subparameters under the | [Model] keyword. | | For each subparameter contained in the first column, the | remaining three hold its typical, minimum and maximum values. | The entries of typical, minimum and maximum be must be placed | on a single line and must be separated by at least one white | space or tab or tab character. All four columns are required | under the [Model Spec] keyword. However, data is required | only in the typical column. If minimum and/or maximum values | are not available, the reserved word "NA" must be used | indicating the typical value by default. | | The minimum and maximum values are used for specifications | subparameter values that may track the min and max operation | conditions of the [Model]. Usually it is related to the | Voltage range settings. | | Unless noted below, each subparameter does not require having | any other subparameter. | | Vinh, Vinl rules: | The threshold subparameter lines | provide additional min and max column values, if needed. | The typ column values are still required and would be | expected to override the Vinh and Vinl subparameter values | specified elsewhere. Note: the syntax rule that require | inserting Vinh and Vinl under models remains unchanged | even if the values are defined under the [Model Spec] | keyword. | | To mimic a hysteresis effect, the values of Vinh and Vinl may | interchanged such that the Vinl value is larger than the Vinh | value. However, simulators may process this information | differently or report an error. | | Vinh+, Vinh-, Vinl+, Vinl- rules: | The four hysteresis subparmeters must all be defined before | the hysteresis threshold rules become effective. Otherwise | the standard threshold subparameters remain in effect. The | hysteresis thresholds shall be at the Vinh+ and Vinh- values | for a low-to-high transition, and at the Vinl+ and Vinl- | values for a high-to-low transition. | | Overshoot_high, Overshoot_low rules: | The static overshoot sub-parameters provide the voltage values | for which the component is no longer guaranteed to function | correctly. | | D_overshoot_high, D_overshoot_low, D_overshoot_time rules: | The dynamic overshoot values provide a time window during | which the the overshoot may exceed the static overshoot limits | but be below the dynamic overshoot limits. D_overshoot_time is | required for dynamic overshoot testing. In addition, if | D_overshoot_high is specified, then Overshoot_high is necessary | for testing beyond the static limit. Similarly, if | D_overshoot_low is specified, then Overshoot_low is necessary | for testing beyond the static limit. | | Pulse_high, Pulse_low, Pulse_time rules: | The pulse immunity values provide a time window during which | a rising pulse may exceed the nearest threshold value but | be below the pulse voltage value and still not cause the | input to switch. Pulse_time is required for pulse immunity | testing. A rising response is tested only if Pulse_high is | specified. Similarly, a falling response is tested only if | Pulse_low is specified. The rising response may exceed the | Vinl value, but remain below the Pulse_high value. Similarily, | the falling response drop below the Vinh value, but remain | above the Pulse_low value. In either case the input is | regarded as immune to switching if the the responses are | within these extended windows. If the hysteresis thresholds | are defined, then the rising response shall use Vinh- as the | reference voltage, and the falling response shall use Vinl+ | as the reference voltage. | |------------------------------------------------------------------------------ [Model Spec] | Subparameter typ min max | | Thresholds | Vinh 3.5 3.15 3.85 | 70% of Vcc Vinl 1.5 1.35 1.65 | 30% of Vcc | | Vinh 3.835 3.335 4.335 | Offset from Vcc | Vinl 3.525 3.025 4.025 | for PECL | | Hysteresis | Vinh+ 2.0 NA NA | Overrides the Vinh- 1.6 NA NA | thresholds Vinl+ 1.1 NA NA Vinl- 0.6 NA NA | All 4 are required | | Overshoot | Overshoot_high 5.5 5.0 6.0 | Static overshoot Overshoot_low -0.5 NA NA D_overshoot_high 6.0 5.5 6.5 | Dynamic overshoot D_overshoot_low -1.0 -1.0 -1.0 | requires | D_overshoot_time D_overshoot_time 20n 20n 20n | & static overshoot | | Pulse Immunity | Pulse_high 3V NA NA | Pulse immunity Pulse_low 0 NA NA | requires Pulse_time 3n NA NA | Pulse_time | |============================================================================== ****************************************************************************** ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: BIRD39 is introduced to assist the model provider, model user and EDA tool provider. The model provider provides better models: - Improve specification threshold details for CMOS and other technologies - Allow hysteresis inputs to be modeled The model user can do better analysis: - Work with dynamic overshoot, a parameter not usually specified in datasheets - Work with pulse immunity The EDA tool provider has some clearly defined parameters for more expedient tool development: - Provide an easy to parse structure - Provide an evolution path for future extensions Providing a consistent extension format appears valuable, even if some parameters do not fit exactly. It may overspecify most parameters. The min/typ/max format was chosen over explicit definitions such as: Vinh_min = Vinl_max = Each additional subparameter would then require 3 names. Vinl and Vinh for typical values are redundant. The [Model Spec] subparameters are chosen to override the regular [Model] Subparameter because it is presumed that specification subparameter was purposefully chosen an may give more detail. The [Model] Vinh and Vinl remain required to support processing of files in simulators which support portions, but not all of Version 3.X. The following diagram shows how the hysteresis subparameters are defined: ^ O | +-------+----<----+--------+------------ U | ! ! ! ! T | ! ! ! ! P | ! ! ! ! U | ! ! ! ! T | ! ! ! ! | v v ^ ^ V | ! ! ! ! O | ! ! ! ! L | ! ! ! ! T | ! ! ! ! T | ! ! ! ! A | ! ! ! ! G | ! ! ! ! E | -----------+-------+---->----+--------+ |_____________________________________________________________> Vinl- Vinl+ Vinh- Vinh+ INPUT VOLTAGE Rather than getting into a complicated set of mixed rules, all four hysteresis subparameters were chosen to be required for hysteresis checking to take effect. The Overshoot_high and Overshoot_low values are the same subparameters as in RAIL. These are static. The dynamic overshoot, as introduced by BIRD38 can be represented by tables. However, such information is readily available for more than a handful of parts. Therefore a simpler representation was chosen. This would work with the PCI specification. There are defined test setups for dynamic overshoot - often a large voltage such as 5 V above the rail into 50 ohms connected to an input. Since the input typically has clamping, the actual overshoot value may depend on the clamp I/V characteristics. Thus the specification limits in the table may be voltages that arise with the clamp in place. The dynamic overshoot is a maximum voltage over which voltage may exceed the static overshoot limit for a maximum period of time. Thus no dynamic overshoot is specified unless time is specified and the two high limits (Overshoot_high and D_overshoot_high) or the two low limits (Overshoot_low and D_overshoot_low) are both in each case specified. Otherwise, no dynamic overshoot testing is done. It is too complicated to create a set of default scenerios. After long discussion, by the specification subcommittee, the pulse immunity specification was defined similar to the dynamic overshoot. The data appears mostly available from typical curves given as general information. The pulse immunity parameters can be estimated from the typical values. In fact, the designer has great latitude to enter a set of pulse and amplitude values according to how much immunity is to be tolerated. The reference thresholds from which immunity is calculated is chosen to be the limit input thresholds. Both the dynamic overshoot and pulse immunity data are not true specification limits. The data may appear as a pulse amplitude versus pulse duration graph for a typical device. Therefore the user may be the primary source of this data based on how conservative the user chooses. Because the data is not in the format of a true specification, it does not seem reasonable to provide a format for tabular data where there is no reliable source of such data. The pulse immunity data appears to be based on a typical threshold device. ****************************************************************************** ANY OTHER BACKGROUND INFORMATION: This proposal replaces BIRD38 and expands the Specification areas regarding Overshoot. It also replaces Egg12 regarding typical, minimum, maximum format options for threshold specifications. The Specification committee consisted of Ahmed Omer, John Fitzpatrick, Jon Powell, and Bob Ross. ******************************************************************************