NOTE: Several bugs against IBISCHK6 Version 6.1.0 remain open:
In particular, BUG168 "Package Model [* Matrix] Precision Errors" has been found to cause some existing files with [Define Package Model] to fail new checks, even if they previously passed IBISCHK. Some of these are [Capacitance Matrix] diagonal dominance errors for which some tolerance might be allowable, and this is under investigation. Also under investigation are new [Resistance Matrix] and [Inductance Matrix] checks that erroneously report errors for what may be valid models.
The new IBISCHK6 is useful for checking IBIS models with IBIS 6.1 features, but EDA vendors are advised to defer product integration until the 6.1.1 release is issued.
In general some specification requirements are not checked, and others may be checked incorrectly. Therefore some files may pass this parser with 0 errors and 0 warnings, but errors or warnings may be issued in the next release of the parser for the same file. Likewise, files that passed a previous parser version may show errors with this new parser.
Contact the IBIS Chair if you need the source code. It is priced at $2500.00. See the license terms here.
Standalone executables are provided. You must download these in a manner allowing you to run the executables with required arguments. No installer is provided. ZIP compressed executables for ibischk6 are available for the following platforms:
* Beginning with RHEL 5 the compiler made automatic stack protection the default. The compiler determines the maximum stack size needed for each function call and inserts code that writes some known garbage data at the end of the stack before the call, then checks it after the call. If it doesn't match, the OS__stack_chk_failed function is called, which exits with an error message. There is a problem running such code on a Linux release that doesn't have that system function. Those releases still exist, RHEL 4.9 was retired only in 2011. IBISCHK started using stack protection in the 5.1.4 version, 5.1.3 and earlier did not have it. This compilation returns to not using stack protection, and should be compatible with a wide range of Linux releases.
** Some differences might exist from the 32-bit compilation. For example, The "... equivalent load applied to the model's I-V tables ..." for W1503 calculates 1.42V on 64 bit machines and 1.43V on 32 bit machines for the same test case.
When “ibischk6” is run with no arguments, IBISCHK6 prints this help message:
IBISCHK6 V6.1.0 IBISfile validation: This program has been provided free to the electrical engineering community by the IBIS Open Forum. The purpose of this program is to validate that the contents of ASCII device data in a file specified conform to the IBIS specification. Usage: ibischk6.1.0: ibischk6.1.0 -ebd : ibischk6.1.0 -pkg : ibischk6.1.0 -ami Usage: ibischk6.1.0 -caution -numbered : ibischk6.1.0 -caution -numbered -ebd : ibischk6.1.0 -caution -numbered -pkg : ibischk6.1.0 -caution -numbered -ami The flags prior to the file name can be in any order, and the -caution and/or -numbered flags are optional.
One (and only one) file name argument must be provided to perform checking, and the file name extension must be consistent with the file type flag. Independent .ebd, .pkg and .ami file checking is done using the -ebd, -pkg and -ami flags. The -caution flag produces additional Caution messages for all [IBIS Ver] versions. The -numbered flag produces Error, Warning, Notes, and Caution messages with four digit numbers following E, W, N, and C respectively.
The set of messages that ibischk6 may produce are listed here. This listing provides an insight to the checks performed. Currently it is an incomplete work in progress. A complete User Guide for ibischk6 is planned.
Versions 6.0.0 and 6.0.1 of ibischk6 support IBIS Version 6.0. Version 6.1.0 of ibischk6 supports IBIS Version 6.1. See the IBISCHK BUG page for full details on bug history, or to report a bug or enhancement.
BUG157 E5118 When Repeater Input Models Have Multiple Executable Lines BUG158 Disable Undocumented -etc Flag for Added Multi-Lingual Checks
BUG151 Checking of (-) Diagonal Entries in RLC [Package Model] Matrices BUG155 Warning Message for Vinh < Vinl BUG159 Incorrect String Arguments Accepted for IBIS-AMI Parameters BUG160 Eliminate Compile and Link Errors with Debug Enabler IBIS_PRINT BUG161 Table and Format as Model_Specific Parameter Names Causes Errors BUG162 Ibischk6 Source Code Cleanup
BIRD150 IBIS-AMI New Reserved Parameters for Dependency Tables (no parser check) BIRD155.2 New AMI API to Resolve Dependent Model Parameter BIRD167.1 Table Corrections for Tx Jitter Parameters and Ignore_Bits (Specification correction) BIRD168.1 Handling of Overclocking Caused by Delay in Waveform Tables BIRD169.1 DLL Dependency Checking (no parser check) BIRD170 Delete Extra Paragraph for Ports under [External Circuit](Specification correction) BIRD171.3 Clarify that Empty Root Name is Not Permitted in AMI Files BIRD172.2 Extend Multilingual Parameter and Converter_Parameter Rules (PARTIAL IMPLEMENTATION - Spaces in parameter file lines incorrectly issues Error messages, to be fixed in the next release) BIRD173.3 Package RLC Matrix Diagonals BIRD174.1 Quote Character Clarifications (Specification correction) BIRD175.3 Extending IBIS-AMI for PAM4 Analysis BIRD176 Power Pin Package Modeling BIRD177 [Initial Delay] Keyword for Submodels and Driver Schedules BIRD178.3 Specifying Buffer Directionality for AMI
The reports below document document incomplete or incorrect implementations that produce known faulty checks or failure to issue messages.
BUG163 Improper Handling of [Alternate Package Models] BUG164 Model_Specific (Usage Dep) Parameter Error Not Issued for AMI_Ver "6.0" BUG165 No Error for Executable line direction Mismatches under [Algorithmic Model] BUG166 No Error IBIS-AMI Executable Parameter_File Without .ami Extension BUG167 Missing or Faulty Modulation "PAM4" Checks BUG168 Package Model [* Matrix] Precision Errors BUG169 No Error for Package Model [Capacitance Matrix] Positive Off-Diagonals
Last edited: December 3, 2015