0
votes

I need to implement an ECC algorithm on an 8-bit message with 32 bits to work with (32, 8), being new to ECC I started to google and learn a bit about it and ended up coming across two ECC methods, Hamming codes and Reed Solomon. Given that I needed my message to be resilient to 4-8 random bit flips on average I disregarded Hammings and looked into Reed, however, after applying it to my problem I realized it is also not suitable for my use case because while a whole symbol (8 bits) could be flipped, because my errors tend to spread out (on average), it can usually only fix a single error...

Therefore in the end I just settled for my first instinct which is to just copy the data over like so:

00111010 --> 0000 0000 1111 1111 1111 0000 1111 0000

This way every bit is resilient up to 1 error (8 across all bits) by taking the most prominent bits on each actual bit from the encoded message, and every bit can be subject to two bitflips while still detecting there was an error (which is also usable for my use case, eg: input 45: return [45, 173] is still useful).

My question then is if there is any better method, while I am pretty sure there is, I am not sure where to go from here.

By "better method" I mean resilient to even more errors given the (32, 8) ratio.

You should ask this on cs.stackexchange.com.Olivier