:MEASure:EYE:PAM:LINearity
Command Syntax
:MEASure:EYE:PAM:LINearity
Query Syntax
:MEASure:EYE:PAM:LINearity?
Description
Starts Eye/Mask mode's PAM4 Linearity measurement, which measures the linearity RLM (Ratio Level Mismatch) between all four amplitude levels (0, 1, 2, 3) of a PAM4 eye diagram. 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.
Good Linearity | Poor Linearity |
---|---|
V3-2 = V2-1 = V1-0 | V3-2 ≠ V2-1 ≠ V1-0 |
![]() |
![]() |
PAM linearity is measured as:
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.
Related Commands
:MEASure:PAM:EYE:ESTiming
|
Receiver Sample Timing | Configures the timing for sampling the signal data for all PAM measurements in Eye/Mask mode. |
:MEASure:PAM:EYE:ELMethod
|
Eye Center Location | Selects the basis for determining the location of an eye's center on the waveform: at maximum eye width or maximum eye height. |
:MEASure:PAM:EYE:PPERcent
|
Eye Level Width | Defines the timespan (in percentage of symbol width) over which an eye's amplitude level is measured. |
:MEASure:PAM:EYE:TIME:LTDefinition
|
Time of Level | Specifies the method used to locate the time at which to measure an eye's level. |
This Eye mode measurement can be applied to both NRZ and PAM4 waveforms.
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.
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:EYE:PAM:LINearity
:
flex.write(':MEASure:EYE:PAM:LINearity:SOURce CHAN1A') if flex.query(':MEASure:EYE:PAM:LINearity:STATus?') == 'CORR'; measurement = flex.query(':MEASure:EYE:PAM:LINearity?') else: details = flex.query(':MEASure:EYE:PAM:LINearity:STATus:DETails?') reason = flex.query(':MEASure:EYE:PAM:LINearity:STATus:REASon?')
Child commands for measurement identification:
:MEASure:EYE:PAM:LINearity:SOURce
:MEASure:EYE:PAM:LINearity:DEFinition
Example Command Sequence
:SYSTem:MODE EYE :CHAN1A:SIGNal:TYPE:AUTO OFF // Specify signal type, if needed. :CHAN1A:SIGNal:TYPE PAM4 :SYSTem:AUToscale :MEASure:EYE:PAM:LINearity:SOURce CHAN1A :MEASure:EYE:PAM:LINearity:DEFinition RLMA120 :MEASure:EYE:PAM:LINearity // Measure and return value. :MEASure:EYE:PAM:LINearity?