如何在只有综合征的Reed-Solomon中找到可能的错误?

时间:2017-03-29 02:39:36

标签: reed-solomon

我正在为我正在上课的一项作业。

如果可能的话,我需要给出几个给定综合症的代码字错误的位置和大小。如果我能找出如何做到这一点的方法我可以做其余的,但我迷失在第一个。

这是综合征:[2,2,0,1]

我将使用q = 11且原始元素为2的Reed-Solomon代码。

我创建了以下H矩阵试图解决这个问题:

1  1  1  1  1  1   1  1   1  1
1  2  4  8  5  10  9  7   3  6
1  4  5  9  3  2   8  10  7  6
1  8  9  6  4  10  3  2   5  7

但由于我只有综合症,所以我不知道从哪里开始。我相信我在这里很缺少一些东西,希望有人可以向我指出。

我发现Berlekamp,Peterson和Euclidean在网上接近,但我们没有超过其中任何一个,我不明白他们如何在网上有限的解释工作。我们使用了错误定位多项式方法,但我不知道如何将它应用于这种情况,因为要达到4个具有4个未知数的方程式,您需要知道输入代码字。

谢谢。

1 个答案:

答案 0 :(得分:0)

有4个校正子且没有删除(已知错误位置),只能纠正2个错误。有2个方程有2个未知数。参考wiki文章中的示例:

https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction#Error_locator_polynomial

在你的情况下,综合症下标是0到3,而不是wiki的1到4。

S0 Λ2 + S1 Λ1 = -S2 (= 11 - S2)
S1 Λ2 + S2 Λ1 = -S3 (= 11 - S3)

反转2乘2矩阵非常简单,因此无需使用Berlekamp Massey或扩展Euclid算法。

如果所有错误位置都已知(擦除),则代码只需求解错误值,使用E表示错误值,L表示定位符,^表示取幂:

 1^L1 E1 +  1^L2 E2 +  1^L3 E3 +  1^L4 E4 = S0
 2^L1 E1 +  2^L2 E2 +  2^L3 E3 +  2^L4 E4 = S1
 4^L1 E1 +  4^L2 E2 +  4^L3 E3 +  4^L4 E4 = S2
 8^L1 E1 +  8^L2 E2 +  8^L3 E3 +  8^L4 E4 = S3