AnsweredAssumed Answered

STM32F7 DTCM, DMA cache

Question asked by S A on Jun 27, 2017
Latest reply on May 4, 2018 by greenwood.greg

Hi, I am working on a 26x10 RGB LED matrix connected to a STM32F746 through SPI.

The data is located inside the DTCM memory (0x200003E0 address to be precise) and sent through DMA to the shift registers. It all works as long as the Data Cache is disabled.


If I enable the data cache it messes everything up.


If then I clean the cache of the particular location AFTER sending the data through DMA then it works again.


Question is, as long as I understand, the DTCM is not cacheable plus the data to the peripheral will be send through the AHBS bus without involving the Dcache at all...

I fail to see why cleaning the cache after calling the DMA transfer makes everything work again and why actually the cache is affecting this operation at all.


Any help will be appreciated!