Algorithm 使用四状态条码的Reed-Solomon纠错算法

Algorithm 使用四状态条码的Reed-Solomon纠错算法,algorithm,error-handling,error-correction,reed-solomon,galois-field,Algorithm,Error Handling,Error Correction,Reed Solomon,Galois Field,我有一个组合数据信息,它至少需要35位 使用4状态条形码,每个条表示2位,因此上述信息可以转换为18条 我想添加一些强大的错误更正这个条码,所以如果它以某种方式损坏,它可以被更正。其中一种方法是 我的目标是添加尽可能强的错误更正,但另一方面,我对条形码的大小有限制。如果我理解正确的话,m∙k必须至少是我的消息大小,即在我的情况下为35 基于,我可以将(m,n,t,k)设为(4,15,3,9),这将允许我将消息编码为最多4个∙9=36位。这将导致码字大小为4∙15=60位,或30条,但纠错比率

我有一个组合数据信息,它至少需要35位

使用4状态条形码,每个条表示2位,因此上述信息可以转换为18条


我想添加一些强大的错误更正这个条码,所以如果它以某种方式损坏,它可以被更正。其中一种方法是

我的目标是添加尽可能强的错误更正,但另一方面,我对条形码的大小有限制。如果我理解正确的话,m∙k必须至少是我的消息大小,即在我的情况下为35

基于,我可以将(m,n,t,k)设为(4,15,3,9),这将允许我将消息编码为最多4个∙9=36位。这将导致码字大小为4∙15=60位,或30条,但纠错比率t/n仅为20.0%

下一个选项是将(m,n,t,k)设为(5,31,12,7),这将允许我将消息编码到5∙7=35位。这将导致代码字大小为5∙31=155位,或78条,并且纠错比率t/n将为~38.7%

第一种情况需要使用30条条形码,这很好,但20.0%的错误纠正率并没有期望的那么好。第二种方案提供了38.7%的出色纠错率,但条形码必须有78条,这太多了


是否有其他方法或不同的方法可以提供更好的错误纠正和合理的条形码长度

您可以使用缩短的码字,例如(5,19,6,7)31.5%的校正率,95位,48条。缩短码字的一个优点是,如果允许最多纠正6个错误,则可以减少错误纠正的机会。如果6个错误位置中的任何一个超出了有效位置的范围,则表明存在6个以上的错误。误纠错的概率约为(19/31)^6=5.3%。

里德-所罗门码之所以流行,部分原因是它们在理论上实现了纠错和长度的最佳折衷。如果你想纠正那么多的错误,你至少需要这样的长度。你能澄清一下为什么错误纠正的概率是(n/(2^m-1))^t吗@Ωmega-假设校正过程产生6个随机位置,但在31个可能的位置中,只有19个有效位置用于缩短的码字。因此,6个随机位置全部位于19个有效位置内的概率约为(19/31)^6。由于生成的错误定位多项式可能没有6个不同的根(重复根或缺失根),因此概率稍小@Ωmega-可能导致错误纠正的最小错误数为7。如果有7个错误位置,解码可能会产生它认为是6个错误位置,其中没有一个是7个实际错误位置的重复,导致13个错误,超过奇偶校验符号的数量。在这种情况下,校正过程将产生一个有效的码字(所有综合征==0),但它将是错误的有效码字@Ωmega-我应该澄清错误纠正的概率是假设有7个或更多错误。综合概率是7个或7个以上错误概率的5.3%(您必须找到错误源)。