Bob R. and Ian,
Nice to see this bird, but I have a question/issue.
I agree that 100 point V-T curve limit is often insufficient because of
increased accuracy requirements. I believe the bird falls short (IMHO) by
not relaxing the 100 point limit in the I-V curves also.
The same argument you give for increasing the number of points in the V-T
curves also exist for I-V curves. In the past, I discussed this issue with
other model creators, and they too have run into cases where they could not
accurately include all of the "I" points needed for min typ max because
of the common "V" axis. One example is when I created then correlated models
for HSTL devices designed with on chip parallel termination. Very small
changes in I result in significant changes in V. If you don't nail the exact
operating points with enough I-V points you obtain DC offsets in your
resultant output waveforms.
I would strongly suggest while modifying 100 -> 1000 point change to the V-T
curves we should also relax that restriction on the I-V from 100->1000.
We should be proactive, If additional points are not required they don't
have
to be used, but if more points are needed the limitation is not in the
specification.
regards,
Bob H.
Cereva Networks
3 Network Drive
Marlboro MA. 01752
Phone: 508-486-9660 X 3365
FAX: 508-486-9661
Email: rhaller@cereva.com
-----Original Message-----
From: Bob Ross [mailto:bob_ross@mentorg.com]
Sent: Tuesday, October 24, 2000 4:51 PM
To: ibis@eda.org
Subject: IBIS BIRD67 - Increase V-T Table 100 Point Limit
To All:
BIRD67 is proposed to resolve the long-standing 100 point
limitation issue on V-T tables by allowing up to 1000 points.
Bob Ross
Mentor Graphics
****************************************************************************
**
****************************************************************************
**
BIRD ID#: 67
ISSUE TITLE: Increase V-T Table 100 Point Limit
REQUESTER: Bob Ross, Mentor Graphics, Ian Dodd, Cadence
DATE SUBMITTED: October 24, 2000
DATE ACCEPTED BY IBIS OPEN FORUM: Pending
****************************************************************************
**
****************************************************************************
**
STATEMENT OF THE ISSUE:
The 100 point limitation on V-T tables is too limiting because of increased
accuracy needs and the fact that the available point may have to be
distributed among the typ, min, and max columns. A 1000 point limit is
proposed.
****************************************************************************
**
STATEMENT OF THE RESOLVED SPECIFICATIONS:
In the following keyword, the value 100 is replaced by 1000 on the line
designated by |*
|===========================================================================
==
| Keywords: [Rising Waveform], [Falling Waveform]
| Required: No
| Description: Describes the shape of the rising and falling edge waveforms
| of a driver.
| Sub-Params: R_fixture, V_fixture, V_fixture_min, V_fixture_max,
C_fixture,
| L_fixture, R_dut, L_dut, C_dut
| Usage Rules: Each [Rising Waveform] and [Falling Waveform] keyword
| introduces a table of time vs. voltage points that describe
| the shape of an output waveform. These time/voltage points
| are taken under the conditions specified in the
| R/L/C/V_fixture and R/L/C_dut subparameters. The table
itself
| consists of one column of time points, then three columns of
| voltage points in the standard typ, min, and max format.
The
| four entries must be placed on a single line and must be
| separated by at least one white space. All four columns are
| required. However, data is only required in the typical
| column. If minimum or maximum data is not available, use
the
| reserved word "NA". The first value in the time column need
| not be '0'. Time values must increase as one parses down
the
|* table. The waveform table can contain a maximum of 1000
data
| points. A maximum of 100 waveform tables are allowed per
| model. Note that for backward compatibility, the existing
| [Ramp] keyword is still required. The data in the waveform
| table is taken with the effects of the C_comp parameter
| included.
|
| A waveform table must include the entire waveform; i.e., the
| first entry (or entries) in a voltage column must be the DC
| voltage of the output before switching and the last entry
(or
| entries) of the column must be the final DC value of the
| output after switching. Each table must contain at least
two
| entries. Thus, numerical values are required for the first
| and last entries of any column containing numerical data.
|
| A [Model] specification can contain more than one rising
edge
| or falling edge waveform table. However, each new table
must
| begin with the appropriate keyword and subparameter list as
| shown below. If more than one rising or falling edge
waveform
| table is present, then the data in each of the respective
| tables must be time correlated. In other words, the rising
| (falling) edge data in each of the rising (falling) edge
| waveform tables must be entered with respect to a common
| reference point on the input stimulus waveform.
|
| The 'fixture' subparameters specify the loading conditions
| under which the waveform is taken. The R_dut, C_dut, and
| L_dut subparameters are analogous to the package parameters
| R_pkg, C_pkg, and L_pkg and are used if the waveform
includes
| the effects of pin inductance/capacitance. The diagram
below
| shows the interconnection of these elements.
|
| PACKAGE | TEST FIXTURE
| _________ |
| | DUT | L_dut R_dut | L_fixture R_fixture
| | die |---@@@@@--/\/\/\--o-----|--@@@@---o---/\/\/\-----
V_fixture
| |_________| | | |
| | | |
| | | |
| C_dut === | === C_fixture
| | | |
| | | |
| GND | GND
|
| NOTE: The use of L_dut, R_dut, and C_dut is strongly
| discouraged in developing Waveform data from simulation
| models. Some simulators may ignore these parameters because
| they may introduce numerical time constant artifacts.
|
| Only the R_fixture and V_fixture subparameters are required,
| the rest of the subparameters are optional. If a
subparameter
| is not used, its value defaults to zero. The subparameters
| must appear in the text after the keyword and before the
first
| row of the waveform table.
|
| V_fixture defines the voltage for typ, min, and max supply
| conditions. However, when the fixture voltage is related to
| the power supply voltages, then the subparameters
| V_fixture_min and V_fixture_max can be used to further
specify
| the fixture voltage for min and max supply voltages.
|
| NOTE: Test fixtures with R_fixture and V_fixture,
| V_fixture_min, and V_fixture_max only are strongly
encouraged
| because they provide the BEST set of data needed to produce
| the best model for simulation. C_fixture and L_fixture can
be
| used to produce waveforms which describe the typical test
case
| setups for reference.
|
| NOTE: In most cases two [Rising Waveform] tables and two
| [Falling Waveform] tables will be necessary for accurate
| modeling.
|
| All tables assume that the die capacitance is included.
| Potential numerical problems associated with processing the
| data using the effective C_comp for effective die
capacitance
| may be handled differently among simulators.
|---------------------------------------------------------------------------
-- [Rising Waveform] R_fixture = 50 V_fixture = 0.0 | C_fixture = 50p | These are shown, but are generally not recommended | L_fixture = 2n | C_dut = 7p | R_dut = 1m | L_dut = 1n | Time V(typ) V(min) V(max) 0.0000s 25.2100mV 15.2200mV 43.5700mV 0.2000ns 2.3325mV -8.5090mV 23.4150mV 0.4000ns 0.1484V 15.9375mV 0.3944V 0.6000ns 0.7799V 0.2673V 1.3400V 0.8000ns 1.2960V 0.6042V 1.9490V 1.0000ns 1.6603V 0.9256V 2.4233V 1.2000ns 1.9460V 1.2050V 2.8130V 1.4000ns 2.1285V 1.3725V 3.0095V 1.6000ns 2.3415V 1.5560V 3.1265V 1.8000ns 2.5135V 1.7015V 3.1600V 2.0000ns 2.6460V 1.8085V 3.1695V | ... 10.0000ns 2.7780V 2.3600V 3.1670V | [Falling Waveform] R_fixture = 50 V_fixture = 5.5 V_fixture_min = 4.5 V_fixture_max = 5.5 | Time V(typ) V(min) V(max) 0.0000s 5.0000V 4.5000V 5.5000V 0.2000ns 4.7470V 4.4695V 4.8815V 0.4000ns 3.9030V 4.0955V 3.5355V 0.6000ns 2.7313V 3.4533V 1.7770V 0.8000ns 1.8150V 2.8570V 0.8629V 1.0000ns 1.1697V 2.3270V 0.5364V 1.2000ns 0.7539V 1.8470V 0.4524V 1.4000ns 0.5905V 1.5430V 0.4368V 1.6000ns 0.4923V 1.2290V 0.4266V 1.8000ns 0.4639V 0.9906V 0.4207V 2.0000ns 0.4489V 0.8349V 0.4169V | ... 10.0000ns 0.3950V 0.4935V 0.3841V | **************************************************************************** ** ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: This topic has been discussed at several IBIS Meeting and on e-mail. BIRD67 complies with the action item to propose a correction to the 100 point limit problem on V-T tables. There now exists both the requirement that V-T tables have high resolution for accuracy and also extend to a time where the DC value reaches the correct DC final value. A further requirement is that the high resolution exists on all columns - typ, min, and max. However, often the waveforms for min and max columns are both delayed differently and have their sharpest transition points distributed at different time values from each other and from the typ column points. Since the time points are all referenced to the same time axis for all columns, the selection of actual time values for best accuracy might be different for each column. A worst case scenerio would have approximately 33 selected time points available for each column. This provides too low of a resolution needed for some of the higher speed devices and for some corresponding accuracy requirements. This issue is further confused by whether NA entries in a particular column count as one of the maximum 100 entries in that column. The worst case interpretation is that it does. Also ibischk3 enforces this limitation regardless of contents of any column. Often tools used to generate V-T tables use constant time steps. This often provides conflicting delta time requirements: small enough for the necessary resolution for the fastest responses, and large enough so that the final DC value is reached for the slowest response using 100 points or less. More complicated optimal distribution of points may be the only solution. With more allowable points even the simplier constant delta time tables can be provided. BIRD67 simply increases the maximum value allowed to 1000. We still want to provide a limit to prevent vendors from providing unnecessarily large amounts of V-T data. At this time we feel that 1000 points is more than adequate. BIRD67 retains the 100 point limit for all other tables. The 100 point limit is still reasonable for these situations. Having a common limit of 1000 would also be attractive for consistency, but this would also encourage producing needlessly large files. An older BIRD17 had proposed raising the limit to 151 for greater resolution and to allow even distribution of some I-V data based on 5 V technology. BIRD17 was rejected. One reason was that a common tool at that time had a limit of 100 points when processing table based VCCS and VCVS functions - a key element in processing IBIS models. The need to be compatible with this tool still exists, but the need for greater resolution also exists. The burden now shifts to the specific tool - either it must change its limits or else provide the filtering algorithm to do the best selection of data points. Most other tools do not have such a 100 point restriction. **************************************************************************** ** ANY OTHER BACKGROUND INFORMATION: **************************************************************************** **Received on Thu Oct 26 05:26:31 2000
This archive was generated by hypermail 2.1.8 : Fri Jun 03 2011 - 09:52:30 PDT