Accelerating the pace of engineering and science

# 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 $x$th 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

 clone Create MER measurement object with same property values getNumInputs Number of expected inputs to step method getNumOutputs Number of outputs from step method isLocked Locked status for input attributes and nontunable properties release Allow property value and input characteristics changes reset Reset states of MER measurement object step Measure 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.