LeCroy SPARQ Pass/Fail Testing Capability

LeCroy SPARQ users can perform pass/fail testing on S-parameters, time domain views or on math and zoom traces. Up to 8 pass/fail conditions can be configured to determine an overall pass/fail result. Conditions can be either limit tests using waveform measurements, or mask tests to determine if a trace remains in an allowed region or outside of a disallowed region. Users can configure actions to occur on a passing or failing result, and can read back the results via remote control. This application note shows how to perform pass/fail mask testing on the differential insertion loss of USB3 cables using the official mask specified by the USB Integrator’s Form (USB-IF).

Configuring Mask Testing on the LeCroy SPARQ

Users configure the conditions via the Pass/Fail dialog, which is an item in the Analysis menu. The dialog, shown in figure 2, includes tabs for each of the 8 conditions (“Qx”) that may be enabled for use. For each Qx being setup, the user can select the whether to compare to a parametric measurement result or to perform mask testing, and configure the type of comparison to make. The Pass/Fail tab (not shown) includes a master enable checkbox to turn testing on or off, and shows a summary of the configured conditions. The Actions tab includes allows users to configure the overall logic to use (i.e. whether to consider “true” as passing or failing), and what actions to take in case of a passing or failing result.

Figure 2:

Pass/Fail setup dialogs. Top: Q1 setup; bottom: Actions configuration.

In figure 2 (top), Q1 is configured to test against the mask loaded from the file “USB30InsertionLoss.msk”. The file describes an overlay that is placed on the grid with the source trace. Figures 1 shows the mask used to test traces S1 and S2. Users can select the logic to use for the condition to return a “True” value in the Test dialog (left side of lower dialog in figure 2). In this example the logic chosen is for the test to be true of all points of the waveform are in the mask. Users can also select to show markers that denote the locations of any mask violations.

Creating Mask Files with LeCroy MaskMaker

Users can create a mask file manually, or use the free LeCroy utility MaskMaker, which is available for download from LeCroy’s website. With MaskMaker, users create polygons by selecting the locations of vertices and the line segments that connect them. In figure 4, the MaskMaker application is shown with the USB30InsertionLoss.msk file loaded, with the contents of the file shown via the option in the View menu. Users can click on vertex locations, and MaskMaker will “connect the dots” to form the polygon. The mask file is saved via the File menu, and is a simple text file.

The locations of the vertices are defined in terms of the position on 10x8 grid on which the mask (and, subsequently, the trace being tested) are shown. The units of the coordinate system are “divisions”, and the origin of the system is at the left edge of the grid, at the centerline. Thus the horizontal axis ranges from 0 to 10 divisions, and the vertical axis from -4 to +4 divisions.

Users creating a mask need to determine the vertex locations in units of divisions, typically by converting from the units of the trace being tested. In order to make this conversion, the user must choose a fixed scaling for the trace under test. Table 1 shows the conversion from dB value to # of divisions for the trace shown in figure 5 below. This trace is positioned on a grid with a coordinate system with frequency on the X axis, and dB value on the Y axis, with scaling factors such that the coordinate system is as follows: X: 0 to 10GHz, and Y: -35 to 5dB. Using this information, it is straightforward to convert from (frequency, dB) coordinates to (X,Y) coordinates where X and Y are horizontal and vertical divisions. The coordinates in the lower left (e.g. 0.1GHz, -1.5dB) are taken from the official limits for USB3.0 cable insertion loss; the coordinates in the lower right (e.g. 0.1, 2.7) are calculated from the formulas in bold in the upper right (e.g. Y_div = (Y_db+15)/5).

Using Gates to Restrict the Tested Region

Figure 5 shows mask testing in action on trace S1. In addition to configuring the mask, gates have been setup to restrict the region being tested. This is configured in the Gate tab of the configuration dialogs for Q1. The gates are configured for 100 mdiv (0.1 division) and 7.5 divisions, corresponding to 100MHz through 7.5GHz. This is the frequency range defined for the mask. Without setting the gates, the portion of the trace outside of the mask would have generated mask violations. Note that instead of using the gates, the mask could have been defined to stretch across the complete grid, with the S1 trace being configured to show a frequency range from 100 MHz to 7.5 GHz. This configuration, however would have led to X positions for the vertices that would have been repeating fractions, rather than the “clean” values that are shown in the lower left of Table 1. (We arrived at these simpler values by using a frequency range of 0 to10 GHz.)

Figure 5:

Mask testing is being performed on trace S1, which is configured to show SDD11. Gates are in place to restrict the mask test to a specific grid region equivalent to 100MHz to 7.5GHz

Remote Control Readout

The SPARQ application can be controlled and monitored via almost any programming environment. Figure 6 shows the LabVIEW VI to read back the overall pass/fail result. The results of each individual condition can be read out as well.

To readout the overall pass/fail result:VBS? ‘return=app.PassFail.LastPass.Result.Value’
To readout the result of condition Qx (where [x] is the condition number):VBS? ‘return=app.PassFail.Q[x].Out.Result.Value’

Going Beyond a Single Mask

The example above shows pass/fail testing using a single condition defined as a mask on Q1. Users can configure additional conditions to perform mask-testing on multiple traces simultaneously, and can perform limit testing as well by comparing measurement values to limit conditions. Figure 1 shows the SPARQ performing pass/fail testing on two insertion loss plots (upper left and right grids), a peak-to-peak test on an impedance profile (lower left), and a test against the maximum value of a mode conversion result (lower right). Conditions Q2 and Q4 fail the tests, Q1 and Q3 pass.

By providing the ability to perform limit tests as well as mask tests, while also providing the ability to test multiple conditions to determine an overall pass/fail result, the SPARQ allows users to construct both simple and elaborate pass/fail testing scenarios to qualify the performance of a device under test.