M-PAM Modulator Baseband
Modulate using M-ary pulse amplitude modulation
Libraries:
Communications Toolbox /
Modulation /
Digital Baseband Modulation /
AM
Description
The M-PAM Modulator Baseband block modulates a signal by using M-ary pulse amplitude modulation. The output is a baseband representation of the modulated signal.
Note
All values of power assume a nominal impedance of 1 ohm.
Examples
Plot M-PAM Constellation in Simulink
The doc_pam_mod
model uses the M-PAM Modulator Baseband block to modulate input data. Observe changes in the constellation size and scaling for various normalization methods and modulation orders.
A Random Integer Generator block generates a vector of integers over the range [0, M-1] as input for a modulator that applies M-PAM.
Update mask parameters in the M-PAM Modulator Baseband block. Set the modulation order to 8 and the default minimum distance between symbols normalization method. Click the View Constellation
parameter on the M-PAM Modulator Baseband block mask to observe the constellation.
Update the M-PAM Modulator Baseband block mask to set the average power normalization method. Click the View Constellation
parameter on the M-PAM Modulator Baseband block mask to observe the change in the constellation scaling.
Update the M-PAM Modulator Baseband block mask to set the peak power normalization method. Click the View Constellation
parameter on the M-PAM Modulator Baseband block mask to observe the change in the constellation scaling.
Update the M-PAM Modulator Baseband block mask to set the modulation order to 4. Click the View Constellation
parameter on the M-PAM Modulator Baseband block mask to observe the constellation.
Update the M-PAM Modulator Baseband block mask to set the modulation order to 2. Click the View Constellation
parameter on the M-PAM Modulator Baseband block mask to observe the constellation.
Extended Examples
ATSC Digital Television
The vestigial sideband modulation with 8 discrete amplitude levels (8-VSB) transmission subsystem of the Advanced Television Systems Committee (ATSC) digital television standard [ 1 ]. The standard describes the characteristics of the U.S. advanced television system that is designed to transmit high-quality video, audio, and ancillary data within a single 6 MHz terrestrial television broadcast channel.
Ports
Input
In — Input signal
scalar | column vector
Input signal, specified as a scalar or column vector. The input data must be binary values or integers in the range [0, (M – 1)], where M is the modulation order as specified by the M-ary number parameter. This port is unnamed on the block.
Data Types: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
Output
Out — M-PAM-modulated baseband signal
scalar | column vector
M-PAM-modulated baseband signal, returned as a scalar or column vector. Use the Output data type parameter to specify the output data type. This port is unnamed on the block.
Data Types: single
| double
| fixed point
Parameters
To edit block parameters interactively, use the Property Inspector. From the Simulink® Toolstrip, on the Simulation tab, in the Prepare gallery, select Property Inspector.
Main
M-ary number — Modulation order
4
(default) | positive, even integer
Modulation order, specified as a positive, even integer. The modulation order, M, specifies the number of points in the signal constellation. The block scales the signal constellation based on how you set the Normalization method parameter. For more information, see Constellation Size and Scaling.
Input type — Type of input value
Integer
(default) | Bit
Type of input value, specified as Integer
or Bit
. When you set this parameter to
Bit
, the M-ary
number parameter must be
2K for some
positive integer K.
Constellation ordering — Mapping order of symbols
Binary
(default) | Gray
Mapping order of the symbols, specified as
Gray
or
Binary
. This parameter indicates how the
block maps binary words to points of the signal constellation.
When you set this parameter to
Binary
, the block uses binary-coded constellation.When you set this parameter to
Gray
, the block uses a Gray-coded constellation.
Normalization method — Scaling method for constellation
Min. distance between
symbols
(default) | Average Power
| Peak Power
Scaling method for the constellation, specified as Min.
distance between symbols
, Average
Power
, or Peak Power
. For
more information, see Constellation Size and Scaling.
Minimum distance — Distance between two nearest constellation points
2
(default) | positive scalar
Distance between the two nearest constellation points, specified as a positive scalar.
Dependencies
This parameter appears when you set Normalization method to Min. distance
between symbols
.
Average power, referenced to 1 ohm (watts) — Average power
1
(default) | positive scalar
Average power of the symbols in the constellation in watts, specified as a positive scalar. Power values assume a nominal impedance of 1 ohm.
Dependencies
This parameter appears when you set Normalization method to Average
Power
.
Peak power, referenced to 1 ohm (watts) — Maximum power
1
(default) | positive scalar
Maximum power of the symbols in the constellation in watts, specified as a positive scalar. Power values assume a nominal impedance of 1 ohm.
Dependencies
This parameter appears when you set Normalization method to Peak
Power
.
View Constellation — Option to plot reference constellation
button
Click View Constellation on the block mask to visualize a signal constellation for the specified block parameters. Before viewing a constellation, apply the parameter settings. For more information, see View Constellation of Modulator Block.
Data Types
Output data type — Output data type
double
(default) | single
| fixdt(1,16)
| fixdt(1,16,0)
| Inherit: Inherit via back
propagation
| <data type expression>
Output data type, specified as double
,
single
,
fixdt(1,16)
,
fixdt(1,16,0)
, Inherit:
Inherit via back propagation
, or <data
type expression>
.
fixdt(1,16)
,fixdt(1,16,0)
, or<data type expression>
enables parameters in which you can further specify details.Inherit: Inherit via back propagation
sets the output data type and scaling to match the following block.
For information about specifying data types, see Data Type Assistant.
Block Characteristics
More About
Data Type Assistant
The Data Type Assistant helps you set data attributes. To use the Data Type Assistant, click . For more information, see Specify Data Types Using Data Type Assistant (Simulink).
Algorithms
Constellation Size and Scaling
The block outputs the real-valued constellation symbols as a complex signal with the imaginary part equal to zero. Constellation symbols map an integer m in the range [0, (M – 1)] to the complex value 2m – M + 1. M is the modulation order as specified by the M-ary number parameter.
The block scales the default signal constellation based on the setting of the Normalization method parameter. This table lists the possible scaling conditions.
Value of Normalization Method Parameter | Scaling Condition |
---|---|
Min. distance between
symbols | The nearest pair of points in the constellation is separated by the value of the Minimum distance parameter. |
Average Power | The average power of the symbols in the constellation is the value of the Average power, referenced to 1 ohm (watts) parameter. |
Peak Power | The maximum power of the symbols in the constellation is the value of the Peak power, referenced to 1 ohm (watts) parameter. |
The Plot M-PAM Constellation in Simulink example demonstrates the constellation scaling based to normalization method.
The Constellation ordering parameter specifies whether the block assigns signal constellation points using binary-coded or Gray-coded mapping. For details about Gray coding and symbol mapping, see Digital Baseband Modulation and View Constellation of Modulator Block.
Integer-Valued Signals and Binary-Valued Signals
This block accepts a scalar or column vector input signal.
When you set the Input type parameter to
Integer
, the block accepts integer values in the range [0
, (M-1
)]. M is the modulation order as specified by the
M-ary number block parameter.
When you set the Input type parameter to Bit
,
the block accepts binary-valued inputs that represent integers. The block collects
binary-valued signals into groups of K =
log2(M) bits, where K is the number of bits per symbol and
M is the modulation order. The input vector length must be an integer
multiple of K. In this configuration, the block accepts a group of
K bits and maps that group onto a symbol at the block output. The
block outputs one modulated symbol for each group of K bits.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.
Version History
Introduced before R2006a
See Also
Blocks
Functions
MATLAB Command
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.
Select a Web Site
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: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)