反復符号

反復符号: Repetition code)とは、ビットを反復することで伝送路上の誤りのない通信を実現する ( n , 1 ) {\displaystyle (n,1)} 符号化手法である。反復符号は非常に単純な符号化手法である。フェージングのある通信路では反復回数が多いほど誤り率が低下するが、ホワイトノイズが加算されるような通信路では逆に誤り率が高くなる。

反復符号器

エンコーダは単に元のビット列の各ビットを n 回ずつ繰り返すもので、その出力を変調器に入力する。

例えば、 ( 3 , 1 ) {\displaystyle (3,1)} 反復符号では、 m = 101001 {\displaystyle m=101001} という信号を符号化すると c = 111000111000000111 {\displaystyle c=111000111000000111} という符号になる。

反復復号器

反復符号の復号には多数決論理復号法を用いる。あるビットの値を決定するとき、受信ストリーム内のそのビットのコピー群を調べ、最も多い値をそのビットの値として採用する。

例えば、 ( 3 , 1 ) {\displaystyle (3,1)} 反復符号で c = 110001111 {\displaystyle c=110001111} という信号を受信したとき、復号器は3ビット単位で多数決を行い m = 101 {\displaystyle m=101} と復号する。

符号パラメータ

( n , 1 ) {\displaystyle (n,1)} 符号の最小ハミング距離 d m i n = n {\displaystyle d_{min}=n} である。その誤り訂正能力は理論上 [ n 2 ] {\displaystyle \left[{\frac {n}{2}}\right]} だが、復号アルゴリズムにそれが生かされていないため、誤り訂正能力が悪くなる。

応用

反復符号は実装が簡単であるため、ノイズが少なくフェージングが多い伝送路で利用される。

関連項目