Modulate using Gaussian minimum shift keying method
CPM, in Digital Baseband sublibrary of Modulation
The GMSK Modulator Baseband block modulates using the Gaussian minimum shift keying method. The output is a baseband representation of the modulated signal.
The BT product parameter represents bandwidth multiplied by time. This parameter is a nonnegative scalar. It is used to reduce the bandwidth at the expense of increased intersymbol interference. The Pulse length parameter measures the length of the Gaussian pulse shape, in symbol intervals. For an explanation of the pulse shape, see the work by Anderson, Aulin, and Sundberg among the references listed below. The frequency pulse shape is defined by the following equations.
$$\begin{array}{l}g(t)=\frac{1}{2T}\left\{Q\left[2\pi {B}_{b}\frac{t\frac{T}{2}}{\sqrt{\mathrm{ln}(2)}}\right]Q\left[2\pi {B}_{b}\frac{t+\frac{T}{2}}{\sqrt{\mathrm{ln}(2)}}\right]\right\}\\ Q(t)={\displaystyle \underset{t}{\overset{\infty}{\int}}\frac{1}{\sqrt{2\pi}}}{e}^{{\tau}^{2}/2}d\tau \end{array}$$
For this block, an input symbol of 1 causes a phase shift of π/2 radians.
The group delay is the number of samples between the start of a filter's response and its peak. The group delay that the block introduces is Pulse length/2 * Samples per symbol (using a reference of output sample periods). For GMSK, Pulse length denotes the truncated frequency pulse length in symbols. The net delay effect at the receiver (demodulator) is due to the Traceback depth parameter, which in most cases would be larger than the group delay.
When you set the Input type parameter to
Integer
, then the block accepts values of 1 and 1.
When you set the Input type parameter to
Bit
, then the block accepts values of 0 and 1.
This block accepts a scalarvalued or column vector input signal. For a column vector input signal, the width of the output equals the product of the number of symbols and the value for the Samples per symbol parameter.
In singlerate processing mode, the input and output signals have the same port sample time. The block implicitly implements the rate change by making a size change at the output when compared to the input. In this mode, the input to the block can be multiple symbols.
When you set Input type to
Integer
, the input can be a column vector,
the length of which is the number of input symbols.
When you set Input type to
Bit
, the input width must be an integer
multiple of 2.
The output width equals the product of the number of input symbols and the Samples per symbol parameter value.
In multirate processing mode, the input and output signals have different port sample times. In this mode, the input to the block must be one symbol.
When you set Input type to
Integer
, the input must be a scalar.
When you set Input type to
Bit
, the input width must equal the number of
bits per symbol.
The output sample time equals the symbol period divided by the Samples per symbol parameter value.
Indicates whether the input consists of bipolar or binary values.
The product of bandwidth and time.
The block uses this parameter to reduce bandwidth at the expense of increased intersymbol interference. Enter a nonnegative scalar value for this parameter.
The length of the frequency pulse shape.
A scalar or vector value that specifies the data symbols the block uses before the start of the simulation, in reverse chronological order. If it is a vector, then its length must be one less than the Pulse length parameter.
The initial phase of the output waveform, measured in radians.
The number of output samples that the block produces for each integer or bit in the input, which must be a positive integer. For all nonbinary schemes, as defined by the pulse shapes, this value must be greater than 1.
For more information, see Upsample Signals and Rate Changes.
Select the rate processing option for the block.
Enforce singlerate processing
—
When you select this option, the input and output signals have the
same port sample time. The block implements the rate change by making
a size change at the output when compared to the input. The output
width equals the product of the number of symbols and the Samples
per symbol parameter value.
Allow multirate processing
—
When you select this option, the input and output signals have different
port sample times. The output sample time equals the symbol period
divided by the Samples per symbol parameter value.
The output type of the block can be specified as a
single
or double
. By default, the
block sets this to double
.
Port  Supported Data Types 

Input 

Output 

[1] Anderson, John B., Tor Aulin, and CarlErik Sundberg. Digital Phase Modulation. New York: Plenum Press, 1986.