Complex baseband model of amplifier with noise and nonlinearities
RF Blockset / Idealized Baseband
The Amplifier block generates a complex baseband model of an amplifier with thermal noise. This block provides four nonlinearity models and three options to specify noise representation.
Note
This block assumes a nominal impedance of 1 ohm.
Port_1
— Input baseband signalInput baseband signal, specified as a real scalar, real column, complex scalar, or complex column.
Data Types: double
 single
Port_1
— Output baseband signalOutput baseband signal, specified as a real scalar, real column, complex scalar, or complex column. The output port mimics the properties of the input port. For example, if the input baseband signal is specified as a real scalar with a data type double, then the output baseband signal is also specified as a real signal with the data type double.
Data Types: double
 single
Model
— Amplifier nonlinearity modelCubic polynomial
(default)  AM/AM  AM/PM
 Modified Rapp
 Saleh
Specify the amplifier nonlinearity model as one of the following:
Cubic polynomial
AM/AM  AM/PM
Modified Rapp
Saleh
Linear power gain (dB)
— Linear gain of amplifier 0
(default)  real scalar Linear gain, specified as a scalar in dB.
Type of NonLinearity
— Third  order nonlinearity typeIIP3
(default)  OIP3
 IP1dB
 OP1dB
 IPsat
 OPsat
Third order nonlinearity type, specified as IIP3
,
OIP3
, IP1dB
, OP1dB
,
IPsat
, or OPsat
.
IIP3
— Input thirdorder intercept pointInf
(default)  real positive numberInput thirdorder intercept point, specified as a real positive number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
IIP3
.
OIP3
— Output thirdorder intercept pointInf
(default)  real positive numberOutput thirdorder intercept point, specified as a real positive number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
OIP3
.
IP1dB
— Input 1 dB compression pointInf
(default)  real positive numberInput 1 dB compression point, specified as a real positive number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
IP1dB
.
OP1dB
— Output 1 dB compression pointInf
(default)  real positive numberOutput 1 dB compression point, specified as a real positive number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
OP1dB
.
IPsat
— Input saturation pointInf
(default)  real positive numberInput saturation point, specified as a real positive number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
IPsat
.
OPsat
— Output saturation pointInf
(default)  real positive numberOutput saturation point, specified as a positive real number in dBm.
To enable this parameter, set Model to Cubic
polynomial
and Type of NonLinearity to
OPsat
.
Simulate using
— Specify type of simulation to runCode generation
(default)  Interpreted execution
Code generation
– Simulate model using generated C code.
The first time you run a simulation, Simulink^{®} generates C code for the block. The C code is reused for subsequent
simulations, as long as the model does not change. This option requires additional startup
time, but the speed of the subsequent simulations is faster than Interpreted
execution
.
Interpreted execution
– Simulate model using the
MATLAB^{®} interpreter. This option shortens startup time speed, but the speed of the
subsequent simulations is slower than Code generation
. In this
mode, you can debug the source code of the block.
Plot power characteristics
— Plot power characteristics This button plots the power characteristics based on the parameters specified on the Main tab.
Lookup table (Pin(dBm), Pout(dBm), deg)
— Stub termination [ 25, 5, 1; 10, 20, 2; 0, 27, 5; 5, 28, 12
]
(default)  real vectorTable lookup entries specified as a real Mby3 matrix. This table expresses the model output power dBm level in matrix column 2 and the model phase change in degrees in matrix column 3 as related to the absolute value of the input signal power of matrix column 1 for the AM/AM  AM/PM model. The column 1 input power must increase monotonically.
To enable this parameter, set Model to AM/AM 
AM/PM
Output saturation level (V)
— Output saturation level1
(default)  real positive numberVoltage output saturation level, specified as a real positive number in dBm.
To enable this parameter, set Model to Modified
Rapp
Magnitude smoothness factor
— Magnitude smoothness factor2
(default)  real positive numberMagnitude smoothness factor for the Modified Rapp
amplifier
model AM/AM calculations, specified as a positive real number.
To enable this parameter, set Model to Modified
Rapp
Phase gain (rad)
— Phase gain0.45
(default)  real scalarPhase gain for the Modified Rapp
amplifier model AM/PM
calculations, specified as a real scalar in radians.
To enable this parameter, set Model to Modified
Rapp
Phase saturation
— Phase saturation.88
(default)  real positive numberPhase saturation for the Modified Rapp
amplifier model AM/PM
calculations, specified as a positive real number.
To enable this parameter, set Model to Modified
Rapp
Phase smoothness factor
— Phase smoothness factor3.43
(default)  real positive numberPhase smoothness factor for the Modified Rapp
amplifier model
AM/PM calculations, specified as a positive real number.
To enable this parameter, set Model to Modified
Rapp
Input scaling (dB)
— Scaling factor for input signal level0
(default)  nonnegative real numberScaling factor for input signal level for the Saleh
amplifier
model, specified as a nonnegative real number in dB.
To enable this parameter, set Model to
Saleh
AM / AM parameters [alpha beta]
— AM/AM
conversion parameters[ 2.1587, 1.1517 ]
(default)  twoelement vectorAM/AM twotuple conversion parameters for Saleh
amplifier
model, specified as a twoelement vector of nonnegative real numbers.
To enable this parameter, set Model to
Saleh
AM / PM parameters [alpha beta]
— AM/PM
conversion parameters[ 4.0033, 9.1040 ]
(default)  twoelement vectorAM/PM
twotuple conversion parameters for
Saleh
amplifier model, specified as a twoelement vector of
nonnegative real numbers.
To enable this parameter, set Model to
Saleh
Output scaling (dB)
— Scaling factor for output signal level0
(default)  nonnegative real numberScaling factor for output signal level for Saleh
amplifier
model, specified as nonnegative real number in dB.
To enable this parameter, set Model to
Saleh
Include Noise
— Add noise to system off
(default)  on
Select this parameter to add system noise to the input signal. Once you select this parameter, the parameters associated with the Noise tab are displayed.
Specify noise type
— Noise representation Noise temperature
(default)  Noise figure
 Noise factor
Noise descriptive type, specified as Noise temperature
,
Noise figure
, or Noise factor
.
Noise temperature (K)
— Noise temperature to model noises in amplifier290
(default)  nonnegative real numberNoise temperature to model noise in the amplifier, specified as a nonnegative real number in degrees (K).
To enable this parameter, select Include noise and set
Specify noise type to Noise
temperature
.
Noise figure (dB)
— Noise figure to model noise in amplifier10 * log10( 2 )
(default)  nonnegative real numberNoise figure to model noise in the amplifier, specified as a nonnegative real number in dB.
To enable this parameter, select Include noise and set
Specify noise type to Noise figure
.
Noise factor
— Noise factor to model noise in amplifier2
(default)  positive integer scalar greater than or equal to 1Noise factor to model noise in the amplifier, specified as a positive integer scalar greater than or equal to 1
To enable this parameter, select Include noise and set
Specify noise type to Noise factor
.
Seed source
— Source of initial seed Auto
(default)  User specified
Source of initial seed used to prepare the Gaussian random number noise generator, specified as one of the following:
Auto
 When Seed source is set to
Auto
, seeds for each amplifier instance are generated using a
random number generator. The reset method of the instance has no effect.
User specified
 When Seed source is
set to User specified
, the value provided in the
Seed is used to initialize the random number generator and the reset
method resets the random number generator using the Seed property
value.
Seed
— Seed for random number generator67987
(default)  nonnegative integerSeed for the random number generator, specified as a nonnegative integer less than 2^{32}. Use this value to initialize the random number generator.
To enable this parameter, click Include noise check box and choose
User specified
in the Seed source
parameter.
The Cubic polynomial
model uses linear power gain to
determine the linear coefficient of a thirdorder polynomial and either IP3, P1dB, or Psat to
determine the third  order coefficient of the polynomial.
The general form of cubic nonlinearity models the AM/AM characteristics as
$${F}_{AM/AM}(u)={c}_{1}\times u+\frac{3}{4}{c}_{3}\times {u}^{3}$$
where F_{AM/AM}(u)
is the
magnitude of the output signal, u is the magnitude of the input signal,
c_{1} is the coefficient of the linear gain term,
and c_{3} is the coefficient of the cubic gain
term.
The results for IIP3, OIP3, PI,1dB, and Po,1dB are taken from [5].
If IIP3 is specified, then
$${c}_{3}=\frac{4{c}_{1}}{3\times {10}^{[(IIP330)/10]}}$$
where IIP3 is given in dBm.
If OIP3 is specified, then
$${c}_{3}=\frac{4{c}_{1}^{3}}{3\times {10}^{[(OIP330)/10]}}$$
where OIP3 is given in dBm.
If the input 1 dB gain compression power IP1dB is specified, then
$${c}_{3}=\frac{2{c}_{1}({10}^{\raisebox{1ex}{$19$}\!\left/ \!\raisebox{1ex}{$20$}\right.}10)}{15\times {10}^{[(IP1dB30)/10]}}$$
where IP1dB is given in dBm.
If the output 1 dB gain compression power OP1dB is specified, then
$${c}_{3}=\frac{2{c}_{1}({10}^{\raisebox{1ex}{$19$}\!\left/ \!\raisebox{1ex}{$20$}\right.}10)}{15\times {10}^{[(OP1dB30LGdB+1)/10]}}$$
where OP1dB is given in dBm, and LGdB is the linear gain in dB
If the input saturation power IPsat is specified, then
$${c}_{3}=\frac{4{c}_{1}}{9\times {10}^{[(IPsat30)/10]}}$$
where IPsat is given in dBm.
If the output saturation power OPsat is specified, then
$${c}_{3}=\frac{16{c}_{1}^{3}}{81\times {10}^{[(OPsat30)/10]}}$$
where OPsat is given in dBm.
The AM/AMAM/PM
model uses a lookup table to specify the
amplifier power characteristics. The table returns interpolated or extrapolated values using
linear interpolation. Each row in the table expresses the relationship between output power or
phase change as a function of input power.
$${u}_{\text{out}}=Tabl{e}_{AM/AM}(u)\times {e}^{((Tabl{e}_{AM/PM}(u)+\angle u)\times i)}$$
where u_{out}
is the output
signal and u is the magnitude of input signal.
The Saleh
model is based on normalized transfer function.
Use the input / output scaling parameters to adjust signal levels from their normalized
values.
For Saleh
, the AM/AM parameters
alpha_{AM/AM} and
beta_{AM/AM} are used to compute the amplitude gain
for an input signal using the following equation:
$${F}_{AM/AM}(u)=\frac{alph{a}_{AM/AM}\times \leftu\right}{1+bet{a}_{AM/AM}\times u{}^{2}}$$
where u is the magnitude of the scaled signal and
u
is calculated as:
$$u=InputScale\times {u}_{\text{in}}$$
For Saleh
, the AM/PM parameters
alpha_{AM/PM} and
beta_{AM/PM} are used to compute the phase change
for an input signal using the following equation:
$${F}_{AM/PM}(u)=\frac{alph{a}_{AM/PM}\times u{}^{2}}{1+bet{a}_{AM/PM}\times u{}^{2}}+angle(u)$$
where u is the magnitude of the scaled signal and angle is a MATLAB function that returns the phase angle of u.
The scaled output signal, u_{out} is calculated as:
$${u}_{\text{out}}={F}_{AM/AM}\times {e}^{({F}_{AM/PM}\times i)}\times OutputScale$$
The Modified Rapp
model is based on normalized transfer
functions. Use the input and output scaling parameters to adjust the signal levels from their
normalized values.
The AM/AM characteristics for Modified Rapp
are given
by:
$${F}_{AM/AM}(u)=\frac{{g}_{lin}\times \leftu\right}{{(1+\frac{{g}_{lin}\times u}{{V}_{sat}}{}^{2p})}^{\raisebox{1ex}{$1$}\!\left/ \!\raisebox{1ex}{$2p$}\right.}}$$
where u is the magnitude of input signal,
g_{lin} is 10^{(Linear Gain (dB)/20)}, and is the amplitude gain of the amplifier, V_{sat} is Output saturation level (V), and p is Magnitude smoothness factor.
The AM/PM characteristics for Modified Rapp
is given
by
$${F}_{AM/PM}(u)=\frac{{\rm A}\times {u}^{q}}{[1+{(\frac{u}{B})}^{q}]}+angle(u)$$
where u is the magnitude of input signal, A is the
Phase gain (rad), B is
Phase saturation, q is
Phase smoothness factor and
angle is a MATLAB function which returns phase angle of
u
.
The output signal u_{out} is calculated as:
$${u}_{\text{out}}={u}_{\text{mag}}\times {e}^{({u}_{angle}\times i)}$$
where u_{mag} is the magnitude and u_{angle} is the phase of the output signal, respectively.
According to the Specify noise type parameter, you can specify the amount of thermal noise in three ways,
Noise temperature
— Specifies the noise in kelvin.
Noise factor
— Specifies the noise by using the
equation:
$$Noise\text{}factor\text{}=\text{}1\text{}+\text{}\frac{Noise\text{}temperature}{290}$$
Noise figure
— Specifies the noise in decibels relative to a
noise temperature of 290 kelvin. In terms of noise factor
$$Noise\text{}figure\text{}=\text{}10\times \mathrm{log}(Noise\text{}factor)$$
Note
Some RF Blockset™ blocks require the sample time to perform baseband modeling calculations. To ensure accuracy in these calculations, the Input Port block, as well as the mathematical RF blocks compare the input sample time to the sample time you provide in the mask. If these times do not match, or if the input sample time is missing because the blocks are not connected, an error message appears.
To visualize the functionality of Plot power characteristics button, set the to the Amplifier block listed in the table.
Model  Parameters  Power Characteristics Plot 

Cubic Polynomial  Main tab:
Noise tab:


AM/AM  AM/PM  Main tab:
Noise tab:


Modified Rapp  Main tab:
Noise tab:


Saleh  Main tab:
Noise tab:


All four subsystems for the amplifier nonlinearity models apply a memoryless nonlinearity to the complex baseband input signal. Each model
Multiplies the signal by a gain factor.
Splits the complex signal into its magnitude and angle components.
Applies an AM/AM conversion to the magnitude of the signal, according to the selected nonlinearity model, to produce the magnitude of the output signal.
Applies an AM/PM conversion to the phase of the signal, according to the selected nonlinearity model, and adds the result to the angle of the signal to produce the angle of the output signal.
[1] Razavi, Behzad. “Basic Concepts “ in RF Microelectronics, 2nd edition, Prentice Hall, 2012.
[2] Rapp, C., “Effects of HPANonlinearity on a 4DPSK/OFDMSignal for a Digital Sound Broadcasting System.” Proceedings of the Second European Conference on Satellite Communications, Liege, Belgium, Oct. 2224, 1991, pp. 179184.
[3] Saleh, A.A.M., “Frequencyindependent and frequencydependent nonlinear models of TWT amplifiers.” IEEE Trans. Communications, vol. COM29, pp.17151720, November 1981.
[4] IEEE 802.1109/0296r16. “TGad Evaluation Methodology.“ Institute of Electrical and Electronics Engineers.https://www.ieee.org/
[5] Kundert, Ken.“ Accurate and Rapid Measurement of IP_{2} and IP_{3},“ The Designer Guide Community, May 22, 2002.
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
Select web siteYou can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.