Как стать автором
Обновить

Боремся с таймаутами при использовании USB 3.0 через контроллер FX3, возникающими при определенных условиях

Время на прочтение11 мин
Количество просмотров2.8K
Всего голосов 14: ↑13 и ↓1+12
Комментарии2

Комментарии 2

Спасибо за статью!
Мдя ох уж эти грабли.
Мы года 3 назад собирались использовать FT2232H интересно сколько граблей бы там пришлось преодолевать.
В синхронном режиме у нас получилось использовать её только с восьмибитными данными (по документации, старший байт в этом режиме не используется). И конкретно я не понял, можно ли там посылать что-то, что будет информировать ПЛИС, что перед нею команда. Только поток слать у меня получилось (я специально отмечаю, что «у меня» — может я просто слепой).

Подробнее — тут и чуть-чуть тут

В общем, если мы будем делать новую ревизию платы Redd, то выкинем её. Одна из задач игр в FX3 — чтобы понять, можно рассматривать её на замену, или лучше поставить очень старую, но очень добрую FX2LP.

В следующей статье я буду в FX3 команды слать как раз через EP0. А через одну — этими командами до AVALON_MM достукиваться. Один из законов Мерфи гласит: «Всякую вещь можно наладить, если достаточно долго вертеть её в руках». Вот FX3 у меня налаживается быстрее, чем FT2232H (ту я бросил быстрее, чем получил что-то красивое).

Но знакомый, который работает через FT600 — говорит, что он у себя тоже уже всё наладил. В отличие от FT2232H, там можно через разные точки разные потоки слать, как он говорит. Получается поток команд и поток данных, например. То есть, FTDI тоже идёт навстречу пользователям… Хотя, про латентность у FT600 он тоже говорил много нехороших слов. Так что грабли есть везде.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации