• 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. Custom IC Design
  3. Large signal SNR with transient noise analysis

Stats

  • Locked Locked
  • Replies 3
  • Subscribers 126
  • Views 14879
  • 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

Large signal SNR with transient noise analysis

JoHi
JoHi over 9 years ago

Hello everyone,

i'm trying to calculate SNR for an amplification circuit with photodiode input. I can't simulate small signal noise, because the photodiode's modell isn't even capable of AC simulation. So i thought of at least calculating the large signal SNR by simulating transient response to a sinus input with activated transient noise.


Up to the simulation everything works fine and i obtain the noisy output curves i wanted. But what output expression has to be set, to calculate the SNR? I tried a few things:

- Fourier Transformation on the output voltage and "spectrumMeas" applied on this. But it only seems to work for data converters (states the "help" description), not amplifiers.

- Doing two transient simulations - one noisy and the other not - with the intention to subtract the resulting waveforms (result is the "noise function") and divide the noisy output curve by the "noise function". But i didn't found a way to subtract the two plots, because they have one different parameter - i have them both in one test environment by applying a variable to "Fmax" in transient noise. I also tried to create a combinatorial expression by putting the simulation without noise in a second test environment and do something like (VT("/VoltageWithNoise") - calcVal("VoltageWithoutNoise" "TestWithoutNoise")), resulting in an evaluation error.


Does anybody know how to get the large signal SNR of an amplification circuit with transient noise analysis or can help me with my attempts? I use IC6.1.6.500.07 and ADEXL.

Regards,

Johannes.

  • Cancel
Parents
  • JoHi
    JoHi over 9 years ago

    Hi,

    sorry for the late answer, i was already in weekend mode :) Here is what the schematic looks like. The amplifier "I0" actually is a simple differential amplifier and the voltage Source "V3" is input sine wave around 500 nV with 1 kHz. If i should explain it, please tell me. The transient simulation is from 0 to 20 ms.

    And my results for example look like this:

    I am sorry, they are in german, but the ones of interest are Ausgangsspannung / AusgangsspannungDFT, that is the output voltage.


    @ Andrew: I tried to use spectrumMeas on this circuit, but it only gave me a SNR of around 3 dB for every Fmax, what is kind of very low and unrealistic (spectrumMeas(VT("/Vout") 5m 15m 256 0 0 nil "Rectangular" 0 "snhr" )). Maybe i messed up the setting...

    @ analogy: That´s what i tried last friday, exporting the results and calculating the SNR in Matlab. That gave me a more realistic SNR. In advance i would take small stepped Fmax as variable and could finally plot SNR over frequency. But i am looking for a method to do this in Cadence, because it would be nice to have all the results in one GUI.

    So as you can see, the results are obtained from one test, that has a variable Fmax. Now how is it possible to create an output expression, that does Ausgangsspannung(Fmax = Fmax) - Ausgangsspannung (Fmax = 0) for every parameter set?


    Thank you for  your help so far.

    Regards,

    Johannes

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • JoHi
    JoHi over 9 years ago

    Hi,

    sorry for the late answer, i was already in weekend mode :) Here is what the schematic looks like. The amplifier "I0" actually is a simple differential amplifier and the voltage Source "V3" is input sine wave around 500 nV with 1 kHz. If i should explain it, please tell me. The transient simulation is from 0 to 20 ms.

    And my results for example look like this:

    I am sorry, they are in german, but the ones of interest are Ausgangsspannung / AusgangsspannungDFT, that is the output voltage.


    @ Andrew: I tried to use spectrumMeas on this circuit, but it only gave me a SNR of around 3 dB for every Fmax, what is kind of very low and unrealistic (spectrumMeas(VT("/Vout") 5m 15m 256 0 0 nil "Rectangular" 0 "snhr" )). Maybe i messed up the setting...

    @ analogy: That´s what i tried last friday, exporting the results and calculating the SNR in Matlab. That gave me a more realistic SNR. In advance i would take small stepped Fmax as variable and could finally plot SNR over frequency. But i am looking for a method to do this in Cadence, because it would be nice to have all the results in one GUI.

    So as you can see, the results are obtained from one test, that has a variable Fmax. Now how is it possible to create an output expression, that does Ausgangsspannung(Fmax = Fmax) - Ausgangsspannung (Fmax = 0) for every parameter set?


    Thank you for  your help so far.

    Regards,

    Johannes

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

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