ハミング コードと、それらを使用して 1 ビット エラーを修正し、2 ビット エラーをすべて検出する方法について学びましたが、これをどのように拡張して 2 ビット エラーを修正するのでしょうか。
すべての 2 ビット エラーを訂正するために必要な最小ビット数は?
ハミング コードと、それらを使用して 1 ビット エラーを修正し、2 ビット エラーをすべて検出する方法について学びましたが、これをどのように拡張して 2 ビット エラーを修正するのでしょうか。
すべての 2 ビット エラーを訂正するために必要な最小ビット数は?
私はそれを理解したと思います。
N= データ ビット数、k= エラー訂正ビット数 (ハミングのパリティなど)
どの ECC スキームでも、2^(N+k) 個のビット文字列が可能です。
シングル ビット エラーの場合:
可能なビット文字列の総数が、特定の文字列に対して最大で 1 ビット エラーの文字列の可能な数よりも大きくなるように、k を見つけなければなりません。
最大で 1 ビット エラーの可能性のある文字列の合計は 2^N(n+k+1) です。
エラーなしの 1 文字列、1 ビット エラーの N+k 文字列
2^(N+k)>=(2^N)*(N+k+1)
上記を満たす値が見つかるまで(またはそれを解決したい場合)、kの値をプラグインするだけです。
同様に 2 ビット エラーの場合は、
エラーなしの 1 文字列、1 ビット エラーの N+k 文字列、N+k は 2 ビット エラーの 2 文字列を選択します。
2^(N+k)>=(2^N)*(N+k+1 + (N+k は 2 を選択))