制約付き出力パイプライン
制約付き出力パイプラインとは
制約付き出力パイプラインを使用すると、ブロックの出力の位置に非負の数のレジスタを指定できます。
制約付き出力パイプラインでは、レジスタは追加されません。その代わりに、制約を満たすために既存の遅延が設計内で再分配されます。HDL Coder™ で既存の遅延で制約を満たすことができない場合は、タイミング レポートに出力レジスタの必要な数と実際の数の差がレポートされます。
制約付き出力パイプラインで指定したレジスタが、分散型パイプライン方式で移動されることはありません。
制約付き出力パイプラインを使用する状況
制約付き出力パイプラインは、設計内の特定の場所にレジスタを配置する場合に使用します。これによって、設計の速度を最適化できます。
たとえば、設計のクリティカル パスのある場所が分かっていて、これを低減する場合は、制約付き出力パイプラインを使用してレジスタをクリティカル パスの特定の場所に配置できます。
制約付き出力パイプラインの要件
設計は既存の遅延またはレジスタを含まなければなりません。HDL Coder で制約を満たすにはレジスタが不足している場合、出力レジスタの必要な数と実際の数の差がレポートされます。
設計にレジスタを追加するには、入力パイプラインまたは出力パイプラインを使用します。
制約付き出力パイプラインの指定
UI を使用してブロックの制約付き出力パイプラインを指定するには、次の手順に従います。
[アプリ] タブで、[HDL Coder] を選択します。[HDL コード] タブが表示されます。Subsystem を選択し、[HDL ブロック プロパティ] をクリックします。[ConstrainedOutputPipeline] に出力端子に配置するレジスタの数を入力します。
ブロックを右クリックし、[HDL コード]、[HDL ブロック プロパティ] を選択します。[ConstrainedOutputPipeline] に出力端子に配置するレジスタの数を入力します。
制約付き出力パイプラインを指定するには、コマンド ラインで次のように入力します。
hdlset_param(path_to_block,... 'ConstrainedOutputPipeline',number_of_output_registers)
mymodel
のサブシステム subsys
の出力端子でレジスタを 6 つに制約するには、次のように入力します。hdlset_param('mymodel/subsys','ConstrainedOutputPipeline', 6)
制約付き出力パイプラインの制限
HDL Coder は、次の場所への出力パイプライン レジスタの配置に制約を付けません。
DUT サブシステムの内部。DUT にサブシステム、モデル参照またはブラック ボックス実装をもつモデル参照が含まれる場合。
任意の種類の Delay ブロックまたは最上位の DUT サブシステムの出力。