
The codeword starts when you assert the in_valid signal and the in_startofpacket signal.The decoder
accepts the data at in_data as valid data. The codeword ends when you assert the in_endofpacket signal.
For a 1-channel codeword, assert the in_startofpacket and in_endofpacket signals for one clock cycle.
When the decoder deasserts the in_ready signal, the decoder cannot process any more data until it
asserts the in_ready signal again.
At the output, the operation is identical. When the decoder asserts the out_valid signal and the
out_startofpacket signal, the decoder provides valid data on out_data. The decoder asserts the
out_startofpacket signal and the out_endofpacket signal to indicate the start and end of a codeword.
The decoder automatically detects and corrects errors in a codeword and asserts the out_error signal
when it encounters a non-correctable codeword. The decoder outputs the full codeword including the
check symbols, which you should remove.
Variable Decoding
Under normal circumstances, the decoder allow variable decoding—you can change the number of
symbols per codeword (N) using sink_eop, but not the number of check symbols while decoding.
However, you cannot change the length of the codeword, if you turn on the erasure-supporting option. If
you turn on the variable option, you can vary the number of symbols per codeword (using the numn
signal) and the number of check symbols (using the numcheck signal), in real time, from their minimum
allowable values up to their selected values, even with the erasures-supporting option turned on.
Multiple Input Channels
The RS II IP core processes multiple input channels simultaneously.
The IP core receives codewords in a fixed pattern. Symbols coming in through the channels are
interleaved. The IP core samples the first symbol of channel one on the first rising clock edge, then the
first symbol of channel two on the second rising clock edge, etc. Both information and check symbols are
output in the same sequence.
Figure 3-5: Codeword for
C
Channels and
N
Symbols
The channel signal indicates the channel associated to the current symbol. The channel sequence is fixed.
startofpacket indicates the first symbol of a codeword per channel. For a C-channel codeword,
startofpacket must be high for C consecutive cycles. endofpacket indicates the last symbol of a
codeword per channel. For a C-channel codeword, endofpacket must be high for C consecutive cycles.
valid
startofpacket
endofpacket
channel
data
Codeword 1
Codeword 0
1
0
1
0
ch 1. N-1
ch 0. N-1
1
0
10 1
ch 1.1ch 0.1
ch 1.0
0
ch 0.0
...
...
...
...
...
...
ch 1. N-1
ch 1. N-1 ch 0. N-1 ch 1. N-1
Note:
The startofpacket and endofpacket governs the number of symbols per codeword, N. The IP
core does not verify if N exceeds the maximum symbols per codeword. The IP core also does not
verify the channel or data pattern. You must ensure that the codeword sent to the IP core has a
valid N and a valid pattern.
3-4
Multiple Input Channels
UG-01090
2015.05.01
Altera Corporation
Reed-Solomon II IP Core Functional Description
Send Feedback
Comentarios a estos manuales