I have a project (enclosed here as RS_ECC) that creates parity data for a given block of input data (512 bytes) using the common Reed-Solomon algorithm. I need a function written that will decode (i.e. correct) the data if a bit or two are corrupted.
The function prototype should look like this:
int Decode(Int32 msgdata, Int parity_syms)
The result should be as follows:
0 = NoErrors //all bits and parity match
1 = Correctable //one or more bits dont match but was corrected
2 = EccError //the error is in the ecc
3 = Uncorractable //more errors than are correctable
For example, using the enclosed project and the test file ("[login to view URL]"), I can create the parity data like:
byte() sub_data = [login to view URL]; //(512 bytes)
[login to view URL](512, 4, 9); //init the class with 512 byte blocks, 4-bit correction, and 9-bit wide symbols.
int() result = [login to view URL](sub_data);
The result data returned is (keep in mind each result is 9-bits wide):
result(0) = 0x044
result(1) = 0x058
result(2) = 0x0EC
result(3) = 0x1A9
result(4) = 0x056
result(5) = 0x123
result(6) = 0x1BB
result(7) = 0x031
So if a bit is changed in the [login to view URL], when you run it through the Decode function, it would correct the bit and then return (1).
Please read this entire project before posting a bid. There are several open-source projects with examples of RS decoding, so any of them that you can use to work with the provided example will be acceptable.
7 freelancers estão ofertando em média $134 para esse trabalho
I have a lot of interest in your project. I have a lot of experience with c++. So I think I can complete the project well. Please contact me to discuss your project. Thank you
Taha technologies is an international software development company in Siliguri, WB, India, EG office in Cairo, Egypt and development centers in Eastern Europe and Asia