このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
comm.TurboDecoder
並列連結復号化スキームを使用した入力信号の復号化
説明
comm.TurboDecoder
System object™ は、並列連結復号化スキームを使用して符号化された入力信号を復号化します。入力信号は通常、ベースバンド復調操作からの軟判定出力です。詳細については、並列連結畳み込み復号化スキームを参照してください。
並列連結復号化スキームを使用して入力信号を復号化するには、以下の手順に従います。
comm.TurboDecoder
オブジェクトを作成し、そのプロパティを設定します。関数と同様に、引数を指定してオブジェクトを呼び出します。
System object の機能の詳細については、System object とはを参照してください。
作成
構文
説明
は、ターボ符号化器 System object を作成します。このオブジェクトは、"事後" 確率 (APP) 構成復号化器を使用して、並列連結され、畳み込み符号化された入力データを繰り返し復号化します。turbodec
= comm.TurboDecoder
は、それぞれ turbodec
= comm.TurboDecoder(trellis
,interlvrindices
,numiter
)TrellisStructure
、InterleaverIndices
、および numiter
をもつターボ復号化器 System object を作成します。trellis
入力は TrellisStructure
プロパティで記述されているように指定しなければなりません。interlvrindices
入力は InterleaverIndices
プロパティで記述されているように指定しなければなりません。numiter
入力は NumIterations
プロパティで記述されているように指定しなければなりません。
は、前の構文の入力引数の組み合わせに加えて、1 つ以上の名前と値のペアを使用してプロパティを設定します。各プロパティ名を引用符で囲みます。たとえば、turbodec
= comm.TurboDecoder(___,Name
,Value
)comm.TurboDecoder('InterleaverIndicesSource','Input port')
は、呼び出し時に System object に入力引数として提供されるインターリーバー インデックスを使用してターボ復号化器 System object を構成します。
プロパティ
使用法
構文
説明
は、トレリス構造体とインターリーバー インデックスで指定された並列連結畳み込み復号化スキームを使用して入力コードワードを復号化します。decmsg
= turbodec(codeword
)turbodec
はバイナリ復号化されたデータを返します。詳細については、並列連結畳み込み復号化スキームを参照してください。
はさらにインターリーバー インデックスを指定します。この構文を有効にするには、InterleaverIndicesSource プロパティを decmsg
= turbodec(codeword
,interlvrindices
)'Input port'
に設定します。インターリーバー インデックスは、復号化器で入力を並べ替えるために使用されるマッピングを定義します。
はさらに、完全に符号化されたデータで使用されるビット順序およびパンクチャを指定します。この構文を有効にするには、InputIndicesSource プロパティを decmsg
= turbodec(codeword
,interlvrindices
,inindices
)'Input port'
に設定します。入力インデックス ベクトルの値は、すべてのストリームの符号化方式にテール ビットを含む、完全に符号化されたデータを基準とする必要があります。
入力引数
出力引数
オブジェクト関数
オブジェクト関数を使用するには、System object を最初の入力引数として指定します。たとえば、obj
という名前の System object のシステム リソースを解放するには、次の構文を使用します。
release(obj)
例
詳細
参照
[1] Benedetto, S., G. Montorsi, D. Divsalar, and F. Pollara. "A Soft-Input Soft-Output Maximum A Posterior (MAP) Module to Decode Parallel and Serial Concatenated Codes." Jet Propulsion Lab TDA Progress Report, 42–127, (November 1996).
[2] Viterbi, A.J. “An Intuitive Justification and a Simplified Implementation of the MAP Decoder for Convolutional Codes.” IEEE Journal on Selected Areas in Communications 16, no. 2 (February 1998): 260–64. https://doi.org/10.1109/49.661114.
[3] Berrou, C., A. Glavieux, and P. Thitimajshima. “Near Shannon Limit Error-Correcting Coding and Decoding: Turbo-Codes.” Proceedings of ICC 93 - IEEE International Conference on Communications, Geneva, Switzerland, May 1993, 1064–70. https://doi.org/10.1109/icc.1993.397441.
[4] Schlegel, Christian, and Lance Perez. Trellis and Turbo Coding. IEEE Press Series on Digital & Mobile Communication. Piscataway, NJ ; Hoboken, NJ: IEEE Press ; Wiley-Interscience, 2004.
[5] 3GPP TS 36.212. "Multiplexing and channel coding." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). https://www.3gpp.org.
拡張機能
バージョン履歴
R2012a で導入