Home
  • Products
  • Solutions
  • Support
  • Company

This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  • Products
  • Solutions
  • Support
  • Company
Community Custom IC Design VCO phase noise modeling using a transient noise simula...

Stats

  • Locked Locked
  • Replies 32
  • Subscribers 126
  • Views 17102
  • 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

VCO phase noise modeling using a transient noise simulation

asrf
asrf over 2 years ago

Hi all,

I am trying to model VCO phase noise (for PLL) as shown in picture below:

I am using an integrator with gain of KVCO to integrate voltage noise to get excessive phase which is VCO phase noise.

--------------------------------------------------------

I started with transient noise simulation of diode connected transistor voltage (Vn or Vnoise)

this is the results of noise simulation 

      

however when I run transient noise simulation and use PSD calculator I dont get a proper result

integrator output is even worse Disappointed

  • Cancel
Parents
  • ShawnLogan
    ShawnLogan over 2 years ago

    Dear asrf,

    asrf said:
    however when I run transient noise simulation and use PSD calculator I dont get a proper result

    Achieving reasonable correlation in phase noise between a transient noise simulation and pss/pnoise simulation is absolutely possible. However, it requires a significant amount of care in your choice of transient noise simulation settings, PSD analysis, and pss/pnoise simulator settings. The amount of information your Forum post provides does not include enough for me to give you concrete suggestions as your PSD GUI settings are not relevant without knowing the details of your transient noise and pss/pnoise analysis.

    However, I might suggest you study a similar question and the notes I assembled for each in the Forum posts at URL:

    https://community.cadence.com/cadence_technology_forums/f/rf-design/51484/comparing-transient-noise-pnoise-and-pnoise-with-lorentian-approximation-of-a-ring-oscillator

    There is a link to a set of notes that details considerations for comparing phase noise results for a transient noise simulation and pss/pnoise simulations.

    https://www.dropbox.com/s/5zalilay6sqa06b/phase_noise_response_081422v1p0.pdf?dl=0 

    https://community.cadence.com/cadence_technology_forums/f/custom-ic-design/51696/snr-calculation-wrong-by-3-db/1383427?focus=true

    There is a link in this post to a set of notes describing some subtleties of using the Spectrum Assistant it produce PSD results from a transient noise simulation and a means to set your transient noise simulation parameters to produce valid Spectrum Assistant PSD results.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • asrf
    asrf over 2 years ago in reply to ShawnLogan

    Thank you for your time and effort.

    These are my transient noise simulation setup

    Thank you for the links you have provided. I will study them.

    Some of these links are about phase noise. Here I am basically looking at voltage noise. (or integrated voltage noise)

    I am not running pss/pnoise since my circuit has verilogA code and it does not work. 

    I use noise simulation to check Vnoise of diode connected transistor

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 2 years ago in reply to asrf

    Dear arf,

    asrf said:
    I ran 5 simulations and took average. I reduced my window size this time.

    Very good and thank you for continuing your work and letting me know your results!

    asrf said:
    It looks like I have less error this time. However, there is error below 1MHz. I think this is because we reduce resolution.

    It looks as if you made another change in that you are using a Blackman window. This impacts the gain of the PSD. The rectangular window you were using has unity gain and the Blackamn window has a gain of about 0.50. Hence, unless you accounted for the difference in gain, you need to scale your PSD results for direct comparison to small-signal noise results.

    I don't think the difference in your noise below 1 MHz is due to the smaller frequency bin width. I think you need to re-examine the scaling factor.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 2 years ago in reply to asrf

    Dear asrf,

    asrf said:
    Noise simulation results are precisely correct  but tran-noise is totally wrong. It does not even capture 1/f^3 region

    I cannot comment as you really have not given me any information about your simulation settings nor your integrator.

    Sorry,

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • asrf
    asrf over 2 years ago in reply to ShawnLogan

    Dear Shawn,

    I apologize for not explaining my circuit enough.

    Perhaps this figure helps:

    gain is a variable and equal to KVCO=2*pi*0.2GHz

    *****My goal is to run all these using tran-noise so I can use it on PLL

    since:

    1) PSS PNOISE does not work with VCO verilogA model

    2) PSS PNOISE most probably wont converge with whole PLL (with Delta sigma modulator in it)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 2 years ago in reply to asrf

    Dear asrf,

    I read your post earlier today and was thinking about what the issue might be. I am concerned the veriloga integrator may not be properly integrating the noise source in a transient noise simulation. Clearly, the code works as desired in a small-signal noise simulation as the results appear as you expect. In other veriloga VCO models where noise sources are included, the use of the idt function is not used but the code includes the integration algorithm desired based on the noise source.

    What came to mind is to replace your veriloga integrator with an integrator based on analogLib components. As an example, you might consider the circuit shown in Figure 1 to provide the integration function. These components should work properly in a transient noise simulation. If you deem it worthy, you might re-run your transient noise simulation using this version of an integrator and post-process the resulting integrated noise at node vc.

    Shawn

    Figure 1

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • asrf
    asrf over 2 years ago in reply to ShawnLogan
    ShawnLogan said:
    It looks as if you made another change in that you are using a Blackman window. This impacts the gain of the PSD. The rectangular window you were using has unity gain and the Blackamn window has a gain of about 0.50. Hence, unless you accounted for the difference in gain, you need to scale your PSD results for direct comparison to small-signal noise results

    Thank you for your valuable advice.

    This is with rectangular window 2^23 window size 

    It seems like its shifter by 3 dB. What if noise simulation shows a double side noise spectrum and transient returns single side ? (2*Power)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • asrf
    asrf over 2 years ago in reply to ShawnLogan

    I did this before. I am doing again to show the results. It works exactly like my integrator

    similar results

    yellow: noise sim

    red: 5 iteration tran-noise, with rectangular window 2^22

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to asrf

    I would suggest you contact customer support. That's what it's for.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 2 years ago in reply to Andrew Beckett

    Dear asrf,

    To reply to your latest question:

    asrf said:
    It seems like its shifter by 3 dB. What if noise simulation shows a double side noise spectrum and transient returns single side ? (2*Power)

    Both the PSD and small-signal noise simulations are one-sided. From one of the prior set of notes I referred to, I computed the rms value of deterministic signal in the time domain and in the frequency domain using its PSD (not DFT). I also verified the correlation between the thermal noise of a resistor in a small-signal and its power spectral density from a transient noise simulation. I also noted you are comparing the peak value of the PSD result to the small-signal result (-257.9 dB to -260 dB). I think I already noted that the average PSD is what you should  use to compare with the small-signal noise result. It appears to me as the average value of the PSD for frequencies over 1 MHz correlates well with the small signal value up to your value of noisefmax. Do you agree?

    As for the difference between the small-signal noise and PSD characteristics at low frequencies of about 3 dB, recall that there will be the fewest number of these frequency components in your time domain simulation. Hence, the magnitude of those frequency components will show the greatest amount of statistical variation. My only thought is that the use of an even longer time domain simulation where more noise components at the lower frequency are included will more accurately capture their magnitude and the resulting PSD characteristic will more accurately reflect that of the small-signal noise characteristic.

    asrf said:
    I did this before. I am doing again to show the results. It works exactly like my integrator

    Thank you for trying (actually repeating!) the analogLib integrator in lieu of the veriloga integrator and updating your results asrf!  Andrew is suggesting you contact customer support - which I take to be a request that I take a pause from providing my thoughts in this Forum.

    Hopefully,  Andrew's patience will allow me to make one additional suggestion....

    A thought that comes to mind is the desired low frequency PSD behavior is being masked by the DC term in the integrated output of your transient noise simulation. In other words, since your simulation has a finite time length and there is an integrator in the path, there may be some DC term in the integrated noise. Depending on its magnitude, it can mask the low frequency content.

    1. Have you examined the time domain output of the integrator to determine how large its DC term may be?

    2. Have you tried taking the PSD of the transient noise integrator output after removing the average of the transient noise output? This removes the DC term prior to taking the PSD. The DC term you remove should be computed using the samples you choose to compute the PSD.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • asrf
    asrf over 2 years ago in reply to ShawnLogan
    ShawnLogan said:
    It appears to me as the average value of the PSD for frequencies over 1 MHz correlates well with the small signal value up to your value of noisefmax. Do you agree?

    Thank you for your reply.

    Yes, I agree with this. I actually mentioned in one of replies that noise above 1MHz looks good. But we have error below 1MHz.

    ShawnLogan said:
    recall that there will be the fewest number of these frequency components in your time domain simulation. Hence, the magnitude of those frequency components will show the greatest amount of statistical variation. My only thought is that the use of an even longer time domain simulation where more noise components at the lower frequency are included will more accurately capture their magnitude and the resulting PSD characteristic will more accurately reflect that of the small-signal noise characteristic.

    Agreed. It seems that this is the only way 

    ShawnLogan said:
    Andrew is suggesting you contact customer support - which I take to be a request that I take a pause from providing my thoughts in this Forum

    Yes I understand.  you helped me a lot. I really appreciate your help.

    I am not sure what does he mean by contacting customer support. Isn't it that for software or license issue ?

    ShawnLogan said:
    In other words, since your simulation has a finite time length and there is an integrator in the path, there may be some DC term in the integrated noise. Depending on its magnitude, it can mask the low frequency content.

    good point ! That's why in PLL I want to observe phase noise using this method. If I take VCO output signal PSD main tone will mask everything.

    ShawnLogan said:
    there may be some DC term in the integrated noise

    makes sence. since I can see the -20dBc/dec but not -30 and shifted by a large amount

    ShawnLogan said:
    Have you tried taking the PSD of the transient noise integrator output after removing the average of the transient noise output? This removes the DC term prior to taking the PSD. The DC term you remove should be computed using the samples you choose to compute the PSD.

    I will try this. Thanks alot !

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to ShawnLogan
    ShawnLogan said:

    Andrew is suggesting you contact customer support - which I take to be a request that I take a pause from providing my thoughts in this Forum.

    Hopefully,  Andrew's patience will allow me to make one additional suggestion....

    Shawn,

    My concern was that this is a big ask of your time as somebody who is responding in their own time, and would almost certainly be more efficient and effective if this was done through customer support where we stand a chance of being able to see the data. Given that customer support is part of the contract you get with Cadence, it seems a little odd not to take advantage of it for a bigger question like this and rely on the time of volunteers (even me responding here is not part of my job at Cadence; I respond in my spare time).

    I've no problem with you responding - I just didn't want others to abuse your generosity!

    Thanks for your assistance here - it's really appreciated (especially as I've been rather busy the last couple of weeks with other commitments and travel).

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 2 years ago in reply to ShawnLogan
    ShawnLogan said:

    Andrew is suggesting you contact customer support - which I take to be a request that I take a pause from providing my thoughts in this Forum.

    Hopefully,  Andrew's patience will allow me to make one additional suggestion....

    Shawn,

    My concern was that this is a big ask of your time as somebody who is responding in their own time, and would almost certainly be more efficient and effective if this was done through customer support where we stand a chance of being able to see the data. Given that customer support is part of the contract you get with Cadence, it seems a little odd not to take advantage of it for a bigger question like this and rely on the time of volunteers (even me responding here is not part of my job at Cadence; I respond in my spare time).

    I've no problem with you responding - I just didn't want others to abuse your generosity!

    Thanks for your assistance here - it's really appreciated (especially as I've been rather busy the last couple of weeks with other commitments and travel).

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • ShawnLogan
    ShawnLogan over 2 years ago in reply to Andrew Beckett

    Dear Andrew,

    Andrew Beckett said:
    Given that customer support is part of the contract you get with Cadence, it seems a little odd not to take advantage of it for a bigger question like this and rely on the time of volunteers (even me responding here is not part of my job at Cadence; I respond in my spare time).

    I full understand and will comply with your request.  I am sorry you had to respond to my response as I know your time is very limited and you are responding to this in what little leisure time you have. The only reason I added the follow-up after your request to contact customer support  was to provide my "final" thoughts to asrf. 

    Shawn

    • 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