***************************************************************************** ***************************************************************************** Buffer Issue Resolution Document (BIRD) BIRD ID#: 63.3 ISSUE TITLE: Documentation of Receiver Setup and Hold Timing Conditions REQUESTOR: D.C. Sessions (Philips), Stephen Peters, Richard Mellitz, Arpad Muranyi (Intel Corp.) DATE SUBMITTED: Sept 8, 1999, Dec 27, 1999, Jan 6, 2000, Feb 17, 2000 DATE ACCEPTED BY IBIS OPEN FORUM: Rejected March 17, 2000 ***************************************************************************** ***************************************************************************** STATEMENT OF THE ISSUE: Currently, the edge rate and overdrive conditions under which a receiver's data book setup and hold timings are specified are not documented. This bird provides a way for the model creator to document those conditions in an IBIS file. ***************************************************************************** STATEMENT OF THE RESOLVED SPECIFICATIONS: 1) The following new keyword is defined and placed in the specification just below the [Receiver Threshold] keyword. |============================================================================ | Keyword: [Tester Spec] | Required: No | Sub-Params: Vlow_tester, Vhigh_tester, Vth_tester, Edge_rate_setup, | Edge_rate_hold | Description: The [Tester Spec] keyword documents the input overdrive | and waveform edge rate conditions under which a device's | input setup and hold times are specified. The subparameters | are defined as follows: | | Vth_tester is the point on the input waveform from which | a receivers' setup and hold time is referenced. It is | usually the input voltage at which the output of a digital | logic receiver changes state. Vth_tester is used as the | reference voltage for the Vlow_tester and Vhigh_tester | parameters. For a differential receiver Vth_tester represents | the voltage point at which the true and complement input | waveforms cross. | | Vlow_tester represents the starting voltage of the low-to-high | going waveform a tester uses when characterizing a receiver's | setup or hold time. It also represents the ending voltage of a | high-to-low going waveform. Vlow_tester is expressed as an | offset from Vth_tester. | | Vhigh_tester represents the ending voltage of the low-to-high | going waveform a tester uses when characterizing a receiver's | setup or hold time. It also represents the starting voltage of | a high-to-low going waveform. Vhigh_tester is expressed as an | offset from Vth_teseter. | | Edge_rate_setup is the slope of the input waveform used when | specifying a receivers setup time. The slope must be valid | over the 20% to 80% points of the input voltage swing and is | calculated as follows: | | | (Vhigh_tester - Vlow_tester) X 0.6 | Edge_rate_* = ------------------------------------------ | time it takes to swing the above voltage | | Edge_rate_hold is the slope of the input waveform used when | specifying a receivers hold time. The slope must be valid | over the 20% to 80% points of the input voltage swing and is | calculated as shown above: | | Both Edge_rate_setup and Edge_rate_hold must be entered as | an unreduced fraction, with the numerator representing the | actual deltaV and the denominator representing the actual | deltaT. | | Usage Rules: The [Tester Spec] keyword is valid if the model type | includes any reference to input or I/O. All subparameters | are required to be present. When entering a numeric value the | subparameter argument and the subparameter itself must be | separated by an equals sign (=). The argument to the | Edge_rate_* parameters are separated from the parameter itself | by white space. | | Differential Receivers: | For a differential receiver the input setup and hold times | are specified with respect to the crossing point of the two | input waveforms as one switches L->H and the other switches | H->L. Therefore, if the [Tester Spec] keyword is describing | a differential receiver (i.e. is part of a [Model] statement | that describes a pin listed in the [Diff Pin] keyword), then | the numerical value of Vth_tester is assumed to be the point | at which the two input waveforms (the "true" and "complement" | inputs) cross. As with a single ended receiver, the true and | complement inputs are assumed to switch between Vlow_tester | and Vhigh_tester. | | | A basic 3.3v single ended receiver Vth_tester = 1.5v Vlow_tester = -1.0v Vhigh_tester = 1.0v Edge_rate_setup 1.2v/1.2nS Edge_rate_hold 1.2v/1.2nS | | A 2.5V SSTL receiver Vth_tester = 1.25v Vlow_tester = -0.75v Vhigh_tester = 0.75v Edge_rate_setup 900mv/0.9nS Edge_rate_hold 900mv/0.9nS | | A differential receiver Vth_tester = 0.65v Vlow_tester = -500mV Vhigh_tester = +500mV Slew_rate_setup 600mV/0.36nS Slew_rate_hold 600mV/0.36nS | | ****************************************************************************** ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: Like it's companion BIRD #62, this bird is an attempt to better specify and document a receiver's functionality. It follows the convention of the previous BIRDS in that most of the parameter values are specified as an offset from a reference voltage. This technique supports both single ended and differential receivers. Note that there are separate slew rate entries for setup and hold time. When formulating this bird the authors were not sure if receiver hold time was specified under different slew rate conditions than setup time. Thus, separate slew rate entries. These two parameters can be collapsed into one if further information indicates that this is not the case. Updates for 63.1: Corrected "Tester_Skew" to "Tester_Slew" in the examples (typo correction) and fixed up the Slew_rate equation by removing the absolute value markers. Changed Slew_rate so that it is expressed as an explicit ratio and not as a decimal (following the convention of [Ramp Rate]). Clarified the meaning of Tester_Vth. Finally, under "Differential Receivers:" changed the text to indicate that the numerical value of Tester_Vth is *typically* given as 0v rather than *must* be given as zero. Updates for 63.2: Syntax correction -- the argument to the Tester_Slew_* parameter should be separated from the subparameter by white space, not an equals sign (it's a non-numeric argument). Corrected examples. Updates for 63.3 Tester_slew_rate (parameter and definition) was replaced by the Edge_rate_* parameter, where edge rate is specified from the 20% to 80% points on the input waveform. Vth_tester for a differential receiver now represents the crossing point of the two input waveforms, which is where the input setup and hold timing for a differential receiver are supposed to be referenced. Subparameter names have been changed to better conform to IBIS usage. ****************************************************************************** ANY OTHER BACKGROUND INFORMATION: This BIRD is a direct result of a request by the JEDEC JC-16 committee to the IBIS Open Forum to provide better specification of receivers. The basic form of this bird was discussed at a meeting in July 1999 between DC Sessions of Phillips Corp. and Stephen Peters, Richard Mellitz and Aprad Muranyi of Intel Corp. BIRD63.3 was rejected since some of the proposed content was better positioned in BIRD62.5 ******************************************************************************