**************************************************************************** **************************************************************************** BIRD ID#: 140.2 ISSUE TITLE: Format Corner and Range Clarification for IBIS-AMI REQUESTOR: Arpad Muranyi, Mentor Graphics DATE SUBMITTED: June 28, 2011 DATE REVISED: November 30, 2011 December 15, 2011 DATE ACCEPTED BY IBIS OPEN FORUM: January 6, 2012 **************************************************************************** **************************************************************************** STATEMENT OF THE ISSUE: The IBIS 5.0 specification is very vague on pg. 140 and 141 with the description of the various Format types, especially Corner. The rules on how Corner is expected to work with the simulator's corner setting is unclear and needs explanation. In addition, the definition on pg. 140 shows three values for Corner: Corner , while on pg. 147 the definition of Rx_Receiver_Sensitivity only shows two values: (Format Corner ). This inconsistency cannot be resolved by an EDA tool without additional information which is not available. **************************************************************************** STATEMENT OF THE RESOLVED SPECIFICATIONS: On pg. 28, after these lines: | maximum magnitudes. One entry of vdiff, regardless of its | polarity, is used for difference magnitudes. add these lines: |** When a [Model] that is associated with any of the pins |** listed under the [Diff Pin] keyword contains the |** [Algorithmic Model] keyword, the tdelay_*** parameters |** in the fourth, fifth and sixth columns of the [Diff Pin] |** keyword are ignored in AMI channel characterization |** simulations, i.e. they are treated as if their value |** would be zero. On pg. 107 after these lines: | Up to three Corner lines are permitted. A "Typ" line is | required. If "Min" and/or "Max" data is missing, the tool may | use "Typ" data in its place. However, the tool should notify | the user of this action. add these lines: |** Models instantiated by corner_name "Min" describe the slow, |** weak performance, and models instantiated by corner_name |** "Max" describe the fast, strong performance. On pg. 140 replace these lines: | Format: (default is range) | Value Single value data | Range | List ... | Corner with these lines: | Format: (default is range) | Value Single value data |* The user may assign any value without any restrictions |* within the constraints of the Type of the variable | Range |* This defines a continuous range for which the user may |* select any value greater than or equal to |* and less than or equal to within the |* constraints of the Type of the variable | List ... |* This defines a discrete set of values from which the user |* may select one value | Corner |* The selection of one value is automatically carried out |* by the EDA tool based on its internal simulation corner |* setting On pg. 141 replace these lines: | Note that in the context of Algorithmic Model for type 'Corner', and align implicitly to slow and fast corners, and | does not have to be less than . For type 'Range' | and 'Increment', , does not imply slow and fast | corners. with these lines: |** Note that modeling and simulating different corner cases is a |** fundamental concept in IBIS. For each model instance, the EDA tool |** will make use of either the "Typ", "Min" or "Max" data provided in |** the IBIS file, according to the user's simulation setup. |** |** As described in the "Notes on Data Derivation Method" section of this |** document, the "Min" and "Max" data for the I-V tables and their |** corresponding voltage reference keywords, [Ramp] and V-T tables |** represent the slow and fast behavior of the device, respectively. |** Following the conservative approach, the "Max" value of C_comp |** represents the slow, and the "Min" value of C_comp represents the |** fast behavior of the device. |** |** For IBIS-AMI parameters defined as Format Corner, the EDA tool will |** pick one of the three supplied values (, , |** ) in the .ami file for any given model instance. This |** selection is governed by the same internal corner variable in the |** EDA tool that controls the selection of the "Typ", "Min", "Max" |** model data. corresponds to "Typ", |** corresponds to "Min" (slow or weak performance) and |** corresponds to "Max" (fast or strong performance). For AMI |** parameters, does not have to be less than . |** |*** For AMI parameter type 'Range', 'Increment' and 'Steps' , |*** does not imply slow and fast corners, and the user may |*** select any value provided by these parameters regardless of what |*** corner is used for the simulation. If the user does not make a |*** selection for parameter types 'Range', 'List', 'Increment' and |*** 'Steps', the EDA tool shall automatically use the value defined by |*** Default, if it exists, or the otherwise (regardless of |*** what corner is used for the simulation). |** |** When a [Model] that is associated with any of the pins listed under |** the [Diff Pin] keyword contains the [Algorithmic Model] keyword, the |** tdelay_*** parameters in the fourth, fifth and sixth columns of the |** [Diff Pin] keyword are ignored in AMI channel characterization |** simulations, i.e., they are treated as if their value would be zero. |** **************************************************************************** ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: It was determined in the May 17, 2011 IBIS ATM teleconference that the example on pg. 147 was clearly a typo. BIRD 127.1 contains a correction for that oversight. The changes documented in BIRD 140 are based on the discussions which took place in the IBIS ATM teleconference and subsequent emails. There was an extensive discussion in IBIS ATM teleconferences and emails about the problem that the IBIS specification deliberately leaves "fast" and "slow" undefined (see discussion on C_comp in Section 9, Notes on Data Derivation Method). These discussions concluded (on June 21, 2011 in the ATM teleconference) that until the analog modeling in IBIS solves this ambiguity, the method of associating the AMI Format Corner with the analog model corners will be left to the EDA tool vendors. On the request of the IBIS Open Forum, BIRD 140 was returned in the month of August 2011 to the ATM Task Group for further discussion. Following the discussion in the August 30, 2011 ATM teleconference, Walter Katz and Arpad Muranyi drafted a language in a private phone conversation with private emails following that. A draft version for BIRD 140.1 was the result of that work. Later variants of this draft proposed an extension of the Typ/Min/Max concept in IBIS to Typ/Min/Max/Slow/Fast, but this idea was dropped. One of the main reasons for leaving this idea behind was in the difficulty in interpreting the meaning of model data for various keywords and subparameters in Model_types Terminator and Series. Further discussions revealed that the need for interpreting the meaning of these keywords and subparameters could be avoided if the [Algorithmic Model] is restricted to Model_types which do not make use of them. This restriction makes for other reasons too, because the use of algorithmic models make only sense for transmitters and receivers (and not for [Series Current], for example). The result of this revelation was the birth of BIRD 148 which limits the use of [Algorithmic Model] to certain Model_types, and BIRD 140.1. The text added for [External Model] on pg. 107 was deliberately not added in the corresponding place for [External Circuit] on pg. 125 because [External Circuit]s may contain on-die interconnect descriptions and it is not clear what fast/slow corner would mean in that context. The ATM task group decided on November 29, 2011 that this can be addressed at a later time with a different BIRD if needed. BIRD 140.2 was issued to make the words clearer that the user may select values independent from the simulation corner for types Range, Increment and Steps, and to include Steps in this list, which was mistakenly omitted in this sentence before. **************************************************************************** ANY OTHER BACKGROUND INFORMATION: ****************************************************************************