# AWGN Channel

Add white Gaussian noise to input signal

Channels

## Description

The AWGN Channel block adds white Gaussian noise to a real or complex input signal. When the input signal is real, this block adds real Gaussian noise and produces a real output signal. When the input signal is complex, this block adds complex Gaussian noise and produces a complex output signal. This block inherits its sample time from the input signal.

This block accepts a scalar-valued, vector, or matrix input signal with a data type of type `single` or `double`. The output signal inherits port data types from the signals that drive the block.

 Note:   All values of power assume a nominal impedance of 1 ohm.

### Signal Processing and Input Dimensions

This block can process multichannel signals. When you set the Input Processing parameter to ```Columns as channels (frame based)```, the block accepts an M-by-N input signal. M specifies the number of samples per channel and N specifies the number of channels. Both M and N can be equal to `1`. The block adds frames of length-M Gaussian noise to each of the N channels, using a distinct random distribution per channel.

### Specifying the Variance Directly or Indirectly

You can specify the variance of the noise generated by the AWGN Channel block using one of these modes:

• `Signal to noise ratio (Eb/No)`, where the block calculates the variance from these quantities that you specify in the dialog box:

• Eb/No, the ratio of bit energy to noise power spectral density

• Number of bits per symbol

• Input signal power, the actual power of the symbols at the input of the block

• Symbol period

• `Signal to noise ratio (Es/No)`, where the block calculates the variance from these quantities that you specify in the dialog box:

• Es/No, the ratio of signal energy to noise power spectral density

• Input signal power, the actual power of the symbols at the input of the block

• Symbol period

• `Signal to noise ratio (SNR)`, where the block calculates the variance from these quantities that you specify in the dialog box:

• SNR, the ratio of signal power to noise power

• Input signal power, the actual power of the samples at the input of the block

• `Variance from mask`, where you specify the variance in the dialog box. The value must be positive.

• `Variance from port`, where you provide the variance as an input to the block. The variance input must be positive, and its sampling rate must equal that of the input signal.

Changing the symbol period in the `AWGN Channel` block affects the variance of the noise added per sample, which also causes a change in the final error rate.

`$NoiseVariance=\frac{SignalPower×SymbolPeriod}{SampleTime×{10}^{\frac{Es/No}{10}}}$`

A good rule of thumb for selecting the Symbol period value is to set it to be what you model as the symbol period in the model. The value would depend upon what constitutes a symbol and what the oversampling applied to it is (e.g., a symbol could have 3 bits and be oversampled by 4).

In both `Variance from mask` mode and ```Variance from port``` mode, these rules describe how the block interprets the variance:

• If the variance is a scalar, then all signal channels are uncorrelated but share the same variance.

• If the variance is a vector whose length is the number of channels in the input signal, then each element represents the variance of the corresponding signal channel.

 Note   If you apply complex input signals to the AWGN Channel block, then it adds complex zero-mean Gaussian noise with the calculated or specified variance. The variance of each of the quadrature components of the complex noise is half of the calculated or specified value.

### Relationship Among Eb/No, Es/No, and SNR Modes

For uncoded complex input signals, the AWGN Channel block relates Eb/N0, Es/N0, and SNR according to the following equations:

Es/N0 = (Tsym/Tsamp) · SNR

Es/N0 = Eb/N0 + 10log10(k)  in dB

where

• Es = Signal energy (Joules)

• Eb = Bit energy (Joules)

• N0 = Noise power spectral density (Watts/Hz)

• Tsym is the Symbol period parameter of the block in `Es/No` mode

• k is the number of information bits per input symbol

• Tsamp is the inherited sample time of the block, in seconds

For real signal inputs, the AWGN Channel block relates Es/N0 and SNR according to the following equation:

Es/N0 = 0.5 (Tsym/Tsamp) · SNR

Note that the equation for the real case differs from the corresponding equation for the complex case by a factor of 2. This is so because the block uses a noise power spectral density of N0/2 Watts/Hz for real input signals, versus N0 Watts/Hz for complex signals.

For more information about these quantities, see AWGN Channel Noise Level in the Communications System Toolbox™ documentation.

### Tunable Block Parameters

The following table indicates which parameters are tunable, for different block modes.

ModeTunable Parameters
`Eb/No`Eb/No, Input signal power
`Es/No`Es/No, Input signal power
`SNR`SNR, Input signal power
`Variance from mask`Variance

You can tune parameters in normal mode, Accelerator mode and the Rapid Accelerator mode.

If you use the Simulink® Coder™ rapid simulation (RSIM) target to build an RSIM executable, then you can tune the parameters listed in the previous table without recompiling the model. This is useful for Monte Carlo simulations in which you run the simulation multiple times (perhaps on multiple computers) with different amounts of noise.

## Dialog Box

Input processing

Specify how the block processes the input signal. You can set this parameter to one of the following options:

• `Columns as channels (frame based)` — When you select this option, the block treats each column of the input as a separate channel.

 Note:   The ```Inherited (this choice will be removed - see release notes)``` option will be removed in a future release. See Frame-Based Processing in the Communications System Toolbox Release Notes for more information.
Initial seed

The seed for the Gaussian noise generator.

This block uses the DSP System Toolbox™ Random Source block to generate noise. Random numbers are generated using the Ziggurat method. The Initial seed parameter in this block initializes the noise generator. Initial seed can be either a scalar or a vector with a length that matches the number of channels in the input signal. Each time you run a simulation, this block outputs the same signal. The first time you run the simulation, the block randomly selects an initial seed. The block reuses the same initial seeds every time you rerun the simulation.

This property is a tunable and allows you to specify different seed values for each DLL build.

Mode

The mode by which you specify the noise variance: ```Signal to noise ratio (Eb/No)```, ```Signal to noise ratio (Es/No)```, ```Signal to noise ratio (SNR)```, ```Variance from mask```, or `Variance from port`.

Eb/No (dB)

The ratio of information (i.e., without channel coding) bit energy per symbol to noise power spectral density, in decibels. This field appears only if Mode is set to `Eb/No`.

Es/No (dB)

The ratio of information (i.e., without channel coding) symbol energy per symbol to noise power spectral density, in decibels. This field appears only if Mode is set to `Es/No`.

SNR (dB)

The ratio of signal power to noise power, in decibels. This field appears only if Mode is set to `SNR`.

Number of bits per symbol

The number of bits in each input symbol. This field appears only if Mode is set to `Eb/No`.

Input signal power, referenced to 1 ohm (watts)

The mean square power of the input symbols (if Mode is `Eb/No` or `Es/No`) or input samples (if Mode is `SNR`), in watts. This field appears only if Mode is set to `Eb/No`, `Es/No`, or `SNR`.

Symbol period (s)

The duration of an information channel (i.e., without channel coding) symbol, in seconds. This field appears only if Mode is set to `Eb/No` or `Es/No`.

Variance

The variance of the white Gaussian noise. This field appears only if Mode is set to ```Variance from mask```.

## Examples

Many documentation examples use this block, including:

Random Source (DSP System Toolbox documentation)

## Reference

[1] Proakis, John G., Digital Communications, 4th Ed., McGraw-Hill, 2001.