誤り検出方式
読み方:やまりけんしゅつほうしき
【英】error correction
誤り検出方式とは、ネットワークを通じたデータ伝送や、周辺機器とのデータ送受信の際に、ノイズの混入や読み取りミスなどから発生するデータの誤りを検出する方式のことである。
誤り検出にはいくつかの方式があるが、代表的な分類として冗長検査と呼ばれる方式を挙げることができる。冗長検査では、伝送対象のデータ中に、あらかじめ誤り検出用の情報(冗長符号)を付け加えておき、受信側では一定のアルゴリズムを用いてチェックするという方式が取られている。
冗長検査に分類される誤り検出方式の例としては、パリティチェックやハミングコードチェック、CRC(巡回冗長検査)などがある。
パリティチェックは、1文字ごとに、その文字に含まれる1または0の個数が偶数か奇数かを示すパリティビットを付与し、受信時にその偶奇が一致しているかどうかを検査するというものである。
ハミングコードチェックは、一定の計算、例えば、XOR(Exclusive OR)などの論理演算などを利用し、受信側で誤りの存在と誤りの位置を特定できるように一定長ビット列ごとに計算されるコード(ハミングコード)を算出し、付与する方式である。ECC付きメモリやRAID2で利用されている。
CRCでは、シフトや加算の演算を組み合わせたCRC生成多項式を用いた計算を用いており、パリティチェックでは検出できない連続したデータの誤りを検出できる。通信やディスク装置などに用いられている。
なお、冗長検査で付与される冗長符号に、誤りを訂正符号が含まれる場合、誤りをリアルタイムに訂正することができる。音楽データの伝送などでは、伝送のやり直しができない場合があるため、このようなリアルタイムの検出および訂正が必要とされる。
|