OQPSK Demodulator Baseband
OQPSK 方式を使用した復調

ライブラリ:
Communications Toolbox /
Modulation /
Digital Baseband Modulation /
PSK
説明
OQPSK Demodulator Baseband ブロックは、入力波形に対してパルス整形フィルターを適用し、オフセット直交位相偏移変調 (OQPSK) 手法を使って変調された信号を復調します。詳細については、パルス整形フィルターを参照してください。入力は、変調信号のベースバンド表現です。
変調器と復調器のペアの処理によって発生する遅延の詳細については、変調の遅延を参照してください。
例
この例は、ブロック間の信号を歪めるチャネルまたは劣化要因がない、OQPSK Modulator BasebandおよびOQPSK Demodulator Basebandブロックの接続を示しています。フレームベースの処理のため、ビット信号入力を使用して構成されます。
cm_ex_oqpsk_mod_demod_pair
モデルにより、OQPSK 変調された信号のコンスタレーションが表示され、復元された信号のビット エラー レートが計算されます。復元された信号の遅延は、Find Delayブロックによって決定され、Error Rate Calculationブロックで適用されます。完全なデータ復元の場合、ビット エラー レートはゼロになります。
このモデルにはチャネル劣化要因または RF 劣化要因が含まれていないため、コンスタレーション ダイアグラムのプロットには劣化のないコンスタレーションが表示されます。
この例は、入力タイプに整数またはビットを使用するシングル レート処理のために構成された OQPSK Demodulator Baseband ブロックを示しています。
slex_oqpskdemod_framebased
モデルを開くには、[モデルを開く] ボタンを使用します。
シングルレート処理モードの場合、入力信号および出力信号における端子のサンプル時間は同じになります。ブロックは、入力と比較する際に出力でのサイズ変更を行うことによってレート変更を暗黙的に実装します。このモードでは、入力列ベクトルの長さは Samples per symbol パラメーターの整数倍でなければなりません。
Output type パラメーターを
Integer
とした場合、出力幅は入力シンボルの数となります。Output type パラメーターを
Bit
とした場合、出力幅は入力シンボルの数の 2 倍となります。
この例は、入力タイプに整数またはビットを使用するマルチレート処理のために構成された OQPSK Demodulator Baseband ブロックを示しています。
cm_ex_oqpskdemod_samplebased
モデルを開くには、[モデルを開く] ボタンを使用します。
マルチレート処理モードでは、入力信号と出力信号の端子サンプル時間は異なっています。このモードでは、出力シンボル時間は、入力のサンプル時間の Samples per symbol 倍になります。
Output type パラメーターを
Integer
に設定した場合、出力は0
~3
のスカラー値になります。Output type パラメーターを
Bit
に設定すると、出力幅は 2 になります。
doc_oqpsk_modulation_delay
モデルの OQPSK 復調では、復調された信号が、変調されていない信号と比較して遅延します。誤り統計を計算する場合、モデルは復調遅延を考慮してError Rate Calculationブロックの [受信遅延] パラメーターを調整しなければなりません。遅延設定が正しくない場合、計算された誤り率は不正確になり、予想よりも大幅に高くなります。
モデルの検証
Random Integer Generatorブロックでは、[セットのサイズ] パラメーターが 4 に設定されており、OQPSK 変調のために範囲 [0,3] の整数が生成されます。OQPSK Modulator BasebandブロックとOQPSK Demodulator Basebandブロックは、フィルター分子が [0.7071 0.7071] に設定され、シンボルあたりのサンプル数が 2 に設定され、[レート オプション] パラメーターが Allow multirate processing
に設定されたカスタム フィルター パルス整形で構成されます。AWGN Channelブロックでは、Es/N0 が 6 dB に設定されています。Error Rate Calculation ブロックは、最初に受信したサンプルから誤り率の計算を開始し、結果を出力端子に送信します。Display ブロックのサイズが変更され、出力 3 成分 (誤り率、誤り数、サンプル数) が表示されます。シミュレーション タブでは、[終了時間] が 1000 に設定されています。
シミュレーションを実行すると、Display ブロックは誤り率の計算を表示し、To Workspace ブロックはすべてのフレームの誤り率の計算が含まれた yout
変数を出力します。誤り率は、Random Integer Generator ブロックの初期シード値によって異なります。
シミュレーションの実行
Error Rate Calculation ブロックで受信遅延を 0 に設定し、シミュレーションを実行します。計算された誤り率を表示します。計算された誤り率は予想よりも高くなっています。
Calculated error rate = 0.765235
Error Rate Calculation ブロックで受信遅延セットを 1 に変更します。シミュレーションを再実行し、計算された誤り率を表示します。計算された誤り率は、Es/N0 を 6 dB に設定した AWGN チャネルを経由した OQPSK 信号伝送の予想値と一致しています。
Calculated error rate = 0.036000
この例では、バターワース パルス、カスタム パルス整形、および AWGN チャネルを使用して、OQPSK 変調器および OQPSK 復調器ブロックを使用してエンドツーエンドの通信システムを作成する方法を示します。このモデルは、送信機と受信機の間のビット エラー レートも計算します。
[モデルを開く] ボタンを使用して、cm_ex_oqpskmoddemod_iir
モデルを開きます。
この通信システムでは、IIR パルスを受信するために、復調器は積分とダンプ モードになります。このためには、[パルス整形] プロパティを Custom
に設定し、[FilterNumerator] を 1
に設定します。
端子
入力
出力
出力データ。整数またはビット列ベクトルとして返されます。
パラメーター
ブロック パラメーターを対話的に編集するには、プロパティ インスペクターを使用します。Simulink® ツールストリップの [シミュレーション] タブの [準備] ギャラリーで [プロパティ インスペクター] を選択します。
変調
出力型。[Integer]
または [Bit]
として指定します。
[Output type] を
[Integer]
に設定した場合、ブロックは、0-3 の値をもつ整数シンボルのベクトル (その長さは出力シンボルの数と同じ) を出力します。[Output type] を
[Bit]
に設定すると、ブロックは整数を示す 2 ビットのバイナリ表現 (バイナリ値、偶数長のベクトル) を出力します。
各整数またはビット ペアの入力期間は、出力サンプル期間の シンボルあたりのサンプル数 倍です。
π/4 からの位相オフセット。ラジアン単位のスカラーとして指定します。位相オフセットは、直交成分の遅延前に信号コンスタレーションの 0 番目の点に適用されます。OQPSK 虚数部遅延後、信号は力率 1 で正規化されます。
例: [Phase offset (rad)] を pi/4
に設定すると、QPSK 信号コンスタレーション点の 0 番目の点が座標軸上で {(1,0), (0,j), (-1,0), (0,-j)} に配置されます。
信号コンスタレーションのビット マッピング。[Gray]
、[Binary]
、または 0 から 3 までの整数の値をもつ 4 要素のカスタム数値ベクトルとして指定します。
設定 | 整数のコンスタレーション マッピング | ビットのコンスタレーション マッピング | コメント |
---|---|---|---|
| | | 信号コンスタレーションのマッピングは、グレイ符号化されます。 |
| | | 入力整数 |
0 から 3 までの整数の値をもつ 4 要素のカスタム数値ベクトル | | | 要素 [a b c d] は、値のセット [0, 1, 2, 3] (順序は任意) で構成しなければなりません。 |
Filtering
パルス整形のフィルター処理を次から選択します。[Half sine]
、[Normal raised cosine]
、[Root raised cosine]
、または [Custom]
。
レイズド コサイン フィルターのロールオフ係数。0
-1
のスカラーとして指定します。
依存関係
このプロパティは、パルス整形 が [Normal raised cosine]
または [Root raised cosine]
の場合に有効になります。
シンボル内のフィルターの長さ。スカラーとして指定します。理想的なレイズド コサイン フィルターの実現には、インパルス応答が無限に必要となります。しかし、このフィルターの実践的な実装を実現するため、オブジェクトは [Filter span (in symbols)] シンボルに対するインパルス応答を切り捨てます。
依存関係
このプロパティは、パルス整形 が [Normal raised cosine]
または [Root raised cosine]
の場合に有効になります。
シンボルあたりのサンプル数。正の偶数として指定します。
その他のパラメーター
Enforce single-rate processing
— 入力信号と出力信号の端子サンプル時間を同じにしてモデルを実行します。ブロックは、出力のサイズを入力と比較して変更することによって、レートを変更します。整数出力の場合、出力幅は入力幅の 1/シンボルあたりのサンプル数 倍になります。例については、OQPSK Demodulator ブロックを使用したシングルレート処理を参照してください。
Allow multirate processing
— モデルを実行します。入力信号と出力信号において異なる端子サンプル時間を許容します。出力シンボル時間は入力サンプル時間の シンボルあたりのサンプル数 倍になります。例については、OQPSK Demodulator ブロックを使用したマルチレート処理を参照してください。
出力データ型を [double]
、[single]
、または [uint8]
として選択します。
ブロックの特性
データ型 |
|
多次元信号 |
|
可変サイズの信号 |
|
詳細
シンボルあたりのサンプル数 の入力サンプルごとに 1 つの出力シンボルが生成されます。下記の図で、破線部分は入力サンプル処理を構成している領域を表します。
デジタル変調と復調ブロックは、入出力間で遅延を起こすことがあり、受信データの到着時間のオフセットにつながることがあります。時間 T において変調または復調ブロックに入力されるデータは、時間 T+ 遅延における出力に現れます。重ね合わせてプロットしたり誤り統計情報を計算したりするなど、転送データと受信データを比較する場合は、システムの遅延を考慮に入れます。以下に示すとおり、OQPSK 変調/復調の遅延は、パルス整形フィルター、入力/出力データ設定、およびシミュレーション構成によって異なります。
パルス整形 | Rate Options | 各離散レートを個別のタスクとして扱うか | 入力/出力データ (*) | OQPSK 変調器と復調器のブロック ペアによって発生するエンドツーエンドでの遅延 (サンプル単位) |
---|---|---|---|---|
[Half sine] または [Custom] | Enforce single-rate operation | N/A | Integer | 1 |
ビット | 2 | |||
マルチレート処理を許可 | false (シングル タスク) | Integer | length(data) + 1 + 1 | |
ビット | length(data) + 2 + 2 | |||
true (マルチタスキング) | Integer | length(data) + 1 + 2 | ||
ビット | length(data) + 2 + 4 | |||
[Normal raised cosine] または [Root raised cosine] | Enforce single-rate operation | N/A | Integer | Filter span (in symbols) |
ビット | 2*[Filter span (in symbols)] | |||
マルチレート処理を許可 | false (シングル タスク) | Integer | length(data) + [Filter span (in symbols)] + 1 | |
ビット | length(data) + 2*[Filter span (in symbols)] + 2 | |||
true (マルチタスキング) | Integer | 2*length(data) + [Filter span (in symbols)] + 2 | ||
ビット | 2*length(data) + 2*[Filter span (in symbols)] + 4 | |||
(*) データ型のパラメーターは、変調の場合は [Input type] および復調の場合は [Output type] です。 |
OQPSK 変調スキームでは、直交チャネルを 90 度遅延 (またはオフセット) させるために、2 つ以上のオーバーサンプリングが必要です。このオーバーサンプリングは、パルス整形によって実装される内挿フィルター処理を通じて実現できます。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2006a より前に導入
参考
ブロック
オブジェクト
トピック
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)