Main Content

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

パイプライン パラメーター

このドキュメンテーション ページでは、[コンフィギュレーション パラメーター] ダイアログ ボックスの [HDL コード生成][最適化][パイプライン] タブにあるコンフィギュレーション パラメーターについて説明します。この節のパラメーターを使用することで、ターゲット デバイスでの設計のタイミングを改善できます。

設計上の遅延分散を許可

分散型パイプライン方式および遅延吸収の最適化によるモデル内の設計遅延の移動を許可するかどうかを指定します。

設定

既定の設定: オン

オン

分散型パイプライン方式および遅延吸収によるモデル内の設計遅延の移動または吸収を許可します。

オフ

分散型パイプライン方式および遅延吸収でモデル内の設計遅延を移動または吸収できないようにします。

コマンド ライン情報

プロパティ: AllowDelayDistribution
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に AllowDelayDistribution 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'AllowDelayDistribution','off')
  • hdlset_param を使用してモデルのパラメーターを無効にしてから、makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','AllowDelayDistribution','off')
    makehdl('sfir_fixed/symmetric_fir')

参考

パイプライン分散の優先順位

分散型パイプライン方式および遅延吸収の最適化の優先順位を指定します。

設定

既定の設定: 数値の整合性

数値の整合性

数値の整合性を優先します。

このオプションを指定すると、保守的なリタイミング アルゴリズムが使用されるため、元の設計との機能的等価性が不明な場合に、コンポーネント内でレジスタを移動させることがありません。

パフォーマンス

数値の整合性よりも、パフォーマンスを優先します。

設計で高いクロック周波数が必要とされており、Simulink® の動作と生成されたコードの動作が初期化サイクル中に厳密に一致していなくても良い場合は、このオプションを使用してください。このオプションを指定すると、アグレッシブなリタイミング アルゴリズムが使用されるため、元の設計との機能的等価性が不明な場合でも、コンポーネント内でレジスタを移動させられます。このオプションを使用すると、分散型パイプラインで安定したパスにパイプライン レジスタが挿入されないようにすることで面積を削減することもできます。

コマンド ライン情報

プロパティ: PipelineDistributionPriority
型: 文字ベクトル
値: 'Numerical Integrity' | 'Performance'
既定の設定: 'Numerical Integrity'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に PipelineDistributionPriority 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'PipelineDistributionPriority','Performance')
  • hdlset_param を使用してモデルのパラメーターを設定してから、makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','PipelineDistributionPriority','Performance')
    makehdl('sfir_fixed/symmetric_fir')

参考

クロックレート パイプライン

設計にマルチサイクル パスが含まれている場合、クロックレート パイプラインを使用して、データ レートよりも速いクロック レートでパイプライン レジスタを挿入します。この最適化によってクロック周波数が改善され、追加のレイテンシを発生させることなく使用面積を削減します。クロックレート パイプラインは、ご使用のモデルに含まれる既存の設計遅延には影響を与えません。合成ツールのマルチサイクル パスの使用による制約への代替方法です。

設定

既定の設定: オン

オン

マルチサイクル パスにパイプライン レジスタをクロック レートで挿入します。

オフ

マルチサイクル パスにパイプライン レジスタをデータ レートで挿入します。

依存関係

1 より大きい [オーバーサンプリング係数] を指定するか、[Simulink のレートを実際のハードウェアのレートとして扱う] を選択する場合、[クロック レート パイプライン] チェック ボックスを選択していることを確認します。クロックレート パイプラインは、モデルの中で低速な同一のデータ レートで実行される領域を特定し、Delay ブロックまたはレート変換が発生するブロックによって区切られます。コード ジェネレーターは、これらの領域の入力に Repeat ブロックを、出力に Rate Transition ブロックを導入することで、その領域をより高速なクロック レートに変換します。

コマンド ライン情報

プロパティ: ClockRatePipelining
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に ClockRatePipelining 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'ClockRatePipelining','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','ClockRatePipelining','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

DUT 出力端子のクロック レート パイプラインを許可

データ レートではなくクロック レートで DUT から出力を渡し、可能な限り速やかに DUT 出力を生成します。

設定

既定の設定: オフ

オン

DUT 出力を可能な限り速やかにクロック レートで生成します。

オフ

DUT 出力をデータ レートで生成します。

依存関係

このパラメーターを指定するときは、[クロック レート パイプライン] チェック ボックスを選択していることを確認します。

コマンド ライン情報

プロパティ: ClockRatePipelineOutputPorts
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に ClockRatePipelineOutputPorts 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'ClockRatePipelineOutputPorts','on')
  • hdlset_param を使用する場合は、モデルのパラメーターを設定してから関数 makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','ClockRatePipelineOutputPorts','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

クロック レート パイプライン DUT 出力端子の均衡化

出力の最高レイテンシ要件を満たすと同時に DUT 出力を同期します。ロジックを有効な信号インターフェイスと連動させるときに、ロジック パスと Valid 信号のパスの出力を一致させる場合は、このオプションを適用します。

設定

既定の設定: オフ

オン

DUT 出力を同期します。

オフ

同期せずに、DUT 出力を可能な限り速やかに生成します。

依存関係

このパラメーターを有効にするには、[DUT 出力端子のクロック レート パイプラインを許可] チェック ボックスを選択します。

コマンド ライン情報

プロパティ: BalanceClockRateOutputPorts
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に BalanceClockRateOutputPorts 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'BalanceClockRateOutputPorts','on')
  • hdlset_param を使用する場合は、モデルのパラメーターを設定してから関数 makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','BalanceClockRateOutputPorts','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

分散型パイプライン方式

パイプライン レジスタの分散を有効にします。これは、設計の既存の遅延を移動してクリティカル パスを低減することによりクロック速度を上げる、速度の最適化です。この最適化によって、階層を維持しながらサブシステム内で遅延を移動します。詳細については、分散型パイプライン方式を参照してください。

設定

既定の設定: オフ

オン

設計内でパイプラインを分散します。パイプラインを分散するには、設計内でパイプラインが既に指定されている必要があります。

オフ

設計内でパイプラインを分散しません。

依存関係

設計に再分布可能な遅延が含まれている必要があります。遅延は手動で挿入するか、サブシステムまたはブロックの HDL ブロック プロパティ [InputPipeline] または [OutputPipeline] を使用して挿入できます。

コマンド ライン情報

プロパティ: DistributedPipelining
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に DistributedPipelining 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'DistributedPipelining','on')
  • hdlset_param を使用する場合は、モデルのパラメーターを設定してから関数 makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','DistributedPipelining','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

分散型パイプラインに合成推定値を使用

各コンポーネントのより正確な伝播遅延を特定するには、分散型パイプライン方式で合成タイミング推定を使用します。コンポーネントに応じて異なる重みが割り当てられ、ハードウェアに対するコンポーネントの機能がより正確に反映されます。このパラメーターを有効にすると、HDL Coder™ による HDL コードの生成とハードウェアへの展開で、設計における分散型パイプラインの精度が向上し、ターゲット デバイスのクロック周波数が最大化されます。

設定

既定の設定: オフ

オン

分散型パイプライン方式で、設計に含まれる各コンポーネントの伝播遅延の計算に合成タイミング推定を使用します。

オフ

分散型パイプライン方式で、設計に含まれる各コンポーネントの伝播遅延の計算に等しい重みを使用します。

依存関係

このパラメーターを使用するには、モデル内の少なくとも 1 つのサブシステムで分散型パイプライン方式が有効になっている必要があります。

コマンド ライン情報

プロパティ: UseSynthesisEstimatesForDistributedPipelining
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に UseSynthesisEstimatesForDistributedPipelining 設定を有効にできます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'UseSynthesisEstimatesForDistributedPipelining','on')
  • hdlset_param を使用する場合は、モデルのパラメーターを設定してから関数 makehdl を使用して HDL コードを生成する。

    hdlset_param('sfir_fixed','UseSynthesisEstimatesForDistributedPipelining','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

適応パイプライン

このパラメーターを使用して、設計内のブロックにパイプライン レジスタを挿入したり、使用面積を削減したり、ターゲット FPGA デバイスで達成可能なクロック周波数を最大化します。

設定

既定の設定: オフ

オン

設計に適応パイプライン レジスタを挿入します。HDL Coder で適応パイプラインを挿入するには、合成ツールを指定しなければなりません。

オフ

適応パイプライン レジスタを挿入しません。

依存関係

このパラメーターを指定するときは、[HDL コード生成][ターゲット] ペインで [合成ツール] を指定します。設計に乗算器がある場合は、適応パイプラインの挿入に [合成ツール][ターゲット周波数 (MHz)] を指定する。

コマンド ライン情報

プロパティ: AdaptivePipelining
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'off'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に AdaptivePipelining 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
                        'AdaptivePipelining','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','AdaptivePipelining','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

ルックアップ テーブルを RAM にマッピングする

このパラメーターを使用して、設計内のルックアップ テーブルをブロック RAM にマッピングし、ターゲット FPGA デバイスにおける使用面積を削減します。

設定

既定の設定: オン

オン

設計内のルックアップ テーブルを RAM にマッピングします。

オフ

設計内のルックアップ テーブルを RAM にマッピングしません。

コマンド ライン情報

プロパティ: LUTMapToRAM
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に LUTMapToRAM 設定を使用できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'LUTMapToRAM','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','LUTMapToRAM','on')
    makehdl('sfir_fixed/symmetric_fir')