pulp-platform / pulp_soc

pulp_soc is the core building component of PULP based SoCs
Other
78 stars 81 forks source link

Fixes #40 #41

Closed meggiman closed 3 years ago

meggiman commented 3 years ago

This commit fixes a serious bug in the way the address bits for the interleaved memory banks are extracted from the 32-bit TCDM addresses. For the interleaved memory space, we have to remove the 2 LSBs since the SRAMs are 32-bit word aligned while TCDM uses byte addressing. However, in addition to that, we also have to remove $clog2(Nr_banks) additional LSBs since those bits are used to select the memory bank in interleaved addressing.