我正在研究为在具有突发错误的嘈杂通道中运行的设备实施编码和解码。我发现克服突发错误的最常用技术如下:
- 里德-所罗门 (RS) 代码
- 防火规范
- 交错
- 级联
- 级联
我认为在嵌入式系统中,实现基于多项式的技术以将相关多项式存储在查找表中的最有效方式。然而,编码和解码涉及大量计算,只是想知道这些可能需要多长时间。
任何帮助,将不胜感激。
==========
PS:检测和修正都是必须的。
我正在研究为在具有突发错误的嘈杂通道中运行的设备实施编码和解码。我发现克服突发错误的最常用技术如下:
我认为在嵌入式系统中,实现基于多项式的技术以将相关多项式存储在查找表中的最有效方式。然而,编码和解码涉及大量计算,只是想知道这些可能需要多长时间。
任何帮助,将不胜感激。
==========
PS:检测和修正都是必须的。
我不认为有任何替代 RS 来纠正块错误。卷积码非常快(对于维特比,每个解码位约 15 条摊销指令),但仅适用于零星的位更改。BCH(二进制)码 (31,5) 的综合症可以更快地计算出来,但它只能恢复 2 位。
本页讨论长 RS 解码的完整软件实现的复杂性:
RS(255,251) - 12 Mbps
RS(255,239) - 2.7 Mbps
RS(255,223) - 1.1 Mbps
将 2 错误综合症映射到错误位置在 166MHz Pentium 上实现了 12Mbps 的速度(可能使用查找表),可以说是当今典型嵌入式处理器效率的 5-10%。较大多项式的复杂度约为 O(M*N),其中 M = 块长度,N = 校正子计算和 Berlekamp-Massey 算法的代码长度。Chien 搜索似乎经常在所有可能的 (255) 根上进行蛮力循环,并将它们一一代入错误位置多项式——这也具有大约 O(M*N) 的复杂性,因为 M=块大小= 255 与码字的数量(256)大致相同。