DCMI write to QSPI Flash
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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.
- Labels:
-
DCMI
-
QSPI
-
STM32F7 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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.
Up vote any posts that you find helpful, it shows what's working..
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎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.
Up vote any posts that you find helpful, it shows what's working..
