This is high-speed Reed-Solomon encoder/decoder core, which is widely used in the error correction of various storage and communication systems.

Introduction

Four kinds of products are selectable to meet different demands.

Product NoErasureExternal RAM
Si2520NoNo
Si2520-EYesNo
Si2520-MNoYes
Si2520-EMYesYes

Features

・High-speed encoding/decoding

・Support shortened codes

・Number of bits per symbol (m) : 3 to 12 bits

・Number of symbols in a codeword (n) : 3 to 2m-1 symbols

・Number of information symbols (k) : 1 to 2m-3 symbols

・Number of correctable symbols (t) : 1 to 2m-1-1 symbols

・Primitive polynomial configurable

・Support erasure correction

・No external RAM option

・Available limitation of number of correctable symbols

・Support continuous encoding / decoding due to pipeline
(except the case of n<4t+2)

・Fully synchronous design using a single clock

・ASIC friendly design

Deliverables

・Verilog RTL source code

・FPGA netlist (Xilinx, Altera, Lattice, etc.)

・ASIC netlist (need ASIC cell library)

・CPU/DSP source code (C, Assembler)

Especially we've got high experience on TI's DSP.
Test bench and test patterns are also provided.

Gate Count / Performance

・TSMC 90nm
(Constraints : Clock skew 20%, Using wire load model)

#1: Si2520 (m=4, n=15, k=11, t=2)
#2: Si2520 (m=8, n=20, k=16, t=2)
#3: Si2520-M (m=8, n=255, k=239, t=8)
#4: Si2520-EM (m=8, n=204, k=188, t=8)

Interface

Encoder

Input

NameDescription
ICLKClock
IXRSTAsynchronous reset
IDATA[m-1:0]Information symbol
IDENInformation symbol enable

Output

NameDescription
ORDYReady to input information symbol
ODATA[m-1:0]Code symbol
ODENCode symbol enable

Decoder

Input

NameDescription
ICLKClock
IXRSTAsynchronous reset
IDATA[m-1:0]Code symbol
IDENCode symbol enable
IERSErasure position (*1)
ILMT[h-1:0]Correctable symbol limitation (*3)
IRAMRD[m-1:0]External RAM read data (*2)

*1 : Only for Si2520-E, Si2520-EM

*2 : Only for Si2520-M, Si2520-EM

*3 : Only when limitation of number of correctable symbols is used

Output

NameDescription
ORDYReady to input code symbol
ODATA[m-1:0]Decoded symbol
ODENDecoded symbol enable
OFAILDecoding fail flag
OERRNUM[h-1:0]Number of corrected symbols
OENDDecoding end flag
ORAMWA[a-1:0]External RAM write address (*2)
ORAMWEExternal RAM write enable (*2)
ORAMWD[m-1:0]External RAM write data (*2)
ORAMRA[a-1:0]External RAM read address (*2)
ORAMREExternal RAM read enable (*2)

Applications

  • Communications (support various standards with RS code)
  • Hard disk drive(HDD), Optical disc drive(ODD), Solid state drive(SSD)

For more information/customization on Reed-Solomon encoder/decoder, please contact us.

* The content might change without a previous notice due to the improvement.