Decode data using a Reed-Solomon decoder
Block sublibrary of Error Correction and Detection
Reed-Solomon encoding follows the same standards as any other cyclic redundancy code. The Integer-Output RS Decoder HDL Optimized block can be used to model many communication system Forward Error Correcting (FEC) codes.
The Integer-Output RS Decoder HDL Optimized block has four input ports and six output ports (5 required, 1 optional).
|Input||Message data, one symbol at a time.||Integer or |
|Input||Indicates the start of a frame of data.|
|Input||Indicates the end of a frame of data.|
|Input||Indicates that input data is valid.|
|Output||Message data with the checksum appended. The data width is the same as the input data port.||Same as |
|Output||Indicates the start of a frame of data.|
|Output||Indicates the end of a frame of data, including checksum.|
|Output||Indicates that output data is valid.|
|Output||Indicates the corruption of the received data when error is high.|
|Output (optional)||Count of detected errors.|
Each input frame must contain more than
symbols, and fewer than or equal to
N symbols. A
shortened code is inferred when the number of valid data samples between
endIn is less than
N. A shortened code still requires
N cycles to perform the Chien search. If the input is
N symbols, leave a guard interval of at least
N-size inactive cycles before starting the next
The decoder can operate on up to 4 messages at a time. If the block receives the start of a fifth message before completely decoding the first message, the block drops data samples from the first message. To avoid this issue, increase the number of inactive cycles between input messages.
The generator polynomial is not specified explicitly. However, it is
defined by the code word length, the message length, and the B value for the
starting exponent of the roots. To get the value of B from a generator
polynomial, use the
The length of the code word in symbols,
N, must be
M is the input word length.
be between 3 and 16 bits.
The message length in symbols,
K. The number of parity
N-K, must be a positive even integer, greater
than or equal to the input word length,
Property to enable the
Primitive polynomial parameter.
Binary row vector representing the primitive polynomial in descending order of powers. When you provide a primitive polynomial, the number of input bits must be an integer multiple of K times the order of the primitive polynomial instead.
This parameter applies when only when
is selected for Primitive polynomial.
Property to enable the B
value parameter. When you select
Auto, the block uses
The starting exponent of the roots.
This field is available only when you select
Property for Source of B, the
starting power for roots of the primitive polynomial. The
default is 1.
Check this box to enable the
numErrors output port.
This port outputs the detected symbol error count.
Not recommended for production code.
HDL Coder™ provides additional configuration options that affect HDL implementation and synthesized logic. For more information on implementations, properties, and restrictions for HDL code generation, see Integer-Output RS Decoder HDL Optimized in the HDL Coder documentation.