英特尔Agilex® 7可变精度DSP模块用户指南

ID 683037
日期 4/11/2023
Public
文档目录

3.2.2.5. FP16 Vector One模式

该模式对从先前可变精度DSP模块来的chainin输入执行两个半精度乘法的求和。该输出是一个单精度浮点值,并被馈入chainout。

表 19.  应用于FP16 Vector One模式的方程式
Chainin参数 带有浮点加法的Vector One 带有浮点减法的Vector One
Disable

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

fp32_chainout = fp32_adder_a

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

fp32_chainout = fp32_adder_a

Enable

fp32_result = (fp16_mult_top_a * fp16_mult_top_b) + (fp16_mult_bot_a * fp16_mult_bot_b) + fp32_chainin

fp32_chainout = fp32_adder_a

fp32_result = (fp16_mult_top_a * fp16_mult_top_b) - (fp16_mult_bot_a * fp16_mult_bot_b) - fp32_chainin

fp32_chainout = fp32_adder_a

以下是flushed和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
图 36. FP16 Vector One模式