OpenCores
URL https://opencores.org/ocsvn/rs_decoder_31_19_6/rs_decoder_31_19_6/trunk

Subversion Repositories rs_decoder_31_19_6

[/] [rs_decoder_31_19_6/] [trunk/] [README.TXT] - Blame information for rev 4

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 rud_dp
++++++++++++++++++++++++++
2
RS Decoder (31,19,6) v1.1
3
++++++++++++++++++++++++++
4
 
5
This project consists of 8 verilog files including a testbench file.
6
The files are:
7
- RSDecoder.v : contains description of top module of the decoder. It combines
8
                5 modules of typical RS Decoder building blocks.
9
- scblock.v   : contains description of the SC (Syndrome Computation) block and its
10
                submodules.
11
- kesblock.v  : KES (Key Equation Solver) block and its submodules.
12
- cseeblock.v : CSEE (Chien Search and Error Evaluator) block  and parallel
13
                invers multiplier module. CSEE is the only block in the decoder
14
                that use invers multiplier to compute error magnitude using Fourney
15
                Formula.
16
- controller.v  : describes controller module. It consists of 2 FSMs and 2 counters.
17
- fifo_register.v : a FIFO register consists of 31 registers to store received word and
18
                    a register to synchronize outputted data with CSEE block.
19
- common_modules.v: this file contains basic modules that used by other higher modules.
20
                    It behaves like a library for the project.
21
- testbench.v : the testbench contains 3 different received word vectors. First
22
                received word contains no error symbol. Second word contains 6 error
23
                symbols and the last word contains 8 error symbols.
24
 
25
Limitations in this version:
26
Despite its high data rates, the decoder has some limitations that must be considered.
27
- It flags decoding failure at the end of outputted word. So, other block outside the
28
  decoder cannot differentiate between uncorrected word and corrected word until it
29
  receive decoding failure flag at the end of the word.
30
- Decoding failure is detected when degree of error location polynomial and
31
  number of its roots is not equal. It means the error location polynomial doesn't
32
  have roots in the underlying GF(2^5). To determine the roots, decoder must activate
33
  CSEE block first. Hence, decoding failure is detected after all elements in
34
  GF(2^5) have been evaluated.
35
- Uncorrectable word still have to be summed with wrong error values. Because decoding
36
  failure is detected at the end of word, there is no other mechanism to solve
37
  the problem, unless decoder start to output the word after all GF(2^5) elements
38
  has been evaluated.
39
Hopefully, in next version, limitations above can be solved.
40
 
41
 
42
Rudy Dwi Putra
43
rudy.dp@gmail.com

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.