IBISCHK2 TESTMATRIX UPDATE

From: Bob Ross <bob@icx.com>
Date: Wed Aug 16 1995 - 19:12:00 PDT

Hello Fellow IBISans, Paul and Ron:

I checked IBISCHK2, Version 8 and found the following:

(1) The "Banded_matrix" works correctly most of the time based on BIRD29.2.
However, there are a few cases which are not caught and which appear to
create pointer problems. If I discover other cases, I will report them
directly. The attached pkg2.ibs shows some of the problems. This appears
to be the only problem area remaining.

(2) The Sparse matrix problems previously reported: - ALL FIXED

(3) Finally, an additional test on each [Component]'s [Pin] list is needed
if it has a [Package Model] keyword. The [Define Package Model] section
contains a [Pin Numbers] list that must match the entries of the [Pin]
list both in content and quantity. The order can be different. This
added comparison test should be done for each [Component] even if they
refer to the same [Package Model] because the order and content of
each [Component] [Pin] list can differ.

FIXED

Again, Great Job Ron and Paul!

Bob Ross
Interconnectix, Inc.

                A TEST MATRIX FOR IBIS VERSION 2h (Beta 8)

DATE: 10/31/94, 12/2/94, 1/26/95, 3/4/95, 3/8/95 5/25/95 7/6/95, 8/16/95

SPECIFICATION TESTED PASS Comments/who tested
--------------------------------------+-----+-----------------------------+
Test that the parser only | | |
accepts 1.0, 1.1, 2.0, 2.1 as | | |
valid arguments to the [IBIS Ver] | yes | Stephen Peters |
keyword. | | |
                                      | | |
Tab character warning | yes | Bob Ross |
                                      | | |
--------------------------------------+-----+-----------------------------+
Scaling Factors: | | |
                                      | | |
Test that the parser recognizes | | |
"T", "G" and "f" as valid scaling | yes | No indication either way |
factors. | | Bob Ross - this is proper |
                                      | | operation |
Test that the parser does not | | |
recognize "t", "g" and "F" as | yes | No indication either way |
Valid scaling factors. | | Bob Ross - proper operation |
                                      | | |
--------------------------------------+-----+-----------------------------+
Keywords rules: | | |
                                      | | |
Test that the parser recognizes | | |
the [GND clamp] and [PWR clamp] | yes | Stephen Peters |
keywords without the underscore. | | |
Test Underscore rule for 3-word | yes | Bob Ross |
Keyoreds - all 4 cases. | | |
                                      | | |
Test that the parser issues an | | |
error if a keyword does not begin | yes | Stephen Peters |
in column 1. | | |
                                      | | |
Test case insensitivity of all | | |
keywords, reserved words and | yes | Pin mapping keyword does not|
sub-parameters | | recognize "power" and "gnd" |
                                      | | Bob Ross - OK, should be |
                                      | | "pulldown_ref", "pullup_ref,|
                                      | | "gnd_clamp_ref", and |
                                      | | "power_clamp_ref" |
                                      | | |
--------------------------------------+-----+-----------------------------+
Comments and Notes: | | |
                                      | | |
Test that the parser does not | | |
accept "+" and "-" as valid | yes | Stephen Peters |
comment characters. | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the [Copyright] keyword. | | |
                                      | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Component keyword related: | | |
                                      | | |
Test that the parser issues an | | |
error if the [Component] keyword | yes | Stephen Peters |
has no component name after it. | | |
                                      | | |
Test that the parser issues a warning | | |
if the component name contains blanks | yes | Stephen Peters |
                                      | | |
Test the component name length | | |
rules: | | |
parser accepts name < 40 characters | yes | Stephen Peters |
parser accepts name = 40 characters | yes | " |
parser fails if name > 40 characters | yes | " |
                                      | | |
Test that the parser issues an | | |
error if the [Manufacture] keyword | yes | Stephen Peters |
has no Manufactures name after it. | | |
                                      | | |
Test the Manufactures name length | | |
rules: | | |
parser accepts name < 40 characters | yes | Stephen Peters |
parser accepts name = 40 characters | yes | Stephen Peters |
parser fails if name > 40 characters | yes | Stephen Peters |
                                      | | |
Test that an .ibs file can contain | yes | Bob Ross |
more than one [Component] keyword | | |
and component description. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Pin keyword related: | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the [Pin] keyword. | | |
                                      | | |
Test that the parser issues a | | |
error when every model_name does | yes | Bob Ross |
not have a corresponding model | | (I don't see the problem) |
defined. | | |
                                      | | |
Test the "3 column or 6 column" | | |
rule. | yes | Stephen Peters |
                                      | | |
Test that the parser issues an error | | |
when non-numeric data is in the pin | yes | Stephen Peters |
data columns | | |
                                      | | |
Test that [Pin] entries agree with | yes | Bob Ross |
[Pin Numbers] entries if the [Package | | Fixed |
Model] keyword is used. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Package Model related: | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the [Package Model] keyword. | | |
                                      | | |
Test the package model name length | yes | Bob Ross |
rules | | Fixed: |
parser accepts name < 40 characters | yes | Name is taken as a DOS file |
parser accepts name = 40 characters | yes | name and not as argument to |
parser fails if name > 40 characters | yes | the [Define Package Model] |
                                      | | keyword |
Verify that the parser issues an | | |
error if it cannot find: | | |
                                      | | |
1. A [Define Package Model] keyword | | |
that has the same argument as the | yes | Bob Ross |
[Package Model] keyword or | | |
                                      | | |
2. An external .pkg file that has | yes | Bob Ross |
a [Define Package Model] keyword | | |
with has the same argument as the | | |
[Package Model] keyword. | | |
                                      | | |
3. Test that the parser recognizes | | |
all keywords in the package model | | |
description and operation below: | | |
   (1) Error if Missing | | |
   (2) Error if Duplicate | | |
   (3) Error if Wrong Argument | | |
[Define Package Model] 1,2,3 | yes | Bob Ross |
[Manufacturer] 1,2,3 | yes | |
[OEM] 1,2,3 | yes | |
[Description] 1,2,3 | yes | |
[Number of Pins] 1,2,3 | yes | fixed |
[Pin Numbers] 1,2,3 | yes | |
[Model Data] 1,2 | yes | |
[Resistance Matrix] 2,3 | yes | |
[Inductance Matrix] 1,2,3 | yes | |
[Capacitance Matrix] 1,2,3 | yes | |
[Bandwidth] 1,2,3 | yes | fixed |
[Row] 1,2,3-fails | NO | (problems below) |
[End Model Data] 1,2 | yes | Bob Ross |
[End Package Data] 1,2 | yes | " |
                                      | | |
                                      | | |
4. Full_matrix Tests | | Bob Ross |
[Bandwidth] error test | yes | |
[Row] number entry (match pin) | yes | fixed |
[Row] number entry (repeated) | yes | fixed |
[Row] number entry (all rows entered) | yes | fixed |
[Row] number entry (ascending order) | yes | |
[Row] format (upper triange matrix) | yes | fixed |
[Row] format (excessive data) | yes | |
[Row] format (missing data) | yes | fixed |
                                      | | |
5. Banded_matrix Tests | | Bob Ross |
[Bandwidth] req'd test | yes | fixed |
[Bandwidth] argument req'd | yes | |
[Bandwidth] argument value | yes | |
[Row] number entry (match pin) | yes | fixed |
[Row] number entry (repeated) | yes | fixed |
[Row] number entry (all rows entered) | yes | |
[Row] number entry (ascending order) | yes | |
[Row] format (excessive data) | yes | |
[Row] format (missing data) | yes | fixed |
[Row] format non-circular coupling | yes | |
[Row] format circular coupling (cc) | NO | BIRD29.2 |
[Row] format bandwidth limits (cc) | yes | BIRD29.2 fixed |
                                      | | |
6. Sparse_matrix Tests | | Bob Ross |
[Bandwidth] error test | yes | |
[Row] number entry (match pin) | yes | fixed |
[Row] number entry (repeated) | yes | fixed |
[Row] number entry (all rows entered) | yes | fixed |
[Row] number entry (ascending order) | yes | fixed |
[Row] index match | yes | |
[Row] index upper-triangle | yes | fixed |
[Row] index repeated | yes | |
[Row] index (alpha string) | yes | Fixed |
[Row] format (excessive data) | yes | fixed |
[Row] format (missing data) | yes | fixed |
                                      | | |
--------------------------------------+-----+-----------------------------+
Pin Mapping keyword related: | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the [Pin Mapping] keyword. | | |
                                      | | |
Test that the parser issues an | | |
error if every pin listed in the | yes | Bob Ross - fixed |
[Pin] keyword does not have an | | |
entry in the [Pin Mapping] table | | |
                                      | | |
Test the "3 column or 5 column" | yes | Stephen Peters |
rule. | | |
                                      | | |
Test that NC is a valid entry | | |
in a column. | yes | Stephen Peters |
                                      | | |
Test that each unique entry label | | |
must connect to at least one pin | | |
whose model name is POWER or GND | yes | Stephen Peters |
                                      | | |
Test that NA is NOT a valid | | |
column entry | yes | Bob Ross |
                                      | | |
--------------------------------------+-----+-----------------------------+
Diff Pin keyword related: | | |
                                      | | |
Test that the parser recognizes | yes | Bob Ross |
the [Diff Pin] keyword. | | |
                                      | | |
Test that the parser recognizes | yes | Bob Ross |
the 5 associated sub-parameters | | |
                                      | | |
Test the "4 column or 6 column" | yes | Bob Ross |
rule. | | |
                                      | | |
Test that NC is NOT a valid | yes | Bob Ross |
column entry. | | |
                                      | | |
Test that NA is a valid column | yes | Bob Ross |
entry. | | |
                                      | | |
Reports error for duplicate pin | yes | Bob Ross |
numbers. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
[Model] keyword: | | |
                                      | | |
Test that the parser recognizes | yes | Bob Ross |
the [Model] keyword. | | |
                                      | | |
Test that the parser recognizes | | |
each Model_type: | | |
Input | yes | Bob Ross |
Output | yes | |
I/O | yes | |
3-state | yes | |
Open_drain | yes | |
I/O_open_drain | yes | |
Open_sink | yes | |
I/O_open_sink | yes | |
Open_source | yes | |
I/O_open_source | yes | |
Input_ECL | yes | |
Output_ECL | yes | |
I/O_ECL | yes | |
Terminator | yes | |
                                      | | |
Test that the parser issues | | |
a warning if an input type model | yes | Stephen Peters |
does not have Vinh or Vinl defined. | | |
For All I/O_* cases. | yes | Bob Ross |
                                      | | |
                                      | | |
Test that the parser issues an | | |
error if the Model_type or C_comp | yes | Stephen Peters |
sub-parameters are missing. | | |
                                      | | |
Test that the parser accepts a | | |
[Model] description with only the | | |
Model_type and C_comp sub-params | yes | Stephen Peters |
defined. | | |
                                      | | |
Test that the parser allows NA in | | |
the min and max columns only of the | yes | Stephen Peters |
C_Comp sub-parameter. | | |
                                      | | |
Test that the parser allows only | | |
Non-inverting and Inverting as | yes | Stephen Peters |
choices for the Polarity sub-param | | |
                                      | | |
Test that the parser allows only | | |
Active-High and Active-Low as | yes | Stephen Peters |
choices for the Enable sub-param | | |
                                      | | |
Test that the parser recognizes | | |
the Vmeas, Cref, Rref and Vref | yes | Stephen Peters |
sub-parameters. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Temperature keyword related: | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the [Temperature Range] keyword | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Power supply rail related: | | |
                                      | | |
Test that the parser recognizes | | |
the supply rail keywords | | |
[Voltage Range] | yes | Stephen Peters |
[Pullup Reference] | " | |
[Pulldown Reference] | " | |
[POWER Clamp Reference] | " | |
[GND Clamp Reference] | " | |
                                      | | |
Test that the parser issues an | | |
error if the [Voltage Range] | | |
keyword is absent and all four of | | |
the other supply rail keywords are | yes | Stephen Peters |
NOT present. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
I/V table related: | | |
                                      | | |
Test that the parser recognizes | | |
the [Pullup], [Pulldown], [GND | yes | Stephen Peters |
Clamp] and [Power Clamp] keywords. | | |
                                      | | |
Test that the parser issues an | yes | Bob Ross |
error if all three columns are | | |
not included | | |
                                      | | |
Test that NA is accepted in the | yes | Bob Ross |
min and max columns. | | |
                                      | | |
Test that the parser issues an | yes | Bob Ross |
error if a column contains over | | |
100 points. | | |
                                      | | |
Test that the parser issues an | | |
error if a table contains less | yes | Stephen Peters |
than two points. | | |
                                      | | |
Test that the parser issues a | yes | Bob Ross |
warning if non-monotonic data | | |
is found. | | |
Test for One Warning per Column | yes | Bob Ross |
                                      | | |
--------------------------------------+-----+-----------------------------+
Terminator related: | | |
                                      | | |
Test that the parser recognizes | yes | Bob Ross |
the [Rgnd], [Rpower], [Rac] and | | |
[Cac] keywords. | | |
                                      | | |
Test if [Rac], then [Cac] req'd. | yes | Bob Ross |
                                      | | |
Test if [Cac], then [Rac] req'd. | yes | Bob Ross |
                                      | | |
Test if parser issues an error with | | |
above keywords AND Model_type is NOT | yes | Bob Ross |
Terminator. | | |
                                      | | |
Test that parser DOES NOT issue an | yes | Bob Ross |
error if above models are NOT | | |
defined. (Clamps or no components | | |
can also be "Terminators") | | |
                                      | | |
Test that the parser issues an | yes | Bob Ross |
error if all three columns are | | |
not included | | |
                                      | | |
Test that NA is accepted in the | yes | Bob Ross |
min and max columns. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Ramp keyword related: | | |
                                      | | |
Test that the parser recognizes | | |
the [Ramp] keyword and the | yes | Stephen Peters |
dv/dt_r and dv/dt_f sub-parameters. | | |
                                      | | |
Test that the parser recognizes | yes | Stephen Peters |
the R_load sub-parameter. | | |
                                      | | |
Test that the R_load sub-parameter | yes | Stephen Peters |
is optional. | | |
                                      | | |
--------------------------------------+-----+-----------------------------+
Waveform Related: | | |
                                      | | |
Test that the parser recognizes | | |
the [Rising Waveform] and [Falling | yes | Bob Ross |
Waveform] keywords. | | |
                                      | | |
Test that the parser recognizes | | |
the sub-parameters: | | |
R_fixture | yes | Bob Ross |
V_fixture | yes | |
V_fixture_max | yes | |
V_fixture_min | yes | |
C_fixture | yes | |
L_fixture | yes | |
R_dut | yes | |
L_dut | yes | |
C_dut | yes | |
                                      | | |
Test that the parser issues an | | |
error if the R_fixture and | yes | Bob Ross |
V_fixture sub-parameters are not | | |
present. | | |
                                      | | |
Test that the parser issues an | | |
error if a column contains over | yes | Bob Ross |
100 points. | | |
                                      | | |
Test that the parser issues an | | |
error if a table contains less | yes | Bob Ross |
than two points. | | |
                                      | | |
Test NA permitted in typical column | yes | Bob Ross |
--------------------------------------+-----+-----------------------------+

|***************************************************************
|
[IBIS Ver] 2.1
[File Name] pkg2.ibs
[File Rev] 0.1
[Date] August 16, 1995
[Source] Interconnectix Inc.
[Disclaimer] Provided for modeling purposes only.
                  Results are not guaranteed.
|
|***************************************************************
|
[Component] PACKAGE-TEST
[Manufacturer] Test File
[Package]
| variable typ min max
R_pkg 0.0m NA NA
L_pkg 0.0nH NA NA
C_pkg 0.0pF NA NA
|
|***************************************************************
|
[Pin] signal_name model_name R_pin L_pin C_pin
A1 P_1 NC
2 P_2 NC
5 P_3 NC
4 P_4 NC
3 P_5 NC

[Package Model] test

[Define Package Model] test
[Manufacturer] anyone
[OEM] this file has
[Description] BIRD29.2 tests

[Number of Pins] 5

[Pin Numbers]
A1
2
3
4
5
                    
[Model Data]
[Inductance Matrix] Banded_matrix | Should Fail
[Bandwidth] 2
[Row] A1
.01 .01 .01 | .01 | Adding another column here reports correct error
[Row] 2
.01 .01 .01
[Row] 3
.01 .01 .01 | .01 | Adding another column creates "PROGRAM BUG"
[Row] 4
.01 .01 | Needs 3 entries for circle-back case.
[Row] 5
.01 .01 .01 | .01 | Adding another column here reports correct error

[Capacitance Matrix] Banded_matrix
| [Bandwidth] 2 | Get "PROGRAM BUG" if [Bandwidth]
[Row] A1 | missing or has wrong argument
.01 .01 .01 .01 | such as 0, 1, 2
[Row] 2
.01 .01 .01 .01
[Row] 3
.01 .01 .01 .01
[Row] 4
.01 .01 .01 .01
[Row] 5
.01 .01 .01 .01

[Resistance Matrix] Banded_matrix
[Bandwidth] 1
[Row] A1
.01 .01
[Row] 2
.01 .01
[Row] 3
.01 .01
[Row] 4
.01 .01 | .01 | Adding another columm here creates "PROGRAM BUG"
[Row] 5
.01 .01

[End Model Data]
[End Package Model]
|
[End]
Received on Wed Aug 16 19:16:49 1995

This archive was generated by hypermail 2.1.8 : Fri Jun 03 2011 - 09:52:28 PDT