GUIDE-1

User Guide for Desktop Phase-noise Calculator

A guide to using a desktop phase-noise calculator freely available from two sources: (1) a public-facing calculator on the JitterLabs website, and (2) a calculator integrated into the JitterLabs app.

Subscribe v1.6 (December 6, 2016)    

1. Introduction

This guide discusses a phase-noise calculator freely available from two sources: a public facing calculator on the jitterlabs.com website [1], and a calculator integrated into the JitterLabs app [2] for registered users' access. The only difference between these versions is how the jitter filter is input. While both versions allow a user to enter a jitter filter manually, the JitterLabs app version enables users to download predefined jitter filters associated with industry standards (or internal corporate standards that you create, etc.) from the cloud. Also, while both versions are free, the JitterLabs app requires an additional step to register you and your organization. The calculator runs in modern desktop browsers (Internet Explorer, Firefox, Chrome, Safari), and requires an Adobe Flash Player plug-in (version 11.1 or later).

Visit helpx.adobe.com/flash-player.html to view your Flash Player version, install the latest version, and/or troubleshoot installations. Note that Chrome and newer versions of Internet Explorer browsers embed and update Flash Player automatically.

This guide is organized according to the four tabs that make up the calculator.

  1. In the "Enter Phase-noise Data" tab, enter at least two phase-noise data points (in dBc/Hz) including offset frequencies (in Hz). You may optionally enter spurious noise (in dBc) and their related offset frequencies (in Hz).
  2. Click the "Enter Jitter Filter" tab and either accept the default unity-gain filter, or manually enter or download a jitter filter.
  3. Click the "View PN Results" tab to view the integrated phase noise results.
  4. Click the "View ADEV Results" tab to view Allan deviation computed from phase noise data.

2. Phase-noise Data

The calculator opens in the Enter Phase-noise Data tab, as shown in Figure 2.1. The buttons and icons located in the upper-right corner are common to all tabs, and function as follows.

  • Save as PDF button. This button is only enabled when viewing either the View PN Results or View ADEV Results tab. Click this button when you wish to receive an e-mail summarizing the calculator's results in PDF format (see Chapter 4 for more information).
  • Reset button. Click this button to reset all tabs to their default state.
  • Feedback icon. Click this icon to submit feedback to JitterLabs. By default, your identity is hidden, so feel free to tell us what's on your mind. Of course, if you wish us to reply, please provide your name and contact information. Note that this icon is only displayed in the public-facing calculator (in the JitterLabs app, select from the main menu, JitterLabs > Submit Feedback).
  • Video Icon. Click here to watch a video explaining the difference between public and JitterLabs app calculators.
  • More Information icon. Click here to open the user guide in a new browser window.
  • Help icon. Hover the mouse over this icon to display helpful information about the screen.

Figure 2.1 Use the Enter Phase-noise Data tab to input phase noise and (optionally) spurious noise data.

The Enter Phase-noise Data tab must be completed before viewing the results tabs. The minimum requirement for completing the Enter Phase-noise Data tab is to enter a value in the Clock Frequency field from 10 kHz to 100 GHz, and at least two data points for phase noise (note that the spurious noise table is optional).

When entering numbers in the calculator, scientific notation is supported using the letter "e" or "E" to represent ten raised to some power. For example, entering "1e9" or "1E9" in the Clock Frequency field represents 1 GHz.

To enter data into a table cell, double-click a cell and enter a number. Only valid characters are accepted (e.g. if you keep pressing a keyboard key and it's not appearing in the field, that key is probably not a valid character). Press the Tab key to move to the next cell, or press the Return (or Enter) key to complete editing the cell. Click the green "+" icon or the red "-" icon to add or delete a row in the table, respectively. The chart auto-updates as needed to plot the table data.

Valid offset frequencies are from 1 Hz to 50 GHz. Neighboring offset frequencies cannot be closer than 0.001 Hz. Offset frequencies must increase monotonically with each subsequent row.

Valid phase noise values are from -300 to 20 dBc/Hz.

Valid spurious noise values are from -300 to 20 dBc.

To display more or less table rows, left-click-and-drag the gray horizontal divider bar located between the two tables vertically up or down, as shown in Figure 2.2.

Figure 2.2 Drag the divider bar between tables to resize the tables.

Typically you should enter the Clock Frequency data first, the phase-noise table data second, and the spurious-noise table data third. Doing so ensures that when you enter spurious-noise data, a tool tip displays converting the spurious-noise data (which you enter in dBc) to units of seconds peak-peak, as shown in Figure 2.3. This process requires the Clock Frequency data to be valid, otherwise the tool tip displays a reminder to enter the Clock Frequency.

Figure 2.3 If the Clock Frequency is entered (e.g. 1e+8 is shown in the figure), then entering a spurious-noise value displays a tool tip that converts units of dBc to seconds peak-peak.

The following equation is used to convert units from dBc to seconds peak-peak:

spur_s_pp = 2×SQRT(2)×SQRT[2×10^(spur_dBc/10)]/(2×π×fc)

where spur_s_pp is the spurious noise in seconds peak-peak, spur_dBc is the spurious noise in dBc, and fc is the Clock Frequency in Hz.

Note that the spurious noise must be entered in units of dBc and not dBc/Hz. Typically an instrument's software can be configured to output spurs in dBc directly, by accounting for the resolution bandwidth of the instrument.

All of the spurious-noise data points must fall inside the offset-frequency range used by the phase-noise table. The spurious-noise amplitude must also extend above the phase-noise curve. Otherwise, the spurious-noise data is displayed in red italic font, as shown in Figure 2.4.

Figure 2.4 Spurious-noise data must fall inside the frequency range of the phase-noise data, and the amplitude of spurious noise must extend above the phase-noise data, otherwise the data points are shown in red italic fonts.

Instead of entering data directly in the phase-noise table, it may be more convenient to import data using a comma-separated value (CSV) list. Click the "click here" hyperlink located below the phase-noise table in the Enter Phase-noise Data tab. This opens the "Import Phase-noise Data" popup window shown in Figure 2.5.

Figure 2.5 Use the "Import Phase-noise Data" popup window to enter data manually or copy/paste it in from an external text file.

For your security, the application runs in a sandbox that prevents access to your file system. As a result, if you wish to import data, you must either enter it manually or copy-and-paste it into the text area in this window. This is particularly useful for entering data from a text file saved by a test instrument, such as a spectrum or single-source analyzer.

Each line must contain an offset frequency in Hz, followed by a comma character, followed by phase noise in dBc/Hz. Any header lines appearing before the data are ignored. Empty lines are not permitted. Spurious noise, if present, must be removed from this data, and manually entered (separately) into the spurious-noise table in the Enter Phase-noise Data tab.

Figure 2.6 shows the Enter Phase-noise Data tab with example data.

Figure 2.6 Example data showing chart with zoom controls.

There are two methods to zoom in the chart. The first method is to left-click-and-drag one of the zoom-slider thumbs left or right, as illustrated in Figure 2.6. Note that the zoom-slider's width is proportional to the x-axis width, and that the zoom-slider thumb auto-snaps to decade (frequency axis) intervals. For example, dragging the left thumb to the mid-point of the slider zooms-in on the right-half of the plot. The zoom-slider's bar may also be dragged left or right to pan the zoom window as desired. The y-axis auto-scales after each zoom.

The second zoom method is simply to left-click-and-drag to define a rectangular zoom window inside the chart, as shown in Figure 2.7.

Figure 2.7 Left-click-and-drag to define a zoom window inside the chart.

Regardless of how the chart is zoomed, click the Zoom Reset icon shown in Figure 2.6 to reset the chart.

These zoom controls work the same for charts displayed in the other tabs.

3. Jitter Filter (Optional)

After completing the Enter Phase-noise Data tab, you can optionally select the Enter Jitter Filter tab. The default filter is a unity gain (i.e. Y=1) filter shown in Figure 3.1, which is essentially no filter. You can accept this filter by clicking the View PN Results tab (and proceed to Chapter 4), or you can change the jitter filter as follows.

There are two methods to input a jitter filter. The first method is to click the Download icon (which looks like a blue cloud) in the "Y, System Transfer Function" section. This feature is only available in the JitterLabs app calculator (not the public-facing website version of this calculator). In the "Select A Specification" popup window that appears (refer to GUIDE-2 [3] for more information about using this popup window), highlight a row for a specification then click the "Select" button. The jitter filter parameters used by the selected specification populate the Enter Jitter Filter tab. You can accept or edit these values as needed.

The second method to input a jitter filter is to manually enter a jitter filter by clicking the Edit icon (e.g. pencil image) in the "Y, System Transfer Function" section. The System Transfer Function popup window opens as shown in Figure 3.2. Select a function in the list provided to view an example application for that function.

As an example, we'll click the Y=H1×(1-H2) function then click the "Select" button. The popup window closes, and the required block transfer function sections display in the Enter Jitter Filter tab, as shown in Figure 3.3.

Figure 3.1 Use the Enter Jitter Filter tab to create a jitter filter to apply to the phase- and spurious-noise data.

There are two methods to input a jitter filter. The first method is to click the Download icon (which looks like a blue cloud) in the "Y, System Transfer Function" section. This feature is only available in the JitterLabs app calculator (not the public-facing website version of this calculator). In the Select A Specification popup window that appears (refer to GUIDE-2 [3] for more information about using this popup window), highlight a row for a specification then click the "Select" button. The jitter filter parameters used by the selected specification populate the Enter Jitter Filter tab. You can accept or edit these values as needed.

The second method to input a jitter filter is to manually enter a jitter filter by clicking the Edit icon (e.g. pencil image) in the "Y, System Transfer Function" section. The System Transfer Function popup window opens as shown in Figure 3.2. Select a function in the list provided to view an example application for that function.

Figure 3.2 Select a jitter-filter function in the System Transfer Function popup window.

As an example, we'll click the Y=H1×(1-H2) function then click the "Select" button. The popup window closes, and the required block transfer function sections display in the Enter Jitter Filter tab, as shown in Figure 3.3.

Figure 3.3 A custom jitter filter requires you to edit or download block transfer functions.

As done for the system transfer function, you must now edit or download functions for each of the block transfer function sections to finish defining the system transfer function.

To download a block transfer function, select its Download icon (e.g. cloud image shown in Figure 3.3). In the "Select A Function" popup window that appears (refer to GUIDE-2 [3] for more information about using this popup window), highlight a row for a function then click the "Select" button. The parameters used by the selected function populate the appropriate block transfer function section in the Enter Jitter Filter tab. You can accept or edit these values as needed.

Alternatively, you can manually enter a block transfer function by selecting the Edit icon (e.g. pencil image shown in Figure 3.3) for a block transfer function of interest. Select a function in the Block Transfer Function popup window that appears, as shown in Figure 3.4.

Figure 3.4 Select an equation in the Block Transfer Function popup window.

Once you select a function, the required fields appear in the Enter Jitter Filter tab (see Figure 3.3). Enter values for all parameters required by the selected function. You can optionally click the Plot icon to graph the function.

Repeat this process for all required block transfer functions. An example completed Enter Jitter Filter tab is shown below.

Figure 3.5 An example jitter filter.

When you're satisfied with the jitter filter entered in this tab, click the View PN Results (or View ADEV Results) tab to apply this filter to the data in the Enter Phase-noise Data tab.

4. View PN Results

The calculator computes results when the View PN Results tab is clicked. For reference, the Clock Frequency value is shown in the upper left corner of the tab, along with a Spur Count number that summarizes the total number of spurs entered in the Enter Phase-noise Data tab.

Figure 4.1 shows an example calculation, where computed results are shown on the left for unfiltered and filtered data. Click the checkbox for Unfiltered Results, Filtered Results, or Jitter Filter to toggle its respective plot trace on and off. The checkbox color matches the color of its corresponding plot trace.

Figure 4.1 Example calculator results.

The Rotate Plot icon is located in the upper-left corner of the top plot. Click this icon once to maximize the top plot, click again to maximize the lower plot, and click a third time to return to the original plot arrangement.

Click-and-drag the horizontal divider bar located between the two plots to resize the plots.

The top plot contains traces for the jitter filter, the unfiltered phase- and spurious-noise data, and the filtered phase- and spurious-noise data. The phase-noise data in this plot has units of dBc/Hz, whereas the spurious-noise data has units of dBc. Observe for the y-axis, that the filtered curve equals the jitter filter plus the unfiltered curve.

Click the floppy-disk icon shown in Figure 4.1 to access the plotted data. This button opens a new window to copy the chart data to your system clipboard, which is useful to paste into other applications (such as Microsoft Excel).

The bottom plot contains traces for unfiltered and filtered normalized variance versus offset frequency. A normalized-variance plot shows the contribution of phase-noise (spurious noise is ignored here) to the computed random phase jitter result in seconds RMS. A simple way of interpreting the variance curve, is that the square root of the area under the variance curve equals the random phase jitter value. Likewise, the square root of the area under the normalized variance curve equals 100%.

Thus, offset-frequency regions having larger normalized-variance values contribute more to the random phase jitter number than offset-frequency regions having smaller normalized-variance values. For example, Figure 4.1 shows that low offset frequencies in the unfiltered phase-noise plot contribute most to the unfiltered random phase jitter value of 2.853e-13 s RMS (because the magenta-colored unfiltered normalized-variance curve is largest at low offset frequencies). Similarly, the high offset frequencies in the filtered phase-noise plot contribute most to the filtered random phase jitter value of 2.232e-13 s RMS (because the yellow-colored filtered normalized-variance curve is largest at high offset frequencies).

The phase-noise data (without spurs) is integrated across the full range of offset frequencies for which data exists. This integration uses conventional techniques [4] to compute the following metrics (which quantify random noise) for both unfiltered and filtered data sets:

Random Phase Jitter (RMS seconds) = Random RMS Noise (radians) / (2×π×fc)

Random RMS Noise (radians) = SQRT(2×integ[10^(L(f)/10)])

Random RMS Noise (degrees) = Random RMS Noise (radians) × 180/π

Random EVM (dB) = 20 × LOG10( 0.01 × Random EVM in % )

Random EVM (% RMS) = 100 × SQRT( 2 - 2 × exp(-0.5 × (Random RMS Noise in radians)^2) )

Random Residual FM (Hz) = SQRT(2×integ(f^2×10^(L(f)/10)))

where f is the offset frequency, L(f) is the set of phase-noise data (without spurs) as a function of f, integ is the integral over all offset frequencies, fc is the Clock Frequency in Hz, LOG10 is the base 10 logarithm, and exp(n) is the math constant e (e.g. 2.7183) raised to the power of n. Note that the random error vector magnitude (EVM) is computed [5,6] from phase noise without spurs, and assumes a very large energy-per-symbol to noise-density ratio (e.g. ES/N0) for QPSK modulated symbols.

For spurious-noise data, additional metrics (which quantify deterministic noise) are computed for both unfiltered and filtered data sets as follows.

Spur Phase Jitter (RSS) = computed by adding in root-sum-square (RSS) fashion each individual spurious-noise amplitude in seconds RMS. Note that spurious phase jitter in seconds RMS equals spurious phase jitter in seconds peak-peak divided by 2×SQRT(2).

Spur Phase Jitter (linear) = computed by linearly adding each individual spurious noise peak-peak amplitude in seconds peak-peak. See Chapter 2 to convert spurious noise from units of dBc to seconds peak-peak. Note that this calculation assumes all spurs are independent and uncorrelated to each other (which may not always be true; for example, if the spurs are harmonically related).

Max Spur, Amptd (dBc) = the amplitude of the largest-amplitude spur, in dBc.

Max Spur, Amptd (s pp) = the amplitude of the largest-amplitude spur, in seconds peak-peak.

Max Spur, Freq = the offset frequency of the largest-amplitude spur.

5. View ADEV Results

The calculator computes results when the View ADEV Results tab is clicked. Allan deviation (ADEV) is computed from phase noise [7,8] as a function of tau (τ) as follows.

Llinear(f) = 10^( L(f) / 10 )

Sy(f) = 2 × f2 × Llinear(f) / vo2

arg = Sy(f) × sin4(π × τ × f) / (π × τ × f)2

integ = integral of arg over f, from flow to fhigh

ADEV(τ) = sqrt( 2 × integ )

where π is 3.14159, vo is the average clock frequency in seconds, f is the offset frequency in Hz, L(f) is the single-sided phase noise in dBc/Hz, and flow and fhigh are the lowest and highest offset frequencies (respectively) in Hz that were entered into the calculator.

This equation ignores spurious noise. It also assumes the noise power above fhigh is small, which is true when the spectral density of phase fluctuations (in rad2/Hz) integrated from fhigh to infinity is much less than 1 rad2.

The calculated ADEV is most accurate roughly between τlow = 10 / fhigh and τhigh = 0.1 / flow (e.g. between the first and last decade of tau data, which is 10 µs to 10 ms in Figure 5.1).

Figure 5.1 Example results showing filtered (orange) and unfiltered (green) Allan deviation.

As discussed above, click the floppy disk icon to access chart data, so you can copy it to your system clipboard (and paste into another application, such as Microsoft Excel).

6. Save as PDF

Clicking the "Save as PDF" button opens the popup window shown in Figure 4.2. Note that the E-mail Address field is only displayed in the public-facing website calculator, since the JitterLabs app version requires you to register and login (after which the application is aware of and uses your registered e-mail address).

Figure 6.1 Clicking the "Save as PDF" button opens this popup window.

Enter an E-mail Address, File Name, and descriptive Report Title in the fields provided. Click the checkbox to include the Allan deviation plot, and select a paper size. You may optionally add a note in the User Note section, which will appear in the first page of the report. Use this User Note space to enter part numbers, measurement details, or other critical parameters you don't want to forget. When complete, click the "Save" button to submit the form. An e-mail is auto-generated and sent to your inbox, with the calculator results attached as a PDF file.

7. References

[1] JitterLabs Calculators

[2] The JitterLabs App

[3] GUIDE-2, "User Guide for the JitterLabs App: Registered-user and Member Consoles," JitterLabs.

[4] ISO/IEC Technical Report 14165-117, Edition 1.0, Information Technology ‐ Fibre Channel ‐ Part 117: Methodologies for jitter and signal quality (MJSQ), 2007, Annex E.2, pp. 220-221.

[5] A. Georgiadis, "Gain, phase imbalance, and phase noise effects on error vector magnitude." IEEE Transactions on Vehicular Technology, pp. 443‐449, 2004. See equation 40.

[6] http://www.dsplog.com/2012/07/09/evm-phase-noise/

[7] "Time domain oscillator stability measurement Allan variance," Rhode & Schwarz, Application Note (1EF69_E3), Feb. 2012. https://cdn.rohde-schwarz.com/pws/dl_downloads/dl_application/application_notes/1ef69/1EF69_4e_TD_Osc_Stability_Allan.pdf

[8] P. C. Chang, H. M. Peng, and S. Y. Lin, "Allan variance estimated by phase noise measurements." 36th Annual Precise Time and Time Interval Meeting, 2004, Paper 14, pp. 165-171. http://tycho.usno.navy.mil/ptti/2004papers/paper14.pdf

8. Revision History

Table 8.1 Revision History.