RS Code Statistics for different values of `$mm` `$tt`
Zero latency, low gate count, low power, asynchronous Reed Solomon Code based Error correction FEC:
The whole operation of encoding and decoding is asynchronous and is pure combinatorial gates without use of any synchronous logic, making it zero latency RTL.
Symbol size is ‘m’ bits for all Galois Field operations.
The main features are:
- 1. Asynchronous operation
- 2. No clocks required.
- 3. No storage like memories SRAMS/ROMS/FilipFlops used
- 4. No iterative Feedback in the pipeline
- 5. All operation is performed in 0 clock cycles.
- 6. RTL code is generated with parameters of
- a) “m” the degree of primitive polynomial
- b) “t_max” maximum value of error symbols that can be corrected.
- c) number of symbols by which the code is shortened.
- d) The number of error symbols (“t”) is programmable upto
“t_max” .
- 7. Separate encoders are for every “t” .
- 8. Decoder shared for various values of “t” upto “t_max”
- 9. Lint clean code, verified for various values of “m”, “t_max”, “t” and shortened code.
- 10. Size of code differs for various values of “m”, “t_max” and number of symbols by which the code is shortened.
Every symbol and primitive polynomial used of degree ‘m’ and ‘n’ is ((1<<‘m’)-1) .Shortened ‘n_short’ is less than ‘n’ where symbols (‘n’ – ‘n_short’) are 0 . If the code has ‘t’ error correcting capability then ‘k’ = ‘n’ – 2*’t’ = no. of message symbols.
RTL is completely configurable for ‘m’ , ‘n_short’ or ‘t’. Typically, but not necessarily ‘m’ lies between 5 to 15
ECC, number of parity symbols is 2*’t’.
Errors_correctable are upto ‘tt’, if more than ‘tt’ errors then indicated as uncorrectable.
The Error correcting Code consists of:
- Encoder:
- A. It has programmable input data bus width. The whole encoding can be completed in 0 cycle
- Decoder:
- A. Syndrome Calculator: It can generate all syndromes in 0 clocks, or serially in as large as ‘n_short’ clocks
- B. BerlekampMasy Circuit: it generates error locator polynomial for Chien search engine
- C. Parallel Chien Search Engine: It finds error locations in as little as 0 clock or as large as ‘n_short’ clocks
- D. Forney Circuitry: It can give the symbol to correct the data at error location indicated by Chien Engine.
Applications:
- SSD Controller
- Space Communications
- QR Code
- Optical Communication
- High Speed Communications
- SRAMS in chips ASICS can have memory repair using this circuit
- memory ECC in BIST
- Hamming Code will protect against 1 bit errors and detect only upto 2 bit errors
- RS Code can correct upto `$tt` symbol errors where `$tt` is decided when code is generated
- RS Code can detect if more than `$tt` symbol errors have occurred.
- 8.Clause 91 8023bj-2014 [8023bs-2017 – 400g] RS(528,514) T=7 25Gb/s KR4 RS(544,530) T=15 100G KP4
- 9. 802.3-2015 section 5 RS(144,128) RS(240,224) RS(255,239,8) RS(255,223) bb=32
- 10. 802.3bs RS(576, 514, t=31, m=10)
- 11. PCI Express Gen 6