Subject: BIRD53 - IBIS FILE CHARACTER SET

From: [email-masked] (Bob Ross)
Date: Fri, 7 Aug 98 15:38:12 PDT

To All:

Per discussion at the August 7, 1998 IBIS meeting, Geoffrey Ellis has
submitted BIRD53.

It will be scheduled for a vote at the August 28, 1998 meeting.

Bob Ross
Interconnectix/Mentor Graphics

                       Buffer Issue Resolution Document  (BIRD)

BIRD ID#:      53
ISSUE TITLE:   IBIS File Character Set
REQUESTOR:     Geoffrey Ellis, Cadence Design Systems
DATE SUBMITTED: 7 August 1998
DATE ACCEPTED BY IBIS OPEN FORUM:

*******************************************************************************
*******************************************************************************

STATEMENT OF THE ISSUE:

While the general syntax rules and guidelines say, "The file must have no more
than 80 characters per line," the rules to not say which character sequences
are legal to terminate a line, e.g. "\r\n" (carriage return followed by
new-line), etc.  Also, the Specification does not say whether or not the line
termination haracter(s) count against the 80 character limit.

Also, the Specification does not state which characters are legal in an IBIS
file, other than that it is an ASCII file.  Although ASCII is a 7-bit code
("US-ASCII. Coded Character Set - 7-Bit American Standard Code for Information
Interchange. Standard ANSI X3.4-1986, ANSI, 1986"), some published standards
make reference to "8-bit ASCII characters", for example "File Transfer Protocol
RFC 542 NIC 17759".  The IBIS Specification should make clear that neither
8-bit characters nor ASCII controls (other than tabs and line terminators) are
allowed in an IBIS file.

*******************************************************************************

STATEMENT OF THE RESOLVED SPECIFICATIONS:

    The "General Syntax Rules and Guidelines" section contains 13 numbered
    items, including item 4 which states:

        4) The file must have no more than 80 characters per line.

    We propose to modify item 4, and to add item 14, as follows:

        4) A line of the file may have at most 80 characters, followed
           by a line termination sequence.  The line termination sequence must
           be one of the sequences "\n" (new-line character) or "\r\n"
           (carriage rerturn followed by new-line character).

       14) Only ASCII characters, as defined in ANSI Standard X3.4-1986, may
           be used in an IBIS file.  ASCII is a 7-bit code; 8-bit characters
           are not allowed.  Also, ASCII control characters (those numerically
           less than hex 20) are not allowed, except for tabs or in a line
           termination sequence.

*******************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION:

    At the lowest level of detail, the IBIS Specification needs to say which
    characters are legal, and what constitutes a "line".

    ASCII files produces in a Microsoft/PC environment have lines which end
    with "\r\n", while ASCII files produced on UNIX have lines which end with
    "\n".  An IBIS parser should accept either line termination sequence,
    regardless of the environment in which the parser runs.  Any other line
    termination sequence should be ruled out.

    We have already seen one IBIS file on the Web with lines ending in just \r.
    This raised BUG30 against the parser.  At Cadence, we have seen an IBIS
    file containing 8-bit characters, supplied by a customer.  Since ASCII
    control characters (with exceptions noted) were never intended to be
    allowed in an IBIS file, the IBIS specification should rule these out.

*******************************************************************************

ANY OTHER BACKGROUND INFORMATION:

*******************************************************************************

---

From: John V Fitzpatrick <[email-masked]>
Date: Mon, 10 Aug 1998 09:45:39 +0200

> Only ASCII characters, as defined in ANSI Standard X3.4-1986, may
> are not allowed. 
 
Is there a technical reason to restrict IBIS to 7-bit codes?

Our in-house IBIS models can contain 8-bit characters - those generated
by a standard French keyboard - usually in comment fields, or under
[Source] and [Notes]. I hope that if BIRD53 is accepted, these
files will pass ibischk, with at worst, the accents being flagged 
simply for information purposes.