Rules Files for Serial Link Projects
Rules files specify the tests to run automatically after simulation and analysis is complete. Rules can define the eye masks, limits to coupled noise, or s-parameter tests.
You can view the results of the rules file in the Signal Integrity Viewer app and in the Channel Analysis Report.
Rules files are primarily used to perform compliance tests derived from specifications and interface standards.
The file extension of a rules file must be .rules
so that the
Serial 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.
Rules File Format
The format of a rules file is:
[Rule] <name> Apply_To <apply_to> Method <method> <method_parameters> Mask_Data <mask_data>
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: checking the insertion loss. 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).
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>
where,
<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 toN/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 toN/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 Mask_Data 0.0 na na 0.4 0.0 na 0.5 0.05 na 0.6 0.0 na 1.0 na na
Channel S-Parameter Method Format
Channel S-Parameters have multiple methods. Some apply a mask to the S-Parameter data and some calculate metrics from the channel S-Parameter data.
Note
For channel S-Parameter rules <apply_to>
is set to NA.
Metric | Method | Description |
---|---|---|
Insertion loss | InsertionLoss | Measure insertion loss. |
InsertionLossDeviation | Legacy insertion loss deviation method. Using
InsertionLossDeviation method is recommended. | |
InsertionLossDeviation_Flex | Measure the deviation of the actual insertion loss to a log-fitted insertion loss curve. You need to insert the polynomial coefficients for calculations. | |
Attenuation | FittedAttenuation | Legacy fitted attenuation (ripple is removed) method. Using
FittedAttenuation_Flex method is recommended. |
FittedAttenuation_Flex | Measure the fitted attenuation of the actual insertion loss to a log-fitted insertion loss curve. You need to insert the polynomial coefficients for calculations. | |
Crosstalk | ICR | Measure the ratio of insertion loss to crosstalk (dB insertion loss/dB Crosstalk). |
ICN | Measure the integrated crosstalk noise. ICN is plotted as a point in dB. | |
PSXT | Measure the power sum crosstalk, plotted in dB/f. | |
Return loss | ReturnLoss | Differential return loss of the channel (looking from the transmitter into the channel) |
RxReturnLoss | Mixed-mode return loss looking into the receiver. | |
RxReturnLossDD | ||
RxReturnLossCC | ||
RxReturnLossDC | ||
RxReturnLossCD | ||
RxReturnLossSE | Single-ended return loss looking into the receiver. | |
TxReturnLoss | Mixed-mode return loss looking into the transmitter. | |
TxReturnLossDD | ||
TxReturnLossCC | ||
TxReturnLossDC | ||
TxReturnLossCD | ||
TxReturnLossSE | Single-ended return loss looking into the transmitter. | |
Conversion loss | ConversionLossSCD21 | Mixed-mode conversion loss. |
ConversionLossSCD12 | ||
ConversionLossSDC21 | ||
ConversionLossSDC12 | ||
ConversionLossSCD11 | ||
ConversionLossSCD22 | ||
ConversionLossSDC11 | ||
ConversionLossSDC22 |
Rules Results
The results of rules files differ for different methods.
Eye mask method results generate waveform files. You can view them from the Waveforms tab of the Signal Integrity Viewer app.
Channel S-Parameter method results can generate tabular data over frequency. You can view the waveform files from the Waveforms tab of the Signal Integrity Viewer app. You can view the waveform files along with the results from the Channel Analysis Report in the Waveforms tab of the Signal Integrity Viewer app.