This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

MER Measurement

Measure signal-to-noise ratio (SNR) in digital modulation applications


Utility Blocks


The MER Measurement block outputs the modulation error ratio (MER). MER is a measure of the signal-to-noise ratio (SNR) in digital modulation applications. The block measures all outputs in dB.

The MER Measurement block accepts a received signal at input port Rcv. It may use an ideal input signal at reference port Ref or, optionally, a reference constellation. The MER block then outputs a measure of the modulation accuracy by comparing these inputs. The modulation error ratio is the ratio of the average reference signal power to the mean square error. This ratio corresponds to the SNR of the AWGN channel.

The block output always outputs MER in dB, with an option to output minimum MER and X-percentile MER values. The minimum MER represents the best-case MER value per burst. For the X-percentile option, you can select to output the number of symbols processed in the percentile computations.

The table shows the output type, the parameter that selects the output type, the computation units, and the corresponding measurement interval.

OutputActivation ParameterUnitsMeasurement Interval
MERNone (output by default)dBCurrent length | Entire history | Custom | Custom with periodic reset
Minimum MEROutput minimum MERdBCurrent length | Entire history | Custom | Custom with periodic reset
Percentile MEROutput X-percentile EVMdBEntire history
Number of symbolsOutput X-percentile EVM and Output the number of symbols processed NoneEntire history

Data Type

The block accepts double, single, and fixed-point data types. The output of the block is always double.



Reference signal

Specifies the reference signal source as either Input port or Estimated from reference constellation.

Reference constellation

Specifies the reference constellation points as a vector. This parameter is available only when Reference signal is Estimated from reference constellation. The default is constellation(comm.QPSKModulator).

Measurement interval

Specify the measurement interval as: Input length, Entire history, Custom, or Custom with periodic reset. This parameter affects the RMS and minimum MER outputs only.

  • To calculate MER using only the current samples, set this parameter to 'Input length'.

  • To calculate MER for all samples, set this parameter to 'Entire history'.

  • To calculate MER over an interval you specify and to use a sliding window, set this parameter to 'Custom'.

  • To calculate MER over an interval you specify and to reset the object each time the measurement interval is filled, set this parameter to 'Custom with periodic reset'.

Custom measurement interval

Specify the custom measurement interval in samples as a real positive integer. This is the interval over which the MER is calculated. This parameter is available when Measurement interval is Custom or Custom with periodic reset. The default is 100.

Averaging dimensions

Specify the dimensions over which to average the MER measurements as a scalar or row vector whose elements are positive integers. For example, to average across the rows, set this parameter to 2. The default is 1.

This block supports var-size inputs of the dimensions in which the averaging takes place. However, the input size for the nonaveraged dimensions must be constant. For example, if the input size is [1000 3 2] and Averaging dimensions is [1 3], then the output size is [1 3 1]. The number of elements in the second dimension is fixed at 3.

Output minimum MER

Outputs the minimum MER of an input vector or frame.

Output X-percentile MER

Enables an output X-percentile MER measurement. When you select this option, specify X-percentile value (%).

X-Percentile value (%)

This parameter is available only when you select Output X-percentile MER. The Xth percentile is the MER value above which X% of all the computed MER values lie. The parameter defaults to the 95th percentile. That is, 95% of all MER values are above this output.

Output the number of symbols processed

Outputs the number of symbols that the block uses to compute the Output X-percentile MER. This parameter is available only when you select Output X-percentile MER.

Simulate using

Select the simulation mode.

Code generation

On the first model run, simulate and generate code. If the structure of the block does not change, subsequent model runs do not regenerate the code.

If the simulation mode is Code generation, System objects corresponding to the blocks accept a maximum of nine inputs.

Interpreted execution

Simulate model without generating code. This option results in faster start times but can slow subsequent simulation performance.


expand all

Measure the MER of a noisy 8-PSK signal.

Load the model by typing doc_mer_example at the command line.

Run the model. The MER is shown in the Display block and is approximately equal to the SNR, which is set by using the Constant block. Experiment with different SNR values, and observe the effect on the estimated MER.


[1] DVB (ETSI) Standard ETR290. Digital Video Broadcasting (DVB): Measurement guidelines for DVB systems. May 1997.


MER is a measure of the SNR in a modulated signal calculated in dB. The MER over N symbols is


The MER for the kth symbol is


The minimum MER represents the minimum MER value in a burst, or



  • ek = ek=(IkI˜k)2+(QkQ˜k)2

  • Ik = In-phase measurement of the kth symbol in the burst

  • Qk = Quadrature phase measurement of the kth symbol in the burst

  • Ik and Qk represent ideal (reference) values. I˜k and Q˜k represent measured (received) symbols.

The block computes the X-percentile MER by creating a histogram of all the incoming MERk values. The output provides the MER value above which X% of the MER values fall.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Introduced in R2009b