このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Receiver Thermal Noise
複素信号への受信機の熱ノイズの適用
ライブラリ:
Communications Toolbox /
RF Impairments and Components
説明
Receiver Thermal Noise ブロックは受信機の熱ノイズを複素信号に適用します。ブロックは、複素信号の熱ノイズの影響をシミュレートします。[Specification method] パラメーターは、ノイズ温度、ノイズ指数、ノイズ ファクターに基づいた熱ノイズの指定を有効にします。
例
QAM 変調信号に対する受信機の熱ノイズの適用
cm_receiver_thermal_noise_qam
モデルは、受信機の熱ノイズを 16-QAM 信号に適用し、その信号をコンスタレーション ダイアグラムに表示します。このモデルは、Receiver Thermal Noiseブロックでノイズ指数を指定して受信機の熱ノイズを適用します。
Random Integer Generatorブロックでサンプル時間を毎秒 1e-3 サンプルに設定し、サンプル レート 1 kHz でシミュレーションを実行します。Rectangular QAM Modulator Basebandブロックの正規化方式は平均電力に設定されており、平均電力レベルは 3e-13 ワット (-92.5 dBm) に設定されています。Receiver Thermal Noise ブロックでノイズ指数のレベルを 20 dB に設定し、16-QAM 信号のコンスタレーション ダイアグラムを表示します。
ノイズ指数を小さくすると、シミュレートされた受信ノイズのレベルが減少し、コンスタレーション ダイアグラムで各点のサンプルがより密集するようになります。このことを示すには、ノイズ指数のレベルを 10 dB に設定して 16-QAM 信号のコンスタレーション ダイアグラムを表示します。
DQPSK 信号への RF 劣化要因の追加
この例では、差動直交位相偏移変調 (DQPSK) 方式によって変調された信号に RF 劣化要因を適用します。RF 劣化要因を示すために、この例では、現代の無線機の一般的なレベルとは異なる誇張されたレベルを適用しています。
この例では、slex_rcvrimpairments_dqpsk
モデルがランダムな信号を DQPSK 変調し、信号にさまざまな RF 劣化要因を適用します。モデルでは、RF Impairments ライブラリから劣化要因ブロックを使用します。コールバック関数 InitFun
はシミュレーション変数を初期化します。詳細については、モデル コールバック (Simulink)を参照してください。
劣化要因ブロックの後、信号は 2 つのパスに分岐します。1 つのパスは、復調の前に信号に DC ブロッキング、自動ゲイン制御 (AGC)、および I/Q 不均衡補正を適用します。補正パス上の信号は、DC Blocker、AGC、およびI/Q Imbalance Compensatorブロックによって調整されます。信号は DQPSK 変調されているため、搬送波同期は必要ありません。2 番目のパスは、復調に直接進みます。復調後、両方の信号でエラー レートの計算が行われます。モデルには、コンスタレーションを解析できるように、変調の後、補正の前、および補正の後にConstellation Diagramブロックが含まれています。
モデルが実行されると、シミュレーションの以下の段階で信号がコンスタレーション ダイアグラムにプロットされます。
After Modulation
コンスタレーション ダイアグラムは、基準の DQPSK 変調信号コンスタレーションを示しています。Before Correction
コンスタレーション ダイアグラムは、減衰して歪んだ信号コンスタレーションを示しています。After Correction
コンスタレーション ダイアグラムは、補正ブロック後に信号が増幅および改善されたことを示しています。
AGC を使用しない復調済み信号のエラー レートは主に自由空間パス損失と I/Q 不均衡によって発生します。QPSK 変調は他の劣化要因の影響を最小限に抑えます。
Error rate for corrected signal: 0.000 Error rate for uncorrected signal: 0.042
モデルを検証するには、次のことを試します。
RF 劣化要因の設定を調整し、モデルを再実行して、コンスタレーション ダイアグラムとエラー レートの変化に注目します。
復調の前にイコライザー段階を追加するためにモデルを変更します。イコライズには、劣化要因によって発生する歪みの一部を低減するための固有の機能があります。詳細については、イコライズを参照してください。
Simulink におけるマルチチャネル信号への熱ノイズの適用
マルチチャネル信号に熱ノイズを適用し、各チャネルの分散を計算します。各チャネルの分散を比較してそれらがほぼ等しいことを確認し、Receiver Thermal Noise ブロックによって個々のチャネルに熱ノイズが均等に適用されることを確認します。各チャネルの分散を計算し、Receiver Thermal Noise によって同じノイズ フロアが適用されることを確認します。
multichan_thermal_noise.slx
モデルは、チャネルごとの電力が等しいマルチチャネル信号を作成し、マルチチャネル信号に受信機の熱ノイズを適用します。
モデルを実行し、各チャネルについて計算された分散を出力します。
Ch1 Ch2 Ch3 Variance: 10.347 10.015 9.905
端子
入力
In1 — ベースバンド信号
スカラー | 列ベクトル | 行列
ベースバンド信号。複素数値のスカラー、NS 要素の列ベクトル、または NS 行 NC 列の行列として指定します。NS は、サンプルの数です。NC は、チャネルの数です。
データ型: double
| single
複素数のサポート: あり
出力
Out1 — 出力信号
スカラー | 列ベクトル | 行列
出力信号。入力信号と同じ長さとデータ型で、複素数値のスカラー、列ベクトル、または行列として返されます。
パラメーター
ブロック パラメーターを対話的に編集するには、プロパティ インスペクターを使用します。Simulink® ツールストリップの [シミュレーション] タブの [準備] ギャラリーで [プロパティ インスペクター] を選択します。
Specification method — 熱ノイズの指定方法
Noise temperature
(既定値) | Noise figure
| Noise factor
熱ノイズの指定方法。次のいずれかのオプションとして指定します。
[Noise temperature]
はケルビン単位でノイズを指定します。[Noise figure]
は、入力ノイズ温度 290 K に対する追加された受信機のノイズ (dB) を指定します。ノイズ指数はノイズ ファクターのデシベルに相当するものです。[Noise factor]
は、入力ノイズ温度 290 K に対する追加された受信機のノイズを指定します。ノイズ ファクターはノイズ指数の線形等価です。
Noise temperature (K) — Noise temperature
290
(既定値) | スカラー
ケルビン単位のノイズ温度。スカラーとして指定します。
調整可能: Yes
依存関係
このパラメーターは、[指定方法] を [ノイズ温度]
に設定した場合に適用されます。
データ型: double
| single
Noise figure (dB) — 受信機のノイズ指数
3.0103
(既定値) | スカラー
ノイズ温度 290 K に対する受信機のノイズ指数 (dB)。スカラーとして指定します。
メモ
このパラメーターは受信機の回路のみのノイズの影響を指定します。アンテナ ノイズの影響を追加するには、[290 K のアンテナ ノイズを追加] を選択します。
調整可能: Yes
依存関係
このパラメーターは、[指定方法] を [ノイズ指数]
に設定した場合に適用されます。
データ型: double
| single
Noise factor — 受信機のノイズ ファクター
2
(既定値) | スカラー
ノイズ温度 290 K に対する受信機のノイズ ファクター。スカラーとして指定します。
メモ
このパラメーターは受信機の回路のみのノイズの影響を指定します。アンテナ ノイズの影響を追加するには、[290 K のアンテナ ノイズを追加] を選択します。
調整可能: Yes
依存関係
このパラメーターは、[指定方法] を [ノイズ係数]
に設定した場合に適用されます。
データ型: double
| single
Add 290K antenna noise — 290 K のアンテナ ノイズを付加するオプション
off
(既定値) | on
Reference load (ohm) — 参照負荷
1
(既定値) | スカラー
オーム単位の参照負荷の値。スカラーとして指定します。この値は、信号レベルおよびノイズ パワー レベルに基づいて電圧レベルを計算するために使用されます。
調整可能: Yes
データ型: double
| single
乱数ソース — 乱数ストリームのソース
グローバル ストリーム
(既定値) | シードあり mt19937ar
乱数ストリームのソース。[グローバル ストリーム]
または [シードあり mt19937ar]
として指定します。
制限
このブロックを For Each Subsystem (Simulink) で使用するには、このパラメーターを [グローバル ストリーム]
に設定しなければなりません。これにより、実行のたびに独立したノイズ サンプルが必ず生成されます。
Initial seed — 初期シード値
67987
(既定値) | スカラー
乱数発生器の初期シード値。スカラーとして指定します。
依存関係
このパラメーターは、[乱数ソース] を [シードあり mt19937ar]
に設定した場合に適用されます。
データ型: double
| single
シミュレーション実行方法 — 実行するシミュレーションのタイプ
コード生成
(既定値) | インタープリター型実行
実行するシミュレーションのタイプ。[コード生成]
または [インタープリター型実行]
として指定します。
コード生成
— 生成された C コードを使用してモデルをシミュレートします。シミュレーションの初回実行時、Simulink は対象ブロックの C コードを生成します。このモデルは、モデルが変更されない限り以降のシミュレーションで C コードを再利用します。このオプションを使用すると、シミュレーションの起動時間は長くなりますが、以降のシミュレーションの速度は[インタープリター型実行]
オプションを使用した場合よりも速くなります。インタープリター型実行
— MATLAB® インタープリターを使用してモデルをシミュレートします。このオプションを使用すると、起動時間が短縮されますが、以降のシミュレーションの速度は[コード生成]
オプションを使用した場合よりも遅くなります。このモードで、ブロックのソース コードをデバッグできます。
詳細については、シミュレーション モード (Simulink)を参照してください。
ブロックの特性
データ型 |
|
多次元信号 |
|
可変サイズの信号 |
|
アルゴリズム
無線受信機のパフォーマンスは、しばしばノイズ ファクターまたはノイズ指数で表されます。ノイズ ファクター F は入力の S/N 比 Si/Ni と出力の S/N 比 So/No の比率として定義され、次のようになります。
受信機のゲイン G、受信機のノイズ パワー Nckt が与えられると、ノイズ ファクターは次のように表現できます。
IEEE® はノイズ ファクターを定義する際に、入力のノイズ温度が T0 であると仮定しています。ここで、T0 = 290 K です。このとき、ノイズ ファクターは次のようになります。
k はボルツマン定数です。B は信号帯域幅です。Tckt は受信機の等価入力ノイズ温度で、次のように表されます。
アンテナと受信機の全体的なノイズ温度 Tsys は次のようになります。
ここで、Tant はアンテナのノイズ温度です。
ノイズ指数 NF はノイズ ファクターの dB 換算と等価であり、次のように表現できます。
ノイズ パワーは次のように表現できます。
ここで、V は次のように表現されるノイズ電圧です。
また、R は参照負荷です。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2006a より前に導入R2023b: マルチチャネル入力のサポート
Receiver Thermal Noise
System object™ は、行列の入力ベースバンド信号を受け入れます。この行列の各列は、マルチアンテナ システムの 1 つのチャネルからのベースバンド信号を表しています。
R2023b: 可変サイズのサポート
このサポートによって、シミュレーションでブロックを実行するたびに入力信号の長さを変えられるようになりました。
R2023b: 乱数発生器の更新
Receiver Thermal Noise ブロックにおいて乱数発生器 (RNG) のソースが更新されました。[乱数ソース] パラメーターを使用して、RNG のソースとして Global stream
または mt19937ar with seed
を選択できるようになりました。このブロックを For Each Subsystem (Simulink) で使用するには、[乱数ソース] を [グローバル ストリーム]
に設定しなければなりません。これにより、実行のたびに独立したノイズ サンプルが必ず生成されます。
R2023b より前に作成されたシミュレーションでは、ブロックが既定で従来のモードになります。このブロックが従来のモードである場合、Random Source ブロックを使用してノイズが生成され、Ziggurat メソッド (V5 RANDN アルゴリズム) を使用して乱数が生成されます。シミュレーションを再実行するたびにブロックは同じ初期シードを再利用するため、シミュレーションを実行するたびにこのブロックは同じ信号を出力します。
Receiver Thermal Noise ブロックを使用する R2023b より前のモデルでシミュレーションを実行する際の統計的特性を向上させるには、[モデルの更新] を実行し、新しい Receiver Thermal Noise ブロックの機能を使用するように R2023b より前のモデルを変換します。
R2023b: コード生成
コード生成が既定で有効になっています。詳細については、シミュレーション実行方法を参照してください。
R2023b: single データ型のサポート
入力信号が single 型だった場合、ブロックによる計算は単精度でネイティブに行われ、返される出力も single 型になります。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)