最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

General CRC Syndrome Detector

生成多項式に従って、受信した符号語フレームの誤りを検出する

  • ライブラリ:
  • Communications Toolbox / Error Detection and Correction / CRC

説明

General CRC Syndrome Detector ブロックは、受信した符号語フレームの巡回冗長検査 (CRC) チェックサムを計算します。通信システムのリンクで CRC 検出を適切に行うには、General CRC Syndrome Detector ブロックのパラメーター設定を、対になる General CRC Generator ブロックと一致させなければなりません。

詳細については、CRC シンドローム検出器の動作を参照してください。

端子

入力

すべて展開する

受信した符号語。バイナリ列ベクトルとして指定します。

データ型: double | Boolean

出力

すべて展開する

出力フレーム。入力信号のデータ型を継承するバイナリ列ベクトルとして返されます。出力フレームには、チェックサムが削除された受信符号語が含まれています。

出力フレームの長さは n - k * r ビットです。ここで、n は受信符号語のサイズ、k はフレームあたりのチェックサムの数、r は生成多項式の次数です。

チェックサム エラー信号。入力信号のデータ型を継承するバイナリ列ベクトルとして返されます。Err の長さは [Checksums per frame] の値と一致します。各チェックサム計算に対して、Err の要素値 0 はチェックサム エラーなしを示し、Err の要素値 1 はチェックサム エラーありを示します。

パラメーター

すべて展開する

CRC アルゴリズムの生成多項式。次のいずれかとして指定します。

  • 'z^3 + z^2 + 1' などの多項式の文字ベクトル。

  • バイナリ行ベクトル。降べきの順に並べた生成多項式の係数を表します。このベクトルの長さは (N+1) です。ここで N は生成多項式の次数です。たとえば、[1 1 0 1] は、多項式 x3+ z2+ 1 を表します。

  • 多項式の非ゼロの項の z の指数を降べきの順に含む整数行ベクトル。たとえば、[3 2 0] は、多項式 z3 + z2 + 1 を表します。

詳細については、多項式の文字表現を参照してください。

最もよく使用される生成多項式には、次のものがあります。

CRC メソッド生成多項式
CRC-32'z^32 + z^26 + z^23 + z^22 + z^16 + z^12 + z^11 + z^10 + z^8 + z^7 + z^5 + z^4 + z^2 + z + 1'
CRC-24 'z^24 + z^23 + z^14 + z^12 + z^8 + 1'
CRC-16 'z^16 + z^15 + z^2 + 1'
反転 CRC-16'z^16 + z^14 + z + 1'
CRC-8'z^8 + z^7 + z^6 + z^4 + z^2 + 1'
CRC-4 'z^4 + z^3 + z^2 + z + 1'

例: 'z^7 + z^2 + 1'[1 0 0 0 0 1 0 1]、および [7 2 0] は同一の多項式 p(z) = z 7 + z 2 + 1 を表します。

内部シフト レジスタの初期状態。バイナリ スカラー、または生成多項式の次数に等しい長さをもつバイナリ行ベクトルとして指定します。スカラー値は、生成多項式の次数に等しい長さの行ベクトルに拡張されます。

選択すると、CRC チェックサムの計算に直接アルゴリズムが使用されます。オフにした場合、ブロックでは、CRC チェックサムの計算に非直接アルゴリズムが使用されます。

直接アルゴリズムと非直接アルゴリズムの詳細については、誤りの検出と訂正を参照してください。

選択すると、シフト レジスタに入力される前に受信符号語がバイト単位で反転されます。[Reflect input bytes] を選択する場合、受信符号語長を [Checksums per frame] パラメーターの値で除算したものが、整数かつ 8 の倍数でなければなりません。[Reflect input bytes] をオフにすると、入力データは反転されません。

[Reflect checksums before final XOR] を選択すると、入力データがシフト レジスタを完全に通過した後に CRC チェックサムが 180° 反転されます。[Reflect checksums before final XOR] をオフにすると、CRC チェックサムは反転されません。

Final XOR。バイナリ スカラー、または生成多項式の次数に等しい長さをもつバイナリ行ベクトルとして指定します。[Final XOR] パラメーターの値と CRC チェックサムを使用して XOR 演算が実行されてから、入力チェックサムとの比較が実行されます。スカラー値は、生成多項式の次数に等しい長さの行ベクトルに拡張されます。0 に設定すると、XOR 演算を実行しないことと等価になります。

各フレームで計算されるチェックサムの数。正の整数として指定します。

ブロックの特性

データ型

Boolean | double

多次元信号

なし

可変サイズの信号

あり

詳細

すべて展開する

参照

[1] Sklar, Bernard. Digital Communications: Fundamentals and Applications. Englewood Cliffs, N.J.: Prentice-Hall, 1988.

[2] Wicker, Stephen B. Error Control Systems for Digital Communication and Storage. Upper Saddle River, N.J.: Prentice Hall, 1995.

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

R2006a より前に導入