1. Intel Agilex® 7可変精度DSPブロックの概要
2. Intel Agilex® 7可変精度DSPブロックのアーキテクチャー
3. Intel Agilex® 7可変精度DSPブロックの演算モード
4. Intel Agilex® 7可変精度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 Intel® FPGA IPコアのリファレンス
10. Native Floating Point DSP Intel Agilex® FPGA IPのリファレンス
11. Intel Agilex® 7可変精度DSPブロック・ユーザーガイド・アーカイブ
12. Intel Agilex® 7可変精度DSPブロック・ユーザーガイドの改訂履歴
3.2.2.7. FP16ベクトル3モード
このモードでは、単精度の累算と、2つの半精度乗算の和の計算を行います。
| 累算入力 | ベクトル3での浮動小数点加算 | ベクトル3での浮動小数点減算 |
|---|---|---|
| 無効 | 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} |
| 有効 | 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モード