Visible to Intel only — GUID: mil1659542923888
Ixiasoft
Visible to Intel only — GUID: mil1659542923888
Ixiasoft
2.4. Intel® FPGA AI Suite IP Block Configuration
The Intel® FPGA AI Suite IP block has many important parameters that describe arithmetic precision, feature set, size of various modules (such as the PE Array), and details regarding the internal buses and the external AXI interface.
Configurable parameters are specified in the Architecture Description (.arch) file, as described in Architecture Description File Format for Instance Parameterization and Architecture Description File Parameters.
The table below shows the major parameters, some of which are not configurable, that describe the IP block.
Common Parameter Name |
Description |
Valid Range |
---|---|---|
c_vector (CVEC) |
Size of the dot product performed by each PE in the PE Array. Typically optimized when generating an optimized architecture with the Intel® FPGA AI Suite compiler. |
[4,8,16,32] |
k_vector (PE KVEC) |
Number of PEs in the PE Array |
[4-128] Must be a multiple of c_vector |
N/A | Number of auxiliary modules connecting to the crossbar (XBAR) |
[1,2] |
pool k_vector (Pool KVEC) |
Width of the pool interface. Typically optimized when generating an optimized architecture with the Intel® FPGA AI Suite compiler. |
[1,2,4,8,16,32] |
max_window_height max_window_width |
Size of the pooling window |
[3-7] |
activation k_vector (Activation KVEC) |
Width of the activation interface. Typically optimized when generating an optimized architecture with the Intel® FPGA AI Suite compiler. |
[2,4,8,16,32] |
enable_clamp | Enables clamp activation function | [true, false] |
enable_relu | Enables ReLU activation function | [true, false] |
enable_leaky_relu | Enables Leaky ReLU activation function | [true, false] |
enable_prelu | Enables PReLU activation function | [true, false] |
enable_round_clamp | Enables round clamp activation function | [true, false] |
arch_precision (PE precision) |
Precision of features and weights in the PE Array. |
"FP11" (INT7-BFP / 1s.6m.5e) "FP13AGX" (INT9-BFP / 9m.5e, twos complement) "FP16" (INT12-BFP / 1s.10m.5e) "INT8AGX" (8m, signed) |
PE bias add precision |
Precision of accumulator bias value in the PE Array. |
fp16 |
PE accumulator precision |
Precision of the accumulators in the PE Array. |
fp32 |
PE drain precision |
Precision of values drained from the PE Accumulators to the XBAR and AUX Modules. |
fp16 |
PE drain width |
Width of the output bus from the PE Array. | [2,4,8,16,32] |
PE interleave factor |
Multi-threading factor for the features x filters in the PE array accumulators. |
Intel Agilex® 7 devices: 2x3, 3x2, 5x1, 1x5 Intel® Arria® 10 devices: 2x2, 4x1, 1x4 Intel® Stratix® 10 devices: 2x3, 3x2, 5x1, 1x5 1×1 supported for graphs with no bias |
Aux module precision |
Precision of the Aux Modules |
fp16 |
Memory port width |
Width of memory port |
[64, 128, 256, 512] |
enable_debug | Toggle the Intel® FPGA AI Suite debug network that includes interface profiling counters that can be queried with the CSR. Enabled by default. |
[true, false] |
The major constraints include:
- PE KVEC must be a multiple of CVEC
- PE KVEC must be divisible by XBAR and AUX KVECs
- PE drain width must be equal to XBAR KVEC
Graph limitations include:
- Convolution filter size: 1×1 -> 28×28, including asymmetric
- Convolution filter stride: 1 .. 15
- No limitation on convolution padding
- The limits of the depthwise layers are the same as normal convolution. Depthwise convolution is handled with software emulation using regular convolution passes.
The maximum supported DDR size is 4GB.