Main Content

Helical Interleaver

ヘリカル配列を用いた入力シンボルの並べ替え

ライブラリ

Interleaving の Convolutional サブライブラリ

  • Helical Interleaver block

説明

Helical Interleaver ブロックは、入力信号のシンボルを配列中にらせん状に配置し、その配列の行を出力端子から送信することで、入力信号内のシンボルを並べ替えます。

このブロックは内部計算に配列を使用します。C が [Number of columns in helical array] パラメーターの場合、行列には、C 個の列と無限数の行があります。ブロックは、N を [Group size] パラメーター値として、各タイム ステップごとに長さ C・N の入力を受け入れ、この入力を N シンボルからなる連続グループに割り当てます。ブロックは、シミュレーション開始時から数えて k 番目のグループを、配列中の列 k mod C に配置します。この配置がらせん状となるのは、C を法とする還元であるため、また k 番目のグループの最初のシンボルが 1+(k-1)*s 行目にあるためです (ただし、s は [Helical array step size] パラメーターです)。配列中で入力シンボルを含まない位置には、既定の設定として [Initial condition] パラメーターで指定される値が取り込まれます。

ブロックは、次の N 行をシーケンシャルに読み込むことにより、配列から C・N シンボルを出力端子に送信します。各タイム ステップにおいて、出力シンボルは、[Initial condition] パラメーターの値、当該タイム ステップにおける入力ベクトルからのシンボル、あるいは前回のタイム ステップで配列中に残されたシンボルのいずれかになる可能性があります。

このブロックは、C·N を含む列ベクトルの入力信号を受け入れます。

このブロックは、データ型 int8uint8int16uint16int32uint32booleansingledouble、および固定小数点を受け入れます。この出力のデータ型は入力信号のデータ型と同じになります。

パラメーター

Number of columns in helical array

ヘリカル配列内の列数 C

Group size

シンボルの各グループのサイズ N です。入力幅は C と N の積です。

Helical array step size

ヘリカル配列の該当列の、連続して入力されるグループ間を分離する行の数です。

Initial conditions

最初の入力が行われるまでに配列を埋めるスカラーです。

たとえば、C = 3 で N = 2 である場合、[Helical array step size] パラメーターは 1 で、[Initial condition] パラメーターは -1 となります。入力として [1:6]'[7:12]'、および [13:18]' を受け取ると、内部配列は次の図のような状態になります。入力シンボルが配列内部にどのように配置されるかを、入力および配列の色で示します。先頭 3 つのタイム ステップにおける出力は、[1; -1; -1; 2; 3; -1][7; 4; 5; 8; 9; 6]、および [13; 10; 11; 14; 15; 12] です。(この出力は、図中では色表示されていません)。

ペア ブロック

Helical Deinterleaver

参考文献

[1] Berlekamp, E. R. and P. Tong. "Improved Interleavers for Algebraic Block Codes." U. S. Patent 4559625, Dec. 17, 1985.

拡張機能

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

バージョン履歴

R2006a より前に導入