Yeah, I’m one of them.
Usually if you’re coming into error correcting codes with no prior background (and parity bits doesn’t cut it), it’s best to just get a book on the topic. There aren’t that many references on the web that just tell you how to do it. A lot say what to do, but fail to provide details. To some extent, most times the details are boxed up in intellectual property cores or libraries so you don’t have to worry about them, but I was looking for at once a somewhat leaner and more specific implementation, plus a bit of education.
I found one that does a good job at both. Searching around eventually led me to a BBC white paper on Reed-Solomon coding that amounted to a gentle overview of the theory plus implementation.
Along with a couple references for multiplication over GF(256), I first wrote a multiplier function, and then used that to construct a 64 KB multiplication table. To all you veterans who frown at this seemingly inefficient approach, 64KB in memory is nothing when you have 2 GB it.
Now I’ve just got to write the rest of the forward error correction stack, and the subsequent decoder for it all.
Tags: education, misadventures, software
Entries (RSS)
[...] for various reasons, it turns out that I don’t really need Reed-Solomon codes for what I’ll be doing, but I still have more than a passing interest in the decoding side of [...]