Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

comm.RectangularQAMTCMDemodulator

長方形の QAM コンスタレーションにマップされた符号化データの畳み込み復調

説明

RectangularQAMTCMDemodulator オブジェクトは、矩形の QAM コンスタレーションを用いて変調されたトレリス符号変調 (TCM) の信号を、ビタビ アルゴリズムを使用して復号化します。

長方形の QAM コンスタレーションにマップされた符号化データは次により畳み込み復調します。

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

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

メモ

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

構築

H = comm.RectangularQAMTCMDemodulator は、トレリス符号の矩形直交振幅 (QAM TCM) 復調器 System object H を作成します。このオブジェクトは、矩形の QAM コンスタレーションにマップされた、畳み込み符号化データを復調します。

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

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

プロパティ

TrellisStructure

畳み込み符号のトレリス構造体

トレリスを、畳み込み符号のトレリス表現を含む MATLAB® 構造体として指定します。構造体が有効なトレリスかどうかを確認するには、関数 istrellis を使用します。既定の設定は、poly2trellis([3 1 1], [ 5 2 0 0; 0 0 1 0; 0 0 0 1]) の結果です。

TerminationMethod

符号化フレームの終了方法

終了手法を ContinuousTruncated または Terminated のいずれかとして指定します。既定の設定は Continuous です。

このプロパティを Continuous に設定すると、オブジェクトは各フレームの最後で内部状態メトリクスを保存します。次のフレームは同じ状態メトリクスを使用します。オブジェクトは、各トレースバック パスを個別に扱います。入力信号に含まれるシンボルが 1 つのみの場合、Continuous モードを使用しなければなりません。

このプロパティを Truncated に設定すると、オブジェクトは各入力ベクトルを個別に扱います。トレースバック パスは最良のメトリクスで始まり、常にすべて 0 の状態で終了します。

このプロパティを Terminated に設定すると、オブジェクトは各入力ベクトルを個別に扱い、トレースバック パスは常にすべて 0 の状態で開始および終了します。

TracebackDepth

ビタビ復号化器のトレースバック長

各トレースバック パスを構築する、トレリス分岐のスカラーの整数を指定します。既定の設定は 21 です。トレースバック長パラメーターは、復号化の精度と遅延に影響します。復号化遅延は、出力の最初に復号化されるシンボルよりも前の 0 シンボルの数です。

TerminationMethod プロパティを Continuous に設定した場合、復号化遅延は符号化率 K/N の畳み込み符号の TracebackDepth ゼロ シンボルまたは TracebackDepth×K ゼロ ビットで構成されます。

TerminationMethod プロパティを Truncated または Terminated に設定すると、出力遅延は発生せず、トレースバック長は各入力ベクトルでシンボルの数以下でなければなりません。

ResetInputPort

復調器リセット入力を有効にする

このプロパティを true に設定して、step メソッドに対する追加の入力を有効にします。既定の設定は false です。この追加のリセット入力が非ゼロ値の場合、符号化器の内部状態は初期条件にリセットされます。このプロパティは、TerminationMethod プロパティを Continuous に設定した場合に適用されます。

ModulationOrder

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

畳み込み符号化されたデータのマップに使用するコンスタレーションの点の数を正の整数のスカラー値として指定します。点の数は 481632、または 64 でなければなりません。既定の設定は 16 です。ModulationOrder プロパティ値は矩形 QAM TCM 復調器オブジェクトの畳み込み復号化器への可能な入力シンボルの数に等しくなければなりません。ModulationOrder は符号化率 K/N の畳み込み符号の 2N に等しくなければなりません。

OutputDataType

出力のデータ型

出力データ型を logical または double として指定します。既定の設定は double です。

メソッド

step長方形の QAM コンスタレーションにマップされた符号化データを畳み込み復調
すべての System object に共通
release

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

reset

System object の内部状態をリセットします。

すべて折りたたむ

AWGN チャネルのデータを、16-QAM TCM を使用して変復調します。BER を推定します。

QAM TCM 変調器および復調器 System object™ を作成します。

hMod = comm.RectangularQAMTCMModulator;
hDemod = comm.RectangularQAMTCMDemodulator('TracebackDepth',16);

AWGN チャネル オブジェクトを作成します。

hAWGN = comm.AWGNChannel('EbNo',5);

QAM TCM 復調器による遅延を決定します。復調器は、矩形 QAM を使用して変調された TCM 信号を、ビタビ アルゴリズムを使用して復調します。ビット誤り率を正確に計算するためには、復号化器による遅延が既知でなければなりません。

bitsPerSymbol = log2(hDemod.TrellisStructure.numInputSymbols);
delay = hDemod.TracebackDepth*bitsPerSymbol;

ReceiveDelay プロパティを delay に設定して、誤り率計算機オブジェクトを作成します。

hErrorCalc = comm.ErrorRate('ReceiveDelay',delay);

バイナリ データを生成して 16-QAM TCM で変調します。AWGN チャネルを通して信号を渡し、復調します。誤り統計を計算します。ループは、100 個のビット誤りが検出されるか、合計 1e7 ビットが送信されるまで実行されます。

% Initialize the error results vector.
errStats = [0 0 0];

while errStats(2) < 100 && errStats(3) < 1e7
    % Transmit frames of 200 3-bit symbols
    txData = randi([0 1],600,1);
    % Modulate
    txSig = step(hMod,txData);
    % Pass through AWGN channel
    rxSig = step(hAWGN,txSig);
    % Demodulate
    rxData = step(hDemod,rxSig);
    % Collect error statistics
    errStats = step(hErrorCalc,txData,rxData);
end

誤りデータを表示します。

fprintf('Error rate = %4.2e\nNumber of errors = %d\n', ...
    errStats(1),errStats(2))
Error rate = 1.94e-03
Number of errors = 100

アルゴリズム

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

拡張機能

R2012a で導入