このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
comm.GeneralQAMDemodulator
任意の QAM コンスタレーションの復調
説明
comm.GeneralQAMDemodulator
オブジェクトは、直交振幅変調を使用して変調された信号を復調します。入力は、変調信号のベースバンド表現です。
このオブジェクトは可変サイズの入力を受け入れます。オブジェクトがロックされると、各入力チャネルのサイズは変更できますが、チャネルの数は変更できません。詳細については、Variable-Size Signal Support with System Objectsを参照してください。
直交振幅変調を使用して変調された信号を復調するには、以下の手順に従います。
メモ
R2016b 以降では、step
メソッドを使用して、System object™ によって定義された演算を実行する代わりに、引数を関数であるかのように使ってオブジェクトを呼び出すことができます。たとえば、y = step(obj,x)
と y = obj(x)
は同等の演算を実行します。
構築
H = comm.GeneralQAMDemodulator
は復調器 System object H
を作成します。このオブジェクトは、一般的な直交振幅変調 (QAM) 方式を使用する入力信号を復調します。
H = comm.GeneralQAMDemodulator(
は、指定の各プロパティが指定の値に設定された一般的な QAM 復調器オブジェクト Name
,Value
)H
を作成します。(Name1
,Value1
,...,NameN
,ValueN
) のように、追加の名前と値のペアの引数を任意の順番で指定できます。
H = comm.GeneralQAMDemodulator(CONST,
は、一般的な QAM 復調器オブジェクト Name
,Value
)H
を作成します。このオブジェクトは、Constellation
プロパティを CONST
に設定し、指定の他のプロパティは指定の値に設定しています。
プロパティ
|
信号コンスタレーション コンスタレーション点を実数または複素数の倍精度データ型ベクトルとして指定します。既定の設定は exp() です。ベクトルの長さが変調次数を決定します。
|
|
ビットとしての出力データ 出力がビットのグループまたは整数シンボル値で構成されているかどうかを指定します。既定の設定は このプロパティを このプロパティを |
|
復調判定方式 オブジェクトが使用する判定方法を、 |
|
ノイズ分散のソース ノイズ分散のソースを、 |
|
ノイズ分散 ノイズの分散を非ゼロの実数スカラー値として指定します。既定の設定は LLR アルゴリズムには、有限の精度で極度に大きいまたは小さい数値を扱う指数計算が含まれるため、次のような結果が得られます。
このような場合は、指数計算を含まないアルゴリズムである近似 LLR を使用します。 このプロパティは、 ヒント厳密な LLR アルゴリズムは有限の精度演算で指数を計算します。計算に非常に大きな正または負の振幅が含まれる場合、厳密な LLR アルゴリズムの結果は次のようになります。
近似 LLR アルゴリズムでは指数が計算されません。近似 LLR アルゴリズムを使用することによって、 |
|
出力のデータ型 出力データ型を このプロパティは、 入力データが固定小数点型の場合、出力データ型は、 入力信号が整数データ型であると、
|
例
任意の 3 点コンスタレーションを使ってデータを変復調します。
% Setup a three point constellation c = [1 1i -1]; hQAMMod = comm.GeneralQAMModulator(c); hAWGN = comm.AWGNChannel('NoiseMethod', ... 'Signal to noise ratio (SNR)','SNR',15,'SignalPower',0.89); hQAMDemod = comm.GeneralQAMDemodulator(c); %Create an error rate calculator hError = comm.ErrorRate; for counter = 1:100 % Transmit a 50-symbol frame data = randi([0 2],50,1); modSignal = step(hQAMMod, data); noisySignal = step(hAWGN, modSignal); receivedData = step(hQAMDemod, noisySignal); errorStats = step(hError, data, receivedData); end fprintf('Error rate = %f\nNumber of errors = %d\n', ... errorStats(1), errorStats(2))
詳細
アルゴリズム
このオブジェクトは、General QAM Demodulator Baseband ブロックのリファレンス ページで説明されているアルゴリズム、入力、および出力を実装しています。オブジェクト プロパティはブロック パラメーターに対応します。
拡張機能
バージョン履歴
R2012a で導入