Intel Agilex User Manual page 51

Variable precision dsp blocks
Hide thumbs Also See for Agilex:
Table of Contents

Advertisement

3. Intel Agilex Variable Precision DSP Blocks Operational Modes
UG-20213 | 2019.04.02
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
Figure 36.
FP16 Vector One Mode
fp32_chainin[31:0]
fp32_adder_a[31:0]
fp16_mult_top_a[15:0]
fp16_mult_top_b[15:0]
fp16_mult_bot_a[15:0]
fp16_mult_bot_b[15:0]
3.2.2.6. FP16 Vector Two Mode
This mode performs a summation of two half precision multiplication and fed to
chainout. The chainin input from the previous variable DSP Block is then added or
subtracted from input
Table 20.
Equations Applied to FP16 Vector Two Mode
Chainin Parameter
Disable
Enable
Send Feedback
Input
Register
Bank
Top
*Pipeline
*Pipeline
Multiplier
Register
Register
Bottom
Multiplier
*This block diagram shows the functional representation of the DSP block. The pipeline registers are embedded within the various circuits of the DSP block.
fp32_adder_a
Vector Two with Floating-Point
fp32_result =
fp32_adder_a
fp32_chainout = (
*
fp16_mult_top_b
(
fp16_mult_bot_a
fp16_mult_bot_b
fp32_result =
fp32_adder_a
fp32_chainin
*Pipeline
*Pipeline
*Pipeline
Register
Register
Register
Adder
Adder
*Pipeline
Register
Register
fp32_chainout[31:0]
as the output result.
Vector Two with Floating-Point
Addition
fp32_result =
fp32_chainout = (
fp16_mult_top_a
) +
*
fp16_mult_top_b
*
(
fp16_mult_bot_a
)
fp16_mult_bot_b
+
fp32_result =
fp32_chainin
®
Intel
Agilex
Variable Precision DSP Blocks User Guide
Output
fp32_result[31:0]
fp16_mult_top_invalid
Register
fp16_mult_top_inexact
Bank
fp16_mult_top_overflow
fp16_mult_top_underflow
fp16_mult_top_infinite(extended format)
fp16_mult_top_zero(extended format)
fp16_mult_bot_invalid
fp16_mult_bot_inexact
fp16_mult_bot_overflow
fp16_mult_bot_underflow
fp16_mult_bot_infinite(extended format)
fp16_mult_bot_zero(extended format)
fp16_adder_invalid
fp16_adder_inexact
fp16_adder_overflow
fp16_adder_underflow
fp16_adder_infinite(extended format)
fp16_adder_zero(extended format)
fp32_adder_invalid
fp32_adder_inexact
fp32_adder_overflow
fp32_adder_underflow
Subtraction
fp32_adder_a
fp16_mult_top_a
) -
*
)
-
fp32_adder_a
continued...
51

Advertisement

Table of Contents
loading

Table of Contents