****************************************************************************** ********************* 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 ibischk-bug@vhdl.org. A list of reported bugs will be maintained on vhdl.org. ****************************************************************************** PARSER VERSION NUMBER: ibischk3 v3.2.5 PLATFORM (SPARC, HP700, PC, etc.): ALL OS AND VERSION: ALL REPORTED BY: Mike LaBonte, Cadence Design Systems, Matthew Flora. Innoveda, Inc. DATE: 19 Sep 2000 DATE AMMENDED 2 Nov 2000 The description of the bug was extended to include a request for a more understandable warning/error message. The description of the proposed fix was modified to show the proposed message text. 13 Nov 2000 Attempted to clarify how the newly worded warning/error message is to be used. Also corrected that message's use of V_fixture. DESCRIPTION OF BUG: Report ERROR for excessive Waveform/VI mismatch Using the R_fixture and V_fixture of a Rising or Falling waveform as a load, a WARNING is issued for static voltages predicted by the I-V curves that fail to come within 2% of the Rising or Falling Endpoint voltages. For example: WARNING - Model 'shortwaves': TYP AC Rising Endpoints ( 0.33V, 1.18V) not within 0.017V (2%) of ( 0.33V, 1.50V) on VI curves for 25 Ohms to 1.5V But the example above shows voltages more than 30% different, as predicted by the two methods. There is no specification on how simulators should try to handle these anomalies, which may lead to significantly different results from one simulator to the next. The example was created simply by removing final points from the [Rising Waveform], resulting in a waveform that does not end at at the correct final voltage. Furthermore, many users and first-time model creators have asked what the wording of the message means. The byproduct of this lack of understanding is that these people have no idea how to correct the model and may decide to ignore the message. PROPOSED FIX: Update acdc_CheckModelProcessWave() such that it generates a WARNING for voltage differences between 2% and 10% and generates an ERROR message for voltage differences over 10%. (The ERROR for models exceeding a 10% mismatch would warrant a simulator's refusal to make use of the model.) In both cases, the message is worded the same, it is simply prefaced with either WARNING or ERROR. To make the message more understandable, the text should be less terse and should include the actual percentages calculated. The proposed error message would look like this: ERROR - Model 'shortwaves': The [Rising Waveform] with R_fixture=25 Ohms and V_fixture=1.5V has TYP column DC endpoints of 0.33V and 1.18V, but an equivalent load applied to the model's I-V tables yields different voltages (0.33V and 1.50V), a difference of 0% and 38%, respectively. Note: In the example above, the TYP column of the I-V and V-t tables were being processed. When one of the other columns (MIN or MAX) is processed, the message shall report which fixture voltage was used (V_fixture or V_fixture_min or V_fixture_max). INSERT IBIS FILE DEMONSTRATING THE BUG: |*************************************************************************** | [IBIS Ver] 2.1 [File Name] shortwaves.ibs [File Rev] 0.1 [Source] [Date] 9/20/2000 [Comment char] |_char | [Disclaimer] This IBIS file demonstrates an IBIS parser flaw, and is not intended to be representative of any known component. | | |*************************************************************************** | [Component] shortwaves [Manufacturer] Cadence Design Systems | | | [Package] | variable typ min max R_pkg 0ohms NA NA L_pkg 0H NA NA C_pkg 0F NA NA | [Pin] signal_name model_name R_pin L_pin C_pin | 1 1 shortwaves | | | |*************************************************************************** | | [Model] shortwaves Model_type I/O_open_drain Polarity Non-Inverting Enable Active-Low Vinl = 0.9 Vinh = 1.1 Vmeas = 1.00 Cref = 0.00p Rref = 25.00 Vref = 1.50 | variable typ min max C_comp 3.28pF NA NA [Voltage Range] 1.5V NA NA | | | [POWER Clamp] | |Voltage I(typ) I(min) I(max) Table is VCC relative | 2.998V 0A NA NA -1.178V 100uA NA NA -1.22V 560uA NA NA -1.242V 1.4mA NA NA -1.257V 2.6mA NA NA -1.268V 4.09mA NA NA -1.277V 5.94mA NA NA -1.285V 8.27mA NA NA -1.291V 10.59mA NA NA -1.297V 13.58mA NA NA -1.303V 17.41mA NA NA -1.309V 22.31mA NA NA -1.315V 28.6mA NA NA -1.321V 36.66mA NA NA -1.327V 47mA NA NA -1.333V 60.24mA NA NA -1.339V 77.23mA NA NA -1.345V 98.99mA NA NA -1.348V 110mA NA NA -1.35V 120mA NA NA -1.354V 140mA NA NA -1.357V 160mA NA NA -1.365V 222.547mA NA NA -1.372V 300mA NA NA -1.375V 340mA NA NA -1.379V 400mA NA NA -1.387V 560mA NA NA -1.392V 690mA NA NA -1.397V 850mA NA NA -1.4V 960mA NA NA -1.406V 1.24A NA NA -1.412V 1.58A NA NA -1.418V 2.03A NA NA -1.425V 2.71A NA NA -1.431V 3.48A NA NA -1.437V 4.46A NA NA -1.443V 5.72A NA NA -1.449V 7.33A NA NA -1.45V 7.64A NA NA -1.50V 7.80A NA NA | | | [Pullup] | |Voltage I(typ) I(min) I(max) Table is VCC relative | 1.499V 0A NA NA -480mV 0A NA NA -481mV 0A NA NA | | | [Pulldown] | |Voltage I(typ) I(min) I(max) | 0V 0A NA NA 150mV 21.59mA NA NA 406mV 56.34mA NA NA 699mV 91.6mA NA NA 788mV 100mA NA NA 962mV 114.286mA NA NA 1.07V 121.645mA NA NA 1.237V 132.251mA NA NA 1.507V 150mA NA NA 1.981V 150mA NA NA | | [Ramp] | | variable typ min max dV/dt_r 698.4mV/888ps NA NA dV/dt_f 698.4mV/1.47ns NA NA R_load = 25ohms | | [Rising Waveform] R_fixture = 25ohms V_fixture = 1.5V |Time V(typ) V(min) V(max) 0s 334.17mV NA NA 105ps 353.96mV NA NA 212ps 454.06mV NA NA 317ps 513.42mV NA NA 528ps 712.47mV NA NA 836ps 1.09659V NA NA 925ps 1.18389V NA NA ||| Points have been removed from the [Rising Waveform], resulting in ||| a waveform that does not end at 1.5V. | | | [Falling Waveform] R_fixture = 25ohms V_fixture = 1.5V |Time V(typ) V(min) V(max) 0s 1.49817V NA NA 159ps 1.49468V NA NA 203ps 1.48769V NA NA 270ps 1.44579V NA NA 409ps 1.25373V NA NA 613ps 863.79mV NA NA 779ps 648.45mV NA NA 907ps 485.49mV NA NA 980ps 468.03mV NA NA 1.387ns 394.7mV NA NA 1.634ns 378.4mV NA NA 2.041ns 351.63mV NA NA 2.247ns 344.64mV NA NA 2.45ns 334.17mV NA NA | | | |*************************************************************************** [End] **************************************************************************** ******************** BELOW FOR ADMINISTRATION AND TRACKING ***************** **************************************************************************** BUG NUMBER: 47 SEVERITY: [FATAL, SEVERE, MODERATE, ANNOYING, ENHANCEMENT] ENHANCEMENT PRIORITY: [HIGH, MEDIUM, LOW] LOW STATUS: [OPEN, CLOSED, WILL NOT FIX, NOT A BUG] CLOSED FIXED VERSION: 3.2.6 FIXED DATE: January 2, 2001 NOTES ON BUG FIX: Classified at the October 6, 2000 IBIS Meeting. Resolution was to improve the messages with better clarifications and to add some actual deviation reporting in the message. This will be brought up again at the next meeting for resolution before submitting this for a fix. At the November 17, 2000 IBIS Meeting the revised wording and clarification above were approved. BUG47 is now scheduled to be fixed. **************************************************************************** ****************************************************************************