Main Content

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

comm.HelicalInterleaver

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

説明

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

入力シンボルをらせん状にインターリーブするには、以下の手順に従います。

  1. ヘリカル インターリーバー オブジェクトを定義および設定します。構築を参照してください。

  2. step を呼び出して、comm.HelicalInterleaver のプロパティに従い、入力シンボルをインターリーブします。step の動作は、ツールボックスの各オブジェクト固有のものです。

メモ

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

構築

H = comm.HelicalInterleaver は、ヘリカル インターリーバー System object H を作成します。このオブジェクトは、入力信号の入力シンボルを配列中でらせん状に配置することで、入力信号の入力シンボルを並べ替えます。

H = comm.HelicalInterleaver(Name,Value) は、指定された各プロパティを指定値に設定して、ヘリカル インターリーバー オブジェクト H を作成します。(Name1,Value1,...,NameN,ValueN) のように、追加の名前と値のペアの引数を任意の順番で指定できます。

プロパティ

NumColumns

Number of columns in helical array

ヘリカル配列の列数を正の整数スカラー値で指定します。既定の設定は 6 です。

GroupSize

入力シンボルの各グループのサイズ

入力シンボルの各グループのサイズを、正の整数スカラー値で指定します。既定の設定は 4 です。

StepSize

Helical array step size

ヘリカル配列の該当列の、連続して入力されるグループ間を分離する行の数を指定します。このプロパティは正の整数スカラー値でなければなりません。既定の設定は 1 です。

InitialConditions

ヘリカル配列の初期条件

ヘリカル配列に最初に格納される値を、数値のスカラー値で指定します。既定の設定は 0 です。

メソッド

stepヘリカル配列を使用した入力シンボルの並べ替え
すべての System object に共通
release

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

reset

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

すべて折りたたむ

ヘリカル インターリーバーおよびデインターリーバー オブジェクトを作成します。

interleaver = comm.HelicalInterleaver('GroupSize',2,'NumColumns',3, ...
    'InitialConditions',-1);
deinterleaver = comm.HelicalDeinterleaver('GroupSize',2,'NumColumns',3, ...
    'InitialConditions',-1);

ランダム データを生成します。データをインターリーブし、次にデインターリーブします。

[dataIn,dataOut] = deal([]);

for k = 1:10
    data = randi(7,6,1);
    intData = interleaver(data);
    deIntData = deinterleaver(intData);
    
    dataIn = cat(1,dataIn,data);
    dataOut = cat(1,dataOut,deIntData);
end

インターリーバーとデインターリーバーのペアによる遅延を求めます。

intlvDelay = finddelay(dataIn,dataOut)
intlvDelay = 6

インターリーブによる遅延を考慮し、元のデータとデインターリーブされたデータが同一であることを確認します。

isequal(dataIn(1:end-intlvDelay),dataOut(1+intlvDelay:end))
ans = logical
   1

アルゴリズム

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

拡張機能

バージョン履歴

R2012a で導入