Version:

Last Modified: February 7, 2018

Maps complex-valued QAM symbols to an **output bit stream** based on a user-specified symbol map.

Use this node in conjunction with
MT Matched Filter,
MT Align to Ideal Symbols,
MT Decimate Oversampled Waveform, and
MT Calculate BER to perform waveform analysis on the modulated waveform.
**Note**

The mapping of symbols to bits depends on the number of bits per symbol, which equals
${\mathrm{log}}_{2}\left(M\right)$ with *M* representing the size of the modulation scheme. For example, in a 256-QAM system, 500 QAM symbols are mapped to
$\left(500\right)\times {\mathrm{log}}_{2}\left(256\right)=4000\text{\hspace{0.17em}}\text{\hspace{0.17em}}message\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}bits$.

The incoming complex-valued symbols to be mapped to the **output bit stream** based on the **symbol map**.

An ordered array that maps each symbol value to its desired coordinates in the complex plane.

The number of QAM states in the array must be 2^{ N }, where *N* is the number of bits per symbol. The length of the vector for the symbols farthest from the origin must be 1. To specify a prebuilt map, unbundle the **symbol map** element from the **QAM system parameters** cluster generated by MT Generate QAM System Parameters (M) or MT Generate QAM System Parameters (map).

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an **error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Default: **No error

A bit stream with a one-to-one mapping to the input **symbols** based on the specified **symbol map**.

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

**error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported

Web Server: Not supported in VIs that run in a web application