Jump to content

    
korotaev

STM32H743 mass storage

Recommended Posts

1 minute ago, Andreas1 said:

Да

Без транслятора можно до 50М поднимать, переключив режим карточки. Не переключая - 25. Но скорость передачи на 50М была около 13..15мбайт.

Может УСБ не в HS режиме? Или устройство композитное? При MSD+CDC у меня скорость почему-то тоже значительно падала по вине хоста. Он просто не запрашивал данные, видимо оставляя слоты для CDC

Спасибо за ответы. Обнадёжили. USB в HS. Устройство не композитное (USB флэшка). На всякий случай проверю настройки ещё раз.

Share this post


Link to post
Share on other sites
9 hours ago, mantech said:

Если б было не в HS, то макс скорость упала бы до 1 Мбайт\сек

Уже и посмотрел USB сниффером: "USB HS v.2.0". Непонятна большая незаполненность трафика при обмене данными: при записи 5%, при чтении примерно 15%. 

Andreas1, скажите, пжл, Вы файлы на свой mass storage (на STM32h743) пишите/читаете средствами windows, например, проводником или своей программой? 

 

Share this post


Link to post
Share on other sites
34 minutes ago, korotaev said:

Уже и посмотрел USB сниффером: "USB HS v.2.0". Непонятна большая незаполненность трафика при обмене данными: при записи 5%, при чтении примерно 15%. 

Andreas1, скажите, пжл, Вы файлы на свой mass storage (на STM32h743) пишите/читаете средствами windows, например, проводником или своей программой? 

 

Посмотрел осциллографом на шину USB. При записи файлов с ПК на масс сторедж вижу на USB по два коротких пакета через каждые 2 микросекунды. Т.е. Проводник отправляет свои запросы часто, а тормозит обмен данными (SD карта + STM32H743). Вернее сказать, криво написанный мною код.

Share this post


Link to post
Share on other sites

Проводником. Подобная ситуация была при композитном устройстве, но в причинах не разбирался.

А каким снифером пользуетесь? Раньше пользовал USBlyzer , но он сильно глючит на АМД

 

Share this post


Link to post
Share on other sites
1 hour ago, Andreas1 said:

Проводником. Подобная ситуация была при композитном устройстве, но в причинах не разбирался.

А каким снифером пользуетесь? Раньше пользовал USBlyzer , но он сильно глючит на АМД

 

Free Device Monitoring Studio. Пользуюсь крайне редко. Проблем с USB уже давно нет. Генерю код Кубом, потом совсем немного дорабатываю USB код для своей задачи.

В устройстве (в котором не могу сделать SD быстрым в режиме флэшки) с драйвером libUSB на стороне ПК получаю скорости передачи данных до 26 МБайт/сек.  

Share this post


Link to post
Share on other sites

По документу AN5200 в Кубе в КлокКонфиге "to SDMMC1" это клок узла, отвечающего за работу с SDMMC?

A клок на карту SDMMC_CK выбирается делителем этой частоты? 

Я попробовал подать частоту на встроенный контроллер равную 120 МГц (вроде можно до 200 МГц), а на карту клок, равный 30 МГц.

Так Инициализация карты выдала ошибку. 

Share this post


Link to post
Share on other sites

Я хз, что в ваших кубах. На SDMMC подаю 200М и далее делителем выбираю частоту от 300 кГц до 100М в зависимости от стадии инициализации карты и ее возможностей. Новая, но китайская карточка на 8Гб даже в high speed не может судя по CMD6 и  на нее только 25М  подаю.

Share this post


Link to post
Share on other sites
On 3/13/2021 at 6:30 PM, Andreas1 said:

Я хз, что в ваших кубах. На SDMMC подаю 200М и далее делителем выбираю частоту от 300 кГц до 100М в зависимости от стадии инициализации карты и ее возможностей. Новая, но китайская карточка на 8Гб даже в high speed не может судя по CMD6 и  на нее только 25М  подаю.

Попробовал подать разные комбинации частот на ядро SDMMC (Kern) и на SD карту (SDMMC_CK). Частоту для SD карты контролировал осциллографом

Kern/SDMMC_CK:  200/50 МГц, 50/50 МГц, 2/2 МГц (именно два/два МГц).

Получил удручающий и совсем неожиданный результат. Скорость записи в режиме Polling одинаковая для всех указанных комбинаций -  350...500 кБайт/сек.

ДМА режим также не улучшил скорость записи. 

Что-то явно делаю не так? Голова уже скоро взорвётся.

Share this post


Link to post
Share on other sites
8 часов назад, korotaev сказал:

Что-то явно делаю не так?

Может много ошибок обмена данными, проводники от проца до карты перекручены, говорят, что нужны подтягивающие резисторы, хотя у меня без них работает...

Share this post


Link to post
Share on other sites
9 hours ago, mantech said:

Может много ошибок обмена данными, проводники от проца до карты перекручены, говорят, что нужны подтягивающие резисторы, хотя у меня без них работает...

Подтягивающие резисторы стоят, длина линий связи SD карты с микроконтроллером примерно 5 см, выровнены на +/- 1 мм.

Share this post


Link to post
Share on other sites
On 3/15/2021 at 11:35 PM, mantech said:

Может много ошибок обмена данными, проводники от проца до карты перекручены, говорят, что нужны подтягивающие резисторы, хотя у меня без них работает...

Mantech, скажите, пжл, в режиме USB mass stotage какие скорости записи/чтения одного большого файла Вы получаете?

Andreas1, можно задать Вам несколько вопросов на личную почту? 

 

Share this post


Link to post
Share on other sites
6 минут назад, korotaev сказал:

режиме USB mass stotage какие скорости записи/чтения одного большого файла Вы получаете?

Чтение блоками по 16кбайт - 22-25Мбайт\сек (процессор IMX6S EHCI контроллер)

Share this post


Link to post
Share on other sites
20 minutes ago, mantech said:

Чтение блоками по 16кбайт - 22-25Мбайт\сек (процессор IMX6S EHCI контроллер)

Спасибо за информацию. Я всё-таки про микроконтроллер STM32H743ii ... Никак не могу увеличить скорость чтения/записи.

Share this post


Link to post
Share on other sites
54 минуты назад, korotaev сказал:

Я всё-таки про микроконтроллер STM32H743i

Я на стмовском "недо"усб что-то делал лет 6 назад, на сколь знаю, они родили пару моделек с встроенной физикой HS, но с такими работать не удалось, а все остальное с FS в 21м веке считаю позором этой конторы...

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.