Forum Discussion
mvemp
New Contributor
8 years agoDoes the local memory usage increase with banking and coalescing?
Does the number of M20K blocks increase when compiler automatically banks or increases the bank width? Eg:- int sample[4] [32]; int a[4][32]; int b[4][32]; #pragma unroll for(j = 0; j < 4; j++...
HRZ
Frequent Contributor
8 years agoI am surprised the report is not correctly reflecting the implemented size of the buffer. Anyway, based on the report, the bank width is 2048 bits, while the maximum width of the Block RAM ports is 40 bits. This means that a replication factor of at least 52 is required to provide enough ports to implement the buffer. Furthermore, each instance of the buffer is 8192 bytes which requires 3-4 Block RAMs (depending on the depth) to implement. Since the Block RAMs are double-pumped, the number of required Block RAMs will then be halved. I think 103 Block RAMs in the end is a reasonable number.