Description
The tool is informing the user of incorrect usage of the interface pragma.
Explanation
For mapping to a single bundle there are certain rules and the current code is violation one such rule mentioned below.
All the arguments mapped to the same interface bundle should have the same interface width else automatic burst interface is disabled.
Solution
This example shows an incorrect use of the bitwidth:
- Incorrect
bitwidth:
void cnn( long *pixel, // Input pixel int *weights, // Input Weight Matrix int *out, // Output pixel ... // Other input or Output ports #pragma HLS INTERFACE m_axi port=pixel offset=slave bundle=gmem #pragma HLS INTERFACE m_axi port=weights offset=slave bundle=gmem1 #pragma HLS INTERFACE m_axi port=out offset=slave bundle=gmem
- Correct
bitwidth:
void cnn( long *pixel, // Input pixel int *weights, // Input Weight Matrix long *out, // Output pixel ... // Other input or Output ports #pragma HLS INTERFACE m_axi port=pixel offset=slave bundle=gmem #pragma HLS INTERFACE m_axi port=weights offset=slave bundle=gmem1 #pragma HLS INTERFACE m_axi port=out offset=slave bundle=gmem