H723..H735: functions in ITCM, strange behaviour
Heyho,
I recently found that I'm not using ITCM RAM at all, then started to put heap and stack there.
No problems so far.
Then I copied some functions there, and all went well - until I found some strange behaviour:
- 1..4 SAI RX DMA transfers running, circular mode
- when all these transfers are complete for each SAI, a function is called to copy the complete DMA buffer from internal AXI SRAM into the big buffer in HyperRAM
- also in this function a packet counter (a global u32 in DTCM) is incremented once
- but when this function is in ITCM, this packet counter increments for each SAI active, but there are no extra packets
Further info:
- instruction cache: in use
- data cache: not used
Is there any guideline what to put in ITCM, what are the limits, etcpp. ?
