Working with Data Files
Data files are ASCII text representations of circuit responses based on various settings of independent variables. For instance the S-parameter response of an amplifier can be captured against frequency and power variations in a .p2d data file. Some ADS components, such as the AmplifierP2D_Setup and AmplifierS2D_Setup help create data files. Other sources for data files are measurement instruments or other simulation tools which output circuit responses in text form. Thus data files enable you to take data from sources outside of Advanced Design System or RF Design Environment and apply it to projects within these design environments.
The common purpose of all the various applications which require the use of data files, is to generate the behavior of a specific component or a circuit based on simulated or measured data points. Thus, data files allow the transfer of realistic parameter values to simple components and also enable the modeling of components with complex behavior such as black box and gray box models. Some examples of the use of data files are:
- Using S-parameters to define the behavior of a linear black-box component representing an attenuator, a filter, or a small-signal transistor. The S-parameters, which are saved in a file, are used in conjunction with a component like the S2P. This permits the creation of a realistic and customized 2-port network during an ADS simulation.
- Storing sets of transistor model parameters in separate files, and accessing them automatically through the course of a simulation to define the behavior of the transistor.
- Defining the behavior of a complex nonlinear amplifier by using the gray-box AmplifierS2D component and data saved in an S2D file. The small and large signal S-parameters as well as noise parameters contained within the file can be used to define the behavior of the amplifier during a simulation.
Besides data-file driven components, there are other user-defined models such as using SDDs, FDDs, equation-based components, or the Model Builder which are discussed elsewhere. This section focuses on how to use the various types of data files to define the behavior of components and circuits in addition to providing a comprehensive understanding of the classification and formats associated with the various types of data files used by various components.
A data file is simply data in an ASCII text file, but there are several formats to choose from depending on the application. When determining the type of data file to choose please note:
- The format you choose may depend on the type of data you have and where you want to use the data. The table below lists supported file formats and examples of where they are used.
- The DataAccessComponent may be used to access the data from any data file regardless of format and to use it with any component that accepts file-based parameters. In this case, you need to make sure there is a logical relationship between the data and how you intend to use it. For more information, see Using Data Files, Datasets, and Data Access Components.
Supported Data Formats
The following table lists the supported data formats with a brief description and a reference to detailed information:
Available File Format Types
Format | Description | Usage | Details |
---|---|---|---|
Touchstone Format | |||
SnP †,†† (.snp) | Small signal S, H, Y, Z, or G-parameters. May also include optional noise data (2 port data only). Where n is the number of ports from 1 to 99. | n-port S-parameter file (S n P) components in the Data Items Library. | Touchstone SnP Format |
Impulse (.imp) | ADS Impulse (.imp) files store multi-port impulse responses of linear N-ports. These files are the time-domain analog of the frequency-domain Touchstone format. | Data output from the ImpulseWriter (Impulse Response File Writer controller). | ADS Impulse File Format |
MDIF Formats | |||
Discrete (.dscr) | Discrete (indexed) tabular and possibly statistical density data. | Components that accept file-based parameters, link via the DAC. | Discrete Format |
Model MDIF | Nonlinear model parameters. | EE_BJT2_Model, JFET_Model, etc. | Model MDIF Files |
PDF ‡‡‡ (.pdf) | User defined, piece-wise linear probability density function data for arbitrary distributions that are not correlated. | With expressions in the Statistics tab. | PDF Format |
S2PMDIF (.s2p) | Multi-dimensional 2-port, S, Y, Z, H, G signal and optional 2-port noise parameter (Fmin, Gopt, Rn) data. | With S2PMDIF, DAC, and components represented by black box statistical characterization. | S2PMDIF Format |
P2D †,†† (.p2d) | Large-signal, power-dependent, 2-port S, H, Y, Z, or G -parameters. | AmplifierP2D in the System - Amps & Mixers library. | P2D Format |
S2D †,†† (.s2d) | 2-port S, H, Y, Z, or G-parameters with forward gain compression and optional noise and intermodulation data. | Amplifier2 and AmpSingleCarrier in the System-Amps & Mixers library, AmplifierS2D in the System-Data Models library. | S2D Format |
IMT †† (.imt) | Intermodulation product table of mixer intermodulation products between the LO and signal that relates the mixer IM output level to signal input level. | MixerIMT in the System - Amps & Mixers library. MixerIMT Data in the System-Data Models library. | IMT Format |
SPW †† (.ascsig text ) (.sig binary ) | Time-domain voltage data file in Cadence Alta Group SPW text and binary formats. | TimeFile item in Timed Sources and OutFile item in the Sinks library. | SPW Format |
TIM †† (.tim) | Time-domain data. | TimeFile item in Timed Sources and OutFile item in Sinks library. | TIM Format |
SDF ††,††† (.sdf) | Time-domain voltage data file in 89600 file format. | TimeFile item in Timed Sources and OutFile item in Sinks library. | See software documentation for the Agilent 89600. |
GCOMP †† | Gain compression data | Amplifier and Mixer items in the System - Amps & Mixers library. | Understanding GCOMP Data |
Generic MDIF (.mdif) | Generalized multi-dimensional tables unifying other MDIF formats. Use in place of any specific MDIF. | AmplifierS2D, AmplifierP2D, or any other MDIF example listed above. Link via the DAC. | Generic MDIF |
CITIfile Format | |||
CITIfile ††† | A general data format supported by network analyzers. Capable of storing multiple packages of multi- dimensional data. | n-port S-parameter file (S n P) components in the Data Items Library. | CITIfile Data Format |
Agilent IC-CAP Formats | |||
DUT, MDL, SET ‡,‡‡ | Device under test (DUT), model (MDL), and setup (SET) files from the Agilent IC-CAP program. These files can contain Measured, Simulated, and/or Transformed data. | Once the data is read into a dataset, it can be used with any component (for example, a VtDataset source) that can read data from a dataset. | See Agilent IC-CAP documentation. |
† When writing data from a dataset to a file, the variable names are limited to S,H,Y,Z or G, for example, S[1,1], S[1,2], G[1,1], G[1,2]. The variable name is used to determine the type of data. †† The first set of data in the dataset that matches the data type (name) will be output. It is not possible to arbitrarily select which data will be output. ††† There are some specific problems with the current version in writing and/or reading this data format. On the Agilent EEsof web site, refer to the Release Notes in Product Documentation and to Technical Support for more information and workarounds (www.keysight.com/find/eesof). ‡ The Data File Tool can only read IC-CAP data. ‡‡ Only simple, scaled expressions with numbers or variables and one operator (either +, -, *, or /) are supported for start, stop, step, and number of points parameters, for example, start= 1 GHZ or stop=icmax/10. ‡‡‡ This format is not yet fully supported. The COD, FIR, LAS, and SPE formats were obsolete when ADS 1.0 was introduced and are not used by the application. The LIST2 and T2D formats are also obsolete. |
For information about a particular component, refer to the documentation for Analog/RF or Signal Processing components, or click Help when editing component parameters.
Making a Data File
You can create a data file using these methods:
- Manually type the data into a text file using any text editor, being sure to follow the formatting guidelines for the type of data file that you want.
- Use the Data File Tool. The Data File Tool enables you to transfer data between datasets and files that are in the following file formats: Touchstone, Measurement data interchange format (MDIF), CITIfile, and IC-CAP. For learn about the Data File Tool, see Reading and Writing Data Files.
- Perform a P2D controller-based simulation using AmplifierP2D_Setup or AmplifierS2D_Setup. The results of these simulations are saved to files in P2D and S2D formats respectively, which can then be used with the AmplifierP2D or AmplifierS2D. For more information on the P2D controller itself, see P2D Simulation.
Saving a Data File
When saving a data file, save it as an ASCII text file.
- A data file does not require a particular extension, but you may want to use the extension recommended for each format for identification purposes. These extensions are given in the details describing each format. If you choose a different extension, you must provide this information to the component you intend to use through the File parameter of the component.
You can save the data file:
- In the project where it is used under the <prj>/data directory. This is the default location if no path is provided to the component using the file.
- Any location, if you provide the full file path to the component. You provide this information using the File parameter of the component.
For more information about the File parameter, place the component of interest on a schematic, double-click to edit it, and click the Help button at the bottom of the dialog box.
Using Data Files, Datasets, and Data Access Components
Both data files and datasets can contain data that you want to use with a component. You can use either one, depending on your situation:
- You may want the S-parameters from a simulated design. In this case, use the dataset and a DAC to link the data to the component you want to use.
- You may have S-parameter specifications from a component sheet. In this case, type them into a data file.
You also want to consider the method of linking your data with the component of interest:
- You have a data file, such as an .s2d, and you want to use it with a component that can read such a file, such as the AmplifierS2D. No DAC is needed.
- You have a dataset or data file, but the component you want to use doesn't read the data directly. Use a DataAccessComponent to link the data file and component. The component you choose must have the file-based option under the Parameter Entry Mode or the parameter AllParams. For example, the BJTM1 model has the parameter AllParams; the R component has the Parameter Entry Mode. For instructions on how to use a DAC, see DataAccessComponent (Data Access Component) or Schematic Capture and Layout.
Reading and Writing Data Files
Use the Data File Tool to import and export data between datasets and text files that are in the following file formats:
- Touchstone
- Measurement data interchange format (MDIF)
- CITIfile
- IC-CAP
You can transfer data from a file into a dataset, or vice versa. One application is to transfer data from a dataset to an MDIF file, for use with a specific type of component. For example, a file in P2D format (P2D is one of several MDIF formats) containing S-parameters can then be used by the P2D amplifier. Using the Data File Tool, you can write S-parameters from a dataset to a file in P2D format. Another application is reading Agilent IC-CAP data into a dataset to be used in conjunction with a component, such as a source, that can read data from a dataset.
See the table above in Supported Data Formats for a list of the available file types, a description of the file contents, and the component that uses the data. Be sure to review the notes at the end of the table. The details about each file format are described later in this topic.
Starting and Exiting the Data File Tool
You can start the Data File Tool from a Schematic window or a Data Display Window.
- From a Schematic window, choose Tools > Data File Tool. Or, click the Data File Tool icon.
- From a Data Display window, choose Tools > Data File Tool. Or, click the Data File Tool icon.
To exit the Data File Tool, choose File > Exit from the menu bar.
Parts of the Data File Tool
The following illustration shows the default appearance of the Data File Tool user interface for a UNIX-based system when the Data File Tool is started.
The layout of the interface and names of the various elements vary with the task being performed (read or write) and can also vary with the file format selected. Examples of this variation in the appearance of the Data File Tool user interface is shown in the two following figures.
Data File Tool in read mode
Data File Tool in write mode
These are the more frequently used elements of the interface:
- The Menu bar displays the menus that are available in the Data File Tool window.
- The Dataset field lists the datasets in the current project. The selected dataset or the name of a new dataset is displayed in the Dataset name field.
Reading a File
To read the contents of a file into a dataset:
- From an open Data File Tool window, click Read data file into dataset.
- Under File format to read, select one of the following file formats:
- Touchstone
- MDIF
- Citifile
- ICCAP
- For the MDIF format, choose the appropriate sub-format from MDIF sub type.
- Under Input file name, type in the file name if the file is in the project. If it is not, click Browse to locate and select the file.
- The data from the selected file will be written to a dataset. Enter a name in the Dataset name field or select from the existing datasets in the Datasets list. If you choose a dataset from the list, any data that is already stored in the dataset will not be saved and will be overwritten with new data.
- Click Read File to send the file contents to the dataset.
Note
The source file must not use any ADS reserved variables or non-ASCII characters. Use of such a file can produce misleading results.
Writing to a File
To write data to a file:
- From an open Data File Tool window, click Write data file from dataset.
- Under File format to write, select one of the following file formats:
- Touchstone
- MDIF
- Citifile
- For the Touchstone and MDIF formats, choose the appropriate sub-format from Touchstone data type, or MDIF sub type.
- Under Output file name, type in the file name you want to write to. It will be saved in the project directory. If you want to save the file in a different location, click Browse to select a location.
- Under Complex data format, select the complex data format to be used in the file.
- For Touchstone and MDIF files, under Frequency units, select the frequency units to be used in the file.
- Under Data notation format, select the data notation format to be used in the file.
- Under Max resolution, select the maximum resolution to be used in the file.
- The source of the data can be any project dataset. It should contain data matching the file format selected. Select an existing dataset from the Datasets list. Click View Dataset to view the contents of the selected dataset.
- Click Write to File to send the data to the file.
Note
If a dataset has just been created by reading a file, it might be necessary to click Update Dataset List to see it appear in the list.
Examples
You can find designs that use different data files in the Examples directory under Data_comp_prj and DataAccess_prj.
Instructions for using a particular type of file with a component that is designed to read the file (like an . snp file and SnP component) can be found in the remaining reference sections.
Touchstone SnP Format
These files contain small-signal G-, H-, S-, Y-, or Z-network parameters described by frequency-dependent linear network parameters for 1- to 99-port components. The 2-port component files can also contain frequency-dependent noise parameters. This data file format is also known as Touchstone format.
An .snp file can be used with an SnP component to model the behavior of a linear model using S-parameters. The file contains the S-parameters, the component is placed within the schematic.
This section describes:
- Choosing an .snp file for use with an SnP component
- An overview of the SnP file
- The basic SnP format
- Adding noise to a 2-port Snp file
- The basic SnP format applied to G-, H-, S-, Y-, and Z-parameters, plus examples of each
Linking an .snp File to an SnP Component
To link a file to the component:
- Add an SnP component to your schematic. It can be found in the Data Items library.
- Select the File parameter. Ensure that the Parameter Entry Mode is set to Network Parameter File Name .
- In the File Name field, enter the name of the file you want to use:
- You can type the name directly in the field.
- Click Data files list to locate a file in the current project (or any files located based on the setting of the DATAFILES variable in de_sim.cfg).
- Click Browse to locate a file outside the current project.
- Click Copy template to select an example file that you can customize.
- After you select a file, click Edit if you want to view the file or change its contents.
For instructions on how to set the remaining parameters, click Help in the open component dialog box.
Overview
SnP data files are ASCII text files in which data appears line by line, one line per data point, in increasing order of frequency. Each line of data consists of a frequency value and one or more pairs of values for the magnitude and phase of each S-parameter at that frequency. Values are separated by one or more spaces, tabs or commands. Comments are preceded by an exclamation mark (!). Comments can appear on separate lines, or after the data on any line or lines. Extra spaces are ignored. Recommendations for filenames are:
1-port: filename.s1p
2-port: filename.s2p
Up to 99 ports can be defined.
You can specify the following parameters in an .snp file:
S |
= |
Scattering parameters |
Y |
= |
Admittance parameters |
Z |
= |
Impedance parameters |
H |
= |
Hybrid-h parameters |
G |
= |
Hybrid-g parameters |
Note
The mismatched port impedance is not supported by the ADS simulator. If a Touchstone file has the input/output mismatch information in the header, it is ignored by the DAC and the SnP components, and a default matching 50 ohm port impedance is used.
The following sections discuss the content and format of network parameter files as input for circuit analysis.
Basic SnP File Format
The following example shows the general format for component data files. It consists of:
- An option line
- Data lines
- Comments
The Option Line
The option line, specifying the frequency units and the normalizing impedance, precedes the data lines.
# (freq_units parameter format R n)
<data line>
...
<data line>
where:
# |
= |
The delimiter that tells the program you are specifying these parameters |
freq_units |
= |
Sets the units. Options are GHz, MHz, KHz, or Hz. |
parameter |
= |
Sets the desired parameter. Options are S, Y, Z, G, or H. |
format |
= |
The format desired. Options are MA, DB, or RI. |
R n |
= |
The reference resistance in ohms, where n is a positive number of ohms; which is the real impedance to which the parameters are normalized. |
In summary, the option line should read:
For .s1p files: |
# |
[HZ/KHZ/MHZ/GHZ] |
[S/Y/Z] |
[MA/DB/RI] |
[R n] |
For .s2p files: |
# |
[HZ/KHZ/MHZ/GHZ] |
[S/Y/Z/G/H] |
[MA/DB/RI] |
[R n] |
For .s3p/.s4p files: |
# |
[HZ/KHZ/MHZ/GHZ] |
[S] |
[MA/DB/RI] |
[R n] |
where square brackets [...] indicate optional information; .../.../.../ indicates that you select one of the choices; and, n is replaced by a positive number.
Default Option Line
The default option line for component data files is:
# GHZ S MA R 50
Option Line Examples
Frequency in GHz, S-parameters in real-imaginary format, normalized 100 ohms:
# GHz S RI R 100
Frequency in KHz, Y-parameters in real-imaginary format, normalized 100 ohms:
# KHz Y RI R 100
Frequency in Hz, Z-parameters in magnitude-degree format, normalized to 1 ohm:
# Hz Z MA R 1
Frequency in KHz, H-parameters in real-imaginary format normalized to 1 ohm:
# KHz H RI R 1
Frequency in Hz, G-parameters in magnitude-degree, format normalized to 1 ohm:
# Hz G MA R 1
Data Lines
Data lines contain the data of interest. A special format is used for 2-port data files where all of the network parameter data for a single frequency is listed on one line. The order of the network parameters is:
N11, N21, N12, N22
For 3-port or higher data files, the network parameters appear in the file in a matrix form, each row starting on a separate line. A maximum of four network parameters (with 2 real numbers for each) appear on any line. The remaining network parameters are continued on as many additional lines as are needed.
The following sections describe the data-line format for single and multi-port components.
Data-line Formats
When you type the data below the option line, the columns need not line up precisely like those shown. The syntax for entering data is as follows:
1-port Component
Magnitude-Angle format:
(Columns: | f | Mag | Ang) |
f | |S11| | |
2-port Component
Magnitude-Angle format:
f | |S11| |
Real-Imaginary format:
f | Re{S11} Im{S11} Re{S21} Im{S21} Re{S12} Im{S12} Re{S22} Im{S22} |
f | 20log10|x11| |
where
x | = | S/Y/Z/H/G |
f | = | Frequency |
3-port Component
Magnitude-Angle format:
( Columns : | f | Mag | Ang | Mag | Ang | Mag | Ang) |
f | |S11| | <S11 | |S12| | <S12 | |S13| | <S13 | |
|S21| | <S21 | |S22| | <S22 | |S23| | <S23 | ||
|S31| | <S31 | |S32| | <S32 | |S33| | <S33 |
4-port Component
Magnitude-Angle format:
( Columns : | f | Mag | Ang | Mag | Ang | Mag | Ang | Mag | Ang) |
f | |S11| | <S11 | |S12| | <S12 | |S13| | <S13 | |S14| | <S14 | |
|S21| | <S21 | |S22| | <S22 | |S23| | <S23 | |S24| | <S24 | ||
|S31| | <S31 | |S32| | <S32 | |S33| | <S33 | |S34| | <S34 | ||
|S41| | <S41 | |S42| | <S42 | |S43| | <S43 | |S44| | <S44 |
where:
f | = | Frequency |
Mag | = | Magnitude of S-parameter Sij |
Ang | = | Angle of S-parameter Sij |
Adding Comments to Data Files
You can document your data files by preceding a comment with the exclamation mark (!) on any line. A comment can be the only entry on a line or can follow the data on any line.
Adding Noise Parameters to an SnP File
Noise parameters can be included in SnP 2-port data files. Noise data can follow G-, H-, S-, Y-, or Z-parameters described for each frequency. The x values are data.
Each line of a noise parameter has the following five entries:
x1 x2 x3 x4 x5
where:
x1 |
= |
Frequency in units. The first point of noise data must have a frequency less than the frequency of the last S-parameter frequency |
x2 |
= |
Minimum noise figure in dB |
x3 |
= |
Source reflection coefficient to realize minimum noise figure (MA) |
x4 |
= |
Phase in degrees of the reflection coefficient (MA) |
x5 |
= |
Normalized effective noise resistance. The system simulator requires this parameter to meet physical requirements. If the user-supplied x5 value is less than allowed for this requirement, then the system simulator will force this x5 value to the lowest physical limit. |
Sopt noise data in an SnP file must be expressed in a Magnitude/Angle (MA) format. The simulator assumes that the Sopt noise data in an SnP file is specified in a MA format. This is the only supported format for Sopt data in an SnP file. The complex format type specified in the format line does not apply to the Sopt data specified in the Noise block.
The data file reader cannot determine if the numbers representing the Sopt data in the SnP data file are expressed in MA format and not in dB or Real/Imag formats. It reads in whatever numbers appear on the data line and processes them as if they are MA, without issuing an error or warning message. If the Sopt data in the SnP data file is expressed in a format other than MA, this can produce simulation data that look incorrect.
Note
The frequencies for noise parameters and network parameters need not match. The only requirement is that the lowest noise-parameter frequency be less than or equal to the highest network-parameter frequency. This allows the file processor to determine where network parameters end and noise parameters begin.
The source reflection coefficient and effective noise resistance are normalized to the same resistance as specified for the network parameters.
Example File Containing Noise Data
This is an example of a data file with noise data:
! NEC710 # GHZ S MA R 50 2 .95 -26 3.57 157 .04 76 .66 -14 22 .60 -144 1.30 40 .14 40 .56 -85 ! NOISE PARAMETERS 4 .7 .64 69 .38 18 2.7 .46 -33 .40
Applying the SnP Format, and Examples
In this section are formatting references and examples for:
- G-parameter files
- H-parameter files
- S-parameter files
- Y- and Z-parameter files
Guidelines
- The optimum source reflection coefficient and the normalized effective noise resistance are assumed to be with respect to the normalizing resistance value (appearing after the R keyword) on the header line.
- The frequencies for noise parameters and G-, H-, S-, Y-, or Z-parameters (network parameters) do not have to match. The only requirement is that the lowest noise parameter frequency be less than or equal to the highest network parameter frequency. This allows the file processor to determine where G-, H-, S-, Y-, or Z-parameters end and noise parameters begin. Please note that it is required
to have at least two lines of network parameters, when using noise parameters. With only one line of network parameters and one line of noise parameters, the simulation will result in the below error.
ERROR: Unable to read required data from touchstone file. Please ensure that the file is ASCII and correctly formatted.
If you add a second line of network parameters, everything works fine.
G-Parameter Files
G-parameter files (Hybrid-g parameters) use MA or RI format. They are strictly 2-port files. G-parameter measurements are:
G11 |
input admittance (port 2 open) |
G22 |
output impedance (port 1 shorted) |
G21 |
forward voltage gain (port 2 open) |
G12 |
reverse current gain (port 1 shorted) |
G-Parameter MA and RI File Formats
# frequency_unit G MA R impedance freq magG11 angG11 magG21 angG21 magG12 angG12 magG22 angG22 # frequency_unit G RI R impedance freq reG11 imG11 reG21 imG21 reG12 mG12 reG22 imG22
G-Parameter File Example
! symbol freq-unit parameter-type data-format keyword impedance-ohms # KHZ G MA R 1 ! freq magG11 angG11 magG21 angG21 magG12 angG12 magG22 angG22 2 .95 -26 3.57 157 .04 76 .66 -14 3 .93 -40 3.53 147 .05 69 .65 -20 4 .89 -52 3.23 136 .06 62 .63 -26
H-Parameter Files
H-parameter files (Hybrid-h parameters) use MA or RI format. They are strictly 2-port files. H-parameter measurements are:
H11 |
input impedance (port 2 shorted) |
H22 |
output admittance (port 1 open) |
H21 |
forward current gain (port 2 shorted) |
H12 |
reverse voltage gain (port 1 open) |
H-Parameter File Example
! symbol freq-unit parameter-type data-format keyword impedance-ohms # KHZ H MA R 1 ! freq magH11 angH11 magH21 angH21 magH12 angH12 magH22 angH22 2 .95 -26 3.57 157 .04 76 .66 -14 3 .93 -40 3.53 147 .05 69 .65 -20 4 .89 -52 3.23 136 .06 62 .63 -26
S-Parameter Files
S-parameter files (scattering parameters) can have MA, RI, or DB format for files with 1 to 99 ports.
S-Parameter 1-Port MA, RI, and DB File Formats
# frequency_unit S MA R impedance freq magS11 angS11 # frequency_unit S RI R impedance freq reS11 imS11 # frequency_unit S DB R impedance freq dbS11 angS11
S-Parameter 2-Port MA, RI, and DB File Formats
# frequency_unit S MA R impedance freq magS11 angS11 magS21 angS21 magS12 angS12 magS22 angS22 # frequency_unit S RI R impedance freq reS11 imS11 reS21 imS21 reS12 imS12 reS22 imS22 # frequency_unit S DB R impedance freq dbS11 angS11 dbS21 angS21 dbS12 angS12 dbS22 angS22
S-Parameter 3-Port MA, RI, and DB File Formats
# frequency_unit S MA R impedance freq magS11 angS11 magS12 angS12 magS13 angS13 ! 1st row magS21 angS21 magS22 angS22 magS23 angS23 ! 2nd row magS31 angS31 magS32 angS32 magS33 angS33 ! 3rd row # frequency_unit S RI R impedance freq reS11 imS11 reS12 imS12 reS13 imS13 ! 1st row reS21 imS21 reS22 imS22 reS23 imS23 ! 2nd row reS31 imS31 reS32 imS32 reS33 imS33 ! 3rd row # frequency_unit S DB R impedance freq dbS11 angS11 dbS12 angS12 dbS13 angS13 ! 1st row dbS21 angS21 dbS22 angS22 dbS23 angS23 ! 2nd row dbS31 angS31 dbS32 angS32 dbS33 angS33 ! 3rd row
S-Parameter 4-Port MA, RI, and DB File Formats
# frequency_unit S MA R impedance ! 1st row freq magS11 angS11 magS12 angS12 magS13 angS13 magS14 angS14 magS21 angS21 magS22 angS22 magS23 angS23 magS24 angS24 ! 2nd row magS31 angS31 magS32 angS32 magS33 angS33 magS34 angS34 ! 3rd row magS41 angS41 magS42 angS42 magS43 angS43 magS44 angS44 ! 4th row # frequency_unit S RI R impedance freq reS11 imS11 reS12 imS12 reS13 imS13 reS14 imS14 ! 1st row reS21 imS21 reS22 imS22 reS23 imS23 reS24 imS24 ! 2nd row reS31 imS31 reS32 imS32 reS33 imS33 reS34 imS34 ! 3rd row reS41 imS41 reS42 imS42 reS43 imS43 reS44 imS44 ! 4th row # frequency_unit S DB R impedance freq dbS11 angS11 dbS12 angS12 dbS13 angS13 dbS14 angS14 ! 1st row dbS21 angS21 dbS22 angS22 dbS23 angS23 dbS24 angS24 ! 2nd row dbS31 angS31 dbS32 angS32 dbS33 angS33 dbS34 angS34 ! 3rd row dbS41 angS41 dbS42 angS42 dbS43 angS43 dbS44 angS44 ! 4th row
S-Parameter 1-Port File Example
! symbol freq-unit parameter-type data-format keyword impedance-ohms # MHZ S MA R 50 ! freq magS11 angS11 (commented header line) 2.000 0.894 -12.136 3.000 0.893 -18.179 4.000 0.891 -24.193
S-Parameter 5- to 99-Port File Formats
These file formats appear in a matrix form similar to the 3- and 4-port files, except that only four S-parameters (with 2 real numbers for each) can appear on a given line. Therefore, the remaining S-parameters in that row of the S-matrix continue on the next line of the file.
Each row of the S-matrix must begin on a new line of the file. The first line of the first row of the S-matrix begins with the frequency value.
S-Parameter 10-Port File Example (at One Frequency)
# frequency_unit S MA R impedance freq magS11 angS11 magS12 angS12 magS13 angS13 magS14 angS14 ! 1st row magS15 angS15 magS16 angS16 magS17 angS17 magS18 angS18 magS19 angS19 magS1,10 angS1,10 magS21 angS21 magS22 angS22 magS23 angS23 magS24 angS24 ! 2nd row magS25 angS25 magS26 angS26 magS27 angS27 magS28 angS28 magS29 angS29 magS2,10 angS2,10 magS31 angS31 magS32 angS32 magS33 angS33 magS34 angS34 ! 3rd row magS35 angS35 magS36 angS36 magS37 angS37 magS38 angS38 magS39 angS39 magS3,10 angS3,10 magS41 angS41 magS42 angS42 magS43 angS43 magS44 angS44 ! 4th row magS45 angS45 magS46 angS46 magS47 angS47 magS48 angS48 magS49 angS49 magS4,10 angS4,10 magS51 angS51 magS52 angS52 magS53 angS53 magS54 angS54 ! 5th row magS55 angS55 magS56 angS56 magS57 angS57 magS58 angS58 magS59 angS59 magS5,10 angS5,10 magS61 angS61 magS62 angS62 magS63 angS63 magS64 angS64 ! 6th row magS65 angS65 magS66 angS66 magS67 angS67 magS68 angS68 magS69 angS69 magS6,10 angS6,10 magS71 angS71 magS72 angS72 magS73 angS73 magS74 angS74 ! 7th row magS75 angS75 magS76 angS76 magS77 angS77 magS78 angS78 magS79 angS79 magS7,10 angS7,10 magS81 angS81 magS82 angS82 magS83 angS83 magS84 angS84 ! 8th row magS85 angS85 magS86 angS86 magS87 angS87 magS88 angS88 magS89 angS89 magS8,10 angS8,10 magS91 angS91 magS92 angS92 magS93 angS93 magS94 angS94 ! 9th row magS95 angS95 magS96 angS96 magS97 angS97 magS98 angS98 magS99 angS99 magS9,10 angS9,10 !10th row magS10,1 angS10,1 magS10,2 angS10,2 magS10,3 angS10,3 magS10,4 angS10,4 magS10,5 angS10,5 magS10,6 angS10,6 magS10,7 angS10,7 magS10,8 angS10,8 magS10,9 angS10,9 magS10,10 angS10,10
Linear 1-Port (.s1p) File Example
# GHZ S RI R 50.0 1.00000000 0.9488 -0.2017 1.50000000 0.9077 -0.3125 2.00000000 0.8539 -0.4165 2.50000000 0.7884 -0.5120 3.00000000 0.7124 -0.5978 3.50000000 0.6321 -0.6546 4.00000000 0.5479 -0.7013 4.50000000 0.4701 -0.7380 5.00000000 0.3904 -0.7663 5.50000000 0.3302 -0.7778 6.00000000 0.2702 -0.7848 6.50000000 0.2041 -0.7890 7.00000000 0.1389 -0.7878 7.50000000 0.0894 -0.7849 8.00000000 0.0408 -0.7789 8.50000000 0.0134 -0.7649 9.50000000 0.0654 -0.7471 9.00000000 0.1094 -0.7319 10.0000000 0.1518 -0.7140
Linear 2-Port (.s2p) File Example
# GHZ S RI R 50.0 1.0000 0.3926 -0.1211 -0.0003 -0.0021 -0.0003 -0.0021 0.3926 -0.1211 2.0000 0.3517 -0.3054 -0.0096 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 10.000 0.3419 0.3336 -0.0134 0.0379 -0.0134 0.0379 0.3419 0.3336 !Noise params 1.0000 2.0000 -0.1211 -0.0003 .4 2.0000 2.5000 -0.3054 -0.0096 .45 3.0000 3.0000 -0.6916 -0.6933 .5 4.0000 3.5000 -0.3756 0.4617 .55 5.0000 4.0000 0.3880 0.6848 .6 6.0000 4.5000 0.0343 0.0383 .65 7.0000 5.0000 0.6916 0.6933 .7 8.0000 5.5000 0.5659 0.1000 .75 9.0000 6.0000 0.4145 0.0307 .8 10.0000 6.5000 0.3336 0.0134 .85
Linear 3-Port (.s3p) File Example
# GHZ S MA R 50.0 ! POWER DIVIDER, 3-PORT 5.00000 0.24254 136.711 0.68599 -43.3139 0.68599 -43.3139 0.68599 -43.3139 0.08081 66.1846 0.28009 -59.1165 0.68599 -43.3139 0.28009 -59.1165 0.08081 66.1846 6.00000 0.20347 127.652 0.69232 -52.3816 0.69232 -52.3816 0.69232 -52.3816 0.05057 52.0604 0.22159 -65.1817 0.69232 -52.3816 0.22159 -65.1817 0.05057 52.0604 7.00000 0.15848 118.436 0.69817 -61.6117 0.69817 -61.6117 0.69817 -61.6117 0.02804 38.6500 0.16581 -71.2358 0.69817 -61.6117 0.16581 -71.2358 0.02804 38.6500
Linear 4-Port (.s4p) File Example
# GHZ S MA R 50 5.00000 0.60262 161.240 0.40611 -42.2029 0.42918 -66.5876 0.53640 -79.3473 0.40611 -42.2029 0.60262 161.240 0.53640 -79.3473 0.42918 -66.5876 0.42918 -66.5876 0.53640 -79.3473 0.60262 161.240 0.40611 -42.2029 0.53640 -79.3473 0.42918 -66.5876 0.40611 -42.2029 0.60262 161.240 6.00000 0.57701 150.379 0.40942 -44.3428 0.41011 -81.2449 0.57554 -95.7731 0.40942 -44.3428 0.57701 150.379 0.57554 -95.7731 0.41011 -81.2449 0.41011 -81.2449 0.57554 -95.7731 0.57701 150.379 0.40942 -44.3428 0.57554 -95.7731 0.41011 -81.2449 0.40942 -44.3428 0.57701 150.379 7.00000 0.50641 136.693 0.45378 -46.4151 0.37845 -99.0918 0.62802 -114.196 0.45378 -46.4151 0.50641 136.693 0.62802 -114.196 0.37845 -99.0918 0.37845 -99.0918 0.62802 -114.196 0.50641 136.693 0.45378 -46.4151 0.62802 -114.196 0.37845 -99.0918 0.45378 -46.4151 0.50641 136.693
Y- and Z-Parameter Files
Immittance parameters are specified in MA or RI format, where the # line has Y for admittance and Z for impedance. Both are normalized to the reference resistance.
Y- (Z-) Parameter 1-Port MA and RI File Formats
# frequency_unit Y MA R impedance freq magY11 angY11 # frequency_unit Y RI R impedance freq reY11 imY11
Y- (Z-) Parameter 2-Port MA and RI File Formats
# frequency_unit Y MA R impedance freq magY11 angY11 magY21 angY21 magY12 angY12 magY22 angY22 # frequency_unit Y RI R impedance freq reY11 imY11 reY21 imY21 reY12 imY12 reY22 imY22
Y- (Z-) Parameter 3-Port MA and RI File Formats
freq magY11 angY11 magY12 angY12 magY13 angY13 ! 1st row magY21 angY21 magY22 angY22 magY23 angY23 ! 2nd row magY31 angY31 magY32 angY32 magY33 angY33 ! 3rd row # frequency_unit Y RI R impedance freq reY11 imY11 reY12 imY12 reY13 imY13 ! 1st row reY21 imY21 reY22 imY22 reY23 imY23 ! 2nd row reY31 imY31 reY32 imY32 reY33 imY33 ! 3rd row
Y- (Z-) Parameter 4-Port MA and RI File Formats
# frequency_unit Y MA R impedance freq magY11 angY11 magY12 angY12 magY13 angY13 magY14 angY14 ! 1st row magY21 angY21 magY22 angY22 magY23 angY23 magY24 angY24 ! 2nd row magY31 angY31 magY32 angY32 magY33 angY33 magY34 angY34 ! 3rd row magY41 angY41 magY42 angY42 magY43 angY43 magY44 angY44 ! 4th row # frequency_unit Y RI R impedance freq reY11 imY11 reY12 imY12 reY13 imY13 reY14 imY14 ! 1st row reY21 imY21 reY22 imY22 reY23 imY23 reY24 imY24 ! 2nd row reY31 imY31 reY32 imY32 reY33 imY33 reY34 imY34 ! 3rd row reY41 imY41 reY42 imY42 reY43 imY43 reY44 imY44 ! 4th row
Y- (Z-) Parameter 3-Port File Example
! symbol freq-unit parameter-type data-format keyword impedance-ohms # GHz Y MA R 1 !freq magY11 angY11 magY12 angY12 magY13 angY13 ! 1st line ! magY21 angY21 magY22 angY22 magY23 angY23 ! 2nd line ! magY31 angY31 magY32 angY32 magY33 angY33 ! 3rd line 4 0.008 83.122 8.5e-04 -86.740 0.007 -98.037 0.046 -12.740 0.005 36.580 0.049 171.554 0.046 177.588 0.004 -152.638 0.050 0.134 8 0.016 79.068 0.002 -84.015 0.014 -102.924 0.049 -23.015 0.006 52.828 0.051 164.123 0.048 175.827 0.005 -139.640 0.052 -0.004 12 0.025 73.501 0.003 -81.736 0.023 -109.374 0.058 -36.736 0.009 58.596 0.058 152.007 0.055 169.129 0.007 -136.047 0.059 -5.349 18 0.036 65.138 0.004 -71.761 0.033 -119.900 0.059 -54.761 0.013 72.274 0.052 137.118 0.052 162.979 0.010 -121.976 0.055 -6.677
Y- (Z-) Parameter 5- to 99-Port File Formats
These file formats appear in a matrix form similar to 3- and 4-port files. Only four Y-, or Z-parameters (with 2 real numbers for each) can appear on a given line; therefore, the remaining parameters in that row of the matrix continue on the next line of the file. Each row of the Y-matrix must begin on a new line of the file. The first line of the first row of the Y-matrix begins with the frequency value. The actual Y- (Z-) parameter value is obtained by dividing (multiplying) the file entry with the reference resistance.
Y- (Z-) Parameter 10-Port File Example (at One Frequency)
# frequency_unit Y MA R impedance freq magY11 angY11 magY12 angY12 magY13 angY13 magY14 angY14 ! 1st row magY15 angY15 magY16 angY16 magY17 angY17 magY18 angY18 magY19 angY19 magY1,10 ngY1,10 magY21 angY21 magY22 angY22 magY23 angY23 magY24 angY24 ! 2nd row magY25 angY25 magY26 angY26 magY27 angY27 magY28 angY28 magY29 angY29 magY2,10 angY2,10 magY31 angY31 magY32 angY32 magY33 angY33 magY34 angY34 ! 3rd row magY35 angY35 magY36 angY36 magY37 angY37 magY38 angY38 magY39 angY39 magY3,10 angY3,10 magY41 angY41 magY42 angY42 magY43 angY43 magY44 angY44 ! 4th row magY45 angY45 magY46 angY46 magY47 angY47 magY48 angY48 magY49 angY49 magY4,10 angY4,10 magY51 angY51 magY52 angY52 magY53 angY53 magY54 angY54 ! 5th row magY55 angY55 magY56 angY56 magY57 angY57 magY58 angY58 magY59 angY59 magY5,10 angY5,10 magY61 angY61 magY62 angY62 magY63 angY63 magY64 angY64 ! 6th row magY65 angY65 magY66 angY66 magY67 angY67 magY68 angY68 magY69 angY69 magY6,10 angY6,10 magY71 angY71 magY72 angY72 magY73 angY73 magY74 angY74 ! 7th row magY75 angY75 magY76 angY76 magY77 angY77 magY78 angY78 magY79 angY79 magY7,10 angY7,10 magY81 angY81 magY82 angY82 magY83 angY83 magY84 angY84 ! 8th row magY85 angY85 magY86 angY86 magY87 angY87 magY88 angY88 magY89 angY89 magY8,10 angY8,10 magY91 angY91 magY92 angY92 magY93 angY93 magY94 angY94 ! 9th row magY95 angY95 magY96 angY96 magY97 angY97 magY98 angY98 magY99 angY99 magY9,10 angY9,10 !10th row magY10,1 angY10,1 magY10,2 angY10,2 magY10,3 angY10,3 magY10,4 angY10,4 magY10,5 angY10,5 magY10,6 angY10,6 magY10,7 angY10,7 magY10,8 angY10,8 magY10,9 angY10,9 magY10,10 angY10,10
ADS Impulse File Format
ADS Impulse ( .imp ) files store multi-port impulse responses of linear N-ports. For a frequency domain N-port description:
,
.imp files provide a method of storing the time domain equivalent of,
,
where hij(t) is the impulse response of matrix element Hij(ω).
ADS impulse files store discrete, uniformly sampled representations Impij(n) of impulse responses hij(t) normalized by the sampling step, and optionally allow for explicit storage of the impulse response delay, as illustrated in the following figure:
More specifically,
Impij(n)=hij(Td+nΔT)ΔT ,
where Td is the base delay and ΔT is the sample spacing.
.imp files are the time-domain analog of the frequency-domain Touchstone format. They consist of comments, header lines and data lines, similar to Touchstone. Header lines describe global settings while data lines describe impulse response matrices, as detailed below.
Comments
Comments are preceded by an exclamation mark (!). Comments may be placed at the beginning or at the end of a line.
Line Continuation
Carriage return is used as the line continuation character.
Header Lines
Header lines consist of the Option line and the following keywords:
- [Version]
- [Number of Ports]
- [Reference]
- [Original Frequency Range]
- [Time Step]
- [Base Delay]
With the exception of the Option line, all keywords are enclosed in the square brackets. Header lines, including keywords and the Option line, may appear in any order. Header lines precede data lines and may not appear after the data section.
The Option Line
The Option line specifies the network parameter type and the normalizing impedance. The Option line format is:
# parameter R n
where:
parameter |
= |
Network parameter type. Permitted values are: S, Y or Z |
n |
= |
Optional S-parameter reference impedance, defaulting to 50Ω. |
Option Line Examples
S-parameters impulse response, normalized to 100Ω:
# S R 100.0
Y-parameter impulse response:
# Y
Z-parameter impulse response:
# Z
[Version]
The [Version] keyword defines the version of the .imp file. The [Version] line is of the form:
[Version] version
The initial version is 1.0. [Version] is optional and defaults to 1.0.
[Version] Line Example
[Version] 1.0
[Number of Ports]
The [Number of Ports] keyword defines the number of network ports. The [Number of Ports] line is of the form
[Number of Ports] n
[Number of Ports] is mandatory.
[Number of Ports] Line Example
[Number of Ports] 2
[Reference]
The [Reference] keyword defines the port reference impedances for impulse data in S-parameter form. The [Reference] line is of the form:
[Reference] ref1 ref2 ... refN
where ref1, ref2 ... refN define the reference impedance for each port.
This keyword is optional. If [Reference] is not present, the reference impedances are defined by the Option line. If [Reference] is present, it must contain an entry for every port (for example, a four-port data file using [Reference] must contain four [Reference] impedance entries). If reference impedances are specified both using [Reference] and in the Option line, the [Reference] line takes precedence.
[Reference] Line Example
A two-port network with port 1 terminated into 75Ω and port 2 terminated into 75Ω:
[Reference] 75.0 75.0
[Original Frequency Range]
This keyword defines the frequency range of the frequency domain network parameters from which the .imp file was extracted. [Original Frequency Range] is optional. The line is of the form:
[Original Frequency Range] minFreq maxFreq units
where
minFreq |
= |
Lowest frequency |
maxFreq |
= |
Highest frequency |
units |
= |
Permitted units are: Hz, kHz, MHz, GHz, THz. Default units are GHz. |
[Original Frequency Range] Line Example
[Original Frequency Range] 0.05 20.0 GHz
[Time Step]
The [Time Step] keyword defines the uniform sampling step for the impulse response. This line is of the form:
[Time Step] timeStep units
where
timeStep |
= |
Sampling step. |
units |
= |
Permitted units are: fsec, psec, nsec, μsec, msec and sec. Default units are sec. |
The [Time Step] line is mandatory.
[Time Step] Line Example
[Time Step] 1.0 nsec
[Base Delay]
The [Base Delay] keyword defines the base delay of each impulse response. [Base Delay] is of the form:
[Base Delay] baseDelay1 baseDelay2 ... baseDelayM units
where
baseDelay1, baseDelay2 ... baseDelayM |
= |
Base delays of each of the M impulse responses. For an N=port network, M=N2. Base delays are ordered row-wise. |
Units |
= |
Permitted units are: fsec, psec, nsec, μsec, msec and sec. Default units are sec. |
[Base Delay] Line Example
If the impulse response matrix has the following hypothetical base delays:
Base delay (1,1) = 1.0 nsec
Base delay (1,2) = 2.0 nsec
Base delay (2,1) = 3.0 nsec
Base delay (2,2) = 4.0 nsec,
it would be expressed by the [Base Delay] line as follows:
[Base Delay] 1.0 2.0 3.0 4.0 nsec
Data Lines
Data lines define the impulse response matrix. Data lines follow Header lines. Data lines are of the form:
[Number of Points] P11
sample1 sample2 ... sampleP11[Number of Points] P12
sample1 sample2 ... sampleP12...
[Number of Points] PNN
sample1 sample2 ... samplePNN
where
Pij |
= |
Number of sample points in the impulse response of parameter (i,j) |
sample1 sample2 ... samplePij |
= |
Impulse response samples of parameter (i,j) |
There are N2 data lines for an N-port network. Impulse responses are ordered row-wise.
Data Lines Example
[Number of time points] 4 3.409677e-01 2.650540e-01 1.488737e-01 0.0 [Number of time points] 6 3.288703e-02 -8.949016e-03 -7.373915e-04 3.288703e-02 -8.949016e-03 0.0 [Number of time points] 6 3.288703e-02 -8.949016e-03 -7.373915e-04 3.288703e-02 -8.949016e-03 0.0 [Number of time points] 4 3.409677e-01 2.650540e-01 1.488737e-01 0.0
Example .imp File
!2-port S-parameter file [Version] 1.0 # S R 5.000000e+01 [Number of Ports] 2 [Reference] 75.0 75.0 [Original Frequency Range] 0.000000e+00 1.000000e+10 Hz [Time Step] 2.500000e-11 sec [Base Delay] 0.000000e+00 1.731859e-09 1.731859e-09 0.000000e+00 [Number of time points] 4 !S11 3.409677e-01 2.650540e-01 1.488737e-01 0.0 [Number of time points] 6 !S12 3.288703e-02 -8.949016e-03 -7.373915e-04 3.288703e-02 -8.949016e-03 0.0 [Number of time points] 6 !S21 3.288703e-02 -8.949016e-03 -7.373915e-04 3.288703e-02 -8.949016e-03 0.0 [Number of time points] 4 !S22 3.409677e-01 2.650540e-01 1.488737e-01 0.0
Discrete Format
The discrete data file consists of an array of data arranged in rows and columns. The values available for each parameter are arranged in columns. Following the BEGIN DSCRDATA line is the % format line which specifies the names of dependent variables. The first column is always treated as a string; other columns are real, integer or string, depending on the first row of data.
The first column, under the heading Index in the example below, contains entries used to identify each row in the file. These entries can be either an integer or an alphanumeric identifier, and can be thought of as a list of specification numbers (or part numbers). For example, the data file data/stdvalues15.dscr is arranged as follows:
REM stdvalues15.dscr BEGIN DSCRDATA % INDEX A12 A13 1 1000 1000 2 1000 1200 3 1000 2200 4 1200 1000 5 1200 1200 6 1200 2200 END DSCRDATA
Selecting a Row
A row of data can be selected by specifying its row index (starting from 0). In this example, the file lists two columns of values labeled A12 and A13. By specifying 2 as the row number, the values 1000 and 2200 are selected for A12 and A13, respectively.
Using the File with a DAC
To use the data within the file, you must link the file to the component of interest. You reference a discrete data file in this way by using a DAC:
- Place a DataAccessComponent data item in your design. The DAC is located in the Data Items palette. Double-click the DAC to edit it.
- On the File tab, in the File Name field, specify the name of the discrete data file, and accept the default setting for File Type , which is Discrete .
- On the Interpolation tab, accept the defaults for Interpolation Method ( Index Lookup ) and for Interpolation Domain ( Rectangular ).
- On the Independent Variable tab, set the names and values for the independent variables. This is necessary since data in a discrete data file can be accessed only by using an index lookup value. This means looking up data by row number.
To set up an independent variable, enter the name in the Variable Name field. For a discrete data file, the innermost independent variable is the dimension number which should be used as the name. Next, enter the row number in the Value field, which can be a variable assigned a value on the schematic. Then click Add to insert the name and value in the table at the left. Repeat this process for each independent variable in the data file.
Values entered for Variable Name are treated as strings, and quotation marks are inserted with these values automatically when added to the table's Name column. However, the innermost independent variable of a discrete data file must be specified as a cardinal integer instead of a string name. Assuming you are working with a one-dimensional data file, enter @1 to enter the integer (@ suppresses the quotation marks). For example, here is a portion of a one-dimensional discrete data file:If you define a variable called MyIndex in a schematic whose value represents the index of the row of data to be accessed, the table of independent variables should be constructed this way to read the one-dimensional file:Begin dscrdata % index mydata 0 12 1 34 2 56 ..... end
The value assigned to MyIndex in the schematic determines which row of data is read. So if MyIndex = 0 , the first row is read.Name Value 1 MyIndex
- Place the component whose parameter values should come from the data file. Double-click the component.
- Under Pa rameter Entry Mode, select File Based.
- Under Data Access Component Instance , enter the ID of the desired DAC data item.
- Under Dependent Parameter Name , enter the name of a dependent variable in the discrete data file (In the sample above, the dependent variable names are A12 and A13.).
Example
For an example of using a discrete data file, refer to amp1.dsn in the Examples directory, under Tutorials/DataAccess_prj .
Model MDIF Files
Nonlinear devices obtain their model parameters either from a model item or a file. For those devices that use a file, such as the EE_BJT2_Model , this section discusses the appropriate format for a model file, and how to read the file.
Model files are text files that contain model parameter names and values. A sample model file for the EE_BJT2_Model is shown below. Comments can be placed in the file by starting the line with REM . The model parameters are placed between BEGIN BDTA and END BDTA . One or more parameter names are placed on a line beginning with the percent symbol (%); corresponding values are placed in the same order on the next line. Parameter names can be in any order and are not case sensitive. Any parameters that are not present in the file take on their documented default values. Parameter names for each device are listed in the documentation for that device.
REM any line that starts with REM is ignored BEGIN BDTA % Rb Rc Re Tamb Ibir Nbr 0.637326 5.17646 0.695 25 3.72528e-15 1.0537 % Isc Nc Ibif Nbf Ise Ne 0 2 5.70565e-17 1.10843 4.63077e-14 1.83578 % Var Nr Isr Ikr Vaf Nf 1.1858 1.02201 1.12936e-14 100 54.9731 0.977768 % Isf Ikf Cjc Vjc Mjc Cje 5.37696e-16 0.857731 5.87976e-13 0.313492 0.0650757 9.81026e-13 % Vje Mje Tf Tr Fc 1.05535 0.475724 2.09636e-12 0 0.9 % Xtf Vtf Itf 10 4.32912 1e-09 END BDTA
The following figure shows how to obtain parameter values from a model MDIF file using a DataAccessComponent. The DAC refers to the model file by name. In this example, the file name is bfqtm1.txt . Additionally, Type is set to MDIFmodel and ExtrapMode set to InterpolationMode . On the device model component, the AllParams parameter is set to the name of the DAC, which is DAC_BJT .
Reading a Model MDIF file using a DataAccessComponent
PDF Format
This format is for user-specified Probability Density Functions (PDF). PDF is used for arbitrary distributions that are not correlated. The two methods available accommodate:
- Situations where the spread of statistical data is proportional to the nominal value (as in a percent tolerance).
- Situations where the spread is independent of the nominal value (an absolute tolerance).
Probability density functions are represented as vertices of piecewise linear segments. These value/ordinate pairs are stored in a textual data file in a prescribed format. The nominal value is also stored.
User-specified probability density files have an extension .pdf and use an MDIF file format. Only a single distribution definition is allowed in each .pdf file.
Guidelines for .pdf
- In addition to the nominal value, there must be a minimum of three value/ordinate data pairs.
- For tolerance representation, all value data and the nominal value must have the same algebraic sign.
- The ordinate data associated with the most negative and most positive value data must be zero.
- All ordinate data must be non-negative.
- At least one non-end ordinate data must be non-zero.
Example PDF File
The following example shows how to create a user-defined PDF file. The technique involves the use of a discrete file which contains the nominal value and the statistical data (in piece-wise linear form.) In this example, the first block contains the allowable nominal values, and the second block contains the statistical information. The VALUE/ORDINATE pairs describe the user-defined PDF.
BEGIN DSCRDATA % INDEX my_index 1 50 2 60 3 70 4 100 END DSCRDATA REM REM VAR INDEX value below must correlate with the row in the above data REM block, as selected by the iVal1 parameter of the DAC. REM For example, if iVal1=3, the 4th row of data from above is chosen REM (INDEX=4), and VAR INDEX = 4 must be specified below REM REM By experiment, the NOMINAL value does not have to correlate with the REM row number in the DSCRDATA block. REM VAR INDEX = 4 VAR PARNAME = my_index BEGIN TOLERANCE %NOMINAL 100 %VALUE ORDINATE 90 0.0 95 1.0 98 0.0 100 0.0 102 0.0 105 1.0 110 0.0 END TOLERANCE
Note
The total area under your PDF does not have to equal one as in the strict definition of a PDF-the simulator will automatically scale your PDF to meet this condition.
Interpretation of PDF data
Interpretation of user-supplied PDF data is piece-wise linear with respect to value/ordinate pairs. The data preparation previously described enables the program to supply a properly qualified variate.
To realize a statistical variable which obeys the user-supplied PDF, a uniform variate on the interval 0 to 1 is used as an input to a function which is the inverse of the cumulative distribution function (CDF). The CDF is formed by integrating the PDF from its most negative value to its most positive value, with the following conditions:
- Fx (-∞), the CDF at minus infinity = 0
- Fx (∞), the CDF at infinity = 1
Applying this uniform [0,1] variate to the inverse of the CDF results in a statistical variable having the user-specified probability density function.
PDFs may be used with:
- Yield analysis, with or without post-production tuning
- Yield optimization (design centering)
S2PMDIF Format
The S2PMDIF data format file (. s2p ) can contain multiple two-port small-signal measurement data and associated noise measurement data in a single file. S2P indicates that the data used is typically S-parameters, though other small-signal parameters (Y, Z, H, G) are supported. These files are a natural extension of two-port S-parameter Touchstone files. For information about Touchstone files, see Touchstone SnP Format. MDIF refers to the fact that these files use the format and syntax rules associated with the Measurement Data Interchange Format (MDIF).
The most typical application of the S2PMDIF format is the creation of a file-based statistical representation for one or more devices in the fabrication process. Due to process variations, S-parameters for the same device will vary naturally. Using the S2PMDIF format, which captures all S-parameter data, in conjunction with statistical and yield analysis tools, which can randomly select a part, statistical characterization of a device (known as a truthmodel ) for yield analysis is achieved.
General File Structure
The file structure can repeat for as many small-signal data/noise data pairs as needed. Noise data is optional and the file structure shown here may only have ACDATA blocks if desired.
! Comment Line
VAR <_Your_variable_name#1_> = <Your_Value>_
VAR <_Your_variable_name#2_> = <Your_Value>_
VAR <_Your_variable_name#n_> = <Your_Value>_
BEGIN ACDATA
! Option line
% F n11x n11y n21x n21y n12x n12y ! signal format line
! < Your small data consistent with above format line >
END
BEGIN NDATA
! Option line
% F nfmin n11x n11y rn ! noise format line
! < Your noise data >
END
! Repeat entire ACDATA and NDATA blocks above if necessary
! preceded by different VAR values to distinguish measurements.
Guidelines
The details presented in this section are demonstrated in Example S2PMDIF File. You are encouraged to review the example, then refer back to these guidelines for the detailed information.
VAR items VAR items are used to declare variables that distinguish different small signal/noise parameter pairs. The format is,
VAR <name> = <value>
Examples:
VAR Part_XYZ_sample = 1 VAR SAMPLE = 0
Note
VAR is a reserved keyword for the MDIF file. SAMPLE is a reserved variable for statistical analysis applications.
General information S2PMDIF supports
multiple small-signal and/or noise data pairs
or
one small-signal and/or noise data pair.
If the latter is used, no VAR declaration is required.
Comments Comments in the S2PMDIF are supported using ! or the REM statement. The ! may appear at the beginning of a line, or as a trailing comment at the end of a line. REM, however, may only serve as a leading comment on the beginning of a line. Examples:
REM VAR Lot = 1 ! VAR Lot = 1 VAR Lot = 1 ! This is the wafer lot number
S2PMDIF data blocks S2PMDIF contains two main data blocks framed by BEGIN and END statements:
ACDATA |
Lists small-signal parameters vs. frequency. |
NDATA |
Lists noise parameters vs. frequency. |
Supported small-signal parameters The ACDATA (small-signal parameter) block supports the small-signal parameter types S, Y, Z, H, or G.
Supported noise data The NDATA (noise data) block supports parameters NFMIN (minimum noise figure), Gamma Opt (optimal source reflection coefficient), and RN (noise resistance). This is supported for use with all small-signal parameter types.
Option line The option line declares data contained in the SFC m2PMDIF file. These are
- The frequency units
- The type of small-signal parameter
- The format used to express the small signal parameters (ACDATA block) or optimum source reflection (NDATA) (Magnitude & Angle, Real & Imaginary, dB & Angle).
There are two option line formats:
#AC (freq_unit SS_ParmType SS_Parm_Format R Scaling/system impedance)
# freq_unit SS_ParmType SS_Parm_Format R Scaling/system
where:
freq_unit |
= |
Sets frequency units. |
SS_ParmType |
= |
Sets small-signal parameter type. |
SS_Parm_format |
= |
Small signal parameter format. |
R Scaling/system |
= |
Declares scaling/system impedance |
Important Option Line Information
- While both option line formats are supported, #AC(... ) is recommended.
- Option lines are required in the file. If any are omitted, unpredictable results will occur.
- Option lines may have different frequency units, small-signal parameter formats (e.g., MA, RI, and DB), and system/scaling impedance values in the same S2PMDIF file. However, the small-signal parameter type (e.g., S, Y, Z, H, G) must be the same for all option lines in the S2PMDIF file. Agilent recommends that the same option line be used throughout the same S2PMDIF file except where scaling differences require changes (e.g., noise data is not scaled, whereas S-parameter data has a normalizing system impedance).
- If default SS_ParamType, SS_Param_format, and R Scaling/System are used, at a minimum, the freq_unit must appear in the option line. For example:
#AC ( GHz ) - preferred format
# GHz - alternative format (Touchstone based) - Option line syntax is case insensitive.
- When entering parameters other than S-parameter data, typically R 1 is used, since some users who are accustomed to using S-parameters make the common mistake of entering R 50 Z-parameters. In that event, the Z-parameters would be scaled to an undesirable level.
- If an option line is not specified within a data block in the file, the following default option line is used for that data:
# hz R ri R 50
.
Signal Format Line The syntax for the signal format line is
% F n11x n11y n21x n21y n12x n12y n22x n22y
The signal format line comprises nine columns of data in the ACDATA block. The first column is frequency, the remaining columns pertain to small-signal parameters. In S2PMDIF, each two-port small-signal parameter is represented in two parts. The format being either Magnitude(x) and Angle(y), or Real(x) and Imaginary(y), or dB(x) and Angle(y). (See guideline for Option line above.) Given this, the small signal parameters are entered as eight columns of data. The format line has the following meaning where n is S, Y, Z, H, or G:
F |
= |
Frequency in Hz, kHz, MHz, or GHz. |
n11x |
= |
Magnitude, real part, or dB value (depending which option is used) for small signal parameter n11. |
n11y |
= |
Angle, or imaginary part (depending which option is used) for small signal parameter n11. |
n21x |
= |
Magnitude, real part, or dB value (depending which option is used) for small signal parameter n21. |
n21y |
= |
Angle, or imaginary part (depending which option is used) for small signal parameter n21. |
n12x |
= |
Magnitude, real part, or dB value (depending which option is used) for small signal parameter n12. |
n12y |
= |
Angle, or imaginary part (depending which option is used) for small signal parameter n12. |
n22x |
= |
Magnitude, real part, or dB value (depending which option is used) for small signal parameter n22. |
n22y |
= |
Angle, or imaginary part (depending which option is used) for small signal parameter n22. |
When the small-signal parameter format is declared (Magnitude Angle, Real Imaginary, or dB Angle), all small-signal parameters assume that format. For example, if Magnitude Angle is declared, all small signal parameters assume magnitude and angle format. If Real Imaginary is declared, all parameters assume real and imaginary format. If MA, RI, or DB are not specified at all, the default format is RI.
Noise Format Line The syntax for the noise format line is
% F nfmin n11x n11y rn
The noise format line comprises five columns of data in the NDATA block.
F |
= |
Frequency in Hz, kHz, MHz, or GHz. |
nfmin |
= |
Minimum noise figure. |
n11x |
= |
The third and forth columns are optimum source reflection coefficient described as either Magnitude (n11x) and Angle (n11y), Real (n11x) and Imaginary (n11y), or DB (n11x) and Angle (n11y). (See guideline for Option line above.) |
rn |
= |
Equivalent normalized noise resistance. |
In the option line, when MA, RI, or DB is declared, it only pertains to the optimum source reflection coefficient data. If MA, RI, or DB are not specified at all, the default format is RI.
Example S2PMDIF File
The following example is annotated using single small signal, noise parameter data pair.
! File using #AC ( ... ) Optionline ! Created Mon Jan 26 15:02:05 2004 VAR Wafer_Lot = 0 BEGIN ACDATA #AC( hz S ma R 50 ) ! Choice of units: Hz, KHz, MHz, or GHz ! Optional Selection: S,Z,Y,H,or G {default S} ! Optional Selection: MA, DB, RI {default RI} ! DB = 20*log(mag(value)) ! Optional Selection: R XY; where XY=reference res {default R 50} % F n11x n11y n21x n21y n12x n12y n22x n22y !F Mag_S11 Ang_S11 Mag_S21 Ang_S21 Mag_S12 Ang_S12 Mag_S22 Ang_S22 1e9 0.2416 -89.666 0.9138 -22.252 0.9138 -22.252 0.2366 -107.202 2e9 0.4456 -108.425 0.8336 -43.447 0.8336 -43.447 0.4394 -143.149 3e9 0.6068 -121.516 0.7234 -62.672 0.7234 -62.672 0.6044 -171.881 4e9 0.7203 -131.748 0.6068 -79.382 0.6068 -79.382 0.7259 -164.03 5e9 0.7945 -139.741 0.5001 -93.494 0.5001 -93.494 0.8097 143.997 END BEGIN NDATA ! Noise Data block optional #AC( hz S ma R 50 ) ! Choice of units: Hz, KHz, MHz, or GHz ! Optional Selection: S,Z,Y,H,or G {default S} ! Optional Selection: MA, DB, RI {default RI} ! MA, DB, RI pertains to Gamma Opt data only ! DB = 20*log(mag(value)) ! Optional Selection: R XY; where XY=reference res {default R 50} % F NFMIN N11X N11Y RN ! Freq nfmin_in_dB GammaOpt_Mag GammaOpt_Ang Normalized R 1.0000000E9 0.1221 0.8026 29.711 0.1200 2.0000000E9 0.2440 0.6919 57.344 0.1200 3.0000000E9 0.3659 0.6515 80.598 0.1201 4.0000000E9 0.4878 0.6507 98.564 0.1201 5.0000000E9 0.6097 0.6671 111.954 0.1202 END ! File using # freq_unit ... Optionline ! Created Mon Jan 26 15:02:05 2004 VAR Wafer_Lot = 0 BEGIN ACDATA # hz S ma R 50 ! Choice of units: Hz, KHz, MHz, or GHz ! Optional Selection: S,Z,Y,H,or G {default S} ! Optional Selection: MA, DB, RI {default RI} ! DB = 20*log(mag(value)) ! Optional Selection: R XY; where XY=reference res {default R 50} % F n11x n11y n21x n21y n12x n12y n22x n22y !F Mag_S11 Ang_S11 Mag_S21 Ang_S21 Mag_S12 Ang_S12 Mag_S22 Ang_S22 1e9 0.2416 -89.666 0.9138 -22.252 0.9138 -22.252 0.2366 -107.202 2e9 0.4456 -108.425 0.8336 -43.447 0.8336 -43.447 0.4394 -143.149 3e9 0.6068 -121.516 0.7234 -62.672 0.7234 -62.672 0.6044 -171.881 4e9 0.7203 -131.748 0.6068 -79.382 0.6068 -79.382 0.7259 -164.03 5e9 0.7945 -139.741 0.5001 -93.494 0.5001 -93.494 0.8097 143.997 END BEGIN NDATA ! Noise Data block optional # hz S ma R 50 ! Choice of units: Hz, KHz, MHz, or GHz ! Optional Selection: S,Z,Y,H,or G {default S} ! Optional Selection: MA, DB, RI {default RI} ! MA, DB, RI pertains to Gamma Opt data only ! DB = 20*log(mag(value)) ! Optional Selection: R XY; where XY=reference res {default R 50} % F NFMIN N11X N11Y RN ! Freq nfmin_in_dB GammaOpt_Mag GammaOpt_Ang Normalized R 1.0000000E9 0.1221 0.8026 29.711 0.1200 2.0000000E9 0.2440 0.6919 57.344 0.1200 3.0000000E9 0.3659 0.6515 80.598 0.1201 4.0000000E9 0.4878 0.6507 98.564 0.1201 5.0000000E9 0.6097 0.6671 111.954 0.1202 END
Additional Examples: ACDATA and NDATA Blocks
! Created Mon Jan 26 15:02:18 2004 VAR Wafer_Lot = 0 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 0.00140798345 -0.241631115 0.845829604 -0.346084206 0.845829604 -0.346084206 -0.0699873389 -0.226051765 2e+009 -0.140908488 -0.422961056 0.6052091 -0.573277416 0.6052091 -0.573277416 -0.351668311 -0.263572469 3e+009 -0.317221301 -0.51732628 0.332133361 -0.642749288 0.332133361 -0.642749288 -0.598403728 -0.0853663052 4e+009 -0.479677672 -0.537464874 0.111818135 -0.596499788 0.111818135 -0.596499788 -0.697916575 0.199718707 5e+009 -0.606360921 -0.513473 -0.0304812178 -0.499151696 -0.0304812178 -0.499151696 -0.655090631 0.475990476 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 1.22029516577356920E-1 6.97160538558048340E-1 3.97731417445914650E-1 6.00019739208800920 2.00000000000000000E9 2.44034955394409670E-1 3.73350985510129000E-1 5.82545299649481410E-1 6.00078956835208110 3.00000000000000000E9 3.65992281414391130E-1 1.06430454557825050E-1 6.42814879525177040E-1 6.00177652879219800 4.00000000000000000E9 4.87877544837279590E-1 -9.69155972949636890E-2 6.43519718192936190E-1 6.00315827340834660 5.00000000000000000E9 6.09666923194363260E-1 -2.49450600814350180E-1 6.18811927554552810E-1 6.00493480220054730 END VAR Wafer_Lot = 1 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 0.0133409179 -0.230137244 0.840070938 -0.340315654 0.840070938 -0.340315654 -0.0617617486 -0.229382577 2e+009 -0.120955165 -0.40456472 0.604746033 -0.565976614 0.604746033 -0.565976614 -0.345621191 -0.270746041 3e+009 -0.289098146 -0.497222626 0.335340188 -0.637454262 0.335340188 -0.637454262 -0.596941273 -0.0943544823 4e+009 -0.445587328 -0.518605287 0.116142331 -0.593841291 0.116142331 -0.593841291 -0.70077353 0.192167183 5e+009 -0.568522019 -0.496734037 -0.026397422 -0.498328865 -0.026397422 -0.498328865 -0.660073231 0.471463342 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 1.71762793604862220E-1 6.97308317021682810E-1 3.02305313263392340E-1 6.9596391614503332 2.00000000000000000E9 3.43458465714362450E-1 4.15378270949377270E-1 4.48199090821574850E-1 6.9623162008013688 3.00000000000000000E9 5.15020130532548670E-1 1.85487069735727930E-1 5.06615547307641110E-1 6.9667779330530832 4.00000000000000000E9 6.86381371368581040E-1 5.35645741807940560E-3 5.20374575111159030E-1 6.9730243582054969 5.00000000000000000E9 8.57476469498637610E-1 -1.35072700985538610E-1 5.12375200485824140E-1 6.981055476258586 END VAR Wafer_Lot = 2 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 0.0261985778 -0.23292849 0.822455256 -0.341254054 0.822455256 -0.341254054 -0.0505770288 -0.23686219 2e+009 -0.112333318 -0.406095322 0.583604607 -0.563040028 0.583604607 -0.563040028 -0.340993754 -0.278957576 3e+009 -0.282374986 -0.494226554 0.314667444 -0.627999778 0.314667444 -0.627999778 -0.594911193 -0.0996720908 4e+009 -0.437476982 -0.511079142 0.0996827436 -0.579649532 0.0996827436 -0.579649532 -0.698293478 0.188345791 5e+009 -0.557310676 -0.486460159 -0.0377810523 -0.482462248 -0.0377810523 -0.482462248 -0.657181646 0.467271981 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 2.20723603091905400E-1 6.88702175738749210E-1 3.10193703295093660E-1 8.7252393655197622 2.00000000000000000E9 4.41304833276760710E-1 4.00100485663632010E-1 4.56013841018826490E-1 8.7307131145790162 3.00000000000000000E9 6.61602142031938460E-1 1.66985293710630910E-1 5.11697368308757120E-1 8.7398360296778144 4.00000000000000000E9 8.81475616395049320E-1 -1.39839699776407360E-2 5.22456153286954630E-1 8.75260811081613 5.00000000000000000E9 1.10078776413520350E0 -1.53929731170780970E-1 5.11924800755568120E-1 8.7690293579939471 END VAR Wafer_Lot = 3 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 -0.111624701 -0.405714686 0.66636886 -0.469619205 0.66636886 -0.469619205 -0.191986725 -0.329432821 2e+009 -0.41908962 -0.512855503 0.292032657 -0.563375528 0.292032657 -0.563375528 -0.569338122 -0.206257358 3e+009 -0.620672222 -0.472453429 0.0607572371 -0.47694961 0.0607572371 -0.47694961 -0.718017693 0.101776232 4e+009 -0.732902391 -0.404898014 -0.0522793425 -0.36498764 -0.0522793425 -0.36498764 -0.69113052 0.390569198 5e+009 -0.795560017 -0.34381194 -0.101065286 -0.269885315 -0.101065286 -0.269885315 -0.576309143 0.608680065 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 5.18703037517405720E-1 2.56297603514494640E-1 5.77469208317883620E-1 9.5231179096495424 2.00000000000000000E9 1.03556771684315740E0 -2.06911574434137120E-1 5.86373914380050380E-1 9.5447677385981624 3.00000000000000000E9 1.54881350043704070E0 -4.46640278565243860E-1 5.11094686752464700E-1 9.5808507868458594 4.00000000000000000E9 2.05677054388418230E0 -5.81970283235218930E-1 4.38893368283120290E-1 9.6313670543926495 5.00000000000000000E9 2.55792347993451760E0 -6.65702281631675600E-1 3.80285542816346120E-1 9.6963165412384953 END VAR Wafer_Lot = 4 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 -0.0997555774 -0.381004445 0.705619581 -0.459619141 0.705619581 -0.459619141 -0.188617047 -0.322113995 2e+009 -0.387429707 -0.50652345 0.338299265 -0.580037701 0.338299265 -0.580037701 -0.568533379 -0.21853959 3e+009 -0.59300033 -0.48258943 0.0913926446 -0.508488094 0.0913926446 -0.508488094 -0.734058749 0.0900874159 4e+009 -0.71385299 -0.421239785 -0.0364444847 -0.397584211 -0.0364444847 -0.397584211 -0.713634507 0.390775305 5e+009 -0.783429944 -0.361124669 -0.0944553209 -0.298630566 -0.0944553209 -0.298630566 -0.595965263 0.61920336 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 4.07278952069115260E-1 3.20981863953611680E-1 5.26706311842366580E-1 7.6643738931871832 2.00000000000000000E9 8.13665870677917270E-1 -1.24308690147576310E-1 5.64368849214357040E-1 7.6773474702487121 3.00000000000000000E9 1.21828615365247780E0 -3.71333282289684650E-1 5.08578990984615050E-1 7.6989700986845886 4.00000000000000000E9 1.62029912735584050E0 -5.17462235668050940E-1 4.46062394082844540E-1 7.7292417784948277 5.00000000000000000E9 2.01891277231332160E0 -6.10837572225724480E-1 3.92061347849876940E-1 7.7681625096794225 END VAR Wafer_Lot = 5 BEGIN ACDATA #AC( hz S ri R 50 ) % F n11x n11y n21x n21y n12x n12y n22x n22y 1e+009 -0.148708863 -0.411149613 0.661371247 -0.487106054 0.661371247 -0.487106054 -0.245385025 -0.343281312 2e+009 -0.459669272 -0.498617399 0.27661003 -0.561103773 0.27661003 -0.561103773 -0.633354256 -0.183147263 3e+009 -0.65008453 -0.447693986 0.054820678 -0.464075002 0.054820678 -0.464075002 -0.761781857 0.147962113 4e+009 -0.751951738 -0.378576048 -0.0489188832 -0.35214127 -0.0489188832 -0.35214127 -0.712725662 0.441632279 5e+009 -0.807697362 -0.319231466 -0.0924561924 -0.260818351 -0.0924561924 -0.260818351 -0.581417298 0.655785284 END BEGIN NDATA #AC( hz S ri R 1 ) % F NFMIN N11X N11Y RN 1.00000000000000000E9 4.82467789743262190E-1 2.28415357401098710E-1 5.09316970466515430E-1 7.1489835897047316 2.00000000000000000E9 9.63454968428843020E-1 -2.06744364689974120E-1 5.11947374976623950E-1 7.1696884038188884 3.00000000000000000E9 1.44152132366022330E0 -4.32828356211392770E-1 4.47558248165678220E-1 7.2041964273425005 4.00000000000000000E9 1.91530443304156290E0 -5.63042210953368820E-1 3.86155387977519470E-1 7.2525076602755627 5.00000000000000000E9 2.38355146947575140E0 -6.45263220258679840E-1 3.36048596462367750E-1 7.3146221026180545 END
P2D Format
The large-signal or power-dependent S-parameter (.p2d) file is a system input file you create from an S-parameter file, inserting the MDIF format. You use the . p2d file to characterize the component by a complete set of 2-port large-signal S-parameters, accounting for power dependence of S21, S11, S22, and S12, plus optional noise data, and optional intermodulation data.
A .p2d file can also be created via simulation by placing a P2D simulation component from the LSSP Simulation Library in the design.
It possible to have multi-dimensional P2D files with VAR statements separating individual basic P2D sections. Such files may be automatically generated using the AmplifierP2D_Setup component from the System-Data Models library.
The format for a basic P2D section is shown here. Required keywords appear in UPPERCASE ITALIC characters.
!!! Begin basic P2D syntax
BEGIN ACDATA !!! required 2-port S-parameter data block
..... ( Required small signal section identical to ACDATA section of S2D format )
..... ( Optional large signal section - shown in the next section )
END ACDATA
BEGIN NDATA !!! optional 2-port noise data block
....
END NDATA
BEGIN IMTDATA !!! optional intermodulation table
....
END IMTDATA
!!! End basic P2D syntax
This format can be expanded to form a multi-dimensional P2D file using VAR statements. For instance a single P2D file containing two temperature points over three bias points contains a total of six basic sections as shown. Note that each sequence of VAR statements should preserve the order of the sweep, in this case temperature over bias and each sweep variable, for example, bias has its values arranged in monotonically increasing order. In this example B1 < B2 < B3 and T1 < T2 . Required keywords appear in UPPERCASE ITALIC characters.
VAR temp=T1
VAR bias=B1
...... ( 1st Basic P2D section )
VAR temp=T1
VAR bias=B2
...... ( 2nd Basic P2D section )
VAR temp=T1
VAR bias=B3
...... ( 3rd Basic P2D section )
VAR temp=T2
VAR bias=B1
...... ( 4th Basic P2D section )
VAR temp=T2
VAR bias=B2
...... ( 5th Basic P2D section )
VAR temp=T2
VAR bias=B3
...... ( 6th Basic P2D section )
Guidelines for .p2d
- Basic MDIF syntax contains four reserved words. VAR begins an independent variable definition line, in the form VAR <name> = <value>. BEGIN <blockname> signals the beginning of a data block, and END signals the conclusion of a data block. A line beginning with REM or the comment symbol (!) will be assumed as comments.
- VAR statements are used to specify multidimensional data, that is, two or more independent variables. The value of a VAR statement can be a number.
- Multiple sets of data (ACDATA, NDATA, IMTDATA) can be used with VAR statements used before or after any dataset.
- The file dataset is made up of data blocks, each separated by BEGIN and END statements. Three different types of data blocks are allowed:
ACDATA
=
Lists small and large-signal parameters vs. frequency and power (required)
NDATA
=
Lists noise parameters vs. frequency (optional)
IMTDATA
=
Used for a 2-port frequency converter to give the single-tone intermodulation table (optional)
The ACDATA Block
The ACDATA block allows you to specify the small- and large-signal characteristics of the 2-port.
- General format:
BEGIN ACDATA
# AC ( ....... ) ! this is the option line
% .... ! this is a format line __
..... small-signal data goes here
% F ! this is a format line
... first large-signal data frequency
% P1 P2 ..... ! this is a format line
... large-signal data at first frequency
% F ! next large-signal frequency
... second large-signal data frequency
% P1 P2 ....
... large-signal data at second frequency
...
... additional sets of large- signal frequency and data
...
END - Option line:
# AC( unit parm_type parm_format R xx FC m b )
where:unit
=
Sets the frequency unit.
Options are HZ, KHZ, MHZ, or GHZ.parm_type
=
Only S-parameters are allowed; use S only.
parm_format
=
MA, DB, RI, VDB sets the format for the four network parameters, where:
MA declares magnitude and angle (degrees)
DB is for 20 • log10( MA) and angle (degrees)
RI declares real and imaginary
VDB declares n11 and n22 as VSWR and angle (degrees) and n21 and n12 as DB and angle (degrees)R xx
=
Declares resistance, where xx = normalization resistance.
FC m b
=
Declares input to output frequency conversion where
Fout = m • Fin + b ; where:
m is for frequency multiplication
b is for frequency translation - Small-signal format line:
% F n11x n11y n21x n21y n12x n12y n22x n22y
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line. The order of these keywords is arbitrary. The order shown is preferred.F
=
For frequency data
n11x, n11y
=
The 11 data pair for the 2 port data matrix
n21x, n21y
=
The 21 data pair
n12x, n12y
=
The 12 data pair
n22x, n22y
=
The 22 data pair
If the parameter type = S, and the parameter format = DB, then
n11x = |S11| in dB, and n11y = angle of S11 in degrees. - Large-signal format line:
% F
This line precedes the frequency for the following large-signal data.
% P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y
This line precedes the large-signal data. The large-signal data may have up to 101 sets of power data per frequency.
All of the keywords shown must be given in the format line. While the order of keywords is arbitrary, the order shown is preferred.In the following data, a value of 1000 (1.e3) for the P2 data indicates that the S22 and S12 data are for small-signal measurement.P1
=
The power (dBm) incident at port 1 with port 2 terminated in R ohms, for the measurement of S11 and S21
P2
=
The power (dBm) incident at port 2 with port 1 terminated in R ohms, for the measurement of S22 and S12
n11x, n11y
=
The 11 data pair for the 2 port data matrix
n21x, n21y
=
The 21 data pair
n12x, n12y
=
The 12 data pair
n22x, n22y
=
The 22 data pair
If the parameter type = S, and the parameter format = DB, then n11x = |S11| in dB, and n11y = angle of S11 in degrees.
ACDATA Block Examples
2-port with 50-ohm S-parameters:
BEGIN ACDATA # AC( GHZ S DB R 50 FC 1.0 0.0 ) % F n11x n11y n21x n21y n12x n12y n22x n22y ! RF-freq S11-db S11-deg S21-dB S21-deg S12-dB S12-deg S22-db S22-deg 1.0000 -15 45 8 25 -20 -15 -12 10 2.0000 -16 25 9 30 -20 -15 -12 20 3.0000 -17 -10 10 35 -20 -15 -11 30 % F 1.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.000 ... -5.000 5.000 ... large-signal S-parameter data here ... 5.020 15.000 ... % F 2.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.000 ... -5.000 5.000 ... large-signal S-parameter data here ... 5.020 15.000 ... END
2-port frequency converter with variable RF freq, variable LO freq, fixed IF freq, fixed LO power, and RF-to-IF 2-port 50-ohm S-parameters:
BEGIN ACDATA # AC( GHZ VDB R 50 FC 0 0.2 ) ! this gives a constant IF of 0.2 GHz % F n11x n11y n21x n21y n12x n12y n22x n22y ! RF-freq S11-vswr S11-deg S21-dB S21-deg S12-dB S12-deg S22-vswr S22-deg 1.0000 1.2 0 -8 0 -20 0 1.3 0 2.0000 1.3 0 -9 0 -20 0 1.2 0 3.0000 1.4 0 -10 0 -20 0 1.3 0 % F 1.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.00 ... -5.000 5.00 ... large-signal S-parameter data here ... 5.020 15.00 ... % F 2.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.00 ... -5.000 5.00 ... large-signal S-parameter data here ... 5.020 15.00 ... END
2-port frequency converter with variable RF freq, fixed LO freq, variable IF freq, fixed LO power, and RF-to-IF 2 port 50-ohm S-parameters:
BEGIN ACDATA # AC( GHZ DB R 50 FC -1 4 ) ! this gives an IF = 4 - RF % F n11x n11y n21x n21y n12x n12y n22x n22y ! RF-freq S11-dB S11-deg S21-dB S21-dB S12-dB S12-deg S22-dB S22-deg 1.0000 -12 0 -8 0 -20 0 -13 0 2.0000 -13 0 -9 0 -20 0 -12 0 3.0000 -14 0 -10 0 -20 0 -13 0 % F 1000.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.00 ... -5.000 5.00 ... large-signal S-parameter data here ... 5.020 15.00 ... % F 2000.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.000 -5.00 ... -5.000 5.00 ... large-signal S-parameter data here ... 5.020 15.00 ... END
The NDATA Block
The NDATA block allows the user to specify the small-signal noise characteristics of the 2-port.
- General format:
BEGIN NDATA
# AC ( ....... ) ! this is the option line
% .... ! this is the format line
..... data goes here
END - Option line:
# AC( freq_unit parm_type parm_format R xx )
where:freq_unit
=
Sets the frequency unit.
Options are HZ, KHZ, MHZ, or GHZ.parm_type
=
S sets the source noise match type to optimum source reflection coefficient.
parm_format
=
MA, DB, RI sets the format for the optimum source match, where:
MA declares magnitude and angle (degrees)
DB declares 20 • log10( MA) and angle (degrees)
RI declares real and imaginaryR xx
=
Declares resistance, where xx = normalization resistance for the source match and rn.
- Format line:
% F nfmin n11x n11y rn
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line. While the order of keywords is arbitrary, the order shown is preferredF
=
For frequency data
nfmin
=
For minimum noise figure data
n11x, n11y
=
For the optimum source impedance for minimum noise figure
rn
=
For the equivalent input normalized noise resistance. The system simulator requires this parameter to meet physical requirements. If the user-supplied rn value is less than allowed for this requirement, then the system simulator will force this rn value to the lowest physical limit.
The IMTDATA Block
The IMTDATA data block allows you to specify for a 2-port frequency converter the single tone output intermodulation levels with respect to the fundamental output tone.
- General format:
BEGIN
reference_signal_power reference_LO_power
....... IMT data goes here
END
This data is given for specific LO and RF input power levels. However, during a system simulator spurious signal analysis, the data is adjusted for the actual converter input signal and LO power levels. - Example
In the IMT table:
BEGIN IMTDATA ! Intermodulation table for double balanced mixer #1 ! Reference Signal Level (dBm) Reference LO Level (dBm) # -10 7 ! M x LO (Horizontal) N x Signal (Vertical) % 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ! 99 26 35 39 50 41 53 49 51 45 65 55 75 65 85 99 24 0 35 13 40 24 45 28 49 35 55 45 65 55 99 73 73 74 70 71 64 69 64 69 65 75 75 85 99 67 64 69 50 77 47 74 44 74 45 75 55 99 86 90 86 88 88 85 86 85 90 85 85 99 90 80 90 71 90 68 90 65 88 65 99 90 90 90 90 90 90 90 90 90 99 90 90 90 90 90 87 90 90 99 99 95 99 95 99 95 99 99 90 95 90 95 90 99 99 99 99 99 99 99 99 90 99 99 99 99 99 99 99 99 99 99 99 99 99 99 END
- The vertical row number, N, (0, 1, to 15) indicates the harmonic of the signal used in deriving the spurious output signal.
- The horizontal column number, M, (0, 1, to 15) indicates the harmonic of the local oscillator used in deriving the spurious output signal.
- In row 2, column 4, the data is 13. This means that for an input signal at -10 dBm input, with an LO drive of +7dBm, an output spurious signal will occur at 3*LO + 1*signal, with a level that is 13 dB below the fundamental output signal.
- If the input signal differs from the -10 dBm reference power level listed at the top of the table by X dB, then the number in the table is adjusted by adding (N-1)•X dB to it. This manner of adjustment is good for input power levels up to 5 dB greater than the reference signal power.
- If the local oscillator signal differs from the +7 dBm reference power level listed at the top of the table by X dB, then the number in the table is adjusted by adding it by M•X dB to it. This manner of adjustment is good for local oscillator power levels from the reference level minus 10 dB to the reference level plus 3 dB.
- The data values must fall in the range of 0 to 99. Numbers outside this range will cause an error.
- The "#IMT ( )" is optional. Signal and LO reference power levels can be listed without this.
- IMT data can be in square or triangular format.
Example .p2d File
! ------------------------------------------------------------------ ! ampp2d.p2d ! ------------------------------------------------------------------ ! This is a sample P2D data file containing an ACDATA block, ! an NDATA block, and an IMTDATA block. ! ------------------------------------------------------------------ ! BEGIN ACDATA ! This line and all lines starting with the comment (!) character ! are ignored. Do not have a blank line or comments as the first ! line in this file. In a P2D file ACDATA is a required block of ! data. It may have one or two sections. ! (a) Required - ! Full 2-port small signal S-parameters vs frequency ! (b) Optional - ! Full 2-port large signal S-parameters vs (frequency X power) ! The small signal data must precede the large signal data in this block. # AC( GHZ S RI R 50.0 FC 1. 0. ) ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! Optional Selection: S, Z, Y, H, or G; Default is S ! Optional Selection: MA, DB, or RI; Default is RI ! Optional Selection: R xx; ! where xx=reference resistance; ! Default R 50.0 ! Optional Selection: FC x1 x2 is for frequency conversion: ! Fout=x1*Fin + x2 ! Default is Fout = Fin % F n11x n11y n21x n21y n12x n12y n22x n22y ! The above line is the format line showing the order ! in the following data lines ! The columns of data can be in any order 1.0000 0.3926 -0.1211 -0.0003 -0.0021 -0.0003 -0.0021 0.3926 -0.1211 2.0000 0.3517 -0.3054 -0.0096 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 3.0000 0.0430 -0.5916 -2.6933 -0.1433 -0.5933 -0.1433 0.0430 -0.5916 4.0000 0.4071 -0.2756 2.4617 0.6234 0.3617 0.4234 0.4071 -0.2756 5.0000 0.2041 0.2880 2.6848 -0.5367 0.3848 -0.4367 0.2041 0.2880 6.0000 0.5666 0.0343 2.0383 -0.7437 0.0383 -0.7437 0.5666 0.0343 7.0000 0.0430 0.6916 -2.6933 0.1433 -0.6933 0.1433 0.0430 0.6916 8.0000 0.3059 0.5659 -0.1000 0.1424 -0.1000 0.1424 0.3059 0.5659 9.0000 0.3071 0.4145 -0.0307 0.0673 -0.0307 0.0673 0.3071 0.4145 10.0000 0.3419 0.3336 -0.0134 0.0379 -0.0134 0.0379 0.3419 0.3336 ! This is the end of the small signal ACDATA section ! ! This is the beginning of the large signal ACDATA section % F 1.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.00 -25.00 0.3926 -0.1211 -0.0003 -0.0021 -0.0003 -0.0021 0.3926 -0.1211 -10.00 -20.00 0.3826 -0.1221 -0.0004 -0.0022 -0.0003 -0.0021 0.3926 -0.1211 -5.00 -15.00 0.3726 -0.1231 -0.0007 -0.0029 -0.0003 -0.0021 0.3926 -0.1211 0.00 -10.00 0.3856 -0.1245 -0.0010 -0.0129 -0.0003 -0.0021 0.3926 -0.1211 % F 2.00 % P1 P2 n11x n11y n21x n21y n12x n12y n22x n22y -15.00 -25.00 0.3517 -0.3054 -0.0096 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 -10.00 -20.00 0.3517 -0.3154 -0.0098 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 -5.00 -15.00 0.3517 -0.3254 -0.0104 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 0.00 -10.00 0.3517 -0.3354 -0.0106 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 ! ... (more frequencies and power sweeps under each frequency may be added) ! This is the end of the small signal ACDATA section END BEGIN NDATA ! This is an optional block of data # AC( GHZ RI S R 50.0 ) ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! Optional Selection: S, Z, Y, H, or G; Default is S ! Optional Selection: MA, DB, or RI; Default is RI ! Optional Selection: R xx; where xx = reference resistance; ! Default R 50.0 % F nfmin n11x n11y rn ! The above line is the format line showing the order ! in the following data lines ! The columns of data can be in any order 1.0000 2.0000 0.3926 -0.1211 .4 2.0000 2.5000 0.3517 -0.3054 .45 3.0000 3.0000 0.0430 -0.5916 .5 4.0000 3.5000 0.4071 -0.2756 .55 5.0000 4.0000 0.2041 0.2880 .6 6.0000 4.5000 0.5666 0.0343 .65 7.0000 5.0000 0.0430 0.6916 .7 8.0000 5.5000 0.3059 0.5659 .75 9.0000 6.0000 0.3071 0.4145 .8 10.0000 6.5000 0.3419 0.3336 .85 END BEGIN IMTDATA ! This is an optional block and may be used ! some mixer component if the file ! format is supported. ! Intermodulation table for double balanced mixer #1 ! Signal Level (dBm) LO Level (dBm) # -10 7 ! M x LO ( Horizontal ) N x Signal (Vertical ) ! 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ! 99 26 35 39 50 41 53 49 51 42 62 51 60 47 77 50 24 0 35 13 40 24 45 28 49 33 53 42 60 47 63 73 73 74 70 71 64 69 64 69 62 74 62 72 60 67 64 69 50 77 47 74 44 74 47 75 44 70 86 90 86 88 88 85 86 85 90 85 85 85 90 80 90 71 90 68 90 65 88 65 85 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 87 90 90 90 99 95 99 95 99 95 99 95 90 95 90 90 90 99 90 99 99 99 99 99 99 90 99 90 95 90 99 99 99 99 90 99 90 99 99 99 END ! ! ------------------------------------------------------------------
S2D Format
The S-parameter Data (.s2d ) file is a system input file you create from an S-parameter file, inserting the MDIF format. In the .s2d file, you describe small-signal data, optional noise data, optional nonlinear data, and optional intermodulation data. You can describe nonlinearity as a function of drive power or nonlinear parameter consisting of some combination of third-order intercept point, 1dB gain compression, saturated output power, and gain compression at saturation. In ADS, it possible to have multidimensional S2D files with VAR statements separating individual basic S2D sections. Such files may be automatically generated using the AmplifierS2D_Setup component from the System-Data Models library.
The format for a basic S2D section is shown here. Required keywords appear in UPPERCASE ITALIC characters.
!!! Begin basic S2D syntax
BEGIN ACDATA !!! optional small-signal data block
....
END ACDATA
BEGIN GCOMPx !!! required compression information x=(1,...,7)
!!! only one type of GCOMPx supported in one S2D file
....
END GCOMPx
BEGIN NDATA !!! optional 2-port noise data block
....
END NDATA
BEGIN IMTDATA !!! optional intermodulation table
....
END IMTDATA
!!! End basic S2D syntax
This format can be expanded to form a multi-dimensional S2D file using VAR statements in ADS. For instance a single S2D file containing two temperature points over three bias points contains a total of six basic sections as shown. Note that each sequence of VAR statements should preserve the order of the sweep, in this case, temperature over bias and each sweep variable. For example, bias has its values arranged in monotonically increasing order. In this example B1 < B2 < B3 and T1 < T2. Required keywords appear in UPPERCASE ITALIC characters:
VAR temp=T1
VAR bias=B1
...... ( 1st basic S2D section )
VAR temp=T1
VAR bias=B2
...... ( 2nd basic S2D section )
VAR temp=T1
VAR bias=B3
...... ( 3rd basic S2D section )
VAR temp=T2
VAR bias=B1
...... ( 4th basic S2D section )
VAR temp=T2
VAR bias=B2
...... ( 5th basic S2D section )
VAR temp=T2
VAR bias=B3
...... ( 6th basic S2D section )
Guidelines for .s2d
- Basic MDIF syntax contains four reserved words:
- VAR begins an independent variable definition line, in the form VAR <name> = <value>.
- BEGIN <blockname> signals the beginning of a data block.
- END signals the conclusion of a data block.
- REM or the comment symbol (!) at the beginning of a line signifies a comment.
- VAR statements are used to specify multidimensional data, that is, two or more independent variables. The value of a VAR statement can be a number.
- Comments can be inserted on any line within the file and must be preceded by a comment symbol (!).
- Multiple sets of data (ACDATA, NDATA, GCOMP, IMTDATA) can be used with VAR statements before or after any dataset. Note that only one type of GCOMP block can be used in a single S2D file, for instance do not create an S2D file containing one GCOMP3 and one GCOMP5 block.
- Each block of ACDATA, NDATA, GCOMPx can be headed by an option line such as #ACDATA ( MHz S RI R 50 ) to allow scaling and type definition for the network and its parameters.
- The file dataset is made up of data blocks, each separated by BEGIN and END statements. The following ten different types of data blocks are allowed:
ACDATA
Lists small-signal network parameters vs. frequency (required)
NDATA
Lists noise parameters vs. frequency (optional)
GCOMP1
Lists output 3rd order intercept (IP3) (optional)
GCOMP2
Lists output 1dB gain compression power (IDBC) (optional)
GCOMP3
Lists output IP3 and 1DBC (optional)
GCOMP4
Lists output IP3 and output saturation power (PS) and gain compression at saturation (GCS) (optional)
GCOMP5
Lists output 1DBC, PS, and GCS (optional)
GCOMP6
Lists output IP3, 1DBC, PS, and GCS (optional)
GCOMP7
Lists S21 as a function of input power at a single frequency (optional)
IMTDATA
Used for a 2-port frequency converter to give the single-tone intermodulation table (optional)
- One or more spaces or tabs separate entries on a line. Names can be mixed case-the file reader will store them as lowercase.
- Multi-dimensional IMT tables are not supported. Only one IMT table may be present in a single S2D if necessary.
The ACDATA Block
The ACDATA block allows you to specify the small-signal characteristics of the 2-port.
- General format:
BEGIN ACDATA
# AC ( ....... ) ! this is the option line
% .... ! this is the format line
..... data goes here
END - Option line syntax:
# AC( freq-unit parm-type parm-format R xx FC m b )
where:freq-unit
=
Sets the frequency units.
Options are: HZ, KHZ, MHZ, GHZ.parm-type
=
Sets the 2-port network parameter option
using S, Z, Y, H, or G.parm-format
=
Sets the format for the four network parameters using
MA, DB, RI, VDB, where:
MA declares magnitude and angle (degrees)
DB is 20• log10(MA) and angle (degrees)
RI declares real and imaginary
VDB declares n11 and n22 as VSWR and angle (degrees) and n12 and n21 as DB and angle (degrees)R xx
=
Declares resistance, where xx = normalization resistance
FC m b
=
Declares input to output frequency conversion such that
Fout = m•Fin + b where:
m is for frequency multiplication
b is for frequency translation - Example:
#AC (MHZ S MA R 50 FC 0 30)
would set the frequency units to MHZ, 2-port parameters to S, 2-port parameter format to magnitude and angle, reference resistance to 50 ohms, frequency conversion to 30 MHZ of constant output frequency.FC 1 0
Sets the output frequency equal to the input frequency
( Fout = 1 • Fin + 0 )FC -1 30
Sets the output frequency to 30 minus the input frequency
( Fout = -1 • Fin + 30 ) - Format line:
% F n11x n11y n21x n21y n12x n12y n22x n22y
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line. While the order of keywords is arbitrary, the order shown is preferred.where these data pairs belong to the 2-port characterization matrix:F
=
Frequency data column
n11x, n11y
=
The 11 data pair for the 2 port data matrix
n21x, n21y
=
The 21 data pair
n12x, n12y
=
The 12 data pair
n22x, n22y
=
The 22 data pair
- Examples
The following examples illustrate the ACDATA block with various data options:
2-port with 50-ohm S-parameters:2-port frequency converter with variable RF freq, fixed LO freq, variable IF freq, fixed LO power, and RF-to-IF 2-port 50-ohm S-parameters:BEGIN ACDATA # AC ( GHZ S DB R 50 FC 1 0 ) % F n11x n11y n21x n21y n12x n12y n22x n22y ! RF-freq S11-db S11-deg S21-dB S21-deg S12-dB S12-deg S22-db S22-deg 1.0000 -15 45 -8 25 -20 -15 -12 10 2.0000 -16 25 -9 30 -20 -15 -12 20 3.0000 -17 -10 -10 35 -20 -15 -11 30 END
BEGIN ACDATA # AC( GHZ S DB R 50 FC -1 4 ) ! this gives an ! IF = 4 - RF % F n11x n11y n21x n21y n12x n12y n22x n22y ! RF-freq S11-dB S11-deg S21-dB S21-dB S12-dB S12-deg S22-dB S22-deg 1.0000 -12 0 -8 0 -20 0 -13 0 2.0000 -13 0 -9 0 -20 0 -12 0 3.0000 -14 0 -10 0 -20 0 -13 0 END
The NDATA Block
The NDATA block allows you to specify the small-signal noise characteristics of the 2-port.
- General format:
BEGIN NDATA
# AC ( ....... ) ! this is the option line
% .... ! this is the format line
..... data goes here
END - Option line syntax:
# AC( freq-unit parm-type parm-format R xx )
where:freq-unit
=
HZ, KHZ, MHZ, or GHZ sets the frequency units.
parm-type
=
S only, source reflection coefficient.
parm-format
=
MA, DB, RI sets the format for optimum source match, where:
MA declares magnitude and angle (degrees)
DB declares 20 • log10( MA) and angle (degrees)
RI declares real and imaginaryR xx
=
Declares resistance where xx = normalization resistance for the source match and noise resistance.
- Format line syntax:
% F nfmin n11x n11y rn
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line. While the order of keywords is arbitrary, the order shown is preferred.For more information on noise figure, see S-Parameter Simulation Noise Analysis.F
=
Frequency data column.
nfmin
=
For minimum noise figure data.
n11x, n11y
=
For the optimum source reflection coefficient for minimum noise figure.
rn
=
For the equivalent normalized input noise resistance of the 2-port. The system simulator requires this parameter to meet physical requirements. If the user-supplied rn value is less than allowed for this requirement, then the system simulator will force this rn value to the lowest physical limit.
The following is an example of the NDATA block:BEGIN NDATA # ACDATA ( GHz S RI R 50 ) % F nfmin n11x n11y rn 1.0000 2.0000 -0.1211 -0.0003 .4 2.0000 2.5000 -0.3054 -0.0096 .45 3.0000 3.0000 -0.6916 -0.6933 .5 END
Understanding GCOMP Data
There are seven mutually exclusive formats for expressing large signal response in an S2D file, each corresponding to one type of GCOMP block. GCOMP stands for gain compression, indicating that only forward transmission behavior of the device under large signal conditions is captured here. Each GCOMP section may optionally contain multiple profiles, each at a different gain compression frequency. Various nonlinear device models refer to these frequencies as GCFreq or GainCompFreq.
GCOMP1 through GCOMP6 use parametric specifications whereas GCOMP7 uses a data-based profile. As such, the first six types of GCOMP blocks are restricted in the modeling capability of nonlinear behavior whereas GCOMP7 can represent any arbitrary response including gain expansion regions.
GCOMP1 through GCOMP6 use various combinations of the following four standard measures of nonlinear behavior, all referenced to the abscissa of an output (dBm) versus input power (dBm) plot in:
- IP3 - Third order intercept point in dBm, usually referenced to output power axis. This is a theoretical point where the power of the fundamental at the output of the nonlinear device would have equalled that of the third harmonic if there were no expansion or compression effects at high input drives.
- 1DBC - 1 dB compression point in dBm, usually referenced to output power axis. This parameter marks the onset of nonlinear behavior and refers to the point where actual output power at the fundamental tone is 1 dB below the predicted linear output power.
- PS - Power at saturation in dBm refers to the maximum possible output power at fundamental frequency under normal operating conditions, that is, prior to breakdown due to high input drive.
- GCS - Gain compression at saturation in dB, refers to the amount of compression with respect to linear behavior at the onset of saturation of the output fundamental frequency.
System level components that can interpret S2D profiles use an odd-order polynomial fitting to emulate narrow-band nonlinear behavior based on GCOMP information. The amount of compression information available for polynomial fitting depends on the GCOMP convention as follows:
- GCOMP1 and GCOMP2 each enable the modeling of 3rd order nonlinear behavior.
- GCOMP3 is modelled using a 5th order polynomial.
- GCOMP5 and GCOMP5 require a 7th order polynomial.
- GCOMP6 includes all four parameters and requires 9th order polynomial fitting.
- GCOMP7 fits to 3rd through 7th (odd) orders if 3-7 data points are specified. If more than seven data points are specified, it performs a 9th order polynomial fitting of the nonlinearity.
The following seven sections show the format for each GCOMP type. Note that each type of block can have an multiple sections each delineated by an optional compression frequency line as shown in the following generic example. Required keywords appear in UPPERCASE ITALIC characters:
BEGIN GCOMPx
% F
comp_freq_A
% ( option line for block-type x )
.... ( data for block-type x at fundamental output frequency A )
% F
comp_freq_B
% ( option line for block-type x )
.... ( data for block-type x at fundamental output frequency B )
......
% F
comp_freq_F
% ( option line for block-type x )
.... ( data for block-type x at fundamental output frequency F )
END GCOMPx
The GCOMP1 Block
The GCOMP1 data block for the .s2d data file allows you to specify the 2-port 3rd order output intercept (IP3). No option line is used.
- General format:
BEGIN GCOMP1
% IP3 ! this is the format line, required
..... data goes here
END - Format line (required):
% IP3 - Example:
BEGIN GCOMP1 % IP3 25 ! this sets the output IP3 to 25 dBm END
The GCOMP2 Block
The GCOMP2 data block for the .s2d data file allows you to specify the 2-port output power at 1 dB gain compression. No option line is used.
- General format:
BEGIN GCOMP2
% 1DBC ! this is the format line, required .
..... data goes here
END - Format line (required):
% 1DBC - Example:
BEGIN GCOMP2 % 1DBC 15 ! this sets the output power for 1 dB gain ! compression at 15 dBm END
The GCOMP3 Block
The GCOMP3 data block for the .s2d data file allows you to specify the 2-port output IP3 and 1DBC simultaneously. No option line is used.
- General format:
BEGIN GCOMP3
% 1DBC IP3 ! this is the format line
..... data goes here
END - Format line:
% 1DBC IP3
This line gives the order for the data in lines to follow. All keywords shown must be given in the format line; keyword order is arbitrary. - Example:
BEGIN GCOMP3 ! includes IP3 and 1DBC % IP3 1DBC 25 15 END
The GCOMP4 Block
The GCOMP4 data block for the .s2d data file allows you to specify the 2-port output IP3, output power at saturation (PS), and the gain compression at saturation (GCS). No option line is used.
- General format:
BEGIN GCOMP4
% IP3 PS GCS ! this is the format line
..... data goes here
END - Format line syntax:
% IP3 PS GCS
This line gives the order for the data in the lines to follow. All keywords shown must be given in the format line; keyword order is arbitrary. - Example:
BEGIN GCOMP4 ! output 3rd order intercept occurs at 25 dBm % IP3 PS GCS ! output saturation occurs at 20 dBm 25 20 5 ! with 5 dB of gain compression END
The GCOMP5 Block
The GCOMP5 data block for the .s2d data file allows you to specify the 2-port output 1DBC, output power at saturation (PS), and the gain compression at saturation (GCS). No option line is used.
- General format:
BEGIN GCOMP5
% 1DBC PS GCS ! this is the format line
..... data goes here
END - Format line syntax:
% 1DBC PS GCS
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line; keyword order is arbitrary. - Example:
BEGIN GCOMP5 ! output 1 dB gain compression occurs at 15 dBm % 1DBC PS GCS ! output saturation occurs at 20 15 20 5 ! dBm with 5 dB of gain compression END
The GCOMP6 Block
The GCOMP6 data block for the .s2d data file allows you to specify the 2-port output IP3, 1DBC, output power at saturation (PS), and the gain compression at saturation (GCS). No option line is used.
- General format:
BEGIN GCOMP6
% IP3 1DBC PS GCS ! this is the format line
..... data goes here
END - Format line:
% IP3 1DBC PS GCS
This line gives the order for the data in the lines to follow. All of the keywords shown must be given in the format line; keyword order is arbitrary. - Example:
BEGIN GCOMP6 ! output 3rd order intercept ! occurs at 25 dBm % IP3 1DBC PS GCS ! output 1 dB gain compression ! occurs at 15 dBm 25 15 20 5 ! output saturation occurs ! at 20 dBm with 5 dB of gain compression. END
The GCOMP7 Block
The GCOMP7 data block for the . s2d data file enables you to specify the input-to-output gain compression characteristic by listing the differential dB gain and differential phase as a function of input power in tabular form.
The S2D file format allows gain compression data at multiple frequencies to be specified in the GCOMP7 block. Note, however, that the AmplifierS2D component – with which many S2D files are later associated – cannot interpolate between gain compression data at different frequencies but uses a fixed frequency specified by the parameter GCfreq . If the compression behavior is to hold true at multiple frequencies, separate GCOMP7 blocks must be defined for each indexing frequency within the same .s2d data file.
It is important to note that the values of S21x and S21y contained in the GCOMP7 section are not the absolute S-parameter responses of the system at the relevant input power. They are differences with respect to the small signal values recorded in the ACDATA section at the same frequency. For instance, if the small signal S21 response at frequency F is polar(ss21mag, ss21deg), and the actual large signal S21 at power PinX at the same frequency F is polar(ls21mag, ls21deg), then the GCOMP7 entry for PinX will register the value of polar(ds21mag, ds21deg) where:
ds21mag = 10**(20*log10(ls21mag/ss21mag)/20) = ls21mag/ss21mag
ds21deg = ls21deg - ss21deg
Please note that regardless of the final format in which the small signal S-parameters [ssijmag, ssijdeg] or the [ds21mag, ds21deg] pairs are expressed in the data file, the dB domain differential definition of the GCOMP7 sections S21 values always holds as mentioned above. Caution must be employed when manually generating or interpreting the contents of the GCOMP7 section and all variables converted to dB domain before numerically adding / subtracting to compute the actual S21values at PinX power.
- General format:
BEGIN GCOMP7
# AC ( ....... ) ! this is the option line
% ....! this is format line 1
..... frequency goes here
% ....! this is format line 2
..... data goes here
END - Option line syntax:
# AC( freq-dim parm-type power-nit parm_format R xx )
where:freq-dim
=
Sets the frequency units.
Options are HZ, KHZ, MHZ, or GHZ.parm-type
=
S only.
power_dim
=
DBM only.
parm_format
=
Sets the format for S21 using MA, DB, RI, where:
MA declares magnitude and angle (degrees)
DB declares 20 • log10( MA) and angle (degrees)
RI declares real and imaginaryR xx
=
Declares resistance, where xx = reference resistance for S-parameters.
- Format line:
There are two format lines:
% F format line 1
% PIN n21x, n21y format line 2
where:These lines give the order for the data in the lines to follow. All of the keywords shown must be given in the format line. The order of these keywords is arbitrary.F
=
Indicates that the following data point is the frequency (only one frequency can be specified).
PIN
=
The input power.
n21x, n21y
=
The S21 dB-differential data pair which may be expressed in DB, MA, or RI formats (default is RI).
- Example:
BEGIN GCOMP7 # AC( GHZ S DBM DB R 50.0 ) ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! Optional Selection: S only; Default is S ! Optional Selection: DBM only; Default is DBM ! Optional Selection: MA, DB, or RI; Default is RI ! Optional Selection: R xx; ! where xx = reference resistance; ! Default R 50.0 ! The S2D file format allows gain compression data at ! multiple frequencies to be specified in the GCOMP7 block. ! Note, however, that the AmplifierS2D component - with which ! many S2D files are later associated - cannot interpolate ! between gain compression data at different frequencies but ! uses a fixed frequency specified by the parameter GCfreq. % F 5. % PIN N21x N21y 0.0 0.000 0.000 2.0 -0.012 0.173 4.0 -0.027 0.399 6.0 -0.046 0.697 8.0 -0.074 1.162 10.0 -0.116 1.988 12.0 -0.186 2.996 14.0 -0.397 3.754 16.0 -0.904 3.729 18.0 -1.718 3.585 20.0 -2.856 4.337 END
Complete .s2d File Example
! ------------------------------------------------------------------- ! amps2d.s2d ! ------------------------------------------------------------------- ! This is a sample S2D data file containing an activated ACDATA block, ! an activated NDATA block and examples of all seven types of GCOMPx ! blocks, of which, only the GCOMP1 block is activated. A functional ! S2D file should contain only one type of GCOMPx block. An S2D file ! may also contain an IMTDATA block. For details see documentation ! on IMT data files. ! ------------------------------------------------------------------- ! BEGIN ACDATA ! This line and all lines starting with a comment (!) character are ! ignored. Do not have a blank line, or comments as the first line in ! this file. ACDATA is an optional block of data for an S2D file. ! However, some components such as AmplifierS2D require the existence ! of this block. ! The following is the OPTION line # AC( GHZ S RI R 50.0 FC 1. 0. ) ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! Optional Selection: S, Z, Y, H, or G; Default is S ! Optional Selection: MA, DB, or RI; Default is RI ! Optional Selection: R xx; ! where xx = reference resistance; ! Default R 50.0 ! Optional Selection: FC x1 x2 is for frequency conversion: ! Fout=x1*Fin + x2 ! Default is Fout = Fin % F n11x n11y n21x n21y n12x n12y n22x n22y ! The above line is the format line showing the order in the ! following data lines ! The columns of data can be in any order 1.0000 0.3926 -0.1211 -0.0003 -0.0021 -0.0003 -0.0021 0.3926 -0.1211 2.0000 0.3517 -0.3054 -0.0096 -0.0298 -0.0096 -0.0298 0.3517 -0.3054 3.0000 0.0430 -0.5916 -2.6933 -0.1433 -0.5933 -0.1433 0.0430 -0.5916 4.0000 0.4071 -0.2756 2.4617 0.6234 0.3617 0.4234 0.4071 -0.2756 5.0000 0.2041 0.2880 2.6848 -0.5367 0.3848 -0.4367 0.2041 0.2880 6.0000 0.5666 0.0343 2.0383 -0.7437 0.0383 -0.7437 0.5666 0.0343 7.0000 0.0430 0.6916 -2.6933 0.1433 -0.6933 0.1433 0.0430 0.6916 8.0000 0.3059 0.5659 -0.1000 0.1424 -0.1000 0.1424 0.3059 0.5659 9.0000 0.3071 0.4145 -0.0307 0.0673 -0.0307 0.0673 0.3071 0.4145 10.0000 0.3419 0.3336 -0.0134 0.0379 -0.0134 0.0379 0.3419 0.3336 END BEGIN NDATA ! This is an optional block of data # AC( GHZ RI S R 50.0 ) ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! Optional Selection: S, Z, Y, H, or G; Default is S ! Optional Selection: MA, DB, or RI; Default is RI ! Optional Selection: R xx; ! where xx = reference resistance; ! Default R 50.0 % F nfmin n11x n11y rn ! The above line is the format line showing the order in the ! following data lines. ! The columns of data can be in any order 1.0000 2.0000 0.3926 -0.1211 .4 2.0000 2.5000 0.3517 -0.3054 .45 3.0000 3.0000 0.0430 -0.5916 .5 4.0000 3.5000 0.4071 -0.2756 .55 5.0000 4.0000 0.2041 0.2880 .6 6.0000 4.5000 0.5666 0.0343 .65 7.0000 5.0000 0.0430 0.6916 .7 8.0000 5.5000 0.3059 0.5659 .75 9.0000 6.0000 0.3071 0.4145 .8 10.0000 6.5000 0.3419 0.3336 .85 END ! In place of a GCOMP1 block of data there can be either of the ! following blocks: ! GCOMP2, GCOMP3, GCOMP4, GCOMP5, GCOMP6, GCOMP7 ! An example of each of these are given below and only GCOMP1 ! is activated for this sample file. BEGIN GCOMP1 % IP3 25 END ! BEGIN GCOMP2 ! % 1DBC ! 15 ! END ! BEGIN GCOMP3 ! % IP3 1DBC ! 25 15 ! END ! BEGIN GCOMP4 ! % IP3 PS GCS ! 25 25 5 ! END ! BEGIN GCOMP5 ! % 1DBC PS GCS ! 15 25 5 ! END ! BEGIN GCOMP6 ! % IP3 1DBC PS GCS ! 30 20 25 8 ! END ! BEGIN GCOMP7 ! # AC( GHZ S DBM DB R 50.0 ) ! ! Optional Selection: HZ, KHZ, MKZ, or GHZ; Default is GHZ ! ! Optional Selection: S only; Default is S ! ! Optional Selection: DBM only; Default is DBM ! ! Optional Selection: MA, DB, or RI; Default is RI ! ! Optional Selection: R xx; where xx = reference resistance; ! ! Default R 50.0 ! ! The S2D file format allows gain compression data at multiple ! ! frequencies to be specified in the GCOMP7 block. Note, however, ! ! that the Amplifier2 and AmplifierS2D components cannot interpolate ! ! between gain compression data at different frequencies but uses ! ! a fixed frequency specified by the parameter GCfreq. ! % F ! 5. ! % PIN N21x N21y ! 0.0 0.000 0.000 ! 2.0 -0.012 0.173 ! 4.0 -0.027 0.399 ! 6.0 -0.046 0.697 ! 8.0 -0.074 1.162 ! 10.0 -0.116 1.988 ! 12.0 -0.186 2.996 ! 14.0 -0.397 3.754 ! 16.0 -0.904 3.729 ! 18.0 -1.718 3.585 ! 20.0 -2.856 4.337 ! END ! ! -------------------------------------------------------------------
IMT Format
Intermodulation table (IMT) data is used to represent the behavior of mixers and frequency translators. Three distinct types of IMT formats are supported in ADS. See the following sections for descriptions and examples:
O-Type IMT Format
Standard spur tables for mixers are defined in this format which allows only single side banded (SSB), single-RF, single-LO mixing specification of IF voltage strengths in dB (relative to IF fundamental) or dBm (absolute value). Such files contain only a single IMT matrix preceded by an option line containing reference values of RF and LO signal strengths. O-type IMT files do not contain any information regarding actual RF or LO frequencies, and therefore, may be used to characterize a generic mixing process. Each column of the table represents mixing due to one of the N harmonics of the LO tone and each row represents mixing one of the M harmonics of the RF tone.
Example O-Type IM Table
In the following O-type IM table, five LO harmonics are mixed with three RF harmonics. All values are non-negative and the IF fundamental strength is 0 dB. This indicates that all the spurs are suppressed with respect to the IF fundamental by the specified value. Thus, the IM products for 3*RFfreq + 2*LOfreq and 3*RFfreq - 2*LOfreq are both suppressed by 69 dB below the strength of the IF fundamental when reference RF and LO powers at mixer inputs are -10 dBm and +7 dBm respectively. There is no specific distinction between sum and difference products, and the table contains no information about IF phase.
! O-type IMT file BEGIN IMTDATA ! Option line for reference power at: ! RF = -10 dBm, LO = +7 dBm # IMT ( -10 7 ) ! Format line for LO-side harmonics % 0 1 2 3 4 5 99 26 35 39 50 41 24 0 35 13 40 24 73 73 74 70 71 64 67 64 69 50 77 47 END IMTDATA
A-Type IMT Format
IM tables extracted from mixers in simulation environment are defined in this format which allows double side banded (DSB), single-RF, single-LO mixing specification of IF voltage strengths in dBm (absolute value). Such files may contain multiple IMT matrices each captured at specific levels of RF and LO powers and input frequencies. A-type IMT files therefore contain frequency specific information, and may be used for interpolation across modest spans of RF or LO frequency and power variation. Each column of the table represents mixing due to one of the N harmonics of the LO tone, and each row represents mixing one of the M harmonics of the RF tone. Both positive (sum) and negative (difference) rows are represented in the table as shown by the value of the first column.
Example A-Type IM Table
In the following A-type IM table two LO harmonics are mixed with two RF harmonics. The IM product for 2*RFfreq + 2*LOfreq is -40 dBm at 23 degrees phase; whereas, the product for 2*RFfreq - 2*LOfreq is -50 dBm at -41 degrees phase when reference RF and LO powers at mixer inputs are -10 dBm and +7 dBm respectively, and reference frequencies are RFfreq=2 GHz and LOfreq=1.7 GHz. Although, for the difference tone the table shows -2*FRF + 2*FLO, given that FLO < FRF in this case, we get the phase as -41 degrees by taking the complex conjugate of the value on file which is +41 degrees. To represent a physically feasible system, the values in the first complex column which contain harmonics of the RF tone, should be complex conjugates when mirrored across the DC spur. Thus the spur at N=0, M=m should be the complex conjugate of the spur at N=0, M=-m.
! A-type IMT file BEGIN IMTDATA ! Option line for reference power at: ! RF = -10 dBm, LO = +7 dBm # IMT ( GHz S DBM R 50.0 ) ! Format line for RF frequency % FRF 2.0 ! Format line for LO frequency % FLO 1.7 ! Format line for reference RF power % PRF -10 ! Format line for reference LO power % PLO -7 ! Format line for LO-side harmonics % M 0 1 2 -2 -24 -77 -35 39 -50 41 -1 -67 -64 -35 13 -40 24 0 -99 73 -74 70 -71 64 1 -67 64 -69 50 -77 47 2 -24 77 -35 -33 -40 -23 END IMTDATA
B-Type IMT Format
IM tables extracted from mixers in the simulation environment are defined in this format which allows double side banded (DSB), multi-RF, single-LO mixing specification of IF voltage strengths in dBm (absolute value). Such files may contain multiple IMT matrices each captured at specific levels of LO powers and frequencies. RF frequencies and powers should remain constant throughout the file. B-type IMT files therefore contain frequency specific information, and may be used for interpolation across modest spans of LO frequency and power variation at nominal RF powers and frequencies. Each column of the table represents mixing due to one of the N harmonics of the LO tone and each row represents mixing the various harmonics of the RF tones. Both positive (sum) and negative (difference) rows are represented in the table as shown by the value of the first r columns where r RF tones are active at the mixer's signal input.
To represent a physically feasible system, the values in the first complex column which contain pure RF on RF mixing, should be complex conjugates when mirrored across the DC spur. Thus the spur at N=0, M1=m1 M2=m2 should be the complex conjugate of the spur at N=0, M1=-m1, M2=-m2.
Example B-Type IM Table
In the following B-type IM table two LO harmonics are mixed with two RF harmonics of the first RF tone and one harmonic of the second RF tone. The IM product for 2*RFfreq1 - RFfreq2 + 2*LOfreq is -71 dBm at 64 degrees phase; whereas, the product at -RFfreq1 + RFfreq2 is -45 dBm +66 degrees.
! B-type IMT file BEGIN IMTDATA ! Option line # IMT ( GHz S DBM R 50.0 ) ! Format line for RF frequency % FRF1 FRF2 2.0 2.1 ! Format line for LO frequency % FLO 1.7 ! Format line for reference RF power % PRF1 PRF2 -10 -15 ! Format line for reference LO power % PLO -7 ! Format line for LO-side harmonics % M1 M2 0 1 2 -2 -1 -24 -77 -35 39 -50 41 -2 0 -67 -64 -35 13 -40 24 -2 1 -77 23 -74 70 -71 64 -1 -1 -45 -32 -69 50 -77 47 -1 0 -43 -97 -35 -33 -40 -23 -1 1 -24 -77 -35 39 -50 41 0 -1 -67 64 -35 13 -40 24 0 0 -99 73 -74 70 -71 64 0 1 -67 -64 -69 50 -77 47 1 -1 -24 77 -35 -33 -40 -23 1 0 -43 97 -37 -29 -55 -23 1 1 -45 32 -71 82 -50 41 2 -1 -77 -23 -74 70 -71 64 2 0 -67 64 -69 50 -77 47 2 1 -24 77 -35 -33 -40 -23 END IMTDATA
SPW Format
These files contain time-domain waveform data and are signal data files in SPW format. Advanced Design System can interface with the Cadence Alta Group SPW format through the use of data files in SPW format. Both ASCII (.ascsig ) and binary (.sig ) file formats are supported.
The SPW version 3.0 data file format is fully supported for real double data and partially supported for complex double data.
Guidelines for .ascsig
- The SPW version 3.0 data file format must be used.
- Comments can only be included on the one line following the
$USER_COMMENT
statement. - A blank line must be included above the statements
$COMMON_INFO
andSampling Frequency
.
Example .ascsig Files
There are two examples, one uses real values and the second uses complex numbers.
File 1: Real double-data format
$SIGNAL_FILE 9 $USER_COMMENT $COMMON_INFO SPW Version = 3.0 Sampling Frequency = 1 Starting Time = 0 $DATA_INFO Number of points = 6 Signal Type = Double $DATA 1.000000000000000000000 1.000000000000000000000 - 1.000000000000000000000 - 1.000000000000000000000 1.000000000000000000000 1.000000000000000000000
File 2: Complex double-data format
$SIGNAL_FILE 9 $USER_COMMENT $COMMON_INFO SPW Version = 3.0 Sampling Frequency = 1 Starting Time = 0 $DATA_INFO Number of points = 10 Signal Type = Double Complex Format = Real_Imag $DATA 1.000000000000000000000+j1.000000000000000000000 1.000000000000000000000+j1.000000000000000000000 - 1.000000000000000000000+j1.000000000000000000000 - 1.000000000000000000000+j1.000000000000000000000 1.000000000000000000000+j1.000000000000000000000 1.000000000000000000000+j1.000000000000000000000 - 1.000000000000000000000+j1.000000000000000000000 - 1.000000000000000000000+j1.000000000000000000000 - 1.000000000000000000000+j1.000000000000000000000 -1.000000000000000000000+j1.000000000000000000000
TIM Format
The .tim file is a signal data file in MDIF format. It contains time-domain waveform data for defining the signals associated with certain sources.
The general .tim file format is:
BEGIN TIMEDATA
# T ( SEC V R xx )
% time voltage
<data line>
...
<data line>
END
The BINTIM Format
The BINTIM format (.bintim) is for binary time-domain waveform data files. In .bintim files, the format is the same as .tim files, except the BEGIN line is preceded by a line indicating the number of data points, n:
NUMBER OF DATA n
The <data line> in a .bintim file is just a binary dump of all the waveform (time, voltage) data. Also, there is no END line.
Note
The .bintim format is not supported in the Data File Tool. However, certain signal processing components can read .bintim files.
Guidelines for .tim Files
- An exclamation point (!) at the beginning of a line makes it a comment line. Characters following the ! are ignored by the program.
- The TIMEDATA data block is required.
- When the file reader reads a file, it renames the independent and dependent variable names regardless of the names specified in the file. The file reader reads the independent variable name as time , and the dependent variable name as voltage .
TIMEDATA Block
- The BEGIN statement:
BEGIN TIMEDATA ! Begin time-domain waveform data - Option line:
# T ( time_unit data_unit R xx )
where:#
=
Delimiter tells the program you are specifying these parameters.
T
=
Time
time_unit
=
Sets time units. Options are SEC, MSEC, USEC, NSEC, PSEC.
data_unit
=
Set the units for the voltage values. Options are:
V = volts
MV = millivoltsR xx
=
Sets resistance, where xx = reference resistance. (default is 50.0)
- Format line
% time voltage
where:By design of the program, the syntax time and voltage in the Format line are arbitrary. These values can be whatever you prefer. For example, an option line such as:%
=
Delimiter tells the program you are specifying these parameters
time
=
time
voltage
=
voltage
% t mV
can be used. However, these values are converted to time and voltage by the file reader when the .tim file is imported, and these will be the variables appearing in a dataset (.ds ) file. - The TIMEDATA data requirements are as follows:
- Though a value for time=0 is not required, this can lead to erroneous results when using the DataAccessComponent with its Extrapolation Mode set to Linear. To avoid errors, set a value for time=0, set the DAC's Extrapolation Mode to Constant, or do both.
- The signal is assumed to be time periodic with the time period equal to maximum time minus minimum time.
Example .tim Files
BEGIN TIMEDATA # T ( USEC V R 50 ) % time voltage 0.0 -1.0 2.0 1.0 4.0 2.0 8.0 3.0 10.0 3.0 14.0 0.0 18.0 -1.0 24.0 -2.0 28.0 0.0 32.0 -1.0 END
This example file results in a time periodic voltage versus time with time period 32 µsec, interpreted as a piece-wise linear voltage description.
Time periodic voltage vs. Time with time period 32 µsec.
The following example shows how to handle the independent and dependent variable names when using a DataAccessComponent. This is useful since the file reader reads the independent variable name as time , and the dependent variable name as voltage , regardless of the names specified in the file. The following example data files shows the variable names specified as t
and v
:
BEGIN TIMEDATA % t v 0 0 1e-011 0.00995017 2e-011 0.0198013 5e-011 0.0487706 1.4e-010 0.130642 4.1e-010 0.33635 1e-009 0.632121 END
Though the variable names are t
and v
, the file reader changes the names to time and voltage , requiring the following syntax for the DataAccessComponent:
DataAccessComponent Type=Time Domain Waveform (TIM MDIF) iVar1="time" iVal1=time VAR X=file{DAC1,"voltage"}
Generic MDIF
The generic MDIF provides a generalized MDIF format for unifying the various specific MDIF formats, and overcoming some limitations of other formats. The generic format enables diverse applications to use a common data I/O interface, so long as the intent is to access/save multidimensional (multiple independent vs dependent variables) data.
The general format is as follows:
VAR var1Name(var1Type) = var1 ValueVAR var2Name(var2Type) = var2Value .. VAR varNName(varNType) = varNValue BEGIN blockName % bVar1Name(bVar1Type) bVar2Name(bVar2Type) .... % bVarLName(bVarLType) ... % ... % bVarQName(bVarQType) ... bVarPName(bVarPType) bVar1Value bVar2Value ... bVarLValue .. .. bVarQValue ... bVarPValue bVar1Value bVar2Value ... bVarLValue .. .. bVarQValue ... bVarPValue ... END
where var*Type
can be the token:
0 or int
1 or real
2 or string
Type bVar*Type can be one of the above as well as:
3 or complex
4 or boolean
5 or binary
6 or octal
7 or hexadecimal
8 or byte16
The variable names above constitute a name-space uniquely identified by the string blockName which is either:
- alphanumeric: all bVar*Name block variables are dependent, except bVar1Name, which is usually the most rapidly changing (innermost) independent variable.
or - DSCR(blockName): all bVar*Name block variables are dependent, and there is an indexing implicit independent variable.
Guidelines
- A string type variable's value must be surrounded by "".
- If there are multiple blocks, the outermost independent variables (e.g.,
VAR var1Name(var1Type) = var1
) apply only to the block immediately following the variable definitions, and not to any other blocks.
- The block data (bVar*Value) lines must follow the pattern (order, number of values per line, and number of lines) of the format (%) lines. If the number of values in any data line does not match the number of dependent variables specified in the corresponding format (%) line, incorrect results will occur. A variable's value cannot be split across lines. Although there is no line length limit specified, MDIF file readers may choose to truncate at some finite length. This may result in a file read error, or, if the file was carefully crafted, truncated names and/or string-type values.
- Scale factors, which can be applied only to real numbers, may be case-insensitive suffixes as follows:
f = 1e-15, p = 1e-12, n = 1e-9, u = 1e-6, mil = 2.54e-5, m = 1e-3,
k = 1e3, g = 1e9, t = 1e12
There should be no space between the number and the suffix, and extra characters are ignored. Unrecognized suffixes result in 1.0. The above is not totally consistent with the rest of ADS.E.g.: 15mA = 15e-3, 30KHz = 30e3
- The format of complex data is real/imag, with a column for real and a column for imaginary.
- Multidimensional data is organized by outer to inner independent variables. VAR statements go from outermost to innermost.
- Vary innermost independent variables first, proceeding toward outermost variables changing last.
- Independent variables should change monotonically.
Example
!============================================================ ! Example 1 REM This has 3 indepVars: v1, v2, v3(innermost) and REM 4 depVars: dv1(integer), dv2(real), dv3(string) and REM dv4(hexadecimal), but is read in as a string. REM The outermost indepVars: v1, v2 apply only to the block REM immediately following them, and not to any other block. ! There are 2 data nodes VAR v1(0) = 1 VAR v2(1) = 2.2 BEGIN blk1 % v3(1) dv1(1) dv2(1) dv3(2) dv4(hexadecimal) 7.7 8 9.9999 "line 1" 0xabc 8.8 9 1.11 "line 2 " 0x123 END VAR v1(0) = 2 VAR v2(1) = 3.2 BEGIN blk1 % v3(1) dv1(1) dv2(1) dv3(2) dv4(hexadecimal) 8.7 9uF 10.9999mA "line 1" 0xff 9.8 10uF 11.11mA "line 2 " 0xdef END !============================================================= ! Example 2 ! Created Tue Mar 9 13:39:19 1999 ! Data Acquired Tue Mar 9 13:38:34 1999 BEGIN NDATA_noise % freq(real) Sopt(complex) NFmin(real) Rn(real) PortZ[1](real) 1e+09 0.098481 0.017365 1 5 50 2e+09 0.18794 0.068404 2 10 50 3e+09 0.25981 0.15 3 15 50 4e+09 0.30642 0.25712 4 20 50 5e+09 0.32139 0.38302 5 25 50 6e+09 0.3 0.51962 6 30 50 7e+09 0.23941 0.65778 7 35 50 8e+09 0.13892 0.78785 8 40 50 9.543e+09 -0.014122 0.911 9.5445 46.166 50 END
CITIfile Data Format
This section describes the CITIfile format definitions of key terms, and file examples. It also includes:
- Keyword reference
- File guidelines
- Instructions for converting between disk formats
- Device-specific definitions
- File name requirements
Overview
CITIfile is a standardized data format that is used for exchanging data between different computers and instruments. CITIfile stands for Common Instrumentation Transfer and Interchange file format.
This standard is a group effort between instrument and computer-aided design program designers. As much as possible, CITIfile meets current needs for data transfer, and it is designed to be expandable so it can meet future needs.
CITIfile defines how the data inside an ASCII package is formatted. Since it is not tied to any particular disk or transfer format, it can be used with any operating system, such as DOS or UNIX, with any disk format, such as DOS or HFS, or with any transfer mechanism, such as by disk, LAN, or GPIB.
By careful implementation of the standard, instruments and software packages using CITIfile are able to load and work with data created on another instrument or computer. It is possible, for example, for a network analyzer to directly load and display data measured on a scalar analyzer, or for a software package running on a computer to read data measured on the network analyzer.
Data Formats
There are two main types of data formats: binary and ASCII. CITIfile uses the ASCII text format. Although this format requires more space than binary format, ASCII data is a transportable, standard type of format which is supported by all operating systems. In addition, the ASCII format is accepted by most text editors. This allows files to be created, examined, and edited easily, making CITIfile easier to test and debug.
File and Operating System Formats
CITIfile is a data storage convention designed to be independent of the operating system, and therefore may be implemented by any file system. However, transfer between file systems may sometimes be necessary. You can use any software that has the ability to transfer ASCII files between systems to transfer CITIfile data. Refer to Converting Between Disk Formats for more information.
The descriptions and examples shown here demonstrate how CITIfile may be used to store and transfer both measurement information and data. The use of a single, common format allows data to be easily moved between instruments and computers.
CITIfile Definitions
This section defines: package , header , data array , and keyword .
Package
A typical CITIfile package is divided into two parts:
- The header is made up of keywords and setup information.
- The data usually consists of one or more arrays of data.
The following example shows the basic structure of a CITIfile package:
When stored in a file there may be more than one CITIfile package. With the Agilent 8510 network analyzer, for example, storing a memory all will save all eight of the memories held in the instrument. This results in a single file that contains eight CITIfile packages .
Header
The header section contains information about the data that will follow. It may also include information about the setup of the instrument that measured the data. The CITIfile header shown in the first example has the minimum of information necessary; no instrument setup information was included.
Data Array
An array is numeric data that is arranged with one data element per line. A CITIfile package may contain more than one array of data. Arrays of data start after the BEGIN
keyword, and the END
keyword follows the last data element in an array.
A CITIfile package does not necessarily need to include data arrays. For instance, CITIfile could be used to store the current state of an instrument. In that case the keywords VAR
, BEGIN
, and END
would not be required.
When accessing arrays via the DAC (DataAccessComponent), the simulator requires array elements to be listed completely and in order.
Example: S[1,1], S[1,2], S[2,1], S[2,2]
Keywords
Keywords are always the first word on a new line. They are always one continuous word without embedded spaces. A listing of all the keywords used in version A.01.00 of CITIfile is shown in CITIfile Keyword Reference.
CITIfile Examples
The following are examples of CITIfile packages.
Display Memory File
This example shows an Agilent 8510 display memory file. The file contains no frequency information. Some instruments do not keep frequency information for display memory data, so this information is not included in the CITIfile package.
Note that instrument-specific information (#NA = network analyzer information) is also stored in this file.
CITIFILE A.01.00 #NA VERSION HP8510B.05.00 NAME MEMORY #NA REGISTER 1 VAR FREQ MAG 5 DATA S RI BEGIN -1.31189E-3,-1.47980E-3 -3.67867E-3,-0.67782E-3 -3.43990E-3,0.58746E-3 -2.70664E-4,-9.76175E-4 0.65892E-4,-9.61571E-4 END
Agilent 8510 Data File
This example shows an 8510 data file, a package created from the data register of an Agilent 8510 network analyzer. In this case, 10 points of real and imaginary data was stored, and frequency information was recorded in a segment list table.
CITIFILE A.01.00 #NA VERSION 8510B.05.00 NAME DATA #NA REGISTER 1 VAR FREQ MAG 10 DATA S[1,1] RI SEG_LIST_BEGIN SEG 1000000000 4000000000 10 SEG_LIST_END BEGIN 0.86303E-1,-8.98651E-1 8.97491E-1,3.06915E-1 -4.96887E-1,7.87323E-1 -5.65338E-1,-7.05291E-1 8.94287E-1,-4.25537E-1 1.77551E-1,8.96606E-1 -9.35028E-1,-1.10504E-1 3.69079E-1,-9.13787E-1 7.80120E-1,5.37841E-1 -7.78350E-1,5.72082E-1 END
Agilent 8510 3-Term Frequency List Cal Set File
This example shows an 8510 3-term frequency list cal set file. It shows how CITIfile may be used to store instrument setup information. In the case of an 8510 cal set, a limited instrument state is needed to return the instrument to the same state that it was in when the calibration was done.
Three arrays of error correction data are defined by using three DATA
statements. Some instruments require these arrays be in the proper order, from E[1]
to E[3]
. In general, CITIfile implementations should strive to handle data arrays that are arranged in any order.
CITIFILE A.01.00 #NA VERSION 8510B.05.00 NAME CAL_SET #NA REGISTER 1 VAR FREQ MAG 4 DATA E[1] RI DATA E[2] RI DATA E[3] RI #NA SWEEP_TIME 9.999987E-2 #NA POWER1 1.0E1 #NA POWER2 1.0E1 #NA PARAMS 2 #NA CAL_TYPE 3 #NA POWER_SLOPE 0.0E0 #NA SLOPE_MODE 0 #NA TRIM_SWEEP 0 #NA SWEEP_MODE 4 #NA LOWPASS_FLAG -1 #NA FREQ_INFO 1 #NA SPAN 1000000000 3000000000 4 #NA DUPLICATES 0 #NA ARB_SEG 1000000000 1000000000 1 #NA ARB_SEG 2000000000 3000000000 3 VAR_LIST_BEGIN 1000000000 2000000000 2500000000 3000000000 VAR_LIST_END BEGIN 1.12134E-3,1.73103E-3 4.23145E-3,-5.36775E-3 -0.56815E-3,5.32650E-3 -1.85942E-3,-4.07981E-3 END BEGIN 2.03895E-2,-0.82674E-2 -4.21371E-2,-0.24871E-2 0.21038E-2,-3.06778E-2 1.20315E-2,5.99861E-2 END BEGIN 4.45404E-1,4.31518E-1 8.34777E-1,-1.33056E-1 -7.09137E-1,5.58410E-1 4.84252E-1,-8.07098E-1 END
When an instrument's frequency list mode is used, as it was in this example, a list of frequencies is stored in the file after the VAR_LIST_BEGIN
statement. The unsorted frequency list segments used by this instrument to create the VAR_LIST_BEGIN
data are defined in the #NA ARB_SEG
statements.
2-Port S-Parameter Data File
This example shows how a CITIfile can store 2-port S-parameter data. The independent variable name FREQ has two values located in the VAR_LIST_BEGIN section. The four DATA name definitions indicate there are four data arrays in the CITIfile package located in the BEGIN...END sections. The data must be in the correct order to ensure values are assigned to the intended ports. The order in this example results in data assigned to the ports as shown in the table that follows:
CITIFILE A.01.00 NAME BAF1 VAR FREQ MAG 2 DATA S[1,1] MAGANGLE DATA S[1,2] MAGANGLE DATA S[2,1] MAGANGLE DATA S[2,2] MAGANGLE VAR_LIST_BEGIN 1E9 2E9 VAR_LIST_END BEGIN 0.1, 2 0.2, 3 END BEGIN 0.3, 4 0.4, 5 END BEGIN 0.5, 6 0.6, 7 END BEGIN 0.7, 8 0.8, 9 END
DATA |
FREQ = 1E9 |
FREQ = 2E9 |
---|---|---|
s[1,1] |
s[0.1,2] |
s[0.2,3] |
s[1,2] |
s[0.3,4] |
s[0.4,5] |
s[2,1] |
s[0.5,6] |
s[0.6,7] |
s[2,2] |
s[0.7,8] |
s[0.8,9] |
CITIfile Keyword Reference
The following table lists keywords, definitions, and examples.
CITIfile Keywords and Definitions
Keyword |
Example and Explanation |
---|---|
|
Example: |
|
Example: |
|
Example: |
|
Example: |
|
Example: |
|
Indicates that a list of segments for the independent variable follows. |
|
Sets the end of a list of independent variable segments. |
|
Indicates that a list of the values for the independent variable (declared in the |
|
Sets the end of a list of values for the independent variable. |
|
Example: |
CITIfile Guidelines
The following general guidelines aid in making CITIfiles universally transportable:
Line Length. The length of a line within a CITIfile package should not exceed 80 characters. This allows instruments which may have limited RAM to define a reasonable input buffer length.
Keywords. Keywords are always at the beginning of a new line. The end of a line is as defined by the file system or transfer mechanism being used.
Unrecognized Keywords. When reading a CITIfile, unrecognized keywords should be ignored. There are two reasons for this:
- Ignoring unknown keywords allows new keywords to be added, without affecting an older program or instrument that might not use the new keywords. The older instrument or program can still use the rest of the data in the CITIfile as it did before. Ignoring unknown keywords allows "backwards compatibility" to be maintained.
- Keywords intended for other instruments or devices can be added to the same file without affecting the reading of the data.
Adding New Devices. Individual users are allowed to create their own device keywords through the # (user-defined device) mechanism. (Refer to the table immediately above for more information.) Individual users should not add keywords to CITIfiles without using the #
notation, as this could make their files incompatible with current or future CITIfile implementations.
File Names. Some instruments or programs identify a particular type of file by characters that are added before or after the file name. Creating a file with a particular prefix or ending is not a problem. However in general an instrument or program should not require any such characters when reading a file. This allows any file, no matter what the filename, to be read into the instrument or computer. Requiring special filename prefixes and endings makes the exchange of data between different instruments and computers much more difficult.
Converting Between Disk Formats
Most current Agilent Technologies instruments use disks formatted in the Logical Interchange Format (LIF). Some instruments also use DOS-formatted disks. CITIfiles created on one file system (LIF, DOS, HFS, etc.) may be transferred to other file systems. This is useful for designers using test equipment in addition to ADS to read/write CITIfiles.
HFS
Several LIF and DOS utilities are available for HP-UX workstations. The HP-UX utilities lifcp and doscp can transfer CITIfiles to and from LIF and DOS disks. Using lifcp and doscp are similar; using lifcp is described below. Several other LIF and DOS utilities are also available. Consult the documentation for these utilities for more detailed information. Listing the contents of a LIF disk when using HP-UX would be similar to the following example:
lifls /dev/rdsk/1s0.0
The device name used will depend on how your system was configured. Copying a CITIfile named DD_FILED1
from a LIF disk to HFS would be similar to the following example:
lifcp /dev/rdsk/1s0.0: DD_FILED1 DD_FILED1
To copy a standard HFS ASCII file to a LIF disk:
lifcp DD_FILED1 /dev/rdsk/1s0.0: DD_FILED1
When used on an HFS disk, The HP-UX program RMB/UX (Rocky Mountain BASIC for HP-UX) has the ability to write a CITIfile in either as a standard HFS ASCII file, or as a LIF volume file. The LIF volume file is the default. This type of file is not directly readable when using the HP-UX operating system, and the copy commands listed above will not work correctly.
BASIC program writers are encouraged to detect when writing to an HFS disk, and to use the standard HFS format. The program examples CITIWRITE and CITIDOALL show how this can be done. However CITIfiles stored in the LIF volume format can still be transferred to LIF disks, or converted to standard HFS files. To copy a LIF volume file named DD_FILED stored on an HFS disk and move it to a LIF disk:
lifcp DD_FILED1:WS_FILE /dev/rdsk/1s0.0: DD_FILED1
To copy the LIF volume file DD_FILED1 to a standard HFS file named NEWFILE :
lifcp DD_FILED1:WS_FILE NEWFILE
DOS
Utilities are available for DOS machines that enable them to transfer files to and from a LIF formatted disk. Many of these programs are menu-driven, and are available from the following companies: Agilent, Oswego, Meadow Soft Works, and Innovative Software Systems.
CITIfile Device-Specific Definitions
CITIfile is a generic definition of a data storage format for any type of computer or instrument. However each type of device may need to define certain conventions for itself. This section describes the device-specific keywords and conventions for current implementations.
Network Analyzer (#NA) Definitions
Data Grouping. Data arrays of the same type, obtained during a single measurement operation, are stored in a single CITIfile package. For example, all error correction arrays are stored in the same CITIfile package, and all parameters acquired during an s-parameter measurement operation are stored in the same CITIfile package.
A CITIfile package is as described in the main CITIfile documentation: the CITIFILE keyword, followed by a header section, usually followed by one or more arrays of data.
Note
There are some specific problems with the current version in reading and/or writing this data format. On the Agilent EEsof web site, refer to the Release Notes in Product Documentation, and to Technical Support for more information and workarounds (http://www.keysight.com/find/eesof).
Network Analyzer Keywords. The definition of CITIfile allows for statements that are specific to a certain type of device. the following table lists the currently defined commands for the #NA
(network analyzer) keyword.
Network Analyzer Keyword Commands
Statement |
Explanation |
---|---|
|
A list segment, as entered by the user. |
|
Register in instrument that the current data package was stored in. |
|
The sweep time of the analyzer. |
|
Power level of signal source #1. |
|
Power level of signal source #2. |
|
Bitmap of valid parameters for a calibration. Bit positions 1-8 represent the following: |
|
The type of calibration used: |
|
Change in power versus frequency. |
|
On/off flag for power slope. |
|
Linearity adjustment value for swept sources. |
|
Type of sweep done to make measurement. |
|
Low-pass time domain flag. |
|
The frequency information flag. |
|
Delete duplicates flag. Determines if points listed more than once should be measured more than once. |
|
The sweep parameters: |
|
The IF bandwidth setting of the receiver. |
Error Array Numbering
Current network analyzer implementations use between one and twelve error coefficient arrays to perform error correction. The CAL_TYPE
keyword description in Network Analyzer (#NA) Definitions lists the currently defined calibration types. The following table defines the meanings of each coefficient array with respect to the error model used.
Network Analyzer Error Coefficient Arrays
Error Array Name |
Frequency Response |
Response & Isolation |
All 1-Port |
All 2-Port |
---|---|---|---|---|
E1 |
Er or Et |
Ed or Ex |
Ed |
Edf |
E2 |
- |
Er or Et |
Es |
Esf |
E3 |
- |
- |
Er |
Erf |
E4 |
- |
- |
- |
Exf |
E5 |
- |
- |
- |
Elf |
E6 |
- |
- |
- |
Etf |
E7 |
- |
- |
- |
Edr |
E8 |
- |
- |
- |
Esr |
E9 |
- |
- |
- |
Err |
E10 |
- |
- |
- |
Exr |
E11 |
- |
- |
- |
Elr |
E12 |
- |
- |
- |
Etr |
Disk Filename Requirements
Some instruments or programs identify a particular type of file by characters that are added before or after the file name. In general an instrument or program should not require any such characters when reading a file.
There exist CITIfile implementations which do have file naming restrictions. This section explains how to work around these restrictions.
Agilent 8510 Series CITIfile
The 8510 checks the first 3 letters of the filename to determine what is stored in the file. The file prefixes for an 8510 CITIfile are listed in the following table.
Agilent 8510 CITIfile Prefixes
File Prefix |
File Contents |
Notes |
---|---|---|
|
Raw Data |
Raw (uncorrected data array(s). |
|
Data Data |
Error corrected data array(s) |
|
Formatted Data |
Corrected & formatted data array. |
|
Display Memory |
File holds one memory. |
|
Display Memory All |
Holds all memories in 8510. |
|
Cal Set |
One set of calibration data. |
|
Cal Set All |
All sets of calibration data. |
|
Delay Table |
One delay table. |
DD_MYDATA
is an example of a file name for a file that contains one array of corrected data.
The current 8510 CITIfile implementation is unable to read files unless they have the prefixes above. It is expected that a future 8510 revision will remove this restriction.
Agilent 8700 Series CITIfile
Storing a data file from an 8700-series analyzer in CITIfile format requires that you choose the SAVE USING ASCII option.
The 8700 series of instruments check the last two characters of the filename to determine what is stored in the file. The file endings for an 8700 CITIfile are listed in the following table.
Agilent 8700 CITIfile Filenames
Last Two Chars |
File Contents |
Notes |
---|---|---|
Rx |
Raw Data |
x = 1 = channel 1. |
Dx |
Data Data |
x = channel number. |
Fx |
Formatted Data |
x = channel number. |
Mx |
Display Memory |
x = channel number. |
xy |
Cal Set |
x = channel number. |
FILE1D1 is an example of a file name for a file that contains corrected data for channel #1. FILE1R5 is a filename for raw data arrays from channel #2. MYFILE2C is an example of a name for a file that contains a cal set used by channel #2, with 12 arrays of data (hexadecimal C).
To load data from disk into an 8700-series instrument, there must be a matching instrument state file to go with the data that is being loaded. Consult the 8700-series documentation for more information.