I implemented this loop calculation in vivado HLS.
For (i = 0; i < 59; i++){
#pragma HLS unroll
tmp = C[i];
For (j = 0; j < 3; j++){
#pragma HLS unroll
tmp = tmp + A[j][i] * B[j];
}
C[i] = tmp;
}
The DSP48E utilization result is 189.
I export this module and run the synthesis in vivado.
The DSP48 utilization result is 39.
I want to know why the results are very different?