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

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

3.2.2.7. FP16 Vector Three模式

此模式执行单精度累加和两个半精度乘法的求和。

表 21.  应用于Vector Three模式的方程式
累加输入 带有浮点加法的Vector Three 带有浮点减法的Vector Three
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}

以下是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
图 38. FP16 Vector Three模式