:MEASure:PEYE:JN
Command Syntax
:MEASure:PEYE:JN
Query Syntax
:MEASure:PEYE:JN?
Description
For a PAM4 waveform, displays a J1, J2, J3, J4, J5, J6, J7, J8, or J9 measurement in the Eye table. If the measurement is already listed, the measurement is moved to the top of the table. Use the query form of the command to return the measured value. The measurement is selected with the :MEASure:JITTER:PAM:EYE:JN:SJN
child command. JN measures the total jitter associated with a specific symbol error ratio (BER). To select the eye in the PAM4 eye diagram on which to return the measurement, use the :MEASURE:PEYE:JN:EYE
command. The measurement can be performed on one of three possible eyes as shown in the following picture: Eye 0/1, Eye 1/2, or Eye 2/3.
Select | Command |
---|---|
Signal eye | :MEASure:PEYE:JN:EYE
|
Jn measurement results for TJ associated with a specific symbol error ratio (BER) | :MEASure:PEYE:JN:SJN
|
PAM Waveform |
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:PEYE:JN
:
flex.write(':MEASure:PEYE:JN:SOURce CHAN1A') if flex.query(':MEASure:PEYE:JN:STATus?') == 'CORR'; measurement = flex.query(':MEASure:PEYE:JN?') else: details = flex.query(':MEASure:PEYE:JN:STATus:DETails?') reason = flex.query(':MEASure:PEYE:JN:STATus:REASon?')
Child commands for measurement identification:
:MEASure:PEYE:JN:SOURce
Example Command Sequence
:SYSTem:MODE JITTer :MEASure:PEYE:JN:SOURce CHAN1A :MEASure:PEYE:JN:SJN J2 :MEASure:PEYE:JN:EYE EYE2 :MEASure:PEYE:JN?
Measurement Ready?
To confirm that the measurement is ready to read, you can query the measurement's status:
if ('CORR' in Flex.query(':MEASure:PEYE:JN:STATus?')): measurement = Flex.query(':MEASure:PEYE:JN?')
If averaging is turned on (:ACQuire:AVERaging
), you can also confirm if the measurement result is ready by comparing the number of specified averages (:ACQuire:ECOunt?
) versus the number of measurement sweeps that have occurred (:MEASure:PEYE:JN:COUNt?
). The technique uses the :COUNt?
common measurement query. For example,
if (Flex.query(':MEASure:PEYE:JN:COUNt?') >= Flex.query(':ACQuire:ECOUNt?')): measurement = Flex.query(':MEASure:PEYE:JN?')
You can also use an acquisition limit lest to test that a number of waveform samples, or pattern acquisitions have completed before returning a measurement. Refer to the :LTESt:ACQuire:CTYPe
command.
Common Measurement Child Queries
This command supports the use of the following common measurement queries: :LOCation?
, :COUNt?
, :MAXimum?
, :MINimum?
, :MEAN?
, and :SDEViation?
.