ザイリンクス AddSub ブロックは、加減算器をインプリメントします。演算は、加算または減算に固定するか、サブ モード信号を使用して動的に変更できます。
ブロック パラメーター
Simulink モデルでブロックのアイコンをダブルクリックすると、[Block Parameters] ダイアログ ボックスが開きます。
- Basic タブ
-
Basic タブには、次のパラメーターがあります。
- Operation
- ブロックの演算を加算、減算、または加減算に指定します。加減算を選択した場合、ブロックの演算はサブ入力ポートにより決定されます。サブ入力ポートは、ブール信号で駆動する必要があります。サブ入力が 1 の場合、ブロックで減算が実行されます。それ以外の場合は、加算が実行されます。
- Provide carry-in port
- キャリーイン ポート (cin) を有効にします。
- Provide carry-out port
- キャリーアウト ポート (cout) にアクセスできるようにします。キャリーアウト ポートは、User defined 精度を選択し、入力と出力が符号なしで、出力の整数ビット数が x の場合にのみ使用可能です。ここで、x = max (整数ビット数 a, 整数ビット数 b) です。
- Latency
- Latency の値は、ブロックの出力を遅延させるサンプル周期数を指定します。1 サンプル周期が、対応する FPGA インプリメンテーションの複数クロック サイクルに対応する場合があります (ハードウェアが Simulink モデルに対してオーバークロックされている場合)。Model Composer では、(下で説明する Implementation タブで) Pipeline for maximum performance オプションを選択していない場合、広範囲のパイプライン処理は実行されません。追加のレイテンシは通常、ブロックの出力のシフト レジスタとしてインプリメントされます。
- Output タブ
-
- Precision
-
固定小数点演算の出力精度を指定します。浮動小数点演算は、常に Full 精度です。
- Full
- 結果をエラーなしで表すのに十分な精度が使用されます。
- User Defined
- 全精度が必要ない場合は、このオプションで合計ビット数または小数部のビット数を減らすことができます。
- Fixed-point Output Type
-
- Arithmetic Type
-
- Signed (2’s comp)
- 出力は符号付き (2 の補数) の値です。
- Unsigned
- 出力は符号なしの値です。
- Quantization
- Overflow および Quantization を参照してください。
- Overflow
- Overflow および Quantization を参照してください。
- Implementation タブ
-
Implementation タブには、次のパラメーターがあります。
- Use behavioral HDL (otherwise use core)
- ブロックを合成可能な HDL としてインプリメントします。これにより、ダウンストリームの論理合成ツールによるパフォーマンスまたはエリアを優先した最適化の柔軟性が最大になります。注記: 浮動小数点演算には、ブロックで常に浮動小数点演算子コアが使用されます。
- Core Parameters
-
- Pipeline for maximum performance
-
ザイリンクス LogiCORE は、内部パイプライン処理することにより、エリアよりも速度を優先して最適化できます。このオプションを選択すると、許容される最大レイテンシに達するまで、ユーザー定義のレイテンシがすべてコアに挿入されます。Pipeline for maximum performance オプションが選択されておらず、レイテンシが 0 より長い場合、コアに出力レジスタが 1 つ配置され、コアの出力にレイテンシが追加されます。
Pipeline for maximum performance オプションは、パイプライン レジスタを最後にだけではなくブロック全体に追加し、レイテンシが分散されるようにします。これは、デザインの厳しいタイミング制約を満たすのに役立ちます。
- Implement using
- コア ロジックをファブリックにインプリメントするか (Fabric)、ターゲット デバイスで DSP48 が使用可能な場合に DSP48 にインプリメントするか (DSP48) を選択します。デフォルトは Fabric です。
このブロックで使用されるその他のパラメーターについては、[Block Parameters] ダイアログ ボックスの共通オプション を参照してください。