Hi, Manfred:
I'd like to use DMA transfer when data is loaded from norflash, and when data is copied within RAM. Yes, maybe whenever memcpy() is used. As my original post said, all these copy work was done in a task with the lowest priority. DMA transfer will not suffer from the interrupt caused by preemption.
Further, in practice, we find DMA copy with a larger unit such as 32 bytes shows obvious performance advantage over memcpy().
As to your doubt of wasting memory. We have a 32MB RAM. If 1000 objects are needed at once, 32kB memory would be wasted at most. It's a price I think we can afford for performance, at least we'd like to have a try.
Thank you.
Best regards.
Stephen