Reed-Solomon Decoder

EE/Ma127a Final Project

Kai Chen, Liang Jiang, Xiaoyu Liu

Project Description

We implemented the decoder for a (31, 15) RS code over GF(32). The codewords consist of vectors (C0, C1, ... C30) where each Ci is in GF(32) and
         Sum{Ciaij} = 0, for i = 0 ... 30, j = 1 ... 16.
where a is a primitive root in GF(32) satisfying a5 = a2 + 1.

In the codeword, the first 15 characters are information bits and the last 16 characters are parity-check bits.

Given a garbled codeword, the decoder is capable of correcting up to x erasures and y errors, where x + 2y <= 16. And when x + 2y > 16, the decoder will output an appropriate error message.

The Decoder

To ease input, we will use A, B, ... Z, 1, 2, ... 6 in place of 0 ... 31. Erasures are represented by '*'.

To encode an information word, simply type in the 15 information bits as as the first 15 bits of the decoder, pad rest of the codeword with erasures and run the decoder.

The JApplet version of the decoder is at RSJ.html and the Applet version of the decoder is at RS.html

This software is licensed with GNU GPL. The source code can be found here.



Kai Chen
Last modified: 16:57:23. Apr. 19, 2003.