TOUCHSTONE ISSUE RESOLUTION DOCUMENT (TSIRD) TSIRD ID#: 6 ISSUE TITLE: Clarify File Extension Rule for Touchstone 1.0 and 1.1 Files REQUESTOR: Bob Ross, Teraspeed Labs; Arpad Muranyi, Siemens EDA DATE SUBMITTED: July 5, 2023 DATE REVISED: DATE ACCEPTED: September 15, 2023 -------------------------------------------------------------------------------- DEFINITION OF THE ISSUE: Touchstone Version 2.0 in GENERAL GUIDELINES AND SYNTAX rule 4, states that the .ts extension is suggested for Touchstone 2.0 files. This recommendation is to apply this suggestion to all versions of Touchstone files. -------------------------------------------------------------------------------- SOLUTION REQUIREMENTS: The Touchstone 2.1 specification must meet these requirements: Table 1: Solution Requirements Requirement Notes * Under GENERAL SYNTAX RULES AND GUIDELINES, item 4, generalize the statement that the .ts extension is recommended for version 2.0 files to all versions of Touchstone files Change: for Version 2.0 files in item 4. for GENERAL SYNTAX RULES AND GUIDELINES to: for all versions of Touchstone files -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- SUMMARY OF PROPOSED CHANGES: -------------------------------------------------------------------------------- Shorten the historical review in item 4 under GENERAL SYNTAX RULES AND GUIDELINES, and change the wording from "Touchstone version 2.0 files" to "for all versions of Touchstone files", as shown in red: Replace: * Touchstone filenames have traditionally used a file extension of ".snp", where n is the number of network ports of the device or interconnect being described. For example, a Touchstone file containing the network parameters for a 2-port device would be named "filename.s2p", while a Touchstone file containing the data for a 3-port network would be "filename.s3p", and so on. Not all operating systems may recognize filename extensions with variable contents or length as associated with the same type of file. To address this, the extension .s2p often has been applied to Touchstone files describing systems containing other than two ports. For the same reasons, the extension ".ts" is suggested for Touchstone 2.0 files. To preserve support of existing Touchstone files and ensure maximum compatibility across operating systems, the use of filename extensions other than those recommended here is permitted by this specification. with: * Touchstone filenames have traditionally used a file extension of ".snp", where n is the number of network ports of the device or interconnect being described. For example, a Touchstone file containing the network parameters for a 2-port device would be named "filename.s2p", while a Touchstone file containing the data for a 3-port network would be "filename.s3p", and so on. Since not all operating systems may recognize filename extensions with variable contents or length as a certain file type, the extension ".ts" is suggested for all versions of Touchstone files. However, to ensure maximum compatibility across operating systems and applications, the use of filename extensions other than those mentioned here is permitted by this specification. -------------------------------------------------------------------------------- BACKGROUND INFORMATION HISTORY The first paragraph of the original text gives a historical overview of the sNp extension format. The second paragraph documents a likely alternate (.s2p, regardless of the number of ports, to limit the length of the extension to three characters) that might have been used before the Touchstone 2.0 specification was released. This practice, however, undercuts the notion that one can rely on N in sNp to extract the number of ports. The third paragraph allows file extensions other than the ones described in the specification even for "existing" Touchstone files, which includes the possibility of using .ts for Touchstone 1.0 files. Consequently, the statement at the end of the second paragraph ("the extension ".ts" is suggested for Touchstone 2.0 files") applies to ALL Touchtone files, not only Touchstone 2.0 files. This may have been an editorial oversight when the Touchstone Version 2.0 document was prepared. The TSCHK2.0.0 and TSCHK2.0.1 parsers already accept any extension for Touchstone 1.0 and 2.0 files according to the third paragraph interpretation. This is useful to avoid overwriting files when translating back and forth between Touchstone 1.0 and Touchstone 2.0 formats while keeping the same filename. Rather than spelling out each version number one by one, "all versions of Touchstone files" is the proposed clarification in this TSIRD. Note, the number of ports and number of frequencies in Touchstone 1.0 are already derived from the rigid format described for Version 1.0 in the document. Each frequency line for 1-port data contains 3 entries (a frequency and one complex value pair). Each NEW frequency line for a 2-port through an n-port uniquely contains 9 entries (a frequency and four complex pairs). The TSCHK2.0.1 parser uses this formatting information and counting of lines to calculate both the [Number of Ports] and [Number of Frequencies] entries for Touchstone 2.0 files.