Main Content

Rules Files for Parallel Link Projects

Rules files specify the eye masks compliance tests to run automatically after simulation and analysis is complete. Rules files are primarily used to perform compliance tests derived from specifications and interface standards.

You can view the results of the rules file in the Signal Integrity Viewer app and in the Channel Analysis Report.

The file extension of a rules file must be .rules so that the Parallel Link Designer can recognize it. It also must be located in the <Project_Directory>\si_lib\rules\ directory of the project. When the app loads an interface, it looks in the si_lib\rules folder and lists the base name of any rules files found in the Transfer Net Properties dialog box.


You must enable STAT Mode option in the project schematic sheet to apply the rules files.

Rules File Format

The format of a rules file is:

[Rule] <name>
Apply_To <apply_to>
Method <method>

There are four keywords in the rules file that define the characteristics of the test:

  • Rule — This defines the name of this rule that can be applied to the simulation. This can be any ASCII string up to the first terminator character (space, tab, or comma). This is the name that appears in the Signal Integrity Viewer app and the spreadsheets.

  • Method — This defines the test to be performed, for example: margin to an eye mask. You can also define the parameters required for the method using the keyword method_parameters.

  • Apply_To — This tells the simulator where to apply the mask (pad, pin, or latch).

    Locations of Apply_To keyword.

  • Mask_Data — This introduces an arbitrary length section of data records that defines the measurement limits. These are the points that define a mask.

A rules file can contain multiple rule definitions.

A rules file can contain multiple tests by including other rules files. To include other rules files, follow the format:

Include <rules_file_basename>
Include <any_file_fullname>

where <rules_file_basename> is the base name of a file with extension .rules and <any_file_fullname> is the full name of a file.

Eye Mask Method Format

Eye Mask rules require a Mask_Data line followed by lines of mask data in the format:

<UI fraction> <inner_eye_voltage> <outer_eye_voltage>


  • <UI fraction> is the UI position of the data, valued between 0.0 and 1.0.

  • <inner eye voltage> is the voltage of the inner eye mask at this UI position. If there is no mask at this UI, set it to N/A.

  • <outer_eye_voltage> is the voltage of the outer eye mask at this UI position. If there is no mask at this UI, set it to N/A.

There are two eye mask rule methods:

  • Static_Eye — The defined mask is fixed in time.

  • Skew_Eye — The defined mask is shifted in time to maximize margin.

An example rule file that checks only the inner eye is shown:

[Rule] SkewEyeMask_latch
Apply_To Rx_Latch
Method Skew_Eye
0.0   na     na
0.4   0.0    na
0.5   0.05   na
0.6   0.0    na
1.0   na     na

Rules Results

You can view the eye mask method results in two ways:

  • View the Margin columns in the Statistical and Time Domain tabs in the Channel Analysis Report.

  • Right click on any transfer net row in the Statistical or Time Domain tab in the Signal Integrity Viewer app and select the relevant Show Margin option. This also plots the resulting eye mask.

Related Topics