Documentation

comm.CPMCarrierPhaseSynchronizer System object

Package: comm

Recover carrier phase of baseband CPM signal

Description

The CPMCarrierPhaseSynchronizer object recovers the carrier phase of the input signal using the 2P-Power method. This feedforward method is clock aided, but not data aided. The method is suitable for systems that use certain types of baseband modulation. These types include: continuous phase modulation (CPM), minimum shift keying (MSK), continuous phase frequency shift keying (CPFSK), and Gaussian minimum shift keying (GMSK).

To recover the carrier phase of the input signal:

  1. Define and set up your CPM carrier phase synchronizer object. See Construction.

  2. Call step to recover the carrier phase of the input signal using the 2P-Power method according to the properties of comm.CPMCarrierPhaseSynchronizer. The behavior of step is specific to each object in the toolbox.

Construction

H = comm.CPMCarrierPhaseSynchronizer creates a CPM carrier phase synchronizer System object™, H. This object recovers the carrier phase of a baseband continuous phase modulation (CPM), minimum shift keying (MSK), continuous phase frequency shift keying (CPFSK), or Gaussian minimum shift keying (GMSK) modulated signal using the 2P-power method.

H = comm.CPMCarrierPhaseSynchronizer(Name,Value) creates a CPM carrier phase synchronizer object, H This object has each specified property set to the specified value. You can specify additional name-value pair arguments in any order as (Name1,Value1,...,NameN,ValueN).

H = comm.CPMCarrierPhaseSynchronizer(HALFPOW,Name,Value) creates a CPM carrier phase synchronizer object, H. This object has the P property set to HALFPOW, and the other specified properties set to the specified values.

Properties

P

Denominator of CPM modulation index

Specify the denominator of the CPM modulation index of the input signal as a real positive scalar integer value of data type single or double. The default is 2. This property is tunable.

ObservationInterval

Number of symbols where carrier phase assumed constant

Specify the observation interval as a real positive scalar integer value of data type single or double. The default is 100.

Methods

cloneCreate CPM carrier phase synchronizer object with same values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs from step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
resetReset states of the CPM carrier phase synchronizer object
stepRecover carrier phase of baseband CPM signal

Examples

Recover carrier phase of a CPM signal using 2P-power method.

M = 16;
P = 2;
phOffset = 10 *pi/180;  % in radians
numSamples = 100;
% Create CPM modulator System object
  hMod = comm.CPMModulator(M, 'InitialPhaseOffset',phOffset, ...
    'BitInput',true, 'ModulationIndex',1/P, 'SamplesPerSymbol',1);
% Create CPM carrier phase synchronizer System object
  hSync = comm.CPMCarrierPhaseSynchronizer(P,...
    'ObservationInterval',numSamples);
% Generate random binary data
    data = randi([0 1],numSamples*log2(M),1);
% Modulate random data and add carrier phase
    modData = step(hMod, data);
% Recover the carrier phase
    [recSig phEst] = step(hSync, modData);
   fprintf('The carrier phase is estimated to be %g degrees.\n', phEst);

Algorithms

This object implements the algorithm, inputs, and outputs described on the CPM Phase Recovery block reference page. The object properties correspond to the block parameters.

Was this topic helpful?