奇偶校验可以纠正错误吗

网络工程 网络
2022-02-20 23:54:37

奇偶校验或偶校验可以纠正错误吗?奇偶校验可用于检测错误。它可以纠正错误吗?

3个回答

奇偶校验用于检测错误,而不是用于纠正。特别是它用于验证数据的完整性。如果在接收端的帧中奇偶校验失败,将被拒绝。

阅读这篇文章了解更多详情。

单位奇偶校验只能检测错误,它只能检测单位错误多位错误可以相互抵消,导致未检测到的错误。在信息论中,单个比特只能保存“数据正确”或“数据不正确”的简单信息。

在较大的位组上使用多位 ECC 代码要优越得多,因为它可以纠正单位错误并检测多个多位错误。

归根结底,ECC/FEC 开销长度定义或限制了您可以获得的纠错和检测量 - 越多越好。对于初学者,请查看Hamming 代码,以及一般的不同方法Tomlinson-Harashima 预编码脏纸编码

您可以使用多维奇偶校验来纠正错误,但是对于给定的奇偶校验开销,您获得的纠错量很低。这使得它仅适用于误码率非常低的情况。

二维奇偶校验方案可以纠正一个错误:

Original      With error     Correction
1 0 1 1  1    1 0 1 1  1     0 0 0 0  0
0 1 0 1  0    0 0 0 1  0 E   0 1 0 0  0
1 0 0 0  1    1 0 0 0  1     0 0 0 0  0
0 0 0 0  0    0 0 0 0  0     0 0 0 0  0
0 1 1 0  0    0 1 1 0  0     0 0 0 0  0
                E

您可以看到 MxN 位的单个位纠错使用 M+N+1 位奇偶校验。

汉明码可以被认为是各种多维奇偶校验。

有很多很多的纠错/检测方案具有非常不同的属性,通常背后有相当漂亮的数学:我特别喜欢GolayVerhoeff纠错方案的一些细节最好在数学(理论)或电子(实现)堆栈交换中跟进。