I am looking into some ways to accelerate some algorithms I have to deal with, one of the issues is that the data is processed from arrays but in a non-contiguous manner so I am unable to gain from mem8 type commands.
Now I am wondering if it will be quicker if I rearrange the data before processing write the results in an easier format and then shuffle the result after I am done.
The DMA controller looks l like it can all kinds of trick addressing and will do what I need, but supposing I wanted to do this from L1Data to L1Data, is this allowed, there is an internal DMA controller that seems to handle internal stuff, if that because the EDMA cannot? The IDMA controller cannot do CFG to CFG or SRAM to SRAM, are there similar rules for the EDMA (SDMA)?
Also I am a little short on L1RAM, I see the EMAC controller has 8K I could use, can I use that with EDMA/IDMA? Is it L1 speed?, and do I need to power up the EMAC to use it?
I realize I could steal a bit of L2 cache to be SRAM but it seems to have a nasty advisory in the errata in just this area (DM6433 1.3.11) so I am staying clear of that.
Chris