:MEASure:JITTer:PJ

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

Command Syntax

:MEASure:JITTer:PJ

Query Syntax

:MEASure:JITTer:PJ?

Description

Performs an NRZ Periodic Jitter PJ (δ-δ) measurement, also known as BUJ (δ-δ). You can also send :MEASure:JITTer:BUJ, which performs the same measurement and returns the same value. The query form of the command returns the measured value. To selects the eye in the PAM4 eye diagram on which to return the measurement, use the :MEASURE:JITTer:PJ:EYE command.

A PJ (rms) measurement command is also available. Periodic Jitter, PJ (δ-δ) and BUJ (δ-δ), are one component of Deterministic Jitter (DJ). Whether PJ or BUJ is reported depends on the spectral method used to separate any BUJ from the Random Jitter (RJ). This setting is made with the :MEASure:JITTer:DEFine:SMEThod command and can be one of the following three choices: Auto, Spectral, and Tail Fit.

When Auto is selected, use the :MEASure:JITTer:SMEThod? query to determine the actual method used for the current data acquisition.

Sending this command displays the measurement if it is not already shown on the table. If the measurement is already displayed, the result is moved to the top of the Jitter table.

NRZ Waveform

This measurement can be made on PAM4 waveforms. See the sidebar in this topic. On PAM4 signals, Eye 0, Eye 1, or Eye 2 can be specified. The measurement results are moved to the top of the Jitter table.

PAM4 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:JITTer:PJ:

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

Child commands for measurement identification:

  • :MEASure:JITTer:PJ:SOURce

Example Command Sequence

:SYSTem:MODE JITTer
:MEASure:JITTer:PJ:SOURce CHAN1A
:MEASure:JITTer:PJ?

Measurement Ready?

To confirm that the measurement is ready to read, you can query the measurement's status:

if ('CORR' in Flex.query(':MEASure:JITTer:PJ:STATus?')):
	measurement = Flex.query(':MEASure:JITTer:PJ?')

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:JITTer:PJ:COUNt?). The technique uses the :COUNt? common measurement query. For example,

if (Flex.query(':MEASure:JITTer:PJ:COUNt?') >= Flex.query(':ACQuire:ECOUNt?')):
	measurement = Flex.query(':MEASure:JITTer:PJ?')

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?.