Harmonic Balance for Nonlinear Noise Simulation
The nonlinear noise options in the Harmonic Balance simulator enable you to calculate:
- Nonlinear spot noise
- Swept noise
- Noisy 2-port parameters
There are two methods of noise simulation. One is to use the parameters on the Noise tab in the harmonic balance dialog box. A second method is to use the NoiseCon component. Using NoiseCon components, you can set up several noise simulations, thereby eliminating the need to change the values on the Noise tabs in the Harmonic Balance dialog box. With NoiseCons, you can also set parameters to calculate phase noise.
If you are not familiar with the harmonic balance simulator, refer to Harmonic Balance Basics, before continuing with this topic.
Refer to the following topics for details on harmonic balance for nonlinear noise simulation:
- Performing a Nonlinear Noise Simulation describes the minimum setup for calculating noise.
- Performing a Noise Simulation with NoiseCons describes how to set up NoiseCons and include them in the simulation.
- Nonlinear Noise Simulation Description is an overview on how nonlinear noise is calculated in a simulation.
- NoiseCon Component Description provides more details about the NoiseCon component.
- NoiseCon Component provides details on the tabs and fields for the Noise component.
- Harmonic Balance for Oscillator Simulation, includes information on setting up noise simulations for oscillators.
- Harmonic Balance for Mixers, includes information on setting up noise simulations for mixers.
Performing a Nonlinear Noise Simulation
Use this type of nonlinear noise simulation for spectral noise simulations of circuits that do not employ mixers, such as amplifiers.
For a successful analysis:
- Terminate all inputs and outputs with sources or terms. Use sources such as the P_1Tone component in the Sources-Freq Domain palette. Terminate outputs with the Term component, which can be found on several simulation palettes, including HB. Noise parameters are meaningful only with respect to two ports.
- Place a noise source where noise is to be injected and edit the component as required. Noise sources are found under the Sources-Noise palette.

Note
The built-in BJT model (BJT_Model) has 1/ f noise sources that can be turned on by setting certain model parameters.
Note
When simulating noise figure, noise sources should not be added at the input. Noise sources can be added elsewhere in the circuit, as desired. - From the Simulation-HB palette , select and place the HarmonicBalance component, and double-click to edit it. Select the Noise tab and enable the Nonlinear noise checkbox.
- Click the Noise(1) button:
- To calculate spot noise, set the Sweep Type to Single point and enter a frequency. If an input frequency is not specified, it is assumed to be the same as the spot noise frequency. This way, the input and output frequencies are the same.
- For a swept noise analysis, set Sweep Type to Linear or Log and define the sweep with Start/Stop or Center/Span values.
- In the Input frequency field, enter a frequency for the sideband that will mix to the spot-noise frequency of interest.
- In the Noise input port field, enter the number of the port at which noise is injected.
- In the Noise output port field, enter the number of the Term component at which noise is retrieved.
- Click the Noise (2) button:
- To specify the nodes at which noise will be computed, select a node name from the Edit list and click Add.
- The Noise contributors fields enable you to specify and sort the items that contribute noise to the simulation, and specify a threshold that determines whether contributors are reported or not.
- You can calculate noisy 2-port parameters such as minimum noise figure, optimum source match, and effective noise resistance. These results will appear in the dataset as NFmin, Sopt, and Rn, respectively.
For more information about each field, click Help from the HarmonicBalance dialog box.
Note
Once you have entered these settings, you can switch the noise simulation off by disabling Nonlinear noise at the bottom of the dialog. Your settings will remain in the Noise tab and become active when Nonlinear noise is enabled again.
- Add an Options component to the schematic and set the temperature either by editing Temp=16.85 in the Schematic window, or by selecting the Misc tab and editing Simulation temperature to that value. This temperature, 16.85°C or 290 Kelvin, is the standard temperature for noise figure measurement as defined by the IEEE definition for noise figuration.
For more information about nonlinear noise analysis, refer to Nonlinear Noise Simulation Description.
Performing a Noise Simulation with NoiseCons
This section describes using the NoiseCon component to enable a noise simulation.
- Select NoiseCon from the Simulation-HB palette and place it in the Schematic window. Edit it to select the Freq tab and enter noise frequency information.
- Select the Nodes tab and enter information about the circuit nodes at which to compute noise.
- Select the Misc tab and enter information for noise figure, noise contribution reports and noise bandwidth.
- Select the PhaseNoise tab and enter information about phase noise simulation. Click OK.
- Edit the Harmonic Balance simulation control item to select the NoiseCons tab and add the newly placed NoiseCon component to the list of NoiseCons to be simulated. It is not necessary to enable the Nonlinear Noise option at the bottom of the dialog box.Click OK.
When the simulation is performed, the noise simulation requested in the NoiseCon item will be simulated as well.
For more information about NoiseCons, refer to NoiseCon Component Description.
Nonlinear Noise Simulation Description
The results of the harmonic balance simulation are output to the dataset and are then used to determine the periodic operating point for the nonlinear noise simulation. The periodic operating point is the steady-state voltages and currents within the circuit at the fundamental, harmonic, and all mixing frequencies. Every upper and lower noise sideband is modeled for each large-signal spectral component; consequently, the number of noise frequencies simulated is double the harmonic frequencies and the sparse-matrix memory requirement is quadrupled (unless the Krylov option is used). The result is that a nonlinear noise simulation requires four times the memory of a normal harmonic balance simulation. Use low values for the parameter Maximum order (under the Freq tab) to limit the demands on computer memory.
| Note In nonlinear noise analyses, we recommend that the Options component be used to establish a global simulation temperature of 16.85°C if a noise calculation is to be performed. This can be done by editing Temp=16.85 in the Schematic window, or by selecting the Misc tab and editing Simulation temperature to that value. This temperature, 16.85°C or 290 Kelvin, is the standard temperature for noise figure measurement as defined by the IEEE definition for noise figuration. |
If computer memory is insufficient for a noise simulation, eliminate the large-signal tone at the input and replace it with a Term component. Also, reduce the number of tones in the harmonic balance simulation component by 1. The results of the noise figure simulation should not change significantly. To view an example of how to simulate a mixer's output noise without a large-signal RF input tone, look at examples/RFIC/Mixers_prj/NoiseFloor.
If the noise figure is needed, add ports to the circuit. In addition, because the single-sideband definition of noise figure is used, the correct input sideband frequency must be specified, by the parameter Input frequency (under the Noise tab). This identifies which input frequency will mix to the spot-noise frequency of interest.
If the input frequency is not specified, it is assumed to be the same as the spot-noise frequency. This way, the input and output frequencies are the same, as is typical of amplifiers. Input frequency is the frequency at which the signal enters the mixer's RF port. For mixers, Input frequency is typically determined by an equation that involves the local oscillator frequency and the noise frequency. Either the sum of or difference between these values is used, depending on whether upconversion or downconversion is taking place. If an upper or lower sideband cannot be found that agrees with the specified Input frequency, a warning is issued and the nearest sideband is used.
If noisy 2-port parameters such as Sopt, Rn, or NFmin are required, select Calculate noisy two-port parameters. Noise data will be computed only for those nodes requested. The noise voltages and currents scale with the square root of the noise parameter Bandwidth. The default bandwidth is 1 Hz, so that the results have units of V/
. The option Include port noise tells the simulator to include the contributions of port noise in the analysis of noise voltages and currents. The option Use small-signal frequencies (on by default) gives more accurate results, but also requires more memory.
NoiseCon Component Description
The NoiseCon nonlinear noise controller allows more flexibility in the simulation of noise than can be specified using the Noise(1) and Noise(2) dialog boxes under the Noise tab. The NoiseCon allows the computation of many noise-related quantities, including noise voltages and currents, differential noise voltages, noise figure and phase noise around any large-signal carrier. Multiple NoiseCons can be placed and simulated in one harmonic balance simulation.
Everything that can be specified in the Noise(1) and Noise(2) dialog boxes can be specified in a NoiseCon. If you use NoiseCons to perform the noise simulation in harmonic balance, then you do not need to use the Noise(1) and Noise(2).
In the dataset, noise results from the Noise(1) dialog box appear in the dataset with a name of the form HB1.HB_NOISE.vout.noise, where HB1 is the instance name of the harmonic balance control item. Noise results from a NoiseCon will appear in the dataset with a name of the form HB1.NC1.vout.noise, where NC1 is the instance name of the NoiseCon.
NoiseCon Component
Following are details on the tabs and data fields for the NoiseCon component, which is available from the Simulation - HB library.
Two common tabs for controller components include the following:
- Output – Selectively save simulation data to a dataset. For details, refer to the topic Selectively Saving and Controlling Simulation Data.
- Display – Control the visibility of simulation parameters on the Schematic. For details, refer to the topic Displaying Simulation Parameters on the Schematic.
Setting Up NoiseCon Frequency
The frequency at which noise should be computed is specified on the Freq tab. If a phase noise simulation is to be performed, as specified on the PhaseNoise tab, the interpretation of these noise frequencies is different. Instead of computing noise directly at these frequencies, they are interpreted as offset frequencies from a large signal carrier which is specified on the PhaseNoise tab. In the following table, names used in netlists and ADS schematics appear under Parameter Name.
| Setup Dialog Name | Parameter Name | Description | ||
|---|---|---|---|---|
| Noise frequency | ||||
| Sweep Type | ||||
| Single point | FreqForNoise | Enables simulation at a single frequency point. Specify the desired value in the Parameter field. | ||
| Linear | Enables sweeping a range of values based on a linear increment. Click the Start/Stop option to select start and stop values for the sweep. | |||
| Log | Enables sweeping a range of values based on a logarithmic increment. Click the Center/Span option to select a center value and a span of the sweep. | |||
| Start/Stop Start, Stop, Step-size, Num. of pts. |
NLNoiseStart NLNoiseStop NLNoiseStep NLNoiseLin |
Select the Start/Stop option to sweep based on start, stop, step-size and number of points. - Start -- the start point of a sweep - Stop -- the stop point of a sweep - Step -- size-the increments at which the sweep is conducted - Num. of pts. -- the number of points over which sweep is conducted |
||
| Center/Span Center, Span, Pts,/decade, Num. of pts. |
NLNoiseCenter NLNoiseSpan NLNoiseDec NLNoiseLin |
Select the Center/Span option to sweep based on center and span. - Center -- the center point of a sweep - Span -- the span of a sweep - Pts./decade -- number of points per decade - Num. of pts. -- the number of points over which sweep is conducted |
||
| Note: Changes to any of the Start, Stop, etc. fields causes the remaining fields to be recalculated automatically. | ||||
| Use sweep plan | NoiseFreqPlan | Enables use of an existing sweep plan component (SweepPlan). Select this option and enter the name of the plan or select it from the drop-down list. | ||
Setting Up NoiseCon Nodes
The nodes at which noise voltages and branches through which noise currents are to be calculated are specified on this tab. Unlike the main harmonic balance simulation, noise is only computed at those nodes that the user specifies, not at all named nodes. If only the single sideband noise figure is to be computed, then no information need be entered here. In the following table, names used in netlists and ADS schematics appear under Parameter Name.
| Setup Dialog Name | Parameter Name | Description | |
|---|---|---|---|
| Nodes for Noise Parameter Calculation | Use this area to select nodes at which you want linear noise data to be reported. Noise voltages and currents are reported in rms units. Note: The fewer the number of nodes requested, the quicker the simulation and the less memory required. | ||
| Pos Node | Selects the named node(s) for the simulator to consider. | ||
| Neg Node | Allows differential noise measurements to be set up. This dialog allows you to specify a differential noise measurement between two nodes. Unlike a harmonic balance simulation, the noise voltage between two nodes can't be computed by first computing the noise voltage separately at each node and subtracting the results, due to possible correlation between the noise at each node. Using a differential noise measurement here the correlation effects will be considered. To request a differential noise measurement, enter the first node as Pos Node and the second node as Neg Node. The result in the dataset will have a name of the form HB1.NC1.posnode_minus_negnode. If a differential noise measurement is not required, leave the Neg Node field blank. Differential measurements are supported only for node voltages, not branch current. | ||
| Select | Holds the names of the nodes the simulator will consider. - Add -- Adds a named node. - Cut -- Deletes a named node. - Paste -- Takes a named node that has been cut and places it in a different order in the Select window. |
||
| Include port noise in node noise voltages | IncludePortNoise | Causes port noise to be included in noise currents and voltages. Ports must be placed and defined. If Include port noise is selected, the thermal noise generated by the source resistance in frequency domain power sources and Term elements are included in the simulation results for noise voltages and currents. This does not affect the computation of noise figure. | |
Setting Up the NoiseCon Misc. Tab
The NoiseCon noise tab includes an assortment of options. In the following table, names used in netlists and ADS schematics appear under Parameter Name.
| Setup Dialog Name | Parameter Name | Description | |
|---|---|---|---|
| Input frequency | InputFreq | Because the simulator uses a single-sideband definition of noise figure, the correct input sideband frequency must be specified here. This parameter identifies which input frequency will mix to the noise frequency of interest. In the case of mixers, Input frequency is typically determined by an equation that involves the local oscillator (LO) frequency and the noise frequency. Either the sum of or difference between these two values is used, depending on whether upconversion or downconversion is taking place. The above parameters do not need to be specified if only the output noise voltage is desired (that is, if no noise figure is computed). |
|
| Noise input port | NoiseInputPort | Number of the source port at which noise is injected. This is commonly the RF port. Although any valid port number can be used, the input port number is frequently defined as Num=1. If noise figure is not required, this field should be blank. | |
| Noise output port | NoiseOutputPort | Number of the Term component at which noise is retrieved. This is commonly the IF port. Although any valid port number can be used, the input port number is frequently defined as Num=2. If noise figure is not required, this field should be blank. | |
| Noise contributors | Use this area to sort the noise contributors list and to select a threshold below which noise contributors will not be reported. A list shows how each component contributes to noise at a specific node. The noise contributor data are always in units of V/sqrt(Hz) for noise voltages, and A/sqrt(Hz) for noise currents; they do not scale with noise bandwidth. | ||
| Mode | SortNoise | Off -- causes no individual noise contributors (nodes) to be selected. The result is simply a value for total noise at the node. Sort by value -- sorts individual noise contributors, from largest to smallest, that exceed a user-defined threshold (see below). The subcomponents of the nonlinear devices that generate noise (such as Rb, Rc, Re, Ib, and Ic in a BJT) are listed separately, as well as the total noise from the device. Sort by name -- causes individual noise contributors to be identified and sorts them alphabetically. The subcomponents of the nonlinear devices that generate noise (such as Rb, Rc, Re, Ib, and Ic in a BJT) are listed separately, as well as the total noise from the device. Sort by value with no device details -- sorts individual noise contributors, from largest to smallest, that exceed a user-defined threshold (see below). Unlike Sort by value, only the total noise from nonlinear devices is listed without any subcomponent details. Sort by name with no device details -- causes individual noise contributors to be identified and sorts them alphabetically. Unlike Sort by name, only the total noise from nonlinear devices is listed without subcomponent details. |
|
| Dynamic range to display | NoiseThresh | A threshold below the total noise, in dB, that determines what noise contributors are reported. All noise contributors more than this threshold will be reported. For example, assuming that the total noise voltage is 10 nV, a setting of 40 dB (a good typical value) ensures that all noise contributors up to 40 dB below 10 nV (that is, above 0.1 nV) are reported. The default of 0 dB causes all noise contributors to be reported. This parameter is used only with Sort by value and Sort by value with no device details. | |
| Calculate noisy two-port parameters | NoiseTwoPort | Causes an S-parameter simulation to be performed. Ports must be placed and defined. The Noise input port parameter should be set equal to the port number specified by the Num parameter on the input source, and the Noise output parameter to the number of the output Term (termination) component to Num=2. The following two-port parameters (dataset variables) are then returned and can be plotted: NFmin -- minimum noise figure of a two-port circuit. It is equal to the noise figure when the optimum source admittance is connected to the circuit. (Its default unit is dB). Sopt -- the optimum source match for a two-port circuit. It is the reflection coefficient (looking into the source) that gives the minimum noise figure. Rn -- the effective noise resistance in ohms (unnormalized) of a two-port circuit. Effective noise resistance can be used to plot noise-figure circles or related quantities. This parameter determines how rapidly the minimum noise figure deteriorates when the source impedance is not at its optimum value. Icor -- the noise current correlation matrix, in units of Amperes squared. It describes the short circuit noise currents squared at each port, and the correlation between noise currents at different ports. These expressions for noise simulation can be manipulated in equations. |
|
| Bandwidth | BandwidthForNoise | Bandwidth for spectral noise simulation. 1 Hz is the recommended bandwidth for measurements of spectral noise power. The noise contributor data do not scale with noise bandwidth. | |
Setting Up NoiseCon PhaseNoise
This tab is used to specify that a phase noise simulation should be performed instead of a standard noise simulation. The default is None (mixer), a standard noise simulation where noise voltages are computed at the requested nodes at the noise frequency specified in the Freq tab. When a NoiseCon is used, phase noise can be simulated for any type of circuit, not just an oscillator. For example, this makes it possible to simulate the added phase noise due to an amplifier. Phase noise can also be computed around any large signal carrier frequency, not just the fundamental frequency of an oscillator. This makes it possible to simulate the phase noise after an oscillator signal passes through a frequency multiplier or mixer. In the following table, names used in netlists and ADS schematics appear under Parameter Name.
| Setup Dialog Name | Parameter Name | Description | |
|---|---|---|---|
| Phase Noise Type | PhaseNoise | ||
| None (mixer) | None (mixer) | Noise voltages are computed at the nodes specified at the frequencies specified on the Freq tab. Noise results in the dataset are of the form HB1.NC1.vout.noise. There is no concept of a carrier frequency. | |
| Phase noise spectrum | Phase noise spectrum | Single sideband phase noise is computed at the nodes specified, treating the frequency information on the Freq tab as an offset frequency from the large signal carrier. See below on how to specify the large signal carrier frequency. Noise results in the dataset are of the form HB1.NC1.vout.pnmx. | |
| Relative vnoise spectrum | Relative vnoise spectrum | Rather than compute the single sideband phase noise, the noise voltage is computed both at the carrier frequency minus the offset frequency and at the carrier frequency plus the offset frequency. The results are present as a relative noise spectrum around zero, with the results extending from minus the largest offset frequency to plus the largest offset frequency. Noise results in the dataset are of the form HB1.NC1.vout.noise. | |
| Absolute vnoise spectrum | Absolute vnoise spectrum | This is similar to the Relative vnoise spectrum, except the resulting spectrum is presented as an absolute spectrum around the large signal carrier frequency, extending from the carrier frequency minus the largest offset frequency to the carrier frequency plus the largest offset frequency. Noise results in the dataset are of the form HB1.NC1.vout.noise. | |
| Integrate over bandwidth | Integrate over bandwidth | This type of simulation integrates the noise around a large signal carrier. The user specifies the carrier on the Phase Noise tab, specifying either the Frequency in Hertz or the Carrier Mixing Indices, which specify the frequency as (index1*_freq1 + index2*_freq2 + *). The noise is integrated over a bandwidth specified by the Bandwidth parameter on the Misc tab, from carrier-bandwidth/2 to carrier+bandwidth/2 as shown in the equation below this table. A trapezoidal integration is performed (which takes into account the usual 1/fa behavior of noise), using data at the frequencies specified on the Freq tab. The specified frequencies are actually offset frequencies on either side of the carrier. The largest offset frequency should be at least half of the noise bandwidth to avoid extrapolation of the results during integration. Noise results in the dataset are of the form HB1.NC1.vout.noise. The picture below this table shows an example of how the sample points for integration are chosen. Assume the carrier frequency is 10 MHz and the frequency sweep is set up to go from 1 kHz to 1 MHz in a logarithmic sweep with 1 point per decade, with a bandwidth of 2 MHz. This integration can be performed for any type of circuit in which the total noise integrated over some bandwidth is required. It works for mixers as well as oscillators. If the mixer noise figure is computed, the integrated noise voltage will be used instead of the spot noise voltage. |
|
| Specify phase noise carrier | The frequency of the large signal carrier used in all but the normal noise simulation are specified at the bottom of this tab. Any large signal carrier from the harmonic balance simulation may serve as the carrier frequency for phase noise simulation. There are two ways to specify the carrier frequency: - Carrier Frequency - Carrier Mixing Indices See following items. |
||
| Frequency | CarrierFreq | The frequency value may be specified directly by selecting the Frequency button and entering the frequency in the box below it. Either a number or a variable name may be entered. Since the frequency may not be precisely known in an oscillator, the simulator searches for the frequency closest to the user specified frequency. If the difference between the user specified frequency and the actual large signal frequency exceeds 10%, a warning message will be issued. A carrier frequency of zero cannot be entered directly as zero due to a limitation in the simulator; enter a small value such as 1 Hz instead. | |
| Carrier mixing indices | CarrierIndex[n] | Specify these indices. For example, the lower sideband mixing term in a mixer would be entered as 1 and -1. The indices are listed in sequential order by carrier. | |
For the parameter Integrate over bandwidth, described above, the following equation shows noise is integrated over a bandwidth specified by the Bandwidth parameter on the Misc tab, from carrier-bandwidth/2 to carrier+bandwidth/2:

The following figure shows an example of how the sample points for integration are chosen:

Privacy
Statement
|
Terms of Use
|
Legal |
Contact Us
|
© Agilent 2000-2008 ![]()