Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

comm.RectangularQAMDemodulator

(削除予定) 矩形の QAM 信号コンスタレーションを使用した復調

comm.RectangularQAMDemodulator は将来のリリースで削除される予定です。代わりに qamdemod を使用してください。詳細については、バージョン履歴を参照してください。

説明

RectangularQAMDemodulator オブジェクトは、矩形格子上のコンスタレーションで直交振幅変調を使用して変調された信号を復調します。

直交振幅変調を使用して変調された信号を復調するには、以下の手順に従います。

  1. 長方形の QAM 復調器オブジェクトを定義および設定します。構築を参照してください。

  2. step を呼び出して、comm.RectangularQAMDemodulator のプロパティに従い、信号を復調します。step の動作は、ツールボックスの各オブジェクト固有のものです。

メモ

R2016b 以降では、step メソッドを使用して、System object™ によって定義された演算を実行する代わりに、引数を関数であるかのように使ってオブジェクトを呼び出すことができます。たとえば、y = step(obj,x)y = obj(x) は同等の演算を実行します。

構築

H = comm.RectangularQAMDemodulator は復調器 System object H を作成します。このオブジェクトは、長方形の直交振幅変調 (QAM) メソッドを使用して、入力信号を復調します。

H = comm.RectangularQAMDemodulator(Name,Value) は、指定されたそれぞれのプロパティ セットを指定された値に設定して、長方形の QAM 復調器オブジェクト H を作成します。(Name1,Value1,...,NameN,ValueN) のように、追加の名前と値のペアの引数を任意の順番で指定できます。

H = comm.RectangularQAMDemodulator(M,Name,Value) は、長方形の QAM 復調器オブジェクト H を作成します。このオブジェクトは、ModulationOrder プロパティを M に設定し、指定の他のプロパティは指定の値に設定しています。

プロパティ

ModulationOrder

信号コンスタレーション点の数

信号コンスタレーション点の数を正の 2 の整数乗のスカラー値として指定します。既定の設定は 16 です。

PhaseOffset

コンスタレーションの位相オフセット

信号コンスタレーションの位相オフセット (ラジアン) を実数のスカラー値として指定します。既定の設定は 0 です。

BitOutput

ビットとしての出力データ

出力がビットのグループまたは整数シンボル値で構成されているかどうかを指定します。このプロパティを true に設定すると、step メソッドは、復調されたシンボルの log2(ModulationOrder) 倍の数に等しい長さのビット値をもつ列ベクトルを出力します。このプロパティを false に設定すると、step メソッドは入力データ ベクトルと長さが等しい列ベクトルを出力します。このベクトルには、0ModulationOrder-1 の間の整数シンボル値が含まれます。既定の設定は false です。

SymbolMapping

コンスタレーション符号化

オブジェクトが整数または log2(ModulationOrder) ビットのグループを対応するシンボルにマップする方法を BinaryGray または Custom の 1 つとして指定します。既定の設定は Gray です。このプロパティを Gray に設定すると、オブジェクトはグレイ符号化された信号コンスタレーションを使用します。このプロパティを Binary に設定すると、オブジェクトは通常のバイナリ符号コンスタレーションを使用します。このプロパティを Custom に設定すると、オブジェクトは CustomSymbolMapping で定義された信号コンスタレーションを使用します。

CustomSymbolMapping

カスタム コンスタレーションの符号化

カスタム コンスタレーション シンボル マッピング ベクトルを指定します。既定の設定は 0:15 です。このプロパティは、サイズ ModulationOrder の行または列ベクトルで、範囲 [0, ModulationOrder-1] において一意の整数値をもっていなければなりません。これらの値のデータ型は double でなければなりません。このベクトルの最初の要素は、コンスタレーションの一番左上の点に対応しており、続く要素は左から右の列方向に実行されます。最後の要素は、一番右下の点に対応します。このプロパティは、SymbolMapping プロパティを Custom に設定した場合に適用されます。

NormalizationMethod

コンスタレーションの正規化メソッド

信号コンスタレーションを正規化するために使用するメソッドを Minimum distance between symbolsAverage power または Peak power として指定します。既定の設定は Minimum distance between symbols です。

MinimumDistance

シンボル間の最小距離

2 つの最も近いコンスタレーション点間の距離を正の実数の数値スカラー値として指定します。既定の設定は 2 です。このプロパティは、NormalizationMethod プロパティを Minimum distance between symbols に設定した場合に適用されます。

AveragePower

平均コンスタレーション電力

コンスタレーションのシンボルの平均電力を正の実数の数値スカラー値として指定します。既定の設定は 1 です。このプロパティは、NormalizationMethod プロパティを Average power に設定した場合に適用されます。

PeakPower

コンスタレーションのピーク電力

コンスタレーションのシンボルの最大電力を正の実数の数値スカラー値として指定します。既定の設定は 1 です。このプロパティは、NormalizationMethod プロパティを Peak power に設定した場合に適用されます。

DecisionMethod

復調判定メソッド

オブジェクトが使用する判定メソッドを Hard decisionLog-likelihood ratio または Approximate log-likelihood ratio として指定します。既定の設定は Hard decision です。BitOutput プロパティを false に設定すると、このオブジェクトは常に硬判定復調を実行します。このプロパティは、BitOutput プロパティを true に設定した場合に適用されます。

VarianceSource

ノイズ分散のソース

ノイズ分散のソースを Property または Input port として指定します。既定の設定は Property です。このプロパティは、BitOutput プロパティを true に設定し、DecisionMethod プロパティを Log-likelihood ratio または Approximate log-likelihood ratio に設定した場合に適用されます。

Variance

ノイズ分散

ノイズの分散を正の実数スカラー値として指定します。既定の設定は 1 です。この値が非常に小さい (つまり、SNR が非常に大きい) 場合、対数尤度比 (LLR) 計算は Inf または -Inf を生成することがあります。これは、LLR アルゴリズムによって非常に大きい数または非常に小さい数の指数計算に有限精度演算が使用されるためです。このような場合は、指数計算を行わないアルゴリズムをもつ近似 LLR の使用をお勧めします。このプロパティは、BitOutput プロパティを true に設定し、DecisionMethod プロパティを Log-likelihood ratio または Approximate log-likelihood ratio に、さらに VarianceSource プロパティを Property に設定した場合に適用されます。このプロパティは調整可能です。

OutputDataType

出力のデータ型

出力データ型を Full precisionSmallest unsigned integerdoublesingleint8uint8int16uint16int32 または uint32 に指定します。既定の設定は Full precision です。

BitOutput プロパティを false に設定するか、BitOutput プロパティを true および DecisionMethod プロパティを Hard decision に設定した場合に、このプロパティが適用されます。この場合、OutputDataType プロパティを Full precision に設定し、入力データ型が単精度または倍精度であると、出力データは入力と同じデータ型になります。

入力データが固定小数点データ型の場合、出力データ型は OutputDataType プロパティを Smallest unsigned integer に設定した場合と同様に動作します。

BitOutput プロパティを true に設定し、DecisionMethod プロパティを Hard Decision に設定すると、logical データ型が有効なオプションになります。

BitOutput プロパティを true に設定し、DecisionMethod プロパティを Log-likelihood ratio または Approximate log-likelihood ratio に設定した場合、出力のデータ型は入力のデータ型と同じになります。この場合、データ型は単精度または倍精度のみでなければなりません。

 固定小数点プロパティ

メソッド

constellation(削除予定) 理想的な信号コンスタレーションの計算またはプロット
step(削除予定) 矩形の QAM メソッドを使用した復調
すべての System object に共通
release

System object のプロパティ値の変更の許可

詳細

すべて展開する

アルゴリズム

このオブジェクトは、Rectangular QAM Demodulator Baseband ブロックのリファレンス ページで説明されているアルゴリズム、入力、および出力を実装しています。オブジェクト プロパティはブロック パラメーターに対応します。

拡張機能

バージョン履歴

R2012a で導入

すべて折りたたむ

R2018b: 削除予定

comm.RectangularQAMDemodulator は将来のリリースで削除される予定です。代わりに qamdemod を使用してください。

comm.RectangularQAMModulator および comm.RectangularQAMDemodulator でサポートされている PeakPower および AveragePower (単位平均パワー以外) によるコンスタレーションの正規化は、本質的に関数で提供されていません。関数 qammod と関数 qamdemod を使用してピーク パワーと平均パワーの正規化を実行するには、これらのユーティリティ関数を使用して、ピーク パワーまたは平均パワーの正規化から、最小距離の正規化へシンボルをスケーリングします。

function minD = pkPow2MinD(pkPow,M)
% Peak power to minimum distance
    nBits = log2(M);
    if (mod(nBits,2)==0)
        % Square QAM
        sf = 0.5*M - sqrt(M) + 0.5;
    else
        % Cross QAM
        mBy32 = M/32;
        if (nBits > 4)
            sf = (13 * mBy32) - (5 * sqrt(mBy32)) + 0.5;
        else
            sf = (20 * mBy32) - (6 * sqrt(mBy32)) + 0.5;
        end
    end
    minD = sqrt(pkPow/sf);
end

function minD = avgPow2MinD(avgPow,M)
% Average power to minimum distance
    nBits = log2(M);
    if (mod(nBits,2)==0)
        % Square QAM
        sf = (M - 1)/6;
    else
        % Cross QAM
        if (nBits > 4)
            sf = ((31 * M / 32) - 1) / 6;
        else
            sf = ((5 * M / 4) - 1) / 6;
        end
    end
    minD = sqrt(avgPow/sf);
end

 硬判定用のピーク パワーの正規化

 硬判定用の平均パワーの正規化

 近似 LLR 用のピーク パワーの正規化

 近似 LLR 用の平均パワーの正規化

 LLR 用のピーク パワーの正規化

 LLR 用の平均パワーの正規化

参考

関数

オブジェクト