Why file transfer speed of USB HS MSC example code is very slow?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2018-12-20 10:28 PM
I am doing a project using STM32H753 controller. When I flash USB HS MSC example code and transfer files , speed is very slow. It seems no difference between FS and HS modes. A large compressed files do not get transferred. Please help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2018-12-21 4:58 AM
Ultimately going to be constrained by speed of underlying flash memory subsystem and size of contiguous blocks being written.
If it fails it is likely because the block storage method hasn't been adequately validated.
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
2018-12-21 5:28 AM
Thank you for the reply.
I have checked the example code in the STM32H753 EVAL board. MAX speed at which file gets transfered is 355KB/s. The EVAL Board has 4bit wide SD card and USB 2.0 port. So what is the expected throughput in HS mode?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2018-12-21 5:38 AM
Full Speed should be able to sustain 700 KBps, haven't benched High Speed.
The underlying SDIO/SDMMC should be able to write between 5-10 MBps. You should benchmark the stand-alone performance as that's going to give you a ceiling.
For USB instrument so you can see the maximum block counts.
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
2018-12-21 5:47 AM
How do I test and benchmark the standalone performance? Even in FS mode I am not achieving more than 355KB|s . What has gone wrong?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2018-12-21 9:06 AM
You'd read and write block(s) while timing the operation, and use that to quantify the speed of operation. Ideally you'd also use a scheme where you validate the data patterns read and written across the media.
SPEEDTST.001
32768000 Bytes, 347893959 Cycles
18.84 MBps Read (FatFs)
1739 ms
18.84 MBps SysTick Sanity
32768000 Bytes, 347653950 Cycles
18.85 MBps Read (FatFs)
1738 ms
18.85 MBps SysTick Sanity
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
2019-01-15 11:57 PM
Sir,
I carried the speed test to USB HS MSC. It is very slow not even 1% of the achievable speed. What are the bottleneck software components because of which the speed is curtailed?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2019-01-16 12:30 AM
Can anyone share me the clock configuration for USB MSC in HS mode?
Does writing multiple blocks improve speed over writing single block? If yes how to write multiple blocks?
