メインコンテンツ

M-FSK Modulator Baseband

M-ary 周波数偏移変調法を用いた変調

  • M-FSK Modulator Baseband block

ライブラリ:
Communications Toolbox / Modulation / Digital Baseband Modulation / FM

説明

M-FSK Modulator Baseband ブロックは、M-ary 周波数偏移変調 (M-FSK) 手法を使用して信号を変調します。

出力信号のエイリアシングを防ぐには、サンプリング周波数を [M-ary 数] パラメーターと [周波数分離 (Hz)] パラメーターの値の積よりも大きい値に設定します。サンプリング周波数は、[シンボルあたりのサンプル数] パラメーターの値をモデルで定義された入力シンボル周期 (秒単位) で割った値になります。

すべて展開する

加法性ホワイト ガウス ノイズ (AWGN) チャネル経由で 2-FSK 変調信号を渡します。受信信号を復調し、シンボル エラー レート (SER) を計算します。

cm_2fsk_mod_demod モデルは、ランダムなバイナリ信号を 2-FSK 変調し、AWGN を適用してから、信号を 2-FSK 復調します。Error Rate Calculationブロックは SER を計算します。Error Rate Calculation ブロックでは、1 サンプルの遅延を考慮するため、[受信遅延] パラメーターを 1 に設定します。

model = 'cm_2fsk_mod_demod';
open_system(model);
chan = [model,'/AWGN Channel'];

Es/N0 を 10 に設定して、計算された SER を表示します。Scope (Simulink)ブロックは、時間領域の入力信号と復調信号、および 2 つの信号が等しくない場合を示す信号をプロットします。

set_param(chan,'esno','10');
sim(model);
fprintf('With EsN0 set to 10, SER = %7.6f\n',ErrorVec(1));
With EsN0 set to 10, SER = 0.004889

入力の整数データとバイナリ データを M-FSK で変調および復調します。各整数または "log2(M)" ビットの各グループは、1 つのシンボルに対応します。ここで、M[M-ary 数] パラメーターの値を表します。入力信号と出力信号の予想される信号長を計算します。入力信号と出力信号の予想される長さおよび結果として得られた長さを表示します。

cm_fsk_mod_demod_bin_int モデルには、入力データを変調および復調する 2 つの並列処理のパスがあります。

変調器と復調器のペアは、変調次数 8 値、周波数間隔 100 Hz、フレームあたり 21 サンプル、シンボルあたり 10 サンプルで構成されています。このモデルは、PreLoadFcn コールバック関数を使用して、ブロック パラメーターを構成する変数を初期化します。詳細については、モデル コールバック (Simulink)を参照してください。

  • 上側のパスでは、整数データを受け取るように構成された 8-FSK Modulator ブロックを使用してデータを変調した後、別々の 8-FSK Demodulator ブロックでそのデータを復調してそれぞれバイナリ データと整数データを出力します。

  • 下側のパスでは、バイナリ データを受け取るように構成された 8-FSK Modulator ブロックを使用してデータを変調した後、同じように別々の 8-FSK Demodulator ブロックでそのデータを復調してそれぞれバイナリ データと整数データを出力します。

モデルを実行し、予想される入出力信号長、および結果として得られた入出力信号長を計算します。信号の長さを表示して、結果と予想される長さが一致することを確認します。

バイナリ入力信号について、予想される入出力長を表示します。

Nbit  Nsym  Nbout  Niout 
 693   2310   693   231

バイナリ入力信号について、結果として得られた入出力長を表示します。

 bit   sym   bout   iout
 693   2310   693   231

整数入力信号について、予想される入出力長を表示します。

Nint  Nsym  Nibout  Niiout 
 231   2310   693   231

整数入力信号について、結果として得られた入出力長を表示します。

 bit   sym   bout   iout
 231   2310   693   231

端子

入力

すべて展開する

入力信号。スカラーまたは列ベクトルとして指定します。詳細については、入力タイプを参照してください。

この端子はブロックで名前なしになります。

データ型: double

出力

すべて展開する

M-FSK 変調された信号。複素シンボルのスカラーまたは列ベクトルとして返されます。詳細については、シングルレート処理およびマルチレート処理を参照してください。

出力は、変調信号のベースバンド表現です。[出力データ型] パラメーターには、目的の出力のデータ型を指定します。

この端子はブロックで名前なしになります。

データ型: double

パラメーター

すべて展開する

ブロック パラメーターを対話的に編集するには、プロパティ インスペクターを使用します。Simulink® ツールストリップの [シミュレーション] タブの [準備] ギャラリーで [プロパティ インスペクター] を選択します。

変調信号の周波数の数。2 以上の正の整数として指定します。

入力が整数で構成されるか、ビットのグループで構成されるかを示します。[Integer] または [Bit] として指定します。

このパラメーターを [ビット] に設定した場合、[M-ary 数] パラメーターはある正の整数 K に対して 2K でなければなりません。

入力シンボルのシンボル マッピング。[バイナリ] または [グレイ] として指定します。

  • このパラメーターを [バイナリ] に設定すると、バイナリ符号の順序を使用してシンボルがマッピングされます。

  • このパラメーターを [Gray] に設定すると、グレイ符号の順序を使用してシンボルがマッピングされます。グレイ符号の順序の場合、[M-ary 数] の値は 2 のべき乗でなければなりません。

詳細については、整数値信号とバイナリ値信号を参照してください。

周波数間隔 (Hz)。変調された信号における隣接する周波数間の距離を表す正のスカラーとして指定します。

位相連続性。変調された信号の位相が連続的に変化するか不連続的に変化するかを決定します。[連続] または [不連続] として指定します。

  • このパラメーターを [連続] に設定すると、変調された信号はその周波数を変更する際にも位相を維持します。

  • このパラメーターを [不連続] に設定すると、変調された信号は、周波数の異なる M 個の正弦波の一部で構成されます。入力値の変化によって、変調された信号の位相が変化する場合があります。M[M-ary 数] パラメーターの値です。

シンボル サンプル レート。入力内の各整数または各バイナリ ワードに対してブロックが生成する出力サンプルの数を表す正の整数として指定します。

詳細については、信号のアップサンプリングとレート変更を参照してください。

ブロック処理レート。以下のいずれかのオプションを指定します。

  • Enforce single-rate processing — 入力信号と出力信号のサンプル時間は同じです。ブロックは、出力のサイズを入力と比較して変更することによって、レートを変更します。出力幅は、シンボルの数と [Samples per symbol] パラメーター値の積になります。

  • Allow multirate processing — 入力信号と出力信号のサンプル時間は異なります。出力サンプル時間は、シンボル区間を [Samples per symbol] パラメーターの値で割った値となります。

出力のデータ型。double または single を指定します。

ブロックの特性

データ型

Boolean | double | integer | single

多次元信号

いいえ

可変サイズの信号

いいえ

詳細

すべて展開する

アルゴリズム

Sklar [1] で説明されているように、M-FSK 変調の一般的な解析的表現は次のようになります。

si(t)=2ETcos(ωit+ϕ)0tTi=1,...,M

  • E はシンボルのエネルギーです。

  • T はシンボルの持続時間です。

  • ωi は離散値 M をもつ周波数項です。

  • M は変調次数で、波形の数を規定します。

  • ϕ は位相オフセットです。

参照

[1] Sklar, Bernard. Digital Communications: Fundamentals and Applications. 2nd ed. Upper Saddle River, NJ: Prentice-Hall PTR, 2001.

拡張機能

すべて展開する

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

バージョン履歴

R2006a より前に導入