# :MEASure:CLOCk:PPERiod

Period - Period Commands

- :MEASure:CLOCk:PPERiod
- :MEASure:CLOCk:PPERiod:EDIRection
- :MEASure:CLOCk:PPERiod:FAVorite
- :MEASure:CLOCk:PPERiod:LOCation?
- :MEASure:CLOCk:PPERiod:NPERiods
- :MEASure:CLOCk:PPERiod:OCCurrences
- :MEASure:CLOCk:PPERiod:REGion
- :MEASure:CLOCk:PPERiod:SOURce
- :MEASure:CLOCk:PPERiod:STATus?
- :MEASure:CLOCk:PPERiod:STATus:DETails?
- :MEASure:CLOCk:PPERiod:STATus:REASon?
- :MEASure:CLOCk:PPERiod:UREFerence:STATe
- :MEASure:CLOCk:PPERiod:UREFerence:VALue

## Command Syntax

    :MEASure:CLOCk:PPERiod

## Query Syntax

    :MEASure:CLOCk:PPERiod?

## Description

This command moves the Period - Period measurement to the top of the Results table and displays the measurement if it is not already shown on the table.

The query form of the command returns the measured value.

The Period-Period measurement takes a group of cycles and measures the period from the first edge of the first cycle of the group to the final edge of the last cycle of the group. The n-period of the first group is measured and subtracted from the n-period of the second group. After shifting to the right by one cycle the next measurement is made The following figure shows how a Period-Period jitter measurement is made for N = 3. Use `:MEASure:CLOCk:PPERiod:NPERiods` to specify the number of consecutive periods.

Once all of the groups of cycles of the waveform are measured the statistics are calculated. The statistics are the values accumulated over all of the trigger cycles that have occurred.

To perform what used to be called cycle-cycle jitter (or cyc-cyc jitter), use Period-Period and set N=1.

Use `:MEASure:CLOCk:PPERiod:REGion` to specify the waveform data region over which the measurement is made.

Sources can be any displayed waveform, waveform memory, or function. For example, CHAN1_1, WMEMory1, or FUNCtion1.

Use `:MEASure:TBASe:GENeral:METHod` to change the definition of the waveform's top/base. Use `:<waveform>:THReshold:GENeral:METHod` to change the definition of the waveform's threshold.

## Example Command Sequence

    :MEASure:CLOCk:PPERiod:SOURce CHAN1_1
    :MEASure:CLOCk:PPERiod:EDIRection RISing
    :MEASure:CLOCk:PPERiod:NPERiods 3
    :MEASure:CLOCk:PPERiod
    :MEASure:CLOCk:PPERiod?

## Measurement Ready?

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

    if ('CORR' in Infiniium.query(':MEASure:CLOCk:PPERiod:STATus?')):
    	measurement = Infiniium.query(':MEASure:CLOCk:PPERiod?')

If averaging is turned on (`:ACQuire:SMODe AVERage`), you can also confirm if the measurement result is ready by comparing the number of specified averages (`:ACQuire:COUNt?`) versus the number of measurement sweeps that have occurred (`:ACQuire:COUNt?`). The technique uses the `:COUNt?` common measurement query. For example,

    if (Infiniium.query(':MEASure:CLOCk:PPERiod:COUNt?') >= Infiniium.query(':ACQuire:COUNt?')):
    	measurement = Infiniium.query(':MEASure:CLOCk:PPERiod?')

You can also use an acquisition limit test to test that a number of waveforms or samples have completed before returning a measurement. Refer to the `:LTESt:ACQuire:CTYPe` command.

## Querying Measurement Results and Statistics

You can query measurement results using the `:MEASure:CLOCk:PPERiod?` query after making the proper instance settings.

If a measurement is installed into Results table (using the `:MEASure:CLOCk:PPERiod` command) and you have made the proper instance settings, you can query statistics using common child queries.

Also, you can query measurement results and statistics directly from the Results table (without having to make the proper instance settings beforehand). See Querying Measurement Results and Statistics.