Generates a Reed-Solomon (RS) encoded integer symbol stream in normal format.

RS codes are specialized Bose-Chaudhari-Hocquenghem (BCH) codes in which the code elements are drawn from the Galois field, GF(2*m*). RS codes are extremely powerful at burst error correction. The operations involved in Reed-Solomon encoding and decoding are performed in the GF(2*m*). The RS encoder operates on code words that are symbols or groups of bits. The parameters **code word length (n), symbols** and **data word length (k), symbols** are specified in terms of symbols. Each symbol represents a group of Log_{2}(*n*+1) bits.

The normal RS (*n,k,t*) code consists of values of *n* of the form *n*=2^{ m }-1, where valid values of *m* are 2 to 16, inclusive. For example, specify *n* = 255, *k* = 233 to produce a RS (255,233,11) code. This code has an error-correcting capacity of 11 RS symbols.

## modulation session

The modulation session for configuring selected properties of the Modulation nodes. Use this parameter to configure the advanced properties in the MT RS Symbol Encoder nodes. If MT RS Symbol Encoder is called with an uninitialized modulation session, the node returns an error.

**Default: **0

## input symbols

The array of integer symbols to be encoded using the RS encoding scheme. Use MT Generate Bits followed by MT Pack Bits to generate the integer symbols required for this parameter.

**Note**
The RS encoder is a block encoder, which means that it operates on a block of *k* integers. To ensure that the **output symbols** stream corresponds to the entire **input symbols** array, set the length *L* of **input symbols** to be an integer multiple of *k* symbols. If the length *L* is not a multiple of *k* symbols, the last *L* modulo *k* symbols are buffered inside the encoder.
These symbols are added to the incoming **input symbols** stream at the beginning of the next iteration if **reset?** is set to FALSE.

## code word length (n), symbols

The length of the Reed-Solomon (RS) code word. Each RS symbol represents log_{ 2 }(*n*+1) bits.

**Default: **7

## data word length (k), symbols

The length of the Reed-Solomon (RS) data word. Each RS symbol represents log_{ 2 }(*n*+1) bits.

**Default: **3

## error in

Error conditions that occur before this node runs.
The node responds to this input according to standard error behavior.

**Default: **no error

## reset?

A Boolean that determines whether the internal state of the encoder is cleared.

TRUE |
Clears any buffered bits from previous iterations.
Also initializes the Galois field structure corresponding to the Reed-Solomon *n*, *k* values. |

FALSE |
Continues encoding from the previous iteration. Any buffered bits from the previous iteration are added to the beginning of the **input bit stream** prior to encoding. |

**Default: **TRUE

## output symbols

The encoded integer symbol stream. Wire this parameter to the MT RS Symbol Decoder nodes to recover the input data stream.

**Installed By: **LabVIEW Communications System Design Suite (introduced in 1.0)

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported