***************************************************************************** ********************* IBIS GOLDEN PARSER BUG REPORT FORM ******************** ***************************************************************************** INSTRUCTIONS To report a bug in the IBIS golden parser. Please fill out the top part of the following form and send the complete form to info@ibis.org. A list of reported bugs is maintained at http://ibis.org/bugs/ibischk/ . ***************************************************************************** PARSER VERSION NUMBER: 7.0.1 PLATFORM (SPARC, HP700, PC, etc.): PC OS AND VERSION: Microsoft Windows 10 REPORTED BY: Michael Mirmak, Intel Corp. DATE: March 3, 2020 DESCRIPTION OF BUG: The enclosed IBIS file generates a WARNINGS regarding extreme currents in the [GND Clamp] and [POWER Clamp] data. However, the voltage point mentioned in the WARNINGS are not present in the file, nor are the corresponding current point (the voltage mentioned is -1.5 V, Further, it is not apparent how the voltage and current data could be obtained. if the parser were summing various curves before examining the currents. Finally, with a Vcc of -1.00 V at typical corner, -1.5 V is beyond the -Vcc to 2*Vcc The data from the WARNING must be generated from extrapolation, but the rationale for the targets used is not clear. While not a highly significant issue, the confusing nature of the WARNING makes model debug more difficult. COMMENTS AND BACKGROUND IBIS Minutes on https://ibis.org/minutes/min1996/m092796.txt suggested the check, as quoted by Chris Rokusek (Quad Design) below. A common error at the time among different EDA vendors was that some vendor defaulted to mA as the current multiplier. People forgot to put in multipliers in IBIS I-V tables when converting the data to IBIS. Unfortunately, the change was not documented as a BUG report. " Suggestion 3 related to defining when a diode has suspiciously large to warrant a warning message. The 10A, 1.5V limit seemed reasonable. Chis reported that he had seen this limit exceeded in only several IBIS files on vhdl.org, and these curves were suspicious. This setting would also fall within the configuration discussion." The "diode" side of the clamp tables only applies to the -Vcc to 0 region. The hardcoded test is really at just -1.5V for both the [POWER Clamp] and [GND Clamp] tables. Other regions where extreme currents could have occurred are not checked. Linear extrapolation from the last two table entries was used if the I-V tables did not extend to -1.5V We located the test in acdc.c, ACDC_ERR_6, and hard-coded constants in this file. There is no technical reason to limit the currents. The purpose of the test is just to warn the user the there might be an issue with the data in the clamp tables. --- A suggested resolution is to keep the test as is, but test at the most negative voltage in each of the [GND Clamp] and [POWER Clamp] tables OR at the the #define ACDC_MAX_VI_VOLTAGE -1.5 only if this latter voltage is more positive than the most negative voltages of the [GND Clamp] or [POWER Clamp] tables. For example, if the most negative voltage is -1.0 V, then use 1.0 V. If the most negative voltage is -2.0 use 1.5 V, as is currently done. It is possible that the most negative values are different in each of the [GND Clamp] and [POWER Clamp] tables. Do the checks independent of each other. Report excessive current for the voltage at which the current limit test is conducted in the format -x.yV, where y is rounded to two decimal digits. Also, change the message from a WARNING to CAUTION. --- IBISCHK7 output is shown below. IIBISCHK7 V7.0.1 Checking bug211.ibs for IBIS 2.1 Compatibility... W1506 - Model 'BUG211_IO': Extreme currents present in TYP GND_Clamp VI Curve (-16.1A @ -1.5V) W1506 - Model 'BUG211_IO': Extreme currents present in MIN GND_Clamp VI Curve (-11.4A @ -1.5V) W1506 - Model 'BUG211_IO': Extreme currents present in MAX GND_Clamp VI Curve (-15.4A @ -1.5V) W1506 - Model 'BUG211_IO': Extreme currents present in TYP POWER_Clamp VI Curve (16.1A @ -1.5V) W1506 - Model 'BUG211_IO': Extreme currents present in MIN POWER_Clamp VI Curve (11.4A @ -1.5V) W1506 - Model 'BUG211_IO': Extreme currents present in MAX POWER_Clamp VI Curve (15.4A @ -1.5V) Errors : 0 Warnings: 6 File Passed INSERT IBIS FILE DEMONSTRATING THE BUG: |************************************************************************** | [IBIS Ver] 2.0 [File name] bug211.ibs [File Rev] 0.5 [Date] February 28, 2020 [Source] Example only [Notes] Illustrates extreme current cases Messages designed only for Clamp negative Vtable region | |************************************************************************** | [Component] BUG211 [Manufacturer] XXX [Package] | typ min max R_pkg 0mOhm 0mOhm 0mOhm L_pkg 0nH 0nH 0nH C_pkg 0pF 0pF 0pF | |**************************************************************************** | [Pin] signal_name model_name R_pin L_pin C_pin | A1 I/O BUG211_IO | |************************************************************************** | [Model] BUG211_IO Model_type I/O Vinh = 2.0 Vinl = 0.2 Vmeas = 0.5 Rref = 50 Vref = 0.5 | typ min max C_comp 0.0pF 0.0pF 0.0pF [Voltage Range] 1.0V 0.9V 1.1V | |*************************************************************************** | | Only the negative regions of either Clamp Tables are Checked | [GND Clamp] | |Voltage I(typ) I(min) I(max) | -1.00 -3.6 -3.9 -2.9 -0.98 -3.1 -3.6 -2.4 0.0 0.0 0.0 0.0 0.98 3.1 3.6 2.4 | NOT designed to test excessive currents 1.00 3.6 3.9 2.9 | in the plus Vtable region | [POWER Clamp] | |Voltage I(typ) I(min) I(max) | -1.00 3.6 3.9 2.9 -0.98 3.1 3.6 2.4 0.0 0.0 0.0 0.0 0.98 -3.1 -3.6 -2.4 | NOT designed to test excessive currents 1.00 -3.6 -3.9 -2.9 | in the plus Vtable region | | NO WARNINGS | | Extreme Currents are NOT checked in positive voltage region | of [Pulldown] and [Pullup] tables - NO Warnings | [Pulldown] | |Voltage I(typ) I(min) I(max) | -1.00 -3.6 -3.9 -2.9 -0.98 -3.1 -3.6 -2.4 0.0 0.0 0.0 0.0 0.98 3.1 3.6 2.4 | NOT designed to test excessive currents 1.00 3.6 3.9 2.9 | in the plus Vtable region | [Pullup] | |Voltage I(typ) I(min) I(max) | -1.00 3.6 3.9 2.9 -0.98 3.1 3.6 2.4 0.0 0.0 0.0 0.0 0.98 -3.1 -3.6 -2.4 | NOT designed to test excessive currents 1.00 -3.6 -3.9 -2.9 | in the plus Vtable region | [Ramp] dV/dt_r 0.200/0.1n 0.180/0.1n 0.219/0.1n dV/dt_f 0.200/0.1n 0.180/0.1n 0.219/0.1n | |*************************************************************************** | [End] **************************************************************************** ******************** BELOW FOR ADMINISTRATION AND TRACKING ***************** **************************************************************************** BUG NUMBER: 211 SEVERITY: [FATAL, SEVERE, MODERATE, ANNOYING, ENHANCEMENT] ANNOYING PRIORITY: [HIGH, MEDIUM, LOW] MEDIUM STATUS: [OPEN, CLOSED, WILL NOT FIX, NOT A BUG] CLOSED FIXED VERSION: 7.0.2 FIXED DATE: August 3, 2020 NOTES ON BUG FIX: Introduced and classified at the April 3, 2020 IBIS Open Forum To be fixed in the next release with the suggested clamp range limitations and the change from W1506 to C1506. (Apply this change to all previous [IBIS Ver] numbers, as is currently done.) August 3, 2020 - 18 W1506 reduced to 12 C1506 messages per requested changes. ***************************************************************************** *****************************************************************************