• 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. Testbench for THD and IIP3 simulations

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 125
  • Views 11688
  • 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

Testbench for THD and IIP3 simulations

Hossein Eslahi
Hossein Eslahi over 3 years ago

Dear all,
I plan to simulate THD and extract IIP3 of a single transistor by using PSS and PSS+PAC analysis in cadence. I have used the testbench attached below to run simulations. Two bias tees are added to the input and output of the transistor and I have added a resistor of 50 ohm to the gate to match the impedance of the input port in the simulations. The capacitances and inductances are designed for the operating frequency 1KHz. That is why I have used huge amounts. I addition, I repeated the input bias tee and the parallel resistor for two paralllel transistors (as seen in the circuit at the top). Are these testbenches correct or I have done something wrong here?

https://www.edaboard.com/attachments/testbench-jpg.173133/

I appreciate it if you can help me in this regard.
Cheers,
Hossein

  • Cancel
  • ShawnLogan
    ShawnLogan over 3 years ago

    Dear Hossein,

    Hossein Eslahi said:
    Are these testbenches correct or I have done something wrong here?

    Well, I cannot really provide more than one comment without knowing exactly the simulation, simulation settings, and input stimuli for the simulations. However, I could not help but notice that in the upper schematic of your test bench, it appears that you have two 50 ohm inputs in parallel forming an effective input impedance of not 50 ohms, but 25 ohms. Was this intentional by any chance? In the lower schematic, you are terminating the driver with 50 ohms as there is only a single 50 ohm input impedance.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Hossein Eslahi
    Hossein Eslahi over 3 years ago in reply to ShawnLogan

    Hi Shawn,

    Thank you for your answer. I am running the PSS simulation by sweeping the amplitude of the input signal (Vac) to plot THD vs Vac (dBm) for the device under test. The frequency is frf=1KHz and the input Vac is swept through the input port.

    You can find the settings for PSS and PAC analysis as well as the input port for the simulations below.

    I can use two resistors of 100 ohm or only one 50 ohm resistor in the first circuit. However, my main problem is to know if these testbenches are basically correct to simulate THD and IIP3 or do I have to change them? Are the simulation results obtained from these circuits reliable?

    Thank you for your support.

    Hossein

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 3 years ago in reply to Hossein Eslahi

    Dear Hossein,

    Thank you for including some details of your simulations! For me anyway, the information is very helpful in trying to provide some thoughts that I am hoping might be helpful (but may not be!).

    1. With respect to your test bench, certainly changing your input termination to 50 ohms in your top circuit is good practice - so I was happy to read you are considering this!

    2. I must also admit I do not understand why you have duplicate ideal 690 mV and 800 mV DC sources. Only one of each is required for the upper and lower circuits.

    3. Examining your input port GUI and their locations n your schematics, they all appear to be AC coupled to your devices under test. However, your port definitions include a non-zero DC bias value - which is not required and does not make sense to me.

    4. I noticed in your PSS GUI, you are running a tstab portion for the simulation - which is very good in my opinion as it will provide some simulation time for the transients associated with your AC coupling capacitors.

    a. Have you verified 100 ms is sufficient in a conventional transient simulation to achieve something close to steady-state operation?

    b. Have you considered saving the transient portion of the PSS analysis to verify it also is sufficient in a conventional transient simulation to achieve something close to steady-state operation? I noticed its radio button is not checked in the GUI you provided. I would recommend you check its radio button.

    5. In your PAC GUI, why have you specified a frequency sweep of 1.1K? I thought you wanted to compute "THD and extract IIP3" for only a 1 kHz input frequency? Is my understanding incorrect? Are you suggesting the second tone in your IIP3 analysis is 1.1 kHz - if so, doesn't that mean your beat frequency is 100 Hz not 1 kHz? I am a bit confused on the two frequencies for which you are trying to apply to compute the II3 (an IIP3 analysis relies on two or more tones and their mixing products).

    6. Similarly, on the same GUI, I noticed you have only set the maximum sideband to 2. Is this sufficient to provide an accurate estimate of your expected IIP3?

    7. Which type of PSS analysis are you running - shooting or harmonic balance?

    8. Finally, with respect to your accuracy comment, I would also suggest you choose a conventional transient analysis and apply your two desired frequencies at some amplitude and verify that the resulting DFT of the output waveform shows an IIP3 that is consistent with that you measure using the PSS/PAC analysis. This will provide additional confidence in your PSS/PAC analysis without running a conventional transient analysis for a full amplitude sweep.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Hossein Eslahi
    Hossein Eslahi over 3 years ago in reply to ShawnLogan

    Thank you so much for such a cimprehensive response.

    2-I used two input DC bias 690mV for two transistors in the first circuit since they are supplied by two different body biases (Vbg4 and Vbg5). I tried to separate their gate biases to be sure that their biasing does not affect each other. Then, I connected two drain terminals to monitor the total current going through the parallel connection of two devices.

    3- I have removed those non-zero DC biases from the input ports. They was a part of another simulations and I forgot to remove them for the current simulation.

    4- Yes, 100ms is enough to reach the steady state. I could not get your point about the radio button. Where is it? I have changed the settings for PSS GUI as follow. Should I modify it again? 

    5- I used 1.1KHz in the PAC GUI to introduce the second tone for IIP3 simulation by using PSS+PAC analysis. For THD simulation, I only use one tone through PSS analysis.

    6- For the IIP3 simulation at the fundamental frequency 1KHz, I need to select (2w1-w2)=900 Hz as the third harmonic frequency and 1.1 KHz as the sundamental frequency of PAC. So, the maximum sideband of 2 is enough. If I increase it, I still need to select 900 Hz and 1.1 KHz to plot IIP3.

    7-I am using shooting engine in the PSS GUI.

    8- This is a good idea. I am working on this suggestion also. Thank you for recommending me this idea.

    If I need to do something else on my testbenches and/or the simulation process, I will appreciate it if you guide me.

    Cheers,

    Hossein

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 3 years ago in reply to Hossein Eslahi

    Dear Hossein,

    Hossein Eslahi said:
    4- Yes, 100ms is enough to reach the steady state. I could not get your point about the radio button. Where is it? I have changed the settings for PSS GUI as follow. Should I modify it again? 

    I see you have now checked the radio button to save the tstab portion of the PSS simulation ("Save Initial Transient Results (saveinit)"). In your prior post, it was not checked. Hence, I do not find any reason to modify the GUI any further.

    Hossein Eslahi said:

    If I need to do something else on my testbenches and/or the simulation process, I will appreciate it if you guide me.

    I agree with your changes and your responses to my questions answer my concerns. Good luck with your simulation efforts Hossein!

    Shawn

    • Cancel
    • Vote Up +1 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