AnsweredAssumed Answered

DMA vs. Core access to internal memory (Q about statement in Hardware reference)

Question asked by rkn on Feb 23, 2015
Latest reply on Mar 19, 2015 by jobo23



with my question I'm referring to page 2-2 in ADSP-2137x-hwr_rev2.2.pdf.

There is written:


  1. The multi-bank architecture of the processor’s internal memory allows the core and IOP to simultaneously access the internal memory if the accesses are to different memory banks. This means that DMA transfers to internal memory do not impact core performance. The processor core continues to perform computations without penalty.



Do I understand it right, that if I let DMA and core access to the same memory bank (but not the same memory location) that this will reduce the core performance?

So let's make a little example for the 369:


In my LDF I define:

seg_dmda   { TYPE(DM RAM) START(0x000b8000) END(0x000bdfff) WIDTH(32) }

seg_i2s   { TYPE(DM RAM) START(0x000e0000) END(0x000e1def) WIDTH(32) }

the core accesses the segment seg_dmda in memory block 1 and the sports access seg_i2s via DMA in block 3. This should be ok and no performance losses. Right?


But if I would move seg_i2s to block 1 I'll get performances losses due to simultaneous access of core and DMA to the same memory block. Right?


What about program code. Should it also be in another memory block then the DMA accessed locations?