kovigor 6 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Господа, я был адски неправ. Ошибка заключалась в том, что я вычитывал CSD регистры до перехода в high speed. Успешно запустил 48 МГц на STM32F2 в режиме divisor bypass. Не понял, у вас на карточку подаются 48 МГц тактового сигнала вместо 24 ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mbr 0 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Не понял, у вас на карточку подаются 48 МГц тактового сигнала вместо 24 ? Почему вместо? Сначала 400 КГц 1 бит, потом конфигурирование карты, 24 МГц 4 бит, переход в high speed (если карта поддерживает) и 48 МГц. Теоретически можно 50, но у меня почему-то pll не завелась. Пример либы от стм не умеет в high speed переходить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 6 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Теоретически можно 50, но у меня почему-то pll не завелась. Ясно. Но вот как вы выставили 48МГц, если в даташите написано, что 25МГц - это предел ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mbr 0 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Ясно. Но вот как вы выставили 48МГц, если в даташите написано, что 25МГц - это предел ? Нет там такого: The USB OTG FS clock (48 MHz), the random analog generator (RNG) clock (≤ 48 MHz) and the SDIO clock (≤ 48 MHz) which are coming from a specific output of PLL (PLL48CLK) Перечитал внимательно, теперь сам вижу, почему на 50 не завелось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 6 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Нет там такого: Ну, не знаю. А как же быть вот с этой фразой из Reference Manual: "SDIO_CKis the clock to the card: one bit is transferred on both command and data lines with each clock cycle. 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)." ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mbr 0 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Ну, не знаю. А как же быть вот с этой фразой из Reference Manual: "SDIO_CKis the clock to the card: one bit is transferred on both command and data lines with each clock cycle. 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)." ? Я подозреваю, что тут говорится о физических ограничениях карт, а не самом интерфейсе и его просто забыли поправить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 6 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Я подозреваю, что тут говорится о физических ограничениях карт, а не самом интерфейсе и его просто забыли поправить. Странно. У меня Manual Doc ID 15403 Rev 4, и там на стр. 705 это написано. А в вашем Manual есть эта фраза ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mbr 0 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Странно. У меня Manual Doc ID 15403 Rev 4, и там на стр. 705 это написано. А в вашем Manual есть эта фраза ? У меня тот же самый мануал. Но подумайте сами - на уровне передачи физических сигналов разница между SD и MMC это только 4 или 8 бит данных. Так почему должно быть такое нелепое ограничение на SD? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 6 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба У меня тот же самый мануал. Но подумайте сами - на уровне передачи физических сигналов разница между SD и MMC это только 4 или 8 бит данных. Так почему должно быть такое нелепое ограничение на SD? Я им в техподдержку напишу. Гадать можно до бесконечности. Похоже, вы правы, но интересно, что скажет производитель ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flexz 0 5 ноября, 2012 Опубликовано 5 ноября, 2012 · Жалоба Ну вот и я добрался до железа с HS USB :) Результаты очень даже радуют. На рам-диске (в озу контроллера) в режиме Mass-Storage сходу получилось 30МБ/с, с zero copy - уже 35, это без файловой системы, прямой доступ к диску. После устранения оверхеда в лице mass-storage, удалось раскачать до 42МБ/с, правда этот вариант несколько искусственный, т.к. проц просто непрерывно передает большие блоки, но для оценки максимальной достижимой производительности - сойдет. Еще что интересно - на таких скоростях похоже уже начинает оказывать влияние контроллер хоста. Указанные выше цифры были получены при подключении к USB 3.0 порту компа, в 2.0 портах скорость на 3-6 МБ/с ниже. Понятное дело, что HS/SS ни при чем, дело либо в организации самого контроллера, либо производительности шины на которой он сидит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dubb 0 7 ноября, 2012 Опубликовано 7 ноября, 2012 (изменено) · Жалоба Как я понял, Вы все используете USB в режиме Device? А кто-нибудь тестил USB HS в режиме, когда контроллер - хост? Если да, то какие скорости удалось получить? Сильно-ли пришлось пилить существующие экзамплы? Спасибо Изменено 7 ноября, 2012 пользователем dubb Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flexz 0 7 ноября, 2012 Опубликовано 7 ноября, 2012 · Жалоба Да, пока только девайс. Хост еще вообще не смотрел, но в ближайшей перспективе буду, как нарисуется вторая плата. Планируется соединить две STM32F4 одну хостом, другую девайсом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flexz 0 2 декабря, 2012 Опубликовано 2 декабря, 2012 · Жалоба Добрался наконец-то до хоста. F4 с флешкой, судя по первым экспериментам скорость упирается в производительность флешки. Пробовал три штуки: 1. Довольно тормозная флешка Emtec. Комп ее пишет на скорости где-то 2.7-2.9МБ/с, процессор - 2.5 2. СДшка через ридер, компе 8МБ/с, проц - 7.5 3. Большая и шустрая флешка 32гига, на компе пишется со скоростью 20-22МБ/с в HS режиме почему-то не пошла. Проц ее видит, можно посмотреть каталоги, но при попытке создать файл - он создается, но в него ничего не пишется, функция записи тупо повисает. Где именно пока не разбирался. В FS режиме все три показывают скорость в районе 0.7-0.9 МБ/с. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mbr 0 3 декабря, 2012 Опубликовано 3 декабря, 2012 · Жалоба Проц ее видит, можно посмотреть каталоги, но при попытке создать файл - он создается, но в него ничего не пишется, функция записи тупо повисает. Где именно пока не разбирался. У меня такое было, когда не было включено увеличенное энергопотребление по CMD6. По usb-hs скорости впечатляют. Это c какой частотой микроконтроллера получено? Какая обвязка? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flexz 0 3 декабря, 2012 Опубликовано 3 декабря, 2012 · Жалоба Так у меня обычная USB-Flash, только во втором тесте подрубал СД-шку через ридер. Частота полная - 168МГц, физика - USB3300. У меня есть подозрения, что где-то в HS-библиотеке бага-таки есть, т.к. еще когда я гонял эмулятор ком-порта - передача рандомно висла. Так же прога, но в FS режиме работала нормально часами. Надо копаться в этом деле с отладчиком, а времени нету пока. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться