Figure 38. FP16 Vector Three Mode
fp32_chainout[31:0]
fp32_adder_a[31:0]
fp16_mult_top_a[15:0]
fp32_result[31:0]
Input
Register
Bank
Top
Multiplier
Adder
*Pipeline
Register
*Pipeline
Register
*Pipeline
Register
*Pipeline
Register
*Pipeline
Register
Output
Register
Bank
*This block diagram shows the functional representation of the DSP block. The pipeline registers are embedded within the various circuits of the DSP block.
fp16_mult_top_b[15:0]
fp16_mult_bot_a[15:0]
Bottom
Multiplier
fp16_mult_bot_b[15:0]
*Pipeline
Register
Register
Adder
accumulate
fp16_mult_top_invalid
fp16_mult_top_underflow
fp16_mult_top_overflow
fp32_adder_invalid
fp32_adder_inexact
fp32_adder_overflow
fp32_adder_underflow
fp16_mult_top_inexact
fp16_mult_bot_invalid
fp16_mult_bot_underflow
fp16_mult_bot_overflow
fp16_mult_bot_inexact
fp16_adder_invalid
fp16_adder_inexact
fp16_adder_overflow
fp16_adder_underflow
fp16_mult_top_infinite(extended format)
fp16_mult_top_zero(extended format)
fp16_mult_bot_infinite(extended format)
fp16_mult_bot_zero(extended format)
fp16_adder_infinite(extended format)
fp16_adder_zero(extended format)
3.2.3. Multiple Floating-Point Variable DSP Blocks Functions
Two or more floating-point DSP blocks can perform the following:
• Multiply-add or multiply-subtract mode which uses single floating-point arithmetic
DSP if the chainin parameter is turn off
• Direct vector dot product
• Complex multiplication
3.2.3.1. Multiply-Add or Multiply-Subtract Mode
This mode performs floating-point multiplication followed by floating-point addition or
floating-point subtraction. The chainin parameter allows you to enable a multiple-chain
mode.
Table 22. Equations Applied to Multiply-Add or Multiply-Subtract Mode
Chainin Parameter Multiply-Add Mode Multiply-Subtract Mode
Disable fp32_result =
(fp32_mult_a*fp32_mult_b) +
fp32_adder_a
fp32_result =
(fp32_mult_a*fp32_mult_b) -
fp32_adder_a
Enable fp32_result =
(fp32_mult_a*fp32_mult_b) +
fp32_chainin
fp32_result =
(fp32_mult_a*fp32_mult_b) -
fp32_chainin
The floating-point multiply-adder or multiply-subtract mode supports the following
exception flags:
•
fp32_mult_invalid
•
fp32_mult_inexact
•
fp32_mult_overflow
•
fp32_mult_underflow
•
fp32_adder_invalid
3. Intel Agilex Variable Precision DSP Blocks Operational Modes
UG-20213 | 2019.04.02
Send Feedback
Intel
®
Agilex
™
Variable Precision DSP Blocks User Guide
55