• 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. PSS, PNOISE and other simulations for a circuit containing...

Stats

  • Replies 14
  • Subscribers 125
  • Views 3094
  • Members are here 0

PSS, PNOISE and other simulations for a circuit containing an oscillator and Mixer

Tiago Silva
Tiago Silva 6 months ago

Hello

I am simulating a Mixer circuit with a cross-coupled oscillator, but I am not sure how to perform PSS, PNOISE and other harmonic balance analysis without the LO port for the mixer.

When analyzing the PSS, I used the oscillator option and pointed to the oscillator outputs. The PSS converged, but the RF input source is being ignored in PNOISE and NF is disabled.

Is it possible to fix this problem? Is this the correct way to measure?

  • Sign in to reply
  • Cancel
Parents
  • Tiago Silva
    Tiago Silva 6 months ago

    With the oscillator driving the mixer's LO, is it possible to implement the linearity simulations (1dB and IIP3) using QPSS and QPAC? The oscillator is the only large signal, but it is not possible to define this signal in the fundamental tones of the QPSS analysis.

    Is this the correct way to measure?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to Tiago Silva

    No. QPSS cannot be used with an autonomous frequency (i.e. an oscillator). Similarly PSS wouldn't work since there would not be a combined single fundamental frequency you can use.

    You could measure IIP3 using PSS (for the oscillator), and not having a large-signal input but then using RapidIP3 to set the input powers (in the linear region) to measure the IP3. For 1dB compression point though you need to run a large-signal analysis - you can use hb analysis since this supports semi-autonomous harmonic balance - you can have the first tone being the oscillator and the second being your large-signal input. Of course, you could measure the IIP3 this way too (with two driven tones on top of the autonomous  signal from the oscillator).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Tiago Silva
    Tiago Silva 6 months ago in reply to Andrew Beckett

     Thank you for your reply. I will do some tests with this information.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Tiago Silva
    Tiago Silva 6 months ago in reply to Tiago Silva

    Hello,

    When I simulated the 1dB point in the HB analysis, the message "A design variable representing the input power in dBm must be parametrically swept before the function selected above can be executed" was observed in the Compression Point of the Direct Plot and it was not possible to plot the 1dB graph. Have you ever had this problem? Do I need to provide more information about this issue?

    The IIP3 simulation through the HB analysis worked fine with the two tons driven on top of the independent oscillator signal. Is it correct to compare the IIP3 value obtained from the HB analysis with the IIP3 value obtained from the QPAC analysis?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to Tiago Silva

    How did you set up the 1dB point simulation? Without knowing that, it's hard to say.

    You can in general get the same result (within simulation tolerances) from a two-tone (plus LO) HB analysis for a mixer with a one tone plus LO QPSS plus QPAC for the second tone, provided that the signal magnitude of the two tones is sufficiently below the point at which the circuit compresses (which is where you'd measure IIP3 anyway). Of course, if one of the large signals is an oscillator, you can't use QPSS anyway, so this is a moot point. You could however use semi-autonomous HB (with oscillator and one of the two tones) plus HBAC (for the second tone) and get similar results to a two-tone plus LO HB.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to Tiago Silva

    How did you set up the 1dB point simulation? Without knowing that, it's hard to say.

    You can in general get the same result (within simulation tolerances) from a two-tone (plus LO) HB analysis for a mixer with a one tone plus LO QPSS plus QPAC for the second tone, provided that the signal magnitude of the two tones is sufficiently below the point at which the circuit compresses (which is where you'd measure IIP3 anyway). Of course, if one of the large signals is an oscillator, you can't use QPSS anyway, so this is a moot point. You could however use semi-autonomous HB (with oscillator and one of the two tones) plus HBAC (for the second tone) and get similar results to a two-tone plus LO HB.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • Tiago Silva
    Tiago Silva 6 months ago in reply to Andrew Beckett

    I am unable to attach other images, but for the 1dB simulation, I configured the mixer (up Conversion) with an IF input signal (PORT1 with source type sine) of 100MHz with a dBm amplitude of -30.

    In the HB analysis, I used two tones and the options Oscillator (selecting the two outputs of the 4.9GHz oscillator) and Compression (selecting the IF input port as Source and the RF output port as Load).

       

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to Tiago Silva

    If you're finding the 1dB compression point, you need to either sweep the input power (using the sweep choices at the bottom of the hb form), or use the "Compression" section (there's a checkbox on the hb form) which is a smarter (more efficient, and generally more accurate) way of finding the compression point by doing a search for the compression point. Unlike IIP3 which extrapolates the 3rd order intercept point from a single input power, compression needs to run multiple simulations to find the point at which the output power is 1dB lower than it should be from a linear increase.

    It sounds as if you have not done either of the above (at least you only mentioned a single power).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Tiago Silva
    Tiago Silva 6 months ago in reply to Andrew Beckett

    I made the adjustments and managed to plot the 1dB simulation graph. Thank you.

    Regarding the HB + HBAC analyses, how could I simulate the IIP3? You mentioned that HB would be semi-autonomous (with oscillator and one of the two tones) plus HBAC (receiving the second tone). Do you have any other tips for the simulation? Do I need to use the select from range option to define the simulation sideband?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to Tiago Silva

    Set up your input source to only generate one sine wave (not two sinusoids) and have it set the input power to (say) prf. On the same source, find the small-signal parameters and set pacmag to prf as well. 

    In the hb analysis set the first tone to be your oscillator and the second to be the frequency of the large signal tone on your signal input. Then set up an hbac analysis and set this to be a single frequency (not a frequency sweep). The frequency should be that of the nearby frequency and will act as the second tone. The hbac outputs will give you the IM3 at 2*fhb2-fhbac (shifted by the LO frequency), and then this be used to compute the IP3 (there’s a choice under the hbac outputs on the direct plot form to do this). Unlike with 3-tone hb approach you only can get one of the IM3 outputs this way (since the hbac can only produce first-order side bands) but that’s normally fine as it’s usually symmetrical (and you can always swap the frequencies around on the source and the hbac analysis).

    If this is unclear, please mention the frequency of the two input tones you’re using in your IP3 measurement and then (approximate) oscillator frequency and I can explain with some worked numbers which might make it clearer. (trying to explain when answering in my phone might be optimistic!)

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Tiago Silva
    Tiago Silva 5 months ago in reply to Andrew Beckett

    The frequencies were defined as:

    • fhb1 = 4.9G
    • fhb2 = 100M
    • fhbac = 200M
    • fosc = 4.90011G

    Simulating IIP3 with HB + HBAC analysis and analyzing hbac_mt --> IPN curves --> Port (R(Port) fixed) --> Variable sweep = -30 --> IP3 input reference --> Select 3rd order harmonic (4.9 GHz) and 1st order harmonic (5.1 GHz) --> Select PORT output. When selecting the PORT of the mixer output, the IIP3 graph is not plotted.

    An error message appears when selecting the PORT mixer output --> *ERROR* complex: argument #1 must be a number (template type = "n") - complex(nan, -nan)

    In the HBAC simulation, the following warnings are checked:

    WARNING: The result for relative frequency equal to 0 may be inaccurate.

    WARNING (SPECTRE-16518): An arithmetic exception occurred in the analysis `sweephb-004_hbac'. Use the `+diagnose' command line option to get more information.

    Could this issue be related to the Spectre version? Or something related to the Options form? I can't find any material related to this issue.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 5 months ago in reply to Tiago Silva

    I don't quite understand your setup, because the frequencies don't make sense. So I put together a mixer with an oscillator for the LO, and had it configured as follows:

    foscGuess: 1.9G (it actually converged as 1.829G)
    fhb1: 1.904G
    fhb2: 1.905G
    prf: -30

    The input port (RF) had two sine sources, with the power of both set to pro

    I can then from just the hb measure the IP3 with the 3rd Order harmonic set to 74M and the 1st order harmonic as 76M.

    If I then set fhb2 to 0, and ensure my source has the PAC magnitude (dBm) set to prf, and then run a two-tone HB (same setup as above) with hbac set to absolute, single point frequency at 1.905G, then everything runs. However, it appears that the small-signal input is not being applied, since all the results are at -6.4kdB (so essentially 0). Something has definitely not worked in this scenario, and I see the same errors as you when trying to plot the IPN curves, plus the same error reported by Spectre.

    I can't find reports of this, I wonder whether anyone has actually tried to run semi-autonomous hb with hbac.

    I'll raise this with SpectreRF R&D.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Tiago Silva
    Tiago Silva 5 months ago in reply to Andrew Beckett

    Thank you for your response. I look forward to receiving more feedback on this error.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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