:MEASure:OSCilloscope:PAM:LINearity

Meas. mode:
Scope
Package License:
L-RND
L-MFG
Waveform type:
NRZ
PAM4
Flex Apps:
FlexDCA
FlexRT

Command Syntax

:MEASure:OSCilloscope:PAM:LINearity

Query Syntax

:MEASure:OSCilloscope:PAM:LINearity?

Description

Starts Oscilloscope's Linearity measurement, which measures the linearity RLM (Ratio Level Mismatch) between all four amplitude levels (0, 1, 2, 3) of a PAM4 signal. To specify the RLM algorithm used, use the :DEFinition child command. Linearity is a measure of the variance in amplitude separation (distribution) between the different PAM4 levels. The PAM4 signal must be displayed as a single-valued waveform and all four logic levels should be visible on the display.

Examples of PAM Signal Linearity
Good Linearity Poor Linearity
V3-2 = V2-1 = V1-0 V3-2 ≠ V2-1 ≠ V1-0

If the four levels measurements are the following values:

  • L3 = 14.6 mV
  • L2 = 7.5 mV
  • L1 = –8.0 mV
  • L0 = –15.2 mV

then, the linearity will be:

which is equal to 0.715.

The linearity ratio is always equal to or less than 1.0. The value 1.0 indicates that the separations between all levels are equal. For non-compliant measurements, you can use a PRBS signal. For compliant measurements, you will need to use compliance linearity pattern that is called out in the relevant standard.

The following steps are performed for a linearity measurement:

  1. An autoscale is performed to determine if the signal is formatted as PAM4 or NRZ.
  2. Determine the longest of each of the four levels and measure the level at the center 12.5% (1/8) of individual symbols.
  3. The Levels measurements are placed in the following linearity formula:

Setting the Timespan

You must set FlexDCA's timespan wide enough so that each logic level is visible on the screen. This would be four levels (0, 1, 2, 3) for a PAM4 signal or two levels (0, 1) for an NRZ signal. Failure to set the timespan wide enough results in an error. Consider the following items when setting the timespan:

  • If multiple identical levels are displayed, the level that is present for the longest time will be selected for measurement. For example, if two logic levels are shown on the waveform, with one being 100 ps and the other being 150 ps, the 150 ps level is selected to be measured.
  • To be considered a measureable level, the level must include at least 50% of the leading and trailing edges.

The Linearity measurement results in Eye/Mask mode are affected by the settings in the PAM-N Analysis Setup dialog.

The linearity measurement in eye mode will not yield the same value as the linearity measurement in oscilloscope mode. This is due to the oscilloscope mode measurement being made at the center of individual symbols, while eye mode measurements are made on the center of all acquired symbols at once.

The PAM4 waveform must be displayed as a single-valued waveform. To accomplish this, turn pattern lock on using the :TRIGger:PLOCk command (requires instrument Option ETR).

Requires FlexDCA revision A.04.50 and above.

Measurement Identification

Avoid subtle programming errors! To ensure that the correct measurement is installed or queried, always explicitly identify a measurement when installing a measurement or querying a measured value, status, or detail. To identify a measurement, specify the measurement's source waveform (:SOURce child command). With some measurements, you may also need to specify other identifying values. Generally, when selecting a measurement using FlexDCA's GUI, if a dialog appears prompting you to select values, you should explicitly specify these values when remotely identifying the measurement. More information.

For example, to return the status of the measurement, :MEASure:OSCilloscope:PAM:LINearity:

flex.write(':MEASure:OSCilloscope:PAM:LINearity:SOURce CHAN1A')
if flex.query(':MEASure:OSCilloscope:PAM:LINearity:STATus?') == 'CORR';
    measurement = flex.query(':MEASure:OSCilloscope:PAM:LINearity?')
else:
	details = flex.query(':MEASure:OSCilloscope:PAM:LINearity:STATus:DETails?')
	reason = flex.query(':MEASure:OSCilloscope:PAM:LINearity:STATus:REASon?')

Child commands for measurement identification:

  • :MEASure:OSCilloscope:PAM:LINearity:SOURce
  • :MEASure:OSCilloscope:PAM:LINearity:DEFinition
  • :MEASure:OSCilloscope:PAM:LINearity:REGion

Example Command Sequence

:SYSTem:MODE OSCilloscope
				:CHAN1A:SIGNal:TYPE:AUTO OFF  //  Specify signal type.
				:CHAN1A:SIGNal:TYPE PAM4
				:TRIGger:PLOCk ON  //  Turn pattern lock on.
				:SYSTem:AUToscale
				:MEASure:OSCilloscope:PAM:LINearity:SOURce CHAN1A
				:MEASure:OSCilloscope:PAM:LINearity:DEFinition RLMA120
				:MEASure:OSCilloscope:PAM:LINearity
			:MEASure:OSCilloscope:PAM:LINearity?  //  Return measured value.