Main Content

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

M-PSK TCM Encoder

バイナリ データの畳み込み符号化と PSK 法を用いた変調

ライブラリ

Modulation の Digital Baseband サブライブラリ内の TCM

  • M-PSK TCM Encoder block

説明

M-PSK TCM Encoder ブブロックは、バイナリ入力信号を畳み込み符号化して、その結果を PSK のコンスタレーションにマッピングすることにより、トレリス符号変調 (TCM) を実装します。

[M-ary number] パラメーターは、コンスタレーションのポイント数で、これはまた、畳み込み符号化器で可能な出力シンボルの数に等しくなります (つまり、log2([M-ary number]) は符号化率 k/n の畳み込み符号の n に等しい)。

入力信号と出力信号

トレリス構造体で記述される畳み込み符号化器が符号化率 k/n の符号を示す場合、General TCM Encoder ブロックの入力信号は、長さ L*k のバイナリ列ベクトルでなくてはなりません (L は正の整数値)。

このブロックは、バイナリ値の入力信号を受け入れます。出力信号は、長さ L の複素列ベクトルです。

符号化器の指定

畳み込み符号化器の定義には、[Trellis structure] パラメーターを使用します。このパラメーターは MATLAB® 構造体であり、この形式は畳み込み符号のトレリス表現に記載されています。このパラメーター フィールドは次の 2 つの方法で使用できます。

  • 拘束長と生成多項式および、可能な場合はフィードバック接続多項式の使用を符号化器に指定する場合は、[Trellis structure] フィールドで poly2trellis コマンドを使用します。たとえば、符号化器を拘束長 7 で使用し、符号生成多項式を 171 と 133 (8 進数)、フィードバック接続多項式を 171 (8 進数) とするには、[Trellis structure] パラメーターを次のように設定します。

    poly2trellis(7,[171 133],171)

  • トレリス構造体を構成する MATLAB ワークスペースの変数がある場合は、その名前を [Trellis structure] パラメーターに入力します。この方式は、Simulink® ソフトウェアが各シミュレーション開始時におけるダイアグラムの更新に要する時間が、前の項目の使用方法に比べて短いため、高速です。

符号化器レジスタは、すべて 0 の状態で開始されます。符号化器は、シミュレーションの途中でレジスタをすべて 0 の状態にリセットするように設定することができます。そのためには、Operation mode[Reset on nonzero input via port] に設定します。これによりブロックは、Rst というラベルの付いた 2 番目の入力端子を開きます。Rst 端子の信号はスカラー信号です。これが非ゼロの場合、符号化器は 1 番目の入力端子でデータを処理する前にリセットします。

コンスタレーション

トレリス符号変調方式は、コンスタレーションを剰余と呼ばれるサブセットに分割して、各剰余のポイント ペア間の最短距離を最大化します。このブロックは、[M-ary number] パラメーターの指定値に基づいて、有効な分割を内部的に形成します。

次の図は、[M-ary number] が 8 のときにブロックが使用するラベル付き分割設定のコンスタレーションを示しています。その他のサイズのコンスタレーションについては、[1]を参照してください。

符号化ゲイン

マルチフェーズのトレリス符号 [3] に AWGN を併用することで、符号化されていない場合に対して 3 から 6 デシベルの符号化ゲインが達成可能です。

パラメーター

Trellis structure

畳み込み符号化器のトレリス表現を含む MATLAB 構造体。

Operation mode

[Continuous] モード (既定の設定) の場合、各フレームの最後でブロックは、次のフレームで使用するために、符号化器の状態を保存します。

[Truncated (reset every frame)] モードでは、ブロックは各フレームを個別に取り扱います。つまり、符号化器の状態は、各フレームの開始時にすべて 0 の状態にリセットされます。

[Terminate trellis by appending bits] モードでは、ブロックは各フレームを個別に取り扱います。個々の入力フレームごとに追加のビットを使用することで、符号化器の状態を各フレームの終了時にすべて 0 の状態にリセットします。出力の長さは、x を入力ビットの数、y=n(x+s)/k として、s=constraint length1 で与えられます (複数の拘束長の場合は s =sum(ConstraintLength(i)-1))。ブロックはこのモードを、列ベクトルの入力信号でサポートします。

[Reset on nonzero input via port] モードでは、ブロックに Rst とラベル付けされた追加の入力端子が表示されます。この Rst の入力が非ゼロ値となると、符号化器はすべてゼロの状態にリセットします。

M-ary number

コンスタレーションのポイント数です。

Output data type

ブロックの出力データ型には、single または double を指定できます。既定の設定では、ブロックはこれを double に設定します。

ペア ブロック

M-PSK TCM Decoder

参考文献

[1] Biglieri, E., D. Divsalar, P. J. McLane and M. K. Simon, Introduction to Trellis-Coded Modulation with Applications, New York, Macmillan, 1991.

[2] Proakis, John G., Digital Communications, Fourth edition, New York, McGraw-Hill, 2001

[3] Ungerboeck, G., “Channel Coding with Multilevel/Phase Signals”, IEEE Trans. on Information Theory, Vol IT28, Jan. 1982, pp. 55–67.

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

R2006a より前に導入