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 Mixed-Signal Design HB simulation with multiple square-wave signal

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 64
  • Views 4078
  • 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

HB simulation with multiple square-wave signal

AB_1719406998389
AB_1719406998389 11 months ago

Hi all,

I have a problem with hb simulation where there are multiple square wave signals in the testbench. I saved initial transient and tried to plot three signals from tstab and only get correct result for the first tone in the hb setup.

My testbench is like below. Very simple, three square wave signal with frequency fs (2G), frf(8G) and fbb(149M).

My hb setup is as follows

My transient results are as follow, and as expected.

My hb initial transient results are as follows. Only signal frf match expectation. Also it's been set as the first tone in hb and it's the largest frequency tone in the testbench.

Finally below is results from hb ifft and they match the expectations.

So I am wondering why the results from hb initial transient is different from expectation and however it does not affect the final hb results. Is there any limitation in plotting signal for hb initial transietn?

Thanks.

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett 11 months ago

    The purpose of the initial transient is to assist with convergence. As a result, only a single tone (the first tone) is enabled in the initial transient, and the hb is first solved with just that tone, and then the additional tones are added to the hb solve. Usually, the expectation is that the first tone is the most nonlinear (it's quite unusual to use 3 square waves with harmonic balance - not really its strength given that you would need many harmonics to resolve them well, and the product of 3 high-harmonic tones will be expensive to solve).

    If all three had been enabled, then the transient assist would have to be over at least one cycle of the common frequency of the three frequencies (1MHz in this case). That means it would need to use the last 1us of the initial transient to be useful (and it would need to be more than 1us long) because otherwise there would not be any transient data that it could do an inverse FFT over to form the initial values for the harmonic solution. Since most of the time the tones in HB are not harmonically related, this wouldn't be useful very often - so having just a single tone to aid the first (most nonlinear) tone is a realistic compromise.

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • AB_1719406998389
    AB_1719406998389 11 months ago in reply to Andrew Beckett

    Hi Andrew, thanks so much for the detailed explanation. Then I wonder in such cases where 3 or more square waves are involved in a testbench, what analyze would you recommend to use in a mixed signal design? maybe transient then do FFT? or any other analyzes?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett 11 months ago in reply to AB_1719406998389

    It rather depends on what you are trying to measure. What is the system you are simulating and what are you trying to measure?

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • AB_1719406998389
    AB_1719406998389 11 months ago in reply to Andrew Beckett

    I am trying to design a RF DAC, which takes digital signal at the input and generate a RF signal at the output with the help of a clock signal. Those are the three square wave signals in my testbench. So the input is a baseband signal (fBB) passing through an ideal ADC (sample frequency fs) to generate the input signal that the RF DAC needs. Then the RF DAC takes a clock signal (fRF), which in this case, is an 8G square wave. So the function is like a DAC but also does up-conversion. At the output, I measure things like output power and linearity, such as IM3, OP1dB, etc.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett 11 months ago in reply to AB_1719406998389

    The challenge is likely to be whether 11 harmonics are enough with the real circuit. You may be better off (since fs and frf are harmonically related) to just do a 2-tone simulation with 4x as many harmonics of fs (that would cover frf too). With 11 harmonics of each, your problem size is 23*23*23 (2*harms1+1)*(2*harms2+1)*(2*harm3+1). If you used 11 and 44 (say) then you'd have a problem size of 23*89 which is a factor of 6 smaller. If you need to increase the harmonics it will scale even better.

    The worst case is to run a transient (but then you'd need to run transient over the common frequency) and do an FFT.

    A lot of this will boil down to the practicality of simulating a realistic circuit. There's no simple answer. The circuit may be small enough you can run with a 3 tone HB with lots of harmonics? I'd probably start with HB and see how you get on!

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett 11 months ago in reply to AB_1719406998389

    The challenge is likely to be whether 11 harmonics are enough with the real circuit. You may be better off (since fs and frf are harmonically related) to just do a 2-tone simulation with 4x as many harmonics of fs (that would cover frf too). With 11 harmonics of each, your problem size is 23*23*23 (2*harms1+1)*(2*harms2+1)*(2*harm3+1). If you used 11 and 44 (say) then you'd have a problem size of 23*89 which is a factor of 6 smaller. If you need to increase the harmonics it will scale even better.

    The worst case is to run a transient (but then you'd need to run transient over the common frequency) and do an FFT.

    A lot of this will boil down to the practicality of simulating a realistic circuit. There's no simple answer. The circuit may be small enough you can run with a 3 tone HB with lots of harmonics? I'd probably start with HB and see how you get on!

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • AB_1719406998389
    AB_1719406998389 11 months ago in reply to Andrew Beckett

    Thanks so much Andrew!

    • 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