****************************************************************************** ********************* IBIS GOLDEN PARSER BUG REPORT FORM ********************* ****************************************************************************** INSTRUCTIONS To report a bug in the IBIS golden parser. Please fill out the top part of the following form and send the complete form to info@ibis.org. A list of reported bugs is maintained at http://ibis.org/bugs/ibischk/ . ****************************************************************************** PARSER VERSION NUMBER: 7.0.2 PLATFORM (SPARC, HP700, PC, etc.): ALL OS AND VERSION: ALL REPORTED BY: Mike LaBonte, SiSoft (MathWorks); Randy Wolff, Micron Technology; Bob Ross, Teraspeed Labs, Lance Wang, Zuken USA DATE: March 9, 2021 DESCRIPTION OF BUG: This is an enhancement request to have ibischk perform checking of matching of number of terminals and reference locations of Touchstone files called by IBIS and IMS files. A full set of requirements and tests will be in a parser development contract. The project should cover the following enhancements (** relate to multi-lingual checks: EXISTING TSCHK2 EXECUTABLE - This check is NOT automatically invoked - The code in this file could be used to calculate the number of ports in Touchstone 1 files. The [Number of Ports] keyword could be parsed to identify the number of ports in Touchstone 2 files. FLAGS: - No new command line flags are needed since the checks are initiated for IBIS-ISS syntax in .ibs or .ims (with -ims flags) files. - Note, a new flag "-ts" could be added to invoke a full set of checks in a tschk2 utility. The utility would need to be stored in a known location, and it would need to be in a form compatible with the operating system (Windown, Linux, etc.) This is not part of the request at this time. REFERENCES FROM .ibs FILES: - NO references for Multi-lingual using [External Model], [External Circuit], and [Circuit Call] because Language Touchstone - References from [Interconnect Model]s scoped by [Interconnect Model Set] - File reference syntax is located by the subparameter File_TS REFERENCES FROM .ims FILES: - References from [Interconnect Model]s scoped by [Interconnect Model Set] - File reference syntax is defined by the subparameter File_TS REFERENCES FROM IBIS-AMI PARAMETER Ts4file - Check that the referenced Touchstone file is only a 4-port file NAME AND NUMBER OF TERMINALS: - Locate the files matching referenced file names (already partially checked) - Check that the number of Touchstone terminals N matches those called from the .ibs and .ims files - Verify that the Touchstone "ground" reference terminal (N+1 terminal) does not exist in Touchstone - If Unused_port_termination exists, the number of terminal lines has to be less than N. The N+1 terminal line for a reference connection is still required (Check already done with E6028 and E6072) IBIS VERSION NUMBERS ([IBIS Ver]): - NO Multilingual checks in .ibs files because Language Touchstone is not supported - Interconnect Model checks in .ibs and .ims apply for [IBIS Ver] 7.0 or higher NO PARAMETER PASSING INTO TOUCHSTONE FILES: - Any parameter passing syntax (similar to IBIS-ISS parameters) is an Error MEMORY AND DATA STRUCTURES: - There is no requirement to make memory structures publicly available for source code purchasers - Optionally, all Touchstone line information could be saved for efficient checking if the same Touchstone file is called in several places in .ibs or .ims PLAN FOR FUTURE ENHANCEMENTS - If not implemented with a new Version that include the following BIRDs: - BIRD200 - under [C Comp Model] with File_TS to Touchstone links - BIRD202.x -- Under .emd file and [EMD Sets] scoping [EMD Model]s with File_TS -- Under .ems file and [EMD Sets] scoping [EMD Model]s with File_TS DEVELOPMENT CONTRACT SPECIFICATION - A development specification will contain full details and possible corrections and more examples - The quote can break out the multi-lingual portion in case we want to stage the release with ** items later - Some items above such as .ts, sNp, etc. file locations are already checked in ibischk7 Version 7.02. ------- INSERT IBIS FILE DEMONSTRATING THE BUG: The following example shows some of the required features above including - Aligning IBIS Terminals to correct number of ports and N+1 reference - Dealing with Ts4file ------------------------------------------------ IMS EXAMPLE in bug215.ims (ibischk7_64 -ims) Should Generate At least 3 NEW Errors ------------------------------------------------ [IBIS Ver] 7.0 [File Name] bug215.ims [File Rev] 1.0 [Date] March 9, 2021 | [Interconnect Model Set] BUG215_2-port_terminals [Interconnect Model] BUG215_1 | File_TS bug215.s2p | GOOD Number_of_terminals = 3 | 2-port Reference 1 Pin_I/O pin_name A1 | DQ1 DQ 2 Buffer_I/O pin_name A1 | DQ1 DQ 3 A_gnd [End Interconnect Model] [Interconnect Model] BUG215_2 | File_TS bug215.s4p | BAD File Reference for 2_port Number_of_terminals = 3 | 2-port Reference 1 Pin_I/O pin_name A2 | DQ2 DQ 2 Buffer_I/O pin_name A2 | DQ2 DQ 3 A_gnd [End Interconnect Model] [End Interconnect Model Set] [Interconnect Model Set] BUG215_4-port_terminals [Interconnect Model] BUG215_3 | File_TS bug215.s4p | GOOD Number_of_terminals = 5 | 4-port Reference 1 Pin_I/O pin_name A1 | DQ1 DQ 2 Pin_I/O pin_name A2 | DQ2 DQ 3 Buffer_I/O pin_name A1 | DQ1 DQ 4 Buffer_I/O pin_name A2 | DQ2 DQ 5 A_gnd [End Interconnect Model] [Interconnect Model] BUG215_4 | File_TS bug215.s2p | BAD File Reference for 4_port Number_of_terminals = 5 | 4-port Reference 1 Pin_I/O pin_name A3 | DQ3 DQ 2 Pin_I/O pin_name A4 | DQ4 DQ 3 Buffer_I/O pin_name A3 | DQ3 DQ 4 Buffer_I/O pin_name A4 | DQ4 DQ 5 A_gnd [End Interconnect Model] [Interconnect Model] BUG215_5 | File_TS bug215.s2p | BAD File Reference for 4_port Unused_port_termination Reference Number_of_terminals = 5 | 4-port Reference 1 Pin_I/O pin_name A5 | DQ5 DQ 3 Buffer_I/O pin_name A5 | DQ5 DQ 5 A_gnd [End Interconnect Model] [Interconnect Model] BUG215_6 | File_TS bug215.s4p | GOOD Unused_port_termination Reference Number_of_terminals = 5 | 4-port Reference 1 Pin_I/O pin_name A6 | DQ6 DQ 3 Buffer_I/O pin_name A6 | DQ6 DQ 5 A_gnd [End Interconnect Model] [End Interconnect Model Set] [End] ------------------------------------------------------------------------ IBIS_AMI EXAMPLE WITH Ts4file in bug215.ami (ibischk7_64 -ami bug115.ami Should Generate 2 NEW Error plus 1 Error for Repeated Ts4file Parameter) ------------------------------------------------------------------------ (bug215_ts4file_test (Reserved_Parameters | (AMI_Version (Usage Info) (Type String) (Value "7.0") (Description "To suppress mandatory error")) (Init_Returns_Impulse (Usage Info)(Type Boolean)(Value True)) (GetWave_Exists (Usage Info)(Type Boolean)(Value True)) | (Description "bug215.s4p GOOD, bug215.s2p BAD - 2-port") | | Commented Lines prevent multiple Ts4file Errors, | | (Ts4file (Usage Info)(Type String) (Value "bug215.s4p")) | 4-port GOOD (Ts4file (Usage Info)(Type String) (Value "bug215.s2p")) | 2-port BAD | | Good, Bad | | (Ts4file (Usage Dep)(Type String) (List "bug215.s4p" "bug215.s2p") (List_Tip "1" "2")) | ) ) --------------------------------------- TOUCHSTONE 2-PORT AND 4-PORT TEST FILES --------------------------------------- ------------------------------------------------------- IBIS-TS FILE bug215.s2p FOR TWO-PORT ------------------------------------------------------- !2-port network, S-parameter !Default MA format, GHz frequencies, 50 ohm reference, S-parameters [Version] 2.0 # [Number of Ports] 2 [Two-Port Data Order] 21_12 [Number of Frequencies] 1 [Network Data] 0.0 0.0 0.0 1.0 0.0 1.0 0.0 0.0 0.0 [End] ------------------------------------------------------- IBIS-TS FILE bug215.s4p FOR FOUR-PORT ------------------------------------------------------- ! 4-port S-parameter data, taken at three frequency points # GHz S MA R 50 5.00000 0.60 161.24 0.40 -42.20 0.42 -66.58 0.53 -79.34 !row 1 0.40 -42.20 0.60 161.20 0.53 -79.34 0.42 -66.58 !row 2 0.42 -66.58 0.53 -79.34 0.60 161.24 0.40 -42.20 !row 3 0.53 -79.34 0.42 -66.58 0.40 -42.20 0.60 161.24 !row 4 ****************************************************************************** ******************** BELOW FOR ADMINISTRATION AND TRACKING ******************* ****************************************************************************** BUG NUMBER: 215 SEVERITY: [FATAL, SEVERE, MODERATE, ANNOYING, ENHANCEMENT] ENHANCEMENT PRIORITY: [HIGH, MEDIUM, LOW] MEDIUM STATUS: [OPEN, CLOSED, WILL NOT FIX, NOT A BUG] CLOSED FIXED VERSION: 7.1.0 FIXED DATE: December 18, 2021 NOTES ON BUG FIX: Classified at the IBIS Open Forum meeting on March 12, 2021. To be fixed in a future release to be determined. BUG215 should be fixed with BUG214, and these two BUGs could be fixed before the V7.1 parser is started. These two BUGs could be fixed with the development of the V7.1.0 parser. In this case the checking coverage would be exapnded to cover syntax in BIRD200 and BIRD202.3 for additional links to IBIS-ISS and Touchstone. Or these two BUGs could be done after the V7.1.0 parser is released. December 18, 2021 - Fixed in Version 7.1.0. ****************************************************************************** ******************************************************************************