Hi,
i have a K81 with QSPI and some ADC code that should run from the QSPI.
My first test gives some strange results, from internal flash averything runs ok, but when i move the IRQ handler to QSPI a simple LPUART communication lost some characters, sometimes.
My question is, can i run any code, even a high rate IRQ handler, from QSPI (XIP) without influence other stuff?
BR
Alex
Solved! Go to Solution.
Hi Alex,
The max QSPI AHB buffer is 512 byte. If you can't put all the LPUART service code in AHB buffer, every "missed" access to the buffer causes the controller to clear the buffer and fetch QSPI_BUFxCR[ADATSZ] amount of data from the serial flash. If this happens in a high frequency, the average instruction execution speed could be slower than you image. So my suggestion is put those speed sensitive code in internal flash, or use DMA.
Regards
Jing
Hi Jing,
thank's for the info.
BR
Alex
Hi Alex,
The max QSPI AHB buffer is 512 byte. If you can't put all the LPUART service code in AHB buffer, every "missed" access to the buffer causes the controller to clear the buffer and fetch QSPI_BUFxCR[ADATSZ] amount of data from the serial flash. If this happens in a high frequency, the average instruction execution speed could be slower than you image. So my suggestion is put those speed sensitive code in internal flash, or use DMA.
Regards
Jing