cancel
Showing results for 
Search instead for 
Did you mean: 

DCMI write to QSPI Flash

CHou.1
Associate II

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?

1 ACCEPTED SOLUTION

Accepted Solutions

>>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.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

View solution in original post

1 REPLY 1

>>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.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..