• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. RF Design
  3. Phase noise to phase jitter for square waves

Stats

  • Locked Locked
  • Replies 17
  • Subscribers 66
  • Views 24749
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Phase noise to phase jitter for square waves

yizh
yizh over 12 years ago

Hi,

I'm simulating a free running oscillator for jitter and I have the following question:

I have to run a "PNOISE - sources" simulation in order to recieve phase noise, since I have to filter the phase noise before integrating in to extract jitter (in order to mimic a PLL / CDR transfer function).

A few papers were written on the subject, some of them state that the integration upper limit is Fc/2 while others state that it is a few Fc. I assume that it should be a few Fc if the tested wave is a sine wave (i.e. no harmonics appear in the phase noise) and Fc/2 if it is a square wave.

As far as I understand, for square waves the jitter behavior of the first harmonic is similar to the jitter behavior of the square wave, thus it is assumed that integration up to Fc/2 takes into account only the first harmonic, otherwise the jitter will be summed more than once.

Please correct me if so far I'm wrong. Otherwise, here is a correction that I would like to do in my PNOISE simulation settings: instead of mixing the noise with many harmonics (i.e. Maximum sideband >> 1) and then integrating up to Fc/2, I might set maximum sideband to 1, thus the noise will be mixed only with the first harmonic, such that I will see a phase noise as if I had a pure sine wave at the input and not a square wave. Then, I would integrate up to a few Fc and see a more accurate jitter result.

In my simulations I see substantial difference between the two options, that's why the question is very important.

Any respose will we appreciated. I would especially like to hear Andrew Beckett's opinion on this.

Thanks!

 

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    I think there are some assumptions you are making here which aren't necessarily correct. In general you should use the "jitter" noisetype if you want to measure jitter. There are two approaches - "FM" jitter (which uses a conversion from the PM part of the noise, as computed with the "modulated" noise type to a time metric), and "PM" jitter (which samples the noise at the specified threshold crossing, and then uses this in conjunction with the slope of the signal at the threshold crossing to compute the equivalent time variation).

    The FM approach (which is not disimilar to what you are trying to do) is best suited to sinusoidal (or near-sinusoidal signals) rather than square-ish waveforms; for those (particularly when used in decision making circuits, or clock recovery circuits), the PM jitter approach is better.

    In addition, integrating the noise has to be done carefully - for example, making sure that you integrate the area under the curve properly when you have a log axis - particularly for handling any flicker noise. A lot of thought and attention has gone into the integration in our jitter direct plot form.

    I don't think it makes sense to set maxsideband to 1 and then integrate over multiples of the carrier. For a start, the noise will be infinite at multiples of the carrier (1/f is infinite at f=0 - of course, noise is not really that large at low frequencies, because non-linear effects start to come into play), but more importantly if you are only including noise contributions from up to the first side band, high frequency noise is being excluded! In many oscillators the noise in sidebands 0 and +/-1 are the biggest, but of course it depends...

    Whilst the phase variation of the fundamental harmonic of a square wave will be similar to that of a sine wave, it won't be precisely the same, and I don't think that means that jitter is the same either - the PM jitter approach will be better.

    Note that it doesn't make sense to sweep past half the fundamental frequency when using PM jitter, because it adds an ideal sampler at the fund frequency rate to the output of the circuit, which naturally folds the noise from higher frequencies - so it is sufficient to sweep to half the fundamental. Sweeping beyond that will mean you double count the noise. Maybe that's what you're read?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • yizh
    yizh over 12 years ago
    Quoting:

    I think there are some assumptions you are making here which aren't necessarily correct. In general you should use the "jitter" noisetype if you want to measure jitter. There are two approaches - "FM" jitter (which uses a conversion from the PM part of the noise, as computed with the "modulated" noise type to a time metric), and "PM" jitter (which samples the noise at the specified threshold crossing, and then uses this in conjunction with the slope of the signal at the threshold crossing to compute the equivalent time variation).

    The FM approach (which is not disimilar to what you are trying to do) is best suited to sinusoidal (or near-sinusoidal signals) rather than square-ish waveforms; for those (particularly when used in decision making circuits, or clock recovery circuits), the PM jitter approach is better.


    Thanks for the answer.

    First, a word about my motivation or - why pnoise-jitter does not suit my needs. In my application, jitter has to be filtered prior to integration with a physical (i.e. not a "brick wall") filter. Take for example IEEE KX spec (annex 70.7.1.9) which states: "For the purpose of jitter measurement, the effect of a single-pole high-pass filter with a 3 dB point at 750 kHz is applied to the jitter". Pnoise-jitter does not have this capability as far as I've seen, thus I must run jitter-sources, extrace phase noises, multiply it with the filter and then integrate.So, even though the wave I measure is a square-ish wave, I don't see an option to run the PM approach.Please correct me if I'm wrong.

    Quoting:

    I don't think it makes sense to set maxsideband to 1 and then integrate over multiples of the carrier. For a start, the noise will be infinite at multiples of the carrier (1/f is infinite at f=0 - of course, noise is not really that large at low frequencies, because non-linear effects start to come into play), but more importantly if you are only including noise contributions from up to the first side band, high frequency noise is being excluded! In many oscillators the noise in sidebands 0 and +/-1 are the biggest, but of course it depends...


     I think that the noise will not be infinite at multiples of the carrier since maxsideband=1, so no harmonic is viewed at the phase noise plot. The plot is smooth at the harmonics.

    High frequence noise, as my understanding goes, is not excluded since integration goes up to a high frequency. This is equivalent to folding the noise around half the carrier frequency. Only in my proposition noise is folded only "implicitly" since I don't actually fold but instead integrate up to a high frequency.

     It is true that noise mixing with high harmonics is not taken into account, but this is due to the assumption that I described at the first post of this thread.

    Quoting:

    Whilst the phase variation of the fundamental harmonic of a square wave will be similar to that of a sine wave, it won't be precisely the same, and I don't think that means that jitter is the same either - the PM jitter approach will be better.

    Note that it doesn't make sense to sweep past half the fundamental frequency when using PM jitter, because it adds an ideal sampler at the fund frequency rate to the output of the circuit, which naturally folds the noise from higher frequencies - so it is sufficient to sweep to half the fundamental. Sweeping beyond that will mean you double count the noise. Maybe that's what you're read?


    No, I'm speaking of phase noise integration, i.e. FM jitter. See for example here:

    http://www.maximintegrated.com/app-notes/index.mvp/id/3359

    Or in the Cadence app note titled "Jitter Measurements Using SpectreRF", eq. 1-17.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Frank Wiedmann
    Frank Wiedmann over 12 years ago

    Pnoise jitter analysis also gives you the spectrum of the sampled noise as a result. You can multiply this with any function you like before doing the integration. This is actually being done to calculate the accumulated (k-cycle) jitter Jc, where the spectrum is multiplied with a sine function before integration (see http://www.designers-guide.org/Forum/YaBB.pl?num=1224609785/9#9).

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Frank made exactly the same suggestion that I was going to make - you could use an svcvs source from analogLib to describe the filter in the s-domain. 

    If maxsideband is 1, you are only including the noise contributions from sidebands +/-1 and 0 (so you will get very high up-converted flicker noise if you sweep near to the carrier frequency). You won't get noise contributions from higher frequencies "folded" by the harmonics of the carrier because you simply are not including them. Sweeping over a wide frequency range is NOT the same as including lots of sidebands - you are sweeping the output frequency yes, but you've removed the simulator's ability to compute all the transfer functions from the noise sources to the output - you've only included three noise transfer functions.

    I think the approach you're suggesting is flawed - best is to include the filter in your circuit (it can be ideal), and then use the PMjitter approach.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • yizh
    yizh over 12 years ago

     Andrew, Frank,

    Let me get back to my original claim before I answer your two latest comments. Let's leave the filtration aside for now.

    My claim was that it is enough  to look at the first harmonic's jitter when analyzing a square wave's jitter.

    Using what I just learnt on ponise -> jitter -> pm, I thought of the following experiment: Let us take the "Jee" result of PM jitter simulation as a reference point, with integration at the range [1K, Fc/2] and maxsideband=fullspectrum. Next, let us see if my claim holds, by running a "sources" simulation with maxsideband=1 at the range [1K,300*Fc], then integrate phase noise and extract the phase jitter. If results are close, that would be an indication for the correctness of my claim (I will speak about theory later).

    So, I ran the simulation on the crystal oscillator that I currently design (fullspectrum resulted in 3).

    For the PM option, jitter was 1.9ps for one of the edges and  1.96ps for the other.

    For the "sources" option, jitter was 1.94ps.

    I also tried a third option: "sources",  fullspectrum, integration [1K, Fc/2]. Result was 1.2ps.

    So I think that this is a strong indication to my claim's correctness.

     

    Back to thoery, qouting:

    If maxsideband is 1, you are only including the noise contributions from sidebands +/-1 and 0 (so you will get very high up-converted flicker noise if you sweep near to the carrier frequency). You won't get noise contributions from higher frequencies "folded" by the harmonics of the carrier because you simply are not including them. Sweeping over a wide frequency range is NOT the same as including lots of sidebands - you are sweeping the output frequency yes, but you've removed the simulator's ability to compute all the transfer functions from the noise sources to the output - you've only included three noise transfer functions.

    I definitely agree that folding the high frequency content of the base harmonic noise is not the same as integrating the high frequency content of the high order harmonics, that were folded by the higher harmonics into the frequency range of interest (say [0,Fc/2]). BUT this is done on purpose, assuming that the claim is correct. A nice illustration of this is below, taken from spectreRF user guide.

    So the point is that I believe that (1) only one skirt should be taken and (2) that skirt is folded by the sampling nature of the signal's edges hence its high frequency content should be integrated.

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    I'm still not convinced that what  you're claiming is correct (I'm going to consult with R&D to try to come up with a more convincing explanation). For a start, in your circuit the noise around the first sideband of the oscillator may be dominant, and so neglecting the higher sidebands may not make a significant difference - so it's hard to confirm anything for sure in the general case from the numbers you've given.

    BTW, the plots you are showing from the SpectreRF manual are actually explaining the effect of maxsidebands in how inclusion of noise contributions works in the simulator.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Frank Wiedmann
    Frank Wiedmann over 12 years ago

    I don't think that your simulation results can be generalized. For your circuit, oscillator phase noise is probably the dominant noise source. In this case, the jitter of every sideband is the same. This is generally not the case for jitter due to other noise sources.

    If I have to simulate jitter, I always use pnoise PM jitter analysis. It's simply the most direct way to do it, which reduces the risk of making an error in the simulation setup.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • yizh
    yizh over 12 years ago

     I don't have any clear argument why it could be generalized, it just makes sense to me to say so.

    Anyway, I can say that (1 - Frank) the dominant noise source is not the oscillator but the stages that extract CMOS clock from the sine wave at the oscillator loop and (2 - Andrew) when I'm not neglecting the higher sidebands and integrate with fullspectrum, range [1K,300*Fc] I see jitter of 23ps so the higher sidebands do make a significant difference.

     

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 12 years ago

    Yizhak,

    I've attached an explanation from my colleague Edouard Ngoya from our R&D team. Edouard was having trouble replying on the forum himself, so I'm doing it on his behalf. 

    I've attached it as a PDF because it has some equations in which are not rendered well in the forum. I think you'll find it an interesting explanation - please note that there's also a question at the end:

    A question Yizh – since you have the possibility of computing an effective threshold crossing jitter figure using
    Pnoise/noisetyp=PM jitter what is the primary reason why you prefer the FM one despite of the possible limitations
    ? I didn’t clearly get it.

    Kind Regards,

    Andrew.

    Jitter-discussion.pdf
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • yizh
    yizh over 12 years ago
    Edouard and Andrew,

    Thanks for the detailed response.

    A few comments:

    1. How was the expression to oscillator signal as a sum of exponents/sines was developed? I'm not sure that it is so straight forward since a disturbed clock is no longer a periodic signal, thus some assumptions have to be performed in order to develop a Fourier series for it.

    2. I understand that you claim that for oscillators, frequency conversion is much smaller related to frequency modulation, which is the phase perturbation due to noise on the oscillator loop. I would like to challenge that claim, based on simulation results. Simulation leads me to believe that the significant contributor to jitter is the buffer that extracts CMOS clock from the sine wave at the input to the oscillator's loop amplifier. I simulated "multiple pnoise" with the consecutive nets, before and after the buffers, so see how jitter accumulates with each buffering stage. The results are as follows: at the input to the loop amplifier I saw 2.5ps RMS phase jitter. After the first amplifying stage I saw 4.2ps and after the second amplifying stage I saw 2.25ps (probably due to the steeper slope).

    Moreover, I once replaced the input to that first inverting stage with an ideal sine source for debug reasons (of another oscillator design), and still saw almost the same jitter at the output of the circuit.

    So I think that the frequency conversion's contribution is not negligible

    4. I’m not sure that I agree with the integration claims either J. The first of them is that the higher frequency energy content is negligible: at least in my design, that is not the case and the results when integrating only the low frequency contents are far from PM jitter result (see my post dating 02-05-2013). The second is that I shouldn’t integrate past F0/2: this is essentially correct since the phase perturbation is being sampled by the rising (or falling) edge, at a frequency of F0, so Nyquist is F0/2. However the higher frequency contents are folded into the band of interest so integration up to a high frequency is mathematically similar to the two steps process, (1) folding and (2) integrating up to F0/2.

    5. A small Matlab test we ran supports my claim. Take (1) a sine wave with phase perturbation at single frequency and (2) a square wave with zero crossings at the same time points of the sine wave. FFT both. Observe that the ratio between the sine wave and the small intermodulation next to it is similar to the ratio between the first harmonic and the small intermodulation next to it in the square wave.

    That ratio is the phase noise.

    So, this Matlab test shows that at least for phase perturbation at one frequency, the phase noise of a sine wave is similar to the phase noise of the first harmonic of a square wave. If the phase noise is similar then clearly the jitter is similar either, because in the time domain the original signals have similar jitter.

    This could be generalized from one single frequency to a range of frequencies, as is the case for random noise.

    6. Answering the last question, the reason that I want to have phase noise (coming out of “sources” simulation) is that the PN has to be filtered prior to integration and this is not possible, as far as I understand, in PM jitter simulation. See my post dating Feb 3 2013. I also see that PM jitter gives similar results to “sources” if “sources” is integrated correctly (Feb 5 post). This discussion also has to do with post-Si measurements, when clock is observed on an SSA and we would like to filter it before extracting jitter.

    Yizhak
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
>

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information