******************************************************************************* ******************************************************************************* Buffer Issue Resolution Document (BIRD) BIRD ID#: 46.1 ISSUE TITLE: Relaxation of some IBIS model file name restrictions. REQUESTOR: Matthew Flora and Kellee Crisafulli, HyperLynx DATE SUBMITTED: 4 Dec 1997, 2 June 1998 DATE ACCEPTED BY IBIS OPEN FORUM: June 18, 1998 ******************************************************************************* ******************************************************************************* STATEMENT OF THE ISSUE: The file names of IBIS models are currently limited to 8 characters in length (not counting the mandatory .ibs extension) and "must conform to DOS rules". We propose that the length limit be expanded to 20 characters. ******************************************************************************* STATEMENT OF THE RESOLVED SPECIFICATIONS: Item 3 in Section 3 of the IBIS 3.0 specification, General Syntax Rules and Guidelines, currently states: 3) File names used in the file must only have lower case characters to enhance UNIX compatibility and must conform to DOS rules. (The length of a file name should not exceed eight plus three characters and it must not contain special characters that are illegal in DOS). We propose that this item be changed to state: 3) File names used in the IBIS file must only have lower case characters to enhance UNIX compatibility. File names should have a basename of no more than twenty characters followed by a period, followed by a file name extension of no more than three characters. File names must not contain characters which are illegal in DOS. The [File Name] keyword in section 4 of the IBIS 3.0 specification, File Header Information, currently states: |============================================================================= | Keyword: [File Name] | Required: Yes | Description: Specifies the name of the IBIS file, "filename.ibs". | Usage Rules: The file name must comply with normal DOS rules (8 char. max. | and no characters that are illegal in DOS). In addition, it | must be all lower case, and use the extension ".ibs". |----------------------------------------------------------------------------- We propose that this keyword be changed to state: |============================================================================= | Keyword: [File Name] | Required: Yes | Description: Specifies the name of the IBIS file. | Usage Rules: | The file name must not be longer than 24 characters (including | the extension). The file name must not use characters that | are illegal in DOS. In addition, the file name must be all | lower case, and use the extension ".ibs". | The file name must be the actual name of the file. |----------------------------------------------------------------------------- The [Package Model] keyword in section 5 of the IBIS 3.0 specification, Component Description, currently states: |============================================================================= | Keyword: [Package Model] | Required: No | Description: Indicates the name of the package model | Usage Rules: The package model name is limited to 40 characters. Spaces | are allowed in the name. The name should include the company | name or initials to help ensure uniqueness. The simulator | will search for a matching package model name as an argument | to a [Define Package Model] keyword in the current IBIS file | first. If a match is not found, the simulator will look for a | match in an external .pkg file. If the package model is in a | separate .pkg file, it must be kept in the same directory as | the .ibs file. | Other Notes: Use the [Package Model] keyword within a [Component] to | indicate which package model should be used for that | component. The specification permits .ibs files to contain | [Define Package Model] keywords as well. These are described | in the "Package Modeling" section near the end of this | specification. When package model definitions occur within a | .ibs file, their scope is "local"--they are known only within | that .ibs file and no other. In addition, within that .ibs | file, they override any globally defined package models that | have the same name. |----------------------------------------------------------------------------- We propose that this keyword be changed to state: |============================================================================= | Keyword: [Package Model] | Required: No | Description: Indicates the name of the package model to be used for the | component | Usage Rules: The package model name is limited to 40 characters. Spaces | are allowed in the name. The name should include the company | name or initials to help ensure uniqueness. The simulator | will search for a matching package model name as an argument | to a [Define Package Model] keyword in the current IBIS file | first. If a match is not found, the simulator will next look | for a match in an external .pkg file. If the matching package | model is in an external .pkg file, it must be located in the | same directory as the .ibs file. The file names of .pkg files | must follow the rules for file names given in section 3, | General Syntax Rules and Guidelines. | Other Notes: Use the [Package Model] keyword within a [Component] to | indicate which package model should be used for that | component. The specification permits .ibs files to contain | [Define Package Model] keywords as well. These are described | in the "Package Modeling" section near the end of this | specification. When package model definitions occur within a | .ibs file, their scope is "local"--they are known only within | that .ibs file and no other. In addition, within that .ibs | file, they override any globally defined package models that | have the same name. |----------------------------------------------------------------------------- ******************************************************************************* ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: We believe that engineers have moved beyond DOS as an engineering platform. Therefore, we would like to lift some of the restrictions that were imposed by DOS. We already encounter IBIS model files which violate the 8.3 length rule. Extending the allowed length of file names gives model creators the opportunity to use more descriptive file names. The choice of 64 characters was arbitrary, however names longer than that may not display well in applications. The limit should not be increased to more than 255, since that would be illegal under Windows NT, Windows 95, and some versions of UNIX. Allowing the use of periods throughout file names is common in the majority of file systems and is another means of making file names more descriptive. Since some operating systems (Windows NT 4.0 for one) still ignore the case of characters in file names, file names should still be required to be all lower-case. As far as we are aware, DOS has the largest set of characters which are not allowed in file names. Continuing to disallow all of those characters (bar one - the period) should ensure that IBIS model file names are still valid on all common platforms. BIRD 46.1 modifications: The suggested new file name length limit was reduced to 20 characters (down from 64) and the suggestion of allowing periods in file names was dropped. Also, the BIRD was expanded to include any filename related to an IBIS model. The IBIS Open Forum found that allowing file names to be 64 characters long could cause certain lines in an IBIS file to violate the 80 character line length limit. Reducing the file name length to 20 characters is meant to avoid this problem. The IBIS Open Forum felt that allowing file names to contain periods would complicate the rule unnecessarily. So that provision was dropped. The committee felt that for consistency, the wording of the BIRD needed to be expanded to cover every file name related to IBIS models. ******************************************************************************* ANY OTHER BACKGROUND INFORMATION: *******************************************************************************