Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

MSK Demodulator Baseband

差分で符号化された MSK 変調データの復号化

ライブラリ

Modulation の Digital Baseband サブライブラリ内の CPM

  • MSK Demodulator Baseband block

説明

MSK Demodulator Baseband ブロックは、差分符号化最小シフト キーイング法を用いて変調された信号を復調します。このブロックは、入力信号が、プリコーディングなしの同期変調信号のベースバンド表現になることを予期します。[Phase offset] パラメーターは、変調された波形の初期位相を示します。

パルス整形のフィルター処理

差分符号化最小シフト キーイング変調は、パルス整形を使用して、変調信号の位相遷移を平滑化します。関数 q(t) は、次の関係によって周波数パルス g(t) から得られる位相応答です。

指定された周波数パルス整形は、次の矩形パルス整形式 g(t) に対応します。

パルス整形
Rectangular

  • Lmain は、シンボル区間におけるメイン ローブ パルス存続時間です。

  • パルスの持続時間 LT は、シンボル区間におけるパルス長です。

整数値信号とバイナリ値信号

このブロックは、single または double のデータ型のスカラー値、または列ベクトル入力信号を受け入れます。[Output type] パラメーターが [Integer] に設定されている場合、ブロックは 1 および -1 の値を生成します。[Output type] パラメーターが [Bit] に設定されている場合、ブロックは 0 および 1 の値を生成します。

シングルレート処理

シングルレート処理モードの場合、入力信号および出力信号における端子のサンプル時間は同じになります。ブロックは、入力と比較する際に出力でのサイズ変更を行うことによってレート変更を暗黙的に実装します。入力幅は [Samples per symbol] パラメーター値の整数倍でなければならず、入力は列ベクトルとすることができます。

  • [Output type][Bit] に設定した場合、出力幅は入力シンボルの数の K 倍となります。

  • [Output type][Integer] に設定した場合、出力幅は入力シンボルの数と一致します。

マルチレート処理

マルチレート処理モードでは、入力信号と出力信号の端子サンプル時間は異なっています。入力はスカラーでなければなりません。出力のサンプル時間は、入力のサンプル時間と [Samples per symbol] パラメーターの値の積になります。

  • [Output type][Bit] に設定した場合、出力幅はシンボルあたりのビット数と一致します。

  • [Output type][Integer] に設定した場合、出力幅はスカラー値となります。

トレースバック長と出力遅延

最初に、このブロックは変調スキームのトレリス表現を作成し、ビタビ アルゴリズムを使用します。このブロックの [Traceback depth] パラメーター値 D は、各トレースバック長の構築に用いたトレリス分岐の数です。この D は、復調された有意な値が最初に出力される前の 0 シンボルの数となる出力の遅延に影響します。

  • [Rate options] パラメーターを [マルチレート処理を許可] に設定し、モデルにて可変ステップ ソルバーまたは固定ステップ ソルバーを使用して [タスク モード] パラメーターを [シングルタスク] に設定した場合、遅延を構成する 0 シンボルは D+1 個になります。

  • [Rate options] パラメーターを [Enforce single-rate processing] に設定した場合、遅延を構成する 0 シンボルは D 個になります。

[Traceback depth] パラメーター値は、ユークリッド距離の最小二乗値に依存します。別の方法として、状態数に依存する標準値を選択することも可能で、その際に用いる "拘束長の 5 倍" ルールは 5×log2(numStates) に対応します。状態数は、次の計算式で決定されます。

numStates={p2(L1),forevenm2p2(L1),foroddm}

ここで、

  • h = m/p は有理式で示した変調指数

    • m = 変調指数の分子

    • p = 変調指数の分母

  • L はパルスの長さ

パラメーター

Output type

出力が、バイポーラまたはバイナリ値のどちらで構成されるかを決定します。

Phase offset (rad)

変調された波形の初期位相です。

シンボルあたりのサンプル数

変調される各シンボルを表す入力サンプルの数で、正の整数でなければなりません。詳細については、信号とレート変更のアップサンプルを参照してください。

Rate options

ブロックのレート処理方法を選択します。

  • Enforce single-rate processing — このオプションを選択すると、入力信号と出力信号の端子サンプル時間が同じになります。ブロックは、出力のサイズを入力と比較して変更することによって、レートを変更します。出力幅はシンボルの数と一致します ([Output type] パラメーターが [Integer] の場合は、入力長を [Samples per symbol] パラメーター値で割った値 )。

  • Allow multirate processing — このオプションを選択すると、入力信号と出力信号の端子サンプル時間は異なるものになります。出力期間はシンボル区間と等しく、入力期間と [Samples per symbol] パラメーターの値の積になります。

詳細は、このページの「シングルレート処理」および「マルチレート処理」を参照してください。

Traceback depth

MSK Demodulator Baseband ブロックが、各トレースバック長を構築するために使用するトレリス分岐の数です。

Output data type

出力データ型は、booleanint8int16int32、または double です。

サポートされているデータ型

端子サポートされているデータ型

入力

  • 倍精度浮動小数点

  • 単精度浮動小数点

出力

  • 倍精度浮動小数点

  • boolean ([Output type][Bit] の場合)

  • 8、16、32 ビット符号付き整数 ([Output type][Integer] に設定した場合)

ペア ブロック

MSK Modulator Baseband

参考文献

[1] Anderson, John B., Tor Aulin, and Carl-Erik Sundberg, Digital Phase Modulation, New York, Plenum Press, 1986.

拡張機能

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

R2006a より前に導入