Note: This page has been translated by MathWorks. Please click here

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

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.

Output | Activation Parameter | Units | Measurement Interval |
---|---|---|---|

MER | None (output by default) | dB | `Current length` | `Entire history` | `Custom` | ```
Custom
with periodic reset
``` |

Minimum MER | Output minimum MER | dB | `Current length` | `Entire history` | `Custom` | ```
Custom
with periodic reset
``` |

Percentile MER | Output X-percentile EVM | dB | `Entire history` |

Number of symbols | Output X-percentile EVM and Output
the number of symbols processed | None | `Entire history` |

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.

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

$$MER=10*\text{}{\mathrm{log}}_{10}\left(\frac{{\displaystyle \sum _{n=1}^{N}\left({I}_{k}^{2}+{Q}_{k}^{2}\right)}}{{\displaystyle \sum _{n=1}^{N}\left({e}_{k}\right)}}\right)\text{\hspace{0.17em}}\text{dB}\text{.}$$

The MER for the *k*th symbol is

$$ME{R}_{k}=10*\text{}{\mathrm{log}}_{10}\left(\frac{\frac{1}{N}{\displaystyle \sum _{n=1}^{N}\left({I}_{k}^{2}+{Q}_{k}^{2}\right)}}{{e}_{k}}\right)\text{\hspace{0.17em}}\text{dB}\text{.}$$

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

$$ME{R}_{\mathrm{min}}=\underset{k\in [1,\mathrm{...},N]}{\mathrm{min}}\left\{ME{R}_{k}\right\}\text{\hspace{0.17em}},$$

where:

*e*= $${({I}_{k}-\stackrel{~}{{I}_{k}})}^{2}+{({Q}_{k}-{\stackrel{~}{Q}}_{k})}^{2}$$_{k}*I*= In-phase measurement of the_{k}*k*th symbol in the burst*Q*= Quadrature phase measurement of the_{k}*k*th symbol in the burst*I*and_{k}*Q*represent ideal (reference) values. $${\stackrel{~}{I}}_{k}$$ and $${\stackrel{~}{Q}}_{k}$$ represent measured (received) symbols._{k}

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

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

Was this topic helpful?