Minutes, IBIS Quality Task Group

23 November 2021

12:00-13:00 EST (09:00-10:00 PST)

ROLL CALL

ANSYS                               Curtis Clark
Intel Technology                    Michael Mirmak
Micron Technology                 * Randy Wolff
Signal Integrity Software:        * Mike LaBonte
Teraspeed Labs:                   * Bob Ross
Zuken USA:                        * Lance Wang

Everyone in attendance marked by *

NOTE: "AR" = Action Required.

-----------------------MINUTES ---------------------------
Mike LaBonte conducted the meeting.

Call for IBIS related patent disclosures:

- None


Call for opens:

- None


Review of previous meeting minutes:
Minutes from the November 16, 2021 meeting were reviewed.  Randy Wolff moved to accept the
minutes with correction as noted.  Lance Wang seconded the motion.  Without objection, the
minutes were approved.


ARs:
- AR: Bob Ross to upload prior IBISCHK source code distributions
  Not done yet.


NEW ITEMS:

New parser bug reports:
Bob Ross reported there were none.


IBISCHK710 development:
Mike LaBonte showed IBISCHK developer emails with questions about relative file paths,
slash types, and .include statements.

The developer had recommended searching for .iss file references relative to the directory
containing the .ibs file.  Bob Ross said relative paths must always be relative to the
directory of the referring file.  A .ims file referring to a .iss file might not be in the
same directory as the top .ibs file.  Randy Wolff said traversing up directories should
never be allowed.

Another question was whether file references in IBIS-ISS files should require backslashes
on Windows, and forward slashes on other operating systems.  We decided that backslashes
in IBIS-ISS files would be accepted but not required.

A third question was about the need to recursively process .include statements in IBIS-ISS
files.  Randy said the .iss file called by IBIS must have a .subckt, it must not contain
only a .include.  Therefore there might be no need to recursively read files.  Bob
wondered if an included file could contain only a portion of the syntax, necessary for
understanding the whole.  For example, continuation lines with parameter settings might be
in an included file.  Randy felt that might not work in all simulators.  Mike agreed,
although he noted that C compilers did work that way, reading included files simply as
literal text.  Bob said included IBIS-ISS files might correspond to process and
temperature variations.

Mike asked if the requirement to have the expected subckt in the top IBIS-ISS file was
stated in IBIS, and if that meant recursive includes need not be handled.  Randy said it
was bad practice to not have the subckt in the top file. It should be a rule, but it was
not stated.  Bob felt there might be a stated requirement for multi-lingual references.
Mike suggested that recursive includes need not be read if the only reason was to find the
required subckt.  Recursive includes might be required if the parser was written in such a
way that all syntax was checked along the way, and thus completeness was required.

Randy said IBIS required forward slashes, but it might reference a .iss file with .include
statements using backslashes.  That would not violate the IBIS rule, because the
backslashes did not appear in a file defined by the IBIS specification.

AR: Bob Ross to email developer to clarify relative file path and include rules.

Randy Wolff showed a case where a Touchstone 1 file included from an [Interconnect Model]
passed tschk200 and tschk201, but ibischk710 found a port number mismatch.  IBISCHK had
miscounted the number of ports in the Touchstone file as 1 when there were actually 20
ports.  Randy showed the file, which had frequency values with spaces before them on the
line.  Mike felt that was not allowed, he had never seen that before. Lance Wang agreed.

Randy showed the Touchstone specification, which had:
	1. In Version 1.0 files, no more than four pairs of n-port parameters are allowed
		 per network data line. No restriction exists on the number of data pairs on a line
	   in Version 2.0 files.
	2. Individual network data entries are separated by whitespace.
	3. A network data line is terminated by a line termination character.
	4. All network data lines shall be arranged in increasing order of frequency.
	5. Frequency values shall only appear at the beginning of lines, after the line
	   termination sequence or character.

Mike asked how it was to be determined which value in the file was the second frequency
point.  Randy noted that in the example file the second frequency value followed a blank
line and one with a comment mark.  Randy converted the Touchstone 1 file to Touchstone 2.
The resulting file had the frequency line with no leading space, and others aligned using
leading spaces.

Randy felt this was a bug in the new ibischk710.  Mike said we needed to instruct the
developer on the algorithm for counting ports, which could be found from the tschk2 source
code.

AR: Mike LaBonte to determine Touchstone port count algorithm for ibischk710


Tabled topics (no discussion without motion):
  - BIRD181.2
  - IBISCHK security fixes


Bob Ross moved to adjourn. Randy Wolff seconded. Without objection the meeting ended.

Meeting ended: 12:57 ET

Next meeting November 30, 2021