реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Скорость High Speed USB на STM32F2/F4
Flexz
сообщение Oct 2 2012, 12:20
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 252
Регистрация: 9-10-08
Из: Московская обл.
Пользователь №: 40 797



Кто уже реализовывал, каких скоростей удалось добиться? Зависит ли производительность от микросхемы физического уровня?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Oct 2 2012, 12:44
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Flexz @ Oct 2 2012, 15:20) *
Кто уже реализовывал, каких скоростей удалось добиться? Зависит ли производительность от микросхемы физического уровня?

На основе модернизированной библиотеки от ST для Mass-Storage лично мне удавалось получать чуть более восьми Мегабайт в секунду (в качестве носителя использовалась SD-карточка; если же организовать "диск" прямо в памяти МК, то можно легко получить 20 Мегабайт, и даже больше). Другой специалист, переписавший код от ST, по его словам, получил порядка 12 Мегабайт, но я лично этого не видел ...
P.S. От PHY это едва ли сильно зависит. В обоих описанных мною случаях речь идет о USB3300 ...
Go to the top of the page
 
+Quote Post
sonycman
сообщение Oct 2 2012, 14:03
Сообщение #3


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(kovigor @ Oct 2 2012, 16:44) *
На основе модернизированной библиотеки от ST для Mass-Storage лично мне удавалось получать чуть более восьми Мегабайт в секунду...

А это для чтения или записи?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Oct 2 2012, 14:27
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(sonycman @ Oct 2 2012, 17:03) *
А это для чтения или записи?

Скорости весьма близки в обоих направлениях. "Бутылочное горлышко" в данном случае - не USB, а интерфейс SDIO в МК, который не позволяет при обмене с карточкой поднять тактовую частоту этого обмена выше 12 МГц ...
Go to the top of the page
 
+Quote Post
Flexz
сообщение Oct 2 2012, 17:22
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 252
Регистрация: 9-10-08
Из: Московская обл.
Пользователь №: 40 797



Цитата(kovigor @ Oct 2 2012, 16:44) *
На основе модернизированной библиотеки от ST для Mass-Storage...

"модернизированной" - это в смысле просто допиленной/оптимизированной под себя, или косяки какие-то были?
PS а 20+МБ это гуд)
Go to the top of the page
 
+Quote Post
Allregia
сообщение Oct 2 2012, 20:32
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(kovigor @ Oct 2 2012, 16:27) *
Скорости весьма близки в обоих направлениях. "Бутылочное горлышко" в данном случае - не USB, а интерфейс SDIO в МК, который не позволяет при обмене с карточкой поднять тактовую частоту этого обмена выше 12 МГц ...

А у Ф4 разве не 25 ?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Oct 2 2012, 21:33
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(Flexz @ Oct 2 2012, 20:22) *
"модернизированной" - это в смысле просто допиленной/оптимизированной под себя, или косяки какие-то были?
PS а 20+МБ это гуд)

Ошибок не было. Но я, например, доработал механизм обмена, в результате проект стал давать указанную мной скорость против изначально наблюдавшихся пяти с чем-то Мегабайт ...

Цитата(Allregia @ Oct 2 2012, 23:32) *
А у Ф4 разве не 25 ?

Прошу прощения. Поднял старые записи. Там было на самом деле не 12 МГц тактовой, а 24 ...
Go to the top of the page
 
+Quote Post
sonycman
сообщение Oct 3 2012, 01:45
Сообщение #8


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(kovigor @ Oct 3 2012, 01:33) *
Прошу прощения. Поднял старые записи. Там было на самом деле не 12 МГц тактовой, а 24 ...

То есть у топовых STM32 получился кастрированный SDIO, который не работает в режиме High Speed - 48 МГц?
Go to the top of the page
 
+Quote Post
kovigor
сообщение Oct 3 2012, 04:18
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(sonycman @ Oct 3 2012, 04:45) *
То есть у топовых STM32 получился кастрированный SDIO, который не работает в режиме High Speed - 48 МГц?

Да, 48 выставить нельзя. 25 максимум, насколько я помню. Отсюда проблема со скоростью. Это для STM32F2xx. Возможно, для STM32F4xx эта проблема уже решена ...
Go to the top of the page
 
+Quote Post
Allregia
сообщение Oct 3 2012, 06:05
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Цитата(sonycman @ Oct 3 2012, 03:45) *
То есть у топовых STM32 получился кастрированный SDIO, который не работает в режиме High Speed - 48 МГц?


25МГц "by default", но там есть какая-то хитрая фраза про более высокую частоту. У меня пока руки не дошли разобраться.
Go to the top of the page
 
+Quote Post
Flexz
сообщение Oct 3 2012, 07:06
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 252
Регистрация: 9-10-08
Из: Московская обл.
Пользователь №: 40 797



про сдшки в обоих мануалах (на 2 и 4) написано ровно одно и тоже
Цитата
The clock frequency can vary between 0 MHz and 20 MHz (for a
MultiMediaCard V3.31), between 0 and 48 MHz for a MultiMediaCard V4.0/4.2, or between
0 and 25 MHz (for an SD/SD I/O card).

Чем вызвано ограничение для SD - непонятно.
Go to the top of the page
 
+Quote Post
MBR
сообщение Oct 3 2012, 18:48
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 26-09-10
Пользователь №: 59 748



У меня получилось USB порядка 20 мб/с при диске в памяти. 10 мб/с при работе с SDIO. Скорость может отличаться в обе стороны при разных картах. pll тактуется на 48 мгц, обмен по шине - 24. Максимум для существующих карт - 25 мгц. В теории есть 50 и 100 мгцовые карты, но я в продаже не видел, да и не уверен, что по вольтажу совместимы. STM32F215

Код свой. Используется конвеер и ртос. Сделано в рамках проекта mkernel. В ближайшее время выложу в git.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 3 2012, 19:19
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(MBR @ Oct 3 2012, 22:48) *
В теории есть 50 и 100 мгцовые карты, но я в продаже не видел, да и не уверен, что по вольтажу совместимы.

Почти все продающиеся сейчас SD-карты - 50MHz и 2.7-3.6V
Go to the top of the page
 
+Quote Post
sonycman
сообщение Oct 3 2012, 19:38
Сообщение #14


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(MBR @ Oct 3 2012, 22:48) *
Максимум для существующих карт - 25 мгц. В теории есть 50 и 100 мгцовые карты, но я в продаже не видел...

А как вы определили, что в продаже карты только на 25 МГц? rolleyes.gif
У меня все SDHC карты, купленные за последние годы, без проблем работают на 48-50 МГц со скоростями до 15 МБ\сек.
Go to the top of the page
 
+Quote Post
MBR
сообщение Oct 9 2012, 07:53
Сообщение #15


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 26-09-10
Пользователь №: 59 748



Господа, я был адски неправ. Ошибка заключалась в том, что я вычитывал CSD регистры до перехода в high speed. Успешно запустил 48 МГц на STM32F2 в режиме divisor bypass. Скорость выросла значительно. Протестирую и отпишусь о результатах.

Итого: 17 МБ/с на Qumo 16GB class 10, против 11 на 24 МГц
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 14:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016