Intel Agilex® 7可変精度DSPブロック・ユーザーガイド

ID 683037
日付 10/02/2023
Public
ドキュメント目次

3.2.2.6. FP16ベクトル2モード

このモードでは、2つの半精度乗算の和を計算し、チェーンアウトに供給します。また、入力 fp32_adder_a に対して前の可変DSPブロックからのチェーンイン入力を加算または減算し、その結果を出力します。

表 20.  FP16ベクトル2モードに適用される式
チェーンイン・パラメーター ベクトル2での浮動小数点加算 ベクトル2での浮動小数点減算
無効

fp32_result = fp32_adder_a

fp32_chainout = (fp16_mult_top_a * fp16_mult_top_b) + (fp16_mult_bot_a * fp16_mult_bot_b)

fp32_result = fp32_adder_a

fp32_chainout = (fp16_mult_top_a * fp16_mult_top_b) - (fp16_mult_bot_a * fp16_mult_bot_b)

有効

fp32_result = fp32_adder_a + fp32_chainin

fp32_chainout = (fp16_mult_top_a * fp16_mult_top_b) + (fp16_mult_bot_a * fp16_mult_bot_b)

fp32_result (fp32_adder_a/fp32_chainin)

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
図 37. FP16ベクトル2モード