Communications Blockset    
Binary-Input RS Encoder

Create a Reed-Solomon code from binary vector data

Library

Block sublibrary of Channel Coding

Description


The Binary-Input RS Encoder block creates a Reed-Solomon code with message length K and codeword length N. You specify both N and K directly in the block mask. N must have the form 2M-1, where M is an integer greater than or equal to 3. The code is more efficient if N-K is an even integer.

The input and output are binary-valued signals that represent messages and codewords, respectively. The input must contain exactly M*K elements. If it is frame-based, then it must be a column vector. The output is a vector of length M*N.

The M*K input bits represent K integers between 0 and 2M-1, where more significant bits are to the right. Similarly, the M*N output bits represent N integers between 0 and 2M-1. These integers in turn represent elements of the finite field GF(2M).

An (N,K) Reed-Solomon code can correct up to floor((N-K)/2) symbol errors (not bit errors) in each codeword.

Examples

Suppose M = 3, N = 23-1 = 7, and K = 5. Then a message is a binary vector of length 15 that represents 5 three-bit integers. A corresponding codeword is a binary vector of length 21 that represents 7 three-bit integers. The figure below shows the codeword that would result from a particular message word. The integer format equivalents illustrate that the highest-order bit is at the right.

Dialog Box

Codeword length N
The codeword length. The output has vector length M*N.
Message length K
The message length. The input has vector length M*K.

Pair Block

Binary-Output RS Decoder

See Also

Integer-Input RS Encoder


 Binary Cyclic Encoder Binary Linear Decoder