coder.hdl.pipeline
MATLAB 式の出力にパイプライン レジスタを挿入
説明
out = coder.hdl.pipeline(
は、生成された HDL コード内の expr
)expr
の出力に 1 つのパイプライン レジスタを挿入します。このプラグマは MATLAB® のシミュレーション動作には影響しません。
このプラグマは、パイプライン レジスタの挿入位置を正確に指定する場合に使用します。たとえば、MATLAB 代入ステートメントでは、次のようにして coder.hdl.pipeline プラグマを指定できます。
代入ステートメントの右側全体。
部分式。
複数のプラグマを入れ子にする。
サブ関数の呼び出し。サブ関数が単一の値を返す場合に限ります。このプラグマは複数の値を返すサブ関数には指定できません。
分散型パイプラン方式を有効にした場合、HDL Coder™ でパイプライン レジスタを移動してクリティカル パスを中断できます。
式の変数のいずれかが次である場合は、HDL Coder では MATLAB 式の出力にパイプライン レジスタを挿入することはできません。
状態レジスタや RAM など、状態要素にマッピングする永続変数。
データ フィードバック ループの内部に存在する。たとえば、次のコードでは、変数
t
またはpvar
が含まれる式をパイプライン化することはできません。persistent pvar; t = u + pvar; pvar = t + v;
out = coder.hdl.pipeline(
は、生成された HDL コード内の expr
,num
)expr
の出力に num
個のパイプライン レジスタを挿入します。このプラグマは MATLAB のシミュレーション動作には影響しません。
このプラグマは、パイプライン レジスタの挿入位置を正確に指定する場合に使用します。たとえば、MATLAB 代入ステートメントでは、次のようにして coder.hdl.pipeline プラグマを指定できます。
代入ステートメントの右側全体。
部分式。
複数のプラグマを入れ子にする。
サブ関数の呼び出し。サブ関数が単一の値を返す場合に限ります。このプラグマは複数の値を返すサブ関数には指定できません。
分散型パイプラン方式を有効にした場合、HDL Coder でパイプライン レジスタを移動してクリティカル パスを中断できます。
式の変数のいずれかが次である場合は、HDL Coder では MATLAB 式の出力にパイプライン レジスタを挿入することはできません。
状態レジスタや RAM など、状態要素にマッピングする永続変数。
データ フィードバック ループの内部に存在する。たとえば、次のコードでは、変数
t
またはpvar
が含まれる式をパイプライン化することはできません。persistent pvar; t = u + pvar; pvar = t + v;
例
入力引数
バージョン履歴
R2015a で導入