Reed Solomon DSP Encoding
Fun With RS Codes
 
   
 Site Index
 
[Title Page] [Our DSP Code]
[Fun With Reed Solomon Codes] [MS-Word Report] [References]

 
The theory of Reed Solomon encoding/decoding can be very tough to understand.  To help you see the RS encoding/decoding process we have collected the following resources.  All of these examples have some form of interactivity. 
 
Reed Solomon Encoding/Decoding in DVD 
http://www.mat.dtu.dk/persons/Hoeholdt_Tom/DVD/ 
 
This is a GREAT example of RS encoding/decoding.  It is highly recommended that you try this example.  Basically the program will display a picture, encode the picture with RS parity bits, allow you to interactively add 'noise' to corrupt the picture, and finally the program will attempt to restore original picture thorough RS decoding. 
 
For the best results, go easy on the amount of errors you introduce on to the picture. 
 
Reed Solomon Java (31,k) Error Correcting Code 
http://www.cco.caltech.edu/~hope/HTML/RS31Demo.html 
 
A very simple Reed Solomon block encoder/decoder.  This Java program allows you to enter a text message and noise, and the program will encode the message and attempt to correct any errors. 
 
Reed Solomon Unix / MS-Dos Encoder 
Download the Unix C program source (gcc compile required) 
Download the MS-Dos EXE (Source code is the same as the Unix version) 
 
The code above is the exact code we followed to implement RS coding on the TI C54x DSP.  The links above allows you to try out the code on a general PC. 
 
Please note that the MS-Dos compile was done on an introductory version of VC++. 
 
These programs are based off of the RS code written by Simon Rockliff.  Rockliff's original source code can be found in the references section of this web site.  The interface has been modified to be more user friendly.

 
The following are Code examples of Reed Solomon encoding/decoding found on various locations on the web. 
 
http://people.qualcomm.com/karn/code/fec/ 
 
http://imailab-www.iis.u-tokyo.ac.jp/~robert/codes.html 
 

 
.end