※計算が結構間違えていたので修正します。10/11
※図を入れ忘れていました。10/13

前回までで、バイトデータに関する四則演算のやり方が分かりました。なおこれらの計算方法はあくまでも誤り訂正符号の世界での演算方法なので、いわゆる信号処理の場合とは違います。ここのところは混乱しないようにお願いします。

DVD ブックでは以下の式でパリティデータ PO、PI を付けるとありました。PO、PI ともにやることは同じでデータ数=桁数が違うだけです。ここでは手計算と云うことで、ぐっとデータ数を減らしてデータを作ってみます。
イメージ 1イメージ 2


元々のデータは 6 個、これに 4 個のパリティデータを付けると云うことでやってみましょう。

数値が具体的の方が分かりやすいかと思いますので、データ列を (0011 1100), (0001 0101), (0111 0100), (1011 1100), (0001 1111), (0010 1101) とします。表示スペースを減らすために 16 進表示にします。ただし繰り返しますが、16 進表示は誤解を招くので良いとは思いません
ここでは 3Ch, 15h, 74h, BCh, 1Fh, 2Dh になります。

データ多項式は、

I(X) = (3Ch)・X^5 + (15h)・X^4 + (74h)・X^3 + (BCh)・X^2 + (1Fh)・X + (2Dh)

αで表現しておきます。

I(X) = α^77・X^5 + α^141・X^4 + α^10・X^3 + α^71・X^2 +α^113・X + α^18

生成多項式 G(X) は、4 個のパリティデータを付けるので、次のようになります。

G(X) = (X + 1)(X + α)(X + α^2)(X + α^3)
     = X^4 + (1 + α + α^2 + α^3)・X^3 + (1・α + 1・α^2 + 1・α^3 + α・α^2 + α・α^3
       + α^2・α^3)・X^2 + (α・α^2・α^3 + 1・α^2・α^3 + 1・α・α^3 + 1・α・α^2)・X
       + 1・α・α^2・α^3
     = X^4 + α^75・X^3 + α^249・X^2 + α^78・X + α^6
※10/11 修正

元データ I(X) に X^4 を掛けて(桁を 4 桁上げて)、G(X) で割ります。欲しい結果は商ではなくて余りです。

I(X)・X^4 = α^77・X^9 + α^141・X^8 + α^10・X^7 + α^71・X^6 +α^113・X^5 + α^18・X^4

I(X)・X^4 / G(X) = (α^77・X^9 + α^141・X^8 + α^10・X^7 + α^71・X^6 +α^113・X^5 + α^18・X^4) / (X^4 + α^75・X^3 + α^249・X^2 + α^78・X + α^6)
※ 10/11 修正

                                                         α^77・X^5+ α^131・X^4+α^217・X^3+α^158・X^2+α^253・X+α^19
                                                         -------------------------------------------------------------------
X^4+α^75・X^3+α^249・X^2+α^78・X+α^6 | α^77・X^9+α^141・X^8+ α^10・X^7+ α^71・X^6+ α^113・X^5+α^18・X^4
                                                         α^77・X^9+α^152・X^8+ α^71・X^7+ α^155・X^6+ α^83・X^5
                                                          ----------------------------------------------------------------
                                                                       α^131・X~8+ α^196・X^7+ α^111・X^6+α^149・X^5+ α^18・X^4
                                                                       α^131・X^8+  α^206・X^7+ α^125・X^6+α^209・X^5+ α^137・X^4
                                                   ------------------------------------------------------
ずらします。
                     α^217・X^7+ α^80・X^6+ α^26・X^5+ α^171・X^4
                     α^217・X^7+ α^37・X^6+α^211・X^5+ α^40・X^4+α^223・X^3
                     --------------------------------------------------------
                                      α^158・X^6+ α^20・X^5+ α^96・X^4+α^223・X^3
                                      α^158・X^6+α^233・X^5+α^152・X^4+α^236・X^3+ α^164・X^2
                                    ------------------------------------------------------
                                                      α^253・X^5+α^227・X^4+ α^67・X^3+ α^164・X^2
                                                      α^253・X^5+ α^73・X^4+ α^247・X^3+ α^76・X^2+  α^4・X
                                                       ---------------------------------------------------
                                                                       α^19・X^4+α^191・X^3+α^251・X^2+  α^4・X
                                                                       α^19・X^4+  α^94・X^3+ α^13・X^2+ α^97・X+ α^25
                                                                     --------------------------------------------------
                                                                                        α^29・X^3+α^64・X^2+ α^162・X+ α^25
※10/11, 12 修正
余りは、

α^29・X^3+α^64・X^2+ α^162・X+ α^25 = (30h)・X^3+(5Fh)・X^2+ (BFh)・X+ 03h
※10/11 修正

 ということになります。よって送信データ列(符号)は、

 3Ch, 15h, 74h, BCh, 1Fh, 2Dh, 30h, 5Fh, BFh, 03h

※10/11 修正

 多項式表現では、

T(X) = (3Ch)・X^9 + (15h)・X^8 + (74h)・X^7 + (BCh)・X^6 + (1Fh)・X^5 + (2Dh)・X^4 + (30h)・X^3 + (5Fh)・X^2 + (BFh)・X + (03h)

※10/11 修正

 となります。

大汗かきながら書いた計算例となってしまいましたが、次回はこの送信符号 T(X) の性質を見てみようと思います。

イメージ 3 ← にほんブログ村「科学」-「技術・工学」へ
 ↑ クリックをお願いします。