• 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. harmonic balance for down-converting mixers

Stats

  • Locked Locked
  • Replies 9
  • Subscribers 125
  • Views 13995
  • 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

harmonic balance for down-converting mixers

dzakharian
dzakharian over 4 years ago

greetings folks.

i have the following problem:

i am running a pss simulation at 5.5G for a down-converting mixer. i have f_lo=5.500G. f_rf=5.502G, so pss computes beat frequency as 2MHz.

i can nominally run this simulation using the shooting method. however, i know want to include s-parameter models for components in the matching network, etc so i can't use shooting method anymore, and need to switch to harmonic balance.

this is where i run into a problem. to run harmonic balance at beat frequency of 2M and capture circuit behavior ar RF frequency of 5.5G requires enormous number of harmonics.

is there an obvious way to do this that i'm not aware of?

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    I would suggest you use the hb analysis. Then each frequency can be treated separately and you can control the number of harmonics of each. So depending on the shape of the signals and the non-linearity of the circuit, you might choose (say) 7 harmonics of the LO and 3 of the RF input (or 5 maybe) and then it will only compute the combinations of +/-7 harmonics of the LO and +/-3 (or 5) of the RF. Given that your output spectrum would be very sparse, you really don't need to compute every harmonic of a 2MHz beat frequency (shooting would be very inefficient for this too).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    I would suggest you use the hb analysis. Then each frequency can be treated separately and you can control the number of harmonics of each. So depending on the shape of the signals and the non-linearity of the circuit, you might choose (say) 7 harmonics of the LO and 3 of the RF input (or 5 maybe) and then it will only compute the combinations of +/-7 harmonics of the LO and +/-3 (or 5) of the RF. Given that your output spectrum would be very sparse, you really don't need to compute every harmonic of a 2MHz beat frequency (shooting would be very inefficient for this too).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • dzakharian
    dzakharian over 4 years ago in reply to Andrew Beckett

    Thanks for the feedback Andrew.  I'm assuming for your suggestion I have to use QPSS, not PSS, correct?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to dzakharian

    You could, but it would make far more sense to use the "hb" analysis rather than going via the rather old  "qpss" interface. There are some features that are only available via hb, and I'd say it's simpler to use because it avoids some of the things that only made sense when coming from the "shooting" QPSS analysis. The hb engine itself is the same in both cases, but there's really very little reason to use the QPSS analysis nowadays to run harmonic balance simulations.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dzakharian
    dzakharian over 4 years ago in reply to Andrew Beckett

    Thanks for your help Andrew, I'm up and running with multi-tonal HB.  Yes, the direct HB interface is much more intuitive that trying to set the same thing up through QPSS HB.   
    I wanted to circle back and check the accuracy of HB vs QPSS shooting method (to make sure I set enough harmonics), but I've never had much luck with shooting method and s-parameters.  Just to confirm... is HB the only option when one uses s-params?
    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to dzakharian

    QPSS shooting is quite hard to set up and get accurate. It doesn't use a pure shooting method - it's actually using an algorithm called "Mixed Frequency Time" as the large signals are dealt with using shooting, but you have a concept of "moderate" signals which are represented in the frequency domain with a small number of harmonics (so this is for signals that can be treated as weakly non-linear, as opposed to the small-signal analyses, which are completely linear). It has its uses, mainly for looking at distortion in switching circuits, such as switch-cap filters, but for RF, nearly always harmonic balance would be superior.

    You should be able to use s-parameter files in shooting PSS, and actually if you choose the "bbspice" interpolation method (suitable for s-parameters representing passive networks) then you should be able to run in any analysis since that produces a distributed time-domain model. I'd suggest you look at:

    • 7 Habits of Highly Successful S-Parameters (Spectre 19.1 and IC6.1.8 ISR9)
    • 7 Habits of Highly Successful S-Parameters (Spectre 18.1 and earlier releases)

    (depending on the version of spectre you're using).

    You should even be able to use the linear/spline interpolation methods with s-parameters with shooting PSS (not QPSS if my memory is correct), but I suspect that bbspice would be the best choice for efficiency/robustness.

    Of course, some of this does depend on the quality of your s-parameters. Shooting requires them to be simulated in the time-domain, so that need to produce a representation that is reasonable in the time-domain presents a higher requirement on the quality of your s-parameters (see Tawna's app notes for more detail).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dzakharian
    dzakharian over 4 years ago in reply to Andrew Beckett

    Thank you Andrew, much appreciate the explanation and the reference material.  I'll try your suggestions and read through the app notes to see if there is room for improvement in my models.

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dzakharian
    dzakharian over 4 years ago in reply to dzakharian

    Hi Andrew, I tried the bbspice method and it worked out rather well, so thank you again for that pointer!

    One other question related to the multi-tonal HB setup... I'm running a freq divider simulations in parallel, and wanted to use the HB interface because there is a dedicated field for freqdivide ratio, which is 424 in my case, going from 5.512G to 13M.  I set the LO frequency to 5.512G, harmonics field to "auto", and freqdivide to 424, but keep running into convergence issues.  Doing a little reading, I came across an older Cadence post from 2009 that recommends multiplying the humber of harmonics by freqdivide ratio for such cases (so if i was nominally using Mxham=5, that now becomes 424*5=2120).  Is this the recommended way of doing this?

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to dzakharian

    David,

    A divider (particular one with such a large divide ratio) is unlikely to be a great candidate for harmonic balance. Switching circuits are often better with shooting - because otherwise you're going to need a huge number of harmonics (as you've seen here) and having this number of harmonics in a very nonlinear circuit is going to be difficult to converge and not very efficient to simulate. The fundamental is going to be the lowest frequency in the circuit (13MHz) and you're going to want harmonics of the input frequency, hence the huge number of harmonics.

    I'd suggest you run with shooting PSS, with 13M as the fundamental, and give the tstab enough time for the divider to have gone through a few cycles (that would have been the recommendation for hb too, but over 2000 harmonics is going to be challenging for harmonic balance).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dzakharian
    dzakharian over 4 years ago in reply to Andrew Beckett

    Hi Andrew,
    I tried w/ PSS set to 13M beat, and even though it took some time, everything converged and looks good.
    Thanks for walking me through all this!
    David

    • 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