comm.MER System object

Package: comm

Measure modulation error ratio

Description

The Modulation Error Ratio (MER) MER object measures the signal-to-noise ratio (SNR) in digital modulation applications. You can use these types of measurements to determine system performance in communications applications. For example, determining whether a DVB-T system conforms to applicable radio transmission standards requires accurate MER measurements. The block measures all outputs in decibels.

To measure modulation error ratio:

  1. Define and set up your MER object. See Construction.

  2. Call step to measure the modulation error ratio according to the properties of comm.MER. The behavior of step is specific to each object in the toolbox.

Construction

H = comm.MER creates a modulation error ratio (MER) System object™, H. This object measures the signal-to-noise ratio (SNR) in digital modulation applications.

H = comm.MER(Name,Value) creates an MER object, H, with each specified property set to the specified value. You can specify additional name-value pair arguments in any order as (Name1,Value1,...,NameN,ValueN).

Properties

MinimumMEROutputPort

Enable minimum MER measurement output

When you set this property to true, the step method outputs minimum MER measurements. The default is false. The step method outputs the minimum MER output as the minimum MER value measured in the current input frame.

XPercentileMEROutputPort

Enable X-percentile MER measurement output

When you set this property to true, the step method outputs X-percentile MER measurements. The default is false. The X-percentile MER measurements persist. These measurements are based on all the input frames since the last reset.

XPercentileValue

X-percentile value

Specify the X-percentile value (as a percentage) that the object uses to calculate the xth percentile of the MER measurements. The default is 95. Set this property to a real scalar value between 0 and 100, inclusive. This property can have a data type of double, single, or integer. This property applies when you set the XPercentileMEROutputPort property to true. The x-th percentile is the MER value above which x% of all the computed MER values lie.

SymbolCountOutputPort

Enable symbol count output

When you set this property to true, the step method outputs the number of accumulated symbols that have been used to calculate the x-Percentile MER measurements since the last reset. The default is false. This property applies when you set the XPercentileMEROutputPort property to true.

Methods

cloneCreate MER measurement object with same property 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 MER measurement object
stepMeasure modulation error ratio

Examples

expand all

Measure MER of a noisy 16-QAM modulated signal

% Create a rectangular QAM modulator and an AWGN Channel
    hMod = comm.RectangularQAMModulator(16);
    hAWGN = comm.AWGNChannel('NoiseMethod',...
                 'Signal to noise ratio (SNR)',...
                 'SNR', 20, 'SignalPower', 10);
 % Create an MER object, output minimum and 90-percentile MER, and symbol
 % count
    hMER = comm.MER('MinimumMEROutputPort', true, ...
                 'XPercentileMEROutputPort', true,'XPercentileValue', 90,...
                 'SymbolCountOutputPort',true);
 % Generate modulated symbols and add noise
    refsym = step(hMod, randi([0 15], 1000, 1));
    rxsym = step(hAWGN, refsym);
 % Calculate measurements
    [MERdB,MinMER,PercentileMER,NumSym] = step(hMER,refsym,rxsym)
MERdB =

   20.1071


MinMER =

   11.4248


PercentileMER =

   16.5850


NumSym =

        1000

Algorithms

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

Was this topic helpful?