Home > Community > Blogs > RF Design > guidelines for maximizing speed vs accuracy in spectrerf simulations part 3
 
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the RF Design blog (individual posts).
 

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

Guidelines for Maximizing Speed vs. Accuracy in SpectreRF simulations - Part 3

Comments(0)Filed under: RF design, Spectre RF, Harmonic Balance, spectreRF, RFIC, MMSIM, shooting newton, Circuit simulation, QPSS Analysis, RF Simulation, Analog Simulation, RF, RF spectre spectreRF, mixer, spectre spectreRF, HB, analog/RF, harmonic trimming

Several months ago, I started a 3 part series on Guidelines for Maximizing Speed vs Accuracy for Harmonic Balance simulations.

Today, I'll discuss part 3 of the 3 part series consisting of:

  • Which Engine: Spectre or APS?
  • Oversample vs Number of Harmonics
  • Harmonic Trimming

The first and second posts in this series can be found here: 

Guidelines for Maximizing Speed vs Accuracy for Harmonic Balance - Part 1

Guidelines for Maximizing Speed vs Accuracy for Harmonic Balance - Part 2

The third knob you can tweak to maximize speed vs. accuracy in SpectreRF simulations is Harmonic Trimming.

"Harmonic trimming" reduces the number of harmonics simulated in an intelligent way by trimming higher order terms which have very little energy in them, while still keeping accuracy in the primary or "on axis" tones. You can target important harmonics with most of the energy, which reduces simulation time and memory.  One caveat...any time you reduce the number of harmonics simulated, there is some inaccuracy in the highest order terms specified due to aliasing.

For hb analysis

Open the hb Choosing Analyses form.

In the Select section, there is a Method option that specifies how the harmonics are selected:  diamond, funnel, or axis.

hb choosing analysis form

The harmonics selected by each method depend on the maxharms and MaxImOrder (int), where MaxImOrder specifies the maximum order of the harmonics to be calculated. 

If the Harmonics value is something other than Select, the Method field does not appear in the form and the box selection method is the default rectangular cut.

For qpss analysis,

In the Select section of the Choosing Analyses form, you have a Method option that specifies how the harmonics are selected: diamond, funnel, axis or arbitrary. The harmonics selected by each method depend on the maxharms and MaxImOrder (Harmonic Balance) or Boundary values (Shooting) where Boundary (int) specifies the maximum order of the harmonics to be calculated.

Below is the Select section of the qpss Choosing Analysis form for the Shooting Newton engine.

 qpss choosing analyses

Note that the total number of harmonics is very high, even though diamond was selected.  Had funnel or axis been selected, that number would be lower.

If the Harmonics value is something other than Select, the Method field does not appear in the form and the box selection method is the default rectangular cut.

MaxImOrder (or Boundary in shooting qpss) reduces the number of harmonics simulated in an intelligent way by trimming higher order terms which have very little energy in them, while still keeping accuracy in the primary or "on axis" tones. You can target important harmonics with most of the energy by using MaxImOrder (or Boundary in shooting qpss). This targeting reduces simulation time and memory. However, any time you reduce the number of harmonics simulated, there is some inaccuracy in the highest order terms specified due to aliasing.

Below are descriptions of the various types of cuts:

The Rectangle cut is the default. No harmonic trimming is done. If the Harmonics value is something other than Select, the Method field does not appear in the form and the box selection method is the rectangular cut.

The Diamond cut is designed to keep the important on-axis harmonics but to reduce the number of off-axis (intermodulation) harmonics. It is the same as Default but with higher order harmonic trimming applied.

The Axis cut calculates only the harmonics of both tones and none of the mixing products are calculated.

The Funnel cut is a combination of the diamond cut and axis cut. It selects harmonics along the axes and intermodulation harmonics of a specified order or less. It is unique to SpectreRF and includes energy of the on-axis, higher order harmonics.

The Arbitrary cut (available in shooting qpss only) lets you specify indices of interest for each of the moderate fundamental tones. This method is not usually recommended.

Below are diagrams consisting of one, two, and three tone examples with various cuts.

1 tone:

one tone

Two tone rectangle cut:

two tone rectangle cut

2 tone diamond cut:

two tone diamond cut

3 tone rectangle cut

 3tone rectangular cut

 

3 tone diamond cut:

 

3 tone diamond

3 tone funnel cut:

3 tone funnel

 

3 tone axis cut:

3 tone axis

 

I hope this sheds a bit of light on the mysterious harmonic trimming topic.

Have fun simulating!

Best regards,

Tawna

 

Comments(0)

Leave a Comment


Name
E-mail (will not be published)
Comment
 I have read and agree to the Terms of use and Community Guidelines.
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.