このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。
1. インテル® Agilex™ 可変精度DSPブロックの概要
2. インテルAgilex可変精度DSPブロックのアーキテクチャー
3. インテルAgilex可変精度DSPブロックの動作モード
4. インテルAgilex可変精度DSPブロックのデザインの考慮事項
5. Native Fixed Point DSP Intel Agilex FPGA IPコア・リファレンス
6. Multiply Adder Intel® FPGA IPコア・リファレンス
7. ALTMULT_COMPLEX Intel® FPGA IPコア・リファレンス
8. LPM_MULT Intel® FPGA IPコア・リファレンス
9. LPM_DIVIDE (Divider) Intel FPGA IPコア
10. Native Floating Point DSP Intel Agilex FPGA IPリファレンス
11. インテル® Agilex™ 可変精度DSPブロック・ユーザーガイド・アーカイブ
12. インテルAgilex可変精度DSPブロック・ユーザーガイドの改訂履歴
3.2.2.7. FP16ベクトル3モード
このモードは、単精度の累積と2つの半精度の乗算の合計を実行します。
| 累積入力 | 浮動小数点加算を持つベクトル3 | 浮動小数点減算を持つベクトル3 |
|---|---|---|
| Disable | fp32_result(t) = fp32_adder_a(t) fp32_chainout = {fp16_mult_top_a * fp16_mult_top_b} + {fp16_mult_bot_a * fp16_mult_bot_b} |
fp32_result(t) = fp32_adder_a(t) fp32_chainout = {fp16_mult_top_a * fp16_mult_top_b} - {fp16_mult_bot_a * fp16_mult_bot_b} |
| Enable | fp32_result(t) = fp32_adder_a(t) + fp32_result(t-1) fp32_chainout = {fp16_mult_top_a * fp16_mult_top_b} + {fp16_mult_bot_a * fp16_mult_bot_b} |
fp32_result(t) = fp32_adder_a(t) - fp32_result(t-1) fp32_chainout = {fp16_mult_top_a * fp16_mult_top_b} - {fp16_mult_bot_a * fp16_mult_bot_b} |
以下は、フラッシュおよびbfloat16形式でサポートされている例外フラグです。
- fp16_mult_top_invalid
- fp16_mult_top_inexact
- fp16_mult_top_overflow
- fp16_mult_top_underflow
- fp16_mult_bot_invalid
- fp16_mult_bot_inexact
- fp16_mult_bot_overflow
- fp16_mult_bot_underflow
- fp16_adder_invalid
- fp16_adder_inexact
- fp16_adder_overflow
- fp16_adder_underflow
- fp32_adder_invalid
- fp32_adder_inexact
- fp32_adder_overflow
- fp32_adder_underflow
以下は、拡張形式でサポートされている例外フラグです。
- fp16_mult_top_invalid
- fp16_mult_top_inexact
- fp16_mult_top_infinite
- fp16_mult_top_zero
- fp16_mult_bot_invalid
- fp16_mult_bot_inexact
- fp16_mult_bot_infinite
- fp16_mult_bot_zero
- fp16_adder_invalid
- fp16_adder_inexact
- fp16_adder_infinite
- fp16_adder_zero
- fp32_adder_invalid
- fp32_adder_inexact
- fp32_adder_overflow
- fp32_adder_underflow
図 38. FP16ベクトル3モード