USE_DSP
は、合成の演算構造をどのように処理するかを指定します。デフォルトでは、タイミングの懸念事項やしきい値制限がなければ、mults
、mult-add
、mult-sub
、mult-accumulate
タイプの構造は DSP ブロックに推論するよう試みられます。
加算器、減算器、アキュムレータも DSP ブロックに含めることはできますが、デフォルトでは DSP ブロックではなくロジックにインプリメントされます。USE_DSP
制約を使用すると、これらの構造を DSP ブロックに含めることができます。
有効な値は logic
、simd
、yes
、no
です。
-
logic
は、XOR 構造を DSP 内に配置する場合に使用します。logic
を使用する場合、この属性はモジュール/アーキテクチャ レベルにのみ設定可能です。 -
simd
は、SIMD 構造体 (単一命令複数データ) を DSP に組み込むようにツールに指示するために使用されます。例は、テンプレートを参照してください。 -
yes
およびno
値で、ロジックを DSP 内に配置するかしないかを指定します。これらの値は、RTL の信号、アーキテクチャ、コンポーネント、エンティティ、およびモジュールに設定できます。優先順位は、次のとおりです。- 信号
- アーキテクチャおよびコンポーネント
- モジュールおよびエンティティ
この属性を指定しない場合は、Vivado 合成で最適な動作が決定されます。この属性は RTL または XDC で設定できます。