誤り訂正は、ブロック符号によるものと畳み込み符号による物が 提案されている。ここでは、実装が終了しているブロック符号に よるものを紹介する。
簡単な誤り訂正技術として、ブロック符号の一種であるハミング符号がある。これは n[bit] の
訂正符号を用いて符号長
の符号のうちの任意の1誤りを
訂正する符号である。
この符号をそのまま伝送した場合、一符号語あたり
一誤りしか許されないため、バースト的な誤りには大変弱い。そのため、
ビット単位で送信順序を入れ換え、なるべく同じブロックに複数の誤りが
来ないように分散を行う交錯処理を行うことによって対策する
。
図4に、交錯処理後の情報および誤り訂正符号の送出順序を示す。
今回は、8bit CPU でも高速にインプリメントできるようにということを 意識して、情報符号を 8[bit] と訂正符号を 4[bit] で合計 12[bit] の 長さの符号を用いることとした。
情報符号から訂正符号を得るには、いちいち訂正符号を計算しても良いが 8[bit] の入力に対して 4[bit] の出力を得るだけなので、予め計算して 結果を表にしておいても、128[byte] であり問題になるような量にはならない。また、復号の 際にも、12[bit] の入力から 8[bit] の出力を得るだけなので、同様に 4096[byte] である。