General Mixer

Model mixer and local oscillator described by `rfdata` object

Library

Mixer sublibrary of the Physical library

Description

The General Mixer block models the mixer described by an RF Toolbox™ data (`rfdata.data`) object.

Network Parameters

The network parameter values all refer to the mixer input frequency. If network parameter data and corresponding frequencies exist as S-parameters in the `rfdata.data` object, the General Mixer block interpolates the S-parameters to determine their values at the modeling frequencies. If the block contains network Y- or Z-parameters, the block first converts them to S-parameters. See Map Network Parameters to Modeling Frequencies for more details.

SimRF™ Equivalent Baseband software computes the reflected wave at the mixer input (${b}_{1}$) and at the mixer output (${b}_{2}$) from the interpolated S-parameters as

$\left[\begin{array}{c}{b}_{1}\left({f}_{in}\right)\\ {b}_{2}\left({f}_{out}\right)\end{array}\right]=\left[\begin{array}{cc}{S}_{11}& {S}_{12}\\ {S}_{21}& {S}_{22}\end{array}\right]\left[\begin{array}{c}{a}_{1}\left({f}_{in}\right)\\ {a}_{2}\left({f}_{out}\right)\end{array}\right]$

where

• ${f}_{in}$ and ${f}_{out}$ are the mixer input and output frequencies, respectively.

• ${a}_{1}$ and ${a}_{2}$ are the incident waves at the mixer input and output, respectively.

The interpolated S21 parameter values describe the conversion gain as a function of frequency, referred to the mixer input frequency.

Active Noise

You can specify active block noise in one of the following ways:

• Spot noise data in the data source.

• Spot noise data in the block dialog box.

• Spot noise data (`rfdata.noise`) object in the block dialog box.

• Noise figure, noise factor, or noise temperature value in the block dialog box.

• Frequency-dependent noise figure data (`rfdata.nf`) object in the block dialog box.

The latter four options are only available if noise data does not exist in the data source.

If you specify block noise as spot noise data, the block uses the data to calculate noise figure. The block first interpolates the noise data for the modeling frequencies, using the specified Interpolation method. It then calculates the noise figure using the resulting values.

Phase Noise

The General Mixer block applies phase noise to a complex baseband signal. The block first generates additive white Gaussian noise (AWGN) and filters the noise with a digital FIR filter. It then adds the resulting noise to the angle component of the input signal.

The blockset computes the digital filter by:

1. Interpolating the specified phase noise level to determine the phase noise values at the modeling frequencies.

2. Taking the IFFT of the resulting phase noise spectrum to get the coefficients of the FIR filter.

 Note:   If you specify phase noise as a scalar value, the blockset assumes that the phase noise is constant at all modeling frequencies and does not have a 1/f slope. This assumption differs from that made by the Mathematical Mixer block.

Nonlinearity

If power data exists in the data source, the block extracts the AMAM/AMPM nonlinearities from it.

If the data source contains no power data, then you can introduce nonlinearities into your model by specifying parameters in the Nonlinearity Data tab of the General Mixer block dialog box. Depending on which of these parameters you specify, the block computes up to four of the coefficients ${c}_{1}$, ${c}_{3}$, ${c}_{5}$, and ${c}_{7}$ of the polynomial

${F}_{AM/AM}\left(s\right)={c}_{1}s+{c}_{3}{|s|}^{2}s+{c}_{5}{|s|}^{4}s+{c}_{7}{|s|}^{6}s$

that determines the AM/AM conversion for the input signal $s$. The block automatically calculates ${c}_{1}$, the linear gain term. If you do not specify additional nonlinearity data, the block operates as a mixer with a linear gain. If you do, the block calculates one or more of the remaining coefficients as the solution to a system of linear equations, determined by the following method.

1. The block checks whether you have specified a value other than `Inf` for:

• The third-order intercept point ($OIP3$ or $IIP3$).

• The output power at the 1-dB compression point (${P}_{1dB,out}$).

• The output power at saturation (${P}_{sat,out}$).

In addition, if you have specified ${P}_{sat,out}$, the block uses the value for the gain compression at saturation ($G{C}_{sat}$). Otherwise, $G{C}_{sat}$ is not used. You define each of these parameters in the block dialog box, on the Nonlinearity Data tab.

2. The block calculates a corresponding input or output value for the parameters you have specified. In units of dB and dBm,

$\begin{array}{c}{P}_{sat,out}+G{C}_{sat}={P}_{sat,in}+{G}_{lin}\\ {P}_{1dB,out}+1={P}_{1dB,in}+{G}_{lin}\\ OIP3=IIP3+{G}_{lin}\end{array}$

where ${G}_{lin}$ is ${c}_{1}$ in units of dB.

3. The block formulates the coefficients ${c}_{3}$, ${c}_{5}$, and ${c}_{7}$, where applicable, as the solutions to a system of one, two, or three linear equations. The number of equations used is equal to the number of parameters you provide. For example, if you specify all three parameters, the block formulates the coefficients according to the following equations:

$\begin{array}{c}\sqrt{{P}_{sat,out}}={c}_{1}\sqrt{{P}_{sat,in}}+{c}_{3}{\left(\sqrt{{P}_{sat,in}}\right)}^{3}+{c}_{5}{\left(\sqrt{{P}_{sat,in}}\right)}^{5}+{c}_{7}{\left(\sqrt{{P}_{sat,in}}\right)}^{7}\\ \sqrt{{P}_{1dB,out}}={c}_{1}\sqrt{{P}_{1dB,in}}+{c}_{3}{\left(\sqrt{{P}_{1dB,in}}\right)}^{3}+{c}_{5}{\left(\sqrt{{P}_{1dB,in}}\right)}^{5}+{c}_{7}{\left(\sqrt{{P}_{1dB,in}}\right)}^{7}\\ 0=\frac{{c}_{1}}{IIP3}+{c}_{3}\end{array}$

The first two equations are the evaluation of the polynomial ${F}_{AM/AM}\left(s\right)$ at the points $\left(\sqrt{{P}_{sat,in}},\sqrt{{P}_{sat,out}}\right)$ and $\left(\sqrt{{P}_{1dB,in}},\sqrt{{P}_{1dB,out}}\right)$, expressed in linear units (such as W or mW) and normalized to a 1-Ω impedance. The third equation is the definition of the third-order intercept point.

The calculation omits higher-order terms according to the available degrees of freedom of the system. If you specify only two of the three parameters, the block does not use the equation involving the parameter you did not specify, and eliminates any ${c}_{7}$ terms from the remaining equations. Similarly, if you provide only one of the parameters, the block uses only the solution to the equation involving that parameter and omits any ${c}_{5}$ or ${c}_{7}$ terms.

If you provide vectors of nonlinearity and frequency data, the block calculates the polynomial coefficients using values for the parameters interpolated at the center frequency.

Operating Conditions

Agilent® P2D and S2D files define block parameters for several operating conditions. Operating conditions are the independent parameter settings that are used when creating the file data. By default, the blockset defines the block behavior using the parameter values that correspond to the operating conditions that appear first in the file. To use other property values, you must select a different operating condition in the General Mixer block dialog box.

Dialog Box

Main Tab

Data source

Determines the source of the data that describes the mixer behavior. The data source must contain network parameters and may also include noise data, nonlinearity data, or both. The value can be ```Data file``` or `RFDATA object`.

Data file

If Data source is set to ```Data file```, use this field to specify the name of the file that contains the mixer data. The file name must include the extension. If the file is not in your MATLAB® path, specify the full path to the file or click the Browse button to find the file.

 Note:   If the data file contains an intermodulation table, the General Mixer block ignores the table. Use RF Toolbox software to ensure the cascade has no significant spurs in the frequency band of interest before running a simulation.
RFDATA object

If Data source is set to ```RFDATA object```, use this field to specify an RF Toolbox data (`rfdata.data`) object that describes a mixer. You can specify the object as one of the following:

• The handle of a data object previously created using RF Toolbox software.

• An RF Toolbox command such as ```rfdata.data('Freq',1e9,'S_Parameters',[0 0; 0.5 0])```, which creates a data object.

• A MATLAB expression that generates a data object.

For more information about data objects, see the `rfdata.data` reference page in the RF Toolbox documentation.

Interpolation method

The method used to interpolate the network parameters. The following table lists the available methods describes each one.

MethodDescription
`Linear` (default)Linear interpolation
`Spline`Cubic spline interpolation
`Cubic`Piecewise cubic Hermite interpolation

Mixer Type

Type of mixer. Choices are `Downconverter` (default) and `Upconverter`.

LO frequency (Hz)

Local oscillator frequency. If you choose `Downconverter`, the blockset computes the mixer output frequency, fout, from the mixer input frequency, fin, and the local oscillator frequency, flo, as fout = fin – flo. If you choose `Upconverter`, fout = fin + flo.

 Note:   For a downconverting mixer, the local oscillator frequency must satisfy the condition fin – flo ≥ 1/(2ts), where ts is the sample time specified in the Input Port block. Otherwise, an error appears.

Noise Data Tab

Phase noise frequency offset (Hz)

Vector specifying the frequency offset.

Phase noise level (dBc/Hz)

Vector specifying the phase noise level.

Noise type

Type of noise data. The value can be `Noise figure`, ```Spot noise data```, `Noise factor`, or ```Noise temperature```. This parameter is disabled if the data source contains noise data.

Noise figure (dB)

Scalar ratio or vector of ratios, in decibels, of the available signal-to-noise power ratio at the input to the available signal-to-noise power ratio at the output, (Si/Ni)/(So/No). This parameter is enabled if Noise type is set to `Noise figure`.

Minimum noise figure (dB)

Minimum scalar ratio or vector of minimum ratios of the available signal-to-noise power ratio at the input to the available signal-to-noise power ratio at the output, (Si/Ni)/(So/No). This parameter is enabled if Noise type is set to `Spot noise data`.

Optimal reflection coefficient

Optimal mixer source impedance. This parameter is enabled if Noise type is set to `Spot noise data`. The value can be a scalar or vector.

Equivalent normalized resistance

Resistance or vector of resistances normalized to the resistance value or values used to take the noise measurement. This parameter is enabled if Noise type is set to ```Spot noise data```.

Noise factor

Scalar ratio or vector of ratios of the available signal-to-noise power ratio at the input to the available signal-to-noise power ratio at the output, (Si/Ni)/(So/No). This parameter is enabled if Noise type is set to `Noise factor`.

Noise temperature (K)

Equivalent temperature or vector of temperatures that produce the same amount of noise power as the mixer. This parameter is enabled if Noise type is set to `Noise temperature`.

Frequency (Hz)

Scalar value or vector corresponding to the domain of frequencies over which you are specifying the noise data. If you provide a scalar value for your noise data, the block ignores the Frequency (Hz) parameter and uses the noise data for all frequencies. If you provide a vector of values for your noise data, it must be the same size as the vector of frequencies. The block uses the Interpolation method specified in the Main tab to interpolate noise data.

Nonlinearity Data Tab

IP3 type

Type of third-order intercept point. The value can be `IIP3` (input intercept point) or `OIP3` (output intercept point). This parameter is disabled if the data source contains power data or IP3 data.

IP3 (dBm)

Value of third-order intercept point. This parameter is disabled if the data source contains power data or IP3 data. Use the default value, `Inf`, if you do not know the IP3 value. This parameter can be a scalar (to specify frequency-independent nonlinearity data) or a vector (to specify frequency-dependent nonlinearity data).

1 dB gain compression power (dBm)

Output power value (${P}_{1dB,out}$) at which gain has decreased by 1 dB. This parameter is disabled if the data source contains power data or 1-dB compression point data. Use the default value, `Inf`, if you do not know the 1 dB compression point. This parameter can be a scalar (to specify frequency-independent nonlinearity data) or a vector (to specify frequency-dependent nonlinearity data).

Output saturation power (dBm)

Output power value (${P}_{sat,out}$) that the mixer produces when fully saturated. This parameter is disabled if the data source contains output saturation power data. Use the default value, `Inf`, if you do not know the saturation power. If you specify this parameter, you must also specify the Gain compression at saturation (dB). This parameter can be a scalar (to specify frequency-independent nonlinearity data) or a vector (to specify frequency-dependent nonlinearity data).

Gain compression at saturation (dB)

Decrease in gain ($G{C}_{sat}$) when the power is fully saturated. The block ignores this parameter if you do not specify the Output saturation power (dBm). This parameter can be a scalar (to specify frequency-independent nonlinearity data) or a vector (to specify frequency-dependent nonlinearity data).

Frequency (Hz)

Scalar or vector value of frequency points corresponding to the third-order intercept and power data. This parameter is disabled if the data source contains power data or IP3 data. If you use a scalar value, the IP3 (dBm), 1 dB gain compression power (dBm), and Output saturation power (dBm) parameters must all be scalars. If you use a vector value, one or more of the IP3 (dBm), 1 dB gain compression power (dBm), and Output saturation power (dBm) parameters must also be a vector.

Visualization Tab

For information about plotting, see Create Plots. Use `rftool` or the RF Toolbox plotting functions to plot other data.

Operating Conditions Tab

If the data source contains data at multiple operating conditions, the Operating Conditions tab contains two columns. The Conditions column shows the available conditions, and the Values column contains a drop-down list of the available values for the corresponding condition. Use the drop-down lists to specify the operating condition values to use in simulation.

`rfdata.data` (RF Toolbox)