2021-07-12 11:26 AM
Just wondering if anyone has any insight or demo code regarding being able to write JPEG image data coming from the DCMI directly to QSPI Flash without having to allocate a temporary RAM buffer on an STM32F7XXX? Is this possible?
Solved! Go to Solution.
2021-07-12 12:29 PM
>>Is this possible?
No
The QSPI Flash is not writable in a memory-mapped sense, and is also SLOW. Do some simple bandwidth test of the write speed of you average NOR Flash some time.
The DCMI has potentially very high throughput, I don't think streaming to eMMC/SD Card would be viable either.
I don't think DCMI is a throttleable interface either, so you have to be able sink data quickly.
You might be able to use a DMA double buffer, or half/full ping-pong arrangement, where you take a smaller buffer, and copy it into a different queue, or chain a list of buffers, which you are flushing to the SDMMC interface as quickly as possible (or NOR Flash you've pre-erased).
You might be able to find some optimal mix between input and output bandwidth that results in the smallest RAM buffer to accommodate that.
2021-07-12 12:29 PM
>>Is this possible?
No
The QSPI Flash is not writable in a memory-mapped sense, and is also SLOW. Do some simple bandwidth test of the write speed of you average NOR Flash some time.
The DCMI has potentially very high throughput, I don't think streaming to eMMC/SD Card would be viable either.
I don't think DCMI is a throttleable interface either, so you have to be able sink data quickly.
You might be able to use a DMA double buffer, or half/full ping-pong arrangement, where you take a smaller buffer, and copy it into a different queue, or chain a list of buffers, which you are flushing to the SDMMC interface as quickly as possible (or NOR Flash you've pre-erased).
You might be able to find some optimal mix between input and output bandwidth that results in the smallest RAM buffer to accommodate that.